desktop-2024-11-10-19-33-49

This commit is contained in:
Alexander Szczepanski
2024-11-10 19:33:49 +01:00
parent ed7833b3e9
commit a0e47fea0e
15 changed files with 359 additions and 216 deletions

View File

@ -1,11 +1,15 @@
{ config, pkgs, lib, ... }:
{ {
config,
pkgs,
lib,
...
}: {
programs.evolution.enable = true; programs.evolution.enable = true;
services = { services = {
xserver = { xserver = {
enable = true; enable = true;
excludePackages = [ pkgs.xterm ]; excludePackages = [pkgs.xterm];
displayManager = { displayManager = {
gdm = { gdm = {
enable = true; enable = true;
@ -43,19 +47,19 @@
trayscale trayscale
]; ];
environment.gnome.excludePackages = (with pkgs; [ gnome-tour gedit ]) environment.gnome.excludePackages =
(with pkgs; [gnome-tour gedit])
++ (with pkgs.gnome; [ ++ (with pkgs.gnome; [
cheese # webcam tool cheese # webcam tool
gnome-music gnome-music
epiphany # web browser epiphany # web browser
gnome-characters gnome-characters
totem # video player totem # video player
iagno # go game iagno # go game
hitori # sudoku game hitori # sudoku game
atomix # puzzle game atomix # puzzle game
]); ]);
services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon ]; services.udev.packages = with pkgs; [gnome.gnome-settings-daemon];
# services.gpg-agent.pinentryFlavor = lib.mkDefault "gnome3"; # services.gpg-agent.pinentryFlavor = lib.mkDefault "gnome3";
} }

View File

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{ {
config,
pkgs,
lib,
...
}: {
programs = { programs = {
pantheon-tweaks.enable = true; pantheon-tweaks.enable = true;
evolution.enable = true; evolution.enable = true;
@ -9,7 +12,7 @@
services = { services = {
xserver = { xserver = {
enable = true; enable = true;
excludePackages = [ pkgs.xterm ]; excludePackages = [pkgs.xterm];
displayManager = { displayManager = {
lightdm = { lightdm = {
enable = true; enable = true;
@ -46,8 +49,8 @@
indicatorapp = { indicatorapp = {
description = "indicator-application-gtk3"; description = "indicator-application-gtk3";
wantedBy = [ "graphical-session.target" ]; wantedBy = ["graphical-session.target"];
partOf = [ "graphical-session.target" ]; partOf = ["graphical-session.target"];
serviceConfig = { serviceConfig = {
ExecStart = "${pkgs.indicator-application-gtk3}/libexec/indicator-application/indicator-application-service"; ExecStart = "${pkgs.indicator-application-gtk3}/libexec/indicator-application/indicator-application-service";
}; };
@ -55,7 +58,7 @@
}; };
# App indicator # App indicator
environment.pathsToLink = [ "/libexec" ]; environment.pathsToLink = ["/libexec"];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
gnome-online-accounts gnome-online-accounts
gnome.gnome-control-center gnome.gnome-control-center

View File

@ -33,7 +33,6 @@
btrfs-progs btrfs-progs
exfatprogs exfatprogs
# dog # cat replace
doggo # DNS Resolver doggo # DNS Resolver
du-dust du-dust
@ -67,6 +66,8 @@
man-pages-posix man-pages-posix
kitty.terminfo kitty.terminfo
tre-command
nil nil
nix-du nix-du
@ -81,6 +82,19 @@
unzip unzip
usbutils usbutils
wget wget
broot
ffmpeg
git-secret
kubectl
neofetch
pstree
ranger
sshfs
tealdeer
unrar
yt-dlp
nix-output-monitor
]; ];
}; };
@ -140,15 +154,35 @@
}; };
ssh.knownHosts = { ssh.knownHosts = {
"github.com".hostNames = ["github.com"]; "github.com" = {
"github.com".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl"; hostNames = ["github.com"];
publicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=";
};
"u278697.your-storagebox.de".hostNames = ["u278697.your-storagebox.de"]; "github.com-2" = {
"u278697.your-storagebox.de".publicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5EB5p/5Hp3hGW1oHok+PIOH9Pbn7cnUiGmUEBrCVjnAw+HrKyN8bYVV0dIGllswYXwkG/+bgiBlE6IVIBAq+JwVWu1Sss3KarHY3OvFJUXZoZyRRg/Gc/+LRCE7lyKpwWQ70dbelGRyyJFH36eNv6ySXoUYtGkwlU5IVaHPApOxe4LHPZa/qhSRbPo2hwoh0orCtgejRebNtW5nlx00DNFgsvn8Svz2cIYLxsPVzKgUxs8Zxsxgn+Q/UvR7uq4AbAhyBMLxv7DjJ1pc7PJocuTno2Rw9uMZi1gkjbnmiOh6TTXIEWbnroyIhwc8555uto9melEUmWNQ+C+PwAK+MPw=="; hostNames = ["github.com"];
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl";
};
# [u278697.your-storagebox.de]:23 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIICf9svRenC/PLKIL9nk6K/pxQgoiFC41wTNvoIncOxs "github.com-3" = {
# [u278697.your-storagebox.de]:23 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5EB5p/5Hp3hGW1oHok+PIOH9Pbn7cnUiGmUEBrCVjnAw+HrKyN8bYVV0dIGllswYXwkG/+bgiBlE6IVIBAq+JwVWu1Sss3KarHY3OvFJUXZoZyRRg/Gc/+LRCE7lyKpwWQ70dbelGRyyJFH36eNv6ySXoUYtGkwlU5IVaHPApOxe4LHPZa/qhSRbPo2hwoh0orCtgejRebNtW5nlx00DNFgsvn8Svz2cIYLxsPVzKgUxs8Zxsxgn+Q/UvR7uq4AbAhyBMLxv7DjJ1pc7PJocuTno2Rw9uMZi1gkjbnmiOh6TTXIEWbnroyIhwc8555uto9melEUmWNQ+C+PwAK+MPw== hostNames = ["github.com"];
# [u278697.your-storagebox.de]:23 ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAGK0po6usux4Qv2d8zKZN1dDvbWjxKkGsx7XwFdSUCnF19Q8psHEUWR7C/LtSQ5crU/g+tQVRBtSgoUcE8T+FWp5wBxKvWG2X9gD+s9/4zRmDeSJR77W6gSA/+hpOZoSE+4KgNdnbYSNtbZH/dN74EG7GLb/gcIpbUUzPNXpfKl7mQitw== publicKey = "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEmKSENjQEezOmxkZMy7opKgwFB9nkt5YRrYMjNuG5N87uRgg6CLrbo5wAdT/y6v0mKV0U2w0WZ2YB/++Tpockg=";
};
"u278697.your-storagebox.de" = {
hostNames = ["[u278697.your-storagebox.de]:23"];
publicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5EB5p/5Hp3hGW1oHok+PIOH9Pbn7cnUiGmUEBrCVjnAw+HrKyN8bYVV0dIGllswYXwkG/+bgiBlE6IVIBAq+JwVWu1Sss3KarHY3OvFJUXZoZyRRg/Gc/+LRCE7lyKpwWQ70dbelGRyyJFH36eNv6ySXoUYtGkwlU5IVaHPApOxe4LHPZa/qhSRbPo2hwoh0orCtgejRebNtW5nlx00DNFgsvn8Svz2cIYLxsPVzKgUxs8Zxsxgn+Q/UvR7uq4AbAhyBMLxv7DjJ1pc7PJocuTno2Rw9uMZi1gkjbnmiOh6TTXIEWbnroyIhwc8555uto9melEUmWNQ+C+PwAK+MPw==";
};
"u278697.your-storagebox.de-2" = {
hostNames = ["[u278697.your-storagebox.de]:23"];
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIICf9svRenC/PLKIL9nk6K/pxQgoiFC41wTNvoIncOxs";
};
"u278697.your-storagebox.de-3" = {
hostNames = ["[u278697.your-storagebox.de]:23"];
publicKey = "ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAGK0po6usux4Qv2d8zKZN1dDvbWjxKkGsx7XwFdSUCnF19Q8psHEUWR7C/LtSQ5crU/g+tQVRBtSgoUcE8T+FWp5wBxKvWG2X9gD+s9/4zRmDeSJR77W6gSA/+hpOZoSE+4KgNdnbYSNtbZH/dN74EG7GLb/gcIpbUUzPNXpfKl7mQitw==";
};
}; };
}; };

View File

@ -6,7 +6,6 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
insomnia insomnia
meld meld
virt-manager
#rust #rust
cargo cargo
@ -14,4 +13,8 @@
ruby ruby
]; ];
programs = {
adb.enable = true;
};
} }

View File

@ -8,6 +8,7 @@
docker = { docker = {
enable = true; enable = true;
extraOptions = "--metrics-addr='127.0.0.1:9323' --experimental"; extraOptions = "--metrics-addr='127.0.0.1:9323' --experimental";
storageDriver = "btrfs";
}; };
}; };

View File

@ -37,6 +37,7 @@
kdePackages.ksshaskpass kdePackages.ksshaskpass
kdePackages.kde-gtk-config kdePackages.kde-gtk-config
kdePackages.breeze-gtk kdePackages.breeze-gtk
kdePackages.qtstyleplugin-kvantum
# kdePackages.kmail # kdePackages.kmail
kdePackages.filelight kdePackages.filelight
kdePackages.plasma-disks kdePackages.plasma-disks

View File

@ -27,6 +27,8 @@
noto-fonts-emoji noto-fonts-emoji
noto-fonts-extra noto-fonts-extra
inputs.apple-fonts.packages.${pkgs.system}.sf-pro-nerd
open-sans open-sans
stix-two stix-two
twemoji-color-font twemoji-color-font
@ -44,7 +46,6 @@
# }; # };
programs = { programs = {
adb.enable = true;
ssh = {startAgent = true;}; ssh = {startAgent = true;};
# dconf.enable = true; # dconf.enable = true;
# gnupg.agent = { # gnupg.agent = {
@ -68,6 +69,9 @@
discord discord
kdenlive kdenlive
shotcut shotcut
vorta
kitty
]; ];
home-manager.users.alex = {pkgs, ...}: { home-manager.users.alex = {pkgs, ...}: {
@ -86,34 +90,34 @@
}; };
}; };
kitty = { # kitty = {
enable = true; # enable = true;
extraConfig = '' # extraConfig = ''
enable_audio_bell false # enable_audio_bell false
background #000000 # background #000000
foreground #e9e9e9 # foreground #e9e9e9
cursor #e9e9e9 # cursor #e9e9e9
selection_background #424242 # selection_background #424242
color0 #000000 # color0 #000000
color8 #555555 # color8 #555555
color1 #d44d53 # color1 #d44d53
color9 #d44d53 # color9 #d44d53
color2 #b9c949 # color2 #b9c949
color10 #b9c949 # color10 #b9c949
color3 #e6c446 # color3 #e6c446
color11 #e6c446 # color11 #e6c446
color4 #79a6da # color4 #79a6da
color12 #79a6da # color12 #79a6da
color5 #c396d7 # color5 #c396d7
color13 #c396d7 # color13 #c396d7
color6 #70c0b1 # color6 #70c0b1
color14 #70c0b1 # color14 #70c0b1
color7 #fffefe # color7 #fffefe
color15 #fffefe # color15 #fffefe
selection_foreground #000000 # selection_foreground #000000
''; # '';
}; # };
}; };
}; };
} }

