From 501935bab60348a14f0d0a489ae71f0ac2d2d5ab Mon Sep 17 00:00:00 2001 From: Gabriella Bere Date: Mon, 26 Aug 2024 19:58:51 +0100 Subject: [PATCH] a very large amount of testing took place, adding librewolf is proving to be a pain since the unstable version fails to build --- flake.nix | 14 +++-- home-manager/home.nix | 3 +- home-manager/librewolf.nix | 3 +- hosts/gabbielaptop/configuration.nix | 87 +++++++++++++++------------- modules/packages.nix | 47 +++++++++++++++ 5 files changed, 105 insertions(+), 49 deletions(-) create mode 100644 modules/packages.nix diff --git a/flake.nix b/flake.nix index f771450..03b1e29 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,5 @@ { - description = "main system configuration flake"; + description = "main system and home configuration flake"; inputs = { # NixOS official package source, using the nixos-24.05 branch as stable and nixos-unstable as default @@ -24,21 +24,22 @@ outputs = { self, nixpkgs, stablepkgs, home-manager, ... } @ inputs: let - inherit (self) outputs; system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; - stable = stablepkgs.legacyPacakges.${system}; + stablepkgs = stablepkgs.legacyPacakges.${system}; in { nixosConfigurations.gabbielaptop = nixpkgs.lib.nixosSystem { - specialArgs = { inherit inputs; }; inherit system; + specialArgs = { inherit inputs; }; modules = [ # Import nixos modules here ./hosts/gabbielaptop/configuration.nix ./modules/nh.nix ./modules/waydroid.nix - # Imports home-manager module for use within nixos + ./modules/packages.nix + + # Imports home-manager module for use within nixos, not reccomended for use WITH standalone version # inputs.home-manager.nixosModules.default ]; }; @@ -46,10 +47,11 @@ # Standalone home-manager config homeConfigurations.blue = home-manager.lib.homeManagerConfiguration { inherit pkgs; - extraSpecialArgs = { inherit inputs outputs; }; + extraSpecialArgs = { inherit inputs; }; # Import home-manager modules here modules = [ ./home-manager/home.nix +# ./home-manager/librewolf.nix inputs.anyrun.homeManagerModules.default inputs.flatpaks.homeManagerModules.default ]; diff --git a/home-manager/home.nix b/home-manager/home.nix index 6b2a543..3e7f6b9 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -10,7 +10,7 @@ ./swaync.nix ./flatpak.nix ./sober.nix - ./librewolf.nix +# ./librewolf.nix ]; # States home manager version that config was originally compatible with, do not change without reading all patch notes since this version and altering as needed @@ -20,7 +20,6 @@ home.packages = [ # Add grimblast screenshot tool pkgs.grimblast - pkgs.librewolf ]; home.sessionVariables = { diff --git a/home-manager/librewolf.nix b/home-manager/librewolf.nix index 58bdc99..549cf80 100644 --- a/home-manager/librewolf.nix +++ b/home-manager/librewolf.nix @@ -1,7 +1,8 @@ -{ config, ... }: +{ config, pkgs, stablepkgs, ... }: { programs.librewolf = { enable = true; + package = stablepkgs.librewolf; settings = { "privacy.clearOnShutdown.history" = false; "privacy.clearOnShutdown.downloads" = false; diff --git a/hosts/gabbielaptop/configuration.nix b/hosts/gabbielaptop/configuration.nix index f57d514..6629bc1 100644 --- a/hosts/gabbielaptop/configuration.nix +++ b/hosts/gabbielaptop/configuration.nix @@ -128,46 +128,53 @@ # Enable flatpak for delcarative-flatpak used in home-manager services.flatpak.enable = true; - # List packages installed in system profile. To search, run: - # $ nix search wget - environment.systemPackages = with pkgs; [ - neovim # nano is installed by default - wget - vesktop - prismlauncher - thunderbird - kdePackages.bluedevil - fastfetch - ungoogled-chromium - qbittorrent - obsidian - p7zip - unrar - wineWowPackages.stable - wine - (wine.override { wineBuild = "wine64"; }) - wine64 - wineWowPackages.staging - winetricks - wineWowPackages.waylandFull - vlc - krename - kdePackages.filelight - protonmail-bridge - obs-studio - pciutils - vial - git - qmk - dmidecode - wl-clipboard - lutris - tree - tenacity - mediawriter - home-manager - ]; - + # Monolithic packaged declaration, using merge because it amuses me but this needs to be split up +# lib.mkMerge [ +# { +# environment.systemPackages = with pkgs; [ +# neovim # nano is installed by default +# wget +# vesktop +# prismlauncher +# thunderbird +# kdePackages.bluedevil +# fastfetch +# ungoogled-chromium +# qbittorrent +# obsidian +# p7zip +# unrar +# wineWowPackages.stable +# wine +# (wine.override { wineBuild = "wine64"; }) +# wine64 +# wineWowPackages.staging +# winetricks +# wineWowPackages.waylandFull +# vlc +# krename +# kdePackages.filelight +# protonmail-bridge +# obs-studio +# pciutils +# vial +# git +# qmk +# dmidecode +# wl-clipboard +# lutris +# tree +# tenacity +# mediawriter +# home-manager +# ]; +# } +# { +# environment.systemPackages = with stable; [ +# librewolf +# ]; +# } +# ]; hardware.keyboard.qmk.enable = true; programs.steam.enable = true; diff --git a/modules/packages.nix b/modules/packages.nix new file mode 100644 index 0000000..ae44c8d --- /dev/null +++ b/modules/packages.nix @@ -0,0 +1,47 @@ +{ config, lib, pkgs, stablepkgs, ... }: { + # All packaged needed from nixos-unstable + environment.systemPackages = + (with pkgs; [ + neovim # nano is installed by default + wget + vesktop + prismlauncher + thunderbird + kdePackages.bluedevil + fastfetch + ungoogled-chromium + qbittorrent + obsidian + p7zip + unrar + wineWowPackages.stable + wine + (wine.override { wineBuild = "wine64"; }) + wine64 + wineWowPackages.staging + winetricks + wineWowPackages.waylandFull + vlc + krename + kdePackages.filelight + protonmail-bridge + obs-studio + pciutils + vial + git + qmk + dmidecode + wl-clipboard + lutris + tree + tenacity + mediawriter + home-manager + ]) + + ++ + + (with stablepkgs; [ + # packages that are unstable on nixos-unstable can be moved here + ]); +}