From 09c77d126ed643eff3832bf119e75fb7c73b40a8 Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Thu, 10 Sep 2026 16:23:31 +0100 Subject: [PATCH] Switch to apple containers Signed-off-by: Marcus Noble --- home/.dotfiles/aliases | 14 +++++++++++++- home/.dotfiles/environment | 3 ++- install.sh | 14 +++++++++++++- other-files/container/config.toml | 4 ++++ 4 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 other-files/container/config.toml diff --git a/home/.dotfiles/aliases b/home/.dotfiles/aliases index 1932d71..d1013cd 100644 --- a/home/.dotfiles/aliases +++ b/home/.dotfiles/aliases @@ -145,4 +145,16 @@ git() { fi } -alias hermes='docker run --rm -it -v ~/.hermes:/opt/data nousresearch/hermes-agent' + +docker() { + if [ "$1" = "run" ]; then # Git clone then cd into new directory + shift + container run --dns 192.168.1.3 $@ + elif [ "$1" = "build" ]; then # Sign all commits + shift + container build --dns 192.168.1.3 $@ + else + container $@ + fi +} + diff --git a/home/.dotfiles/environment b/home/.dotfiles/environment index b0a8d0f..628c867 100644 --- a/home/.dotfiles/environment +++ b/home/.dotfiles/environment @@ -30,7 +30,8 @@ export BAT_STYLE="grid,header" export TZ_LIST="Europe/Berlin;Europe/Sofia;UTC" # Docker -export DOCKER_HOST=$(docker context inspect --format='{{.Endpoints.docker.Host}}') +# export DOCKER_HOST=$(docker context inspect --format='{{.Endpoints.docker.Host}}') +export DOCKER_HOST=unix:///opt/homebrew/var/run/socktainer/.socktainer/container.sock # Brew - Prevent updating all packages when installing a new one export HOMEBREW_NO_AUTO_UPDATE=1 diff --git a/install.sh b/install.sh index 105ba84..3803c29 100755 --- a/install.sh +++ b/install.sh @@ -36,7 +36,7 @@ BREW_TOOLS=( pulumi/tap/pulumi kubeseal fluxcd/tap/flux ical-buddy baobab watch crane openssh siderolabs/talos/talosctl civo/tools/civo raspberry-pi-imager gron ssup2/tap/kpexec opentofu visual-studio-code 1password-cli scw smartmontools - firefox signal slack ffmpeg openscad tsh colima docker docker-buildx nordvpn + firefox signal slack ffmpeg openscad tsh docker docker-buildx nordvpn 1password tailscale-app witr nklmilojevic/sofka/sofka ) # Brew tools only available / needed on Mac @@ -46,6 +46,7 @@ MAC_BREW_TOOLS=( mqtt-explorer raycast bettertouchtool calibre kdenlive royal-tsx tableplus homebrew/cask/todoist ultimaker-cura webtorrent pika pearcleaner spotmenu jordanbaird-ice utm TheBoredTeam/boring-notch/boring-notch + container socktainer ) CARGO_TOOLS=( bottom ) NODE_TOOLS=( git-split-diffs ) @@ -205,6 +206,17 @@ case "${OSTYPE}" in sudo networksetup -setdnsservers "Wi-Fi" 127.0.0.1 printf " ✅\n" + # 3, Apple Container config & socktainer service + mkdir -p "/Users/${USER}/.config/container" + f=$(fulllink "./other-files/container/config.toml") + dst="/Users/${USER}/.config/container/config.toml" + printf "Copying ${f}=>${dst}" + cp ${f} ${dst} + printf " ✅\n" + printf "Starting socktainer service" + brew services restart socktainer 1>/dev/null + printf " ✅\n" + ;; esac diff --git a/other-files/container/config.toml b/other-files/container/config.toml new file mode 100644 index 0000000..55c5e57 --- /dev/null +++ b/other-files/container/config.toml @@ -0,0 +1,4 @@ +# Not currently used +# Requires: https://github.com/apple/container/pull/1614 +[dns] +nameservers = ["1.1.1.1"]