Awesome tiling WM

Moderator: Forum moderators

Post Reply
williwaw
Posts: 1594
Joined: Tue Jul 14, 2020 11:24 pm
Has thanked: 145 times
Been thanked: 291 times

Awesome tiling WM

Post by williwaw »

geo_c wrote: Sat Sep 09, 2023 12:50 pm

If you ever want to try another tiling window manager, I've heard good things about awesome:
https://mipmip.github.io/awesomewm-scre ... gallery-12

xbps-install -Su awesome
and it went right in and came up first try

https://awesomewm.org/doc/api/documenta ... me.md.html

seems to be some good documentation

lua? why? there must be a good purpose.

geo_c
Posts: 2501
Joined: Fri Jul 31, 2020 3:37 am
Has thanked: 1799 times
Been thanked: 705 times

Re: Awesome tiling WM

Post by geo_c »

williwaw wrote: Sat Sep 09, 2023 8:25 pm

xbps-install -Su awesome
and it went right in and came up first try

https://awesomewm.org/doc/api/documenta ... me.md.html

seems to be some good documentation

lua? why? there must be a good purpose.

I guess lua is good for making widgets and graphic elements.

So did you install this on a command line system with no previous window manager? I tried to run JWM and Xfce on vanilladpup at one point and it didn't work the way I hoped. Things like drive mounting and all were not configured properly in Xfce. And then I tried a window manager switching script and it sort of crashed the whole thing.

geo_c
Old School Hipster, and Such

williwaw
Posts: 1594
Joined: Tue Jul 14, 2020 11:24 pm
Has thanked: 145 times
Been thanked: 291 times

Re: Awesome tiling WM

Post by williwaw »

I have fluxbox installed also, but not any sort of auto login.

once I log on as root in the console, I type startx
Xorg looks at my ~/.xinitrc and finds the single word fluxbox or rather it now it has to say awesome

having the line in ~/.xinitrc as awesome rather than as exec awesome lets me drop back to the console easier. It may have been an autologin feature that was doing the exec part of the command that caused the crash you experienced earlier

Each WM has a left click menu with an exit command. so dropping out of the wm to console is easy

Since startx tells xorg to look for my .xinitrc, I have to rewrite .xinitrc before starting the alternative wm.

echo awesome > .xinitrc or echo fluxbox > .xinitrc does the edit which is followed by the startx command. I should probally look at the xwin script in puppy, if it is indeed a script, to make this simpler.

fluxbox, and I suppose awesome also, are simple window managers and not complete Desktop Envrionments, but that said., I am using the same filemanager, (spaceFM,) which is has gui windows to configure pmount, which I would expect to work equally well in any simple WM once I edit the wm menu to bring up spaceFM

User avatar
rockedge
Site Admin
Posts: 5714
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 1994 times
Been thanked: 2097 times
Contact:

Re: Awesome tiling WM

Post by rockedge »

I have made a KLV-Awesome-RT ISO 531 M that has the Awesome hybrid window manager, pcmanfm, Thunar and Rox are all built in the rootfs.

Made with the PLUG:
f_00_Void_KLV_no-kernel_awesome.plug

Code: Select all

# f_00_Void_KLV_Awesome_no-kernel.plug
# version="1.0.0"; revision="-alpha1"
# Kennel Linux Void outfitted with Awesome desktop 
# Creation date 09Sep2023; Revision date: 09Sep2023
# Copyright Kennel Linux Team; License MIT

# build this via terminal commands:build_firstrib_rootfs.sh
# export CONNECTION_TIMEOUT=-1  **not needed with v501**
# ./build_firstrib_rootfs.sh void default amd64  f_00_Void_KLV_Awesome_no-kernel.plug
# Architecture i386 will probably successfully build too as an alternative to amd64

# login is user=root passwd=root

# All the parameters/commandlines can be appropriately changed:
# Simply comment in or comment out till you have what you desire
# or add new packages to the xbps-install lists.
# You can add as many valid commandlines as you want in here.
#
# base system
xbps-install -y base-minimal ncurses-base bash eudev
xbps-install -y file mc xterm xauth
xbps-install -y shadow wpa_supplicant  # needed for most wifi
xbps-install -y ntfs-3g zstd rsync

