Script to install software and make my desktop ready
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Emiel Kollof 95a15c7c53 Forgot one 3 weeks ago
my_modules/aur More playbooks :) 6 months ago
roles Tweak cleanup script 1 month ago
vars Forgot one 3 weeks ago
.gitignore We don't need vagrant metadata 6 months ago
README.md 'README.md' updaten 1 month ago
Vagrantfile Added lame gfx detection, fallback to vesa 6 months ago
ansible.cfg Add first code 6 months ago
desktop.yml Rename users file to something more sensible 6 months ago
hosts More playbooks :) 6 months ago
install-desktop Add vmware support 2 months ago

README.md

Install scripts for desktop

This is a script that installs xorg and some of my favourite window managers + required software. Currently only supports arch, but I might add other distros.

Currently it only supports nvidia cards and virtualbox vms, but it will use the xorg vesa driver as a fallback.

The point of this repo is so you can fork this and adapt it to your own wished. Files of interest to you are:

  • roles/users/files/cleanup.sh - for your postinstall actions, like checking out your bare repo + submodules etc
  • roles/packages/tasks/main.yml - At the end there are services which are set to enabled on boot. Modify as you wish. (I might break that out into vars/ later)
  • vars/packages.yml - The packages you want installed

Prerequisites

  • Base arch installation
  • pacman -Sy --noconfirm python sudo

Handy

If you install on a laptop without network ports (they do exist), make sure you have everything installed to make wifi work initially. You probably need these packages:

  • pacman -Sy --noconfirm dialog wireless_tools wget unzip

Best to do this inside the arch chroot while still running the install CD.

If you have a network running, you can fetch a zip of this by running:

wget https://tinyurl.com/dinstaller && unzip dinstaller

Instructions

First, copy vars/users.yml.example to vars/users.yml and add your users (an example is provided). You can use my dotfiles, which will yield a nice tiling wm setup, but if you have a bare dotfile repository of your own, feel free to edit it. Be careful with tabs and spaces. YAML is a bit particular when it comes to that.

If you want to use it for other setups, you can encrypt vars/main.yml with ansible vault. I would recommend you do so anyway

The password in here is an example one and PUBLIC. Please change it. You don’t need to hash it, ansible does that for you.

When that’s all done, just fire off ./install-desktop and go get some coffee.

Post install

Log in/su to the created user, and run ~/cleanup.sh in their homedir. It will finish things up and make everything ready for use.

Notes

Conventions

Before you ask what a Super-key is, it’s usually the one that displays a Windows logo, between Ctrl and Alt on most keyboards.

dwm

If you load up dwm, you will get the suckless dwm first. It uses the alt-key as the modifier key. To change that, you can use my patched version in src/dwm

Just run make && sudo make install in that folder, and my dwm should be installed. My dwm config has the following keys that might be instantly useful:

Key Function
Super-p dmenu (launch programs)
Super-Shift-P passdmenu (search password-store (pass) database)
Super-Enter Spawn terminal (currently urxvt)
Super-Shift-Enter Make current window master
Super-< Move window to screen on the left
Super-> Move window to screen on the right
Super-h Resize window right
Super-j Move to previous window
Super-k Move to next window
Super-l Resize window left
Super-Q Quit dwm

You should also probably build the statusbar, which is in Code/rust-dwm-status. Rust should be installed already, so just hop in there and do a cargo install. Restart dwm and it should appear.

Awesome

Press Super-S for a list of keybindings with descriptions of what they do.

bspwm

Check .config/sxhkd/sxhkdrc for keybindings. Terminal opens with Super-Enter