1
0
Fork 0
Personal portage overlay for Gentoo
  • Shell 87.8%
  • Ruby 12.2%
Find a file
Christian Höppner 3dfd9e646e chore: bump packages
2026-07-27 20:59:30 +01:00
.mise/tasks feat: add overlay update-check task 2026-06-07 22:01:38 +01:00
acct-group feat: add factorio headless server ebuilds 2026-07-11 15:04:17 +01:00
acct-user/factorio feat: add factorio headless server ebuilds 2026-07-11 15:04:17 +01:00
dev-lua/lua-curl feat(portage): rusty path of building 2026-05-23 20:03:49 +01:00
dev-util/mise chore: bump packages 2026-07-27 20:59:30 +01:00
eclass feat: add factorio headless server ebuilds 2026-07-11 15:04:17 +01:00
games-emulation/mame-tools fix(check): track pulsar via se-linux-compat; mame via releases 2026-06-07 22:30:34 +01:00
games-simulation chore(factorio-headless-experimental): bump to 2.1.12 2026-07-22 21:54:57 +01:00
games-util chore: bump packages 2026-07-27 20:59:30 +01:00
gui-apps/1password chore(1password): bump to 8.12.28 2026-07-22 21:54:57 +01:00
metadata chore: rename overlay to mkaito 2026-06-07 02:05:17 +01:00
net-misc/jdownloader2-bin feat: gentoo system config for aldheim 2026-04-05 04:55:07 +01:00
profiles chore: rename overlay to mkaito 2026-06-07 02:05:17 +01:00
.gitignore feat: gentoo system config for aldheim 2026-04-05 04:55:07 +01:00
mise.toml feat: self-contained vendor regeneration via mise task 2026-06-07 02:10:27 +01:00
README.md feat: add overlay update-check task 2026-06-07 22:01:38 +01:00

mkaito — personal Gentoo overlay

Local Portage overlay (repo_name = mkaito). Packages Gentoo doesn't ship, or that were last-rited upstream, plus a few binary repacks. Single-user; not shaped for public consumption.

Portage reads it in place via /etc/portage/repos.conf/local.conf ([mkaito], location = /home/chris/dev/portage, auto-sync = no), which the dotfiles system-config deploy writes (mise run system:common on the gentoo host). Edit ebuilds here; portage sees them directly. Push to forgejo for backup.

Tasks

mise run check                      # check every package vs upstream latest
mise run check games-util/rimsort   # one package
mise run vendor                     # (re)generate cargo vendor tarballs
mise run vendor -- --force          # ... overwriting existing ones

check reports ok / OUTDATED current -> latest / CHECK current ?? latest (version not auto-comparable, e.g. date-stamped repacks) / skip (no upstream) / ERROR. Exits non-zero if anything is outdated or errored. Set GH_TOKEN/GITHUB_TOKEN to avoid GitHub's unauthenticated rate limit.

Update source per package

check resolves each package's upstream from, in order:

  1. an # UPDATE: directive comment in the (newest) ebuild,
  2. else the first <remote-id type="github"> in metadata.xml,
  3. else it's skipped (no trackable upstream).

Directive grammar:

# UPDATE: github <owner>/<repo> [tags] [pin=<EBUILD_VAR>] [check]
# UPDATE: skip [reason]
  • tags — use the repo's tags instead of releases/latest.
  • pin=<VAR> — compare an ebuild variable's value instead of PV.
  • check — never claim ok/outdated; always show both (for PVs that don't map to upstream tags, e.g. the date-stamped pulsar repack).

Add a directive when the github remote-id isn't the thing to track, or the version mapping is non-trivial. Plain github packages need nothing.

Updating a package

  1. mise run check — see what's OUTDATED.
  2. Bump the version: git mv <cat>/<pkg>/<pkg>-OLD.ebuild .../<pkg>-NEW.ebuild (binary repacks: also bump any in-ebuild version/SHA constants).
  3. Regenerate the Manifest: ebuild <cat>/<pkg>/<pkg>-NEW.ebuild manifest (fetches the distfile, writes checksums). Rust ebuilds (dev-util/mise, games-util/rusty-path-of-building) also need mise run vendor -- --force.
  4. pkgcheck scan <cat>/<pkg> — must be clean.
  5. Build/install: sudo emerge -av =<cat>/<pkg>-NEW.