diff --git a/nix/base_packages.nix b/nix/base/base_packages.nix similarity index 86% rename from nix/base_packages.nix rename to nix/base/base_packages.nix index 08124da..0426ff8 100644 --- a/nix/base_packages.nix +++ b/nix/base/base_packages.nix @@ -49,5 +49,15 @@ cursor-theme='Bibata-Modern-Classsic' cursor-size=24 ''; + programs.direnv = { + package = pkgs.direnv; + silent = false; + loadInNixShell = true; + direnvrcExtra = ""; + nix-direnv = { + enable = true; + package = pkgs.nix-direnv; + }; + }; } diff --git a/nix/base/default.nix b/nix/base/default.nix index c8c36ba..8822b3c 100644 --- a/nix/base/default.nix +++ b/nix/base/default.nix @@ -1,10 +1,9 @@ -{ ... -}: { +{ imports = [ ./login_manager.nix ./big_g.nix ./env.nix ./xkb_layout.nix - ../hardware/streamdeck.nix + ./base_packages.nix ]; } diff --git a/nix/base/env.nix b/nix/base/env.nix index 8e82116..d4efa9c 100644 --- a/nix/base/env.nix +++ b/nix/base/env.nix @@ -1,5 +1,4 @@ -{ lib -, pkgs +{ pkgs , ... }: { environment.variables = { diff --git a/nix/direnv.nix b/nix/direnv.nix deleted file mode 100644 index 244e198..0000000 --- a/nix/direnv.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ pkgs, ... }: { - #set to default values - programs.direnv = { - package = pkgs.direnv; - silent = false; - loadInNixShell = true; - direnvrcExtra = ""; - nix-direnv = { - enable = true; - package = pkgs.nix-direnv; - }; - }; -} diff --git a/nix/flake.nix b/nix/flake.nix index 49e1a43..ee8ffe4 100644 --- a/nix/flake.nix +++ b/nix/flake.nix @@ -34,24 +34,7 @@ allowUnfree = true; }; }; - in - { - homeConfigurations."dashie@spaceship" = home-manager.lib.homeManagerConfiguration { - inherit pkgs; - modules = [ ./hardware/spaceship.nix ]; - }; - homeConfigurations."dashie@overheating" = home-manager.lib.homeManagerConfiguration { - inherit pkgs; - modules = [ ./hardware/overheating.nix ]; - }; - nixosConfigurations."spaceship" = nixpkgs.lib.nixosSystem { - inherit pkgs; - modules = [ - - # TODO put this into not gaming - ./hardware/spaceship.nix - ./configuration.nix - ./programs/gaming/default.nix + default_modules = [ ./base/default.nix hyprland.nixosModules.default home-manager.nixosModules.home-manager @@ -73,13 +56,31 @@ hyprland.homeManagerModules.default anyrun.homeManagerModules.default ironbar.homeManagerModules.default - ./programs/hyprland/default.nix #{inherit Hyprspace; } + ./programs/hyprland/default.nix nix-flatpak.homeManagerModules.nix-flatpak ./programs/flatpak.nix ]; home-manager.users.dashie.home.stateVersion = "24.05"; } + ]; + in + { + # TODO put actual configuration of profiles somewhere else + homeConfigurations."marmo" = home-manager.lib.homeManagerConfiguration { + inherit pkgs default_modules; + modules = [ ./hardware/marmo/default.nix ]; + }; + homeConfigurations."overheating" = home-manager.lib.homeManagerConfiguration { + inherit pkgs default_modules; + modules = [ ./hardware/overheating/default.nix ]; + }; + nixosConfigurations."spaceship" = nixpkgs.lib.nixosSystem { + inherit pkgs default_modules; + modules = [ + ./hardware/spaceship/default.nix + ./hardware/streamdeck.nix + ./programs/gaming/default.nix ]; }; }; diff --git a/nix/hardware/marmo/configuration.nix b/nix/hardware/marmo/configuration.nix new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/nix/hardware/marmo/configuration.nix @@ -0,0 +1 @@ +{} diff --git a/nix/hardware/marmo/default.nix b/nix/hardware/marmo/default.nix new file mode 100644 index 0000000..a6480d8 --- /dev/null +++ b/nix/hardware/marmo/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./marmo.nix + ./configuration.nix + ]; +} diff --git a/nix/hardware/marmo.nix b/nix/hardware/marmo/marmo.nix similarity index 100% rename from nix/hardware/marmo.nix rename to nix/hardware/marmo/marmo.nix diff --git a/nix/hardware/overheating/configuration.nix b/nix/hardware/overheating/configuration.nix new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/nix/hardware/overheating/configuration.nix @@ -0,0 +1 @@ +{} diff --git a/nix/hardware/overheating/default.nix b/nix/hardware/overheating/default.nix new file mode 100644 index 0000000..407b224 --- /dev/null +++ b/nix/hardware/overheating/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./overheating.nix + ./configuration.nix + ]; +} diff --git a/nix/hardware/overheating.nix b/nix/hardware/overheating/overheating.nix similarity index 100% rename from nix/hardware/overheating.nix rename to nix/hardware/overheating/overheating.nix diff --git a/nix/configuration.nix b/nix/hardware/spaceship/configuration.nix similarity index 73% rename from nix/configuration.nix rename to nix/hardware/spaceship/configuration.nix index 077e53b..cbc5f5a 100644 --- a/nix/configuration.nix +++ b/nix/hardware/spaceship/configuration.nix @@ -1,22 +1,10 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ config, pkgs, ... }: - +{ pkgs, ... }: { - imports = - [ - # Include the results of the hardware scan. - #./hardware-configuration.nix - ./base_packages.nix - ./direnv.nix - ]; - # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; boot.kernelPackages = pkgs.linuxPackages_zen; + # amd doesn't let you set high performance otherwhise ..... boot.kernelParams = [ "amdgpu.ppfeaturemask=0xffffffff" ]; @@ -62,7 +50,6 @@ DIRENV_LOG_FORMAT = ""; }; - # Define a user account. Don't forget to set a password with ‘passwd’. users.users.dashie = { isNormalUser = true; description = "dashie"; @@ -86,8 +73,5 @@ ]; }; - # Allow unfree packages - # nixpkgs.config.allowUnfree = true; - - system.stateVersion = "unstable"; # Did you read the comment? + system.stateVersion = "unstable"; } diff --git a/nix/hardware/spaceship/default.nix b/nix/hardware/spaceship/default.nix new file mode 100644 index 0000000..d92d1df --- /dev/null +++ b/nix/hardware/spaceship/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./spaceship.nix + ./configuration.nix + ]; +} diff --git a/nix/hardware/spaceship.nix b/nix/hardware/spaceship/spaceship.nix similarity index 100% rename from nix/hardware/spaceship.nix rename to nix/hardware/spaceship/spaceship.nix diff --git a/nix/hardware/streamdeck.nix b/nix/hardware/streamdeck.nix index 3bca650..6ec03a8 100644 --- a/nix/hardware/streamdeck.nix +++ b/nix/hardware/streamdeck.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: { +{ programs.streamdeck-ui = { enable = true; autoStart = true; # optional diff --git a/nix/programs/coding.nix b/nix/programs/coding.nix index fea59e8..a6419d1 100644 --- a/nix/programs/coding.nix +++ b/nix/programs/coding.nix @@ -3,7 +3,7 @@ }: { imports = [ - ../nvim/default.nix + ./nvim/default.nix ]; home.packages = with pkgs; [ diff --git a/nix/programs/default.nix b/nix/programs/default.nix index ff2840d..ef7da4b 100644 --- a/nix/programs/default.nix +++ b/nix/programs/default.nix @@ -1,16 +1,13 @@ { imports = [ ./common.nix - ./kitty.nix ./coding.nix ./xdg.nix ./media.nix ./utils.nix - ./yazi.nix ./oxi/default.nix ./themes/default.nix - ./fish.nix - ./ncspot.nix + ./individual_configs/default.nix ]; home.username = "dashie"; diff --git a/nix/programs/gaming/default.nix b/nix/programs/gaming/default.nix index 1504f9b..d041a2d 100644 --- a/nix/programs/gaming/default.nix +++ b/nix/programs/gaming/default.nix @@ -1,5 +1,5 @@ -{ lib -, pkgs +{ + pkgs , ... }: { imports = [ diff --git a/nix/programs/homemanager.nix b/nix/programs/homemanager.nix index 486d3b3..a7ef72e 100644 --- a/nix/programs/homemanager.nix +++ b/nix/programs/homemanager.nix @@ -1,3 +1,3 @@ -{ pkgs, ... }: { +{ programs.home-manager.enable = true; } diff --git a/nix/programs/hyprland/config.nix b/nix/programs/hyprland/config.nix index 0a97dcf..8a737a8 100644 --- a/nix/programs/hyprland/config.nix +++ b/nix/programs/hyprland/config.nix @@ -262,7 +262,8 @@ "hyprpaper" "ironbar" "firefox" - #"oxipaste_daemon" + "oxipaste_daemon" + # TODO: is this necessary? #"/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" "nextcloud --background" "$HOME/.cargo/bin/oxinoti" @@ -277,7 +278,6 @@ }; }; wayland.windowManager.hyprland.plugins = [ - # ... whatever inputs.Hyprspace.packages.${pkgs.system}.Hyprspace ]; } diff --git a/nix/programs/hyprland/hyprgreet.nix b/nix/programs/hyprland/hyprgreet.nix index 2776a25..c3011d2 100644 --- a/nix/programs/hyprland/hyprgreet.nix +++ b/nix/programs/hyprland/hyprgreet.nix @@ -1,4 +1,4 @@ -{ ... }: { +{ xdg.configFile."hypr/hyprgreet.conf" = { text = '' diff --git a/nix/programs/individual_configs/default.nix b/nix/programs/individual_configs/default.nix new file mode 100644 index 0000000..8c7425d --- /dev/null +++ b/nix/programs/individual_configs/default.nix @@ -0,0 +1,8 @@ +{ + imports = [ + ./kitty.nix + ./yazi.nix + ./fish.nix + ./ncspot.nix + ]; +} diff --git a/nix/programs/fish.nix b/nix/programs/individual_configs/fish.nix similarity index 100% rename from nix/programs/fish.nix rename to nix/programs/individual_configs/fish.nix diff --git a/nix/programs/kitty.nix b/nix/programs/individual_configs/kitty.nix similarity index 98% rename from nix/programs/kitty.nix rename to nix/programs/individual_configs/kitty.nix index 8dff7e3..60ef324 100644 --- a/nix/programs/kitty.nix +++ b/nix/programs/individual_configs/kitty.nix @@ -1,4 +1,4 @@ -{ default, ... }: { +{ programs.kitty = { enable = true; diff --git a/nix/programs/ncspot.nix b/nix/programs/individual_configs/ncspot.nix similarity index 100% rename from nix/programs/ncspot.nix rename to nix/programs/individual_configs/ncspot.nix diff --git a/nix/programs/yazi.nix b/nix/programs/individual_configs/yazi.nix similarity index 100% rename from nix/programs/yazi.nix rename to nix/programs/individual_configs/yazi.nix diff --git a/nix/programs/media.nix b/nix/programs/media.nix index 717beae..58706df 100644 --- a/nix/programs/media.nix +++ b/nix/programs/media.nix @@ -1,7 +1,4 @@ -{ pkgs -, config -, ... -}: +{ pkgs, ...}: { home.packages = with pkgs; [ # base audio diff --git a/nix/nvim/default.nix b/nix/programs/nvim/default.nix similarity index 100% rename from nix/nvim/default.nix rename to nix/programs/nvim/default.nix diff --git a/nix/nvim/lua/config/keymaps.lua b/nix/programs/nvim/lua/config/keymaps.lua similarity index 100% rename from nix/nvim/lua/config/keymaps.lua rename to nix/programs/nvim/lua/config/keymaps.lua diff --git a/nix/nvim/lua/config/lazy.lua b/nix/programs/nvim/lua/config/lazy.lua similarity index 100% rename from nix/nvim/lua/config/lazy.lua rename to nix/programs/nvim/lua/config/lazy.lua diff --git a/nix/nvim/lua/config/lsp-keymap.lua b/nix/programs/nvim/lua/config/lsp-keymap.lua similarity index 100% rename from nix/nvim/lua/config/lsp-keymap.lua rename to nix/programs/nvim/lua/config/lsp-keymap.lua diff --git a/nix/nvim/lua/config/options.lua b/nix/programs/nvim/lua/config/options.lua similarity index 100% rename from nix/nvim/lua/config/options.lua rename to nix/programs/nvim/lua/config/options.lua diff --git a/nix/nvim/lua/config/plugins.lua b/nix/programs/nvim/lua/config/plugins.lua similarity index 100% rename from nix/nvim/lua/config/plugins.lua rename to nix/programs/nvim/lua/config/plugins.lua diff --git a/nix/nvim/lua/plugins/cmp.lua b/nix/programs/nvim/lua/plugins/cmp.lua similarity index 100% rename from nix/nvim/lua/plugins/cmp.lua rename to nix/programs/nvim/lua/plugins/cmp.lua diff --git a/nix/nvim/lua/plugins/dashboard.lua b/nix/programs/nvim/lua/plugins/dashboard.lua similarity index 100% rename from nix/nvim/lua/plugins/dashboard.lua rename to nix/programs/nvim/lua/plugins/dashboard.lua diff --git a/nix/nvim/lua/plugins/disabled.lua b/nix/programs/nvim/lua/plugins/disabled.lua similarity index 100% rename from nix/nvim/lua/plugins/disabled.lua rename to nix/programs/nvim/lua/plugins/disabled.lua diff --git a/nix/nvim/lua/plugins/lsp.lua b/nix/programs/nvim/lua/plugins/lsp.lua similarity index 100% rename from nix/nvim/lua/plugins/lsp.lua rename to nix/programs/nvim/lua/plugins/lsp.lua diff --git a/nix/nvim/lua/plugins/plugins.lua b/nix/programs/nvim/lua/plugins/plugins.lua similarity index 100% rename from nix/nvim/lua/plugins/plugins.lua rename to nix/programs/nvim/lua/plugins/plugins.lua diff --git a/nix/programs/utils.nix b/nix/programs/utils.nix index dda7d9b..4a95190 100644 --- a/nix/programs/utils.nix +++ b/nix/programs/utils.nix @@ -1,5 +1,4 @@ -{ lib -, pkgs +{ pkgs , ... }: { diff --git a/nix/programs/xdg.nix b/nix/programs/xdg.nix index 84908aa..b604a04 100644 --- a/nix/programs/xdg.nix +++ b/nix/programs/xdg.nix @@ -1,8 +1,8 @@ -{ config, ... }: let browser = [ "firefox.desktop" ]; # XDG MIME types + # TODO: make this actually work associations = { "application/x-extension-htm" = browser; "application/x-extension-html" = browser;