Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retire/replace/etc. a number of packages #64

Merged
merged 15 commits into from
Feb 4, 2025
48 changes: 24 additions & 24 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

31 changes: 19 additions & 12 deletions nix/modules/darwin-configuration.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
...
}: {
imports = [
./games.nix
./input-devices.nix
./nix-configuration.nix
./nixpkgs-configuration.nix
Expand Down Expand Up @@ -36,6 +37,8 @@
pkgs.gnupg
pkgs.yubikey-manager
pkgs.yubikey-personalization
## TODO: This is a work around for LnL7/nix-darwin#1314
pkgs.mas
];
systemPath = [
# TODO: Support this via the homebrew module.
Expand Down Expand Up @@ -64,9 +67,8 @@
#
# NB: Ideally this would be managed in home.nix, but that's not yet supported.
homebrew = {
brews = [
"sysbench" # not available on darwin via Nix
];
## TODO: This is a workaround for LnL7/nix-darwin#1314.
brews = lib.mkForce [];
caskArgs = {
appdir = "/Applications/Homebrew Apps";
fontdir = "/Library/Fonts/Homebrew Fonts";
Expand Down Expand Up @@ -98,15 +100,9 @@
# "delicious-library" # perhaps removed?
"eagle" # doesn't respect appdir # not available on darwin via Nix
"google-drive" # doesn't respect appdir
"growlnotify"
"pokemon-trading-card-game-online" # for the kids
"psi"
"r" # doesn't respect appdir
"racket"
"spotify" # not available on darwin via Nix
# not available on darwin via Nix
# I don’t know how to control auto-update
"steam"
"timemachineeditor"
# "virtualbox" # requires Intel architecture
{
Expand All @@ -131,17 +127,14 @@
Deliveries = 290986013;
FocusMask = 435999818;
GarageBand = 682658836;
Harvest = 506189836;
iMovie = 408981434;
Keynote = 409183694;
Numbers = 409203825;
"ODAT Tracker" = 448831531;
Pages = 409201541;
"Picture Window" = 507262984;
"Prime Video" = 545519333;
reMarkable = 1276493162;
"Remote Mouse" = 403195710;
Robotek = 462238382;
SoundCloud = 412754595;
# Twitter = 409789998; # currently subsumed by ferdium
Xcode = 497799835;
Expand All @@ -155,6 +148,20 @@
upgrade = true;
};
};
## Don’t auto-upgrade from the Mac App Store (this is handled by
## `homebrew.masApps`).
system.defaults.CustomSystemPreferences."com.apple.commerce".AutoUpdate = false;
## TODO: Build this incrementally from arbitrarily-named scripts.
system.activationScripts.postUserActivation.text = ''
echo "checking for un-managed apps ..."
mas list | sort >installed-packages
echo "App Store apps that are installed, but not in the nix-darwin configuration:"
join -v1 -1 1 installed-packages - <<EOF
${lib.concatStringsSep "\n"
(lib.sort (a: b: a <= b) (map toString (lib.attrValues config.homebrew.masApps)))}
EOF
rm installed-packages
'';

nix = {
gc = {
Expand Down
11 changes: 11 additions & 0 deletions nix/modules/games.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,17 @@
...
}: {
config = flaky.lib.multiConfig options {
darwinConfig = {
homebrew = {
casks = [
# not available on darwin via Nix
# I don’t know how to control auto-update
"steam"
];
masApps.Robotek = 462238382;
};
};

homeConfig = {
home.packages = lib.optionals pkgs.stdenv.hostPlatform.isDarwin [
pkgs.nixcasks.marathon
Expand Down
7 changes: 6 additions & 1 deletion nix/modules/home-configuration.nix
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,7 @@
})
## not available on darwin via Nix
(maybeNixcask "obs-studio" "obs")
pkgs.python3Packages.opentype-feature-freezer
# pkgs.slack # currently subsumed by ferdium
pkgs.synergy
pkgs.tailscale
Expand All @@ -224,6 +225,7 @@
]
++ map (font: font.package) fonts
++ lib.optionals (pkgs.system != "aarch64-linux") [
pkgs.spotify
pkgs.unison-ucm # Unison dev tooling
pkgs.zoom-us
]
Expand Down Expand Up @@ -518,6 +520,7 @@
"eagle"
"onepassword-password-manager"
"plexmediaserver"
"spotify"
"zoom"
];
};
Expand Down Expand Up @@ -576,7 +579,7 @@

targets.darwin = lib.mkIf pkgs.stdenv.hostPlatform.isDarwin {
defaults = {
"Apple Global Domain" = {
"NSGlobalDomain" = {
AppleInterfaceStyleSwitchesAutomatically = true;
NSAutomaticCapitalizationEnabled = false;
NSAutomaticDashSubstitutionEnabled = false;
Expand All @@ -601,6 +604,8 @@
];
"com.apple.sound.beep.flash" = 1;
};
# Opt out of Apple Intelligence.
"com.apple.CloudSubscriptionFeatures.optIn"."545129924" = false;
"com.apple.desktopservices" = {
DSDontWriteNetworkStores = true;
DSDontWriteUSBStores = true;
Expand Down
1 change: 1 addition & 0 deletions nix/modules/ntfy.nix
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ in {
sessionVariables.AUTO_NTFY_DONE_IGNORE = lib.concatStringsSep " " [
"emacs"
"less"
"man"
"ssh"
];
};
Expand Down
2 changes: 1 addition & 1 deletion nix/modules/shell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
};
## Make sure we don’t fall back to different versions on non-NixOS (e.g.
## the ancient Bash 3.2 on darwin).
shell.program = lib.getExe pkgs.bashInteractive;
terminal.shell.program = lib.getExe pkgs.bashInteractive;
};
};

Expand Down