From 94cf925937665f200e431f93b9413c0f74aba488 Mon Sep 17 00:00:00 2001 From: Ambrose Chua Date: Mon, 30 Mar 2020 23:26:47 +0800 Subject: [PATCH] Cleanup unused files and docs --- .Xresources | 69 ---------- .bar/05-nowplaying.5s.sh | 119 ---------------- .bar/08-clipboard-history.5s.sh | 102 -------------- .bar/10-addr.15s.sh | 20 --- .bar/11-ping.30s.sh | 43 ------ fedora.sh => .fedoraguide.sh | 0 .gnupg/gpg-agent.conf | 2 - .gnupg/gpg.conf | 203 +--------------------------- .hushlogin | 0 .install/pure.sh | 6 +- .install/zsh-autosuggestions.sh | 2 +- .install/zsh-syntax-highlighting.sh | 2 +- .zshrc | 6 +- LICENSE | 21 --- newlayout.md | 42 ------ 15 files changed, 15 insertions(+), 622 deletions(-) delete mode 100644 .Xresources delete mode 100755 .bar/05-nowplaying.5s.sh delete mode 100755 .bar/08-clipboard-history.5s.sh delete mode 100755 .bar/10-addr.15s.sh delete mode 100755 .bar/11-ping.30s.sh rename fedora.sh => .fedoraguide.sh (100%) delete mode 100644 .hushlogin delete mode 100644 LICENSE delete mode 100644 newlayout.md diff --git a/.Xresources b/.Xresources deleted file mode 100644 index eaa7c81..0000000 --- a/.Xresources +++ /dev/null @@ -1,69 +0,0 @@ -URxvt.saveLines: 4096 -URxvt.secondaryScreen: 1 -URxvt.secondaryScroll: 0 -URxvt.scrollBar: false -URxvt.font: xft:Ubuntu Mono:size=11 -URxvt.internalBorder: 4 -URxvt.internalBorderColor: #002b36 -URxvt.transparent: false -URxvt.depth: 32 -URxvt.background: rgba:2000/2000/2000/dd00 - -// https://raw.githubusercontent.com/solarized/xresources/master/Xresources.dark - -#define S_base03 #002b36 -#define S_base02 #073642 -#define S_base01 #586e75 -#define S_base00 #657b83 -#define S_base0 #839496 -#define S_base1 #93a1a1 -#define S_base2 #eee8d5 -#define S_base3 #fdf6e3 - -*background: S_base03 -*foreground: #999999 -*fadeColor: S_base03 -*cursorColor: S_base1 -*pointerColorBackground:S_base01 -*pointerColorForeground:S_base1 - -#define S_yellow #b58900 -#define S_orange #cb4b16 -#define S_red #dc322f -#define S_magenta #d33682 -#define S_violet #6c71c4 -#define S_blue #268bd2 -#define S_cyan #2aa198 -#define S_green #859900 - -!! black dark/light -*color0: S_base02 -*color8: S_base03 - -!! red dark/light -*color1: S_red -*color9: S_orange - -!! green dark/light -*color2: S_green -*color10: S_base01 - -!! yellow dark/light -*color3: S_yellow -*color11: S_base00 - -!! blue dark/light -*color4: S_blue -*color12: S_base0 - -!! magenta dark/light -*color5: S_magenta -*color13: S_violet - -!! cyan dark/light -*color6: S_cyan -*color14: S_base1 - -!! white dark/light -*color7: S_base2 -*color15: S_base3 diff --git a/.bar/05-nowplaying.5s.sh b/.bar/05-nowplaying.5s.sh deleted file mode 100755 index 48222a6..0000000 --- a/.bar/05-nowplaying.5s.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/bash - -# Now playing -# v1.1 -# Adam Kenyon -# adampk90 -# Shows and controls the music that is now playing. Currently supports Spotify, iTunes, and Vox. -# https://pbs.twimg.com/media/CbKmTS7VAAA84VS.png:small -# -# - -# first, determine if there's an app that's playing or paused -#apps=(Spotify iTunes Vox) -apps=(Spotify iTunes) -playing="" -paused="" - -for i in "${apps[@]}"; do - # is the app running? - app_state=$(osascript -e "application \"$i\" is running") - - # shellcheck disable=SC2181 - if [ "$?" != "0" ]; then - # just exit if there was an error determining the app's state - # (the app might be in the middle of quitting) - exit - fi - - if [ "$app_state" = "true" ] && [ "$track" = "" ]; then - # yes, it's running - # is it playing music currently? - app_playing=$(osascript -e "tell application \"$i\" to player state as string") - if [ "$app_playing" = "paused" ] || [ "$app_playing" = "0" ]; then - # nope, it's paused - paused="$i" - elif [ "$app_playing" = "playing" ] || [ "$app_playing" = "1" ]; then - # yes, it's playing - playing="$i" - fi - fi -done - - -# open a specified app -if [ "$1" = "open" ]; then - osascript -e "tell application \"$2\" to activate" - exit -fi -# play/pause -if [ "$1" = "play" ] || [ "$1" = "pause" ]; then - osascript -e "tell application \"$2\" to $1" - exit -fi -# next/previous -if [ "$1" = "next" ] || [ "$1" = "previous" ]; then - osascript -e "tell application \"$2\" to $1 track" - # tell spotify to hit "Previous" twice so it actually plays the previous track - # instead of just starting from the beginning of the current one - if [ "$playing" = "Spotify" ] && [ "$1" = "previous" ]; then - osascript -e "tell application \"$2\" to $1 track" - fi - osascript -e "tell application \"$2\" to play" - exit -fi - - -# start outputting information to bitbar -if [ "$playing" = "" ] && [ "$paused" = "" ]; then - # nothing is even paused - echo ":headphones:" -else - # something is playing or is paused - track="" - artist="" - - if [ "$playing" = "" ]; then - echo "$paused is paused | color=gray" - echo "---" - app="$paused" - else - app="$playing" - fi - - track_query="name of current track" - artist_query="artist of current track" - # Vox uses a different syntax for track and artist names - if [ "$app" = "Vox" ]; then - track_query="track" - artist_query="artist" - fi - - # output the track and artist - track=$(osascript -e "tell application \"$app\" to $track_query") - artist=$(osascript -e "tell application \"$app\" to $artist_query") - - echo "$track | length=40" | awk -F '\ -' '{print $1}' - if [ "$playing" != "" ]; then - echo "---" - fi - echo "$artist" - - if [ "$playing" != "" ]; then - echo "Now playing on $app | color=gray bash='$0' param1=open param2=$app terminal=false" - echo "---" - echo "⏸ Pause | bash='$0' param1=pause param2=$app refresh=true terminal=false" - else - echo "---" - echo "▶️ Play | bash='$0' param1=play param2=$app refresh=true terminal=false" - fi - - echo "⏭ Next | bash='$0' param1=next param2=$app refresh=true terminal=false" - echo "⏮ Previous | bash='$0' param1=previous param2=$app refresh=true terminal=false" -fi - -# add an Open option for each service -echo "---" -for i in "${apps[@]}"; do - echo "Open $i | bash='$0' param1=open param2=$i terminal=false" -done diff --git a/.bar/08-clipboard-history.5s.sh b/.bar/08-clipboard-history.5s.sh deleted file mode 100755 index ec08368..0000000 --- a/.bar/08-clipboard-history.5s.sh +++ /dev/null @@ -1,102 +0,0 @@ -#!/bin/bash - -# Clipboard History -# Jason Tokoph (jason@tokoph.net) -# jtokoph -# Tracks up to 10 clipboard items. -# 1.0 -# Clicking on a previous item will copy it back to the clipboard. -# Clicking "Clear history" will remove history files from the filesystem. - -# Hack for language not being set properly and unicode support -export LANG="${LANG:-en_US.UTF-8}" - -tmp_dir="/tmp/bitbar-clipboard-history_$USER" - -# Make sure temporary directory exists -mkdir -p "$tmp_dir" &> /dev/null - -# If user clicked on a history item, copy it back to the clipboard -if [[ "$1" = "copy" ]]; then - if [[ -e "$tmp_dir/item-$2.pb" ]]; then - pbcopy < "$tmp_dir/item-$2.pb" - osascript -e "display notification \"Copied to Clipboard\" with title \"BitBar Clipboard History\"" &> /dev/null - fi - exit -fi - -# If user clicked clear, remove history items -if [[ "$1" = "clear" ]]; then - rm -f "$tmp_dir"/item-*.pb - osascript -e "display notification \"Cleared clipboard history\" with title \"BitBar Clipboard History\"" &> /dev/null - exit -fi - -CLIPBOARD=$(pbpaste) -# Check to see if we have text on the clipboard -if [ "$CLIPBOARD" != "" ]; then - - # Check if the current clipboard content is differnt from the previous - echo "$CLIPBOARD" | diff "$tmp_dir/item-current.pb" - &> /dev/null - - # If so, the diff command will exit wit a non-zero status - # shellcheck disable=SC2181 - if [ "$?" != "0" ]; then - - # Move the history backwards - for i in {9..1} - do - j=$((i+1)) - - if [ -e "$tmp_dir/item-$i.pb" ]; then - cp "$tmp_dir/item-$i.pb" "$tmp_dir/item-$j.pb" &> /dev/null - fi - done - - # Move the previous value into the history - cp "$tmp_dir/item-current.pb" "$tmp_dir/item-1.pb" &> /dev/null - - # Save current value - echo "$CLIPBOARD" > "$tmp_dir/item-current.pb" - fi -fi - -# Print icon -echo '✄' -echo "---" - -# Print up to 36 characters of the current clipboard -echo "Current" - -content="$(pbpaste | head -c 36)" -if (( $(pbpaste | wc -c) > 36 )); then - content="$content..." -fi -echo "${content//|/ }" - -echo -echo "Send to Pushhook |bash='$HOME/.bin/pushhook' param1=clipboard terminal=false" - -# Show history section if historical files exist -if [[ -e "$tmp_dir/item-1.pb" ]]; then - - echo "---" - - echo 'History (Click to copy)' - - # Print up to 36 characters of each historical item - for i in {1..10} - do - if [ -e "$tmp_dir/item-$i.pb" ]; then - content="$(head -c 36 "$tmp_dir/item-$i.pb")" - if (( $(wc -c "$tmp_dir/item-$i.pb" | awk '{print $1}') > 36 )); then - content="$content..." - fi - echo "${content//|/ }|bash='$0' param1=copy param2=$i refresh=true terminal=false" - fi - done - - echo "---" - - echo "Clear History |bash='$0' param1=clear refresh=true terminal=false " -fi diff --git a/.bar/10-addr.15s.sh b/.bar/10-addr.15s.sh deleted file mode 100755 index 8f72ab2..0000000 --- a/.bar/10-addr.15s.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -ACTIVE_INTERFACE=$(route get 1.1.1.1 | grep interface | cut -d ' ' -f 4) - -ADDR=$(ifconfig $ACTIVE_INTERFACE | grep 'inet ' | cut -d ' ' -f 2) -ADDR6=$(ifconfig $ACTIVE_INTERFACE | grep 'inet6 ' | grep -v 'fe80' | cut -d ' ' -f 2) - -echo "$ADDR | size=9" - -echo --- - -for iface in $(ifconfig -lu); do - IFCONFIG_OUTPUT=$(ifconfig $iface) - echo "iface $iface" - echo "$IFCONFIG_OUTPUT" | grep ether | sed -e 's/^[[:space:]]*//' - echo "$IFCONFIG_OUTPUT" | grep 'inet ' | sed -e 's/^[[:space:]]*//' - echo "$IFCONFIG_OUTPUT" | grep 'inet6 ' | grep -v 'fe80' | sed -e 's/^[[:space:]]*//' - echo --- -done - diff --git a/.bar/11-ping.30s.sh b/.bar/11-ping.30s.sh deleted file mode 100755 index 38e8d50..0000000 --- a/.bar/11-ping.30s.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash - -SPEED_FILE=/tmp/speedtest.log - -if [[ "$1" == "speedtest" ]]; then - echo "Testing..." > /tmp/speedtest.log - OUTPUT="$(/usr/local/bin/speedtest --bytes --timeout 10 --simple)" - echo "$OUTPUT" > /tmp/speedtest.log - echo "Updated: $(date '+%a %l:%M:%S %p')" >> /tmp/speedtest.log - osascript -e "display notification \"$OUTPUT\" with title \"BitBar Speedtest\"" &> /dev/null - exit -fi - -PING_ADDR=1.1.1.1 -PING_STATS=$(ping -c 10 -i 0.1 $PING_ADDR | tail -n 2) - -PING_NAMES=$(echo "$PING_STATS" | tail -n 1 | cut -d ' ' -f 2) -PING_TIMES=$(echo "$PING_STATS" | tail -n 1 | cut -d ' ' -f 4) - -loss=$(echo "$PING_STATS" | head -n 1 | cut -d ' ' -f 7) -avg=$(echo $PING_TIMES | cut -d '/' -f 2 | tr -d $'\n') - -printf "%.1fms %.0f%% | size=9\n" $avg ${loss%?} - -echo --- - -echo "address $PING_ADDR" - -echo "loss $loss" - -for i in {1..3}; do - name=$(echo $PING_NAMES | cut -d '/' -f $i | tr -d $'\n') - time=$(echo $PING_TIMES | cut -d '/' -f $i | tr -d $'\n') - echo "$name ${time}ms" -done - -echo --- - -if [[ -f /tmp/speedtest.log ]]; then - cat $SPEED_FILE -fi - -echo "Run Speedtest | bash='$0' param1='speedtest' terminal=false refresh=true" diff --git a/fedora.sh b/.fedoraguide.sh similarity index 100% rename from fedora.sh rename to .fedoraguide.sh diff --git a/.gnupg/gpg-agent.conf b/.gnupg/gpg-agent.conf index a1d9475..52eb1dc 100644 --- a/.gnupg/gpg-agent.conf +++ b/.gnupg/gpg-agent.conf @@ -1,5 +1,3 @@ enable-ssh-support -write-env-file -use-standard-socket default-cache-ttl 600 max-cache-ttl 7200 diff --git a/.gnupg/gpg.conf b/.gnupg/gpg.conf index 424b544..cd4bdf0 100644 --- a/.gnupg/gpg.conf +++ b/.gnupg/gpg.conf @@ -1,198 +1,9 @@ -# Options for GnuPG -# Copyright 1998, 1999, 2000, 2001, 2002, 2003, -# 2010 Free Software Foundation, Inc. -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This file is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Unless you specify which option file to use (with the command line -# option "--options filename"), GnuPG uses the file ~/.gnupg/gpg.conf -# by default. -# -# An options file can contain any long options which are available in -# GnuPG. If the first non white space character of a line is a '#', -# this line is ignored. Empty lines are also ignored. -# -# See the man page for a list of options. - -# Uncomment the following option to get rid of the copyright notice - -#no-greeting - -# If you have more than 1 secret key in your keyring, you may want to -# uncomment the following option and set your preferred keyid. - default-key AE677CFF65D984EB1F0DC24CDB3FFE064995FE8D - -# If you do not pass a recipient to gpg, it will ask for one. Using -# this option you can encrypt to a default key. Key validation will -# not be done in this case. The second form uses the default key as -# default recipient. - -#default-recipient some-user-id -#default-recipient-self - -# By default GnuPG creates version 4 signatures for data files as -# specified by OpenPGP. Some earlier (PGP 6, PGP 7) versions of PGP -# require the older version 3 signatures. Setting this option forces -# GnuPG to create version 3 signatures. - -#force-v3-sigs - -# Because some mailers change lines starting with "From " to ">From " -# it is good to handle such lines in a special way when creating -# cleartext signatures; all other PGP versions do it this way too. -# To enable full OpenPGP compliance you may want to use this option. - -#no-escape-from-lines - -# When verifying a signature made from a subkey, ensure that the cross -# certification "back signature" on the subkey is present and valid. -# This protects against a subtle attack against subkeys that can sign. -# Defaults to --no-require-cross-certification. However for new -# installations it should be enabled. - -require-cross-certification - - -# If you do not use the Latin-1 (ISO-8859-1) charset, you should tell -# GnuPG which is the native character set. Please check the man page -# for supported character sets. This character set is only used for -# metadata and not for the actual message which does not undergo any -# translation. Note that future version of GnuPG will change to UTF-8 -# as default character set. - -#charset utf-8 - -# Group names may be defined like this: -# group mynames = paige 0x12345678 joe patti -# -# Any time "mynames" is a recipient (-r or --recipient), it will be -# expanded to the names "paige", "joe", and "patti", and the key ID -# "0x12345678". Note there is only one level of expansion - you -# cannot make an group that points to another group. Note also that -# if there are spaces in the recipient name, this will appear as two -# recipients. In these cases it is better to use the key ID. - -#group mynames = paige 0x12345678 joe patti - -# Some old Windows platforms require 8.3 filenames. If your system -# can handle long filenames, uncomment this. - -#no-mangle-dos-filenames - -# Lock the file only once for the lifetime of a process. If you do -# not define this, the lock will be obtained and released every time -# it is needed - normally this is not needed. - -#lock-once - -# GnuPG can send and receive keys to and from a keyserver. These -# servers can be HKP, email, or LDAP (if GnuPG is built with LDAP -# support). -# -# Example HKP keyservers: -# hkp://keys.gnupg.net -# -# Example LDAP keyservers: -# ldap://pgp.surfnet.nl:11370 -# -# Regular URL syntax applies, and you can set an alternate port -# through the usual method: -# hkp://keyserver.example.net:22742 -# -# If you have problems connecting to a HKP server through a buggy http -# proxy, you can use keyserver option broken-http-proxy (see below), -# but first you should make sure that you have read the man page -# regarding proxies (keyserver option honor-http-proxy) -# -# Most users just set the name and type of their preferred keyserver. -# Note that most servers (with the notable exception of -# ldap://keyserver.pgp.com) synchronize changes with each other. Note -# also that a single server name may actually point to multiple -# servers via DNS round-robin. hkp://keys.gnupg.net is an example of -# such a "server", which spreads the load over a number of physical -# servers. To see the IP address of the server actually used, you may use -# the "--keyserver-options debug". - -#keyserver -#keyserver http://http-keys.gnupg.net -#keyserver mailto:pgp-public-keys@keys.nl.pgp.net - -# Common options for keyserver functions: -# -# include-disabled = when searching, include keys marked as "disabled" -# on the keyserver (not all keyservers support this). -# -# no-include-revoked = when searching, do not include keys marked as -# "revoked" on the keyserver. -# -# verbose = show more information as the keys are fetched. -# Can be used more than once to increase the amount -# of information shown. -# -# use-temp-files = use temporary files instead of a pipe to talk to the -# keyserver. Some platforms (Win32 for one) always -# have this on. -# -# keep-temp-files = do not delete temporary files after using them -# (really only useful for debugging) -# -# honor-http-proxy = if the keyserver uses HTTP, honor the http_proxy -# environment variable -# -# broken-http-proxy = try to work around a buggy HTTP proxy -# -# auto-key-retrieve = automatically fetch keys as needed from the keyserver -# when verifying signatures or when importing keys that -# have been revoked by a revocation key that is not -# present on the keyring. -# -# no-include-attributes = do not include attribute IDs (aka "photo IDs") -# when sending keys to the keyserver. - -#keyserver-options auto-key-retrieve - -# Uncomment this line to display photo user IDs in key listings and -# when a signature from a key with a photo is verified. - -#show-photos - -# Use this program to display photo user IDs -# -# %i is expanded to a temporary file that contains the photo. -# %I is the same as %i, but the file isn't deleted afterwards by GnuPG. -# %k is expanded to the key ID of the key. -# %K is expanded to the long OpenPGP key ID of the key. -# %t is expanded to the extension of the image (e.g. "jpg"). -# %T is expanded to the MIME type of the image (e.g. "image/jpeg"). -# %f is expanded to the fingerprint of the key. -# %% is %, of course. -# -# If %i or %I are not present, then the photo is supplied to the -# viewer on standard input. If your platform supports it, standard -# input is the best way to do this as it avoids the time and effort in -# generating and then cleaning up a secure temp file. -# -# The default program is "xloadimage -fork -quiet -title 'KeyID 0x%k' stdin" -# On Mac OS X and Windows, the default is to use your regular JPEG image -# viewer. -# -# Some other viewers: -# photo-viewer "qiv %i" -# photo-viewer "ee %i" -# photo-viewer "display -title 'KeyID 0x%k'" -# -# This one saves a copy of the photo ID in your home directory: -# photo-viewer "cat > ~/photoid-for-key-%k.%t" -# -# Use your MIME handler to view photos: -# photo-viewer "metamail -q -d -b -c %T -s 'KeyID 0x%k' -f GnuPG" - +charset utf-8 +no-comments no-emit-version -#keyserver +keyid-format 0xlong +with-fingerprint +require-cross-certification +no-symkey-cache +use-agent diff --git a/.hushlogin b/.hushlogin deleted file mode 100644 index e69de29..0000000 diff --git a/.install/pure.sh b/.install/pure.sh index 9219181..3e5009a 100755 --- a/.install/pure.sh +++ b/.install/pure.sh @@ -7,9 +7,9 @@ echo echo "Installing pure-prompt for zsh..." echo -mkdir -p ~/.zsh/functions -curl -fLo ~/.zsh/functions/prompt_pure_setup \ +mkdir -p ~/.config/zsh/functions +curl -fLo ~/.config/zsh/functions/prompt_pure_setup \ https://github.com/sindresorhus/pure/raw/v$PURE_VERSION/pure.zsh -curl -fLo ~/.zsh/functions/async \ +curl -fLo ~/.config/zsh/functions/async \ https://github.com/sindresorhus/pure/raw/v$PURE_VERSION/async.zsh diff --git a/.install/zsh-autosuggestions.sh b/.install/zsh-autosuggestions.sh index 1e36136..ecc0698 100755 --- a/.install/zsh-autosuggestions.sh +++ b/.install/zsh-autosuggestions.sh @@ -7,4 +7,4 @@ echo echo "Installing zsh-autosuggestions..." echo -git clone --depth 1 -b v$ZSH_AUTOSUGGESTIONS_VERSION https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions +git clone --depth 1 -b v$ZSH_AUTOSUGGESTIONS_VERSION https://github.com/zsh-users/zsh-autosuggestions ~/.config/zsh/zsh-autosuggestions diff --git a/.install/zsh-syntax-highlighting.sh b/.install/zsh-syntax-highlighting.sh index 71a4b98..18f1350 100755 --- a/.install/zsh-syntax-highlighting.sh +++ b/.install/zsh-syntax-highlighting.sh @@ -7,4 +7,4 @@ echo echo "Installing zsh-syntax-highlighting..." echo -git clone --depth 1 -b $ZSH_SYNTAX_HIGHLIGHTING_VERSION https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.zsh/zsh-syntax-highlighting +git clone --depth 1 -b $ZSH_SYNTAX_HIGHLIGHTING_VERSION https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.config/zsh/zsh-syntax-highlighting diff --git a/.zshrc b/.zshrc index 2734b80..5601f25 100644 --- a/.zshrc +++ b/.zshrc @@ -20,7 +20,7 @@ bindkey -v bindkey "^R" history-incremental-pattern-search-backward # zsh imports -fpath=( $HOME/.zsh/functions $fpath ) +fpath=( $HOME/.config/zsh/functions $fpath ) # ls colors if [[ "$(uname -s)" == "Darwin" ]]; then @@ -54,13 +54,13 @@ autoload -U promptinit; promptinit prompt pure # autosuggestions -source $HOME/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh +source $HOME/.config/zsh/zsh-autosuggestions/zsh-autosuggestions.zsh export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10' export ZSH_AUTOSUGGEST_USE_ASYNC=true bindkey '^e' autosuggest-execute # syntax highlighting -source $HOME/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source $HOME/.config/zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh # thefuck export PATH="$HOME/.local/bin:$PATH" diff --git a/LICENSE b/LICENSE deleted file mode 100644 index daa461d..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2018 Ambrose Chua - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/newlayout.md b/newlayout.md deleted file mode 100644 index 4afdc7a..0000000 --- a/newlayout.md +++ /dev/null @@ -1,42 +0,0 @@ - -# New OS Layout - -I wanted a new layout for macOS and Fedora to share the same home directory, so here I am using ZFS on Linux and ZFS on macOS side by side. - -## Experiment 1: Shared ZFS Home - -I set up a very typical ZFS mount with encryption and compression, then quickly came to realise that I can't mount at different folders for each OS separately without using legacy mounts. So, I resorted to symlinks: - -``` -~ -❯ ls -lah /home -total 12K -drwxr-xr-x. 3 root root 4.0K Oct 30 15:59 . -dr-xr-xr-x. 21 root root 4.0K Oct 30 16:45 .. -lrwxrwxrwx. 1 root root 19 Oct 30 01:26 ambrose -> /dpool/home/ambrose -drwx------. 14 cooladmin cooladmin 4.0K Oct 30 02:13 cooladmin - -~ -❯ sudo zfs list -[sudo] password for ambrose: -NAME USED AVAIL REFER MOUNTPOINT -dpool 11.7G 89.0G 520K /dpool -dpool/home 11.7G 89.0G 456K /dpool/home -dpool/home/ambrose 11.7G 89.0G 11.7G /dpool/home/ambrose -tankpool 14.9G 3.50T 858K /tankpool -[other tankpool mounts omitted] -``` - -This worked fine, until I realised that Fedora's tool `toolbox` doesn't deal with symlinked home directories. Instead, because it resolves the canonical folder of the home directory, it does not properly mount `/home/ambrose` into `/home/ambrose` but mounts `/dpool/home/ambrose` into `/dpool/home/ambrose` - -Also, I found that Fedora Silverblue has a symlink from `/home` to `/var/home` where the actual home folder is mounted, following conventions. This is neat, I'm going to see if I can use this as a mount point. - -## Experiment 2: Moved Mountpoint to /var/home - -This didn't work. I misread toolbox: it needs `/home` to be a symlink, not the user's `$HOME`. I can't do that because I want to keep a usable user in the home directory. Seems like I'd have to patch toolbox... - -`.local/bin/toolbox` is my monkeypatched toolbox, just to make it work for now. I still need to figure out how to rewrite the home-link part to work with home directories like mine, without breaking everything else. The problem is toolbox currently canonicalises all homedir links but only sets up the proper links for `/var/home` links. - -Funny bug, `yadm` likes to hardcode the home directory in Git. But this setup also allows me to set that hardcoded direcotry to `/var/home/ambrose` - -