A PPA repository for deb packages:
# Usage
### Repository
$ sudo curl -SsL -o /etc/apt/sources.list.d/tmiland.list https://deb.tmiland.com/debian/tmiland.list
$ curl -SsL https://deb.tmiland.com/debian/KEY.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/tmiland-archive-keyring.gpg >/dev/null
$ sudo apt update
$ sudo apt install {package-name}
Package names: teamspeak3-client github-desktop invidious-updater
Each tracked package is a declarative config in packages/<name>.toml:
repo = 'owner/name' # GitHub repo that publishes releases
asset = 'pkg_.*_all\.deb' # regex matching the .deb release asset
keep_versions = 2 # optional: only keep the newest N debs
package = 'apt-name' # optional: override apt package name (stub repacks)
To add an app: drop a new .toml in packages/ and commit — the
update workflow picks it up on the next
run (hourly, or manual via Actions → Update apt repo → Run workflow).
The workflow checks every package, downloads new versions, regenerates and
signs the repo metadata, smoke-tests it with apt, and pushes to master
(served via GitHub Pages).
Two packages are special:
icecat — currently unavailable: the package was an installer-stub
that downloads binaries from icecatbrowser.org at install time, and that
site is down (and GNU’s own releases stopped in 2019). The icecat debs are
therefore removed from the repo until a working upstream source exists.
update-icecat.sh remains in place to re-publish it when that happens.
As a free, actively maintained alternative in the same spirit (libre, privacy-hardened, no telemetry), use LibreWolf’s official signed apt repository instead:
sudo apt update && sudo apt install extrepo -y
sudo extrepo enable librewolf
sudo apt update && sudo apt install librewolf -y
invidious-updater — upstream no longer publishes .deb assets; the package is updated manually when needed.
# Credits