Doors/readme.md
2024-01-01 05:15:03 -05:00

89 lines
3.9 KiB
Markdown

# Doors are sturdier than windows
This is my personal desktop environment that is:
1. Reliable
1. Fast
1. Made from readily available components
1. Simple (see above)
1. Decent looking
I try to use the terminal as much as possible for performance and also so it's the same experience whether
you're at the computer or connected via ssh.
If it's not here then you probably don't need it.
## Most Features
### Shell/Base
- [Yay](https://github.com/Jguer/yay) - Package manager with AUR support (Arch only)
- [rsync](https://rsync.samba.org/) - For my 'push' alias
- [sl](https://github.com/eyJhb/sl) - For when you're too fast
- [btop](https://github.com/aristocratos/btop) - Top++
- [neovim](https://github.com/neovim/neovim) - Edit text blazingly fast (even over ssh)
- [byobu](https://www.byobu.org/) - Comfy multiplexer
- [Oh My Zsh](https://github.com/ohmyzsh/ohmyzsh) - Community enhancements for zsh. Easier than DIY
- [nnn](https://github.com/jarun/nnn) - Lightning fast file manager
- [lf](https://github.com/gokcehan/lf) - File manager like [ranger](https://github.com/ranger/ranger) but faster
- [mosh](https://mosh.org/) - MObile SHell, like ssh but better with a bad connection
### Graphical environment
Business:
- [awesome](https://awesomewm.org/) - Dynamic window manager based on DWM
- [alacritty](https://github.com/alacritty/alacritty) - Fast terminal with GPU acceleration written in Rust
- [maim](https://github.com/naelstrof/maim) - Screenshot tool, with a script for ease of use
Eye Candy:
- [pywal](https://github.com/dylanaraps/pywal) - Set whole system color scheme from wallpaper colors
- [nitrogen](https://github.com/l3ib/nitrogen/https://github.com/l3ib/nitrogen) - Wallpaper setter that allows
stretching across multiple screens
- [picom](https://github.com/yshui/picom) - Vsync, shadows, transparency, etc
- [redshift](https://github.com/jonls/redshift) - Shifts screen to red at night to be easier on the eyes
- [unclutter](https://github.com/Airblader/unclutter-xfixes) - Hides the cursor after inactivity
## Install
The install script clones this repo, installs a few dependencies, then copies my configs to `$HOME/.config/`
creating a backup for any config files that already exist. NOTE: Only ONE backup per file is saved to prevent
piling up backups. It's only meant to catch small oversights and is very verbose. In other words, if you run
the installer twice IT WILL OVERWRITE THE BACKUP!
The install script is only for Arch right now but I plan to include any distro that has these programs in their
repos. Or at least most of them.
### Quick shell (start here):
Note: back up your home directory or create a new user or you aren't allowed to complain about anything being
overwritten
1. ```curl https://doors.doordesk.net/setup | bash```
2. Log out and log back in
### GUI
- For now the setup just installs everything in one shot so you get the GUI whether you need it or not, to use it
just run `startx` or start awesome from your display manager if you have one.
- The mod keys are Super, Menu, and Meta
- Once in awesome press Mod + F1 for a quick reference of all keybinds
## Post Install
### Neovim
- Run `:PackerSync` on first run, `:Mason` to install language servers, `:TSUpdate` after installing language
servers to update treesitter
## Known issues (aka things to fix and excuses why they aren't):
- Awesomewm reload races the bg/color script and may not update. Just reload awesome again manually for now
- Installer can hang at "retrieving packages" - I think this is a pacman/mirror issue. Just kill and restart it,
it'll pick up where it left off
- Redshift is hard coded to New England because geolocating had an error and I was lazy
- lsp-zero (nvim plugin) changed some things and needs to be reconfigured
## Future:
- Move stuff from xinitrc/xprofile to awesome rc to be less intrusive on existing systems
- More granular installer
- Support more distros
- Add color to setup cause why not?