aboutsummaryrefslogtreecommitdiff
path: root/macos.local/.flake
diff options
context:
space:
mode:
authorJacob Janzen <jacob.a.s.janzen@gmail.com>2024-12-15 21:41:05 -0600
committerJacob Janzen <jacob.a.s.janzen@gmail.com>2024-12-15 21:41:05 -0600
commit9cd1661a14b232b5cc0e7ed1d1556a2f2203506e (patch)
treea28490c886af60b25c487bae45e71f74a2305eff /macos.local/.flake
parentf11895461530891c552b2246d3b79f8691d2b716 (diff)
migrate brew to nix
Diffstat (limited to 'macos.local/.flake')
-rw-r--r--macos.local/.flake/flake.nix.org1
-rw-r--r--macos.local/.flake/home/programs/core.nix.org1
-rw-r--r--macos.local/.flake/home/programs/ssh.nix.org37
-rw-r--r--macos.local/.flake/system/core.nix.org1
-rw-r--r--macos.local/.flake/system/homebrew.nix.org121
5 files changed, 161 insertions, 0 deletions
diff --git a/macos.local/.flake/flake.nix.org b/macos.local/.flake/flake.nix.org
index b971bf6..0607fd8 100644
--- a/macos.local/.flake/flake.nix.org
+++ b/macos.local/.flake/flake.nix.org
@@ -19,6 +19,7 @@
./system/core.nix
home-manager.darwinModules.home-manager
{
+ home-manager.backupFileExtension = "bak";
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.jjanzen = import ./home/core.nix;
diff --git a/macos.local/.flake/home/programs/core.nix.org b/macos.local/.flake/home/programs/core.nix.org
index a06cd3f..59dd331 100644
--- a/macos.local/.flake/home/programs/core.nix.org
+++ b/macos.local/.flake/home/programs/core.nix.org
@@ -10,6 +10,7 @@
./fastfetch.nix
./git.nix
./neovim.nix
+ ./ssh.nix
./zsh.nix
];
diff --git a/macos.local/.flake/home/programs/ssh.nix.org b/macos.local/.flake/home/programs/ssh.nix.org
new file mode 100644
index 0000000..09eb34f
--- /dev/null
+++ b/macos.local/.flake/home/programs/ssh.nix.org
@@ -0,0 +1,37 @@
+#+title: SSH Configuration
+
+#+begin_src nix
+ { config, pkgs, ... }:
+ {
+ programs.ssh = {
+ enable = true;
+ addKeysToAgent = "yes";
+ matchBlocks = {
+ "*" = {
+ identityFile = "~/.ssh/id_ed25519";
+ extraOptions = {
+ "UseKeychain" = "yes";
+ };
+ };
+ "aviary" = {
+ hostname = "aviary.cs.umanitoba.ca";
+ user = "janzenj2";
+ };
+ "jjanzen.ca" = {
+ setEnv = {
+ "TERM" = "xterm";
+ };
+ };
+ "oracle" = {
+ setEnv = {
+ "TERM" = "xterm";
+ };
+ hostname = "jjanzen.ca";
+ identityFile = "~/.ssh/oracle";
+ identitiesOnly = true;
+ user = "opc";
+ };
+ };
+ };
+ }
+#+end_src
diff --git a/macos.local/.flake/system/core.nix.org b/macos.local/.flake/system/core.nix.org
index 3f942a3..355a7e2 100644
--- a/macos.local/.flake/system/core.nix.org
+++ b/macos.local/.flake/system/core.nix.org
@@ -13,6 +13,7 @@ This file imports various system configuration components in addition to enablin
nixpkgs.config.allowUnfree = true;
imports = [
+ ./homebrew.nix
./skhd.nix
./yabai.nix
];
diff --git a/macos.local/.flake/system/homebrew.nix.org b/macos.local/.flake/system/homebrew.nix.org
new file mode 100644
index 0000000..1dcd5b4
--- /dev/null
+++ b/macos.local/.flake/system/homebrew.nix.org
@@ -0,0 +1,121 @@
+#+title: Homebrew Configuration
+
+#+begin_src nix
+ { config, pkgs, ... }:
+
+ {
+ homebrew = {
+ enable = true;
+ brews = [
+ "aescrypt"
+ "aspell"
+ "avrdude"
+ "bash-language-server"
+ "bear"
+ "biber"
+ "binutils"
+ "bison"
+ "btop"
+ "clang-format"
+ "cmake"
+ "cmake-language-server"
+ "coreutils"
+ "curl"
+ "dos2unix"
+ "dotnet"
+ "eza"
+ "fd"
+ "gnutls"
+ "ffmpeg"
+ "fzf"
+ "gpgme"
+ "go"
+ "grep"
+ "htop"
+ "hunspell"
+ "hyfetch"
+ "imagemagick"
+ "ispell"
+ "jq"
+ "lesspipe"
+ "latexdiff"
+ "llvm@18"
+ "marksman"
+ "meson"
+ "mono"
+ "mpv"
+ "ninja"
+ "nmap"
+ "open-mpi"
+ "open-ocd"
+ "openjdk"
+ "pandoc"
+ "pinentry-mac"
+ "ripgrep"
+ "rsync"
+ "rust"
+ "sevenzip"
+ "shellcheck"
+ "shfmt"
+ "telnet"
+ "texlab"
+ "tree-sitter"
+ "typescript-language-server"
+ "wget"
+ "yt-dlp"
+ {
+ name = "d12frosted/emacs-plus/emacs-plus@29";
+ args = [ "with-imagemagick" ];
+ }
+ "felixkratz/formulae/sketchybar"
+ "osx-cross/avr/avr-binutils"
+ "osx-cross/avr/avarice"
+ "osx-cross/avr/avr-gcc@14"
+ ];
+ caskArgs.no_quarantine = true;
+ casks = [
+ "alacritty"
+ "audacity"
+ "blender"
+ "cabal"
+ "calibre"
+ "desmume"
+ "gcc-arm-embedded"
+ "gimp"
+ "godot"
+ "inkscape"
+ "krita"
+ "mactex"
+ "multimc"
+ "obs"
+ "openemu"
+ "pokemon-showdown"
+ "protonmail-bridge"
+ "protonvpn"
+ "qbittorrent"
+ "rar"
+ "syncthing"
+ "thunderbird"
+ "vlc"
+ "whisky"
+ "zen-browser"
+ "zotero"
+ ];
+ global.autoUpdate = false;
+ onActivation = {
+ autoUpdate = false;
+ cleanup = "zap";
+ upgrade = true;
+ };
+ taps = [
+ "d12frosted/emacs-plus"
+ "felixkratz/formulae"
+ "homebrew/bundle"
+ "homebrew/cask-fonts"
+ "homebrew/cask-versions"
+ "homebrew/services"
+ "osx-cross/avr"
+ ];
+ };
+ }
+#+end_src