-
Notifications
You must be signed in to change notification settings - Fork 3
Using WareWoolf For A WriterDeck
WareWoolf is designed to work on a desktop computer, but its primary purpose is for use on a writerDeck. This is why it is optimized for use without a mouse and has built-in email functions.
A writerDeck is a device dedicated specifically and solely to writing. Technically, a typewriter is an analog writerDeck. But usually we mean some sort of computerized word processor, such as the Astrohaus Freewrite or the Alphasmart Neo, to name two of the most popular mass-produced versions. But these tend to be either too expensive or too limited for many writers, so many of us build our own.
The term "writerDeck" comes from "cyberDeck". People argue over what counts as a cyberDeck, but in practice it basically means "a weird cobbled together computer, usually without a mouse and usually homemade, often with a retro-futuristic, cyberpunk vibe." So a writerDeck is just a cyberDeck dedicated to writing.
For more on writerDecks, see the writerDeck subreddit.
One major reason is distraction. If your writing machine is also your video watching machine, you may find it difficult to get much writing done. When you use a writerDeck, you can only do one thing: write.
A second reason is pleasure. If a significant focus of your life is on writing, and much of your day is spent writing, then having a beautiful, dedicated device for doing it is very nice!
A third reason is because they are fun to design and build.
A full explanation is too much for this wiki, but here is a general outline on how to set up a Raspberry Pi to boot directly and only into WareWoolf, with no desktop or other apps to distract:
OS With No Desktop + Display Server + Window Manager + Your App = a single-app device.
In this case, that means:
Raspberry Pi OS Lite + Xorg + Matchbox + WareWoolf
-
Install the OS.
With a Raspberry Pi, this is very easy using their Imager.
-
Configure The OS
Turn on wifi and enable SSH using raspi-config.
-
Install Xorg
This should be pretty easy:
sudo apt-get install xorg
-
Install Matchbox
sudo apt-get install matchbox-window-manager
-
Install WareWoolf
This may be as easy as
sudo apt-get install warewoolf
once it's published in the correct repositories, or you can transfer the .deb file over SSH. Then install it with the above command. This step may take a while because it will also install any dependencies, and with a minimalist no-desktop OS, there won’t be much already there. -
Configure Xorg to Open Your App with Matchbox
Following the instructions (https://wiki.archlinux.org/title/Xinit#Configuration), copy default config file for customization like so:
cp /etc/X11/xinit/xinitrc ~/.xinitrc
Now edit the created file however you like (I use nano: “nano ~/.xinitrc”) to add this:
matchbox-window-manager &
pid=$!
warewoolf
kill pid
The pid/kill pid stuff makes it so when you exit your application, X will exit too, taking you back to the command line. Otherwise your app would close and you’d be left with an empty black window.
Save the file and exit. You can now test your app with the command “startx”. It should open in its own solitary window in the void! No desktop! Hurray!
-
Configure the OS to start your app on boot
We can do this by editing the ~/.bash_profile file:
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then
exec startx
logout
fi
Save and reboot. Your app should open! Close the app to get back to the command line. (If you will not be using a mouse and would like to get rid of the pointer so it it's not visible on your screen, append -- -nocursor
after "startx" above.
-
Edit Your Xorg Configuration To Make Your Device Shut Down When App Is Closed
If you’d like the computer to shut down when you exit the app instead of going back to command line, open up ~/.xinitrc like you did in step 6 and add one more line below “kill pid”:
shutdown -h 0
Save and reboot. Your app will load! Exit the app. The computer shuts down! You’ve done it!