diff options
| author | Fuwn <[email protected]> | 2024-10-14 04:03:21 +0000 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-10-14 04:03:21 +0000 |
| commit | 246da04082bc08d4ee2ac01f353259d25d182915 (patch) | |
| tree | d9472200b3c53d26ed73724d9061644ae1a0dec2 /flake.nix | |
| parent | refactor(flake): use system-specific nixpkgs everywhere (diff) | |
| download | pia.nix-246da04082bc08d4ee2ac01f353259d25d182915.tar.xz pia.nix-246da04082bc08d4ee2ac01f353259d25d182915.zip | |
feat(flake): add a proper cli
Diffstat (limited to 'flake.nix')
| -rw-r--r-- | flake.nix | 41 |
1 files changed, 20 insertions, 21 deletions
@@ -13,36 +13,35 @@ flake-utils.lib.eachDefaultSystem ( system: let + inherit (pkgs) lib; + pkgs = import nixpkgs { inherit system; }; - - lib = pkgs.lib; in { - packages = - let - makeShellScript = - name: action: - pkgs.writeScriptBin name '' - #!${pkgs.runtimeShell} + packages = { + pia = import ./cli.nix { inherit lib pkgs; }; + default = self.packages.${system}.pia; + }; - if [ "$(id -u)" -ne 0 ]; then - exec sudo "$0" "$@" - fi + apps = { + default = self.apps.${system}.pia; - ${action} - ''; - in - { - pia-start = makeShellScript "pia-start" "sudo systemctl start openvpn-$1.service"; - pia-stop = makeShellScript "pia-stop" "sudo systemctl stop openvpn-$1.service"; - pia-list = makeShellScript "pia-list" "ls /etc/systemd/system/ | awk '/openvpn/ {gsub(/openvpn-|.service/, \"\"); print}'"; + pia = { + type = "app"; + program = "${self.packages.${system}.pia}/bin/pia"; - pia-search = makeShellScript "pia-search" "${ - lib.getExe self.packages.${system}.pia-list - } | ${lib.getExe pkgs.fzf}"; + meta = with pkgs.lib; { + description = "Private Internet Access VPN CLI for NixOS"; + license = licenses.gpl3Only; + maintainers = [ maintainers.Fuwn ]; + homepage = "https://github.com/Fuwn/pia.nix"; + mainPackage = "pia"; + platforms = platforms.linux; + }; }; + }; nixosModules.default = { config, ... }: |