Go based buildbot to build official Archlinux repos against -march & -O3
Go to file
Giovanni Harting 7fe1ea4353 improve nspawn error handling 2021-09-09 00:27:43 +02:00
ent Hash each PKGBUILD and compare before parsing, fixes #25 2021-08-30 11:02:06 +02:00
tpl added overflow for mobile/small screens 2021-08-27 03:45:04 +02:00
.gitignore inital commit 2021-06-10 21:32:11 +02:00
LICENSE added license and service file 2021-06-12 20:09:08 +02:00
README.md Added first faq 2021-08-12 14:28:13 +02:00
alhp.service parse all packages right on start. output coverage stats. 2021-07-01 21:13:48 +02:00
config.yaml Added pre-build dependency version check (#32) 2021-07-27 02:43:30 +02:00
git_clean.sh newline for .sh, trying to get sudo to work 2021-06-30 14:54:31 +02:00
go.mod Hash each PKGBUILD and compare before parsing, fixes #25 2021-08-30 11:02:06 +02:00
go.sum Hash each PKGBUILD and compare before parsing, fixes #25 2021-08-30 11:02:06 +02:00
main.go added purging of failed packages again 2021-09-07 12:49:01 +02:00
utils.go improve nspawn error handling 2021-09-09 00:27:43 +02:00

README.md

alhp

Build script for archlinux instructionset enabled repos. All packages are build with -march=<cpu-set> -O3. Some packages will fail to build, they will just be provided from the official repos as usual.

Package status page

Check your system for support

Important: Before you enable any of these repos, check if your system supports x86-64-v3. You can do that with /lib/ld-linux-x86-64.so.2 --help. If you don't check beforehand you might be unable to boot your system anymore and need to downgrade any package that you may have upgraded.

Example output snippet for a system supporting up to x86-64-v3:

Subdirectories of glibc-hwcaps directories, in priority order:
  x86-64-v4
  x86-64-v3 (supported, searched)
  x86-64-v2 (supported, searched)

Enable Repos

To enable these complement repos you need to add them above the regular repos in /etc/pacman.conf

Example pacman.conf

[core-x86-64-v3]
Server = https://alhp.harting.dev/$repo/os/$arch/

[extra-x86-64-v3]
Server = https://alhp.harting.dev/$repo/os/$arch/

[community-x86-64-v3]
Server = https://alhp.harting.dev/$repo/os/$arch/

[core]
Include = /etc/pacman.d/mirrorlist

[extra]
Include = /etc/pacman.d/mirrorlist

[community]
Include = /etc/pacman.d/mirrorlist

Replace x86-64-v3 with your cpu-set. More information about all available options on this gcc page. Currently, alhp.harting.dev only builds for x86-64-v3 (list is subject to change). You can see all available repositories here.

After finished adding the repos to pacman.conf you need to import and sign the used pgp key:

Import:

pacman-key --keyserver keyserver.ubuntu.com --recv-keys 0D4D2FDAF45468F3DDF59BEDE3D0D2CD3952E298

Local sign:

pacman-key --lsign-key 0D4D2FDAF45468F3DDF59BEDE3D0D2CD3952E298

Update package database and upgrade:

pacman -Suy

Remove Repos

To disable ALHP remove all *-x86-64-v3 entries in /etc/pacman.conf.

After that you can refresh pacmans databases and downgrade all packages like:

pacman -Suuy

Package eligibility

Packages excluded from building (besides all 'any' architecture packages) are being listed in issue #16. Also package status page.

FAQ

error: *-x86-64-v3: signature from "Archlinux CIE Repos (Build 2020/2021) cie@harting.dev" is unknown trust

You get this because the new, extended key has unknown trust value attached to it. To fix it, first import the key again to be sure you got the extended one: pacman-key --keyserver keyserver.ubuntu.com --recv-keys 0D4D2FDAF45468F3DDF59BEDE3D0D2CD3952E298

After that you just have to set the trust on this key with (as root, for pacman-key):

pacman-key --edit-key 0D4D2FDAF45468F3DDF59BEDE3D0D2CD3952E298

pub  rsa4096/E3D0D2CD3952E298
     created: 2020-08-12  expires: 2022-07-09  usage: SC  
     trust: unknown       validity: unknown
[ unknown] (1). Archlinux CIE Repos (Build 2020/2021) <cie@harting.dev>

gpg> trust
pub  rsa4096/E3D0D2CD3952E298
     created: 2020-08-12  expires: 2022-07-09  usage: SC  
     trust: unknown       validity: unknown
[ unknown] (1). Archlinux CIE Repos (Build 2020/2021) <cie@harting.dev>

Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)

  1 = I don't know or won't say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu

Your decision? 4