Giter Site home page Giter Site logo

gmh5225 / xira Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gentoo-mirror/xira

0.0 0.0 0.0 287 KB

An LLVM-centric personal overlay, with clang fixes to existing builds, and newly found software, patched or not.

Home Page: https://github.com/kir68k/xira

License: ISC License

Shell 90.12% Roff 9.88%

xira's Introduction

Xira

~ An LLVM-centric Portage overlay ~

⚠️ Experimental nature ⚠️

I don't advise you use this overlay without the 17.1 clang/23.0 llvm profile selected, preferably the modified ones here, which use 23.0 llvm[-systemd] profiles.
This project is also in its early stage, which might cause frequent changes, and future plans.

Note

The LLVM profiles from here use the main repo ones as parent, but contain extra changes.
Most notably setting -fsplit-lto-unit in C(XX)FLAGS, which requires e.g. LLVM and Qt packages being rebuilt, if they don't use it.

Enabling

To enable this overlay, use eselect-repository.

This overlay is now in the official list, so you can simply call this command:

eselect repository enable xira

You can use codeberg.org/kir68k/xira, as well as my gitea instance
Afterwards, run emaint for synchronizing

emaint sync -r xira

Information

License info

Every ebuild I wrote here is licensed under ISC. Ebuilds I have copied from e.g. the main repository preserve their original GPLv2 header and authors. I am not a legal expert. As far as I understand ISC is GPLv2 compatible, but if there are any issues, please message me here, or make an issue on GitHub/Codeberg.

Packages in here

Mostly packages I haven't seen anywhere else, like other overlays tend to do. As said, this overlay mostly focuses on existing ebuilds that don't build using clang with default or weird compiler options that I use, so:

  • Clang build fixes
  • Gnome apps I haven't seen anywhere else
  • Live versions of existing ebuilds (main or overlays)

Requirements

  • x86-64-v3 compatible machine
    • CFLAGS in profiles and some ebuilds explicitly state -march=x86-64-v3, as of now.
  • LLVM profile
    • Best is to install using the LLVM stage3.
    • Use either the main repository LLVM profile, or the llvm-desktop profiles here (preferred).
  • GURU Overlay
    • Some ebuilds might have dependencies that exist only in the GURU overlay.

Micro-commits

These are very small commits I might create at times, mostly for critical things required to be added or removed, without other additions.

Why?

Because I can :3
In all seriousness, this overlay exists because of:

  • Me wanting to put my changes to existing ebuilds somewhere
  • Wanting to compile as much as possible using clang
    • Also with ridiculous compiler flags
  • In general, have a place for LLVM related things (profiles, ebuilds, ...)

What's in here?

A directory structure and explanations are listed below.

xira
├── [ebuild categories]
├── metadata
├── profiles
│   ├── features
│   │   ├── llvm-live
│   │   └── stylize
│   ├── llvm-desktop
│   ├── llvm-systemd-desktop
│   ├── llvm-live-desktop
│   └── llvm-live-systemd-desktop
└── sets
    ├── llvm-complete
    ├── mail-prequisites
    └── openwrt-prequisites
  • profiles
    • llvm-live
      • Unmasks Git versions of LLVM and everything in @llvm-complete
    • stylize
      • Primary features, currently including: Better *FLAGS, package masks
  • sets
    • Package sets for convenience, e.g. to install all LLVM related packages.

Features

  • New ebuilds not in the main/guru repo
  • Existing ebuilds fixed for use with Clang/libc++
    • Fixed here means either changing the ebuild itself, or simply passing patches to it.
  • Stylize: Better compiler flags, package masks, and more to come. This is the main part of the overlay's profiles.
  • ... More in the future, maybe?

xira's People

Contributors

kir68k avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.