# set up passwd system
pwconv
grpconv
printf "root\nroot\n" | passwd >/dev/null 2>&1 # Quietly set default root passwd to "root"

# set root to use /bin/bash
usermod --shell /bin/bash root

# Set locale to en_US.UTF-8 
sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/default/libc-locales
xbps-reconfigure -f glibc-locales

# Set Bash as shell
xbps-alternatives --set bash

## --------------------------------------------------------------------------
## Xorg server, spectrwm Desktop configuration

xbps-install -y xorg awesome
xbps-install -y xlockmore tzutils
xbps-install -y gvfs-smb gvfs-mtp gvfs-cdda
xbps-install -y yad gxmessage

# Optional packages
#
xbps-install -y geany gftp rox lxterminal
xbps-install -y e2fsprogs yelp gparted
xbps-install -y dosfstools mtools 
xbps-install -y squashfs-tools wget
xbps-install -y lxterminal htop
xbps-install -y pcmanfm Thunar

# Browser selection
xbps-install -y firefox

# Fix Firefox Fonts 
#
ln -s /usr/share/fontconfig/conf.avail/70-no-bitmaps.conf /etc/fonts/conf.d/
xbps-reconfigure -f fontconfig


# Install Audio
#
xbps-install -y pulseaudio pulseaudio-utils alsa-plugins-pulseaudio alsa-utils
ln -s /etc/sv/pulseaudio /etc/runit/runsvdir/default/pulseaudio

# Install Network Manager
#
xbps-install -y NetworkManager network-manager-applet
ln -s /etc/sv/NetworkManager /etc/runit/runsvdir/default/NetworkManager

# Set locale to en_US.UTF-8
sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/default/libc-locales
xbps-reconfigure -f glibc-locales

# Set timezone
sed -i 's/#TIMEZONE="Europe/Madrid"/TIMEZONE="America/New_York"/' /etc/rc.conf

# Add ~/Startup directory
#
mkdir -p /root/Startup
cat <<'EOF' >> /usr/local/bin/start-up
#!/bin/bash
sleep 5
user_home=$(eval echo ~${SUDO_USER})
ls $user_home/Startup/* | while read J
do
   "$J" &
done
EOF

chmod +x /usr/local/bin/start-up
 
# Setup autologin on tty1
#
cp -a /etc/X11/xinit/xinitrc /root/.xinitrc
cp -R /etc/sv/agetty-tty1 /etc/sv/agetty-autologin-tty1
sed -i 's/GETTY_ARGS.*/GETTY_ARGS="--autologin root --noclear"/' /etc/sv/agetty-autologin-tty1/conf  # editing for autologin root

# Arrange to startx in user's .bash_profile (per Arch Wiki)
# Remove this section if not wanting boot straight into X
touch ~/.bash_profile
cat <<'AUTOLOGIN' > /etc/profile.d/autologin.sh
# autologin on tty1
if [ -z "$DISPLAY" ] && [ "$(fgconsole)" -eq 1 ]; then
startx  # remove the exec if you want back to tty1 on exit X

fi
AUTOLOGIN

# Get and install autologin fix
#
# cd /etc/sv
# wget https://rockedge.org/kernels/data/XBPS_packages/agetty-autologin-tty1.tar.gz
# tar xvfz agetty-autologin-tty1.tar.gz

# Use agetty-autologin-tty1 instead of agetty-tty1 
# rm -f /etc/runit/runsvdir/default/agetty-tty1
# ln -s /etc/sv/agetty-autologin-tty1 /etc/runit/runsvdir/default/agetty-autologin-tty1

# enable dbus service
ln -s /etc/sv/dbus /etc/runit/runsvdir/default/dbus

# Auto-editing .xinitrc to use xfce4 instead of twm
# Because I'm using exec here the script will end there so no xterms started
#
# sed -i 's/twm &/exec xfce4-session/' ~/.xinitrc

 sed -i '51,$d' /root/.xinitrc
 echo "/usr/local/bin/start-up &" >>/root/.xinitrc 
 echo "# rox -p default" >>/root/.xinitrc
 echo "awesome" >>/root/.xinitrc  # removed exec to allow dropping out of Xorg to console

