{"id":16615211,"url":"https://github.com/carlfriedrich/dotfiles","last_synced_at":"2026-05-02T18:35:12.006Z","repository":{"id":45847792,"uuid":"450244234","full_name":"carlfriedrich/dotfiles","owner":"carlfriedrich","description":"Just some random nerd's dotfiles","archived":false,"fork":false,"pushed_at":"2025-07-02T13:44:34.000Z","size":43077,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-25T02:18:01.476Z","etag":null,"topics":["bash","dotfiles","dotfiles-linux","linux","linux-shell"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/carlfriedrich.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-01-20T20:14:31.000Z","updated_at":"2025-07-02T13:44:37.000Z","dependencies_parsed_at":"2023-10-16T16:55:57.263Z","dependency_job_id":"938e4243-459a-41a9-bbbf-8eac76362105","html_url":"https://github.com/carlfriedrich/dotfiles","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/carlfriedrich/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlfriedrich%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlfriedrich%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlfriedrich%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlfriedrich%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/carlfriedrich","download_url":"https://codeload.github.com/carlfriedrich/dotfiles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlfriedrich%2Fdotfiles/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268265875,"owners_count":24222527,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","dotfiles","dotfiles-linux","linux","linux-shell"],"created_at":"2024-10-12T02:08:54.054Z","updated_at":"2026-05-02T18:35:11.995Z","avatar_url":"https://github.com/carlfriedrich.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dotfiles\n\nThese [dotfiles][1] are managed with [rcm][2]. The repository contains\nconfiguration files as well as binaries of used helper tools (including `rcm`\nitself) in order to reduce dependencies and make installation easy.\n\n[1]: https://dotfiles.github.io/\n[2]: https://github.com/thoughtbot/rcm\n\n\n### Initial setup\n\nRun the following commands to install the dotfiles on a new machine:\n\n```shell\ngit clone https://github.com/carlfriedrich/dotfiles.git ~/.dotfiles\nRCRC=~/.dotfiles/rcrc PATH=~/.dotfiles/local/bin/:${PATH} ~/.dotfiles/local/bin/rcup -v\nexec bash -l\n```\n\n## Contained tools\n\nThe following tools are contained in these dotfiles in binary or script form:\n\n- [**bat**](https://github.com/sharkdp/bat)  \n  A `cat` clone with syntax highlighting, Git integration and line numbering\n\n- [**diff-so-fancy**](https://github.com/so-fancy/diff-so-fancy)  \n  Beautiful human readable diffs\n\n- [**exa**](https://github.com/ogham/exa)  \n  A modern replacement for `ls` with colours, icons and Git status\n\n- [**fd**](https://github.com/sharkdp/fd)  \n  User-friendly alternative to `find`\n\n- [**forgit**](https://github.com/wfxr/forgit)  \n  `fzf` integration for Git\n\n- [**fzf**](https://github.com/junegunn/fzf)  \n  A general-purpose command-line fuzzy finder\n\n- [**jless**](https://jless.io/)  \n  A command-line JSON viewer\n\n- [**kubectx**](https://github.com/ahmetb/kubectx)  \n  Power tools for `kubectl`\n\n- [**navi**](https://github.com/denisidoro/navi)  \n  Interactive cheatsheet tool\n\n- [**presenterm**](https://github.com/mfontanini/presenterm)  \n   A markdown terminal slideshow tool\n\n- [**print256colours**](https://gist.github.com/HaleTom/89ffe32783f89f403bba96bd7bcd1263)  \n  Print all 256 colours to the terminal\n\n- [**rcm**](https://github.com/thoughtbot/rcm)  \n  Tool for dotfiles management\n\n- [**ripgrep**](https://github.com/BurntSushi/ripgrep)  \n  Fast and user-friendly `grep` alternative\n\n- [**sd**](https://github.com/chmln/sd)  \n  Intuitive find \u0026 replace CLI, replacement for `sed`\n\n- [**starship**](https://github.com/starship/starship)  \n  Minimal, fast and infinitely customizable prompt\n\n- [**vscode-updateenv**](https://superuser.com/a/1613931/1036029)  \n  Make VS Code work in `screen` sessions\n\n- [**zoxide**](https://github.com/ajeetdsouza/zoxide)  \n  A `cd` replacement to quickly jump into recently used directories\n\n\n## Contained configuration\n\nHere is a list of tools that these dotfiles contain configuration for:\n\n- [**bash**](https://linux.die.net/man/1/bash)\n- [**cp**](https://linux.die.net/man/1/cp) / [**mv**](https://linux.die.net/man/1/mv)\n- [**flux**](https://fluxcd.io/flux/cmd/)\n- [**git**](https://linux.die.net/man/1/git)\n- [**history**](https://linux.die.net/man/1/history)\n- [**k9s**](https://k9scli.io/)\n- [**kubectl**](https://kubernetes.io/docs/reference/kubectl/)\n- [**ls**](https://linux.die.net/man/1/ls)\n- [**less**](https://linux.die.net/man/1/less)\n- [**man**](https://linux.die.net/man/1/man)\n- [**screen**](https://linux.die.net/man/1/screen)\n- [**tig**](https://github.com/jonas/tig)\n- [**tilde**](https://github.com/gphalkes/tilde)\n\n\n## Keybindings\n\nThese dotfiles come with a set of preconfigured bash keybindings:\n\n- **Interactive History search** \u003ckbd\u003e**Ctrl**\u003c/kbd\u003e+\u003ckbd\u003e**R**\u003c/kbd\u003e  \n  Opens an `fzf` window containing the bash history to interactively search for\n  previously executed commands. Press `Enter` to select a command and insert it\n  into your promt.\n\n- **Interactive file search** \u003ckbd\u003e**Ctrl**\u003c/kbd\u003e+\u003ckbd\u003e**T**\u003c/kbd\u003e  \n  Opens an `fzf` window containing all files within the current directory and\n  its subdirectories. Press `Enter` to select a file and insert it into your\n  prompt.\n\n- **Interactive find in files** \u003ckbd\u003e**Ctrl**\u003c/kbd\u003e+\u003ckbd\u003e**F**\u003c/kbd\u003e  \n  Opens an `fzf` window executing a `ripgrep` search in the current directory\n  using the entered search string. Press `Enter` to open the file in your\n  default editor. Press `Alt+Enter` to open it without closing the `fzf` window.\n  Press `Tab` to toggle a preview. Press `Ctrl+H` to toggle hidden files.\n\n- **Interactive git log** \u003ckbd\u003e**Ctrl**\u003c/kbd\u003e+\u003ckbd\u003e**G**\u003c/kbd\u003e  \n  Runs `git forgit` for interactive git history.\n\n- **Interactive cheat sheet** \u003ckbd\u003e**Ctrl**\u003c/kbd\u003e+\u003ckbd\u003e**Space**\u003c/kbd\u003e  \n  Opens `navi` for interactive selection of configured cheat sheets.\n\n\n## Dotfile management\n\n### Standard rcm commands\n\nThere are two essential commands from the [rcm][3] package that are used for\nmanaging the dotfiles:\n\n- [**`mkrc`**][4]  \n  Add a new file to the dotfiles directory. This should be called whenever a\n  dotfile shall be put under version control. Example:\n\n  ```shell\n  carl@desktop:~$ mkrc .myconfig\n  Moving...\n  '/home/carl/.myconfig' -\u003e '/home/carl/.dotfiles/myconfig'\n  Linking...\n  '/home/carl/.dotfiles/myconfig' -\u003e '/home/carl/.myconfig'\n  ```\n\n  Aftwards the new dotfile can be added and committed to git within the\n  `~/.dotfiles` directory.\n\n- [**`rcup`**][5]  \n  Update dotfiles. This should be called after pulling changes from the upstream\n  git repository in order to have them applied locally. Example:\n\n  ```shell\n  carl@desktop:~$ rcup\n  identical /home/carl/.bash_aliases\n  identical /home/carl/.bash_completion\n  identical /home/carl/.bashrc\n  '/home/carl/.dotfiles/myconfig' -\u003e '/home/carl/.myconfig'\n  ```\n\n[3]: https://github.com/thoughtbot/rcm\n[4]: http://thoughtbot.github.io/rcm/mkrc.1.html\n[5]: http://thoughtbot.github.io/rcm/rcup.1.html\n\n\n### Helper scripts\n\nTo make the handling of the dotfiles even easier, there are a few custom helper\nscripts in this repository:\n\n- **`sbrc`**  \n  Alias for `source ~/.bashrc`. This should be called after pulling upstream\n  changes in order to reload the `.bashrc` file for the current shell.\n\n- **`rcbl`**  \n  Searches for broken links to dotfiles in your home directory and lists them.\n  This should be called after `rcup` if any dotfiles have been moved, removed\n  or renamed upstream.\n\n- **`rcbld`**  \n  Deletes broken links to dotfiles in your home directory. This should be called\n  if `rcbl` reports broken links due to moved, removed or renamed dotfiles.\n\n- **`dv`**\n  Displays the dotfiles version using `git describe`.\n\n\n## Local customization\n\nExtensions to `.bashrc` and `.gitconfig` that shall not be under version control\ncan be configured in `~/.bashrc_local` and `~/.gitconfig_local`, respectively.\nThese files will automatically be loaded if they exist.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarlfriedrich%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarlfriedrich%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarlfriedrich%2Fdotfiles/lists"}