From 28e93cba13fb9c738cf8f5760f87b5ec1449401d Mon Sep 17 00:00:00 2001 From: Bart van der Braak Date: Mon, 10 Feb 2025 22:45:49 +0100 Subject: [PATCH] Add cloud-utils and Apple Fonts --- nixos/flake.lock | 6 ++-- nixos/flake.nix | 2 +- nixos/modules/apple-fonts.nix | 67 +++++++++++++++++++++++++++++++++++ nixos/users.nix | 1 + 4 files changed, 72 insertions(+), 4 deletions(-) create mode 100644 nixos/modules/apple-fonts.nix diff --git a/nixos/flake.lock b/nixos/flake.lock index 6c155df..d990e26 100644 --- a/nixos/flake.lock +++ b/nixos/flake.lock @@ -39,11 +39,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1738804720, - "narHash": "sha256-3bAR5ALk5AoFt4BlsQRdjSV6VVH6lbgtYdElb0A+qDc=", + "lastModified": 1739161281, + "narHash": "sha256-cMM5E5EzEnfQFdBurCVqCi9mhsmRCeaEJB4iskPsQ1o=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "7868f1c54b7f8e09be194aaa0934791596df1ea1", + "rev": "0e962f036e6e2a9dde28f37d80104c7ea477a801", "type": "github" }, "original": { diff --git a/nixos/flake.nix b/nixos/flake.nix index 177fc98..82e21a9 100644 --- a/nixos/flake.nix +++ b/nixos/flake.nix @@ -18,13 +18,13 @@ ./packages.nix ./services.nix ./modules/bootloader.nix + ./modules/apple-fonts.nix ]; }; qemu = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ ./hardware/qemu.nix - ./modules/kde.nix ./modules/configuration.nix ./modules/display-manager.nix diff --git a/nixos/modules/apple-fonts.nix b/nixos/modules/apple-fonts.nix new file mode 100644 index 0000000..f4100ba --- /dev/null +++ b/nixos/modules/apple-fonts.nix @@ -0,0 +1,67 @@ +{ pkgs, ... }: + +let + # Define Apple font sources + fontSources = { + sf-pro = { + url = "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg"; + hash = "sha256-IccB0uWWfPCidHYX6sAusuEZX906dVYo8IaqeX7/O88="; + }; + sf-compact = { + url = "https://devimages-cdn.apple.com/design/resources/download/SF-Compact.dmg"; + hash = "sha256-PlraM6SwH8sTxnVBo6Lqt9B6tAZDC//VCPwr/PNcnlk="; + }; + sf-mono = { + url = "https://devimages-cdn.apple.com/design/resources/download/SF-Mono.dmg"; + hash = "sha256-bUoLeOOqzQb5E/ZCzq0cfbSvNO1IhW1xcaLgtV2aeUU="; + }; + sf-arabic = { + url = "https://devimages-cdn.apple.com/design/resources/download/SF-Arabic.dmg"; + hash = "sha256-J2DGLVArdwEsSVF8LqOS7C1MZH/gYJhckn30jRBRl7k="; + }; + ny = { + url = "https://devimages-cdn.apple.com/design/resources/download/NY.dmg"; + hash = "sha256-HC7ttFJswPMm+Lfql49aQzdWR2osjFYHJTdgjtuI+PQ="; + }; + }; + + # Function to create Apple font packages + makeAppleFont = name: pkgName: source: + pkgs.stdenv.mkDerivation { + inherit name; + + src = pkgs.fetchurl { + inherit (source) url hash; + }; + + version = "0.3.0"; + + unpackPhase = '' + undmg $src + 7z x '${pkgName}' + 7z x 'Payload~' + ''; + + buildInputs = [ + pkgs.undmg + pkgs.p7zip + ]; + setSourceRoot = "sourceRoot=`pwd`"; + + installPhase = '' + mkdir -p $out/share/fonts/opentype + mkdir -p $out/share/fonts/truetype + find -name \*.otf -exec mv {} $out/share/fonts/opentype/ \; + find -name \*.ttf -exec mv {} $out/share/fonts/truetype/ \; + ''; + }; + +in { + environment.systemPackages = [ + (makeAppleFont "sf-pro" "SF Pro Fonts.pkg" fontSources.sf-pro) + (makeAppleFont "sf-compact" "SF Compact Fonts.pkg" fontSources.sf-compact) + (makeAppleFont "sf-mono" "SF Mono Fonts.pkg" fontSources.sf-mono) + (makeAppleFont "sf-arabic" "SF Arabic Fonts.pkg" fontSources.sf-arabic) + (makeAppleFont "ny" "NY Fonts.pkg" fontSources.ny) + ]; +} diff --git a/nixos/users.nix b/nixos/users.nix index 88f42e2..8465ce4 100644 --- a/nixos/users.nix +++ b/nixos/users.nix @@ -32,6 +32,7 @@ inkscape gimp nixfmt-rfc-style + cloud-utils ]; };