## USER CONFIGS: Copy main configs to /etc/skel for all normal users later added
#
xbps-install -y sudo
cp -af /root/. /etc/skel
mkdir -p /etc/skel/.config /etc/skel/.cache /etc/skel/.local/share
echo Still some extra to do here re the likes of runit starting pulseaudio
echo among other user needed config bits and pieces,
echo so probably a few user-config issues noted as needing fixed here

# Give wheel group nopasswd sudo rights and create weedog as wheel group member
echo '%wheel ALL=(ALL) NOPASSWD: ALL' | (VISUAL="tee -a" visudo) # wheel group added to sudo no password required
useradd -m -G wheel -s /bin/bash weedog  # weedog in wheel group so has elevated sudo permissions
printf "weedog\nweedog\n" | passwd weedog >/dev/null 2>&1 # Quietly set default weedog passwd to "weedog"

# Give wheel group nopasswd sudo rights and create spot as wheel group member
echo '%wheel ALL=(ALL) NOPASSWD: ALL' | (VISUAL="tee -a" visudo) # wheel group added to sudo no password required
useradd -m -G wheel -s /bin/bash spot  #spot in wheel group so has elevated sudo permissions
printf "spot\nspot\n" | passwd spot >/dev/null 2>&1 # Quietly set default spot

# Create /root directories
#
mkdir -p /root/Desktop
mkdir -p /root/Documents
mkdir -p /root/Downloads
mkdir -p /root/Music
mkdir -p /root/my-applications
mkdir -p /root/Pictures
mkdir -p /root/Public
# mkdir -p /root/Startup
mkdir -p /root/Templates
mkdir -p /root/Videos

# Create /home/spot directories
#
mkdir -p /home/spot/Desktop
mkdir -p /home/spot/Documents
mkdir -p /home/spot/Downloads
mkdir -p /home/spot/Music
mkdir -p /home/spot/my-applications
mkdir -p /home/spot/Pictures
mkdir -p /home/spot/Public
mkdir -p /home/spot/Templates
mkdir -p /home/spot/Videos


# Set permissions
#
chown -R spot:spot /home/spot
chown -R weedog:weedog /home/weedog

# add users to groups and change permissions
#
usermod -a -G audio weedog
usermod -a -G audio spot
usermod -a -G video weedog
usermod -a -G video spot
xhost +
chmod 755 /
chmod 755 /bin
chmod 755 /lib

# add sudo -spot to .desktop files

#### Get KLV custom packages ####
#
# Create and switch to build directory
mkdir -p /root/Build
cd /root/Build

wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/libfontconfig1-1.12_0.x86_64.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/gparted-shell-1.0_0.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/mime-add-1.1_0.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/xbps-tools-1.0_3.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/pfind-howbig-tca-1.0_0.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/uextract-4.7_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/tzupdate2-2.0_2.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/xluncher-1.0_0.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/default-scripts-1.0_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/dropbear-0.81_1.x86_64.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/SFS-Load-2.0_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/tas-1.15_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/packit-pfind-1.0_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/gettext-1.0_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/swapper-1.2_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/backgrounds-1.0_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/run-as-users-1.5_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/inst-xbps-1.8_1.noarch.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/gtkhash-1.1.1_1.x86_64.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/pure-ftpd-1.0.50_1.x86_64.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/syndownload-2.0_1.x86_64.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/desktop-config-1.0_1.x86_64.xbps
wget ‐‐continue https://rockedge.org/kernels/data/XBPS_packages/sClock-1.5_1.x86_64.xbps


#### Install KLV custom packages ####

