mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-04-23 17:28:33 +02:00
feat: install apps using homebrew instead of nix
This commit is contained in:
@@ -10,8 +10,6 @@ This repository is home to the nix code that builds my systems.
|
|||||||
|
|
||||||
- [ ] Enable disk encryption to enhance data security
|
- [ ] Enable disk encryption to enhance data security
|
||||||
- [ ] `Xcursor.size` does not take effect in i3
|
- [ ] `Xcursor.size` does not take effect in i3
|
||||||
- [ ] update macOS's config, refer to <https://github.com/dustinlyons/nixos-config/tree/main/darwin>
|
|
||||||
- Nix is not well supported on macOS, I met some strange bug recently, so I would like to migrate to nix-darwin's [homebrew](https://daiderd.com/nix-darwin/manual/index.html#opt-homebrew.enable) on macOS.
|
|
||||||
|
|
||||||
## Why Nix?
|
## Why Nix?
|
||||||
|
|
||||||
|
|||||||
@@ -5,27 +5,8 @@
|
|||||||
#
|
#
|
||||||
# MacOS specific home configuration
|
# MacOS specific home configuration
|
||||||
#
|
#
|
||||||
# Install those apps using brew, instead of nix
|
|
||||||
# because they are not available in nixpkgs with the support of darwin
|
|
||||||
# ==> Brew Casks
|
|
||||||
# jdk-mission-control
|
|
||||||
# anki firefox wireshark
|
|
||||||
# iina openinterminal-lite
|
|
||||||
# insomnia orbstack
|
|
||||||
# clashx google-chrome
|
|
||||||
# google-cloud-sdk telegram
|
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
mpv
|
|
||||||
discord
|
|
||||||
];
|
|
||||||
|
|
||||||
# stable version of vscode
|
|
||||||
programs.vscode = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
|||||||
@@ -9,5 +9,6 @@
|
|||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
../../modules/darwin/core.nix
|
../../modules/darwin/core.nix
|
||||||
|
../../modules/darwin/apps.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
78
modules/darwin/apps.nix
Normal file
78
modules/darwin/apps.nix
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
{ pkgs, ...}: {
|
||||||
|
|
||||||
|
##########################################################################
|
||||||
|
#
|
||||||
|
# MacOS specific nix-darwin configuration
|
||||||
|
#
|
||||||
|
# Nix is not well supported on macOS, I met some strange bug recently.
|
||||||
|
# So install apps using [homebrew](https://daiderd.com/nix-darwin/manual/index.html#opt-homebrew.enable) here.
|
||||||
|
#
|
||||||
|
##########################################################################
|
||||||
|
|
||||||
|
system = {
|
||||||
|
defaults = {
|
||||||
|
dock = {
|
||||||
|
autohide = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
finder = {
|
||||||
|
_FXShowPosixPathInTitle = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
keyboard = {
|
||||||
|
enableKeyMapping = true;
|
||||||
|
remapCapsLockToControl = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
homebrew = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
onActivation = {
|
||||||
|
autoUpdate = false;
|
||||||
|
# 'zap': uninstalls all formulae(and related files) not listed in the generated Brewfile
|
||||||
|
cleanup = "zap";
|
||||||
|
};
|
||||||
|
|
||||||
|
taps = [
|
||||||
|
"homebrew/cask"
|
||||||
|
"homebrew/cask-fonts"
|
||||||
|
"homebrew/services"
|
||||||
|
"homebrew/cask-versions"
|
||||||
|
|
||||||
|
"hashicorp/tap"
|
||||||
|
"pulumi/tap"
|
||||||
|
];
|
||||||
|
|
||||||
|
brews = [
|
||||||
|
# `brew install`
|
||||||
|
"httpie"
|
||||||
|
];
|
||||||
|
|
||||||
|
# `brew install --cask`
|
||||||
|
casks = [
|
||||||
|
"firefox"
|
||||||
|
"google-chrome"
|
||||||
|
"visual-studio-code"
|
||||||
|
"visual-studio-code-insiders"
|
||||||
|
|
||||||
|
"telegram"
|
||||||
|
"discord"
|
||||||
|
|
||||||
|
# "anki"
|
||||||
|
"clashx"
|
||||||
|
"iina"
|
||||||
|
"openinterminal-lite"
|
||||||
|
"syncthing"
|
||||||
|
"raycast"
|
||||||
|
"iglance"
|
||||||
|
|
||||||
|
"iterm2"
|
||||||
|
"insomnia"
|
||||||
|
"wireshark"
|
||||||
|
"jdk-mission-control"
|
||||||
|
"google-cloud-sdk"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -10,10 +10,11 @@
|
|||||||
#
|
#
|
||||||
###################################################################################
|
###################################################################################
|
||||||
|
|
||||||
|
|
||||||
# # enable flakes globally
|
# # enable flakes globally
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
|
nix.settings.trusted-users = ["admin"];
|
||||||
|
|
||||||
# Allow unfree packages
|
# Allow unfree packages
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
@@ -30,10 +31,6 @@
|
|||||||
# Add ability to used TouchID for sudo authentication
|
# Add ability to used TouchID for sudo authentication
|
||||||
security.pam.enableSudoTouchIdAuth = true;
|
security.pam.enableSudoTouchIdAuth = true;
|
||||||
|
|
||||||
# Keyboard
|
|
||||||
system.keyboard.enableKeyMapping = true;
|
|
||||||
system.keyboard.remapCapsLockToEscape = true;
|
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "Asia/Shanghai";
|
time.timeZone = "Asia/Shanghai";
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user