dotfiles
I keep updated scripts for this here
There’s a good guide on sway for Debian here, since that’s still a little new for me, coming from dwm and i3. As of Debian 12.9, it is possible to get stuck without a working system if you simply apt-get install sway on Debian, so keep that in mind.
I used to have an OpenBSD guide here, but I got tired of maintaining that, since I’m consistently disappointed with the desktop experience in OpenBSD. I love and support the project, just not its regular use as a workstation OS. This is a guide was last tested on Debian 12.9.
procedure
In VMWare Workstation, remember to set the following:
- enable
Virtualize IOMMU
to ensure you don’t have horrible keyboard lag - enable
3D Acceleration
and give the guest something like 2GB VRAM allocation - if it is available, enable
Enhanced Keyboard
so you don’t have a lockscreen key combination conflict with Windows hosts
If you’re going to fork this and make your own dotfiles, you might want to make a step before the cloning bit where you scp your ssh key to the workstation you’re building so you can read/write the repo, and then push your changes back live. If you’re just getting a system running, though, read alone is enough here.
Run through the standard Debian install. In tasksel
or the installer, choose:
- Debian Standard Desktop
- GNOME
- SSH Server
- Standard System Utilities
GNOME/GDM will launch after the install log in as your user, start a terminal, enter root with root’s path
su -
as root, install git
apt update && apt install git
clone the repo
git clone https://github.com/davidemerson/dotfiles.git
cd dotfiles/
execute the provision.sh script
bash provision.sh
reboot
systemctl reboot
notes
mail secrets
You’ll note that my .muttrc
and .msmtprc
refer to ~/.secrets/mailpass
for credentials. This is a one liner file containing my mail app password, keeping it out of this repo, and allowing me to do things like encrypt it on disk. You can substitute any form of password management here, to accommodate your personal preferences.
vmware svga emulation
In VMWare Workstation, I have to launch sway using WLR_NO_HARDWARE_CURSORS=1 sway
because the VMWare SVGA II Adapter is meh.
windows lock command
If you’re running on a Windows 10/11 host using some kind of hypervisor, my $mod
settings in sway configuration conflict with the Windows lock command (Win+L). You can disable this in the Windows host by setting this registry key to “1”:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DisableLockWorkstation
autolaunch sway
I do this thing with my .bashrc
which launches sway whenever you’re logging in to tty1. Even if this is what you want, keep in mind that I have configured it as though I’m on a VM (janky graphics, WLR_NO_HARDWARE_CURSORS=1
), since that’s where I am most of the time. Either delete the whole .bashrc
or modify this line as appropriate for your situation:
if [ "$(tty)" = "/dev/tty1" ]; then
WLR_NO_HARDWARE_CURSORS=1 sway
fi
If you like this behavior, it’s likely, on hardware which is compatible, that you just want it to read:
if [ "$(tty)" = "/dev/tty1" ]; then
exec sway
fi
additional references
Check out how others have done this kind of thing, for inspiration and documentation:
- agung-satria, who helped a lot with my sway config here.
- sohcahtoa, who has some excellent OpenBSD inspo.
- jcs, who has some excellent OpenBSD inspo.
- daulton, who has some excellent OpenBSD inspo.
- eradman, who has some excellent OpenBSD inspo.
epoch
1739908241