configurations: Add stable nixpkgs for other hosts, use one Arg

This commit is contained in:
Mateusz Słodkowicz 2023-10-27 14:01:54 +02:00
parent 154d850e49
commit 2f0a613381
Signed by: materus
GPG Key ID: 28D140BCA60B4FD1
39 changed files with 367 additions and 148 deletions

View File

@ -12,15 +12,14 @@ let
([{
name = builtins.elemAt _list i;
value = let host = builtins.elemAt hosts i; in
inputs.configInputs.inputs.home-manager.lib.homeManagerConfiguration {
materusFlake.nixosConfigurations.${host}.materusCfg.hm.lib.homeManagerConfiguration {
pkgs = materusFlake.nixosConfigurations.${host}.pkgs;
extraSpecialArgs = { inherit inputs; inherit materusFlake; };
extraSpecialArgs = { materusCfg = materusFlake.nixosConfigurations.${host}.materusCfg; };
modules = [
./${username}
../host/${host}/extraHome.nix
profiles.homeProfile
inputs.private.homeModule
];
};
}]
@ -29,9 +28,19 @@ let
in
(builtins.listToAttrs (_for 0)) // {
#Make generic x86_64-linux user profile "username"
${username} = inputs.configInputs.inputs.home-manager.lib.homeManagerConfiguration {
${username} =
let materusCfg = {
stable = false;
inherit materusFlake;
host = "Generic";
hm = inputs.configInputs.inputs.home-manager;
nixerus = inputs.configInputs.inputs.nixerus;
configInputs = inputs.configInputs;
path = materusFlake.selfPath;
}; in
inputs.configInputs.inputs.home-manager.lib.homeManagerConfiguration {
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; config = {allowUnfree = true;}; };
extraSpecialArgs = { inherit inputs; inherit materusFlake; };
extraSpecialArgs = { inherit materusCfg; };
modules = [
./${username}
profiles.homeProfile

View File

@ -2,65 +2,33 @@
let
profiles = import ../profile;
makeSystem = {host, arch ? "x86_64-linux", extraModules ? [], stable ? true}:
let
nixosSystem = if stable then inputs.nixpkgs-stable.lib.nixosSystem else inputs.nixpkgs.lib.nixosSystem;
hm = if stable then inputs.configInputs-stable.inputs.home-manager else inputs.configInputs.inputs.home-manager;
materusCfg = {
inherit stable;
inherit materusFlake;
inherit host;
inherit hm;
nixerus = if stable then inputs.configInputs-stable.inputs.nixerus else inputs.configInputs.inputs.nixerus;
configInputs = if stable then inputs.configInputs-stable else inputs.configInputs;
path = materusFlake.selfPath;
};
in
(nixosSystem rec {
specialArgs = { inherit materusCfg; };
system = arch;
modules = [
./${host}
inputs.private.systemModule
profiles.osProfile
] ++ extraModules;
}) // {inherit materusCfg;};
in
{
materusPC = inputs.nixpkgs.lib.nixosSystem rec {
specialArgs = { inherit inputs; inherit materusFlake; };
system = "x86_64-linux";
modules = [
./materusPC
inputs.private.systemModule
profiles.osProfile
];
};
flamaster = inputs.nixpkgs.lib.nixosSystem rec {
specialArgs = { inherit inputs; inherit materusFlake; };
system = "x86_64-linux";
modules = [
./flamaster
inputs.private.systemModule
profiles.osProfile
inputs.home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.materus = { config ,... }: {
imports = [
../home/materus
flamaster/extraHome.nix
profiles.homeProfile
inputs.private.homeModule
];
materus.profile.nixpkgs.enable = false;
};
home-manager.extraSpecialArgs = { inherit inputs; inherit materusFlake; };
}
];
};
valkyrie = inputs.nixpkgs.lib.nixosSystem rec {
specialArgs = { inherit inputs; inherit materusFlake; };
system = "x86_64-linux";
modules = [
./valkyrie
inputs.private.systemModule
profiles.osProfile
inputs.home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.materus = { config ,... }: {
imports = [
../home/materus
valkyrie/extraHome.nix
profiles.homeProfile
inputs.private.homeModule
];
materus.profile.nixpkgs.enable = false;
};
home-manager.extraSpecialArgs = { inherit inputs; inherit materusFlake; };
}
];
};
materusPC = makeSystem {host = "materusPC"; stable = false;};
flamaster = makeSystem {host = "flamaster"; stable = true;};
valkyrie = makeSystem {host = "valkyrie"; stable = true;};
}

View File

@ -2,7 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, lib, pkgs, materusFlake, materusPkgs, ... }:
{ config, lib, pkgs, materusArg, ... }:
{
imports =
@ -115,7 +115,7 @@
isNormalUser = true;
description = "Mateusz Słodkowicz";
extraGroups = [ "networkmanager" "wheel" ];
openssh.authorizedKeys.keyFiles = [ (materusFlake.selfPath + /extraFiles/keys/ssh/materus.pub) ];
openssh.authorizedKeys.keyFiles = [ ("${materusArg.cfg.path}" + "/extraFiles/keys/ssh/materus.pub") ];
packages = with pkgs; [
kate
];

View File

@ -1,4 +1,4 @@
{ config, pkgs, materusPkgs, lib, ... }:
{ config, pkgs, materusArg, lib, ... }:
{
home.stateVersion = "23.05";
home.homeDirectory = "/home/materus";
@ -15,7 +15,7 @@
home.packages = [
pkgs.papirus-icon-theme
(materusPkgs.polymc.wrap { extraJDKs = [ pkgs.graalvm-ce ]; })
(materusArg.pkgs.polymc.wrap { extraJDKs = [ pkgs.graalvm-ce ]; })
];
}

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
{
imports =
[

View File

@ -1,4 +1,4 @@
{ config, pkgs, materusPkgs, lib, ... }:
{ config, pkgs, materusArg, lib, ... }:
{
home.stateVersion = "23.05";
home.homeDirectory = "/home/materus";
@ -67,13 +67,13 @@
home.packages = [
pkgs.papirus-icon-theme
materusPkgs.ffmpeg6-amf-full
(materusPkgs.polymc.wrap { extraJDKs = [ pkgs.graalvm-ce ]; extraLibs = [ ]; })
materusArg.pkgs.ffmpeg6-amf-full
(materusArg.pkgs.polymc.wrap { extraJDKs = [ pkgs.graalvm-ce ]; extraLibs = [ ]; })
];
programs.obs-studio = {
enable = true;
plugins = with pkgs.obs-studio-plugins; [ wlrobs obs-vaapi obs-vkcapture obs-gstreamer input-overlay obs-multi-rtmp obs-pipewire-audio-capture ];
package = materusPkgs.obs-amf;
package = materusArg.pkgs.obs-amf;
};
}

View File

@ -1,5 +1,5 @@
{ config, pkgs, lib, inputs, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib,... }:
{

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
let
video = [

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
{
imports =
[
@ -7,8 +7,8 @@
];
hardware.firmware = with pkgs; [
#materusPkgs.amdgpu-pro-libs.firmware.vcn
#materusPkgs.amdgpu-pro-libs.firmware
#materusArg.pkgs.amdgpu-pro-libs.firmware.vcn
#materusArg.pkgs.amdgpu-pro-libs.firmware
linux-firmware
alsa-firmware
sof-firmware
@ -37,13 +37,13 @@
amdvlk
rocmPackages.clr.icd
rocmPackages.clr
materusPkgs.amdgpu-pro-libs.vulkan
materusPkgs.amdgpu-pro-libs.amf
materusArg.pkgs.amdgpu-pro-libs.vulkan
materusArg.pkgs.amdgpu-pro-libs.amf
];
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [
vaapiVdpau
pkgs.driversi686Linux.amdvlk
materusPkgs.i686Linux.amdgpu-pro-libs.vulkan
materusArg.pkgs.i686Linux.amdgpu-pro-libs.vulkan
libvdpau-va-gl
];
services.udev.extraRules = ''

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
{
zramSwap = {
enable = true;

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib, ... }:
let
westonSddm = pkgs.writeText "weston.ini"
''

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
{
networking.useDHCP = lib.mkDefault true;
networking.hostName = "materusPC";

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
let
valkyrie-sync = pkgs.writeShellScriptBin "valkyrie-sync" ''
${pkgs.rsync}/bin/rsync -avzrh --delete --exclude ".git*" --exclude "flake.lock" /materus/config/nixos-config materus@valkyrie:/materus/config/ && \

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
{
virtualisation.lxc.enable = false;
@ -193,7 +193,7 @@
firefox
gamescope
#(pkgs.lutris.override { extraLibraries = pkgs: with pkgs; [ pkgs.samba pkgs.jansson pkgs.tdb pkgs.libunwind pkgs.libusb1 pkgs.gnutls pkgs.gtk3 pkgs.pango ]; })
materusPkgs.amdgpu-pro-libs.prefixes
materusArg.pkgs.amdgpu-pro-libs.prefixes
(pkgs.bottles.override { extraPkgs = pkgs: with pkgs; [ pkgs.libsForQt5.breeze-qt5 pkgs.libsForQt5.breeze-gtk pkgs.nss_latest ]; extraLibraries = pkgs: with pkgs; [ pkgs.samba pkgs.jansson pkgs.tdb pkgs.libunwind pkgs.libusb1 pkgs.gnutls pkgs.gtk3 pkgs.pango ]; })
glibc
glib
@ -251,7 +251,7 @@
# pgcli
# litecli
materusPkgs.alvr
materusArg.pkgs.alvr
#zenmonitor
nix-du

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
{
imports = [
./win10

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, inputs, materusFlake, ... }:
{ config, pkgs, lib, ... }:
let
startHook = /*''

View File

@ -2,7 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running `nixos-help`).
{ config, pkgs, materusFlake, ... }:
{ config, pkgs, materusArg, ... }:
{
imports =
@ -71,7 +71,7 @@
extraGroups = [ "wheel" ]; # Enable sudo for the user.
packages = with pkgs; [
];
openssh.authorizedKeys.keyFiles = [ (materusFlake.selfPath + /extraFiles/keys/ssh/materus.pub) ];
openssh.authorizedKeys.keyFiles = [ ("${materusArg.cfg.path}" + "/extraFiles/keys/ssh/materus.pub") ];
};
# List packages installed in system profile. To search, run:

View File

@ -1,4 +1,4 @@
{ config, pkgs, materusPkgs, lib, ... }:
{ config, pkgs, lib, ... }:
{
home.stateVersion = "23.05";
home.homeDirectory = "/home/materus";

View File

@ -1,4 +1,4 @@
{ config, pkgs, materusFlake, ... }:
{ config, pkgs, ... }:
{
imports =
[

View File

@ -1,6 +1,6 @@
{ config, pkgs, lib, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
{
options.valkyrieService.pihole.enable = materusPkgs.lib.mkBoolOpt false "Enable pihole";
options.valkyrieService.pihole.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable pihole";
options.valkyrieService.pihole.dnsIP = lib.mkOption { default = "127.0.0.1";};
options.valkyrieService.pihole.webIP = lib.mkOption { default = "127.0.0.1";};

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
socketPath = "/run/pleroma/http.sock";
@ -41,7 +41,7 @@ let
in
{
options.valkyrieService.pleroma.enable = materusPkgs.lib.mkBoolOpt false "Enable pleroma";
options.valkyrieService.pleroma.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable pleroma";
config = lib.mkIf config.valkyrieService.pleroma.enable {
systemd.tmpfiles.rules = [
"d /var/lib/pleroma 0766 pleroma pleroma -"

View File

@ -1,9 +1,15 @@
{ config, pkgs, lib, materusFlake, inputs, ... }:
{ config, pkgs, lib, materusCfg, ... }:
let
materusArg = {
pkgs = (import materusCfg.nixerus { inherit pkgs; }) //
(if pkgs.system == "x86_64-linux" then { i686Linux = import materusCfg.nixerus { pkgs = pkgs.pkgsi686Linux; }; } else { });
cfg = materusCfg;
};
in
{
imports = [
./nixpkgs.nix
./packages
];
config._module.args.materusPkgs = (import inputs.configInputs.inputs.nixerus { inherit pkgs; }) //
(if pkgs.system == "x86_64-linux" then { i686Linux = import inputs.configInputs.inputs.nixerus { pkgs = pkgs.pkgsi686Linux; }; } else { });
config._module.args.materusArg = materusArg;
}

View File

@ -1,4 +1,4 @@
{ config, pkgs, inputs, lib,... }:
{ config, pkgs, lib, materusArg, ... }:
let
mkBoolOpt = default: description: lib.mkOption {
inherit default;
@ -18,5 +18,5 @@ in
joypixels.acceptLicense = lib.mkDefault true;
firefox.enablePlasmaBrowserIntegration = true;
};
config.nixpkgs.overlays = lib.mkIf cfg.enableOverlays [inputs.configInputs.inputs.emacs-overlay.overlay];
config.nixpkgs.overlays = lib.mkIf cfg.enableOverlays [materusArg.cfg.configInputs.inputs.emacs-overlay.overlay];
}

View File

@ -1,12 +1,12 @@
{ config, pkgs, lib, inputs, materusFlake, materusPkgs, ... }:
with materusPkgs.lib;
{ config, pkgs, lib, materusArg, ... }:
with materusArg.pkgs.lib;
{
imports = [
./fonts.nix
];
#Single Packages
options.materus.profile.packages.home-manager = mkPrivateVar inputs.configInputs.inputs.home-manager.packages.${pkgs.system}.home-manager;
options.materus.profile.packages.home-manager = mkPrivateVar materusArg.cfg.configInputs.inputs.home-manager.packages.${pkgs.system}.home-manager;
options.materus.profile.packages.firefox = mkPrivateVar pkgs.firefox;
#Package Lists

View File

@ -1,10 +1,10 @@
{ config, lib, pkgs, materusPkgs, ... }:
{ config, lib, pkgs, materusArg, ... }:
let
cfg = config.materus.profile.browser;
in
{
options= let mkBoolOpt = materusPkgs.lib.mkBoolOpt; in{
options= let mkBoolOpt = materusArg.pkgs.lib.mkBoolOpt; in{
materus.profile.browser.firefox.enable = mkBoolOpt config.materus.profile.enableDesktop "Enable Firefox with materus cfg";
materus.profile.browser.vivaldi.enable = mkBoolOpt config.materus.profile.enableDesktop "Enable Vivaldi with materus cfg";
materus.profile.browser.brave.enable = mkBoolOpt false "Enable Brave with materus cfg";

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, materusPkgs, ... }:
{ config, lib, pkgs, materusArg, ... }:
let
packages = cfg.packages;
cfg = config.materus.profile;
@ -12,10 +12,10 @@ in
./editor
];
options.materus.profile.enableDesktop = materusPkgs.lib.mkBoolOpt false "Enable settings for desktop";
options.materus.profile.enableTerminal = materusPkgs.lib.mkBoolOpt true "Enable settings for terminal";
options.materus.profile.enableTerminalExtra = materusPkgs.lib.mkBoolOpt false "Enable extra settings for terminal";
options.materus.profile.enableNixDevel = materusPkgs.lib.mkBoolOpt false "Enable settings for nix devel";
options.materus.profile.enableDesktop = materusArg.pkgs.lib.mkBoolOpt false "Enable settings for desktop";
options.materus.profile.enableTerminal = materusArg.pkgs.lib.mkBoolOpt true "Enable settings for terminal";
options.materus.profile.enableTerminalExtra = materusArg.pkgs.lib.mkBoolOpt false "Enable extra settings for terminal";
options.materus.profile.enableNixDevel = materusArg.pkgs.lib.mkBoolOpt false "Enable settings for nix devel";
config =
{

View File

@ -1,10 +1,10 @@
{ config, lib, pkgs, materusPkgs, ... }:
{ config, lib, pkgs, materusArg, ... }:
let
cfg = config.materus.profile.editor.code;
in
{
options.materus.profile.editor.code.enable = materusPkgs.lib.mkBoolOpt config.materus.profile.enableDesktop "Enable VSCodium with materus cfg";
options.materus.profile.editor.code.fhs.enable = materusPkgs.lib.mkBoolOpt false "Use fhs vscodium";
options.materus.profile.editor.code.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableDesktop "Enable VSCodium with materus cfg";
options.materus.profile.editor.code.fhs.enable = materusArg.pkgs.lib.mkBoolOpt false "Use fhs vscodium";
options.materus.profile.editor.code.fhs.packages = lib.mkOption { default = (ps: []);};
config = lib.mkIf cfg.enable {
programs.vscode = {

View File

@ -1,14 +1,14 @@
{ config, lib, pkgs, materusPkgs, materusFlake, ... }:
{ config, lib, pkgs, materusArg, ... }:
let
cfg = config.materus.profile.editor.emacs;
configPath = "${materusFlake.selfPath}" + "/extraFiles/config/emacs/materus/";
configPath = "${materusArg.cfg.path}" + "/extraFiles/config/emacs/materus/";
emacsPkgs = with pkgs;[
python3
lua
];
in
{
options.materus.profile.editor.emacs.enable = materusPkgs.lib.mkBoolOpt false "Enable emacs with materus cfg";
options.materus.profile.editor.emacs.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable emacs with materus cfg";
config = lib.mkIf cfg.enable {
#TODO: Make config

View File

@ -1,9 +1,9 @@
{ config, lib, pkgs, materusPkgs, ... }:
{ config, lib, pkgs, materusArg, ... }:
let
cfg = config.materus.profile.editor.neovim;
in
{
options.materus.profile.editor.neovim.enable = materusPkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable neovim with materus cfg";
options.materus.profile.editor.neovim.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable neovim with materus cfg";
config = lib.mkIf cfg.enable {
programs.neovim = {
enable = true;

View File

@ -1,10 +1,10 @@
{ config, pkgs, lib, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
packages = config.materus.profile.packages;
cfg = config.materus.profile.fonts;
in
{
options.materus.profile.fonts.enable = materusPkgs.lib.mkBoolOpt config.materus.profile.enableDesktop "Enable materus font settings";
options.materus.profile.fonts.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableDesktop "Enable materus font settings";
config = lib.mkIf cfg.enable {
fonts.fontconfig.enable = lib.mkDefault true;

View File

@ -1,9 +1,9 @@
{ config, pkgs, lib, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
cfg = config.materus.profile.bash;
in
{
options.materus.profile.bash.enable = materusPkgs.lib.mkBoolOpt config.materus.profile.enableTerminal "Enable materus bash config";
options.materus.profile.bash.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminal "Enable materus bash config";
config = lib.mkIf cfg.enable {

View File

@ -1,9 +1,9 @@
{ config, pkgs, lib, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
cfg = config.materus.profile.fish;
in
{
options.materus.profile.fish.enable = materusPkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable materus fish config";
options.materus.profile.fish.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable materus fish config";
config = lib.mkIf cfg.enable {
programs.fish = {
enable = lib.mkDefault true;

View File

@ -1,10 +1,10 @@
{ config, pkgs, lib, materusFlake, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
profile = config.materus.profile;
cfg = config.materus.profile.starship;
in
{
options.materus.profile.starship.enable = materusPkgs.lib.mkBoolOpt (profile.zsh.enable || profile.bash.enable || profile.fish.enable) "Enable materus fish config";
options.materus.profile.starship.enable = materusArg.pkgs.lib.mkBoolOpt (profile.zsh.enable || profile.bash.enable || profile.fish.enable) "Enable materus fish config";
config = lib.mkIf cfg.enable {
programs.starship.enable = lib.mkDefault cfg.enable;

View File

@ -1,12 +1,12 @@
{ config, pkgs, lib, materusFlake, materusPkgs, options, ... }:
{ config, pkgs, lib, materusArg, options, ... }:
let
p10kcfg = "${zshcfg}/p10kcfg";
zshcfg = "${materusFlake.selfPath}/extraFiles/config/zsh";
zshcfg = "${materusArg.cfg.path}" + "/extraFiles/config/zsh";
cfg = config.materus.profile.zsh;
enableStarship = config.materus.starship.enable;
in
{
options.materus.profile.zsh.enable = materusPkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable materus zsh config";
options.materus.profile.zsh.enable = materusArg.pkgs.lib.mkBoolOpt config.materus.profile.enableTerminalExtra "Enable materus zsh config";
options.materus.profile.zsh.prompt = lib.mkOption {
type = lib.types.enum ["p10k" "starship"];
example = "p10k";

View File

@ -1,10 +1,10 @@
{ config, pkgs, lib, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
packages = config.materus.profile.packages;
cfg = config.materus.profile.fonts;
in
{
options.materus.profile.fonts.enable = materusPkgs.lib.mkBoolOpt false "Enable materus font settings for OS";
options.materus.profile.fonts.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable materus font settings for OS";
config = lib.mkIf cfg.enable {

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, materusPkgs, inputs, ... }:
{ config, pkgs, lib, materusArg, inputs, ... }:
let
optHip = pkgs.stdenv.mkDerivation rec {
pname = "optHip";
@ -24,7 +24,7 @@ let
steamPkg = pkgs.steam.override {
extraPkgs = pkgs: [
#config.materus.profile.packages.firefox
optHip #for blender
#optHip #for blender
pkgs.libdecor
pkgs.obs-studio-plugins.obs-vkcapture
pkgs.steamcmd
@ -72,7 +72,7 @@ let
pkgs.x264.lib
pkgs.steamtinkerlaunch
] ++ config.materus.profile.packages.list.fonts;
] ++ config.materus.profile.packages.list.fonts ++ config.materus.profile.steam.extraPkgs;
extraLibraries = pkgs: [
pkgs.libkrb5
@ -100,12 +100,16 @@ let
cfg = config.materus.profile.steam;
in
{
options.materus.profile.steam.enable = materusPkgs.lib.mkBoolOpt false "Enable materus steam settings for OS";
options.materus.profile.steam.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable materus steam settings for OS";
options.materus.profile.steam.package = lib.mkOption {
type = lib.types.package;
default = steamPkg;
description = "Package used by steam";
};
options.materus.profile.steam.extraPkgs = lib.mkOption {
default = [];
description = "Extra packages for steam";
};
config = lib.mkIf cfg.enable {

View File

@ -1,9 +1,9 @@
{ config, pkgs, lib, inputs, materusPkgs, ... }:
{ config, pkgs, lib, materusArg, ... }:
let
cfg = config.materus.profile.nix;
in
{
options.materus.profile.nix.enable = materusPkgs.lib.mkBoolOpt false "Enable materus nix settings";
options.materus.profile.nix.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable materus nix settings";
config.nix = lib.mkIf cfg.enable {
package = lib.mkDefault pkgs.nixVersions.unstable;

View File

@ -25,6 +25,32 @@
"type": "github"
}
},
"configInputs-stable": {
"inputs": {
"emacs-overlay": "emacs-overlay_2",
"home-manager": "home-manager_2",
"nixerus": "nixerus_2",
"nixos-hardware": "nixos-hardware",
"nixpkgs": [
"nixpkgs-stable"
],
"nur": "nur_4"
},
"locked": {
"lastModified": 1698402907,
"narHash": "sha256-UlpPCLpyNEoQ7Enb0AhhIM8d7lC/2BWd8+fjNm9N/GY=",
"owner": "materusPL",
"repo": "nixos-config",
"rev": "06a35210af4b8586a2b3d64815a67e3516ce732a",
"type": "github"
},
"original": {
"owner": "materusPL",
"ref": "inputs",
"repo": "nixos-config",
"type": "github"
}
},
"emacs-overlay": {
"inputs": {
"flake-utils": "flake-utils",
@ -49,6 +75,30 @@
"type": "github"
}
},
"emacs-overlay_2": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"configInputs-stable",
"nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable_2"
},
"locked": {
"lastModified": 1698401973,
"narHash": "sha256-ITmrkooGUmat5f9T3yzKqoqu5eO8QfHq2JNOa0tPb1E=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "88a6b098a9e77718eebd801b650695765e54136a",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "master",
"repo": "emacs-overlay",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
@ -67,6 +117,24 @@
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1694529238,
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -90,6 +158,28 @@
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"configInputs-stable",
"nixpkgs"
]
},
"locked": {
"lastModified": 1695108154,
"narHash": "sha256-gSg7UTVtls2yO9lKtP0yb66XBHT1Fx5qZSZbGMpSn2c=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "07682fff75d41f18327a871088d20af2710d4744",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "master",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": "nixpkgs"
},
@ -134,6 +224,49 @@
"type": "github"
}
},
"nixerus_2": {
"inputs": {
"home-manager": [
"configInputs-stable",
"home-manager"
],
"nixpkgs": [
"configInputs-stable",
"nixpkgs"
],
"nur": "nur_3"
},
"locked": {
"lastModified": 1698175745,
"narHash": "sha256-qlvZjrDUL7KSiu7z8zotYvP7qaD3kKVm/2q86U23K70=",
"owner": "materusPL",
"repo": "Nixerus",
"rev": "5518d2e80ad61b7efb10ddab3aad50d4366e0cd1",
"type": "github"
},
"original": {
"owner": "materusPL",
"ref": "master",
"repo": "Nixerus",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1698053470,
"narHash": "sha256-sP8D/41UiwC2qn0X40oi+DfuVzNHMROqIWdSdCI/AYA=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "80d98a7d55c6e27954a166cb583a41325e9512d7",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "master",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1697456312,
@ -166,6 +299,38 @@
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1698288402,
"narHash": "sha256-jIIjApPdm+4yt8PglX8pUOexAdEiAax/DXW3S/Mb21E=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "60b9db998f71ea49e1a9c41824d09aa274be1344",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-23.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_3": {
"locked": {
"lastModified": 1698288402,
"narHash": "sha256-jIIjApPdm+4yt8PglX8pUOexAdEiAax/DXW3S/Mb21E=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "60b9db998f71ea49e1a9c41824d09aa274be1344",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-23.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1697723726,
@ -213,6 +378,36 @@
}
},
"nur_3": {
"locked": {
"lastModified": 1696758426,
"narHash": "sha256-8ebGev/aEoy9NUhexXLg1gFtcdgT+pmYXoc1rg4U5TM=",
"owner": "nix-community",
"repo": "NUR",
"rev": "2a1a76ccc91abc61c09521931253f9fe9e012a85",
"type": "github"
},
"original": {
"id": "nur",
"type": "indirect"
}
},
"nur_4": {
"locked": {
"lastModified": 1698406144,
"narHash": "sha256-UZSg8vqtavLx+e0kfTooOZUqr+G533sG0oe900qloq8=",
"owner": "nix-community",
"repo": "NUR",
"rev": "4a4d1f3e77250d21250c5ea1787d42d4f74ca985",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "master",
"repo": "NUR",
"type": "github"
}
},
"nur_5": {
"locked": {
"lastModified": 1698169592,
"narHash": "sha256-KBDKzeQE5nOEZtmjvPqg+Pc/dB4rYM7MUQ8I3AFKEl0=",
@ -245,9 +440,11 @@
"root": {
"inputs": {
"configInputs": "configInputs",
"home-manager": "home-manager_2",
"configInputs-stable": "configInputs-stable",
"home-manager": "home-manager_3",
"nixpkgs": "nixpkgs_2",
"nur": "nur_3",
"nixpkgs-stable": "nixpkgs-stable_3",
"nur": "nur_5",
"private": "private"
}
},
@ -265,6 +462,21 @@
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",

View File

@ -1,18 +1,28 @@
{
description = "Materus hosts and user config";
inputs = {
nixpkgs = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
ref = "nixos-unstable";
};
private = {
type = "github";
owner = "materusPL";
repo = "Nixerus";
ref = "mock";
};
nixpkgs = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
ref = "nixos-unstable";
};
nixpkgs-stable = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
ref = "nixos-23.05";
};
configInputs = {
type = "github";
owner = "materusPL";
@ -22,6 +32,16 @@
nixpkgs.follows = "nixpkgs";
};
};
configInputs-stable = {
type = "github";
owner = "materusPL";
repo = "nixos-config";
ref = "inputs";
inputs = {
nixpkgs.follows = "nixpkgs-stable";
home-manager.url = "github:nix-community/home-manager/release-23.05";
};
};
};