An open API service indexing awesome lists of open source software.

https://github.com/phdenzel/dotfiles

Dotfiles for UNIX systems on bash/zsh and xorg/wayland
https://github.com/phdenzel/dotfiles

archlinux bash dotfiles emacs hyprland linux xmonad zsh

Last synced: 11 months ago
JSON representation

Dotfiles for UNIX systems on bash/zsh and xorg/wayland

Awesome Lists containing this project

README

          

# phdenzel's dotfiles

This is my collection of configuration files for a UNIX-based
operating system; a backup of settings, of sorts. In particular, it
features configurations for Emacs, zsh (and/or bash), XMonad (xorg),
and Hyprland (wayland).

Usually, these **dotfiles** are placed in the home folder (when
possible in `XDG_CONFIG_HOME=~/.config/`) where the corresponding
program looks for them, and overwrites potentially unwanted default
settings. So be careful when installing!
I started this repo for macOS in order to make it feel more like Linux
(back when *macOS Sierra 10.12.2* and *macOS High Sierra 10.13.1* were
the latest versions). These days however, I'm back on Linux (*Arch*
and *Pop!_OS*). I am currently (slowly) working on conditionals to
automatically make everything completely compatible from the 'git-go',
so to speak... but for now all user-specifics have to be manually
modified in `USERINFO` and copied into `~/.config/USERINFO`.

The repository can be cloned wherever you want; a natural place would
be `~/dotfiles`, i.e. the home folder.

**Warning**: Use with caution! Check the files first before
installing; especially all scripts in `installers/`. The files in
`etc/` and `utils/` are probably no use to anyone except me, but I
included them anyways, just in case somebody wants to change them for
their own use.

### Example
![Screenshot of my shell prompt](imgs/screenshot.png)

### Install

For full functionality, make sure you have `zsh` installed. E.g. on Arch linux

```bash
sudo pacman -S zsh
chsh -s /bin/zsh
```

To install the dotfiles simply run:

```bash
./bootstrap.sh
```
while in `dotfiles` (use `bootstrap.sh -h` to see all options).

```
Usage: bootstrap.sh [-c|--conf PATH] [-l|--bin-path PATH]
[-n|--dry-run] [-d|--diff] [-s|--skip]
[-b|--bin] [-e|--emacs] [-t|--themes]
[-x|--xmonad] [-w|--hypr]
[--source]

Bootstrap script for installing the phdenzel/dotfiles using rsync.

-h, --help Prints this message.
-c, --conf Sets the path where the configuration will be
installed. Default: $HOME/.config
-l, --bin-path Sets the path where the binaries will be installed,
resp. symlinked. Default: $HOME/local/bin
-n, --dry-run Runs all rsync commands in dry-run mode.
-d, --diff Shows all diffs between the already existing and
to-be-installed configurations;
only takes effect with the -n, --diff flag.
-s, --skip Skips installing all main dotfiles (when used with
e.g. -x, the script installs only the xmonad
configurations).
-b, --bin Installs/symlinks binaries from $HOME/dotfiles/bin
-e, --emacs Installs emacs configurations.
-t, --themes Installs the custom 'phd-dark' theme
(GTK, QT, highlight, etc.)
-x, --xmonad Installs xmonad configurations.
-w, --hypr Installs hyprland configurations.
--source Source the installed bash/zsh configuration.
```

### Shell scripts:
Moreover, the repository holds several shell scripts, although they
aren't strictly speaking dotfiles. Nevertheless, it's quite useful to
be able to clone a single repository onto a new machine and run only a
handful of commands that install all your scripts, settings and
libraries at once. *Again, go through the files first and make sure
you know what they aare doing, before installing*.

* `arch.sh` - installs my most frequently used arch packages from the
official and AUR repositories (use `arch.sh -h` for details)
* `arch_iso.sh` - downloads the latest iso of the arch installer
* `arch-install.org` - is a guide how to cleanly install a recent
versions of arch
* `arch-setup.org` - is a guide of how I set up and configure arch
from a clean install
* `arch_vm.sh` - initializes an arch VM using kvm/qemu
* `raspian.sh` - describes how I set up my RaspberryPi machines
* `macos.sh` - describes how I set up my macOS machines/vms
* `iso_macos*.sh` - describes how to convert macOS installers into
isos

### Themes

The dotfiles also provide several flavors of my own 'phd-ark' theme
for various programs such as `emacs`, `alacritty`, `bat`, etc., as
well as for the GTK and QT frameworks.

Color palettes of the phd-ark flavors



iridis

dark

light





Name
Colors
Codes


magenta



#FF0087


pink



#E83A82


ruby



#D7005F


crimson



#D70000


red



#FF6D6B


tiger



#FF5F00


orange



#F69927


sand



#FDB760


yellow



#FFD787


green



#44BC84


grass



#3DAA77


emerald



#00AF5F


viridis



#00AF87


teal



#4DB5BD


ocean



#1F5582


turquoise



#1AE6CC


cyan



#46D9FF


blue



#5F8AF7


indigo



#5F5FFF


amethyst



#3723B7


lilac



#875FFF


purple



#8787FF


violet



#A9A1E1


white



#F6F9FE


subtext0



#EDF3FE


subtext1



#DDE3EE


text



#BDC3CE


overlay2



#8A8A8A


overlay1



#464858


overlay0



#5B6268


surface2



#515C66


surface1



#404850


surface0



#3A3C3F


base



#303033


mantle



#2B2B2F


crust



#181E26




Name
Colors
Codes


magenta



#FF0087


pink



#E83A82


ruby



#D7005F


crimson



#D70000


red



#FF6D6B


tiger



#FF5F00


orange



#F69927


sand



#FDB760


yellow



#FFD787


green



#44BC84


grass



#3DAA77


emerald



#00AF5F


viridis



#00AF87


teal



#4DB5BD


ocean



#1F5582


turquoise



#1AE6CC


cyan



#46D9FF


blue



#5F8AF7


indigo



#5F5FFF


amethyst



#3723B7


lilac



#875FFF


purple



#8787FF


violet



#A9A1E1


white



#F6F9FE


subtext0



#EDF3FE


subtext1



#DDE3EE


text



#BDC3CE


overlay2



#6D6D6D


overlay1



#353642


overlay0



#494E53


surface2



#404850


surface1



#2E353A


surface0



#27292B


base



#1D1D1F


mantle



#18181B


crust



#090B0E




Name
Colors
Codes


magenta



#FF0087


pink



#E83A82


ruby



#D7005F


crimson



#D70000


red



#FF6D6B


tiger



#FF5F00


orange



#F69927


sand



#FDB760


yellow



#FFD787


green



#44BC84


grass



#3DAA77


emerald



#00AF5F


viridis



#00AF87


teal



#4DB5BD


ocean



#1F5582


turquoise



#1AE6CC


cyan



#46D9FF


blue



#5F8AF7


indigo



#5F5FFF


amethyst



#3723B7


lilac



#875FFF


purple



#8787FF


violet



#A9A1E1


white



#F6F9FE


subtext0



#303033


subtext1



#2B2B2F


text



#181E26


overlay2



#5B6268


overlay1



#464858


overlay0



#8A8A8A


surface2



#3A3C3F


surface1



#404850


surface0



#515C66


base



#EDF3FE


mantle



#DDE3EE


crust



#BDC3CE


### More
[Mathias Bynens](https://github.com/mathiasbynens/dotfiles) has another great dotfile setup which was highly influencial to mine.