View File

@ -69,22 +69,6 @@ in {
home-manager.users.alex = {pkgs, ...}: { home-manager.users.alex = {pkgs, ...}: {
home = { home = {
stateVersion = "24.11"; stateVersion = "24.11";
packages = with pkgs; [
broot
ffmpeg
git-secret
kubectl
neofetch
pstree
qrencode
ranger
sshfs
tealdeer
unrar
yt-dlp
nix-output-monitor
];
sessionPath = ["$HOME/.npm-packages" "$HOME/.bin"]; sessionPath = ["$HOME/.npm-packages" "$HOME/.bin"];
file = { file = {

195
flake.lock generated
View File

@ -1,5 +1,31 @@
{ {
"nodes": { "nodes": {
"apple-fonts": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs-unstable"
],
"ny": "ny",
"sf-arabic": "sf-arabic",
"sf-compact": "sf-compact",
"sf-mono": "sf-mono",
"sf-pro": "sf-pro"
},
"locked": {
"lastModified": 1727490842,
"narHash": "sha256-SbEZEoBRHFf8dXyi72/zOsOYt+B5M2hHtVgkkmjt7tw=",
"owner": "Lyndeno",
"repo": "apple-fonts.nix",
"rev": "e30d6bb334e726db586a50f8b8ea0ac4cb61361f",
"type": "github"
},
"original": {
"owner": "Lyndeno",
"repo": "apple-fonts.nix",
"type": "github"
}
},
"chaotic": { "chaotic": {
"inputs": { "inputs": {
"flake-schemas": "flake-schemas", "flake-schemas": "flake-schemas",
@ -8,11 +34,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1730555728, "lastModified": 1731000594,
"narHash": "sha256-jBr4WUPat+R/79DBdk85hKyqDfoJII4Z+V+GoevYNDY=", "narHash": "sha256-Fl0SrKBg1aH1d/z4hflP54Htdw8P8KHfgXzipUnAVhQ=",
"owner": "chaotic-cx", "owner": "chaotic-cx",
"repo": "nyx", "repo": "nyx",
"rev": "e734744bc2e9ca9aa577555bf028c5ea51eb5f77", "rev": "95b190eebfa073bc748bf52dc874f69a5d22b8ef",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -52,6 +78,24 @@
"url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz" "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz"
} }
}, },
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fw-fanctrl": { "fw-fanctrl": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
@ -82,11 +126,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730016908, "lastModified": 1730837930,
"narHash": "sha256-bFCxJco7d8IgmjfNExNz9knP8wvwbXU4s/d53KOK6U0=", "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "e83414058edd339148dc142a8437edb9450574c8", "rev": "2f607e07f3ac7e53541120536708e824acccfaa8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -102,11 +146,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730490306, "lastModified": 1730837930,
"narHash": "sha256-AvCVDswOUM9D368HxYD25RsSKp+5o0L0/JHADjLoD38=", "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "1743615b61c7285976f85b303a36cdf88a556503", "rev": "2f607e07f3ac7e53541120536708e824acccfaa8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -140,11 +184,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730248099, "lastModified": 1730962714,
"narHash": "sha256-Fl7BSdpLk0uTXF6ol/MR0q1EB4XQ8tn0ftig0pyYh5Y=", "narHash": "sha256-Zi2NfnEqB+Xfxtnx6arIohSarXiJmwTqVa3nSpNWx30=",
"owner": "Jovian-Experiments", "owner": "Jovian-Experiments",
"repo": "Jovian-NixOS", "repo": "Jovian-NixOS",
"rev": "c11bab124fc55a37cbd854ed28ea121ed609231f", "rev": "93b525229c99fec0016db72a174f43b9d6237714",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -199,11 +243,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1730537918, "lastModified": 1730919458,
"narHash": "sha256-GJB1/aaTnAtt9sso/EQ77TAGJ/rt6uvlP0RqZFnWue8=", "narHash": "sha256-yMO0T0QJlmT/x4HEyvrCyigGrdYfIXX3e5gWqB64wLg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "f6e0cd5c47d150c4718199084e5764f968f1b560", "rev": "e1cc1f6483393634aee94514186d21a4871e78d7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -215,11 +259,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1730200266, "lastModified": 1730785428,
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -231,27 +275,11 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1730327045, "lastModified": 1730602179,
"narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=", "narHash": "sha256-efgLzQAWSzJuCLiCaQUCDu4NudNlHdg2NzGLX5GYaEY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "080166c15633801df010977d9d7474b4a6c549d7", "rev": "3c2f1c4ca372622cb2f9de8016c9a0b1cbd0f37c",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1729973466,
"narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "cd3e8833d70618c4eea8df06f95b364b016d4950",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -263,11 +291,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1730200266, "lastModified": 1730785428,
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -277,32 +305,92 @@
"type": "github" "type": "github"
} }
}, },
"ny": {
"flake": false,
"locked": {
"narHash": "sha256-3257NAH4qlan2YHVLpNRy7x8IJqR2pal3OzFo/ykqXs=",
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/NY.dmg"
},
"original": {
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/NY.dmg"
}
},
"root": { "root": {
"inputs": { "inputs": {
"apple-fonts": "apple-fonts",
"chaotic": "chaotic", "chaotic": "chaotic",
"fw-fanctrl": "fw-fanctrl", "fw-fanctrl": "fw-fanctrl",
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"impermanence": "impermanence", "impermanence": "impermanence",
"kwin-effects-forceblur": "kwin-effects-forceblur", "kwin-effects-forceblur": "kwin-effects-forceblur",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"sops-nix": "sops-nix" "sops-nix": "sops-nix"
} }
}, },
"sf-arabic": {
"flake": false,
"locked": {
"narHash": "sha256-/0gjRimqvZyE60xYxxPdlU+7Q2LJnnvtbmwOP0YmS9U=",
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Arabic.dmg"
},
"original": {
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Arabic.dmg"
}
},
"sf-compact": {
"flake": false,
"locked": {
"narHash": "sha256-J72Lyt2wy83E46wN8w6/Rih9kilM9wEjtY6KnbF0DsA=",
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Compact.dmg"
},
"original": {
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Compact.dmg"
}
},
"sf-mono": {
"flake": false,
"locked": {
"narHash": "sha256-ICdHRFdNL7PM/fXJUzS7LgZxZiqcyIuCMHLze4En4vg=",
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Mono.dmg"
},
"original": {
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Mono.dmg"
}
},
"sf-pro": {
"flake": false,
"locked": {
"narHash": "sha256-Q/pOQ4MGhW/ZtLka+UUQcwSoZFDWW34XvutxL4GvzUY=",
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg"
},
"original": {
"type": "file",
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg"
}
},
"sops-nix": { "sops-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"nixpkgs-unstable" "nixpkgs-unstable"
], ],
"nixpkgs-stable": "nixpkgs-stable_2" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1729999681, "lastModified": 1731213149,
"narHash": "sha256-qm0uCtM9bg97LeJTKQ8dqV/FvqRN+ompyW4GIJruLuw=", "narHash": "sha256-jR8i6nFLmSmm0cIoeRQ8Q4EBARa3oGaAtEER/OMMxus=",
"owner": "mic92", "owner": "mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "1666d16426abe79af5c47b7c0efa82fd31bf4c56", "rev": "f1675e3b0e1e663a4af49be67ecbc9e749f85eb7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -326,9 +414,24 @@
"type": "github" "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"
}
},
"utils": { "utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1726560853, "lastModified": 1726560853,

View File

@ -2,10 +2,12 @@
description = "Your new nix config"; description = "Your new nix config";
inputs = { inputs = {
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05"; # nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:nixos/nixos-hardware/master"; nixos-hardware.url = "github:nixos/nixos-hardware/master";
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
impermanence.url = "github:nix-community/impermanence";
sops-nix = { sops-nix = {
url = "github:mic92/sops-nix"; url = "github:mic92/sops-nix";
@ -17,17 +19,21 @@
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
}; };
apple-fonts = {
url = "github:Lyndeno/apple-fonts.nix";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
home-manager = { home-manager = {
url = "github:nix-community/home-manager/master"; url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
}; };
# Framework Fancontrol
fw-fanctrl = { fw-fanctrl = {
url = "github:TamtamHero/fw-fanctrl/packaging/nix"; url = "github:TamtamHero/fw-fanctrl/packaging/nix";
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
}; };
impermanence.url = "github:nix-community/impermanence";
}; };
outputs = { outputs = {
@ -36,7 +42,7 @@
fw-fanctrl, fw-fanctrl,
home-manager, home-manager,
nixos-hardware, nixos-hardware,
nixpkgs-stable, # nixpkgs-stable,
nixpkgs-unstable, nixpkgs-unstable,
sops-nix, sops-nix,
impermanence, impermanence,
@ -66,6 +72,7 @@
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
impermanence.nixosModules.impermanence impermanence.nixosModules.impermanence
# stylix.nixosModules.stylix
chaotic.nixosModules.default # OUR DEFAULT MODULE chaotic.nixosModules.default # OUR DEFAULT MODULE
nixos-hardware.nixosModules.common-cpu-amd nixos-hardware.nixosModules.common-cpu-amd
nixos-hardware.nixosModules.common-cpu-amd-pstate nixos-hardware.nixosModules.common-cpu-amd-pstate

View File

@ -73,6 +73,8 @@ in {
}; };
}; };
# stylix.enable = true;
nix.settings = { nix.settings = {
system-features = [ system-features = [
"nixos-test" "nixos-test"
@ -308,6 +310,11 @@ in {
}; };
}; };
duplicati = {
enable = true;
user = "alex";
};
# jellyfin = { # jellyfin = {
# enable = true; # enable = true;
# user = "alex"; # user = "alex";
@ -324,43 +331,18 @@ in {
passCommand = "cat ${config.sops.secrets.borg-key.path}"; passCommand = "cat ${config.sops.secrets.borg-key.path}";
}; };
extraCreateArgs = "--checkpoint-interval 600 --exclude-caches"; extraCreateArgs = "--checkpoint-interval 600 --exclude-caches";
environment.BORG_RSH = "ssh -i ~/.ssh/id_borg_ed25519"; environment.BORG_RSH = "ssh -i /home/alex/.ssh/id_borg_ed25519";
paths = "/home/alex"; paths = ["/home/alex" "/persist"];
repo = "ssh://u278697-sub2@u278697.your-storagebox.de:23/./borg"; repo = "ssh://u278697-sub2@u278697.your-storagebox.de:23/./borg";
startAt = "daily"; startAt = "daily";
user = "alex";
prune.keep = { prune.keep = {
daily = 7; daily = 7;
weekly = 4; weekly = 4;
monthly = 6; monthly = 6;
}; };
extraPruneArgs = "--save-space --list --stats"; extraPruneArgs = "--save-space --list --stats";
exclude = map (x: paths + "/" + x) be.borg-exclude; exclude = map (x: "/home/alex/" + x) be.borg-exclude;
}; };
# home-external = rec {
# compression = "auto,zstd";
# encryption = {
# mode = "repokey-blake2";
# passCommand = "cat ${config.sops.secrets.borg-key.path}";
# };
# extraCreateArgs = "--checkpoint-interval 600 --exclude-caches";
# paths = "/home/alex";
# repo = "/run/media/alex/b6c33623-fc23-47ed-b6f5-e99455d5534a/borg";
# startAt = [ ];
# user = "alex";
# prune.keep = {
# daily = 7;
# weekly = 4;
# monthly = 6;
# };
# extraPruneArgs = "--save-space --list --stats";
# exclude = map (x: paths + "/" + x) [
# ".cache"
# ".config/Nextcloud/logs"
# ".local/share/baloo"
# ];
# };
}; };
}; };

