An oasis of solid ebuilds
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github
.idea
.travis
_tools
app-admin
app-arch
app-benchmarks
app-crypt/ima-evm-utils
app-dicts
app-doc
app-editors/mle
app-emulation
app-misc
app-portage
app-shells
app-text
assets
dev-cpp
dev-db
dev-dotnet/rider
dev-java
dev-libs
dev-php
dev-python
dev-ruby/rubymine
dev-util
dev-vcs
eclass
kde-misc
licenses
mail-client/aerc
media-fonts
media-gfx
media-libs
media-plugins
media-sound
media-video
metadata
net-analyzer
net-dns
net-im
net-libs
net-misc
net-p2p
net-vpn/miredo
net-wireless/wpa_supplicant
profiles
raspberrypi/firmware
sci-calculators/speedcrunch
sci-geosciences
sci-libs/proj
sci-mathematics/mathematica-bin
sys-apps
sys-auth
sys-block
sys-boot
sys-fs
sys-libs
sys-process
www-client
www-plugins/chromium-codecs-ffmpeg-extra
x11-apps/radeontop
x11-libs
x11-misc
x11-terms/qterminal
x11-wm/qtile
.gitignore
.kateconfig
.mailmap
.travis.yml
LICENSE
LISTING.md
README.md
repositories.xml

README.md

Rindeal's Ebuild Repository logo

Packages done right™

Master Build Status Docker Build StatusDocker Build Status
Last Commit Status Commit Activity in 4 Weeks Commit Activity in a year
Issue Closure Stats Pull Request Closure Stats

Many ebuilds here are my own creatures, others are heavily modified forks, but all share the following:

  • code in ebuilds is clean and documented
  • USE flags are provided for almost any build-time option
    • instead of packing multitude of options under a single feature as Gentoo™ devs do
  • mostly sane default configurations (default USE-flags, config files, ...)
    • this means default config files of some programs is modified for a better UX from the start
  • exclusive systemd support
    • systemd is in no way perfect, but it's definitely better than OpenRC+cron
  • no libav, libressl, ... support
  • locales support (nls/l10n_* USE-flags)
    • because I don't like having hundreds of MBs consumed by translation files
  • x86_64/armv6/armv7/armv8 architectures only
    • a lot of branching and patching goes into maintaining exotic arches
  • only the native targets are supported
    • the support for non-native targets increases the complexity of ebuilds by an order of magnitude
    • ARM arches are backwards compatible so it shouldn't be a problem to compile natively on newer HW
    • the question of how to take care of legacy 32-bit binaries is yet to be decided

You can visit a user-friendly list of packages, where the chances are high for you to discover some great new software! Also if you know about a not-yet-packaged software that is really worth packaging, you can demand it on the issue tracker.

How to install this repository

Manually (recommended)

1. Add an entry to /etc/portage/repos.conf:

[rindeal]
## set this to any location you want
location = /var/cache/portage/repos/rindeal
sync-uri = https://ebuilds.janchren.eu/repos/rindeal/.git
sync-type = git
auto-sync = yes
## prefer my packages over the Gentoo™ ones to improve UX and stability (recommended by 9/10 IT experts)
priority = 9999

2. Sync

# Preferrably
$ eix-sync
# or if you need to
$ emerge --sync

Automatically with Layman

$ layman -o 'https://ebuilds.janchren.eu/repos/rindeal/repositories.xml' -f -a rindeal

Additional repository configuration

Enable "unstable" packages

Most packages in this repository have tilde before their keywords. Only some old packages or packages which have to satisfy Gentoo dependencies have been marked "stable". So if you want to enable the full potential of this repository, make sure you have the following configuration enabled:

/etc/portage/package.accepted_keywords:

*/*::rindeal ~amd64  # or ~arm/~arm64

Prevent collisions between this repository and Gentoo™ repository

Many packages here have their inferior counterparts in the Gentoo™ repository. All my ebuild have been coded with the assumption that if there is such an overlap, it's always resolved in favour of my repository. Breaking this assumption may lead to all kinds of nasty issues. To make sure you're using only packages from my repository, there are several regularly updated package.mask files in profiles/mask-alt-pkgs directory, which you can link to your /etc/portage/package.mask directory and thus mask all Gentoo™ counterparts of packages from this repository. To help automate the setup of these symlinks, I've created a small script called profiles/mask-alt-pkgs/link.sh, which you can use like this:

$ <RINDEAL_REPO_DIR>/profiles/mask-alt-pkgs/link.sh /etc/portage/package.mask/rindeal-mask-alt-pkgs/

Quality Assurance

You should be able to use any package from my repository without regrets, because I do and I have quite high standards. To achieve this goal I'm using several safety guards:

  • my brain (not always so obvious)
  • continuous integration servers, which run:
  • last but not least I wish really hard it would all just work 🦄 🌈

This all, of course, doesn't prevent build failures, missing dependencies, etc. So, should you find any issues, don't like something or just want to report morning news, please send me a PR or file an issue.


Colophon

  • All code in this repo is licenced under GPL-2 (full licence), if not stated otherwise.
  • As opposed to other similar repositories the copyright to work that goes into developing this repository is not dedicated to the Gentoo Foundation, Inc., which means it cannot be legally copied to the main Gentoo™ ebuild repository.
    TL;DR: if you're trying to get a code from here to the main Gentoo™ ebuild repository, you're out of luck.
  • Gentoo is a trademark of the Gentoo Foundation, Inc.
  • Animal vector designed by Freepik