feat(macos): client Pangolin (derivation dmg + activation)
This commit is contained in:
@@ -3,7 +3,30 @@
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
}: let
|
||||
# Client VPN Pangolin pour macOS : extrait du .dmg officiel (fosrl/apple).
|
||||
# Mise à jour : bump version + hash (`nix store prefetch-file --json <url>`).
|
||||
pangolin-client = pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "pangolin-client";
|
||||
version = "0.12.1";
|
||||
src = pkgs.fetchurl {
|
||||
url = "https://github.com/fosrl/apple/releases/download/mac-0.12.1/Pangolin_Installer_0.12.1.dmg";
|
||||
hash = "sha256-RETTcY6f6kqsyNrEKOToyPq/GAHu1ujY6pjzcKevgEA=";
|
||||
};
|
||||
nativeBuildInputs = [pkgs.undmg];
|
||||
sourceRoot = ".";
|
||||
unpackPhase = "undmg $src";
|
||||
installPhase = ''
|
||||
mkdir -p $out/Applications
|
||||
cp -R *.app $out/Applications/
|
||||
'';
|
||||
meta = {
|
||||
description = "Pangolin client (zero-trust VPN) pour macOS";
|
||||
homepage = "https://pangolin.net";
|
||||
platforms = pkgs.lib.platforms.darwin;
|
||||
};
|
||||
};
|
||||
in {
|
||||
imports = [
|
||||
inputs.home-manager.darwinModules.home-manager
|
||||
|
||||
@@ -67,5 +90,12 @@
|
||||
};
|
||||
};
|
||||
|
||||
# Copie l'app dans /Applications à chaque activation : une app avec
|
||||
# extension réseau ne doit pas tourner depuis un symlink du store Nix.
|
||||
system.activationScripts.pangolin-client.text = ''
|
||||
rm -rf /Applications/Pangolin.app
|
||||
cp -R ${pangolin-client}/Applications/Pangolin.app /Applications/
|
||||
'';
|
||||
|
||||
system.stateVersion = 6;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user