Compare commits
1 Commits
wip
...
nix-darwin
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b4d5e44b6b
|
49
nix/nix-darwin/flake.lock
generated
Normal file
49
nix/nix-darwin/flake.lock
generated
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785389976,
|
||||||
|
"narHash": "sha256-0tLW8Ff5yt8AH97jw4ZpFJ0OCJ122zIlgWGDmOfU/VU=",
|
||||||
|
"owner": "nix-darwin",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "15abb8c98f336cd8bd840d71059adebabe60bf04",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-darwin",
|
||||||
|
"ref": "master",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1786348146,
|
||||||
|
"narHash": "sha256-we5zDEFfn8TgzeWKjKDMIjeQZ59omEPl23NIF+13/ys=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "d482ef84049d9b7276b83a06e4e4d76983830097",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"nix-darwin": "nix-darwin",
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
128
nix/nix-darwin/flake.nix
Normal file
128
nix/nix-darwin/flake.nix
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
# Initial install:
|
||||||
|
# Install nix: https://github.com/nixOS/nix-installer
|
||||||
|
# sudo nix run nix-darwin -- switch --flake .#garak
|
||||||
|
#
|
||||||
|
# Update after that:
|
||||||
|
# sudo darwin-rebuild switch --flake .#garak
|
||||||
|
#
|
||||||
|
# Manual:
|
||||||
|
# Install rosetta to run x86_64 programs:
|
||||||
|
# softwareupdate --install-rosetta --agree-to-license
|
||||||
|
#
|
||||||
|
# Install homebrew for installing graphical apps:
|
||||||
|
# /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
||||||
|
{
|
||||||
|
description = "nix-darwin system flake";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||||
|
nix-darwin.url = "github:nix-darwin/nix-darwin/master";
|
||||||
|
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = inputs@{ self, nix-darwin, nixpkgs }:
|
||||||
|
let
|
||||||
|
configuration = { pkgs, ... }: {
|
||||||
|
# List packages installed in system profile. To search by name, run:
|
||||||
|
# $ nix-env -qaP | grep wget
|
||||||
|
environment.systemPackages =
|
||||||
|
[
|
||||||
|
pkgs.tmux
|
||||||
|
pkgs.htop
|
||||||
|
pkgs.git
|
||||||
|
];
|
||||||
|
|
||||||
|
# Necessary for using flakes on this system.
|
||||||
|
nix.settings.experimental-features = "nix-command flakes";
|
||||||
|
|
||||||
|
# Enable alternative shell support in nix-darwin.
|
||||||
|
# programs.fish.enable = true;
|
||||||
|
|
||||||
|
# Set Git commit hash for darwin-version.
|
||||||
|
system.configurationRevision = self.rev or self.dirtyRev or null;
|
||||||
|
|
||||||
|
# Used for backwards compatibility, please read the changelog before changing.
|
||||||
|
# $ darwin-rebuild changelog
|
||||||
|
system.stateVersion = 6;
|
||||||
|
|
||||||
|
# The platform the configuration will be used on.
|
||||||
|
nixpkgs.hostPlatform = "aarch64-darwin";
|
||||||
|
|
||||||
|
# Identifies which user some settings apply to.
|
||||||
|
system.primaryUser = "talexander";
|
||||||
|
|
||||||
|
# Enable Linux VM for building Linux binaries.
|
||||||
|
#
|
||||||
|
# Test with:
|
||||||
|
# nix build --impure --expr '(with import <nixpkgs> { system = "aarch64-linux"; }; runCommand "foo" {} "uname -a > $out")'
|
||||||
|
nix.linux-builder.enable = true;
|
||||||
|
|
||||||
|
# system.defaults.CustomUserPreferences = {
|
||||||
|
# "com.apple.desktopservices" = {
|
||||||
|
# # Do not write .DS_Store files to external volumes
|
||||||
|
# DSDontWriteNetworkStores = true;
|
||||||
|
# DSDontWriteUSBStores = true;
|
||||||
|
# };
|
||||||
|
# "com.apple.screensaver" = {
|
||||||
|
# # Ask for password when returning from screensaver
|
||||||
|
# askForPassword = 1;
|
||||||
|
# askForPasswordDelay = 0;
|
||||||
|
# };
|
||||||
|
# "com.apple.SoftwareUpdate" = {
|
||||||
|
# AutomaticCheckEnabled = true;
|
||||||
|
# # Download updates in the background
|
||||||
|
# AutomaticDownload = 1;
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
|
||||||
|
# Use homebrew to install graphical apps from casks.
|
||||||
|
# homebrew = {
|
||||||
|
# enable = false;
|
||||||
|
|
||||||
|
# casks = [
|
||||||
|
# "firefox"
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
|
||||||
|
# system.defaults = {
|
||||||
|
# dock = {
|
||||||
|
# autohide = true;
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
|
||||||
|
environment.variables = {
|
||||||
|
TERMINFO_DIRS = ["${pkgs.alacritty.terminfo.outPath}/share/terminfo"];
|
||||||
|
};
|
||||||
|
|
||||||
|
power = {
|
||||||
|
sleep = {
|
||||||
|
# sudo pmset -a displaysleep 10 sleep 0 disksleep 10
|
||||||
|
# Other options to consider: lowpowermode 0 standby 0 hibernatemode 0 powernap 0
|
||||||
|
#
|
||||||
|
# Defaults:
|
||||||
|
# standby 0
|
||||||
|
# Sleep On Power Button 1
|
||||||
|
# autorestartatconnect 0
|
||||||
|
# autorestart 0
|
||||||
|
# powernap 1
|
||||||
|
# networkoversleep 0
|
||||||
|
# disksleep 10
|
||||||
|
# sleep 1
|
||||||
|
# ttyskeepawake 1
|
||||||
|
# displaysleep 10
|
||||||
|
# tcpkeepalive 1
|
||||||
|
# womp 1
|
||||||
|
#
|
||||||
|
computer = "never";
|
||||||
|
display = 10;
|
||||||
|
harddisk = 10;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
darwinConfigurations."garak" = nix-darwin.lib.darwinSystem {
|
||||||
|
modules = [ configuration ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user