Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/doums/dot
my d●tfiles
https://github.com/doums/dot
archlinux baru linux x11 xmobar xmonad
Last synced: 2 months ago
JSON representation
my d●tfiles
- Host: GitHub
- URL: https://github.com/doums/dot
- Owner: doums
- Created: 2018-10-18T23:22:55.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-05-21T20:41:59.000Z (8 months ago)
- Last Synced: 2024-05-22T11:12:31.323Z (8 months ago)
- Topics: archlinux, baru, linux, x11, xmobar, xmonad
- Language: Shell
- Homepage:
- Size: 16.3 MB
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dot
My dotfiles
## OS installation
Arch Linux build:
- display server: Xorg (X11)
- no desktop environment
- display manager: LightDM + its GTK greeter
- window manager: XMonad
- compositor: yshui/picom[INSTALL](ARCH_INSTALL.md)
## X
Install `xorg-server`
https://wiki.archlinux.org/index.php/Xorg
## Display manager
Install LightDM and its GTK greeter
```
lightdm lightdm-gtk-greeter
```Enable `lightdm.service`
https://wiki.archlinux.org/index.php/LightDM#Installation
## Window Manager
### fonts
Main fonts
```
ttf-inconsolata ttf-roboto noto-fonts ttf-dejavu ttf-liberation
```Emoji font
```
noto-fonts-emoji
```Refresh font cache
```shell
fc-cache
fc-list
```#### custom fonts
[docs](https://wiki.archlinux.org/title/Fonts#Manual_installation)
First create the directory `/usr/local/share/fonts/ttf/` and
place any custom fonts under it### XMonad
First install `stack`. Take the static version from AUR to avoid
the plethora of Haskell dependencies.```shell
rua install stack-static
```Clone the sources in `/opt/xmonad`
```shell
git clone https://github.com/xmonad/xmonad
git clone https://github.com/xmonad/xmonad-contrib
```Add the configuration file from `xmonad/xmonad.hs` and init the
project to generate the `stack.yaml` file```shell
stack init
```Build & install
```shell
stack install
```Xmonad expects `xmonad.hs` and `stack.yaml` to be in
`~/.config/xmonad/` \
Use symlinks instead (does not make sense to have source files
under the config directory)```shell
cd ~/.config/xmonad
ln -s /opt/xmonad/xmonad.hs xmonad.hs
ln -s /opt/xmonad/stack.yaml stack.yaml
```source: https://xmonad.org/INSTALL.html
#### XMobar
Clone the sources and build the project
```shell
git clone https://codeberg.org/xmobar/xmobar.git
```Override `stack.yaml` to only build needed features
```shell
cp xmobar/stack.yaml .
```Add `xmobarrc` to `~/config/xmobar/`.
Finally build and install it
```shell
stack install
```##### required packages
```
dmenu clipmenu trayer shotgun graphicsmagick xwallpaper udisks2
udiskie xclip slop gpick trashy ouch
```### XDG user directories
```shell
sudo pacman -S xdg-user-dirs
xdg-user-dirs-update
```source: https://wiki.archlinux.org/index.php/XDG_user_directories
## Screen lock
Install `i3lock-color` from AUR
#### On suspend
Copy `systemd_unit/[email protected]` to `/etc/systemd/system/`
and enable it```
sudo systemctl enable [email protected]
```https://wiki.archlinux.org/title/Power_management/Suspend_and_hibernate#Sleep_hooks
## Design
### GTK theme
Theme used https://github.com/nana-4/materia-theme
Install `materia-gtk-theme`
edit `$XDG_CONFIG_HOME/gtk-3.0/settings.ini`
```
[Settings]
gtk-icon-theme-name = Paper
gtk-theme-name = Materia-dark
gtk-font-name = Roboto 12
```edit ~/.gtkrc-2.0
```
gtk-icon-theme-name = "Paper"
gtk-theme-name = "Materia-dark"
gtk-font-name = "Roboto 12"
```#### gnome
```shell
gsettings set org.gnome.desktop.interface gtk-theme Materia-dark
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
gsettings set org.gnome.desktop.interface icon-theme Paper
gsettings set org.gnome.desktop.interface cursor-size 64
```#### Flatpak
```shell
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gtk.Gtk3theme.Materia-dark
```### Cursor theme
install https://github.com/snwh/paper-icon-theme
edit `/usr/share/icons/default/index.theme`
```
[Icon Theme]
Inherits=Paper
```note: the icon theme is also set when `.Xresources` file is read
when lightdm (display manager) starts and sources `.xprofile`- https://wiki.archlinux.org/title/Cursor_themes
- https://wiki.archlinux.org/index.php/Icons#Manually### set the wallpaper
Install `xwallpaper` package\
`xwallpaper` is spawned by XMonad\
The wallpaper image is defined by `$BG_PRIMARY` env variable\
eg. in `.xprofile````bash
export BG_PRIMARY=$HOME/Pictures/dark_ocean.png
```### HiDPI
DPI is set in `.Xresources`
```
Xft.dpi: 144
```it will be loaded during display manager (ligthdm) starts and sources `.xprofile`
```sh
[[ -f "$home/.Xresources" ]] && xrdb -merge $home/.Xresources
```sources:
- https://wiki.archlinux.org/index.php/HiDPI#X_Resources
- https://wiki.archlinux.org/index.php/LightDM#Environment_variableslarger font for linux console
```shell
$ sudo pacman -S terminus-font
```add in `/etc/vconsole.conf`
```
FONT=ter-v22b
FONT_MAP=cp437
```source: https://wiki.archlinux.org/index.php/HiDPI#Linux_console
## notes
The following notes are relevant to the installation of ArchLinux.
### solve icon problem for apps installed through Flatpak
```shell
cd /var/lib/flatpak/exports/share/applications
```rename the links to match this format: obs.desktop, vlc.desktop
### journal
To prevent the journal to take 4Gb space of disk memory copy the
configuration file `00-journal-size.conf` (from the `conf` dir in
this repo) into `/etc/systemd/journald.conf.d/` directory (create it)(the default is 4Gb)
source: https://wiki.archlinux.org/index.php/Systemd/Journal#Journal_size_limit
### SSH agent
Install `gnome-keyring` and `libsecret`
Enable the following systemd **user** unit (⚠ no `sudo`)
```shell
systemctl --user enable gcr-ssh-agent.socket
```
Set the env var `SSH_AUTH_SOCK` to `/run/user/1000/gcr/ssh`
(`.xprofile`/ fish config)→ https://wiki.archlinux.org/title/GNOME/Keyring
### Firefox
To set the scrollbar width set the following property in
`about:config````
widget.non-native-theme.scrollbar.size.override 16
```NOTE: the `widget.non-native-theme.enable` should be set to true