Compare commits

..

11 Commits

12 changed files with 57 additions and 92 deletions

12
flake.lock generated
View File

@@ -28,11 +28,11 @@
]
},
"locked": {
"lastModified": 1773898372,
"narHash": "sha256-PqeDgmyI/Df3/Mv0B81FP/ZC4KuO88YRQF5ZfeFyA4k=",
"lastModified": 1774007980,
"narHash": "sha256-FOnZjElEI8pqqCvB6K/1JRHTE8o4rer8driivTpq2uo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "ecf019baf47df009937b5f8c4604cee10f410a76",
"rev": "9670de2921812bc4e0452f6e3efd8c859696c183",
"type": "github"
},
"original": {
@@ -103,11 +103,11 @@
"noctalia-qs": "noctalia-qs"
},
"locked": {
"lastModified": 1773907741,
"narHash": "sha256-VCOseUhojMawFh/O0ZlSftbiEql4kJn0+WjPqorvk9o=",
"lastModified": 1774014047,
"narHash": "sha256-pSbjavFqmHzbR4aG+22k81yGgjIUrV64UePEf4m/s5U=",
"owner": "noctalia-dev",
"repo": "noctalia-shell",
"rev": "5eb8b9cbcbf7f9ffcff8b75233bad6e80c721f4c",
"rev": "e2ba46ed122082a15841be9e2b9fb392395c5a4f",
"type": "github"
},
"original": {

View File

@@ -17,59 +17,29 @@
};
};
outputs = { self, nixpkgs, home-manager, nixvim, ... }@inputs: {
outputs = { self, nixpkgs, home-manager, nixvim, ... }@inputs:
let
mkHost = hostName: nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./hosts/${hostName}/hardware-configuration.nix
./hosts/${hostName}/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.aaron.imports = [
nixvim.homeModules.nixvim
./users/aaron/home.nix
];
}
];
};
in {
nixosConfigurations = {
default = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./hosts/default/hardware-configuration.nix
./hosts/default/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.aaron.imports = [
nixvim.homeModules.nixvim
./users/aaron/home.nix
];
}
];
};
neon = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./hosts/neon/hardware-configuration.nix
./hosts/neon/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.aaron.imports = [
nixvim.homeModules.nixvim
./users/aaron/home.nix
];
}
];
};
argon = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./hosts/argon/hardware-configuration.nix
./hosts/argon/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.aaron.imports = [
nixvim.homeModules.nixvim
./users/aaron/home.nix
];
}
];
};
default = mkHost "default";
neon = mkHost "neon";
argon = mkHost "argon";
};
};
}

View File

@@ -3,11 +3,6 @@
{ pkgs, lib, ... }:
{
imports =
[
./hardware-configuration.nix
];
# use flakes
nix.settings.experimental-features = [ "nix-command" "flakes" ];

View File

@@ -6,7 +6,6 @@
discord
fastfetch
keepassxc
screenfetch
devenv
];

View File

@@ -1,6 +1,9 @@
{ config, lib, pkgs, ...}:
{
# add docker group to user
users.users.aaron.extraGroups = [ "docker" ];
virtualisation.docker = {
enable = true;
# Customize Docker daemon settings

View File

@@ -4,18 +4,18 @@
# set the time zone
time.timeZone = "Europe/Zurich";
# set internationalisation properties
# keep system language in english, but use swiss locale for formatting
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
LC_ADDRESS = "de_CH.UTF-8";
LC_IDENTIFICATION = "de_CH.UTF-8";
LC_MEASUREMENT = "de_CH.UTF-8";
LC_MONETARY = "de_CH.UTF-8";
LC_NAME = "de_CH.UTF-8";
LC_NUMERIC = "de_CH.UTF-8";
LC_PAPER = "de_CH.UTF-8";
LC_TELEPHONE = "de_CH.UTF-8";
LC_TIME = "de_CH.UTF-8";
};
# set console font and keymap

View File

@@ -8,6 +8,9 @@
networking.firewall.allowedTCPPorts = [ ];
networking.firewall.allowedUDPPorts = [ ];
# enable wifi firmware
hardware.enableAllFirmware = true;
# enable bluetooth
hardware.bluetooth.enable = true;

View File

@@ -1,24 +1,19 @@
{ config, lib, pkgs, ... }:
{
# system packges
# system packages
environment.systemPackages = with pkgs; [
alacritty
btop
cowsay
dnsutils
ethtool
file
fwupd
fwupd-efi
ghostty
git
imagemagick
imv
iperf3
jq
kdePackages.qtmultimedia
kitty
ldns
lm_sensors
lsof
@@ -31,12 +26,10 @@
nvd
p7zip
pciutils
sddm-astronaut
socat
sof-firmware
strace
sysstat
terminus_font
tree
unzip
usbutils

View File

@@ -1,9 +1,13 @@
{ config, lib, pkgs, ... }:
{
networking.firewall.checkReversePath = false;
# protonvpn uses wireguard tunnels, which break strict reverse path filtering
# because packets arrive on the tunnel interface but may be routed back differently.
# "loose" checks that the source is routable through *any* interface (not necessarily
# the same one), which is sufficient for wireguard while still preventing IP spoofing.
networking.firewall.checkReversePath = "loose";
environment.systemPackages = with pkgs; [
wireguard-tools
protonvpn-gui
];
}

View File

@@ -32,10 +32,11 @@
};
};
# allow unfree packages (steam, protonvpn, discord, etc.)
nixpkgs.config.allowUnfree = true;
# links /libexec from derivations to /run/current-system/sw
environment.pathsToLink = [ "/libexec" ];
# set the default editor to vim
environment.variables.EDITOR = "vim";
# enable home-manager globally
home-manager.useGlobalPkgs = true;

View File

@@ -1,9 +1,6 @@
{ config, lib, pkgs, ... }:
{
# allow unfree to install steam
nixpkgs.config.allowUnfree = true;
# enable steam and open firewall
programs.steam = {
enable = true;

View File

@@ -5,7 +5,7 @@
users.users.aaron = {
isNormalUser = true;
group = "users";
extraGroups = [ "wheel" "networkmanager" "docker" ];
extraGroups = [ "wheel" "networkmanager" ];
shell = pkgs.zsh;
};