4 Commits
Author SHA1 Message Date
diginaut a31a626bd1 Made the ocr script executable 2026-08-30 19:47:56 +02:00
diginaut d6558bd601 The SSH config generator code as separate script 2026-08-30 19:47:17 +02:00
diginaut 5607a426c0 Don't forget those 2026-08-30 19:37:34 +02:00
diginaut 1388b7485d CachyOS variants 2026-08-30 19:35:24 +02:00
3 changed files with 31 additions and 2 deletions
+14 -2
View File
@@ -5,7 +5,7 @@ After having my homedirs in subversion for years, moved this collection to Git [
To install:
```
```bash
mkdir ~/.dot
cd ~/.dot
clone <url>
@@ -44,6 +44,8 @@ ln -s ../.dot/dotfiles/.config/starship.toml
To have the full experience, install all of these:
Debian/Ubuntu etc.:
```bash
sudo apt install git curl vim-nox fzf ripgrep exuberant-ctags fish grc tmux htop direnv
# needed for building vim plugins:
@@ -52,6 +54,16 @@ sudo apt install cmake build-essential
sudo apt install mc
```
CachyOS/Arch:
```bash
sudo pacman -Syu curl vim-nox fzf ripgrep ctags fish grc tmux htop direnv
# needed for building vim plugins:
sudo pacman -Syu cmake make
# also, this classic:
sudo pacman -Syu mc
```
and maybe install a nice colour theme for your terminal from https://gogh-co.github.io/Gogh/ - I use argonaut with a black background myself.
@@ -71,7 +83,7 @@ In tmux, do `infocmp > screen-256color`. Add the line `kf16=\E[17;2~,` and compi
The `update_repos` script takes the `~/.git_repos` config file and lets you update and clone your projects automatically (or at least in a batch). In the example the first four repos are located in ~/workspace/projects/github, and the other two in workspace/projects/others and workspace/projects/private respectively; then the workspace and group are empty, so mydocs is cloned into the homedir. At the moment, only paths relative to the user's homedir are supported.
```
```ini
workspace=workspace/projects
group=github
git@github.com:aquatix/ns-api.git
Regular → Executable
View File
+17
View File
@@ -0,0 +1,17 @@
#!/bin/bash
# SSH config merge
if [ -e ~/.ssh/config.d ]; then
#if find ~/.ssh/config.d -mindepth 1 -print -quit | grep -q .; then
# Do we have config files in that directory?
if find ~/.ssh/config.d -print -quit | grep -q .; then
newestconfig=$(find ~/.ssh/config.d/* -printf '%TY-%Tm-%Td %.8TT %p\n' | sort -r | head -n1 | awk '{print $3}')
if [ "$newestconfig" -nt ~/.ssh/config ]; then
# We found a config that's newer than the generated config file, re-generate
[ -e ~/.ssh/config ] && mv ~/.ssh/config ~/.ssh/config.bak.$(date -Is)
# Lets preserve order, so you can have 00_generic 10_homestuff 20_work1 21_work2 and such
find ~/.ssh/config.d/* -type f -print0 | sort -z | xargs -0 -n1 cat > ~/.ssh/config
chmod 600 ~/.ssh/config
fi
fi
fi