Compare commits

..
Author SHA1 Message Date
Olaf f923fb7717 emacs Sha 2026-09-16 14:23:19 +02:00
kolkman 969e5e5dd3 excluded nightsky on x86 2026-09-15 20:55:37 +02:00
kolkman 3e6a7391df Architecture split. 2026-09-15 20:46:52 +02:00
3 changed files with 75 additions and 28 deletions
+67 -22
View File
@@ -2,23 +2,36 @@
description = "Starter configuration for macOS with nix-darwin"; description = "Starter configuration for macOS with nix-darwin";
inputs = { inputs = {
nixpkgs = { nixpkgsAarch64 = {
url = "github:nixos/nixpkgs//nixpkgs-26.05-darwin"; url = "github:nixos/nixpkgs/nixpkgs-unstable";
# url = "github:nixos/nixpkgs/nixpkgs-unstable";
}; };
home-manager = { nixpkgsX86 = {
url = "github:nixos/nixpkgs//nixpkgs-26.05-darwin";
};
homeManagerAarch64 = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgsAarch64";
};
homeManagerX86 = {
url = "github:nix-community/home-manager/release-26.05";
inputs.nixpkgs.follows = "nixpkgsX86";
}; };
nixd = { nixd = {
url = "github:nix-community/nixd"; url = "github:nix-community/nixd";
}; };
darwin = { darwinAarch64 = {
# url = "github:nix-darwin/nix-darwin"; url = "github:nix-darwin/nix-darwin";
inputs.nixpkgs.follows = "nixpkgsAarch64";
};
darwinX86 = {
url = "github:nix-darwin/nix-darwin/nix-darwin-26.05"; url = "github:nix-darwin/nix-darwin/nix-darwin-26.05";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgsX86";
}; };
brew-src = { brew-src = {
@@ -43,7 +56,7 @@
sops-nix = { sops-nix = {
url = "github:Mic92/sops-nix"; url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgsAarch64";
}; };
nix-vscode-extensions = { nix-vscode-extensions = {
@@ -67,12 +80,15 @@
outputs = outputs =
{ {
self, self,
darwin, darwinAarch64,
darwinX86,
nix-homebrew, nix-homebrew,
homebrew-core, homebrew-core,
homebrew-cask, homebrew-cask,
home-manager, homeManagerAarch64,
nixpkgs, homeManagerX86,
nixpkgsAarch64,
nixpkgsX86,
nixd, nixd,
sops-nix, sops-nix,
nix-vscode-extensions, nix-vscode-extensions,
@@ -82,17 +98,33 @@
}@inputs: }@inputs:
let let
user = "olaf"; user = "olaf";
lib = nixpkgsAarch64.lib;
darwinSystems = [ darwinSystems = [
"aarch64-darwin" "aarch64-darwin"
"x86_64-darwin" "x86_64-darwin"
]; ];
forAllSystems = f: nixpkgs.lib.genAttrs darwinSystems f; perSystem = {
aarch64-darwin = {
nixpkgs = nixpkgsAarch64;
darwin = darwinAarch64;
home-manager = homeManagerAarch64;
pkgs = nixpkgsAarch64.legacyPackages.aarch64-darwin;
};
x86_64-darwin = {
nixpkgs = nixpkgsX86;
darwin = darwinX86;
home-manager = homeManagerX86;
pkgs = nixpkgsX86.legacyPackages.x86_64-darwin;
};
};
forAllSystems = f: lib.genAttrs darwinSystems f;
devShell = devShell =
system: system:
let let
pkgs = nixpkgs.legacyPackages.${system}; pkgs = perSystem.${system}.pkgs;
in in
{ {
default = default =
@@ -125,12 +157,17 @@
}; };
}; };
mkApp = scriptName: system: { mkApp =
scriptName: system:
let
pkgs = perSystem.${system}.pkgs;
in
{
type = "app"; type = "app";
program = "${ program = "${
(nixpkgs.legacyPackages.${system}.writeScriptBin scriptName '' (pkgs.writeScriptBin scriptName ''
#!/usr/bin/env bash #!/usr/bin/env bash
PATH=${nixpkgs.legacyPackages.${system}.git}/bin:$PATH PATH=${pkgs.git}/bin:$PATH
echo "Running ${scriptName} for ${system}" echo "Running ${scriptName} for ${system}"
sudo chmod +x ${self}/apps/${system}/${scriptName} sudo chmod +x ${self}/apps/${system}/${scriptName}
exec ${self}/apps/${system}/${scriptName} exec ${self}/apps/${system}/${scriptName}
@@ -147,15 +184,23 @@
in in
{ {
devShells = forAllSystems devShell; devShells = forAllSystems devShell;
apps = nixpkgs.lib.genAttrs darwinSystems mkDarwinApps; apps = lib.genAttrs darwinSystems mkDarwinApps;
darwinConfigurations = nixpkgs.lib.genAttrs darwinSystems ( darwinConfigurations = lib.genAttrs darwinSystems (
system: system:
darwin.lib.darwinSystem { let
systemConfig = perSystem.${system};
in
systemConfig.darwin.lib.darwinSystem {
inherit system; inherit system;
specialArgs = inputs // { inherit system; }; specialArgs = inputs // {
inherit system;
nixpkgs = systemConfig.nixpkgs;
darwin = systemConfig.darwin;
home-manager = systemConfig.home-manager;
};
modules = [ modules = [
home-manager.darwinModules.home-manager systemConfig.home-manager.darwinModules.home-manager
nix-homebrew.darwinModules.nix-homebrew nix-homebrew.darwinModules.nix-homebrew
{ {
nix-homebrew = { nix-homebrew = {
@@ -170,7 +215,7 @@
}; };
home-manager.sharedModules = home-manager.sharedModules =
nixpkgs.lib.optionals (system != "x86_64-darwin") [ lib.optionals (system != "x86_64-darwin") [
catppuccin.homeModules.catppuccin catppuccin.homeModules.catppuccin
]; ];
} }
+1 -1
View File
@@ -1,7 +1,7 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
let let
emacsOverlaySha256 = "1abfqnjs3ysmg8k41hwncwzphkcw9884sskmfp2kj24cd9j7kpsz"; emacsOverlaySha256 = "0h15850dpx3p2jr5g4nv0gir0w9dgml1mqzc5yq8686y246r33br";
in in
{ {
home-manager.backupFileExtension = "nix-backup"; home-manager.backupFileExtension = "nix-backup";
+3 -1
View File
@@ -68,7 +68,6 @@ in
"LibreOffice" = 1630474372; "LibreOffice" = 1630474372;
"Monal - XMPP Chatting " = 1637078500; "Monal - XMPP Chatting " = 1637078500;
"MQTT Explorer" = 1455214828; # (0.3.5) "MQTT Explorer" = 1455214828; # (0.3.5)
"Night Sky" = 475772902; # 475772902
"Native SQLite Manager" = 1416282836; # (1.31.0) "Native SQLite Manager" = 1416282836; # (1.31.0)
"Remarkable Desktop" = 1276493162; # (3.19.0) "Remarkable Desktop" = 1276493162; # (3.19.0)
"Slack for Desktop" = 803453959; # (4.45.60) "Slack for Desktop" = 803453959; # (4.45.60)
@@ -76,6 +75,9 @@ in
"Windows App Installer" = 1295203466; # (1.0.16) "Windows App Installer" = 1295203466; # (1.0.16)
"Wireguard" = 1451685025; # (1.0.16) "Wireguard" = 1451685025; # (1.0.16)
### "1Password: Password Manager" = 1511601750; # (8.11.0) Does not seem to insta ### "1Password: Password Manager" = 1511601750; # (8.11.0) Does not seem to insta
}
// lib.optionalAttrs (system != "x86_64-darwin") {
"Night Sky" = 475772902; # 475772902
}; };
}; };