Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bardisty/dotfiles
:penguin: dotfiles - Linux config files (beets, cmus, dunst, git, GnuPG, i3, mpv, ranger, rofi, sxhkd, X11, zsh)
https://github.com/bardisty/dotfiles
atom beets cmus dotfiles dunst git gnupg i3 inox linux mpv ranger rofi sxhkd x11 zsh
Last synced: 8 days ago
JSON representation
:penguin: dotfiles - Linux config files (beets, cmus, dunst, git, GnuPG, i3, mpv, ranger, rofi, sxhkd, X11, zsh)
- Host: GitHub
- URL: https://github.com/bardisty/dotfiles
- Owner: bardisty
- Created: 2016-09-06T23:18:12.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-11-22T02:34:37.000Z (about 6 years ago)
- Last Synced: 2024-08-13T07:15:50.914Z (4 months ago)
- Topics: atom, beets, cmus, dotfiles, dunst, git, gnupg, i3, inox, linux, mpv, ranger, rofi, sxhkd, x11, zsh
- Language: Shell
- Homepage: https://git.io/etc
- Size: 384 KB
- Stars: 11
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- jimsghstars - bardisty/dotfiles - :penguin: dotfiles - Linux config files (beets, cmus, dunst, git, GnuPG, i3, mpv, ranger, rofi, sxhkd, X11, zsh) (Shell)
README
# dotfiles
> Linux config files (beets, cmus, dunst, git, GnuPG, i3, mpv, ranger, rofi,
> sxhkd, X11, zsh)```text
dP dP .8888b oo dP
88 88 88 " 88
.d888b88 .d8888b. d8888P 88aaa dP 88 .d8888b. .d8888b.
88' `88 88' `88 88 88 88 88 88ooood8 Y8ooooo.
88. .88 88. .88 88 88 88 88 88. ... 88
.----------- `88888P8 `88888P' dP dP dP dP `88888P' `88888P' ----------.
|:::::::::::::.......::......::::..:::..:::::..:..::......:::......::::::::::::|
|::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|
|::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|
|------------------------------------------------------------------------------|
| beets | music tagger & library organizer beet(1) |
| cmus | c* music player cmus(1) |
| dunst | notification daemon dunst(1) |
| git | revision control system git(1) |
| gnupg | gnu privacy guard suite gpg2(1), gpg-agent(1), dirmngr(8) |
| i3 | window manager i3(1) |
| i3blocks | flexible scheduler for i3bar i3blocks(1) |
| inox | chromium browser (inox-patchset) chromium-browser(1) |
| mpv | media player mpv(1) |
| ranger | file manager ranger(1) |
| rofi | run launcher, window switcher, etc. rofi(1) |
| sxhkd | simple x hotkey daemon sxhkd(1) |
| x11 | x window system x(7), xinit(1), xserver(1) |
| zsh | z shell zshall(1) |
`------------------------------------------------------------------------------'
```## Quickstart
1. Clone the repository into your home directory:
`git clone --recurse-submodules --jobs 4 https://github.com/bardisty/dotfiles ~/dotfiles`
2. `cd` into the repository:
`cd ~/dotfiles`
3. Use [GNU Stow](https://www.gnu.org/software/stow/) to create and manage
the required symlinks:`stow ` e.g., `stow mpv`
## Stow
[Stow](https://www.gnu.org/software/stow/) can be installed with your
package manager, or you can [build it from source](https://savannah.gnu.org/git/?group=stow).By default, [Stow](https://www.gnu.org/software/stow/) will create symlinks
in the parent directory of the current working directory. If your current
working directory is `~/dotfiles` and you run `stow mpv`, the following
symlinks will be created:```text
~/.config/mpv/scripts => ../../dotfiles/mpv/.config/mpv/scripts
~/.config/mpv/shaders => ../../dotfiles/mpv/.config/mpv/shaders
~/.config/mpv/input.conf => ../../dotfiles/mpv/.config/mpv/input.conf
~/.config/mpv/mpv.conf => ../../dotfiles/mpv/.config/mpv/mpv.conf
```Stow doesn't print anything when a command succeeds. To see
what's going on behind the scenes, pass in the verbose option (`-v`):`stow -v mpv`
```text
$ stow -v mpv
LINK: .config/mpv/scripts => ../../dotfiles/mpv/.config/mpv/scripts
LINK: .config/mpv/shaders => ../../dotfiles/mpv/.config/mpv/shaders
LINK: .config/mpv/input.conf => ../../dotfiles/mpv/.config/mpv/input.conf
LINK: .config/mpv/mpv.conf => ../../dotfiles/mpv/.config/mpv/mpv.conf
```### Delete
To delete any symlinks created by Stow, pass in the *delete* option (`-D`):
`stow -D mpv`
```text
$ stow -v -D mpv
UNLINK: .config/mpv/scripts
UNLINK: .config/mpv/shaders
UNLINK: .config/mpv/input.conf
UNLINK: .config/mpv/mpv.conf
```### Restow
If new files or folders are added and need to be symlinked, or if obsolete
symlinks in the target tree need to be pruned, pass in the *restow* option
(`-R`):`stow -R mpv`
```text
$ stow -v -R mpv
UNLINK: .config/mpv/scripts
UNLINK: .config/mpv/shaders
UNLINK: .config/mpv/input.conf
UNLINK: .config/mpv/mpv.conf
LINK: .config/mpv/scripts => ../../dotfiles/mpv/.config/mpv/scripts (reverts previous action)
LINK: .config/mpv/shaders => ../../dotfiles/mpv/.config/mpv/shaders (reverts previous action)
LINK: .config/mpv/input.conf => ../../dotfiles/mpv/.config/mpv/input.conf (reverts previous action)
LINK: .config/mpv/mpv.conf => ../../dotfiles/mpv/.config/mpv/mpv.conf (reverts previous action)
LINK: .config/mpv/some-new-dir => ../../dotfiles/mpv/.config/mpv/some-new-dir
```### Target
Stow's default target directory is the parent of the current working
directory. To change the target directory, pass in the *target* option
(`-t`).E.g., to install Zsh configs for the root user:
`sudo stow -t /root zsh`
```text
$ sudo stow -v -t /root zsh
LINK: .zsh.d => ../home/bah/dotfiles/zsh/.zsh.d
LINK: .zprofile => ../home/bah/dotfiles/zsh/.zprofile
LINK: .zshrc => ../home/bah/dotfiles/zsh/.zshrc
LINK: .zshenv => ../home/bah/dotfiles/zsh/.zshenv
```To delete the symlinks created in `/root`, pass in the *delete* option
(`-D`) as well as the *target* option (`-t`):`sudo stow -t /root -D zsh`
```text
$ sudo stow -v -t /root -D zsh
UNLINK: .zsh.d
UNLINK: .zprofile
UNLINK: .zshrc
UNLINK: .zshenv
```### More info
For more information on Stow, see `stow -h`, `man stow`, or `info stow`.