aboutsummaryrefslogtreecommitdiff
path: root/macos.local/.flake/system/homebrew.nix.org
blob: d32d093cc14b541074e0853028e504533c882127 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#+title: Homebrew Configuration

Set up Homebrew. I disable the quarantine automatically and ensure that the state of Homebrew is exactly as specified here.
#+begin_src nix
  { config, pkgs, ... }:

  {
    homebrew = {
      enable = true;

      caskArgs.no_quarantine = true;

      global.autoUpdate = false;
      onActivation = {
        autoUpdate = true;
        cleanup = "zap";
        upgrade = true;
      };

      taps = [
        "camillescholtz/formulae"
        "d12frosted/emacs-plus"
        "homebrew/bundle"
        "homebrew/cask-fonts"
        "homebrew/cask-versions"
        "homebrew/services"
        "jorgelbg/tap"
        "osx-cross/avr"
      ];

      brews = [
        # emacs is handled better by homebrew on mac
        {
          name = "emacs-plus@30";
          args = [
            "with-native-comp"
            "with-imagemagick"
            "with-xwidgets"
            "with-mailutils"
            "with-ctags"
            "with-retro-emacs-logo-icon"
          ];
        }

        # problematic nix builds
        "choose-gui" # nix version fails to build
        "clang-format" # nix version screws up clang setup
        "openjdk" # there's really no jdk for mac from nix?
        "pinentry-touchid" # no nix version

        # need for grading purposes
        "avrdude"
        "open-mpi"
        "open-ocd"
        "osx-cross/avr/avr-binutils"
        "osx-cross/avr/avarice"
        "osx-cross/avr/avr-gcc@14"

        # needed for pdf-tools for emacs
        "autoconf"
        "automake"
        "pkg-config"
        "poppler"

        # required by emacs-plus@30
        "imagemagick"
        "jansson"
        "jpeg"
        "libgccjit"
        "librsvg"

        "mailutils"
        "tree-sitter"

        # required by pinentry-touchid
        "gnupg"
        "pinentry-mac"
      ];

      # homebrew handles graphical applications better than nix
      casks = [
        "audacity"
        "blender"
        "cabal"
        "calibre"
        "desmume"
        "dwarf-fortress-lmp"
        "firefox"
        "gcc-arm-embedded"
        "ghostty"
        "gimp"
        "godot"
        "inkscape"
        "krita"
        "multimc"
        "obs"
        "openemu"
        "pokemon-showdown"
        "proton-mail-bridge"
        "protonvpn"
        "qbittorrent"
        "rar"
        "syncthing"
        "thunderbird"
        "vlc"
        "whisky"
        "zen-browser"
        "zotero"
       ];
    };
  }
#+end_src