Compare commits
3
Commits
1fdb0cdc3e
...
f923fb7717
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f923fb7717 | ||
|
|
969e5e5dd3 | ||
|
|
3e6a7391df |
@@ -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,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";
|
||||||
|
|||||||
@@ -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
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user