Qubes-Community-Content/docs/user-setups/taradiddles/README.md

104 lines
4.1 KiB
Markdown
Raw Normal View History

2018-05-07 08:36:42 -04:00
User setup / @taradiddles
=========================
Hardware
--------
Lenovo Thinkpad T450s
2022-04-29 01:48:42 -04:00
TemplateVMs and qubes
---------------------
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Philosophy: use a few custom templates rather than a large one. Pro: minimize attack surface. Cons: more work to set up, and more time spent updating (for the latter, setting up a caching proxy in your LAN or [even in a qube](https://github.com/rustybird/qubes-updates-cache) will speed up things).
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### TemplateVM 'fedora-minimal'
2018-05-07 08:36:42 -04:00
Custom minimal template for:
2022-04-29 01:48:42 -04:00
- qube 'sys-firewall'
- qube 'sys-net'
- qube 'vault': not networked; used for keepassxc (password manager) and [split gpg](https://www.qubes-os.org/doc/split-gpg/)
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### TemplateVM 'fedora-medium' (default template)
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Custom template with libreoffice, evolution, ...
2018-05-07 08:39:41 -04:00
2022-04-29 01:48:42 -04:00
- qube 'work': firewalled, ssh only to known hosts and to mail server; used for emails/office work, storing non confidential documents, and terminals (with [tmux](https://en.wikipedia.org/wiki/Tmux)).
- qube 'banking': firewalled, https only to know hosts; used only for e-banking
- qube 'private': not networked; for opening and storing private/personal documents
- qube 'sys-usb': firewalled, only LAN allowed (required for storing large android backups to a NFS share).
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### TemplateVM 'fedora-heavy'
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Larger custom template with a lot more apps, some from non-fedora repos (rpmfusion, ...)
2018-05-07 08:39:41 -04:00
2022-04-29 01:48:42 -04:00
- qube 'untrusted': firewalled, only a few IPs allowed (eg. own cloud/seafile server, ...); mainly used for managing personal pictures and opening multimedia files and content that is more or less trusted.
- (named) dispVM 'dispBrowser': for casual browsing. Customized firefox profile with privacy extensions and a custom `user.js` file (from [here](https://github.com/arkenfox/user.js))
- dispVMs: used for opening content downloaded from unknown/dodgy sources as well as browsing sites that won't work with the restricted firefox profile of 'dispBrowser' above.
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### TemplateVM 'fedora-print'
2018-09-26 12:35:31 -04:00
2022-04-29 01:48:42 -04:00
A custom template with third-party printing drivers
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
- (named) dispVM 'print': firewalled, access only to remote printer/scanner
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### TemplateVM 'debian-11-signal'
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
A custom template with `signal-desktop` [installed](https://github.com/Qubes-Community/Contents/blob/master/docs/privacy/signal.md) in a minimal debian-11 template.
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
- dispVM 'signal'
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### Other qubes
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
- a few Windows 10 qubes without network for CAD/3D drawing, programing controllers with a Windows-only toolkit, ... ;
- a dedicated qube for GIS work
- ...
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
DOM0 customization
------------------
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### Xterm
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Open xterm instead of xfce4-terminal: in `/etc/xdg/xfce4/helpers.rc`, set
2018-05-07 08:36:42 -04:00
~~~
2022-04-29 01:48:42 -04:00
TerminalEmulator=xterm
2018-05-07 08:36:42 -04:00
~~~
2022-04-29 01:48:42 -04:00
(Xresources for xterm are in `$HOME/.Xresources`)
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### Power management
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
- install and configure `tlp` in dom0
- add `workqueue.power_efficient` to `GRUB_CMD_LINE` in `/etc/default/grub`
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
### Productivity tweaks
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Define application shortcuts with Qubes Menu -> System Tools -> Keyboard -> Application Shortcuts; for instance:
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
- ctrl-alt C: open a calculator in qube untrusted ; shortcut: `qvm-run -q -a untrusted galculator`
- ctrl-alt X: open a popup windows to open xterm in a given qube (script [here](https://github.com/taradiddles/qubes-os/blob/master/popup-appmenu-r4), screenshot [there](https://github.com/taradiddles/qubes-os/blob/master/popup-appmenu.screenshot.jpg)). Shortcut: `popup-appmenu xterm`.
- ctrl-alt F: ditto, but with firefox
- ctrl-alt K: open keepassxc in qube vault; shortcut: `qvm-run -q -a vault keepassxc`
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Backups
-------
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
`qvm-backup` is horribly slow and can't be used on a regular basis to backup qubes with large amounts of data. So use tasket's excellent [wyng](https://github.com/tasket/wyng-backup) backup tool.
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
Setup (fully automated with scripts):
2018-05-07 08:36:42 -04:00
2022-04-29 01:48:42 -04:00
- in a dedicated trusted qube based on fedora-minimal, mount a nfs share which hosts a large (ie. 500GB) file with a LUKS volume and `losetup` that file
- attach the newly created loop device to dom0
- in dom0, attach the newly create loop device to dom0, open the LUKS volume in the trusted qubes and mount its underlying fs
- in dom0, run `wyng`, backup (rsync) home dir + various config files, etc.
- unmount, close luks, detach, shutdown trusted qube
2018-05-07 08:36:42 -04:00