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
- Host: GitHub
- URL: https://github.com/phdenzel/dotfiles
- Owner: phdenzel
- License: mit
- Created: 2017-02-26T22:47:11.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-09-14T16:08:02.000Z (over 1 year ago)
- Last Synced: 2024-09-15T01:59:31.208Z (over 1 year ago)
- Topics: archlinux, bash, dotfiles, emacs, hyprland, linux, xmonad, zsh
- Language: Shell
- Homepage:
- Size: 36.8 MB
- Stars: 4
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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

### 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.