Dwm: Difference between revisions
No edit summary |
m (Added missing package in dwm dependencies) |
||
(42 intermediate revisions by 13 users not shown) | |||
Line 1: | Line 1: | ||
[https://dwm.suckless.org/ dwm] is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts. | {{DISPLAYTITLE:dwm}}[https://dwm.suckless.org/ dwm] is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts. | ||
This guide covers: | This guide covers: | ||
* Installing dependencies for the [https://suckless.org suckless] tools and installing firefox | |||
* Installing | * Installing from source or from repository dwm (dynamic window manager), dmenu (dynamic menu), st (simple terminal) | ||
* Installing from source dwm, dmenu, st | |||
* Configuring the new profile to run dwm at login. | * Configuring the new profile to run dwm at login. | ||
= Prerequisites = | |||
* [[Installation|Install]] AlpineLinux | |||
* [[Setting_up_a_new_user#Creating_a_new_user|Create a user account]] (optional but recommended) | |||
* [[Repositories#Enabling_the_community_repository|Enable the Community repository]] | |||
* [[Alpine_setup_scripts#setup-xorg-base|Install Xorg]] | |||
== | == Installing from binary repository == | ||
{{Cmd|# apk add dwm dmenu st}} | |||
{{ | |||
This will install {{Pkg|dwm}}, {{Pkg|dmenu}} and {{Pkg|st}} | |||
{{ | |||
== Installing from source == | |||
=== Installing dependencies === | |||
{{ | {{Note|'''git make gcc g++ libx11-dev libxft-dev libxinerama-dev ncurses''' are needed to install suckless tools from source. | ||
'''dbus-x11''' is needed for the dbus system (enables firefox running in dwm to open in a tile) | |||
The last three '''adwaita-gtk2-theme adwaita-icon-theme font-dejavu''' are optional, but recommended for a nicer looking firefox.}} | |||
The command to install the dependencies: | |||
{{ | {{cmd|# apk add {{pkg|git}} {{pkg|make}} {{pkg|gcc}} {{pkg|g++}} {{pkg|libx11-dev}} {{pkg|libxft-dev}} {{pkg|libxinerama-dev}} {{pkg|ncurses}} {{pkg|dbus-x11}} {{pkg|firefox-esr}} {{pkg|adwaita-gtk2-theme}} {{pkg|adwaita-icon-theme}} {{pkg|font-dejavu}} {{pkg|libxft-dev}}}} | ||
=== Installing suckless tools dwm, dmenu, and st from source === | |||
Change to the {{Path|/tmp directory}}. | |||
{{cmd|$ cd /tmp}} | |||
{{cmd|# | then execute: | ||
{{cmd|# git clone https://git.suckless.org/dwm}} | |||
Once downloaded, go to the dwm directory | |||
{{cmd|# cd dwm}} | |||
To install, run: | |||
{{cmd|# make clean install}} | |||
Next, go up one directory level | |||
{{cmd|# cd ..}} | |||
to install dmenu: | |||
{{cmd|# git clone https://git.suckless.org/dmenu | |||
# cd dmenu | |||
# make clean install}} | |||
Finally, go up one more directory level | |||
{{cmd|# cd ..}} | |||
to install st: | |||
{{cmd|# git clone https://git.suckless.org/st | |||
# cd st | |||
# make clean install}} | |||
== Setting up your profile == | == Setting up your profile == | ||
Change to your home directory: | |||
{{cmd| | {{cmd|$ cd ~}} | ||
Create or edit {{Path|.xinitrc}} with at least the following: | |||
{{ | {{cat|~/.xinitrc|exec dwm}} | ||
Save the file and exit vi. | |||
{{cat|~/.xinitrc| | |||
exec dwm}} | Next, create or edit {{Path|.profile}} with at least the following: | ||
{{cat|~/.profile|startx}} | |||
{{ | |||
{{Note|If you install additional programs that call your `$SHELL` with the POSIX `-l` login flag, you'll need to make launching `startx` conditional, otherwise X will attempt to launch every time your shell is called with the login flag. | |||
{{cat|~/.profile| | {{cat|~/.profile|if [ -z $DISPLAY ] && [ $(tty) {{=}} /dev/tty1 ]; then | ||
startx}} | startx | ||
fi | |||
}} | |||
|gotchas}} | |||
Log out or reboot. dwm will run the next time you log in. | |||
Press {{Key|Alt}}+{{Key|p}} to launch dmenu. Type firefox then press {{key|enter}}. Firefox will load and run in tile 9. | |||
= See Also = | |||
* https://pkgs.alpinelinux.org/contents?file=dwm | |||
* [https://wiki.gentoo.org/wiki/Dwm "dwm is only a single binary, and its source code is intended to never exceed 2000 SLOC. dwm is customized through editing its source code"] | |||
* [[AwesomeWM]] | |||
* [[Raspberry Pi 3 - Browser Client]] - A guide which omits dwm, but uses similar steps to install firefox in a diskless install on ARM. dwm is not used on the RPI3, due to tmpfs limitations. | |||
== See also == | |||
* [https://wiki.archlinux.org/title/Dwm Dwm - Archwiki] | |||
[[Category:Desktop]] | |||
[[Category:Window Managers]] |
Latest revision as of 17:12, 25 April 2024
dwm is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts.
This guide covers:
- Installing dependencies for the suckless tools and installing firefox
- Installing from source or from repository dwm (dynamic window manager), dmenu (dynamic menu), st (simple terminal)
- Configuring the new profile to run dwm at login.
Prerequisites
- Install AlpineLinux
- Create a user account (optional but recommended)
- Enable the Community repository
- Install Xorg
Installing from binary repository
# apk add dwm dmenu st
This will install dwm, dmenu and st
Installing from source
Installing dependencies
dbus-x11 is needed for the dbus system (enables firefox running in dwm to open in a tile)
The last three adwaita-gtk2-theme adwaita-icon-theme font-dejavu are optional, but recommended for a nicer looking firefox.The command to install the dependencies:
# apk add git make gcc g++ libx11-dev libxft-dev libxinerama-dev ncurses dbus-x11 firefox-esr adwaita-gtk2-theme adwaita-icon-theme font-dejavu libxft-dev
Change to the /tmp directory.
$ cd /tmp
then execute:
# git clone https://git.suckless.org/dwm
Once downloaded, go to the dwm directory
# cd dwm
To install, run:
# make clean install
Next, go up one directory level
# cd ..
to install dmenu:
# git clone https://git.suckless.org/dmenu # cd dmenu # make clean install
Finally, go up one more directory level
# cd ..
to install st:
# git clone https://git.suckless.org/st # cd st # make clean install
Setting up your profile
Change to your home directory:
$ cd ~
Create or edit .xinitrc with at least the following:
Contents of ~/.xinitrc
Save the file and exit vi.
Next, create or edit .profile with at least the following:
Contents of ~/.profile
Contents of ~/.profile
Log out or reboot. dwm will run the next time you log in. Press Alt+p to launch dmenu. Type firefox then press enter. Firefox will load and run in tile 9.
See Also
- https://pkgs.alpinelinux.org/contents?file=dwm
- "dwm is only a single binary, and its source code is intended to never exceed 2000 SLOC. dwm is customized through editing its source code"
- AwesomeWM
- Raspberry Pi 3 - Browser Client - A guide which omits dwm, but uses similar steps to install firefox in a diskless install on ARM. dwm is not used on the RPI3, due to tmpfs limitations.