more updates

main
Inga 🏳‍🌈 11 months ago
parent 310d52e2a4
commit baa5c76e8b
  1. 92
      README.md
  2. 8
      dotfiles/.config/kanshi/config
  3. 6
      dotfiles/.config/river/init
  4. 8
      dotfiles/.config/waybar/config
  5. 1
      dotfiles/.config/waybar/style.css

@ -69,7 +69,6 @@ doas apk add river river-doc
doas apk add adwaita-icon-theme foot ttf-dejavu doas apk add adwaita-icon-theme foot ttf-dejavu
doas setup-devd udev doas setup-devd udev
doas apk add mesa-dri-gallium mesa-va-gallium doas apk add mesa-dri-gallium mesa-va-gallium
doas apk add
install -Dm0755 /usr/share/doc/river/examples/init -t ~/.config/river install -Dm0755 /usr/share/doc/river/examples/init -t ~/.config/river
``` ```
@ -94,36 +93,19 @@ You should see the blue screen of river. Try to open terminal with Win+Shift+Ent
### Login manager ### Login manager
To enter username/password in GUI, get to river after that, and get back to logon screen after exiting river: To get to river after logging in on `tty1`, and get back to `tty1` after exiting river,
```
doas apk add elogind polkit-elogind
doas rc-update add elogind
doas rc-service elogind start
doas apk add greetd greetd-gtkgreet cage
doas addgroup greetd video
doas rc-update add greetd
```
change `/etc/greetd/config.toml` change `/etc/greetd/config.toml`
``` ```
command = "cage -s -- gtkgreet" command = "agreety --cmd \"dbus-run-session -- river\""
``` ```
and create `/etc/greetd/environments` with a single line `river`
and reboot. and reboot.
I didn't find a way to make cage+gtkgreet handle HiDPI, the text is very tiny.
An alternative is agreety, but for some reason it seems that both greeter and standard linux login prompt
run at the same time on the same terminal, making it impossible to actually login.
### Installing Waybar ### Installing Waybar
``` ```
doas apk add waybar font-roboto doas apk add waybar font-roboto font-awesome
``` ```
and add startup section at the end of river init file (`~/.config/river/init`): and add startup section at the end of river init file (`~/.config/river/init`):
@ -133,33 +115,14 @@ and add startup section at the end of river init file (`~/.config/river/init`):
riverctl spawn "waybar" riverctl spawn "waybar"
``` ```
For time to work,
```
doas apk add tzdata
```
For icons to work,
```
doas apk add font-roboto
```
(do not add `font-awesome`, for some reason it looks awful, kerning is terrible, and the text is all-caps in waybar with it)
### HiDPI ### HiDPI
``` ```
doas apk add kanshi doas apk add way-displays
mkdir .config/kanshi mkdir .config/way-displays
``` ```
and create `.config/kanshi/config` with the following: and create `.config/way-displays/cfg.yaml` with the following: **TODO**
```
profile {
output eDP-1 enable scale 2.5
}
```
(`eDP-1` identifier was obtained by installing sway, running sway (by adding it to `/etc/greetd/environments`,
and in terminal inside sway executing `swaymsg -t get_outputs`).
#### HiDPI - cursors #### HiDPI - cursors
@ -179,21 +142,19 @@ gsettings set org.gnome.desktop.interface cursor-theme 'Adwaita'
In terminal (not in terminal emulator in WM; you can always switch to the new terminal with Ctrl+Alt+F2) In terminal (not in terminal emulator in WM; you can always switch to the new terminal with Ctrl+Alt+F2)
``` ```
doas apk add terminus font doas apk add terminus-font
setfont /usr/share/console-fonts/ter-132n.psf.gz setfont /usr/share/console-fonts/ter-132n.psf.gz
``` ```
If it looks decent: change consolefont in `/etc/conf.d/consolefont` to `"ter-132n.psf.gz"` and `doas rc-update add consolefont boot` If it looks decent: change consolefont in `/etc/conf.d/consolefont` to `"ter-132n.psf.gz"` and `doas rc-update add consolefont boot`
**Note that this will break your login manager for some reason**
### Environment ### Environment
In order to not have to create wrapper scripts for all apps: In order to not have to create wrapper scripts for all apps:
Create `/usr/local/bin/inga-river` (and later `chmod +x /usr/local/bin/inga-river`) with the [following content](global/usr/local/bin/inga-river). Create `/usr/local/bin/inga-river` (and later `chmod +x /usr/local/bin/inga-river`) with the [following content](global/usr/local/bin/inga-river).
and replace `river` with `inga-river` in `/etc/greetd/environments`. and replace `\"dbus-run-session -- river\"` with `inga-river` in `/etc/greetd/config.toml`.
### Keyring ### Keyring
@ -210,7 +171,7 @@ Reboot, login, make sure with `ps aux | grep key` that keyring daemon is running
### Sudo for GUI apps ### Sudo for GUI apps
`doas apk add -s polkit-gnome`, and add `riverctl spawn /usr/lib/polkit-gnome/polkit-gnome-authentication-agent` to your river config. `doas apk add polkit-gnome`, and add `riverctl spawn /usr/lib/polkit-gnome/polkit-gnome-authentication-agent` to your river config.
### Launcher ### Launcher
@ -222,9 +183,9 @@ riverctl map normal Super R spawn 'pidof bemenu-run || bemenu-run -i -n'
### Screenshots ### Screenshots
`doas apk add wayshot`, then add this line to river config: `doas apk add grimshot`, then add this line to river config:
``` ```
riverctl map normal None Print spawn 'wayshot --stdout | wl-copy' riverctl map normal None Print spawn 'grimshot copy area'
``` ```
### Clipboard ### Clipboard
@ -296,25 +257,25 @@ Yubikey should work in Chrome
### Archives ### Archives
`apk install ouch` to avoid having to remember `tar` flags etc, and instead do `ouch decompress archive.tar.gz` (for any archive format). `doas apk add ouch` to avoid having to remember `tar` flags etc, and instead do `ouch decompress archive.tar.gz` (for any archive format).
### Git ### Git
``` ```
doas apk install git doas apk add git
git config --global credential.helper --store git config --global credential.helper --store
``` ```
### Telegram ### Telegram
``` ```
doas apk install telegram-desktop doas apk add telegram-desktop
``` ```
### Element ### Element
``` ```
doas apk install element-desktop doas apk add element-desktop
``` ```
## Hardware ## Hardware
@ -355,12 +316,14 @@ doas rc-service acpid restart
### WiFi ### WiFi
At the moment Linux kernel does not support Qualcomm NFA725. **TODO 2024**
Otherwise, alpine wiki describes how to configure WiFi using `iwd`. Otherwise, alpine wiki describes how to configure WiFi using `iwd`.
### Backlight ### Backlight
***TODO 2024**
``` ```
doas apk add light doas apk add light
doas micro /etc/udev/rules.d/backlight.rules doas micro /etc/udev/rules.d/backlight.rules
@ -407,25 +370,14 @@ riverctl input 2:10:TPPS/2_Elan_TrackPoint pointer-accel -0.5
Based on https://wiki.alpinelinux.org/wiki/PipeWire Based on https://wiki.alpinelinux.org/wiki/PipeWire
``` ```
doas apk add dbus dbus-openrc
doas rc-service dbus start
doas apk add pipewire wireplumber rtkit alsa-utils pipewire-alsa doas apk add pipewire wireplumber rtkit alsa-utils pipewire-alsa
doas addgroup YOURUSER rtkit doas addgroup YOURUSER rtkit
doas addgroup root audio doas addgroup root audio
alsamixer alsamixer
``` ```
In alsamixer, use F6 to find the target sound card (most likely 0 is HDMI and 1 is ordinary).
Remember its number, and in `/usr/share/alsa/alsa.conf`,
replace `defaults.ctl.card` and `defaults.pcm.card` with the target number.
In `/usr/local/bin/inga-river`, replace `river $@` with `dbus-run-session -- river $@`,
relogin (Ctrl+Shift+E).
Then Then
``` ```
doas rc-service alsa start
doas rc-update add alsa
/usr/libexec/pipewire-launcher /usr/libexec/pipewire-launcher
``` ```
@ -437,12 +389,12 @@ Then make pipewire start automatically: in river config, add another startup lin
riverctl spawn "/usr/libexec/pipewire-launcher" riverctl spawn "/usr/libexec/pipewire-launcher"
``` ```
Control microphone and volume with `alsamixer`. Control volume with `wpctl`.
And change the handlers for XF86Audio (adding `-repeat` and replacing the spawned command): And change the handlers for XF86Audio (adding `-repeat` and replacing the spawned command):
``` ```
riverctl map -repeat $mode None XF86AudioRaiseVolume spawn 'amixer set "Master" 5%+' riverctl map -repeat $mode None XF86AudioRaiseVolume spawn 'wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 1%+'
riverctl map -repeat $mode None XF86AudioLowerVolume spawn 'amixer set "Master" 5%-' riverctl map -repeat $mode None XF86AudioLowerVolume spawn 'wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 1%-'
riverctl map $mode None XF86AudioMute spawn 'amixer set "Master" toggle' riverctl map $mode None XF86AudioMute spawn 'wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle'
``` ```
Note that the internal microphone does not work and is not detected by pipewire. Note that the internal microphone does not work and is not detected by pipewire.

@ -1,8 +0,0 @@
#profile {
# output eDP-1 enable scale 2
# output DP-2 enable scale 2
#}
profile {
output eDP-1 enable scale 2
}

@ -130,9 +130,9 @@ do
riverctl map $mode None XF86Eject spawn 'eject -T' riverctl map $mode None XF86Eject spawn 'eject -T'
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer) # Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
riverctl map -repeat $mode None XF86AudioRaiseVolume spawn "wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+" riverctl map -repeat $mode None XF86AudioRaiseVolume spawn "wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 1%+"
riverctl map -repeat $mode None XF86AudioLowerVolume spawn "wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-" riverctl map -repeat $mode None XF86AudioLowerVolume spawn "wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 1%-"
riverctl map $mode None XF86AudioMute spawn 'amixer set "Master" toggle' riverctl map $mode None XF86AudioMute spawn 'wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle'
riverctl map $mode None XF86AudioMicMute spawn 'amixer set "Master" toggle' riverctl map $mode None XF86AudioMicMute spawn 'amixer set "Master" toggle'
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl) # Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)

