diff --git a/backup/gnome.nix b/backup/gnome.nix index 98ffeb6..da15605 100755 --- a/backup/gnome.nix +++ b/backup/gnome.nix @@ -1,11 +1,15 @@ -{ config, pkgs, lib, ... }: { + config, + pkgs, + lib, + ... +}: { programs.evolution.enable = true; services = { xserver = { enable = true; - excludePackages = [ pkgs.xterm ]; + excludePackages = [pkgs.xterm]; displayManager = { gdm = { enable = true; @@ -43,19 +47,19 @@ trayscale ]; - environment.gnome.excludePackages = (with pkgs; [ gnome-tour gedit ]) + environment.gnome.excludePackages = + (with pkgs; [gnome-tour gedit]) ++ (with pkgs.gnome; [ - cheese # webcam tool - gnome-music - epiphany # web browser - gnome-characters - totem # video player - iagno # go game - hitori # sudoku game - atomix # puzzle game - ]); - services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon ]; + cheese # webcam tool + gnome-music + epiphany # web browser + gnome-characters + totem # video player + iagno # go game + hitori # sudoku game + atomix # puzzle game + ]); + services.udev.packages = with pkgs; [gnome.gnome-settings-daemon]; # services.gpg-agent.pinentryFlavor = lib.mkDefault "gnome3"; - } diff --git a/backup/pantheon.nix b/backup/pantheon.nix index b6a349b..a2bd1d5 100755 --- a/backup/pantheon.nix +++ b/backup/pantheon.nix @@ -1,6 +1,9 @@ -{ config, pkgs, lib, ... }: - { + config, + pkgs, + lib, + ... +}: { programs = { pantheon-tweaks.enable = true; evolution.enable = true; @@ -9,7 +12,7 @@ services = { xserver = { enable = true; - excludePackages = [ pkgs.xterm ]; + excludePackages = [pkgs.xterm]; displayManager = { lightdm = { enable = true; @@ -46,8 +49,8 @@ indicatorapp = { description = "indicator-application-gtk3"; - wantedBy = [ "graphical-session.target" ]; - partOf = [ "graphical-session.target" ]; + wantedBy = ["graphical-session.target"]; + partOf = ["graphical-session.target"]; serviceConfig = { ExecStart = "${pkgs.indicator-application-gtk3}/libexec/indicator-application/indicator-application-service"; }; @@ -55,7 +58,7 @@ }; # App indicator - environment.pathsToLink = [ "/libexec" ]; + environment.pathsToLink = ["/libexec"]; environment.systemPackages = with pkgs; [ gnome-online-accounts gnome.gnome-control-center diff --git a/configs/common.nix b/configs/common.nix index 056c1e3..409c493 100755 --- a/configs/common.nix +++ b/configs/common.nix @@ -33,7 +33,6 @@ btrfs-progs exfatprogs - # dog # cat replace doggo # DNS Resolver du-dust @@ -67,6 +66,8 @@ man-pages-posix kitty.terminfo + tre-command + nil nix-du @@ -81,6 +82,19 @@ unzip usbutils wget + + broot + ffmpeg + git-secret + kubectl + neofetch + pstree + ranger + sshfs + tealdeer + unrar + yt-dlp + nix-output-monitor ]; }; @@ -140,15 +154,35 @@ }; ssh.knownHosts = { - "github.com".hostNames = ["github.com"]; - "github.com".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl"; + "github.com" = { + 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"]; - "u278697.your-storagebox.de".publicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5EB5p/5Hp3hGW1oHok+PIOH9Pbn7cnUiGmUEBrCVjnAw+HrKyN8bYVV0dIGllswYXwkG/+bgiBlE6IVIBAq+JwVWu1Sss3KarHY3OvFJUXZoZyRRg/Gc/+LRCE7lyKpwWQ70dbelGRyyJFH36eNv6ySXoUYtGkwlU5IVaHPApOxe4LHPZa/qhSRbPo2hwoh0orCtgejRebNtW5nlx00DNFgsvn8Svz2cIYLxsPVzKgUxs8Zxsxgn+Q/UvR7uq4AbAhyBMLxv7DjJ1pc7PJocuTno2Rw9uMZi1gkjbnmiOh6TTXIEWbnroyIhwc8555uto9melEUmWNQ+C+PwAK+MPw=="; + "github.com-2" = { + hostNames = ["github.com"]; + publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl"; + }; - # [u278697.your-storagebox.de]:23 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIICf9svRenC/PLKIL9nk6K/pxQgoiFC41wTNvoIncOxs - # [u278697.your-storagebox.de]:23 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5EB5p/5Hp3hGW1oHok+PIOH9Pbn7cnUiGmUEBrCVjnAw+HrKyN8bYVV0dIGllswYXwkG/+bgiBlE6IVIBAq+JwVWu1Sss3KarHY3OvFJUXZoZyRRg/Gc/+LRCE7lyKpwWQ70dbelGRyyJFH36eNv6ySXoUYtGkwlU5IVaHPApOxe4LHPZa/qhSRbPo2hwoh0orCtgejRebNtW5nlx00DNFgsvn8Svz2cIYLxsPVzKgUxs8Zxsxgn+Q/UvR7uq4AbAhyBMLxv7DjJ1pc7PJocuTno2Rw9uMZi1gkjbnmiOh6TTXIEWbnroyIhwc8555uto9melEUmWNQ+C+PwAK+MPw== - # [u278697.your-storagebox.de]:23 ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAGK0po6usux4Qv2d8zKZN1dDvbWjxKkGsx7XwFdSUCnF19Q8psHEUWR7C/LtSQ5crU/g+tQVRBtSgoUcE8T+FWp5wBxKvWG2X9gD+s9/4zRmDeSJR77W6gSA/+hpOZoSE+4KgNdnbYSNtbZH/dN74EG7GLb/gcIpbUUzPNXpfKl7mQitw== + "github.com-3" = { + hostNames = ["github.com"]; + 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=="; + }; }; }; diff --git a/configs/develop.nix b/configs/develop.nix index 7e7e896..bd7f287 100644 --- a/configs/develop.nix +++ b/configs/develop.nix @@ -6,7 +6,6 @@ environment.systemPackages = with pkgs; [ insomnia meld - virt-manager #rust cargo @@ -14,4 +13,8 @@ ruby ]; + + programs = { + adb.enable = true; + }; } diff --git a/configs/docker.nix b/configs/docker.nix index 7fc7428..37d3f4d 100755 --- a/configs/docker.nix +++ b/configs/docker.nix @@ -8,6 +8,7 @@ docker = { enable = true; extraOptions = "--metrics-addr='127.0.0.1:9323' --experimental"; + storageDriver = "btrfs"; }; }; diff --git a/configs/plasma-wayland.nix b/configs/plasma-wayland.nix index 822c2b3..fdebbe1 100755 --- a/configs/plasma-wayland.nix +++ b/configs/plasma-wayland.nix @@ -37,6 +37,7 @@ kdePackages.ksshaskpass kdePackages.kde-gtk-config kdePackages.breeze-gtk + kdePackages.qtstyleplugin-kvantum # kdePackages.kmail kdePackages.filelight kdePackages.plasma-disks diff --git a/configs/user-gui.nix b/configs/user-gui.nix index 759ad2b..f8863f6 100755 --- a/configs/user-gui.nix +++ b/configs/user-gui.nix @@ -27,6 +27,8 @@ noto-fonts-emoji noto-fonts-extra + inputs.apple-fonts.packages.${pkgs.system}.sf-pro-nerd + open-sans stix-two twemoji-color-font @@ -44,7 +46,6 @@ # }; programs = { - adb.enable = true; ssh = {startAgent = true;}; # dconf.enable = true; # gnupg.agent = { @@ -68,6 +69,9 @@ discord kdenlive shotcut + + vorta + kitty ]; home-manager.users.alex = {pkgs, ...}: { @@ -86,34 +90,34 @@ }; }; - kitty = { - enable = true; - extraConfig = '' - enable_audio_bell false + # kitty = { + # enable = true; + # extraConfig = '' + # enable_audio_bell false - background #000000 - foreground #e9e9e9 - cursor #e9e9e9 - selection_background #424242 - color0 #000000 - color8 #555555 - color1 #d44d53 - color9 #d44d53 - color2 #b9c949 - color10 #b9c949 - color3 #e6c446 - color11 #e6c446 - color4 #79a6da - color12 #79a6da - color5 #c396d7 - color13 #c396d7 - color6 #70c0b1 - color14 #70c0b1 - color7 #fffefe - color15 #fffefe - selection_foreground #000000 - ''; - }; + # background #000000 + # foreground #e9e9e9 + # cursor #e9e9e9 + # selection_background #424242 + # color0 #000000 + # color8 #555555 + # color1 #d44d53 + # color9 #d44d53 + # color2 #b9c949 + # color10 #b9c949 + # color3 #e6c446 + # color11 #e6c446 + # color4 #79a6da + # color12 #79a6da + # color5 #c396d7 + # color13 #c396d7 + # color6 #70c0b1 + # color14 #70c0b1 + # color7 #fffefe + # color15 #fffefe + # selection_foreground #000000 + # ''; + # }; }; }; } diff --git a/configs/user.nix b/configs/user.nix index 47999ba..922b156 100755 --- a/configs/user.nix +++ b/configs/user.nix @@ -69,22 +69,6 @@ in { home-manager.users.alex = {pkgs, ...}: { home = { 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"]; file = { diff --git a/flake.lock b/flake.lock index cf1bdae..ad1947f 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,31 @@ { "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": { "inputs": { "flake-schemas": "flake-schemas", @@ -8,11 +34,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1730555728, - "narHash": "sha256-jBr4WUPat+R/79DBdk85hKyqDfoJII4Z+V+GoevYNDY=", + "lastModified": 1731000594, + "narHash": "sha256-Fl0SrKBg1aH1d/z4hflP54Htdw8P8KHfgXzipUnAVhQ=", "owner": "chaotic-cx", "repo": "nyx", - "rev": "e734744bc2e9ca9aa577555bf028c5ea51eb5f77", + "rev": "95b190eebfa073bc748bf52dc874f69a5d22b8ef", "type": "github" }, "original": { @@ -52,6 +78,24 @@ "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": { "inputs": { "flake-compat": "flake-compat", @@ -82,11 +126,11 @@ ] }, "locked": { - "lastModified": 1730016908, - "narHash": "sha256-bFCxJco7d8IgmjfNExNz9knP8wvwbXU4s/d53KOK6U0=", + "lastModified": 1730837930, + "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=", "owner": "nix-community", "repo": "home-manager", - "rev": "e83414058edd339148dc142a8437edb9450574c8", + "rev": "2f607e07f3ac7e53541120536708e824acccfaa8", "type": "github" }, "original": { @@ -102,11 +146,11 @@ ] }, "locked": { - "lastModified": 1730490306, - "narHash": "sha256-AvCVDswOUM9D368HxYD25RsSKp+5o0L0/JHADjLoD38=", + "lastModified": 1730837930, + "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=", "owner": "nix-community", "repo": "home-manager", - "rev": "1743615b61c7285976f85b303a36cdf88a556503", + "rev": "2f607e07f3ac7e53541120536708e824acccfaa8", "type": "github" }, "original": { @@ -140,11 +184,11 @@ ] }, "locked": { - "lastModified": 1730248099, - "narHash": "sha256-Fl7BSdpLk0uTXF6ol/MR0q1EB4XQ8tn0ftig0pyYh5Y=", + "lastModified": 1730962714, + "narHash": "sha256-Zi2NfnEqB+Xfxtnx6arIohSarXiJmwTqVa3nSpNWx30=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "c11bab124fc55a37cbd854ed28ea121ed609231f", + "rev": "93b525229c99fec0016db72a174f43b9d6237714", "type": "github" }, "original": { @@ -199,11 +243,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1730537918, - "narHash": "sha256-GJB1/aaTnAtt9sso/EQ77TAGJ/rt6uvlP0RqZFnWue8=", + "lastModified": 1730919458, + "narHash": "sha256-yMO0T0QJlmT/x4HEyvrCyigGrdYfIXX3e5gWqB64wLg=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "f6e0cd5c47d150c4718199084e5764f968f1b560", + "rev": "e1cc1f6483393634aee94514186d21a4871e78d7", "type": "github" }, "original": { @@ -215,11 +259,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1730200266, - "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", + "lastModified": 1730785428, + "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", + "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", "type": "github" }, "original": { @@ -231,27 +275,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1730327045, - "narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=", + "lastModified": 1730602179, + "narHash": "sha256-efgLzQAWSzJuCLiCaQUCDu4NudNlHdg2NzGLX5GYaEY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "080166c15633801df010977d9d7474b4a6c549d7", - "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", + "rev": "3c2f1c4ca372622cb2f9de8016c9a0b1cbd0f37c", "type": "github" }, "original": { @@ -263,11 +291,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1730200266, - "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", + "lastModified": 1730785428, + "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", + "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", "type": "github" }, "original": { @@ -277,32 +305,92 @@ "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": { "inputs": { + "apple-fonts": "apple-fonts", "chaotic": "chaotic", "fw-fanctrl": "fw-fanctrl", "home-manager": "home-manager_2", "impermanence": "impermanence", "kwin-effects-forceblur": "kwin-effects-forceblur", "nixos-hardware": "nixos-hardware", - "nixpkgs-stable": "nixpkgs-stable", "nixpkgs-unstable": "nixpkgs-unstable", "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": { "inputs": { "nixpkgs": [ "nixpkgs-unstable" ], - "nixpkgs-stable": "nixpkgs-stable_2" + "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1729999681, - "narHash": "sha256-qm0uCtM9bg97LeJTKQ8dqV/FvqRN+ompyW4GIJruLuw=", + "lastModified": 1731213149, + "narHash": "sha256-jR8i6nFLmSmm0cIoeRQ8Q4EBARa3oGaAtEER/OMMxus=", "owner": "mic92", "repo": "sops-nix", - "rev": "1666d16426abe79af5c47b7c0efa82fd31bf4c56", + "rev": "f1675e3b0e1e663a4af49be67ecbc9e749f85eb7", "type": "github" }, "original": { @@ -326,9 +414,24 @@ "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": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1726560853, diff --git a/flake.nix b/flake.nix index 5398413..535b4e3 100644 --- a/flake.nix +++ b/flake.nix @@ -2,10 +2,12 @@ description = "Your new nix config"; 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"; + nixos-hardware.url = "github:nixos/nixos-hardware/master"; chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; + impermanence.url = "github:nix-community/impermanence"; sops-nix = { url = "github:mic92/sops-nix"; @@ -17,17 +19,21 @@ inputs.nixpkgs.follows = "nixpkgs-unstable"; }; + apple-fonts = { + url = "github:Lyndeno/apple-fonts.nix"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; + }; + home-manager = { url = "github:nix-community/home-manager/master"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; + # Framework Fancontrol fw-fanctrl = { url = "github:TamtamHero/fw-fanctrl/packaging/nix"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; - - impermanence.url = "github:nix-community/impermanence"; }; outputs = { @@ -36,7 +42,7 @@ fw-fanctrl, home-manager, nixos-hardware, - nixpkgs-stable, + # nixpkgs-stable, nixpkgs-unstable, sops-nix, impermanence, @@ -66,6 +72,7 @@ specialArgs = {inherit inputs outputs;}; modules = [ impermanence.nixosModules.impermanence + # stylix.nixosModules.stylix chaotic.nixosModules.default # OUR DEFAULT MODULE nixos-hardware.nixosModules.common-cpu-amd nixos-hardware.nixosModules.common-cpu-amd-pstate diff --git a/machine/desktop/configuration.nix b/machine/desktop/configuration.nix index 74f5318..f28d539 100755 --- a/machine/desktop/configuration.nix +++ b/machine/desktop/configuration.nix @@ -73,6 +73,8 @@ in { }; }; + # stylix.enable = true; + nix.settings = { system-features = [ "nixos-test" @@ -308,6 +310,11 @@ in { }; }; + duplicati = { + enable = true; + user = "alex"; + }; + # jellyfin = { # enable = true; # user = "alex"; @@ -324,43 +331,18 @@ in { passCommand = "cat ${config.sops.secrets.borg-key.path}"; }; extraCreateArgs = "--checkpoint-interval 600 --exclude-caches"; - environment.BORG_RSH = "ssh -i ~/.ssh/id_borg_ed25519"; - paths = "/home/alex"; + environment.BORG_RSH = "ssh -i /home/alex/.ssh/id_borg_ed25519"; + paths = ["/home/alex" "/persist"]; repo = "ssh://u278697-sub2@u278697.your-storagebox.de:23/./borg"; startAt = "daily"; - user = "alex"; prune.keep = { daily = 7; weekly = 4; monthly = 6; }; 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" - # ]; - # }; }; }; diff --git a/machine/homeserver.nix b/machine/homeserver.nix index 4408f4a..c1c6253 100755 --- a/machine/homeserver.nix +++ b/machine/homeserver.nix @@ -1,6 +1,9 @@ -{ config, pkgs, ... }: - -let secrets = import ../configs/secrets.nix; +{ + config, + pkgs, + ... +}: let + secrets = import ../configs/secrets.nix; in { imports = [ @@ -22,14 +25,14 @@ in { firewall.enable = false; nat = { enable = true; - internalInterfaces = [ "br0" ]; + internalInterfaces = ["br0"]; externalInterface = "enp3s0"; }; wireless = { enable = true; networks.Skynet_5G.psk = secrets.wifipassword; - interfaces = [ "wlp1s0" ]; + interfaces = ["wlp1s0"]; }; interfaces.enp3s0.useDHCP = true; @@ -45,16 +48,17 @@ in { ]; systemd = { - mounts = [{ - requires = [ "mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount" ]; - after = [ "mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount" ]; - what = "/mnt/disk1:/mnt/disk2:/mnt/disk3"; - where = "/mnt/storage"; - type = "fuse.mergerfs"; - options = - "defaults,allow_other,use_ino,fsname=mergerfs,minfreespace=50G,func.getattr=newest,noforget"; - wantedBy = [ "multi-user.target" ]; - }]; + mounts = [ + { + requires = ["mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount"]; + after = ["mnt-disk1.mount" "mnt-disk2.mount" "mnt-disk3.mount"]; + what = "/mnt/disk1:/mnt/disk2:/mnt/disk3"; + where = "/mnt/storage"; + type = "fuse.mergerfs"; + options = "defaults,allow_other,use_ino,fsname=mergerfs,minfreespace=50G,func.getattr=newest,noforget"; + wantedBy = ["multi-user.target"]; + } + ]; services.snapraid-sync = { description = "Snapraid Sync and Diff"; @@ -78,8 +82,8 @@ in { }; timers.snapraid-sync = { - wantedBy = [ "timers.target" ]; - timerConfig = { OnCalendar = "Mon-Sun, 23:00"; }; + wantedBy = ["timers.target"]; + timerConfig = {OnCalendar = "Mon-Sun, 23:00";}; }; }; @@ -149,18 +153,22 @@ in { security.sudo.extraRules = [ { - users = [ "alex" ]; - commands = [{ - command = "${pkgs.hdparm}/bin/hdparm"; - options = [ "SETENV" "NOPASSWD" ]; - }]; + users = ["alex"]; + commands = [ + { + command = "${pkgs.hdparm}/bin/hdparm"; + options = ["SETENV" "NOPASSWD"]; + } + ]; } { - users = [ "alex" ]; - commands = [{ - command = "${pkgs.snapraid}/bin/snapraid"; - options = [ "SETENV" "NOPASSWD" ]; - }]; + users = ["alex"]; + commands = [ + { + command = "${pkgs.snapraid}/bin/snapraid"; + options = ["SETENV" "NOPASSWD"]; + } + ]; } ]; diff --git a/machine/raspberrypi.nix b/machine/raspberrypi.nix index 4cbd39e..f886f5d 100755 --- a/machine/raspberrypi.nix +++ b/machine/raspberrypi.nix @@ -1,5 +1,10 @@ -{ config, pkgs, lib, ... }: -let secrets = import ../configs/secrets.nix; +{ + config, + pkgs, + lib, + ... +}: let + secrets = import ../configs/secrets.nix; in { imports = [ "${ @@ -15,7 +20,7 @@ in { "/" = { device = "/dev/disk/by-label/NIXOS_SD"; fsType = "ext4"; - options = [ "noatime" ]; + options = ["noatime"]; }; }; @@ -25,11 +30,11 @@ in { wireless = { enable = true; 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 # hardware.raspberry-pi."4".fkms-3d.enable = true; diff --git a/machine/thinkpad.nix b/machine/thinkpad.nix index 32cce00..0dbdb1a 100755 --- a/machine/thinkpad.nix +++ b/machine/thinkpad.nix @@ -1,20 +1,22 @@ -{ config, pkgs, lib, ... }: -let +{ + config, + pkgs, + lib, + ... +}: let secrets = import ../configs/secrets.nix; be = import ../configs/borg-exclude.nix; -in -{ - imports = - [ - - /etc/nixos/hardware-configuration.nix - ../configs/common.nix - ../configs/docker.nix - ../configs/virtualisation.nix - ../configs/plasma.nix - ../configs/user-gui.nix - ../configs/user.nix - ]; +in { + imports = [ + + /etc/nixos/hardware-configuration.nix + ../configs/common.nix + ../configs/docker.nix + ../configs/virtualisation.nix + ../configs/plasma.nix + ../configs/user-gui.nix + ../configs/user.nix + ]; boot = { # initrd = { @@ -51,7 +53,7 @@ in systemd-boot = { enable = true; configurationLimit = 10; - editor = false; + editor = false; }; efi = { canTouchEfiVariables = false; @@ -71,20 +73,22 @@ in networking = { hostName = "thinkpad"; useDHCP = false; - firewall = { enable = false; }; + firewall = {enable = false;}; interfaces.enp0s31f6.useDHCP = true; wireguard.interfaces = { wg0 = { - ips = [ "10.100.0.8/24" ]; + ips = ["10.100.0.8/24"]; privateKey = secrets.wireguard-thinkpad-private; - peers = [{ - publicKey = secrets.wireguard-vps-public; - presharedKey = secrets.wireguard-preshared; - allowedIPs = [ "10.100.0.0/24" ]; - endpoint = "207.180.220.97:51820"; - persistentKeepalive = 25; - }]; + peers = [ + { + publicKey = secrets.wireguard-vps-public; + presharedKey = secrets.wireguard-preshared; + allowedIPs = ["10.100.0.0/24"]; + endpoint = "207.180.220.97:51820"; + persistentKeepalive = 25; + } + ]; }; }; }; @@ -132,13 +136,13 @@ in thinkfan = { enable = true; levels = [ - [ 0 0 67 ] - [ 1 65 75 ] - [ 2 73 80 ] - [ 3 78 85 ] - [ 4 83 90 ] - [ 6 88 95 ] - [ 7 93 32767 ] + [0 0 67] + [1 65 75] + [2 73 80] + [3 78 85] + [4 83 90] + [6 88 95] + [7 93 32767] ]; }; # xserver = { diff --git a/pkgs/default.nix b/pkgs/default.nix index 28faf11..64d7a82 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,5 +1,5 @@ # Custom packages, that can be defined similarly to ones from nixpkgs # You can build them using 'nix build .#example' pkgs: { - psensor = pkgs.callPackage ./psensor { }; + psensor = pkgs.callPackage ./psensor {}; }