Add hm programs, migrate to znver4 kernel & add sched_ext
This commit is contained in:
parent
c22453fc1c
commit
eb3363dc69
5 changed files with 194 additions and 53 deletions
10
flake.nix
10
flake.nix
|
@ -84,8 +84,6 @@
|
||||||
inputs.nix-alien.overlays.default
|
inputs.nix-alien.overlays.default
|
||||||
inputs.nix-ld-rs.overlays.default
|
inputs.nix-ld-rs.overlays.default
|
||||||
];
|
];
|
||||||
pkgs-args = {
|
|
||||||
inherit system overlays;
|
|
||||||
config = {
|
config = {
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
permittedInsecurePackages = [
|
permittedInsecurePackages = [
|
||||||
|
@ -94,8 +92,9 @@
|
||||||
# "electron-25.9.0"
|
# "electron-25.9.0"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit config system overlays;
|
||||||
};
|
};
|
||||||
pkgs = import nixpkgs pkgs-args;
|
|
||||||
hmModules = [
|
hmModules = [
|
||||||
nix-index-database.hmModules.nix-index
|
nix-index-database.hmModules.nix-index
|
||||||
nur.hmModules.nur
|
nur.hmModules.nur
|
||||||
|
@ -144,7 +143,10 @@
|
||||||
[
|
[
|
||||||
./systems/${host}
|
./systems/${host}
|
||||||
{
|
{
|
||||||
nixpkgs.pkgs = pkgs;
|
nixpkgs = {
|
||||||
|
inherit config system overlays;
|
||||||
|
};
|
||||||
|
# nixpkgs.pkgs = pkgs;
|
||||||
nix.registry.nixpkgs.flake = nixpkgs;
|
nix.registry.nixpkgs.flake = nixpkgs;
|
||||||
home-manager.sharedModules = hmModules;
|
home-manager.sharedModules = hmModules;
|
||||||
home-manager.extraSpecialArgs = args;
|
home-manager.extraSpecialArgs = args;
|
||||||
|
|
|
@ -22,7 +22,6 @@ let
|
||||||
]);
|
]);
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
alacritty = {
|
alacritty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -34,17 +33,18 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
bash = {
|
||||||
|
enable = true;
|
||||||
|
enableVteIntegration = true;
|
||||||
|
};
|
||||||
|
btop.enable = true;
|
||||||
|
direnv.enable = true;
|
||||||
|
|
||||||
rbw = {
|
fd.enable = true;
|
||||||
|
fzf.enable = true;
|
||||||
|
lsd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
enableAliases = true;
|
||||||
base_url = "https://bw.vlt81.de";
|
|
||||||
email = "tristandruyen@vault81.de";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
starship = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.starship;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
fish = {
|
fish = {
|
||||||
|
@ -53,11 +53,16 @@ in
|
||||||
|
|
||||||
interactiveShellInit = ''
|
interactiveShellInit = ''
|
||||||
any-nix-shell fish --info-right | source
|
any-nix-shell fish --info-right | source
|
||||||
direnv hook fish | source
|
function starship_transient_rprompt_func
|
||||||
|
set width "$(calc "($(tput cols)-12)/2")"
|
||||||
|
echo -n " <"
|
||||||
|
string repeat -n$width ─
|
||||||
|
echo -n " "
|
||||||
|
starship module time
|
||||||
|
end
|
||||||
cat /var/lib/rust-motd/motd
|
cat /var/lib/rust-motd/motd
|
||||||
'';
|
'';
|
||||||
loginShellInit = ''
|
loginShellInit = ''
|
||||||
direnv hook fish | source
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
functions = {
|
functions = {
|
||||||
|
@ -99,10 +104,120 @@ in
|
||||||
package = pkgs.git;
|
package = pkgs.git;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
lazygit.enable = true;
|
||||||
|
|
||||||
nix-index = {
|
nix-index = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableFishIntegration = true;
|
enableFishIntegration = true;
|
||||||
};
|
};
|
||||||
|
pandoc.enable = true;
|
||||||
|
|
||||||
|
rbw = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
base_url = "https://bw.vlt81.de";
|
||||||
|
email = "tristandruyen@vault81.de";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
starship = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.starship;
|
||||||
|
enableTransience = true;
|
||||||
|
settings = {
|
||||||
|
format = lib.concatStrings [
|
||||||
|
"$username"
|
||||||
|
"$hostname"
|
||||||
|
"$localip"
|
||||||
|
"$directory"
|
||||||
|
"$vcsh"
|
||||||
|
"$fossil_branch"
|
||||||
|
"$fossil_metrics"
|
||||||
|
"$git_branch"
|
||||||
|
"$git_commit"
|
||||||
|
"$git_state"
|
||||||
|
"$git_metrics"
|
||||||
|
"$git_status"
|
||||||
|
"$docker_context"
|
||||||
|
"$package"
|
||||||
|
"$c"
|
||||||
|
"$cmake"
|
||||||
|
"$cobol"
|
||||||
|
"$daml"
|
||||||
|
"$dart"
|
||||||
|
"$deno"
|
||||||
|
"$dotnet"
|
||||||
|
"$elixir"
|
||||||
|
"$elm"
|
||||||
|
"$erlang"
|
||||||
|
"$fennel"
|
||||||
|
"$gleam"
|
||||||
|
"$golang"
|
||||||
|
"$haskell"
|
||||||
|
"$haxe"
|
||||||
|
"$helm"
|
||||||
|
"$java"
|
||||||
|
"$julia"
|
||||||
|
"$kotlin"
|
||||||
|
"$lua"
|
||||||
|
"$nim"
|
||||||
|
"$nodejs"
|
||||||
|
"$ocaml"
|
||||||
|
"$opa"
|
||||||
|
"$perl"
|
||||||
|
"$php"
|
||||||
|
"$python"
|
||||||
|
"$rlang"
|
||||||
|
"$red"
|
||||||
|
"$ruby"
|
||||||
|
"$rust"
|
||||||
|
"$scala"
|
||||||
|
"$solidity"
|
||||||
|
"$swift"
|
||||||
|
"$terraform"
|
||||||
|
"$typst"
|
||||||
|
"$vlang"
|
||||||
|
"$vagrant"
|
||||||
|
"$zig"
|
||||||
|
"$buf"
|
||||||
|
"$nix_shell"
|
||||||
|
"$conda"
|
||||||
|
"$spack"
|
||||||
|
"$memory_usage"
|
||||||
|
"$aws"
|
||||||
|
"$gcloud"
|
||||||
|
"$openstack"
|
||||||
|
"$azure"
|
||||||
|
"$nats"
|
||||||
|
"$direnv"
|
||||||
|
"$env_var"
|
||||||
|
"$crystal"
|
||||||
|
"$custom"
|
||||||
|
"$sudo"
|
||||||
|
"$cmd_duration"
|
||||||
|
"$line_break"
|
||||||
|
"$jobs"
|
||||||
|
"$battery"
|
||||||
|
"$status"
|
||||||
|
"$os"
|
||||||
|
"$container"
|
||||||
|
"$shell"
|
||||||
|
"$shlvl"
|
||||||
|
"$character"
|
||||||
|
];
|
||||||
|
direnv.disabled = false;
|
||||||
|
memory_usage.disabled = false;
|
||||||
|
shlvl = {
|
||||||
|
disabled = false;
|
||||||
|
format = "[$symbol]($style)";
|
||||||
|
repeat = true;
|
||||||
|
symbol = "❯";
|
||||||
|
repeat_offset = 2;
|
||||||
|
threshold = 0;
|
||||||
|
};
|
||||||
|
time.disabled = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
ssh = {
|
ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -130,17 +245,20 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
gpg = {
|
gpg.enable = true;
|
||||||
enable = true;
|
|
||||||
|
|
||||||
package = pkgs.gnupg;
|
ripgrep = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.ripgrep.override { withPCRE2 = true; };
|
||||||
};
|
};
|
||||||
|
|
||||||
zoxide = {
|
zellij = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
package = pkgs.zoxide;
|
enableBashIntegration = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
zoxide.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
|
@ -180,6 +298,8 @@ in
|
||||||
|
|
||||||
sessionVariables = {
|
sessionVariables = {
|
||||||
TERMINAL = "alacritty";
|
TERMINAL = "alacritty";
|
||||||
|
ZELLIJ_AUTO_EXIT = "true";
|
||||||
|
ZELLIJ_AUTO_ATTACH = "true";
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
|
@ -193,26 +313,21 @@ in
|
||||||
aspellDicts.en-science
|
aspellDicts.en-science
|
||||||
aspellDicts.de
|
aspellDicts.de
|
||||||
binutils
|
binutils
|
||||||
btop
|
|
||||||
calc
|
calc
|
||||||
cmake
|
cmake
|
||||||
curl
|
curl
|
||||||
direnv
|
|
||||||
exercism
|
exercism
|
||||||
filezilla
|
filezilla
|
||||||
fd
|
|
||||||
gnutls
|
gnutls
|
||||||
gnumake
|
gnumake
|
||||||
gcc
|
gcc
|
||||||
imagemagick
|
imagemagick
|
||||||
imagemagick
|
|
||||||
libtool
|
libtool
|
||||||
neofetch
|
neofetch
|
||||||
nil
|
nil
|
||||||
nixpkgs-fmt
|
nixpkgs-fmt
|
||||||
nodejs_20
|
nodejs_20
|
||||||
tree
|
tree
|
||||||
pandoc
|
|
||||||
python312Full
|
python312Full
|
||||||
python312Packages.epc
|
python312Packages.epc
|
||||||
python312Packages.orjson
|
python312Packages.orjson
|
||||||
|
@ -220,7 +335,6 @@ in
|
||||||
rcm
|
rcm
|
||||||
(lib.mkIf config.services.gpg-agent.enable
|
(lib.mkIf config.services.gpg-agent.enable
|
||||||
pinentry-emacs)
|
pinentry-emacs)
|
||||||
(ripgrep.override { withPCRE2 = true; })
|
|
||||||
shellcheck
|
shellcheck
|
||||||
shfmt
|
shfmt
|
||||||
statix
|
statix
|
||||||
|
@ -230,11 +344,9 @@ in
|
||||||
wget
|
wget
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
zeal
|
zeal
|
||||||
zellij
|
|
||||||
zstd
|
zstd
|
||||||
neovim
|
neovim
|
||||||
lazydocker
|
lazydocker
|
||||||
lazygit
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
12
os-mods/cachix/caches/vlt81.nix
Normal file
12
os-mods/cachix/caches/vlt81.nix
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
substituters = [
|
||||||
|
"https://nixcache.vlt81.de"
|
||||||
|
];
|
||||||
|
trusted-public-keys = [
|
||||||
|
"nixcache.vlt81.de:nw0FfUpePtL6P3IMNT9X6oln0Wg9REZINtkkI9SisqQ="
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -14,7 +14,9 @@
|
||||||
options = "--delete-older-than 2w";
|
options = "--delete-older-than 2w";
|
||||||
randomizedDelaySec = "45min";
|
randomizedDelaySec = "45min";
|
||||||
};
|
};
|
||||||
settings.auto-optimise-store = true;
|
settings = {
|
||||||
|
auto-optimise-store = true;
|
||||||
|
};
|
||||||
package = pkgs.nixFlakes;
|
package = pkgs.nixFlakes;
|
||||||
extraOptions = ''
|
extraOptions = ''
|
||||||
experimental-features = nix-command flakes
|
experimental-features = nix-command flakes
|
||||||
|
|
|
@ -25,26 +25,39 @@
|
||||||
./disks.nix
|
./disks.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
security.sudo-rs.wheelNeedsPassword = lib.mkForce true;
|
security.sudo-rs.wheelNeedsPassword = lib.mkForce true; # unneded due to fp sensor
|
||||||
|
|
||||||
|
# Power mgmt
|
||||||
services.power-profiles-daemon.enable = true;
|
services.power-profiles-daemon.enable = true;
|
||||||
|
|
||||||
powerManagement.powertop.enable = true;
|
powerManagement.powertop.enable = true;
|
||||||
|
|
||||||
programs.corectrl.gpuOverclock.enable = lib.mkForce false; # TODO Check if needed
|
programs.corectrl.gpuOverclock.enable = lib.mkForce false; # TODO Check if needed
|
||||||
|
####
|
||||||
|
|
||||||
|
nix.settings.system-features = [
|
||||||
|
"benchmark"
|
||||||
|
"big-parallel"
|
||||||
|
"kvm"
|
||||||
|
"nixos-test"
|
||||||
|
"gccarch-znver4"
|
||||||
|
];
|
||||||
|
|
||||||
|
chaotic = {
|
||||||
|
scx = {
|
||||||
|
enable = true;
|
||||||
|
scheduler = "scx_rusty";
|
||||||
|
package = pkgs.scx;
|
||||||
|
};
|
||||||
|
nyx = {
|
||||||
|
overlay.enable = true;
|
||||||
|
overlay.onTopOf = "user-pkgs";
|
||||||
|
overlay.flakeNixpkgs.config = pkgs.config;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# nix.settings.system-features = [
|
|
||||||
# "benchmark"
|
|
||||||
# "big-parallel"
|
|
||||||
# "kvm"
|
|
||||||
# "nixos-test"
|
|
||||||
# "gccarch-x86-64-v3"
|
|
||||||
# "gccarch-znver2"
|
|
||||||
# ];
|
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
# kernelPackages = pkgs.pkgsx86_64_v3.linuxPackages_cachyos; # TODO Switch to x86_64_v4 ?
|
# kernelPackages = pkgs.linuxPackages_cachyos; # bootstrap
|
||||||
kernelPackages = pkgs.linuxPackages_cachyos;
|
kernelPackages = pkgs.pkgsAMD64Microarchs.znver4.linuxPackages_cachyos; # TODO see above, include into module
|
||||||
kernelPatches = [ ];
|
kernelPatches = [ ];
|
||||||
kernelParams = [
|
kernelParams = [
|
||||||
# "systemd.unit=emergency.target"
|
# "systemd.unit=emergency.target"
|
||||||
|
|
Loading…
Add table
Reference in a new issue