diff --git a/flake.lock b/flake.lock index 19af291..95f76b3 100644 --- a/flake.lock +++ b/flake.lock @@ -1,22 +1,60 @@ { "nodes": { - "base16-schemes": { - "flake": false, + "basix": { + "inputs": { + "flake-compat": "flake-compat", + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs" + }, "locked": { - "lastModified": 1696158499, - "narHash": "sha256-5yIHgDTPjoX/3oDEfLSQ0eJZdFL1SaCfb9d6M0RmOTM=", - "owner": "tinted-theming", - "repo": "base16-schemes", - "rev": "a9112eaae86d9dd8ee6bb9445b664fba2f94037a", + "lastModified": 1727493962, + "narHash": "sha256-9eYh6s5ChKmm2uqsZijk6PCGoyZyEgZ0BJqt+ESDrqU=", + "owner": "notashelf", + "repo": "basix", + "rev": "742cefc42e7fa7bb77f5bd1c3191ff8c8fa8d610", "type": "github" }, "original": { - "owner": "tinted-theming", - "repo": "base16-schemes", + "owner": "notashelf", + "repo": "basix", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", "type": "github" } }, "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1714641030, + "narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { "inputs": { "nixpkgs-lib": [ "nixpkgs" @@ -36,7 +74,7 @@ "type": "github" } }, - "flake-parts_2": { + "flake-parts_3": { "inputs": { "nixpkgs-lib": "nixpkgs-lib_2" }, @@ -151,11 +189,11 @@ ] }, "locked": { - "lastModified": 1727111745, - "narHash": "sha256-EYLvFRoTPWtD+3uDg2wwQvlz88OrIr3zld+jFE5gDcY=", + "lastModified": 1727383923, + "narHash": "sha256-4/vacp3CwdGoPf8U4e/N8OsGYtO09WTcQK5FqYfJbKs=", "owner": "nix-community", "repo": "home-manager", - "rev": "21c021862fa696c8199934e2153214ab57150cb6", + "rev": "ffe2d07e771580a005e675108212597e5b367d2d", "type": "github" }, "original": { @@ -244,32 +282,13 @@ "type": "github" } }, - "nix-colors": { - "inputs": { - "base16-schemes": "base16-schemes", - "nixpkgs-lib": "nixpkgs-lib" - }, - "locked": { - "lastModified": 1707825078, - "narHash": "sha256-hTfge2J2W+42SZ7VHXkf4kjU+qzFqPeC9k66jAUBMHk=", - "owner": "misterio77", - "repo": "nix-colors", - "rev": "b01f024090d2c4fc3152cd0cf12027a7b8453ba1", - "type": "github" - }, - "original": { - "owner": "misterio77", - "repo": "nix-colors", - "type": "github" - } - }, "nixos-hardware": { "locked": { - "lastModified": 1727040444, - "narHash": "sha256-19FNN5QT9Z11ZUMfftRplyNN+2PgcHKb3oq8KMW/hDA=", + "lastModified": 1727665282, + "narHash": "sha256-oKtfbQB1MBypqIyzkC8QCQcVGOa1soaXaGgcBIoh14o=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "d0cb432a9d28218df11cbd77d984a2a46caeb5ac", + "rev": "11c43c830e533dad1be527ecce379fcf994fbbb5", "type": "github" }, "original": { @@ -280,11 +299,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1726937504, - "narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=", + "lastModified": 1715266358, + "narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9357f4f23713673f310988025d9dc261c20e70c6", + "rev": "f1010e0469db743d14519a1efd37e23f8513d714", "type": "github" }, "original": { @@ -296,17 +315,14 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1697935651, - "narHash": "sha256-qOfWjQ2JQSQL15KLh6D7xQhx0qgZlYZTYlcEiRuAMMw=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "e1e11fdbb01113d85c7f41cada9d2847660e3902", - "type": "github" + "lastModified": 1714640452, + "narHash": "sha256-QBx10+k6JWz6u7VsohfSw8g8hjdBZEf8CFzXH1/1Z94=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/50eb7ecf4cd0a5756d7275c8ba36790e5bd53e33.tar.gz" }, "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/50eb7ecf4cd0a5756d7275c8ba36790e5bd53e33.tar.gz" } }, "nixpkgs-lib_2": { @@ -322,6 +338,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1727634051, + "narHash": "sha256-S5kVU7U82LfpEukbn/ihcyNt2+EvG7Z5unsKW9H/yFA=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "06cf0e1da4208d3766d898b7fdab6513366d45b9", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1726871744, "narHash": "sha256-V5LpfdHyQkUF7RfOaDPrZDP+oqz88lTJrMT1+stXNwo=", @@ -337,7 +369,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_4": { "locked": { "lastModified": 1656753965, "narHash": "sha256-BCrB3l0qpJokOnIVc3g2lHiGhnjUi0MoXiw6t1o8H1E=", @@ -353,7 +385,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_5": { "locked": { "lastModified": 1726871744, "narHash": "sha256-V5LpfdHyQkUF7RfOaDPrZDP+oqz88lTJrMT1+stXNwo=", @@ -387,11 +419,11 @@ }, "nvf": { "inputs": { - "flake-parts": "flake-parts_2", + "flake-parts": "flake-parts_3", "flake-utils": "flake-utils_2", "mnw": "mnw", "nil": "nil", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "nmd": "nmd", "plugin-alpha-nvim": "plugin-alpha-nvim", "plugin-bufdelete-nvim": "plugin-bufdelete-nvim", @@ -511,6 +543,29 @@ "type": "github" } }, + "plasma-manager": { + "inputs": { + "home-manager": [ + "home-manager" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1727463368, + "narHash": "sha256-5glMknkwQejUrKy28iy/kCFlSMwHcVyf/whmxqD0ggk=", + "owner": "nix-community", + "repo": "plasma-manager", + "rev": "29ad64f0ac4ae84710dfeb1d37572d95c94cbfd8", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "plasma-manager", + "type": "github" + } + }, "plugin-alpha-nvim": { "flake": false, "locked": { @@ -2131,7 +2186,7 @@ "rnix-lsp": { "inputs": { "naersk": "naersk", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_4", "utils": "utils" }, "locked": { @@ -2150,13 +2205,14 @@ }, "root": { "inputs": { - "flake-parts": "flake-parts", + "basix": "basix", + "flake-parts": "flake-parts_2", "flake-utils": "flake-utils", "home-manager": "home-manager", - "nix-colors": "nix-colors", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_2", "nvf": "nvf", + "plasma-manager": "plasma-manager", "systems": "systems_3", "treefmt-nix": "treefmt-nix", "wezterm": "wezterm" @@ -2272,14 +2328,14 @@ }, "treefmt-nix": { "inputs": { - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1727252110, - "narHash": "sha256-3O7RWiXpvqBcCl84Mvqa8dXudZ1Bol1ubNdSmQt7nF4=", + "lastModified": 1727431250, + "narHash": "sha256-uGRlRT47ecicF9iLD1G3g43jn2e+b5KaMptb59LHnvM=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "1bff2ba6ec22bc90e9ad3f7e94cca0d37870afa3", + "rev": "879b29ae9a0378904fbbefe0dadaed43c8905754", "type": "github" }, "original": { @@ -2317,11 +2373,11 @@ }, "locked": { "dir": "nix", - "lastModified": 1727043148, - "narHash": "sha256-7RD5alitiAuijksDhRvtnsHKPz+ZHRDrMkTmqikiN5Y=", + "lastModified": 1727585736, + "narHash": "sha256-vEkcyKdFpfWbrtZlB5DCjNCmI2GudIJuHstWo3F9gL8=", "owner": "wez", "repo": "wezterm", - "rev": "2b76c63bb618d26609434c06282c8755229c4099", + "rev": "a2f2c07a29f5c98f6736cde0c86b24887f9fd48a", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index d3fd2a9..eec5507 100644 --- a/flake.nix +++ b/flake.nix @@ -51,7 +51,13 @@ url = "github:notashelf/nvf"; }; - nix-colors.url = "github:misterio77/nix-colors"; + basix.url = "github:notashelf/basix"; + + plasma-manager = { + url = "github:nix-community/plasma-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; + }; treefmt-nix.url = "github:numtide/treefmt-nix"; diff --git a/home/default.nix b/home/default.nix index 5b668f4..9f93a5d 100644 --- a/home/default.nix +++ b/home/default.nix @@ -1,17 +1,20 @@ { + lib, self, - nix-colors, ... }: { imports = [ ./terminal self.nixosModules.theme - nix-colors.homeManagerModules.default ]; home = { username = "nezia"; homeDirectory = "/home/nezia"; stateVersion = "24.05"; }; + programs.home-manager.enable = true; + + theme.wallpaper = lib.mkDefault ../wallpapers/nix-wallpaper-nineish-catppuccin-frappe-alt.svg; + theme.scheme = lib.mkDefault "catppuccin-frappe"; } diff --git a/home/profiles/vamos/default.nix b/home/profiles/vamos/default.nix index 56a4a43..5ddb85e 100644 --- a/home/profiles/vamos/default.nix +++ b/home/profiles/vamos/default.nix @@ -1,14 +1,15 @@ -{ +{inputs, ...}: { imports = [ ../../programs/editors/neovim.nix ../../programs - ../../programs/gnome + ../../programs/plasma ../../services/udiskie.nix - ../../terminal/emulators/gnome-terminal.nix + ../../terminal/emulators/konsole.nix ../../terminal/emulators/wezterm.nix + + inputs.plasma-manager.homeManagerModules.plasma-manager ]; - config.theme.wallpaper = ../../../wallpapers/nix-wallpaper-nineish-catppuccin-frappe-alt.svg; } diff --git a/home/programs/plasma/default.nix b/home/programs/plasma/default.nix new file mode 100644 index 0000000..538e750 --- /dev/null +++ b/home/programs/plasma/default.nix @@ -0,0 +1,33 @@ +{ + config, + pkgs, + ... +}: { + programs.plasma = { + enable = true; + workspace = { + lookAndFeel = "org.kde.breezedark.desktop"; + inherit (config.theme) wallpaper; + }; + + input = { + touchpads = [ + { + enable = true; + naturalScroll = true; + vendorId = "093a"; + productId = "0274"; + name = "PIXA3854:00 093A:0274 Touchpad"; + } + ]; + keyboard = { + options = [ + "compose:ralt" + ]; + }; + }; + }; + home.packages = with pkgs; [ + qalculate-qt + ]; +} diff --git a/home/terminal/emulators/gnome-terminal.nix b/home/terminal/emulators/gnome-terminal.nix index 85d3c70..dd8b3c4 100644 --- a/home/terminal/emulators/gnome-terminal.nix +++ b/home/terminal/emulators/gnome-terminal.nix @@ -1,14 +1,27 @@ { + config, + inputs, + ... +}: { programs.gnome-terminal = { enable = true; - showMenubar = false; + showMenubar = true; profile = { "4621184a-b921-42cf-80a0-7784516606f2" = { default = true; audibleBell = false; allowBold = true; + boldIsBright = true; visibleName = "default"; - font = "monospace 14"; + font = "Intel One Mono 14"; + colors = let + inherit (inputs.basix.schemeData.base16.${config.theme.scheme}) palette; + in { + backgroundColor = "#${palette.base00}"; + foregroundColor = builtins.trace "#${palette.base05}" "#${palette.base05}"; + + palette = builtins.attrValues (builtins.mapAttrs (_: color: "#${color}") palette); + }; }; }; }; diff --git a/home/terminal/emulators/konsole.nix b/home/terminal/emulators/konsole.nix new file mode 100644 index 0000000..fe26a6a --- /dev/null +++ b/home/terminal/emulators/konsole.nix @@ -0,0 +1,29 @@ +{ + lib, + config, + inputs, + ... +}: { + programs.konsole = { + enable = true; + defaultProfile = "default"; + profiles = { + default = { + font = { + name = "monospace"; + size = 14; + }; + }; + }; + + extraConfig = { + "MainWindow" = { + "MenuBar" = "Disabled"; + "ToolBarsMovable" = "Disabled"; + }; + "KonsoleWindow" = { + "ShowMenuBarByDefault" = "false"; + }; + }; + }; +} diff --git a/home/terminal/shell/fish.nix b/home/terminal/shell/fish.nix index 41ec207..7f8d31d 100644 --- a/home/terminal/shell/fish.nix +++ b/home/terminal/shell/fish.nix @@ -1,17 +1,11 @@ -{pkgs, ...}: let - catppuccin-fish = pkgs.fetchFromGitHub { - owner = "catppuccin"; - repo = "fish"; - rev = "a3b9eb5eaf2171ba1359fe98f20d226c016568cf"; - hash = "sha256-shQxlyoauXJACoZWtRUbRMxmm10R8vOigXwjxBhG8ng="; - }; -in { +{pkgs, ...}: { programs.fish = { enable = true; interactiveShellInit = '' set fish_greeting # Disable greeting fish_vi_key_bindings # Enable Vi mode - fish_config theme choose "Catppuccin Frappe" + set -U fish_color_command green + set -U fish_color_param white ''; shellAbbrs = { cd = "z"; @@ -35,6 +29,4 @@ in { fi ''; }; - - xdg.configFile."fish/themes/Catppuccin Frappe.theme".source = "${catppuccin-fish}/themes/Catppuccin Frappe.theme"; } diff --git a/hosts/default.nix b/hosts/default.nix index cc7125f..0fa5590 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -10,7 +10,6 @@ inherit (import mod) laptop desktop; specialArgs = { inherit inputs self; - inherit (inputs) nix-colors; }; in { vamos = nixosSystem { @@ -20,7 +19,7 @@ ++ [ ./vamos - "${mod}/programs/gnome.nix" + "${mod}/programs/kde.nix" { home-manager = { diff --git a/modules/theme/default.nix b/modules/theme/default.nix index 6355a8b..fbef65f 100644 --- a/modules/theme/default.nix +++ b/modules/theme/default.nix @@ -1,9 +1,12 @@ -{ - lib, - config, - ... -}: { +{lib, ...}: { options.theme = { + scheme = lib.mkOption { + description = '' + Name of the tinted-scheming color scheme to use. + ''; + type = lib.types.string; + example = lib.literalExpression "catppuccin-frappe"; + }; wallpaper = lib.mkOption { description = '' Location of the wallpaper that will be used throughout the system. diff --git a/system/programs/kde.nix b/system/programs/kde.nix new file mode 100644 index 0000000..5a5ace6 --- /dev/null +++ b/system/programs/kde.nix @@ -0,0 +1,7 @@ +{ + services = { + displayManager.sddm.enable = true; + displayManager.sddm.wayland.enable = true; + desktopManager.plasma6.enable = true; + }; +}