diff --git a/README.md b/README.md index e606761..bc539e8 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # nix-config -Jo's absolutely insane NixOS configuration - as of july 2024 +Jo's absolutely insane NixOS configuration - as of August 2024 ## Deployment diff --git a/flake.lock b/flake.lock index 1f196ae..c455022 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "catppuccin": { "locked": { - "lastModified": 1721784420, - "narHash": "sha256-bgF6fN4Qgk7NErFKGuuqWXcLORsiykTYyqMUFRiAUBY=", + "lastModified": 1724469296, + "narHash": "sha256-p3R4LUNk6gC+fTKRUm9ByXaoRIocnQMwVuJSIxECQ8o=", "owner": "catppuccin", "repo": "nix", - "rev": "8bdb55cc1c13f572b6e4307a3c0d64f1ae286a4f", + "rev": "874e668ddaf3687e8d38ccd0188a641ffefe1cfb", "type": "github" }, "original": { @@ -70,11 +70,11 @@ }, "hardware": { "locked": { - "lastModified": 1722332872, - "narHash": "sha256-2xLM4sc5QBfi0U/AANJAW21Bj4ZX479MHPMPkB+eKBU=", + "lastModified": 1724878143, + "narHash": "sha256-UjpKo92iZ25M05kgSOw/Ti6VZwpgdlOa73zHj8OcaDk=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "14c333162ba53c02853add87a0000cbd7aa230c2", + "rev": "95c3dfe6ef2e96ddc1ccdd7194e3cda02ca9a8ef", "type": "github" }, "original": { @@ -91,11 +91,11 @@ ] }, "locked": { - "lastModified": 1722321190, - "narHash": "sha256-WeVWVRqkgrbLzmk6FfJoloJ7Xe7HWD27Pv950IUG2kI=", + "lastModified": 1725180166, + "narHash": "sha256-fzssXuGR/mCeGbzM1ExaTqDz7QDGta3WA4jJsZyRruo=", "owner": "nix-community", "repo": "home-manager", - "rev": "4fcd54df7cbb1d79cbe81209909ee8514d6b17a4", + "rev": "471e3eb0a114265bcd62d11d58ba8d3421ee68eb", "type": "github" }, "original": { @@ -122,11 +122,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1722185531, - "narHash": "sha256-veKR07psFoJjINLC8RK4DiLniGGMgF3QMlS4tb74S6k=", + "lastModified": 1725103162, + "narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "52ec9ac3b12395ad677e8b62106f0b98c1f8569d", + "rev": "12228ff1752d7b7624a54e9c1af4b222b3c1073b", "type": "github" }, "original": { diff --git a/homes/x86_64-linux/jo@puzzlevision/apps/gnome.nix b/homes/x86_64-linux/jo@puzzlevision/apps/gnome.nix index 42d78b6..70d27d9 100644 --- a/homes/x86_64-linux/jo@puzzlevision/apps/gnome.nix +++ b/homes/x86_64-linux/jo@puzzlevision/apps/gnome.nix @@ -24,6 +24,11 @@ # Use `dconf watch /` to track stateful changes you are doing, then set them here. dconf.settings = { + "org/gnome/desktop/background" = { + picture-uri = lib.snowfall.fs.get-file "resources/wallpapers/maid_in_forest_with_lantern.jpg"; + picture-uri-dark = lib.snowfall.fs.get-file "resources/wallpapers/maid_in_forest_with_lantern.jpg"; + }; + "org/gnome/shell" = { favorite-apps = [ "org.gnome.Nautilus.desktop" @@ -65,4 +70,4 @@ window-buttons-theme = "catppuccin"; }; }; -} \ No newline at end of file +} diff --git a/homes/x86_64-linux/jo@puzzlevision/default.nix b/homes/x86_64-linux/jo@puzzlevision/default.nix index d8b0e9e..6c537b5 100644 --- a/homes/x86_64-linux/jo@puzzlevision/default.nix +++ b/homes/x86_64-linux/jo@puzzlevision/default.nix @@ -18,7 +18,7 @@ # All other arguments come from the home home. config, ... -}: { +}: with lib; with lib.${namespace}; { imports = [ ./apps/gnome.nix ]; @@ -43,6 +43,8 @@ lunar-client steam g4music + blanket + bitwarden-desktop ### Development avra @@ -51,8 +53,12 @@ git nodejs_22 bun - forge-sparks devenv + zed-editor + + ### Rust development specific + rustup + jetbrains.rust-rover ### Work teams-for-linux @@ -61,9 +67,11 @@ ### Notes & Organisation obsidian - ### Backups & Synchronization - celeste + ### Virtual Reality + sidequest ]; + puzzlevision.apps.zed-editor.enable = true; + home.stateVersion = "24.05"; } diff --git a/modules/home/apps/development/zed-editor.nix b/modules/home/apps/development/zed-editor.nix new file mode 100644 index 0000000..1b97b6d --- /dev/null +++ b/modules/home/apps/development/zed-editor.nix @@ -0,0 +1,35 @@ +{ + lib, + pkgs, + inputs, + + namespace, # The flake namespace, set in flake.nix. If not set, defaults to "internal". + home, # The home architecture for this host (eg. `x86_64-linux`). + target, # The Snowfall Lib target for this home (eg. `x86_64-home`). + format, # A normalized name for the home target (eg. `home`). + virtual, # A boolean to determine whether this home is a virtual target using nixos-generators. + host, # The host name for this home. + + config, + ... +}: with lib; with lib.${namespace}; +let + cfg = config.${namespace}.apps.zed-editor; + + zed-fhs = pkgs.buildFHSUserEnv { + name = "zed"; + targetPkgs = pkgs: + with pkgs; [ + zed-editor + ]; + runScript = "zed"; + }; +in { + options.${namespace}.apps.zed-editor = { enable = mkEnableOption "zed-editor"; }; + + home.packages = [zed-fhs]; + + config = mkIf cfg.enable { + home.packages = [zed-fhs]; + }; +} diff --git a/modules/home/themes/catppuccin/gnome/default.nix b/modules/home/themes/catppuccin/gnome/default.nix index 037134b..ec115c7 100644 --- a/modules/home/themes/catppuccin/gnome/default.nix +++ b/modules/home/themes/catppuccin/gnome/default.nix @@ -26,34 +26,39 @@ icon = { enable = true; accent = "blue"; - flavor = "frappe"; + flavor = "macchiato"; }; }; theme = { - name = "Colloid-Dark-Catppuccin"; - package = pkgs.colloid-gtk-theme.override { - themeVariants = ["default"]; - colorVariants = ["dark"]; - sizeVariants = ["standard"]; - tweaks = ["catppuccin"]; + #name = "Colloid-Dark-Catppuccin"; + #package = pkgs.colloid-gtk-theme.override { + #themeVariants = ["default"]; + #colorVariants = ["dark"]; + #sizeVariants = ["standard"]; + #tweaks = ["catppuccin"]; + #}; + + name = "Graphite-teal-Dark-nord"; + package = pkgs.graphite-gtk-theme.override { + themeVariants = ["blue" "teal"]; + colorVariants = ["dark"]; + sizeVariants = ["standard"]; + tweaks = ["nord"]; + withGrub = true; + grubScreens = ["1080p"]; }; }; }; dconf.settings = { - "org/gnome/desktop/background" = { - picture-uri = lib.snowfall.fs.get-file "resources/wallpapers/pond_sidewalk_dusk.jpg"; - picture-uri-dark = lib.snowfall.fs.get-file "resources/wallpapers/pond_sidewalk_dusk.jpg"; - }; - "org/gnome/shell/extensions/user-theme" = { - name = "Colloid-Dark-Catppuccin"; + name = "Graphite-teal-Dark-nord"; }; "org/gnome/desktop/interface" = { color-scheme = "prefer-dark"; - cursor-theme = "catppuccin-frappe-blue-cursors"; + cursor-theme = "catppuccin-macchiato-blue-cursors"; }; }; -} \ No newline at end of file +} diff --git a/modules/nixos/desktop/gnome/default.nix b/modules/nixos/desktop/gnome/default.nix index 72440c9..64c1e20 100644 --- a/modules/nixos/desktop/gnome/default.nix +++ b/modules/nixos/desktop/gnome/default.nix @@ -25,21 +25,23 @@ in { services.xserver.displayManager.gdm.enable = true; services.xserver.desktopManager.gnome.enable = true; - environment.gnome.excludePackages = (with pkgs; [ + environment.gnome.excludePackages = with pkgs; [ gnome-tour gedit cheese geary yelp # Help view epiphany # Gnome web - ]) ++ (with pkgs.gnome; [ + gnome-console + gnome-terminal gnome-music tali # Poker game iagno # Go game hitori # Sudoku game gnome-contacts gnome-initial-setup - ]); + gnome-system-monitor + ]; programs.dconf.enable = true; @@ -52,6 +54,8 @@ in { environment.systemPackages = with pkgs; [ gnome-tweaks + blackbox-terminal # Terminal app + resources # System resource manager ]; }; } diff --git a/resources/wallpapers/accent-color-wallpaper.png b/resources/wallpapers/accent-color-wallpaper.png new file mode 100644 index 0000000..a40f058 Binary files /dev/null and b/resources/wallpapers/accent-color-wallpaper.png differ diff --git a/resources/wallpapers/maid_in_forest_with_lantern.jpg b/resources/wallpapers/maid_in_forest_with_lantern.jpg new file mode 100644 index 0000000..6f88150 Binary files /dev/null and b/resources/wallpapers/maid_in_forest_with_lantern.jpg differ diff --git a/systems/x86_64-linux/puzzlevision/default.nix b/systems/x86_64-linux/puzzlevision/default.nix index 393d183..a94795a 100644 --- a/systems/x86_64-linux/puzzlevision/default.nix +++ b/systems/x86_64-linux/puzzlevision/default.nix @@ -29,23 +29,6 @@ with lib.${namespace}; inputs.hardware.nixosModules.common-pc-laptop-ssd ]; - nixpkgs = { - overlays = [ - (final: prev: { - linuxPackages_latest = prev.linuxPackages_latest.extend (lpfinal: lpprev: { - rtl8821ce = lpprev.rtl8821ce.overrideAttrs ({src, ...}: { - version = "${lpprev.kernel.version}-unstable-2024-03-26"; - src = final.fetchFromGitHub { - inherit (src) owner repo; - rev = "f119398d868b1a3395f40c1df2e08b57b2c882cd"; - hash = "sha256-EfpKa5ZRBVM5T8EVim3cVX1PP1UM9CyG6tN5Br8zYww="; - }; - }); - }); - }) - ]; - }; - nix = { settings = { auto-optimise-store = true; @@ -121,6 +104,9 @@ with lib.${namespace}; # Set console keymap. console.keyMap = "de"; + services.xserver = { + xkb.layout = "de"; + }; # Enable the power-profiles-daemon service for improved battery management. services.power-profiles-daemon.enable = true; @@ -182,7 +168,7 @@ with lib.${namespace}; # Configure home-manager home-manager = { - backupFileExtension = "homeManagerBackup"; + backupFileExtension = "homeManagerBackupFile69"; }; # Provide users with some sane default packages. @@ -190,6 +176,8 @@ with lib.${namespace}; ### General nano firefox + chromium + lutris vlc spotify