diff --git a/common/default.nix b/common/default.nix index 0fb708b..13d7a69 100644 --- a/common/default.nix +++ b/common/default.nix @@ -14,6 +14,12 @@ # xdg-desktop-portal-hyprland # xdg-desktop-portal # ]; + programs.nh = { + enable = true; + clean.enable = true; + clean.extraArgs = "--keep-since 4d --keep 3"; + flake = "/home/xqtc/nixos-config"; + }; networking.firewall.allowedTCPPorts = [8384 22000]; networking.firewall.allowedUDPPorts = [22000 21027]; nix.settings = { diff --git a/common/syncthing.nix b/common/syncthing.nix index c44cfc0..e4150e6 100644 --- a/common/syncthing.nix +++ b/common/syncthing.nix @@ -8,11 +8,13 @@ enable = true; user = "xqtc"; dataDir = "/home/xqtc/syncthing"; + overrideDevices = false; + overrideFolders = false; configDir = "${config.services.syncthing.dataDir}/.config/syncthing"; settings = { gui = { - user = "xqtc"; - # insecureSkipHostcheck = true; + user = "xqtc"; + # insecureSkipHostcheck = true; }; }; }; diff --git a/flake.lock b/flake.lock index c55c464..2f4877a 100644 --- a/flake.lock +++ b/flake.lock @@ -49,11 +49,11 @@ }, "locked": { "dir": "pkgs/firefox-addons", - "lastModified": 1712989815, - "narHash": "sha256-RWP/TMdNnDfOnhK3CMDxezX9L+bALjqvnZXY16EvtA0=", + "lastModified": 1713454118, + "narHash": "sha256-DboRJFHCs1DO8KjUTenVGcl65vlmDDB2pZVE5NMUHtg=", "owner": "rycee", "repo": "nur-expressions", - "rev": "612713b8c55be97af5b4ff75ab5f427fde25328c", + "rev": "dcc97056067a707b885707c9a15fb96859da4b8f", "type": "gitlab" }, "original": { @@ -245,11 +245,11 @@ ] }, "locked": { - "lastModified": 1713019815, - "narHash": "sha256-jzTo97VeKMNfnKw3xU+uiU5C7wtnLudsbwl/nwPLC7s=", + "lastModified": 1713453913, + "narHash": "sha256-vbXq52VRlL1defMHrwhsoeHm95O3mFefsSSJyNEghbA=", "owner": "nix-community", "repo": "home-manager", - "rev": "8fdf329526f06886b53b94ddf433848a0d142984", + "rev": "178e26895b3aef028a00a32fb7e7ed0fc660645c", "type": "github" }, "original": { @@ -267,11 +267,11 @@ ] }, "locked": { - "lastModified": 1712759992, - "narHash": "sha256-2APpO3ZW4idlgtlb8hB04u/rmIcKA8O7pYqxF66xbNY=", + "lastModified": 1712989663, + "narHash": "sha256-r2X/DIAyKOLiHoncjcxUk1TENWDTTaigRBaY53Cts/w=", "owner": "nix-community", "repo": "home-manager", - "rev": "31357486b0ef6f4e161e002b6893eeb4fafc3ca9", + "rev": "40ab43ae98cb3e6f07eaeaa3f3ed56d589da21b0", "type": "github" }, "original": { @@ -280,6 +280,24 @@ "type": "github" } }, + "nh": { + "inputs": { + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1713422373, + "narHash": "sha256-PuGzau2Wj0T8MC3V8a41rc/sXT0DrNz1Ow/ApR6a87s=", + "owner": "viperML", + "repo": "nh", + "rev": "c9cb03418dc782701ada556a49a9e8de0b415fbc", + "type": "github" + }, + "original": { + "owner": "viperML", + "repo": "nh", + "type": "github" + } + }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -303,11 +321,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1712909959, - "narHash": "sha256-7/5ubuwdEbQ7Z+Vqd4u0mM5L2VMNDsBh54visp27CtQ=", + "lastModified": 1713441075, + "narHash": "sha256-3GGeFsEO8ivD+TcDEqe4s/d0VLvMYGNDGtx0ZnBxkUs=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "f58b25254be441cd2a9b4b444ed83f1e51244f1f", + "rev": "6f976e53752e5b9ab08f9a3b1b0b9c67815c9754", "type": "github" }, "original": { @@ -335,11 +353,11 @@ }, "nixpkgs-master": { "locked": { - "lastModified": 1713032949, - "narHash": "sha256-WZR0/LpLkSsajw9uFwUCEWBA9QtWWRRBNScnvwjJHCM=", + "lastModified": 1713459744, + "narHash": "sha256-xdfSUKjXDQSvTLKReRPckLp0DcxVAQKrx4r/BwdA06g=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "44f5a5f39c795cf7a2281529e732b0dcd9427140", + "rev": "1b7469ab47f305667f4da1af1e70b2577474d77c", "type": "github" }, "original": { @@ -367,11 +385,27 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1712791164, - "narHash": "sha256-3sbWO1mbpWsLepZGbWaMovSO7ndZeFqDSdX0hZ9nVyw=", + "lastModified": 1711668574, + "narHash": "sha256-u1dfs0ASQIEr1icTVrsKwg2xToIpn7ZXxW3RHfHxshg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1042fd8b148a9105f3c0aca3a6177fd1d9360ba5", + "rev": "219951b495fc2eac67b1456824cc1ec1fd2ee659", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-23.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1713248628, + "narHash": "sha256-NLznXB5AOnniUtZsyy/aPWOk8ussTuePp2acb9U+ISA=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "5672bc9dbf9d88246ddab5ac454e82318d094bb8", "type": "github" }, "original": { @@ -381,7 +415,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_5": { "locked": { "lastModified": 1686020360, "narHash": "sha256-Wee7lIlZ6DIZHHLiNxU5KdYZQl0iprENXa/czzI6Cj4=", @@ -410,11 +444,11 @@ "pre-commit-hooks": "pre-commit-hooks" }, "locked": { - "lastModified": 1713008785, - "narHash": "sha256-fblaj6/83OQYrD1UHBjLapxjGQaC4edouX4g2X8CVhk=", + "lastModified": 1713294906, + "narHash": "sha256-xJJZdCBzVFpVppaYyUK4lTTNOnbAxrjhodoJL3Oi91E=", "owner": "nix-community", "repo": "nixvim", - "rev": "21c233919d747d3375e3a173b65f7f26ccf01256", + "rev": "514a51877df9fe41ffc38c5237e3c4e5327e7607", "type": "github" }, "original": { @@ -457,8 +491,9 @@ "firefox-addons": "firefox-addons", "flake-utils": "flake-utils_2", "home-manager": "home-manager", + "nh": "nh", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_4", "nixpkgs-master": "nixpkgs-master", "nixvim": "nixvim", "spicetify-nix": "spicetify-nix" @@ -483,7 +518,7 @@ "spicetify-nix": { "inputs": { "flake-utils": "flake-utils_5", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1704167711, diff --git a/flake.nix b/flake.nix index 6dbdf50..153da3c 100644 --- a/flake.nix +++ b/flake.nix @@ -9,6 +9,7 @@ inputs.nixpkgs.follows = "nixpkgs"; }; spicetify-nix.url = "github:the-argus/spicetify-nix"; + nh.url = "github:/viperML/nh"; }; #inputs.agenix.url = "github:ryantm/agenix"; inputs.firefox-addons.url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; @@ -29,6 +30,7 @@ home-manager, nixos-hardware, nixvim, + nh, ... }: let lib = nixpkgs.lib; diff --git a/home/modules/firefox.nix b/home/modules/firefox.nix index fd2a90c..22ad608 100644 --- a/home/modules/firefox.nix +++ b/home/modules/firefox.nix @@ -21,7 +21,7 @@ with inputs; { leechblock-ng darkreader stylus - violentmonkey + violentmonkey vimium-c noscript ]; @@ -83,6 +83,22 @@ with inputs; { definedAliases = ["@no"]; }; + "Nix Dev" = { + urls = [ + { + template = "https://nix.dev/search.html"; + params = [ + { + name = "q"; + value = "{searchTerms}"; + } + ]; + } + ]; + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = ["@nd"]; + }; + "NixOS Wiki" = { urls = [ { diff --git a/home/modules/gtk.nix b/home/modules/gtk.nix index ae71e09..39070fc 100644 --- a/home/modules/gtk.nix +++ b/home/modules/gtk.nix @@ -16,8 +16,8 @@ enabled-extensions = [ "user-theme@gnome-shell-extensions.gcampax.github.com" "trayIconsReloaded@selfmade.pl" - "burn-my-windows@schneegans.github.com" - "desktop-cube@schneegans.github.com" + "burn-my-windows@schneegans.github.com" + "desktop-cube@schneegans.github.com" "Vitals@CoreCoding.com" "dash-to-panel@jderose9.github.com" # "blur-my-shell@aunetx" @@ -64,12 +64,11 @@ gnomeExtensions.desktop-cube catppuccin-cursors.mochaPink ]; -# home.pointerCursor = { -# gtk.enable = true; -# x11.enable = true; -# name = "Catppuccin-Mocha-Pink-Cursors"; -# package = pkgs.catppuccin-cursors.mochaPink; -# # size = 24; -# }; - + # home.pointerCursor = { + # gtk.enable = true; + # x11.enable = true; + # name = "Catppuccin-Mocha-Pink-Cursors"; + # package = pkgs.catppuccin-cursors.mochaPink; + # # size = 24; + # }; } diff --git a/home/modules/home-pkgs.nix b/home/modules/home-pkgs.nix index 9def23b..f85a7d2 100644 --- a/home/modules/home-pkgs.nix +++ b/home/modules/home-pkgs.nix @@ -10,6 +10,7 @@ pkgs.steam pkgs.protonup-qt pkgs.via + pkgs.telegram-desktop # pkgs.spotify ] else []; @@ -19,18 +20,22 @@ in { home.packages = [ pkgs.neofetch - pkgs.uwufetch + # pkgs.uwufetch maxfetch pkgs.btop pkgs.iftop pkgs.ranger + pkgs.openvpn + pkgs.moodle-dl pkgs.anki pkgs.obsidian + pkgs.syncthingtray + pkgs.brightnessctl pkgs.pavucontrol @@ -50,7 +55,6 @@ in { pkgs.signal-desktop pkgs.vesktop - pkgs.telegram-desktop pkgs.element-desktop pkgs.qbittorrent @@ -62,6 +66,7 @@ in { pkgs.neovide pkgs.xournalpp + pkgs.zathura pkgs.ripgrep diff --git a/home/modules/rofi.nix b/home/modules/rofi.nix index b770bc8..ed00375 100644 --- a/home/modules/rofi.nix +++ b/home/modules/rofi.nix @@ -7,6 +7,7 @@ }: { programs.rofi = { enable = true; + package = pkgs.rofi-wayland; extraConfig = { terminal = "wezterm"; disable-history = false; diff --git a/hosts/aarch64-linux/alastor/default.nix b/hosts/aarch64-linux/alastor/default.nix index 023bfe5..afbd30e 100644 --- a/hosts/aarch64-linux/alastor/default.nix +++ b/hosts/aarch64-linux/alastor/default.nix @@ -113,6 +113,11 @@ wl-clipboard xclip + sway + swaylock-effects + wmenu + foot + gnomeExtensions.appindicator gnomeExtensions.tray-icons-reloaded gnomeExtensions.blur-my-shell @@ -121,6 +126,7 @@ jellyfin-web jellyfin-ffmpeg ]; + security.pam.services.swaylock = {}; services.udev.packages = with pkgs; [gnome.gnome-settings-daemon]; # Some programs need SUID wrappers, can be configured further or are @@ -141,8 +147,8 @@ services.openssh.enable = true; # Open ports in the firewall. - networking.firewall.allowedTCPPorts = [22]; - # networking.firewall.allowedUDPPorts = [ ... ]; + networking.firewall.allowedTCPPorts = [22 2234]; + networking.firewall.allowedUDPPorts = [2234]; # Or disable the firewall altogether. # networking.firewall.enable = false; diff --git a/hosts/aarch64-linux/alastor/hardware-configuration.nix b/hosts/aarch64-linux/alastor/hardware-configuration.nix index 1f78e79..e0c50e5 100644 --- a/hosts/aarch64-linux/alastor/hardware-configuration.nix +++ b/hosts/aarch64-linux/alastor/hardware-configuration.nix @@ -30,7 +30,7 @@ swapDevices = [ { device = "/var/lib/swapfile"; - size = 8 * 1024; + size = 12 * 1024; } ]; diff --git a/hosts/x86_64-linux/beleth/default.nix b/hosts/x86_64-linux/beleth/default.nix index 35dac51..141b396 100644 --- a/hosts/x86_64-linux/beleth/default.nix +++ b/hosts/x86_64-linux/beleth/default.nix @@ -13,6 +13,7 @@ with lib; { ./calibre-web.nix ./transmission.nix ./lanrarari.nix + ./uptime.nix ../../gc.nix ../../../common ]; @@ -22,7 +23,11 @@ with lib; { email = "xqtc@tutanota.com"; configFile = pkgs.writeText "Caddyfile" '' heroin.trade { - root * /var/www/website/build/ + root * /var/www/website/public/ + handle_errors { + rewrite * /404.html + file_server +} file_server } syncthing.heroin.trade { @@ -43,6 +48,9 @@ with lib; { grafana.heroin.trade { reverse_proxy http://127.0.0.1:2342 } + uptime.heroin.trade { + reverse_proxy 127.0.0.1:3001 + } ''; }; @@ -87,11 +95,16 @@ with lib; { "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN7UkcmSVo+SeB5Obevz3mf3UHruYxn0UHUzoOs2gDBy xqtc@asmodeus" ]; + programs.bash.blesh.enable = true; + # programs.bash.shellInit = "cd /home/xqtc/nixos-config/; export GIT_REVISION_CONFIG=$(nix flake metadata --json | jq -r '.locked.rev'); echo $GIT_REVISION_CONFIG; cd;"; + environment.systemPackages = with pkgs; [ neovim vim git wget + jq + zola ]; programs.mtr.enable = true; diff --git a/hosts/x86_64-linux/beleth/uptime.nix b/hosts/x86_64-linux/beleth/uptime.nix new file mode 100644 index 0000000..1cc3d53 --- /dev/null +++ b/hosts/x86_64-linux/beleth/uptime.nix @@ -0,0 +1,6 @@ +{config, lib, ...}: +{ + services.uptime-kuma = { + enable = true; + }; +}