From 3365694f924f27b62fd2520a75d695c8dffe2c84 Mon Sep 17 00:00:00 2001 From: Daniel Kempkens Date: Fri, 7 Jun 2024 14:26:20 +0200 Subject: [PATCH] aerospace: init --- flake.nix | 1 + packages/aerospace.nix | 43 ++++++++++++++++++++++++++++++++++++ packages/phantomjs.nix | 6 +++-- packages/tabnine/default.nix | 2 +- 4 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 packages/aerospace.nix diff --git a/flake.nix b/flake.nix index 87fc21a..4fa9c3f 100644 --- a/flake.nix +++ b/flake.nix @@ -26,6 +26,7 @@ darwinPackages = if lib.hasSuffix "darwin" system then { + aerospace = callPackage ./packages/aerospace.nix { }; cliclick = callPackage ./packages/cliclick.nix { }; phantomjs = callPackage ./packages/phantomjs.nix { }; tabnine = callPackage ./packages/tabnine { }; diff --git a/packages/aerospace.nix b/packages/aerospace.nix new file mode 100644 index 0000000..a953007 --- /dev/null +++ b/packages/aerospace.nix @@ -0,0 +1,43 @@ +{ pkgs, lib }: + +pkgs.stdenvNoCC.mkDerivation rec { + pname = "aerospace"; + version = "0.11.1-Beta"; + + src = pkgs.fetchurl { + url = "https://github.com/nikitabobko/AeroSpace/releases/download/v${version}/AeroSpace-v${version}.zip"; + hash = "sha256-HEAHvP3M4UR/pQX/q2nYJZgh3ob5TpIk/TGNQgjD4PY="; + }; + + nativeBuildInputs = with pkgs; [ installShellFiles unzip ]; + + unpackPhase = '' + unzip $src + ''; + + installPhase = '' + runHook preInstall + + mkdir -p "$out/Applications" + OUT_APP="$out/Applications/AeroSpace.app" + cp -r AeroSpace-v${version}/AeroSpace.app "$OUT_APP" + + install -D AeroSpace-v${version}/bin/aerospace $out/bin/aerospace + installManPage AeroSpace-v${version}/manpage/* + + runHook postInstall + ''; + + doInstallCheck = true; + + installCheckPhase = '' + $out/bin/aerospace --version + ''; + + meta = with lib; { + description = "AeroSpace is an i3-like tiling window manager for macOS"; + homepage = "https://github.com/nikitabobko/AeroSpace"; + license = licenses.mit; + platforms = [ "x86_64-darwin" "aarch64-darwin" ]; + }; +} diff --git a/packages/phantomjs.nix b/packages/phantomjs.nix index 64cd8d2..bbd668a 100644 --- a/packages/phantomjs.nix +++ b/packages/phantomjs.nix @@ -1,6 +1,6 @@ { pkgs, lib }: -pkgs.stdenv.mkDerivation rec { +pkgs.stdenvNoCC.mkDerivation rec { pname = "phantomjs"; version = "2.1.1"; @@ -9,7 +9,7 @@ pkgs.stdenv.mkDerivation rec { sha256 = "U4z0iCGasn4wnq/GKeK87pl2mQ/pCx7DNPVBd5FQ+ME="; }; - buildInputs = with pkgs; [ unzip ]; + nativeBuildInputs = with pkgs; [ unzip ]; unpackPhase = '' unzip $src @@ -18,7 +18,9 @@ pkgs.stdenv.mkDerivation rec { dontStrip = true; installPhase = '' + runHook preInstall install -D phantomjs-${version}-macosx/bin/phantomjs $out/bin/phantomjs + runHook postInstall ''; doInstallCheck = true; diff --git a/packages/tabnine/default.nix b/packages/tabnine/default.nix index 4326994..e66a12a 100644 --- a/packages/tabnine/default.nix +++ b/packages/tabnine/default.nix @@ -3,7 +3,7 @@ # Based on: https://github.com/NixOS/nixpkgs/blob/91a00709aebb3602f172a0bf47ba1ef013e34835/pkgs/development/tools/tabnine/default.nix let - stdenv = pkgs.stdenv; + stdenv = pkgs.stdenvNoCC; sources = lib.importJSON ./sources.json;