ref: 9092f8e99f95831e8037a811dde3ead6c01172b0 dotfiles/README.md -rw-r--r-- 2.1 KiB
9092f8e9Jan Baudisch simplify bash 10 months ago


My personal dotfiles. CC0 licesensed, just pick out what you can use.


I handle everything via git, all files are relative to the home directory where the git repo is. .gitignore defines what gets included and what doesn't. This is not the most ergonomic way for a first time setup (e.g. new system), but the most pure solution and I don't want to use another tool for such a simple task.

Because it can be troublesome to have a git root in your home directory, I move .git to ._git and only bring it back to update something. Again, maybe not the most ergonomic thing to do, but simple and possibly easy to script.




Not used right now.


Stores the config containing my printer setup. Not really reusable.


Uses bass to source my bash-like profile, nothing more (for now).


Not used right now.


Not used right now.


Not used right now.


Not used right now.


I put all my executable scripts in .local/share/scripts, which is put into the $PATH by .profile.


Updates bedrock and the arch strata via trizen.

Uses sudo.


Updates the Rust toolchain via rustup and uses cargo-install to update all Cargo-installed crates.



  1. Fedora (dnf)
  2. Bedrock if available (brlupdate)
  3. Flatpak + removes unused
  4. Rust (rupdate)
  5. Android SDK
  6. Flutter + disables analytics

Uses sudo.

#Everything else


Just redirects to the general profile. .bash_profile sources .bashrc which in turn sources .profile.


.gitignore controlls which dotfiles get version-controlled.

.gitconfig contains global configurations for Git.


.profile contains the shell configuration. lsd is used as an ls replacement, Rust, Dart, Flutter and Android SDK are set up.

The following paths are used:

  • Android SDK: ~/.android/sdk
  • Dart: ~/.dart-sdk
  • Flutter: ~/.flutter-sdk

Also, GnuPG is configured to use a smartcard and provide SSH authentication.