# Register and index packages
cd /root
xbps-rindex -a Build/*.xbps

# Install libfontconfig cache fix
xbps-install -y --repository=Build/ libfontconfig1-1.12_0

# Install gparted-shell
xbps-install -y --repository=Build/ gparted-shell-1.0_0

# Install MIME definitions 
xbps-install -y --repository=Build/ mime-add-1.1_0

# Install pfind-howbig-tca
xbps-install -y --repository=Build/ pfind-howbig-tca-1.0_0

# Install xbps-tools 
xbps-install -y --repository=Build/ xbps-tools-1.0_3

# Install uextract
xbps-install -y --repository=Build/ uextract-4.7_1

# Install tzupdate
xbps-install -y --repository=Build/ tzupdate2-2.0_2

# Install xLunch
xbps-install -y --repository=Build/ xluncher-1.0_0
xbps-pkgdb -m hold  xlunch-4.1_3

# Install default launch scripts
xbps-install -y --repository=Build/ default-scripts-1.0_1

# Install dropbear
xbps-install -y --repository=Build/ dropbear-0.81_1

# Install SFS-Load
xbps-install -y --repository=Build/ SFS-Load-2.0_1

# Install tas
xbps-install -y --repository=Build/ tas-1.15_1

# Install Packit and pFind
xbps-install -y --repository=Build/ packit-pfind-1.0_1

# Install gettext
xbps-install -y --repository=Build/ gettext-1.0_1

# Install swapper
xbps-install -y --repository=Build/ swapper-1.2_1

# Install  backgrounds
xbps-install -y --repository=Build/ backgrounds-1.0_1

# Install run-as-spot and run-as-weedog
xbps-install -y --repository=Build/ run-as-users-1.5_1

# Install inst-xbps
xbps-install -y --repository=Build/ inst-xbps-1.8_1

# Install gtkhash
xbps-install -y --repository=Build/ gtkhash-1.1.1_1

# Install pure-ftpd
xbps-install -y --repository=Build/ pure-ftpd-1.0.50_1

# Install Syndownload
xbps-install -y --repository=Build/ syndownload-2.0_1

# Install desktop configuration
xbps-install -y --repository=Build/ desktop-config-1.0_1

# Install sClock
xbps-install -y --repository=Build/ sClock-1.5_1



# Set execution permissions recursivly for binaries and scripts
chmod +x -R /usr/local/bin

echo "stage 2 is complete!!"

# Clean Up
#

rm -r /root/Build
rm /var/cache/xbps/*

#-----------------------------------------------------------------------
echo "desktop build process finished"
Screenshot(102).jpg
Screenshot(102).jpg (20.52 KiB) Viewed 851 times
williwaw
Posts: 1594
Joined: Tue Jul 14, 2020 11:24 pm
Has thanked: 145 times
Been thanked: 291 times

Re: Awesome tiling WM

Post by williwaw »

williwaw wrote: Sat Sep 09, 2023 11:20 pm

having the line in ~/.xinitrc as awesome rather than as exec awesome lets me drop back to the console easier.

easier, because when you use exec awesome or exec fluxbox to bring up a desktop session, and then later exit the desktop, you are logged out as root and have to log back in again to do anything in that tty. not a small inconvience if you have set some stuff up in the shell and not had a chance to write it to .bashrc

you can do without .xinitrc all together instead of having to edit it constantly to switch between desktops, and without .xinitrc you can run both desktops at the same time in different ttys.

startx needs a full path as an arguement, so you can start a desktop in tty1 by running
startx /usr/bin/fluxbox, then moving to tty2, with ctrl-alt-F2, and after logging in there as root, can run startx /usr/bin/awesome. Once both are up and running, just switch back and forth with ctrl-alt-F1 or ctrl-alt-F2

you can shorten the setup steps further with aliases saved to .bashrc for instance,
alias f="startx /usr/bin/fluxbox"
alias a="startx /usr/bin/awesome"

Last edited by williwaw on Sun Sep 10, 2023 6:28 am, edited 2 times in total.
geo_c
Posts: 2501
Joined: Fri Jul 31, 2020 3:37 am
Has thanked: 1799 times
Been thanked: 705 times

Re: Awesome tiling WM

Post by geo_c »

williwaw wrote: Sun Sep 10, 2023 6:10 am

I can start a desktop in tty1 by running
startx /usr/bin/fluxbox, then moving to tty2, with ctrl-alt-F2, and after logging in there as root, can run startx /usr/bin/awesome. Once both are up and running, just switch back and forth with ctrl-alt-F1 or ctrl-alt-F2

I can shorten the setup steps further with aliases saved to my .bashrc
alias f="startx /usr/bin/fluxbox"
alias a="startx /usr/bin/awesome"

Now that sounds pretty cool. I need to explore that. So I could literally have a KLV-Airedale-Spectr-Bpswm-Awesome OS.

geo_c
Old School Hipster, and Such

williwaw
Posts: 1594
Joined: Tue Jul 14, 2020 11:24 pm
Has thanked: 145 times
Been thanked: 291 times

Re: Awesome tiling WM

Post by williwaw »

geo_c wrote: Sun Sep 10, 2023 6:15 am

So I could literally have a KLV-Airedale-Spectr-Bpswm-Awesome OS.

fluxbox, awesome and maybe others also have a default menuentry for restarting the WM. So once you can open your browser and texteditor in the new desktop to get your reconfigurations rolling, there should not be that much need to switch back and forth, unless you are doing something like running one desktop as root, while logging in as spot and running a desktop as spot in another.

williwaw
Posts: 1594
Joined: Tue Jul 14, 2020 11:24 pm
Has thanked: 145 times
Been thanked: 291 times

Re: Awesome tiling WM

Post by williwaw »

User avatar
gychang
Posts: 553
Joined: Fri Aug 28, 2020 4:51 pm
Location: San Diego, CA
Has thanked: 195 times
Been thanked: 51 times

possible with F96-CE4?

Post by gychang »

I am running bspwm tiling WM with F96-CE4 and works well. I see awesomewm is available with PPM but I can't seem to boot into it after install. After install I edited /etc/windowmanager to just awesome but just log into a prompt.

any ideas?

======

Puppy Bytes, utube videos
https://www.youtube.com/channel/UCg-DUU ... u62_iqR-MA

======

williwaw
Posts: 1594
Joined: Tue Jul 14, 2020 11:24 pm
Has thanked: 145 times
Been thanked: 291 times

Re: possible with F96-CE4?

Post by williwaw »

gychang wrote: Tue Jan 30, 2024 2:45 pm

I am running bspwm tiling WM with F96-CE4 and works well. I see awesomewm is available with PPM but I can't seem to boot into it after install. After install I edited /etc/windowmanager to just awesome but just log into a prompt.

any ideas?

are you having trouble starting other WMs in F96-CE4 or just Awesome. Which others have you tried?

User avatar
rockedge
Site Admin
Posts: 5714
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 1994 times
Been thanked: 2097 times
Contact:

Re: Awesome tiling WM

Post by rockedge »

I have the Awesome wm running on a KLV but never tried with F96-CE_4 so I am trying it out!

So far a can't open display error and the system drops to console. Trying to start jwm also now fails

Using the console both of these commands fail with the display error 5

Code: Select all

xwin awesome 
xwin jwm
User avatar
gychang
Posts: 553
Joined: Fri Aug 28, 2020 4:51 pm
Location: San Diego, CA
Has thanked: 195 times
Been thanked: 51 times

Re: Awesome tiling WM

Post by gychang »

rockedge wrote: Tue Jan 30, 2024 8:24 pm

I have the Awesome wm running on a KLV but never tried with F96-CE_4 so I am trying it out!

So far a can't open display error and the system drops to console. Trying to start jwm also now fails

Using the console both of these commands fail with the display error 5

Code: Select all

xwin awesome 
xwin jwm

@rockedge thanks for confirming the problem...

======

Puppy Bytes, utube videos
https://www.youtube.com/channel/UCg-DUU ... u62_iqR-MA

======

User avatar
rockedge
Site Admin
Posts: 5714
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 1994 times
Been thanked: 2097 times
Contact:

Re: Awesome tiling WM

Post by rockedge »

To start to narrow down what is going wrong I installed Spectrwm on F96-CE_4, which seems to be functioning as expected.

After booting into JWM and dropping to console, Spectrwm starts with xwin spectrwm and works with a basic default panel and dmenu.

Attempting to get polybar and rofi to run, replacing dmenu, by using the .deb for polybar from Ubuntu Jammy but it throws an exception on first try. Looking into it but so far it looks like it will work. Borrowed @geo_c 's spectrwm.conf from KLV-Spectr-RT

Rofi is installed via the PPM but also throwing a font not found error so not yet functional. :ugeek:

Post Reply

Return to “KL-Dev_Work”