Fedora 28 Post Install, Part 2

Grab polybar if inclined. First some prerequisites:

sudo dnf install cairo cairo-devel clang cmake git python2
sudo dnf install xcb-proto xcb-util-devel xcb-util-wm-devel xcb-util-image-devel
cd ~/Downloads/
git clone https://github.com/stark/siji
cd siji/
./install.sh
echo "xset +fp ~/.fonts" >> ~/.xsession
echo "xset fp rehash" >> ~/.xsession

Now the rest:

sudo dnf install xcb-util-image xcb-util-wm libxcb jsoncpp
cd ~/Downloads/
git clone --branch 3.2 --recursive https://github.com/jaagr/polybar
mkdir polybar/build
cd polybar/build/
cmake ..
sudo make install
make userconfig
polybar example

Neofetch:

sudo dnf install neofetch w3m w3m-img

Use the ‘name’ switch to give a urxvt instance a unique Window Specification in wmaker, that way we can customize Attributes without touching other urxvt instances. We can dock it to the Workspace paperclip so it loads at login, then disable the titlebar, resizebar, and hide the application icon. If necessary, get back into the Attributes panel with Left-Ctrl+Esc once the bars are all off.

It can be helpful to add to GNUstep/Defaults/WMRootMenu via WPrefs.

We’re going to open this window at the top left and populate with neofetch output, so we’ll use that for urxvt’s name attribute:

/usr/bin/urxvt -sl 16384 +sb -bg black -fg white -bc -uc -tr -sh 35 -g 80x22+6+6 -b 2 -fn xft:Terminus:pixelsize=10 -name neofetch -title neofetch -e $SHELL -c '/usr/bin/neofetch --ascii_colors 6 7 6 6 6 6 --colors 6 7 7 6 7 7;$SHELL -i'

Get music stack up and running:

sudo dnf install qmmp ffmpeg mpd mpc
sudo gpasswd -a mpd $USER
sudo gpasswd -a mpd audio
chmod 710 ~/
sudo setsebool -P mpd_enable_homedirs true
ls -Z /var/lib/mpd/
mkdir -p ~/.mpd/playlists/
cd ~/.mpd/
touch mpd.conf mpd.db mpd.log mpd.pid mpdstate

Populate mpd.conf:

bind_to_address "127.0.0.1"
port "6600"
music_directory "~/Music"
playlist_directory "~/.mpd/playlists"
db_file "~/.mpd/mpd.db"
log_file "~/.mpd/mpd.log"
pid_file "~/.mpd/mpd.pid"
state_file "~/.mpd/mpdstate"
audio_output {
  type "alsa"
  name "Alsa"
  mixer_type "software"
}
audio_output {
  type "fifo"
  name "my_fifo"
  path "/tmp/mpd.fifo"
  format "44100:16:2"
}

Now start mpd:

systemctl --user enable mpd
systemctl --user start mpd

ncmpcpp for a front-end:

sudo dnf install ncmpcpp

Customize ~/.ncmpcpp/config:

mpd_host = "localhost"
mpd_music_dir = "~/Music"
user_interface = "alternative"
alternative_header_first_line_format = "$b$1$aqqu$/a$9 {%n %t}|{%f} $1$atqq$/a$9$/b"
alternative_header_second_line_format = "{{$8$b%a$/b$9}{ - $8%b$9}{ ($8%y$9)}}|{%D}"
volume_color = "white"
song_columns_list_format = (6f)[cyan]{lr} (24f)[white]{a} (28f)[cyan]{t|f:Title} (22f)[white]{b}
clock_display_seconds = "yes"
display_bitrate = "yes"
header_window_color = cyan
main_window_color = white
main_window_highlight_color = cyan
progressbar_color = white
progressbar_elapsed_color = cyan:b
progressbar_look = "->-"

Pin ncmpcpp in terminal tile at middle left:

/usr/bin/urxvt -sl 16384 +sb -bg black -fg white -bc -uc -tr -sh 35 -g 80x22+6+282 -b 2 -fn xft:Terminus:pixelsize=10 -name ncmpcpp -title ncmpcpp -e $SHELL -c '/usr/bin/ncmpcpp;$SHELL -i'

Install cmatrix:

sudo dnf install cmatrix

And give it its own window on the left:

/usr/bin/urxvt -sl 16384 +sb -bg black -fg white -bc -uc -tr -sh 35 -g 80x22+6+558 -b 2 -fn xft:Terminus:pixelsize=10 -name cmatrix -title cmatrix -e $SHELL -c '/usr/bin/cmatrix -b -C cyan -u 8;$SHELL -i'

Install cli-visualizer:

sudo pip install --upgrade pip
sudo dnf install pulseaudio-libs-devel fftw-devel ncurses-devel
cd ~/Downloads/
git clone https://github.com/dpayne/cli-visualizer
cd cli-visualizer/
./install.sh

Customize ~/.config/vis/config:

colors.scheme=cyan
audio.stereo.enabled=false
visualizer.spectrum.falloff.mode=top
visualizer.spectrum.falloff.weight=0.99
visualizer.spectrum.bar.width=1
visualizer.spectrum.bar.spacing=1
visualizer.spectrum.top.margin=0.30
visualizer.spectrum.left.margin=0.02

And populate ~/.config/vis/colors/cyan:

cyan
white

If we have a 1920×1080 resolution, we can sneak in one more terminal without covering icons at bottom left:

/usr/bin/urxvt -sl 16384 +sb -bg black -fg white -bc -uc -tr -sh 35 -g 80x14+6+834 -b 2 -fn xft:Terminus:pixelsize=10 -name vis -title vis -e $SHELL -c '/usr/local/bin/vis;$SHELL -i'

To be continued…