@ -7,7 +7,7 @@
// Choose the order of the modules // Choose the order of the modules
"modules-left": ["river/tags", "river/mode", "custom/media"], "modules-left": ["river/tags", "river/mode", "custom/media"],
"modules-center": ["river/window"], "modules-center": ["river/window"],
"modules-right": ["mpd", "idle_inhibitor", "pulseaudio", "network", "cpu", "memory", "temperature", "backlight", "keyboard-state", "sway/language", "battery", "battery#bat2", "clock", "tray"], "modules-right": ["mpd", "idle_inhibitor", "wireplumber", "network", "cpu", "memory", "temperature", "backlight", "keyboard-state", "sway/language", "battery", "battery#bat2", "clock", "tray"],
// Modules configuration // Modules configuration
// "sway/workspaces": { // "sway/workspaces": {
// "disable-scroll": true, // "disable-scroll": true,
@ -125,6 +125,12 @@
"format-disconnected": "Disconnected ⚠", "format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}" "format-alt": "{ifname}: {ipaddr}/{cidr}"
}, },
"wireplumber": {
"format": "{volume}% {icon}",
"format-muted": "",
"on-click": "helvum",
"format-icons": ["", "", ""]
},
"pulseaudio": { "pulseaudio": {
// "scroll-step": 1, // %, can be a float // "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon} {format_source}", "format": "{volume}% {icon} {format_source}",

@ -74,6 +74,7 @@ window#waybar.chromium {
#backlight, #backlight,
#network, #network,
#pulseaudio, #pulseaudio,
#wireplumber,
#custom-media, #custom-media,
#tray, #tray,
#mode, #mode,

Loading…
Cancel
Save