Skip to content
isaacvargPublic

About

A command-line tool that helps manage packages, apps and plugins for your dotfiles.

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Latest commit

 

History

79 Commits

Folders and files

Repository files navigation

Dotpak

screenshot of dotpak

A command-line tool that helps manage packages, apps and plugins for your dotfiles.

dotpak lets you declare the packages, apps, and plugins you want installed across machines in a single manifest, organize them into groups (like work, personal), and install them all with one command.

gif of dotpak

Dotpak pairs well with a dotfiles manager like chezmoi. Add the ~/.config/dotpak to your chezmoi, create a chezmoi script and using template variables and run dotpak install -g <group> to have a new computer ready to go. A more thorough tutorial will come.

Currently works with:

  • pacman,
  • AUR
  • Flatpak
  • Omarchy Quattro plugins

Installation

Requirements

  • Arch Linux or an Arch-based distro for pacman/AUR support
  • An AUR helper (yay, paru, or pikaur) for aur entries
  • Flatpak for flatpak entries
  • Omarchy v4.0.0+ for omarchy entries

AUR

yay -S dotpak-bin

Release

Download the appropriate archive for your platform from the releases page and place the dotpak binary on your PATH.

From source

go install github.com/isaacvarg/dotpak@latest

Usage

Launch TUI to add to manifest

dotpak

Add an entry to the manifest

dotpak add <name> -i <installType> [-g <group>] [-c <installCommand>]
  • -i, --installType (required): pacman, aur, flatpak, omarchy, mise
  • -g, --group: group to add this entry to (defaults to all)
  • -c, --installCommand: the actual command/package id to install, if it differs from (e.g. a Flathub app ID or an Omarchy plugin repo)

Shortcuts for the install type can also be used:

  • -p for pacman
  • -a for AUR
  • -f for flatpak
  • -m for mise
  • -o for omarchy quattro plugins

Examples:

dotpak add neovim -i pacman
dotpak add spotify -i flatpak -c com.spotify.Client
dotpak add my-omarchy-theme -i omarchy -c github.com/user/repo -g personal

Install everything in a group

dotpak install [-g <group>]

Entries in the all group are always included plus the entries in the specified group. This will install each application via the install type

List manifest entries

dotpak list [-g <group>] [-i <installType>]

Opens a list of every manifest entry and stays there until you quit. -g and -i choose the set before the list opens. When stdout is not a terminal, the command exits with an error and prints no table.

Remove an entry

dotpak remove <name>

Manage groups

dotpak group create <name>
dotpak group list

About

A command-line tool that helps manage packages, apps and plugins for your dotfiles.

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages