Dotfiles handled with chezmoi.
Go to file
Stefan Gaiselmann e8fb296426 .vimrc list adjustments by jarcher
Show listchars by default, but just for tabs and whitespace at the end of line.
2022-01-23 15:09:44 +01:00
bin Renamed update check script. 2022-01-22 18:17:43 +01:00
dot_bashrc.d Added additional file to initialize Rust applications. 2022-01-23 14:45:59 +01:00
private_dot_config Minor adjustment in solarize scheme and helper functions. 2021-12-17 18:49:10 +01:00
.chezmoi.toml.tmpl Changed PS1 creation to a more flexible solution. 2021-02-13 10:38:22 +01:00
.chezmoiignore Added vim ligthline plugin. 2020-11-08 16:56:24 +01:00
dot_bashrc_linux Added extension include. 2020-10-23 13:29:58 +02:00
dot_gitconfig.tmpl Added 'meld' as mergetool on Linux. 2021-06-09 10:54:18 +02:00
dot_vimrc .vimrc list adjustments by jarcher 2022-01-23 15:09:44 +01:00
README.adoc „README.adoc“ ändern 2020-11-12 19:46:52 +01:00
vim-lightline.tar.gz Added vim ligthline plugin. 2020-11-08 16:56:24 +01:00

Dotfiles managed with chezmoi

Initialization

TODO: how to handle a new linux system correctly.

Test with centos7-01:

  1. put executable to HOME dir

  2. add public ssh key to gitea user

  3. initialize with ./chezmoi init sdroid@gitea.sdroid.uber.space:heavy/dotfiles.git

  4. check what will happen with ./chezmoi diff

  5. apply it with ./chezmoi apply

After that a bin directory will exist (if not yet present before), move the executable to this dir to have it PATH.

add to .bashrc
# If not running interactively, don't do anything
# see https://stackoverflow.com/questions/12440287/scp-doesnt-work-when-echo-in-bashrc
[[ "$-" != *i* ]] && return

if [ -x ~/.bashrc.d/bashrc.init ]; then
    . ~/.bashrc.d/bashrc.init
fi

AWS Systeme (Draft)

TODO: create user file for initialization at provisioning

  1. install go sudo yum install -y golang golang-bin

  2. install git sudo yum install -y git-all

  3. install chezmoi from git repo (see below)

  4. check GOPATH and adjust if necessary

  5. initialize with chezmoi init https://gitea.sdroid.uber.space/heavy/dotfiles.git (Use 'heavy' as user).

  6. check what will happen with chezmoi diff

  7. TODO: vi .config/chezmoi/chezmoi.toml (Template is not correct)

  8. apply it with chezmoi apply

chezmoi installation
cd $(mktemp -d)
git clone --depth=1 https://github.com/twpayne/chezmoi.git
cd chezmoi
go install

New User

Better try modifications with a new user to keep the defaul user accessible to the system. See below links to proceed.

Uberspace

Alternative way to include .sshrc by detecting SSH connection.

# User specific aliases and functions

# test if the prompt var is not set
# See https://unix.stackexchange.com/questions/154395/running-scp-when-bashrc-of-remote-machine-includes-source-command
if [ -z "$PS1" ]; then
    # prompt var is not set, so this is *not* an interactive shell
    return
fi

if [ -f ~/.sshrc ] && [ -z "$SSH_CLIENT" ]; then
    echo "Not a ssh connection"
else
    echo "ssh client is present: $SSH_CLIENT"
    . ~/.sshrc
fi

cygwin

When using cygwin, the chezmoi executable has defaults for Windows. That means the default HOME dir is the Windows %USERPROFILE% directory. To provide the managed files to the cygwin path /home/user the target directory has to be adjusted while calling chezmoi.

H:\>chezmoi apply -D C:\cygwin64\home\user

H:\>chezmoi -D C:\cygwin64\home\user managed
C:\cygwin64\home\user\.gitconfig
C:\cygwin64\home\user\.solarize_colors
C:\cygwin64\home\user\.solarize_colors_base
C:\cygwin64\home\user\.sshrc
C:\cygwin64\home\user\.vimrc
C:\cygwin64\home\user\bin