Config files for various tools I use, or have used in the past, such as fish, git, jed, and Visual Studio Code.
It's very unlikely that anyone will want to use this directly; the more interesting directories are:
- fish - configuration and startup files for fish shell.
- bin - bash scripts for various things.
- fish functions - more scripts, generally those that are awkward/impossible to write in bash.
- etc/git/templates - git hooks
- docker - Dockerfile
The idempotent install script handles a few different operating systems and package managers (past and present) has a some interesting constructions that may be useful.
Getting locale-related errors when going through these steps?
- Generate missing locales:
locale-gen en_GB.UTF-8
| Ubuntu | OS X |
|---|---|
sudo apt-get install git-core |
xcode-select --install (or install Xcode) |
No
sudo? (If, for example, you're on a Gandi VPS.)
- Login as root:
ssh root@server- Install
sudo:apt-get install sudo- Edit
/etc/sudoers:visudo- Add the line:
mjs ALL=(ALL) NOPASSWD:ALL
sudo apt-get install fish
Via brew:
brew install fish
chsh -s /bin/bash # .bash_profile runs fish if available (zsh is default)
Don't already have
brew?If you want to install into
/opt/homebrew...See http://brew.sh.
If you want to install somewhere else ...
See alternative installs. (Installing into
~/local/homebrew, and symlinkingbrewinto~/local/homebrew/binmight be a good option.)Note that the binaries are symlinked into whatever directory
brewis installed into. (So ifbrewis symlinked into/usr/local/bin, then all executables installed bybrewwill be symlinked into there as well.) This can be useful if you want to installbrewin your home directory, but symlink binaries into/usr/local/bin.
$ cd $HOME
$ git clone https://github.com/ithinkihaveacat/dotfiles.git .dotfiles
$ cd $HOME/.dotfiles
# Pull from ro repo, push to rw
$ git remote set-url origin --push [email protected]:ithinkihaveacat/dotfiles.git
$ ./update # if macOS and brew in PATH
$ PATH=~/local/homebrew/bin:/opt/homebrew/bin:$PATH ./update # if macOS and brew not in PATH
# On OS X, logout and login againNote that update may be destructive—if you have "unmanaged" files in
locations such as ~/Library/KeyBindings or ~/Library/Fonts, they will be
wiped out!
(Though it is safe to run update multiple times.)
If you have problems installing jed from packages, it can be installed
manually via something like:
# slang
wget http://www.jedsoft.org/snapshots/slang-pre2.3.1-40.tar.gz
# extract
./configure --prefix=$HOME/local --libdir=$HOME/local/homebrew/lib --includedir=$HOME/local/homebrew/include --without-x --without-png
make
make install
# jed
wget http://www.jedsoft.org/snapshots/jed-pre0.99.20-111.tar.gz
# extract
./configure --prefix=$HOME/local --libdir=$HOME/local/homebrew/lib --includedir=$HOME/local/homebrew/include --without-x
make
make install(See this script for some tips on how to change some of these settings automatically.)
Import the [etc/Solarized Dark.terminal](etc/Solarized Dark.terminal) profile,
and set it to the "default". (See
this script for
some information on how to do this automatically.)
- Open System Preferences > Keyboard
- Open Shortcuts > Services > File and Folders, enable "New Terminal at Folder".
- Open Text, disable "Correct spelling automatically".
If signed into the same iCloud account, these should be shared automatically.
Otherwise, see
Back up and share text replacements on Mac.
Text replacements themselves are stored in [etc/Text Replacements.plist](etc/Text Replacements.plist)
Configure via "Keychain Access" preferences.
Control Center | Sound | Always Show in Menu Bar.
$ sudo tmutil disablelocal
https://developer.apple.com/download/more/?q=Additional%20Tools
This provides a way to simulate degraded network conditions (more info).
See https://ia.net/writer/templates/.
Via System Preferences.
See https://typography.guru/journal/awesome-catalina-fonts/.
Get emacs keybindings across all gtk apps (source):
$ gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs"Set the compose key to Caps Lock
so that you can e.g. hold down Caps Lock and type --- to get an mdash.
Open "System Settings", change the fonts as below:
Run the following gconftool commands to set
Solarized colours correctly:
http://stackoverflow.com/a/7734960
Use "Profile Preferences" to change the default font.
Open "Keyboard Shortcuts" and unselect "Enable menu access keys". (Otherwise Alt is used for accessing the menu.)
Edit "Default" profile, change custom default terminal size to 100 columns, 60 rows.
- Use the Raspberry Pi Imager https://www.raspberrypi.com/software/ to
install the OS on an SD card.
- Remember to enable SSH access (somewhere in the advanced options).
- Enable WiFi in the advanced options if necessary.
- Install
fish:sudo apt-get install fish. - Install
tailscale:curl -fsSL https://tailscale.com/install.sh | shhttps://tailscale.com/download/linux - Install
node: since no recent versions are available viaapt, use usefnm. https://github.com/Schniz/fnm?tab=readme-ov-file#installation - (Optional) Disable WiFi: add
dtoverlay=disable-wifi,dtoverlay=disable-btto/boot/firmware/config.txt(see https://raw.githubusercontent.com/raspberrypi/firmware/master/boot/overlays/README) - (Optional) Change the hostname: edit
/etc/hostnameand/etc/hosts, then reboot.
Recommendation: use VS Code's Remote - SSH extension to edit files.
Put them in ~/local/bin, and man pages (if you have them) in
~/local/share/man/man?. (man --path lists the man page search path.)
