Skip to content

Instantly share code, notes, and snippets.

@airtonix
Created May 1, 2025 06:21
Show Gist options
  • Save airtonix/16c4c9bae65a4974e0916c0f9552720c to your computer and use it in GitHub Desktop.
Save airtonix/16c4c9bae65a4974e0916c0f9552720c to your computer and use it in GitHub Desktop.
Getting into Dotfile Provisioning

What?

You may have heard of dotfiles and a dotfile repo.

  • dotfiles: the various folders and files in your home folder used to configure the various applications and tools you use
  • dotfile repo: a git repo where you back these up.

But I'm here to show you something a bit better.

Comtrya

curl -fsSL https://get.comtrya.dev | VERSION=v0.9.2  sh

(probably stick to a particular version unless you're willing to put up with breaking changes by always using latest)

Why ?

Because:

  • recovering from failure as quickly as possible is great.
  • repeating your customisations on various workstations as quickly as possible is also... amazing.

Automate all the boring things.

where: os.name == "linux"
# https://comtrya.dev/actions.html
actions:
# https://comtrya.dev/files-and-directories.html#filecopy
- action: file.copy
from: bashrc
to: "{{ user.config_dir }}/.bashrc
# https://comtrya.dev/packages.html#packageinstall
- action: package.install
name: curl
- action: package.install
list:
- wget
- htop
# https://comtrya.dev/binary.html#binarygithub
- action: binary.github
name: ubi
directory: /usr/local/bin
repository: houseabsolute/ubi
version: v0.6.1
- action: binary.github
name: ubi
directory: /usr/local/bin
repository: DavidoTek/ProtonUp-Qt
version: v2.12.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment