kir68k / xira

Xira ~ A portage repository (also one of my aliases)
https://tea.krxt.dev/kir68k/xira
ISC License
0 stars 0 forks source link
gentoo gentoo-overlay linux portage-overlay

kir68k/xira

~ A Clang-optimized Portage overlay ~

Package count

42 (2024-05-09 20:12 CEST)

Counted by:

ls -Fd */* | grep '/$' | grep -Ev '^(profiles|metadata)' | wc -l

Taken from a very cool overlay

Overview

This is a personal portage overlay, which was initially created with a goal in mind of adding patches to C/C++ programs which can't compile on Clang either with default CFLAGS, or with my more extreme ones (per features/stylize).

Due to certain... reasons... IRL, after August of 2023 I haven't had any motivation to do anything, including modifying anything here. My motivation has been coming back as of writing, but I've shifted the goal. I don't think I could maintain what I had in mind by myself, and most things seem to build with my settings, or without using LTO.

Now this repo is primarily for packages related to gnome, such as video-trimmer or secrets, and Source Engine/SRCDS related tools. The rest is programs I haven't seen packaged in any other repo, that I use.

[!NOTE] I want to keep this repo relatively minimal for ease of maintenance. Before remaking this README, there were 72 ebuilds in total.

Enabling

To enable this overlay, use eselect-repository.

eselect repository enable xira
emaint sync -r xira

Information

License info

Every ebuild I wrote here is licensed under the ISC License. Ebuilds I have copied from e.g. the main repository preserve their original GPLv2 header and authors.

[!IMPORTANT] I am not a legal expert. As far as I understand ISC is GPLv2 compatible, but if there are any issues, please make an issue or message me here.

Requirements

[!NOTE] Everything in this repository should compile using either LLVM/Clang or GCC.\ I only test using portage settings from features/stylize, i.e. ThinLTO, x86-64-v3, LLVM toolchain.\

[!WARNING] The LLVM profiles from here use the main Gentoo ones as parent, but contain extra changes, through features/stylize. Most notably, they set -flto=thin and -fsplit-lto-unit in C(XX)FLAGS.

Due to -fsplit-lto-unit, ALL installed Qt dev-qt packages need to be rebuilt, if they don't use it. If you have any suggestions or think something's wrong with it, please make an issue or PR.

What's in here?

A directory structure and explanations are listed below.

xira
├── [ebuild categories]
├── metadata
├── profiles
│   ├── features
│   │   └── stylize
│   ├── llvm-desktop
│   ├── llvm-desktop-gnome
│   ├── llvm-systemd-desktop
│   └── llvm-systemd-desktop-gnome
└── metadata/sets
    ├── llvm-complete
    ├── mail-prequisites
    └── openwrt-prequisites