This commit is contained in:
Brian Zalewski 2023-07-31 05:31:48 +00:00
parent 9ff6720e4e
commit 9b371fd926
14 changed files with 126 additions and 71 deletions

View file

@ -37,6 +37,7 @@ docker:
wireguard: wireguard:
serverUrl: megabyte.space serverUrl: megabyte.space
internalSubnet: 10.93.92.0 internalSubnet: 10.93.92.0
kubernetesHost: kochab
macosRemoteLogin: 'on' macosRemoteLogin: 'on'
netdataClaimURL: https://app.netdata.cloud netdataClaimURL: https://app.netdata.cloud
themeparkTheme: aquamarine themeparkTheme: aquamarine

View file

@ -47,6 +47,8 @@ dot_local/konsole/
dot_local/share/kde4/ dot_local/share/kde4/
dot_local/share/xfce4/ dot_local/share/xfce4/
dot_var/ dot_var/
.var/
dot_VirtualBox/
dot_Xresources dot_Xresources
{{- end }} {{- end }}

View file

@ -21,6 +21,7 @@ Brewfile
.krew .krew
.lesshst .lesshst
.m2 .m2
.npm/
.npmrc .npmrc
.parallels/ .parallels/
.pearrc .pearrc
@ -34,6 +35,7 @@ Brewfile
.tinypng .tinypng
.tmux.conf .tmux.conf
.tmux.conf.local .tmux.conf.local
.Trash/
.v8flags* .v8flags*
.vagrant.d/ .vagrant.d/
.viminfo .viminfo

View file

@ -14,6 +14,12 @@
{{ includeTemplate "universal/profile-before" }} {{ includeTemplate "universal/profile-before" }}
{{ includeTemplate "universal/logg-before" }} {{ includeTemplate "universal/logg-before" }}
### Configure Firewall
if [ -d /Applications ] && [ -d /System ]; then
logg info 'Disabling the block all incoming traffic option in the system Firewall settings'
/usr/libexec/ApplicationFirewall/socketfilterfw --setblockall off || logg error 'Failed to disable incoming traffic block in the system Firewall' && logg info 'Manually disable the option under "System Preferences" > "Network" > "Firewall" > "Incoming Traffic Block Toggle"'
fi
### System upgrade on macOS ### System upgrade on macOS
if [ -d /Applications ] && [ -d /Library ] && [ -z "$NO_RESTART" ]; then if [ -d /Applications ] && [ -d /Library ] && [ -z "$NO_RESTART" ]; then
if command -v gtimeout > /dev/null; then if command -v gtimeout > /dev/null; then

View file

@ -24,7 +24,7 @@
<DHCPServer networkName="HostInterfaceNetworking-vboxnet0" IPAddress="192.168.56.100" networkMask="255.255.255.0" lowerIP="192.168.56.101" upperIP="192.168.56.254" enabled="1"/> <DHCPServer networkName="HostInterfaceNetworking-vboxnet0" IPAddress="192.168.56.100" networkMask="255.255.255.0" lowerIP="192.168.56.101" upperIP="192.168.56.254" enabled="1"/>
</DHCPServers> </DHCPServers>
</NetserviceRegistry> </NetserviceRegistry>
<SystemProperties defaultMachineFolder="C:\Users\{{ .user.username }}\.local\virtualbox" defaultHardDiskFormat="VDI" VRDEAuthLibrary="VBoxAuth" webServiceAuthLibrary="VBoxAuth" LogHistoryCount="3" proxyMode="0" exclusiveHwVirt="true"/> <SystemProperties defaultMachineFolder="/home/{{ .user.username }}/.local/virtualbox" defaultHardDiskFormat="VDI" VRDEAuthLibrary="VBoxAuth" webServiceAuthLibrary="VBoxAuth" LogHistoryCount="3" proxyMode="0" exclusiveHwVirt="true"/>
<USBDeviceFilters/> <USBDeviceFilters/>
</Global> </Global>
</VirtualBox> </VirtualBox>

View file

