From 2afb5fecbb0062c85f44d5714bfb0b0a4227c4d6 Mon Sep 17 00:00:00 2001 From: gwg313 Date: Sun, 3 May 2026 16:50:22 -0400 Subject: [PATCH 1/8] disable clamav daemon --- modules/nixos/clamav.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nixos/clamav.nix b/modules/nixos/clamav.nix index 4562585..0a897b0 100644 --- a/modules/nixos/clamav.nix +++ b/modules/nixos/clamav.nix @@ -5,7 +5,7 @@ ]; services.clamav = { - daemon.enable = true; + daemon.enable = false; updater.enable = true; scanner.enable = true; fangfrisch.enable = true; From 5474360f59cbfa149612ca7b6a47cd0d921b6400 Mon Sep 17 00:00:00 2001 From: gwg313 Date: Sun, 3 May 2026 16:50:22 -0400 Subject: [PATCH 2/8] Update bluetooth config --- modules/features/desktop/bluetooth.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/features/desktop/bluetooth.nix b/modules/features/desktop/bluetooth.nix index d18b5b1..641a881 100644 --- a/modules/features/desktop/bluetooth.nix +++ b/modules/features/desktop/bluetooth.nix @@ -11,6 +11,16 @@ enable = lib.mkForce true; powerOnBoot = true; }; + hardware.bluetooth.settings = { + Input = { + # This allows the BLE handshake to bypass classic security checks + ClassicBondedOnly = false; + }; + General = { + # Helps with the "AuthenticationCanceled" error + JustWorksRepairing = "always"; + }; + }; services.upower = { enable = true; From 37cf3136b13217b51ef8994d94f01d30552927ef Mon Sep 17 00:00:00 2001 From: gwg313 Date: Sun, 3 May 2026 16:50:22 -0400 Subject: [PATCH 3/8] add feishin --- modules/features/desktop/gui-programs.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/features/desktop/gui-programs.nix b/modules/features/desktop/gui-programs.nix index 1cc0e8e..fa0d4e6 100644 --- a/modules/features/desktop/gui-programs.nix +++ b/modules/features/desktop/gui-programs.nix @@ -9,6 +9,7 @@ ticktick gimp vlc + feishin ]; } ) From cfb712fab33b9ae34b8e1174901f5d85c7efd236 Mon Sep 17 00:00:00 2001 From: gwg313 Date: Sun, 3 May 2026 16:50:22 -0400 Subject: [PATCH 4/8] add nix tools --- modules/features/programs/cli/cli-programs.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/features/programs/cli/cli-programs.nix b/modules/features/programs/cli/cli-programs.nix index 0194424..bb55893 100644 --- a/modules/features/programs/cli/cli-programs.nix +++ b/modules/features/programs/cli/cli-programs.nix @@ -12,6 +12,9 @@ home.packages = with pkgs; [ vhs libqalculate + nurl + nix-init + nixpkgs-review ]; } ) From ffedb0d8b770b1307adc0f49e96f96039520329e Mon Sep 17 00:00:00 2001 From: gwg313 Date: Sun, 3 May 2026 16:50:22 -0400 Subject: [PATCH 5/8] add udiskie --- modules/features/desktop/dolphin.nix | 12 +++++++++++- modules/features/desktop/wayland.nix | 2 ++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/modules/features/desktop/dolphin.nix b/modules/features/desktop/dolphin.nix index b45cae2..fc6e14e 100644 --- a/modules/features/desktop/dolphin.nix +++ b/modules/features/desktop/dolphin.nix @@ -45,6 +45,7 @@ ''; in { + home.packages = with pkgs; [ kdePackages.dolphin kdePackages.kio @@ -53,7 +54,8 @@ kdePackages.ark kdePackages.ffmpegthumbs kdePackages.kdegraphics-thumbnailers - # whitesur-icon-theme + kdePackages.kpipewire + whitesur-icon-theme ]; # Helps some non-KDE apps pick Dolphin for directory browsing. @@ -138,6 +140,14 @@ "application/x-rar" ]; }; + services.udiskie = { + enable = true; + settings = { + program_options = { + file_manager = "${pkgs.kdePackages.dolphin}/bin/dolphin"; + }; + }; + }; home.sessionVariables = { XDG_ICON_DIR = "${pkgs.whitesur-icon-theme}/share/icons/WhiteSur"; diff --git a/modules/features/desktop/wayland.nix b/modules/features/desktop/wayland.nix index 31b8e79..367b756 100644 --- a/modules/features/desktop/wayland.nix +++ b/modules/features/desktop/wayland.nix @@ -5,6 +5,8 @@ ( { pkgs, ... }: { + + services.udisks2.enable = true; environment.systemPackages = with pkgs; [ wlr-randr wl-clipboard From 189734ba0b5a46e43573e267c4c79a8d7f8c7c52 Mon Sep 17 00:00:00 2001 From: gwg313 Date: Sun, 3 May 2026 16:50:22 -0400 Subject: [PATCH 6/8] add repeater --- .gitignore | 2 +- .stfolder | 0 flake.nix | 2 + .../features/programs/cli/cli-programs.nix | 4 ++ modules/top/classes/nixos.nix | 5 ++ overlays/default.nix | 3 ++ pkgs/repeater/package.nix | 48 +++++++++++++++++++ 7 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 .stfolder create mode 100644 overlays/default.nix create mode 100644 pkgs/repeater/package.nix diff --git a/.gitignore b/.gitignore index 9cb2216..4366240 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -.stfolder/ +.stfolder .stversions/ diff --git a/.stfolder b/.stfolder new file mode 100644 index 0000000..e69de29 diff --git a/flake.nix b/flake.nix index 95584a4..6449ad0 100644 --- a/flake.nix +++ b/flake.nix @@ -45,6 +45,8 @@ "x86_64-darwin" "aarch64-darwin" ]; + + flake.overlays.default = import ./overlays; perSystem = { pkgs, ... }: { diff --git a/modules/features/programs/cli/cli-programs.nix b/modules/features/programs/cli/cli-programs.nix index bb55893..8ee5042 100644 --- a/modules/features/programs/cli/cli-programs.nix +++ b/modules/features/programs/cli/cli-programs.nix @@ -7,6 +7,9 @@ pkgs, ... }: + # let + # repeater = pkgs.callPackage ../../../../pkgs/repeater.nix { }; + # in { home.packages = with pkgs; [ @@ -15,6 +18,7 @@ nurl nix-init nixpkgs-review + repeater ]; } ) diff --git a/modules/top/classes/nixos.nix b/modules/top/classes/nixos.nix index 55d7115..778a847 100644 --- a/modules/top/classes/nixos.nix +++ b/modules/top/classes/nixos.nix @@ -95,6 +95,11 @@ let }; modules = [ + { + nixpkgs.overlays = [ + inputs.self.overlays.default + ]; + } ../inventory/current.nix ../inventory/features.nix ../inventory/hosts.nix diff --git a/overlays/default.nix b/overlays/default.nix new file mode 100644 index 0000000..1e73ea4 --- /dev/null +++ b/overlays/default.nix @@ -0,0 +1,3 @@ +final: prev: { + repeater = prev.callPackage ../pkgs/repeater/package.nix { }; +} diff --git a/pkgs/repeater/package.nix b/pkgs/repeater/package.nix new file mode 100644 index 0000000..91108cb --- /dev/null +++ b/pkgs/repeater/package.nix @@ -0,0 +1,48 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + bzip2, + sqlite, + vulkan-loader, + zstd, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "repeater"; + version = "0.1.9"; + + src = fetchFromGitHub { + owner = "shaankhosla"; + repo = "repeater"; + tag = "v${finalAttrs.version}"; + hash = "sha256-vkiDJ9hGEa9PCaNjgGJAvAFGUxXJK04ezvXyAmJB3bk="; + }; + + cargoHash = "sha256-/ttQpk9JnSRhE/VOJlz60LpV1PJ/spzXQ1EPLcox1mw="; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + bzip2 + sqlite + vulkan-loader + zstd + ]; + + env = { + ZSTD_SYS_USE_PKG_CONFIG = true; + }; + + meta = { + description = "Spaced repetition, in your terminal"; + homepage = "https://github.com/shaankhosla/repeater"; + changelog = "https://github.com/shaankhosla/repeater/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ ]; + mainProgram = "repeater"; + }; +}) From b2c161f2c51251983663083429fd5e932b873cec Mon Sep 17 00:00:00 2001 From: gwg313 Date: Tue, 5 May 2026 11:00:16 -0400 Subject: [PATCH 7/8] add lfk --- modules/features/ops/ops-k8s.nix | 1 + overlays/default.nix | 1 + pkgs/lfk/package.nix | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 pkgs/lfk/package.nix diff --git a/modules/features/ops/ops-k8s.nix b/modules/features/ops/ops-k8s.nix index 9d45ec9..a9c3f1a 100644 --- a/modules/features/ops/ops-k8s.nix +++ b/modules/features/ops/ops-k8s.nix @@ -16,6 +16,7 @@ kubernetes-helm # Package manager for Kubernetes applications, simplifying deployment and management. minikube # Local Kubernetes cluster for easy testing and development. stern # Multi-container log tailing and streaming for Kubernetes. + lfk ]; } ) diff --git a/overlays/default.nix b/overlays/default.nix index 1e73ea4..c8463ca 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -1,3 +1,4 @@ final: prev: { repeater = prev.callPackage ../pkgs/repeater/package.nix { }; + lfk = prev.callPackage ../pkgs/lfk/package.nix { }; } diff --git a/pkgs/lfk/package.nix b/pkgs/lfk/package.nix new file mode 100644 index 0000000..3e17b48 --- /dev/null +++ b/pkgs/lfk/package.nix @@ -0,0 +1,32 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, +}: + +buildGoModule (finalAttrs: { + pname = "lfk"; + version = "0.9.36"; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "janosmiko"; + repo = "lfk"; + tag = "v${finalAttrs.version}"; + hash = "sha256-aIWqZ90Mz6Oc554wLB4691JsX68VG0pD3+AuAOkqNis="; + }; + + vendorHash = "sha256-2YhpOg5asUYaMQxorwTt1gkyiA165wjBxDoIUJ74sro="; + + ldflags = [ "-s" ]; + + meta = { + description = "Lightning Fast Kubernetes navigator"; + longDescription = "LFK is a lightning-fast, keyboard-focused, yazi-inspired terminal user interface for navigating and managing Kubernetes clusters. Built for speed and efficiency, it brings a three-column Miller columns layout with an owner-based resource hierarchy to your terminal"; + homepage = "https://github.com/janosmiko/lfk"; + changelog = "https://github.com/janosmiko/lfk/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ gwg313 ]; + mainProgram = "lfk"; + }; +}) From b259b18026f7e9794fd69a451cb0c1f810b7fb81 Mon Sep 17 00:00:00 2001 From: gwg313 Date: Tue, 5 May 2026 13:35:30 -0400 Subject: [PATCH 8/8] add istioctl --- modules/features/ops/ops-k8s.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/features/ops/ops-k8s.nix b/modules/features/ops/ops-k8s.nix index a9c3f1a..0b0c14a 100644 --- a/modules/features/ops/ops-k8s.nix +++ b/modules/features/ops/ops-k8s.nix @@ -17,6 +17,7 @@ minikube # Local Kubernetes cluster for easy testing and development. stern # Multi-container log tailing and streaming for Kubernetes. lfk + istioctl ]; } )