diff --git a/flake.lock b/flake.lock index fbb4fdd..c67cf4d 100644 --- a/flake.lock +++ b/flake.lock @@ -21,6 +21,27 @@ "type": "github" } }, + "hyprland": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ], + "wlroots": "wlroots" + }, + "locked": { + "lastModified": 1663423623, + "narHash": "sha256-U1pqLkLTfqL48kgvNE/0QAFuENr8dgYWPMRqdXBjrVU=", + "owner": "vaxerski", + "repo": "Hyprland", + "rev": "5131a4acaf0f5319dc581ad0a26498b749ffd1e6", + "type": "github" + }, + "original": { + "owner": "vaxerski", + "repo": "Hyprland", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1663087123, @@ -37,10 +58,27 @@ "type": "github" } }, + "nur": { + "locked": { + "lastModified": 1663485210, + "narHash": "sha256-FkpQBG88vqMzWON6iDKDwQWaU9P6qJX9FE6SaRqbd08=", + "owner": "nix-community", + "repo": "NUR", + "rev": "6fa90295fc02d44b74dd2c2a266ef6405eda6d1a", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NUR", + "type": "github" + } + }, "root": { "inputs": { "home-manager": "home-manager", - "nixpkgs": "nixpkgs" + "hyprland": "hyprland", + "nixpkgs": "nixpkgs", + "nur": "nur" } }, "utils": { @@ -57,6 +95,24 @@ "repo": "flake-utils", "type": "github" } + }, + "wlroots": { + "flake": false, + "locked": { + "host": "gitlab.freedesktop.org", + "lastModified": 1661882030, + "narHash": "sha256-Kw0MG4rXdTnbndVLLCNwkXDmNszwdQZmm7pwI1R3Kds=", + "owner": "wlroots", + "repo": "wlroots", + "rev": "fd0b0276c9ecc159549acff48b932b83ec3b4f12", + "type": "gitlab" + }, + "original": { + "host": "gitlab.freedesktop.org", + "owner": "wlroots", + "repo": "wlroots", + "type": "gitlab" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 8273926..c815c3a 100644 --- a/flake.nix +++ b/flake.nix @@ -9,31 +9,32 @@ { description = "Kabbone's peronal NixOS Flake config"; - inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; # Nix Packages + inputs = # All flake references used to build my NixOS setup. These are dependencies. + { + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; # Nix Packages - home-manager = { # User Package Management - url = github:nix-community/home-manager; - inputs.nixpkgs.follows = "nixpkgs"; + home-manager = { # User Package Management + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + nur = { + url = "github:nix-community/NUR"; # NUR Packages + }; + + hyprland = { # Official Hyprland flake + url = "github:vaxerski/Hyprland"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; - nur = { - url = "github:nix-community/NUR"; # NUR Packages - }; - - hyprland = { # Official Hyprland flake - url = "github:vaxerski/Hyprland"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - }; - - outputs = { self, nixpkgs, home-manager, nur, hyperland, ... }: - let Variables that can be used in the config files + outputs = inputs @ { self, nixpkgs, home-manager, nur, hyprland, ... }: # Function that tells my flake which to use and what do what to do with the dependencies. + let # Variables that can be used in the config files user = "kabbone"; location = "$HOME/.setup"; in # Use above variables in ... { - nixosConfigurations = ( # NixOS configuration + nixosConfigurations = ( # NixOS configurations import ./hosts { # Imports ./hosts/default.nix inherit (nixpkgs) lib; inherit inputs nixpkgs home-manager nur user location hyprland; # Also inherit home-manager so it does not need to be defined here. diff --git a/home.nix b/home.nix deleted file mode 100644 index 4b0f6ac..0000000 --- a/home.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ config, pkgs, ... }: - -{ - # Home Manager needs a bit of information about you and the - # paths it should manage. - home.username = "kabbone"; - home.homeDirectory = "/home/kabbone"; - - # This value determines the Home Manager release that your - # configuration is compatible with. This helps avoid breakage - # when a new Home Manager release introduces backwards - # incompatible changes. - # - # You can update Home Manager without changing this value. See - # the Home Manager release notes for a list of state version - # changes in each release. - home.stateVersion = "22.05"; - - # Let Home Manager install and manage itself. - programs.home-manager.enable = true; -} diff --git a/hardware-configuration.nix b/hosts/vm/hardware-configuration.nix similarity index 100% rename from hardware-configuration.nix rename to hosts/vm/hardware-configuration.nix diff --git a/modules/desktop/hyprland/default.nix b/modules/desktop/hyprland/default.nix index 7c209d4..f9d830b 100644 --- a/modules/desktop/hyprland/default.nix +++ b/modules/desktop/hyprland/default.nix @@ -11,7 +11,7 @@ # └─ hyprland.nix * # -{ config, lib, pkgs, ... }: +{ config, lib, user, pkgs, ... }: { imports = [ ../../programs/waybar.nix ]; diff --git a/modules/programs/default.nix b/modules/programs/default.nix index ddde898..0cd7ade 100644 --- a/modules/programs/default.nix +++ b/modules/programs/default.nix @@ -13,7 +13,7 @@ [ ./alacritty.nix ./rofi.nix - ./waybar.nix + #./waybar.nix #./games.nix ] # Waybar.nix is pulled from modules/desktop/.. diff --git a/modules/programs/waybar.nix b/modules/programs/waybar.nix index 476c833..098d739 100644 --- a/modules/programs/waybar.nix +++ b/modules/programs/waybar.nix @@ -2,7 +2,7 @@ # Bar # -{ config, lib, pkgs, ...}: +{ config, lib, user, pkgs, ...}: { environment.systemPackages = with pkgs; [ @@ -17,10 +17,10 @@ }) ]; - home-manager.users.matthias = { # Home-manager waybar config + home-manager.users.${user} = { # Home-manager waybar config programs.waybar = { enable = true; - systemd ={ + systemd = { enable = true; target = "sway-session.target"; # Needed for waybar to start automatically }; diff --git a/modules/themes/colors.nix b/modules/themes/colors.nix new file mode 100644 index 0000000..252691d --- /dev/null +++ b/modules/themes/colors.nix @@ -0,0 +1,48 @@ +# +# System themes +# + +{ + scheme = { + doom = { + scheme = "Doom One Dark"; + black = "000000"; + red = "ff6c6b"; + orange = "da8548"; + yellow = "ecbe7b"; + green = "95be65"; + teal = "4db5bd"; + blue = "6eaafb"; + dark-blue = "2257a0"; + magenta = "c678dd"; + violet = "a9a1e1"; + cyan = "6cdcf7"; + dark-cyan = "5699af"; + emphasis = "50536b"; + text = "dfdfdf"; + text-alt = "b2b2b2"; + fg = "abb2bf"; + bg = "282c34"; + }; + + dracula = { + scheme = "Dracula"; + base00 = "282936"; #background + base01 = "3a3c4e"; + base02 = "4d4f68"; + base03 = "626483"; + base04 = "62d6e8"; + base05 = "e9e9f4"; #foreground + base06 = "f1f2f8"; + base07 = "f7f7fb"; + base08 = "ea51b2"; + base09 = "b45bcf"; + base0A = "00f769"; + base0B = "ebff87"; + base0C = "a1efe4"; + base0D = "62d6e8"; + base0E = "b45bcf"; + base0F = "00f769"; + }; + }; +} diff --git a/modules/themes/wall.jpg b/modules/themes/wall.jpg new file mode 100644 index 0000000..d055a6c Binary files /dev/null and b/modules/themes/wall.jpg differ