View File

@ -1,6 +1,9 @@
{ config, pkgs, ... }: {
config,
let secrets = import ../configs/secrets.nix; pkgs,
...
}: let
secrets = import ../configs/secrets.nix;
in { in {
imports = [ imports = [
<nixos-hardware/common/cpu/intel> <nixos-hardware/common/cpu/intel>
@ -22,14 +25,14 @@ in {
firewall.enable = false; firewall.enable = false;
nat = { nat = {
enable = true; enable = true;
internalInterfaces = [ "br0" ]; internalInterfaces = ["br0"];
externalInterface = "enp3s0"; externalInterface = "enp3s0";
}; };
wireless = { wireless = {
enable = true; enable = true;
networks.Skynet_5G.psk = secrets.wifipassword; networks.Skynet_5G.psk = secrets.wifipassword;
interfaces = [ "wlp1s0" ]; interfaces = ["wlp1s0"];
}; };
interfaces.enp3s0.useDHCP = true; interfaces.enp3s0.useDHCP = true;
@ -45,16 +48,17 @@ in {
]; ];
systemd = { systemd = {
mounts = [{ mounts = [
requires = [ "mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount" ]; {
after = [ "mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount" ]; requires = ["mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount"];
what = "/mnt/disk1:/mnt/disk2:/mnt/disk3"; after = ["mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount"];
where = "/mnt/storage"; what = "/mnt/disk1:/mnt/disk2:/mnt/disk3";
type = "fuse.mergerfs"; where = "/mnt/storage";
options = type = "fuse.mergerfs";
"defaults,allow_other,use_ino,fsname=mergerfs,minfreespace=50G,func.getattr=newest,noforget"; options = "defaults,allow_other,use_ino,fsname=mergerfs,minfreespace=50G,func.getattr=newest,noforget";
wantedBy = [ "multi-user.target" ]; wantedBy = ["multi-user.target"];
}]; }
];
services.snapraid-sync = { services.snapraid-sync = {
description = "Snapraid Sync and Diff"; description = "Snapraid Sync and Diff";
@ -78,8 +82,8 @@ in {
}; };
timers.snapraid-sync = { timers.snapraid-sync = {
wantedBy = [ "timers.target" ]; wantedBy = ["timers.target"];
timerConfig = { OnCalendar = "Mon-Sun, 23:00"; }; timerConfig = {OnCalendar = "Mon-Sun, 23:00";};
}; };
}; };
@ -149,18 +153,22 @@ in {
security.sudo.extraRules = [ security.sudo.extraRules = [
{ {
users = [ "alex" ]; users = ["alex"];
commands = [{ commands = [
command = "${pkgs.hdparm}/bin/hdparm"; {
options = [ "SETENV" "NOPASSWD" ]; command = "${pkgs.hdparm}/bin/hdparm";
}]; options = ["SETENV" "NOPASSWD"];
}
];
} }
{ {
users = [ "alex" ]; users = ["alex"];
commands = [{ commands = [
command = "${pkgs.snapraid}/bin/snapraid"; {
options = [ "SETENV" "NOPASSWD" ]; command = "${pkgs.snapraid}/bin/snapraid";
}]; options = ["SETENV" "NOPASSWD"];
}
];
} }
]; ];

View File

@ -1,5 +1,10 @@
{ config, pkgs, lib, ... }: {
let secrets = import ../configs/secrets.nix; config,
pkgs,
lib,
...
}: let
secrets = import ../configs/secrets.nix;
in { in {
imports = [ imports = [
"${ "${
@ -15,7 +20,7 @@ in {
"/" = { "/" = {
device = "/dev/disk/by-label/NIXOS_SD"; device = "/dev/disk/by-label/NIXOS_SD";
fsType = "ext4"; fsType = "ext4";
options = [ "noatime" ]; options = ["noatime"];
}; };
}; };
@ -25,11 +30,11 @@ in {
wireless = { wireless = {
enable = true; enable = true;
networks.Skynet.psk = secrets.wifipassword; networks.Skynet.psk = secrets.wifipassword;
interfaces = [ "wlan0" ]; interfaces = ["wlan0"];
}; };
}; };
environment.systemPackages = with pkgs; [ vim nano git rsync ]; environment.systemPackages = with pkgs; [vim nano git rsync];
# Enable GPU acceleration # Enable GPU acceleration
# hardware.raspberry-pi."4".fkms-3d.enable = true; # hardware.raspberry-pi."4".fkms-3d.enable = true;

View File

@ -1,20 +1,22 @@
{ config, pkgs, lib, ... }: {
let config,
pkgs,
lib,
...
}: let
secrets = import ../configs/secrets.nix; secrets = import ../configs/secrets.nix;
be = import ../configs/borg-exclude.nix; be = import ../configs/borg-exclude.nix;
in in {
{ imports = [
imports = <nixos-hardware/lenovo/thinkpad/x1-extreme>
[ /etc/nixos/hardware-configuration.nix
<nixos-hardware/lenovo/thinkpad/x1-extreme> ../configs/common.nix
/etc/nixos/hardware-configuration.nix ../configs/docker.nix
../configs/common.nix ../configs/virtualisation.nix
../configs/docker.nix ../configs/plasma.nix
../configs/virtualisation.nix ../configs/user-gui.nix
../configs/plasma.nix ../configs/user.nix
../configs/user-gui.nix ];
../configs/user.nix
];
boot = { boot = {
# initrd = { # initrd = {
@ -51,7 +53,7 @@ in
systemd-boot = { systemd-boot = {
enable = true; enable = true;
configurationLimit = 10; configurationLimit = 10;
editor = false; editor = false;
}; };
efi = { efi = {
canTouchEfiVariables = false; canTouchEfiVariables = false;
@ -71,20 +73,22 @@ in
networking = { networking = {
hostName = "thinkpad"; hostName = "thinkpad";
useDHCP = false; useDHCP = false;
firewall = { enable = false; }; firewall = {enable = false;};
interfaces.enp0s31f6.useDHCP = true; interfaces.enp0s31f6.useDHCP = true;
wireguard.interfaces = { wireguard.interfaces = {
wg0 = { wg0 = {
ips = [ "10.100.0.8/24" ]; ips = ["10.100.0.8/24"];
privateKey = secrets.wireguard-thinkpad-private; privateKey = secrets.wireguard-thinkpad-private;
peers = [{ peers = [
publicKey = secrets.wireguard-vps-public; {
presharedKey = secrets.wireguard-preshared; publicKey = secrets.wireguard-vps-public;
allowedIPs = [ "10.100.0.0/24" ]; presharedKey = secrets.wireguard-preshared;
endpoint = "207.180.220.97:51820"; allowedIPs = ["10.100.0.0/24"];
persistentKeepalive = 25; endpoint = "207.180.220.97:51820";
}]; persistentKeepalive = 25;
}
];
}; };
}; };
}; };
@ -132,13 +136,13 @@ in
thinkfan = { thinkfan = {
enable = true; enable = true;
levels = [ levels = [
[ 0 0 67 ] [0 0 67]
[ 1 65 75 ] [1 65 75]
[ 2 73 80 ] [2 73 80]
[ 3 78 85 ] [3 78 85]
[ 4 83 90 ] [4 83 90]
[ 6 88 95 ] [6 88 95]
[ 7 93 32767 ] [7 93 32767]
]; ];
}; };
# xserver = { # xserver = {

View File

@ -1,5 +1,5 @@
# Custom packages, that can be defined similarly to ones from nixpkgs # Custom packages, that can be defined similarly to ones from nixpkgs
# You can build them using 'nix build .#example' # You can build them using 'nix build .#example'
pkgs: { pkgs: {
psensor = pkgs.callPackage ./psensor { }; psensor = pkgs.callPackage ./psensor {};
} }