update
This commit is contained in:
parent
9a37d9eb2f
commit
398673494c
76
flake.lock
76
flake.lock
|
@ -151,11 +151,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747498832,
|
"lastModified": 1747585320,
|
||||||
"narHash": "sha256-qLzhGOSIZdd4QDpbUgQyt3Tp2o4d4k1N6vcebS+DN4I=",
|
"narHash": "sha256-sdJkqFwYlRkijgRoOTH6cg+N6w41qXtFkrC79vMHUYg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "20bad5faaa8cd9782977d70b8b34638f6449a2a7",
|
"rev": "527c14f4280d37d857f7e9e70330168ed95a69b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -174,11 +174,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747498832,
|
"lastModified": 1747585320,
|
||||||
"narHash": "sha256-qLzhGOSIZdd4QDpbUgQyt3Tp2o4d4k1N6vcebS+DN4I=",
|
"narHash": "sha256-sdJkqFwYlRkijgRoOTH6cg+N6w41qXtFkrC79vMHUYg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "20bad5faaa8cd9782977d70b8b34638f6449a2a7",
|
"rev": "527c14f4280d37d857f7e9e70330168ed95a69b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -407,16 +407,16 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747331121,
|
"lastModified": 1747556831,
|
||||||
"narHash": "sha256-3MmiUN/jOHBHQUnjqzg6qKArc17j2OS6jisEppDY4g8=",
|
"narHash": "sha256-Qb84nbYFFk0DzFeqVoHltS2RodAYY5/HZQKE8WnBDsc=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1eec32f0efe3b830927989767a9e6ece0d82d608",
|
"rev": "d0bbd221482c2713cccb80220f3c9d16a6e20a33",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "release-24.11",
|
"ref": "release-25.05",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -429,11 +429,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747439237,
|
"lastModified": 1747565775,
|
||||||
"narHash": "sha256-5rCGrnkglKKj4cav1U3HC+SIUNJh08pqOK4spQv9RjA=",
|
"narHash": "sha256-B6jmKHUEX1jxxcdoYHl7RVaeohtAVup8o3nuVkzkloA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "ae755329092c87369b9e9a1510a8cf1ce2b1c708",
|
"rev": "97118a310eb8e13bc1b9b12d67267e55b7bee6c8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -487,11 +487,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747446936,
|
"lastModified": 1747533823,
|
||||||
"narHash": "sha256-O5HLvg27oWAUHaZvAK8p30whJLlZSAUWMu7RZwWwX/0=",
|
"narHash": "sha256-/SRma+VrauAHu8sIIxSU8zYQScE2xCznQzfUalDIT6M=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-vscode-extensions",
|
"repo": "nix-vscode-extensions",
|
||||||
"rev": "c23c72f97fc61391f9022f5f426c1b737b2d639a",
|
"rev": "047e061d9369a9bf58e5e4bf7cca016ecc72f72c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -513,11 +513,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747446936,
|
"lastModified": 1747533823,
|
||||||
"narHash": "sha256-O5HLvg27oWAUHaZvAK8p30whJLlZSAUWMu7RZwWwX/0=",
|
"narHash": "sha256-/SRma+VrauAHu8sIIxSU8zYQScE2xCznQzfUalDIT6M=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-vscode-extensions",
|
"repo": "nix-vscode-extensions",
|
||||||
"rev": "c23c72f97fc61391f9022f5f426c1b737b2d639a",
|
"rev": "047e061d9369a9bf58e5e4bf7cca016ecc72f72c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -540,11 +540,11 @@
|
||||||
"nur": "nur"
|
"nur": "nur"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747136507,
|
"lastModified": 1747602536,
|
||||||
"narHash": "sha256-lnt9LypZVMRzRDpl+gQtrInxvsF7CL18TTEMthXz8p8=",
|
"narHash": "sha256-XpXAp3tgfPWeV+Wq3/iilz4mCgvRD75Q8kvgHKRIJRw=",
|
||||||
"owner": "materusPL",
|
"owner": "materusPL",
|
||||||
"repo": "Nixerus",
|
"repo": "Nixerus",
|
||||||
"rev": "8c329020c653c04a8f0f50dc7400c01b3b9e3733",
|
"rev": "84d8b84d1e6883d3e393c889ea62cba503c83a1d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -567,11 +567,11 @@
|
||||||
"nur": "nur_3"
|
"nur": "nur_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747136507,
|
"lastModified": 1747602536,
|
||||||
"narHash": "sha256-lnt9LypZVMRzRDpl+gQtrInxvsF7CL18TTEMthXz8p8=",
|
"narHash": "sha256-XpXAp3tgfPWeV+Wq3/iilz4mCgvRD75Q8kvgHKRIJRw=",
|
||||||
"owner": "materusPL",
|
"owner": "materusPL",
|
||||||
"repo": "Nixerus",
|
"repo": "Nixerus",
|
||||||
"rev": "8c329020c653c04a8f0f50dc7400c01b3b9e3733",
|
"rev": "84d8b84d1e6883d3e393c889ea62cba503c83a1d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -631,11 +631,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747335874,
|
"lastModified": 1747485343,
|
||||||
"narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=",
|
"narHash": "sha256-YbsZyuRE1tobO9sv0PUwg81QryYo3L1F3R3rF9bcG38=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858",
|
"rev": "9b5ac7ad45298d58640540d0323ca217f32a6762",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -647,11 +647,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_2": {
|
"nixpkgs-stable_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747335874,
|
"lastModified": 1747485343,
|
||||||
"narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=",
|
"narHash": "sha256-YbsZyuRE1tobO9sv0PUwg81QryYo3L1F3R3rF9bcG38=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858",
|
"rev": "9b5ac7ad45298d58640540d0323ca217f32a6762",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -663,16 +663,16 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_3": {
|
"nixpkgs-stable_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747335874,
|
"lastModified": 1747428706,
|
||||||
"narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=",
|
"narHash": "sha256-XVds9FkRrY59xRNNq14FNsFGqDiexXX/mlHcX4hPyyk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858",
|
"rev": "2e1496bf8652ff4af4e4d4737277f71e4a4f5cb2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-24.11",
|
"ref": "nixos-25.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -727,11 +727,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747327360,
|
"lastModified": 1747542820,
|
||||||
"narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=",
|
"narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46",
|
"rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -7,21 +7,19 @@
|
||||||
repo = "nixpkgs";
|
repo = "nixpkgs";
|
||||||
ref = "nixos-unstable";
|
ref = "nixos-unstable";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
nixpkgs-stable = {
|
nixpkgs-stable = {
|
||||||
type = "github";
|
type = "github";
|
||||||
owner = "NixOS";
|
owner = "NixOS";
|
||||||
repo = "nixpkgs";
|
repo = "nixpkgs";
|
||||||
ref = "nixos-24.11";
|
ref = "nixos-25.05";
|
||||||
};
|
};
|
||||||
|
|
||||||
hm-stable = {
|
hm-stable = {
|
||||||
type = "github";
|
type = "github";
|
||||||
owner = "nix-community";
|
owner = "nix-community";
|
||||||
repo = "home-manager";
|
repo = "home-manager";
|
||||||
ref = "release-24.11";
|
ref = "release-25.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs-stable";
|
inputs.nixpkgs.follows = "nixpkgs-stable";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -41,5 +39,4 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
outputs = inputs: import (builtins.toString ./nix) { inherit inputs; configRootPath = (builtins.toString ./.); };
|
outputs = inputs: import (builtins.toString ./nix) { inherit inputs; configRootPath = (builtins.toString ./.); };
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
16
flake.org
16
flake.org
|
@ -9,9 +9,14 @@
|
||||||
* Flakes
|
* Flakes
|
||||||
** Main Flake
|
** Main Flake
|
||||||
Flake of entire repo. [[./flake.nix][link]]
|
Flake of entire repo. [[./flake.nix][link]]
|
||||||
|
#+name: version
|
||||||
|
#+begin_src txt :noweb-ref version
|
||||||
|
25.05
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
#+name: main_flake
|
#+name: main_flake
|
||||||
#+begin_src nix header-args :tangle ./flake.nix
|
#+begin_src nix header-args :tangle ./flake.nix :noweb yes
|
||||||
{
|
{
|
||||||
description = "MKK flake: NixOS and home manager configs";
|
description = "MKK flake: NixOS and home manager configs";
|
||||||
inputs = {
|
inputs = {
|
||||||
|
@ -21,21 +26,19 @@ Flake of entire repo. [[./flake.nix][link]]
|
||||||
repo = "nixpkgs";
|
repo = "nixpkgs";
|
||||||
ref = "nixos-unstable";
|
ref = "nixos-unstable";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
nixpkgs-stable = {
|
nixpkgs-stable = {
|
||||||
type = "github";
|
type = "github";
|
||||||
owner = "NixOS";
|
owner = "NixOS";
|
||||||
repo = "nixpkgs";
|
repo = "nixpkgs";
|
||||||
ref = "nixos-24.11";
|
ref = "nixos-<<version>>";
|
||||||
};
|
};
|
||||||
|
|
||||||
hm-stable = {
|
hm-stable = {
|
||||||
type = "github";
|
type = "github";
|
||||||
owner = "nix-community";
|
owner = "nix-community";
|
||||||
repo = "home-manager";
|
repo = "home-manager";
|
||||||
ref = "release-24.11";
|
ref = "release-<<version>>";
|
||||||
inputs.nixpkgs.follows = "nixpkgs-stable";
|
inputs.nixpkgs.follows = "nixpkgs-stable";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -55,7 +58,6 @@ Flake of entire repo. [[./flake.nix][link]]
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
outputs = inputs: import (builtins.toString ./nix) { inherit inputs; configRootPath = (builtins.toString ./.); };
|
outputs = inputs: import (builtins.toString ./nix) { inherit inputs; configRootPath = (builtins.toString ./.); };
|
||||||
|
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
** Subflake
|
** Subflake
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
# * Common OS
|
# * Common OS
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
mkkArg,
|
mkkArg,
|
||||||
config,
|
config,
|
||||||
|
konfig,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
@ -9,6 +12,47 @@
|
||||||
imports = [
|
imports = [
|
||||||
mkkArg.current.sops-nix.nixosModules.sops
|
mkkArg.current.sops-nix.nixosModules.sops
|
||||||
# * Config
|
# * Config
|
||||||
|
# ** System
|
||||||
|
# *** Fonts
|
||||||
|
{
|
||||||
|
options.mkk.os.fonts.enable = konfig.nixerusPkgs.lib.mkBoolOpt false "Enable MKK font settings for OS";
|
||||||
|
|
||||||
|
config = lib.mkIf config.mkk.os.fonts.enable {
|
||||||
|
|
||||||
|
fonts.packages = konfig.vars.packageLists.fonts;
|
||||||
|
fonts.enableDefaultPackages = lib.mkDefault true;
|
||||||
|
|
||||||
|
fonts.fontconfig.enable = lib.mkDefault true;
|
||||||
|
fonts.fontconfig.cache32Bit = lib.mkDefault true;
|
||||||
|
|
||||||
|
fonts.fontconfig.defaultFonts.sansSerif = [ "Noto Sans" "DejaVu Sans" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||||
|
fonts.fontconfig.defaultFonts.serif = [ "Noto Serif" "DejaVu Serif" "WenQuanYi Zen Hei" "Noto Color Emoji" ];
|
||||||
|
fonts.fontconfig.defaultFonts.emoji = [ "Noto Color Emoji" "OpenMoji Color" ];
|
||||||
|
fonts.fontconfig.defaultFonts.monospace = [ "Hack Nerd Font" "Noto Sans Mono" "WenQuanYi Zen Hei Mono" ];
|
||||||
|
|
||||||
|
fonts.fontDir.enable = lib.mkDefault true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# ** Shells
|
||||||
|
# *** Zsh
|
||||||
|
{
|
||||||
|
options.mkk.os.zsh.enable =
|
||||||
|
konfig.nixerusPkgs.lib.mkBoolOpt true "Enable MKK system zsh config";
|
||||||
|
config = lib.mkIf config.mkk.os.zsh.enable {
|
||||||
|
users.defaultUserShell = pkgs.zsh;
|
||||||
|
environment.shells = [ pkgs.zsh ];
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
enableGlobalCompInit = false;
|
||||||
|
interactiveShellInit = ''
|
||||||
|
if [[ ''${__MATERUS_HM_ZSH:-0} == 0 ]]; then
|
||||||
|
source ${pkgs.grml-zsh-config}/etc/zsh/zshrc
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
promptInit = '''';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
# ** Assertions
|
# ** Assertions
|
||||||
{
|
{
|
||||||
assertions = [
|
assertions = [
|
||||||
|
@ -22,7 +66,7 @@
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
# ** Variables
|
# ** Variables
|
||||||
{
|
{
|
||||||
mkk.commonVariables = {
|
mkk.commonVariables = {
|
||||||
path = {
|
path = {
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
nvidia.acceptLicense = lib.mkDefault true;
|
nvidia.acceptLicense = lib.mkDefault true;
|
||||||
};
|
};
|
||||||
|
|
||||||
nix.package = lib.mkDefault pkgs.nixVersions.nix_2_28;
|
nix.package = lib.mkDefault pkgs.nixVersions.latest;
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
experimental-features = [
|
experimental-features = [
|
||||||
"nix-command"
|
"nix-command"
|
||||||
|
@ -172,6 +172,42 @@
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
# ** Variables
|
||||||
|
{
|
||||||
|
mkk.commonVariables = {
|
||||||
|
packageLists = rec {
|
||||||
|
defaultFonts = [
|
||||||
|
pkgs.dejavu_fonts
|
||||||
|
pkgs.freefont_ttf
|
||||||
|
pkgs.gyre-fonts
|
||||||
|
pkgs.liberation_ttf
|
||||||
|
pkgs.unifont
|
||||||
|
];
|
||||||
|
fonts = [
|
||||||
|
pkgs.noto-fonts
|
||||||
|
pkgs.noto-fonts-extra
|
||||||
|
pkgs.noto-fonts-emoji
|
||||||
|
pkgs.noto-fonts-cjk-sans
|
||||||
|
pkgs.noto-fonts-cjk-serif
|
||||||
|
|
||||||
|
pkgs.wqy_zenhei
|
||||||
|
|
||||||
|
pkgs.corefonts
|
||||||
|
pkgs.hack-font
|
||||||
|
pkgs.ubuntu_font_family
|
||||||
|
pkgs.monocraft
|
||||||
|
|
||||||
|
pkgs.nerd-fonts.hack
|
||||||
|
pkgs.nerd-fonts.meslo-lg
|
||||||
|
pkgs.nerd-fonts.droid-sans-mono
|
||||||
|
pkgs.nerd-fonts.profont
|
||||||
|
pkgs.nerd-fonts.fira-code
|
||||||
|
|
||||||
|
] ++ defaultFonts;
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
# ** Assertions
|
# ** Assertions
|
||||||
{
|
{
|
||||||
config.assertions = [
|
config.assertions = [
|
||||||
|
|
|
@ -32,15 +32,544 @@
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
# *** Nix System Settings
|
# *** Nix System Settings
|
||||||
{
|
{
|
||||||
nixpkgs.hostPlatform = "x86_64-linux";
|
nixpkgs.hostPlatform = "x86_64-linux";
|
||||||
system.copySystemConfiguration = false;
|
system.copySystemConfiguration = false;
|
||||||
system.stateVersion = "23.05";
|
system.stateVersion = "23.05";
|
||||||
|
|
||||||
|
}
|
||||||
|
# *** Users
|
||||||
|
{
|
||||||
|
users.users.materus = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [
|
||||||
|
"audio"
|
||||||
|
"video"
|
||||||
|
"render"
|
||||||
|
"pipewire"
|
||||||
|
"wheel"
|
||||||
|
"networkmanager"
|
||||||
|
"input"
|
||||||
|
"kvm"
|
||||||
|
"libvirt-qemu"
|
||||||
|
"libvirt"
|
||||||
|
"libvirtd"
|
||||||
|
"podman"
|
||||||
|
"scanner"
|
||||||
|
"lp"
|
||||||
|
];
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
description = "Mateusz Słodkowicz";
|
||||||
|
openssh.authorizedKeys.keyFiles = [ ("${konfig.rootFlake}" + "/private/pubkeys/materus.pub") ];
|
||||||
|
#hashedPasswordFile = config.sops.secrets."users/materus".path;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# *** Audio
|
||||||
|
{
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
audio.enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
systemWide = true;
|
||||||
|
jack.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.pulseaudio.enable = false;
|
||||||
|
environment.sessionVariables =
|
||||||
|
let
|
||||||
|
makePluginPath =
|
||||||
|
format:
|
||||||
|
"$HOME/.${format}:"
|
||||||
|
+ (lib.makeSearchPath format [
|
||||||
|
"$HOME/.nix-profile/lib"
|
||||||
|
"/run/current-system/sw/lib"
|
||||||
|
"/etc/profiles/per-user/$USER/lib"
|
||||||
|
]);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
ALSOFT_DRIVERS = "pulse";
|
||||||
|
|
||||||
|
DSSI_PATH = makePluginPath "dssi";
|
||||||
|
LADSPA_PATH = makePluginPath "ladspa";
|
||||||
|
LV2_PATH = makePluginPath "lv2";
|
||||||
|
LXVST_PATH = makePluginPath "lxvst";
|
||||||
|
VST_PATH = makePluginPath "vst";
|
||||||
|
VST3_PATH = makePluginPath "vst3";
|
||||||
|
|
||||||
|
};
|
||||||
|
services.udev.extraRules = ''
|
||||||
|
KERNEL=="rtc0", GROUP="audio"
|
||||||
|
KERNEL=="hpet", GROUP="audio"
|
||||||
|
DEVPATH=="/devices/virtual/misc/cpu_dma_latency", OWNER="root", GROUP="audio", MODE="0660"
|
||||||
|
'';
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
openal
|
||||||
|
pulseaudio
|
||||||
|
|
||||||
|
reaper
|
||||||
|
audacity
|
||||||
|
|
||||||
|
yabridge
|
||||||
|
yabridgectl
|
||||||
|
|
||||||
|
vital
|
||||||
|
odin2
|
||||||
|
surge
|
||||||
|
fire
|
||||||
|
decent-sampler
|
||||||
|
lsp-plugins
|
||||||
|
|
||||||
|
];
|
||||||
|
}
|
||||||
|
# *** Other
|
||||||
|
{
|
||||||
|
mkk.os.fonts.enable = true;
|
||||||
|
}
|
||||||
|
# ** Desktop
|
||||||
|
# *** XDG
|
||||||
|
{
|
||||||
|
xdg.portal.enable = true;
|
||||||
|
xdg.portal.wlr.enable = true;
|
||||||
|
xdg.portal.xdgOpenUsePortal = true;
|
||||||
|
xdg.portal.extraPortals = [ pkgs.kdePackages.xdg-desktop-portal-kde ];
|
||||||
|
|
||||||
|
xdg.portal.config.common.default = "*";
|
||||||
|
|
||||||
|
|
||||||
|
environment.sessionVariables = {
|
||||||
|
XDG_CACHE_HOME = "\${HOME}/.cache";
|
||||||
|
XDG_CONFIG_HOME = "\${HOME}/.config";
|
||||||
|
XDG_BIN_HOME = "\${HOME}/.local/bin";
|
||||||
|
XDG_DATA_HOME = "\${HOME}/.local/share";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# *** KDE Plasma
|
||||||
|
{
|
||||||
|
environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||||
|
kwallet
|
||||||
|
kwalletmanager
|
||||||
|
kwallet-pam
|
||||||
|
];
|
||||||
|
environment.variables = {
|
||||||
|
# Old fix for black cursor on amdgpu, seems to work fine now
|
||||||
|
#KWIN_DRM_NO_AMS = "1";
|
||||||
|
|
||||||
|
#Fix for amdgpu crashes
|
||||||
|
KWIN_DRM_USE_MODIFIERS = "0";
|
||||||
|
KWIN_DRM_NO_DIRECT_SCANOUT = "1";
|
||||||
|
QT_PLUGIN_PATH = [
|
||||||
|
"${pkgs.qt6.qtimageformats}/${pkgs.qt6.qtbase.qtPluginPrefix}"
|
||||||
|
"${pkgs.kdePackages.ffmpegthumbs}/${pkgs.qt6.qtbase.qtPluginPrefix}"
|
||||||
|
];
|
||||||
|
XCURSOR_THEME = "breeze_cursors";
|
||||||
|
};
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
kdePackages.ark
|
||||||
|
kdePackages.kcalc
|
||||||
|
kdePackages.kate
|
||||||
|
];
|
||||||
|
programs.kdeconnect.enable = true;
|
||||||
|
|
||||||
|
programs.firefox.nativeMessagingHosts.packages = [pkgs.kdePackages.plasma-browser-integration ];
|
||||||
|
programs.chromium.enablePlasmaBrowserIntegration = true;
|
||||||
|
}
|
||||||
|
# *** SDDM
|
||||||
|
(
|
||||||
|
let
|
||||||
|
plasma-materus = pkgs.writeScript "plasma-materus" ''
|
||||||
|
export KWIN_DRM_DEVICES="/dev/dri/by-path/pci-0000\:53\:00.0-card"
|
||||||
|
${pkgs.kdePackages.plasma-workspace}/libexec/plasma-dbus-run-session-if-needed ${pkgs.kdePackages.plasma-workspace}/bin/startplasma-wayland
|
||||||
|
'';
|
||||||
|
|
||||||
|
westonSddm =
|
||||||
|
let
|
||||||
|
xcfg = config.services.xserver;
|
||||||
|
in
|
||||||
|
pkgs.writeText "weston.ini" ''
|
||||||
|
[core]
|
||||||
|
xwayland=false
|
||||||
|
shell=fullscreen-shell.so
|
||||||
|
|
||||||
|
[keyboard]
|
||||||
|
keymap_model = ${builtins.toString xcfg.xkb.model};
|
||||||
|
keymap_layout = ${builtins.toString xcfg.xkb.layout};
|
||||||
|
keymap_variant = ${builtins.toString xcfg.xkb.variant};
|
||||||
|
keymap_options = ${builtins.toString xcfg.xkb.options};
|
||||||
|
|
||||||
|
[libinput]
|
||||||
|
enable-tap = ${builtins.toString xcfg.libinput.mouse.tapping};
|
||||||
|
left-handed = ${builtins.toString xcfg.libinput.mouse.leftHanded};
|
||||||
|
|
||||||
|
[output]
|
||||||
|
name=DP-3
|
||||||
|
mode=1920x1080@240
|
||||||
|
|
||||||
|
[output]
|
||||||
|
name=DP-4
|
||||||
|
mode=off
|
||||||
|
|
||||||
|
[output]
|
||||||
|
name=HDMI-A-3
|
||||||
|
mode=off
|
||||||
|
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.displayManager.defaultSession = "plasma-materus";
|
||||||
|
|
||||||
|
services.displayManager.sddm.enable = true;
|
||||||
|
services.displayManager.sddm.wayland.enable = true;
|
||||||
|
services.displayManager.sddm.wayland.compositor = lib.mkForce "weston";
|
||||||
|
services.displayManager.sddm.wayland.compositorCommand = lib.concatStringsSep " " [
|
||||||
|
"${lib.getExe pkgs.weston}"
|
||||||
|
"--shell=kiosk"
|
||||||
|
"-c ${westonSddm}"
|
||||||
|
];
|
||||||
|
services.displayManager.sessionPackages = [
|
||||||
|
(
|
||||||
|
(pkgs.writeTextDir "share/wayland-sessions/plasma-materus.desktop" ''
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Plasma (Wayland Materus)
|
||||||
|
Comment=Plasma Desktop with KWIN_DRM_DEVICES env
|
||||||
|
Exec=${plasma-materus}
|
||||||
|
DesktopNames=KDE
|
||||||
|
Type=Application
|
||||||
|
'').overrideAttrs
|
||||||
|
(_: {
|
||||||
|
passthru.providedSessions = [ "plasma-materus" ];
|
||||||
|
})
|
||||||
|
)
|
||||||
|
];
|
||||||
|
|
||||||
|
services.displayManager.sddm.settings = {
|
||||||
|
General = {
|
||||||
|
InputMethod = "";
|
||||||
|
};
|
||||||
|
Theme = {
|
||||||
|
CursorTheme = "breeze_cursors";
|
||||||
|
CursorSize = "24";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
)
|
||||||
|
# ** Programs & Services
|
||||||
|
# *** Java
|
||||||
|
{
|
||||||
|
programs = {
|
||||||
|
java.enable = true;
|
||||||
|
java.package = pkgs.jdk;
|
||||||
|
java.binfmt = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.variables = {
|
||||||
|
JAVA_8_HOME = "${pkgs.jdk8}/lib/openjdk/";
|
||||||
|
JAVA_17_HOME = "${pkgs.jdk17}/lib/openjdk/";
|
||||||
|
JAVA_21_HOME = "${pkgs.jdk21}/lib/openjdk/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# *** Samba
|
||||||
|
{
|
||||||
|
services.samba-wsdd.enable = true;
|
||||||
|
services.samba-wsdd.openFirewall = true;
|
||||||
|
services.samba = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.sambaFull;
|
||||||
|
openFirewall = true;
|
||||||
|
settings = {
|
||||||
|
global = {
|
||||||
|
"workgroup" = "WORKGROUP";
|
||||||
|
"server string" = "smbmaterus";
|
||||||
|
"netbios name " = "smbmaterus";
|
||||||
|
"security" = "user";
|
||||||
|
"hosts allow" = "192.168.122. 127.0.0.1 localhost";
|
||||||
|
"hosts deny" = "0.0.0.0/0";
|
||||||
|
"guest account" = "nobody";
|
||||||
|
"map to guest" = "bad user";
|
||||||
|
"allow insecure wide links" = "yes";
|
||||||
|
};
|
||||||
|
windows = {
|
||||||
|
"path" = "/materus/data/VM/windows_shared";
|
||||||
|
"browseable" = "yes";
|
||||||
|
"read only" = "no";
|
||||||
|
"guest ok" = "no";
|
||||||
|
"create mask" = "0644";
|
||||||
|
"directory mask" = "0755";
|
||||||
|
"force user" = "materus";
|
||||||
|
"force group" = "users";
|
||||||
|
"follow symlinks" = "yes";
|
||||||
|
"wide links" = "yes";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
# *** XServer
|
||||||
|
{
|
||||||
|
services.xserver.xkb.layout = "pl";
|
||||||
|
|
||||||
|
services.xserver.enable = true;
|
||||||
|
#services.xserver.videoDrivers = [ "amdgpu" "intel" ];
|
||||||
|
|
||||||
|
services.xserver.displayManager.startx.enable = false;
|
||||||
|
|
||||||
|
services.xserver.exportConfiguration = true;
|
||||||
|
services.xserver.extraConfig = pkgs.lib.mkDefault ''
|
||||||
|
Section "OutputClass"
|
||||||
|
Identifier "amd-options"
|
||||||
|
Option "TearFree" "True"
|
||||||
|
Option "SWCursor" "True"
|
||||||
|
Option "VariableRefresh" "true"
|
||||||
|
Option "AsyncFlipSecondaries" "true"
|
||||||
|
Option "DRI3" "1"
|
||||||
|
MatchDriver "amdgpu"
|
||||||
|
EndSection
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
# *** Input
|
||||||
|
{
|
||||||
|
environment.sessionVariables = {
|
||||||
|
QT_XKB_CONFIG_ROOT = "\${XKB_CONFIG_ROOT}";
|
||||||
|
GTK_IM_MODULE = "fcitx";
|
||||||
|
QT_IM_MODULE = "fcitx";
|
||||||
|
XMODIFIERS = "@im=fcitx";
|
||||||
|
SDL_IM_MODULE = "fcitx";
|
||||||
|
|
||||||
|
MOZ_USE_XINPUT2 = "1";
|
||||||
|
PATH = [ "\${XDG_BIN_HOME}" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
i18n.inputMethod.enable = true;
|
||||||
|
i18n.inputMethod.type = "fcitx5";
|
||||||
|
i18n.inputMethod.fcitx5.addons = [
|
||||||
|
pkgs.kdePackages.fcitx5-configtool
|
||||||
|
pkgs.fcitx5-lua
|
||||||
|
pkgs.fcitx5-mozc
|
||||||
|
pkgs.fcitx5-gtk
|
||||||
|
pkgs.kdePackages.fcitx5-qt
|
||||||
|
];
|
||||||
|
|
||||||
|
services.libinput.enable = true;
|
||||||
|
services.libinput.mouse = {
|
||||||
|
accelProfile = "flat";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# *** Shell
|
||||||
|
{
|
||||||
|
environment.shellInit = ''
|
||||||
|
if ! [ -z "$DISPLAY" ]; then xhost +si:localuser:root &> /dev/null; fi;
|
||||||
|
if ! [ -z "$DISPLAY" ]; then xhost +si:localuser:$USER &> /dev/null; fi;
|
||||||
|
'';
|
||||||
|
environment.enableAllTerminfo = true;
|
||||||
|
environment.pathsToLink = [
|
||||||
|
"/share/zsh"
|
||||||
|
"/share/bash-completion"
|
||||||
|
"/share/fish"
|
||||||
|
];
|
||||||
|
environment.shells = with pkgs; [
|
||||||
|
zsh
|
||||||
|
bashInteractive
|
||||||
|
fish
|
||||||
|
];
|
||||||
|
mkk.os.zsh.enable = true;
|
||||||
|
}
|
||||||
|
# *** Other Services
|
||||||
|
{
|
||||||
|
systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ];
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
services.gvfs.enable = true;
|
||||||
|
|
||||||
|
services.dbus.enable = true;
|
||||||
|
services.dbus.packages = [ pkgs.gcr ];
|
||||||
|
|
||||||
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
services.teamviewer.enable = true;
|
||||||
|
|
||||||
|
services.pcscd.enable = true;
|
||||||
|
|
||||||
|
services.davfs2.enable = true;
|
||||||
|
|
||||||
|
# GPG
|
||||||
|
programs.gnupg.agent = {
|
||||||
|
enable = true;
|
||||||
|
enableSSHSupport = false;
|
||||||
|
enableBrowserSocket = true;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
# SSH
|
||||||
|
programs.ssh.startAgent = true;
|
||||||
|
services.openssh.enable = true;
|
||||||
|
services.openssh.settings.PermitRootLogin = "no";
|
||||||
|
services.openssh.settings.PasswordAuthentication = false;
|
||||||
|
services.openssh.openFirewall = true;
|
||||||
|
|
||||||
|
# Sunshine
|
||||||
|
services.sunshine = {
|
||||||
|
enable = true;
|
||||||
|
capSysAdmin = true;
|
||||||
|
openFirewall = true;
|
||||||
|
autoStart = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# *** Other Apps
|
||||||
|
{
|
||||||
|
programs = {
|
||||||
|
fish.enable = true;
|
||||||
|
command-not-found.enable = false;
|
||||||
|
dconf.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.firefox.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
programs.gamemode.enable = true;
|
||||||
|
programs.corectrl.enable = true;
|
||||||
|
|
||||||
|
programs.nix-ld.enable = true;
|
||||||
|
programs.nix-ld.libraries = with pkgs; [
|
||||||
|
|
||||||
|
];
|
||||||
|
programs.chromium.enable = true;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
|
||||||
|
(vivaldi.overrideAttrs (oldAttrs: {
|
||||||
|
dontWrapQtApps = false;
|
||||||
|
dontPatchELF = true;
|
||||||
|
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ pkgs.kdePackages.wrapQtAppsHook ];
|
||||||
|
}))
|
||||||
|
|
||||||
|
#(pkgs.lutris.override { extraLibraries = pkgs: with pkgs; [ pkgs.samba pkgs.jansson pkgs.tdb pkgs.libunwind pkgs.libusb1 pkgs.gnutls pkgs.gtk3 pkgs.pango ]; })
|
||||||
|
konfig.nixerusPkgs.amdgpu-pro-libs.prefixes
|
||||||
|
(pkgs.bottles.override {
|
||||||
|
extraPkgs = pkgs: [
|
||||||
|
pkgs.libsForQt5.breeze-qt5
|
||||||
|
pkgs.kdePackages.breeze-gtk
|
||||||
|
pkgs.nss_latest
|
||||||
|
];
|
||||||
|
extraLibraries = pkgs: [
|
||||||
|
pkgs.samba
|
||||||
|
pkgs.jansson
|
||||||
|
pkgs.tdb
|
||||||
|
pkgs.libunwind
|
||||||
|
pkgs.libusb1
|
||||||
|
pkgs.gnutls
|
||||||
|
pkgs.gtk3
|
||||||
|
pkgs.pango
|
||||||
|
];
|
||||||
|
})
|
||||||
|
glibc
|
||||||
|
glib
|
||||||
|
gtk3
|
||||||
|
gtk4
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
kdePackages.dolphin
|
||||||
|
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
|
vlc
|
||||||
|
vkbasalt-cli
|
||||||
|
|
||||||
|
patchelf
|
||||||
|
killall
|
||||||
|
util-linux
|
||||||
|
xorg.xhost
|
||||||
|
nix-top
|
||||||
|
|
||||||
|
gitFull
|
||||||
|
curl
|
||||||
|
wget
|
||||||
|
|
||||||
|
config.programs.java.package
|
||||||
|
|
||||||
|
nss_latest
|
||||||
|
|
||||||
|
pciutils
|
||||||
|
|
||||||
|
(aspellWithDicts (
|
||||||
|
ds: with ds; [
|
||||||
|
en
|
||||||
|
en-computers
|
||||||
|
en-science
|
||||||
|
pl
|
||||||
|
]
|
||||||
|
))
|
||||||
|
steamtinkerlaunch
|
||||||
|
distrobox
|
||||||
|
# WebP support
|
||||||
|
libwebp
|
||||||
|
webp-pixbuf-loader
|
||||||
|
|
||||||
|
# Compression
|
||||||
|
p7zip
|
||||||
|
unrar
|
||||||
|
bzip2
|
||||||
|
rar
|
||||||
|
unzip
|
||||||
|
zstd
|
||||||
|
xz
|
||||||
|
zip
|
||||||
|
gzip
|
||||||
|
|
||||||
|
tree
|
||||||
|
mc
|
||||||
|
lf
|
||||||
|
htop
|
||||||
|
nmon
|
||||||
|
iftop
|
||||||
|
iptraf-ng
|
||||||
|
mprocs
|
||||||
|
tldr
|
||||||
|
bat
|
||||||
|
##config.materus.profile.packages.home-manager
|
||||||
|
gcr
|
||||||
|
# pgcli
|
||||||
|
# litecli
|
||||||
|
#zenmonitor
|
||||||
|
|
||||||
|
nix-du
|
||||||
|
|
||||||
|
wineWowPackages.stagingFull
|
||||||
|
winetricks
|
||||||
|
protontricks
|
||||||
|
gnupg
|
||||||
|
pinentry
|
||||||
|
pinentry-gnome3
|
||||||
|
pinentry-curses
|
||||||
|
ncurses
|
||||||
|
monkeysphere
|
||||||
|
gparted
|
||||||
|
|
||||||
|
virt-viewer
|
||||||
|
|
||||||
|
inkscape
|
||||||
|
gimp
|
||||||
|
|
||||||
|
git-crypt
|
||||||
|
|
||||||
|
bubblewrap
|
||||||
|
bindfs
|
||||||
|
|
||||||
|
binutils
|
||||||
|
|
||||||
|
qbittorrent
|
||||||
|
mkvtoolnix
|
||||||
|
nicotine-plus
|
||||||
|
picard
|
||||||
|
opusTools
|
||||||
|
aegisub
|
||||||
|
];
|
||||||
}
|
}
|
||||||
# ** Network
|
# ** Network
|
||||||
# *** Firewall & Others
|
# *** Firewall & Others
|
||||||
{
|
{
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
syncthing = {
|
syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -146,89 +675,6 @@
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
# ** Hardware
|
# ** Hardware
|
||||||
# *** Filesystems
|
|
||||||
{
|
|
||||||
zramSwap = {
|
|
||||||
enable = true;
|
|
||||||
memoryPercent = 25;
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
|
||||||
{
|
|
||||||
label = "NixOS_Swap";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
fileSystems."/etc/nixos" = {
|
|
||||||
device = "/materus/config/mkk";
|
|
||||||
fsType = "none";
|
|
||||||
options = [ "bind" ];
|
|
||||||
depends = [ "/materus" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/materus" = {
|
|
||||||
device = "/dev/disk/by-label/NixOS_Root";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=@materus"
|
|
||||||
"noatime"
|
|
||||||
"compress=zstd"
|
|
||||||
"ssd"
|
|
||||||
"space_cache=v2"
|
|
||||||
];
|
|
||||||
neededForBoot = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-label/NixOS_Root";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=@"
|
|
||||||
"noatime"
|
|
||||||
"ssd"
|
|
||||||
"space_cache=v2"
|
|
||||||
"compress=zstd"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/disk/by-label/NixOS_Root";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=@nix"
|
|
||||||
"noatime"
|
|
||||||
"compress=zstd"
|
|
||||||
"ssd"
|
|
||||||
"space_cache=v2"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/home" = {
|
|
||||||
device = "/dev/disk/by-label/NixOS_Root";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=@home"
|
|
||||||
"noatime"
|
|
||||||
"compress=zstd"
|
|
||||||
"ssd"
|
|
||||||
"space_cache=v2"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-label/NixOS_Root";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=@boot"
|
|
||||||
"ssd"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot/efi" = {
|
|
||||||
device = "/dev/disk/by-label/NixOS_EFI";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
# *** Kernel & Boot
|
# *** Kernel & Boot
|
||||||
{
|
{
|
||||||
boot.kernelPackages = pkgs.linuxPackagesFor pkgs.linux_zen;
|
boot.kernelPackages = pkgs.linuxPackagesFor pkgs.linux_zen;
|
||||||
|
@ -326,9 +772,14 @@
|
||||||
|
|
||||||
# *** Firmware & Others
|
# *** Firmware & Others
|
||||||
{
|
{
|
||||||
|
services.udev = {
|
||||||
|
packages = with pkgs; [
|
||||||
|
game-devices-udev-rules
|
||||||
|
];
|
||||||
|
};
|
||||||
hardware.uinput.enable = true;
|
hardware.uinput.enable = true;
|
||||||
hardware.steam-hardware.enable = true;
|
hardware.steam-hardware.enable = true;
|
||||||
|
|
||||||
hardware.firmware = with pkgs; [
|
hardware.firmware = with pkgs; [
|
||||||
konfig.nixerusPkgs.amdgpu-pro-libs.firmware.vcn
|
konfig.nixerusPkgs.amdgpu-pro-libs.firmware.vcn
|
||||||
konfig.nixerusPkgs.amdgpu-pro-libs.firmware
|
konfig.nixerusPkgs.amdgpu-pro-libs.firmware
|
||||||
|
@ -386,6 +837,89 @@
|
||||||
interval = "weekly";
|
interval = "weekly";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
# *** Filesystems
|
||||||
|
{
|
||||||
|
zramSwap = {
|
||||||
|
enable = true;
|
||||||
|
memoryPercent = 25;
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{
|
||||||
|
label = "NixOS_Swap";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
fileSystems."/etc/nixos" = {
|
||||||
|
device = "/materus/config/mkk";
|
||||||
|
fsType = "none";
|
||||||
|
options = [ "bind" ];
|
||||||
|
depends = [ "/materus" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/materus" = {
|
||||||
|
device = "/dev/disk/by-label/NixOS_Root";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [
|
||||||
|
"subvol=@materus"
|
||||||
|
"noatime"
|
||||||
|
"compress=zstd"
|
||||||
|
"ssd"
|
||||||
|
"space_cache=v2"
|
||||||
|
];
|
||||||
|
neededForBoot = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-label/NixOS_Root";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [
|
||||||
|
"subvol=@"
|
||||||
|
"noatime"
|
||||||
|
"ssd"
|
||||||
|
"space_cache=v2"
|
||||||
|
"compress=zstd"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/nix" = {
|
||||||
|
device = "/dev/disk/by-label/NixOS_Root";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [
|
||||||
|
"subvol=@nix"
|
||||||
|
"noatime"
|
||||||
|
"compress=zstd"
|
||||||
|
"ssd"
|
||||||
|
"space_cache=v2"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/home" = {
|
||||||
|
device = "/dev/disk/by-label/NixOS_Root";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [
|
||||||
|
"subvol=@home"
|
||||||
|
"noatime"
|
||||||
|
"compress=zstd"
|
||||||
|
"ssd"
|
||||||
|
"space_cache=v2"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-label/NixOS_Root";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [
|
||||||
|
"subvol=@boot"
|
||||||
|
"ssd"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot/efi" = {
|
||||||
|
device = "/dev/disk/by-label/NixOS_EFI";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
}
|
||||||
# * materusPC END
|
# * materusPC END
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
Loading…
Reference in New Issue