diff options
author | Jasper Ras <jras@hostnet.nl> | 2025-02-04 19:13:28 +0100 |
---|---|---|
committer | Jasper Ras <jras@hostnet.nl> | 2025-02-04 19:13:28 +0100 |
commit | 5a062ed4329468249ac3be240aeb65080816f764 (patch) | |
tree | cafdaffd9c6d310a1c1ff0401c4b58a6a818b90b | |
parent | 98c8c5ded88e4836f590db298cf53a5ec30eb353 (diff) |
stuff
-rw-r--r-- | config/shared.nix | 101 | ||||
-rw-r--r-- | configuration/hyprland.nix | 14 | ||||
-rw-r--r-- | configuration/nix-settings.nix | 10 | ||||
-rw-r--r-- | configuration/packages.nix | 27 | ||||
-rw-r--r-- | configuration/services.nix | 47 | ||||
-rw-r--r-- | configuration/tarrel/default.nix | 10 | ||||
-rw-r--r-- | configuration/work/default.nix | 20 | ||||
-rw-r--r-- | flake.nix | 24 |
8 files changed, 135 insertions, 118 deletions
diff --git a/config/shared.nix b/config/shared.nix deleted file mode 100644 index df66951..0000000 --- a/config/shared.nix +++ /dev/null @@ -1,101 +0,0 @@ -{ inputs, pkgs, ... }: -{ - environment.systemPackages = with pkgs; [ - kitty - - helix - alacritty - firefox - git - git-crypt - whatsapp-for-linux - obsidian - devenv - - busybox - usbutils - dig - file - gcc - jq - netcat - tcpdump - wget - iftop - htop - ]; - - nixpkgs.config.allowUnfree = true; - nix.settings = { - experimental-features = [ "nix-command" "flakes" ]; - substituters = ["https://hyprland.cachix.org"]; - trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; - }; - - nix.extraOptions = '' - trusted-users = root jras - ''; - - programs = { - steam.enable = true; - mtr.enable = true; - hyprland = { - enable = true; - xwayland.enable = true; - package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; - portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; - }; - gnupg.agent.enable = true; - gnupg.agent.pinentryPackage = pkgs.pinentry-gnome3; - }; - - services = { - pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - keyd = { - enable = true; - keyboards = { - default = { - ids = [ "*" ]; - settings.main.capslock = "overload(meta, esc)"; - }; - }; - }; - greetd = { - enable = true; - settings = { - default_session = { - command = "${pkgs.hyprland}/bin/Hyprland"; - user = "jras"; - }; - }; - }; - gnome.gnome-keyring.enable = true; - openssh = { - enable = true; - openFirewall = false; - settings.AllowUsers = [ "jras" ]; - }; - }; - - systemd.user.services.kanshi = { - description = "kanshi daemon"; - environment = { - WAYLAND_DISPLAY="wayland-1"; - DISPLAY=":0"; - }; - serviceConfig = { - Type = "simple"; - ExecStart = ''${pkgs.kanshi}/bin/kanshi -c kanshi_config_file''; - }; - }; - - virtualisation.docker = { - enable = true; - enableOnBoot = true; - }; -} diff --git a/configuration/hyprland.nix b/configuration/hyprland.nix new file mode 100644 index 0000000..bf06cc3 --- /dev/null +++ b/configuration/hyprland.nix @@ -0,0 +1,14 @@ +{ inputs, pkgs, ... }: +{ + nix.settings = { + substituters = ["https://hyprland.cachix.org"]; + trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; + }; + + programs.hyprland = { + enable = true; + xwayland.enable = true; + package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; + portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; + }; +} diff --git a/configuration/nix-settings.nix b/configuration/nix-settings.nix new file mode 100644 index 0000000..189422c --- /dev/null +++ b/configuration/nix-settings.nix @@ -0,0 +1,10 @@ +{ ... }: +{ + nix.settings = { + experimental-features = [ "nix-command" "flakes" ]; + }; + + nix.extraOptions = '' + trusted-users = root jras + ''; +} diff --git a/configuration/packages.nix b/configuration/packages.nix new file mode 100644 index 0000000..cf4baea --- /dev/null +++ b/configuration/packages.nix @@ -0,0 +1,27 @@ +{ pkgs, ... }: +{ + environment.systemPackages = with pkgs; [ + kitty + + helix + alacritty + firefox + git + git-crypt + whatsapp-for-linux + obsidian + devenv + + busybox + usbutils + dig + file + gcc + jq + netcat + tcpdump + wget + iftop + htop + ]; +} diff --git a/configuration/services.nix b/configuration/services.nix new file mode 100644 index 0000000..9997d71 --- /dev/null +++ b/configuration/services.nix @@ -0,0 +1,47 @@ +{ pkgs, ... }: +{ + services = { + pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; + keyd = { + enable = true; + keyboards = { + default = { + ids = [ "*" ]; + settings.main.capslock = "overload(meta, esc)"; + }; + }; + }; + greetd = { + enable = true; + settings = { + default_session = { + command = "${pkgs.hyprland}/bin/Hyprland"; + user = "jras"; + }; + }; + }; + gnome.gnome-keyring.enable = true; + openssh = { + enable = true; + openFirewall = false; + settings.AllowUsers = [ "jras" ]; + }; + }; + + systemd.user.services.kanshi = { + description = "kanshi daemon"; + environment = { + WAYLAND_DISPLAY="wayland-1"; + DISPLAY=":0"; + }; + serviceConfig = { + Type = "simple"; + ExecStart = ''${pkgs.kanshi}/bin/kanshi -c kanshi_config_file''; + }; + }; +} diff --git a/configuration/tarrel/default.nix b/configuration/tarrel/default.nix index ca573fa..f92285b 100644 --- a/configuration/tarrel/default.nix +++ b/configuration/tarrel/default.nix @@ -2,8 +2,16 @@ { imports = [ ./hardware-configuration.nix + + ../packages.nix + ../services.nix + ../users + ../hyprland.nix + ../nix-settings.nix ]; + nixpkgs.config.allowUnfree = true; + boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; @@ -79,4 +87,6 @@ capSysAdmin = true; openFirewall = true; }; + + programs.steam.enable = true; } diff --git a/configuration/work/default.nix b/configuration/work/default.nix index ebb26f5..5bc9958 100644 --- a/configuration/work/default.nix +++ b/configuration/work/default.nix @@ -1,6 +1,14 @@ { config, pkgs, inputs, ... }: { - imports = [ ./hardware-configuration.nix ]; + imports = [ + ./hardware-configuration.nix + + ../packages.nix + ../services.nix + ../users + ../hyprland.nix + ../nix-settings.nix + ]; age.secrets.ghostnet-cert.file = ../../secrets/ghostnet-cert.age; age.secrets.ghostnet-key.file = ../../secrets/ghostnet-key.age; @@ -24,6 +32,13 @@ google-chrome ]; + nixpkgs.config.allowUnfree = true; + + virtualisation.docker = { + enable = true; + enableOnBoot = true; + }; + hardware.bluetooth.enable = true; hardware.bluetooth.powerOnBoot = true; @@ -148,5 +163,8 @@ home-manager.users.jras = import ../../home-manager/entrypoints/work.nix; home-manager.extraSpecialArgs = { inherit inputs; monitor-names = ["eDP-1" "HDMI-A-1" "DP-10"]; }; + programs.gnupg.agent.enable = true; + programs.gnupg.agent.pinentryPackage = pkgs.pinentry-gnome3; + system.stateVersion = "24.05"; # Do NOT change before reading configuration.nix } @@ -47,19 +47,15 @@ modules = [ update-systemd-resolved.nixosModules.update-systemd-resolved { - environment.systemPackages = [ agenix.packages."x86_64-linux".default ]; + environment.systemPackages = [ + agenix.packages."x86_64-linux".default + astal-bar.packages."x86_64-linux".default + ]; } home-manager.nixosModules.home-manager agenix.nixosModules.default ./configuration/work - ./config/shared.nix - - { - environment.systemPackages = [ - astal-bar.packages."x86_64-linux".default - ]; - } ]; }; @@ -68,19 +64,15 @@ specialArgs = { inherit inputs; }; modules = [ { - environment.systemPackages = [ agenix.packages."x86_64-linux".default ]; + environment.systemPackages = [ + agenix.packages."x86_64-linux".default + astal-bar.packages."x86_64-linux".default + ]; } home-manager.nixosModules.home-manager agenix.nixosModules.default ./configuration/tarrel - ./config/shared.nix - - { - environment.systemPackages = [ - astal-bar.packages."x86_64-linux".default - ]; - } ]; }; |