aboutsummaryrefslogtreecommitdiffstats
path: root/modules/networking/usque/default.nix
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar@gmail.com>2026-09-24 04:02:19 +0530
committerArpit Chakladar <arpitchakladar@gmail.com>2026-09-24 04:02:19 +0530
commit5ea8c30b7b82d4c1e7164541892066b1f24f7d22 (patch)
treead9b994cc5415f63bae1f2342f520756d43c67ce /modules/networking/usque/default.nix
parentad96214c9ab94bce925000a6059e3c68e2ff6a22 (diff)
parent748669e19daa3afc8f0cfe10eedc19ae9766ed2c (diff)
downloadhome-manager-config-5ea8c30b7b82d4c1e7164541892066b1f24f7d22.tar.gz
home-manager-config-5ea8c30b7b82d4c1e7164541892066b1f24f7d22.zip
Merge branch 'massive-refactoring'
Diffstat (limited to 'modules/networking/usque/default.nix')
-rw-r--r--modules/networking/usque/default.nix34
1 files changed, 21 insertions, 13 deletions
diff --git a/modules/networking/usque/default.nix b/modules/networking/usque/default.nix
index 93ab7e5..aa3304c 100644
--- a/modules/networking/usque/default.nix
+++ b/modules/networking/usque/default.nix
@@ -1,15 +1,17 @@
# Open-source reimplementation of the Cloudflare WARP client's MASQUE protocol
{
config,
- pkgs,
lib,
+ pkgs,
...
}:
let
+ cfg = config.networking.usque;
+
usqueWarpScript = pkgs.writeShellApplication {
name = "usque-warp";
runtimeInputs = [
- config.networking.usque.package
+ cfg.package
config.terminal.bash.package
];
text = builtins.readFile ./usque-warp.sh;
@@ -45,23 +47,29 @@ in
description = "The usque package to use.";
};
- warp = {
- enable = lib.mkEnableOption "Enables the usque-warp script.";
- package = lib.mkOption {
- type = lib.types.package;
- readOnly = true;
- default = usqueWarpScriptPkg;
- description = "The usque-warp script package.";
+ warp = lib.mkOption {
+ type = lib.types.submodule {
+ options = {
+ enable = lib.mkEnableOption "Enables the usque-warp script.";
+ package = lib.mkOption {
+ type = lib.types.package;
+ readOnly = true;
+ default = usqueWarpScriptPkg;
+ description = "The usque-warp script package.";
+ };
+ };
};
+ default = { };
+ description = "WARP script configuration.";
};
};
config = lib.mkMerge [
- (lib.mkIf config.networking.usque.enable {
- home.packages = [ config.networking.usque.package ];
+ (lib.mkIf cfg.enable {
+ home.packages = [ cfg.package ];
})
- (lib.mkIf config.networking.usque.warp.enable {
- home.packages = [ config.networking.usque.warp.package ];
+ (lib.mkIf cfg.warp.enable {
+ home.packages = [ cfg.warp.package ];
})
];
}