@ -2,71 +2,72 @@
## Deprecated Plugins ## Deprecated Plugins
* "dart-code.dart-code", Creates a ~/.dart and ~/.dartServer folder. Does not respect XDG spec. The following plugins were tested but removed because the `extensions.json` already includes about 200 plugins. The plugins were tested and removed if they added too much menu clutter, created unwieldly home folder additions, or were not deemed useful.
* "dart-code.flutter",
// "ibm.codewind", Creates a ~/.codewind folder. Does not respect XDG spec. ```json
// "ibm.ibm-developer", {
// "jfrog.jfrog-vscode-extension", Creates a ~/.jfrog-vscode-extension folder. Does not respect XDG spec. "aic.docify",
// "lightrun.lightrunplugin-saas", Creates a ~/.lightrun folder. Does not respect XDG spec.
// "platformio.platformio-ide", Creates ~/.platformio folder. Does not respect XDG spec.
// "robocorp.robocorp-code", Creates a ~/.robocorp and ~/.robocorp-code folder. Does not respect XDG spec.
// "robocorp.robotframework-lsp",
// "sonarsource.sonarlint-vscode", Creates a ~/.sonarlint folder. Does not respect XDG spec.
// "sprkldev.sprkl-vscode", Creates a ~/.sprkl folder. Does not respect XDG spec.
// Creates ~/.console-ninja folder -- needs to respect XDG
// "wallabyjs.console-ninja",
"gitpod.gitpod-remote-ssh", // Bunch of errors like this during install [gitpod-remote-ssh]: Couldn't find message for key openPreview.
// "leonardssh.vscord", Discord presence plugin (requires embedding key in settings.json)
"ms-toolsai.vscode-ai-remote", [vscode-ai]: Couldn't find message for key azureml.internal.activate.title.
"ms-toolsai.vscode-ai",
"circleci.circleci", // Unneeded (not using CircleCI currently)
"wallabyjs.console-ninja",
"webhint.vscode-webhint",
"statelyai.stately-vscode",
"lottiefiles.vscode-lottie",
"logerfo.gitlab-notifications",
"antonreshetov.masscode-assistant",
"circleci.circleci",
"bridgecrew.checkov",
"amazonwebservices.aws-toolkit-vscode", "amazonwebservices.aws-toolkit-vscode",
"okteto.kubernetes-context", "antonreshetov.masscode-assistant",
"okteto.remote-kubernetes", "appland.appmap",
"azure-automation.vscode-azureautomation",
"balazs4.gitlab-pipeline-monitor",
"bridgecrew.checkov",
"chiro2001.digital-ocean-manager",
"circleci.circleci", // Unneeded (not using CircleCI currently)
"dart-code.dart-code", // Creates a ~/.dart and ~/.dartServer folder. Does not respect XDG spec.
"dart-code.flutter",
"formulahendry.docker-explorer",
"getporter.porter-vscode",
"gitpod.gitpod-desktop",
"gitpod.gitpod-remote-ssh", // Bunch of errors like this during install [gitpod-remote-ssh]: Couldn't find message for key openPreview.
"google-home.google-home-extension",
"ibm.codewind", // Creates a ~/.codewind folder. Does not respect XDG spec.
"ibm.ibm-developer",
"idered.npm",
"infracost.infracost",
"ionic.ionic",
"jasonn-porch.gitlab-mr",
"jfrog.jfrog-vscode-extension", // Creates a ~/.jfrog-vscode-extension folder. Does not respect XDG spec.
"jsayol.firebase-explorer",
"leonardssh.vscord", // Discord presence plugin (requires embedding key in settings.json)
"lightrun.lightrunplugin-saas", // Creates a ~/.lightrun folder. Does not respect XDG spec.
"logerfo.gitlab-notifications",
"lottiefiles.vscode-lottie",
"mindaro-dev.file-downloader", "mindaro-dev.file-downloader",
"mindaro.mindaro", "mindaro.mindaro",
"redhat.vscode-server-connector", "mongodb.mongodb-vscode",
"redhat.vscode-tekton-pipelines", "ms-kubernetes-tools.kind-vscode",
"chiro2001.digital-ocean-manager", "ms-toolsai.vscode-ai-remote", // Error encountered: [vscode-ai]: Couldn't find message for key azureml.internal.activate.title.
"ms-toolsai.vscode-ai-remote",
"ms-toolsai.vscode-ai", "ms-toolsai.vscode-ai",
"ms-vscode.powershell", "ms-vscode.powershell",
"gitpod.gitpod-desktop", "msazurermtools.azurerm-vscode-tools",
"ms-kubernetes-tools.kind-vscode", "nrwl.angular-console",
"wasteamaccount.webtemplatestudio-dev-nightly", "okteto.kubernetes-context",
"okteto.remote-kubernetes",
"owenfarrell.vscode-vault",
"platformio.platformio-ide", // Creates ~/.platformio folder. Does not respect XDG spec.
"pwabuilder.pwa-studio",
"rangav.vscode-thunder-client", "rangav.vscode-thunder-client",
"rapidapi.vscode-rapidapi-client", "rapidapi.vscode-rapidapi-client",
"sapos.yeoman-ui",
"google-home.google-home-extension",
"stepsize.stepsize",
"leonardssh.vscord",
"aic.docify",
"jsayol.firebase-explorer",
"balazs4.gitlab-pipeline-monitor",
"jasonn-porch.gitlab-mr",
"teamhub.teamhub",
"infracost.infracost",
"mongodb.mongodb-vscode",
"pwabuilder.pwa-studio",
"sidekick.sidekick-debugger",
"appland.appmap",
"teamsdevapp.ms-teams-vscode-extension",
"saposs.app-studio-toolkit",
"azure-automation.vscode-azureautomation",
"formulahendry.docker-explorer",
"msazurermtools.azurerm-vscode-tools",
"idered.npm",
"redhat.vscode-openshift-connector", "redhat.vscode-openshift-connector",
"redhat.vscode-redhat-account", "redhat.vscode-redhat-account",
"redhat.vscode-rsp-ui", "redhat.vscode-rsp-ui",
"ionic.ionic", "redhat.vscode-server-connector",
"nrwl.angular-console", "redhat.vscode-tekton-pipelines",
"owenfarrell.vscode-vault", "robocorp.robocorp-code", // Creates a ~/.robocorp and ~/.robocorp-code folder. Does not respect XDG spec.
"robocorp.robotframework-lsp",
"sapos.yeoman-ui",
"saposs.app-studio-toolkit",
"sidekick.sidekick-debugger",
"sonarsource.sonarlint-vscode", // Creates a ~/.sonarlint folder. Does not respect XDG spec.
"sprkldev.sprkl-vscode", // Creates a ~/.sprkl folder. Does not respect XDG spec.
"statelyai.stately-vscode",
"stepsize.stepsize",
"teamhub.teamhub",
"teamsdevapp.ms-teams-vscode-extension",
"wallabyjs.console-ninja", // Creates ~/.console-ninja folder -- needs to respect XDG
"wasteamaccount.webtemplatestudio-dev-nightly",
"webhint.vscode-webhint"
}
```

View file

@ -11,7 +11,6 @@
"attilabuti.vscode-mjml", "attilabuti.vscode-mjml",
"bbenoist.vagrant", "bbenoist.vagrant",
"beauallison.brew-services", "beauallison.brew-services",
"getporter.porter-vscode",
"bierner.color-info", "bierner.color-info",
"bierner.markdown-emoji", "bierner.markdown-emoji",
"bmewburn.vscode-intelephense-client", "bmewburn.vscode-intelephense-client",

View file

@ -0,0 +1,5 @@
{
"autoLog":true,
"showSingleInlineValue":false,
"pro":false
}

View file

@ -0,0 +1,13 @@
{{- if and (or (and (stat (joinPath .host.home ".config" "age" "chezmoi.txt")) (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "CLOUDFLARE_R2_ID"))) (env "CLOUDFLARE_R2_ID")) (or (and (stat (joinPath .host.home ".config" "age" "chezmoi.txt")) (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "CLOUDFLARE_R2_SECRET"))) (env "CLOUDFLARE_R2_SECRET")) (ne .user.cloudflare.r2 "") -}}
# MEGABYTE LABS MANAGED S3
[{{ .user.username}}-s3]
access_key_id = {{ if (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "CLOUDFLARE_R2_ID")) }}{{- includeTemplate "secrets/CLOUDFLARE_R2_ID" | decrypt | trim -}}{{ else }}{{- env "CLOUDFLARE_R2_ID" -}}{{ end }}
acl = private
endpoint = {{ .user.cloudflare.r2 }}.r2.cloudflarestorage.com
provider = Cloudflare
region = auto
secret_access_key = {{ if (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "CLOUDFLARE_R2_SECRET")) }}{{- includeTemplate "secrets/CLOUDFLARE_R2_SECRET" | decrypt | trim -}}{{ else }}{{- env "CLOUDFLARE_R2_SECRET" -}}{{ end }}
type = s3
# MEGABYTE LABS MANAGED S3
EOT
{{- end -}}

View file

@ -402,6 +402,10 @@ export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc"
### Whalebrew ### Whalebrew
export WHALEBREW_CONFIG_DIR="$XDG_CONFIG_HOME/whalebrew" export WHALEBREW_CONFIG_DIR="$XDG_CONFIG_HOME/whalebrew"
### .zsh_sessions
# Source: https://apple.stackexchange.com/questions/427561/macos-zsh-sessions-zsh-history-and-setopt-append-history
export SHELL_SESSIONS_DISABLE=1
### CloudFlare Wrangler ### CloudFlare Wrangler
export WRANGLER_INSTALL_PATH="$XDG_DATA_HOME/wrangler" export WRANGLER_INSTALL_PATH="$XDG_DATA_HOME/wrangler"
export WRANGLER_HOME="$XDG_DATA_HOME/wrangler" export WRANGLER_HOME="$XDG_DATA_HOME/wrangler"

View file

@ -49,25 +49,42 @@ fi
MOUNT_LOWERCASE="$(echo "$MOUNT" | tr "[:upper:]" "[:lower:]")" MOUNT_LOWERCASE="$(echo "$MOUNT" | tr "[:upper:]" "[:lower:]")"
unset AWS_CA_BUNDLE unset AWS_CA_BUNDLE
export PATH="$PATH:/usr/local/bin:/usr/bin" export PATH="$PATH:/usr/local/bin:/usr/bin"
# TODO: Only launch with --rc-web-gui if the servers hostname is the {{ .kubernetesHost }}
# TODO: Add more secure authentication method
sudo rclone --config="$CONFIG_FOLDER/rclone.conf" \ sudo rclone --config="$CONFIG_FOLDER/rclone.conf" \
mount \ mount \
--cache-tmp-upload-path="$CACHE_FOLDER/$MOUNT-upload" \ --allow-other \
--buffer-size 4G \
--bwlimit=40M \
--cache-chunk-path="$CACHE_FOLDER/$MOUNT-chunks" \ --cache-chunk-path="$CACHE_FOLDER/$MOUNT-chunks" \
--cache-db-path="$CACHE_FOLDER/$MOUNT-db" \
--cache-dir="$CACHE_FOLDER/$MOUNT-vfs" \
--cache-info-age=60m \
--cache-tmp-upload-path="$CACHE_FOLDER/$MOUNT-upload" \
--cache-workers=8 \ --cache-workers=8 \
--cache-writes \ --cache-writes \
--cache-dir="$CACHE_FOLDER/$MOUNT-vfs" \ --checkers=16 \
--cache-db-path="$CACHE_FOLDER/$MOUNT-db" \
--daemon \ --daemon \
--noapplexattr \ --dir-cache-time 24h \
--dir-cache-time=60m \
--drive-use-trash \
--exclude-from="$RCLONE_IGNORE" \
--log-file="$LOG_FILE" \ --log-file="$LOG_FILE" \
--no-modtime \ --no-modtime \
--drive-use-trash \ --noapplexattr \
--rc \
--rc-pass rclone \
--rc-user rclone \
--rc-web-gui \
--stats=0 \ --stats=0 \
--checkers=16 \ --vfs-cache-max-age 1000h \
--bwlimit=40M \ --vfs-cache-max-age 1000h \
--dir-cache-time=60m \ --vfs-cache-max-size 140G \
--vfs-cache-mode full \ --vfs-cache-mode full \
--vfs-cache-poll-interval 24h \
--vfs-fast-fingerprint \
--vfs-read-ahead 128M \
--vfs-read-chunk-size 16M \
--vfs-read-chunk-size-limit 128M \
--volname "$MOUNT" \ --volname "$MOUNT" \
--cache-info-age=60m \
--filter-from="$RCLONE_IGNORE" \
"$MOUNT_LOWERCASE":"$MOUNT_LOWERCASE" "$MOUNT_PATH" "$MOUNT_LOWERCASE":"$MOUNT_LOWERCASE" "$MOUNT_PATH"

1
home/dot_quokka.tmpl Normal file
View file

@ -0,0 +1 @@
{{ .host.home }}/.config/quokka

View file

@ -26,6 +26,10 @@ export WORDCHARS=${WORDCHARS//\/}
export PROMPT_EOL_MARK= export PROMPT_EOL_MARK=
export TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S\ncpu\t%P' export TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S\ncpu\t%P'
### .zcompdump
# Source: https://www.reddit.com/r/zsh/comments/nwxcg4/store_zcompdump_in_specific_directory/
export ZSH_COMPDUMP="${XDG_CACHE_HOME:-$HOME/.cache}/zsh/zcompdump-$ZSH_VERSION"
### Antigen ### Antigen
export ADOTDIR="$HOME/.local/antigen" export ADOTDIR="$HOME/.local/antigen"
@ -390,7 +394,7 @@ fi
### Homebrew ZSH Completions ### Homebrew ZSH Completions
# Must be sourced before compinit / Oh-My-ZSH inclusion # Must be sourced before compinit / Oh-My-ZSH inclusion
FPATH="$HOMEBREW_PREFIX/share/zsh/site-functions:${FPATH}" export FPATH="$HOMEBREW_PREFIX/share/zsh/site-functions:${FPATH}"
### ZSH compinit ### ZSH compinit
autoload -Uz +X compinit && compinit -d "${XDG_CACHE_HOME:-$HOME/.cache}/zsh/zcompdump-$ZSH_VERSION" autoload -Uz +X compinit && compinit -d "${XDG_CACHE_HOME:-$HOME/.cache}/zsh/zcompdump-$ZSH_VERSION"