This project provides a provisioned VM to show off various Catppuccin ports. See the Demos below.
Packer is used to create the images and Ansible does most of the provisioning. Vagrant boxes are produced at the end to make using the VMs easy. To use the VMs, you'll need a hypervisor. This projects aims to support VirtualBox and QEMU with Libvirt.
Basically, each port/tool/app is installed and the Catppuccin theme is applied to it per the theme's instructions. If I use the port in my daily life, the configuration might be opinionated.
The following apps/ports are installed:
- Alacritty
- Default Flavor:
Macchiato
- Change in
alacritty.yml
- Default Flavor:
- Cursors
- Default Flavor:
Macchiato-Mauve
- Change in Settings
- Default Flavor:
- Firefox
- Default Flavor:
Mocha
- Use Firefox extension marketplace to change
- Default Flavor:
- Fonts
- Default: System font
- Change
ansible/roles/fonts/defaults/main.yml
to pick different fonts - Supported fonts:
inter
- GNOME
- Install and enable the GNOME desktop
- Gnome-terminal
- No choice in flavor
- GTK
- Default flavor: Purple
- Change by installing RPM and update in Settings
- Kitty
- Default flavor:
Macchiato
- Change in
kitty.conf
- Default flavor:
- Nvim
- Default flavor:
Macchiato
- Managed by
vim-plug
and set ininit.vm
- Default flavor:
- Spotify (handled by Spicetify)
- No choice in flavor
- VS Code
- No choice in flavor
- Wallpapers
- Default:
evening-sky.png
- Change in Settings
- Default:
For your distro, install the following:
- VirtualBox or QEMU/Libvirt support
- Vagrant
- If using QEMU/Libvirt, you'll need the vagrant-libvirt plugin too.
Next, clone this project or download the Vagrantfile.
Finally, use vagrant
to run the machine for the hypervisor you have installed:
vagrant up --provider virtualbox
Or
vagrant up --provider libvirt
Here are quick peeks into how some of the ports look. To be honest, some things don't look as good as they might on a host machine and I believe it's either 1) a virtualization penalty in the graphics rendering or 2) Wayland...but then some apps look worse on X11 so you can't seem to win.
White border because of Wayland.
Moving around the window to show off different cursor looks.
Default Firefox with theme. Side bar really shows it off.
Showing different UI components in system menu
Different files in the Catppuccin repo.
Changing wallpapers in the system menu.
For your distro, install the following:
- Packer
- VirtualBox or QEMU/Libvirt support
- Vagrant
- If using QEMU/Libvirt, you'll need the vagrant-libvirt plugin too.
- To upload to Vagrant Cloud, a
VAGRANT_CLOUD_TOKEN
is needed. Create an account on Vagrant Cloud to get one.
Once everything is installed and you can run VMs, use make
to start the build:
export VAGRANT_CLOUD_TOKEN=<your access token> # Optional
make qemu # Create the VirtualBox machine
make vbox # Create the QEMU/Libvirt machine
make all # Create all the machines
- VirtualBox
- I think it's a bug with Fedora but the session in VirtualBox will often freeze and "reset", especially when moving windows around quickly. The behavior seems a bit better if X11 is used instead of Wayland, which can be set at the greeter when logging in.
I like automating things and I like Catppuccin. I was already using several ports and had automated the setup of them so I figured I should start throwing them all in single machine.
Port/theme maintainers might like this project as a test platform.
Port/theme users might like this project to test drive ports before installing.
In order to run more ports, there needs to be support for different types of machines:
- More OSes:
- Debian
- Windows
- ???
- More desktops:
- KDE
- XFCE
- ???