From 4c3cea97582a0af2160d3758803817fc6a6dd776 Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Thu, 30 Jan 2025 13:59:22 -0600 Subject: [PATCH 1/9] fix SourceGit tap error --- configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/configuration.nix b/configuration.nix index 68ad0a8..add9e71 100644 --- a/configuration.nix +++ b/configuration.nix @@ -49,6 +49,7 @@ no_quarantine = true; }; + taps = [ "ybeapps/sourcegit" ]; brews = [ "borgbackup/tap/borgbackup-fuse" "firefoxpwa" "r" ]; casks = [ "alt-tab" From b1c276f761222651e32f2cbef957baacdea68776 Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Mon, 3 Feb 2025 09:26:34 -0600 Subject: [PATCH 2/9] Add stats --- configuration.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configuration.nix b/configuration.nix index add9e71..4d30831 100644 --- a/configuration.nix +++ b/configuration.nix @@ -71,6 +71,7 @@ "rancher" "rstudio" "signal" + "stats" "steam" "textmate" "thunderbird@esr" @@ -83,6 +84,7 @@ ]; masApps = { "Bitwarden" = 1352778147; + "Hidden Bar" = 1452453066; "Tailscale" = 1475387142; }; }; From 9eee136c7d7e1f3df454096396ec677b7be93811 Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Mon, 3 Feb 2025 09:35:03 -0600 Subject: [PATCH 3/9] Switch to colima instead of Rancher --- configuration.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/configuration.nix b/configuration.nix index 4d30831..19ea743 100644 --- a/configuration.nix +++ b/configuration.nix @@ -50,7 +50,16 @@ }; taps = [ "ybeapps/sourcegit" ]; - brews = [ "borgbackup/tap/borgbackup-fuse" "firefoxpwa" "r" ]; + brews = [ + "borgbackup/tap/borgbackup-fuse" + { + name = "colima"; + restart_service = true; + } + "docker" + "firefoxpwa" + "r" + ]; casks = [ "alt-tab" "anki" From 4c10132893fd79dfa67a64419c7b167671ab2be5 Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Wed, 5 Feb 2025 13:21:19 -0600 Subject: [PATCH 4/9] fix: Actually remove Rancher and allow Colima to take its place --- configuration.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/configuration.nix b/configuration.nix index 19ea743..d2c423b 100644 --- a/configuration.nix +++ b/configuration.nix @@ -49,7 +49,7 @@ no_quarantine = true; }; - taps = [ "ybeapps/sourcegit" ]; + taps = [ "homebrew/services" "ybeapps/sourcegit" ]; brews = [ "borgbackup/tap/borgbackup-fuse" { @@ -77,7 +77,6 @@ "openrct2" "porting-kit" "qownnotes" - "rancher" "rstudio" "signal" "stats" From e0f34f557d1dbbfdc0791ed33f173855696357ea Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Thu, 6 Feb 2025 15:39:08 -0600 Subject: [PATCH 5/9] fix: Add Portal dependencies --- configuration.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/configuration.nix b/configuration.nix index d2c423b..ebe12da 100644 --- a/configuration.nix +++ b/configuration.nix @@ -59,6 +59,15 @@ "docker" "firefoxpwa" "r" + + # Portal built via hl2 source leak dependencies + "sdl2" + "freetype2" + "fontconfig" + "pkg-config" + "opus" + "libpng" + "libedit" ]; casks = [ "alt-tab" From 8069f8a44638198147b7cc3d740519c2c2ed5d3b Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Thu, 13 Feb 2025 23:04:08 -0600 Subject: [PATCH 6/9] feat: Add script to compile Portal from source --- configuration.nix | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/configuration.nix b/configuration.nix index ebe12da..4e49999 100644 --- a/configuration.nix +++ b/configuration.nix @@ -10,6 +10,41 @@ agenix.packages.aarch64-darwin.default iterm2 tailscale + (pkgs.writeShellScriptBin "portalpatch" '' + #!/usr/bin/env bash + # Automatically patch the game Portal for use on Apple Silicon using the + # hl2 source leak + # + # Instructions adapted from the Apple Gaming Wiki + # https://www.applegamingwiki.com/wiki/Half-Life_2#Native + # + # Note that this script **does not** download the dependencies from + # Homebrew: that is assumed to be handled by nix-darwin + HL2_SOURCE_DIR=$(mktemp -d) + HL2_DEST_DIR=$(mktemp -d) + + git clone --recursive https://github.com/nillerusr/source-engine "$HL2_SOURCE_DIR" + cd "$HL2_SOURCE_DIR" || exit 1 + + export PKG_CONFIG_PATH="/opt/homebrew/opt/jpeg/lib/pkgconfig" + + python3 waf configure -T release --prefix="" --build-games=portal && \ + python3 waf build && \ + python3 waf install --destdir "$HL2_DEST_DIR" + + PORTAL_GAME_DIR="$HOME/Library/Application Support/Steam/steamapps/common/Portal" + mv "$PORTAL_GAME_DIR/bin" "$PORTAL_GAME_DIR/bin.bak" + mv "$PORTAL_GAME_DIR/portal/bin" "$PORTAL_GAME_DIR/portal/bin.bak" + mv "$PORTAL_GAME_DIR/hl2_osx" "$PORTAL_GAME_DIR/hl2_osx.bak" + + cp -r "$HL2_DEST_DIR/bin" "$PORTAL_GAME_DIR/bin" + cp -r "$HL2_DEST_DIR/portal/bin" "$PORTAL_GAME_DIR/portal/bin" + cp -r "$HL2_DEST_DIR/hl2_launcher" "$PORTAL_GAME_DIR/hl2_osx" + + cp "$PORTAL_GAME_DIR/steam_appid.txt" "$PORTAL_GAME_DIR/hl2/steam_appid.txt" + + cd -1 || exit 1 + '') ]; # Use a custom configuration.nix location. From caa4615ad92cade51630f1a7bba4a34f75241738 Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Fri, 14 Feb 2025 11:06:33 -0600 Subject: [PATCH 7/9] Add KDE Connect custom cask --- configuration.nix | 1 + kdeconnect@nightly.rb | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 kdeconnect@nightly.rb diff --git a/configuration.nix b/configuration.nix index 4e49999..1881a2f 100644 --- a/configuration.nix +++ b/configuration.nix @@ -133,6 +133,7 @@ "ybeapps/sourcegit/sourcegit" "zed" "zotero" + "./kdeconnect@nightly.rb" ]; masApps = { "Bitwarden" = 1352778147; diff --git a/kdeconnect@nightly.rb b/kdeconnect@nightly.rb new file mode 100644 index 0000000..57a8d81 --- /dev/null +++ b/kdeconnect@nightly.rb @@ -0,0 +1,25 @@ +# frozen_string_literal: true + +cask 'kdeconnect@nightly' do + version :latest + sha256 :no_check + + arch arm: 'arm64', intel: 'x86_64' + url "https://cdn.kde.org/ci-builds/network/kdeconnect-kde/master/macos-#{arch}/kdeconnect-kde-master-4780-macos-clang-#{arch}.dmg" + + name 'KDE Connect' + desc 'Enables all your devices to communicate with each other' + homepage 'https://kdeconnect.kde.org/' + + app 'kdeconnect-indicator.app' + + zap trash: [ + '~/Library/Preferences/org.kde.kdeconnect.plist', + '~/Library/Preferences/kdeconnect', + '~/Library/Application Scripts/org.kde.kdeconnect', + '~/Library/Caches/kdeconnect.sms', + '~/Library/Caches/kdeconnect.daemon', + '~/Library/Caches/kdeconnect.daemon/kdeconnect', + '~/Library/Caches/kdeconnect-indicator' + ] +end From 95ab58c2004944036233464e1a6a3772ec233d00 Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Fri, 14 Feb 2025 12:21:41 -0600 Subject: [PATCH 8/9] Switch to external tap for kdeconnect --- configuration.nix | 12 ++++++++++-- kdeconnect@nightly.rb | 25 ------------------------- 2 files changed, 10 insertions(+), 27 deletions(-) delete mode 100644 kdeconnect@nightly.rb diff --git a/configuration.nix b/configuration.nix index 1881a2f..921a342 100644 --- a/configuration.nix +++ b/configuration.nix @@ -84,7 +84,15 @@ no_quarantine = true; }; - taps = [ "homebrew/services" "ybeapps/sourcegit" ]; + taps = [ + "homebrew/services" + "ybeapps/sourcegit" + { + name = "millironx/millironx"; + clone_target = + "https://code.millironx.com/millironx/homebrew-millironx.git"; + } + ]; brews = [ "borgbackup/tap/borgbackup-fuse" { @@ -113,6 +121,7 @@ "firefox" "freetube" "inkscape" + "kdeconnect@nightly" "logseq" "macfuse" "musescore" @@ -133,7 +142,6 @@ "ybeapps/sourcegit/sourcegit" "zed" "zotero" - "./kdeconnect@nightly.rb" ]; masApps = { "Bitwarden" = 1352778147; diff --git a/kdeconnect@nightly.rb b/kdeconnect@nightly.rb deleted file mode 100644 index 57a8d81..0000000 --- a/kdeconnect@nightly.rb +++ /dev/null @@ -1,25 +0,0 @@ -# frozen_string_literal: true - -cask 'kdeconnect@nightly' do - version :latest - sha256 :no_check - - arch arm: 'arm64', intel: 'x86_64' - url "https://cdn.kde.org/ci-builds/network/kdeconnect-kde/master/macos-#{arch}/kdeconnect-kde-master-4780-macos-clang-#{arch}.dmg" - - name 'KDE Connect' - desc 'Enables all your devices to communicate with each other' - homepage 'https://kdeconnect.kde.org/' - - app 'kdeconnect-indicator.app' - - zap trash: [ - '~/Library/Preferences/org.kde.kdeconnect.plist', - '~/Library/Preferences/kdeconnect', - '~/Library/Application Scripts/org.kde.kdeconnect', - '~/Library/Caches/kdeconnect.sms', - '~/Library/Caches/kdeconnect.daemon', - '~/Library/Caches/kdeconnect.daemon/kdeconnect', - '~/Library/Caches/kdeconnect-indicator' - ] -end From a504430d1525326a8a3a0d5053f6f858eded26ad Mon Sep 17 00:00:00 2001 From: "Thomas A. Christensen II" <25492070+MillironX@users.noreply.github.com> Date: Fri, 14 Feb 2025 12:22:15 -0600 Subject: [PATCH 9/9] Install ollama via Homebrew --- configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/configuration.nix b/configuration.nix index 921a342..b011928 100644 --- a/configuration.nix +++ b/configuration.nix @@ -127,6 +127,7 @@ "musescore" "nextcloud" "obs" + "ollama" "openrct2" "porting-kit" "qownnotes"