summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/accountsservice/Manifest3
-rw-r--r--sys-apps/accountsservice/accountsservice-0.6.50-r1.ebuild60
-rw-r--r--sys-apps/accountsservice/accountsservice-0.6.55.ebuild71
-rw-r--r--sys-apps/accountsservice/accountsservice-23.13.9.ebuild98
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch51
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.50-loaded-state.patch36
-rw-r--r--sys-apps/accountsservice/files/accountsservice-22.04.62-gentoo-system-users.patch58
-rw-r--r--sys-apps/accountsservice/files/accountsservice-23.13.9-generate-version.patch30
-rw-r--r--sys-apps/accountsservice/files/accountsservice-23.13.9-musl-fixes.patch52
-rw-r--r--sys-apps/accountsservice/metadata.xml21
-rw-r--r--sys-apps/ack/Manifest5
-rw-r--r--sys-apps/ack/ack-3.0.0.ebuild29
-rw-r--r--sys-apps/ack/ack-3.2.0.ebuild29
-rw-r--r--sys-apps/ack/ack-3.3.1.ebuild29
-rw-r--r--sys-apps/ack/ack-3.4.0.ebuild29
-rw-r--r--sys-apps/ack/ack-3.7.0.ebuild29
-rw-r--r--sys-apps/ack/files/ack-3.0.0-gentoo.patch23
-rw-r--r--sys-apps/ack/metadata.xml7
-rw-r--r--sys-apps/acl/Manifest3
-rw-r--r--sys-apps/acl/acl-2.2.53-r1.ebuild55
-rw-r--r--sys-apps/acl/acl-2.2.53.ebuild55
-rw-r--r--sys-apps/acl/acl-2.3.1-r2.ebuild81
-rw-r--r--sys-apps/acl/acl-2.3.2-r1.ebuild55
-rw-r--r--sys-apps/acl/files/acl-2.3.1-musl-1.2.4-lfs64-fix.patch37
-rw-r--r--sys-apps/acl/metadata.xml3
-rw-r--r--sys-apps/agedu/Manifest3
-rw-r--r--sys-apps/agedu/agedu-20200617.ebuild37
-rw-r--r--sys-apps/agedu/agedu-20200705.ebuild37
-rw-r--r--sys-apps/agedu/agedu-20211129.ebuild42
-rw-r--r--sys-apps/agedu/files/agedu-20211129-fix-automagic-halibut-docs.patch48
-rw-r--r--sys-apps/agedu/files/agedu-r9671-fix-automagic.patch43
-rw-r--r--sys-apps/agedu/metadata.xml7
-rw-r--r--sys-apps/aix-miscutils/Manifest1
-rw-r--r--sys-apps/aix-miscutils/aix-miscutils-0.1.1671.ebuild13
-rw-r--r--sys-apps/aix-miscutils/metadata.xml11
-rw-r--r--sys-apps/amdgpu_top/Manifest354
-rw-r--r--sys-apps/amdgpu_top/amdgpu_top-0.7.0.ebuild426
-rw-r--r--sys-apps/amdgpu_top/metadata.xml11
-rw-r--r--sys-apps/apmd/apmd-3.2.2_p14-r1.ebuild78
-rw-r--r--sys-apps/apmd/apmd-3.2.2_p14-r3.ebuild86
-rw-r--r--sys-apps/apmd/files/apmd-3.2.2-libtool.patch124
-rw-r--r--sys-apps/apmd/metadata.xml2
-rw-r--r--sys-apps/apparmor-utils/Manifest5
-rw-r--r--sys-apps/apparmor-utils/apparmor-utils-2.13.4-r1.ebuild86
-rw-r--r--sys-apps/apparmor-utils/apparmor-utils-3.0.0-r1.ebuild88
-rw-r--r--sys-apps/apparmor-utils/apparmor-utils-3.0.10-r1.ebuild79
-rw-r--r--sys-apps/apparmor-utils/apparmor-utils-3.0.8.ebuild87
-rw-r--r--sys-apps/apparmor-utils/apparmor-utils-3.1.4-r1.ebuild79
-rw-r--r--sys-apps/apparmor-utils/metadata.xml6
-rw-r--r--sys-apps/apparmor/Manifest5
-rw-r--r--sys-apps/apparmor/apparmor-2.13.4.ebuild67
-rw-r--r--sys-apps/apparmor/apparmor-3.0.0.ebuild72
-rw-r--r--sys-apps/apparmor/apparmor-3.0.10.ebuild94
-rw-r--r--sys-apps/apparmor/apparmor-3.0.8.ebuild94
-rw-r--r--sys-apps/apparmor/apparmor-3.1.4.ebuild94
-rw-r--r--sys-apps/apparmor/files/apparmor-2.13.1-makefile.patch25
-rw-r--r--sys-apps/apparmor/files/apparmor-3.0.0-makefile.patch18
-rw-r--r--sys-apps/apparmor/files/apparmor-3.0.5-makefile.patch18
-rw-r--r--sys-apps/apparmor/files/apparmor-init91
-rw-r--r--sys-apps/apparmor/files/apparmor-init-12
-rw-r--r--sys-apps/apparmor/metadata.xml7
-rw-r--r--sys-apps/apply-default-acl/apply-default-acl-0.4.4.ebuild6
-rw-r--r--sys-apps/apply-default-acl/metadata.xml2
-rw-r--r--sys-apps/arch-chroot/Manifest1
-rw-r--r--sys-apps/arch-chroot/arch-chroot-28.ebuild32
-rw-r--r--sys-apps/arch-chroot/metadata.xml19
-rw-r--r--sys-apps/arrayprobe/arrayprobe-2.0-r2.ebuild25
-rw-r--r--sys-apps/arrayprobe/arrayprobe-2.0-r3.ebuild24
-rw-r--r--sys-apps/arrayprobe/metadata.xml5
-rw-r--r--sys-apps/asahi-bless/Manifest64
-rw-r--r--sys-apps/asahi-bless/asahi-bless-0.3.0.ebuild98
-rw-r--r--sys-apps/asahi-bless/metadata.xml15
-rw-r--r--sys-apps/asahi-configs/asahi-configs-1.0.ebuild29
-rw-r--r--sys-apps/asahi-configs/files/baloo2
-rw-r--r--sys-apps/asahi-configs/files/envvars3
-rw-r--r--sys-apps/asahi-configs/files/kcminput2
-rw-r--r--sys-apps/asahi-configs/files/xorg-modeset6
-rw-r--r--sys-apps/asahi-configs/files/xorg-naturalscroll7
-rw-r--r--sys-apps/asahi-configs/metadata.xml14
-rw-r--r--sys-apps/asahi-nvram/Manifest64
-rw-r--r--sys-apps/asahi-nvram/asahi-nvram-0.2.1.ebuild98
-rw-r--r--sys-apps/asahi-nvram/metadata.xml17
-rw-r--r--sys-apps/asahi-scripts/Manifest1
-rw-r--r--sys-apps/asahi-scripts/asahi-scripts-20231219.1.ebuild46
-rw-r--r--sys-apps/asahi-scripts/files/makefile.patch6
-rw-r--r--sys-apps/asahi-scripts/files/update-m1n1-dtbs.patch13
-rw-r--r--sys-apps/asahi-scripts/metadata.xml14
-rw-r--r--sys-apps/asahi-startup-disk/Manifest98
-rw-r--r--sys-apps/asahi-startup-disk/asahi-startup-disk-0.1.3.ebuild134
-rw-r--r--sys-apps/asahi-startup-disk/metadata.xml15
-rw-r--r--sys-apps/attr/Manifest3
-rw-r--r--sys-apps/attr/attr-2.4.48-r3.ebuild92
-rw-r--r--sys-apps/attr/attr-2.4.48-r4.ebuild92
-rw-r--r--sys-apps/attr/attr-2.5.1-r2.ebuild97
-rw-r--r--sys-apps/attr/attr-2.5.2-r1.ebuild68
-rw-r--r--sys-apps/attr/attr-9999.ebuild60
-rw-r--r--sys-apps/attr/files/attr-2.4.48-perl-5.26.patch27
-rw-r--r--sys-apps/attr/files/attr-2.4.48-switch-back-to-syscall.patch123
-rw-r--r--sys-apps/attr/files/attr-2.5.1-r2-fix-symver.patch206
-rw-r--r--sys-apps/attr/metadata.xml3
-rw-r--r--sys-apps/audio-entropyd/audio-entropyd-2.0.3-r1.ebuild8
-rw-r--r--sys-apps/audio-entropyd/metadata.xml2
-rw-r--r--sys-apps/baobab/Manifest3
-rw-r--r--sys-apps/baobab/baobab-3.34.0.ebuild40
-rw-r--r--sys-apps/baobab/baobab-3.34.1.ebuild40
-rw-r--r--sys-apps/baobab/baobab-45.0.ebuild43
-rw-r--r--sys-apps/baobab/metadata.xml13
-rw-r--r--sys-apps/bar/bar-1.11.1.ebuild4
-rw-r--r--sys-apps/bar/metadata.xml2
-rw-r--r--sys-apps/baselayout-java/baselayout-java-0.1.0-r1.ebuild49
-rw-r--r--sys-apps/baselayout-java/baselayout-java-0.1.0-r2.ebuild49
-rw-r--r--sys-apps/baselayout-java/metadata.xml2
-rw-r--r--sys-apps/baselayout-prefix/Manifest9
-rw-r--r--sys-apps/baselayout-prefix/baselayout-prefix-2.2-r5.ebuild86
-rw-r--r--sys-apps/baselayout-prefix/baselayout-prefix-2.6-r1.ebuild336
-rw-r--r--sys-apps/baselayout-prefix/baselayout-prefix-2.6-r2.ebuild337
-rw-r--r--sys-apps/baselayout-prefix/metadata.xml10
-rw-r--r--sys-apps/baselayout/Manifest5
-rw-r--r--sys-apps/baselayout/baselayout-2.14-r2.ebuild352
-rw-r--r--sys-apps/baselayout/baselayout-2.14-r3.ebuild364
-rw-r--r--sys-apps/baselayout/baselayout-2.15.ebuild364
-rw-r--r--sys-apps/baselayout/baselayout-2.4.1-r2.ebuild248
-rw-r--r--sys-apps/baselayout/baselayout-2.6-r1.ebuild297
-rw-r--r--sys-apps/baselayout/baselayout-2.7.ebuild312
-rw-r--r--sys-apps/baselayout/baselayout-9999.ebuild226
-rw-r--r--sys-apps/baselayout/metadata.xml22
-rw-r--r--sys-apps/bat/Manifest368
-rw-r--r--sys-apps/bat/bat-0.15.4.ebuild216
-rw-r--r--sys-apps/bat/bat-0.23.0-r1.ebuild229
-rw-r--r--sys-apps/bat/bat-0.24.0-r1.ebuild258
-rw-r--r--sys-apps/bat/metadata.xml10
-rw-r--r--sys-apps/bfs/Manifest2
-rw-r--r--sys-apps/bfs/bfs-3.1.2.ebuild46
-rw-r--r--sys-apps/bfs/bfs-3.1.3-r1.ebuild51
-rw-r--r--sys-apps/bfs/metadata.xml14
-rw-r--r--sys-apps/biosdevname/Manifest1
-rw-r--r--sys-apps/biosdevname/biosdevname-0.7.2.ebuild24
-rw-r--r--sys-apps/biosdevname/biosdevname-0.7.3.ebuild14
-rw-r--r--sys-apps/biosdevname/metadata.xml19
-rw-r--r--sys-apps/biosdisk/biosdisk-1.01.ebuild4
-rw-r--r--sys-apps/biosdisk/metadata.xml4
-rw-r--r--sys-apps/bleachbit/Manifest3
-rw-r--r--sys-apps/bleachbit/bleachbit-4.0.0.ebuild74
-rw-r--r--sys-apps/bleachbit/bleachbit-4.4.2-r1.ebuild87
-rw-r--r--sys-apps/bleachbit/bleachbit-4.6.0-r1.ebuild87
-rw-r--r--sys-apps/bleachbit/metadata.xml8
-rw-r--r--sys-apps/bolt/Manifest6
-rw-r--r--sys-apps/bolt/bolt-0.9-r1.ebuild52
-rw-r--r--sys-apps/bolt/bolt-0.9-r2.ebuild57
-rw-r--r--sys-apps/bolt/bolt-0.9.1.ebuild58
-rw-r--r--sys-apps/bolt/bolt-0.9.2.ebuild71
-rw-r--r--sys-apps/bolt/bolt-0.9.3.ebuild71
-rw-r--r--sys-apps/bolt/bolt-0.9.6.ebuild71
-rw-r--r--sys-apps/bolt/bolt-0.9.7.ebuild71
-rw-r--r--sys-apps/bolt/files/bolt.openrc-r114
-rw-r--r--sys-apps/bolt/metadata.xml6
-rw-r--r--sys-apps/bubblewrap/Manifest2
-rw-r--r--sys-apps/bubblewrap/bubblewrap-0.4.1.ebuild49
-rw-r--r--sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild58
-rw-r--r--sys-apps/bubblewrap/files/bubblewrap-0.3.1-selinux-configure.patch224
-rw-r--r--sys-apps/bubblewrap/metadata.xml6
-rw-r--r--sys-apps/busybox/Manifest3
-rw-r--r--sys-apps/busybox/busybox-1.31.1-r2.ebuild338
-rw-r--r--sys-apps/busybox/busybox-1.32.0.ebuild337
-rw-r--r--sys-apps/busybox/busybox-1.36.1-r1.ebuild376
-rw-r--r--sys-apps/busybox/busybox-1.36.1-r2.ebuild377
-rw-r--r--sys-apps/busybox/busybox-9999.ebuild164
-rw-r--r--sys-apps/busybox/files/busybox-1.31.1-glibc-2.31.patch65
-rw-r--r--sys-apps/busybox/files/busybox-1.34.1-skip-selinux-search.patch21
-rw-r--r--sys-apps/busybox/files/busybox-1.36.0-fortify-source-3-fixdep.patch32
-rw-r--r--sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch53
-rw-r--r--sys-apps/busybox/files/crond.confd2
-rw-r--r--sys-apps/busybox/files/crond.initd12
-rw-r--r--sys-apps/busybox/files/mdev/dvbdev8
-rw-r--r--sys-apps/busybox/files/mdev/ide_links20
-rw-r--r--sys-apps/busybox/files/mdev/usbdev42
-rw-r--r--sys-apps/busybox/files/mdev/usbdisk_link36
-rw-r--r--sys-apps/busybox/metadata.xml2
-rw-r--r--sys-apps/byld/byld-1.0.3-r1.ebuild32
-rw-r--r--sys-apps/byld/byld-1.0.3.ebuild29
-rw-r--r--sys-apps/byld/metadata.xml2
-rw-r--r--sys-apps/cciss_vol_status/cciss_vol_status-1.12a-r1.ebuild18
-rw-r--r--sys-apps/cciss_vol_status/cciss_vol_status-1.12a.ebuild6
-rw-r--r--sys-apps/cciss_vol_status/metadata.xml5
-rw-r--r--sys-apps/ccs-tools/ccs-tools-1.8.3_p20130214.ebuild19
-rw-r--r--sys-apps/ccs-tools/metadata.xml4
-rw-r--r--sys-apps/checkpolicy/Manifest5
-rw-r--r--sys-apps/checkpolicy/checkpolicy-2.9.ebuild57
-rw-r--r--sys-apps/checkpolicy/checkpolicy-3.0.ebuild57
-rw-r--r--sys-apps/checkpolicy/checkpolicy-3.1.ebuild59
-rw-r--r--sys-apps/checkpolicy/checkpolicy-3.5.ebuild54
-rw-r--r--sys-apps/checkpolicy/checkpolicy-3.6.ebuild54
-rw-r--r--sys-apps/checkpolicy/checkpolicy-9999.ebuild25
-rw-r--r--sys-apps/checkpolicy/metadata.xml5
-rw-r--r--sys-apps/chname/chname-1.1-r1.ebuild30
-rw-r--r--sys-apps/chname/chname-1.1.ebuild32
-rw-r--r--sys-apps/chname/metadata.xml2
-rw-r--r--sys-apps/cinit/cinit-0.2.1-r1.ebuild42
-rw-r--r--sys-apps/cinit/cinit-0.2.1.ebuild4
-rw-r--r--sys-apps/cinit/files/cinit-0.2.1-musl-clang16-build-fix.patch43
-rw-r--r--sys-apps/cinit/metadata.xml2
-rw-r--r--sys-apps/ckbcomp/Manifest2
-rw-r--r--sys-apps/ckbcomp/ckbcomp-1.164.ebuild33
-rw-r--r--sys-apps/ckbcomp/ckbcomp-1.217.ebuild34
-rw-r--r--sys-apps/ckbcomp/metadata.xml2
-rw-r--r--sys-apps/clrngd/clrngd-1.0.3-r1.ebuild35
-rw-r--r--sys-apps/clrngd/clrngd-1.0.3-r2.ebuild35
-rw-r--r--sys-apps/clrngd/clrngd-1.0.3.ebuild23
-rw-r--r--sys-apps/clrngd/files/clrngd-1.0.3-implicit-func-declaration.patch27
-rw-r--r--sys-apps/clrngd/files/clrngd-init.d-r214
-rw-r--r--sys-apps/clrngd/metadata.xml2
-rw-r--r--sys-apps/collectl/collectl-4.3.1-r1.ebuild43
-rw-r--r--sys-apps/collectl/collectl-4.3.1.ebuild45
-rw-r--r--sys-apps/collectl/metadata.xml2
-rw-r--r--sys-apps/colorized-logs/Manifest3
-rw-r--r--sys-apps/colorized-logs/colorized-logs-2.4.ebuild24
-rw-r--r--sys-apps/colorized-logs/colorized-logs-2.5.ebuild24
-rw-r--r--sys-apps/colorized-logs/colorized-logs-2.6.ebuild21
-rw-r--r--sys-apps/colorized-logs/metadata.xml5
-rw-r--r--sys-apps/config-site/config-site-0.ebuild24
-rw-r--r--sys-apps/config-site/files/config.site.in10
-rw-r--r--sys-apps/config-site/metadata.xml7
-rw-r--r--sys-apps/consolation/metadata.xml2
-rw-r--r--sys-apps/conspy/Manifest3
-rw-r--r--sys-apps/conspy/conspy-1.10.ebuild34
-rw-r--r--sys-apps/conspy/conspy-1.14.ebuild35
-rw-r--r--sys-apps/conspy/conspy-1.16.ebuild28
-rw-r--r--sys-apps/conspy/metadata.xml3
-rw-r--r--sys-apps/coreutils/Manifest8
-rw-r--r--sys-apps/coreutils/coreutils-8.30.ebuild210
-rw-r--r--sys-apps/coreutils/coreutils-8.31-r1.ebuild190
-rw-r--r--sys-apps/coreutils/coreutils-8.32-r1.ebuild93
-rw-r--r--sys-apps/coreutils/coreutils-9.4-r1.ebuild308
-rw-r--r--sys-apps/coreutils/coreutils-9.4.ebuild306
-rw-r--r--sys-apps/coreutils/coreutils-9.5.ebuild305
-rw-r--r--sys-apps/coreutils/coreutils-9999.ebuild305
-rw-r--r--sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch52
-rw-r--r--sys-apps/coreutils/files/coreutils-9.4-CVE-2024-0684.patch31
-rw-r--r--sys-apps/coreutils/files/coreutils-9.4-gnulib-clang-18-c23-stdckdint.patch30
-rw-r--r--sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch165
-rw-r--r--sys-apps/coreutils/metadata.xml4
-rw-r--r--sys-apps/cpint/cpint-2.5.3.ebuild4
-rw-r--r--sys-apps/cpint/metadata.xml4
-rw-r--r--sys-apps/cpu-x/Manifest2
-rw-r--r--sys-apps/cpu-x/cpu-x-5.0.2.ebuild83
-rw-r--r--sys-apps/cpu-x/cpu-x-5.0.3.ebuild83
-rw-r--r--sys-apps/cpu-x/metadata.xml43
-rw-r--r--sys-apps/cpuid/Manifest5
-rw-r--r--sys-apps/cpuid/cpuid-20200427.ebuild33
-rw-r--r--sys-apps/cpuid/cpuid-20201006.ebuild33
-rw-r--r--sys-apps/cpuid/cpuid-20230614-r1.ebuild35
-rw-r--r--sys-apps/cpuid/cpuid-20240330-r1.ebuild35
-rw-r--r--sys-apps/cpuid/cpuid-20240409.ebuild35
-rw-r--r--sys-apps/cpuid/files/cpuid-20200203-makefile.patch37
-rw-r--r--sys-apps/cpuid/files/cpuid-20220620-makefile.patch37
-rw-r--r--sys-apps/cpuid/metadata.xml6
-rw-r--r--sys-apps/cracklib-words/Manifest2
-rw-r--r--sys-apps/cracklib-words/cracklib-words-2.9.11.ebuild27
-rw-r--r--sys-apps/cracklib-words/cracklib-words-2.9.6.ebuild28
-rw-r--r--sys-apps/cracklib-words/metadata.xml19
-rw-r--r--sys-apps/crazydiskinfo/crazydiskinfo-1.1.0-r1.ebuild28
-rw-r--r--sys-apps/crazydiskinfo/crazydiskinfo-1.1.0.ebuild28
-rw-r--r--sys-apps/crazydiskinfo/metadata.xml9
-rw-r--r--sys-apps/daemonize/daemonize-1.7.8.ebuild4
-rw-r--r--sys-apps/daemonize/metadata.xml7
-rw-r--r--sys-apps/daisydog/daisydog-2014.05.30-r1.ebuild33
-rw-r--r--sys-apps/daisydog/daisydog-2014.05.30.ebuild9
-rw-r--r--sys-apps/daisydog/files/daisydog.init.d2
-rw-r--r--sys-apps/daisydog/files/daisydog.init.d-r113
-rw-r--r--sys-apps/daisydog/metadata.xml9
-rw-r--r--sys-apps/darwin-miscutils/Manifest16
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-10.ebuild157
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-11.ebuild158
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild101
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-12.ebuild156
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-6-r1.ebuild139
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-8.ebuild134
-rw-r--r--sys-apps/darwin-miscutils/darwin-miscutils-9.ebuild131
-rw-r--r--sys-apps/darwin-miscutils/files/darwin-miscutils-12-md-modern-c.patch235
-rw-r--r--sys-apps/darwin-miscutils/files/darwin-miscutils-5-error.patch14
-rw-r--r--sys-apps/darwin-miscutils/files/darwin-miscutils-5-stdlib.patch20
-rw-r--r--sys-apps/darwin-miscutils/files/darwin-miscutils-5-w.patch10
-rw-r--r--sys-apps/darwin-miscutils/files/darwin-miscutils-6-w64.patch17
-rw-r--r--sys-apps/darwin-miscutils/metadata.xml6
-rw-r--r--sys-apps/dbus-broker/Manifest18
-rw-r--r--sys-apps/dbus-broker/dbus-broker-23.ebuild75
-rw-r--r--sys-apps/dbus-broker/dbus-broker-24.ebuild75
-rw-r--r--sys-apps/dbus-broker/dbus-broker-33-r1.ebuild65
-rw-r--r--sys-apps/dbus-broker/dbus-broker-33-r2.ebuild65
-rw-r--r--sys-apps/dbus-broker/dbus-broker-35.ebuild61
-rw-r--r--sys-apps/dbus-broker/dbus-broker-9999.ebuild56
-rw-r--r--sys-apps/dbus-broker/files/dbus-broker-33-strict-aliasing.patch207
-rw-r--r--sys-apps/dbus-broker/metadata.xml5
-rw-r--r--sys-apps/dbus/Manifest4
-rw-r--r--sys-apps/dbus/dbus-1.12.18.ebuild272
-rw-r--r--sys-apps/dbus/dbus-1.12.20.ebuild272
-rw-r--r--sys-apps/dbus/dbus-1.15.6.ebuild298
-rw-r--r--sys-apps/dbus/dbus-1.15.8.ebuild232
-rw-r--r--sys-apps/dbus/files/80-dbus13
-rw-r--r--sys-apps/dbus/files/80-dbus-r113
-rw-r--r--sys-apps/dbus/files/dbus-1.15.0-daemon-optional.patch65
-rw-r--r--sys-apps/dbus/files/dbus-1.15.0-enable-elogind.patch75
-rw-r--r--sys-apps/dbus/files/dbus-1.15.8-enable-elogind.patch65
-rw-r--r--sys-apps/dbus/files/dbus-daemon-optional.patch75
-rw-r--r--sys-apps/dbus/files/dbus-enable-elogind.patch73
-rw-r--r--sys-apps/dbus/metadata.xml4
-rw-r--r--sys-apps/dcfldd/Manifest7
-rw-r--r--sys-apps/dcfldd/dcfldd-1.3.4.1-r1.ebuild16
-rw-r--r--sys-apps/dcfldd/dcfldd-1.5.ebuild25
-rw-r--r--sys-apps/dcfldd/dcfldd-1.6.ebuild25
-rw-r--r--sys-apps/dcfldd/dcfldd-1.7.ebuild25
-rw-r--r--sys-apps/dcfldd/dcfldd-1.8.ebuild25
-rw-r--r--sys-apps/dcfldd/dcfldd-1.9-r1.ebuild30
-rw-r--r--sys-apps/dcfldd/dcfldd-1.9.1.ebuild30
-rw-r--r--sys-apps/dcfldd/metadata.xml3
-rw-r--r--sys-apps/dchroot/dchroot-0.12.1.ebuild28
-rw-r--r--sys-apps/dchroot/files/dchroot-0.12.1-make.patch16
-rw-r--r--sys-apps/dchroot/metadata.xml2
-rw-r--r--sys-apps/debianutils/Manifest3
-rw-r--r--sys-apps/debianutils/debianutils-4.11.1.ebuild43
-rw-r--r--sys-apps/debianutils/debianutils-4.11.2.ebuild45
-rw-r--r--sys-apps/debianutils/debianutils-5.14-r1.ebuild44
-rw-r--r--sys-apps/debianutils/metadata.xml8
-rw-r--r--sys-apps/diffutils/Manifest3
-rw-r--r--sys-apps/diffutils/diffutils-3.10.ebuild58
-rw-r--r--sys-apps/diffutils/diffutils-3.7-r1.ebuild43
-rw-r--r--sys-apps/diffutils/metadata.xml14
-rw-r--r--sys-apps/dmapi/Manifest1
-rw-r--r--sys-apps/dmapi/dmapi-2.2.12-r1.ebuild48
-rw-r--r--sys-apps/dmapi/files/dmapi-2.2.12-headers.patch16
-rw-r--r--sys-apps/dmapi/metadata.xml8
-rw-r--r--sys-apps/dmidecode/Manifest5
-rw-r--r--sys-apps/dmidecode/dmidecode-3.2.ebuild43
-rw-r--r--sys-apps/dmidecode/dmidecode-3.3.ebuild43
-rw-r--r--sys-apps/dmidecode/dmidecode-3.5-r2.ebuild51
-rw-r--r--sys-apps/dmidecode/dmidecode-3.5-r3.ebuild57
-rw-r--r--sys-apps/dmidecode/files/dmidecode-3.5-backport-HPE-OEM-record-137-fix.patch39
-rw-r--r--sys-apps/dmidecode/metadata.xml2
-rw-r--r--sys-apps/dnotify/dnotify-0.18.0-r1.ebuild24
-rw-r--r--sys-apps/dnotify/dnotify-0.18.0.ebuild26
-rw-r--r--sys-apps/dnotify/files/dnotify-0.18.0-nls.patch4
-rw-r--r--sys-apps/dnotify/metadata.xml2
-rw-r--r--sys-apps/dog/dog-1.7-r6.ebuild11
-rw-r--r--sys-apps/dog/metadata.xml2
-rw-r--r--sys-apps/dstat/dstat-0.7.4-r2.ebuild6
-rw-r--r--sys-apps/dstat/metadata.xml7
-rw-r--r--sys-apps/dtc/Manifest2
-rw-r--r--sys-apps/dtc/dtc-1.5.0-r2.ebuild87
-rw-r--r--sys-apps/dtc/dtc-1.5.0.ebuild58
-rw-r--r--sys-apps/dtc/dtc-1.6.0.ebuild11
-rw-r--r--sys-apps/dtc/dtc-1.7.0.ebuild76
-rw-r--r--sys-apps/dtc/dtc-9999.ebuild86
-rw-r--r--sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch48
-rw-r--r--sys-apps/dtc/files/dtc-1.5.0-fdt_check_full-visibility.patch12
-rw-r--r--sys-apps/dtc/files/dtc-1.5.0-gcc-10.patch50
-rw-r--r--sys-apps/dtc/files/dtc-1.7.0-meson-macos.patch39
-rw-r--r--sys-apps/dtc/files/dtc-1.7.0-meson-tests.patch27
-rw-r--r--sys-apps/dtc/metadata.xml2
-rw-r--r--sys-apps/duc/Manifest3
-rw-r--r--sys-apps/duc/duc-1.4.1-r1.ebuild86
-rw-r--r--sys-apps/duc/duc-1.4.3-r1.ebuild89
-rw-r--r--sys-apps/duc/duc-1.4.5.ebuild88
-rw-r--r--sys-apps/duc/duc-9999.ebuild13
-rw-r--r--sys-apps/duc/metadata.xml7
-rw-r--r--sys-apps/earlyoom/Manifest4
-rw-r--r--sys-apps/earlyoom/earlyoom-1.3.ebuild51
-rw-r--r--sys-apps/earlyoom/earlyoom-1.6.1.ebuild47
-rw-r--r--sys-apps/earlyoom/earlyoom-1.7-r1.ebuild64
-rw-r--r--sys-apps/earlyoom/earlyoom-9999.ebuild52
-rw-r--r--sys-apps/earlyoom/files/earlyoom6
-rw-r--r--sys-apps/earlyoom/files/earlyoom-1.3-test-fixed.patch34
-rw-r--r--sys-apps/earlyoom/files/earlyoom-r16
-rw-r--r--sys-apps/earlyoom/metadata.xml8
-rw-r--r--sys-apps/ed/Manifest8
-rw-r--r--sys-apps/ed/ed-1.15-r1.ebuild31
-rw-r--r--sys-apps/ed/ed-1.16.ebuild36
-rw-r--r--sys-apps/ed/ed-1.19-r1.ebuild48
-rw-r--r--sys-apps/ed/ed-1.20.1.ebuild48
-rw-r--r--sys-apps/ed/ed-1.20.ebuild48
-rw-r--r--sys-apps/ed/metadata.xml13
-rw-r--r--sys-apps/edac-utils/edac-utils-0.18-r2.ebuild64
-rw-r--r--sys-apps/edac-utils/edac-utils-0.18.ebuild49
-rw-r--r--sys-apps/edac-utils/files/edac-utils-0.18-mitac-hawk.patch25
-rw-r--r--sys-apps/edac-utils/files/edac.init16
-rw-r--r--sys-apps/edac-utils/files/edac.service11
-rw-r--r--sys-apps/edac-utils/metadata.xml13
-rw-r--r--sys-apps/edid-decode/Manifest3
-rw-r--r--sys-apps/edid-decode/edid-decode-0_pre20200720.ebuild35
-rw-r--r--sys-apps/edid-decode/edid-decode-0_pre20220319.ebuild34
-rw-r--r--sys-apps/edid-decode/edid-decode-0_pre20230131.ebuild34
-rw-r--r--sys-apps/edid-decode/edid-decode-9999.ebuild4
-rw-r--r--sys-apps/edid-decode/metadata.xml2
-rw-r--r--sys-apps/edid-fixdim/edid-fixdim-1.ebuild15
-rw-r--r--sys-apps/edid-fixdim/metadata.xml5
-rw-r--r--sys-apps/eless/Manifest1
-rw-r--r--sys-apps/eless/eless-0.7.ebuild30
-rw-r--r--sys-apps/eless/metadata.xml23
-rw-r--r--sys-apps/elfix/elfix-0.9.5.ebuild17
-rw-r--r--sys-apps/elfix/elfix-9999.ebuild17
-rw-r--r--sys-apps/elfix/metadata.xml6
-rw-r--r--sys-apps/epoch/Manifest2
-rw-r--r--sys-apps/epoch/epoch-1.2.1.ebuild73
-rw-r--r--sys-apps/epoch/epoch-1.2.2.ebuild73
-rw-r--r--sys-apps/epoch/epoch-1.3.0.ebuild32
-rw-r--r--sys-apps/epoch/epoch-9999.ebuild26
-rw-r--r--sys-apps/epoch/files/epoch-1.3.0-fix-main.patch4
-rw-r--r--sys-apps/epoch/metadata.xml7
-rw-r--r--sys-apps/etckeeper/Manifest4
-rw-r--r--sys-apps/etckeeper/etckeeper-1.18.14.ebuild78
-rw-r--r--sys-apps/etckeeper/etckeeper-1.18.18.ebuild97
-rw-r--r--sys-apps/etckeeper/etckeeper-1.18.20.ebuild100
-rw-r--r--sys-apps/etckeeper/etckeeper-1.18.21.ebuild100
-rw-r--r--sys-apps/etckeeper/files/etckeeper-1.18.14-gentoo.patch84
-rw-r--r--sys-apps/etckeeper/files/etckeeper-1.18.18-gentoo.patch70
-rw-r--r--sys-apps/etckeeper/files/etckeeper-conf-update-hook32
-rw-r--r--sys-apps/etckeeper/metadata.xml7
-rw-r--r--sys-apps/ethq/Manifest1
-rw-r--r--sys-apps/ethq/ethq-0.5.0.ebuild57
-rw-r--r--sys-apps/ethq/ethq-0.6.1.ebuild18
-rw-r--r--sys-apps/ethq/ethq-9999.ebuild21
-rw-r--r--sys-apps/ethq/metadata.xml6
-rw-r--r--sys-apps/ethtool/Manifest5
-rw-r--r--sys-apps/ethtool/ethtool-5.4.ebuild14
-rw-r--r--sys-apps/ethtool/ethtool-5.8-r1.ebuild25
-rw-r--r--sys-apps/ethtool/ethtool-5.9.ebuild20
-rw-r--r--sys-apps/ethtool/ethtool-6.6.ebuild21
-rw-r--r--sys-apps/ethtool/ethtool-6.7.ebuild21
-rw-r--r--sys-apps/ethtool/files/ethtool-5.8-avoid_bashisms.patch29
-rw-r--r--sys-apps/ethtool/files/ethtool-5.8-only-memset-non-NULL-link-settings.patch20
-rw-r--r--sys-apps/ethtool/metadata.xml2
-rw-r--r--sys-apps/exa/Manifest64
-rw-r--r--sys-apps/exa/exa-0.9.0-r1.ebuild110
-rw-r--r--sys-apps/exa/metadata.xml21
-rw-r--r--sys-apps/eza/Manifest184
-rw-r--r--sys-apps/eza/eza-0.18.6.ebuild260
-rw-r--r--sys-apps/eza/metadata.xml15
-rw-r--r--sys-apps/fakechroot/Manifest4
-rw-r--r--sys-apps/fakechroot/fakechroot-2.19.ebuild23
-rw-r--r--sys-apps/fakechroot/fakechroot-2.20.1.ebuild23
-rw-r--r--sys-apps/fakechroot/fakechroot-2.20.1_p2.ebuild41
-rw-r--r--sys-apps/fakechroot/metadata.xml2
-rw-r--r--sys-apps/fakeroot-ng/Manifest1
-rw-r--r--sys-apps/fakeroot-ng/fakeroot-ng-0.18-r1.ebuild16
-rw-r--r--sys-apps/fakeroot-ng/files/fakeroot-ng-gcc-4.8.2.patch10
-rw-r--r--sys-apps/fakeroot-ng/metadata.xml8
-rw-r--r--sys-apps/fakeroot/Manifest8
-rw-r--r--sys-apps/fakeroot/fakeroot-1.22.ebuild46
-rw-r--r--sys-apps/fakeroot/fakeroot-1.23.ebuild46
-rw-r--r--sys-apps/fakeroot/fakeroot-1.24.ebuild46
-rw-r--r--sys-apps/fakeroot/fakeroot-1.25.1.ebuild51
-rw-r--r--sys-apps/fakeroot/fakeroot-1.25.2.ebuild51
-rw-r--r--sys-apps/fakeroot/fakeroot-1.25.3.ebuild51
-rw-r--r--sys-apps/fakeroot/fakeroot-1.32.2.ebuild76
-rw-r--r--sys-apps/fakeroot/fakeroot-1.33.ebuild76
-rw-r--r--sys-apps/fakeroot/files/fakeroot-1.19-no-acl_h.patch37
-rw-r--r--sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch32
-rw-r--r--sys-apps/fakeroot/metadata.xml2
-rw-r--r--sys-apps/fbset/fbset-2.1.ebuild21
-rw-r--r--sys-apps/fbset/metadata.xml2
-rw-r--r--sys-apps/fd/Manifest166
-rw-r--r--sys-apps/fd/fd-8.1.1.ebuild110
-rw-r--r--sys-apps/fd/fd-9.0.0.ebuild167
-rw-r--r--sys-apps/fd/metadata.xml6
-rw-r--r--sys-apps/file/Manifest5
-rw-r--r--sys-apps/file/file-5.37-r1.ebuild128
-rw-r--r--sys-apps/file/file-5.38-r1.ebuild142
-rw-r--r--sys-apps/file/file-5.39-r3.ebuild146
-rw-r--r--sys-apps/file/file-5.45-r3.ebuild180
-rw-r--r--sys-apps/file/file-5.45-r4.ebuild179
-rw-r--r--sys-apps/file/file-9999.ebuild90
-rw-r--r--sys-apps/file/files/file-5.37-CVE-2019-18218.patch36
-rw-r--r--sys-apps/file/files/file-5.38-Revert-PR-93-iaeiaeiaeiae-Do-as-the-comment-says-and.patch40
-rw-r--r--sys-apps/file/files/file-5.38-The-executable-bit-is-only-set-when-DF_1_PIE-bit-is-.patch29
-rw-r--r--sys-apps/file/files/file-5.38-td-is-for-ptrdiff_t-not-for-off_t.patch27
-rw-r--r--sys-apps/file/files/file-5.39-add-missing-termios.patch30
-rw-r--r--sys-apps/file/files/file-5.39-portage-sandbox.patch26
-rw-r--r--sys-apps/file/files/file-5.39-seccomp-musl.patch37
-rw-r--r--sys-apps/file/files/file-5.43-seccomp-fstatat64-musl.patch22
-rw-r--r--sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch29
-rw-r--r--sys-apps/file/files/file-5.45-32-bit-time_t.patch34
-rw-r--r--sys-apps/file/files/file-5.45-seccomp-sandbox.patch56
-rw-r--r--sys-apps/file/files/file-5.45-weak-magic-shell.patch43
-rw-r--r--sys-apps/file/metadata.xml19
-rw-r--r--sys-apps/findutils/Manifest3
-rw-r--r--sys-apps/findutils/files/findutils-4.9.0-dash-tests.patch41
-rw-r--r--sys-apps/findutils/findutils-4.7.0.ebuild67
-rw-r--r--sys-apps/findutils/findutils-4.9.0-r2.ebuild101
-rw-r--r--sys-apps/findutils/metadata.xml3
-rw-r--r--sys-apps/firejail-lts/Manifest1
-rw-r--r--sys-apps/firejail-lts/files/firejail-lts-fix-compressed-manpages.patch17
-rw-r--r--sys-apps/firejail-lts/firejail-lts-0.9.56.2-r1.ebuild48
-rw-r--r--sys-apps/firejail-lts/firejail-lts-0.9.56.2-r2.ebuild57
-rw-r--r--sys-apps/firejail-lts/metadata.xml26
-rw-r--r--sys-apps/firejail/Manifest3
-rw-r--r--sys-apps/firejail/files/firejail-0.9.70-envlimits.patch12
-rw-r--r--sys-apps/firejail/files/firejail-0.9.70-firecfg.config.patch82
-rw-r--r--sys-apps/firejail/files/profile_display.local2
-rw-r--r--sys-apps/firejail/files/profile_patch.local8
-rw-r--r--sys-apps/firejail/files/profile_pdftotext.local2
-rw-r--r--sys-apps/firejail/files/profile_wget.local5
-rw-r--r--sys-apps/firejail/firejail-0.9.62-r1.ebuild80
-rw-r--r--sys-apps/firejail/firejail-0.9.62.ebuild76
-rw-r--r--sys-apps/firejail/firejail-0.9.70.ebuild118
-rw-r--r--sys-apps/firejail/firejail-0.9.72.ebuild138
-rw-r--r--sys-apps/firejail/firejail-9999.ebuild76
-rw-r--r--sys-apps/firejail/metadata.xml19
-rw-r--r--sys-apps/fix-gnustack/files/0.1/0001-fix-gnustack-respect-CFLAGS-LDFLAGS-for-tests.patch28
-rw-r--r--sys-apps/fix-gnustack/files/0.1/0002-fix-gnustack-add-set-x-in-tests-for-easier-debugging.patch22
-rw-r--r--sys-apps/fix-gnustack/files/0.1/0003-fix-gnustack-pass-Wl-z-execstack-for-tests-with-Clan.patch26
-rw-r--r--sys-apps/fix-gnustack/fix-gnustack-0.1-r1.ebuild30
-rw-r--r--sys-apps/fix-gnustack/fix-gnustack-0.1.ebuild17
-rw-r--r--sys-apps/fix-gnustack/metadata.xml17
-rw-r--r--sys-apps/flashrom/Manifest1
-rw-r--r--sys-apps/flashrom/files/flashrom-1.2_make-libflashrom-usable.patch70
-rw-r--r--sys-apps/flashrom/files/flashrom-1.2_meson-fixes.patch289
-rw-r--r--sys-apps/flashrom/files/flashrom-1.2_meson-install-manpage.patch43
-rw-r--r--sys-apps/flashrom/files/flashrom-1.3.0-c99.patch59
-rw-r--r--sys-apps/flashrom/files/flashrom-1.3.0_spi-master.patch285
-rw-r--r--sys-apps/flashrom/flashrom-1.2-r1.ebuild162
-rw-r--r--sys-apps/flashrom/flashrom-1.2-r2.ebuild180
-rw-r--r--sys-apps/flashrom/flashrom-1.2-r4.ebuild145
-rw-r--r--sys-apps/flashrom/flashrom-1.3.0-r1.ebuild132
-rw-r--r--sys-apps/flashrom/flashrom-1.3.0-r2.ebuild133
-rw-r--r--sys-apps/flashrom/flashrom-1.3.0.ebuild128
-rw-r--r--sys-apps/flashrom/flashrom-9999.ebuild159
-rw-r--r--sys-apps/flashrom/metadata.xml20
-rw-r--r--sys-apps/flatpak/Manifest6
-rw-r--r--sys-apps/flatpak/files/flatpak-1.14.4-fuse-3-slotted.patch57
-rw-r--r--sys-apps/flatpak/files/flatpak-update.service11
-rw-r--r--sys-apps/flatpak/files/flatpak-update.timer9
-rw-r--r--sys-apps/flatpak/flatpak-1.12.8.ebuild108
-rw-r--r--sys-apps/flatpak/flatpak-1.12.9.ebuild108
-rw-r--r--sys-apps/flatpak/flatpak-1.14.4-r3.ebuild115
-rw-r--r--sys-apps/flatpak/flatpak-1.14.5.ebuild120
-rw-r--r--sys-apps/flatpak/flatpak-1.14.6.ebuild120
-rw-r--r--sys-apps/flatpak/flatpak-1.8.2.ebuild101
-rw-r--r--sys-apps/flatpak/metadata.xml2
-rw-r--r--sys-apps/frandom/Manifest1
-rw-r--r--sys-apps/frandom/frandom-1.1-r1.ebuild31
-rw-r--r--sys-apps/frandom/metadata.xml11
-rw-r--r--sys-apps/fwts/Manifest3
-rw-r--r--sys-apps/fwts/files/fwts-22.03.00-slibtool.patch155
-rw-r--r--sys-apps/fwts/files/fwts-22.03.00-werror.patch65
-rw-r--r--sys-apps/fwts/fwts-20.05.00.ebuild46
-rw-r--r--sys-apps/fwts/fwts-22.03.00.ebuild56
-rw-r--r--sys-apps/fwts/fwts-23.11.00.ebuild54
-rw-r--r--sys-apps/fwts/metadata.xml3
-rw-r--r--sys-apps/fwupd-efi/Manifest2
-rw-r--r--sys-apps/fwupd-efi/files/fwupd-efi-1.4-efi_ld_override.patch26
-rw-r--r--sys-apps/fwupd-efi/files/fwupd-efi-1.4-uefi_210_fixes.patch107
-rw-r--r--sys-apps/fwupd-efi/fwupd-efi-1.4-r1.ebuild71
-rw-r--r--sys-apps/fwupd-efi/fwupd-efi-1.4.ebuild70
-rw-r--r--sys-apps/fwupd-efi/fwupd-efi-1.5.ebuild62
-rw-r--r--sys-apps/fwupd-efi/metadata.xml12
-rw-r--r--sys-apps/fwupd/Manifest8
-rw-r--r--sys-apps/fwupd/files/fwupd-1.3.9-logind_plugin.patch13
-rw-r--r--sys-apps/fwupd/files/fwupd-1.4.4-help2man_var.patch93
-rw-r--r--sys-apps/fwupd/files/fwupd-1.9.6-fragile_tests.patch28
-rw-r--r--sys-apps/fwupd/files/fwupd-r113
-rw-r--r--sys-apps/fwupd/files/fwupd-r213
-rw-r--r--sys-apps/fwupd/fwupd-1.3.10.ebuild170
-rw-r--r--sys-apps/fwupd/fwupd-1.3.11.ebuild170
-rw-r--r--sys-apps/fwupd/fwupd-1.4.5.ebuild164
-rw-r--r--sys-apps/fwupd/fwupd-1.4.6.ebuild164
-rw-r--r--sys-apps/fwupd/fwupd-1.9.10-r1.ebuild209
-rw-r--r--sys-apps/fwupd/fwupd-1.9.14.ebuild210
-rw-r--r--sys-apps/fwupd/fwupd-1.9.16.ebuild210
-rw-r--r--sys-apps/fwupd/fwupd-1.9.6.ebuild205
-rw-r--r--sys-apps/fwupd/metadata.xml49
-rw-r--r--sys-apps/fxload/fxload-20081013-r1.ebuild16
-rw-r--r--sys-apps/fxload/metadata.xml2
-rw-r--r--sys-apps/gawk/Manifest7
-rw-r--r--sys-apps/gawk/files/gawk-5.3.0-str2wstr.patch193
-rw-r--r--sys-apps/gawk/gawk-4.2.1-r1.ebuild83
-rw-r--r--sys-apps/gawk/gawk-5.0.1.ebuild87
-rw-r--r--sys-apps/gawk/gawk-5.1.0.ebuild89
-rw-r--r--sys-apps/gawk/gawk-5.2.2.ebuild139
-rw-r--r--sys-apps/gawk/gawk-5.3.0-r1.ebuild140
-rw-r--r--sys-apps/gawk/metadata.xml25
-rw-r--r--sys-apps/gcp/Manifest1
-rw-r--r--sys-apps/gcp/files/gcp-0.2.1-gentoo-fhs.patch13
-rw-r--r--sys-apps/gcp/gcp-0.2.1.ebuild36
-rw-r--r--sys-apps/gcp/metadata.xml7
-rw-r--r--sys-apps/gentoo-functions/Manifest3
-rw-r--r--sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild28
-rw-r--r--sys-apps/gentoo-functions/gentoo-functions-0.19.ebuild30
-rw-r--r--sys-apps/gentoo-functions/gentoo-functions-1.0.ebuild36
-rw-r--r--sys-apps/gentoo-functions/gentoo-functions-9999.ebuild32
-rw-r--r--sys-apps/gentoo-functions/metadata.xml26
-rw-r--r--sys-apps/gentoo-systemd-integration/Manifest3
-rw-r--r--sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-7.ebuild36
-rw-r--r--sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-8.ebuild32
-rw-r--r--sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9.ebuild43
-rw-r--r--sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9999.ebuild27
-rw-r--r--sys-apps/gentoo-systemd-integration/metadata.xml3
-rw-r--r--sys-apps/gnome-disk-utility/Manifest4
-rw-r--r--sys-apps/gnome-disk-utility/gnome-disk-utility-3.34.5.ebuild62
-rw-r--r--sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.1.ebuild62
-rw-r--r--sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.3.ebuild62
-rw-r--r--sys-apps/gnome-disk-utility/gnome-disk-utility-45.1.ebuild63
-rw-r--r--sys-apps/gnome-disk-utility/metadata.xml30
-rw-r--r--sys-apps/goawk/Manifest2
-rw-r--r--sys-apps/goawk/goawk-1.25.0.ebuild30
-rw-r--r--sys-apps/goawk/goawk-1.26.0.ebuild30
-rw-r--r--sys-apps/goawk/metadata.xml11
-rw-r--r--sys-apps/gpet/Manifest1
-rw-r--r--sys-apps/gpet/gpet-0.4.ebuild23
-rw-r--r--sys-apps/gpet/metadata.xml10
-rw-r--r--sys-apps/gptfdisk/Manifest4
-rw-r--r--sys-apps/gptfdisk/files/gptfdisk-1.0.10_utf16-to-utf8-conversion.patch19
-rw-r--r--sys-apps/gptfdisk/files/gptfdisk-1.0.9-build_flags.patch11
-rw-r--r--sys-apps/gptfdisk/files/gptfdisk-1.0.9-libuuid.patch37
-rw-r--r--sys-apps/gptfdisk/files/gptfdisk-1.0.9-musl-1.2.4.patch30
-rw-r--r--sys-apps/gptfdisk/files/gptfdisk-1.0.9-popt_segv.patch22
-rw-r--r--sys-apps/gptfdisk/gptfdisk-1.0.10-r1.ebuild61
-rw-r--r--sys-apps/gptfdisk/gptfdisk-1.0.4.ebuild56
-rw-r--r--sys-apps/gptfdisk/gptfdisk-1.0.5.ebuild56
-rw-r--r--sys-apps/gptfdisk/gptfdisk-1.0.9-r3.ebuild63
-rw-r--r--sys-apps/gptfdisk/metadata.xml16
-rw-r--r--sys-apps/gradm/Manifest4
-rw-r--r--sys-apps/gradm/gradm-3.1.201603152148.ebuild51
-rw-r--r--sys-apps/gradm/gradm-3.1.201607172312.ebuild51
-rw-r--r--sys-apps/gradm/gradm-3.1.201608131257.ebuild51
-rw-r--r--sys-apps/gradm/gradm-3.1.201708012022.ebuild51
-rw-r--r--sys-apps/gradm/gradm-3.1.201903191516.ebuild12
-rw-r--r--sys-apps/gradm/metadata.xml8
-rw-r--r--sys-apps/grep/Manifest5
-rw-r--r--sys-apps/grep/grep-3.11.ebuild115
-rw-r--r--sys-apps/grep/grep-3.3-r1.ebuild50
-rw-r--r--sys-apps/grep/grep-3.4.ebuild54
-rw-r--r--sys-apps/grep/grep-3.5.ebuild54
-rw-r--r--sys-apps/grep/metadata.xml28
-rw-r--r--sys-apps/grepcidr/files/grepcidr-2.0-Makefile.patch12
-rw-r--r--sys-apps/grepcidr/grepcidr-2.0.ebuild18
-rw-r--r--sys-apps/grepcidr/metadata.xml2
-rw-r--r--sys-apps/groff/Manifest1
-rw-r--r--sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch38
-rw-r--r--sys-apps/groff/groff-1.22.4.ebuild60
-rw-r--r--sys-apps/groff/groff-1.23.0.ebuild114
-rw-r--r--sys-apps/groff/metadata.xml17
-rw-r--r--sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch30
-rw-r--r--sys-apps/gscanbus/gscanbus-0.8-r1.ebuild24
-rw-r--r--sys-apps/gscanbus/metadata.xml2
-rw-r--r--sys-apps/gsmartcontrol/Manifest3
-rw-r--r--sys-apps/gsmartcontrol/gsmartcontrol-1.0.2.ebuild48
-rw-r--r--sys-apps/gsmartcontrol/gsmartcontrol-1.1.3.ebuild48
-rw-r--r--sys-apps/gsmartcontrol/gsmartcontrol-1.1.4-r1.ebuild38
-rw-r--r--sys-apps/gsmartcontrol/metadata.xml3
-rw-r--r--sys-apps/habitat/Manifest2
-rw-r--r--sys-apps/habitat/habitat-0.54.0.ebuild34
-rw-r--r--sys-apps/habitat/metadata.xml8
-rw-r--r--sys-apps/haveged/Manifest6
-rw-r--r--sys-apps/haveged/files/haveged-1.9.8c-threads_build_fix.patch36
-rw-r--r--sys-apps/haveged/haveged-1.9.13.ebuild41
-rw-r--r--sys-apps/haveged/haveged-1.9.15.ebuild43
-rw-r--r--sys-apps/haveged/haveged-1.9.17.ebuild45
-rw-r--r--sys-apps/haveged/haveged-1.9.18.ebuild45
-rw-r--r--sys-apps/haveged/haveged-1.9.2-r1.ebuild41
-rw-r--r--sys-apps/haveged/haveged-1.9.8c.ebuild45
-rw-r--r--sys-apps/haveged/metadata.xml11
-rw-r--r--sys-apps/hd-idle/files/hd-idle-dropin.conf30
-rw-r--r--sys-apps/hd-idle/files/hd-idle-service13
-rw-r--r--sys-apps/hd-idle/files/hd-idle.service12
-rw-r--r--sys-apps/hd-idle/hd-idle-1.05-r1.ebuild27
-rw-r--r--sys-apps/hd-idle/hd-idle-1.05-r2.ebuild34
-rw-r--r--sys-apps/hd-idle/metadata.xml6
-rw-r--r--sys-apps/hdparm/Manifest3
-rw-r--r--sys-apps/hdparm/files/hdparm-9.51-build.patch32
-rw-r--r--sys-apps/hdparm/files/hdparm-9.60-build.patch32
-rw-r--r--sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch16
-rw-r--r--sys-apps/hdparm/hdparm-9.56.ebuild43
-rw-r--r--sys-apps/hdparm/hdparm-9.58.ebuild43
-rw-r--r--sys-apps/hdparm/hdparm-9.65-r2.ebuild50
-rw-r--r--sys-apps/hdparm/metadata.xml16
-rw-r--r--sys-apps/heirloom-tools/heirloom-tools-070715-r3.ebuild91
-rw-r--r--sys-apps/heirloom-tools/heirloom-tools-070715-r6.ebuild98
-rw-r--r--sys-apps/heirloom-tools/metadata.xml2
-rw-r--r--sys-apps/help2man/Manifest2
-rw-r--r--sys-apps/help2man/help2man-1.47.16.ebuild41
-rw-r--r--sys-apps/help2man/help2man-1.49.3.ebuild45
-rw-r--r--sys-apps/help2man/metadata.xml2
-rw-r--r--sys-apps/hexdump-esr/Manifest1
-rw-r--r--sys-apps/hexdump-esr/hexdump-esr-1.8.ebuild36
-rw-r--r--sys-apps/hexdump-esr/metadata.xml5
-rw-r--r--sys-apps/highway/highway-1.1.0-r1.ebuild19
-rw-r--r--sys-apps/highway/highway-1.1.0.ebuild21
-rw-r--r--sys-apps/highway/metadata.xml6
-rw-r--r--sys-apps/hotplug2stdout/hotplug2stdout-1.2.1.ebuild24
-rw-r--r--sys-apps/hotplug2stdout/metadata.xml2
-rw-r--r--sys-apps/hponcfg/Manifest5
-rw-r--r--sys-apps/hponcfg/hponcfg-4.6.0.0.ebuild43
-rw-r--r--sys-apps/hponcfg/hponcfg-5.4.0.0.ebuild37
-rw-r--r--sys-apps/hponcfg/hponcfg-5.5.0.0.ebuild37
-rw-r--r--sys-apps/hponcfg/hponcfg-5.6.0.0-r1.ebuild35
-rw-r--r--sys-apps/hponcfg/metadata.xml7
-rw-r--r--sys-apps/hprofile/Manifest1
-rw-r--r--sys-apps/hprofile/hprofile-6.1.3-r1.ebuild18
-rw-r--r--sys-apps/hprofile/hprofile-6.1.3.ebuild18
-rw-r--r--sys-apps/hprofile/hprofile-6.2.1.ebuild18
-rw-r--r--sys-apps/hprofile/metadata.xml2
-rw-r--r--sys-apps/hw-probe/Manifest3
-rw-r--r--sys-apps/hw-probe/files/hw-probe-1.5-disable-automatic-upload.patch36
-rw-r--r--sys-apps/hw-probe/hw-probe-1.5-r1.ebuild64
-rw-r--r--sys-apps/hw-probe/hw-probe-1.6.5_p20230812.ebuild66
-rw-r--r--sys-apps/hw-probe/hw-probe-1.6_beta2-r1.ebuild70
-rw-r--r--sys-apps/hw-probe/metadata.xml2
-rw-r--r--sys-apps/hwdata-gentoo/Manifest1
-rw-r--r--sys-apps/hwdata-gentoo/files/0.4-openchrome.patch22
-rw-r--r--sys-apps/hwdata-gentoo/hwdata-gentoo-0.4.ebuild40
-rw-r--r--sys-apps/hwdata-gentoo/metadata.xml12
-rw-r--r--sys-apps/hwdata/Manifest2
-rw-r--r--sys-apps/hwdata/hwdata-0.375.ebuild28
-rw-r--r--sys-apps/hwdata/hwdata-0.376.ebuild28
-rw-r--r--sys-apps/hwdata/metadata.xml11
-rw-r--r--sys-apps/hwids/Manifest3
-rw-r--r--sys-apps/hwids/hwids-20200204.ebuild89
-rw-r--r--sys-apps/hwids/hwids-20200306.ebuild89
-rw-r--r--sys-apps/hwids/hwids-20200813.1.ebuild89
-rw-r--r--sys-apps/hwids/hwids-99999999.ebuild89
-rw-r--r--sys-apps/hwids/metadata.xml20
-rw-r--r--sys-apps/hwinfo/Manifest3
-rw-r--r--sys-apps/hwinfo/hwinfo-21.23.ebuild56
-rw-r--r--sys-apps/hwinfo/hwinfo-21.4.ebuild63
-rw-r--r--sys-apps/hwinfo/hwinfo-23.2-r1.ebuild53
-rw-r--r--sys-apps/hwinfo/metadata.xml9
-rw-r--r--sys-apps/hwloc/Manifest11
-rw-r--r--sys-apps/hwloc/hwloc-1.11.10.ebuild70
-rw-r--r--sys-apps/hwloc/hwloc-1.11.13-r1.ebuild71
-rw-r--r--sys-apps/hwloc/hwloc-1.11.13.ebuild70
-rw-r--r--sys-apps/hwloc/hwloc-1.11.2-r1.ebuild69
-rw-r--r--sys-apps/hwloc/hwloc-2.0.4.ebuild67
-rw-r--r--sys-apps/hwloc/hwloc-2.1.0.ebuild83
-rw-r--r--sys-apps/hwloc/hwloc-2.6.0-r1.ebuild104
-rw-r--r--sys-apps/hwloc/hwloc-2.8.0-r1.ebuild112
-rw-r--r--sys-apps/hwloc/hwloc-2.9.0.ebuild112
-rw-r--r--sys-apps/hwloc/hwloc-2.9.1.ebuild116
-rw-r--r--sys-apps/hwloc/hwloc-2.9.2.ebuild120
-rw-r--r--sys-apps/hwloc/hwloc-2.9.3.ebuild120
-rw-r--r--sys-apps/hwloc/metadata.xml55
-rw-r--r--sys-apps/hwsetup/Manifest1
-rw-r--r--sys-apps/hwsetup/files/1.2-3-fastprobe.patch74
-rw-r--r--sys-apps/hwsetup/files/1.2-7-dyn_blacklist.patch62
-rw-r--r--sys-apps/hwsetup/files/1.2-7-gentoo.patch20
-rw-r--r--sys-apps/hwsetup/files/1.2-7-openchrome.patch11
-rw-r--r--sys-apps/hwsetup/files/1.2-strip.patch11
-rw-r--r--sys-apps/hwsetup/hwsetup-1.2-r3.ebuild69
-rw-r--r--sys-apps/hwsetup/metadata.xml8
-rw-r--r--sys-apps/i2c-tools/Manifest3
-rw-r--r--sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild81
-rw-r--r--sys-apps/i2c-tools/i2c-tools-4.2.ebuild74
-rw-r--r--sys-apps/i2c-tools/i2c-tools-4.3-r1.ebuild64
-rw-r--r--sys-apps/i2c-tools/i2c-tools-4.3.ebuild62
-rw-r--r--sys-apps/i2c-tools/metadata.xml10
-rw-r--r--sys-apps/ibm-powerpc-utils/Manifest1
-rw-r--r--sys-apps/ibm-powerpc-utils/files/ibm-powerpc-utils-1.3.8-musl.patch95
-rw-r--r--sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.10-r1.ebuild38
-rw-r--r--sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.8-r1.ebuild3
-rw-r--r--sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-99999.ebuild32
-rw-r--r--sys-apps/ibm-powerpc-utils/metadata.xml5
-rw-r--r--sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r1.ebuild20
-rw-r--r--sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r2.ebuild20
-rw-r--r--sys-apps/idle3-tools/metadata.xml2
-rw-r--r--sys-apps/ifd-gempc/Manifest1
-rw-r--r--sys-apps/ifd-gempc/ifd-gempc-1.0.7.ebuild4
-rw-r--r--sys-apps/ifd-gempc/ifd-gempc-1.0.8.ebuild59
-rw-r--r--sys-apps/ifd-gempc/metadata.xml2
-rw-r--r--sys-apps/ifplugd/ifplugd-0.28-r11.ebuild2
-rw-r--r--sys-apps/ifplugd/metadata.xml2
-rw-r--r--sys-apps/init-system-helpers/Manifest2
-rw-r--r--sys-apps/init-system-helpers/files/revert-openrc-management.patch3
-rw-r--r--sys-apps/init-system-helpers/init-system-helpers-1.49-r1.ebuild29
-rw-r--r--sys-apps/init-system-helpers/init-system-helpers-1.60.ebuild32
-rw-r--r--sys-apps/init-system-helpers/metadata.xml3
-rw-r--r--sys-apps/input-utils/Manifest1
-rw-r--r--sys-apps/input-utils/input-utils-1.2.ebuild36
-rw-r--r--sys-apps/input-utils/input-utils-1.3.ebuild15
-rw-r--r--sys-apps/input-utils/metadata.xml22
-rw-r--r--sys-apps/install-xattr/Manifest2
-rw-r--r--sys-apps/install-xattr/files/0.8/0001-install-xattr-avoid-accessing-empty-storage.patch46
-rw-r--r--sys-apps/install-xattr/files/0.8/0002-install-xattr-fix-small-memory-leak.patch50
-rw-r--r--sys-apps/install-xattr/install-xattr-0.5.ebuild44
-rw-r--r--sys-apps/install-xattr/install-xattr-0.7.ebuild46
-rw-r--r--sys-apps/install-xattr/install-xattr-0.8-r1.ebuild48
-rw-r--r--sys-apps/install-xattr/install-xattr-0.8.ebuild46
-rw-r--r--sys-apps/install-xattr/install-xattr-9999.ebuild23
-rw-r--r--sys-apps/install-xattr/metadata.xml5
-rw-r--r--sys-apps/intel-performance-counter-monitor/Manifest1
-rw-r--r--sys-apps/intel-performance-counter-monitor/intel-performance-counter-monitor-2.10.ebuild49
-rw-r--r--sys-apps/intel-performance-counter-monitor/metadata.xml5
-rw-r--r--sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0-r1.ebuild23
-rw-r--r--sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0.ebuild24
-rw-r--r--sys-apps/intel-sa-00075-tools/metadata.xml2
-rw-r--r--sys-apps/inxi/Manifest9
-rw-r--r--sys-apps/inxi/inxi-3.0.33.1.ebuild33
-rw-r--r--sys-apps/inxi/inxi-3.0.34.1.ebuild38
-rw-r--r--sys-apps/inxi/inxi-3.0.36.1.ebuild38
-rw-r--r--sys-apps/inxi/inxi-3.0.38.1.ebuild38
-rw-r--r--sys-apps/inxi/inxi-3.1.06.1.ebuild33
-rw-r--r--sys-apps/inxi/inxi-3.3.27.1.ebuild32
-rw-r--r--sys-apps/inxi/inxi-3.3.30.1.ebuild32
-rw-r--r--sys-apps/inxi/inxi-3.3.33.1.ebuild76
-rw-r--r--sys-apps/inxi/inxi-3.3.34.1.ebuild76
-rw-r--r--sys-apps/inxi/metadata.xml3
-rw-r--r--sys-apps/iotools/metadata.xml2
-rw-r--r--sys-apps/ipmi-fan-control/Manifest98
-rw-r--r--sys-apps/ipmi-fan-control/ipmi-fan-control-0.4.0.ebuild161
-rw-r--r--sys-apps/ipmi-fan-control/ipmi-fan-control-9999.ebuild64
-rw-r--r--sys-apps/ipmi-fan-control/metadata.xml9
-rw-r--r--sys-apps/ipmicfg/Manifest2
-rw-r--r--sys-apps/ipmicfg/ipmicfg-1.32.0.200820.ebuild41
-rw-r--r--sys-apps/ipmicfg/ipmicfg-1.34.2.230224.ebuild47
-rw-r--r--sys-apps/ipmicfg/metadata.xml2
-rw-r--r--sys-apps/ipmitool/Manifest8
-rw-r--r--sys-apps/ipmitool/files/exchange-bmc-os-info.initd (renamed from sys-apps/ipmitool/files/exchange-bmc-os-info-1.8.18.initd)0
-rw-r--r--sys-apps/ipmitool/files/ipmievd.confd (renamed from sys-apps/ipmitool/files/ipmitool-1.8.18-ipmievd.confd)0
-rw-r--r--sys-apps/ipmitool/files/ipmievd.initd (renamed from sys-apps/ipmitool/files/ipmitool-1.8.18-ipmievd.initd)0
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.18-fno-common.patch22
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.18-openssl-1.1.patch145
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.19-CVE-2011-4339.patch20
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.19-fix-buffer-overflow.patch21
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.19-manpage-longlines.patch55
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.19-missing-func-decl.patch32
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.19-nvidia-iana.patch23
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.confd22
-rw-r--r--sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.initd24
-rw-r--r--sys-apps/ipmitool/files/log_bmc.initd (renamed from sys-apps/ipmitool/files/log_bmc-1.8.18.initd)0
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.18-r1.ebuild89
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.18-r2.ebuild96
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r1.ebuild145
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r2.ebuild200
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r3.ebuild202
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild155
-rw-r--r--sys-apps/ipmitool/ipmitool-1.8.19.ebuild151
-rw-r--r--sys-apps/ipmitool/metadata.xml4
-rw-r--r--sys-apps/ipmiutil/Manifest5
-rw-r--r--sys-apps/ipmiutil/files/ipmiutil-2.9.8-flags.patch20
-rw-r--r--sys-apps/ipmiutil/files/ipmiutil-3.1.5-fix-configure.patch180
-rw-r--r--sys-apps/ipmiutil/files/ipmiutil-3.1.7-fix-configure.patch184
-rw-r--r--sys-apps/ipmiutil/files/ipmiutil-3.1.7-flags.patch20
-rw-r--r--sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch170
-rw-r--r--sys-apps/ipmiutil/ipmiutil-3.0.6.ebuild55
-rw-r--r--sys-apps/ipmiutil/ipmiutil-3.0.9.ebuild60
-rw-r--r--sys-apps/ipmiutil/ipmiutil-3.1.6.ebuild66
-rw-r--r--sys-apps/ipmiutil/ipmiutil-3.1.7.ebuild72
-rw-r--r--sys-apps/ipmiutil/ipmiutil-3.1.9.ebuild91
-rw-r--r--sys-apps/ipmiutil/metadata.xml3
-rw-r--r--sys-apps/iproute2/Manifest6
-rw-r--r--sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch48
-rw-r--r--sys-apps/iproute2/files/iproute2-4.20.0-configure-nomagic.patch208
-rw-r--r--sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch38
-rw-r--r--sys-apps/iproute2/files/iproute2-5.1.0-portability.patch32
-rw-r--r--sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch25
-rw-r--r--sys-apps/iproute2/files/iproute2-6.5.0-configure-nomagic-nolibbsd.patch246
-rw-r--r--sys-apps/iproute2/files/iproute2-6.5.0-mtu.patch50
-rw-r--r--sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch25
-rw-r--r--sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch57
-rw-r--r--sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch38
-rw-r--r--sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch243
-rw-r--r--sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch25
-rw-r--r--sys-apps/iproute2/iproute2-5.4.0.ebuild162
-rw-r--r--sys-apps/iproute2/iproute2-5.7.0.ebuild159
-rw-r--r--sys-apps/iproute2/iproute2-5.8.0.ebuild159
-rw-r--r--sys-apps/iproute2/iproute2-5.9.0.ebuild167
-rw-r--r--sys-apps/iproute2/iproute2-6.6.0-r1.ebuild215
-rw-r--r--sys-apps/iproute2/iproute2-6.6.0-r3.ebuild211
-rw-r--r--sys-apps/iproute2/iproute2-6.6.0.ebuild214
-rw-r--r--sys-apps/iproute2/iproute2-6.8.0-r2.ebuild213
-rw-r--r--sys-apps/iproute2/iproute2-9999.ebuild145
-rw-r--r--sys-apps/iproute2/metadata.xml31
-rw-r--r--sys-apps/irqbalance/Manifest4
-rw-r--r--sys-apps/irqbalance/files/irqbalance-1.9.3-systemd-journal-noise.patch21
-rw-r--r--sys-apps/irqbalance/files/irqbalance.confd-216
-rw-r--r--sys-apps/irqbalance/irqbalance-1.6.0-r1.ebuild62
-rw-r--r--sys-apps/irqbalance/irqbalance-1.7.0.ebuild62
-rw-r--r--sys-apps/irqbalance/irqbalance-1.9.3-r1.ebuild78
-rw-r--r--sys-apps/irqbalance/irqbalance-1.9.4.ebuild80
-rw-r--r--sys-apps/irqbalance/metadata.xml3
-rw-r--r--sys-apps/isapnptools/files/isapnptools-1.27-fno-common.patch22
-rw-r--r--sys-apps/isapnptools/isapnptools-1.27.ebuild12
-rw-r--r--sys-apps/isapnptools/metadata.xml2
-rw-r--r--sys-apps/iucode_tool/files/iucode_tool-2.3.1-limits-include.patch10
-rw-r--r--sys-apps/iucode_tool/iucode_tool-2.3.1-r1.ebuild10
-rw-r--r--sys-apps/iucode_tool/metadata.xml14
-rw-r--r--sys-apps/kbd/Manifest5
-rw-r--r--sys-apps/kbd/files/kbd-2.0.4-vlock_configure_switch.patch25
-rw-r--r--sys-apps/kbd/files/kbd-2.2.0-cflags.patch33
-rw-r--r--sys-apps/kbd/files/kbd-2.2.0-kbdfile-dont_stop_on_first_error.patch31
-rw-r--r--sys-apps/kbd/kbd-2.0.4-r1.ebuild77
-rw-r--r--sys-apps/kbd/kbd-2.0.4.ebuild64
-rw-r--r--sys-apps/kbd/kbd-2.2.0-r2.ebuild78
-rw-r--r--sys-apps/kbd/kbd-2.3.0-r1.ebuild87
-rw-r--r--sys-apps/kbd/kbd-2.5.1.ebuild83
-rw-r--r--sys-apps/kbd/kbd-2.6.4.ebuild86
-rw-r--r--sys-apps/kbd/kbd-9999.ebuild59
-rw-r--r--sys-apps/kbd/metadata.xml16
-rw-r--r--sys-apps/kcheck/kcheck-0.0.2-r1.ebuild33
-rw-r--r--sys-apps/kcheck/kcheck-0.0.2-r2.ebuild32
-rw-r--r--sys-apps/kcheck/kcheck-9999.ebuild7
-rw-r--r--sys-apps/kcheck/metadata.xml7
-rw-r--r--sys-apps/kexec-tools/Manifest4
-rw-r--r--sys-apps/kexec-tools/files/kexec-tools-2.0.20-build-multiboot2-for-i386.patch68
-rw-r--r--sys-apps/kexec-tools/files/kexec-tools-2.0.20-remove-duplicated-variable-declarations.patch99
-rw-r--r--sys-apps/kexec-tools/files/kexec-tools-2.0.28-binutils-2.42-x86_64.patch94
-rw-r--r--sys-apps/kexec-tools/kexec-tools-2.0.20-r3.ebuild126
-rw-r--r--sys-apps/kexec-tools/kexec-tools-2.0.22.ebuild127
-rw-r--r--sys-apps/kexec-tools/kexec-tools-2.0.24.ebuild131
-rw-r--r--sys-apps/kexec-tools/kexec-tools-2.0.28.ebuild132
-rw-r--r--sys-apps/kexec-tools/kexec-tools-9999.ebuild21
-rw-r--r--sys-apps/kexec-tools/metadata.xml13
-rw-r--r--sys-apps/keyutils/Manifest1
-rw-r--r--sys-apps/keyutils/files/keyutils-1.6-endian-check-1.patch32
-rw-r--r--sys-apps/keyutils/files/keyutils-1.6.1-silence-rpm-check.patch20
-rw-r--r--sys-apps/keyutils/files/keyutils-1.6.3-fix-rpmspec-check.patch38
-rw-r--r--sys-apps/keyutils/files/keyutils-1.6.3-tests.patch76
-rw-r--r--sys-apps/keyutils/keyutils-1.6.1.ebuild122
-rw-r--r--sys-apps/keyutils/keyutils-1.6.3-r1.ebuild116
-rw-r--r--sys-apps/keyutils/keyutils-1.6.3.ebuild120
-rw-r--r--sys-apps/keyutils/metadata.xml5
-rw-r--r--sys-apps/kmod/Manifest4
-rw-r--r--sys-apps/kmod/files/kmod-26-libressl.patch143
-rw-r--r--sys-apps/kmod/files/kmod-27-depmod-do-not-output-.bin-to-stdout.patch53
-rw-r--r--sys-apps/kmod/files/kmod-31-musl-basename.patch113
-rw-r--r--sys-apps/kmod/kmod-26-r5.ebuild201
-rw-r--r--sys-apps/kmod/kmod-27-r2.ebuild205
-rw-r--r--sys-apps/kmod/kmod-31-r1.ebuild154
-rw-r--r--sys-apps/kmod/kmod-31.ebuild224
-rw-r--r--sys-apps/kmod/kmod-32-r1.ebuild145
-rw-r--r--sys-apps/kmod/kmod-9999.ebuild126
-rw-r--r--sys-apps/kmod/metadata.xml32
-rw-r--r--sys-apps/kmscon/Manifest3
-rw-r--r--sys-apps/kmscon/files/kmscon-9.0.0-systemd-path-fix.patch13
-rw-r--r--sys-apps/kmscon/files/kmscon-SIGUNUSED.patch14
-rw-r--r--sys-apps/kmscon/files/kmscon-sysmacros-fix.patch11
-rw-r--r--sys-apps/kmscon/kmscon-8-r1.ebuild145
-rw-r--r--sys-apps/kmscon/kmscon-8_p20180906-r1.ebuild145
-rw-r--r--sys-apps/kmscon/kmscon-8_p20180906.ebuild143
-rw-r--r--sys-apps/kmscon/kmscon-9.0.0.ebuild77
-rw-r--r--sys-apps/kmscon/metadata.xml17
-rw-r--r--sys-apps/lcdsplash/lcdsplash-0.3-r1.ebuild31
-rw-r--r--sys-apps/lcdsplash/lcdsplash-0.3.ebuild31
-rw-r--r--sys-apps/lcdsplash/metadata.xml2
-rw-r--r--sys-apps/lcdutils/lcdutils-0.2-r1.ebuild25
-rw-r--r--sys-apps/lcdutils/lcdutils-0.2-r2.ebuild25
-rw-r--r--sys-apps/lcdutils/metadata.xml4
-rw-r--r--sys-apps/less/Manifest5
-rw-r--r--sys-apps/less/files/less-643-LESSOPEN-escape.patch61
-rw-r--r--sys-apps/less/files/less-643-lesstest-pkg-config.patch34
-rw-r--r--sys-apps/less/files/lesspipe-r3.sh339
-rw-r--r--sys-apps/less/files/lesspipe.sh284
-rw-r--r--sys-apps/less/less-551.ebuild44
-rw-r--r--sys-apps/less/less-562.ebuild44
-rw-r--r--sys-apps/less/less-563-r1.ebuild44
-rw-r--r--sys-apps/less/less-563.ebuild44
-rw-r--r--sys-apps/less/less-633.ebuild80
-rw-r--r--sys-apps/less/less-643-r1.ebuild96
-rw-r--r--sys-apps/less/less-643-r2.ebuild97
-rw-r--r--sys-apps/less/less-9999.ebuild96
-rw-r--r--sys-apps/less/metadata.xml17
-rw-r--r--sys-apps/likwid/Manifest3
-rw-r--r--sys-apps/likwid/likwid-4.3.3.ebuild185
-rw-r--r--sys-apps/likwid/likwid-4.3.4.ebuild26
-rw-r--r--sys-apps/likwid/likwid-5.2.1.ebuild147
-rw-r--r--sys-apps/likwid/likwid-5.2.2.ebuild147
-rw-r--r--sys-apps/likwid/metadata.xml2
-rw-r--r--sys-apps/linux-misc-apps/Manifest1
-rw-r--r--sys-apps/linux-misc-apps/linux-misc-apps-5.6.ebuild221
-rw-r--r--sys-apps/linux-misc-apps/linux-misc-apps-5.8-r1.ebuild229
-rw-r--r--sys-apps/linux-misc-apps/linux-misc-apps-5.8.ebuild228
-rw-r--r--sys-apps/linux-misc-apps/metadata.xml2
-rw-r--r--sys-apps/lm-sensors/Manifest2
-rw-r--r--sys-apps/lm-sensors/files/fancontrol.initd2
-rw-r--r--sys-apps/lm-sensors/files/lm-sensors-3.4.0-sensors-detect-gentoo.patch342
-rw-r--r--sys-apps/lm-sensors/files/lm-sensors-3.6.0-no-which.patch21
-rw-r--r--sys-apps/lm-sensors/files/lm-sensors-3.6.0-w83627ehf-nct6775.patch46
-rw-r--r--sys-apps/lm-sensors/files/lm_sensors.initd2
-rw-r--r--sys-apps/lm-sensors/lm-sensors-3.5.0.ebuild218
-rw-r--r--sys-apps/lm-sensors/lm-sensors-3.5.0_p20190505.ebuild216
-rw-r--r--sys-apps/lm-sensors/lm-sensors-3.6.0-r1.ebuild226
-rw-r--r--sys-apps/lm-sensors/lm-sensors-3.6.0.ebuild216
-rw-r--r--sys-apps/lm-sensors/metadata.xml14
-rw-r--r--sys-apps/lmctfy/Manifest1
-rw-r--r--sys-apps/lmctfy/lmctfy-0.5.0-r1.ebuild38
-rw-r--r--sys-apps/lmctfy/metadata.xml11
-rw-r--r--sys-apps/lnxhc/files/lnxhc-1.2-ifconfig-path.patch8
-rw-r--r--sys-apps/lnxhc/files/lnxhc-1.2-usrlocal.patch5
-rw-r--r--sys-apps/lnxhc/lnxhc-1.2-r1.ebuild22
-rw-r--r--sys-apps/lnxhc/lnxhc-1.2-r2.ebuild23
-rw-r--r--sys-apps/lnxhc/metadata.xml2
-rw-r--r--sys-apps/locale-gen/Manifest1
-rw-r--r--sys-apps/locale-gen/locale-gen-2.23-r1.ebuild39
-rw-r--r--sys-apps/locale-gen/metadata.xml12
-rw-r--r--sys-apps/logwatch/Manifest4
-rw-r--r--sys-apps/logwatch/logwatch-7.10.ebuild96
-rw-r--r--sys-apps/logwatch/logwatch-7.5.3.ebuild95
-rw-r--r--sys-apps/logwatch/logwatch-7.5.4.ebuild95
-rw-r--r--sys-apps/logwatch/logwatch-7.9.ebuild96
-rw-r--r--sys-apps/logwatch/logwatch-9999.ebuild29
-rw-r--r--sys-apps/logwatch/metadata.xml2
-rw-r--r--sys-apps/lsadb/metadata.xml4
-rw-r--r--sys-apps/lsb-release/Manifest2
-rw-r--r--sys-apps/lsb-release/lsb-release-1.4-r3.ebuild40
-rw-r--r--sys-apps/lsb-release/lsb-release-1.4-r4.ebuild50
-rw-r--r--sys-apps/lsb-release/lsb-release-3.2.ebuild41
-rw-r--r--sys-apps/lsb-release/lsb-release-3.3.ebuild39
-rw-r--r--sys-apps/lsb-release/metadata.xml3
-rw-r--r--sys-apps/lsd/Manifest325
-rw-r--r--sys-apps/lsd/lsd-0.16.0.ebuild79
-rw-r--r--sys-apps/lsd/lsd-0.17.0.ebuild109
-rw-r--r--sys-apps/lsd/lsd-0.18.0.ebuild101
-rw-r--r--sys-apps/lsd/lsd-1.1.2.ebuild233
-rw-r--r--sys-apps/lsd/metadata.xml11
-rw-r--r--sys-apps/lshw/Manifest3
-rw-r--r--sys-apps/lshw/files/lshw-02.18b-gentoo.patch161
-rw-r--r--sys-apps/lshw/files/lshw-02.18b-gettext-array.patch31
-rw-r--r--sys-apps/lshw/files/lshw-02.18b-sgx.patch32
-rw-r--r--sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch33
-rw-r--r--sys-apps/lshw/lshw-02.18b-r1.ebuild73
-rw-r--r--sys-apps/lshw/lshw-02.18b.ebuild72
-rw-r--r--sys-apps/lshw/lshw-02.19.2b_p20220831-r1.ebuild97
-rw-r--r--sys-apps/lshw/lshw-02.20.2b-r1.ebuild95
-rw-r--r--sys-apps/lshw/metadata.xml13
-rw-r--r--sys-apps/lssbus/lssbus-0.1-r1.ebuild23
-rw-r--r--sys-apps/lssbus/lssbus-0.1.ebuild21
-rw-r--r--sys-apps/lssbus/metadata.xml4
-rw-r--r--sys-apps/lsvpd/Manifest3
-rw-r--r--sys-apps/lsvpd/files/lsvpd-1.7.14-bashisms.patch35
-rw-r--r--sys-apps/lsvpd/lsvpd-1.7.10.ebuild34
-rw-r--r--sys-apps/lsvpd/lsvpd-1.7.11.ebuild34
-rw-r--r--sys-apps/lsvpd/lsvpd-1.7.14.ebuild37
-rw-r--r--sys-apps/lsvpd/metadata.xml9
-rw-r--r--sys-apps/makedev/makedev-3.23.1-r1.ebuild52
-rw-r--r--sys-apps/makedev/makedev-3.23.1-r3.ebuild62
-rw-r--r--sys-apps/makedev/metadata.xml2
-rw-r--r--sys-apps/man-db/Manifest4
-rw-r--r--sys-apps/man-db/man-db-2.11.2.ebuild203
-rw-r--r--sys-apps/man-db/man-db-2.12.0.ebuild203
-rw-r--r--sys-apps/man-db/man-db-2.12.1.ebuild208
-rw-r--r--sys-apps/man-db/man-db-2.9.3.ebuild159
-rw-r--r--sys-apps/man-db/man-db-9999.ebuild143
-rw-r--r--sys-apps/man-db/metadata.xml20
-rw-r--r--sys-apps/man-pages-posix/Manifest1
-rw-r--r--sys-apps/man-pages-posix/man-pages-posix-2013a.ebuild10
-rw-r--r--sys-apps/man-pages-posix/man-pages-posix-2017a-r1.ebuild28
-rw-r--r--sys-apps/man-pages-posix/metadata.xml3
-rw-r--r--sys-apps/man-pages/Manifest5
-rw-r--r--sys-apps/man-pages/man-pages-5.07.ebuild52
-rw-r--r--sys-apps/man-pages/man-pages-5.08.ebuild52
-rw-r--r--sys-apps/man-pages/man-pages-6.05.01.ebuild122
-rw-r--r--sys-apps/man-pages/man-pages-6.06.ebuild150
-rw-r--r--sys-apps/man-pages/man-pages-9999.ebuild150
-rw-r--r--sys-apps/man-pages/metadata.xml2
-rw-r--r--sys-apps/man2html/files/man-1.6-cross-compile.patch4
-rw-r--r--sys-apps/man2html/files/man-1.6f-man2html-compression-2.patch16
-rw-r--r--sys-apps/man2html/files/man-1.6g-clang-15-configure.patch83
-rw-r--r--sys-apps/man2html/files/man-1.6g-compress.patch4
-rw-r--r--sys-apps/man2html/man2html-1.6g-r2.ebuild52
-rw-r--r--sys-apps/man2html/man2html-1.6g.ebuild32
-rw-r--r--sys-apps/man2html/metadata.xml2
-rw-r--r--sys-apps/mawk/Manifest7
-rw-r--r--sys-apps/mawk/mawk-1.3.4_p20161120.ebuild43
-rw-r--r--sys-apps/mawk/mawk-1.3.4_p20190203-r1.ebuild43
-rw-r--r--sys-apps/mawk/mawk-1.3.4_p20200106-r1.ebuild43
-rw-r--r--sys-apps/mawk/mawk-1.3.4_p20231126.ebuild51
-rw-r--r--sys-apps/mawk/mawk-1.3.4_p20240123.ebuild51
-rw-r--r--sys-apps/mawk/metadata.xml14
-rw-r--r--sys-apps/mcstrans/Manifest5
-rw-r--r--sys-apps/mcstrans/files/mcstransd.init2
-rw-r--r--sys-apps/mcstrans/mcstrans-2.9.ebuild54
-rw-r--r--sys-apps/mcstrans/mcstrans-3.0.ebuild54
-rw-r--r--sys-apps/mcstrans/mcstrans-3.1.ebuild53
-rw-r--r--sys-apps/mcstrans/mcstrans-3.5.ebuild52
-rw-r--r--sys-apps/mcstrans/mcstrans-3.6.ebuild51
-rw-r--r--sys-apps/mcstrans/mcstrans-9999.ebuild18
-rw-r--r--sys-apps/mcstrans/metadata.xml2
-rw-r--r--sys-apps/memtest86+/Manifest3
-rw-r--r--sys-apps/memtest86+/files/39_memtest86+67
-rw-r--r--sys-apps/memtest86+/files/39_memtest86+-r169
-rw-r--r--sys-apps/memtest86+/files/39_memtest86+-r2126
-rw-r--r--sys-apps/memtest86+/files/make-memtest86+-boot-floppy111
-rw-r--r--sys-apps/memtest86+/files/make-memtest86+-boot-floppy.139
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-gcc-473.patch33
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-hardcoded_cc.patch16
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-io-extern-inline.patch31
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-no-C-headers.patch49
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-no-clean.patch19
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-no-scp.patch14
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-objcopy.patch20
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-reboot-def.patch15
-rw-r--r--sys-apps/memtest86+/files/memtest86+-5.01-test-random-cflags.patch21
-rw-r--r--sys-apps/memtest86+/memtest86+-5.01-r4.ebuild114
-rw-r--r--sys-apps/memtest86+/memtest86+-5.01-r5.ebuild115
-rw-r--r--sys-apps/memtest86+/memtest86+-6.20-r1.ebuild100
-rw-r--r--sys-apps/memtest86+/memtest86+-7.00.ebuild100
-rw-r--r--sys-apps/memtest86+/metadata.xml22
-rw-r--r--sys-apps/memtest86-bin/Manifest1
-rw-r--r--sys-apps/memtest86-bin/files/memtest86-bin-grub.d21
-rw-r--r--sys-apps/memtest86-bin/memtest86-bin-10.7.ebuild46
-rw-r--r--sys-apps/memtest86-bin/metadata.xml8
-rw-r--r--sys-apps/memtest86/files/39_memtest86-r12
-rw-r--r--sys-apps/memtest86/files/memtest86-4.3.7-binutils-2.41-textrels.patch31
-rw-r--r--sys-apps/memtest86/memtest86-4.3.7-r2.ebuild75
-rw-r--r--sys-apps/memtest86/memtest86-4.3.7-r3.ebuild76
-rw-r--r--sys-apps/memtest86/memtest86-4.3.7-r4.ebuild76
-rw-r--r--sys-apps/memtest86/metadata.xml2
-rw-r--r--sys-apps/memtester/Manifest5
-rw-r--r--sys-apps/memtester/files/memtester-4.3.0-fix-gcc10-fno-common.patch31
-rw-r--r--sys-apps/memtester/memtester-4.3.0.ebuild29
-rw-r--r--sys-apps/memtester/memtester-4.4.0.ebuild27
-rw-r--r--sys-apps/memtester/memtester-4.5.0.ebuild27
-rw-r--r--sys-apps/memtester/memtester-4.5.1.ebuild28
-rw-r--r--sys-apps/memtester/memtester-4.6.0.ebuild28
-rw-r--r--sys-apps/memtester/metadata.xml14
-rw-r--r--sys-apps/merge-usr/Manifest1
-rw-r--r--sys-apps/merge-usr/merge-usr-6.ebuild23
-rw-r--r--sys-apps/merge-usr/metadata.xml12
-rw-r--r--sys-apps/metadata.xml3
-rw-r--r--sys-apps/miller/Manifest2
-rw-r--r--sys-apps/miller/metadata.xml4
-rw-r--r--sys-apps/miller/miller-5.10.2.ebuild48
-rw-r--r--sys-apps/miller/miller-5.3.0.ebuild48
-rw-r--r--sys-apps/minijail/Manifest4
-rw-r--r--sys-apps/minijail/files/minijail-17-no-werror.patch13
-rw-r--r--sys-apps/minijail/files/minijail-18-makefile.patch41
-rw-r--r--sys-apps/minijail/files/minijail-9-makefile.patch44
-rw-r--r--sys-apps/minijail/metadata.xml7
-rw-r--r--sys-apps/minijail/minijail-12.ebuild77
-rw-r--r--sys-apps/minijail/minijail-17.ebuild78
-rw-r--r--sys-apps/minijail/minijail-18.ebuild78
-rw-r--r--sys-apps/minijail/minijail-9.ebuild72
-rw-r--r--sys-apps/minised/Manifest2
-rw-r--r--sys-apps/minised/metadata.xml2
-rw-r--r--sys-apps/minised/minised-1.15.ebuild19
-rw-r--r--sys-apps/minised/minised-1.16.ebuild19
-rw-r--r--sys-apps/miscfiles/metadata.xml13
-rw-r--r--sys-apps/miscfiles/miscfiles-1.5-r3.ebuild62
-rw-r--r--sys-apps/miscfiles/miscfiles-1.5-r4.ebuild62
-rw-r--r--sys-apps/mlocate/metadata.xml2
-rw-r--r--sys-apps/mlocate/mlocate-0.26-r2.ebuild62
-rw-r--r--sys-apps/mlocate/mlocate-0.26-r3.ebuild6
-rw-r--r--sys-apps/mlxup-bin/metadata.xml2
-rw-r--r--sys-apps/moar/Manifest10
-rw-r--r--sys-apps/moar/metadata.xml11
-rw-r--r--sys-apps/moar/moar-1.22.3.ebuild42
-rw-r--r--sys-apps/moar/moar-1.23.10.ebuild42
-rw-r--r--sys-apps/moar/moar-1.23.6.ebuild42
-rw-r--r--sys-apps/moar/moar-1.23.7.ebuild42
-rw-r--r--sys-apps/moar/moar-1.23.9.ebuild42
-rw-r--r--sys-apps/moreutils/Manifest4
-rw-r--r--sys-apps/moreutils/files/moreutils-0.63-respect-env.patch23
-rw-r--r--sys-apps/moreutils/metadata.xml2
-rw-r--r--sys-apps/moreutils/moreutils-0.63.ebuild67
-rw-r--r--sys-apps/moreutils/moreutils-0.64.ebuild71
-rw-r--r--sys-apps/moreutils/moreutils-0.68.ebuild78
-rw-r--r--sys-apps/moreutils/moreutils-0.69.ebuild78
-rw-r--r--sys-apps/most/Manifest2
-rw-r--r--sys-apps/most/files/most-5.0.0a-no-explicit-termcap.patch216
-rw-r--r--sys-apps/most/files/most-5.1.0-fix-parallel-build.patch21
-rw-r--r--sys-apps/most/metadata.xml5
-rw-r--r--sys-apps/most/most-5.0.0a-r1.ebuild35
-rw-r--r--sys-apps/most/most-5.1.0.ebuild5
-rw-r--r--sys-apps/most/most-5.2.0.ebuild37
-rw-r--r--sys-apps/mount-gtk/Manifest2
-rw-r--r--sys-apps/mount-gtk/metadata.xml8
-rw-r--r--sys-apps/mount-gtk/mount-gtk-1.4.2.ebuild36
-rw-r--r--sys-apps/mount-gtk/mount-gtk-1.4.4.ebuild41
-rw-r--r--sys-apps/mount-gtk/mount-gtk-1.4.5.1.ebuild14
-rw-r--r--sys-apps/mount-idmapped/Manifest1
-rw-r--r--sys-apps/mount-idmapped/metadata.xml11
-rw-r--r--sys-apps/mount-idmapped/mount-idmapped-0.0_pre20220825.ebuild37
-rw-r--r--sys-apps/mouseemu/Manifest1
-rw-r--r--sys-apps/mouseemu/files/mouseemu-0.12-fix.diff48
-rw-r--r--sys-apps/mouseemu/metadata.xml4
-rw-r--r--sys-apps/mouseemu/mouseemu-0.12.ebuild36
-rw-r--r--sys-apps/mouseemu/mouseemu-0.15.ebuild4
-rw-r--r--sys-apps/msr-tools/Manifest2
-rw-r--r--sys-apps/msr-tools/metadata.xml9
-rw-r--r--sys-apps/msr-tools/msr-tools-1.3.ebuild29
-rw-r--r--sys-apps/msr-tools/msr-tools-1.3_p20170320.ebuild28
-rw-r--r--sys-apps/mtree/Manifest1
-rw-r--r--sys-apps/mtree/metadata.xml11
-rw-r--r--sys-apps/mtree/mtree-1.0.4.ebuild30
-rw-r--r--sys-apps/musl-locales/Manifest1
-rw-r--r--sys-apps/musl-locales/metadata.xml7
-rw-r--r--sys-apps/musl-locales/musl-locales-0.1.0.ebuild23
-rw-r--r--sys-apps/nawk/Manifest3
-rw-r--r--sys-apps/nawk/files/nawk-20121220-parallel-build.patch61
-rw-r--r--sys-apps/nawk/files/nawk-20180827-parallel-build.patch35
-rw-r--r--sys-apps/nawk/files/nawk-20230909-big-endian.patch51
-rw-r--r--sys-apps/nawk/metadata.xml16
-rw-r--r--sys-apps/nawk/nawk-20121220-r3.ebuild61
-rw-r--r--sys-apps/nawk/nawk-20180827.ebuild56
-rw-r--r--sys-apps/nawk/nawk-20230909-r1.ebuild61
-rw-r--r--sys-apps/net-tools/Manifest3
-rw-r--r--sys-apps/net-tools/files/net-tools-1.60_p20161110235919-fix-building-w-older-linux-headers.patch33
-rw-r--r--sys-apps/net-tools/metadata.xml4
-rw-r--r--sys-apps/net-tools/net-tools-1.60_p20161110235919.ebuild94
-rw-r--r--sys-apps/net-tools/net-tools-1.60_p20180626073013.ebuild90
-rw-r--r--sys-apps/net-tools/net-tools-2.10.ebuild73
-rw-r--r--sys-apps/net-tools/net-tools-9999.ebuild41
-rw-r--r--sys-apps/netkit-base/metadata.xml2
-rw-r--r--sys-apps/netkit-base/netkit-base-0.17-r9.ebuild8
-rw-r--r--sys-apps/netloc/Manifest1
-rw-r--r--sys-apps/netloc/metadata.xml11
-rw-r--r--sys-apps/netloc/netloc-0.5.ebuild28
-rw-r--r--sys-apps/netplug/metadata.xml7
-rw-r--r--sys-apps/netplug/netplug-1.2.9.2-r2.ebuild70
-rw-r--r--sys-apps/netplug/netplug-1.2.9.2-r3.ebuild4
-rw-r--r--sys-apps/newrelic-sysmond/Manifest1
-rw-r--r--sys-apps/newrelic-sysmond/files/newrelic-sysmond.rc23
-rw-r--r--sys-apps/newrelic-sysmond/metadata.xml5
-rw-r--r--sys-apps/newrelic-sysmond/newrelic-sysmond-1.1.2.124-r1.ebuild56
-rw-r--r--sys-apps/noexec/metadata.xml2
-rw-r--r--sys-apps/noexec/noexec-1.1.0-r1.ebuild14
-rw-r--r--sys-apps/noexec/noexec-1.1.0-r2.ebuild32
-rw-r--r--sys-apps/nosig/metadata.xml11
-rw-r--r--sys-apps/nvme-cli/Manifest5
-rw-r--r--sys-apps/nvme-cli/metadata.xml21
-rw-r--r--sys-apps/nvme-cli/nvme-cli-1.10.1.ebuild37
-rw-r--r--sys-apps/nvme-cli/nvme-cli-1.11.1.ebuild35
-rw-r--r--sys-apps/nvme-cli/nvme-cli-1.9-r3.ebuild37
-rw-r--r--sys-apps/nvme-cli/nvme-cli-2.7.1.ebuild47
-rw-r--r--sys-apps/nvme-cli/nvme-cli-2.8.ebuild48
-rw-r--r--sys-apps/onerng/Manifest2
-rw-r--r--sys-apps/onerng/metadata.xml2
-rw-r--r--sys-apps/onerng/onerng-3.6-r3.ebuild42
-rw-r--r--sys-apps/onerng/onerng-3.7.ebuild40
-rw-r--r--sys-apps/opal-utils/Manifest4
-rw-r--r--sys-apps/opal-utils/files/devtmpfs-noexec.patch87
-rw-r--r--sys-apps/opal-utils/metadata.xml8
-rw-r--r--sys-apps/opal-utils/opal-utils-6.5.2.ebuild91
-rw-r--r--sys-apps/opal-utils/opal-utils-6.6.2.ebuild103
-rw-r--r--sys-apps/opal-utils/opal-utils-6.6.3-r1.ebuild95
-rw-r--r--sys-apps/opal-utils/opal-utils-6.6.3.ebuild103
-rw-r--r--sys-apps/opal-utils/opal-utils-7.0.ebuild95
-rw-r--r--sys-apps/openrazer/Manifest2
-rw-r--r--sys-apps/openrazer/metadata.xml17
-rw-r--r--sys-apps/openrazer/openrazer-3.7.0-r1.ebuild175
-rw-r--r--sys-apps/openrazer/openrazer-3.8.0.ebuild175
-rw-r--r--sys-apps/openrc/Manifest5
-rw-r--r--sys-apps/openrc/files/openrc-0.42.1-gcc-10.patch48
-rw-r--r--sys-apps/openrc/metadata.xml6
-rw-r--r--sys-apps/openrc/openrc-0.41.2.ebuild192
-rw-r--r--sys-apps/openrc/openrc-0.42.1.ebuild196
-rw-r--r--sys-apps/openrc/openrc-0.48.ebuild169
-rw-r--r--sys-apps/openrc/openrc-0.53.1.ebuild165
-rw-r--r--sys-apps/openrc/openrc-0.54.ebuild162
-rw-r--r--sys-apps/openrc/openrc-9999.ebuild126
-rw-r--r--sys-apps/opentmpfiles/Manifest5
-rw-r--r--sys-apps/opentmpfiles/metadata.xml15
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-0.1.1.ebuild44
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-0.1.2.ebuild47
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-0.1.3-r1.ebuild53
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-0.1.3.ebuild47
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-0.2.ebuild54
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-0.3.1.ebuild54
-rw-r--r--sys-apps/opentmpfiles/opentmpfiles-9999.ebuild54
-rw-r--r--sys-apps/osinfo-db-tools/Manifest4
-rw-r--r--sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.10.0-no-clobber-fortify-source.patch13
-rw-r--r--sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-Make-xmlError-structs-constant.patch53
-rw-r--r--sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-osinfo-db-validate-Add-more-libxml-includes.patch35
-rw-r--r--sys-apps/osinfo-db-tools/metadata.xml13
-rw-r--r--sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r1.ebuild49
-rw-r--r--sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r2.ebuild54
-rw-r--r--sys-apps/osinfo-db-tools/osinfo-db-tools-1.11.0.ebuild54
-rw-r--r--sys-apps/osinfo-db-tools/osinfo-db-tools-1.6.0-r1.ebuild53
-rw-r--r--sys-apps/osinfo-db-tools/osinfo-db-tools-1.8.0.ebuild52
-rw-r--r--sys-apps/osinfo-db/Manifest3
-rw-r--r--sys-apps/osinfo-db/metadata.xml14
-rw-r--r--sys-apps/osinfo-db/osinfo-db-20200325.ebuild27
-rw-r--r--sys-apps/osinfo-db/osinfo-db-20200529.ebuild27
-rw-r--r--sys-apps/osinfo-db/osinfo-db-20231215.ebuild25
-rw-r--r--sys-apps/paxctl/metadata.xml8
-rw-r--r--sys-apps/paxctl/paxctl-0.9.ebuild15
-rw-r--r--sys-apps/paxctld/Manifest1
-rw-r--r--sys-apps/paxctld/metadata.xml8
-rw-r--r--sys-apps/paxctld/paxctld-1.2.3.ebuild37
-rw-r--r--sys-apps/pciutils/Manifest6
-rw-r--r--sys-apps/pciutils/files/pciutils-3.1.9-static-pc.patch13
-rw-r--r--sys-apps/pciutils/metadata.xml23
-rw-r--r--sys-apps/pciutils/pciutils-3.10.0.ebuild173
-rw-r--r--sys-apps/pciutils/pciutils-3.11.1.ebuild173
-rw-r--r--sys-apps/pciutils/pciutils-3.12.0.ebuild173
-rw-r--r--sys-apps/pciutils/pciutils-3.5.6-r1.ebuild120
-rw-r--r--sys-apps/pciutils/pciutils-3.6.4.ebuild117
-rw-r--r--sys-apps/pciutils/pciutils-3.7.0.ebuild117
-rw-r--r--sys-apps/pcmciautils/Manifest1
-rw-r--r--sys-apps/pcmciautils/files/pcmciautils-018_p8-musl-unsigned-type.patch24
-rw-r--r--sys-apps/pcmciautils/metadata.xml2
-rw-r--r--sys-apps/pcmciautils/pcmciautils-018_p14.ebuild88
-rw-r--r--sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild53
-rw-r--r--sys-apps/pcsc-lite/Manifest5
-rw-r--r--sys-apps/pcsc-lite/files/99-pcscd-hotplug.rules6
-rw-r--r--sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch18
-rw-r--r--sys-apps/pcsc-lite/files/pcscd.conf1
-rw-r--r--sys-apps/pcsc-lite/metadata.xml41
-rw-r--r--sys-apps/pcsc-lite/pcsc-lite-1.8.25-r1.ebuild102
-rw-r--r--sys-apps/pcsc-lite/pcsc-lite-1.8.26.ebuild104
-rw-r--r--sys-apps/pcsc-lite/pcsc-lite-1.9.0.ebuild104
-rw-r--r--sys-apps/pcsc-lite/pcsc-lite-2.0.0.ebuild109
-rw-r--r--sys-apps/pcsc-lite/pcsc-lite-2.0.1.ebuild109
-rw-r--r--sys-apps/pcsc-slb-rf72-drv/files/pcsc-slb-rf72-drv-1.1.0-openct.patch13
-rw-r--r--sys-apps/pcsc-slb-rf72-drv/metadata.xml2
-rw-r--r--sys-apps/pcsc-slb-rf72-drv/pcsc-slb-rf72-drv-1.1.0-r2.ebuild5
-rw-r--r--sys-apps/pcsc-tools/Manifest5
-rw-r--r--sys-apps/pcsc-tools/metadata.xml20
-rw-r--r--sys-apps/pcsc-tools/pcsc-tools-1.5.6.ebuild62
-rw-r--r--sys-apps/pcsc-tools/pcsc-tools-1.5.7.ebuild62
-rw-r--r--sys-apps/pcsc-tools/pcsc-tools-1.6.2.ebuild64
-rw-r--r--sys-apps/pcsc-tools/pcsc-tools-1.7.0.ebuild67
-rw-r--r--sys-apps/pcsc-tools/pcsc-tools-1.7.1.ebuild67
-rw-r--r--sys-apps/pick/Manifest2
-rw-r--r--sys-apps/pick/files/pick-4.0.0-tinfo.patch28
-rw-r--r--sys-apps/pick/metadata.xml2
-rw-r--r--sys-apps/pick/pick-3.0.1.ebuild33
-rw-r--r--sys-apps/pick/pick-4.0.0.ebuild36
-rw-r--r--sys-apps/pkgcore/Manifest2
-rw-r--r--sys-apps/pkgcore/metadata.xml18
-rw-r--r--sys-apps/pkgcore/pkgcore-0.10.13.ebuild47
-rw-r--r--sys-apps/pkgcore/pkgcore-0.12.27.ebuild50
-rw-r--r--sys-apps/pkgcore/pkgcore-9999.ebuild43
-rw-r--r--sys-apps/pkgcraft-tools/Manifest1
-rw-r--r--sys-apps/pkgcraft-tools/metadata.xml11
-rw-r--r--sys-apps/pkgcraft-tools/pkgcraft-tools-0.0.14.ebuild55
-rw-r--r--sys-apps/pkgcraft-tools/pkgcraft-tools-9999.ebuild55
-rw-r--r--sys-apps/plocate/Manifest3
-rw-r--r--sys-apps/plocate/files/plocate-1.1.15-meson-use-feature-option-for-libiouring.patch41
-rw-r--r--sys-apps/plocate/files/plocate-cron.conf9
-rw-r--r--sys-apps/plocate/files/plocate.cron51
-rw-r--r--sys-apps/plocate/files/updatedb.conf16
-rw-r--r--sys-apps/plocate/metadata.xml37
-rw-r--r--sys-apps/plocate/plocate-1.1.19.ebuild86
-rw-r--r--sys-apps/plocate/plocate-1.1.20.ebuild86
-rw-r--r--sys-apps/plocate/plocate-1.1.22.ebuild86
-rw-r--r--sys-apps/pmount-gui/Manifest1
-rw-r--r--sys-apps/pmount-gui/metadata.xml8
-rw-r--r--sys-apps/pmount-gui/pmount-gui-0_pre20130806.ebuild37
-rw-r--r--sys-apps/pmount/files/pmount-0.9.99_alpha-fix-buggy-realpath-implementation.patch31
-rw-r--r--sys-apps/pmount/files/pmount-0.9.99_alpha-limits-musl.patch12
-rw-r--r--sys-apps/pmount/files/pmount-0.9.99_alpha-missing-includes.patch82
-rw-r--r--sys-apps/pmount/metadata.xml11
-rw-r--r--sys-apps/pmount/pmount-0.9.99_alpha-r5.ebuild85
-rw-r--r--sys-apps/pmount/pmount-0.9.99_alpha-r6.ebuild87
-rw-r--r--sys-apps/pmount/pmount-0.9.99_alpha-r7.ebuild92
-rw-r--r--sys-apps/pmount/pmount-0.9.99_alpha-r8.ebuild93
-rw-r--r--sys-apps/pnputils/metadata.xml2
-rw-r--r--sys-apps/pnputils/pnputils-0.1-r1.ebuild28
-rw-r--r--sys-apps/pnputils/pnputils-0.1.ebuild28
-rw-r--r--sys-apps/policycoreutils/Manifest6
-rw-r--r--sys-apps/policycoreutils/files/policycoreutils-2.7-0001-newrole-not-suid.patch13
-rw-r--r--sys-apps/policycoreutils/metadata.xml2
-rw-r--r--sys-apps/policycoreutils/policycoreutils-2.9.ebuild179
-rw-r--r--sys-apps/policycoreutils/policycoreutils-3.0.ebuild176
-rw-r--r--sys-apps/policycoreutils/policycoreutils-3.1.ebuild176
-rw-r--r--sys-apps/policycoreutils/policycoreutils-3.5.ebuild168
-rw-r--r--sys-apps/policycoreutils/policycoreutils-3.6.ebuild168
-rw-r--r--sys-apps/policycoreutils/policycoreutils-9999.ebuild58
-rw-r--r--sys-apps/polychromatic/Manifest1
-rw-r--r--sys-apps/polychromatic/metadata.xml22
-rw-r--r--sys-apps/polychromatic/polychromatic-0.8.3-r1.ebuild69
-rw-r--r--sys-apps/polychromatic/polychromatic-9999.ebuild69
-rw-r--r--sys-apps/portage/Manifest7
-rw-r--r--sys-apps/portage/files/portage-tmpdir.conf2
-rw-r--r--sys-apps/portage/metadata.xml62
-rw-r--r--sys-apps/portage/portage-2.3.99-r2.ebuild265
-rw-r--r--sys-apps/portage/portage-3.0.4-r1.ebuild270
-rw-r--r--sys-apps/portage/portage-3.0.59-r1.ebuild246
-rw-r--r--sys-apps/portage/portage-3.0.61-r1.ebuild246
-rw-r--r--sys-apps/portage/portage-3.0.63.ebuild246
-rw-r--r--sys-apps/portage/portage-3.0.8.ebuild267
-rw-r--r--sys-apps/portage/portage-9999.ebuild338
-rw-r--r--sys-apps/powerpc-utils/metadata.xml4
-rw-r--r--sys-apps/powerpc-utils/powerpc-utils-1.1.3.18-r4.ebuild6
-rw-r--r--sys-apps/ppc64-diag/Manifest1
-rw-r--r--sys-apps/ppc64-diag/files/fix-systemd-unit-path.patch38
-rw-r--r--sys-apps/ppc64-diag/files/opal_errd.initd15
-rw-r--r--sys-apps/ppc64-diag/files/rtas_errd.initd15
-rw-r--r--sys-apps/ppc64-diag/metadata.xml20
-rw-r--r--sys-apps/ppc64-diag/ppc64-diag-2.7.9.ebuild79
-rw-r--r--sys-apps/prctl/metadata.xml6
-rw-r--r--sys-apps/prctl/prctl-1.6-r1.ebuild10
-rw-r--r--sys-apps/preload/metadata.xml2
-rw-r--r--sys-apps/progress/Manifest1
-rw-r--r--sys-apps/progress/metadata.xml2
-rw-r--r--sys-apps/progress/progress-0.13.ebuild31
-rw-r--r--sys-apps/progress/progress-0.15-r1.ebuild29
-rw-r--r--sys-apps/progress/progress-0.15.ebuild28
-rw-r--r--sys-apps/proot/Manifest3
-rw-r--r--sys-apps/proot/files/proot-2.3.1-lib-paths-fix.patch19
-rw-r--r--sys-apps/proot/files/proot-5.1.0-loader.patch272
-rw-r--r--sys-apps/proot/files/proot-5.1.0-makefile.patch22
-rw-r--r--sys-apps/proot/files/proot-5.3.0-lib-paths-fix.patch21
-rw-r--r--sys-apps/proot/files/proot-5.3.0-makefile.patch11
-rw-r--r--sys-apps/proot/files/proot-5.4.0-makefile.patch11
-rw-r--r--sys-apps/proot/metadata.xml2
-rw-r--r--sys-apps/proot/proot-5.1.0-r2.ebuild77
-rw-r--r--sys-apps/proot/proot-5.3.0.ebuild73
-rw-r--r--sys-apps/proot/proot-5.4.0.ebuild73
-rw-r--r--sys-apps/pv/Manifest4
-rw-r--r--sys-apps/pv/metadata.xml16
-rw-r--r--sys-apps/pv/pv-1.6.0-r1.ebuild50
-rw-r--r--sys-apps/pv/pv-1.6.6.ebuild53
-rw-r--r--sys-apps/pv/pv-1.8.5.ebuild54
-rw-r--r--sys-apps/pv/pv-9999.ebuild54
-rw-r--r--sys-apps/qcontrol/metadata.xml4
-rw-r--r--sys-apps/qcontrol/qcontrol-0.4.2-r1.ebuild61
-rw-r--r--sys-apps/qcontrol/qcontrol-0.4.2-r100.ebuild69
-rw-r--r--sys-apps/qdirstat/Manifest2
-rw-r--r--sys-apps/qdirstat/metadata.xml2
-rw-r--r--sys-apps/qdirstat/qdirstat-1.7.ebuild52
-rw-r--r--sys-apps/qdirstat/qdirstat-1.9.ebuild55
-rw-r--r--sys-apps/qingy/metadata.xml19
-rw-r--r--sys-apps/qingy/qingy-1.0.0-r4.ebuild132
-rw-r--r--sys-apps/qingy/qingy-1.0.0-r6.ebuild134
-rw-r--r--sys-apps/radeontool/Manifest1
-rw-r--r--sys-apps/radeontool/metadata.xml15
-rw-r--r--sys-apps/radeontool/radeontool-1.6.3_p20181127-r1.ebuild26
-rw-r--r--sys-apps/razer-cli/Manifest2
-rw-r--r--sys-apps/razer-cli/files/razer-cli-setup.patch9
-rw-r--r--sys-apps/razer-cli/metadata.xml20
-rw-r--r--sys-apps/razer-cli/razer-cli-2.2.0.ebuild37
-rw-r--r--sys-apps/razer-cli/razer-cli-2.2.1.ebuild42
-rw-r--r--sys-apps/razercfg/Manifest1
-rw-r--r--sys-apps/razercfg/metadata.xml40
-rw-r--r--sys-apps/razercfg/razercfg-0.39-r2.ebuild90
-rw-r--r--sys-apps/razercfg/razercfg-0.42-r1.ebuild99
-rw-r--r--sys-apps/razercfg/razercfg-0.42.ebuild8
-rw-r--r--sys-apps/razercommander/Manifest1
-rw-r--r--sys-apps/razercommander/metadata.xml13
-rw-r--r--sys-apps/razercommander/razercommander-1.2.1.2-r1.ebuild36
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch44
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch70
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch43
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch22
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch50
-rw-r--r--sys-apps/readahead-list/files/init.d-readahead-list2
-rw-r--r--sys-apps/readahead-list/files/init.d-readahead-list-early3
-rw-r--r--sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch10
-rw-r--r--sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch15
-rw-r--r--sys-apps/readahead-list/metadata.xml5
-rw-r--r--sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild60
-rw-r--r--sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild70
-rw-r--r--sys-apps/rename/metadata.xml2
-rw-r--r--sys-apps/rename/rename-1.3-r2.ebuild42
-rw-r--r--sys-apps/rename/rename-1.3-r3.ebuild50
-rw-r--r--sys-apps/renameutils/metadata.xml2
-rw-r--r--sys-apps/rescan-scsi-bus/Manifest1
-rw-r--r--sys-apps/rescan-scsi-bus/metadata.xml11
-rw-r--r--sys-apps/rescan-scsi-bus/rescan-scsi-bus-1.57-r2.ebuild34
-rw-r--r--sys-apps/restartd/files/restartd-0.2.2-fno-common.patch66
-rw-r--r--sys-apps/restartd/metadata.xml2
-rw-r--r--sys-apps/restartd/restartd-0.2.2-r1.ebuild7
-rw-r--r--sys-apps/restorecond/Manifest5
-rw-r--r--sys-apps/restorecond/files/restorecond.init2
-rw-r--r--sys-apps/restorecond/metadata.xml2
-rw-r--r--sys-apps/restorecond/restorecond-2.9.ebuild55
-rw-r--r--sys-apps/restorecond/restorecond-3.0.ebuild55
-rw-r--r--sys-apps/restorecond/restorecond-3.1.ebuild56
-rw-r--r--sys-apps/restorecond/restorecond-3.5.ebuild54
-rw-r--r--sys-apps/restorecond/restorecond-3.6.ebuild53
-rw-r--r--sys-apps/restorecond/restorecond-9999.ebuild25
-rw-r--r--sys-apps/ripgrep-all/Manifest161
-rw-r--r--sys-apps/ripgrep-all/metadata.xml8
-rw-r--r--sys-apps/ripgrep-all/ripgrep-all-0.9.6-r1.ebuild201
-rw-r--r--sys-apps/ripgrep/Manifest97
-rw-r--r--sys-apps/ripgrep/metadata.xml12
-rw-r--r--sys-apps/ripgrep/ripgrep-12.1.1.ebuild114
-rw-r--r--sys-apps/ripgrep/ripgrep-14.1.0.ebuild119
-rw-r--r--sys-apps/rkflashtool/metadata.xml2
-rw-r--r--sys-apps/rkflashtool/rkflashtool-6.1.ebuild9
-rw-r--r--sys-apps/rng-tools/Manifest8
-rw-r--r--sys-apps/rng-tools/files/rng-tools-5-fix-noctty.patch45
-rw-r--r--sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch100
-rw-r--r--sys-apps/rng-tools/files/rng-tools-5-man-fill-watermark.patch17
-rw-r--r--sys-apps/rng-tools/files/rng-tools-5-man-rng-device.patch15
-rw-r--r--sys-apps/rng-tools/files/rng-tools-6.16-c99.patch22
-rw-r--r--sys-apps/rng-tools/files/rngd-confd-4.122
-rw-r--r--sys-apps/rng-tools/files/rngd-confd-682
-rw-r--r--sys-apps/rng-tools/files/rngd-confd-6.1196
-rw-r--r--sys-apps/rng-tools/files/rngd-confd-6.790
-rw-r--r--sys-apps/rng-tools/files/rngd-initd-6-r160
-rw-r--r--sys-apps/rng-tools/files/rngd-initd-6.1168
-rw-r--r--sys-apps/rng-tools/files/rngd-initd-6.7-r164
-rw-r--r--sys-apps/rng-tools/files/rngd-initd-r1-4.116
-rw-r--r--sys-apps/rng-tools/files/rngd-shutdown.patch37
-rw-r--r--sys-apps/rng-tools/files/rngd.service8
-rw-r--r--sys-apps/rng-tools/files/test-for-argp.patch43
-rw-r--r--sys-apps/rng-tools/metadata.xml8
-rw-r--r--sys-apps/rng-tools/rng-tools-5-r2.ebuild41
-rw-r--r--sys-apps/rng-tools/rng-tools-6.10-r1.ebuild85
-rw-r--r--sys-apps/rng-tools/rng-tools-6.10.ebuild84
-rw-r--r--sys-apps/rng-tools/rng-tools-6.15.ebuild70
-rw-r--r--sys-apps/rng-tools/rng-tools-6.16-r1.ebuild90
-rw-r--r--sys-apps/rng-tools/rng-tools-6.16.ebuild86
-rw-r--r--sys-apps/rng-tools/rng-tools-6.6-r1.ebuild69
-rw-r--r--sys-apps/rng-tools/rng-tools-6.7-r1.ebuild97
-rw-r--r--sys-apps/rng-tools/rng-tools-6.7-r2.ebuild98
-rw-r--r--sys-apps/rng-tools/rng-tools-6.8.ebuild86
-rw-r--r--sys-apps/rng-tools/rng-tools-6.9.ebuild86
-rw-r--r--sys-apps/roccat-tools/Manifest1
-rw-r--r--sys-apps/roccat-tools/files/roccat-tools-5.9.0-cmake_lua_impl.patch11
-rw-r--r--sys-apps/roccat-tools/files/roccat-tools-5.9.0-fno-common.patch11
-rw-r--r--sys-apps/roccat-tools/metadata.xml7
-rw-r--r--sys-apps/roccat-tools/roccat-tools-5.7.0.ebuild108
-rw-r--r--sys-apps/roccat-tools/roccat-tools-5.9.0-r101.ebuild147
-rw-r--r--sys-apps/roccat-tools/roccat-tools-5.9.0.ebuild129
-rw-r--r--sys-apps/rootlesskit/Manifest4
-rw-r--r--sys-apps/rootlesskit/metadata.xml11
-rw-r--r--sys-apps/rootlesskit/rootlesskit-2.0.1.ebuild23
-rw-r--r--sys-apps/rootlesskit/rootlesskit-2.0.2.ebuild23
-rw-r--r--sys-apps/rtl-entropy/Manifest1
-rw-r--r--sys-apps/rtl-entropy/metadata.xml14
-rw-r--r--sys-apps/rtl-entropy/rtl-entropy-0.1.2_p20180118-r1.ebuild37
-rw-r--r--sys-apps/s390-tools/metadata.xml2
-rw-r--r--sys-apps/s390-tools/s390-tools-2.12.0.ebuild9
-rw-r--r--sys-apps/s390-tools/s390-tools-2.9.0.ebuild4
-rw-r--r--sys-apps/s6-linux-init/Manifest6
-rw-r--r--sys-apps/s6-linux-init/metadata.xml10
-rw-r--r--sys-apps/s6-linux-init/s6-linux-init-0.3.1.1.ebuild62
-rw-r--r--sys-apps/s6-linux-init/s6-linux-init-0.4.0.0.ebuild62
-rw-r--r--sys-apps/s6-linux-init/s6-linux-init-1.0.2.0.ebuild66
-rw-r--r--sys-apps/s6-linux-init/s6-linux-init-1.0.3.1.ebuild66
-rw-r--r--sys-apps/s6-linux-init/s6-linux-init-1.0.4.2.ebuild66
-rw-r--r--sys-apps/s6-linux-init/s6-linux-init-1.1.2.0.ebuild79
-rw-r--r--sys-apps/s6-linux-utils/Manifest6
-rw-r--r--sys-apps/s6-linux-utils/metadata.xml10
-rw-r--r--sys-apps/s6-linux-utils/s6-linux-utils-2.4.0.2.ebuild51
-rw-r--r--sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.0.ebuild42
-rw-r--r--sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.1.ebuild40
-rw-r--r--sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.1.ebuild40
-rw-r--r--sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.3.ebuild40
-rw-r--r--sys-apps/s6-linux-utils/s6-linux-utils-2.6.2.0.ebuild46
-rw-r--r--sys-apps/s6-portable-utils/Manifest6
-rw-r--r--sys-apps/s6-portable-utils/metadata.xml10
-rw-r--r--sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.1.ebuild51
-rw-r--r--sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.2.ebuild42
-rw-r--r--sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.3.ebuild40
-rw-r--r--sys-apps/s6-portable-utils/s6-portable-utils-2.2.2.1.ebuild40
-rw-r--r--sys-apps/s6-portable-utils/s6-portable-utils-2.2.3.0.ebuild40
-rw-r--r--sys-apps/s6-portable-utils/s6-portable-utils-2.3.0.3.ebuild50
-rw-r--r--sys-apps/s6-rc/Manifest8
-rw-r--r--sys-apps/s6-rc/metadata.xml10
-rw-r--r--sys-apps/s6-rc/s6-rc-0.3.0.0.ebuild64
-rw-r--r--sys-apps/s6-rc/s6-rc-0.4.0.0.ebuild70
-rw-r--r--sys-apps/s6-rc/s6-rc-0.4.0.1.ebuild70
-rw-r--r--sys-apps/s6-rc/s6-rc-0.4.1.0.ebuild59
-rw-r--r--sys-apps/s6-rc/s6-rc-0.5.0.0.ebuild53
-rw-r--r--sys-apps/s6-rc/s6-rc-0.5.1.1.ebuild53
-rw-r--r--sys-apps/s6-rc/s6-rc-0.5.2.0.ebuild53
-rw-r--r--sys-apps/s6-rc/s6-rc-0.5.4.2.ebuild67
-rw-r--r--sys-apps/s6/Manifest10
-rw-r--r--sys-apps/s6/metadata.xml12
-rw-r--r--sys-apps/s6/s6-2.1.3.0.ebuild66
-rw-r--r--sys-apps/s6/s6-2.12.0.3.ebuild58
-rw-r--r--sys-apps/s6/s6-2.12.0.4.ebuild58
-rw-r--r--sys-apps/s6/s6-2.6.1.1.ebuild60
-rw-r--r--sys-apps/s6/s6-2.7.0.0.ebuild60
-rw-r--r--sys-apps/s6/s6-2.7.1.1.ebuild60
-rw-r--r--sys-apps/s6/s6-2.7.2.1.ebuild50
-rw-r--r--sys-apps/s6/s6-2.8.0.1.ebuild45
-rw-r--r--sys-apps/s6/s6-2.9.0.1.ebuild45
-rw-r--r--sys-apps/s6/s6-2.9.2.0.ebuild46
-rw-r--r--sys-apps/salinfo/metadata.xml4
-rw-r--r--sys-apps/salinfo/salinfo-1.2.ebuild4
-rw-r--r--sys-apps/sandbox/Manifest4
-rw-r--r--sys-apps/sandbox/metadata.xml17
-rw-r--r--sys-apps/sandbox/sandbox-2.18.ebuild74
-rw-r--r--sys-apps/sandbox/sandbox-2.20.ebuild74
-rw-r--r--sys-apps/sandbox/sandbox-2.37.ebuild64
-rw-r--r--sys-apps/sandbox/sandbox-2.38.ebuild64
-rw-r--r--sys-apps/sdparm/Manifest3
-rw-r--r--sys-apps/sdparm/metadata.xml2
-rw-r--r--sys-apps/sdparm/sdparm-1.10.ebuild34
-rw-r--r--sys-apps/sdparm/sdparm-1.11.ebuild34
-rw-r--r--sys-apps/sdparm/sdparm-1.12.ebuild34
-rw-r--r--sys-apps/secilc/Manifest5
-rw-r--r--sys-apps/secilc/metadata.xml2
-rw-r--r--sys-apps/secilc/secilc-2.9.ebuild44
-rw-r--r--sys-apps/secilc/secilc-3.0.ebuild44
-rw-r--r--sys-apps/secilc/secilc-3.1.ebuild44
-rw-r--r--sys-apps/secilc/secilc-3.5.ebuild37
-rw-r--r--sys-apps/secilc/secilc-3.6.ebuild37
-rw-r--r--sys-apps/secilc/secilc-9999.ebuild27
-rw-r--r--sys-apps/sed/Manifest4
-rw-r--r--sys-apps/sed/metadata.xml18
-rw-r--r--sys-apps/sed/sed-4.7.ebuild49
-rw-r--r--sys-apps/sed/sed-4.8.ebuild48
-rw-r--r--sys-apps/sed/sed-4.9.ebuild63
-rw-r--r--sys-apps/selinux-python/Manifest5
-rw-r--r--sys-apps/selinux-python/metadata.xml2
-rw-r--r--sys-apps/selinux-python/selinux-python-2.9.ebuild95
-rw-r--r--sys-apps/selinux-python/selinux-python-3.0.ebuild95
-rw-r--r--sys-apps/selinux-python/selinux-python-3.1-r1.ebuild95
-rw-r--r--sys-apps/selinux-python/selinux-python-3.1.ebuild94
-rw-r--r--sys-apps/selinux-python/selinux-python-3.5.ebuild114
-rw-r--r--sys-apps/selinux-python/selinux-python-3.6.ebuild114
-rw-r--r--sys-apps/selinux-python/selinux-python-9999.ebuild63
-rw-r--r--sys-apps/semodule-utils/Manifest5
-rw-r--r--sys-apps/semodule-utils/metadata.xml2
-rw-r--r--sys-apps/semodule-utils/semodule-utils-2.9.ebuild49
-rw-r--r--sys-apps/semodule-utils/semodule-utils-3.0.ebuild49
-rw-r--r--sys-apps/semodule-utils/semodule-utils-3.1.ebuild47
-rw-r--r--sys-apps/semodule-utils/semodule-utils-3.5.ebuild43
-rw-r--r--sys-apps/semodule-utils/semodule-utils-3.6.ebuild42
-rw-r--r--sys-apps/semodule-utils/semodule-utils-9999.ebuild21
-rw-r--r--sys-apps/sensei-raw-ctl/metadata.xml6
-rw-r--r--sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729-r1.ebuild29
-rw-r--r--sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729.ebuild32
-rw-r--r--sys-apps/servicelog/Manifest3
-rw-r--r--sys-apps/servicelog/metadata.xml6
-rw-r--r--sys-apps/servicelog/servicelog-1.1.14.ebuild21
-rw-r--r--sys-apps/servicelog/servicelog-1.1.15.ebuild28
-rw-r--r--sys-apps/servicelog/servicelog-1.1.16.ebuild28
-rw-r--r--sys-apps/setserial/files/setserial-2.17-darwin.patch2
-rw-r--r--sys-apps/setserial/files/setserial-2.17-implicit-int-clang16.patch11
-rw-r--r--sys-apps/setserial/metadata.xml2
-rw-r--r--sys-apps/setserial/setserial-2.17-r5.ebuild44
-rw-r--r--sys-apps/setserial/setserial-2.17-r6.ebuild55
-rw-r--r--sys-apps/sg3_utils/Manifest4
-rw-r--r--sys-apps/sg3_utils/files/sg3_utils-1.26-stdint.patch31
-rw-r--r--sys-apps/sg3_utils/files/sg3_utils-1.42-sysmacros.patch31
-rw-r--r--sys-apps/sg3_utils/files/sg3_utils-1.47-musl.patch32
-rw-r--r--sys-apps/sg3_utils/metadata.xml2
-rw-r--r--sys-apps/sg3_utils/sg3_utils-1.42.ebuild44
-rw-r--r--sys-apps/sg3_utils/sg3_utils-1.44.ebuild43
-rw-r--r--sys-apps/sg3_utils/sg3_utils-1.45-r1.ebuild43
-rw-r--r--sys-apps/sg3_utils/sg3_utils-1.47-r1.ebuild48
-rw-r--r--sys-apps/sg3_utils/sg3_utils-1.47-r2.ebuild48
-rw-r--r--sys-apps/sg3_utils/sg3_utils-1.47.ebuild37
-rw-r--r--sys-apps/shadow/Manifest10
-rw-r--r--sys-apps/shadow/files/shadow-4.1.3-dots-in-usernames.patch10
-rw-r--r--sys-apps/shadow/files/shadow-4.13-CVE-2023-29383.patch100
-rw-r--r--sys-apps/shadow/files/shadow-4.13-configure-clang16.patch38
-rw-r--r--sys-apps/shadow/files/shadow-4.13-password-leak.patch135
-rw-r--r--sys-apps/shadow/files/shadow-4.13-usermod-prefix-gid.patch33
-rw-r--r--sys-apps/shadow/files/shadow-4.8-revert-bin-merge.patch15
-rw-r--r--sys-apps/shadow/metadata.xml6
-rw-r--r--sys-apps/shadow/shadow-4.13-r4.ebuild272
-rw-r--r--sys-apps/shadow/shadow-4.14.2.ebuild280
-rw-r--r--sys-apps/shadow/shadow-4.14.5.ebuild280
-rw-r--r--sys-apps/shadow/shadow-4.14.6.ebuild280
-rw-r--r--sys-apps/shadow/shadow-4.8-r5.ebuild241
-rw-r--r--sys-apps/shadow/shadow-4.8.1-r3.ebuild241
-rw-r--r--sys-apps/smartmontools/Manifest3
-rw-r--r--sys-apps/smartmontools/files/smartmontools-update-drivedb2
-rw-r--r--sys-apps/smartmontools/metadata.xml28
-rw-r--r--sys-apps/smartmontools/smartmontools-7.1.ebuild147
-rw-r--r--sys-apps/smartmontools/smartmontools-7.3.ebuild156
-rw-r--r--sys-apps/smartmontools/smartmontools-7.4-r1.ebuild157
-rw-r--r--sys-apps/smartmontools/smartmontools-7.4.ebuild156
-rw-r--r--sys-apps/smartmontools/smartmontools-9999.ebuild60
-rw-r--r--sys-apps/smc-sum-driver/Manifest1
-rw-r--r--sys-apps/smc-sum-driver/metadata.xml13
-rw-r--r--sys-apps/smc-sum-driver/smc-sum-driver-1.6.0.20151201-r4.ebuild45
-rw-r--r--sys-apps/smc-sum/Manifest2
-rw-r--r--sys-apps/smc-sum/files/makefile (renamed from sys-apps/smc-sum-driver/files/makefile)0
-rw-r--r--sys-apps/smc-sum/files/smc-sum-2.13.0.20230825-kernel-6.4.patch15
-rw-r--r--sys-apps/smc-sum/files/smc-sum-2.7.0.20210903-missing-include.patch10
-rw-r--r--sys-apps/smc-sum/metadata.xml2
-rw-r--r--sys-apps/smc-sum/smc-sum-2.14.0.20240215.ebuild68
-rw-r--r--sys-apps/smc-sum/smc-sum-2.5.0.20200722.ebuild39
-rw-r--r--sys-apps/smcipmitool/Manifest2
-rw-r--r--sys-apps/smcipmitool/metadata.xml2
-rw-r--r--sys-apps/smcipmitool/smcipmitool-2.23.0.191216.ebuild77
-rw-r--r--sys-apps/smcipmitool/smcipmitool-2.27.2.230221.ebuild77
-rw-r--r--sys-apps/sparc-utils/metadata.xml4
-rw-r--r--sys-apps/sparc-utils/sparc-utils-1.9-r6.ebuild62
-rw-r--r--sys-apps/sparc-utils/sparc-utils-1.9-r7.ebuild62
-rw-r--r--sys-apps/spu-tools/metadata.xml2
-rw-r--r--sys-apps/spu-tools/spu-tools-2.3.0.136.ebuild26
-rw-r--r--sys-apps/stroke/metadata.xml2
-rw-r--r--sys-apps/stroke/stroke-0.1.3-r1.ebuild15
-rw-r--r--sys-apps/stroke/stroke-0.1.3-r2.ebuild20
-rw-r--r--sys-apps/superdiag/Manifest2
-rw-r--r--sys-apps/superdiag/metadata.xml2
-rw-r--r--sys-apps/superdiag/superdiag-1.3.0.20200109.ebuild69
-rw-r--r--sys-apps/superdiag/superdiag-1.8.0.20230310.ebuild62
-rw-r--r--sys-apps/superiotool/Manifest1
-rwxr-xr-xsys-apps/superiotool/files/make-tarball.sh34
-rw-r--r--sys-apps/superiotool/metadata.xml8
-rw-r--r--sys-apps/superiotool/superiotool-6637.ebuild43
-rw-r--r--sys-apps/superiotool/superiotool-99999999.ebuild43
-rw-r--r--sys-apps/syd/Manifest195
-rw-r--r--sys-apps/syd/metadata.xml8
-rw-r--r--sys-apps/syd/syd-3.16.0.ebuild249
-rw-r--r--sys-apps/syd/syd-3.16.2.ebuild249
-rw-r--r--sys-apps/sydbox/Manifest1
-rw-r--r--sys-apps/sydbox/metadata.xml8
-rw-r--r--sys-apps/sydbox/sydbox-1.0.7.ebuild36
-rw-r--r--sys-apps/syscriptor/files/syscriptor-1.5.15-dont-inject-additional-flags.patch30
-rw-r--r--sys-apps/syscriptor/files/syscriptor-1.5.15-respect-CC-environment-variable.patch25
-rw-r--r--sys-apps/syscriptor/metadata.xml2
-rw-r--r--sys-apps/syscriptor/syscriptor-1.5.15.ebuild22
-rw-r--r--sys-apps/syslog-notify/Manifest2
-rw-r--r--sys-apps/syslog-notify/metadata.xml7
-rw-r--r--sys-apps/syslog-notify/syslog-notify-0.2.ebuild14
-rw-r--r--sys-apps/system-monitoring-center/Manifest1
-rw-r--r--sys-apps/system-monitoring-center/metadata.xml26
-rw-r--r--sys-apps/system-monitoring-center/system-monitoring-center-2.26.0.ebuild51
-rw-r--r--sys-apps/system-monitoring-center/system-monitoring-center-9999.ebuild49
-rw-r--r--sys-apps/systemd-readahead/metadata.xml2
-rw-r--r--sys-apps/systemd-readahead/systemd-readahead-216.ebuild7
-rw-r--r--sys-apps/systemd-utils/Manifest5
-rw-r--r--sys-apps/systemd-utils/files/40-gentoo.rules3
-rw-r--r--sys-apps/systemd-utils/files/legacy.conf3
-rw-r--r--sys-apps/systemd-utils/files/systemd-tmpfiles-clean2
-rw-r--r--sys-apps/systemd-utils/files/systemd-tmpfiles-setup18
-rw-r--r--sys-apps/systemd-utils/files/systemd-tmpfiles-setup-dev20
-rw-r--r--sys-apps/systemd-utils/files/systemd-utils-254.3-add-link-kernel-install-shared-option.patch58
-rw-r--r--sys-apps/systemd-utils/files/tmp.conf2
-rw-r--r--sys-apps/systemd-utils/metadata.xml21
-rw-r--r--sys-apps/systemd-utils/systemd-utils-254.10-r1.ebuild583
-rw-r--r--sys-apps/systemd-utils/systemd-utils-254.8-r1.ebuild584
-rw-r--r--sys-apps/systemd-utils/systemd-utils-255.4.ebuild599
-rw-r--r--sys-apps/systemd/Manifest6
-rw-r--r--sys-apps/systemd/files/254-PrivateDevices-userdbd.patch242
-rw-r--r--sys-apps/systemd/files/255-install-format-overflow.patch43
-rw-r--r--sys-apps/systemd/files/gentoo-journald-audit-r1.patch51
-rw-r--r--sys-apps/systemd/files/gentoo-journald-audit.patch40
-rw-r--r--sys-apps/systemd/files/gentoo-systemctl-disable-sysv-sync.patch25
-rw-r--r--sys-apps/systemd/files/legacy.conf3
-rw-r--r--sys-apps/systemd/files/systemd-253-initrd-generators.patch34
-rw-r--r--sys-apps/systemd/files/systemd-254.9-fchmodat2.patch255
-rw-r--r--sys-apps/systemd/files/systemd-test-process-util.patch31
-rw-r--r--sys-apps/systemd/files/systemd-user.pam5
-rw-r--r--sys-apps/systemd/metadata.xml17
-rw-r--r--sys-apps/systemd/systemd-246-r2.ebuild530
-rw-r--r--sys-apps/systemd/systemd-254.10.ebuild536
-rw-r--r--sys-apps/systemd/systemd-254.8-r1.ebuild540
-rw-r--r--sys-apps/systemd/systemd-254.9-r1.ebuild541
-rw-r--r--sys-apps/systemd/systemd-255.3-r1.ebuild527
-rw-r--r--sys-apps/systemd/systemd-255.4.ebuild530
-rw-r--r--sys-apps/systemd/systemd-9999.ebuild481
-rw-r--r--sys-apps/sysvinit/Manifest7
-rw-r--r--sys-apps/sysvinit/files/bootlogd.confd2
-rw-r--r--sys-apps/sysvinit/files/bootlogd.initd4
-rw-r--r--sys-apps/sysvinit/files/inittab-2.9161
-rw-r--r--sys-apps/sysvinit/files/inittab-2.9561
-rw-r--r--sys-apps/sysvinit/files/inittab-2.98-r163
-rw-r--r--sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch142
-rw-r--r--sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch36
-rw-r--r--sys-apps/sysvinit/files/sysvinit-2.92_beta-shutdown-h.patch81
-rw-r--r--sys-apps/sysvinit/files/sysvinit-2.94_beta-shutdown-single.patch39
-rw-r--r--sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch87
-rw-r--r--sys-apps/sysvinit/files/sysvinit-3.08-shutdown-single.patch38
-rw-r--r--sys-apps/sysvinit/metadata.xml22
-rw-r--r--sys-apps/sysvinit/sysvinit-2.93.ebuild127
-rw-r--r--sys-apps/sysvinit/sysvinit-2.96.ebuild139
-rw-r--r--sys-apps/sysvinit/sysvinit-2.97.ebuild144
-rw-r--r--sys-apps/sysvinit/sysvinit-3.08.ebuild201
-rw-r--r--sys-apps/sysvinit/sysvinit-3.09.ebuild201
-rw-r--r--sys-apps/tas/Manifest2
-rw-r--r--sys-apps/tas/metadata.xml2
-rw-r--r--sys-apps/tas/tas-1.6.0.200601.ebuild74
-rw-r--r--sys-apps/tas/tas-1.7.0.220503-r1.ebuild72
-rw-r--r--sys-apps/tcp-wrappers/Manifest3
-rw-r--r--sys-apps/tcp-wrappers/files/tcp-wrappers-7.6-redhat-bug11881.patch35
-rw-r--r--sys-apps/tcp-wrappers/files/tcp-wrappers-7.6.28-no-external-malloc.patch15
-rw-r--r--sys-apps/tcp-wrappers/metadata.xml2
-rw-r--r--sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild96
-rw-r--r--sys-apps/tcp-wrappers/tcp-wrappers-7.6.31-r1.ebuild115
-rw-r--r--sys-apps/tcp-wrappers/tcp-wrappers-7.6.31.ebuild111
-rw-r--r--sys-apps/texinfo/Manifest3
-rw-r--r--sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch103
-rw-r--r--sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch44
-rw-r--r--sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch51
-rw-r--r--sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch53
-rw-r--r--sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch221
-rw-r--r--sys-apps/texinfo/metadata.xml3
-rw-r--r--sys-apps/texinfo/texinfo-6.6-r1.ebuild45
-rw-r--r--sys-apps/texinfo/texinfo-6.7.ebuild58
-rw-r--r--sys-apps/texinfo/texinfo-7.1-r1.ebuild99
-rw-r--r--sys-apps/texinfo/texinfo-9999.ebuild94
-rw-r--r--sys-apps/the_silver_searcher/Manifest4
-rw-r--r--sys-apps/the_silver_searcher/files/the_silver_searcher-2.2.0-no_lfs64.patch52
-rw-r--r--sys-apps/the_silver_searcher/files/the_silver_searcher-fno-common.patch164
-rw-r--r--sys-apps/the_silver_searcher/metadata.xml16
-rw-r--r--sys-apps/the_silver_searcher/the_silver_searcher-2.0.0.ebuild51
-rw-r--r--sys-apps/the_silver_searcher/the_silver_searcher-2.1.0.ebuild54
-rw-r--r--sys-apps/the_silver_searcher/the_silver_searcher-2.2.0.ebuild54
-rw-r--r--sys-apps/the_silver_searcher/the_silver_searcher-2.2.0_p20201217-r2.ebuild60
-rw-r--r--sys-apps/thunderbolt-software-user-space/metadata.xml6
-rw-r--r--sys-apps/timer_entropyd/Manifest1
-rw-r--r--sys-apps/timer_entropyd/files/timer_entropyd-0.1-syslog.patch28
-rw-r--r--sys-apps/timer_entropyd/files/timer_entropyd.initd.113
-rw-r--r--sys-apps/timer_entropyd/metadata.xml11
-rw-r--r--sys-apps/timer_entropyd/timer_entropyd-0.3.ebuild42
-rw-r--r--sys-apps/tomoyo-tools/metadata.xml5
-rw-r--r--sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214-r1.ebuild69
-rw-r--r--sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214.ebuild67
-rw-r--r--sys-apps/toybox/Manifest6
-rw-r--r--sys-apps/toybox/files/toybox-0.8.9-verbose-build-fix.patch18
-rw-r--r--sys-apps/toybox/metadata.xml6
-rw-r--r--sys-apps/toybox/toybox-0.8.0.ebuild57
-rw-r--r--sys-apps/toybox/toybox-0.8.1.ebuild57
-rw-r--r--sys-apps/toybox/toybox-0.8.10.ebuild58
-rw-r--r--sys-apps/toybox/toybox-0.8.3.ebuild57
-rw-r--r--sys-apps/toybox/toybox-0.8.8.ebuild58
-rw-r--r--sys-apps/toybox/toybox-0.8.9.ebuild62
-rw-r--r--sys-apps/toybox/toybox-9999.ebuild27
-rw-r--r--sys-apps/tuned/Manifest3
-rw-r--r--sys-apps/tuned/metadata.xml2
-rw-r--r--sys-apps/tuned/tuned-2.13.0-r1.ebuild61
-rw-r--r--sys-apps/tuned/tuned-2.22.0.ebuild70
-rw-r--r--sys-apps/tuned/tuned-2.22.1.ebuild70
-rw-r--r--sys-apps/uam/metadata.xml6
-rw-r--r--sys-apps/uam/uam-0.3.2-r1.ebuild40
-rw-r--r--sys-apps/uam/uam-0.3.2-r2.ebuild43
-rw-r--r--sys-apps/uam/uam-9999.ebuild46
-rw-r--r--sys-apps/ucspi-proxy/Manifest1
-rw-r--r--sys-apps/ucspi-proxy/metadata.xml7
-rw-r--r--sys-apps/ucspi-proxy/ucspi-proxy-0.99.ebuild31
-rw-r--r--sys-apps/ucspi-proxy/ucspi-proxy-1.1.ebuild11
-rw-r--r--sys-apps/ucspi-ssl/Manifest5
-rw-r--r--sys-apps/ucspi-ssl/metadata.xml16
-rw-r--r--sys-apps/ucspi-ssl/ucspi-ssl-0.94-r1.ebuild53
-rw-r--r--sys-apps/ucspi-ssl/ucspi-ssl-0.97.ebuild57
-rw-r--r--sys-apps/ucspi-ssl/ucspi-ssl-0.98b.ebuild57
-rw-r--r--sys-apps/ucspi-ssl/ucspi-ssl-0.99.ebuild56
-rw-r--r--sys-apps/ucspi-ssl/ucspi-ssl-0.99e.ebuild62
-rw-r--r--sys-apps/ucspi-tcp/Manifest2
-rw-r--r--sys-apps/ucspi-tcp/files/0.88-implicit-int-ipv6.patch11
-rw-r--r--sys-apps/ucspi-tcp/files/0.88-implicit-int.patch261
-rw-r--r--sys-apps/ucspi-tcp/metadata.xml2
-rw-r--r--sys-apps/ucspi-tcp/ucspi-tcp-0.88-r18.ebuild72
-rw-r--r--sys-apps/ucspi-tcp/ucspi-tcp-0.88-r19.ebuild74
-rw-r--r--sys-apps/ucspi-unix/metadata.xml2
-rw-r--r--sys-apps/ucspi-unix/ucspi-unix-1.0.ebuild4
-rw-r--r--sys-apps/udevil/files/udevil-0.4.4-no-libtool.patch10
-rw-r--r--sys-apps/udevil/metadata.xml2
-rw-r--r--sys-apps/udevil/udevil-0.4.4-r3.ebuild75
-rw-r--r--sys-apps/udevil/udevil-0.4.4-r5.ebuild74
-rw-r--r--sys-apps/unscd/Manifest1
-rw-r--r--sys-apps/unscd/metadata.xml2
-rw-r--r--sys-apps/unscd/unscd-0.53.ebuild36
-rw-r--r--sys-apps/unscd/unscd-0.54-r1.ebuild12
-rw-r--r--sys-apps/usb_modeswitch/Manifest4
-rw-r--r--sys-apps/usb_modeswitch/metadata.xml13
-rw-r--r--sys-apps/usb_modeswitch/usb_modeswitch-2.5.2.ebuild67
-rw-r--r--sys-apps/usb_modeswitch/usb_modeswitch-2.6.1.ebuild75
-rw-r--r--sys-apps/usbguard/Manifest3
-rw-r--r--sys-apps/usbguard/files/usbguard-1.1.2-gcc-13.patch19
-rw-r--r--sys-apps/usbguard/metadata.xml9
-rw-r--r--sys-apps/usbguard/usbguard-0.7.6-r1.ebuild80
-rw-r--r--sys-apps/usbguard/usbguard-0.7.8.ebuild80
-rw-r--r--sys-apps/usbguard/usbguard-1.1.2.ebuild103
-rw-r--r--sys-apps/usbmon/Manifest1
-rw-r--r--sys-apps/usbmon/files/usbmon-6-sysmacros.patch38
-rw-r--r--sys-apps/usbmon/metadata.xml2
-rw-r--r--sys-apps/usbmon/usbmon-6-r1.ebuild32
-rw-r--r--sys-apps/usbmon/usbmon-6.1-r1.ebuild31
-rw-r--r--sys-apps/usbmon/usbmon-6.1.ebuild27
-rw-r--r--sys-apps/usbredir/Manifest6
-rw-r--r--sys-apps/usbredir/metadata.xml21
-rw-r--r--sys-apps/usbredir/usbredir-0.13.0-r1.ebuild41
-rw-r--r--sys-apps/usbredir/usbredir-0.14.0.ebuild41
-rw-r--r--sys-apps/usbredir/usbredir-0.7.1_p20170503.ebuild44
-rw-r--r--sys-apps/usbredir/usbredir-0.7.1_p20180211.ebuild44
-rw-r--r--sys-apps/usbredir/usbredir-0.8.0.ebuild39
-rw-r--r--sys-apps/usbredir/usbredir-9999.ebuild41
-rw-r--r--sys-apps/usbutils/Manifest4
-rw-r--r--sys-apps/usbutils/metadata.xml2
-rw-r--r--sys-apps/usbutils/usbutils-012.ebuild52
-rw-r--r--sys-apps/usbutils/usbutils-013.ebuild52
-rw-r--r--sys-apps/usbutils/usbutils-016.ebuild66
-rw-r--r--sys-apps/usbutils/usbutils-017.ebuild66
-rw-r--r--sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch44
-rw-r--r--sys-apps/usermode-utilities/metadata.xml2
-rw-r--r--sys-apps/usermode-utilities/usermode-utilities-20070815-r3.ebuild41
-rw-r--r--sys-apps/usermode-utilities/usermode-utilities-20070815-r4.ebuild4
-rw-r--r--sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild47
-rw-r--r--sys-apps/utempter/metadata.xml2
-rw-r--r--sys-apps/utempter/utempter-0.5.5.6-r1.ebuild49
-rw-r--r--sys-apps/utempter/utempter-0.5.5.6.ebuild58
-rw-r--r--sys-apps/util-linux/Manifest7
-rw-r--r--sys-apps/util-linux/files/su-l.pamd5
-rw-r--r--sys-apps/util-linux/files/util-linux-2.33.1-fix-struct_termios-check.patch30
-rw-r--r--sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch36
-rw-r--r--sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch165
-rw-r--r--sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch58
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.2-backport-1d4456d.patch33
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch268
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch23
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.3-CVE-2024-28085.patch25
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch52
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.3-libblkid-luks.patch40
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch55
-rw-r--r--sys-apps/util-linux/files/util-linux-2.39.3-musl-1.2.5-basename.patch56
-rw-r--r--sys-apps/util-linux/metadata.xml55
-rw-r--r--sys-apps/util-linux/util-linux-2.33.2.ebuild290
-rw-r--r--sys-apps/util-linux/util-linux-2.34-r3.ebuild301
-rw-r--r--sys-apps/util-linux/util-linux-2.35.1-r2.ebuild317
-rw-r--r--sys-apps/util-linux/util-linux-2.35.2.ebuild315
-rw-r--r--sys-apps/util-linux/util-linux-2.36.ebuild311
-rw-r--r--sys-apps/util-linux/util-linux-2.39.3-r2.ebuild408
-rw-r--r--sys-apps/util-linux/util-linux-2.39.3-r5.ebuild414
-rw-r--r--sys-apps/util-linux/util-linux-2.39.3-r6.ebuild415
-rw-r--r--sys-apps/util-linux/util-linux-2.39.3-r7.ebuild416
-rw-r--r--sys-apps/util-linux/util-linux-9999.ebuild268
-rw-r--r--sys-apps/uutils-coreutils/Manifest309
-rw-r--r--sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.21-xfail-tests.patch67
-rw-r--r--sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.25-xfail-tests.patch78
-rw-r--r--sys-apps/uutils-coreutils/metadata.xml18
-rw-r--r--sys-apps/uutils-coreutils/uutils-coreutils-0.0.24.ebuild383
-rw-r--r--sys-apps/uutils-coreutils/uutils-coreutils-0.0.25.ebuild385
-rw-r--r--sys-apps/uutils-coreutils/uutils-coreutils-9999.ebuild385
-rw-r--r--sys-apps/uutils-findutils/Manifest164
-rw-r--r--sys-apps/uutils-findutils/metadata.xml15
-rw-r--r--sys-apps/uutils-findutils/uutils-findutils-0.4.2-r1.ebuild246
-rw-r--r--sys-apps/uutils-findutils/uutils-findutils-9999.ebuild255
-rw-r--r--sys-apps/vbetool/Manifest2
-rw-r--r--sys-apps/vbetool/files/vbetool-1.0-build.patch18
-rw-r--r--sys-apps/vbetool/files/vbetool-1.2.2-libx86.patch7
-rw-r--r--sys-apps/vbetool/metadata.xml2
-rw-r--r--sys-apps/vbetool/vbetool-1.1.ebuild34
-rw-r--r--sys-apps/vbetool/vbetool-1.2.2.ebuild36
-rw-r--r--sys-apps/watchdog/Manifest1
-rw-r--r--sys-apps/watchdog/files/watchdog-5.15-musl-nfs.patch27
-rw-r--r--sys-apps/watchdog/files/watchdog-5.15-musl.patch23
-rw-r--r--sys-apps/watchdog/files/watchdog-5.16-implicit-func-decls-musl.patch30
-rw-r--r--sys-apps/watchdog/files/watchdog-init.d47
-rw-r--r--sys-apps/watchdog/metadata.xml2
-rw-r--r--sys-apps/watchdog/watchdog-5.15.ebuild41
-rw-r--r--sys-apps/watchdog/watchdog-5.16-r1.ebuild45
-rw-r--r--sys-apps/watchdog/watchdog-5.16.ebuild4
-rw-r--r--sys-apps/which/metadata.xml2
-rw-r--r--sys-apps/which/which-2.21.ebuild7
-rw-r--r--sys-apps/x86info/Manifest1
-rw-r--r--sys-apps/x86info/files/x86info-1.30-makefile.patch38
-rw-r--r--sys-apps/x86info/metadata.xml19
-rw-r--r--sys-apps/x86info/x86info-1.30_p20190617.ebuild16
-rw-r--r--sys-apps/x86info/x86info-1.31.ebuild71
-rw-r--r--sys-apps/xdg-dbus-proxy/Manifest2
-rw-r--r--sys-apps/xdg-dbus-proxy/metadata.xml5
-rw-r--r--sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.2.ebuild27
-rw-r--r--sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.5.ebuild37
-rw-r--r--sys-apps/xdg-desktop-portal-gnome/Manifest1
-rw-r--r--sys-apps/xdg-desktop-portal-gnome/files/45.1-c99.patch25
-rw-r--r--sys-apps/xdg-desktop-portal-gnome/metadata.xml11
-rw-r--r--sys-apps/xdg-desktop-portal-gnome/xdg-desktop-portal-gnome-45.1-r1.ebuild58
-rw-r--r--sys-apps/xdg-desktop-portal-gtk/Manifest2
-rw-r--r--sys-apps/xdg-desktop-portal-gtk/metadata.xml13
-rw-r--r--sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.14.1.ebuild59
-rw-r--r--sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.8.0.ebuild47
-rw-r--r--sys-apps/xdg-desktop-portal-xapp/Manifest1
-rw-r--r--sys-apps/xdg-desktop-portal-xapp/metadata.xml15
-rw-r--r--sys-apps/xdg-desktop-portal-xapp/xdg-desktop-portal-xapp-1.0.4.ebuild36
-rw-r--r--sys-apps/xdg-desktop-portal/Manifest3
-rw-r--r--sys-apps/xdg-desktop-portal/files/default-portals.conf2
-rw-r--r--sys-apps/xdg-desktop-portal/files/xdg-desktop-portal-1.18.0-sandbox-disable-failing-tests.patch69
-rw-r--r--sys-apps/xdg-desktop-portal/metadata.xml8
-rw-r--r--sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild116
-rw-r--r--sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.6.0-r2.ebuild47
-rw-r--r--sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.8.0.ebuild43
-rw-r--r--sys-apps/xinetd/Manifest2
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.14-DESTDIR.patch27
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.14-install-contrib.patch24
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.15-config.patch22
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.15-creds.patch17
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.15.3-no-rpc.patch50
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.15.3-rpc-configure.patch57
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.15.4-0001-configure.ac-use-AC_USE_SYSTEM_EXTENSIONS.patch43
-rw-r--r--sys-apps/xinetd/files/xinetd-2.3.15.4-0002-redirect-drop-deprecated-sys-signal.h-include.patch24
-rw-r--r--sys-apps/xinetd/files/xinetd.service10
-rw-r--r--sys-apps/xinetd/metadata.xml2
-rw-r--r--sys-apps/xinetd/xinetd-2.3.15-r3.ebuild56
-rw-r--r--sys-apps/xinetd/xinetd-2.3.15.3-r2.ebuild64
-rw-r--r--sys-apps/xinetd/xinetd-2.3.15.3.ebuild48
-rw-r--r--sys-apps/xinetd/xinetd-2.3.15.4-r1.ebuild62
-rw-r--r--sys-apps/xinetd/xinetd-2.3.15.4.ebuild59
-rw-r--r--sys-apps/xmbmon/metadata.xml2
-rw-r--r--sys-apps/xmbmon/xmbmon-2.0.5-r1.ebuild75
-rw-r--r--sys-apps/xmbmon/xmbmon-2.0.5-r2.ebuild76
-rw-r--r--sys-apps/yarn/Manifest7
-rw-r--r--sys-apps/yarn/metadata.xml12
-rw-r--r--sys-apps/yarn/yarn-1.22.10.ebuild40
-rw-r--r--sys-apps/yarn/yarn-1.22.17.ebuild40
-rw-r--r--sys-apps/yarn/yarn-1.22.19.ebuild40
-rw-r--r--sys-apps/yarn/yarn-1.22.21.ebuild40
-rw-r--r--sys-apps/yarn/yarn-1.22.22.ebuild40
-rw-r--r--sys-apps/yarn/yarn-1.22.4.ebuild40
-rw-r--r--sys-apps/yarn/yarn-1.22.5.ebuild40
-rw-r--r--sys-apps/zorroutils/Manifest1
-rw-r--r--sys-apps/zorroutils/files/zorroutils-0.04-fix-build-system.patch15
-rw-r--r--sys-apps/zorroutils/metadata.xml7
-rw-r--r--sys-apps/zorroutils/zorroutils-0.04.ebuild34
-rw-r--r--sys-apps/zorroutils/zorroutils-0.05.ebuild4
-rw-r--r--sys-apps/zram-generator/Manifest39
-rw-r--r--sys-apps/zram-generator/metadata.xml10
-rw-r--r--sys-apps/zram-generator/zram-generator-1.1.2.ebuild96
1989 files changed, 61210 insertions, 49093 deletions
diff --git a/sys-apps/accountsservice/Manifest b/sys-apps/accountsservice/Manifest
index 5962483b5243..144f62adb755 100644
--- a/sys-apps/accountsservice/Manifest
+++ b/sys-apps/accountsservice/Manifest
@@ -1,2 +1 @@
-DIST accountsservice-0.6.50.tar.xz 384484 BLAKE2B 52c06ba85498f292204834f967211d8f0940786dc2ea3070124d3aecccd551375bfbc8fc31f23a2c3c86e23359294307656c3b927c4e819fc102d8626ae0dd82 SHA512 6e07cd318452b1cbedeacd729f0ebb200525caf1b09981abb2bac16fd90756a790ebec08aca0a0cea016f14ab27c159a68fe1332ef4bc636c5863b8c61040f64
-DIST accountsservice-0.6.55.tar.xz 97972 BLAKE2B aba3adfeb53e64455ce8e672b9db754bae4af6b4de0823cc021d0311a381ec40af04371e78f7c84eab7fb72356b26e22db78aad0343d57f65ea71a7742b51fc7 SHA512 c12e6a8e80f9b087f97238da4734d2d3a14a7c5cbd870a32a04b00116f176c818c39fb886f6dc72c3e93c136b0c2074ddf8f77e20431fa3bd54f138bea9d262d
+DIST accountsservice-23.13.9.tar.xz 636064 BLAKE2B 74dbbe816937e626ba0f6524b4293466ac2905f474396f5d23633e966d46e013de110671abcbfe2911fffa1e98872e2525b61594a967f917975ebf18d39b8547 SHA512 c6eb543ce2e07b61bbdfa454e388949bc688517be0536b14f30c66383ed105b15d3fab8b6c62b1eaa08f67d9bdc29b928729d9f7c704f47de4decf0de8e12f89
diff --git a/sys-apps/accountsservice/accountsservice-0.6.50-r1.ebuild b/sys-apps/accountsservice/accountsservice-0.6.50-r1.ebuild
deleted file mode 100644
index 11a90ec3611e..000000000000
--- a/sys-apps/accountsservice/accountsservice-0.6.50-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME2_EAUTORECONF="yes"
-
-inherit gnome2 systemd
-
-DESCRIPTION="D-Bus interfaces for querying and manipulating user account information"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/AccountsService/"
-SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ppc ppc64 ~sparc x86"
-
-IUSE="doc elogind +introspection selinux systemd"
-REQUIRED_USE="^^ ( elogind systemd )"
-
-CDEPEND="
- >=dev-libs/glib-2.44:2
- sys-auth/polkit
- elogind? ( >=sys-auth/elogind-229.4 )
- introspection? ( >=dev-libs/gobject-introspection-0.9.12:= )
- systemd? ( >=sys-apps/systemd-186:0= )
-"
-DEPEND="${CDEPEND}
- dev-libs/libxslt
- dev-util/gdbus-codegen
- >=dev-util/gtk-doc-am-1.15
- >=dev-util/intltool-0.40
- sys-devel/gettext
- virtual/pkgconfig
- doc? (
- app-text/docbook-xml-dtd:4.1.2
- app-text/xmlto )
-"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-accountsd )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.6.35-gentoo-system-users.patch
-
- # lib: don't set loaded state until seat is fetched (from 'master')
- "${FILESDIR}"/${P}-loaded-state.patch
-)
-
-src_configure() {
- gnome2_src_configure \
- --disable-static \
- --disable-more-warnings \
- --localstatedir="${EPREFIX}"/var \
- --enable-admin-group="wheel" \
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
- $(use_enable doc docbook-docs) \
- $(use_enable elogind) \
- $(use_enable introspection) \
- $(use_enable systemd)
-}
diff --git a/sys-apps/accountsservice/accountsservice-0.6.55.ebuild b/sys-apps/accountsservice/accountsservice-0.6.55.ebuild
deleted file mode 100644
index 6ffab7fa4eda..000000000000
--- a/sys-apps/accountsservice/accountsservice-0.6.55.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit meson systemd
-
-DESCRIPTION="D-Bus interfaces for querying and manipulating user account information"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/AccountsService/"
-SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ppc ppc64 ~sparc x86"
-
-IUSE="doc elogind gtk-doc +introspection selinux systemd"
-REQUIRED_USE="^^ ( elogind systemd )"
-
-CDEPEND="
- >=dev-libs/glib-2.44:2
- sys-auth/polkit
- elogind? ( >=sys-auth/elogind-229.4 )
- introspection? ( >=dev-libs/gobject-introspection-0.9.12:= )
- systemd? ( >=sys-apps/systemd-186:0= )
-"
-DEPEND="${CDEPEND}"
-BDEPEND="
- dev-libs/libxslt
- dev-util/gdbus-codegen
- sys-devel/gettext
- virtual/pkgconfig
- doc? (
- app-text/docbook-xml-dtd:4.1.2
- app-text/xmlto )
- gtk-doc? (
- dev-util/gtk-doc
- app-text/docbook-xml-dtd:4.3 )
-"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-accountsd )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.6.35-gentoo-system-users.patch
-)
-
-src_configure() {
- local emesonargs=(
- --localstatedir="${EPREFIX}/var"
- -Dsystemdsystemunitdir="$(systemd_get_systemunitdir)"
- -Dadmin_group="wheel"
- $(meson_use systemd)
- $(meson_use elogind)
- $(meson_use introspection)
- $(meson_use doc docbook)
- $(meson_use gtk-doc gtk_doc)
- )
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- # https://gitlab.freedesktop.org/accountsservice/accountsservice/-/issues/90
- if use doc; then
- mv "${ED}/usr/share/doc/${PN}" "${ED}/usr/share/doc/${PF}" || die
- fi
-
- # This directories are created at runtime when needed
- rm -r "${ED}"/var/lib || die
-}
diff --git a/sys-apps/accountsservice/accountsservice-23.13.9.ebuild b/sys-apps/accountsservice/accountsservice-23.13.9.ebuild
new file mode 100644
index 000000000000..61e932e21ed9
--- /dev/null
+++ b/sys-apps/accountsservice/accountsservice-23.13.9.ebuild
@@ -0,0 +1,98 @@
+# Copyright 2011-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{9..11} )
+inherit meson python-any-r1 systemd
+
+DESCRIPTION="D-Bus interfaces for querying and manipulating user account information"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/AccountsService/"
+SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
+
+IUSE="doc elogind gtk-doc +introspection selinux systemd test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="^^ ( elogind systemd )"
+
+CDEPEND="
+ >=dev-libs/glib-2.63.5:2
+ sys-auth/polkit
+ virtual/libcrypt:=
+ elogind? ( >=sys-auth/elogind-229.4 )
+ introspection? ( >=dev-libs/gobject-introspection-0.9.12:= )
+ systemd? ( >=sys-apps/systemd-186:0= )
+"
+DEPEND="${CDEPEND}
+ sys-apps/dbus
+"
+BDEPEND="
+ dev-libs/libxslt
+ dev-util/gdbus-codegen
+ dev-util/glib-utils
+ sys-devel/gettext
+ virtual/pkgconfig
+ doc? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )
+ gtk-doc? (
+ dev-util/gtk-doc
+ app-text/docbook-xml-dtd:4.3
+ )
+ test? (
+ $(python_gen_any_dep '
+ dev-python/python-dbusmock[${PYTHON_USEDEP}]
+ ')
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-accountsd )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-22.04.62-gentoo-system-users.patch
+ "${FILESDIR}"/${PN}-23.13.9-generate-version.patch #905770
+ # From Alpine Linux
+ # https://gitlab.freedesktop.org/accountsservice/accountsservice/-/merge_requests/97
+ "${FILESDIR}"/${PN}-23.13.9-musl-fixes.patch
+)
+
+python_check_deps() {
+ if use test; then
+ python_has_version "dev-python/python-dbusmock[${PYTHON_USEDEP}]"
+ fi
+}
+
+src_configure() {
+ # No option to disable tests
+ if ! use test; then
+ sed -e "/subdir('tests')/d" -i meson.build || die
+ fi
+
+ local emesonargs=(
+ --localstatedir="${EPREFIX}/var"
+ -Dsystemdsystemunitdir="$(systemd_get_systemunitdir)"
+ -Dadmin_group="wheel"
+ $(meson_use elogind)
+ $(meson_use introspection)
+ $(meson_use doc docbook)
+ $(meson_use gtk-doc gtk_doc)
+ -Dvapi=false
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # https://gitlab.freedesktop.org/accountsservice/accountsservice/-/issues/90
+ if use doc; then
+ mv "${ED}/usr/share/doc/${PN}" "${ED}/usr/share/doc/${PF}" || die
+ fi
+
+ # This directories are created at runtime when needed
+ rm -r "${ED}"/var/lib || die
+}
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch b/sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch
deleted file mode 100644
index 39ebf42ea6ac..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch
+++ /dev/null
@@ -1,51 +0,0 @@
---- a/src/user-classify.c.old 2013-12-04 20:29:48.944454769 +0100
-+++ b/src/user-classify.c 2013-12-04 20:32:59.728283477 +0100
-@@ -55,6 +55,48 @@
- "at",
- "gdm",
- "gnome-initial-setup"
-+ /* Additional Gentoo system users with non-trivial login shell */
-+ "amanda",
-+ "backuppc",
-+ "drqueue",
-+ "firebird",
-+ "flexlm",
-+ "foldingathome",
-+ "geneweb",
-+ "git",
-+ "gnump3d",
-+ "hacluster",
-+ "hg",
-+ "hsqldb",
-+ "infinote",
-+ "foldingathome",
-+ "geneweb",
-+ "git",
-+ "gnump3d",
-+ "hacluster",
-+ "hg",
-+ "hsqldb",
-+ "infinote",
-+ "jffnms",
-+ "klive",
-+ "mailman",
-+ "mpd",
-+ "mythtv",
-+ "nagios",
-+ "nx",
-+ "oneadmin",
-+ "openvpn",
-+ "p2p",
-+ "phxd",
-+ "resin",
-+ "rplayd",
-+ "scponly",
-+ "secoff",
-+ "tinyproxy",
-+ "ttrssd",
-+ "vboxguest",
-+ "vdr",
-+ "vdradmin",
- };
-
- #define PATH_NOLOGIN "/sbin/nologin"
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.50-loaded-state.patch b/sys-apps/accountsservice/files/accountsservice-0.6.50-loaded-state.patch
deleted file mode 100644
index 901704bc601f..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.50-loaded-state.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c7fa612023a163e8b2352e1170c6df3fceb19b27 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Thu, 19 Jul 2018 13:14:09 -0400
-Subject: lib: don't set loaded state until seat is fetched
-
-At the moment we set is-loaded on the user-manager
-object as soon as we start fetching the seat, but
-we should waiting until the seat is fetched, so
-that can_switch() will return the correct value
-if the caller waited until the loaded signal
-to use it.
-
-This commit changes the >= to > which I believe
-was the original intention anyway.
-
-https://bugs.freedesktop.org/show_bug.cgi?id=107298
----
- src/libaccountsservice/act-user-manager.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/libaccountsservice/act-user-manager.c b/src/libaccountsservice/act-user-manager.c
-index 325421b..e7e26b1 100644
---- a/src/libaccountsservice/act-user-manager.c
-+++ b/src/libaccountsservice/act-user-manager.c
-@@ -2382,7 +2382,7 @@ maybe_set_is_loaded (ActUserManager *manager)
- /* Don't set is_loaded yet unless the seat is already loaded enough
- * or failed to load.
- */
-- if (manager->priv->seat.state >= ACT_USER_MANAGER_SEAT_STATE_GET_ID) {
-+ if (manager->priv->seat.state > ACT_USER_MANAGER_SEAT_STATE_GET_ID) {
- g_debug ("ActUserManager: Seat loaded, so now setting loaded property");
- } else if (manager->priv->seat.state == ACT_USER_MANAGER_SEAT_STATE_UNLOADED) {
- g_debug ("ActUserManager: Seat wouldn't load, so giving up on it and setting loaded property");
---
-cgit v1.1
-
diff --git a/sys-apps/accountsservice/files/accountsservice-22.04.62-gentoo-system-users.patch b/sys-apps/accountsservice/files/accountsservice-22.04.62-gentoo-system-users.patch
new file mode 100644
index 000000000000..d65fa2f89d8a
--- /dev/null
+++ b/sys-apps/accountsservice/files/accountsservice-22.04.62-gentoo-system-users.patch
@@ -0,0 +1,58 @@
+From 0db673b94a6031640ae5faa3b79c4a1fea078350 Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Sun, 30 Jan 2022 12:00:09 -0800
+Subject: [PATCH] Add more users
+
+---
+ src/user-classify.c | 35 ++++++++++++++++++++++++++++++++++-
+ 1 file changed, 34 insertions(+), 1 deletion(-)
+
+diff --git a/src/user-classify.c b/src/user-classify.c
+index 9224905..70f1877 100644
+--- a/src/user-classify.c
++++ b/src/user-classify.c
+@@ -52,7 +52,40 @@ static const char *default_excludes[] = {
+ "at",
+ "gdm",
+ "gnome-initial-setup",
+- "git"
++ "git",
++ /* Additional Gentoo system users with non-trivial login shell */
++ "amanda",
++ "backuppc",
++ "drqueue",
++ "firebird",
++ "flexlm",
++ "foldingathome",
++ "geneweb",
++ "gnump3d",
++ "hacluster",
++ "hg",
++ "hsqldb",
++ "infinote",
++ "jffnms",
++ "klive",
++ "mailman",
++ "mpd",
++ "mythtv",
++ "nagios",
++ "nx",
++ "oneadmin",
++ "openvpn",
++ "p2p",
++ "phxd",
++ "resin",
++ "rplayd",
++ "scponly",
++ "secoff",
++ "tinyproxy",
++ "ttrssd",
++ "vboxguest",
++ "vdr",
++ "vdradmin",
+ };
+
+ static gboolean
+--
+2.34.1
+
diff --git a/sys-apps/accountsservice/files/accountsservice-23.13.9-generate-version.patch b/sys-apps/accountsservice/files/accountsservice-23.13.9-generate-version.patch
new file mode 100644
index 000000000000..162b914b1828
--- /dev/null
+++ b/sys-apps/accountsservice/files/accountsservice-23.13.9-generate-version.patch
@@ -0,0 +1,30 @@
+https://bugs.gentoo.org/905770
+https://gitlab.freedesktop.org/accountsservice/accountsservice/-/merge_requests/136
+https://gitlab.freedesktop.org/accountsservice/accountsservice/-/commit/c9c16b3c47e13e90bb2213141f6f309e2d474396
+
+From c9c16b3c47e13e90bb2213141f6f309e2d474396 Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Fri, 5 May 2023 07:43:48 -0700
+Subject: [PATCH] generate-version.sh: fix script inside of a tarball
+
+---
+ generate-version.sh | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/generate-version.sh b/generate-version.sh
+index 3f88bff..8375c86 100755
+--- a/generate-version.sh
++++ b/generate-version.sh
+@@ -4,11 +4,10 @@ exec 3>&2 2> /dev/null
+ SRCDIR=$(dirname "$0")
+ cd "$SRCDIR"
+ CWD=$(realpath "$PWD")
+-TOPLEVEL_WORKING_DIR=$(realpath "$(git rev-parse --show-toplevel)")
+ exec 2>&3
+
+ # If it's not from a git checkout, assume it's from a tarball
+-if [ "$TOPLEVEL_WORKING_DIR" != "$CWD" ]; then
++if ! git rev-parse --is-inside-git-dir > /dev/null 2>&1; then
+ VERSION_FROM_DIR_NAME=$(basename "$CWD" | sed -n 's/^accountsservice-\([^-]*\)$/\1/p')
+
+ if [ -n "$VERSION_FROM_DIR_NAME" ]; then
diff --git a/sys-apps/accountsservice/files/accountsservice-23.13.9-musl-fixes.patch b/sys-apps/accountsservice/files/accountsservice-23.13.9-musl-fixes.patch
new file mode 100644
index 000000000000..abb59a137bfd
--- /dev/null
+++ b/sys-apps/accountsservice/files/accountsservice-23.13.9-musl-fixes.patch
@@ -0,0 +1,52 @@
+From 962a66aa12932c7899cda78c4cbda0f581947285 Mon Sep 17 00:00:00 2001
+From: germ <germtoo@outlook.com>
+Date: Mon, 30 Oct 2023 06:16:16 -0400
+Subject: [PATCH 1/1] This applies two apatches to sys-apps/accountsserice
+ https://gitlab.alpinelinux.org/alpine/aports/-/raw/75528d8dc4206a74501799f6a6042be20b80801d/community/accountsservice/musl-fgetspent_r.patch
+ https://gitlab.alpinelinux.org/alpine/aports/-/raw/75528d8dc4206a74501799f6a6042be20b80801d/community/accountsservice/musl-wtmp.patch
+
+--- a/meson.build
++++ b/meson.build
+@@ -103,8 +103,7 @@ elif cc.has_header_symbol('paths.h', '_PATH_WTMPX')
+
+ config_h.set('PATH_WTMP', '_PATH_WTMPX')
+ else
+- path_wtmp = '/var/log/utx.log'
+- assert(run_command('test', '-e', path_wtmp, check: false).returncode() == 0, 'Do not know which filename to watch for wtmp changes')
++ path_wtmp = '/var/log/wtmp'
+ config_h.set_quoted('PATH_WTMP', path_wtmp)
+ endif
+
+--- a/src/daemon.c
++++ b/src/daemon.c
+@@ -215,6 +215,27 @@ remove_cache_files (const gchar *user_name)
+ g_remove (icon_filename);
+ }
+
++#ifndef __GLIBC__
++/* Musl libc does not support fgetspent_r(), write own
++* wrapper
++*/
++static int fgetspent_r(FILE *fp, struct spwd *spbuf, char *buf, size_t buflen, struct spwd **spbufp) {
++ struct spwd *shadow_entry = fgetspent(fp);
++ if(!shadow_entry)
++ return -1;
++ size_t namplen = strlen(shadow_entry->sp_namp);
++ size_t pwdplen = strlen(shadow_entry->sp_pwdp);
++
++ if(namplen + pwdplen + 2 > buflen)
++ return -1;
++ *spbufp = memcpy(spbuf, shadow_entry, sizeof(struct spwd));
++ spbuf->sp_namp = strncpy(buf, shadow_entry->sp_namp, namplen + 1);
++ spbuf->sp_pwdp = strncpy(buf + namplen + 1, shadow_entry->sp_pwdp, pwdplen + 1);
++
++ return 0;
++}
++#endif
++
+ static struct passwd *
+ entry_generator_fgetpwent (Daemon *daemon,
+ GHashTable *users,
+--
+2.42.0
+
diff --git a/sys-apps/accountsservice/metadata.xml b/sys-apps/accountsservice/metadata.xml
index e52d976d85ab..a5e0c3471d4e 100644
--- a/sys-apps/accountsservice/metadata.xml
+++ b/sys-apps/accountsservice/metadata.xml
@@ -1,12 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
- <use>
- <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking</flag>
- <flag name="systemd">Use <pkg>sys-apps/systemd</pkg> for session tracking</flag>
- </use>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <use>
+ <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking</flag>
+ <flag name="systemd">Use <pkg>sys-apps/systemd</pkg> for session tracking</flag>
+ </use>
+ <upstream>
+ <remote-id type="freedesktop-gitlab">accountsservice/accountsservice</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/ack/Manifest b/sys-apps/ack/Manifest
index 2f82db886a1f..8eeb3aa3dae5 100644
--- a/sys-apps/ack/Manifest
+++ b/sys-apps/ack/Manifest
@@ -1,4 +1 @@
-DIST ack-v3.0.0.tar.gz 238646 BLAKE2B 679cf84c7dffd6f1ec3881de465cbdbebf9ec8958a6e36c5265d11492d84990a67b34af0e42041280b9a9ab6c57d951a2c73ba5b6fe07c9ac8774bac445c10fd SHA512 2bf4e9719d8a5ec56c9d31acbcff647aece7b52ff7ffaacbfec56e59e30efb9ca7397fa379e13a9113a27abe47053261b9adb641b995d3e8579d459c0483fb45
-DIST ack-v3.2.0.tar.gz 246140 BLAKE2B ac729ba6b1c7f0b720ddd076498452660f7f50ba7f866f908717d19c2ef985858d63dad96a2acd5c93d0a991a1870bec895da3dc64b974bc11c5f74b9245332a SHA512 3604a8ad6a79c63fdd65721fc790db09f345f66b81e5272fa073cb53b7964b576ba3638e1f358d8e0c28c38acd0d9a0362f2666ece9abe374cf6355b752a0f69
-DIST ack-v3.3.1.tar.gz 250024 BLAKE2B 3cf4882929afb05ea592a7e964a06745bef58303d5bc1c66e65ca3eb7d21fccc7fe285b142fe9518cfd9eb5c37bc32dfbec113df775b84de4f55b12864a4ba9e SHA512 7f0a5cc55b331f69877d186699e2fab64a196b0ea0fd148699b7be5f9a7bb2850ecf9e45dc026325af8407a37f719faf3f3e314c43e48d575b3685087461addd
-DIST ack-v3.4.0.tar.gz 251106 BLAKE2B 192d1e851ef5bd3547e21fe49cf276180eb278af783209046c02e4a1ae1471c7b24aaf6825223aad96dedea9fd266576a2021dcb808b0e229312e8237e2f7afd SHA512 cc8de5a784f63a8f48b9548e930972578866d0fcc520febc6002d1ce4f9b55aabb0c8e87860586a668d94b5091c66194c05a07c584fe30fad2c5d786aee95db5
+DIST ack-v3.7.0.tar.gz 252426 BLAKE2B 0f13e2bfea838a4748b757dc396e56944f9c8f3bfb29569d4f5ddccd2d669906e782b0cb75da0076ec4de8f8fce27de6ab36ed23352e22b32d46273d60b23a1a SHA512 3d97309956ce65f972a7636d195b13031f4441981d5bdddf0b67e577c32c88972f7ed02ffafbbf73c4db9a22f200f95cce9c8eb2a6f47fd60143d93469038f57
diff --git a/sys-apps/ack/ack-3.0.0.ebuild b/sys-apps/ack/ack-3.0.0.ebuild
deleted file mode 100644
index c3870edf5b2f..000000000000
--- a/sys-apps/ack/ack-3.0.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-DIST_AUTHOR=PETDANCE
-DIST_VERSION="v${PV}"
-inherit perl-module
-
-DESCRIPTION="ack is a tool like grep, optimized for programmers"
-HOMEPAGE="https://beyondgrep.com"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=dev-perl/File-Next-1.160.0"
-DEPEND="${RDEPEND}
- test? ( dev-perl/IO-Tty )"
-
-PATCHES=( "${FILESDIR}"/${PN}-3.0.0-gentoo.patch )
-
-src_test() {
- # Tests fail when run in parallel and if dev-perl/IO-Tty is installed
- # which enables interactive tests that need to read from stdin. If IO-Tty
- # is not installed the related tests are skipped.
- MAKEOPTS+=" -j1" perl-module_src_test
-}
diff --git a/sys-apps/ack/ack-3.2.0.ebuild b/sys-apps/ack/ack-3.2.0.ebuild
deleted file mode 100644
index 43cde812a941..000000000000
--- a/sys-apps/ack/ack-3.2.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-DIST_AUTHOR=PETDANCE
-DIST_VERSION="v${PV}"
-inherit perl-module
-
-DESCRIPTION="ack is a tool like grep, optimized for programmers"
-HOMEPAGE="https://beyondgrep.com"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=dev-perl/File-Next-1.180.0"
-DEPEND="${RDEPEND}
- test? ( dev-perl/IO-Tty )"
-
-PATCHES=( "${FILESDIR}"/${PN}-3.0.0-gentoo.patch )
-
-src_test() {
- # Tests fail when run in parallel and if dev-perl/IO-Tty is installed
- # which enables interactive tests that need to read from stdin. If IO-Tty
- # is not installed the related tests are skipped.
- MAKEOPTS+=" -j1" perl-module_src_test
-}
diff --git a/sys-apps/ack/ack-3.3.1.ebuild b/sys-apps/ack/ack-3.3.1.ebuild
deleted file mode 100644
index 0df2c490211b..000000000000
--- a/sys-apps/ack/ack-3.3.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-DIST_AUTHOR=PETDANCE
-DIST_VERSION="v${PV}"
-inherit perl-module
-
-DESCRIPTION="ack is a tool like grep, optimized for programmers"
-HOMEPAGE="https://beyondgrep.com"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=dev-perl/File-Next-1.180.0"
-DEPEND="${RDEPEND}
- test? ( dev-perl/IO-Tty )"
-
-PATCHES=( "${FILESDIR}"/${PN}-3.3.0-gentoo.patch )
-
-src_test() {
- # Tests fail when run in parallel and if dev-perl/IO-Tty is installed
- # which enables interactive tests that need to read from stdin. If IO-Tty
- # is not installed the related tests are skipped.
- MAKEOPTS+=" -j1" perl-module_src_test
-}
diff --git a/sys-apps/ack/ack-3.4.0.ebuild b/sys-apps/ack/ack-3.4.0.ebuild
deleted file mode 100644
index 0df2c490211b..000000000000
--- a/sys-apps/ack/ack-3.4.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-DIST_AUTHOR=PETDANCE
-DIST_VERSION="v${PV}"
-inherit perl-module
-
-DESCRIPTION="ack is a tool like grep, optimized for programmers"
-HOMEPAGE="https://beyondgrep.com"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=dev-perl/File-Next-1.180.0"
-DEPEND="${RDEPEND}
- test? ( dev-perl/IO-Tty )"
-
-PATCHES=( "${FILESDIR}"/${PN}-3.3.0-gentoo.patch )
-
-src_test() {
- # Tests fail when run in parallel and if dev-perl/IO-Tty is installed
- # which enables interactive tests that need to read from stdin. If IO-Tty
- # is not installed the related tests are skipped.
- MAKEOPTS+=" -j1" perl-module_src_test
-}
diff --git a/sys-apps/ack/ack-3.7.0.ebuild b/sys-apps/ack/ack-3.7.0.ebuild
new file mode 100644
index 000000000000..8f36190f2ce2
--- /dev/null
+++ b/sys-apps/ack/ack-3.7.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+DIST_AUTHOR=PETDANCE
+DIST_VERSION="v${PV}"
+inherit perl-module
+
+DESCRIPTION="ack is a tool like grep, optimized for programmers"
+HOMEPAGE="https://beyondgrep.com"
+
+LICENSE="Artistic-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~riscv x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-perl/File-Next-1.180.0"
+DEPEND="${RDEPEND}
+ test? ( dev-perl/IO-Tty )"
+
+PATCHES=( "${FILESDIR}"/${PN}-3.3.0-gentoo.patch )
+
+src_test() {
+ # Tests fail when run in parallel and if dev-perl/IO-Tty is installed
+ # which enables interactive tests that need to read from stdin. If IO-Tty
+ # is not installed the related tests are skipped.
+ MAKEOPTS+=" -j1" perl-module_src_test
+}
diff --git a/sys-apps/ack/files/ack-3.0.0-gentoo.patch b/sys-apps/ack/files/ack-3.0.0-gentoo.patch
deleted file mode 100644
index 09972519ed89..000000000000
--- a/sys-apps/ack/files/ack-3.0.0-gentoo.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/lib/App/Ack/ConfigDefault.pm
-+++ b/lib/App/Ack/ConfigDefault.pm
-@@ -263,6 +263,10 @@
- # http://en.wikipedia.org/wiki/Fortran
- --type-add=fortran:ext:f,f77,f90,f95,f03,for,ftn,fpp
-
-+# Gentoo
-+# https://www.gentoo.org/
-+--type-add=gentoo:ext:ebuild,eclass
-+
- # Go
- # http://golang.org/
- --type-add=go:ext:go
---- a/t/ack-filetypes.t
-+++ b/t/ack-filetypes.t
-@@ -26,6 +26,7 @@
- elisp
- erlang
- fortran
-+gentoo
- go
- groovy
- gsp
diff --git a/sys-apps/ack/metadata.xml b/sys-apps/ack/metadata.xml
index 0cfba749742e..3142fda67d50 100644
--- a/sys-apps/ack/metadata.xml
+++ b/sys-apps/ack/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>grknight@gentoo.org</email>
- <name>Brian Evans</name>
- </maintainer>
<maintainer type="project">
<email>perl@gentoo.org</email>
<name>Gentoo Perl Project</name>
@@ -31,5 +27,6 @@
<remote-id type="cpan-module">App::Ack::Filter::MatchGroup</remote-id>
<remote-id type="cpan-module">App::Ack::Resource</remote-id>
<remote-id type="cpan-module">App::Ack::Resources</remote-id>
+ <remote-id type="github">beyondgrep/ack3</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/acl/Manifest b/sys-apps/acl/Manifest
index 256b7131d573..c2761e2fcde5 100644
--- a/sys-apps/acl/Manifest
+++ b/sys-apps/acl/Manifest
@@ -1 +1,2 @@
-DIST acl-2.2.53.tar.gz 524300 BLAKE2B a4c602b18ab1a7932dce38c8dacf3a3026a3100a8a7e61f0740886ec7154a7738ca641953dc1253b5574580815d7f547a99bdd0cc0ee87238a1995abe97eb9d8 SHA512 176b7957fe0e7618e0b7bf2ac5071f7fa29417df718cce977661a576fa184e4af9d303b591c9d556b6ba8923e799457343afa401f5a9f7ecd9022185a4e06716
+DIST acl-2.3.1.tar.xz 355676 BLAKE2B 15e81e8159ddb21ef0c262bef3101c0b6fa546738a2ab74c01ccc21fd1c3dc8ab6aaf84a06dee6da22291f3ca4feeffa60c7d11bfac1ab770a6ec28e1f1655e0 SHA512 7d02f05d17305f8587ab485395b00c7fdb8e44c1906d0d04b70a43a3020803e8b2b8c707abb6147f794867dfa87bd51769c2d3e11a3db55ecbd2006a6e6231dc
+DIST acl-2.3.2.tar.xz 371680 BLAKE2B 9f2abfddcd403df2c716c05f02a1b52453613d10948dc58a65b9ef41b44e37db6de99fb22dcfc4f6f0fb5d0319c939da61bd4e0fba2cdb5643e8087ecd34eeac SHA512 c2d061dbfd28c00cecbc1ae614d67f3138202bf4d39b383f2df4c6a8b10b830f33acec620fb211f268478737dde4037d338a5823af445253cb088c48a135099b
diff --git a/sys-apps/acl/acl-2.2.53-r1.ebuild b/sys-apps/acl/acl-2.2.53-r1.ebuild
deleted file mode 100644
index 4965f72787ce..000000000000
--- a/sys-apps/acl/acl-2.2.53-r1.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic libtool toolchain-funcs multilib-minimal usr-ldscript
-
-DESCRIPTION="access control list utilities, libraries and headers"
-HOMEPAGE="https://savannah.nongnu.org/projects/acl"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="nls static-libs"
-
-RDEPEND="
- >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="nls? ( sys-devel/gettext )"
-
-pkg_setup() {
- # filter out -flto flags as they break getfacl/setfacl binaries
- # (bug #667372)
- filter-flags -flto*
-}
-
-src_prepare() {
- default
- elibtoolize #580792
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- $(use_enable static-libs static)
- --libexecdir="${EPREFIX}"/usr/$(get_libdir)
- $(use_enable nls)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install() {
- default
-
- # move shared libs to /
- gen_usr_ldscript -a acl
-}
-
-multilib_src_install_all() {
- if ! use static-libs ; then
- find "${ED}" -type f -name "*.la" -delete || die
- fi
-}
diff --git a/sys-apps/acl/acl-2.2.53.ebuild b/sys-apps/acl/acl-2.2.53.ebuild
deleted file mode 100644
index bb450925ad94..000000000000
--- a/sys-apps/acl/acl-2.2.53.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic libtool toolchain-funcs multilib-minimal usr-ldscript
-
-DESCRIPTION="access control list utilities, libraries and headers"
-HOMEPAGE="https://savannah.nongnu.org/projects/acl"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="nls static-libs"
-
-RDEPEND="
- >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}]
-"
-DEPEND="${RDEPEND}
- nls? ( sys-devel/gettext )"
-
-pkg_setup() {
- # filter out -flto flags as they break getfacl/setfacl binaries
- # (bug #667372)
- filter-flags -flto*
-}
-
-src_prepare() {
- default
- elibtoolize #580792
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- $(use_enable static-libs static)
- --libexecdir="${EPREFIX}"/usr/$(get_libdir)
- $(use_enable nls)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install() {
- default
-
- # move shared libs to /
- gen_usr_ldscript -a acl
-}
-
-multilib_src_install_all() {
- if ! use static-libs ; then
- find "${ED}" -type f -name "*.la" -delete || die
- fi
-}
diff --git a/sys-apps/acl/acl-2.3.1-r2.ebuild b/sys-apps/acl/acl-2.3.1-r2.ebuild
new file mode 100644
index 000000000000..d89fd34d6a13
--- /dev/null
+++ b/sys-apps/acl/acl-2.3.1-r2.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic libtool multilib-minimal toolchain-funcs usr-ldscript
+
+DESCRIPTION="Access control list utilities, libraries, and headers"
+HOMEPAGE="https://savannah.nongnu.org/projects/acl"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="nls static-libs"
+
+RDEPEND="
+ >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.3.1-musl-1.2.4-lfs64-fix.patch"
+)
+
+src_prepare() {
+ default
+
+ # bug #580792
+ elibtoolize
+}
+
+multilib_src_configure() {
+ # Filter out -flto flags as they break getfacl/setfacl binaries
+ # bug #667372
+ filter-lto
+
+ # Broken with FORTIFY_SOURCE=3
+ # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
+ # to unset F_S first, then explicitly set 2, to negate any default
+ # and anything set by the user if they're choosing 3 (or if they've
+ # modified GCC to set 3).
+ #
+ # Refs:
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104964
+ # https://savannah.nongnu.org/bugs/index.php?62519
+ # bug #847280
+ if tc-enables-fortify-source ; then
+ filter-flags -D_FORTIFY_SOURCE=3
+ append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
+ fi
+
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ $(use_enable static-libs static)
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
+ $(use_enable nls)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_test() {
+ # Tests call native binaries with an LD_PRELOAD wrapper
+ # bug #772356
+ multilib_is_native_abi && default
+}
+
+multilib_src_install() {
+ default
+
+ # Move shared libs to /
+ gen_usr_ldscript -a acl
+}
+
+multilib_src_install_all() {
+ if ! use static-libs ; then
+ find "${ED}" -type f -name "*.la" -delete || die
+ fi
+}
diff --git a/sys-apps/acl/acl-2.3.2-r1.ebuild b/sys-apps/acl/acl-2.3.2-r1.ebuild
new file mode 100644
index 000000000000..d265f5bd1bbe
--- /dev/null
+++ b/sys-apps/acl/acl-2.3.2-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic libtool multilib-minimal
+
+DESCRIPTION="Access control list utilities, libraries, and headers"
+HOMEPAGE="https://savannah.nongnu.org/projects/acl"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+ GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="nls static-libs"
+
+RDEPEND="
+ >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ default
+
+ # bug #580792
+ elibtoolize
+}
+
+multilib_src_configure() {
+ # Filter out -flto flags as they break getfacl/setfacl binaries (bug #667372)
+ filter-lto
+
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
+ --enable-largefile
+ $(use_enable static-libs static)
+ $(use_enable nls)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_test() {
+ # Tests call native binaries with an LD_PRELOAD wrapper
+ # bug #772356
+ multilib_is_native_abi && default
+}
+
+multilib_src_install_all() {
+ if ! use static-libs ; then
+ find "${ED}" -type f -name "*.la" -delete || die
+ fi
+}
diff --git a/sys-apps/acl/files/acl-2.3.1-musl-1.2.4-lfs64-fix.patch b/sys-apps/acl/files/acl-2.3.1-musl-1.2.4-lfs64-fix.patch
new file mode 100644
index 000000000000..3b5d2c6babdc
--- /dev/null
+++ b/sys-apps/acl/files/acl-2.3.1-musl-1.2.4-lfs64-fix.patch
@@ -0,0 +1,37 @@
+Bug: https://bugs.gentoo.org/905910
+Upstream Bug: https://savannah.nongnu.org/bugs/index.php?64162
+
+From a9100afd77fea00b311f114a5a04108283aa681a Mon Sep 17 00:00:00 2001
+From: Violet Purcell <vimproved@inventati.org>
+Date: Mon, 8 May 2023 04:17:07 +0000
+Subject: [PATCH] musl 1.2.4 LFS64 removal fixes
+
+---
+ tools/chacl.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tools/chacl.c b/tools/chacl.c
+index 525a7ff..8fff875 100644
+--- a/tools/chacl.c
++++ b/tools/chacl.c
+@@ -320,7 +320,7 @@ walk_dir(acl_t acl, acl_t dacl, const char *fname)
+ {
+ int failed = 0;
+ DIR *dir;
+- struct dirent64 *d;
++ struct dirent *d;
+ char *name;
+
+ if ((dir = opendir(fname)) == NULL) {
+@@ -332,7 +332,7 @@ walk_dir(acl_t acl, acl_t dacl, const char *fname)
+ return(0); /* got a file, not an error */
+ }
+
+- while ((d = readdir64(dir)) != NULL) {
++ while ((d = readdir(dir)) != NULL) {
+ /* skip "." and ".." entries */
+ if (strcmp(d->d_name, ".") == 0 || strcmp(d->d_name, "..") == 0)
+ continue;
+--
+2.40.1
+
diff --git a/sys-apps/acl/metadata.xml b/sys-apps/acl/metadata.xml
index ede75b33fdb6..80877575baf3 100644
--- a/sys-apps/acl/metadata.xml
+++ b/sys-apps/acl/metadata.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:xfs:acl</remote-id>
+ <remote-id type="savannah-nongnu">acl</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/agedu/Manifest b/sys-apps/agedu/Manifest
index 9ffba693b68a..496a891cb4aa 100644
--- a/sys-apps/agedu/Manifest
+++ b/sys-apps/agedu/Manifest
@@ -1,2 +1 @@
-DIST agedu-20200617.cec3021.tar.gz 181804 BLAKE2B 19acc1ac37d09f45227e08b92483c1a0be7d9faaf4b2bf65479ca99a0294305788e88d6494508ac742a4396c4a22352d927c125ed7437fe29cb71890dbb2217b SHA512 d7a913a867817a0457c8ec3644a6986ed3632721df1040de1db96c04e85f9e59c4aba632dc1f3f3666496435b6be3f68335a2ec3e50440c844ebd4ab81b2682a
-DIST agedu-20200705.2a7d4a2.tar.gz 181809 BLAKE2B 2802b223979b2f15efd14b6f1f445b9ca00312068ade3c26a057d54a65d5074fdcdee043c9673a59e4e6cc222deba7c817ee078a0a742f09ec1087ec921414bd SHA512 a65f90990706493fc2a080dc313706107ab603f461dcd63531f9afbc1efe785747947f2222559ab2b0b354453a7d9242025c7b96df7f4cac608b8422855c55d6
+DIST agedu-20211129.tar.gz 92346 BLAKE2B 8e865ba5dbccd22aff82da715b7fd606c915e7fd98f34a6b01dec7be5f98d3a8995667417137eb67540ff561b5e932ee7a95e0346325cea2a8e14055b75fb2a8 SHA512 6291b80db953b8b6ef61aa557636fe11c556acc67b3005a32b8a335afe7aff1a4c7935aa766a19d28c549857ac02bf2707febd850bcc60befca79609ffc5b9f3
diff --git a/sys-apps/agedu/agedu-20200617.ebuild b/sys-apps/agedu/agedu-20200617.ebuild
deleted file mode 100644
index f33c3651492e..000000000000
--- a/sys-apps/agedu/agedu-20200617.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools eutils
-
-# agedu-20151213.59b0ed3.ebuild is not a legitimate name
-# so we'll drop versionator and just set MY_P manually.
-MY_P="${PN}"-20200617.cec3021
-
-DESCRIPTION="A utility for tracking down wasted disk space"
-HOMEPAGE="https://www.chiark.greenend.org.uk/~sgtatham/agedu/"
-SRC_URI="https://www.chiark.greenend.org.uk/~sgtatham/agedu/${MY_P}.tar.gz -> ${MY_P}.tar.gz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc ipv6"
-
-DEPEND="doc? ( app-doc/halibut )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-r9671-fix-automagic.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf --enable-ipv4 \
- $(use_enable doc halibut) \
- $(use_enable ipv6)
-}
diff --git a/sys-apps/agedu/agedu-20200705.ebuild b/sys-apps/agedu/agedu-20200705.ebuild
deleted file mode 100644
index a49e4fc983bc..000000000000
--- a/sys-apps/agedu/agedu-20200705.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools eutils
-
-# agedu-20151213.59b0ed3.ebuild is not a legitimate name
-# so we'll drop versionator and just set MY_P manually.
-MY_P="${PN}"-20200705.2a7d4a2
-
-DESCRIPTION="A utility for tracking down wasted disk space"
-HOMEPAGE="https://www.chiark.greenend.org.uk/~sgtatham/agedu/"
-SRC_URI="https://www.chiark.greenend.org.uk/~sgtatham/agedu/${MY_P}.tar.gz -> ${MY_P}.tar.gz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc ipv6"
-
-DEPEND="doc? ( app-doc/halibut )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-r9671-fix-automagic.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf --enable-ipv4 \
- $(use_enable doc halibut) \
- $(use_enable ipv6)
-}
diff --git a/sys-apps/agedu/agedu-20211129.ebuild b/sys-apps/agedu/agedu-20211129.ebuild
new file mode 100644
index 000000000000..7db75cd7152e
--- /dev/null
+++ b/sys-apps/agedu/agedu-20211129.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+# agedu-20151213.59b0ed3.ebuild is not a legitimate name
+# so we'll drop versionator and just set MY_P manually.
+MY_P="${PN}"-$(ver_cut 1).8cd63c5
+
+DESCRIPTION="A utility for tracking down wasted disk space"
+HOMEPAGE="https://www.chiark.greenend.org.uk/~sgtatham/agedu/"
+SRC_URI="https://www.chiark.greenend.org.uk/~sgtatham/agedu/${MY_P}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+BDEPEND="doc? ( app-text/halibut )"
+
+# Notes:
+# - IPv4 / IPv6 are still optional but enabled by default; they don't
+# use the normal option() but it's (from CMakeLists.txt):
+# set(AGEDU_IPV6 ON
+# CACHE BOOL "Build agedu with IPv6 support if possible")
+# set(AGEDU_IPV4 ON
+# CACHE BOOL "Build agedu with IPv4 support if possible")
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-20211129-fix-automagic-halibut-docs.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_DOCS=$(usex doc)
+ )
+
+ cmake_src_configure
+}
diff --git a/sys-apps/agedu/files/agedu-20211129-fix-automagic-halibut-docs.patch b/sys-apps/agedu/files/agedu-20211129-fix-automagic-halibut-docs.patch
new file mode 100644
index 000000000000..8d77268509e5
--- /dev/null
+++ b/sys-apps/agedu/files/agedu-20211129-fix-automagic-halibut-docs.patch
@@ -0,0 +1,48 @@
+From d4dd77f5ca2e0b3b53aaef59c7bb692517fc2848 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Mon, 14 Mar 2022 13:39:01 +0000
+Subject: [PATCH] Fix automagic halibut/docs
+
+---
+ CMakeLists.txt | 25 ++++++++++++++-----------
+ 1 file changed, 14 insertions(+), 11 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cdad437..11a05e7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -62,17 +62,20 @@ if(NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
+ configure_file(cmake.h.in ${GENERATED_SOURCES_DIR}/cmake.h)
+
+ # If Halibut is available, build the docs too.
+- find_program(HALIBUT halibut)
+- if(HALIBUT)
+- set(BUILD_MANPAGE ON)
+- add_custom_command(OUTPUT agedu.1
+- COMMAND ${HALIBUT} --man=agedu.1
+- ${CMAKE_CURRENT_SOURCE_DIR}/agedu.but
+- DEPENDS
+- ${CMAKE_CURRENT_SOURCE_DIR}/agedu.but)
+- add_custom_target(doc ALL DEPENDS agedu.1)
+- else()
+- set(BUILD_MANPAGE OFF)
++ option(BUILD_DOCS "Build man pages using halibut" ON)
++ if(BUILD_DOCS)
++ find_program(HALIBUT halibut REQUIRED)
++ if(HALIBUT)
++ set(BUILD_MANPAGE ON)
++ add_custom_command(OUTPUT agedu.1
++ COMMAND ${HALIBUT} --man=agedu.1
++ ${CMAKE_CURRENT_SOURCE_DIR}/agedu.but
++ DEPENDS
++ ${CMAKE_CURRENT_SOURCE_DIR}/agedu.but)
++ add_custom_target(doc ALL DEPENDS agedu.1)
++ else()
++ set(BUILD_MANPAGE OFF)
++ endif()
+ endif()
+
+ # Installation
+--
+2.35.1
+
diff --git a/sys-apps/agedu/files/agedu-r9671-fix-automagic.patch b/sys-apps/agedu/files/agedu-r9671-fix-automagic.patch
deleted file mode 100644
index 0ea79d1a170a..000000000000
--- a/sys-apps/agedu/files/agedu-r9671-fix-automagic.patch
+++ /dev/null
@@ -1,43 +0,0 @@
---- a/configure.ac
-+++ b/configure.ac
-@@ -10,8 +10,6 @@
- AC_PROG_CC
- AC_PROG_CC_C99
- AC_PROG_INSTALL
--AC_CHECK_PROG([HALIBUT],[halibut],[yes],[no])
--AM_CONDITIONAL([HAVE_HALIBUT],[test "x$HALIBUT" = "xyes"])
-
- # Checks for libraries.
-
-@@ -43,13 +41,28 @@
-
- AC_CHECK_FUNCS([ftruncate fdopendir lstat64 stat64 memchr munmap select socket strcasecmp strchr strcspn strerror strrchr strspn strtoul strtoull connect inet_ntoa inet_addr gethostbyname getaddrinfo])
-
-+AC_ARG_ENABLE([halibut],
-+ AS_HELP_STRING([--disable-halibut],
-+ [disable documentation with halibut (default off)]),
-+ [halibut=$enableval],[halibut=no])
-+
-+if test "$halibut" = "no"; then
-+ AM_CONDITIONAL([HAVE_HALIBUT],[false])
-+else
-+ AC_CHECK_PROG([have_halibut],[halibut],[yes],[no])
-+ if test "$have_halibut" = "no"; then
-+ AC_MSG_ERROR([halibut configured but not found])
-+ fi
-+ AM_CONDITIONAL([HAVE_HALIBUT],[true])
-+fi
-+
- AC_ARG_ENABLE([ipv6],
- AS_HELP_STRING([--disable-ipv6],
-- [disable IPv6 in the built-in web server]),
-- [ipv6=$enableval],[ipv6=$ac_cv_func_getaddrinfo])
-+ [disable IPv6 in the built-in web server (default off)]),
-+ [ipv6=$enableval],[ipv6=no])
- AC_ARG_ENABLE([ipv4],
- AS_HELP_STRING([--disable-ipv4],
-- [disable IPv4 in the built-in web server]),
-+ [disable IPv4 in the built-in web server (default on)]),
- [ipv4=$enableval],[ipv4=yes])
- if test "$ipv6" = "no"; then
- AC_DEFINE([NO_IPV6], [1], [define if IPv6 is disabled at configure time])
diff --git a/sys-apps/agedu/metadata.xml b/sys-apps/agedu/metadata.xml
index d920e3ba3e56..115e9d64a669 100644
--- a/sys-apps/agedu/metadata.xml
+++ b/sys-apps/agedu/metadata.xml
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>blueness@gentoo.org</email>
- <name>Anthony G. Basile</name>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/aix-miscutils/Manifest b/sys-apps/aix-miscutils/Manifest
deleted file mode 100644
index ea28a5aeaa31..000000000000
--- a/sys-apps/aix-miscutils/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aix-miscutils-0.1.1671.tar.bz2 84825 BLAKE2B 9949f964b9e4127cce02b87c5d913efee12cd401aae6f798ee81e091ed8cb8e2665ec6bdb9f2abb2f92ad9738a3a9eb1380bf1775c9673ac0caa7132e7afaf36 SHA512 36808b2618471a7daa4599f1df3af509351465a9339ca23e11ad5da3fa4a617e9a17746cb72c4ae96c39d505ebb595a5a7293fe8cc876976e96cdcc5749fa914
diff --git a/sys-apps/aix-miscutils/aix-miscutils-0.1.1671.ebuild b/sys-apps/aix-miscutils/aix-miscutils-0.1.1671.ebuild
deleted file mode 100644
index f41232735e06..000000000000
--- a/sys-apps/aix-miscutils/aix-miscutils-0.1.1671.ebuild
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Miscellaneous helpers for AIX (currently just ldd)"
-HOMEPAGE="https://prefix.gentoo.org"
-SRC_URI="https://dev.gentoo.org/~haubi/distfiles/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~ppc-aix"
-IUSE=""
diff --git a/sys-apps/aix-miscutils/metadata.xml b/sys-apps/aix-miscutils/metadata.xml
deleted file mode 100644
index 22206137f6f8..000000000000
--- a/sys-apps/aix-miscutils/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="person">
- <email>haubi@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>prefix@gentoo.org</email>
- <name>Gentoo Prefix</name>
-</maintainer>
-</pkgmetadata>
diff --git a/sys-apps/amdgpu_top/Manifest b/sys-apps/amdgpu_top/Manifest
new file mode 100644
index 000000000000..141630987d17
--- /dev/null
+++ b/sys-apps/amdgpu_top/Manifest
@@ -0,0 +1,354 @@
+DIST ab_glyph-0.2.23.crate 18537 BLAKE2B b11121197c7c2bfbc8096e82fb7321d2e3a56491c8d644d0b83d99663c642ef5813d1952994613c5c2fc98df76f67f0103487cc50c304e59307cc6c5a389a6b5 SHA512 169aaea8daf54cae7b3123b088f95217dda53f5e11b42a962d4607f546b8ecbdbab769d292cd2f50206f58d015785361479b4dfc42915b28bc5bdfff4340c151
+DIST ab_glyph_rasterizer-0.1.8.crate 11010 BLAKE2B 2a20fd3ff646559d704e214ae7c4e5b8297e20be0909c403c140edb67002665447a6a796e5ca5d71f5c8c55000489a14a101ec43dd90101be9c246d1a0138dc4 SHA512 6fd5ff2d068da84c4ac2e6e2c5ad6ab2f4926f1664afb8ba701b60a35c3bd7bf00b200b22c455ca15dfc7d4303c8caa0bb150c18dcce01ce107deaf323cde17f
+DIST accesskit-0.12.2.crate 27196 BLAKE2B 1b1526ecae790ef8d211c76747cbd79589cf0e726976448cbdb9e72736f717c472064146f3da8dc19f64b2e6140557f1a8da6c04e4d55d5b9410cbe754987f44 SHA512 539c341278cf25cbd3f9c7549a75bb2c63f8b13e11dead42ce62b23879c72d5e5028a8a76515098133e57e70a98e3aa54fab1a18f2cf0eda4832e1b5feb503a0
+DIST adler-1.0.2.crate 12778 BLAKE2B a1dc17786adae945ac09d3525e609ed944e6465690787bbb831a1b9d53793cba1989793d0a5606d5d23ee20d36457923d451b1b3530c9ec7072a487aa3e55bbd SHA512 7ab190d31890fc05b0b55d8e2c6527a505e06793d5496be0b3831e0513412f9ba97f8148f6f68ed0770fa9cd980a5092d885e058becf1d5506b7c74b82674aa1
+DIST ahash-0.8.7.crate 42894 BLAKE2B 56f4b2f577eb2752e675fa2b3191c65e0bb88575f92e8d906714296fca1daace46e93256672fce08cc5b4ac11d40a690a06b32a99fb50fd0df4f042773c33b6c SHA512 2c9eaa22f7bda47a781994c769d4a2ef15ba0f511fdd4ec4680c13d4c1809f1ce01adecc3b3776793158062d28ad9e5f0b1d1c0a9429e43dd07cd99540eae7a6
+DIST aho-corasick-1.1.2.crate 183136 BLAKE2B 2d4306d8968061b9f7e50190be6a92b3f668169ba1b9f9691de08a57c96185f7a4288d20c64cb8488a260eb18d3ed4b0e8358b0cca47aa44759b2e448049cbaa SHA512 61ef5092673ab5a60bec4e92df28a91fe6171ba59d5829ffe41fc55aff3bfb755533a4ad53dc7bf827a0b789fcce593b17e69d1fcfb3694f06ed3b1bd535d40c
+DIST amdgpu_top-0.7.0.gh.tar.gz 3114789 BLAKE2B 302e2ceb708a21f2e97690fd1ffabefbfd42fd1274e7b0641f75ad349384411fda43caa0e243ed6e987700ebc6408e0d28fb735e3c54408d450f679b29d34457 SHA512 4f0e759b5a5407c4dbf5fd04b1f33dcd3d159205868aca48efc95f0c9d309a80e3a615a65eddab80da92da909f2926bb33b813af1bd811442cb7d000d2ffbf3a
+DIST android-activity-0.5.2.crate 258406 BLAKE2B bebcddb062921b10915959704d1339c0d200843b887be4588010a359f8b46fba6dce94d4f87a37e006c01e66e6ec061f33f4aaaf32ff616fdd2f52d2d0287b2b SHA512 281f2c3afaaa80d71f5aa6b531aae8e551897bb10c70da40787ee03ff194129da0df79f2e14d5432c9eb4a92c6227a1f9e1a3bd12e7060bbcae85fef177c009f
+DIST android-properties-0.2.2.crate 4563 BLAKE2B 00634bbee4d6dcd3254ee37dd7e5560963b35700aa95c47c84c129f0774cbac436347f0abdaa4ec33216358d9f079559552bd5a95de5026b7dba4e04d9cd674b SHA512 dae9a12ffa7d5fbabc28d3ddcc32f1b5300884cf2b3ef2e123f2dea596b3a796b9c3cb6c5381bf8f6caf04a633c5f2f0b56804fed8fb2a6f06c36d6c76539431
+DIST anyhow-1.0.79.crate 44931 BLAKE2B 9270f04c6fbbecb535e3081f4275c3df28f6a893c1dfc0a9f7c009994de2deb8ebced04fe5e6f62931b33c3707f4fbfb0c3b28da1a611b413d40d27149d1fd2f SHA512 ecd6fb1367d494df18c0e274b336a133f3acf7b6a5487d20bdd06e08c7f1f729877086a0966e998221daff120504fadd2be2dc4219ed621f81b0a50c2bbc2011
+DIST arboard-3.3.0.crate 44858 BLAKE2B 8e1bd1692c1589d7f1ddf7ad43b01724f3a4c180d0d569eef126e2621573e167456e57bc137300686e3f6f9b0c8991b922082c98bfc522125173c28a613804c5 SHA512 0888e8c272ebe4277ed4e690b4761918151f635c1ef48ce5da67fe6618f14dd9282ea73a0eacccba2acd7ca4c8ea3c0a24b0d3e8e387111b8ab68eb48c02057c
+DIST arc-swap-1.6.0.crate 67342 BLAKE2B 6afd6570c3cef4ae722d4168c3320be1343c4f6043892e5e5b52879b8210a896e083d720797b41a41db04a08eefdcfbacbfdee1a7f2180e9755c868d6fded872 SHA512 5e09cef9fa12d1204db24f3397158a3f45d12dd0fa61eadd691bba120a43fdaa916ab09997e7a63d61a3fb7dada4e3266181f4ef413850c4bc5e59d2c6c5b9df
+DIST as-raw-xcb-connection-1.0.1.crate 6460 BLAKE2B 678c4c28852bddfb8ec9660742370e480df6cc379bd7d653e12fa00aa99b598d9e5519e15c33e59fbbf43d260fd01856129ad4e9e8dab28af6e043e3ea651fa0 SHA512 79afaab72e5a5af2e70b1b66deed1dcec5b40a4a47516bee4845684c0cb8afcb2f141af0bd4034e7fb76e57a0c7e7778c3deed2e73ab780915e04e3604fb9a98
+DIST atomic-waker-1.1.2.crate 12422 BLAKE2B fc6632f3c9d719b1d24a1c8e05947d94028909d1c629b80576e176e567636dd4cca699c7e91cae2df63541da574146b3ce766374e93f0ee429bb5bc89a4d3cae SHA512 e07e58db7955791259d0ec00fc4d53318aefb4506e062914819c4220c6dc75fa11a7af0289b4653aa1f9041eb975a025635190de68b4800a0e91e33cdb0ba11c
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST base64-0.21.7.crate 82576 BLAKE2B 25cc8761c14220981ff4ed332058f6179948080cbfa2b225ec1d1602e4af14cd470c969e8b7049117e6fc51a5a24e06b1d27bab844486ecb76409d12e0581d5d SHA512 c6986d88dd9aa081d914f35b4174be4ba874848657ac4b5e63b9b45af765d973289c548ccb5a01584edfc0d8d79ff5be25b51365295d6e7a311bd7f0ae3c0cb9
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.2.crate 42602 BLAKE2B 768d4ca52aca73d8acf2f494a66957ed2603eefd5a04332ed0880d230c2cc6ef3bfdc0792fa6f288a0eb132913dbb256793e580bc34f4a40e8200e1fbafe97a9 SHA512 ef4c20e6e78a2ecee97e17189b7100a504d8176c7c15d7f17d62157a116d66f83f8b2bba472a4acf02cd3edbd94b20a7047af918c3f3b371e2e04f7474be0214
+DIST block-0.1.6.crate 4077 BLAKE2B a2c11873b8cb1a1ea399ecc99ed45e5d0b9399bd88435cdea346910b8707b7da94eeef522dafa5cdb09929534472b2a096c03c373744a789962d4175fd1b110e SHA512 c278e3c0346cae423b533a8f5d6b822e788ec450c92ef0f5f559d5705764a0a11df49f0f66bb1c8af7e89bec8ec802934676b969e43f92255a38b210d0fbd710
+DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58d3ed85c3339bd677a3e111f85cb1ff624a54d7802ab79a6e1d9221115f66388568340480fe83eae1cb448f19f5b11 SHA512 b7d436d8e627e16e6ddc300ee8f706a6cef28ff6f09eff848eedee46f84bdcd03601303c92ab8996042e55922866a59259948177c0a4496eed723523e77f6fdb
+DIST block-sys-0.2.1.crate 9320 BLAKE2B ef7eac006fa851fa18b4efb3795b960e2111128c9a2671757ce281a585bba948ad2cb39e6dfb2426aee52b517e2e53d494f6975a62ef3ff57a8c8122693f70b8 SHA512 51f66e673f08e4ae28dad971ac795aba0eafca4380307cfb0967435768dc7abf172c2d6df06318c9b18aca5f710438acb94645d3ffec3327c7d55db6a9e2667c
+DIST block2-0.3.0.crate 10924 BLAKE2B 039f6b38831ad8aa45ba6845031a17af52b172f3f68d98c9ee648fa300ce1c8fb6766736e33813fe9916596ae4388210b7d0d33c9dd44346b551bcd2c15a1645 SHA512 8f1be7f0e147b6689fe999389246dfa57bec002304d4452f668724591b117bc9a5b3d1a4bd9fd5f72e81799d13a7c2893a4fdca5b5131cf6ee275bd396291688
+DIST bstr-1.9.0.crate 380170 BLAKE2B 06ae5065a5d566b6333e911a5b97e3999ad2f0bc19b27023187004c81cd01e5315dcac920ff87a6bb87ccfbb949364f1361dc04d342e24f9f54490b5d44a81d1 SHA512 dc313a16c38ad881128977a20bb390e7c95a96d9530596433a7c4fd7f77d5fffd079d436006dd8d2bfc4aacdd7f0aff229504444250418f6aa3f8d6d4df9abba
+DIST btoi-0.4.3.crate 10007 BLAKE2B 60a4c0511afc23ec3bdd07a905e82b501f1000081e6dbfca9ee6a0d6aad40ade84ab09d740fbc8e9656653a7f5a9a12a68ffa732618e8dc87f9cf00a90b6d3cd SHA512 35d54183a37c8adb11838724a061b38d286a92603a557ee8b4b80dd230649a0ceb165fcab4b6e41402284f2153e18fad5c246f83d99accb2fdaa8f32f854bd22
+DIST bumpalo-3.14.0.crate 82400 BLAKE2B 13bde02e2e60ea3099f4e46ff679d07b2e8046740c1855bb81fe8d20a4ef0fb26e565da724f628a00c9154ef16ffc9018f67433d2a32544564b66803b5bab223 SHA512 179c116a5320c5f21163c343ed48add36089d806e35bc303318dcfe09ba1d5f02bf8012726d0c2cb76a73fae05a7c887a91e18f9e5ff3b9f9ad8a2f12838757b
+DIST bytemuck-1.14.1.crate 46840 BLAKE2B e715c8a88ba49ec0ea37c51621bca926bfd9b3ce5bf12fa4fa4706fb75025bf420462dd7b20327347300848a96704eda2663452a6b0151c75d4bfb9ebe93374e SHA512 cd07e0efe028ac1e47b3a318d563e5af786eb7b17645f6a85eb41fba0a916655d422651149007136120a8b51b25e7448967cc37fca76c21cd122381f38eba21a
+DIST bytemuck_derive-1.5.0.crate 17323 BLAKE2B 847cbbe7a4449d17295d9b6082a8f38be8a1a426638a80f0fc097b208533bdf74d2192d5d898c4a7baf69921a56344e52e70c50daedd4818d6d0e0cd9f8959ff SHA512 aec9f0a10da379a0e909430d4f752457221a53a2a44801be1850072e3a0c6e9dbb1bae6c00609c85419f634a88204b9916a63276692399270223e4d67d7dbe29
+DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
+DIST bytes-1.5.0.crate 58909 BLAKE2B 2931f19e813eff73be407677622fa29e45f9b49434d5b3a04104b56563fc0e941fd8c5f996258a1aa660000ef014668d70b683b751af8e48d28d0aea76890c92 SHA512 6654cf41d8f0d7e19b05fd95044b9a3bfccd81f469c797c6aa763a4dd29e1b34064bed2e094548d147045cca7bc4706059de5bcf9f6579189e6068fbbf1c29a3
+DIST calloop-0.12.4.crate 69583 BLAKE2B 5cfab752477b0e08af797268b1b4cb1a4cbd866ea789da25b5b42b8579889da8b589d2e843c774cf98f29c78d40749c60a14fb972812216eced717002a92d731 SHA512 657c6a17ca47f633e3bc3e3b6e98160bbae6ec51e496c720c35f2fffd2b9c1c5fa175b69cdd567f6bcef0088fc5af35c2a142c3b9a14ad9720a9ff7dbff2f53d
+DIST calloop-wayland-source-0.2.0.crate 11304 BLAKE2B 27ff9165921be61db363be0c93f2250d8d9532cf67af2f3c00ea4f2e2e3575d7698c1669e418e065dd1ead91f473cdda0f681b1dd989a3f5b75ff606377c73ff SHA512 53bd9b57c10fdd0c94d2c6dcc634d6f7b2e64aa9625d15163b76cef5a3bafa6bd8643401bef0b66d6fd42148f6014bec1339baefdc61d6c79334243bf797f6b8
+DIST cc-1.0.83.crate 68343 BLAKE2B 33245b33fa845ea2f36da36e3830ec835f937e4319865b357ee9d5ea29a0f9f8392eadb38bf1d95e3c15ed201e561acaa87aedcef744f8db3dabff87a96c7f02 SHA512 742a248c3a7547bb220a0b9c97b67a831fab9b4ac21daa08c85a3966b9fe576088def33e16132fcabec9a2828a6fc437088bb045bfc98b2cea829df6742565a7
+DIST cesu8-1.1.0.crate 10555 BLAKE2B 4fe369d1247c3b30ff9beb644dbe2a517d78632191f3216bb83d632bc8857f9541a1b60d0bb583cf3fc0ae974f7c9d2b07fca5efe2057d9ef281de76fe810a49 SHA512 2d902b624c7ccfe3633c7bcf99b833b120c0ed7760ea825bfb2fa03ae90df543e637efd46e0743782b81e468e0fd3b534956ffca81f9bdfbf742ff3beae8f8b8
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST cfg_aliases-0.1.1.crate 6009 BLAKE2B 6acfae9a89d3479f7ce1f0b5dbb13bfe27c006b936a96685606a61a06f69d17ab754a8a0d96c54213f758281c2fb32ac74d03a34e0f836dc7e438387955aac37 SHA512 238828445c5b48ca41ff88825af0a1ad30494e423bb6f89b6d5e4d26042afaa1ceb0e32041f7cddd79c3e15c6c82a1ddb9469c4b63a1ac52d4bcc1174900f880
+DIST cgl-0.3.2.crate 7557 BLAKE2B 6c61b46f4157a3a400f75e81be8ec456759a0c3efaec2fd134a81d8070d47c478f7392a2e63e13b7b09fc0b620b27ec6831b9829927ae6685dcfcaedfc8bbb19 SHA512 230301b0f0ee7828bf0152b01ff97464609da32dc78edf2fc8518f2341cc48ef39bba946965e93069fa9e4fcda0d165195dbc6c1d594afcf1155707933b3dc73
+DIST clipboard-win-4.5.0.crate 13476 BLAKE2B bfe3e9c21d58e0001b85c69d724b03b2bc7128fe67420948dffe0b9709504924339c93b5acc2a572a7780bb1adcb51ab10ac172b972c26d325f3ceb7f7f6dde7 SHA512 2dfaf30119eb77c9f069310417f11e836e158ba43f988ff49f79647f5fe44bacf7e28dcc11ba2cd95389c685a69be0f5ef8b033ef09b94c9a3e484952e891d8e
+DIST clru-0.6.1.crate 16507 BLAKE2B 6379e70a2d75530bde76e82c370c4481ce84d8196a395e94b30dddc1126529774e7ac662da2611e4da10cad6dd54fbe55e1bca4d554369ec5f4798bab59a9d53 SHA512 bb9303ea245e3df6321bbf3c4cf9f899648067f8d3950638387badc79ab37e7570ee73c90af96dfe4eefc004d116c5fc77cc8d89a2809defa2107cde530cd192
+DIST cocoa-0.25.0.crate 42163 BLAKE2B 95316b0df34951b0fd7affa999533f0b470dc9165807f3c22340ed47a5c6956670d613c96099a1f00ff7eb2023aaffd4262746d936370a4a3d040d7cbc1e26fd SHA512 c45ca5f567eacd77504265a88ef22e496fa7eebd814403864648af9a75432794acb77a11b60dcb06a2a722bbade0b8e68b05c7b069873714592643b546525f30
+DIST cocoa-foundation-0.1.2.crate 15028 BLAKE2B 170dabad57dc131636faa3d5d406fb6d7788540cc3ef71db17fdf451d947cdea56b3aa1af8ca0d65c869d9c2034caa096f647fdaf7388019fdd79b9a55d17d00 SHA512 5e9387ccce5cfd7fb6738d402d84cf825c3c9ea2ed5a5485af887f5dbd5bae7ae62ea884242673fcc23d7964febeb6d0b12bca636f79a9cb58649f774c269072
+DIST color_quant-1.1.0.crate 6649 BLAKE2B 9a2488dd00b7a33e15e05531ea49ef1961131f0be0922ba41e2d74d2b1a047daed483ac3a9dd87c847a81cce70a347395c557cad8228ab9a8dc5be7cc0f1bcaa SHA512 690c928bda4b7b57425f38ea68ac89cde2473b7a91b7e62c04a8f2c5a0fa3505e26b065d48b7ad0a8bb491f92f600f896fefdad3ce0e86e43cbf4f9a89e94201
+DIST combine-4.6.6.crate 132428 BLAKE2B fb52e724a52f1a551255591fedc134178080ea5efc0c488efbc369e6272f7f2b87dd7d0ce63361754d8ff0cf1b0a59bbc7b0396c50c53210f3e2c28ac965e0e6 SHA512 ff9ef9329de2cfc103271a25ad1fcb7e478f3328843bd8a65653e80b74112728ad4a33326a58ed7ef8cf39eec7c3b797fc287295ba149ee0dccb1de9721b5819
+DIST concurrent-queue-2.4.0.crate 20244 BLAKE2B b30b97eeaabf0205bbd8f4eddcc57e59b6863f18969731be66b134cdc5bcac9eb543493c54b17bb394b6e227e808f016e4f3c1da2fd6b40269b9b24a5c433f7f SHA512 5821bb396a73692e5b033d8406c2996bc4318cebf8807e596e441a2bdc28715fc6bb8eb29b575ea318f84b748ce47341a8d23f5c4de65660f86056e99b6a8b78
+DIST core-foundation-0.9.4.crate 27743 BLAKE2B 5b695e671cc833170bc6bad436b2d0d8d386ffb8181bfcf2e92a1d93cee67c3ba1768cf57064fb91b0897c6aec1be7db40b5bd256a052c1bdaf872ec19f6e15e SHA512 82d0878a1b9e3d56b3666fb5a78f92c6f7806d01665c242c06a640bd6b1fd36260211e92dc05e1a16d1430622bfdd650aabb0b5bd8e5592f74abdcf412448e33
+DIST core-foundation-sys-0.8.6.crate 37629 BLAKE2B 683d5a84b6a3816317f87359532a8339f08bb4043f1d70a8588636eb5dbe6ebb3843e2a12d9a7e5fd1637a912c52a5aefbb8d44796330b09593e7adefd3babd8 SHA512 24a8958cb16b081862a9000affb0147b8b3be1a664b834c3dbddbff03e709de3f4060ff4800e5a35453f4392ccf33168e8b864be71b17be38cb264a39b915100
+DIST core-graphics-0.23.1.crate 30714 BLAKE2B 291e5cc4cfcf1a6507dc0e4dbeb304fb445530c60d7bef79dbaa53524233fc453d1ee977e7ed43513319e1d5641e756749f43b536535fee730308322190462e8 SHA512 2b0e2c00900d4a9e09c718197692ab2aa0d009a43fc03a30075eb33ed7648f6ef640bc2d827fd9cf17f752b810eaecb77107096aeb1daa0348b3b7e17ae47fe4
+DIST core-graphics-types-0.1.3.crate 7063 BLAKE2B a2bb17838745a28a59e85d884ea60069c33f548d41f98548956eaca4178409c74556039a5a731a9c1e9f26de8c69d45f458a90a3f7b358065202b660c62431eb SHA512 e56b96662fcb892b73bae3292478a9ba4c7e92f5967b6438546f229fce115b09f997734c40f8f776be6ede2c6512e837632eacc8ec15b5c3311f9f24fd22a397
+DIST cpufeatures-0.2.12.crate 12837 BLAKE2B 5b518c58c548d9116f94cefc2214fe2faf87c3aaf3fffbb0bf4085f75372cf7fc5144bc3f827101a3a14a51363d06d8075db94ff5ed853ab2ccffaf597728093 SHA512 52742595702fc3371d4126fb355f3d7a6da514a94e43170f1db041cc6c560027f92115eab7846131dba1018ca5c72003ae36f945c1de88d57a0e7f66331623c6
+DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
+DIST crossbeam-channel-0.5.11.crate 90434 BLAKE2B 8666f039a0e4ac6f0f8be2d08ce3349d8ad4aa7d0f38c638dfa6dc6a7f30a1629e42f87757d9e054e836941dff6a8efa53b5337706bc5958d33dee61f38e7bcd SHA512 1d37bae1c946d402c1fce37f22a82037d68896770757aa91d209387f947d39c514df52e0ce94317141513784511ac626482f16099cc3b62ca28a52f387b69c71
+DIST crossbeam-utils-0.8.19.crate 42328 BLAKE2B b2846f569555818fe7a3ef4aa29f68c638f933ee0251713c2c92624bee5f8013def5527027022963f572815991abb98d5e68d0fa00f478b2762133f84ffc84c0 SHA512 6e742fbb0d2a6371db87e81f8ac583259530a288237d0e8347394581c60004703a822318ec945936c410bb44001b115d8d986bb264e5b2d8091bb63a8edd93a9
+DIST crossterm-0.25.0.crate 116533 BLAKE2B d39cdd1f4df716974cd0929ca40073ac6e17b2dd73f27b48c7b2bcd7cb4545bce544b2e8459812b866936c03a27162b309848e6a92290960619c4efe2a1e0502 SHA512 fdf2b5b4bdcbc8c7dc4e8c5e0cdf68cacdb97886b52087dde1f1be9b869c00965c0cf9db64b700801b0d1274b913703ade66a92d47aa8da604121693b8701201
+DIST crossterm_winapi-0.9.1.crate 16027 BLAKE2B ea63abf751aeab203f326e77260cfbd1de286be26acf714a083ae1262b0cc2a35b5cb6d0bd54f45b33c1942eb22f916141c5870aab34149fdb30faccf4d4642e SHA512 48eee242f477f43b69c00e3a5d4d255de2ce1774f6e73d869c5472b35d85af0b63f3a607097da8ace437b1e52a524ded4106767b83d4ec53c30c2e37ac4b46a7
+DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
+DIST cursive-0.20.0.crate 74475 BLAKE2B e319e43c357270624ef046f2b8e68fbc78ea94161a7412d38f5c2b915b73284a7243a3ae877e0fa91a4e142c928f6d406cd01466315c81d492b65a9e7db9a2ef SHA512 3a4d9a29daf882eafce2b33d3147d546e53f21afcae3c79a2d5030b3ef647a28041fd76cef0b82763b62418ac66c6337632ed1cea342796c33eeac62ef4a712f
+DIST cursive_core-0.3.7.crate 159235 BLAKE2B eee0f2ca959e742446a659a4182204d5e4f65d30b3c126cef563f2e47cc12214c5b1743fc4e7de3d0eddac7a6f0ba2ddadf96446abc2997e907d74439dc0e606 SHA512 2c19b2726422094158c70af4a1e656666a279f0d60beab6d8ea11be1cf937a7f13794058d7b1f6a46241a13e60fc0e96c95fda8331000198813d3a4d6ba1e3b9
+DIST cursor-icon-1.1.0.crate 11453 BLAKE2B 964bae7d3fe138e00c51e52ad187ddf5b71a86d9b1bc9bb394fd27869d714cafdcbd539e2c62eca9b0912593d08187d550f5507e73754a00112560acb83912d7 SHA512 4e3b74cb17773ec2b89312fd4fe60330b785cff850102e9643bd06e99b5d96c11cce14a9350f295c6063c4133dc0179cbca13fefd7ab816e57c915f75d066d2e
+DIST darling-0.20.5.crate 27737 BLAKE2B f3b5dfcb8313e8eb74edbd49322d45ed814ef63df642b27c27c1e464c8db155b536fb6d53133f070f3edea749cf6f15d465908119cc1c30156a2acfd4b93d536 SHA512 394bccf43738ce63d7d0647e828f6606daa1d1b2be85ac2839fd5ed22450e93191c33e25bd32e61ab9b82a4546a3f84acc6b376cc0029b9a236db31a38923a5a
+DIST darling_core-0.20.5.crate 61089 BLAKE2B 00dffe93c0bfd97c856f8f4e070c2cec02928389fed26b3680ed6505e1618688f76438c4ea85ed68ea01f8f574cde375fc7f227a6510361e1727510960fa0531 SHA512 9179e08ada4e4871242d3be176109c8c6a94e1ce2451ab18e553061b40f004d1d725c50eb7f91668a43a90b548a0ba6a2a05728ef631c857a53116ff7dec08b7
+DIST darling_macro-0.20.5.crate 1857 BLAKE2B 540369edd7ae25f16024008b0e6c8d0ee2d338cc1e28edfbfde1b72449e4f4b40dc6a8e12ac19851eadcf97e620bdfcb5e8877c6b05c190a4116728143f6d073 SHA512 ef8d3433d4020decd186f842a0c590b6c44778252afadda0a6dab840f874bb0d7aaabaf3bdfa28f66f19ee8108930b5605a7f733a516b9c0c53955f229c5d4cc
+DIST dashmap-5.5.3.crate 24061 BLAKE2B 2bdd62f674e90007a81b76419dd5df1b58c3d9b80bed4324d9e0298355cd66706794c7187c74bd9a6ce119d81ba9400c47aa2729ec923979b0bc081329051e71 SHA512 15079a921d768224defebdf8d5339257c9e94a46d115b37ddfca8eb83718b2448555a8982bcf0381a915d292aff9d271a89d3398d2ae2f396dd581cc6883963a
+DIST deranged-0.3.11.crate 18043 BLAKE2B 738d5a88732e227bb0e0d33c04ab8248a699c7c499100666ffcd78673d1f38ad2d740222ab405e3eaa7a0a6f4596cfef90bd581a1baf77c954dca830c22e74f9 SHA512 48485666d3e50eb7976e91bed36bddbaea80fac4ac664723130069bd7d17893b6d1a2b82a4c3dd61677162e4305ba5ea8aec7bc2793d1b8b92dd1666c204fc43
+DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
+DIST directories-next-2.0.0.crate 15153 BLAKE2B 8bbd996cfa72d75fe7177a9d8be7fb6b96ff3fc456b7e06db61cc463a83290765d68f09da3bf8b9e958553b1940ef35f3a4a45d179918ead92f604dd05512470 SHA512 5a0c094dd2e858c59c93655d5abce1282866ced1e7657397c62f959078adc544bb895dbcd2ed578ad7dd0122d8025deb0bbdad955ab2aaf43d9a0dc7d37162d8
+DIST dirs-sys-next-0.1.2.crate 10681 BLAKE2B 71431533dbfd6016cc309c14a842ac8d43577abe768e69bd2caaf7d19d743f3ca95b9b0be1747077282089c64485f3d4e24bec8e56d4d883f25e494d328fbf3a SHA512 b3c40a8e93d4f9f4a890718076e14779aedd67a79da61b466788268c1eaea19aa493f043a7e410f5023a23d5509e639a6fc6681fbee30e252a601091cfffa2d5
+DIST dispatch-0.2.0.crate 10229 BLAKE2B 3a3f011bbd994f6620619d5bd26d95eda7ba21f1a4874b69e3a654e04611ec7af7257300a669ee95ae04ce35a91e033dddddb4a14da48036a5d19c4bad721386 SHA512 cf2b4c624f92808e43a0a4828ee1085e115540d5df5a0ad6a3593c9e5109951b26e8afbabcfb0a1fde41207d5c060566bf9260bf4c2a95907e3a822d84364b3d
+DIST displaydoc-0.2.4.crate 23200 BLAKE2B 91b0ae7018109d407095060b6bbd6aed1cc21120bc30348e8b16b5121f7c35ab72b65e80bf97dbea6cb4ee6b4d5215e8e5c4374f92a569697bc9c862348620cd SHA512 a1de2c200584bfac640f8b84b5103d8687919cd29f59a14898e98d480f476a8e4dc06e3b929af479d536cd02186e2a9be72e6414338bc117b97bc0d160029592
+DIST dlib-0.5.2.crate 5806 BLAKE2B 2a8be2d76c44c95d5b1b9a5439a99a75daa703a341980d8af1c050d6096d45fb748f0acee7f7de2f9433f97ec19faec9e028f57c8149229eecb1827a1ef8eb60 SHA512 4a8f1c09007ecce1d7c829899aafb90081fe4fd89cfac3550638018760e24f63985e3060c4056b55bf58cf4622b1b31595e1c524a75b1b4354b8f3c35fc267ae
+DIST downcast-rs-1.2.0.crate 11670 BLAKE2B 7d44d708c1ac068a02ea5d72dd3caa8a7f6d18b7ee653d520600acc9c52365824f5b8d3c68143d1d13aa438a18b16ff9975e15131cac7ec48b2d995184673d37 SHA512 b80b72f30b42c5e6b2bd33287f2dd22be5673b2fa5c1a8c75c5de224fc7eca46a55f2fce63c02d225dfbc94ac3462b4b2fec53d63331c70da6307ebcdcc6cb14
+DIST dunce-1.0.4.crate 8034 BLAKE2B e1e7ffbcf1e3632036c03303ab46fc37b2b0a991598790b2dc65d7a61341a78bf555230ccded8fbb87d6288282af3ed2a8641212a0f1fab929bf99298e878b6b SHA512 f57d9c53c177bac8e10a4b56ae421c604085aef0f264b8d6871abb7e1ff713b55f396c5c5f24422763319c504c6ea6a774416af1c2ba23ba7b67b2282f6731f8
+DIST ecolor-0.25.0.crate 10206 BLAKE2B 069146ee9af1dda57435fd13b249f0fbbfec8ac3b80a2335d9b68faba70f8bd51c3a56a18d2c4932d8551d3c160ebdbff453bc44e501b1794562e683aec0bb82 SHA512 8bdf9628efd4e7c0aefb9cd6acd95e772703ffbb9904f35bb121e63c10167615f798f1e4563c43391f737bd5f17d84899f684060f5548d8d2522c85559c3d185
+DIST eframe-0.25.0.crate 87060 BLAKE2B c3bd601892edd94cf10e519538253418c4bb18d3728be6bf950b145824831384ae8d50aa6b80286f9919062e7d295f964e42a3562272a3a0063cc7c57024b06f SHA512 6523e9def87c2b2fa1f28ce501d2857864663fd3202878a47cb098f98ed86a20c3c893f1e38ae762275dd70a4daf68548c2f7bcf2d3039614c2d426c35ea204a
+DIST egui-0.25.0.crate 269446 BLAKE2B 4b8d43a803c61bcfe8d8c8ad156f68545dc169fdb693442e3de2cbbc90a631e947a28142f8e409a31874e0a7aef95af5b5dcdf2da0421f3850cf8e264d4073b0 SHA512 ab93440c741fb68c4361ac700836e019b746b1c5a49ccfab4d8183257a7247b8a15f64f4ddc6921ea0c74b619cc77d91d055d003287aac838a0a09507abd6a3b
+DIST egui-winit-0.25.0.crate 18618 BLAKE2B 9aed0d346b06232adf3bc56a0ba546384c28337958a369c6a054a3bc49599e7ce93d68e36a0e1358425887d2d2c74ada71a354511640556c18adc491a4b7f481 SHA512 231cfd0784c9e5837865bda4e830f9b68b041bc510b802263eb739c64825f477bf014c47e85d5aedcae47e201e73b50f1c63f5635df74640a5efb3c106b435a9
+DIST egui_glow-0.25.0.crate 29556 BLAKE2B d211fab90c3b9f5a08b907cdf1669d6cdb7524c1838bf6068de54b5d132761f62debdbe1c69888f1d23e8382d52c9af292a7106ee2392d8b5e27ee3a176606bc SHA512 2c806edbec7fd97db2bbd0ca0b904348b71a08110a72b993c3a09c5468a4d638adbe554f492996890917cc64e7818738d0ffd969e0348b854cfdc466e7e75425
+DIST egui_plot-0.25.0.crate 38649 BLAKE2B dfd9476e79cad2e2a4e4f1cd1e458ab66e3c1915cc8ab1e94551194ab65b31eef9908555fd9afde18652027014deb83689fc1c0846d4f0cf3521a3ef496a4d7f SHA512 ef6a803cf06c42f3c296ce2c73180ee875fc07a6bbb2112fa417f61e16959df3e0b6645d520f1e75e641f98d5b699e030df21bc23b022aadd7f63572fb3a4445
+DIST emath-0.25.0.crate 20251 BLAKE2B eda04e380387175ca404fcef7d9c0faefdda435ca1bae40672f6702d27949fb6b4c17a21166c7a36cd375fb95d51b7804bc634daf72cc0a6d71b9c5dd9022d49 SHA512 e17a20967b6b9fcc19d076e81b9473df0756c6e32a9b7091c5a9bb60204bf1b29d0fe186d5888b608537bfead85b414ab14190890d2d0c69f4793aa05e3067d7
+DIST enum-map-2.7.3.crate 21792 BLAKE2B 5cee4f4f5b3f29c5f73197de22a7559fd6264fbc3b146c683d93579d5d2e5e208ba0d6965a028aedb9536620b089fab81e7899a5be631217f193648f6ced32ef SHA512 cafb9346ef17ebc8940efc542d5613c32f13775a684db186f30a632daca1c17feef6e0e77ecede646fc688e1cd1b189ac0914e79c0263333a75bc50c1c6a9568
+DIST enum-map-derive-0.17.0.crate 10781 BLAKE2B df77d362cfee0cfbcd9354f65530424af9b501351544d97d5cf04c4a4fbd5f1862968bce42b719b9159892490e69c06c47d9fe1be4ecff16212e26906329e572 SHA512 270f2e9130e5c0124be707b7b4f642992768d2dde3b429cd86a192410c3618cabe24a914ffa79578f14cce72c28a55d5a44df8d66ccf3178c4c68bf4da61c065
+DIST enumn-0.1.13.crate 8391 BLAKE2B fd02b908c615ae0565a78bf3d9977169be81ce1f176b45ff165c45df231d8a90601ba226aa449d52c929710ba796a08e0d81a6ab9dc59e4f6506f2096cec1492 SHA512 c0b453e3c5f37b5037d39327d239718775f2c554ff8c2f454447720b323c3452d6a04b124a5577960bde078e312f4f5d4a59ec8c269d5d0ad77c602f344db505
+DIST enumset-1.1.3.crate 26976 BLAKE2B 4e40cec8a6db10a04b598eed3aa7b9a81235ed95e433571ee4c92a699c4687a004dffb94721aafceadc4a6c68dcf08fd622385a802ad330208d55f7c0cea0436 SHA512 1fcc39050a75d73febf9f1976913872269f41916fbfe936b7ab67d7d61bd67de9ffc71a1cbf34eef92b2fdb0313b5c77ce9dc7adafae5992fbeb6fcf7b31c180
+DIST enumset_derive-0.8.1.crate 12711 BLAKE2B 752eeac1d1215a041962e3386ac95c1b8673921b76bc4ecb14acd98895f01ed3be24a95b5ac127af9f4fbacf65bb5035e60b989e3cc7d732db6015d92106ef38 SHA512 9ff87a0a5dbee945b58987f9d26200efa5e8d5c085ceda6e44ff9cc1b05bd903cdda632e459b26415e7e2195af79aa51b8e95fb9ee7917fc74a6102f220e5148
+DIST epaint-0.25.0.crate 854853 BLAKE2B 0c591dc78024aff8e0f8ed75a47c4cd918242f4b7df13f368ab462addcf291a824d0410e6cc060e4e7d1ee06ab53e5ce3f8ad19a4f6dc08ef049cf33c117efdb SHA512 b0b583b26c668ddd698fe1ec0d178d3a2f8e98feac71a825d1b162b3d22c567323e01b61095d29fcd14aedffe1cb2a8c258884fd36094ec16d6139c96291aab7
+DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
+DIST errno-0.3.8.crate 10645 BLAKE2B 4a7af10845f11b3d8f177a75a692be468e8ef0ee53fb84a4d212335f1499456b6739a59af260894b5c3853d3bf21ef3490d1e3a613305561203ca334a636c3b3 SHA512 29753c421c6f929760cd7565f8171696e4f70e677654a7507253f4fc495edbcf214ace27be46bdfe5c1a0d782f4b688f591476e56f4a1096471cb353c643328d
+DIST error-code-2.3.1.crate 5324 BLAKE2B 3e6c18560c4f30d9fa8e5487453432b220b88acf59a421d2c2ec29bd77bba75ad8bca63e99d384442c7d458b5936dcae149897c2b0c57ad6e621f9b7928b2331 SHA512 a3953c854f7fba48dc34c35ca841d6f0671e8bde19f5dc36cbdc167fcc7c22c143dcd071a35c1866f5bbf05cedcdbcba3f1902d93aa21d19993b426c458af46e
+DIST faster-hex-0.9.0.crate 13053 BLAKE2B 36e07a1b08544f273b30b6c8b79eb97bb0e97efc29c570f59fbe9fb4c818dfc0cbd9f42ccd4e196845c5d1f39db1a49cf61d1931ea5c1f761da2b0da49b03430 SHA512 7713b0929ffe5596823d001a83a40fe1c4c500b7cc4218921ebb65f69826a9a9fd6e7b948fbd093cb921bea52e9f2cf3285c9d1d11f2a321dcfba0fb3c9aa5d9
+DIST fastrand-2.0.1.crate 14664 BLAKE2B 7a5812153500170dcc53ca8d66384fef46eeb5a8f970be43863f22f82bf427672d07cb053f4e04b0fea358ca89178399871235680f57223b8561c07b8d21cf13 SHA512 79a1e1b3f39264f037def236afbd87b732f5e0a2154b1d9e721b3c7990c52be45138320e2571fe628f482e0da7e3cf867abb745e3c277b19015fc031fd4410d9
+DIST fdeflate-0.3.4.crate 25001 BLAKE2B 69bffdb689dc467bd62738299ea17295bf7dd9d51c78b17e1ef6eee265056308703646791676c44430a686e1d713a8f561c5db972de7ab7c5e7b21050cad70f8 SHA512 a38b493eba656beb97275faf5a2f32c8a2c2cb12c5d5c280d37bbcf1406fe404151fd6312ec496aafdce802ef08745a6927e571890f9b290010ca5ac45ac9bdf
+DIST find-crate-0.6.3.crate 12092 BLAKE2B 5434dd8ba17e54ddc3d68e0fbfdb0e0a2026c0c62ed76e5b64b19d8da1963e693e43f385c41d0b7d480369705291ac67abff9aab8f2b7a84b57abd7b4732cfa4 SHA512 f7866a4f917df064277630570f987898e465dce98be548ff7535201ada88b5db71c755f00013fcfed45ffdf29fd667c90ff19999a1fb7cb183a7007bd011f899
+DIST flate2-1.0.28.crate 73690 BLAKE2B c9f141bde0eda6b9c42da0a3ed69322c12c6c29bc522131f51ad56f6e2758646aa5585382407409257a8301f5f07a1825d150838bbb55822f2d49037f6279aa8 SHA512 9db6f3ddc4e1e91960b07c08712beabd911b297d93db8be3ecb97a392a4262e608c75ed8e9e34d87d58c3e67d1b7987734e14ab3d45fd837a2767e8016380284
+DIST fluent-0.16.0.crate 8321 BLAKE2B 1e91c434d1e006cc0c8939ec5435f55af5226d4a88660c91db2dc7e3c7ad7804786d5f6a1c20185bc54caba9781f601e82c0d7f3399af91dcbb9d0a5b2229995 SHA512 b38bc79635f843e1bbf2abbeba9ac99fd5c3b702cd1699f1424e7ceeba07a548cd3846b4886b9472c7f5bff52dde652acb8a17760c677c5246a235e0f02ff418
+DIST fluent-bundle-0.15.2.crate 32239 BLAKE2B 43cc9f0399c43391256ba76bc1231cd5346d13eddf21b5db1246a5821e61416912c8aaa2e35bb19e2b1220dbc96c3515abee0dda0a58ab9ad9f579270a2385b1 SHA512 95da35b5ef98b79cc37408f92e6fec38e27975d4e447e96d01843d3b08a3c7bf730984eb59690ca9bbef6c24efb1b003367aea22e2f76074dd0192066ecd8d67
+DIST fluent-langneg-0.13.0.crate 11723 BLAKE2B bfa4ec1a3a11360d28b5291e8eed2628ca6007b8afca726ded87d630394773835b3c8aaf818376a93a60de10feab25d7784c8d2b1e34e63b660d581a37d9626d SHA512 397d0a4f3508c7f58105dbb9ef7a32c5c4ebe4a73d80d2a19930479bee325839485c8002b49fb8c55d686ec9f3ed1d26493b56825b65d60ef7fba78a1442f9d5
+DIST fluent-syntax-0.11.0.crate 28524 BLAKE2B ff5762a9feb333aadac587296401d6386c327f93525a9b2243df34f7dc4532cd37a66d865660c7a6b0e775a6cc0e5454ec92808ca7236bf0265314a5be151989 SHA512 cd6157ed27735fe319b115e555760832ee29d5887d8a1a9932a47e880c97f927304320c7ced54b30984c65acfd5ce1b9dc659a8e27b4976330cb803d07f64289
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST foreign-types-0.5.0.crate 7824 BLAKE2B 01a5111a11e48462914f9877d3228008590093633e957883fdafd3a7017e144c14fbbe713bb8b0061ebae78d20a49978191ce416a4e28317b67ec69e38acb879 SHA512 d07c92cf99c99419a3ebe05ba9154e396ab88116f46af736ffdd958c8e47741bca5d9f478f6719d5361360e844375968c1cbf6ac40995d47128a5e5fda3f6c82
+DIST foreign-types-macros-0.2.3.crate 7635 BLAKE2B ee89f576f2d892209c0f344dcab9dd85a671c976c8034b33dc984b93a5c872ff0353311657fa1dafc499243e55d3293a7bfc532ba55894a719a50ddaa6957589 SHA512 c3965e058d15159f789a8ab1597770ff6325e8ac9e6914c98450225ce27af849698646d53326e07b13eb3a9730452d926b73fd76e5a1fbd8ae4a6083bdce3367
+DIST foreign-types-shared-0.3.1.crate 6006 BLAKE2B 27c26518e0de0a298df2996da4959727dcc6a21bb4efa6c28869a9affe7ee3b427d1bae25ed6928477d07959bd143d5d4fa27325f8f5a5cb0ddd3cdb9e5314df SHA512 c68da34b55230941d6655f6a52d5dcb8ee02149f25c25a5ef782402f9a18b33047905f28b70183a5f45b45977c011a5320cf7283b7901c76ede4d82082ca4c9e
+DIST form_urlencoded-1.2.1.crate 8969 BLAKE2B 383d3a197b73fba199220b7708e16d770591ac16725faf4efc1a8c230c569c381870d4a11b8fba623e761e68f9d318630b22101d461e67dd26c67e13a73358a1 SHA512 c65104e2dc08fad572bb31f981700fd43dd29fcff42b01c7ccdbd3d4c23dec12360aed3f1b5fc4766fee386d418a65349b2941b8735f788cb0d35d631a6a8dd1
+DIST generic-array-0.14.7.crate 15950 BLAKE2B e74c785e3127095625951da192a018281ea9976aaeb11019f9088c3f27748c5fed1ef25d577150864486dc48b5138d6892e42f99979339f711a66fc70756c82b SHA512 363a7b04e4102f9ca63d429721c1ada6272be6bf0a2e97da681faf76381f73f0e3acb86623b9ce2dae441de9fda704088391779b9769ec02b3c8c9f9f35f897d
+DIST gethostname-0.3.0.crate 8440 BLAKE2B a8598187c628c15bb74739d3a8033ac6b33194433ea13f0af9ddc8b455305a35933218d3ee7bc5133a1908b172b7ef3f9cfd361e1951041bdb85d67a68dd3bac SHA512 1655174eb6713d40519f70f487dc6dc65f93f03f84f9289bd1781587c06692823fa0e97f5f821938680d47ea9680cd127e0b9ffa8863f730c39abe9fe0a0f741
+DIST gethostname-0.4.3.crate 9336 BLAKE2B 12be5fdca0b6e3788cf3d67a4a80f283d240611b4fd37b6d1c37eb2503e4a7025b17bbb70adf421ac840d8f952434bdedf4691f31362780a267e21e8c4d3a006 SHA512 8c5dc404132f2ecf9bf82d8b89cbd698b4cb6d43141c47a60b95401da2e8c314347ab0a0ad5fba50cf98f01a621faa68293cb78f48977d3ddfe6e6f21926abf7
+DIST getrandom-0.2.12.crate 36163 BLAKE2B 0afef8504932ea0ea051cde1d14bd5b79edde68d6ebae6fe88fa4aaa532605a16f466d0d9c0d0aa619eaa105600b6d5ee4e191865a3fa041549a78f78ca82396 SHA512 dd97d7dae1a7ba653abdaf2db719e1a9c8eb721b08b4af0f1c45b1ed5079069d1b57e4f6d9d879e7fae3a890763f4b6aea9bc2d945392b98e811e7b348589bee
+DIST gix-0.55.2.crate 303079 BLAKE2B abab4db4b963186acd8bc64a373e48f6a6725a202497f6927d577fc4ff51f6ce99ebd7e6da2befd9b2c28025daff75352a753e0cc3f8002387ca9c025dc7ba42 SHA512 6cbb2abea3bd87c18b92e6b70e2f75950a2cb0bd701a029a4c96d0467689b43694b6c2af4a8e4ce6b958c54e6cf834cb3005e6194b6f3fd4355ce07cf85ba8f5
+DIST gix-actor-0.28.1.crate 8927 BLAKE2B 27cb0ee1839da466183a30dded926e46c2ca15a1efafb77647d59278496056df2e6dcc07969205a421b53f7c6a91d1fa6ac64fa737318f289964bffa6a676fbd SHA512 912c81f8e75da59aa9f526049bdb8f1407f74c27033286fce1e38a8c441588a3fc349218bdc8b210bbaf0726c9874a41a1f6c89b2a673f568d3281a51e533bd5
+DIST gix-chunk-0.4.7.crate 9411 BLAKE2B 52060f452a432ed4accaa308866b622b243d1d6e26f3b5514476d57fdb7b5fde8a1f904f0e7aed580b73f2700c37026df2429831b43fb33672a65a10ebfb40f8 SHA512 c0a74c5275e103213ea2a3ed517d7eb9d2a79efa89ee38990f701b17355eb759d8e8dd39cdda733f338338fb790510cfca7a56e53900ab6255dac5066809ffd2
+DIST gix-commitgraph-0.22.1.crate 18108 BLAKE2B 532334aa8cd5f286e58b2bfb5d8c0e58d3062dad3aaa1b6fc7e270ef2608f9a247b3c0a630fea2bec8c2cd72b1cecb8ce32966f5209cc762926b8d80bcbca2bc SHA512 7e97bd7f8df1b6442dfea0ce192058530d2f236437937f353c7c875facaeb02088a61fa6f7aeff556a1a966cd52744d8f82f27101b5fe32ea78efd09a32e4e84
+DIST gix-config-0.31.0.crate 142539 BLAKE2B 398aeded7e5cda4456226ebc2e7132e3f95405f2e842fba90e3cb006c34a5393a6dcdcf344663ba2df3476e998905df41394b047f073cdd502c81c914e782b67 SHA512 0142cbdeff1aec3551c935a58b13241c8b71154e1703bbc401a793ec7516cfadf417025df74f765bce022505b26e8dffa6888081a763c3d3a58526ec451db457
+DIST gix-config-value-0.14.4.crate 12762 BLAKE2B 56f504edf85f8a31e6a1b3dd216d27cba8c2981ae765734222d972c6e90838a270c96f7ce4415d50b34f4020e449c5fb7e4146c4e9e712893137247e05e467d3 SHA512 c627846c7c02f11165402f6d967c15165ec518fb5606e42b0247d8664a8d7a80af167500fb95fdcf8a9dc962486fad6f88d3f3f04e25357db1d72969024587ba
+DIST gix-date-0.8.3.crate 10237 BLAKE2B a6e1a4f9d1c762e280db1684bbf52990edbe2041d8fca565333331dbc312cf66a5640ff94ebc18d0927367c24507946390f65d6c51829b85a621ec62a3d1bd39 SHA512 e75599be5da56838fae0651c399e6aa503783306faed971894a661b4a474a31713d321ddff7698aeca973f8429302ab929d998314bcb1fc40643839d8eeb4dac
+DIST gix-diff-0.37.0.crate 38486 BLAKE2B 50547bce6ef246d56cc71d74f55a4ebcf21d9f060eb08f93e5cd50585fdfa6175f946d5ed50a3ae7f413e5352973ea6449ef62552981c5a1142c105117c6f436 SHA512 34cf3390d8d051d15a31383b20f718b5c071c6c7e96b13a7560a064983cbd9d071fbf3aead1a63ac351a23e1bb6c9753768037544f031ac54a1ee76b52ef1850
+DIST gix-discover-0.26.0.crate 42580 BLAKE2B 0e54bd4f39aa76ed65b119a04291fd159a3ca1c4d404d4612873199718a09b46a0d51022d32d6aee7be7b977729555c0ac37819b056fb696077bbef75cb82990 SHA512 06592c75732adb629e25118c15e5ed2a2d88263608f06756723434b6524970df0c96b5875f5117a99d822c59dc8a397b6a8d07d2fa0a098f944a7c06cdc70c5e
+DIST gix-features-0.36.1.crate 29362 BLAKE2B 13e2aef38ee33dcde780fd2ff68f36c3ee32612f4853f7b56144ff5ec21b50f3d6ad8748a0e0f00289a1e33f861eb23bda8b8aeee7a684848cd003123ba299fa SHA512 558d9ee8d48f3867cc8e4fde8f4a189ea7788b1859c9493a5e87e28c3c545bd4eecd14a23ccfe457858273dac1e59fce6089f554423a815740054c2656875169
+DIST gix-fs-0.8.1.crate 13692 BLAKE2B 9b4715d7f3fa24f25fff14eb3ccf9dff35abbb423d69f7ca29c16187451feadd2a711ec91e17d7ad412cf583be8c0be9db22fa0d6e3eef9bc7d172226fea0e6b SHA512 3c85ca7a43c4722e5104748bf22f7e3e115c9823dfcb70463a4020a35f3eac953de119885feca3d6d0e7e54ba9007628abd17cfa0bdd0294165c513132620f25
+DIST gix-glob-0.14.1.crate 13065 BLAKE2B 01b441812daac46c9328231856fe03e75bdcf14277d4766f654589d335a95769807d73fc5ac69ad4a0c86f8916d84d4c33697ba471d49f209252b4090f57bb4f SHA512 6b5749b17ec319ea756a2f185a0e09c386846d4fef5705acf77e1a0aba8bf0b1d70bff27710d91c27e26c5b55f34c34b89a42b3fbdcb91fa029e5efea52f2b75
+DIST gix-hash-0.13.3.crate 12701 BLAKE2B df1a14b682701abbfdc35f46ce03ae36684685ebc2dd96d596cd5fc5bb68528146c545a424aed733b09ddd93ff02ebf98a5baa57348c8fb98bb110d235aa99ee SHA512 3eb29f0660555b6dfed3f932050b2f0f28c1d1ac9f882b46755b65559b5dba04737fce5111a713c796b33b0d352179547e80e0bfc96df3b45da32794028c3be8
+DIST gix-hashtable-0.4.1.crate 6464 BLAKE2B 09e7878d6fca74e9478e07b4f8406d73f90121fb350a6aae1975701ee7a941170b8c7fadacaa52c7e592ef27aacf71893d97a9eb3459eada869bc18d4b466c59 SHA512 d3fefdf9fc77dcb6463b6800fc1e7b118b1c7a82a572f7245987f2260e153821227bc6e8a2d4fb20f4bd948f756abf476f14abaa6214846c3218b6a7d1d84f08
+DIST gix-lock-11.0.1.crate 9498 BLAKE2B d27c657f568d323f9bc0fa3c8d8cc52993f5720f5da18e18fb09511b938e499ae947afefe87eec6ec83653e8bb1b1afd888dfc69229b49e23ff38931809ccd70 SHA512 a24dc3780e2cebd6b4f94a1221b9809c97c2f413ab9987a0557cbf4f65c3af00a545465ff69edbbc8c459f43134b106828506d0d457ca0675bab39b88a36b330
+DIST gix-macros-0.1.3.crate 8674 BLAKE2B 0ba44a99696786edac83ac49ae4495ed31dfcc4c6238eb401c6ee98c78a8f8711727c79beaead750420af827566b9939b994e523ab8207173ab5f2ca1956c016 SHA512 660a63954a614a50b5297f9dbbf775f600c9214b1ed99f57a6d654a9f0e7886b6924dff8a3ac3ea69cb3bf56d9d43de98514a25bb61fdeb71c40cee4a193acd3
+DIST gix-object-0.38.0.crate 71600 BLAKE2B 001aa11f2451021c52bcc74637d8b2fd830445637b679bf3469c20ad8ce239c4dbc7350ad78720ef5f3fd21ec96efb74480d0c13b83c36f0333c2b79a9e367cc SHA512 183ed8bee65c02a6efb9f385677e065c2fb17b6f63d7d43a7da7901459db41b3daa8f248da891eadd8fc56c05f3c7feca8e0c9a93c5669781ae2e3b2e1be8c3b
+DIST gix-odb-0.54.0.crate 147975 BLAKE2B de5eee2ba39e2eb5b4d64594f227851d75c535d35677e13bc58573ed95f8c083a585e125e3d0fc5562a9762b505f1f85ec419da2f4efa7efb23ab5cc77fa2b66 SHA512 2d17e092a132dfee2172b7e714a72ff006cac3ec41858ef29ecba4c4fb9d0d9afb1c20cfed4f3d0e898bd6e80a6447e835a4eb2891c8e8ee704b1d6c9022dddb
+DIST gix-pack-0.44.0.crate 152873 BLAKE2B 819ded1512c6e5906034323479e1b834e3103eeb49cab237292eb9ef34bfa7d5a618555a6ad6ccb88abf2e4a9d82f144a35b5de69d0f6a69b17ca47b2078a648 SHA512 172615be848161ff12c6c5e87fdd58fe97ebb8c4896e93efb8674cc1fa5d66eb20500ee7337082000e1a07e9b00c68417b5d5a6ca9efb86c0a0c58c393198fcb
+DIST gix-path-0.10.5.crate 13884 BLAKE2B 98d6d25550996a4919d2403b472799cad9d5deffbedffa9430af8455174148e40746facfbe8b20e28a53224fa6d448042ba0b8963c357c31c41f5bc6bdffc8fc SHA512 9bf0cd15768ff04822576f119ad52693cde5b8a2b34dc45cc0a186d44a39ba9bac6721d812a8f22e348326cb6c8f6ee1138a784db8c2f3a5c764c5da9b3cb5c0
+DIST gix-quote-0.4.10.crate 7051 BLAKE2B 32723b75c91a8fab5c91384a37a0871b4b48fe8c76e102063a3db80e7e5bf42b480596aec361b6d7f5421b366e27f496558cd7212ff284a9853230eda250e6ad SHA512 e33999669771334d73be92fa56a1b1ee1b538065426826d43dd460f097eebae93dcd42141cddc0de9876600f21f05e6e400dcb7db9828e8e315012cad39bc6d3
+DIST gix-ref-0.38.0.crate 122861 BLAKE2B b6aeb287afff51f46cc70835f018b303489c460baf6e553cd4ccc4619f394d80fd4d5e2d17c46736dbfbc60d0a05157eb541709a182dc443513288c9f4536f17 SHA512 94a416e5bce0fe31e89d886da84a7a1638d59f167ff2ba32ec2f321bf0cd4397bf674a8471673bbf0066cc6eb4f965c570a739d973ce77778d3c1ad32a394483
+DIST gix-refspec-0.19.0.crate 36873 BLAKE2B 1911247e0bb765bae484adefee947d08fc18c9eead349661264633f9952616e870e4a70838b3de2c3643acd99363819aad56dd4f41ecb53d32ceb6ec52760ca9 SHA512 1031094918672e3a3a177f5d2b52f3b2e71115b1a72ea7d1360a8cc71beae761f4e894f3c00d422d4417014a3dfbe6e26ddd48fa745785de46d74df98d55baed
+DIST gix-revision-0.23.0.crate 49397 BLAKE2B 915ecd67367c6a56319cf18a3a449dc668f3bc18c1ed95bcebc3b42cc6f2189b2294dc88e954d0422418c2c28519b30f5d56d1351e08720a73f05cd85567096f SHA512 67336830c7a2c579a5c9529c45d7d4c0ad8ca55bf9966e801c73e62a22a4972487838794e9704f642ffd27de111b9055448775801471de16f48e94775384fc99
+DIST gix-revwalk-0.9.0.crate 16395 BLAKE2B 094ec6792a9a3f1b8b144a9b96696201d400b475023a6dd6b27f90b7fce63c0f2c77d0ae12eb86bec7bc2115d067798c8ec9e0d6bc1e9006e3eddb60446db5a0 SHA512 304547481d82db8c918c50460a7d198be5504ef796b979b02e33eaae64b86367dc4290fec494951ed8860fd0c5240746355471a4c51f3ab583105cd85ee3ccbe
+DIST gix-sec-0.10.4.crate 9340 BLAKE2B af427ecea73d1b2c91315fdd3f614f6d08313d4514259a668f54873dae1b35b632f5501e9ed9bb1da8827227ac7300031a4e500a05c1c2709f2b7850dab48b44 SHA512 536d4538086c61b95bf31956b76622b280f5e6d6e2157870e5c81c7236d9284f710283899b2082cda3f996349e18c6db43a45fa3927218abccee7ac4ae0790f3
+DIST gix-tempfile-11.0.1.crate 17170 BLAKE2B 098d8cd6e74a0a2d81eaddaa0a6903a3726592921ef880bc770c759e1f2cdfdcd597442140fc3566503b2bf5bf0088a0ee1b154249d8612c243512718e0d786d SHA512 117e04096cc7f9f6eaff847bceda0fcff5eb20f7994655e671620422a20195dd85bdbbf7fd6bf68ed01c45bf5b3a339574dabd5842758ca82cdc5401c48d9d3b
+DIST gix-trace-0.1.7.crate 9647 BLAKE2B c8b887a0d42bb6786b12f88388e017bd736ea13ad29a47fae36c472a3f750b653cc11bf01460e2ad469204a5c6871c3dc08ee4be4a09c3623029e4941a5c6fa6 SHA512 de4c5f7ee505bd29dcf5da523503eeaf167d6a9c573727032da10f272e3aa47a9dd77ccd393f117ba531c5d6dafc2213eed8ee13670e6ec80dd27cb56b1476bb
+DIST gix-traverse-0.34.0.crate 37889 BLAKE2B ac78cacf42190fbeaf0eff8031be20c3d3f9a5591730da49a772559c0de2bba92cca945a5f0f8327af4f647320701ef4514046e720469c634433db4c62444775 SHA512 8ed405de94eca49911b1df90d5dbe3d4640573d2df2017bf195da62b9c900ef607430154c9e8200abceba9309269340ed47ddc66051368c4534bc3a8568efe7a
+DIST gix-url-0.25.2.crate 13397 BLAKE2B 3554c667f585298e06bd84d79f0cc4e7f3ca4469e537fe15e76a4b847f845dd7734589892d024af0e7ddd202b0e7b039a50cbb7aa293ad65ea631f4fbdde4fd6 SHA512 2e71f2ceb8de8f850dd8c74f606c6ade4b91352909e1d0c870d10d70591ecc5c139369479cbbe603192c0d2ad18e6518512b9021c60eb15dbb21c1d5c072f8ac
+DIST gix-utils-0.1.9.crate 7295 BLAKE2B ab86d9f781b2bbf46da03e9260658b2503576f06fa30827839d8debfd2b2b636518e4751994e3c63e395f68dc7849bb06415425539bb72ad0ace66dacab249e9 SHA512 badcb82a60f5ea17dfc3e97a3d0326e89c49882c8b92833db8021203ec8fda469a4e1216e040bbc070b78593202cf23a93125c522dad43b0c53c87d852a543ff
+DIST gix-validate-0.8.3.crate 7006 BLAKE2B 8fb539e12b605b74c39e1d2815785dc4bb013ec60a6e7e22ec8fce96b4b65429d34ba295d740e74498dd5cd31157994ea1eba0eae77f979c33c104562e988211 SHA512 a9011a0e0c97c0531c7b984ddd0996f753b03f3ecedca54e01be1b5a6437b456fa1df487b1c70c610dcf9d1e1399693a375c88533dddb55fa072d8c6d2b82720
+DIST gl_generator-0.14.0.crate 22330 BLAKE2B d2e84bf81e7c4e2869c3e23872bd86466ede80d6fdbdadaddafb1ae9ab45672613cfda319b15720c35fc26ab103ba106a997ea6f5d4654bc9db19fb86f20d765 SHA512 98779d525a042b47ac373340c6fd2e019a670a5bce643128ae2cde2021c0bc8b2253064819c2b0ff444e62bfb3679dc70f11f268c660050cc891063ed6b45fd0
+DIST glow-0.13.1.crate 150940 BLAKE2B 30916c62bf166cc5aa07cf2bf7f91b80d3580f0e7d16d43d77e185dd1fab17c96d1a20e7a018725e6822c2910776d27e57bd52677886461cd22b5083b9a605ec SHA512 2a7975f049fa7292dcb15a6f7d6141aac59a316f97a21c4ee65a6cf91594f8340b74a3e3135903be4dae51e6ec73892270531f0f76140dcc1534a93bfc46c49f
+DIST glutin-0.31.2.crate 66588 BLAKE2B a3fa1d5369321ca1925d33b00b00a16da551de590e490118f15a32ec447c72ae9e1865f85fc83cf61c7b1c63990722aa6b1bea0ac0bdf270e535930ae3af05a1 SHA512 a7c4d61eaec34ace3ebd412420ebd9b6c149e512a786729364fe422d1ce107e2b5f39b36f3b95c9215635d47858db2af63ed336bb82921abb09752644d81bb7b
+DIST glutin-winit-0.4.2.crate 5483 BLAKE2B d19dd59eb455597abda1f55f4164a33caafe00b9321bd796818f09680ffd4812988d48782de342121bc5e65ed6072646d329e9ab7be25a77aaf577ef58a90219 SHA512 6914a8cc84260cabb92304fc1dc98517780d7f2559318563634d4cc6e2a3a287f809aa187589e4212f93f01eb642a2ac37456f49170a6b1c7462f7f018f8fbc2
+DIST glutin_egl_sys-0.6.0.crate 6261 BLAKE2B 3f299883ceffc8740c8b144da64b5962b5ec46c02b8881b8b2182a3722c8f666ce9969e4126254bd8b2ea987f9ee956f1f570a9f224f1d8920bf60ac9fc12f84 SHA512 93576abc5f06d95390de68bafe002b9b8f157d1034229f738d53ed235e5400f2199601e2859682d707d4eb0a854840e90919a56cbd105fd84dc254480eb38c7c
+DIST glutin_glx_sys-0.5.0.crate 5896 BLAKE2B 626e66d906326839ef9992617cc8df21cb15078c91c36b54421b0a3d5c3a663dc1c535ec5cc57416b94dc6353e592c749995dacd90389732cec919ecef9acab9 SHA512 d74f8cfc1a261eb3f03aa1bb778a502bf82bdc41ea992a608176e1635ab152680f7e3e305ff3ee75c4bdfa525480f0137f097d71a0f0572c9fffda997fc7d00b
+DIST glutin_wgl_sys-0.5.0.crate 5469 BLAKE2B 853aeadd1e7a775deb075116d08efc0b17e7032e6a41bcfbc4ea87cd3c466596f083042e3b213f1e33afa4bb106ade7a64f346311c0c1cf6d228820859887a5d SHA512 a8f44456b66a95627f7d0fe3b8a79270368b11343a9f34feeae5675af0e0fc1629b5ccb00e8cddae21ae8e71f61028567d806796595fb94e02b31dc1db03d521
+DIST hashbrown-0.14.3.crate 141425 BLAKE2B 23c63a99c6c6b7a6b9b9e8bbbc7f1e342e1eb9d7582fc9eb408d3eec50c99f34502d450170bcfef4da7f2b1e743e1d1619875ec879e4753dffcb84f3c10dc3b2 SHA512 4d344e5c89ce58e04668b80ef10e4e110a3a5daf4d610c52d980577795d0e2050c7d0b151d8ba97128117665e27b92ab0300f85b88bd6e1de943c62d49249356
+DIST home-0.5.9.crate 8760 BLAKE2B 02277a6d0e54a88e62a50ceb5b50b08cd5dc1ca5ddc17a799db0f49a17fee8560df53f616ae22cd16020ae2a89ce7c6ec22e5e2c0d513405bc2859a6e3ec61f9 SHA512 3f1f7b619f1a47694cda92321a11d66ebbb2dc0b0c33446a7a4b886f547ee88231b61c038de04bb82acd50e617f19b5085893b8401206d32cd54502033e04bf1
+DIST i18n-config-0.4.6.crate 7890 BLAKE2B 3abec6eb04d93120a89ef697cb3b3f2ecdc9cf80a2d12dd5609f2bd6db74a72d1a3a0157ed06dfd280a6b14e553583f93a4c8dbd0d474b6609af71c6f67ce84f SHA512 f82a162dad2107372d6e0c910458ecbbaad427b2cc40b25c6c6561d3a49e3b6620b63b2327e1f3a13f1d2d21bea3b0f18b20cf10c138d989b047e281e38a3d7d
+DIST i18n-embed-0.14.1.crate 24987 BLAKE2B e6b4c0082e652188c9a18ed816f4cc0e295132dd5f7dcd6f7236bf62b0927690eb5cf3d3d8d00a86d9509bbeaa28df6867b61854c5a557722e1c91ba47f5331d SHA512 c34a1300815bdffadb5e86ccd671eee22def30882bf81d885f8270908100c3fa81696b7e3729f27854a4fe49aac5eacf97b69f2c9762f181e139b677fb8e9eae
+DIST i18n-embed-fl-0.7.0.crate 10410 BLAKE2B 53a0d7822f66bfbfcb8d3b725dc953c8f354efed3fe7a55ac69a97908bf9ce6569ff3897a1b9a82df666feded989253af389d0fbe1d36b27e96302413885cbc0 SHA512 12a1b5f7959f081e1958f36778260f2ce7a0bb5dec5e95c5d6da6eecc60c31256ea331987576acbb3ce083e5aaf8555934f00e5a06f3e10bf8b02944dca0c75a
+DIST i18n-embed-impl-0.8.3.crate 4712 BLAKE2B fef9de75eaf4fac7d126da7c2a50774cfd8d98de72e45a72a65d6f04a8d1cd7f3be2741629c7a41406001ae7eedcb1ba18b4b22e788301327e480b0fdd9f7bb0 SHA512 4c0099cd83629b8ed89ab124f519a1100ea59e23899db7aee189ea8a5495c267bb321377e4be73684329db3138a74fd6a4b3b616c22af50a50e7ee5fcb27022c
+DIST icrate-0.0.4.crate 1040120 BLAKE2B bf09a1f5e4dcb6b119f158a6d7c93124d7f8a2434fbdfa19e356c282a3bcd2c191fe028f7c45becbeb313d163339106f8999c159b33920f90d70f7e09123d58c SHA512 2aeb124d3b303311500c163a33b033b8cecabefe53f50da360178c320d884e3b11d064da11c52d7ec87e97d4bdf6e6f47f71d1b7609e226fa3910eb9b7e270fb
+DIST ident_case-1.0.1.crate 3492 BLAKE2B bc79ebeefbb7e3ed1139e3f41d8d20fb175786bb123bdb9c1a92ea70effb4a0e5e798f24b068cd66a1bf20d53eea4bf24de495b5568c2d649ea804389a1327ab SHA512 81003a43f18da5997d644319274502e2066af9f9fd1400afda7cf2986b3ae0b7355b932302723cd3bda2d46b264340434d9279dea58425bad13785698d5808a9
+DIST idna-0.5.0.crate 271940 BLAKE2B 0b781c2e9bf717af429efb53bdfd18244f2b8c58e5111c3bd3bee50c8a01cc747513fe20db75c38b6b771d5845647bf6c1849ae6667766c9623e018c1f399a9b SHA512 bee6cfbfc99859b113aa8c7b487429a836dabc4e317980f132d28ff8333336f33480bf9f8b186a07115eff33024cd855bc85d346fce85e17c4132e886769c54c
+DIST image-0.24.8.crate 9271035 BLAKE2B a467b3e571b2eb1fea297f3eced0179131467d5cc766a29dc42e6c13eef7820e93a0097fcbcddf3e7f8416fdfabc072f0a6049a65bc4bc5ed571073e5cef7ae2 SHA512 808c25e1b2308b25afa727cf510ee5b5398cc3948e647eea7cd4e651857d158462190a39c2e1d5279c8c7a5144efdcf1943e311504a404d801de76d05692a88e
+DIST indexmap-2.2.2.crate 76160 BLAKE2B 1b020e3e33204e9e0cf15e0b91a600296147432002e94ae1061f1d7511e3435a29c1c0c438933eb6a56c7c522cbdfff29a106622041815cbd706b9515e2ab82d SHA512 814cffe0e586940c82c152536a970917ec8702a9b946151ccc8574188fa2cb0fab094888c0e910917c99e37f5f53723ab799999fab4bee395bca7d45adeed40c
+DIST intl-memoizer-0.5.1.crate 8292 BLAKE2B 32b42caed088028a254c8eca21aab5b44c7e4348255c09009a9e97f205cdb92743c9355f7eabf132bad1a22c4c30335708f1da13b3658a4f0eaa7f77f2721b14 SHA512 3f505dff396039da10ed45c1b99904601dd4784900c0b9f1d0c73d99df656998c56c7644c8d3608d08cf23516b9e35018acdb810e8add48b8435da8e03098a7b
+DIST intl_pluralrules-7.0.2.crate 9201 BLAKE2B e80c46d863296008c85dd8738cb1140cd246c588daf2ed531de97b9f07f02d44ed7fa36fb61c05f717d59b870f924745a4babce25f6bbf170698f6d21da50546 SHA512 e03eace1382afa6704cb2118701c2281628c15df753687079eb02cc13a8f80b07c122b44618f2fa85438cb7343eb676f3c09e08216589c480deee36e7896eb43
+DIST itoa-1.0.10.crate 10534 BLAKE2B 8ffcb345d07070cc01651fd44c19f3e0659185eda733c407fd4be0955a301879ae1272dae7f425279dae8dcb7f7dc954465c9a09b5c521938a503d34fecfe2a7 SHA512 fc496be0873e31afa6ddf7f2958030f8fcb517cadb86a48280a0c50ce50460afda189af1e6c26e5ff6f85c750d772c21503864c32b526c4fe4bcdb5b07918538
+DIST jni-0.21.1.crate 105028 BLAKE2B b384973d4d991de027da3f0c27aaae33a5d1f2ae8037f0121e8c637a96382055611da753c14732cd9fda56f929b307c988f1c3f6bc2c7617e2e5182a66a943b6 SHA512 46897d5fb968e598fe39179307376305f4604db61ea5d7f12050506a6813e242c05785536528ff2d59de8a3877f6b24be15c30f451f1bec40a5c72fa3b772835
+DIST jni-sys-0.3.0.crate 10232 BLAKE2B dd6334daa6db9fae6cf1b31b9c13f09f9dc3f6a0e227bf6779880a6e197189d91583cd463b9876125cf892ffa5f8417dcc51aa010cdb8c99bb4f969990e969b1 SHA512 1e47582ed4dcf608ffd218549f1eef5ee3c87a89e28c65eeb5bba801edd6cabc0f095e213e8df606e050a57608653a59ced6f01a8bc76a5eb32ba1a337a63321
+DIST jobserver-0.1.27.crate 24774 BLAKE2B 259c854f3cca79f769dde0a796aef4dc135574d816e7d0b8aed4b3d4e09d4eea600db30f7c8a8f7c68c9040efa1ab99029b1380ba6240dbf21634e7b5ad141d8 SHA512 2681234952be7a5ae67770d45f4d52e8278347f79b349bda594626712b1fba595a4cf46e8fb5426b548c325a23243facf7fbdc01ae0e853e492aff39444879a5
+DIST js-sys-0.3.67.crate 80764 BLAKE2B aee8b96c8c5811020b3ee4277524902e27d96a027add7b21a8ff94eaac7db15e8de08a9e203ff462b05ce10d0a44aff78a355c07514794e41f49fa936a3c8fb2 SHA512 590d947a869c3435166e34c25b3011351f6804b43887ee76bc2be69b7407b5181bbbc3a5bf6c50867c65d73fcd8e65ac7b0d395710ccd52000beb87f8826be96
+DIST khronos_api-3.1.0.crate 599718 BLAKE2B 945600455c85874c37c7c395162a3e56531b417a1e6ce414386ecf31f8951fb40049604c27d719014b5379028e5da25fb9977c7487433cebcee4ccc49e00c7d5 SHA512 f9ed9e1bac648a82bc608bc7df339d3ef1db868c8ce8bda9598926839b3de9e3c11c2b45886b9a7dfe5ad6900770fd59c690bfe9a87f7c5b479945ffb8dfd292
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST libdrm-amdgpu-sys-rs-6852a973c639385988ce0454b59dddcf40ebcd2f.gh.tar.gz 117442 BLAKE2B 25d176dd1375e45665ba1e9666258930676551d8264d2ca6aee80c0e6d8b7031efe661bf98982a29bd3e10faa3d7ace384488221d71d5230b78b31a33710890e SHA512 59ae9f614dfb7c02d8a0cc48b968c1e8410ab01ec7d0ab6301e8b6b4876b99e5601efd6406f2dedc81ab7ebdb90ab54c1420e35746882f8c9da4d335f6d9788c
+DIST libloading-0.8.1.crate 27893 BLAKE2B afabb6e07ecd390918344388b5fa63e5aa9223bf3ce513d1ed94cf02b1defe9909d94f0fa05e1516a39dfe4f41636834d3de0386b3c58212103263f2b1423f76 SHA512 f17ca367ef8e62fe80f43e5f3e2d1585be7b78b0fe4a733d80acdde38c20f9f72e710cff082442de6afa323aaafa17eda4491c4430b2d12f398d420e057cadab
+DIST libredox-0.0.1.crate 4212 BLAKE2B fecbb90e2842a69f3967bb2a09b0181dce1720b60c5d762a334a279b52c00a9b4b52de72c6484603981c0c3e1cd8e173ef5e15fa290ce8b8888739204956be92 SHA512 31a9234201f5128f1519e108f7424d1740a67699828265cc725304a70f6a51e139f1d0c0e626b487857a7b421f25ad93e81b95b65cf0d3e0ad912388deecfb41
+DIST libredox-0.0.2.crate 4538 BLAKE2B 3b160b1ed9a476b1d51fb6a107ce2a5955495cd862d01854c79ac4f1cc1aacaff57f83e03be9b14f3c8fbb67c4124946aae19046620eb968fe97745d8cf46fce SHA512 4c321f6072bc4d6c32f9a2a8bc3ea64443e1b1b770e9d2626be86b3506cfb804c3cbafe376c7300efb09788510a57a626ffa65c9eecd447a2ad29532c307dc9f
+DIST linux-raw-sys-0.4.13.crate 1493855 BLAKE2B 1298a038276e2424eda9873c642fb43d864b343b03b7962446122d2dbea94d58d9fb2b93e890769e6fe4092378755413ed6afba81ce56fd61e512146e44148a3 SHA512 3918da6b667a08ef8a51aa0b087129e2dc5ab101669cbba7690fc98ae2659a36861bf9410a3b87d18522a7549d43ac169b995ea192d3073f7249305a809cac62
+DIST locale_config-0.3.0.crate 20808 BLAKE2B 68b0519639c816af82b941a417d4a74896033e9c5110081d495e1cc3a3e7613ddaf2a665770c6199749b89be131a35592dc4cd7cc2789928199b22205300aa9d SHA512 c7d77156e957559172f589f90405b2e9f5306041887990a60a31630af2de81c00fbba2bcdf52bd163fe431f85694dc6d2d380671f38f2724d7e4d178d89998da
+DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST malloc_buf-0.0.6.crate 1239 BLAKE2B baa59345fd372db162773adbb441caff1f6bad965c3681f244161deaee76282fa09b9af0d0642cd39ef35689f85f5bd7c2efb7ba8119a58e86c7cd12d81b2c6b SHA512 463b3d7666cdd7de618abf0cc4e488060c84d6d93c56d4e922169511a0b03de380ea988cd998f5a162b244088902198763351ac16dea3762f0fa0840fc29d6ed
+DIST memchr-2.7.1.crate 96307 BLAKE2B f1a008fbdbfe84852a8ae1d9d9574306b1bf120dd5087903adbcca6af342c9abbb296496eb9bf6cb58915c4444b3edd6ca4e27131ac7d8aed8849815df87a944 SHA512 5120496faa31fc427c8b4178461a262b3a34d70eddb7ad17a19d6db8b9969c9e113d3625b5e6dc677087fc80907377b00ba0421aba9a92cf73ca2849d932f473
+DIST memmap2-0.7.1.crate 30741 BLAKE2B bbeb8199ad5f004837c9fbd7b0984010ef73b6959dac537a5b0265b6e16720a220bbd37b39cbae3c576a39bb2fd4b43bccaf7eb59203eb304e29e7e2b25d0a30 SHA512 a264ee152bca45af4ebe22fe30330c1984a65b064dbad2bd14c66eaac5053f35cd7569cf10517d9ba98fda64e468e3a8e599cebb107a627975417283e3530e17
+DIST memmap2-0.9.4.crate 32752 BLAKE2B 1b21af908061e6fe09484ce5f84d31ed1751301dffb6439512b38c53f9f090cef7541b591b968d0207c6d8351ee4d5949007caef7832ce130ffda1b3716b5454 SHA512 8bba078dba73253e8ee88f0bd2202dcd2afd0b7b800d08af8af593b882cb4acff7e297a3f299e253f5adf103893fc390dcd73e882a2e7d93ca96099fc2eace4a
+DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
+DIST miniz_oxide-0.7.2.crate 55731 BLAKE2B e3cbf5983025bee879b8a735fa2912db8975cb60f0499498a73ce4375e7d452c9ed62d4b0b6f6a4fa591aab55e5d7ff20033baa007fd6c839b9d74b31142c0b1 SHA512 2f8f09d7afdb9d78bfc80a228ded85a215fea05e577e907921f1808f84aae30ab118048d7b53295f11aeb5de70ab6cbdec892f3a2417bedf6f53a4576d095432
+DIST mio-0.8.10.crate 102345 BLAKE2B 82bba95cfbb51a02efda75dc85d973825f038f7d23e7fd0a93a60293fbafd304ae064f395a1aeb63a1bc7bc664a0c0dfa3721ac8a553ea5161c0ab2862a6edcb SHA512 680371f7da07824fcdc1e8c10a6771a71b97308c47bb5b295e0338fbcb56e211dfd91e1b400a080984c57055f08db24ca675c167f298a3dd4842a185bde62fb2
+DIST ndk-0.8.0.crate 79770 BLAKE2B 82ad3258f730bc26f91cfe231b3bb811de466ef30244b963c7b78f215cb396a50528129773a986121069d058f5b1d79e7aa8a18f4217e371428520f95c934301 SHA512 bf666942469ebac77eb2ddffed6a276098ac291d459d4b544920fa6644e9fe71a41e556d7d46ae2c23b46865d2825b08d0e2eab3bc3dce2e6f9b2d5786f1d9ec
+DIST ndk-context-0.1.1.crate 2205 BLAKE2B 6c1013410459ee13357877654303a04c2ee674eae77911d8c35dc7ebf3df2e8632440c26273f994f90f083fe20b4923240e3b9eaa2ae90faccc7e2f0021b6e0a SHA512 3e15db351492b3f1935424a4c119d878f5d771d6ca0cb6161e4105b263178e96e41cdf1e927e5f3c81a281f55dee25929a9cee911eeb4ff307dcd31fc400398b
+DIST ndk-sys-0.5.0+25.2.9519653.crate 307233 BLAKE2B 884f73ab15acf81b238d0ef06b66942949222506ff0f6deeb009348ac8870b0a8e74b4015ceceb2bf0611609ec4acd0923c2724b1240f314d0b56a42213e0b44 SHA512 380a6c0124df4bc2a835465506c1837ced58f1174ddfd89891c1784ea27508023543dfd229a5440ec1e593461e0e96b07557da72eff4b90032deb8cdf9db9be5
+DIST nix-0.26.4.crate 279099 BLAKE2B 41debf1f21427ad6c25c6cd26b7867feb8ba46366028c4b74073307e902e526543f536fc0a66db2cdc5a52fbbf9166a6a4843aba57e5e5caada3d914286ddd60 SHA512 cc68ff8e3e8ea8635c6fd4c0a866cf42121aa3e25165666ef3b97b5b2c1d9273cba6f689e80eb812b55b5ee513390924a926d95fce45de0a74b98764dd1fa27d
+DIST nohash-hasher-0.2.0.crate 8051 BLAKE2B 5f307e2bd15580f398d53d499b9013a6c62becd4ef0d3edb76f9fdf83a59c8fd86ee4bcf42ba3a8d67bbea522db65828fe7fe324ffc8d5008428570d7b2203a5 SHA512 b1b754262471ac1fb074559c264321f8f08c46c55752187f51a93cdc73509551b43008751ff9db4aa5b47fbfdda783904f5492349546ad14856fe485ccec55d8
+DIST num-0.4.1.crate 9522 BLAKE2B a7235566f657ea9dd3c15d4cf5ce85ac94f9f0e15ef5f4dd4f6bc7f8f09b9f654635a61785dfafef56dea980ee1f7441ea6fa366e51b9db707992a6b9d036bf9 SHA512 ea3b49c1b7a361266ee44213cd65765e58bfc51b9e805bdc71bed120a3b43f87ca60ba81b231a2c9a0ced617e10024d4e0961d8a3a52f26dbce1a22d550b7a84
+DIST num-complex-0.4.4.crate 29564 BLAKE2B 8ae65e8f2d87de96ec0a3d0e6d580584aff8cfbd0ebe56272dcf7cc5eea1b545fb9d597cbe4b1e25562b99a217a03ceef60e6cbda47c1e8cbd29b38d16cbe428 SHA512 632f9486df426d9254d2b6484c560b31e4ac0270de85878b9c4d14339a05ab318a90019f0724d2fac4d8496b03680650f899cedb1741c58eb7536cf3732db600
+DIST num-conv-0.1.0.crate 7444 BLAKE2B 4f5c4695006aa3ae77aaf5c55999a07d8ddfab294584fe10d73eb6abbb3f551846646156581599f966a28c74d80d3ac4373c49d2099991f7ed9edb56d36feec4 SHA512 7884c0c6599c66e40b9a79435e1bbcec60aa7e68b59686922dfab19ccbcac6a6e54f208cfb3d5a8a12e86e4dd67e09977d60b69ef6940e308a28256733f36100
+DIST num-integer-0.1.45.crate 22529 BLAKE2B 4da3e801f71ba8f92c692497e200bfc8d32183c94eaad91260683b09f4697c03175fec7cff5a9ff3782d5db5d514d74f22f7a61a102c0f0d2e67a7a4b4f29222 SHA512 731bdc09c3af7f9d8b171041f2957aa60facef93b06886000d8ba60d410aabbbee358d700bf31b2588b2e077464f290f24a0b712df7bb7f12972675b6c9bd735
+DIST num-iter-0.1.43.crate 10655 BLAKE2B 41ee6d80f38f0767e134835ac84dacee8b50395b29c3e620b74cf4a843cfedfa71dc690e787b291a2b08750cd8386f1dad768e1b506ce088df33cf9e51b90a8e SHA512 97ac20f16d4518c8cbe944e5c80089fa6bb75d4632fb9f3c9d9891aaddb0e0f2209f6e854317f3d3b41bfb330c9d3ed830f3797f0120d4b1863b1d6fa3b9c07b
+DIST num-rational-0.4.1.crate 27889 BLAKE2B c6db5b2165eb341268cc8b81df44caf25a18242d0ff1cc0959444ed9a51ba9985c1238d6d79433c3927267ceb181da6d491bf282560db6bafd7768b79ec65842 SHA512 a7547ca663543e9da9e18dd079762cde371b85d55874a54d6b343ba775a9373392c85cebad511c53b5af5db298bd5d57ccef6161c1c28587a6c9fa2c5962a0bd
+DIST num-traits-0.2.17.crate 50190 BLAKE2B a549ef00c749dc7f276c4817477d1f9dab70cba01b6a3afa5743f16f16353bc50d992d7446a54859cf750a410d66c8cd3440708a6b91fd89d3b8889f8fff1668 SHA512 4d47d3e2f5a31019e038e609897cb0cef1ba061b35cee7e2a02e65179dcdd4960bd5b9bc759b5c013d699b3fbd9b014940a15e36658f7d4fd12cb0c7841c5b4e
+DIST num_enum-0.7.2.crate 18571 BLAKE2B d68d127db218d8c4a34849cbf64a8dae823e9404bb4231504ecbe02236d04d96ac161c3dc6e400a05fb458e42bb24418ff08f937335d37839b0f9174e3a5725f SHA512 a002a35079c81eb39945b3b2a903c1d904924c8417e12f54b9825ccc04a2f1ea1b1b93ec540c746926536851c2f6a9aa71be3c05a29afbd5924236b3e7874389
+DIST num_enum_derive-0.7.2.crate 17090 BLAKE2B 708f474f6be67cf1f3a63d989b6e84ff33a165f0fce98a2d82d99eee71970f2bcc2c9b58395049d0b6e7e089446a9155ae6b7d6621895326c48049416b5817f9 SHA512 f3d825aad4a04bddaa42d07ef4dbc69c793cc53999cc2b32ef49fb28499cd812896e0c5b89b9118d9def495de0caa05e473109a0937876da4c1a628964a8ba6b
+DIST num_threads-0.1.6.crate 7334 BLAKE2B 416efdf395b0299b6b01e1508823afdda08cf67ca54e1d644fc5accbb0490945a492a34bc5ba70c3e838e6405d17ddce164ef87468bd9da27097de8994ad9577 SHA512 b2d9897e29e59353379b6372a629fc7f9afc89f777b4410eaeac7b4729527948a8dbecb175f056899f9076693ef855cc0d40e725cc54f28af588fbac5f7ce3b6
+DIST objc-0.2.7.crate 22036 BLAKE2B 14a41a5ed6beb100d68601af12914dfef67a9f580f80d70c4578ad9df98a6b4496bc3a1003dec762a27f0ae71afe2c9e8fd41ad715bdb310722c8fc092563599 SHA512 7178870c8e4e9154b4c7b4953b3164946b7ce72c956a02b9ba18889353c72be735824bd73e44a485e42ad5f97994820d9153ac684629342755a6a63711ab5988
+DIST objc-foundation-0.1.1.crate 9063 BLAKE2B 876dd217b612278a522f2d08434537d468f8b0fd1efb0e58d0b58216e20f7f9fc80a5ff034ea25d9216d4d53b2d65552684ae5d5212f18d758c7937c91742a84 SHA512 976dcab4e62ad1c387a81723d70b969fb7d332e1f7dbeb2ea9a26c62fa999d91ff6d8f737ac5725a7611334862df16fa8b15765c036d7acfc3e42a745d051f34
+DIST objc-sys-0.3.2.crate 19647 BLAKE2B 217743bd549a7c3ca76e204f8706bc6442f3cc354bfe91c9bfcd5dc8780145a14d9c2b7b98412df548bf6bb7a5dfbdbe7ba5a946c5a1158b505f73efb754a22d SHA512 7cb71e8e11196065fdce0a72f0c903b635d28b673ae9c19529c0e83682d4c03d58a6d310da91fb7c953e2b184b5f02a639aed1da8546a700809579d73e039d3e
+DIST objc2-0.4.1.crate 162783 BLAKE2B 45c7475c07b67191bda93d9a92c40eedbaf662048d8aa04ef738494367f899903fd5157b0e2fb1092ce7bed290509e8267fe59f720e8eeccfed10668ab944860 SHA512 12968441fdb26a04f0c0e61195d92f13630fdb034148fc2223ab2807f960bb79a4860ada6d8a365b6932c871a27902d22fae3a61fc8efcfed38f6ca87ee8785d
+DIST objc2-encode-3.0.0.crate 17934 BLAKE2B 7522f62b00b69299a15a7f4b7e242b74c25d31b22bbe8f5db62b9533ec2ee5f7a0985ff5ddad02da50e52056ec2b829e24874fa4b74636442a4c124c35304268 SHA512 040421b6df9badbf50ed381775bef64719b508da021e036bb6de3ff09f513ba1751b8a5c663715e79d4e0bd2e67b374718d706defb7c30ab920412db8550274c
+DIST objc_id-0.1.1.crate 3258 BLAKE2B 9a74fc17235ffdd7987c2735a7a9d136376fd13355f0561b4ecf234784aed077d1ab5aa11c1a82fcee7d47d4d36e471ca4ba3e5bb725a2ed0049a5565967326f SHA512 ec36fae6f5cefda00f3e44618b3c9fe6ec8f528f70d1a95def6421704bfa128a6e5b4a32e9dd686bf6ff60c4f87fe8094aa5e1c8070bcde58b17fdc06f49f9f5
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST orbclient-0.3.47.crate 1324509 BLAKE2B 6596cba24e840b64db31ad9791cbfb60d82d46695fa15718918947040d9b8076d3134ad0959e1b7499c457dfe75b270e7feae9fc4474db5ae1a33c21e4de4009 SHA512 dd232376bef63b9d422949eaf2a210625c4b644faed72d58621ac8693ba6095c8f7a4df1a5d1743fca8d6d68e5aa44ccc0f4cd3dd2b2f18e7b10c263edeedb8a
+DIST owned_ttf_parser-0.20.0.crate 150890 BLAKE2B 47ac3309951c24f29151299512f0f54f96b22ed87ddb20d6f1a05861324cb0898ead8b12bd8c64e595b7cecc38cbe3035fd54c13d80ec660e7496fa30f573b4b SHA512 edb121dd4f9fadea578a11c2d9f323c66892b9ccb4b94c1c40ddbea1c57f83e6690b6cde45003024741bde8042f55e2119dc5b5b68e11dbc2a32bd58910ef00e
+DIST owning_ref-0.4.1.crate 12658 BLAKE2B 42bda4584b2f017e7b48bfc1fab9aaf59d49b8942eceaff6f6d95e5e1fd456d952693ef70ca1a496c48d3bfbf69604dd47adb97af31fdd803a6119f11503920d SHA512 15ecf5c53a675f7c96f850f54bea5fde63f8cfe22ad5c01941f67695154a39950087bd72bbd9a2f9e76825a3fb8dd1d20ba92335f265f4aa273e1086773b918c
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
+DIST pin-project-lite-0.2.13.crate 29141 BLAKE2B c434a336716c9cdd16ebc297fed393e9106ef167a693c4aa0b12c681e03141b8ba3cdf64c310916cb7d5cc43cbbfcaaeb39bb5fb1e8b3efb9e94a3f72af914eb SHA512 7f12595d751d315de6c0d380e2f501b74154661eb676987d2cab6fdc956091a68c9cac658df45dbff73615e982e6ae2ea138c09ebb708cd6c351f0d18dbbdbee
+DIST pkg-config-0.3.29.crate 20563 BLAKE2B ed0559b0073890911fb47742743b2586123bf9e9b594aa0d5b2c419c6768cd37e25b546c21077ea6cc02823a679b302aeaaca6c7fcaf9aeec615dd08f53a1f6f SHA512 bac7dafc0e10bef40e427c1fc0271d1a26acb2f5b1cf7cc7a128f4d4f1f3110529e45057b71cea7b0f6ddff26945fe08962285ddeb22b54639e44a2e43af698f
+DIST png-0.17.11.crate 98834 BLAKE2B 21bc47c7f96c135fed2cf7db902eff0941619ff79e34e439d9a63ebabc8c5967323822446417a87e8c63ff3fed2f99636b86268321f5fb4c91225f1f7db97b93 SHA512 4ff7ad4f207ebedcee68b2b4d8a8ce5bccc48a3931939dc13ba23b486cc1ba92cedfe227fc14a21e780fa74eca8c7dcb336b3da4f7474a475d057b0c98389a37
+DIST polling-3.3.2.crate 54814 BLAKE2B f46037a6253f61e15f809ca7d4a5b911c804222c721210941903f9a1717e8d788083527d2503105df22eede55061bab32283cd08f74276ef1e2c60666af4cb1b SHA512 0cb8009051249b32b6e1950a487f3d9d4673d4a3ee596a869fe9d99e9493b710280f1084fb4af5df3d2f3010e64cead4eb383ef73bb2ea8e5368bf8828fb1268
+DIST powerfmt-0.2.0.crate 15165 BLAKE2B a3e1ce63f5866f75526eeb749bec6607e42cb495bbb953082cde7e98e6aa429ecaa41889d98ff7ed4cf5031258b4f7e0553ff8fc435b3b6f8b4ef2b6d53d9b61 SHA512 0623f92e4d6ab284b3f6dae58220d79d9185df4a738999d68040c50d72fe0380d70358cb622f079c629bab53bb03c6e085e165d5bddfbeea84245864fed90029
+DIST proc-macro-crate-3.1.0.crate 11084 BLAKE2B 9a9d02f0f34a30668ba94e34d51199c332209c47fd8bef28c452924f75984dcf3aef2c92c4ab3fb03205d589e4f773d960064b4d08fdb2480168f10b84fafe98 SHA512 eb5ad763aa700f2cb1604c32a4bf2fad499a03ad868a22d06b0697b77875b1cc13c739fcf165b2bd547207ef6dc3bd13ceb75e1a59c596daf916f356ed27d8e2
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro2-1.0.78.crate 47158 BLAKE2B c56a24fce3faca9e04db7965cab552d2a976c3764df0a84179b5a89d1230ab355c777a82b4c982e3945414f1f0478473a88821dd176c32d6de394d73a26adb9a SHA512 11956fe03a2e77a925cdff2c3c8bc8804dffab4fa1de963a128fa23f4189976fd2e2102bd346b92c33524beae320b71dadaa5213695a3ec638404196e14fa769
+DIST prodash-26.2.2.crate 88268 BLAKE2B 2b8a13c35e08ae0bb12625430eab0f9057c3467551dd2efe4150f18c9bc1880ea19df8d9d835791774fcdf78b6020920d1dcacc26557be75c5eba15ec1388216 SHA512 46961db2625c5064dc073e31257758b4b9133c8169380f7e7e30143e648677ae62f3dbd16fe96d1999aa8b94824297184e99baede5f25ddf198535c3f9ec4a6b
+DIST quick-xml-0.31.0.crate 172236 BLAKE2B b83c7f485a30576027a4ae77aa23cd6284942d786f0f0a14faafdfecff646371ba15133b3ba90f820183c8537c8ac47ad3e1e7deaad65e56761bc662be406026 SHA512 9b1f4f9c32694ccb244938a9a4e9373c3902314afb6af5d2f6b1be55e5ec63fee5cf1085f8f32161570cc10fdd96f3375c7564b1d884bb152542b86593f175de
+DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2
+DIST raw-window-handle-0.5.2.crate 17063 BLAKE2B af6170239d2a2e9db62ed9450cee9be6350fd8f74d6344ddd76acfa873d124996dd8dff798a79e8c03fed50fdf26b2731b150bd20f8dcf905c8d68da351e0861 SHA512 51d93a4609533742178ab15d4454ffca1668e2a03c2a6e742ee2a61554564c74307311a50e3992919451f4f4d30ac112284413fb4310abbf06c0fa24d85d5971
+DIST redox_syscall-0.3.5.crate 23404 BLAKE2B 85aa4299d9816666bf576f523da5cdeae87b3c8fbb2af103e82258d23f73303c068a4b6c3ef4117ad67958cb31e41f836a9f59f2ce1bc52c23605e34399afcf1 SHA512 16f8f4766932bb54e4740cfdb4f0802f76246c0bf88c1d76c69c115949b124b625d8c3b85d8947073c2e9544f425aa16c10f71fabe3c03d29e424c47fe4ccdde
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST redox_users-0.4.4.crate 15438 BLAKE2B 5f44e9ef20f1a6c8b22239838f8f6a6648dbebd5b4386b3a2c417e39add8c4a0dc32e4369b8bb4e0ea17678140f596b9bc981b1d56f06de6a38a503600420481 SHA512 7c208116d1171b1f52f22aedcf8ad00076a3d1f062f4018f4a9f5fb2c38d7ed83258589062d1559f64e43f3e2a9ddf789799f57cf87a49ad8a37463ea09aa269
+DIST regex-1.10.3.crate 253101 BLAKE2B 390ebb00bf5430048412883b672d80737e783fd36f40895343cb38ef2e26e2713418c2fb4d66792bfd3be4c990b4518ba120de229a72cbeb7fd5c2af325fbcaf SHA512 d090898465013b0975a6de87fbdcdf76b4896578056f4da83424bd5e7832547a3d8ace643c379c4f14700a0a88dc95950a38645508d1675306c377879a90cf5d
+DIST regex-automata-0.4.5.crate 617406 BLAKE2B 21826731ed5439a12cdda5a1ef217dc3239a0884d038170855985bf830f2782bdf4dbfd1b1a8812812db3a2399dadf8c173e75db635dfabc97382fda0561bba3 SHA512 0e9681d5c4529d49ff2555b7b73cf234b1f321a7fc634beccdf76c2bce5094e8501403e8caee2b3a16ac299cbe4701d891f1efa380b54f9dc2d92bbacd4de611
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST ron-0.8.1.crate 63251 BLAKE2B 9d9724cff8df112c1590c0e66e897a277a7bf8a180849db4e8834151fb53639d424e19124cc9f3a5c4f977d49c824686c73f337e9ef0f0355acae2b1b43a4d14 SHA512 d0d9eb18632c2458dd3e8fa8ff365a818e5214c88a19c11421c208c31ebd75236bb20fd74ea84942f8e71bfbb02d660f965dd1447318b5372bd16d45d11fb920
+DIST rust-embed-8.2.0.crate 902163 BLAKE2B b4b5b0ffaf3257025d3daace48c6ee5140b10309aede853ddbe32d5afd203fb24bb612c7413df5431be913b42f936ef61550baa259b9f97d4edf7a8a76749e96 SHA512 e1e2c9e70f0bc7e725b7a8939348257b502320ffdd2ad2e39cd108902e7f95221e175d3f37b65b1b986f165564bfcb4076d68761ce2cfda0eacb030003bfa0fb
+DIST rust-embed-impl-8.2.0.crate 5374 BLAKE2B d47b1f3afbec36af5c92e7b3008fd1c6944d92beb9165453d80b42340fe4b395abed73b4067a7a4cb70a78b48e5ed52fffe03e933b09f85b69f12bd473357457 SHA512 af827347ae94d5a323931fea7aa0ebf699c71ec42d917cf8d5dd8325804b19b563bfaf5ef77ecfd2967e4ef3bdc6c62521b3ef079bc8c6d223b5055a60d6d34a
+DIST rust-embed-utils-8.2.0.crate 3397 BLAKE2B 3247d254dcb02f5256fb16bf2913612279a9f6df811f9432359bcd15a3312c9ad5cb39c00f2de1d77a05154292c33fc9a5c28702d5cd807de894619ce232f1ca SHA512 91686c5ca97a1cb8edfa2e7905c5f7b93718e14594436493b03fae9f4bfd48bc0d400f794173e1d637cee529af5131717554c3de9c79e44e7432b9395606333c
+DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
+DIST rustix-0.38.31.crate 375443 BLAKE2B 9e8ba6bb4eb4fdf0bacfbc719124f745f383abbabfeb161bff9908d1948942d358f46191377b90c180a2793a88bb01be20dab556cfabc8da8efa2533af8e460b SHA512 593e0395a7bc5bba949e6f2a5ed9e39ae13140970a598def32ab7d6d91b4ec100752fb05abda407ee2e5e420d950b19e607f963f3974213637423c751df75960
+DIST ryu-1.0.16.crate 47351 BLAKE2B 13c72ec8aa608f6c53cf27c95d06b90839c5bec5e54b0441e9c4f779af3dece30d01a2276c717a733f92406a5a02b09c045b2b5f92714fe492d7263b6c6808e6 SHA512 89e3e18346ae6e4035787766f286a6eb62f5294e39ad902cc29e95c53781c4e5dd629f567f22ecc7e9fe9d1c273323da9b867aadc9cd8a066727c58330b51b10
+DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
+DIST scoped-tls-1.0.1.crate 8202 BLAKE2B 20be49f0546691bcff3f0fc257345e432e200836a60b297ff3fe698699ef6a2fe8a5dc6977902a08f7dc63c578aa27607dae0f1889b849c257c59c48a458e1ed SHA512 342f43d53edd33ea3e2197faf5dce37bfbeb0b20b6f0febad4dc6244c3185df127b2c10488e95561260a0ef968f32707460f2d0d23667cebece19b167c0a0c25
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST self_cell-0.10.3.crate 7308 BLAKE2B a7297b9926d4351d4235e5fcc4084929751a0bed37598729ac519f23150464b6369ac055d3218f3ef101c9ebcd7b1b74e03581051d773493e7ff5f11e369f06d SHA512 4806034b1d28cfbdc1d47f32ca0bf9c5a87903d186bfdcab7d79664a1604ebaf8f709ac9e618af81323b247d0eede1e7dd8b113cfaf7a602250aa689bd2b2b6c
+DIST self_cell-1.0.3.crate 15147 BLAKE2B 9b53b0568dc4ce0c7372565eef14e593aa25e262d7501da6e4b8cd7807f5385977f9bd3563ed39a6fd4e07c824847d0c09a2a750024a800229c7a57ce5e8e325 SHA512 89a990f8a59cdbb99930ebbf9bb6566b77f03f1f551e49b207c865e7205541fd9f0342d284aca5f3d054a24520fd438b6c53baf48c43fa28dfbe8d79fe8c7e00
+DIST serde-1.0.196.crate 77097 BLAKE2B 22403615511a7621a9d8d54fd2dcc63878cd2de0e43bff6b7921db85e19f34ee5022eb1086890edb6987428cbb707a59277ae007d1536b5d80a7da615fc3f36a SHA512 0917aa36d855ca77726d538fb7fcfcf629722c784d747b3869c0d69444c447d7b1fab556a9eb9594ddf6cc508df636fdde051a1c3909f9c691e4921946ebda19
+DIST serde_derive-1.0.196.crate 55775 BLAKE2B 3d06b3896f0cdd1b1acdcd0046bdbfd1e8a298d6f07d12a2326ff144baaac07fcbd4af1d18b8b1188d4cc192e253fcd79860d1dbb2ecb148025449c0ac954c72 SHA512 f4df7f835e8416e4662c62a46d5f6e6d45ffd103812d681b220f8080310720e27f738a34a8e622df722fed55a1d8c654dd4abfbd78d1fdc871306bf3985baf22
+DIST serde_json-1.0.113.crate 146970 BLAKE2B 8d80b0fc913ba4f008175c6b89955870af6476dc8bae0cd711b748cd0a2bf67b1299396bbd492a1ae5a4ff8050fddc85f0a0ab54f7b24e27529ead3e3d7c920e SHA512 82571b025cd598fca635f18881b52db2364e07eff1b961ca7e3b0591dd41f95503f7188ef1ee6fbc060b9a2360cacbc8a5b85c01fef7879ae3392b29c0004b34
+DIST serde_spanned-0.6.5.crate 8349 BLAKE2B f4f8f798ae3a02c0d5178aa12a94bd1bc08fef88b6a81d782ba07ba36fb0d89927ecf621087faf376b6e53de12f6a96e0880ce0cd01ecc31c5dab7dadc6f3ff4 SHA512 bffe2398629ae5a5a5bb6d5fc2fa0f4b94d02c96e25d1be2fb9ad95d8ca2fa9bfdeb3af11049ee9c050e497f3beca108f03020f88f6de29b208063c3898af354
+DIST sha1_smol-1.0.0.crate 9782 BLAKE2B 214b58f6a8681399b9c925815f4ff48974466b399e96e372c9592cb139ba9306ba162b3b426dc12b585ea15b616fb58a60d253b4d928dde46217de6ddf7d0437 SHA512 75d6809a2aafd47cd5f5888f42283985895a9c82b53ead7529a23cd6f2484f32654094dda7a9e5d93e82afc9d0049938def1bdc28803502d140d06a3496adea7
+DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785
+DIST signal-hook-0.3.17.crate 50296 BLAKE2B 5469a11485362b4a76f99c06071c69f6cc083bf4cceea93fce0b43385163ac3621b7a3c98d18ea1fb9e1439460ea37f470a29bfde9dea199e60a12b248be5d25 SHA512 045ac6268e504c5561d3884610a48c930dfd936086f793839f42602e92e4a8cef289955776e8eba8a5ca1a91b5f27ccb3724f49b32091f8f06c8bde984d82298
+DIST signal-hook-mio-0.2.3.crate 9064 BLAKE2B 2bd11d0fad02fab92871e0129fc4ea3a609a43cee5d33737d82a624018eaa90077f2c92fec88f7b19d3ada619b8618f9d33fbd2cf6b7c63d3175dc57fb0341a7 SHA512 98429330c109dacbeca5f0788d993d1ec2830b6f95886a433592b2096508dfef2027d62a99b985654dfcd927f7f3f93fbfc19361f8efaef5efe84cbacfc1ab08
+DIST signal-hook-registry-1.4.1.crate 17987 BLAKE2B f1df8bba55c72a506b9210347f9dcac4d158948e73f6d1e60f43340ddfae368aff1bbb6a109af326af47246d9738d49f76d380c52208efc3c6f79ea0acd31f0b SHA512 e83acec2b0083967555f6c659dfaacc32d851a9485c9f6f4b4cf257742ae3ffba8c14708c75f1a5520e9d132ea9e21d6eb65aba492eec481e8492af8b798c5d1
+DIST simd-adler32-0.3.7.crate 12086 BLAKE2B 8e0ae18603b344fd8a6573cc3fe1f8594ad542619a6e0d6e8f62e356a3a97409f4de3a215d561b8ed0e063ab431d81b63967a5a0b6561c45537a27ee84eaa362 SHA512 2976bb7fa153854ecd0d68ccdc108bf81d5da374839d53ce9dfb27e80d8db258bb817ea3dac73921e408541d75e2797b6d20fa63c42c1e8a935b6d75dee14bac
+DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
+DIST slotmap-1.0.7.crate 61390 BLAKE2B 56f7ee840f848f2331bee7d7e31aa66f2185db5b57fc72694e1514b462dab8f673442c36f7b9260d5db7b68a522ca76f7748aab774246bb12c2ecfbfd3e7bb8f SHA512 f130275c506a3d648b5d66acddf7ed88274fc381d8d0101ea5b3ad931069d4ca46b856d75311e95e09a23c009af343c7a4321023bd1d065d3d516a0b4b8a3080
+DIST smallvec-1.13.1.crate 34952 BLAKE2B e0dcf1d26883564cd4f5d20a588562404e193075b1ae011f7f7542009a9466e5df3ade7768e1a8feb8806774b2cee5f15d31779928f83714e7d4b6ed46af9ab9 SHA512 1259ef947400470b8c9e74c5582dbc1a49753aa46420883c1f7d66f320f67bebe733a15a23cd57ba461020fad4ff337a5b298de82754602a78f5e6cec969652d
+DIST smithay-client-toolkit-0.18.0.crate 126729 BLAKE2B d0be4bc4dc0a5778c04dbab28820ee93d3190d867365c66d73480d38dbd5550e91cc3cf11e018c6cd24fcdb3d68f60d8c6ce9126240d9aab1946fa2e396bf857 SHA512 94611853e8fdfee488371a170b97ebd502d395f597b8d479876add936390ebfb549a61a5a3237351d796a57038c60a5ee581049c0c859b490655ded26369ec32
+DIST smithay-clipboard-0.7.0.crate 18028 BLAKE2B 79b8b1217df2488bb9c25cf133a2cbc93938ffd37836ba27d925a12af82e10eda122929c8c71a9d42471be32a80b3c9da3a6d6b95066ee27a9e8b34a715e6bbc SHA512 b302a6c57810699e2e88077a3301bfed0ce87d0c43d23372ddbb93811f9fc46df2e74bd6bf1b2a9fa94fba05426111ec7eefdc624cbf685e8379c66695c3f5eb
+DIST smol_str-0.2.1.crate 14689 BLAKE2B a1bc1121fcbd42fff6248b74a566ef606470b733a9e37211748512a95f3a0710ebdabe6f96d9b2d2482a8a546618e428e32fedd38ca893f6ae87c52a69948a7f SHA512 97ec765f3244210adac567a36b21436ab3cb387db0810b86258b80161ff4858d34e148fe34f5cf351b4355ef998b017d216749e12c154554fb36abe37bb541d8
+DIST stable_deref_trait-1.2.0.crate 8054 BLAKE2B 287a65c3e5b47213544a43e57c60a54add60b4c2e3c8d042407d860cc950ba7ca01a2e67ce56aed6744992b61ec1f9aed3321e3d88482e33129548b7d51df205 SHA512 a13cfb22723f1f2cf089b2d07d657846f50c37bc0438d1a76096bea30214cad226b7a422c21f9e191ce87071da8a141d61882aedf9e0203a5fffdfda86a5fb03
+DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
+DIST str-buf-1.0.6.crate 3828 BLAKE2B 85be4bde1989634b3c9934554aecab4bedfc2c627be119af0d3608e41f3831abad8133b0d008f46656610d019fd0e20665002a1401c080fb5c4c07cb58c6469d SHA512 d7fb6ffd00eb2796bb4f31dab8aa8ed422d5d3dce435d6aa975ec97f4b637db8f62c419eb1f069aa232d22376540057a64f23110cfa660aad45bc41fa0a551d5
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.48.crate 250566 BLAKE2B e46b0863af76c3116c84d01b654a9820b7edc51f75c9c5301a7967d12284f78da602409f34fc40524728350dc6b998a4d738f08b8868f95236b3e5d24c460580 SHA512 926c0ad55cc743df20f9166b6d71fd44421aeb1f073fd86b6ddb53e13cd508b539c0360ce64b07b65597bb14639c8f33acf7e60951e1e9128624517aa3aee325
+DIST tempfile-3.9.0.crate 32182 BLAKE2B 4e802990988aff3ab5173bd96dbd906651a8df46b2619e6a500a3b9e7f4a3cd01dc7ee977791343f7875afdc4793a845000bb363d8c1a6599aeb6b1efcce5d56 SHA512 04e06c966bfa7a1567e7185ebd5c2876b96e46e36af14931bf0eba63795cd20d1c3427b6709a4cab2a68b8d289fdabd5537a50e5407a76e3a9fa0dcc7d3ce6d7
+DIST thiserror-1.0.56.crate 20592 BLAKE2B e98c8bba8d21342c981646e88b72a7cbc146c695a200aae3e076b55948791cc51a29e8818d64451b17233ed4d095d0ef63ba4fb07502f4ffde5af738b8629c37 SHA512 6b7c856745256d6ef9e7ab2ea0027f9c1ed2c75ed5b075068af57cf706abfd835fd4552d9ec7578bece1f820086828c5dec85a9cbada409569838cdc9d63936c
+DIST thiserror-impl-1.0.56.crate 15367 BLAKE2B 6fad787eb1e2c0f25fee7bef160be794fb8000a0aa292ec0d2d66d7a4d1fcb226c3e2e690ff6a61ba2d8704208014eea84044dba27523d4b2c26d2f7d4ba64d5 SHA512 da66f4674cf699083f7142f3a60c1c9334767b4de3690b4c7af460ffda787fab2089f5bca231e92b6e71724d46fe7dbdcaa19073f5d8100838536d10971efbde
+DIST time-0.3.34.crate 118430 BLAKE2B 6d04a20596c9b0961ca104748d9d360f07b16059719d7410fdf1a7a0d5f2aa02aaebf640999464835964bbded2d3257d79c4b0ca3080fbecf13dd2d0aa6962fc SHA512 3997e1b8d9be2f54184ebc9e1355d4b65f0b7bc9439b2b29e4a4acd86ad3a3aa019261112a24d998d76a7f66b266a86536fa50412279911b14d4d7aa7078c116
+DIST time-core-0.1.2.crate 7191 BLAKE2B c477ad3410ff29f3bf4a38fc6ac4a043d49b6d2bdf5cf309ffcd2eec3bb6e4c4b62156ee7f069f0b37ea31c163bc75ccbf35abc1db2833cdd4912135e60ddfc9 SHA512 3861724c23cb806829a01186deb5217ae8252c20af622975264e6670cff528f42155039e4937756a9eb312a5580ffab07949437d5504d684a0e70755046cac52
+DIST time-macros-0.2.17.crate 24443 BLAKE2B 5045af9352961db0c97cae2f6ca3e8d2c4f89a129c7ac2ec1d8d20804292aa9f2901a61f910a564954614b68f39311bd381deeb66fed8bdac423227d077f3d14 SHA512 c81747f0b74e68d3b3f36d378ac5911dece8c6b511e5ac793807f854cc31c812b927d0df941f55ff90d3d67512d0ac6a5f63f2de4322c81b05da42f46b4a661c
+DIST tinystr-0.7.5.crate 16366 BLAKE2B 00a5eda21da581ab351dbdd2591960c027d0d1e35f00b2b1049cf78ce115b4e7f9583ebec74d0a95c79112d2b4fa60ab8440ec83646542d8c73236790c07ae8c SHA512 f6f5ee490049a3572d13305f1431d4882f201c81bacb0e0a333e949a0a955c98d3a0d347b1f31d1fc8eaeefb4690a3fe6fb18e82163b92d10b757a56bb5610c3
+DIST tinyvec-1.6.0.crate 45991 BLAKE2B e9699d4d80a78978f0ebfd049f5b33d7f23d401cf4f4439ccb168e8c0e322473ad0ea7e2ff0ff69e9aac3e5c4c9ae5a7102185533bfbf96dbe77b3526e700bc9 SHA512 e5acaf353c58c60ae5556130a934f1048abb79cf6668ae467d308bac44b689d8a9997227ea879f4b5fe50f29cde8761801b088d7149bcd063b973056c381921c
+DIST tinyvec_macros-0.1.1.crate 5865 BLAKE2B 2bf4f68ca11dc19c72232951605a4c809b34ff38ee365ee4f592a3c41360e23c9330cfba961e2692a0ad568fef4aaaac51c40808d491178cf7a0c4b5a1c5d484 SHA512 10008c7b3a3d50c94b9c370015b76ee082f5dfb6dcacf014dc2f2dbe92f903618d10d0202b21f48fcf98a94ae76fb712db55a5e8ad353645d378cf0e6ec74f7e
+DIST toml-0.5.11.crate 54910 BLAKE2B 9ecd5103b33ab47d4be23c897c7095ca381cb79bedcaac4918cddc36fc7cf5d34ab664da52c2273d935f04486e9325241d6b66785d50aac78453c219aab49e1e SHA512 eddb82aeb8fdeb5436579292c6f7a64a90a2c7bb54070beb437bc7890b99795d0505faa8d6451a99e8bcf440f78db8a1b273a697c8ad44275cc4163a9ee49317
+DIST toml-0.8.9.crate 50659 BLAKE2B ef31bbff4446ac4c28c3b8f518e1eb9ec20e6ad683bb792cb7ca79a97a758e41b993e12d2f992998f4bacfb9183b716b52c1f04c3a381d76677bf3ee579ef47b SHA512 7c40465f72bc1b19589bbdb096c8c67f4a10ae363525aa292935414404d14b9d46f17896e12219d7c332fe760903fe898b706a0ee1c5c234af64b27344cf7e18
+DIST toml_datetime-0.6.5.crate 10910 BLAKE2B 93a21ab2784e96ee2e6b56c7b4f733f6ac4c68c1e7d7dac3fbd8aceedb3580e25b4a9c7d9c3f9b5ed152560353b3e80906e37824956dc4ea90bc6f039768f6cb SHA512 502bdedbcbd2ac9fbaa5f4b51f2e409af185f3633f01f8845de5e3b007f2400215ddeb82ac588bc915ed5a5f9d7251ccf93fe2a57cd40fca2927f4c0966357e6
+DIST toml_edit-0.21.1.crate 101661 BLAKE2B e794b6121ba7e2b1b3f50966cd40eebacee6968b6b28986cfe4cb7312b51ffff19f74826910d8e4ce307f74940f11e71e6afdd768ac196427bddf44595bbc797 SHA512 10cd3b16f763f55294923ce8f166f96fbd67a0acc4a93a46fb3044d8a38148097c592ebb405ced87030d35154abfcc971eacf0172b624ab477a11e616efbaa07
+DIST tracing-0.1.40.crate 79459 BLAKE2B 33693ee71564fe5925a63dca351e838dfd8612b4b1e49a33a70095e56ca63287c13c772661ace0e540d08c92942d7cbdc51ff2cce4f4b372164d9aa20ec05dee SHA512 5622188a45dddc0d6d3a8244a9b12db6221f4180944ce1019d18f4e613e4bd113dae5d45fb57dd0754f6e8e153b047cdf00c8f200782bb2b868bc2d423d99275
+DIST tracing-core-0.1.32.crate 61221 BLAKE2B a7815c46af9852ce62498083103c6d359351f4d33609b4291330073b6abf4b63f5e1bb1a7dfed3bbf4d6913ad5217e96999416261af8a70609408a29109e4db6 SHA512 164f79cacfcca533a53b7dbbdc2015aaf851a16e00c72fbc4e5f515b6a6dedfa464e964810009b54f08cbcdc5a314e50245ac7b1b01a71fce4c63db135bf5521
+DIST ttf-parser-0.20.0.crate 161769 BLAKE2B 0c2cce46dac6ad19335f5d4a0182725d347640976f8d1474472b3b0541bc9b8b4360f25d50166de7ebf5237b537a811bf0a4a55e529825689c375ca3777c0fc2 SHA512 57f8b09a47109da06a4472d6a75de41773bc6a4a976684e5490a19b1b6da4631d381650152914ad8ab04ddd01b7c5cccca971ca45054cfdf027ebcd924037929
+DIST type-map-0.4.0.crate 3177 BLAKE2B 6c56ab2600e36679f37319040a529029bf8432959026c95c98490a5f137c64ae30b889dac7e4bab2b4edc656adc22d2a01c6c7a688f8ac46db1505f5c7ff5642 SHA512 c3e81d6dd94d5d8266bf409efb9e9ce6fb5d5889d672422b1f85f406ab62c58e27af5b6031ba5699af9d70c90bd8fca913c7ae0fb75f64358e3b7989f3d32099
+DIST typenum-1.17.0.crate 42849 BLAKE2B a6d1162050679e2c4ab2467f3a77d301f6861882eb7c9749f31d047f383dd5bd2ed5846ad63eed99ccc04d6ac36cc697a305861e1d65880b4d2ef04ee0a79b94 SHA512 99773d5d9f850c0602db4bb67dd062b0ade6f086e155216f1bb2fb6569461ba7e1b7c2f2af81ea8833bc3bfcf3fe5033edecb7c438adae63f59d3e30cf63a508
+DIST unic-langid-0.9.4.crate 8850 BLAKE2B e95ae483eb531b0ec50c53a0c5499cd593815e7ce7c20e2c5655879361bc0fdb9daa415e7641b2573a0912ea7042a53dd09528660b43027cbeef3b8494f736f5 SHA512 4297a84a8ec8479dd88b34380f882a1b2891d15be5089d7a015baaf172f57a003f92beb2faa96360262ff19ecb9542b7e720631609c69580586fe4a496fdca83
+DIST unic-langid-impl-0.9.4.crate 89401 BLAKE2B 8f3eb98a62624c8d3e49169517d0bda2992dc57caf6dbe7c935a0eadceca4df98048fb8ebdc951bd91541f92b6ad4fdd543bc5bef0d5c3403adf0eec542fc23f SHA512 4dcb307390567d474317a5f9c231624ebe524b393aadbc135e0923b474a14a0a593aa05cba2ee04eb195af0445b9058ddb5648a282a7ed0c44b4b6fcbc791e50
+DIST unicode-bidi-0.3.15.crate 56811 BLAKE2B 1f1d372c86ec7444f13eb32baf13dfc8699b52156b265a2b53f40c0d771064876405451120fe54739a2679e6991caaf4f63e0644f03729cab814079fef4868c8 SHA512 7a21d5eb05ea8d691dfd54ce4cf7d3693d08067f7a88ef17b8c3044634f46411176b1bde1516c442577910b254007b247f5e40f9932eb601cd96cd574f9d9db8
+DIST unicode-bom-2.0.3.crate 10773 BLAKE2B 0c47796f83faa4eb5c4405fa385c245fe7b8b6d9eb6ce422738f7aa1788604ed3df22810afc6ce6da78c1592f7f68b41311914ff04d5e49ba4f719310ffa9afd SHA512 3a756761198be468776511ff7b899ee7adf214a678b13b31f42ef3cb3e0320894d8ff0df23bfa02a057727d83082f16b465ff25efa8dbef362977bf308bccffd
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST unicode-normalization-0.1.22.crate 122604 BLAKE2B 3f3430b279cc0ce1595392c869442ce676ab097154c688779ebcf726e10c497df59be2cd7bb2f84f99499a9df0654760a10ac92224c17d74775aeebe291241e1 SHA512 a5810d5e9cd93dbb80e013997aa9d38e60834619483a6623eb2859ec5d59a5aec3fc4db123dc7f4e2fe9f2b8799cf6af48bdff22d69a00a23707240e8bf3bb3c
+DIST unicode-segmentation-1.10.1.crate 98416 BLAKE2B 4c391ad34c5f8a00096ce89793b15212555f2d8a367f3ae78f26a36c5897b69f3efcd280a1bd3eb3f61c87b8a26061804b1cd56e1c1500cbcd62e8bc74520014 SHA512 e96224bba73fe9a167bbf226bb13fe5bea085765a90f7232cb20b42f3c584242b7291aeba1eb8edbe2ae40e5bee2f4714f434324f79316b22e8437c77a50e86b
+DIST unicode-width-0.1.11.crate 19187 BLAKE2B 6baf7f3b32eb838925e591792abfe11968206d177facefb89ef51daf44c18f3fef1e41c19a47b88b81be50667af626af2024ccc540b240fb6e1d83fdea57076f SHA512 ee06f4144525424327a17578642565f396802f0eea539b3bebc8d9627376a8bc6c5376d83a6ee577068e99fe75815bd765e6d49fb9ab9b253d00594bb15a5ffe
+DIST url-2.5.0.crate 78605 BLAKE2B f3fec3477248cbbe67866577eebb03f517c284a5e5cb783132b11ef3ad156a03524f4730f188d822dec85169d7474e265099296d6bdd4adf5ffaa0a118821617 SHA512 4aedbc48b85bcc2853189f5fe8265a01c76516b5507f4e958d8d0b860fe2590c69c95f0f4b9fd6fac9b8d5911bcb0a5e9ab7f8e8b600f37a12db1438976ee5c3
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST walkdir-2.4.0.crate 23550 BLAKE2B b4298c01cb38be0479b7ddfee627af01f889b6b6ff432e368bb67f65134c3958a4fe271a5a7dd61b19259ae88f5680e5ce8e12e50a872b05fcba68f59b7073ec SHA512 09e1bc852c01b452c95b26a369831a97bc5c9e0ada3111c73774570dd73bb5b9e4735317d5572304fb48dca44ce7b9f77bbd17c418b6b047b2ab17b8bb42d9d9
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST wasm-bindgen-0.2.90.crate 182529 BLAKE2B 309bf19f4f0551ced885ef7ef80c56bc54431cf06c77e430872fb87e3cfde0c0dc49b018d070b505ea8e488e94a4845ed143430e3c4b70ee48713147b980c6e9 SHA512 c6f73581590a8142b66bdc6373d925f1b1d37d4d09718b49c3454d3d2e16eab3dde97724cbd246420e0c29656bac8ede82eaa0b0e94f22238628dd974223db62
+DIST wasm-bindgen-backend-0.2.90.crate 28348 BLAKE2B 14193bacce7df590b372bbab1126255cca027fd94c76c17ab13b06e7c18346b5ffff5e2c9d0ff5bdc631846fca70eac9a43e4ffcaf58f0c062ee36fe025abf75 SHA512 7b19cfee23dad5b09b6089d2b56692bc183d477fed5db8a91a6b30c574b3de4b1d45004761248d8c5437ce20a5ff64f7e081fccbd84e8ed72fd154e5a06607da
+DIST wasm-bindgen-futures-0.4.40.crate 15375 BLAKE2B a11cdba684c14f0deaeb22eb490012b1d72d03e0c5307a8b7e1fafbdd19207482770c66fe02b013bd459a073757bbbb1e93031e8f96ffde04dbb6717f282e514 SHA512 8a2cd103e6d2c8c2c4cf1f83897f9cd54319bf1a648078c18b0bbd5f47903d8ec21949b776eaca8c997ddac7b9ffb3cf48348be1e830d485671a73bccc876250
+DIST wasm-bindgen-macro-0.2.90.crate 13904 BLAKE2B bd5e3521c27f7ec3cee0f2ac4cf894ea5a9b9bde65ec55ae9b29d033b986338af92e2dc9932b87dbf739f4ba48230f17a16226cf1826afe13b102225af29c1c8 SHA512 97dc09c02ea4daa1694f3a118aed3ae958373e179bc7ae4d7bcd14b9958f79c03564d678ec04d7f80b6e6a5529f63f1a853b2905055be8a210d41a12ff279007
+DIST wasm-bindgen-macro-support-0.2.90.crate 20008 BLAKE2B 46172ab1e6d03faa2a29d8b2d1bb3b37dcb830d73aa96d0922b63627a6eced1d38729ff85bba7eba3e89dfbd04fbb92a4b87cd74a1a906286c61145e3ad38da9 SHA512 9a5782cebb192276a0a05b54f8cadd994cbb97388d72c85f9c60754ade309684883cb2f916badc1360522a6599172eab84aa2bc981889cf2ef2aed8a4e0a3577
+DIST wasm-bindgen-shared-0.2.90.crate 7264 BLAKE2B 2082267bcfae660b72f6d5996a563d10319a1cd7078b37070f41e96aa56da31ca0a22c168a1e5fe52294f5d7a50c76d06f03d489cfcc0826db29316f2e67ebbc SHA512 f6639c004b17661d0a571181e1447db7eeadbfe93005d6f0e1bab983967591b64cf2ed21e7b77934ad45058adedcae28af1ef141696bd598f9c2d683abf93018
+DIST wayland-backend-0.3.3.crate 70455 BLAKE2B 9c6bbb5c8982411b8d63305cd109d5dba3b396ea1c130e0327dc31d4f6d0df56e8d8fe5992fc80c000bb8127ad4e8d32d2ef5e7fec925fe3b0b508e63b4149d9 SHA512 fb3c7f25074747954b5dbf8455c2faa92862ae53864599f49ed64b74e5f114d7e578ed388cb3b7240fac3fff98a5d231a977154bbe976354938d66fc5da5b8e4
+DIST wayland-client-0.31.2.crate 62976 BLAKE2B f7c4e1f581bace8b491c7ffd393106db44b7be028c136b1ab99c9f091f828c6ff6e5157234882a7926da5cc0de22c1ce14dda7e00ccd5e2ecc5e3356dec86e71 SHA512 1f15b1f8787e1b25b90369106ac6119f208a60ab9c3fe851287fa9c7c8d9fb03217c3f33ffb1dfba5df4f2a749be19402d25ed80e1ed9d7301c1c40e847911b8
+DIST wayland-csd-frame-0.3.0.crate 5696 BLAKE2B cc475e52f9cb0bd06569b7a6996cc78158a07ed2cad7282973806d4b4dd345b968088d5d035ce1f52909aeb3aeb804b93243f6fe98c38c0e8032d961992cbc1a SHA512 2ae56291ebf40e84ff690f15ce43cee36a29fc67975cb1331c47a44cd93aab7c19fc8b385b67149a62836b3bcbe1d5bdb646078b9cf2b00e5288893ba9840bb8
+DIST wayland-cursor-0.31.1.crate 6883 BLAKE2B b70a56f45fc16d0dbb63ac64c69270ef1ef4185101c77751fd063913489e49e0c0257e83a07a136f2f6ac8d923a495d52bfd6bbbaca69b5f3de2f4f50fe0ae44 SHA512 42b975a1c9097b588505243c2923ff3acfe0aa312e8dce5390cb7aea98924f3e29d1cf29245a54a54b617829028c96ad2b5ad51f3854a3e85ce840eaf0edf844
+DIST wayland-protocols-0.31.2.crate 147062 BLAKE2B 62d5ea52833d9edc661d405c83159f97c5bdbc41bdefbc9418a08971236cb74d317efe11e2e23ed6d96f0be27e4a830b4d47bf27d5b269e30e5a4cb97c469c8b SHA512 8f295413b20f308fbf337d8d6e2b6905061d32baa0aeea2aac55edeceadc754a121c56b8b96ca218aa902cfb26fa168c84334ef5033f8cc72e1505f1cfba06fa
+DIST wayland-protocols-plasma-0.2.0.crate 59992 BLAKE2B e43993c207db0ab01c09ca2ad523adaefa1b07978fe2bf67c1e16a8d7e24f443e181a4ebaab2555bc45119d0c66a26ac4f91de932d13b3fe1c881d9bcf0a211a SHA512 d72a03ae0c34b9102567b584971714734aa97e0bd85a3447663a0f88b05bc06a295b1aabc46b6c92701e620c2af87ad6a321a5daddab0df08e7e09f1337f3cb6
+DIST wayland-protocols-wlr-0.2.0.crate 25804 BLAKE2B 226af653146d7eef2ee0a7b6d1484048c5f8b1d2618d3bb9d33eca7e019579c9868d42e5488ba8dc830457ca186a0aa07599accef22902b982d653e381b2f4ef SHA512 b1e5025dbe50a9b90bfd7a38d7564ea8a02c84c8c802d2200864dc604847a4b0979f8a0e05d8d76c2b7c1e198c7847e4d59ad49311b00ab2d4d36eceb776a16a
+DIST wayland-scanner-0.31.1.crate 35419 BLAKE2B adaf9d19f395c5b11e35113ef31b5e11e76fda4929365e61f5a40fbc3f8505e68cacc4e31eb0137da2a07edaca898a2835a22e7236affddf7fea012f087197b7 SHA512 61521f39f414bce7bf372656544294382676649a42d3e2751b6a33874bf12ea3fe87d55c9389799197bbbab36fade2f386a6a83437434d4e0175347b232f7f62
+DIST wayland-sys-0.31.1.crate 8577 BLAKE2B 9252740742340e1f4a4192f610c3c8e6788e08e9c37528c97371762a8949d5eedcc9c052f2b74edf23218e8a6dfce3c63adea0da769ff805e3f68d689d041fab SHA512 79d6feda8a2a4307218ad51b292efd7d0e80707630908a9ae9bca6c0ceed57af874f3b6467915fefd078279ff4f7d39291d84d6250312f692305d38d7f0bed3e
+DIST web-sys-0.3.67.crate 725967 BLAKE2B 4d9080733645fe5056bef44d7649372ab588ad8642bc8581f15c7d24cbceafbd214569a5f07f968d30999b08588005c5ffa0c63da16d44bdd6d772e8bf712a1c SHA512 9653be945e3c19dd5ff344ee002f41762a5efc24af316424a30246427e15d1c945f6ae25b9d6dec1881867003ea0dc261adef328bc1a1a8f94d7d792faa95e1f
+DIST web-time-0.2.4.crate 15743 BLAKE2B b0255c2d8742c736a2900e32422c439c90878b3bf883943bb6772b91ab13411fbe6617b7801434062b1529843c57d7debfc454cc7a67553c6247047e4def4413 SHA512 d52025a11a11e3286aa0fcd20639eac6cb93ac189b368419adc0ccd2045b288bee9df8c0042a65744a78700e4576f3055478fd52c5a5381088f9a6e28ca3e3c3
+DIST webbrowser-0.8.12.crate 38923 BLAKE2B cb2908dc0dae7b3f9c9c9f4616a7952f845c0f00048b58ba9cea957e33ce651819b95b1e7fc96279df9c10a84f405e43e564927b39be65e41fedaa3dc7b2debe SHA512 b83488c3f03dd37b7810ddc71788febf5d613073fcf55d356bef89b603335470df651cdc7ea74d2c567cc3d0739bf272427fb86cc90ca789faa09fc712d971bc
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
+DIST winapi-wsapoll-0.1.1.crate 2881 BLAKE2B 752a56fd63334b38528eca1bfaa4ba4e07de8b7b4f35aa71165038c70f7f6d482c994a9d8367fa5c8d17df48de746bdf773e32a1109b847d8998ab78c6fc33b9 SHA512 110bcb68119ce5848b9de19a9af0a752bb7f3bbb9c07f2e0d303b428166197d3525c8b4ca6afd56f132f14b4948054cf1dbcc7669c02775b66343e089488fba6
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.45.0.crate 2568659 BLAKE2B 6f2d634d121a9bf41e2887e277a73f33aee69b04c7fcfc6ff973d21902787997f1e186f530e9226cddc003ffc3f85a179c069c8a8688de459f617df92d33f94f SHA512 f239346c0141b95aa76e0771e2f4e38b9a592f3cd92c6001de353637cd65cd73b94cbf9917a4eaa9b0c0b2e6e2af920b9cf6b3fccb52770df5160254cffc1c47
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.42.2.crate 5492 BLAKE2B 42fc4a7d3e287fe2a70637e890304b49737776596f4a94a6d216668247092135e84322bd04caddd19c83b7700b0f27278e600ce8ed326957fabc21bffcae89b0 SHA512 84fbaffcad9a80beca77506aac26d0c5cb75aa0f21a5a70bcd3f6a16e71e8753ae00d3b89da9262c99756624163dcc0d6074fa9f99dfaae0dc098018209025f9
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows-targets-0.52.0.crate 6229 BLAKE2B 4b1efdd32202f112d3782b586ce60667f5d3b6f97ccae0d7da833aee2ae81ceece88b5ef4126db2448c9019de3f77e4fe66ed4286bb6275d9a5e8ab74725b804 SHA512 0ea09552d89b802ec0d419b640fa02d0af7af602704a0e88ba10f81d123dee0c907460f6ec91224177ec9a948970abd7414740eb219148a4d66c269c2362740e
+DIST windows_aarch64_gnullvm-0.42.2.crate 364071 BLAKE2B 97c4e3b2a2dd3f936f9bfcdad23639c9c4c499eed220aec361d26d6013d798efa118e6b298f9cf841ac149d2ae5d58ca653731718450fcf2910bb5f6fa39159f SHA512 75cd7eb1def8ce9d0ff3d7468d2b1cc31cc76c08f981a2460c3d1eb09cff7100d7442863a3591621c1f5f3b3f4badf0b5c95285b6ed583e37283a8403f1095f1
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_gnullvm-0.52.0.crate 430182 BLAKE2B f23370c62c4ab3fd885e3ee22e8ec2fb5a3a837a57044c1df3f9986dd4e7e9d0a44ec58be1648a41e1ea4d037afa3077f0f03de0204199a82fb8395731815a4a SHA512 b7c3fe0a2ad5149be0df48fc7a4d15879eb130bd9441c58c25fc71b8a91483f0b553fb1bf29a9302acd348e9083a547430a840b059b0cfe19867ecaffcae986f
+DIST windows_aarch64_msvc-0.42.2.crate 666981 BLAKE2B 9f3cc5592cdede08bcdc1e7c455325279e3b763d96942695e10dccf1dfc37a81c749b69a7d6de883d4c0fa6e8a0d2f578fe2a8d6c42ad8ef6282590bf8fc87b7 SHA512 d2dafa8c94d01c1b65ca1bd631d31f2ef842f1db7accb132ff78c3f8483221b991afd3391563e03dcec42bbc9cbdc0ebdab47b991d25af85b5ba2ac1bbf8db63
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_aarch64_msvc-0.52.0.crate 821663 BLAKE2B e6f772858205f7cd871722136aec4d00daea4793ff9dcae53e6311e74526c46aa11c2b3df7a85e6c577757254cbfa5a713e68c694625ca274b64e7a1c5532c23 SHA512 8446bfe5b9fe538415762c8129ab3bf2fe45482e045bce367475747786602ad4ae1187c6e508dd9d7b6be81bfc8d430e0db9c624e35c7cc52e823023e46f5cf1
+DIST windows_i686_gnu-0.42.2.crate 736236 BLAKE2B 4ef0496462afc73d9d72af7e5da1e6d3506a92f8172930e88ae64ab97596ffd31c4f97fb969e9b677e30159c27f00a8e756deb006b630fb98ce83f03c8b762e2 SHA512 ad09d650a05cb91cb6b40f59025c023a4c286bc1194586697c506016df2b9b0d5b02606b81687bc634795a0d9a9b8a73e486599328ae09c853e8e5ba662fc59c
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_gnu-0.52.0.crate 870285 BLAKE2B a7688062a128a1b1394b3978210334e4e2aaa10dce131457c4a11ce0cb3f551e7f4962d1ece1846d8e9526983ced0e0a3ee8c933858e9314b62e76381e086ef9 SHA512 fe993f5bb6e039c257be9b35337e0221f718d23866818bfd19c76aaae236aafc2de4bb5014fcdf919563b5901cdaa14a2136cd086eeed3c83e46a5d02f6aa77e
+DIST windows_i686_msvc-0.42.2.crate 724951 BLAKE2B b084286cd4927efd2889b149abf8a9fe9d3d777130db9e592982660dbf9a96a0f5e723ca121465787aa11877d2d29a5a7d7cf066cdc8fa7e90d7ca7dcb7677f1 SHA512 c1706fc36d4b157c020744a11b3eb5d7dfbf05a0b56775bc717e94b7fd725816b20154fdbcd69ac08dbfb8b8bbfa74fab72d7a9c10399aad6a1cc54cf597e804
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_i686_msvc-0.52.0.crate 888693 BLAKE2B 7a6e9d03e503c8f543e80a8c7bcf3f50cfa7eed462e487ae7b581746d7cc4d871b33e307110d3a3a75226d88e837f9452ac56bf3baf71b66cfab2626cc15558a SHA512 817ac796fd00bed51d80133ec873cf3d3d582ba41fec8a6f6407fbd7544f198e928aa5d710f70c13bbf74a1dde4c91c54e65eb9d3b7518a7f011ea42725eb671
+DIST windows_x86_64_gnu-0.42.2.crate 699373 BLAKE2B 01c70809d564b16b268656e47295e99c992d8f9839fac8a51338a0e7c3b9cdcd0429c456ca8c1c139a8c687ed7ed6c43a82250889d881aadaa65bd037223e0a6 SHA512 5767af3c86e717f93137a89d442230e6b60a649057edb3ab104b1f82c0bcd64fe089dcdf2f4fd486a799bece1ddb5f0449641536b678211945e749ae24f35c1f
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnu-0.52.0.crate 826213 BLAKE2B 3ca03285ef289fc844261142154e710e996c29940b1c0a7dc3016906ff6452fa50b24f8668fce0ca44bf169ab1228c217fece9f7bddac9ab8bdc54fddafaf8a8 SHA512 2d81af56ad0bc9536f6e066776642a546ce6c6d99551edc0603ffcafe6db15d5d5a32a642b204bbfadf34231daa3894ad7897a9c0c575c2b6bc1e3e58a9a3eb7
+DIST windows_x86_64_gnullvm-0.42.2.crate 364068 BLAKE2B 64bc53e98eb3fc649c9b43a6e734de4e65088e41edacabd49f7afcc5dc6e1065c563ecfc682747dda05978dea2dba4f45c16fcc18c3b00684c3d93681e5a7deb SHA512 d39a8bc948110fe612d3f8d6628b3f0d56620df11d8a49e0fabb6c90389ad407582b3af10e4eab46c79b3d11d2e10753d73d9e55963fbeac085f41e9749bdba3
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_gnullvm-0.52.0.crate 430165 BLAKE2B af9345a1f6e0ed1392ca1534c68d23f3be0fbb6a42b3c5518cee14373e645038526da15e849d14abe45c53766a30c6c2042a626482ba4a05409f325eb6aa36b1 SHA512 e88af35fd1c694dc189783e5c81aafa61aeffbddce4d7130e1125d0ce3d932fafeb345990ffd98477c41b578b7f5090f4f9c0457b02146309b95549c9f8f44f0
+DIST windows_x86_64_msvc-0.42.2.crate 666936 BLAKE2B bc3a456e7f8bc272f8978ec69506ec9d89f97b7582ebbe05d8bd57bdf8156ef62d0d2dc6137a97e81d54059d70db97a24af9a038adff357f5dfd28805d6193b5 SHA512 53a35f438903fceb59e36bd2ac331773fb8e6c8c5a6d984e79021761f91b3b4a23efe49d219667a4d0d23dcdbf906da9c24e74fb1cff93395b5c55ff524e3788
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
+DIST windows_x86_64_msvc-0.52.0.crate 821600 BLAKE2B cc448b65f98fc0fc4949ae622b7020d2dae927ae45310649f6ef71809740eda9d3db0fc035676c201fd9ab9639e9e7f21e2e992b4c789542f12b419d2c752179 SHA512 3aaee31533a1a48a6ab5cd15b3cadfbd906a93a153e53919d0aa74e440d11e29830554e4e014c215f5b88a475bb733fa8ba4ce9d773d3e23a40ea9ad37ddd0a7
+DIST winit-0.29.10.crate 574116 BLAKE2B 37760ff992bbaf6ecc60304877e3f48b4eafcca1f0f6fe936636f849ed12aca540bfe1cfa77239730d845ff6aeca36c7e8015288b1b398cb8d836fb5fa3cc604 SHA512 faa02eb1904074fea65a5a796c6c503ac8cb2bc32ff79e55a1fb1d55cf16851da39dcb04ac89b5560fa0f155a8db9f54de84a13526d2e37b5c596ec92038e857
+DIST winnow-0.5.37.crate 158728 BLAKE2B 441c1ea381f3e04d89e90e2225af29e9de2ca039575cf16fdfde7bf0414082ee481ae0a90424f98ac656ad09cd213f7d82130eab47c7317d09ac4458359b6330 SHA512 75862cb3502fc51256cbfa489095abfb463b29f10a63663c75ea867eaeec60c2b52d438a2d2e61114a661961a6e8feb99c2f492d875a25bd4b8cb691dd915c65
+DIST x11-dl-2.21.0.crate 66823 BLAKE2B 83305b44ec89e765ecb2dc48fc3aa93bc67d30f12e9782348bca822ca636207e9a9c2b707ab33b6dfc7fadd2b2cdaa599480470eef7a29a15332e923413a7cce SHA512 b864b0865720a9b2afc6d986fb7ebe19734671433449897d7f00488e019f3781f417f8e3763f09fa0db100a1d0c7e709ea9ac43c6dd48775f3daf803ebaebee5
+DIST x11rb-0.12.0.crate 218514 BLAKE2B a067d012cf2aa5e7a20a11270fa1101bf6a2464bbb1855569d752bbf781f70d827c3f24912d062b23fa625b2ff9eaba4b59b8c28b7614e0340fed5f046535b6f SHA512 1e2122effd38c5f67d1fc24e6a9b74e14a04713166980e4cb071860616a19cfa9ed87e4733c1f029df10de1a17e732b928a138027e8ee0e4a1f4242f251f5f78
+DIST x11rb-0.13.0.crate 222396 BLAKE2B 279dd73a1b342d773097cbbac7ce3ce198ee503c809f6d3b89c2c69b2e40dd21005e47cde708c0e9b12f2d944c0c1965a815eee774b86d9620d4dd51289cf0fa SHA512 9e86c7fab70d20193804a85608aaf46697b56f3d78eec50dd835c4ddd4a45ff56c0819309b443baa4a58f93e7d37f303e29ef279dbcd5d8c917c559751ca00b8
+DIST x11rb-protocol-0.12.0.crate 478311 BLAKE2B f00f66053ef81d664a6f8bd083bd91ebe5c607b9190e9e7259bfd6f4b2920dbc05c0b85267a1cf878d0f43cd4b11fc5e45233744c18b5aeea02dad6d04445479 SHA512 3ef8a79a98f428e82b250c2162357f9965618aa3d9b92e37521e42de884d7b71fd7de51c56ba117f0cced674151c9bc6451dc919326ddea362b4e44f839ae492
+DIST x11rb-protocol-0.13.0.crate 507838 BLAKE2B 11955c1908fef177bef859c1207f8fb9e644a8841ccbef885446a021152cb37a113bcb988a0d645e8b9289dc760d03d66ea0a6836e28bc25717e6ba571d02cb0 SHA512 36f412ed83634c402cfb3fea3fc64b9782b348fde3e98617a6c478867a0e93bacd9a69b1feb8d7ee5c01de578ddb85fff1ab86dfaaf88391c3e03dc7aeb3dca7
+DIST xcursor-0.3.5.crate 6256 BLAKE2B 09af0002e0fc70790dd4a132fd74525c18d45cd285fc5ba263e9e6faf83a97aeaaef2ef6e04fc7eb939c501e865623a0f454cbc93913d9821fa6005b8f4445e7 SHA512 284f0012a07776f351d9951de33187636f8410651ed71cee3169c0cc082fda6a01a39fddbed4185dae894f7d5314ce204078ce0848308672ee19789a1fdfb05c
+DIST xi-unicode-0.3.0.crate 87001 BLAKE2B 1d44488a32dc9bd9284df6ee26f0f05c5145c458dc76943cfab88f2f2544762477bbe1378bc1f5e365cd5a5ecf79e41fa66140190047f37ea5dfe678c97a542e SHA512 39875839dcf90b391e76a6b2c2efb2e6f8bfdfdaa59c4815bab8f24412f840c6b01232b5bd79a8f8c6bf7733333e5915c2a7235d27f890b883d6658094bf6271
+DIST xkbcommon-dl-0.4.1.crate 5832 BLAKE2B 86c89218eacebe67e2244fa905bd240952517970d1e18d6669c6bc4f54929dbe1b63a797875fe313c62d9a2290c21cc887e74c767c5e7feb75d653ba868525ae SHA512 36662b7ae4a07189b10558fc4fd8e9edf44948e67947166ad1601dbd6d5b6d4bc679659de6aa4a913d3ba8243b538623f413ab9a27cb34604a17101e71dbd7f9
+DIST xkeysym-0.2.0.crate 101431 BLAKE2B 626c023f399c3fb2dc155934e2b0d14d74e0b4cda25353a03b6bba3060e11e8ebba017571c7e704d5df8e658207149899cf741bc84262734e464be1a7efb55be SHA512 7dc5893f91aacafacce66f14ec27a6c792e7bf82c116e6d2221d2ed5ba3ef2889243f4af3f407d0370b46db6ac27568708b431d59b82c5d056f89d11e42ae44f
+DIST xml-rs-0.8.19.crate 54051 BLAKE2B 667358226fd5fa1829110ee9b587dae7d95fe1f010f8106f515af12435d3c49b0f9f3c09bb4ec4fa019f8e9b25575b3c5fc2dd5858b37b5bbca9bfa263df842a SHA512 a46796ed542a7396e760ee327ec191e96d61b3fd8b78cef2ab2da75c5290433f422a34cabef20267e8a6a162e0a48fc8f81cd66a5dcf997ddd539e55d9130199
+DIST zerocopy-0.7.32.crate 151096 BLAKE2B 12c7c329ec0e0865467af08306ff4b55ce1e39fd77b094ee48ed9c6e266dfa807bda9ea72a3f7ea989916327f4d9e803d8868995728bfe2fb1c2dc1e5ecff78e SHA512 6729b05eb88029555b88c75feff4f8bc28ad9675edb02b07486381f775c8650c95e2e59612906bd9c34c5e390fd339857ca91573ee9f9ca7948572cff4171c82
+DIST zerocopy-derive-0.7.32.crate 37623 BLAKE2B 8b583d39d7bf9c3dbbba578120751c664f87363c5ba3fc45f6506a4059b9e599c43d9fc7bd498a257ff7c9d872af77d39bebdb0e65fb8009eaa2ae9903dece46 SHA512 3ce8528871fd18d6abe92b98503927451d25791c9c4af0ba39a3b6ba2006030bdc137084d080e9b1ac8b5ddf5f2121e0a3ef34bb2033a040f2c72c8149a9fc0d
diff --git a/sys-apps/amdgpu_top/amdgpu_top-0.7.0.ebuild b/sys-apps/amdgpu_top/amdgpu_top-0.7.0.ebuild
new file mode 100644
index 000000000000..1387d046786c
--- /dev/null
+++ b/sys-apps/amdgpu_top/amdgpu_top-0.7.0.ebuild
@@ -0,0 +1,426 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.12.1
+
+EAPI=8
+
+CRATES="
+ ab_glyph@0.2.23
+ ab_glyph_rasterizer@0.1.8
+ accesskit@0.12.2
+ adler@1.0.2
+ ahash@0.8.7
+ aho-corasick@1.1.2
+ android-activity@0.5.2
+ android-properties@0.2.2
+ anyhow@1.0.79
+ arboard@3.3.0
+ arc-swap@1.6.0
+ as-raw-xcb-connection@1.0.1
+ atomic-waker@1.1.2
+ autocfg@1.1.0
+ base64@0.21.7
+ bitflags@1.3.2
+ bitflags@2.4.2
+ block-buffer@0.10.4
+ block-sys@0.2.1
+ block2@0.3.0
+ block@0.1.6
+ bstr@1.9.0
+ btoi@0.4.3
+ bumpalo@3.14.0
+ bytemuck@1.14.1
+ bytemuck_derive@1.5.0
+ byteorder@1.5.0
+ bytes@1.5.0
+ calloop-wayland-source@0.2.0
+ calloop@0.12.4
+ cc@1.0.83
+ cesu8@1.1.0
+ cfg-if@1.0.0
+ cfg_aliases@0.1.1
+ cgl@0.3.2
+ clipboard-win@4.5.0
+ clru@0.6.1
+ cocoa-foundation@0.1.2
+ cocoa@0.25.0
+ color_quant@1.1.0
+ combine@4.6.6
+ concurrent-queue@2.4.0
+ core-foundation-sys@0.8.6
+ core-foundation@0.9.4
+ core-graphics-types@0.1.3
+ core-graphics@0.23.1
+ cpufeatures@0.2.12
+ crc32fast@1.3.2
+ crossbeam-channel@0.5.11
+ crossbeam-utils@0.8.19
+ crossterm@0.25.0
+ crossterm_winapi@0.9.1
+ crypto-common@0.1.6
+ cursive@0.20.0
+ cursive_core@0.3.7
+ cursor-icon@1.1.0
+ darling@0.20.5
+ darling_core@0.20.5
+ darling_macro@0.20.5
+ dashmap@5.5.3
+ deranged@0.3.11
+ digest@0.10.7
+ directories-next@2.0.0
+ dirs-sys-next@0.1.2
+ dispatch@0.2.0
+ displaydoc@0.2.4
+ dlib@0.5.2
+ downcast-rs@1.2.0
+ dunce@1.0.4
+ ecolor@0.25.0
+ eframe@0.25.0
+ egui-winit@0.25.0
+ egui@0.25.0
+ egui_glow@0.25.0
+ egui_plot@0.25.0
+ emath@0.25.0
+ enum-map-derive@0.17.0
+ enum-map@2.7.3
+ enumn@0.1.13
+ enumset@1.1.3
+ enumset_derive@0.8.1
+ epaint@0.25.0
+ equivalent@1.0.1
+ errno@0.3.8
+ error-code@2.3.1
+ faster-hex@0.9.0
+ fastrand@2.0.1
+ fdeflate@0.3.4
+ find-crate@0.6.3
+ flate2@1.0.28
+ fluent-bundle@0.15.2
+ fluent-langneg@0.13.0
+ fluent-syntax@0.11.0
+ fluent@0.16.0
+ fnv@1.0.7
+ foreign-types-macros@0.2.3
+ foreign-types-shared@0.3.1
+ foreign-types@0.5.0
+ form_urlencoded@1.2.1
+ generic-array@0.14.7
+ gethostname@0.3.0
+ gethostname@0.4.3
+ getrandom@0.2.12
+ gix-actor@0.28.1
+ gix-chunk@0.4.7
+ gix-commitgraph@0.22.1
+ gix-config-value@0.14.4
+ gix-config@0.31.0
+ gix-date@0.8.3
+ gix-diff@0.37.0
+ gix-discover@0.26.0
+ gix-features@0.36.1
+ gix-fs@0.8.1
+ gix-glob@0.14.1
+ gix-hash@0.13.3
+ gix-hashtable@0.4.1
+ gix-lock@11.0.1
+ gix-macros@0.1.3
+ gix-object@0.38.0
+ gix-odb@0.54.0
+ gix-pack@0.44.0
+ gix-path@0.10.5
+ gix-quote@0.4.10
+ gix-ref@0.38.0
+ gix-refspec@0.19.0
+ gix-revision@0.23.0
+ gix-revwalk@0.9.0
+ gix-sec@0.10.4
+ gix-tempfile@11.0.1
+ gix-trace@0.1.7
+ gix-traverse@0.34.0
+ gix-url@0.25.2
+ gix-utils@0.1.9
+ gix-validate@0.8.3
+ gix@0.55.2
+ gl_generator@0.14.0
+ glow@0.13.1
+ glutin-winit@0.4.2
+ glutin@0.31.2
+ glutin_egl_sys@0.6.0
+ glutin_glx_sys@0.5.0
+ glutin_wgl_sys@0.5.0
+ hashbrown@0.14.3
+ home@0.5.9
+ i18n-config@0.4.6
+ i18n-embed-fl@0.7.0
+ i18n-embed-impl@0.8.3
+ i18n-embed@0.14.1
+ icrate@0.0.4
+ ident_case@1.0.1
+ idna@0.5.0
+ image@0.24.8
+ indexmap@2.2.2
+ intl-memoizer@0.5.1
+ intl_pluralrules@7.0.2
+ itoa@1.0.10
+ jni-sys@0.3.0
+ jni@0.21.1
+ jobserver@0.1.27
+ js-sys@0.3.67
+ khronos_api@3.1.0
+ lazy_static@1.4.0
+ libc@0.2.153
+ libloading@0.8.1
+ libredox@0.0.1
+ libredox@0.0.2
+ linux-raw-sys@0.4.13
+ locale_config@0.3.0
+ lock_api@0.4.11
+ log@0.4.20
+ malloc_buf@0.0.6
+ memchr@2.7.1
+ memmap2@0.7.1
+ memmap2@0.9.4
+ memoffset@0.7.1
+ miniz_oxide@0.7.2
+ mio@0.8.10
+ ndk-context@0.1.1
+ ndk-sys@0.5.0+25.2.9519653
+ ndk@0.8.0
+ nix@0.26.4
+ nohash-hasher@0.2.0
+ num-complex@0.4.4
+ num-conv@0.1.0
+ num-integer@0.1.45
+ num-iter@0.1.43
+ num-rational@0.4.1
+ num-traits@0.2.17
+ num@0.4.1
+ num_enum@0.7.2
+ num_enum_derive@0.7.2
+ num_threads@0.1.6
+ objc-foundation@0.1.1
+ objc-sys@0.3.2
+ objc2-encode@3.0.0
+ objc2@0.4.1
+ objc@0.2.7
+ objc_id@0.1.1
+ once_cell@1.19.0
+ orbclient@0.3.47
+ owned_ttf_parser@0.20.0
+ owning_ref@0.4.1
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ percent-encoding@2.3.1
+ pin-project-lite@0.2.13
+ pkg-config@0.3.29
+ png@0.17.11
+ polling@3.3.2
+ powerfmt@0.2.0
+ proc-macro-crate@3.1.0
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@1.0.78
+ prodash@26.2.2
+ quick-xml@0.31.0
+ quote@1.0.35
+ raw-window-handle@0.5.2
+ redox_syscall@0.3.5
+ redox_syscall@0.4.1
+ redox_users@0.4.4
+ regex-automata@0.4.5
+ regex-syntax@0.8.2
+ regex@1.10.3
+ ron@0.8.1
+ rust-embed-impl@8.2.0
+ rust-embed-utils@8.2.0
+ rust-embed@8.2.0
+ rustc-hash@1.1.0
+ rustix@0.38.31
+ ryu@1.0.16
+ same-file@1.0.6
+ scoped-tls@1.0.1
+ scopeguard@1.2.0
+ self_cell@0.10.3
+ self_cell@1.0.3
+ serde@1.0.196
+ serde_derive@1.0.196
+ serde_json@1.0.113
+ serde_spanned@0.6.5
+ sha1_smol@1.0.0
+ sha2@0.10.8
+ signal-hook-mio@0.2.3
+ signal-hook-registry@1.4.1
+ signal-hook@0.3.17
+ simd-adler32@0.3.7
+ slab@0.4.9
+ slotmap@1.0.7
+ smallvec@1.13.1
+ smithay-client-toolkit@0.18.0
+ smithay-clipboard@0.7.0
+ smol_str@0.2.1
+ stable_deref_trait@1.2.0
+ static_assertions@1.1.0
+ str-buf@1.0.6
+ strsim@0.10.0
+ syn@1.0.109
+ syn@2.0.48
+ tempfile@3.9.0
+ thiserror-impl@1.0.56
+ thiserror@1.0.56
+ time-core@0.1.2
+ time-macros@0.2.17
+ time@0.3.34
+ tinystr@0.7.5
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.1
+ toml@0.5.11
+ toml@0.8.9
+ toml_datetime@0.6.5
+ toml_edit@0.21.1
+ tracing-core@0.1.32
+ tracing@0.1.40
+ ttf-parser@0.20.0
+ type-map@0.4.0
+ typenum@1.17.0
+ unic-langid-impl@0.9.4
+ unic-langid@0.9.4
+ unicode-bidi@0.3.15
+ unicode-bom@2.0.3
+ unicode-ident@1.0.12
+ unicode-normalization@0.1.22
+ unicode-segmentation@1.10.1
+ unicode-width@0.1.11
+ url@2.5.0
+ version_check@0.9.4
+ walkdir@2.4.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.90
+ wasm-bindgen-futures@0.4.40
+ wasm-bindgen-macro-support@0.2.90
+ wasm-bindgen-macro@0.2.90
+ wasm-bindgen-shared@0.2.90
+ wasm-bindgen@0.2.90
+ wayland-backend@0.3.3
+ wayland-client@0.31.2
+ wayland-csd-frame@0.3.0
+ wayland-cursor@0.31.1
+ wayland-protocols-plasma@0.2.0
+ wayland-protocols-wlr@0.2.0
+ wayland-protocols@0.31.2
+ wayland-scanner@0.31.1
+ wayland-sys@0.31.1
+ web-sys@0.3.67
+ web-time@0.2.4
+ webbrowser@0.8.12
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-wsapoll@0.1.1
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.42.2
+ windows-targets@0.48.5
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.0
+ winit@0.29.10
+ winnow@0.5.37
+ x11-dl@2.21.0
+ x11rb-protocol@0.12.0
+ x11rb-protocol@0.13.0
+ x11rb@0.12.0
+ x11rb@0.13.0
+ xcursor@0.3.5
+ xi-unicode@0.3.0
+ xkbcommon-dl@0.4.1
+ xkeysym@0.2.0
+ xml-rs@0.8.19
+ zerocopy-derive@0.7.32
+ zerocopy@0.7.32
+"
+
+declare -A GIT_CRATES=(
+ [libdrm_amdgpu_sys]='https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs;6852a973c639385988ce0454b59dddcf40ebcd2f;libdrm-amdgpu-sys-rs-%commit%'
+)
+
+inherit desktop cargo
+
+DESCRIPTION="Tool to displays AMDGPU usage."
+HOMEPAGE="https://github.com/Umio-Yasuno/amdgpu_top"
+SRC_URI="
+ https://github.com/Umio-Yasuno/amdgpu_top/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 BSD Boost-1.0 ISC MIT OFL-1.1 Unicode-DFS-2016 ZLIB
+"
+# tinystr
+LICENSE+="
+ Apache-2.0 MIT
+"
+
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="man"
+
+BDEPEND="
+ man? (
+ || (
+ app-text/lowdown
+ virtual/pandoc
+ )
+ )
+"
+
+QA_PRESTRIPPED="/usr/bin/amdgpu_top"
+
+DOCS=(
+ README.md
+)
+
+src_compile() {
+ cargo_src_compile
+
+ if use man; then
+ local docgen=lowdown
+
+ # prefer pandoc if it's installed
+ has_version virtual/pandoc && docgen=pandoc
+
+ "${docgen}" docs/man.${PN}.md -s -t man -o docs/${PN}.1 \
+ || die "failed to generate man page with ${docgen}"
+ fi
+}
+
+src_install() {
+ cargo_src_install
+
+ use man && doman docs/${PN}.1
+ domenu assets/*.desktop
+ dodoc "${DOCS[@]}" docs/*
+}
diff --git a/sys-apps/amdgpu_top/metadata.xml b/sys-apps/amdgpu_top/metadata.xml
new file mode 100644
index 000000000000..9d46854eecb1
--- /dev/null
+++ b/sys-apps/amdgpu_top/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Umio-Yasuno/amdgpu_top</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/apmd/apmd-3.2.2_p14-r1.ebuild b/sys-apps/apmd/apmd-3.2.2_p14-r1.ebuild
deleted file mode 100644
index 166a03b1cf8e..000000000000
--- a/sys-apps/apmd/apmd-3.2.2_p14-r1.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils multilib toolchain-funcs
-
-MY_PV=${PV%_p*}
-MY_P=${PN}_${MY_PV}
-PATCHV=${PV#*_p}
-
-DESCRIPTION="Advanced Power Management Daemon"
-HOMEPAGE="https://packages.qa.debian.org/a/apmd.html"
-SRC_URI="mirror://debian/pool/main/a/apmd/${MY_P}.orig.tar.gz
- mirror://debian/pool/main/a/apmd/${MY_P}-${PATCHV}.diff.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm ppc ppc64 x86"
-IUSE="nls X"
-
-RDEPEND=">=sys-apps/debianutils-1.16
- >=sys-power/powermgmt-base-1.31
- X? ( x11-libs/libX11
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libSM
- x11-libs/libICE
- x11-libs/libXt
- x11-libs/libXext )"
-DEPEND="${RDEPEND}
- sys-devel/libtool
- virtual/os-headers"
-
-S=${WORKDIR}/${PN}-${MY_PV}.orig
-
-src_prepare() {
- epatch "${WORKDIR}"/${MY_P}-${PATCHV}.diff
-
- if ! use X; then
- sed -i \
- -e 's:\(EXES=.*\)xapm:\1:' \
- -e 's:\(.*\)\$(LT_INSTALL).*xapm.*$:\1echo:' \
- Makefile || die
- fi
-
- # use system headers and skip on_ac_power
- rm -f on_ac_power*
-
- sed -i \
- -e '/on_ac_power/d' \
- -e 's:-I/usr/src/linux/include -I/usr/X11R6/include::' \
- -e 's:-L/usr/X11R6/lib::' \
- Makefile || die
-}
-
-src_compile() {
- emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
-}
-
-src_install() {
- dodir /usr/sbin
- emake DESTDIR="${D}" PREFIX=/usr LIBDIR=/usr/$(get_libdir) install
-
- keepdir /etc/apm/{event.d,suspend.d,resume.d,other.d,scripts.d}
- exeinto /etc/apm
- doexe debian/apmd_proxy
- dodoc AUTHORS {,apmsleep.}README debian/{changelog,README.Debian}
-
- doman *.{1,8}
-
- # note: apmd_proxy.conf is currently disabled and not used, thus
- # not installed - liquidx (01 Mar 2004)
-
- newconfd "${FILESDIR}"/apmd.confd apmd
- newinitd "${FILESDIR}"/apmd.rc6 apmd
-
- use nls || rm -rf "${D}"/usr/share/man/fr
-}
diff --git a/sys-apps/apmd/apmd-3.2.2_p14-r3.ebuild b/sys-apps/apmd/apmd-3.2.2_p14-r3.ebuild
new file mode 100644
index 000000000000..c74792bcd3c5
--- /dev/null
+++ b/sys-apps/apmd/apmd-3.2.2_p14-r3.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+MY_PV="${PV%_p*}"
+MY_P="${PN}_${MY_PV}"
+PATCHV="${PV#*_p}"
+
+DESCRIPTION="Advanced Power Management Daemon"
+HOMEPAGE="https://packages.qa.debian.org/a/apmd.html"
+SRC_URI="mirror://debian/pool/main/a/apmd/${MY_P}.orig.tar.gz
+ mirror://debian/pool/main/a/apmd/${MY_P}-${PATCHV}.diff.gz"
+S="${WORKDIR}/${PN}-${MY_PV}.orig"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm ppc ppc64 x86"
+IUSE="nls X"
+
+RDEPEND="
+ >=sys-apps/debianutils-1.16
+ >=sys-power/powermgmt-base-1.31
+ X? (
+ x11-libs/libX11
+ x11-libs/libXaw
+ x11-libs/libXmu
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libXt
+ x11-libs/libXext
+ )"
+DEPEND="${RDEPEND}
+ virtual/os-headers"
+
+PATCHES=(
+ "${WORKDIR}"/${MY_P}-${PATCHV}.diff
+ "${FILESDIR}"/${PN}-${MY_PV}-libtool.patch # 778383
+)
+
+src_prepare() {
+ default
+
+ if ! use X; then
+ sed -i \
+ -e 's:\(EXES=.*\)xapm:\1:' \
+ -e 's:\(.*\)\$(LT_INSTALL).*xapm.*$:\1echo:' \
+ Makefile.in || die
+ fi
+
+ # use system headers and skip on_ac_power
+ rm on_ac_power* || die
+
+ sed -i \
+ -e '/on_ac_power/d' \
+ -e 's:-I/usr/src/linux/include -I/usr/X11R6/include::' \
+ -e 's:-L/usr/X11R6/lib::' \
+ Makefile.in || die
+
+ eautoreconf
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ keepdir /etc/apm/{event.d,suspend.d,resume.d,other.d,scripts.d}
+ exeinto /etc/apm
+ doexe debian/apmd_proxy
+ dodoc AUTHORS {,apmsleep.}README debian/{changelog,README.Debian}
+
+ doman *.{1,8}
+
+ # note: apmd_proxy.conf is currently disabled and not used, thus
+ # not installed - liquidx (01 Mar 2004)
+
+ newconfd "${FILESDIR}"/apmd.confd apmd
+ newinitd "${FILESDIR}"/apmd.rc6 apmd
+
+ if ! use nls; then
+ rm -r "${ED}"/usr/share/man/fr || die
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/apmd/files/apmd-3.2.2-libtool.patch b/sys-apps/apmd/files/apmd-3.2.2-libtool.patch
new file mode 100644
index 000000000000..814ff9c61679
--- /dev/null
+++ b/sys-apps/apmd/files/apmd-3.2.2-libtool.patch
@@ -0,0 +1,124 @@
+https://bugs.gentoo.org/778383
+
+From: orbea <orbea@riseup.net>
+Date: Sun, 19 Jun 2022 10:56:10 -0700
+Subject: [PATCH] build: Add minimal configure.ac
+
+This is required to generate libtool for the build which allows the
+build with rlibtool to work correctly.
+
+diff --git a/Makefile b/Makefile.in
+similarity index 86%
+rename from Makefile
+rename to Makefile.in
+index 92fc0fd..75e0a3a 100644
+--- a/Makefile
++++ b/Makefile.in
+@@ -19,7 +19,7 @@
+ # $Id: Makefile,v 1.30 2001/11/25 22:46:16 apenwarr Exp $
+ #
+
+-VERSION=3.2.1
++VERSION=@PACKAGE_VERSION@
+ LIB_VERSION=1:0
+
+ ifneq (,)
+@@ -28,37 +28,39 @@ endif
+
+ .SUFFIXES:
+
+-OBJS=apmlib.o
++OBJS=apmlib.lo
+ EXES=apm apmd xapm apmsleep
+ HEADERS=apm.h
+
+-PREFIX=/usr
+-MANDIR=$(PREFIX)/man
+-BINDIR=$(PREFIX)/bin
+-SBINDIR=$(PREFIX)/sbin
+-LIBDIR=$(PREFIX)/lib
+-INCDIR=$(PREFIX)/include
+-PROXY_DIR=/etc
+-DESTDIR=
+-
+-CC=gcc
+-CFLAGS=-O -g
++prefix := @prefix@
++exec_prefix := @exec_prefix@
++MANDIR := @mandir@
++BINDIR := @bindir@
++SBINDIR := @sbindir@
++LIBDIR := @libdir@
++INCDIR := @includedir@
++PROXY_DIR := @sysconfdir@
++
++CC := @CC@
++CFLAGS := @CFLAGS@
++LDFLAGS := @LDFLAGS@
++
+ XTRACFLAGS=-Wall -pipe -I. -I/usr/src/linux/include -I/usr/X11R6/include \
+ -I/usr/src/linux-2.2/include -I /usr/src/linux-2.0/include \
+ -DVERSION=\"$(VERSION)\" \
+ -DDEFAULT_PROXY_NAME=\"$(PROXY_DIR)/apmd_proxy\"
+-LDFLAGS=
+ LIBAPM=libapm.la
+ LIBAPM_FLAGS=-rpath $(LIBDIR) -version-info $(LIB_VERSION)
+ XLDFLAGS=-L/usr/X11R6/lib
+ XLIBS=-lXaw -lXmu -lXt -lXext -lSM -lICE -lX11
+-RANLIB=ranlib
+
+ # Uncomment these lines for a production compile
+ #CFLAGS=-O3 -m486 -fomit-frame-pointer
+ #LDFLAGS=-s
+
+-LIBTOOL=libtool --quiet
++top_builddir := @top_builddir@
++
++LIBTOOL = @LIBTOOL@
+ LT_COMPILE = $(LIBTOOL) --mode=compile $(CC)
+ LT_LINK = $(LIBTOOL) --mode=link $(CC)
+ LT_INSTALL = $(LIBTOOL) --mode=install install
+@@ -68,22 +70,22 @@ all: $(EXES)
+
+ $(OBJS): $(HEADERS)
+
+-%.o: %.c
++%.lo: %.c
+ $(LT_COMPILE) -c $(CPPFLAGS) $(CFLAGS) $(XTRACFLAGS) $<
+
+-%: %.o $(LIBAPM)
++%: %.lo $(LIBAPM)
+ $(LT_LINK) -o $@ $< $(LDFLAGS) $(LIBAPM)
+
+-xapm.o: xapm.c
++xapm.lo: xapm.c
+ $(LT_COMPILE) -c $(CPPFLAGS) $(CFLAGS) $(XTRACFLAGS) -DNARROWPROTO $<
+
+-apmd: apmd.o
++apmd: apmd.lo
+
+-apmsleep: apmsleep.o
++apmsleep: apmsleep.lo
+
+-apmexists: apmexists.o
++apmexists: apmexists.lo
+
+-xapm: xapm.o $(LIBAPM)
++xapm: xapm.lo $(LIBAPM)
+ $(LT_LINK) -o $@ $< $(LDFLAGS) $(LIBAPM) $(XLDFLAGS) $(XLIBS)
+
+ $(LIBAPM): apmlib.lo
+diff --git a/configure.ac b/configure.ac
+new file mode 100644
+index 0000000..1c8b7b7
+--- /dev/null
++++ b/configure.ac
+@@ -0,0 +1,8 @@
++AC_INIT([apmd], [3.2.2])
++AC_CONFIG_FILES([Makefile])
++
++LT_INIT
++
++AC_SUBST([top_builddir], [$abs_builddir])
++
++AC_OUTPUT
diff --git a/sys-apps/apmd/metadata.xml b/sys-apps/apmd/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/sys-apps/apmd/metadata.xml
+++ b/sys-apps/apmd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/apparmor-utils/Manifest b/sys-apps/apparmor-utils/Manifest
index 89bb054ab20e..86b70cba9120 100644
--- a/sys-apps/apparmor-utils/Manifest
+++ b/sys-apps/apparmor-utils/Manifest
@@ -1,2 +1,3 @@
-DIST apparmor-2.13.4.tar.gz 7390179 BLAKE2B 49818a010d5e5757dd43710f2af925fbb62a9f8f9be74556ff31a9a8834bebac010762fc6bef3da8d295e487b65d0e0135f4be25bcb01a834846c5e5d65d92a4 SHA512 d42748bf36ae66849f79653a62d499e9d17a97c4d680fb653eb1c379d0593aaa09f7ddfc6f2fa0d2fb468bce05fb25444976f60a5ec24778fdd7ec20d1c13651
-DIST apparmor-3.0.0.tar.gz 7780686 BLAKE2B a9d9edb4fd2cb32b3db322a3f145aac7cea40fac3401b82947b2c5183598cc326d70859466823e3ac0a2227483c7ed7ba0b2f727e9fb7fbf532468716ef8d18f SHA512 2465a8bc400e24e548b0589b7b022fb8325c53858429b9c54204f989d5589d7bd99c9507bde88a48f9965a55edcbac98efeeb6b93aeefe6a27afa0b7e851aea6
+DIST apparmor-3.0.10.tar.gz 7967601 BLAKE2B 8fa094dac6140949cecad8fdf056c6e119291d9490404b0c7379e14d85eff8d6424ec5099e04184424c271b83bb5893389e4023a2946b8296268559f13d20c20 SHA512 94866c3151e6776b9efbbf3852a48e19908ddbc1f3156df1e1bf0b8a79be49b4eba96ce3725a3cf10af3affa00f9a045bbab06ffd3d668c80039eb369b3f6762
+DIST apparmor-3.0.8.tar.gz 7946880 BLAKE2B bbff6c0223b9f20cb53d96cb2e41aa4b7eee51b35a2c010cdd394f85517e87c9a34fb7182f600ba212e99baf4ee1a16a5bfd7e92ec6a9fb9ce6076a216cd89e1 SHA512 539e955b24c6f4f62ef0d7885fc341e4f6bc69ee840981426fb6a40f8f8e5c945f774246cb0efe1a76e778b8047d4a7fe315ab062d2dbe17e524b8527d5a8087
+DIST apparmor-3.1.4.tar.gz 7965268 BLAKE2B a9be29a42bb96c1d2c69a6b7627d59aea023f22fe79bff1a487aa5ddd6845ec98f67be5c597ec51edf4493513dfed3b43fc493f454bcf48b3f43c44572ffc2ae SHA512 db65edfa1b9c1f953940165e71dddcab9a2d378f29683b0b4e5d44f0810bb0105ba3820ba89de927ef90d0a94ea6d61e91ce3de09ec2e385817735a93d4039c4
diff --git a/sys-apps/apparmor-utils/apparmor-utils-2.13.4-r1.ebuild b/sys-apps/apparmor-utils/apparmor-utils-2.13.4-r1.ebuild
deleted file mode 100644
index 58da9b5985db..000000000000
--- a/sys-apps/apparmor-utils/apparmor-utils-2.13.4-r1.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{3_6,3_7} )
-inherit eapi7-ver perl-module python-r1 toolchain-funcs
-
-MY_PV="$(ver_cut 1-2)"
-
-DESCRIPTION="Additional userspace utils to assist with AppArmor profile management"
-HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
-SRC_URI="https://launchpad.net/apparmor/${MY_PV}/${PV}/+download/apparmor-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RESTRICT="test"
-
-COMMON_DEPEND="
- dev-lang/perl
- ~sys-libs/libapparmor-${PV}
- ${PYTHON_DEPS}"
-DEPEND="${COMMON_DEPEND}
- sys-devel/gettext
-"
-RDEPEND="${COMMON_DEPEND}
- ~sys-libs/libapparmor-${PV}[perl,python,${PYTHON_USEDEP}]
- ~sys-apps/apparmor-${PV}
- dev-perl/Locale-gettext
- dev-perl/RPC-XML
- dev-perl/TermReadKey
- virtual/perl-Data-Dumper
- virtual/perl-Getopt-Long"
-
-S=${WORKDIR}/apparmor-${PV}
-
-src_prepare() {
- default
-
- sed -i binutils/Makefile \
- -e 's/Bstatic/Bdynamic/g' || die
-
- sed -i utils/aa-remove-unknown \
- -e 's#^\(APPARMOR_FUNCTIONS=\).*#\1/usr/libexec/rc.apparmor.functions#' || die
-}
-
-src_compile() {
- python_setup
-
- pushd utils > /dev/null || die
- # launches non-make subprocesses causing "make jobserver unavailable"
- # error messages to appear in generated code
- emake -j1
- popd > /dev/null || die
-
- pushd binutils > /dev/null || die
- export EXTRA_CFLAGS="${CFLAGS}"
- emake CC="$(tc-getCC)" USE_SYSTEM=1
- popd > /dev/null || die
-}
-
-src_install() {
- pushd utils > /dev/null || die
- perl_set_version
- emake DESTDIR="${D}" PERLDIR="${D}/${VENDOR_LIB}/Immunix" \
- VIM_INSTALL_PATH="${D}/usr/share/vim/vimfiles/syntax" install
-
- install_python() {
- local -x PYTHONDONTWRITEBYTECODE=
- "${PYTHON}" "${S}"/utils/python-tools-setup.py install --prefix=/usr \
- --root="${D}" --optimize 2
- }
-
- python_foreach_impl install_python
- python_replicate_script "${D}"/usr/bin/aa-easyprof "${D}"/usr/sbin/apparmor_status \
- "${D}"/usr/sbin/aa-{audit,autodep,cleanprof,complain,disable,enforce,genprof,logprof,mergeprof,status,unconfined}
- popd > /dev/null || die
-
- pushd binutils > /dev/null || die
- emake install DESTDIR="${D}" USE_SYSTEM=1
- popd > /dev/null || die
-}
diff --git a/sys-apps/apparmor-utils/apparmor-utils-3.0.0-r1.ebuild b/sys-apps/apparmor-utils/apparmor-utils-3.0.0-r1.ebuild
deleted file mode 100644
index 5dceaae3b4d8..000000000000
--- a/sys-apps/apparmor-utils/apparmor-utils-3.0.0-r1.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{3_6,3_7} )
-inherit eapi7-ver perl-module python-r1 toolchain-funcs
-
-MY_PV="$(ver_cut 1-2)"
-
-DESCRIPTION="Additional userspace utils to assist with AppArmor profile management"
-HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
-SRC_URI="https://launchpad.net/apparmor/${MY_PV}/${MY_PV}/+download/apparmor-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RESTRICT="test"
-
-COMMON_DEPEND="
- dev-lang/perl
- ~sys-libs/libapparmor-${PV}
- ${PYTHON_DEPS}"
-DEPEND="${COMMON_DEPEND}
- sys-devel/gettext
-"
-RDEPEND="${COMMON_DEPEND}
- ~sys-libs/libapparmor-${PV}[perl,python,${PYTHON_USEDEP}]
- ~sys-apps/apparmor-${PV}
- dev-perl/Locale-gettext
- dev-perl/RPC-XML
- dev-perl/TermReadKey
- dev-python/notify2[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- virtual/perl-Data-Dumper
- virtual/perl-Getopt-Long"
-
-S=${WORKDIR}/apparmor-${PV}
-
-src_prepare() {
- default
-
- sed -i binutils/Makefile \
- -e 's/Bstatic/Bdynamic/g' || die
-
- sed -i utils/aa-remove-unknown \
- -e 's#^\(APPARMOR_FUNCTIONS=\).*#\1/usr/libexec/rc.apparmor.functions#' || die
-}
-
-src_compile() {
- python_setup
-
- pushd utils > /dev/null || die
- # launches non-make subprocesses causing "make jobserver unavailable"
- # error messages to appear in generated code
- emake -j1
- popd > /dev/null || die
-
- pushd binutils > /dev/null || die
- export EXTRA_CFLAGS="${CFLAGS}"
- emake CC="$(tc-getCC)" USE_SYSTEM=1
- popd > /dev/null || die
-}
-
-src_install() {
- pushd utils > /dev/null || die
- perl_set_version
- emake DESTDIR="${D}" PERLDIR="${D}/${VENDOR_LIB}/Immunix" \
- VIM_INSTALL_PATH="${D}/usr/share/vim/vimfiles/syntax" install
-
- install_python() {
- local -x PYTHONDONTWRITEBYTECODE=
- "${PYTHON}" "${S}"/utils/python-tools-setup.py install --prefix=/usr \
- --root="${D}" --optimize 2
- }
-
- python_foreach_impl install_python
- python_replicate_script "${D}"/usr/bin/aa-easyprof \
- "${D}"/usr/sbin/aa-{audit,autodep,cleanprof,complain,disable,enforce,genprof,logprof,mergeprof,unconfined}
- popd > /dev/null || die
-
- pushd binutils > /dev/null || die
- emake install DESTDIR="${D}" USE_SYSTEM=1
- popd > /dev/null || die
-}
diff --git a/sys-apps/apparmor-utils/apparmor-utils-3.0.10-r1.ebuild b/sys-apps/apparmor-utils/apparmor-utils-3.0.10-r1.ebuild
new file mode 100644
index 000000000000..fe4d9767c5dd
--- /dev/null
+++ b/sys-apps/apparmor-utils/apparmor-utils-3.0.10-r1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit python-r1 toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Additional userspace utils to assist with AppArmor profile management"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/apparmor/${MY_PV}/${PV}/+download/apparmor-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~riscv"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="test"
+
+COMMON_DEPEND="
+ ~sys-libs/libapparmor-${PV}
+ ${PYTHON_DEPS}"
+DEPEND="${COMMON_DEPEND}
+ sys-devel/gettext
+"
+RDEPEND="${COMMON_DEPEND}
+ ~sys-libs/libapparmor-${PV}[python,${PYTHON_USEDEP}]
+ ~sys-apps/apparmor-${PV}
+ dev-python/notify2[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]"
+
+S=${WORKDIR}/apparmor-${PV}
+
+src_prepare() {
+ default
+
+ sed -i binutils/Makefile \
+ -e 's/Bstatic/Bdynamic/g' || die
+
+ sed -i utils/aa-remove-unknown \
+ -e 's#^\(APPARMOR_FUNCTIONS=\).*#\1/usr/libexec/rc.apparmor.functions#' || die
+}
+
+src_compile() {
+ python_setup
+
+ pushd utils > /dev/null || die
+ # launches non-make subprocesses causing "make jobserver unavailable"
+ # error messages to appear in generated code
+ emake -j1
+ popd > /dev/null || die
+
+ pushd binutils > /dev/null || die
+ export EXTRA_CFLAGS="${CFLAGS}"
+ emake CC="$(tc-getCC)" USE_SYSTEM=1
+ popd > /dev/null || die
+}
+
+src_install() {
+ pushd utils > /dev/null || die
+ emake DESTDIR="${D}" VIM_INSTALL_PATH="${D}/usr/share/vim/vimfiles/syntax" install
+
+ install_python() {
+ local -x PYTHONDONTWRITEBYTECODE=
+ "${PYTHON}" "${S}"/utils/python-tools-setup.py install --prefix=/usr \
+ --root="${D}" --optimize 2 --version=${PV}
+ }
+
+ python_foreach_impl install_python
+ python_replicate_script "${D}"/usr/bin/aa-easyprof \
+ "${D}"/usr/sbin/aa-{audit,autodep,cleanprof,complain,disable,enforce,genprof,logprof,mergeprof,unconfined}
+ popd > /dev/null || die
+
+ pushd binutils > /dev/null || die
+ emake install DESTDIR="${D}" USE_SYSTEM=1
+ popd > /dev/null || die
+}
diff --git a/sys-apps/apparmor-utils/apparmor-utils-3.0.8.ebuild b/sys-apps/apparmor-utils/apparmor-utils-3.0.8.ebuild
new file mode 100644
index 000000000000..7b0f7036c5aa
--- /dev/null
+++ b/sys-apps/apparmor-utils/apparmor-utils-3.0.8.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+inherit perl-module python-r1 toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Additional userspace utils to assist with AppArmor profile management"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/apparmor/${MY_PV}/${PV}/+download/apparmor-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~riscv"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="test"
+
+COMMON_DEPEND="
+ dev-lang/perl
+ ~sys-libs/libapparmor-${PV}
+ ${PYTHON_DEPS}"
+DEPEND="${COMMON_DEPEND}
+ sys-devel/gettext
+"
+RDEPEND="${COMMON_DEPEND}
+ ~sys-libs/libapparmor-${PV}[perl,python,${PYTHON_USEDEP}]
+ ~sys-apps/apparmor-${PV}
+ dev-perl/Locale-gettext
+ dev-perl/RPC-XML
+ dev-perl/TermReadKey
+ dev-python/notify2[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ virtual/perl-Data-Dumper
+ virtual/perl-Getopt-Long"
+
+S=${WORKDIR}/apparmor-${PV}
+
+src_prepare() {
+ default
+
+ sed -i binutils/Makefile \
+ -e 's/Bstatic/Bdynamic/g' || die
+
+ sed -i utils/aa-remove-unknown \
+ -e 's#^\(APPARMOR_FUNCTIONS=\).*#\1/usr/libexec/rc.apparmor.functions#' || die
+}
+
+src_compile() {
+ python_setup
+
+ pushd utils > /dev/null || die
+ # launches non-make subprocesses causing "make jobserver unavailable"
+ # error messages to appear in generated code
+ emake -j1
+ popd > /dev/null || die
+
+ pushd binutils > /dev/null || die
+ export EXTRA_CFLAGS="${CFLAGS}"
+ emake CC="$(tc-getCC)" USE_SYSTEM=1
+ popd > /dev/null || die
+}
+
+src_install() {
+ pushd utils > /dev/null || die
+ perl_set_version
+ emake DESTDIR="${D}" PERLDIR="${D}/${VENDOR_LIB}/Immunix" \
+ VIM_INSTALL_PATH="${D}/usr/share/vim/vimfiles/syntax" install
+
+ install_python() {
+ local -x PYTHONDONTWRITEBYTECODE=
+ "${PYTHON}" "${S}"/utils/python-tools-setup.py install --prefix=/usr \
+ --root="${D}" --optimize 2 --version=${PV}
+ }
+
+ python_foreach_impl install_python
+ python_replicate_script "${D}"/usr/bin/aa-easyprof \
+ "${D}"/usr/sbin/aa-{audit,autodep,cleanprof,complain,disable,enforce,genprof,logprof,mergeprof,unconfined}
+ popd > /dev/null || die
+
+ pushd binutils > /dev/null || die
+ emake install DESTDIR="${D}" USE_SYSTEM=1
+ popd > /dev/null || die
+}
diff --git a/sys-apps/apparmor-utils/apparmor-utils-3.1.4-r1.ebuild b/sys-apps/apparmor-utils/apparmor-utils-3.1.4-r1.ebuild
new file mode 100644
index 000000000000..a154b882fce2
--- /dev/null
+++ b/sys-apps/apparmor-utils/apparmor-utils-3.1.4-r1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit python-r1 toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Additional userspace utils to assist with AppArmor profile management"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/apparmor/${MY_PV}/${PV}/+download/apparmor-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="test"
+
+COMMON_DEPEND="
+ ~sys-libs/libapparmor-${PV}
+ ${PYTHON_DEPS}"
+DEPEND="${COMMON_DEPEND}
+ sys-devel/gettext
+"
+RDEPEND="${COMMON_DEPEND}
+ ~sys-libs/libapparmor-${PV}[python,${PYTHON_USEDEP}]
+ ~sys-apps/apparmor-${PV}
+ dev-python/notify2[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]"
+
+S=${WORKDIR}/apparmor-${PV}
+
+src_prepare() {
+ default
+
+ sed -i binutils/Makefile \
+ -e 's/Bstatic/Bdynamic/g' || die
+
+ sed -i utils/aa-remove-unknown \
+ -e 's#^\(APPARMOR_FUNCTIONS=\).*#\1/usr/libexec/rc.apparmor.functions#' || die
+}
+
+src_compile() {
+ python_setup
+
+ pushd utils > /dev/null || die
+ # launches non-make subprocesses causing "make jobserver unavailable"
+ # error messages to appear in generated code
+ emake -j1
+ popd > /dev/null || die
+
+ pushd binutils > /dev/null || die
+ export EXTRA_CFLAGS="${CFLAGS}"
+ emake CC="$(tc-getCC)" USE_SYSTEM=1
+ popd > /dev/null || die
+}
+
+src_install() {
+ pushd utils > /dev/null || die
+ emake DESTDIR="${D}" VIM_INSTALL_PATH="${D}/usr/share/vim/vimfiles/syntax" install
+
+ install_python() {
+ local -x PYTHONDONTWRITEBYTECODE=
+ "${PYTHON}" "${S}"/utils/python-tools-setup.py install --prefix=/usr \
+ --root="${D}" --optimize 2 --version=${PV}
+ }
+
+ python_foreach_impl install_python
+ python_replicate_script "${D}"/usr/bin/aa-easyprof \
+ "${D}"/usr/sbin/aa-{audit,autodep,cleanprof,complain,disable,enforce,genprof,logprof,mergeprof,unconfined}
+ popd > /dev/null || die
+
+ pushd binutils > /dev/null || die
+ emake install DESTDIR="${D}" USE_SYSTEM=1
+ popd > /dev/null || die
+}
diff --git a/sys-apps/apparmor-utils/metadata.xml b/sys-apps/apparmor-utils/metadata.xml
index 42d1e8f65243..32fae81e7e61 100644
--- a/sys-apps/apparmor-utils/metadata.xml
+++ b/sys-apps/apparmor-utils/metadata.xml
@@ -1,14 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>kensington@gentoo.org</email>
- </maintainer>
<maintainer type="project">
<email>hardened@gentoo.org</email>
<name>Gentoo Hardened</name>
</maintainer>
<upstream>
<remote-id type="launchpad">apparmor</remote-id>
+ <remote-id type="gitlab">apparmor/apparmor</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/apparmor/Manifest b/sys-apps/apparmor/Manifest
index 89bb054ab20e..86b70cba9120 100644
--- a/sys-apps/apparmor/Manifest
+++ b/sys-apps/apparmor/Manifest
@@ -1,2 +1,3 @@
-DIST apparmor-2.13.4.tar.gz 7390179 BLAKE2B 49818a010d5e5757dd43710f2af925fbb62a9f8f9be74556ff31a9a8834bebac010762fc6bef3da8d295e487b65d0e0135f4be25bcb01a834846c5e5d65d92a4 SHA512 d42748bf36ae66849f79653a62d499e9d17a97c4d680fb653eb1c379d0593aaa09f7ddfc6f2fa0d2fb468bce05fb25444976f60a5ec24778fdd7ec20d1c13651
-DIST apparmor-3.0.0.tar.gz 7780686 BLAKE2B a9d9edb4fd2cb32b3db322a3f145aac7cea40fac3401b82947b2c5183598cc326d70859466823e3ac0a2227483c7ed7ba0b2f727e9fb7fbf532468716ef8d18f SHA512 2465a8bc400e24e548b0589b7b022fb8325c53858429b9c54204f989d5589d7bd99c9507bde88a48f9965a55edcbac98efeeb6b93aeefe6a27afa0b7e851aea6
+DIST apparmor-3.0.10.tar.gz 7967601 BLAKE2B 8fa094dac6140949cecad8fdf056c6e119291d9490404b0c7379e14d85eff8d6424ec5099e04184424c271b83bb5893389e4023a2946b8296268559f13d20c20 SHA512 94866c3151e6776b9efbbf3852a48e19908ddbc1f3156df1e1bf0b8a79be49b4eba96ce3725a3cf10af3affa00f9a045bbab06ffd3d668c80039eb369b3f6762
+DIST apparmor-3.0.8.tar.gz 7946880 BLAKE2B bbff6c0223b9f20cb53d96cb2e41aa4b7eee51b35a2c010cdd394f85517e87c9a34fb7182f600ba212e99baf4ee1a16a5bfd7e92ec6a9fb9ce6076a216cd89e1 SHA512 539e955b24c6f4f62ef0d7885fc341e4f6bc69ee840981426fb6a40f8f8e5c945f774246cb0efe1a76e778b8047d4a7fe315ab062d2dbe17e524b8527d5a8087
+DIST apparmor-3.1.4.tar.gz 7965268 BLAKE2B a9be29a42bb96c1d2c69a6b7627d59aea023f22fe79bff1a487aa5ddd6845ec98f67be5c597ec51edf4493513dfed3b43fc493f454bcf48b3f43c44572ffc2ae SHA512 db65edfa1b9c1f953940165e71dddcab9a2d378f29683b0b4e5d44f0810bb0105ba3820ba89de927ef90d0a94ea6d61e91ce3de09ec2e385817735a93d4039c4
diff --git a/sys-apps/apparmor/apparmor-2.13.4.ebuild b/sys-apps/apparmor/apparmor-2.13.4.ebuild
deleted file mode 100644
index a4c693e37c5c..000000000000
--- a/sys-apps/apparmor/apparmor-2.13.4.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs
-
-MY_PV="$(ver_cut 1-2)"
-
-DESCRIPTION="Userspace utils and init scripts for the AppArmor application security system"
-HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
-SRC_URI="https://launchpad.net/${PN}/${MY_PV}/${PV}/+download/${PN}-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="doc"
-
-RESTRICT="test" # bug 675854
-
-RDEPEND="~sys-libs/libapparmor-${PV}"
-DEPEND="${RDEPEND}
- dev-lang/perl
- sys-devel/bison
- sys-devel/gettext
- sys-devel/flex
- doc? ( dev-tex/latex2html )
-"
-
-S=${WORKDIR}/apparmor-${PV}/parser
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.13.1-makefile.patch"
- "${FILESDIR}/${PN}-2.11.1-dynamic-link.patch"
-)
-
-src_prepare() {
- default
-
- # remove warning about missing file that controls features
- # we don't currently support
- sed -e "/installation problem/ctrue" -i rc.apparmor.functions || die
-}
-
-src_compile() {
- emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" USE_SYSTEM=1 arch manpages
- use doc && emake pdf
-}
-
-src_test() {
- emake CXX="$(tc-getCXX)" USE_SYSTEM=1 check
-}
-
-src_install() {
- emake DESTDIR="${D}" DISTRO="unknown" USE_SYSTEM=1 install
-
- dodir /etc/apparmor.d/disable
-
- newinitd "${FILESDIR}/${PN}-init" ${PN}
- systemd_newunit "${FILESDIR}/apparmor.service" apparmor.service
-
- use doc && dodoc techdoc.pdf
-
- exeinto /usr/share/apparmor
- doexe "${FILESDIR}/apparmor_load.sh"
- doexe "${FILESDIR}/apparmor_unload.sh"
-}
diff --git a/sys-apps/apparmor/apparmor-3.0.0.ebuild b/sys-apps/apparmor/apparmor-3.0.0.ebuild
deleted file mode 100644
index 36c5b717c4b8..000000000000
--- a/sys-apps/apparmor/apparmor-3.0.0.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs
-
-MY_PV="$(ver_cut 1-2)"
-
-DESCRIPTION="Userspace utils and init scripts for the AppArmor application security system"
-HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
-SRC_URI="https://launchpad.net/${PN}/${MY_PV}/${MY_PV}/+download/${PN}-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="doc"
-
-RESTRICT="test" # bug 675854
-
-RDEPEND="~sys-libs/libapparmor-${PV}"
-DEPEND="${RDEPEND}
- dev-lang/perl
- sys-devel/bison
- sys-devel/gettext
- sys-devel/flex
- doc? ( dev-tex/latex2html )
-"
-
-S=${WORKDIR}/apparmor-${PV}/parser
-
-PATCHES=(
- "${FILESDIR}/${PN}-3.0.0-makefile.patch"
- "${FILESDIR}/${PN}-2.11.1-dynamic-link.patch"
-)
-
-src_prepare() {
- default
-
- # remove warning about missing file that controls features
- # we don't currently support
- sed -e "/installation problem/ctrue" -i rc.apparmor.functions || die
-
- # bug 634782
- sed -e "s/cpp/$(tc-getCPP) -/" \
- -i ../common/list_capabilities.sh \
- -i ../common/list_af_names.sh || die
-}
-
-src_compile() {
- emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" USE_SYSTEM=1 arch manpages
- use doc && emake pdf
-}
-
-src_test() {
- emake CXX="$(tc-getCXX)" USE_SYSTEM=1 check
-}
-
-src_install() {
- emake DESTDIR="${D}" DISTRO="unknown" USE_SYSTEM=1 install
-
- dodir /etc/apparmor.d/disable
-
- newinitd "${FILESDIR}/${PN}-init-1" ${PN}
- systemd_newunit "${FILESDIR}/apparmor.service" apparmor.service
-
- use doc && dodoc techdoc.pdf
-
- exeinto /usr/share/apparmor
- doexe "${FILESDIR}/apparmor_load.sh"
- doexe "${FILESDIR}/apparmor_unload.sh"
-}
diff --git a/sys-apps/apparmor/apparmor-3.0.10.ebuild b/sys-apps/apparmor/apparmor-3.0.10.ebuild
new file mode 100644
index 000000000000..3bff9b266481
--- /dev/null
+++ b/sys-apps/apparmor/apparmor-3.0.10.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Userspace utils and init scripts for the AppArmor application security system"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/${PN}/${MY_PV}/${PV}/+download/${PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~riscv"
+IUSE="doc"
+
+# Was restricted previously b/c needs apparmor support in kernel
+# TODO: add check to ebuild
+#RESTRICT="test" # bug 675854
+
+RDEPEND="~sys-libs/libapparmor-${PV}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-lang/perl
+ sys-apps/which
+ app-alternatives/yacc
+ sys-devel/gettext
+ app-alternatives/lex
+ doc? ( dev-tex/latex2html )
+"
+
+S=${WORKDIR}/apparmor-${PV}/parser
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.5-makefile.patch"
+ "${FILESDIR}/${PN}-2.11.1-dynamic-link.patch"
+)
+
+src_prepare() {
+ default
+
+ # remove warning about missing file that controls features
+ # we don't currently support
+ sed -e "/installation problem/ctrue" -i rc.apparmor.functions || die
+
+ # bug 634782
+ sed -e "s/cpp/$(tc-getCPP) -/" \
+ -i ../common/list_capabilities.sh \
+ -i ../common/list_af_names.sh || die
+}
+
+src_configure() {
+ # ODR violations (bug #863524)
+ filter-lto
+
+ default
+}
+
+src_compile() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ CPP="$(tc-getCPP) -" \
+ CXX="$(tc-getCXX)" \
+ USE_SYSTEM=1 \
+ arch manpages
+ use doc && emake pdf
+}
+
+src_test() {
+ emake CXX="$(tc-getCXX)" USE_SYSTEM=1 check
+}
+
+src_install() {
+ emake \
+ CPP="$(tc-getCPP) -" \
+ DESTDIR="${D}" \
+ DISTRO="unknown" \
+ USE_SYSTEM=1 \
+ install
+
+ dodir /etc/apparmor.d/disable
+
+ newinitd "${FILESDIR}/${PN}-init-1" ${PN}
+ systemd_newunit "${FILESDIR}/apparmor.service" apparmor.service
+
+ use doc && dodoc techdoc.pdf
+
+ exeinto /usr/share/apparmor
+ doexe "${FILESDIR}/apparmor_load.sh"
+ doexe "${FILESDIR}/apparmor_unload.sh"
+}
diff --git a/sys-apps/apparmor/apparmor-3.0.8.ebuild b/sys-apps/apparmor/apparmor-3.0.8.ebuild
new file mode 100644
index 000000000000..3bff9b266481
--- /dev/null
+++ b/sys-apps/apparmor/apparmor-3.0.8.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Userspace utils and init scripts for the AppArmor application security system"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/${PN}/${MY_PV}/${PV}/+download/${PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~riscv"
+IUSE="doc"
+
+# Was restricted previously b/c needs apparmor support in kernel
+# TODO: add check to ebuild
+#RESTRICT="test" # bug 675854
+
+RDEPEND="~sys-libs/libapparmor-${PV}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-lang/perl
+ sys-apps/which
+ app-alternatives/yacc
+ sys-devel/gettext
+ app-alternatives/lex
+ doc? ( dev-tex/latex2html )
+"
+
+S=${WORKDIR}/apparmor-${PV}/parser
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.5-makefile.patch"
+ "${FILESDIR}/${PN}-2.11.1-dynamic-link.patch"
+)
+
+src_prepare() {
+ default
+
+ # remove warning about missing file that controls features
+ # we don't currently support
+ sed -e "/installation problem/ctrue" -i rc.apparmor.functions || die
+
+ # bug 634782
+ sed -e "s/cpp/$(tc-getCPP) -/" \
+ -i ../common/list_capabilities.sh \
+ -i ../common/list_af_names.sh || die
+}
+
+src_configure() {
+ # ODR violations (bug #863524)
+ filter-lto
+
+ default
+}
+
+src_compile() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ CPP="$(tc-getCPP) -" \
+ CXX="$(tc-getCXX)" \
+ USE_SYSTEM=1 \
+ arch manpages
+ use doc && emake pdf
+}
+
+src_test() {
+ emake CXX="$(tc-getCXX)" USE_SYSTEM=1 check
+}
+
+src_install() {
+ emake \
+ CPP="$(tc-getCPP) -" \
+ DESTDIR="${D}" \
+ DISTRO="unknown" \
+ USE_SYSTEM=1 \
+ install
+
+ dodir /etc/apparmor.d/disable
+
+ newinitd "${FILESDIR}/${PN}-init-1" ${PN}
+ systemd_newunit "${FILESDIR}/apparmor.service" apparmor.service
+
+ use doc && dodoc techdoc.pdf
+
+ exeinto /usr/share/apparmor
+ doexe "${FILESDIR}/apparmor_load.sh"
+ doexe "${FILESDIR}/apparmor_unload.sh"
+}
diff --git a/sys-apps/apparmor/apparmor-3.1.4.ebuild b/sys-apps/apparmor/apparmor-3.1.4.ebuild
new file mode 100644
index 000000000000..141029aefee8
--- /dev/null
+++ b/sys-apps/apparmor/apparmor-3.1.4.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Userspace utils and init scripts for the AppArmor application security system"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/${PN}/${MY_PV}/${PV}/+download/${PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv"
+IUSE="doc"
+
+# Was restricted previously b/c needs apparmor support in kernel
+# TODO: add check to ebuild
+#RESTRICT="test" # bug 675854
+
+RDEPEND="~sys-libs/libapparmor-${PV}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-lang/perl
+ sys-apps/which
+ app-alternatives/yacc
+ sys-devel/gettext
+ app-alternatives/lex
+ doc? ( dev-tex/latex2html )
+"
+
+S=${WORKDIR}/apparmor-${PV}/parser
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.5-makefile.patch"
+ "${FILESDIR}/${PN}-2.11.1-dynamic-link.patch"
+)
+
+src_prepare() {
+ default
+
+ # remove warning about missing file that controls features
+ # we don't currently support
+ sed -e "/installation problem/ctrue" -i rc.apparmor.functions || die
+
+ # bug 634782
+ sed -e "s/cpp/$(tc-getCPP) -/" \
+ -i ../common/list_capabilities.sh \
+ -i ../common/list_af_names.sh || die
+}
+
+src_configure() {
+ # ODR violations (bug #863524)
+ filter-lto
+
+ default
+}
+
+src_compile() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ CPP="$(tc-getCPP) -" \
+ CXX="$(tc-getCXX)" \
+ USE_SYSTEM=1 \
+ arch manpages
+ use doc && emake pdf
+}
+
+src_test() {
+ emake CXX="$(tc-getCXX)" USE_SYSTEM=1 check
+}
+
+src_install() {
+ emake \
+ CPP="$(tc-getCPP) -" \
+ DESTDIR="${D}" \
+ DISTRO="unknown" \
+ USE_SYSTEM=1 \
+ install
+
+ dodir /etc/apparmor.d/disable
+
+ newinitd "${FILESDIR}/${PN}-init-1" ${PN}
+ systemd_newunit "${FILESDIR}/apparmor.service" apparmor.service
+
+ use doc && dodoc techdoc.pdf
+
+ exeinto /usr/share/apparmor
+ doexe "${FILESDIR}/apparmor_load.sh"
+ doexe "${FILESDIR}/apparmor_unload.sh"
+}
diff --git a/sys-apps/apparmor/files/apparmor-2.13.1-makefile.patch b/sys-apps/apparmor/files/apparmor-2.13.1-makefile.patch
deleted file mode 100644
index 239ff81f5cdc..000000000000
--- a/sys-apps/apparmor/files/apparmor-2.13.1-makefile.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -28,7 +28,7 @@
- CONFDIR=/etc/apparmor
- INSTALL_CONFDIR=${DESTDIR}${CONFDIR}
- LOCALEDIR=/usr/share/locale
--MANPAGES=apparmor.d.5 apparmor.7 apparmor_parser.8 subdomain.conf.5 aa-teardown.8
-+MANPAGES=apparmor.d.5 apparmor.7 apparmor_parser.8 aa-teardown.8
-
- YACC := bison
- YFLAGS := -d
-@@ -371,11 +371,9 @@
- .PHONY: install-indep
- install-indep: indep
- install -m 755 -d $(INSTALL_CONFDIR)
-- install -m 644 subdomain.conf $(INSTALL_CONFDIR)
-+ install -m 755 -d ${DESTDIR}/usr/libexec
- install -m 644 parser.conf $(INSTALL_CONFDIR)
-- install -m 755 -d ${DESTDIR}/var/lib/apparmor
-- install -m 755 -d $(APPARMOR_BIN_PREFIX)
-- install -m 755 rc.apparmor.functions $(APPARMOR_BIN_PREFIX)
-+ install -m 755 rc.apparmor.functions ${DESTDIR}/usr/libexec
- $(MAKE) -C po install NAME=${NAME} DESTDIR=${DESTDIR}
- $(MAKE) install_manpages DESTDIR=${DESTDIR}
-
diff --git a/sys-apps/apparmor/files/apparmor-3.0.0-makefile.patch b/sys-apps/apparmor/files/apparmor-3.0.0-makefile.patch
deleted file mode 100644
index 9c03a4465c36..000000000000
--- a/sys-apps/apparmor/files/apparmor-3.0.0-makefile.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-* Avoid installing empty /var/lib/apparmor
-* Install rc.apparmor.functions to Gentoo-appropriate location
-
---- a/Makefile
-+++ b/Makefile
-@@ -407,10 +407,10 @@
- .PHONY: install-indep
- install-indep: indep
- install -m 755 -d $(INSTALL_CONFDIR)
-+ install -m 755 -d ${DESTDIR}/usr/libexec
- install -m 644 parser.conf $(INSTALL_CONFDIR)
-- install -m 755 -d ${DESTDIR}/var/lib/apparmor
- install -m 755 -d $(APPARMOR_BIN_PREFIX)
-- install -m 755 rc.apparmor.functions $(APPARMOR_BIN_PREFIX)
-+ install -m 755 rc.apparmor.functions ${DESTDIR}/usr/libexec
- $(MAKE) -C po install NAME=${NAME} DESTDIR=${DESTDIR}
- $(MAKE) install_manpages DESTDIR=${DESTDIR}
-
diff --git a/sys-apps/apparmor/files/apparmor-3.0.5-makefile.patch b/sys-apps/apparmor/files/apparmor-3.0.5-makefile.patch
new file mode 100644
index 000000000000..5d4dd9c57e12
--- /dev/null
+++ b/sys-apps/apparmor/files/apparmor-3.0.5-makefile.patch
@@ -0,0 +1,18 @@
+* Avoid installing empty /var/lib/apparmor
+* Install rc.apparmor.functions to Gentoo-appropriate location
+
+--- a/Makefile
++++ b/Makefile
+@@ -407,10 +407,10 @@
+ .PHONY: install-indep
+ install-indep: indep
+ install -m 755 -d $(INSTALL_CONFDIR)
++ install -m 755 -d ${DESTDIR}/usr/libexec
+ install -m 644 parser.conf $(INSTALL_CONFDIR)
+- install -m 755 -d ${DESTDIR}/var/lib/apparmor
+ install -m 755 -d $(APPARMOR_BIN_PREFIX)
+- install -m 755 rc.apparmor.functions $(APPARMOR_BIN_PREFIX)
++ install -m 755 rc.apparmor.functions ${DESTDIR}/usr/libexec
+ install -m 755 profile-load $(APPARMOR_BIN_PREFIX)
+ $(MAKE) -C po install NAME=${NAME} DESTDIR=${DESTDIR}
+
diff --git a/sys-apps/apparmor/files/apparmor-init b/sys-apps/apparmor/files/apparmor-init
deleted file mode 100644
index 48877e4b6117..000000000000
--- a/sys-apps/apparmor/files/apparmor-init
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-description="Load all configured profiles for the AppArmor security module."
-description_reload="Reload all profiles"
-
-extra_started_commands="reload"
-
-aa_action() {
- local arg=$1
- local return
-
- shift
- $*
- return=$?
-
- if [ ${return} -eq 0 ]; then
- aa_log_success_msg $arg
- else
- aa_log_failure_msg arg
- fi
-
- return $return
-}
-
-aa_log_action_start() {
- ebegin $1
-}
-
-aa_log_action_end() {
- eend $1
-}
-
-aa_log_success_msg() {
- einfo $1
-}
-
-aa_log_warning_msg() {
- ewarn $1
-}
-
-aa_log_failure_msg() {
- eerror $1
-}
-
-aa_log_skipped_msg() {
- einfo $1
-}
-
-aa_log_daemon_msg() {
- einfo $1
-}
-
-aa_log_end_msg() {
- eend $1
-}
-
-. /usr/libexec/rc.apparmor.functions
-
-start() {
- ebegin "Starting AppArmor"
- eindent
-
- if ! is_apparmor_loaded ; then
- load_module
- if [ $? -ne 0 ]; then
- eerror "AppArmor kernel support is not present"
- eend 1
- return 1
- fi
- fi
-
- parse_profiles load
-
- eoutdent
-}
-
-stop() {
- ebegin "Stopping AppArmor"
- eindent
- apparmor_stop
- eoutdent
-}
-
-reload() {
- # todo: split out clean_profiles into its own function upstream
- # so we can do parse_profiles reload && clean_profiles
- # and do a proper reload instead of restart
- apparmor_restart
-}
diff --git a/sys-apps/apparmor/files/apparmor-init-1 b/sys-apps/apparmor/files/apparmor-init-1
index 4addaee294b3..37e2e6e48955 100644
--- a/sys-apps/apparmor/files/apparmor-init-1
+++ b/sys-apps/apparmor/files/apparmor-init-1
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
description="Load all configured profiles for the AppArmor security module."
diff --git a/sys-apps/apparmor/metadata.xml b/sys-apps/apparmor/metadata.xml
index 42d1e8f65243..e3e288331f95 100644
--- a/sys-apps/apparmor/metadata.xml
+++ b/sys-apps/apparmor/metadata.xml
@@ -1,14 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>kensington@gentoo.org</email>
- </maintainer>
<maintainer type="project">
<email>hardened@gentoo.org</email>
<name>Gentoo Hardened</name>
</maintainer>
<upstream>
+ <remote-id type="cpe">cpe:/a:canonical:apparmor</remote-id>
<remote-id type="launchpad">apparmor</remote-id>
+ <remote-id type="gitlab">apparmor/apparmor</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/apply-default-acl/apply-default-acl-0.4.4.ebuild b/sys-apps/apply-default-acl/apply-default-acl-0.4.4.ebuild
index 6d77b523fbd3..80219c824419 100644
--- a/sys-apps/apply-default-acl/apply-default-acl-0.4.4.ebuild
+++ b/sys-apps/apply-default-acl/apply-default-acl-0.4.4.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Apply default POSIX ACLs to files and directories"
-HOMEPAGE="http://michael.orlitzky.com/code/apply-default-acl.xhtml"
-SRC_URI="http://michael.orlitzky.com/code/releases/${P}.tar.xz"
+HOMEPAGE="https://michael.orlitzky.com/code/apply-default-acl.xhtml"
+SRC_URI="https://michael.orlitzky.com/code/releases/${P}.tar.xz"
LICENSE="AGPL-3"
SLOT="0"
diff --git a/sys-apps/apply-default-acl/metadata.xml b/sys-apps/apply-default-acl/metadata.xml
index 91aab5775d4a..393cbc12e176 100644
--- a/sys-apps/apply-default-acl/metadata.xml
+++ b/sys-apps/apply-default-acl/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mjo@gentoo.org</email>
diff --git a/sys-apps/arch-chroot/Manifest b/sys-apps/arch-chroot/Manifest
new file mode 100644
index 000000000000..8fa0f1e957d1
--- /dev/null
+++ b/sys-apps/arch-chroot/Manifest
@@ -0,0 +1 @@
+DIST arch-install-scripts-v28.tar.gz 19730 BLAKE2B 0ff5ba79b200ad642e049ec19217cc5c0794d627a28f42e03c0df2444fef4d8488a6ee011d26fb8fe958c1a1a2fa0a13920567e394b2389c772f516b1fe8f388 SHA512 09a027b04b70e01ccd1fd82e3a443c876bdf978b94a922de9dea4dbc187360460ea35720816724b72fc31b02338b11bf39b47ec9156518a8a3ade000530bf1df
diff --git a/sys-apps/arch-chroot/arch-chroot-28.ebuild b/sys-apps/arch-chroot/arch-chroot-28.ebuild
new file mode 100644
index 000000000000..e72e46b48b42
--- /dev/null
+++ b/sys-apps/arch-chroot/arch-chroot-28.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+DESCRIPTION="Wraps the chroot command while ensuring that important filesystems are mounted"
+HOMEPAGE="https://github.com/archlinux/arch-install-scripts"
+SRC_URI="https://github.com/archlinux/arch-install-scripts/archive/refs/tags/v${PV}.tar.gz -> arch-install-scripts-v${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+
+BDEPEND="app-text/asciidoc"
+
+S="${WORKDIR}/arch-install-scripts-${PV}"
+
+src_compile() {
+ emake MANS="doc/arch-chroot.8" BINPROGS="arch-chroot"
+}
+
+src_test() {
+ emake MANS="doc/arch-chroot.8" BINPROGS="arch-chroot" check
+}
+
+src_install() {
+ dobin arch-chroot
+ doman doc/arch-chroot.8
+ newbashcomp "completion/arch-chroot.bash" "arch-chroot"
+}
diff --git a/sys-apps/arch-chroot/metadata.xml b/sys-apps/arch-chroot/metadata.xml
new file mode 100644
index 000000000000..7350009d97ca
--- /dev/null
+++ b/sys-apps/arch-chroot/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>cat@catcream.org</email>
+ <name>Alfred Persson</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>peeweep@0x0.ee</email>
+ <name>jinqiang zhang</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">archlinux/arch-install-scripts</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/arrayprobe/arrayprobe-2.0-r2.ebuild b/sys-apps/arrayprobe/arrayprobe-2.0-r2.ebuild
deleted file mode 100644
index 5f961969810b..000000000000
--- a/sys-apps/arrayprobe/arrayprobe-2.0-r2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="Utility to report status of an HP (Compaq) array controller (both IDA & CCISS)"
-HOMEPAGE="http://www.strocamp.net/opensource/arrayprobe.php"
-SRC_URI="http://www.strocamp.net/opensource/compaq/downloads/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ia64 x86"
-IUSE=""
-
-PATCHES=(
- "${FILESDIR}/${PV}-malloc-strlen.patch"
- "${FILESDIR}/${PV}-ida_headers.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
-}
diff --git a/sys-apps/arrayprobe/arrayprobe-2.0-r3.ebuild b/sys-apps/arrayprobe/arrayprobe-2.0-r3.ebuild
new file mode 100644
index 000000000000..6aca72bbef67
--- /dev/null
+++ b/sys-apps/arrayprobe/arrayprobe-2.0-r3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Utility to report status of an HP (Compaq) array controller (both IDA & CCISS)"
+HOMEPAGE="http://www.strocamp.net/opensource/arrayprobe.php"
+SRC_URI="http://www.strocamp.net/opensource/compaq/downloads/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ia64 x86"
+
+PATCHES=(
+ "${FILESDIR}/${PV}-malloc-strlen.patch"
+ "${FILESDIR}/${PV}-ida_headers.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/arrayprobe/metadata.xml b/sys-apps/arrayprobe/metadata.xml
index f35b285c1eee..73dda144f9ac 100644
--- a/sys-apps/arrayprobe/metadata.xml
+++ b/sys-apps/arrayprobe/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>chainsaw@gentoo.org</email>
-</maintainer>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
diff --git a/sys-apps/asahi-bless/Manifest b/sys-apps/asahi-bless/Manifest
new file mode 100644
index 000000000000..8a0aa5e02070
--- /dev/null
+++ b/sys-apps/asahi-bless/Manifest
@@ -0,0 +1,64 @@
+DIST adler32-1.2.0.crate 6411 BLAKE2B 51d44ccfd774158687b8244e83377e40ff896364e3d41e9015665131cc2a176d4ca0ab5a84df027dec0869ee735ee36f5687a06c1d2341de666070cdbab89483 SHA512 8ed72612fb78e213fc92963fdae0508ef26988656c939e6c9cddccbe2658d4a956a8ae934d9658262a8b2687dc446b3f1ee7614128b440487c81e606526dfda3
+DIST ahash-0.7.6.crate 38030 BLAKE2B aca3661477fcd7822d6d10970151e05c28e1615f8cd7ddaac064b15102027e404b19b0f3f16dd76145048594ea1c22ae27dd08cc05c411efbae9ec7a1ef55ce9 SHA512 61354688b6fb096359faefb6f34be958cd2215d56b88c22c737d24183eaad433f811bc9e64f927e4852c87d2799c22fda82b55cfbef2ed6357ff74f0c4ffec68
+DIST anstream-0.6.4.crate 20593 BLAKE2B 2b617c45d351e01222fc50f52551e57b4a8b0ecf84c6ddf44336c7c9d3b9dde15232b1c4f664d567849295bf8f03612b73ded56f1b3937392eb7718f1e0446c3 SHA512 0b983d626c53d1edc184f04cbd2c004eb9c40d14486b23cce86ebf50cbd3d916d32cb0423ae1d67c2b83b966690090af740538538ef846c0b126c686a1ebe159
+DIST anstyle-1.0.4.crate 13998 BLAKE2B fb501700855709e53438461c2f4b48d869613e7bb3bb700db8bd0d95082876d3782dc2cfe3ce110bb4a206994de56afe0e90fe89f9ccd07c60fe1c652123ba59 SHA512 671c6f57106198bcfc2f9000aacba98fabacfadfce2329dfe8d0e0a2af9404da483d7a844ca2b08e1fc0249371f574c13d0082c9f7a4ed90ff581308257a52d3
+DIST anstyle-parse-0.2.3.crate 24699 BLAKE2B 17e8638187ccc1ca0174a8cec7f7daeee7e0d8b8c430f7e74f9b10d8de4b49fd1c6facfdafde305b7a3e55b1ebf2b4e8ec4975a0cce691514ddae9eb5b5e711e SHA512 4a6d0f706d75c9b3c5144f34efdef3ef8fcd075962c594a23a6209ed56112563a34b3c01e05a08a0868d59204272d06211b2585cb9d06ce075ea875bedb2f399
+DIST anstyle-query-1.0.1.crate 8620 BLAKE2B 65d81d089b6f84e062276807e180e6a8b793cdf570e4e82a88dd1670ed1e15f6edc9ca8f55873069273efe170c2dbbbf75dd3b2b773c78d23c896c0d6f3bb237 SHA512 70178a50e4025a0ded9fa7235d045cd965889efe63bc319e418a3e34406a66a42c19a2d7684d8d607046cd8419ba9b789607fe5c50aeeeabb23d72de6ad43039
+DIST anstyle-wincon-3.0.2.crate 11272 BLAKE2B 73e124773f618a744b17017d4680ec6ccc84ff94fbe2e565073fbcc0facecd3cb65356cf27746d07f453bc917cbeb2ade3a618c6b8578d64cff4828c99569868 SHA512 4cc194faacffa01c6989354c1cadbf1134f0945250f67b7020ab5b475e30db34c799176bd335a6265386cb9c5e8b5bcbdf35894ec0c809b140ffe1c406751931
+DIST asahi-bless-0.3.0.tar.gz 23404 BLAKE2B a7467e70d14259a6449ed126f80cc964c0e666006cc978208586d653e73d9d73d77f09d444a23927a6e0f485088a1461d95d9eacec3bf660b4b52789a9abc5fa SHA512 a6620efa1f22a68c4a25d89412ccbe89d143e253f6c1716d2a17a9deed6c8718b044b2cb4996618a7f283429b8c5cb4efbbf5a604ebf1e65c49bc705fd773294
+DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.3.3.crate 34320 BLAKE2B da9f42fc888e31d50d0b2f0d0cc1bddfa97e0c2d3eac60fd2cc451670f000b5148e58c3c40c348ef1bd516c7a568bcc3a97742ac5bdb9ef4772048eb922171af SHA512 8f063ba2bc3f638ca9200722e1c4370102589fb07aef25efcf63993fbf283cc86d554d11d24719f728ecabe540a47a90ce4113d8719f8e773f2344a66d21ff78
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST clap-3.2.25.crate 219403 BLAKE2B 75a8ee36c52e64cf0ac7ed5604d8a575c41c756a588bd418e6c1edccfb358350cdd831b4176f01b987fe7fa5901ca2bccee6b0f68ccba7dbe40baf85a5f3bdb4 SHA512 557c8932175d7ecd077b32b68904924e52dd46d04fd04ba36b3a9dfd7ab1dbe8c2128fecfd75d0388b21fca4aee55a941794181cc2910a4d4eb3c54e9c7e73ea
+DIST clap-4.4.11.crate 54782 BLAKE2B 293721f850d5a5ddce6b26610ef47316d5914e9281312068c26e45d23cb568c1ce2da7e0546accdd0cd4cc703ddb9fad98b0c772907f52dcdc31e6ec463d2b27 SHA512 9da3f445523183e16f4c104a2f4029ee9f3fa70e6c8e579aadad0607293ff5963417d8534aa1f3cef6ef8f8a7529a898c01630d3eff42330ec369cf0f760929b
+DIST clap_builder-4.4.11.crate 163317 BLAKE2B d2d998c4eff422436f36f71d681132b2545b561433ee733a8a64a640b97ebe8e35e97abc91d820189918d5fe9fa9496c89b02959aada1d55692957a86c8e14a0 SHA512 b601fd313e65dbf2b723f3ae5d2d3bfdfa1ec184962883503df9b31a7d43f4967ad5f81b0bc2fc8614e06d67ce52d399221df6f4fc9da311cca1c9134784d7c4
+DIST clap_derive-4.4.7.crate 29046 BLAKE2B 96ca919b8f9901b2e89c58ee8cf8bd3881ff715ac27999c03c867b317321e4839d9e923f68d411a05b45c34d54557af12b8a173f2445732fb6de16f30dad8e2b SHA512 4be40460468f7ce22906cdc9eea8d01bb07cb206d4ce0c3df2abd929d6925b175a49cf63907925ca16ae6297d6f4d933087fa5b35958e551117ec7ae050be167
+DIST clap_lex-0.2.4.crate 9652 BLAKE2B 5120b508dedf52507068c0c369a45ddfbe0369e5c05b65bc5a78c422b2a4bf488f9ef1e0bed4e335450f2c08b80148eb5f7efed678039b5a94b5bd666385939f SHA512 6c05e5fd850befd45be9005af7252385f2304aa28a107413bbe329d97aea835f7acfd0bd169c99f69f466ab93d6e1c35d73a4e48343457a06fe2d6be5bedde0f
+DIST clap_lex-0.6.0.crate 12272 BLAKE2B 22aa04997fffa15a2efc7013ae27fd223c3247cd31f8fe96aafb4e87e3224f075e887df10a95a2da80b468d4e16088ae9f171ba6551c0ae06d77bf3b8920ff9d SHA512 3651aa5e27ed35b6b75b1d25fd9c20c26a2a6039116e54d84c51469087732a4f0fd71754326456b367e341b017d03749e9a6774cb7b62250ca8745f5af46574e
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST crc-3.0.1.crate 9950 BLAKE2B 2afbaee34f754953396e452260290422d19416dad4b88333e4501592deff3b3350363ca4c2b37d573ecd4e64a762b702b79445460f15fc90bdb8214fe43c0945 SHA512 aabe9d4058fb4710405146e978ec5881bce5ce8971618b69a7ff873b0fff15fc78e5c48ff0136ca6d37663a53905bc3c5daa0ed3a2ed4d8d721e90c3b0ec28a5
+DIST crc-catalog-2.2.0.crate 9931 BLAKE2B b9c36e7f41e67daafc31f6ee6bf37ef78980171cd84565c103770a57bbed1e04f2b7a7261e7917252b3b6be96837e8138a8b9829380be93a69ee6f33ea332397 SHA512 9fcd42c44c66798c97ed36b36a902dff6e83a96d86da0f146c0db287ed6a00c8827d6749bfcdd090083bb81103bb2397e388a0e2a21698d65550360a45453396
+DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
+DIST dlv-list-0.3.0.crate 11920 BLAKE2B 2f5d52dd47c97799e6e7fead83c0f239daca5422f7fd2f3662d3d4a22714b2a64a4b65df3a451ad43675d828e3265a10ae30428204c33f4e1efa8bcd6933ca8d SHA512 3efa93e5ee5ee2e480a7e8dbc6d5baeb289279871f8b9f4858a24abf3f8b57cf1fd36369a6b5a1e667c121985197063c8834141b220a58453c8399edc9da4206
+DIST getrandom-0.2.10.crate 34955 BLAKE2B 8e7b8554ae360484ceca2a05f834c2664b08f41cbc6c955663e1f8f22fb5750481518bf1c7b49f49223a99a66914ef013347b9186acc97a20249f3222a13f9d4 SHA512 82af9e0417bff9272ed0478be4ac90426405ce210014b21899c6b95fde1b16893bf46295388ff5f13fa712a04c99c46b770fab83f41a1343af1590a86ca8da3b
+DIST gpt-3.1.0.crate 47134 BLAKE2B 24a1b4607ee07e590c89c1a68bb7f20251a99f5078c38e937cf4f4d0f83508830a9b62b7f5a1eb5475095c41c80d56ebfce91e65f25a61b161b2a088e1c0e179 SHA512 dd298a4b6b6a200482193ba560241bc3f3e2e9e790c06d016447f58004d1aeb37e554f99fc1d5b166e4062978ad19883d021405c08b9648a34159a002316e3b5
+DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST indexmap-1.9.3.crate 54653 BLAKE2B 7bc1768589e74020dc15d3dd064009edaaef39b7aeb682d0ca8e49944e3f020b9c04d64feb102e88b22feb40863479dfaf4722d6a77b5d19e7ca553f4bf64c1b SHA512 2aa8069eb07a814c8fa3e11296c9f032ef60963520d7786ad20cca5cb7e73b8f76d97722a994d65295bb713020aadce5008cd3df5e99d8bd968ef1979f910a37
+DIST libc-0.2.147.crate 686772 BLAKE2B ab2f0c65d071d46b8b88149add1c8429237ef6d9e0563d56ee1adbf23e6147dbb57fb68fbd02498f8ec75327693237a47e5e5259615ce8b0d5ed7a03bbf4fffb SHA512 bfb3c230b59d623b98726f92b7c3f897b47ba3d22fe9834c15f5b4c1b662289aba35a0ae3acfc704ad74696db8c691ee007b9cc6fa03ae65a18eb6bedc81931e
+DIST log-0.4.19.crate 38073 BLAKE2B bbc8ce51ad4a01562ecd204a531ec7d82101a342ec26405dfadd1761372f7039297dc97f4899889ebdf4eccbd56345e015d4ec6d2788851e523db56eb541aab3 SHA512 8f11ca6f5a99b61a5f3baeb7a23b7a879b3a5bed666337936bd1d8794864d14a6c4f0747d03505831783f15d8c14ebcf507267915481dfb1b32188b8ab36a038
+DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
+DIST nix-0.26.2.crate 277973 BLAKE2B 86adcbeda37edda784593196c390e92ee069761d283f706c0390bf8983ba8841a51486a98a1869f910fe4d518afba5572490e9c69a021e12c598d094b41361ad SHA512 abf2d0a4eb83cd4bd43836e8b533f0f07f07979619c86c11302a2df0800d569f33f0dda0bc2c4136d36c79789d175eaf5d3928ecf16286319aabf93c720a1704
+DIST once_cell-1.18.0.crate 32969 BLAKE2B a08d5beee50a7add28bd9e50b18709e7b34574f0f55f80909d5efb7ac5917e5f30bdcf3fb43ddd0a4f420a427390c7ffe1cc1c7191a3a1d939bc6e3139e6eef7 SHA512 9328968afdf3535b2d9e0113d75afa725259d76994ef2e1948ad7efa4ec8a65bac7cfdc31b749d5cd55ad4e28d2e28ac57b871e3067b89182453c7e2413a13b8
+DIST ordered-multimap-0.4.3.crate 19599 BLAKE2B 1287938e6bcb26c3e377fff6c492adfff7ca05fcdb5881d76edcf08aa89160180e6a2c2ad40b162e75997bc9fe36204c50d839d4305911de231bfd408345975a SHA512 92d02f260d912c70bc51a4e943ecf7be7e8211ff515dd6aa6029fbb0d0f67b8c689966b23e32520fc5b437caebab650e18a16cdd8b2a036edc91645faa9e47e8
+DIST os_str_bytes-6.5.1.crate 22778 BLAKE2B 1d3daa82b41e6e360ec17051be2c5b1a394fe49ae349b2888e6f30fccf99d102c71357f76c3f68118de59e24480221b352a223ed01f26f11bf707b1c7de81941 SHA512 6d7a4475398daaae4e3d55ad58a8fba729517acf5744a5a6296f477207ee91e5bc36c2b54e58f6f9b15ce9bc75286e9ba62a59d577f0171d8151d3aaa01311b8
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST rust-ini-0.18.0.crate 15439 BLAKE2B e225973af6e7d8a8ebf0d37efa913f5eacf8beb42d30f759135b18ae6fed091537466afc7e2aacfe1d00514a76eb4a8bd99ff281859ca0f7c7e0db3c6d6fb1a9 SHA512 2907d0891ff2164deacb2f217b4b8484bee9b2c2d32c354518e9b4d74069639bab55190d0d8ca6fb0751180cf2be1477ed9b100e3a5cc9f02af52ea26f32ccf4
+DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-2.0.39.crate 244129 BLAKE2B 2cff6626624d03f70f1662af45a8644c28a9f92e2dfe38999bef3ba4a4c1ce825ae598277e9cb7abd5585eebfb17b239effc8d0bbf1c6ac196499f0d288e5e01 SHA512 96cc347cfdb0f9ca0b6c7289279a1cad8fc401625783742292564f7ceca8237ced8d9a3f62069696f6132ed06092dff2baaf4be09ef53b21260d93785b0e27c3
+DIST termcolor-1.2.0.crate 17917 BLAKE2B 5ca7802b0bd29495bcd2deaddcdb4c3ff964073a373eaf39964a24ed91a48c5c33e192d676099e2837064df3149fdd73aba7d241e9aeaad9887bf1bcae9d38f0 SHA512 cf1896523353390b2f90b2a8bf30f47da5fc7c2daa635bd0cd8059bdc73feb243e46e4279562fe45d5726f2840833b1e967c7de19ffc0c853592d9f86c0c1be7
+DIST textwrap-0.16.0.crate 53722 BLAKE2B 44140aa2dfd5076005749449a56e920418e71e34cb92f1d697eb3f3e7f6fe87b0a3861c8a4050a4a62e03187b6cadc4495e4200bee52ee183541431c73e47209 SHA512 97ae8acece5663e1a6b08b827179e96d5ad0ee67d635888cc3d83454b52cf48fce97eb0eba374ba4747834099c74f43d66d9fec868e84be45369a42c1aaec2c3
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST uuid-1.4.0.crate 55200 BLAKE2B 11e641e76f2f25f94430cbb473887cfa052f73527d7df2625d304d101c25ba0148c901460798dea962611df1f5af41119c29ff2aea25fd09bfd64368a2df8aab SHA512 92acf08ee1f36a3a394422ce9b1cdbe0ccf3fb8d878efe068fd025832af677466622bd1260e853c5232f18b4f5411136595aa07311a3f9886904800bee7cfaa0
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.52.0.crate 6229 BLAKE2B 4b1efdd32202f112d3782b586ce60667f5d3b6f97ccae0d7da833aee2ae81ceece88b5ef4126db2448c9019de3f77e4fe66ed4286bb6275d9a5e8ab74725b804 SHA512 0ea09552d89b802ec0d419b640fa02d0af7af602704a0e88ba10f81d123dee0c907460f6ec91224177ec9a948970abd7414740eb219148a4d66c269c2362740e
+DIST windows_aarch64_gnullvm-0.52.0.crate 430182 BLAKE2B f23370c62c4ab3fd885e3ee22e8ec2fb5a3a837a57044c1df3f9986dd4e7e9d0a44ec58be1648a41e1ea4d037afa3077f0f03de0204199a82fb8395731815a4a SHA512 b7c3fe0a2ad5149be0df48fc7a4d15879eb130bd9441c58c25fc71b8a91483f0b553fb1bf29a9302acd348e9083a547430a840b059b0cfe19867ecaffcae986f
+DIST windows_aarch64_msvc-0.52.0.crate 821663 BLAKE2B e6f772858205f7cd871722136aec4d00daea4793ff9dcae53e6311e74526c46aa11c2b3df7a85e6c577757254cbfa5a713e68c694625ca274b64e7a1c5532c23 SHA512 8446bfe5b9fe538415762c8129ab3bf2fe45482e045bce367475747786602ad4ae1187c6e508dd9d7b6be81bfc8d430e0db9c624e35c7cc52e823023e46f5cf1
+DIST windows_i686_gnu-0.52.0.crate 870285 BLAKE2B a7688062a128a1b1394b3978210334e4e2aaa10dce131457c4a11ce0cb3f551e7f4962d1ece1846d8e9526983ced0e0a3ee8c933858e9314b62e76381e086ef9 SHA512 fe993f5bb6e039c257be9b35337e0221f718d23866818bfd19c76aaae236aafc2de4bb5014fcdf919563b5901cdaa14a2136cd086eeed3c83e46a5d02f6aa77e
+DIST windows_i686_msvc-0.52.0.crate 888693 BLAKE2B 7a6e9d03e503c8f543e80a8c7bcf3f50cfa7eed462e487ae7b581746d7cc4d871b33e307110d3a3a75226d88e837f9452ac56bf3baf71b66cfab2626cc15558a SHA512 817ac796fd00bed51d80133ec873cf3d3d582ba41fec8a6f6407fbd7544f198e928aa5d710f70c13bbf74a1dde4c91c54e65eb9d3b7518a7f011ea42725eb671
+DIST windows_x86_64_gnu-0.52.0.crate 826213 BLAKE2B 3ca03285ef289fc844261142154e710e996c29940b1c0a7dc3016906ff6452fa50b24f8668fce0ca44bf169ab1228c217fece9f7bddac9ab8bdc54fddafaf8a8 SHA512 2d81af56ad0bc9536f6e066776642a546ce6c6d99551edc0603ffcafe6db15d5d5a32a642b204bbfadf34231daa3894ad7897a9c0c575c2b6bc1e3e58a9a3eb7
+DIST windows_x86_64_gnullvm-0.52.0.crate 430165 BLAKE2B af9345a1f6e0ed1392ca1534c68d23f3be0fbb6a42b3c5518cee14373e645038526da15e849d14abe45c53766a30c6c2042a626482ba4a05409f325eb6aa36b1 SHA512 e88af35fd1c694dc189783e5c81aafa61aeffbddce4d7130e1125d0ce3d932fafeb345990ffd98477c41b578b7f5090f4f9c0457b02146309b95549c9f8f44f0
+DIST windows_x86_64_msvc-0.52.0.crate 821600 BLAKE2B cc448b65f98fc0fc4949ae622b7020d2dae927ae45310649f6ef71809740eda9d3db0fc035676c201fd9ab9639e9e7f21e2e992b4c789542f12b419d2c752179 SHA512 3aaee31533a1a48a6ab5cd15b3cadfbd906a93a153e53919d0aa74e440d11e29830554e4e014c215f5b88a475bb733fa8ba4ce9d773d3e23a40ea9ad37ddd0a7
diff --git a/sys-apps/asahi-bless/asahi-bless-0.3.0.ebuild b/sys-apps/asahi-bless/asahi-bless-0.3.0.ebuild
new file mode 100644
index 000000000000..7cb997d40f69
--- /dev/null
+++ b/sys-apps/asahi-bless/asahi-bless-0.3.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ adler32@1.2.0
+ ahash@0.7.6
+ anstream@0.6.4
+ anstyle-parse@0.2.3
+ anstyle-query@1.0.1
+ anstyle-wincon@3.0.2
+ anstyle@1.0.4
+ atty@0.2.14
+ autocfg@1.1.0
+ bitflags@1.3.2
+ bitflags@2.3.3
+ cfg-if@1.0.0
+ clap@3.2.25
+ clap@4.4.11
+ clap_builder@4.4.11
+ clap_derive@4.4.7
+ clap_lex@0.2.4
+ clap_lex@0.6.0
+ colorchoice@1.0.0
+ crc-catalog@2.2.0
+ crc32fast@1.3.2
+ crc@3.0.1
+ dlv-list@0.3.0
+ getrandom@0.2.10
+ gpt@3.1.0
+ hashbrown@0.12.3
+ heck@0.4.1
+ hermit-abi@0.1.19
+ indexmap@1.9.3
+ libc@0.2.147
+ log@0.4.19
+ memoffset@0.7.1
+ nix@0.26.2
+ once_cell@1.18.0
+ ordered-multimap@0.4.3
+ os_str_bytes@6.5.1
+ pin-utils@0.1.0
+ proc-macro2@1.0.70
+ quote@1.0.33
+ rust-ini@0.18.0
+ static_assertions@1.1.0
+ strsim@0.10.0
+ syn@2.0.39
+ termcolor@1.2.0
+ textwrap@0.16.0
+ unicode-ident@1.0.12
+ utf8parse@0.2.1
+ uuid@1.4.0
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.52.0
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.52.0
+"
+
+inherit cargo linux-info
+
+# Releases are not tagged
+COMMIT="36302336f7e07080e289baccda8d07c7c1a9d00d"
+MY_P="asahi-nvram-${COMMIT}"
+DESCRIPTION="CLI boot disk selector for Apple Silicon Macs"
+HOMEPAGE="https://github.com/WhatAmISupposedToPutHere/asahi-nvram"
+
+SRC_URI="
+ ${CARGO_CRATE_URIS}
+ https://github.com/WhatAmISupposedToPutHere/asahi-nvram/archive/${COMMIT}.tar.gz -> ${P}.tar.gz
+"
+S="${WORKDIR}/${MY_P}/asahi-bless"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" MIT Unicode-DFS-2016 ZLIB"
+SLOT="0"
+KEYWORDS="~arm64"
+
+pkg_pretend() {
+ if use kernel_linux; then
+ linux_config_exists || die "No suitable kernel configuration could be found"
+ CONFIG_EXTRA="~MTD_SPI_NOR"
+ check_extra_config
+ fi
+}
diff --git a/sys-apps/asahi-bless/metadata.xml b/sys-apps/asahi-bless/metadata.xml
new file mode 100644
index 000000000000..c0d4d6d29036
--- /dev/null
+++ b/sys-apps/asahi-bless/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>jcalligeros99@gmail.com</email>
+ <name>James Calligeros</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>asahi@gentoo.org</email>
+ <name>Gentoo Asahi Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">WhatAmISupposedToPutHere/asahi-nvram</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/asahi-configs/asahi-configs-1.0.ebuild b/sys-apps/asahi-configs/asahi-configs-1.0.ebuild
new file mode 100644
index 000000000000..3d6c1859512a
--- /dev/null
+++ b/sys-apps/asahi-configs/asahi-configs-1.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+DESCRIPTION="Asahi Linux configurations"
+HOMEPAGE="https://asahilinux.org/"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~arm64"
+
+src_unpack() {
+ mkdir "${S}" || die
+ cp "${FILESDIR}"/* "${S}/" || die
+}
+
+src_install() {
+ insinto /etc/xdg/
+ newins "${FILESDIR}/kcminput" kcminputrc
+ newins "${FILESDIR}/baloo" baloofilerc
+
+ insinto /etc/X11/xorg.conf.d/
+ newins "${FILESDIR}/xorg-modeset" 30-modesetting.conf
+ newins "${FILESDIR}/xorg-naturalscroll" 20-natural-scrolling.conf
+
+ exeinto /etc/profile.d/
+ newexe "${FILESDIR}/envvars" asahi.sh
+}
diff --git a/sys-apps/asahi-configs/files/baloo b/sys-apps/asahi-configs/files/baloo
new file mode 100644
index 000000000000..694400b83e28
--- /dev/null
+++ b/sys-apps/asahi-configs/files/baloo
@@ -0,0 +1,2 @@
+[General]
+only basic indexing=true
diff --git a/sys-apps/asahi-configs/files/envvars b/sys-apps/asahi-configs/files/envvars
new file mode 100644
index 000000000000..4368fedc51bb
--- /dev/null
+++ b/sys-apps/asahi-configs/files/envvars
@@ -0,0 +1,3 @@
+export MOZ_ENABLE_WAYLAND=1
+export QV4_FORCE_INTERPRETER=1
+export KWIN_FORCE_SW_CURSOR=1
diff --git a/sys-apps/asahi-configs/files/kcminput b/sys-apps/asahi-configs/files/kcminput
new file mode 100644
index 000000000000..6e0914e6abeb
--- /dev/null
+++ b/sys-apps/asahi-configs/files/kcminput
@@ -0,0 +1,2 @@
+[Libinput][Defaults][Touchpad]
+NaturalScroll=true
diff --git a/sys-apps/asahi-configs/files/xorg-modeset b/sys-apps/asahi-configs/files/xorg-modeset
new file mode 100644
index 000000000000..9b1caeea66d8
--- /dev/null
+++ b/sys-apps/asahi-configs/files/xorg-modeset
@@ -0,0 +1,6 @@
+Section "OutputClass"
+ Identifier "appledrm"
+ MatchDriver "apple"
+ Driver "modesetting"
+ Option "PrimaryGPU" "true"
+EndSection
diff --git a/sys-apps/asahi-configs/files/xorg-naturalscroll b/sys-apps/asahi-configs/files/xorg-naturalscroll
new file mode 100644
index 000000000000..59fdcf12ca51
--- /dev/null
+++ b/sys-apps/asahi-configs/files/xorg-naturalscroll
@@ -0,0 +1,7 @@
+Section "InputClass"
+ Identifier "Enable natural scrolling by default"
+ MatchIsTouchpad "on"
+ MatchDevicePath "/dev/input/event*"
+ MatchDriver "libinput"
+ Option "Natural Scrolling" "on"
+EndSection
diff --git a/sys-apps/asahi-configs/metadata.xml b/sys-apps/asahi-configs/metadata.xml
new file mode 100644
index 000000000000..78cf3a46e034
--- /dev/null
+++ b/sys-apps/asahi-configs/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>jcalligeros99@gmail.com</email>
+ <name>James Calligeros</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>asahi@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">AsahiLinux/PKGBUILDs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/asahi-nvram/Manifest b/sys-apps/asahi-nvram/Manifest
new file mode 100644
index 000000000000..6bec5ef365ce
--- /dev/null
+++ b/sys-apps/asahi-nvram/Manifest
@@ -0,0 +1,64 @@
+DIST adler32-1.2.0.crate 6411 BLAKE2B 51d44ccfd774158687b8244e83377e40ff896364e3d41e9015665131cc2a176d4ca0ab5a84df027dec0869ee735ee36f5687a06c1d2341de666070cdbab89483 SHA512 8ed72612fb78e213fc92963fdae0508ef26988656c939e6c9cddccbe2658d4a956a8ae934d9658262a8b2687dc446b3f1ee7614128b440487c81e606526dfda3
+DIST ahash-0.7.6.crate 38030 BLAKE2B aca3661477fcd7822d6d10970151e05c28e1615f8cd7ddaac064b15102027e404b19b0f3f16dd76145048594ea1c22ae27dd08cc05c411efbae9ec7a1ef55ce9 SHA512 61354688b6fb096359faefb6f34be958cd2215d56b88c22c737d24183eaad433f811bc9e64f927e4852c87d2799c22fda82b55cfbef2ed6357ff74f0c4ffec68
+DIST anstream-0.6.4.crate 20593 BLAKE2B 2b617c45d351e01222fc50f52551e57b4a8b0ecf84c6ddf44336c7c9d3b9dde15232b1c4f664d567849295bf8f03612b73ded56f1b3937392eb7718f1e0446c3 SHA512 0b983d626c53d1edc184f04cbd2c004eb9c40d14486b23cce86ebf50cbd3d916d32cb0423ae1d67c2b83b966690090af740538538ef846c0b126c686a1ebe159
+DIST anstyle-1.0.4.crate 13998 BLAKE2B fb501700855709e53438461c2f4b48d869613e7bb3bb700db8bd0d95082876d3782dc2cfe3ce110bb4a206994de56afe0e90fe89f9ccd07c60fe1c652123ba59 SHA512 671c6f57106198bcfc2f9000aacba98fabacfadfce2329dfe8d0e0a2af9404da483d7a844ca2b08e1fc0249371f574c13d0082c9f7a4ed90ff581308257a52d3
+DIST anstyle-parse-0.2.3.crate 24699 BLAKE2B 17e8638187ccc1ca0174a8cec7f7daeee7e0d8b8c430f7e74f9b10d8de4b49fd1c6facfdafde305b7a3e55b1ebf2b4e8ec4975a0cce691514ddae9eb5b5e711e SHA512 4a6d0f706d75c9b3c5144f34efdef3ef8fcd075962c594a23a6209ed56112563a34b3c01e05a08a0868d59204272d06211b2585cb9d06ce075ea875bedb2f399
+DIST anstyle-query-1.0.1.crate 8620 BLAKE2B 65d81d089b6f84e062276807e180e6a8b793cdf570e4e82a88dd1670ed1e15f6edc9ca8f55873069273efe170c2dbbbf75dd3b2b773c78d23c896c0d6f3bb237 SHA512 70178a50e4025a0ded9fa7235d045cd965889efe63bc319e418a3e34406a66a42c19a2d7684d8d607046cd8419ba9b789607fe5c50aeeeabb23d72de6ad43039
+DIST anstyle-wincon-3.0.2.crate 11272 BLAKE2B 73e124773f618a744b17017d4680ec6ccc84ff94fbe2e565073fbcc0facecd3cb65356cf27746d07f453bc917cbeb2ade3a618c6b8578d64cff4828c99569868 SHA512 4cc194faacffa01c6989354c1cadbf1134f0945250f67b7020ab5b475e30db34c799176bd335a6265386cb9c5e8b5bcbdf35894ec0c809b140ffe1c406751931
+DIST asahi-nvram-0.2.1.tar.gz 20866 BLAKE2B 83bf5eb02c97849f95c1c3f67deba6f8e2901f9fbee0b8ee73ea1ff2f7e79e889baeb1fbec2d23b7b2b62f7d5c2a2a5bafa6d52381629aec6ecd91bab52fd110 SHA512 d4e9bb419e0eb8a2f83795ac30ed209cd415e4e11cff4da62389288fb076e91d3188a8ab3376899a20af702d4397a78260f7502b592ddf98d31e925273a56c6f
+DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.3.3.crate 34320 BLAKE2B da9f42fc888e31d50d0b2f0d0cc1bddfa97e0c2d3eac60fd2cc451670f000b5148e58c3c40c348ef1bd516c7a568bcc3a97742ac5bdb9ef4772048eb922171af SHA512 8f063ba2bc3f638ca9200722e1c4370102589fb07aef25efcf63993fbf283cc86d554d11d24719f728ecabe540a47a90ce4113d8719f8e773f2344a66d21ff78
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST clap-3.2.25.crate 219403 BLAKE2B 75a8ee36c52e64cf0ac7ed5604d8a575c41c756a588bd418e6c1edccfb358350cdd831b4176f01b987fe7fa5901ca2bccee6b0f68ccba7dbe40baf85a5f3bdb4 SHA512 557c8932175d7ecd077b32b68904924e52dd46d04fd04ba36b3a9dfd7ab1dbe8c2128fecfd75d0388b21fca4aee55a941794181cc2910a4d4eb3c54e9c7e73ea
+DIST clap-4.4.11.crate 54782 BLAKE2B 293721f850d5a5ddce6b26610ef47316d5914e9281312068c26e45d23cb568c1ce2da7e0546accdd0cd4cc703ddb9fad98b0c772907f52dcdc31e6ec463d2b27 SHA512 9da3f445523183e16f4c104a2f4029ee9f3fa70e6c8e579aadad0607293ff5963417d8534aa1f3cef6ef8f8a7529a898c01630d3eff42330ec369cf0f760929b
+DIST clap_builder-4.4.11.crate 163317 BLAKE2B d2d998c4eff422436f36f71d681132b2545b561433ee733a8a64a640b97ebe8e35e97abc91d820189918d5fe9fa9496c89b02959aada1d55692957a86c8e14a0 SHA512 b601fd313e65dbf2b723f3ae5d2d3bfdfa1ec184962883503df9b31a7d43f4967ad5f81b0bc2fc8614e06d67ce52d399221df6f4fc9da311cca1c9134784d7c4
+DIST clap_derive-4.4.7.crate 29046 BLAKE2B 96ca919b8f9901b2e89c58ee8cf8bd3881ff715ac27999c03c867b317321e4839d9e923f68d411a05b45c34d54557af12b8a173f2445732fb6de16f30dad8e2b SHA512 4be40460468f7ce22906cdc9eea8d01bb07cb206d4ce0c3df2abd929d6925b175a49cf63907925ca16ae6297d6f4d933087fa5b35958e551117ec7ae050be167
+DIST clap_lex-0.2.4.crate 9652 BLAKE2B 5120b508dedf52507068c0c369a45ddfbe0369e5c05b65bc5a78c422b2a4bf488f9ef1e0bed4e335450f2c08b80148eb5f7efed678039b5a94b5bd666385939f SHA512 6c05e5fd850befd45be9005af7252385f2304aa28a107413bbe329d97aea835f7acfd0bd169c99f69f466ab93d6e1c35d73a4e48343457a06fe2d6be5bedde0f
+DIST clap_lex-0.6.0.crate 12272 BLAKE2B 22aa04997fffa15a2efc7013ae27fd223c3247cd31f8fe96aafb4e87e3224f075e887df10a95a2da80b468d4e16088ae9f171ba6551c0ae06d77bf3b8920ff9d SHA512 3651aa5e27ed35b6b75b1d25fd9c20c26a2a6039116e54d84c51469087732a4f0fd71754326456b367e341b017d03749e9a6774cb7b62250ca8745f5af46574e
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST crc-3.0.1.crate 9950 BLAKE2B 2afbaee34f754953396e452260290422d19416dad4b88333e4501592deff3b3350363ca4c2b37d573ecd4e64a762b702b79445460f15fc90bdb8214fe43c0945 SHA512 aabe9d4058fb4710405146e978ec5881bce5ce8971618b69a7ff873b0fff15fc78e5c48ff0136ca6d37663a53905bc3c5daa0ed3a2ed4d8d721e90c3b0ec28a5
+DIST crc-catalog-2.2.0.crate 9931 BLAKE2B b9c36e7f41e67daafc31f6ee6bf37ef78980171cd84565c103770a57bbed1e04f2b7a7261e7917252b3b6be96837e8138a8b9829380be93a69ee6f33ea332397 SHA512 9fcd42c44c66798c97ed36b36a902dff6e83a96d86da0f146c0db287ed6a00c8827d6749bfcdd090083bb81103bb2397e388a0e2a21698d65550360a45453396
+DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
+DIST dlv-list-0.3.0.crate 11920 BLAKE2B 2f5d52dd47c97799e6e7fead83c0f239daca5422f7fd2f3662d3d4a22714b2a64a4b65df3a451ad43675d828e3265a10ae30428204c33f4e1efa8bcd6933ca8d SHA512 3efa93e5ee5ee2e480a7e8dbc6d5baeb289279871f8b9f4858a24abf3f8b57cf1fd36369a6b5a1e667c121985197063c8834141b220a58453c8399edc9da4206
+DIST getrandom-0.2.10.crate 34955 BLAKE2B 8e7b8554ae360484ceca2a05f834c2664b08f41cbc6c955663e1f8f22fb5750481518bf1c7b49f49223a99a66914ef013347b9186acc97a20249f3222a13f9d4 SHA512 82af9e0417bff9272ed0478be4ac90426405ce210014b21899c6b95fde1b16893bf46295388ff5f13fa712a04c99c46b770fab83f41a1343af1590a86ca8da3b
+DIST gpt-3.1.0.crate 47134 BLAKE2B 24a1b4607ee07e590c89c1a68bb7f20251a99f5078c38e937cf4f4d0f83508830a9b62b7f5a1eb5475095c41c80d56ebfce91e65f25a61b161b2a088e1c0e179 SHA512 dd298a4b6b6a200482193ba560241bc3f3e2e9e790c06d016447f58004d1aeb37e554f99fc1d5b166e4062978ad19883d021405c08b9648a34159a002316e3b5
+DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST indexmap-1.9.3.crate 54653 BLAKE2B 7bc1768589e74020dc15d3dd064009edaaef39b7aeb682d0ca8e49944e3f020b9c04d64feb102e88b22feb40863479dfaf4722d6a77b5d19e7ca553f4bf64c1b SHA512 2aa8069eb07a814c8fa3e11296c9f032ef60963520d7786ad20cca5cb7e73b8f76d97722a994d65295bb713020aadce5008cd3df5e99d8bd968ef1979f910a37
+DIST libc-0.2.147.crate 686772 BLAKE2B ab2f0c65d071d46b8b88149add1c8429237ef6d9e0563d56ee1adbf23e6147dbb57fb68fbd02498f8ec75327693237a47e5e5259615ce8b0d5ed7a03bbf4fffb SHA512 bfb3c230b59d623b98726f92b7c3f897b47ba3d22fe9834c15f5b4c1b662289aba35a0ae3acfc704ad74696db8c691ee007b9cc6fa03ae65a18eb6bedc81931e
+DIST log-0.4.19.crate 38073 BLAKE2B bbc8ce51ad4a01562ecd204a531ec7d82101a342ec26405dfadd1761372f7039297dc97f4899889ebdf4eccbd56345e015d4ec6d2788851e523db56eb541aab3 SHA512 8f11ca6f5a99b61a5f3baeb7a23b7a879b3a5bed666337936bd1d8794864d14a6c4f0747d03505831783f15d8c14ebcf507267915481dfb1b32188b8ab36a038
+DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
+DIST nix-0.26.2.crate 277973 BLAKE2B 86adcbeda37edda784593196c390e92ee069761d283f706c0390bf8983ba8841a51486a98a1869f910fe4d518afba5572490e9c69a021e12c598d094b41361ad SHA512 abf2d0a4eb83cd4bd43836e8b533f0f07f07979619c86c11302a2df0800d569f33f0dda0bc2c4136d36c79789d175eaf5d3928ecf16286319aabf93c720a1704
+DIST once_cell-1.18.0.crate 32969 BLAKE2B a08d5beee50a7add28bd9e50b18709e7b34574f0f55f80909d5efb7ac5917e5f30bdcf3fb43ddd0a4f420a427390c7ffe1cc1c7191a3a1d939bc6e3139e6eef7 SHA512 9328968afdf3535b2d9e0113d75afa725259d76994ef2e1948ad7efa4ec8a65bac7cfdc31b749d5cd55ad4e28d2e28ac57b871e3067b89182453c7e2413a13b8
+DIST ordered-multimap-0.4.3.crate 19599 BLAKE2B 1287938e6bcb26c3e377fff6c492adfff7ca05fcdb5881d76edcf08aa89160180e6a2c2ad40b162e75997bc9fe36204c50d839d4305911de231bfd408345975a SHA512 92d02f260d912c70bc51a4e943ecf7be7e8211ff515dd6aa6029fbb0d0f67b8c689966b23e32520fc5b437caebab650e18a16cdd8b2a036edc91645faa9e47e8
+DIST os_str_bytes-6.5.1.crate 22778 BLAKE2B 1d3daa82b41e6e360ec17051be2c5b1a394fe49ae349b2888e6f30fccf99d102c71357f76c3f68118de59e24480221b352a223ed01f26f11bf707b1c7de81941 SHA512 6d7a4475398daaae4e3d55ad58a8fba729517acf5744a5a6296f477207ee91e5bc36c2b54e58f6f9b15ce9bc75286e9ba62a59d577f0171d8151d3aaa01311b8
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST rust-ini-0.18.0.crate 15439 BLAKE2B e225973af6e7d8a8ebf0d37efa913f5eacf8beb42d30f759135b18ae6fed091537466afc7e2aacfe1d00514a76eb4a8bd99ff281859ca0f7c7e0db3c6d6fb1a9 SHA512 2907d0891ff2164deacb2f217b4b8484bee9b2c2d32c354518e9b4d74069639bab55190d0d8ca6fb0751180cf2be1477ed9b100e3a5cc9f02af52ea26f32ccf4
+DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-2.0.39.crate 244129 BLAKE2B 2cff6626624d03f70f1662af45a8644c28a9f92e2dfe38999bef3ba4a4c1ce825ae598277e9cb7abd5585eebfb17b239effc8d0bbf1c6ac196499f0d288e5e01 SHA512 96cc347cfdb0f9ca0b6c7289279a1cad8fc401625783742292564f7ceca8237ced8d9a3f62069696f6132ed06092dff2baaf4be09ef53b21260d93785b0e27c3
+DIST termcolor-1.2.0.crate 17917 BLAKE2B 5ca7802b0bd29495bcd2deaddcdb4c3ff964073a373eaf39964a24ed91a48c5c33e192d676099e2837064df3149fdd73aba7d241e9aeaad9887bf1bcae9d38f0 SHA512 cf1896523353390b2f90b2a8bf30f47da5fc7c2daa635bd0cd8059bdc73feb243e46e4279562fe45d5726f2840833b1e967c7de19ffc0c853592d9f86c0c1be7
+DIST textwrap-0.16.0.crate 53722 BLAKE2B 44140aa2dfd5076005749449a56e920418e71e34cb92f1d697eb3f3e7f6fe87b0a3861c8a4050a4a62e03187b6cadc4495e4200bee52ee183541431c73e47209 SHA512 97ae8acece5663e1a6b08b827179e96d5ad0ee67d635888cc3d83454b52cf48fce97eb0eba374ba4747834099c74f43d66d9fec868e84be45369a42c1aaec2c3
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST uuid-1.4.0.crate 55200 BLAKE2B 11e641e76f2f25f94430cbb473887cfa052f73527d7df2625d304d101c25ba0148c901460798dea962611df1f5af41119c29ff2aea25fd09bfd64368a2df8aab SHA512 92acf08ee1f36a3a394422ce9b1cdbe0ccf3fb8d878efe068fd025832af677466622bd1260e853c5232f18b4f5411136595aa07311a3f9886904800bee7cfaa0
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.52.0.crate 6229 BLAKE2B 4b1efdd32202f112d3782b586ce60667f5d3b6f97ccae0d7da833aee2ae81ceece88b5ef4126db2448c9019de3f77e4fe66ed4286bb6275d9a5e8ab74725b804 SHA512 0ea09552d89b802ec0d419b640fa02d0af7af602704a0e88ba10f81d123dee0c907460f6ec91224177ec9a948970abd7414740eb219148a4d66c269c2362740e
+DIST windows_aarch64_gnullvm-0.52.0.crate 430182 BLAKE2B f23370c62c4ab3fd885e3ee22e8ec2fb5a3a837a57044c1df3f9986dd4e7e9d0a44ec58be1648a41e1ea4d037afa3077f0f03de0204199a82fb8395731815a4a SHA512 b7c3fe0a2ad5149be0df48fc7a4d15879eb130bd9441c58c25fc71b8a91483f0b553fb1bf29a9302acd348e9083a547430a840b059b0cfe19867ecaffcae986f
+DIST windows_aarch64_msvc-0.52.0.crate 821663 BLAKE2B e6f772858205f7cd871722136aec4d00daea4793ff9dcae53e6311e74526c46aa11c2b3df7a85e6c577757254cbfa5a713e68c694625ca274b64e7a1c5532c23 SHA512 8446bfe5b9fe538415762c8129ab3bf2fe45482e045bce367475747786602ad4ae1187c6e508dd9d7b6be81bfc8d430e0db9c624e35c7cc52e823023e46f5cf1
+DIST windows_i686_gnu-0.52.0.crate 870285 BLAKE2B a7688062a128a1b1394b3978210334e4e2aaa10dce131457c4a11ce0cb3f551e7f4962d1ece1846d8e9526983ced0e0a3ee8c933858e9314b62e76381e086ef9 SHA512 fe993f5bb6e039c257be9b35337e0221f718d23866818bfd19c76aaae236aafc2de4bb5014fcdf919563b5901cdaa14a2136cd086eeed3c83e46a5d02f6aa77e
+DIST windows_i686_msvc-0.52.0.crate 888693 BLAKE2B 7a6e9d03e503c8f543e80a8c7bcf3f50cfa7eed462e487ae7b581746d7cc4d871b33e307110d3a3a75226d88e837f9452ac56bf3baf71b66cfab2626cc15558a SHA512 817ac796fd00bed51d80133ec873cf3d3d582ba41fec8a6f6407fbd7544f198e928aa5d710f70c13bbf74a1dde4c91c54e65eb9d3b7518a7f011ea42725eb671
+DIST windows_x86_64_gnu-0.52.0.crate 826213 BLAKE2B 3ca03285ef289fc844261142154e710e996c29940b1c0a7dc3016906ff6452fa50b24f8668fce0ca44bf169ab1228c217fece9f7bddac9ab8bdc54fddafaf8a8 SHA512 2d81af56ad0bc9536f6e066776642a546ce6c6d99551edc0603ffcafe6db15d5d5a32a642b204bbfadf34231daa3894ad7897a9c0c575c2b6bc1e3e58a9a3eb7
+DIST windows_x86_64_gnullvm-0.52.0.crate 430165 BLAKE2B af9345a1f6e0ed1392ca1534c68d23f3be0fbb6a42b3c5518cee14373e645038526da15e849d14abe45c53766a30c6c2042a626482ba4a05409f325eb6aa36b1 SHA512 e88af35fd1c694dc189783e5c81aafa61aeffbddce4d7130e1125d0ce3d932fafeb345990ffd98477c41b578b7f5090f4f9c0457b02146309b95549c9f8f44f0
+DIST windows_x86_64_msvc-0.52.0.crate 821600 BLAKE2B cc448b65f98fc0fc4949ae622b7020d2dae927ae45310649f6ef71809740eda9d3db0fc035676c201fd9ab9639e9e7f21e2e992b4c789542f12b419d2c752179 SHA512 3aaee31533a1a48a6ab5cd15b3cadfbd906a93a153e53919d0aa74e440d11e29830554e4e014c215f5b88a475bb733fa8ba4ce9d773d3e23a40ea9ad37ddd0a7
diff --git a/sys-apps/asahi-nvram/asahi-nvram-0.2.1.ebuild b/sys-apps/asahi-nvram/asahi-nvram-0.2.1.ebuild
new file mode 100644
index 000000000000..99e80c6bc1bd
--- /dev/null
+++ b/sys-apps/asahi-nvram/asahi-nvram-0.2.1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ adler32@1.2.0
+ ahash@0.7.6
+ anstream@0.6.4
+ anstyle-parse@0.2.3
+ anstyle-query@1.0.1
+ anstyle-wincon@3.0.2
+ anstyle@1.0.4
+ atty@0.2.14
+ autocfg@1.1.0
+ bitflags@1.3.2
+ bitflags@2.3.3
+ cfg-if@1.0.0
+ clap@3.2.25
+ clap@4.4.11
+ clap_builder@4.4.11
+ clap_derive@4.4.7
+ clap_lex@0.2.4
+ clap_lex@0.6.0
+ colorchoice@1.0.0
+ crc-catalog@2.2.0
+ crc32fast@1.3.2
+ crc@3.0.1
+ dlv-list@0.3.0
+ getrandom@0.2.10
+ gpt@3.1.0
+ hashbrown@0.12.3
+ heck@0.4.1
+ hermit-abi@0.1.19
+ indexmap@1.9.3
+ libc@0.2.147
+ log@0.4.19
+ memoffset@0.7.1
+ nix@0.26.2
+ once_cell@1.18.0
+ ordered-multimap@0.4.3
+ os_str_bytes@6.5.1
+ pin-utils@0.1.0
+ proc-macro2@1.0.70
+ quote@1.0.33
+ rust-ini@0.18.0
+ static_assertions@1.1.0
+ strsim@0.10.0
+ syn@2.0.39
+ termcolor@1.2.0
+ textwrap@0.16.0
+ unicode-ident@1.0.12
+ utf8parse@0.2.1
+ uuid@1.4.0
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.52.0
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.52.0
+"
+
+inherit cargo linux-info
+
+# Releases are not tagged
+COMMIT="6764bf5fbe6371a70604cc58aaa6d6b4473b3adf"
+MY_P="asahi-nvram-${COMMIT}"
+DESCRIPTION="Tool to read and write nvram variables on ARM Macs"
+HOMEPAGE="https://github.com/WhatAmISupposedToPutHere/asahi-nvram"
+
+SRC_URI="
+ ${CARGO_CRATE_URIS}
+ https://github.com/WhatAmISupposedToPutHere/asahi-nvram/archive/${COMMIT}.tar.gz -> ${P}.tar.gz
+"
+S="${WORKDIR}/${MY_P}/asahi-nvram"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" MIT Unicode-DFS-2016 ZLIB"
+SLOT="0"
+KEYWORDS="~arm64"
+
+pkg_pretend() {
+ if use kernel_linux; then
+ linux_config_exists || die "No suitable kernel configuration could be found"
+ CONFIG_EXTRA="~MTD_SPI_NOR"
+ check_extra_config
+ fi
+}
diff --git a/sys-apps/asahi-nvram/metadata.xml b/sys-apps/asahi-nvram/metadata.xml
new file mode 100644
index 000000000000..ab757f372ced
--- /dev/null
+++ b/sys-apps/asahi-nvram/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>jcalligeros99@gmail.com</email>
+ <name>James Calligeros</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>asahi@gentoo.org</email>
+ <name>Gentoo Asahi Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">
+ WhatAmISupposedToPutHere/asahi-nvram
+ </remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/asahi-scripts/Manifest b/sys-apps/asahi-scripts/Manifest
new file mode 100644
index 000000000000..1243dd233d81
--- /dev/null
+++ b/sys-apps/asahi-scripts/Manifest
@@ -0,0 +1 @@
+DIST asahi-scripts-20231219.1.tar.gz 10696 BLAKE2B 1a3103f093fa87f33f7bdc64340dbd61705ac88832b1a9a2cb015ae8ff7ccfc138b91d0f38505dcdb916ccef03a0f788dd2bbaac66fc32118ce8acb536791bdd SHA512 ab4462bd8b98558f57a1edb4ac9fb21535e6a2b8396f6774a3ea1160ad2de4f64ffb65a93d08e6112ea2d90050a1a368fd32d8a6e5b0d7a545961c57ac9d0639
diff --git a/sys-apps/asahi-scripts/asahi-scripts-20231219.1.ebuild b/sys-apps/asahi-scripts/asahi-scripts-20231219.1.ebuild
new file mode 100644
index 000000000000..4e4b1fe2eda2
--- /dev/null
+++ b/sys-apps/asahi-scripts/asahi-scripts-20231219.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+DESCRIPTION="Apple Silicon support scripts"
+HOMEPAGE="https://asahilinux.org/"
+SRC_URI="https://github.com/AsahiLinux/${PN}/archive/refs/tags/${PV}.tar.gz -> ${PN}-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~arm64"
+
+PATCHES=(
+ "${FILESDIR}/makefile.patch"
+ "${FILESDIR}/update-m1n1-dtbs.patch"
+)
+
+src_install() {
+ default
+ emake DESTDIR="${D}" SYS_PREFIX="" install-dracut
+}
+
+pkg_postinst() {
+ if [[ ! -e ${ROOT}/usr/lib/asahi-boot ]]; then
+ ewarn "These scripts are intended for use on Apple Silicon"
+ ewarn "machines with the Asahi tooling installed! Please"
+ ewarn "install sys-boot/m1n1, sys-boot/u-boot and"
+ ewarn "sys-firmware/asahi-firmware!"
+ fi
+
+ if [[ -e ${ROOT}/bin/update-m1n1 ]]; then
+ ewarn "You need to remove /bin/update-m1n1."
+ fi
+
+ if [[ -e ${ROOT}/usr/local/share/asahi-scripts/functions.sh ]]; then
+ ewarn "You have upgraded to a new version of ${PN}. Please"
+ ewarn "remove /usr/local/share/asahi-scripts/,"
+ ewarn " /usr/local/bin/update-m1n1, and"
+ ewarn "/usr/local/bin/update-vendor-firmware."
+ fi
+
+ if [[ -e ${ROOT}/etc/dracut.conf.d/10-apple.conf ]]; then
+ ewarn "Please remove /etc/dracut.conf.d/10-apple.conf"
+ fi
+}
diff --git a/sys-apps/asahi-scripts/files/makefile.patch b/sys-apps/asahi-scripts/files/makefile.patch
new file mode 100644
index 000000000000..b7a9db6585f5
--- /dev/null
+++ b/sys-apps/asahi-scripts/files/makefile.patch
@@ -0,0 +1,6 @@
+--- a/Makefile 2022-10-31 17:46:24.536323376 +1000
++++ b/Makefile 2022-10-31 17:47:13.510116412 +1000
+@@ -1,2 +1,2 @@
+-PREFIX=/usr/local
++PREFIX=/usr
+ CONFIG_DIR=/etc/default
diff --git a/sys-apps/asahi-scripts/files/update-m1n1-dtbs.patch b/sys-apps/asahi-scripts/files/update-m1n1-dtbs.patch
new file mode 100644
index 000000000000..a1127c440fd6
--- /dev/null
+++ b/sys-apps/asahi-scripts/files/update-m1n1-dtbs.patch
@@ -0,0 +1,13 @@
+diff --git a/update-m1n1 b/update-m1n1
+index 0e55ead..f014a52 100755
+--- a/update-m1n1
++++ b/update-m1n1
+@@ -17,7 +17,7 @@ fi
+ : ${M1N1:="$SOURCE/m1n1.bin"}
+ : ${U_BOOT:="$SOURCE/u-boot-nodtb.bin"}
+ : ${TARGET:="$1"}
+-: ${DTBS:=$(/bin/ls -d /lib/modules/*-ARCH | sort -rV | head -1)/dtbs/*.dtb}
++: ${DTBS:=/usr/src/linux/arch/arm64/boot/dts/apple/*.dtb}
+ : ${CONFIG:=/etc/m1n1.conf}
+
+ umount=false
diff --git a/sys-apps/asahi-scripts/metadata.xml b/sys-apps/asahi-scripts/metadata.xml
new file mode 100644
index 000000000000..e0d402772ba2
--- /dev/null
+++ b/sys-apps/asahi-scripts/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>jcalligeros99@gmail.com</email>
+ <name>James Calligeros</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>asahi@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">AsahiLinux/asahi-scripts</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/asahi-startup-disk/Manifest b/sys-apps/asahi-startup-disk/Manifest
new file mode 100644
index 000000000000..a642fb75cd35
--- /dev/null
+++ b/sys-apps/asahi-startup-disk/Manifest
@@ -0,0 +1,98 @@
+DIST adler32-1.2.0.crate 6411 BLAKE2B 51d44ccfd774158687b8244e83377e40ff896364e3d41e9015665131cc2a176d4ca0ab5a84df027dec0869ee735ee36f5687a06c1d2341de666070cdbab89483 SHA512 8ed72612fb78e213fc92963fdae0508ef26988656c939e6c9cddccbe2658d4a956a8ae934d9658262a8b2687dc446b3f1ee7614128b440487c81e606526dfda3
+DIST anyhow-1.0.75.crate 43901 BLAKE2B 6353557d7ec2cbfdd001c039fad62c95fea9e02b113149f726fd14bb36b31e637e8609dd5ee20a900e9c11bb783d9958d664b31ba7c467382fa7f51d477ad3aa SHA512 190d6be8ede0af9808210db53e4dc31ce69b126a26b0357220c4705a11e83cab2c2c09c59964a35794f3c434f717eaa6bb669e9e8f16012535c14246b17e8d40
+DIST apple-nvram-0.2.1.crate 10223 BLAKE2B 3362346854e2cde8bca1ca727d3c5798dbf8c7199f3587eb9e3391c1425b9b7236d6752105d5881ce53f43a31574c9cb1e1fdf92d709deeb86d07f814597bac2 SHA512 a1c6eee160827648940c778e312883c99b132b46bcaa897a1e29af94d6993d1cd8f85863fadb9af3426250aa6ea20f52b9ca2ea710a03e0cbbbef732332a1e6d
+DIST asahi-bless-0.2.1.crate 7630 BLAKE2B 4e9703c54256d255c6e8cdf16a1e4a30a095c4a693e58108c6b17517e8f0ea4f82f3cc8cc528027fac1cec54858d5c86b61974db667e18aa5ca92422ae2dc56e SHA512 358c03df8afdb53835c7b224d326768a054548785cf2390f874c6e7cc2be14f61a88c155bc9a81737f756666fb33dd96b63eea0b57cba29e49d9b8b7578cee39
+DIST asahi-startup-disk-0.1.3.tar.gz 83092 BLAKE2B 2bc32a4eaeb02960b6f45801242802796c5aa9505b437dd1fbaa8adb151f8427e94695ae8c6c9b3927005e04625a2a863b9c7ab202a8bf145a3c25a59006a542 SHA512 35629b25d4210f78d1803eb81b3f48259dda8cd8f59cb3d91a67eda51be3720d77e3ee847644da92e06bbaa2cb7afe0e297e35501ceb620af338f198dd8d175b
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.1.crate 37043 BLAKE2B f61c45b142265e9c2944c7054e01704de47510735e9ee5351cd02b98676cc4eb42d68b1fc4849ad5f54654617a74f20cb533b4207c2fe76516b724ba9318b414 SHA512 d3fd7abc95acc1cb5bf16d6acc12dbb8eadd250f069268df13c2e8dc3d5f5c15a929cd17ca931c77393b64dce0516ef8674c469789ed32d78e315b5faada062b
+DIST cairo-rs-0.18.3.crate 54190 BLAKE2B cdd1136972174462334142c0ecada99fab75a20883fd8ed99295d6f2196b35e75f7c44463a587beb1310e4aaaec64f23ccf82125617bcec5a71fdabb5bf547bd SHA512 14164ac540f69fb685004be09e30a68e7d5af6ad4e553e720cb975cfc2a8e7c86df9446dd811f8ce0993be1dab838e14a60f2737457939a93f81ab58e1ec6b63
+DIST cairo-sys-rs-0.18.2.crate 11855 BLAKE2B da237a944a6eed675b6812bf8a71f99354c0c41302d222cc0ddf38e47d612d6c49754cb8854c92dbc62d32de5f716bc869cc874949b62c2ac4736104c5996144 SHA512 b101f7a2543793fbc1a1cf86c62a8fa404ce171160603e72f9aae3592736e4d68ae53b8ad91aa8d70e21965d263dc740f96fe001bb049674b4efee1039d3d68a
+DIST cfg-expr-0.15.5.crate 41639 BLAKE2B 8dce19ca74027fd284086797829caad8202ccd4c774f918f47384988a4b5ac20053054d5b656e8ab67575b7075a819fedd2f09f0b2d46198581883bc61bfd620 SHA512 13e9c47e66d74da94a742af01716655dde119d7928fcc519a52720f3d9c27ccdee9b3de231617c3f5739775c251e695e892bd1b7511d4bfca65e93447d86dd76
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST crc-3.0.1.crate 9950 BLAKE2B 2afbaee34f754953396e452260290422d19416dad4b88333e4501592deff3b3350363ca4c2b37d573ecd4e64a762b702b79445460f15fc90bdb8214fe43c0945 SHA512 aabe9d4058fb4710405146e978ec5881bce5ce8971618b69a7ff873b0fff15fc78e5c48ff0136ca6d37663a53905bc3c5daa0ed3a2ed4d8d721e90c3b0ec28a5
+DIST crc-catalog-2.4.0.crate 10155 BLAKE2B a9c3ef81871d72635addf1ded611fa6e963b9b128dda198eaa3a256512c8759608bae95df95524704aeb38f81e2fb6c2da2e29e306a8ed3dea595e63cdf05638 SHA512 25536456fe71c44fd8ec527299339c1d186f6e12f1f90142de60eabce337d836c2497ddd6307473b57a6cc720cfc8e29b059f378c70b8165bc171420ccb40a29
+DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
+DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
+DIST field-offset-0.3.6.crate 10032 BLAKE2B b4b43d35f793c55e8c521de7bc1648501cfe46494fc17d0b6135ba3456c8d72a11b422a16735c681c7c6542084652c119661372628096d61197f6e387b66143a SHA512 3ec99bf5e860dc68f3fcd0abd2b0de2ae0b3174eb177458506aabeee9dc7b0b8b58b925e2c6108a8f18ab95f2e1952dd9474650a639e1c1d50ec3f72bbd30077
+DIST futures-channel-0.3.29.crate 32432 BLAKE2B fa89fb7bb14e5d23e19636de6116fcad23668e320a4c75409ef232f83d473e3c6db89a44b640cae969a0a7210df6ad6e5f7886e284481e0c2a816ef01e0c3d93 SHA512 f04574f9e88b5d56570ae0aeab082c6c1e4382e1594d83646c1899416e7403bdd7537282bdb20146b5df4fe24b550dcf35c497af04c2210575413d6c8018dff0
+DIST futures-core-0.3.29.crate 14808 BLAKE2B f1ebfc7c1c7a8a212ed7e6c5c72d973f7dafe8b4635c8d42070d6842bd4920fd39775195571dec2f6395c5002d8ac02af889581fdbf878a45e0eb27dc6c5f0b9 SHA512 ae10dc9c1473e4625bee4db902ab3833bb047bd159a40e4fc4cfdc3a266d1ab99e85aa3db4f8dd867e08926d8dc733760b3258884ab890db1fd69f1520715592
+DIST futures-executor-0.3.29.crate 17745 BLAKE2B 4bc4ee76b767285ea121f6edd3d5230f5de12724b9bd9f80341249b1feda6ff845ca6e847639906565c17f7dedb8bd726c0e531071fbadeae91e4a1a7d42c8a4 SHA512 df3220201247d4ae085a970c34e4c3dc7f546f4ff38fa817e4eef55743127a5ca6bcdfc35dd7f5f47c5e2dff32120483e14dee466080db04e93244fb5a5024ae
+DIST futures-io-0.3.29.crate 8908 BLAKE2B 909bd5dadadbf726dba3943dcec930c7409e20d8d324a52444f4145f5972e30ee4b1e48b7c2d9982fbea62ed5f3288e68e8920e99cf83d7cb81b9de1e8d81246 SHA512 869862f8728d94f0f0e71f9b24d0bd26b8bcafe70a80dd1dde4cefce73d91dc0cca80fb22e891f66024a77dcf28e8858e815bd436eb17d4c3119a7e68fefbaec
+DIST futures-macro-0.3.29.crate 11278 BLAKE2B 025cca67a95da0399592b0b2cbb5e47ef3685cfe21c074b4fb807f13dc4644fbd9984b92e6a240deabd7de9074cae6cf3a0b64b37045974ed9d223dfeb24a726 SHA512 0134430d604bffc5066ad826cd14656fba24a9e412f65b4053412103bf3df7934474a0eb63e773b3de0cca8b57b6dd196229f57fb665241b583c961b79129560
+DIST futures-task-0.3.29.crate 11853 BLAKE2B 050df023d7942207ea11cbe5e1cb5316a255763948b0c07d479828a3245ca34b82a71d1854ddbb13e01e853bd4ce424b319b2182346c36122d0246649390961e SHA512 6f8da7141899cceaa498c857a81c69330c093cf518e101dc53ee1e37123fae918536fcb1dde038e06c08f05c5f378a50970265a35229fb31c2377146cf94be39
+DIST futures-util-0.3.29.crate 160207 BLAKE2B 2f545d3387d5ca21c13bc157eb219ef767b7b0c9957329f3ccf247e6402295f5384e01121a1e1ed062223568f6d7db13602b38878a280f19d26c26cf184508d7 SHA512 48fae22d9b5f38aa85b423ade3022dc693775aad5c3e6988d35e4d529b9395c0f35ceeb394492e0f3ec96719cc3f3fe4ed3811df045b840b63231921e42fd65a
+DIST gdk-pixbuf-0.18.3.crate 18174 BLAKE2B 5c2cf7883566a310e8fbb14fbba85d2d5211e6ebb506774780920cefe4c54f443fe66d738e330babade19cdb4ac1af8dde69694f80c0d51c37dfad236c2a275d SHA512 18c032936c6125406d84c45989590039f7e605ca1eadb164d441f3fd0187743590f0815c700f363360b99823c98a50824332426cb09b07177bf0186f89e06ebd
+DIST gdk-pixbuf-sys-0.18.0.crate 9674 BLAKE2B f9c224988cc2d46181a5d3dde212988785c5cd8fd411ca5d4a55156307ee5895465c5185d761b246a7ebfff81a60ef7c5973ecbe5704b5e0ad77ec72b55025e2 SHA512 ef757be6df8f6ffbe8a0276ccac2b3d4c46b7acc6580876635a10b6782d5afb9ae6e8b11c7dccb0933b6d8767c57bc89b0ab117470f33b73f7a4a141f44fb121
+DIST gdk4-0.7.3.crate 88832 BLAKE2B d4cb8f0e76c238123f934d241bb172559cfb560aa57a51698fb2d254131b8035aead4b892d58c785c17607befc83aab1379efe443d0ba454a7175ebe5f093d2e SHA512 5fa610b59b1f2ed179889289cba0901806ff0d30a10d8c7d919f7c34357ed823debcee3db8ff5659b821f6c0fff520bc8a183dd951538addf0b9a25e8be0a376
+DIST gdk4-sys-0.7.2.crate 64775 BLAKE2B f54ec0a8f4b63709b015801ddb2c1e8df185b13ced0b66ff453655dee10f750dc555f36e1965487eec6e814c9e35e816a8aedfc46cd18b6b284fe1c0aec952c3 SHA512 e4ab0e5b50c86e90da016e7efc0b824caa4d09a12d1f2d9cf2236dec6060a36da0609a7206c74937a0747df3a8fca0c16e2c8aa22e1ff58b223dfe5a5a3a105c
+DIST getrandom-0.2.11.crate 35391 BLAKE2B cc3af20769f8effebcd6fe4f48bb762211f78cfad016b796ce4b6b83a25d0a758ecee4352af18ef97e84c17fb4efb0c7bf113b53d2dd30eaa32067fed97978fa SHA512 2230c219e1080b4b13f207bdfd54b1acff37d9e5fec5263ec9952df9c0279939b231c722b54524deab85002caf1047a471f3fba8090428d918e99d53edf82345
+DIST gio-0.18.4.crate 206027 BLAKE2B 6fc7b587e5195d0230491b61440d7f0f9aeb87dc0835c5af8c6a95ea19c4803d56b1528cfceb5b7d006b4de65b92d3cefa3b2727a647af44c6dcf1c107fda7c4 SHA512 d4e5de6c4600883217a98331b9c0d6836a04fbe446dc5fb70e7eed6c7af8469defa01f246ceb962b4b6f905d08782e3f169d7237c032f4b9b699f087b50beca8
+DIST gio-sys-0.18.1.crate 81369 BLAKE2B 40b7425735f49cab5748130a3edde01713472cb75c2e3f1612ac1699ff2488abcd17addc8b9de1704328f7656e660f90cf33502f8567c22565f15d9f80aa4079 SHA512 f02e9766754d48407e955fc81bb27820a357a1f6cf7b1e89464c0399cd39d4adfb8586d7d7a2a12e98792fcf6e4fe2807816185824967906d45ff936ba3d911c
+DIST glib-0.18.4.crate 267653 BLAKE2B 09f5d47045325aaf95b53d6d3301a9fd2749f98780113686035bb023c9d5b989064e0222b31deb84ab1324538aaeb8da230ea456e5e128c309df9b0f94fd2fe9 SHA512 45b2e14c95d3643585c0198fe2ab0c21455196d116324775b0407778d8ce29a702a2f6fb57a87e479a2ed6bd8d689a3829a3c7d801f7a3fd631c07b0479bb4b6
+DIST glib-build-tools-0.18.0.crate 2729 BLAKE2B 78dbcbb5f8f3abffe219f7b9f065235aebda1e79184d832e78ec4265a16b5f1f46ad45d0a866f16ee99598cbb82fe6f6d5c054379bf00dfe8c8374f35bc82b5b SHA512 9ba73324374159d15d70a6089638cffbb69c70156444c08adbd2366249642836a3c1220864ccbddbfd3ce158104c30cc32c2b624d48d06e424e98f44a5828689
+DIST glib-macros-0.18.3.crate 50850 BLAKE2B d784496296d90e50998e9b4fdd84a2b1fe4f53fa044e85ce288bfac1f304a8bc055f92dc92db7516642d2e28e4e2d13754445118fa3d63d31aa3e4109cfcc8e9 SHA512 14c210285e75cd3e7de151287263c626e050a3dbfc7e357aa7beb07abea3b52f0296736312ff646b3e2256cd84500ec68b38bd2066987623903d485a3310c445
+DIST glib-sys-0.18.1.crate 60464 BLAKE2B a68df8198874339988cb60ff45b9904607a7852d224e5efa487f22f3bda8d3eb54f7e30f6e2c30bb20dd6e5d48c205b65b7f8c3787915d3a436666d6fbfb797c SHA512 46583979de6d58cb863e522f9f11f9fd2e16ed5d1ec098f9f9511a7a124029671107beba01d5a19dcb082e57c53a2714ad3f75b0ae47c65985c2ab947d3f2c15
+DIST gobject-sys-0.18.0.crate 18699 BLAKE2B c5578c791f40ebece8210473bb363174ebf6d41db6a7ce64f4a86a2ab5337c45c5b10ff9093712a846cd2cd9bec99e135b4db556a4d18d6d4758a1a66aac08ed SHA512 7b274a6a4c4f38a4c1a5abf6410151d5ecd669c9a2c3ca874faadb0cf31c94b000c7439e1c1d409cf66ba41d8157dc9bd931de5bac58e50bc2ea9cbab13b3f00
+DIST gpt-3.1.0.crate 47134 BLAKE2B 24a1b4607ee07e590c89c1a68bb7f20251a99f5078c38e937cf4f4d0f83508830a9b62b7f5a1eb5475095c41c80d56ebfce91e65f25a61b161b2a088e1c0e179 SHA512 dd298a4b6b6a200482193ba560241bc3f3e2e9e790c06d016447f58004d1aeb37e554f99fc1d5b166e4062978ad19883d021405c08b9648a34159a002316e3b5
+DIST graphene-rs-0.18.1.crate 17724 BLAKE2B c0d28601904e5b81780b3c535a7805df404a31168fa470f9cd0e49fdf3ad2fc51c77595a9dd95267a8cccb94b3935db3838f21d738bb19a3a398fde9566c31e6 SHA512 d7f6acdc70ed7de110b24297d7df3b1ca298966bb0d7695af8d2c955f521f828638bf3282a5d4c79042d30029c6f77251a204fa5f3be84703a1728a2eb681a81
+DIST graphene-sys-0.18.1.crate 11573 BLAKE2B 029a5afee5ac658ff250c55ff18af09d5dc3657857d7124050d27f85cef97c0bb7f150fc43c5fe238c8961c31b57a9d5a3d757887c90929c4a9a50e25b0c614b SHA512 890556cfc5120fab60d22028394be9ca8ccbb57f34d386768da3e1580047b8c2096a08b636ea2df76f19b7b1c045275b2873b74ee039896c65ab03f5b97e89a9
+DIST gsk4-0.7.3.crate 33660 BLAKE2B c3d0aa2cb05bfbd64ffa877272b2d01e9293a513337d46bb84ecdc350de1222e1f0d450d862e9466a1daaaf003ea3e06dc2e98064aecb03df6b755fc63284a70 SHA512 05b49365b85b36e169aada6b9c3f584eeb7bc1a498ab0e7f873c5b6d67848534a7706a5c8eb29368a35334cb6db814f20efac32c0995ddc89f91dc464071851c
+DIST gsk4-sys-0.7.3.crate 15050 BLAKE2B 7518f8959f2bda9d3a2d8bf1bb8467d2ae0550bfa00db2a86e8e1e8b1c60d218e1708d2936eea2192f95d2e72549cb10ba06b2db28bd9fbe5073d2f28753f22c SHA512 0d14a4d977609c674c67b49a4ba79e819b502d6a7450fdb18320bdf87ca16bd0ead118c8193626a0cf7ed136dbcad9804c61f38bf521ee5824749e7e3a156fff
+DIST gtk4-0.7.3.crate 468953 BLAKE2B 90bbcc6e13055a170f031131ba12f96e5aa090dafdfa655bab76c4cce0cc42866b6e9b594b328ef8f61ff9cd44fd370e160c65cf20c343d6bb53bf405c04c984 SHA512 53a767c68428e35f59c1b7703793a6b1e460f647804f40b4d9ad206b2cb02985d90af858724c0553496e20517e8dddfe2d18df26822a39f591eab9c92e891722
+DIST gtk4-macros-0.7.2.crate 16770 BLAKE2B a63be9ede28cb264c411f39b698857c72e08f250df4de99c3f475be3dfd683b6e1f19f54d2a637232e83c35280a5e91acfc8fd98e1b9cf4c870e54d4d8016119 SHA512 66486f148acc5a1200536cf63711d71bee44253138f811821a9595759695da03c0b1f79e9d6c7e30a4a140b6e7470792e35d4d7113a2e550df9ce58cf48976b2
+DIST gtk4-sys-0.7.3.crate 106028 BLAKE2B 0b80e030a5e17de7692f55efd2600db62c4bdbe2f764dde88151a6ac69e5c81de1a0ac4ffea5b4f00bf511cf4feedc249067e6b0ad69fbb266e12e896ef33251 SHA512 40c14996e8d819bd907d98677fa1e05f86411e030f5b28b076131b36b300af240bee0c255199602d558d4f7429232e1d58e310cd0a95650a6ae84349e3d1b9a2
+DIST hashbrown-0.14.3.crate 141425 BLAKE2B 23c63a99c6c6b7a6b9b9e8bbbc7f1e342e1eb9d7582fc9eb408d3eec50c99f34502d450170bcfef4da7f2b1e743e1d1619875ec879e4753dffcb84f3c10dc3b2 SHA512 4d344e5c89ce58e04668b80ef10e4e110a3a5daf4d610c52d980577795d0e2050c7d0b151d8ba97128117665e27b92ab0300f85b88bd6e1de943c62d49249356
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST indexmap-2.1.0.crate 68224 BLAKE2B 9d833570cbb63ecae138ca234b998bd0e5b11b1a7e3d5ef4a21212bb32d0998395f1fc609f66860bdbab198081687630f583f5a2e495fac1afa40ff48bee8a0f SHA512 9d303eef918b9264b9fe326cc1d71f4095f7ed5639ed8696efa3e9be65dff2c50ada4495409e109e7718997db51ae1fd865cf8e88978107d7823faba14380600
+DIST libadwaita-0.5.3.crate 100024 BLAKE2B ea960daa5411173be50d9d3290837350c3c45cf1f6c12a6c6e83162d2bccdec8491d979866c30a975eeb87e642c7775d28a413b7c96946d0feb65f2b8388af8d SHA512 5f0880b0ab0e69902230e88db393c0c90243b4ce2a0014006efc0fbccbeb948169981fd683cc05ae9449f44d1ccaee64e7b041453dccf3857a9f21e276dd33f8
+DIST libadwaita-sys-0.5.3.crate 24713 BLAKE2B 9ba2b45383c3427d6096dbd1b4482f0d5e287f75d5feba84f62653ef95dae1834e13c489470cb8211f6d66a74dd5e7eb6fbbd2c0ebe51fb5c41f3617ac061809 SHA512 5108a26bfd53f4fc934a11c76045052e22a2dd1158068271633679b7051c709052d08d5e7a54839fde783c8bf9880c0df304c50c495a394a0f717e030aeffd49
+DIST libc-0.2.151.crate 736640 BLAKE2B ba8ea6d22b0eefdc5c1c5ee9fab960b6ea0eb7098a21b032563ec78b5d6e2a8f1d7ca4d5bb721c71de2c5de28e105029f229b9b03cd5168c78a65c7164e6d07d SHA512 2039bdfd704c5a876ff7d609622bb968260d6e0fd264ca457e92b75660503eca10e1ff21864b3c919d2656de521f03ef443895f5c0150271ae2502857742b0ec
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST memchr-2.6.4.crate 94439 BLAKE2B d1136f7105a33565214fdeecdc5a95e74d7fc7cf45997f81bf3cf389f3015fa561ab326433ddcff2db0b7259246eb6d26fc7b4e3c90c3af8b9b7ed7e8ec56ba0 SHA512 1065a67e04ec9210c70e430288e0a8d39f36ce6414722099553e99112ea2f8f710eae44bf39f8775b9850e6c8a50e634a1b1b084a8eb4f6b2eae6697dcf5b5f4
+DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
+DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55
+DIST nix-0.26.4.crate 279099 BLAKE2B 41debf1f21427ad6c25c6cd26b7867feb8ba46366028c4b74073307e902e526543f536fc0a66db2cdc5a52fbbf9166a6a4843aba57e5e5caada3d914286ddd60 SHA512 cc68ff8e3e8ea8635c6fd4c0a866cf42121aa3e25165666ef3b97b5b2c1d9273cba6f689e80eb812b55b5ee513390924a926d95fce45de0a74b98764dd1fa27d
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST pango-0.18.3.crate 47591 BLAKE2B 56eb8e33752289787ded747b5184dc088a948a60500663ffa56bbb3fee638745597719e266862e1990331a3356231418fa3c2a8dc6fd7194790fd904ecdb480a SHA512 eaa4d780ab208089e2c3e989d3ec3b2a2131752dfa0ed2a048394e3425007b58f668509f5b6064acb9070bcf424e9e93469070c11fe343725fe6df0c9b45c318
+DIST pango-sys-0.18.0.crate 24709 BLAKE2B f197872258fae7b554be9d62ad2c7a3484fc817430b008263a6b2d20845809ee3c450fa8c65e6845854d5885cdd80f24791a94ee7fa3cde43bf1c7c504f886a0 SHA512 b20df431e744c7b19896b31f487060e0d929c65289520f1fd4d624ff708698d4e082baa73366321206a2a7e3f4ad126ace9b3e55169ff815c9c6b25e5ec5ba3f
+DIST pin-project-lite-0.2.13.crate 29141 BLAKE2B c434a336716c9cdd16ebc297fed393e9106ef167a693c4aa0b12c681e03141b8ba3cdf64c310916cb7d5cc43cbbfcaaeb39bb5fb1e8b3efb9e94a3f72af914eb SHA512 7f12595d751d315de6c0d380e2f501b74154661eb676987d2cab6fdc956091a68c9cac658df45dbff73615e982e6ae2ea138c09ebb708cd6c351f0d18dbbdbee
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.27.crate 18838 BLAKE2B 1295eb4f08751b3663cb2c7c2753f29bf2ccd80f4e5856909fe10b6f006c37fb9672c9518b9b416546469faa18821512673a66543c0bd1e848bddabc456d0a90 SHA512 41e9b8d4fce6b8244c2ac8566318a001b481bd42a182f1a832c81ce93c6a023e18af03aa3500b134c30195219d35080433bdba69b2594e9665081debfbb4533a
+DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
+DIST proc-macro-crate-1.3.1.crate 9678 BLAKE2B ed617a1930bf28a26e865f6477229566a0c4ade7f2c1e8f70d628c5536985f03c7533c561490415e207c0f58b4885367e7f54ddcf10b058711829f78a34d68a9 SHA512 5306f017933ffa89eb6111ee00b0536179c5cfab56529440630a0bec86b62194ff16f57ebb471b233e88cd886b7b9871de8402ed29073b23e5ca98193e513659
+DIST proc-macro-crate-2.0.1.crate 10989 BLAKE2B 3eec28b964420b6cbc78dce2d39d344d39195585256cb79b6a64d9fc5996115e05505a4611639fccd2733f443df6cb00f2d92cfc20ef2dbfddd2fc18d7dca68c SHA512 4a914dad5b558b9baf7ba9ca28c154cd14c97c85c094ebb412f6f80ecd4331de7d899c020f0facee788926acc22e0fe229e00d549b84b062aab470237dedf63e
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST rustc_version-0.4.0.crate 12175 BLAKE2B 6fda2ce03eab45d7193fa0d70175cc7ffb56b7be85fb1314092bdcfd3948ea145420569ace3a47218a4a2a6e44a818862cea6dd8cfb945475496f63b591c29da SHA512 f66da7c6efe431db06cd01180d84ba67fcd38f8cd6ef693762957c00ccc2211f23c08079d7f184776e08f28d2d6ca3bdb5f5016f7de245c6193d4722891ba1db
+DIST semver-1.0.20.crate 30451 BLAKE2B 7a08bd65749e99d0a881ef315f611f9f02215991aafb317294925e0b88b125acf33e713a45113d229646401520fba22c6f6527015c12b9859d7a65d126de647b SHA512 35a55f1d1e4dc8674d48053da36b7152b5e3bfeb72eebf7d307c491b02d77e6bd4552212551be29e2a2c3951afde292c2614829e668d9382fec0f258dc6484fe
+DIST serde-1.0.193.crate 76863 BLAKE2B 163097e85b5542451896d7381607aa297e3b0342a2641887a01689b13122c6c1ca566fcb7f32f51bb0ecc861aed014f1467edfe21338223d5361555f870425a3 SHA512 82259ca302f42116ecffca3c88bc1212785ce5430f9d29390a9041d4e5943c13b13de119fde644a583960102c4b6e850a16f962d36dc76ac69fc2297ed65a506
+DIST serde_derive-1.0.193.crate 55692 BLAKE2B eeb2a2fbcd0daf5fee1bd6a4f584fed330db58cbd786073311d6a94308c63dfc6b7c2dfbc4b8980064ed66509f0127525b79d99aa96ca0134226fe21715999bb SHA512 05efb144aeee293a0e7dc7540106eb8c4920b2d8dfc25771d73afa8ffcba330104643430a6e396ea2adabbed4ccb23591251479b75449b9c8322799f91d38c41
+DIST serde_spanned-0.6.4.crate 7756 BLAKE2B 58b8bfa3b39368f4bec795bf1bf1b0e19554efa9cbf44a8f5deaef79c926c8cafb4eabd6230b56acd77c75b924b8642a141e3f7827a5fea16633edb764b54124 SHA512 10a71df5cf84abd5c658de0321a4813ce582735fa5cc349694d979acd8c8228fcf69b3c65bba803d706089b49b053c15a8b1c4fc4c19a586596b8cc58cc2ce04
+DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
+DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
+DIST sudo-0.6.0.crate 9089 BLAKE2B acc4af110664c5f2fe0c28d370694add64339dd23e111058796b8bf2422b65103f7df275d73014efbbe0c8527037b8344e3ec9c53c5c46f05d4f22de4b625e57 SHA512 173af2ae75daea1e8b5f1d347d54c2faeaae8dddedc7fe5e2bf6c39e912ebc92f9b8f84f5926ebb9a76aa74edcb8f9084073f37ec82a14f040b801b97123f693
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.41.crate 246016 BLAKE2B 9d389f2e2a0acb4c84c309456e8ffcc88c5d4d541535ed136832d7a6054dde45a598bb68e8a6f3062ca2a96e1ceae947d54b3aec9bad65b0c51d6733aa6c80db SHA512 6bbaf69ca783025dfb81ac3612ac60bfbed31b2d87792909b35c12892dadebdaff2ddf9463105e536b671dce5870610ab90fe29471284bbd3014dca8d6993f1a
+DIST system-deps-6.2.0.crate 24961 BLAKE2B de59a67e59aeb793dfc7f71aacf93303a4eaa3364aec69fabb7572c07120c447c0b3581ad62aa61292d7c78cda880557e1bc11a3a76bd1a6bd84dd3128c4fa2a SHA512 10bbc503b8f55560a607d764c2575c7b854ae07ed50470d7cededc1e0451e4c7f75e06a655eba90e5470d8c2d1f1911089cd4d82da378a2d15f8e718c8f794c4
+DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca
+DIST thiserror-1.0.50.crate 19414 BLAKE2B a093f66ad191a8c4b15356f8d29578273b36f9f11b5843195eaa15b70bd4c8eaf6dffb631564386acf35a9ddf856e05055b419af52d4e008f582ae444f3dd5d2 SHA512 65605a9cfbc43447a50980739259a45d933f1eb315926dce909892f7162c79bd04bfcee7b38b5a9fa71b24fbe4416d050ae8e2443932577541513a23ebeeac46
+DIST thiserror-impl-1.0.50.crate 15357 BLAKE2B 41309507014a2c628b7e91d250335070e4cca6c6c452c90ee7e6173bed049df83ca197b37c16537cf15415550919c248e0f6c798aead760e7bbcd25eab701d50 SHA512 8555e010f94390e93ba757bce9ef25d066ed542f23b843db431a66fbab722584ea0ce6c9d4b6f4d92cea3d91c190336abd567c4a0aa4a27893db25720c5b89c9
+DIST toml-0.8.2.crate 50425 BLAKE2B 3d715fb4bcb42e5ff1ad21f7553a559997c19b01ec0def1b92a6c6c19bd3c5171bebff63318a742369cec4b2df90bcc9a6824c0aa9fd1d8118abbeb360230757 SHA512 99c8e779c040ab2781d4d1626283e851ef386431732d0f84e7084cc65e892c5f9664a8834d95d558f135c77ca9c5132df953aede1357cb646579f5b3d8187570
+DIST toml_datetime-0.6.3.crate 10770 BLAKE2B fc1754eb7c3a7073cfe41e5ccba152ff09891a8de8afe38991cf2dd7b93aacf07f1075fd24d7aa643238cf31e3df1fc3162335b2c475438178b4a4d8a2055471 SHA512 cabf5dce24ed3bf4674008743180a21e86286d999cdce79f934de48b1e1fe0f16a7f3d2498bf059acdb823b51bc01986faf47139f8100ae272e6bd19095cfa9b
+DIST toml_edit-0.19.15.crate 95324 BLAKE2B f989f96d571693ff81572af6c05a6f51b673e478f22d20a6b166c45909902ac80280ea92ec5c3567327df90100a47fb7504845fc39bbcff6756af6c1a89e2221 SHA512 46d6bd2fea957392ae0ad7e687dad7743b76ee8e8ec76c80d6374ea294d3d09b6f73df0a82c821b9ee3b5268987a4136aa825034309f3cbc1947dbd1af1505dc
+DIST toml_edit-0.20.2.crate 96487 BLAKE2B 030a68413efaa9cd970f4d0c9c32068c90b5f2633a35673db76af12dbe66b26c8ac2c31fffe8d78046c677bf404358a269131788df816bc52208b78650983580 SHA512 7eacaf3c78ac8c2bd768dc7e5ff03c39dbfed60da1eb498ba537a56579d674a23a7db6dc30286a088a0f3158cc1a292783194df5415eb1620d61c61df36e18dc
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST uuid-1.6.1.crate 55554 BLAKE2B f9b8eb34f9197734ae9a1437ded396f5e5a8551b54e532053016e0c00c8007644f4fbbd3827c9878cdbf8acaa981d8ae9c94739af7edb6939ec299075ee4b443 SHA512 b9f3dbad176b3640b4b943d127ac8fcd0938e7bc750430626cc603efdcf5faf479f8de7940d64ed1b5b6e6378b42a1aaf3c1e791ee59b9db9394409261cf3c55
+DIST version-compare-0.1.1.crate 13224 BLAKE2B 4bb1e7db6a4a5b30f4ef950234fa939bd562e8d5693aad42a5dadddde7caee01b4dc42b28d8ef61a769cf573440e57c0dc321f8a8b4b3dfc0cc035507bfed886 SHA512 efc9441440f702518867e2056c0ab066cd2fa6949112479e463802610f25a4d50c4411eb5fd0ba6ca9b187e358fce8d99579188e0ed9ba0297191172ab7af408
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST winnow-0.5.28.crate 150758 BLAKE2B 10ea6c613e474b48da3af7fd2b6459e6ac1bd75fc2295c2a174f87988e74c1b9019c12d55c4f3d79bb37fa08f8613c98233d2f4f9b72a2d5783b46da0c14153b SHA512 763d6000d2d4a215c0deab8a7e6a50b981222cd73b51a5e5167cc07e24ec93afd667e1ae1b884f50daf6df1ae71cbbfadd114fefa7e41a7ee43971b9714e3042
diff --git a/sys-apps/asahi-startup-disk/asahi-startup-disk-0.1.3.ebuild b/sys-apps/asahi-startup-disk/asahi-startup-disk-0.1.3.ebuild
new file mode 100644
index 000000000000..021770dd5ac2
--- /dev/null
+++ b/sys-apps/asahi-startup-disk/asahi-startup-disk-0.1.3.ebuild
@@ -0,0 +1,134 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ adler32@1.2.0
+ anyhow@1.0.75
+ apple-nvram@0.2.1
+ asahi-bless@0.2.1
+ autocfg@1.1.0
+ bitflags@1.3.2
+ bitflags@2.4.1
+ cairo-rs@0.18.3
+ cairo-sys-rs@0.18.2
+ cfg-expr@0.15.5
+ cfg-if@1.0.0
+ crc-catalog@2.4.0
+ crc32fast@1.3.2
+ crc@3.0.1
+ equivalent@1.0.1
+ field-offset@0.3.6
+ futures-channel@0.3.29
+ futures-core@0.3.29
+ futures-executor@0.3.29
+ futures-io@0.3.29
+ futures-macro@0.3.29
+ futures-task@0.3.29
+ futures-util@0.3.29
+ gdk-pixbuf-sys@0.18.0
+ gdk-pixbuf@0.18.3
+ gdk4-sys@0.7.2
+ gdk4@0.7.3
+ getrandom@0.2.11
+ gio-sys@0.18.1
+ gio@0.18.4
+ glib-build-tools@0.18.0
+ glib-macros@0.18.3
+ glib-sys@0.18.1
+ glib@0.18.4
+ gobject-sys@0.18.0
+ gpt@3.1.0
+ graphene-rs@0.18.1
+ graphene-sys@0.18.1
+ gsk4-sys@0.7.3
+ gsk4@0.7.3
+ gtk4-macros@0.7.2
+ gtk4-sys@0.7.3
+ gtk4@0.7.3
+ hashbrown@0.14.3
+ heck@0.4.1
+ indexmap@2.1.0
+ libadwaita-sys@0.5.3
+ libadwaita@0.5.3
+ libc@0.2.151
+ log@0.4.20
+ memchr@2.6.4
+ memoffset@0.7.1
+ memoffset@0.9.0
+ nix@0.26.4
+ once_cell@1.19.0
+ pango-sys@0.18.0
+ pango@0.18.3
+ pin-project-lite@0.2.13
+ pin-utils@0.1.0
+ pkg-config@0.3.27
+ ppv-lite86@0.2.17
+ proc-macro-crate@1.3.1
+ proc-macro-crate@2.0.1
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@1.0.70
+ quote@1.0.33
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ rustc_version@0.4.0
+ semver@1.0.20
+ serde@1.0.193
+ serde_derive@1.0.193
+ serde_spanned@0.6.4
+ slab@0.4.9
+ smallvec@1.11.2
+ sudo@0.6.0
+ syn@1.0.109
+ syn@2.0.41
+ system-deps@6.2.0
+ target-lexicon@0.12.12
+ thiserror-impl@1.0.50
+ thiserror@1.0.50
+ toml@0.8.2
+ toml_datetime@0.6.3
+ toml_edit@0.19.15
+ toml_edit@0.20.2
+ unicode-ident@1.0.12
+ uuid@1.6.1
+ version-compare@0.1.1
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ winnow@0.5.28
+"
+
+inherit cargo xdg
+
+DESCRIPTION="Interface to choose the startup volume on Apple Silicon systems"
+HOMEPAGE="https://gitlab.gnome.org/davide125/startup-disk"
+SRC_URI="
+ ${CARGO_CRATE_URIS}
+ https://gitlab.gnome.org/davide125/startup-disk/-/archive/${PV}/startup-disk-${PV}.tar.gz -> ${P}.tar.gz
+"
+S="${WORKDIR}/startup-disk-${PV}"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016 ZLIB"
+SLOT="0"
+KEYWORDS="~arm64"
+
+RDEPEND="
+ >=dev-libs/glib-2.78.3
+ >=x11-libs/cairo-1.18.0
+ >=gui-libs/libadwaita-1.4.2
+ gui-libs/gtk:4[X]
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+src_install() {
+ emake DESTDIR="${D}" install-bin install-data
+}
diff --git a/sys-apps/asahi-startup-disk/metadata.xml b/sys-apps/asahi-startup-disk/metadata.xml
new file mode 100644
index 000000000000..405979bd4a04
--- /dev/null
+++ b/sys-apps/asahi-startup-disk/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>jcalligeros99@gmail.com</email>
+ <name>James Calligeros</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>asahi@gentoo.org</email>
+ <name>Gentoo Asahi Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gnome-gitlab">davide125/startup-disk</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/attr/Manifest b/sys-apps/attr/Manifest
index b4c74752aa0c..0e025eaf233d 100644
--- a/sys-apps/attr/Manifest
+++ b/sys-apps/attr/Manifest
@@ -1 +1,2 @@
-DIST attr-2.4.48.tar.gz 467840 BLAKE2B 8fa6a5013b927850868b6913d026f23f116b75da3925d5da5eea007e14f5d9e309f98290b7ffaa6c62f620ff8f3ec7bfb3a1fcb04f3c0c072fca5feacaf804c0 SHA512 75f870a0e6e19b8975f3fdceee786fbaff3eadaa9ab9af01996ffa8e50fe5b2bba6e4c22c44a6722d11b55feb9e89895d0151d6811c1d2b475ef4ed145f0c923
+DIST attr-2.5.1.tar.xz 318188 BLAKE2B 876dcbd802ea79b7851640f208820ffdfb73dc46065af673037c6dd50ad2af158f9f74b34cf45728baf9d0cc5572b40c3f102aa2907245a877db0d3879e38f04 SHA512 9e5555260189bb6ef2440c76700ebb813ff70582eb63d446823874977307d13dfa3a347dfae619f8866943dfa4b24ccf67dadd7e3ea2637239fdb219be5d2932
+DIST attr-2.5.2.tar.xz 334180 BLAKE2B cf26348c3a96622e4f62493ac7655e14b6580d36a5784ef4c3750178856eceabd33192fd58516be21c8aa1ad41d56c024ad440ef4bc922bed8f7a4984ea16c63 SHA512 f587ea544effb7cfed63b3027bf14baba2c2dbe3a9b6c0c45fc559f7e8cb477b3e9a4a826eae30f929409468c50d11f3e7dc6d2500f41e1af8662a7e96a30ef3
diff --git a/sys-apps/attr/attr-2.4.48-r3.ebuild b/sys-apps/attr/attr-2.4.48-r3.ebuild
deleted file mode 100644
index baa2831efd2a..000000000000
--- a/sys-apps/attr/attr-2.4.48-r3.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic libtool toolchain-funcs multilib-minimal usr-ldscript
-
-DESCRIPTION="Extended attributes tools"
-HOMEPAGE="https://savannah.nongnu.org/projects/attr"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="debug nls static-libs"
-
-DEPEND="nls? ( sys-devel/gettext )"
-
-PATCHES=(
- "${FILESDIR}/${P}-perl-5.26.patch"
- "${FILESDIR}/${P}-switch-back-to-syscall.patch"
-)
-
-pkg_setup() {
- # Remove -flto* from flags as this breaks binaries (bug #644048)
- filter-flags -flto*
- append-ldflags "-Wl,--no-gc-sections" #700116
-}
-
-src_prepare() {
- default
- elibtoolize #580792
-}
-
-multilib_src_configure() {
- unset PLATFORM #184564
- export OPTIMIZER=${CFLAGS}
- export DEBUG=-DNDEBUG
-
- tc-ld-disable-gold #644048
-
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- --enable-shared
- $(use_enable static-libs static)
- $(use_enable nls)
- --libexecdir="${EPREFIX}"/usr/$(get_libdir)
- $(use_enable debug)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install() {
- emake DESTDIR="${D%/}" install
-
- # Sanity check until we track down why this is happening. #644048
- local lib="${ED%/}/usr/$(get_libdir)/libattr.so.1"
- if [[ -e ${lib} ]] ; then
- local versions=$($(tc-getREADELF) -V "${lib}")
- local symbols=$($(tc-getREADELF) -sW "${lib}")
- if [[ "${versions}" != *"ATTR_1.0"* || \
- "${versions}" != *"ATTR_1.1"* || \
- "${versions}" != *"ATTR_1.2"* || \
- "${versions}" != *"ATTR_1.3"* || \
- "${symbols}" != *"getxattr@ATTR_1.0"* ]] ; then
- echo "# readelf -V ${lib}"
- echo "${versions}"
- echo "# readelf -sW ${lib}"
- echo "${symbols}"
- die "symbol version sanity check failed; please comment on https://bugs.gentoo.org/644048"
- else
- einfo "${lib} passed symbol checks"
- fi
- fi
-
- if multilib_is_native_abi; then
- # we install attr into /bin, so we need the shared lib with it
- gen_usr_ldscript -a attr
- fi
-
- # Add a wrapper until people upgrade.
- insinto /usr/include/attr
- newins "${FILESDIR}"/xattr-shim.h xattr.h
-}
-
-multilib_src_install_all() {
- if ! use static-libs; then
- find "${ED%/}" -name '*.la' -delete || die
- fi
-
- einstalldocs
-}
diff --git a/sys-apps/attr/attr-2.4.48-r4.ebuild b/sys-apps/attr/attr-2.4.48-r4.ebuild
deleted file mode 100644
index 61b24dcb0c84..000000000000
--- a/sys-apps/attr/attr-2.4.48-r4.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic libtool toolchain-funcs multilib-minimal usr-ldscript
-
-DESCRIPTION="Extended attributes tools"
-HOMEPAGE="https://savannah.nongnu.org/projects/attr"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="debug nls static-libs"
-
-BDEPEND="nls? ( sys-devel/gettext )"
-
-PATCHES=(
- "${FILESDIR}/${P}-perl-5.26.patch"
- "${FILESDIR}/${P}-switch-back-to-syscall.patch"
-)
-
-pkg_setup() {
- # Remove -flto* from flags as this breaks binaries (bug #644048)
- filter-flags -flto*
- append-ldflags "-Wl,--no-gc-sections" #700116
-}
-
-src_prepare() {
- default
- elibtoolize #580792
-}
-
-multilib_src_configure() {
- unset PLATFORM #184564
- export OPTIMIZER=${CFLAGS}
- export DEBUG=-DNDEBUG
-
- tc-ld-disable-gold #644048
-
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- --enable-shared
- $(use_enable static-libs static)
- $(use_enable nls)
- --libexecdir="${EPREFIX}"/usr/$(get_libdir)
- $(use_enable debug)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install() {
- emake DESTDIR="${D}" install
-
- # Sanity check until we track down why this is happening. #644048
- local lib="${ED}/usr/$(get_libdir)/libattr.so.1"
- if [[ -e ${lib} ]] ; then
- local versions=$($(tc-getREADELF) -V "${lib}")
- local symbols=$($(tc-getREADELF) -sW "${lib}")
- if [[ "${versions}" != *"ATTR_1.0"* || \
- "${versions}" != *"ATTR_1.1"* || \
- "${versions}" != *"ATTR_1.2"* || \
- "${versions}" != *"ATTR_1.3"* || \
- "${symbols}" != *"getxattr@ATTR_1.0"* ]] ; then
- echo "# readelf -V ${lib}"
- echo "${versions}"
- echo "# readelf -sW ${lib}"
- echo "${symbols}"
- die "symbol version sanity check failed; please comment on https://bugs.gentoo.org/644048"
- else
- einfo "${lib} passed symbol checks"
- fi
- fi
-
- if multilib_is_native_abi; then
- # we install attr into /bin, so we need the shared lib with it
- gen_usr_ldscript -a attr
- fi
-
- # Add a wrapper until people upgrade.
- insinto /usr/include/attr
- newins "${FILESDIR}"/xattr-shim.h xattr.h
-}
-
-multilib_src_install_all() {
- if ! use static-libs; then
- find "${ED}" -name '*.la' -delete || die
- fi
-
- einstalldocs
-}
diff --git a/sys-apps/attr/attr-2.5.1-r2.ebuild b/sys-apps/attr/attr-2.5.1-r2.ebuild
new file mode 100644
index 000000000000..93dc3a36329f
--- /dev/null
+++ b/sys-apps/attr/attr-2.5.1-r2.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs multilib-minimal usr-ldscript
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/${PN}.git"
+ inherit autotools git-r3
+else
+ inherit libtool
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+fi
+
+DESCRIPTION="Extended attributes tools"
+HOMEPAGE="https://savannah.nongnu.org/projects/attr"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+IUSE="debug nls static-libs"
+
+BDEPEND="nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.5.1-r2-fix-symver.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ po/update-potfiles || die
+ eautopoint
+ eautoreconf
+ else
+ # bug #580792
+ elibtoolize
+ fi
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
+ --enable-shared
+ $(use_enable static-libs static)
+ $(use_enable nls)
+ $(use_enable debug)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ # Sanity check until we track down why this is happening. bug #644048
+ local lib="${ED}/usr/$(get_libdir)/libattr.so.1"
+ if [[ -e ${lib} ]] ; then
+ local versions=$($(tc-getREADELF) -V "${lib}")
+ local symbols=$($(tc-getREADELF) -sW "${lib}")
+ if [[ "${versions}" != *"ATTR_1.0"* || \
+ "${versions}" != *"ATTR_1.1"* || \
+ "${versions}" != *"ATTR_1.2"* || \
+ "${versions}" != *"ATTR_1.3"* || \
+ "${symbols}" != *"getxattr@ATTR_1.0"* ]] ; then
+ echo "# readelf -V ${lib}"
+ echo "${versions}"
+ echo "# readelf -sW ${lib}"
+ echo "${symbols}"
+ die "Symbol version sanity check failed; please comment on https://bugs.gentoo.org/644048"
+ else
+ einfo "${lib} passed symbol checks"
+ fi
+ fi
+
+ if multilib_is_native_abi; then
+ # We install attr into /bin, so we need the shared lib with it
+ gen_usr_ldscript -a attr
+ fi
+
+ # Add a wrapper until people upgrade.
+ # TODO: figure out when this was added & when we can drop it!
+ insinto /usr/include/attr
+ newins "${FILESDIR}"/xattr-shim.h xattr.h
+}
+
+multilib_src_install_all() {
+ if ! use static-libs; then
+ find "${ED}" -name '*.la' -delete || die
+ fi
+
+ einstalldocs
+}
diff --git a/sys-apps/attr/attr-2.5.2-r1.ebuild b/sys-apps/attr/attr-2.5.2-r1.ebuild
new file mode 100644
index 000000000000..850befff79d5
--- /dev/null
+++ b/sys-apps/attr/attr-2.5.2-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/${PN}.git"
+ inherit autotools git-r3
+else
+ inherit libtool
+
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="Extended attributes tools"
+HOMEPAGE="https://savannah.nongnu.org/projects/attr"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+IUSE="debug nls static-libs"
+
+BDEPEND="nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ po/update-potfiles || die
+ eautopoint
+ eautoreconf
+ else
+ # bug #580792
+ elibtoolize
+ fi
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
+ --enable-shared
+ $(use_enable static-libs static)
+ $(use_enable nls)
+ $(use_enable debug)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ # Add a wrapper until people upgrade.
+ # TODO: figure out when this was added & when we can drop it!
+ insinto /usr/include/attr
+ newins "${FILESDIR}"/xattr-shim.h xattr.h
+}
+
+multilib_src_install_all() {
+ if ! use static-libs; then
+ find "${ED}" -name '*.la' -delete || die
+ fi
+
+ einstalldocs
+}
diff --git a/sys-apps/attr/attr-9999.ebuild b/sys-apps/attr/attr-9999.ebuild
index 7a00a2b560ee..8aac35056b3e 100644
--- a/sys-apps/attr/attr-9999.ebuild
+++ b/sys-apps/attr/attr-9999.ebuild
@@ -1,33 +1,29 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-inherit flag-o-matic libtool toolchain-funcs multilib-minimal usr-ldscript
+inherit multilib-minimal
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.savannah.gnu.org/git/${PN}.git"
-
inherit autotools git-r3
else
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
- SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
+ inherit libtool
+
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="Extended attributes tools"
HOMEPAGE="https://savannah.nongnu.org/projects/attr"
-LICENSE="LGPL-2.1"
-SLOT="0"
+LICENSE="LGPL-2.1+"
+SLOT="0"
IUSE="debug nls static-libs"
BDEPEND="nls? ( sys-devel/gettext )"
-pkg_setup() {
- # Remove -flto* from flags as this breaks binaries (bug #644048)
- filter-flags -flto*
-}
-
src_prepare() {
default
@@ -36,57 +32,29 @@ src_prepare() {
eautopoint
eautoreconf
else
- elibtoolize #580792
+ # bug #580792
+ elibtoolize
fi
}
multilib_src_configure() {
- unset PLATFORM #184564
- export OPTIMIZER=${CFLAGS}
- export DEBUG=-DNDEBUG
-
- tc-ld-disable-gold #644048
-
local myeconfargs=(
--bindir="${EPREFIX}"/bin
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
--enable-shared
$(use_enable static-libs static)
$(use_enable nls)
- --libexecdir="${EPREFIX}"/usr/$(get_libdir)
$(use_enable debug)
)
+
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_install() {
emake DESTDIR="${D}" install
- # Sanity check until we track down why this is happening. #644048
- local lib="${ED}/usr/$(get_libdir)/libattr.so.1"
- if [[ -e ${lib} ]] ; then
- local versions=$($(tc-getREADELF) -V "${lib}")
- local symbols=$($(tc-getREADELF) -sW "${lib}")
- if [[ "${versions}" != *"ATTR_1.0"* || \
- "${versions}" != *"ATTR_1.1"* || \
- "${versions}" != *"ATTR_1.2"* || \
- "${versions}" != *"ATTR_1.3"* || \
- "${symbols}" != *"getxattr@ATTR_1.0"* ]] ; then
- echo "# readelf -V ${lib}"
- echo "${versions}"
- echo "# readelf -sW ${lib}"
- echo "${symbols}"
- die "symbol version sanity check failed; please comment on https://bugs.gentoo.org/644048"
- else
- einfo "${lib} passed symbol checks"
- fi
- fi
-
- if multilib_is_native_abi; then
- # we install attr into /bin, so we need the shared lib with it
- gen_usr_ldscript -a attr
- fi
-
# Add a wrapper until people upgrade.
+ # TODO: figure out when this was added & when we can drop it!
insinto /usr/include/attr
newins "${FILESDIR}"/xattr-shim.h xattr.h
}
diff --git a/sys-apps/attr/files/attr-2.4.48-perl-5.26.patch b/sys-apps/attr/files/attr-2.4.48-perl-5.26.patch
deleted file mode 100644
index 49b4c1a57665..000000000000
--- a/sys-apps/attr/files/attr-2.4.48-perl-5.26.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 406eab7aa09da9df787a964d3c152c0bda6e23c4 Mon Sep 17 00:00:00 2001
-From: Troy Dawson <tdawson@redhat.com>
-Date: Mon, 24 Jul 2017 14:42:06 +0200
-Subject: [PATCH attr] test: escape left brace in a regex in test/run
-
-... to fix test-suite failure with perl-5.26.0
-
-Bug: https://bugzilla.redhat.com/1473853
----
- test/run | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/test/run b/test/run
-index 4b1f8d0d6134..07e916c41947 100755
---- a/test/run
-+++ b/test/run
-@@ -106,7 +106,7 @@ for (;;) {
- if (defined $line) {
- # Substitute %VAR and %{VAR} with environment variables.
- $line =~ s[%(\w+)][$ENV{$1}]eg;
-- $line =~ s[%{(\w+)}][$ENV{$1}]eg;
-+ $line =~ s[%\{(\w+)}][$ENV{$1}]eg;
- }
- if (defined $line) {
- if ($line =~ s/^\s*< ?//) {
---
-2.16.1
diff --git a/sys-apps/attr/files/attr-2.4.48-switch-back-to-syscall.patch b/sys-apps/attr/files/attr-2.4.48-switch-back-to-syscall.patch
deleted file mode 100644
index 5691b15420ce..000000000000
--- a/sys-apps/attr/files/attr-2.4.48-switch-back-to-syscall.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-From 14adc898a36948267bfe5c63b399996879e94c98 Mon Sep 17 00:00:00 2001
-From: Andreas Gruenbacher <agruenba@redhat.com>
-Date: Fri, 17 Aug 2018 14:07:31 +0200
-Subject: Switch back to syscall()
-
-Switch back to syscall() for the *xattr system calls. The current
-mechanism of forwarding those calls to glibc breaks libraries like
-libfakeroot (fakeroot) and libasan (the gcc address sanitizer; gcc
--fsanitize=address).
-
-Those libraries provide wrappers for functions defined in other shared
-libraries, usually glibc, do their own processing, and forward calls to
-the original symbols looke dup via dlsym(RTLD_NEXT, "symbol_name"). In
-our case, dlsym returns the libattr_*xattr wrappers. However, when our
-wrappers try calling glibc, they end up calling the libfakeroot /
-libasan wrappers instead because those override the original symbols =>
-recursion.
-
-The libattr_*xattr wrappers will only be used when symbols are looked up
-at runtime (dlopen / dlsym). Programs linking against libattr will
-directly use the glibc provided symbols. Therefore, the slightly worse
-performance of syscall() won't affect any of the "normal" users of
-libattr.
----
- libattr/syscalls.c | 26 ++++++++++++++------------
- 1 file changed, 14 insertions(+), 12 deletions(-)
-
-diff --git a/libattr/syscalls.c b/libattr/syscalls.c
-index 3013aa0..721ad7f 100644
---- a/libattr/syscalls.c
-+++ b/libattr/syscalls.c
-@@ -22,6 +22,8 @@
-
- #include "config.h"
-
-+#include <unistd.h>
-+#include <sys/syscall.h>
- #include <sys/xattr.h>
-
- #ifdef HAVE_VISIBILITY_ATTRIBUTE
-@@ -31,67 +33,67 @@
- int libattr_setxattr(const char *path, const char *name,
- void *value, size_t size, int flags)
- {
-- return setxattr(path, name, value, size, flags);
-+ return syscall(__NR_setxattr, path, name, value, size, flags);
- }
-
- int libattr_lsetxattr(const char *path, const char *name,
- void *value, size_t size, int flags)
- {
-- return lsetxattr(path, name, value, size, flags);
-+ return syscall(__NR_lsetxattr, path, name, value, size, flags);
- }
-
- int libattr_fsetxattr(int filedes, const char *name,
- void *value, size_t size, int flags)
- {
-- return fsetxattr(filedes, name, value, size, flags);
-+ return syscall(__NR_fsetxattr, filedes, name, value, size, flags);
- }
-
- ssize_t libattr_getxattr(const char *path, const char *name,
- void *value, size_t size)
- {
-- return getxattr(path, name, value, size);
-+ return syscall(__NR_getxattr, path, name, value, size);
- }
-
- ssize_t libattr_lgetxattr(const char *path, const char *name,
- void *value, size_t size)
- {
-- return lgetxattr(path, name, value, size);
-+ return syscall(__NR_lgetxattr, path, name, value, size);
- }
-
- ssize_t libattr_fgetxattr(int filedes, const char *name,
- void *value, size_t size)
- {
-- return fgetxattr(filedes, name, value, size);
-+ return syscall(__NR_fgetxattr, filedes, name, value, size);
- }
-
- ssize_t libattr_listxattr(const char *path, char *list, size_t size)
- {
-- return listxattr(path, list, size);
-+ return syscall(__NR_listxattr, path, list, size);
- }
-
- ssize_t libattr_llistxattr(const char *path, char *list, size_t size)
- {
-- return llistxattr(path, list, size);
-+ return syscall(__NR_llistxattr, path, list, size);
- }
-
- ssize_t libattr_flistxattr(int filedes, char *list, size_t size)
- {
-- return flistxattr(filedes, list, size);
-+ return syscall(__NR_flistxattr, filedes, list, size);
- }
-
- int libattr_removexattr(const char *path, const char *name)
- {
-- return removexattr(path, name);
-+ return syscall(__NR_removexattr, path, name);
- }
-
- int libattr_lremovexattr(const char *path, const char *name)
- {
-- return lremovexattr(path, name);
-+ return syscall(__NR_lremovexattr, path, name);
- }
-
- int libattr_fremovexattr(int filedes, const char *name)
- {
-- return fremovexattr(filedes, name);
-+ return syscall(__NR_fremovexattr, filedes, name);
- }
-
- #ifdef HAVE_VISIBILITY_ATTRIBUTE
---
-cgit v1.0-41-gc330
-
diff --git a/sys-apps/attr/files/attr-2.5.1-r2-fix-symver.patch b/sys-apps/attr/files/attr-2.5.1-r2-fix-symver.patch
new file mode 100644
index 000000000000..ee25b13166ff
--- /dev/null
+++ b/sys-apps/attr/files/attr-2.5.1-r2-fix-symver.patch
@@ -0,0 +1,206 @@
+https://lists.nongnu.org/archive/html/acl-devel/2022-05/msg00000.html
+Bug: https://bugs.gentoo.org/644048
+Bug: https://bugs.gentoo.org/700116
+
+From a9ca51afd2b9f68f57de3a4c3d962d1d763572ca Mon Sep 17 00:00:00 2001
+From: Alexander Miller <alex.miller@gmx.de>
+Date: Thu, 28 Nov 2019 22:17:24 +0100
+Subject: [PATCH] Better supported way to set symbol versions for legacy
+ syscalls
+
+Using a linker script to set a symbol versions is an undocumented
+hack and doesn't work reliably in many cases. It works (to some
+degree) with the bfd linker, but fails with gold or lld. And even
+with bfd it can break when using --gc-sections or LTO.
+
+The result may be a library where the code has been discarded and
+the versioned symbols are unusable, e.g.
+ 23: 00000000 0 NOTYPE GLOBAL DEFAULT ABS getxattr@ATTR_1.0
+instead of
+ 23: 000033c0 0 FUNC GLOBAL DEFAULT 11 getxattr@ATTR_1.0
+
+Remove the linker script entirely and set symbol versions with the
+symver attribute if available (in gcc >= 10, but not in clang),
+otherwise use the traditional global asm solution with a .symver
+directive.
+Those are the documented ways to do it and well supported by (almost)
+all configurations. (The exception is old gcc with LTO; a workaround
+is included, but some versions may still need -flto-partition=none).
+
+Signed-off-by: Alexander Miller <alex.miller@gmx.de>
+
+--- a/libattr/Makemodule.am
++++ b/libattr/Makemodule.am
+@@ -8,7 +8,7 @@ LT_CURRENT = 2
+ LT_AGE = 1
+ LTVERSION = $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
+
+-libattr_la_DEPENDENCIES = exports libattr/libattr.lds
++libattr_la_DEPENDENCIES = exports
+ libattr_la_SOURCES = \
+ libattr/attr_copy_action.c \
+ libattr/attr_copy_check.c \
+@@ -20,7 +20,4 @@ libattr_la_SOURCES = \
+ libattr_la_CFLAGS = -include libattr/libattr.h
+ libattr_la_LDFLAGS = \
+ -Wl,--version-script,$(top_srcdir)/exports \
+- -Wl,$(top_srcdir)/libattr/libattr.lds \
+ -version-info $(LTVERSION)
+-
+-EXTRA_DIST += libattr/libattr.lds
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -647,9 +647,8 @@ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+ ACLOCAL_AMFLAGS = -I m4
+-EXTRA_DIST = exports examples/copyattr.c examples/Makefile \
+- libattr/libattr.lds test/README test/run \
+- test/sort-getfattr-output $(TESTS)
++EXTRA_DIST = exports examples/copyattr.c examples/Makefile test/README \
++ test/run test/sort-getfattr-output $(TESTS)
+ SUBDIRS = po
+ AM_CPPFLAGS = \
+ -I$(top_builddir)/include \
+@@ -689,7 +688,7 @@ LT_CURRENT = 2
+ #LT_REVISION =
+ LT_AGE = 1
+ LTVERSION = $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
+-libattr_la_DEPENDENCIES = exports libattr/libattr.lds
++libattr_la_DEPENDENCIES = exports
+ libattr_la_SOURCES = \
+ libattr/attr_copy_action.c \
+ libattr/attr_copy_check.c \
+@@ -702,7 +701,6 @@ libattr_la_SOURCES = \
+ libattr_la_CFLAGS = -include libattr/libattr.h
+ libattr_la_LDFLAGS = \
+ -Wl,--version-script,$(top_srcdir)/exports \
+- -Wl,$(top_srcdir)/libattr/libattr.lds \
+ -version-info $(LTVERSION)
+
+ libmisc_la_SOURCES = \
+--- a/libattr/libattr.lds
++++ /dev/null
+@@ -1,12 +0,0 @@
+-"fgetxattr@ATTR_1.0" = libattr_fgetxattr;
+-"flistxattr@ATTR_1.0" = libattr_flistxattr;
+-"fremovexattr@ATTR_1.0" = libattr_fremovexattr;
+-"fsetxattr@ATTR_1.0" = libattr_fsetxattr;
+-"getxattr@ATTR_1.0" = libattr_getxattr;
+-"lgetxattr@ATTR_1.0" = libattr_lgetxattr;
+-"listxattr@ATTR_1.0" = libattr_listxattr;
+-"llistxattr@ATTR_1.0" = libattr_llistxattr;
+-"lremovexattr@ATTR_1.0" = libattr_lremovexattr;
+-"lsetxattr@ATTR_1.0" = libattr_lsetxattr;
+-"removexattr@ATTR_1.0" = libattr_removexattr;
+-"setxattr@ATTR_1.0" = libattr_setxattr;
+--- a/libattr/syscalls.c
++++ b/libattr/syscalls.c
+@@ -26,6 +26,27 @@
+ #include <sys/syscall.h>
+ #include <sys/xattr.h>
+
++/*
++ * Versioning of compat symbols:
++ * prefer symver attribute if available (since gcc 10),
++ * fall back to traditional .symver asm directive otherwise.
++ */
++#ifdef __has_attribute
++# if __has_attribute(symver)
++# define SYMVER(cn, vn) __typeof(cn) cn __attribute__((symver(vn)))
++# elif __has_attribute(no_reorder)
++ /*
++ * Avoid wrong partitioning with older gcc and LTO. May not work reliably
++ * with all versions; use -flto-partition=none if you encounter problems.
++ */
++# define SYMVER(cn, vn) __typeof(cn) cn __attribute__((noreorder)); \
++ __asm__(".symver " #cn "," vn)
++# endif
++#endif
++#ifndef SYMVER
++# define SYMVER(cn, vn) __asm__(".symver " #cn "," vn)
++#endif
++
+ #ifdef HAVE_VISIBILITY_ATTRIBUTE
+ # pragma GCC visibility push(default)
+ #endif
+@@ -35,66 +56,78 @@ int libattr_setxattr(const char *path, const char *name,
+ {
+ return syscall(__NR_setxattr, path, name, value, size, flags);
+ }
++SYMVER(libattr_setxattr, "setxattr@ATTR_1.0");
+
+ int libattr_lsetxattr(const char *path, const char *name,
+ void *value, size_t size, int flags)
+ {
+ return syscall(__NR_lsetxattr, path, name, value, size, flags);
+ }
++SYMVER(libattr_lsetxattr, "lsetxattr@ATTR_1.0");
+
+ int libattr_fsetxattr(int filedes, const char *name,
+ void *value, size_t size, int flags)
+ {
+ return syscall(__NR_fsetxattr, filedes, name, value, size, flags);
+ }
++SYMVER(libattr_fsetxattr, "fsetxattr@ATTR_1.0");
+
+ ssize_t libattr_getxattr(const char *path, const char *name,
+ void *value, size_t size)
+ {
+ return syscall(__NR_getxattr, path, name, value, size);
+ }
++SYMVER(libattr_getxattr, "getxattr@ATTR_1.0");
+
+ ssize_t libattr_lgetxattr(const char *path, const char *name,
+ void *value, size_t size)
+ {
+ return syscall(__NR_lgetxattr, path, name, value, size);
+ }
++SYMVER(libattr_lgetxattr, "lgetxattr@ATTR_1.0");
+
+ ssize_t libattr_fgetxattr(int filedes, const char *name,
+ void *value, size_t size)
+ {
+ return syscall(__NR_fgetxattr, filedes, name, value, size);
+ }
++SYMVER(libattr_fgetxattr, "fgetxattr@ATTR_1.0");
+
+ ssize_t libattr_listxattr(const char *path, char *list, size_t size)
+ {
+ return syscall(__NR_listxattr, path, list, size);
+ }
++SYMVER(libattr_listxattr, "listxattr@ATTR_1.0");
+
+ ssize_t libattr_llistxattr(const char *path, char *list, size_t size)
+ {
+ return syscall(__NR_llistxattr, path, list, size);
+ }
++SYMVER(libattr_llistxattr, "llistxattr@ATTR_1.0");
+
+ ssize_t libattr_flistxattr(int filedes, char *list, size_t size)
+ {
+ return syscall(__NR_flistxattr, filedes, list, size);
+ }
++SYMVER(libattr_flistxattr, "flistxattr@ATTR_1.0");
+
+ int libattr_removexattr(const char *path, const char *name)
+ {
+ return syscall(__NR_removexattr, path, name);
+ }
++SYMVER(libattr_removexattr, "removexattr@ATTR_1.0");
+
+ int libattr_lremovexattr(const char *path, const char *name)
+ {
+ return syscall(__NR_lremovexattr, path, name);
+ }
++SYMVER(libattr_lremovexattr, "lremovexattr@ATTR_1.0");
+
+ int libattr_fremovexattr(int filedes, const char *name)
+ {
+ return syscall(__NR_fremovexattr, filedes, name);
+ }
++SYMVER(libattr_fremovexattr, "fremovexattr@ATTR_1.0");
+
+ #ifdef HAVE_VISIBILITY_ATTRIBUTE
+ # pragma GCC visibility pop
diff --git a/sys-apps/attr/metadata.xml b/sys-apps/attr/metadata.xml
index b8a192ea806b..05e4a37e9978 100644
--- a/sys-apps/attr/metadata.xml
+++ b/sys-apps/attr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:attr_project:attr</remote-id>
+ <remote-id type="savannah-nongnu">attr</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/audio-entropyd/audio-entropyd-2.0.3-r1.ebuild b/sys-apps/audio-entropyd/audio-entropyd-2.0.3-r1.ebuild
index 1f7451848ea1..9d7326263e83 100644
--- a/sys-apps/audio-entropyd/audio-entropyd-2.0.3-r1.ebuild
+++ b/sys-apps/audio-entropyd/audio-entropyd-2.0.3-r1.ebuild
@@ -1,13 +1,13 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit systemd toolchain-funcs
DESCRIPTION="Audio-entropyd generates entropy-data for the /dev/random device"
-HOMEPAGE="http://www.vanheusden.com/aed/"
-SRC_URI="http://www.vanheusden.com/aed/${P}.tgz"
+HOMEPAGE="https://vanheusden.com/crypto/entropy/aed/"
+SRC_URI="https://vanheusden.com/crypto/entropy/aed/${P}.tgz"
LICENSE="GPL-2"
SLOT="0"
diff --git a/sys-apps/audio-entropyd/metadata.xml b/sys-apps/audio-entropyd/metadata.xml
index 9386b72447d7..3eacd3e6bc90 100644
--- a/sys-apps/audio-entropyd/metadata.xml
+++ b/sys-apps/audio-entropyd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
</pkgmetadata>
diff --git a/sys-apps/baobab/Manifest b/sys-apps/baobab/Manifest
index 5d6bda0f192a..2181c2b110b4 100644
--- a/sys-apps/baobab/Manifest
+++ b/sys-apps/baobab/Manifest
@@ -1,2 +1 @@
-DIST baobab-3.34.0.tar.xz 454960 BLAKE2B c9e695074711442418bfd9c9c1453feeaf573429f1d9a03ef6c542d581d39c5bf1cb14d98025cc522705b1f8649150f418d39c05cf06f77f5900780eb058f67e SHA512 e821ba445c65742e92580e12be9b82ff352c6a2a8a58bab7fba97b01a120a948b06e35459196f16e9eef347cc6c5aeacfd563e86d78c758099fbab2ecfc4aa0e
-DIST baobab-3.34.1.tar.xz 458500 BLAKE2B 1f27640bb369cf1712c7b1c79d1261fd4a99e427a99debbf7d2f31f191f5e0ddaec7b366cb6b34add6a552c9728b9b1f4b64bdc05f06b29e0071ccad73a77c6a SHA512 8234f26fde68d6ebe578360345dcb45314b6a818aa899f858b7e3b9ae1874165e4f1d644d169d6ba56270689a34e8cd78d993e99c08f66b3f2c7c9fd0b7ea516
+DIST baobab-45.0.tar.xz 601576 BLAKE2B 786aa2c3ed4d5aab671dc54ac3772a0b802fd8545a37c094719da5e52fa93b97c5e1bafd9b6d0419540389fd9cd61cd3205eb9db00dde22ee534aa61d89a7a8e SHA512 cc3cae0c3ef13dbf2e09c12cc4443b5b1420a06829a4944be98099b03e875c5e88e9611242e1494e1ec85687772519c03c817b6e7d535040e2276e5d6fb902df
diff --git a/sys-apps/baobab/baobab-3.34.0.ebuild b/sys-apps/baobab/baobab-3.34.0.ebuild
deleted file mode 100644
index 0202a6950ad9..000000000000
--- a/sys-apps/baobab/baobab-3.34.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit gnome.org gnome2-utils meson vala xdg
-
-DESCRIPTION="Disk usage browser for GNOME"
-HOMEPAGE="https://wiki.gnome.org/Apps/Baobab"
-
-LICENSE="GPL-2+ FDL-1.1+"
-SLOT="0"
-IUSE=""
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-libs/glib-2.44:2
- >=x11-libs/gtk+-3.20:3
-"
-DEPEND="${RDEPEND}
- $(vala_depend)
- dev-libs/appstream-glib
- dev-util/itstool
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-"
-
-src_prepare() {
- vala_src_prepare
- xdg_src_prepare
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- gnome2_schemas_update
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_schemas_update
-}
diff --git a/sys-apps/baobab/baobab-3.34.1.ebuild b/sys-apps/baobab/baobab-3.34.1.ebuild
deleted file mode 100644
index 0202a6950ad9..000000000000
--- a/sys-apps/baobab/baobab-3.34.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit gnome.org gnome2-utils meson vala xdg
-
-DESCRIPTION="Disk usage browser for GNOME"
-HOMEPAGE="https://wiki.gnome.org/Apps/Baobab"
-
-LICENSE="GPL-2+ FDL-1.1+"
-SLOT="0"
-IUSE=""
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-libs/glib-2.44:2
- >=x11-libs/gtk+-3.20:3
-"
-DEPEND="${RDEPEND}
- $(vala_depend)
- dev-libs/appstream-glib
- dev-util/itstool
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-"
-
-src_prepare() {
- vala_src_prepare
- xdg_src_prepare
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- gnome2_schemas_update
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_schemas_update
-}
diff --git a/sys-apps/baobab/baobab-45.0.ebuild b/sys-apps/baobab/baobab-45.0.ebuild
new file mode 100644
index 000000000000..408fcea16691
--- /dev/null
+++ b/sys-apps/baobab/baobab-45.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit gnome.org gnome2-utils meson vala xdg
+
+DESCRIPTION="Disk usage browser for GNOME"
+HOMEPAGE="https://wiki.gnome.org/Apps/Baobab"
+
+LICENSE="GPL-2+ FDL-1.1+"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-libs/glib-2.44:2
+ >=gui-libs/gtk-4.4.0:4
+ >=gui-libs/libadwaita-1.4_alpha:1
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ $(vala_depend)
+ >=gui-libs/libadwaita-1.4_alpha:1[vala]
+ dev-util/itstool
+ >=sys-devel/gettext-0.21
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ default
+ vala_setup
+ xdg_environment_reset
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
diff --git a/sys-apps/baobab/metadata.xml b/sys-apps/baobab/metadata.xml
index 39980802b1da..bda41aace7cc 100644
--- a/sys-apps/baobab/metadata.xml
+++ b/sys-apps/baobab/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gnome-gitlab">GNOME/baobab</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/bar/bar-1.11.1.ebuild b/sys-apps/bar/bar-1.11.1.ebuild
index 0d1aadd2a030..933d9faa5a50 100644
--- a/sys-apps/bar/bar-1.11.1.ebuild
+++ b/sys-apps/bar/bar-1.11.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -14,7 +14,7 @@ SLOT="0"
KEYWORDS="amd64 ~arm x86"
IUSE="doc"
-DEPEND="doc? ( >=app-doc/doxygen-1.3.5 )"
+DEPEND="doc? ( >=app-text/doxygen-1.3.5 )"
RDEPEND=""
src_prepare() {
diff --git a/sys-apps/bar/metadata.xml b/sys-apps/bar/metadata.xml
index 19655510512a..ddc9ef1cbf4d 100644
--- a/sys-apps/bar/metadata.xml
+++ b/sys-apps/bar/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>shell-tools@gentoo.org</email>
diff --git a/sys-apps/baselayout-java/baselayout-java-0.1.0-r1.ebuild b/sys-apps/baselayout-java/baselayout-java-0.1.0-r1.ebuild
deleted file mode 100644
index 23ba5272869d..000000000000
--- a/sys-apps/baselayout-java/baselayout-java-0.1.0-r1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit xdg-utils
-
-DESCRIPTION="Baselayout for Java"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
-SRC_URI="https://dev.gentoo.org/~gyakovlev/distfiles/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ia64 ~ppc ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-BDEPEND="
- app-crypt/p11-kit[trust]
- app-misc/ca-certificates
-"
-
-RDEPEND="${BDEPEND}
- !<dev-java/java-config-2.2"
-
-src_install() {
- default
- keepdir /etc/ssl/certs/java/
- exeinto /etc/ca-certificates/update.d
- newexe - java-cacerts <<-_EOF_
- #!/bin/sh
- exec trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose server-auth "${EROOT}"/etc/ssl/certs/java/cacerts
- _EOF_
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_icon_cache_update
- # on first installation generate java cacert file
- # so jdk ebuilds can create symlink to in into security directory
- if [[ ! -f "${EROOT}"/etc/ssl/certs/java/cacerts ]]; then
- einfo "Generating java cacerts file from system ca-certificates"
- "${EROOT}"/etc/ca-certificates/update.d/java-cacerts || die
- fi
-}
diff --git a/sys-apps/baselayout-java/baselayout-java-0.1.0-r2.ebuild b/sys-apps/baselayout-java/baselayout-java-0.1.0-r2.ebuild
new file mode 100644
index 000000000000..9f9272d6a81e
--- /dev/null
+++ b/sys-apps/baselayout-java/baselayout-java-0.1.0-r2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit xdg-utils
+
+DESCRIPTION="Baselayout for Java"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
+SRC_URI="https://dev.gentoo.org/~gyakovlev/distfiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ia64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+BDEPEND="
+ app-crypt/p11-kit[trust(+)]
+ app-misc/ca-certificates
+"
+
+RDEPEND="${BDEPEND}
+ !<dev-java/java-config-2.2"
+
+src_install() {
+ default
+ keepdir /etc/ssl/certs/java/
+ exeinto /etc/ca-certificates/update.d
+ newexe - java-cacerts <<-_EOF_
+ #!/bin/sh
+ exec trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose server-auth "${EPREFIX}/etc/ssl/certs/java/cacerts"
+ _EOF_
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ # on first installation generate java cacert file
+ # so jdk ebuilds can create symlink to in into security directory
+ if [[ ! -f "${EROOT}"/etc/ssl/certs/java/cacerts ]]; then
+ einfo "Generating java cacerts file from system ca-certificates"
+ trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose server-auth "${EROOT}/etc/ssl/certs/java/cacerts" || die
+ fi
+}
diff --git a/sys-apps/baselayout-java/metadata.xml b/sys-apps/baselayout-java/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/sys-apps/baselayout-java/metadata.xml
+++ b/sys-apps/baselayout-java/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/sys-apps/baselayout-prefix/Manifest b/sys-apps/baselayout-prefix/Manifest
deleted file mode 100644
index 8bc5538d2f34..000000000000
--- a/sys-apps/baselayout-prefix/Manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-DIST baselayout-2.2.tar.bz2 40744 BLAKE2B 3a1dfdd64b45d5aa8fb3ff9781aa9b1218095874a0bb6d9dd0d2da4c447945272b25258b53b7ea130f3e1067c799fc4c0d14e577f3a3f749f19d72734136e6e9 SHA512 a5199c42e835d9f2683cc94f3c4c47ecdc392316c24e0932845736e2e90479b0c5c8ad72ead8e0537f097405b7d7548d00b87b7ff8c9e3651486e3c5c0970b36
-DIST baselayout-2.6.tar.bz2 31871 BLAKE2B 4a51d173dc5a2837f78cd1247b5eadd89e7d0b5f2dbc72e75f027b0c23a5db9a386c53e756e80240f36ad4d63e3fe421bf9510c18321d7a31fda140ad47b2860 SHA512 5cad5faf56871ae951120643e29db0c39fea6dc845b4755382bd469eca32639ec6cd0cd046d3c439a7cc607b18770036f9c256260d35beaffb094e23cb13740b
-DIST baselayout-prefix-395424f90c8ca6969589905cbf86d74fae9d7ea6.patch 1760 BLAKE2B 227ea5a9f70e927ba19de675f408ad01c4d934575cfeb780a525a4e24afd46d9d91d4e4acf773403cb6ac4a493b81da1cad787a5c0e41096056ad4e233b3cfc8 SHA512 77b4c3cad19251497808b6a07a384846f3ebb2282860d55197cee03d373b16622ef3b6c95e411e1cbb79702f10fe2e9c43cfe4175cca1db3ea6c06c6b2331ac9
-DIST baselayout-prefix-5926fe447541607ed137d67ca84080326584b2fc.patch 809 BLAKE2B 237eb610b6935ec5139299f1dccc6260b31a1d47a82390d713fc759ef37de986de8392a82068c70c1f63f382a9212103025fe019614796f5b6a3b4ed0f81f8b2 SHA512 6cd1bf81d8619be27c20fcd703be9a97cc6129d9c13402172e7f16adf6e9b9eb0238edfd311ca8b98b3898876d2bf9686a2a3905510d26608773a3da5233ee95
-DIST baselayout-prefix-95a8e95af948014d024842892be1405d656ab5fc.patch 3754 BLAKE2B c64cf440d7dc27bd3c38ad93d242a28e3ae0df6ebef282249996bc2c463aa6c0941ea41fbee236ba77742ba5bff777cd3226054b80abe99a454f39d488f8e1c1 SHA512 8e2d44e9caedfa7159f374e39d416a7ceebd407ea9550d9aa52d0a87a44b7b805b1725f8eefd592eb5fbd9a5f3f851a28c18565f3b0e621530f4c51c109df24e
-DIST baselayout-prefix-a054fcc408ad48f775f7379834385c6a707d7a53.patch 1166 BLAKE2B d9b3135fc77a1941e08c68f0981385bcab412fc4949a70c7b75e11e7f8a6ee1eff6b5be0804d06539ed9f02a6245c0161d3dfd6de9fb0bf68d0d07c724650707 SHA512 822065592f434fcbae42b48d475ac0d188e29773337c3154f162ff830b58dcf44c87e3091933d5a0c0cc7e89e4d0223f60cefc0e525ca29aa3c9a0f9a5e974bf
-DIST baselayout-prefix-bb4c4f5f45b6798f5c9658e0e862077c404c675c.patch 1168 BLAKE2B 241d3dd665a7373563fb413ea9613a0597deb5b1b5213567ed0abf1edb00c495acec9570f5c3b2365c00683cbc32fb9e518666928c73640bebe99d3345fcd764 SHA512 96c4d63b5782e388882760cefd57157927543570a920f66c88cf3c58335c7e05918805510dc6e07f07f06564756482d055987c99b0cca7c31b432936558cadc6
-DIST baselayout-prefix-c88ceddbfc6a965dc0153aef21e012e774d9e30c.patch 2499 BLAKE2B 18f26331aec2b74c119f6064c79540f9a4dd90796841e8db10450b58b0fa7b7e10e6fd6c96e1f1e4b8d47c7cdc31628cf262a55eaca56e0ce23d6505ac73b0e1 SHA512 abd262fcbd3a7df57a9abbe54474517123e8cd8946f377c6e5be848b48b8638636b4e5a424ad76b59d61653c44473ad1423959ff8939ea388ede9514895e1ce2
-DIST baselayout-prefix-c9338e89cdb603c1e08998bba28fbc977a62fc51.patch 9370 BLAKE2B 0e665e08db0ddec93604103d65d6e5a9249afdd55b22106b95e232128b724acd680bc875401cba15bc9aefcc19eddc4cf55b056a83e00a5a3862352470321d04 SHA512 d91c9537f445a8fd4308d5392fc42149e8d08c9ee3282e382995cd32ee531d77d73a94437c9b436b67e8c44aa598147ef63cc79a72ec2e9a83b078c5776ede51
diff --git a/sys-apps/baselayout-prefix/baselayout-prefix-2.2-r5.ebuild b/sys-apps/baselayout-prefix/baselayout-prefix-2.2-r5.ebuild
deleted file mode 100644
index e0d628e0b934..000000000000
--- a/sys-apps/baselayout-prefix/baselayout-prefix-2.2-r5.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils multilib libtool
-
-MY_P=${P/-prefix/} # just use "upstream" sources
-DESCRIPTION="Minimal baselayout for Gentoo Prefix installs"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="mirror://gentoo/${MY_P}.tar.bz2
- https://dev.gentoo.org/~vapier/dist/${MY_P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~arm ~arm64 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-
-RDEPEND="sys-apps/gentoo-functions"
-DEPEND="${RDEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_preinst() {
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-}
-
-src_install() {
- # make functions.sh available in /etc/init.d (from gentoo-functions)
- # Note: we cannot replace the symlink with a file here, or Portage will
- # config-protect it, and etc-update can't handle symlink to file updates
- dodir etc/init.d
- dosym ../../lib/gentoo/functions.sh /etc/init.d/functions.sh
-
- dodir etc
- sed \
- -e "/PATH=/!s:/\(etc\|usr/bin\|bin\):\"${EPREFIX}\"/\1:g" \
- -e "/PATH=/s|\([:\"]\)/|\1${EPREFIX}/|g" \
- etc/profile > "${ED}"/etc/profile || die
- sed \
- -e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
- -e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
- -i "${ED}"/etc/profile || die
- dodir etc/env.d
- sed \
- -e "s:/\(etc/env.d\|opt\|usr\):${EPREFIX}/\1:g" \
- -e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
- etc/env.d/00basic > "${ED}"/etc/env.d/00basic || die
- dodoc ChangeLog.svn
-
- # add the host OS MANPATH
- if [[ -d "${ROOT}"/usr/share/man ]] ; then
- echo 'MANPATH="/usr/share/man"' > "${ED}"/etc/env.d/99basic || die
- fi
-
- # rc-scripts version for testing of features that *should* be present
- echo "Gentoo Prefix Base System release ${PV}" > "${ED}"/etc/gentoo-release
-
- # FHS compatibility symlinks stuff
- dosym /var/tmp /usr/tmp
-
- # add a dummy to avoid Portage shebang errors
- dodir sbin
- cat > "${ED}"/sbin/runscript <<- EOF
- #!/usr/bin/env sh
- source "${EPREFIX}/lib/gentoo/functions.sh"
-
- eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
- exit 1
- EOF
- chmod 755 "${ED}"/sbin/runscript || die
- cp "${ED}"/sbin/{runscript,openrc-run} || die
-}
-
-pkg_postinst() {
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release
- fi
-
- # baselayout leaves behind a lot of .keep files, so let's clean them up
- find "${EROOT}"/lib/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
- find "${EROOT}"/lib/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-}
diff --git a/sys-apps/baselayout-prefix/baselayout-prefix-2.6-r1.ebuild b/sys-apps/baselayout-prefix/baselayout-prefix-2.6-r1.ebuild
deleted file mode 100644
index 80678e5187f5..000000000000
--- a/sys-apps/baselayout-prefix/baselayout-prefix-2.6-r1.ebuild
+++ /dev/null
@@ -1,336 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib
-
-# just use "upstream" sources
-MY_P=${P/-prefix/}
-MY_PN=${PN/-prefix/}
-S="${WORKDIR}/${MY_P}"
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${MY_PN}.git"
- inherit git-r3
-else
- SRC_URI="https://gitweb.gentoo.org/proj/${MY_PN}.git/snapshot/${MY_P}.tar.bz2"
- KEYWORDS="~arm ~arm64 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-my_prefix_commits=(
- # commits in reverse order as listed by:
- # git log --decorate=no --oneline --no-abbrev-commit origin/master..
- a054fcc408ad48f775f7379834385c6a707d7a53 # also create etc/gentoo-release
- 5926fe447541607ed137d67ca84080326584b2fc # create usr/bin during layout-usrmerge
- 395424f90c8ca6969589905cbf86d74fae9d7ea6 # add prefix-stack support
- 95a8e95af948014d024842892be1405d656ab5fc # add prefix-guest support
- c88ceddbfc6a965dc0153aef21e012e774d9e30c # sync prefix usage for Makefile target 'layout'
- c9338e89cdb603c1e08998bba28fbc977a62fc51 # add prefix support per Makefile target 'install'
-)
-for my_c in ${my_prefix_commits[*]}
-do
- SRC_URI+=" https://github.com/haubi/gentoo-baselayout/commit/${my_c}.patch -> ${PN}-${my_c}.patch"
- PATCHES=( "${DISTDIR}/${PN}-${my_c}.patch" "${PATCHES[@]}" )
-done
-unset my_prefix_commits my_c
-
-pkg_setup() {
- multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
- use prefix && return 0
- local dir def_libdir libdir libdirs
- local prefix prefix_lst
- def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
- libdirs=$(get_all_libdirs)
- : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
-
- if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- for prefix in ${prefix_lst[@]}; do
- for libdir in ${libdirs}; do
- dir="${prefix}${libdir}"
- if [[ -e "${dir}" ]]; then
- [[ ! -d "${dir}" ]] &&
- die "${dir} exists but is not a directory"
- continue
- fi
- if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
- einfo "symlinking ${dir} to usr/${libdir}"
- ln -s usr/${libdir} ${dir} ||
- die " Unable to make ${dir} symlink"
- else
- einfo "creating directory ${dir}"
- mkdir -p "${dir}" ||
- die "Unable to create ${dir} directory"
- fi
- done
- done
- return 0
- fi
-
- [ -z "${def_libdir}" ] &&
- die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
- # figure out which paths should be symlinks and which should be directories
- local dirs syms exp d
- for libdir in ${libdirs} ; do
- if use split-usr ; then
- exp=( {,usr/,usr/local/}${libdir} )
- else
- exp=( {usr/,usr/local/}${libdir} )
- fi
- for d in "${exp[@]}" ; do
- # most things should be dirs
- if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
- [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
- else
- [ -h "${d}" ] && syms+=" ${d}"
- fi
- done
- done
- if [ -n "${syms}${dirs}" ] ; then
- ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
- ewarn "have these paths configured as follows:"
- [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
- [ -n "${syms}" ] && ewarn "directories:${syms}"
- ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
- ewarn "If things fail, you will need to manually create/move the directories."
- echo
- fi
-
- # setup symlinks and dirs where we expect them to be; do not migrate
- # data ... just fall over in that case.
- if use split-usr ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- else
- prefix_lst=( "${EROOT}"{usr/,usr/local/} )
- fi
- for prefix in "${prefix_lst[@]}"; do
- if [ "${SYMLINK_LIB}" = yes ] ; then
- # we need to make sure "lib" points to the native libdir
- if [ -h "${prefix}lib" ] ; then
- # it's already a symlink! assume it's pointing to right place ...
- continue
- elif [ -d "${prefix}lib" ] ; then
- # "lib" is a dir, so need to convert to a symlink
- ewarn "Converting ${prefix}lib from a dir to a symlink"
- rm -f "${prefix}lib"/.keep
- if rmdir "${prefix}lib" 2>/dev/null ; then
- ln -s ${def_libdir} "${prefix}lib" || die
- else
- die "non-empty dir found where we needed a symlink: ${prefix}lib"
- fi
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a symlink"
- mkdir -p "${prefix}" || die
- rm -f "${prefix}lib" || die
- ln -s ${def_libdir} "${prefix}lib" || die
- mkdir -p "${prefix}${def_libdir}" #423571
- fi
- else
- # we need to make sure "lib" is a dir
- if [ -h "${prefix}lib" ] ; then
- # "lib" is a symlink, so need to convert to a dir
- ewarn "Converting ${prefix}lib from a symlink to a dir"
- rm -f "${prefix}lib" || die
- if [ -d "${prefix}lib32" ] ; then
- ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
- mv "${prefix}lib32" "${prefix}lib" || die
- else
- mkdir -p "${prefix}lib" || die
- fi
- elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
- # make sure the old "lib" ABI location does not exist; we
- # only symlinked the lib dir on systems where we moved it
- # to "lib32" ...
- case ${CHOST} in
- *-gentoo-freebsd*) ;; # We want it the other way on fbsd.
- i?86*|x86_64*|powerpc*|sparc*|s390*)
- if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
- rm -f "${prefix}lib32"/.keep
- if ! rmdir "${prefix}lib32" 2>/dev/null ; then
- ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
- die "non-empty dir found where there should be none: ${prefix}lib32"
- fi
- fi
- ;;
- esac
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a dir"
- mkdir -p "${prefix}lib" || die
- fi
- fi
- done
- if ! use split-usr ; then
- for libdir in ${libdirs}; do
- if [[ ! -e "${EROOT}${libdir}" ]]; then
- ln -s usr/"${libdir}" "${EROOT}${libdir}"
- fi
- done
- fi
-}
-
-pkg_preinst() {
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
- # We need to install directories and maybe some dev nodes when building
- # stages, but they cannot be in CONTENTS.
- # Also, we cannot reference $S as binpkg will break so we do this.
- multilib_layout
- if use build ; then
- if use split-usr ; then
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${ROOT}" layout
- else
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${ROOT}" layout-usrmerge
- fi
- fi
- rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
- default
-
- # handle multilib paths. do it here because we want this behavior
- # regardless of the C library that you're using. we do explicitly
- # list paths which the native ldconfig searches, but this isn't
- # problematic as it doesn't change the resulting ld.so.cache or
- # take longer to generate. similarly, listing both the native
- # path and the symlinked path doesn't change the resulting cache.
- local libdir ldpaths
- for libdir in $(get_all_libdirs) ; do
- ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
- ldpaths+=":${EPREFIX}/usr/local/${libdir}"
- done
- echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_configure() {
- local OS
- # although having a prefix, RAP uses full Linux baselayout
- OS=$(usex prefix-stack prefix-stack \
- $(usex prefix-guest prefix-guest \
- $(usex kernel_FreeBSD BSD \
- Linux ) ) )
- # set up immutable Makefile variables once
- sed -e "/^EPREFIX\s*?\?=\s*$/s|?\?=.*|= ${EPREFIX}|" \
- -e "/^BROOT\s*?\?=\s*$/s|?\?=.*|= ${BROOT}|" \
- -e "/^OS\s*?\?=\s*$/s|?\?=.*|= ${OS}|" \
- -i Makefile || die
-}
-
-src_install() {
- emake ROOT="${ROOT}" DESTDIR="${D}" install
- dodoc ChangeLog
-
- # need the makefile in pkg_preinst
- insinto /usr/share/${PN}
- doins Makefile
-
- use prefix-guest || return 0
-
- # add a dummy to avoid Portage shebang errors
- dodir sbin
- cat > "${ED}"/sbin/runscript <<- EOF
- #!/usr/bin/env sh
- source "${EPREFIX}/lib/gentoo/functions.sh"
-
- eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
- exit 1
- EOF
- chmod 755 "${ED}"/sbin/runscript || die
- cp "${ED}"/sbin/{runscript,openrc-run} || die
-}
-
-pkg_postinst() {
- local x
-
- # We installed some files to /usr/share/baselayout instead of /etc to stop
- # (1) overwriting the user's settings
- # (2) screwing things up when attempting to merge files
- # (3) accidentally packaging up personal files with quickpkg
- # If they don't exist then we install them
- for x in master.passwd passwd shadow group fstab ; do
- [ -e "${EROOT}/etc/${x}" ] && continue
- [ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
- cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc
- done
-
- # Force shadow permissions to not be world-readable #260993
- for x in shadow ; do
- [ -e "${EROOT}/etc/${x}" ] && chmod o-rwx "${EROOT}/etc/${x}"
- done
-
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release
- fi
-
- # whine about users that lack passwords #193541
- if [[ -e "${EROOT}"/etc/shadow ]] ; then
- local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
- if [[ -n ${bad_users} ]] ; then
- echo
- ewarn "The following users lack passwords!"
- ewarn ${bad_users}
- fi
- fi
-
- # whine about users with invalid shells #215698
- if [[ -e "${EROOT}"/etc/passwd ]] ; then
- local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
- if [[ -n ${bad_shells} ]] ; then
- echo
- ewarn "The following users have non-existent shells!"
- ewarn "${bad_shells}"
- fi
- fi
-
- # https://bugs.gentoo.org/361349
- if use kernel_linux; then
- mkdir -p "${EROOT}"/run
-
- local found fstype mountpoint
- while read -r _ mountpoint fstype _; do
- [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
- done < "${ROOT}"/proc/mounts
- [[ -z ${found} ]] &&
- ewarn "You should reboot now to get /run mounted with tmpfs!"
- fi
-
- for x in ${REPLACING_VERSIONS}; do
- if ver_test ${x} -lt 2.4; then
- ewarn "After updating ${EROOT}/etc/profile, please run"
- ewarn "env-update && . ${EPREFIX}/etc/profile"
- fi
-
- if ver_test ${x} -lt 2.6; then
- ewarn "Please run env-update then log out and back in to"
- ewarn "update your path."
- fi
- # clean up after 2.5 typos
- # https://bugs.gentoo.org/show_bug.cgi?id=656380
- if [[ ${x} == 2.5 ]]; then
- rm -fr "${EROOT}{,usr"
- fi
- done
-
- if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
- ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
- ewarn "Please migrate your changes."
- fi
-}
diff --git a/sys-apps/baselayout-prefix/baselayout-prefix-2.6-r2.ebuild b/sys-apps/baselayout-prefix/baselayout-prefix-2.6-r2.ebuild
deleted file mode 100644
index 3609b72802bb..000000000000
--- a/sys-apps/baselayout-prefix/baselayout-prefix-2.6-r2.ebuild
+++ /dev/null
@@ -1,337 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib
-
-# just use "upstream" sources
-MY_P=${P/-prefix/}
-MY_PN=${PN/-prefix/}
-S="${WORKDIR}/${MY_P}"
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${MY_PN}.git"
- inherit git-r3
-else
- SRC_URI="https://gitweb.gentoo.org/proj/${MY_PN}.git/snapshot/${MY_P}.tar.bz2"
- KEYWORDS="~arm ~arm64 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-my_prefix_commits=(
- # commits in reverse order as listed by:
- # git log --decorate=no --oneline --no-abbrev-commit origin/master..
- bb4c4f5f45b6798f5c9658e0e862077c404c675c # prefix-stack: ROOTPATH needs EPREFIX before BROOT
- a054fcc408ad48f775f7379834385c6a707d7a53 # also create etc/gentoo-release
- 5926fe447541607ed137d67ca84080326584b2fc # create usr/bin during layout-usrmerge
- 395424f90c8ca6969589905cbf86d74fae9d7ea6 # add prefix-stack support
- 95a8e95af948014d024842892be1405d656ab5fc # add prefix-guest support
- c88ceddbfc6a965dc0153aef21e012e774d9e30c # sync prefix usage for Makefile target 'layout'
- c9338e89cdb603c1e08998bba28fbc977a62fc51 # add prefix support per Makefile target 'install'
-)
-for my_c in ${my_prefix_commits[*]}
-do
- SRC_URI+=" https://github.com/haubi/gentoo-baselayout/commit/${my_c}.patch -> ${PN}-${my_c}.patch"
- PATCHES=( "${DISTDIR}/${PN}-${my_c}.patch" "${PATCHES[@]}" )
-done
-unset my_prefix_commits my_c
-
-pkg_setup() {
- multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
- use prefix && return 0
- local dir def_libdir libdir libdirs
- local prefix prefix_lst
- def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
- libdirs=$(get_all_libdirs)
- : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
-
- if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- for prefix in ${prefix_lst[@]}; do
- for libdir in ${libdirs}; do
- dir="${prefix}${libdir}"
- if [[ -e "${dir}" ]]; then
- [[ ! -d "${dir}" ]] &&
- die "${dir} exists but is not a directory"
- continue
- fi
- if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
- einfo "symlinking ${dir} to usr/${libdir}"
- ln -s usr/${libdir} ${dir} ||
- die " Unable to make ${dir} symlink"
- else
- einfo "creating directory ${dir}"
- mkdir -p "${dir}" ||
- die "Unable to create ${dir} directory"
- fi
- done
- done
- return 0
- fi
-
- [ -z "${def_libdir}" ] &&
- die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
- # figure out which paths should be symlinks and which should be directories
- local dirs syms exp d
- for libdir in ${libdirs} ; do
- if use split-usr ; then
- exp=( {,usr/,usr/local/}${libdir} )
- else
- exp=( {usr/,usr/local/}${libdir} )
- fi
- for d in "${exp[@]}" ; do
- # most things should be dirs
- if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
- [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
- else
- [ -h "${d}" ] && syms+=" ${d}"
- fi
- done
- done
- if [ -n "${syms}${dirs}" ] ; then
- ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
- ewarn "have these paths configured as follows:"
- [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
- [ -n "${syms}" ] && ewarn "directories:${syms}"
- ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
- ewarn "If things fail, you will need to manually create/move the directories."
- echo
- fi
-
- # setup symlinks and dirs where we expect them to be; do not migrate
- # data ... just fall over in that case.
- if use split-usr ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- else
- prefix_lst=( "${EROOT}"{usr/,usr/local/} )
- fi
- for prefix in "${prefix_lst[@]}"; do
- if [ "${SYMLINK_LIB}" = yes ] ; then
- # we need to make sure "lib" points to the native libdir
- if [ -h "${prefix}lib" ] ; then
- # it's already a symlink! assume it's pointing to right place ...
- continue
- elif [ -d "${prefix}lib" ] ; then
- # "lib" is a dir, so need to convert to a symlink
- ewarn "Converting ${prefix}lib from a dir to a symlink"
- rm -f "${prefix}lib"/.keep
- if rmdir "${prefix}lib" 2>/dev/null ; then
- ln -s ${def_libdir} "${prefix}lib" || die
- else
- die "non-empty dir found where we needed a symlink: ${prefix}lib"
- fi
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a symlink"
- mkdir -p "${prefix}" || die
- rm -f "${prefix}lib" || die
- ln -s ${def_libdir} "${prefix}lib" || die
- mkdir -p "${prefix}${def_libdir}" #423571
- fi
- else
- # we need to make sure "lib" is a dir
- if [ -h "${prefix}lib" ] ; then
- # "lib" is a symlink, so need to convert to a dir
- ewarn "Converting ${prefix}lib from a symlink to a dir"
- rm -f "${prefix}lib" || die
- if [ -d "${prefix}lib32" ] ; then
- ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
- mv "${prefix}lib32" "${prefix}lib" || die
- else
- mkdir -p "${prefix}lib" || die
- fi
- elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
- # make sure the old "lib" ABI location does not exist; we
- # only symlinked the lib dir on systems where we moved it
- # to "lib32" ...
- case ${CHOST} in
- *-gentoo-freebsd*) ;; # We want it the other way on fbsd.
- i?86*|x86_64*|powerpc*|sparc*|s390*)
- if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
- rm -f "${prefix}lib32"/.keep
- if ! rmdir "${prefix}lib32" 2>/dev/null ; then
- ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
- die "non-empty dir found where there should be none: ${prefix}lib32"
- fi
- fi
- ;;
- esac
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a dir"
- mkdir -p "${prefix}lib" || die
- fi
- fi
- done
- if ! use split-usr ; then
- for libdir in ${libdirs}; do
- if [[ ! -e "${EROOT}${libdir}" ]]; then
- ln -s usr/"${libdir}" "${EROOT}${libdir}"
- fi
- done
- fi
-}
-
-pkg_preinst() {
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
- # We need to install directories and maybe some dev nodes when building
- # stages, but they cannot be in CONTENTS.
- # Also, we cannot reference $S as binpkg will break so we do this.
- multilib_layout
- if use build ; then
- if use split-usr ; then
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${ROOT}" layout
- else
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${ROOT}" layout-usrmerge
- fi
- fi
- rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
- default
-
- # handle multilib paths. do it here because we want this behavior
- # regardless of the C library that you're using. we do explicitly
- # list paths which the native ldconfig searches, but this isn't
- # problematic as it doesn't change the resulting ld.so.cache or
- # take longer to generate. similarly, listing both the native
- # path and the symlinked path doesn't change the resulting cache.
- local libdir ldpaths
- for libdir in $(get_all_libdirs) ; do
- ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
- ldpaths+=":${EPREFIX}/usr/local/${libdir}"
- done
- echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_configure() {
- local OS
- # although having a prefix, RAP uses full Linux baselayout
- OS=$(usex prefix-stack prefix-stack \
- $(usex prefix-guest prefix-guest \
- $(usex kernel_FreeBSD BSD \
- Linux ) ) )
- # set up immutable Makefile variables once
- sed -e "/^EPREFIX\s*?\?=\s*$/s|?\?=.*|= ${EPREFIX}|" \
- -e "/^BROOT\s*?\?=\s*$/s|?\?=.*|= ${BROOT}|" \
- -e "/^OS\s*?\?=\s*$/s|?\?=.*|= ${OS}|" \
- -i Makefile || die
-}
-
-src_install() {
- emake ROOT="${ROOT}" DESTDIR="${D}" install
- dodoc ChangeLog
-
- # need the makefile in pkg_preinst
- insinto /usr/share/${PN}
- doins Makefile
-
- use prefix-guest || return 0
-
- # add a dummy to avoid Portage shebang errors
- dodir sbin
- cat > "${ED}"/sbin/runscript <<- EOF
- #!/usr/bin/env sh
- source "${EPREFIX}/lib/gentoo/functions.sh"
-
- eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
- exit 1
- EOF
- chmod 755 "${ED}"/sbin/runscript || die
- cp "${ED}"/sbin/{runscript,openrc-run} || die
-}
-
-pkg_postinst() {
- local x
-
- # We installed some files to /usr/share/baselayout instead of /etc to stop
- # (1) overwriting the user's settings
- # (2) screwing things up when attempting to merge files
- # (3) accidentally packaging up personal files with quickpkg
- # If they don't exist then we install them
- for x in master.passwd passwd shadow group fstab ; do
- [ -e "${EROOT}/etc/${x}" ] && continue
- [ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
- cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc
- done
-
- # Force shadow permissions to not be world-readable #260993
- for x in shadow ; do
- [ -e "${EROOT}/etc/${x}" ] && chmod o-rwx "${EROOT}/etc/${x}"
- done
-
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release
- fi
-
- # whine about users that lack passwords #193541
- if [[ -e "${EROOT}"/etc/shadow ]] ; then
- local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
- if [[ -n ${bad_users} ]] ; then
- echo
- ewarn "The following users lack passwords!"
- ewarn ${bad_users}
- fi
- fi
-
- # whine about users with invalid shells #215698
- if [[ -e "${EROOT}"/etc/passwd ]] ; then
- local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
- if [[ -n ${bad_shells} ]] ; then
- echo
- ewarn "The following users have non-existent shells!"
- ewarn "${bad_shells}"
- fi
- fi
-
- # https://bugs.gentoo.org/361349
- if use kernel_linux; then
- mkdir -p "${EROOT}"/run
-
- local found fstype mountpoint
- while read -r _ mountpoint fstype _; do
- [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
- done < "${ROOT}"/proc/mounts
- [[ -z ${found} ]] &&
- ewarn "You should reboot now to get /run mounted with tmpfs!"
- fi
-
- for x in ${REPLACING_VERSIONS}; do
- if ver_test ${x} -lt 2.4; then
- ewarn "After updating ${EROOT}/etc/profile, please run"
- ewarn "env-update && . ${EPREFIX}/etc/profile"
- fi
-
- if ver_test ${x} -lt 2.6; then
- ewarn "Please run env-update then log out and back in to"
- ewarn "update your path."
- fi
- # clean up after 2.5 typos
- # https://bugs.gentoo.org/show_bug.cgi?id=656380
- if [[ ${x} == 2.5 ]]; then
- rm -fr "${EROOT}{,usr"
- fi
- done
-
- if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
- ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
- ewarn "Please migrate your changes."
- fi
-}
diff --git a/sys-apps/baselayout-prefix/metadata.xml b/sys-apps/baselayout-prefix/metadata.xml
deleted file mode 100644
index cbee92f245c3..000000000000
--- a/sys-apps/baselayout-prefix/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>prefix@gentoo.org</email>
-</maintainer>
-<use>
- <flag name="split-usr">Enable this if /bin and /usr/bin are separate directories</flag>
-</use>
-</pkgmetadata>
diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 293c93ad7397..5a578fa0cc19 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1,2 @@
-DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1
-DIST baselayout-2.6.tar.bz2 31871 BLAKE2B 4a51d173dc5a2837f78cd1247b5eadd89e7d0b5f2dbc72e75f027b0c23a5db9a386c53e756e80240f36ad4d63e3fe421bf9510c18321d7a31fda140ad47b2860 SHA512 5cad5faf56871ae951120643e29db0c39fea6dc845b4755382bd469eca32639ec6cd0cd046d3c439a7cc607b18770036f9c256260d35beaffb094e23cb13740b
-DIST baselayout-2.7.tar.bz2 30317 BLAKE2B 7b7c284b7d0a9608a0d03dbde0d62d793829b61d5361f5062fdeb8880a2f792c142e20acf7fa92e713e2ebb0bd1609ca65bc8a4191f2bf2c5df4f474eaeef1ee SHA512 8b28d2dc20fd5887db5c0e6b67a4217c4d0730529023fc57fb1ee95a431e1f492fb21e3e66980bef766819e9f542dc7e4ad3ae25465390194bbf970c3653c88e
+DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a
+DIST baselayout-2.15.tar.bz2 30214 BLAKE2B 58d81b935c52deddeae60314f040a85767c7df30e38c694090dded4a9d593be8fb3c181e6e9496cc8e0987481b6b13f57a74038f9f21a0b27c76528d066cd5f5 SHA512 3d1a64e2802b53bcc537633fd23224ebea60b79d58f4b692175598cd43015e0d60dfdfb81c03f3541d28fe77f04022298236db726ea7e5119cc217d6bfb74d4b
diff --git a/sys-apps/baselayout/baselayout-2.14-r2.ebuild b/sys-apps/baselayout/baselayout-2.14-r2.ebuild
new file mode 100644
index 000000000000..72bb2496fd2d
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.14-r2.ebuild
@@ -0,0 +1,352 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+ # Here we apply some special sauce for riscv.
+ # Two multilib layouts exist for now:
+ # 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+ # these are chosen by us to closely resemble other arches
+ # 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+ # this is the glibc/gcc default
+ # Unfortunately, the default has only one fallback, which is "lib"
+ # for both 32bit and 64bit. So things do not break in 1), we need
+ # to provide compatibility symlinks...
+
+ # This function has exactly two parameters:
+ # - the default libdir, to determine if 1) or 2) applies
+ # - the location of the symlink (which points to ".")
+
+ # Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+ # there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+ case ${CHOST} in
+ riscv*)
+ # are we on a one level libdir profile? is there no symlink yet?
+ if [[ ${1} != */* && ! -L ${2} ]] ; then
+ ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+ fi
+ ;;
+ esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+ local dir def_libdir libdir libdirs
+ local prefix prefix_lst
+ def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+ libdirs=$(get_all_libdirs)
+
+ if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+ for prefix in "${prefix_lst[@]}"; do
+ for libdir in ${libdirs}; do
+ dir="${prefix}${libdir}"
+ if [[ -e "${dir}" ]]; then
+ [[ ! -d "${dir}" ]] &&
+ die "${dir} exists but is not a directory"
+ continue
+ fi
+ if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+ libdir="${libdir%%/*}"
+ dir="${prefix}${libdir}"
+ einfo "symlinking ${dir} to usr/${libdir}"
+ ln -s usr/${libdir} ${dir} ||
+ die "Unable to make ${dir} symlink"
+ else
+ einfo "creating directory ${dir}"
+ mkdir -p "${dir}" ||
+ die "Unable to create ${dir} directory"
+ fi
+ done
+ [[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+ done
+ return 0
+ fi
+
+ [ -z "${def_libdir}" ] &&
+ die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+ # figure out which paths should be symlinks and which should be directories
+ local dirs syms exp d
+ for libdir in ${libdirs} ; do
+ if use split-usr ; then
+ exp=( {,usr/,usr/local/}${libdir} )
+ else
+ exp=( {usr/,usr/local/}${libdir} )
+ fi
+ for d in "${exp[@]}" ; do
+ # most things should be dirs
+ if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+ [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+ else
+ [ -h "${d}" ] && syms+=" ${d}"
+ fi
+ done
+ done
+ if [ -n "${syms}${dirs}" ] ; then
+ ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+ ewarn "have these paths configured as follows:"
+ [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+ [ -n "${syms}" ] && ewarn "directories:${syms}"
+ ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+ ewarn "If things fail, you will need to manually create/move the directories."
+ echo
+ fi
+
+ # setup symlinks and dirs where we expect them to be; do not migrate
+ # data ... just fall over in that case.
+ if use split-usr ; then
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+ else
+ prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+ fi
+ for prefix in "${prefix_lst[@]}"; do
+ if [ "${SYMLINK_LIB}" = yes ] ; then
+ # we need to make sure "lib" points to the native libdir
+ if [ -h "${prefix}lib" ] ; then
+ # it's already a symlink! assume it's pointing to right place ...
+ continue
+ elif [ -d "${prefix}lib" ] ; then
+ # "lib" is a dir, so need to convert to a symlink
+ ewarn "Converting ${prefix}lib from a dir to a symlink"
+ rm -f "${prefix}lib"/.keep || die
+ if rmdir "${prefix}lib" 2>/dev/null ; then
+ ln -s ${def_libdir} "${prefix}lib" || die
+ else
+ die "non-empty dir found where we needed a symlink: ${prefix}lib"
+ fi
+ else
+ # nothing exists, so just set it up sanely
+ ewarn "Initializing ${prefix}lib as a symlink"
+ mkdir -p "${prefix}" || die
+ rm -f "${prefix}lib" || die
+ ln -s ${def_libdir} "${prefix}lib" || die
+ mkdir -p "${prefix}${def_libdir}" || die #423571
+ fi
+ else
+ # we need to make sure "lib" is a dir
+ if [ -h "${prefix}lib" ] ; then
+ # "lib" is a symlink, so need to convert to a dir
+ ewarn "Converting ${prefix}lib from a symlink to a dir"
+ rm -f "${prefix}lib" || die
+ if [ -d "${prefix}lib32" ] ; then
+ ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+ mv "${prefix}lib32" "${prefix}lib" || die
+ else
+ mkdir -p "${prefix}lib" || die
+ fi
+ elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+ # make sure the old "lib" ABI location does not exist; we
+ # only symlinked the lib dir on systems where we moved it
+ # to "lib32" ...
+ case ${CHOST} in
+ i?86*|x86_64*|powerpc*|sparc*|s390*)
+ if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+ rm -f "${prefix}lib32"/.keep || die
+ if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+ ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+ die "non-empty dir found where there should be none: ${prefix}lib32"
+ fi
+ fi
+ ;;
+ esac
+ else
+ # nothing exists, so just set it up sanely
+ ewarn "Initializing ${prefix}lib as a dir"
+ mkdir -p "${prefix}lib" || die
+ fi
+ fi
+ done
+ if ! use split-usr ; then
+ for libdir in ${libdirs}; do
+ if [[ ! -e "${EROOT}${libdir}" ]]; then
+ ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+ die "Unable to make ${EROOT}${libdir} symlink"
+ fi
+ done
+ fi
+}
+
+pkg_setup() {
+ multilib_layout
+}
+
+src_prepare() {
+ default
+
+ # don't want symlinked directories in PATH on systems with usr-merge
+ if ! use split-usr && ! use prefix-guest; then
+ sed \
+ -e 's|:/usr/sbin:|:|g' \
+ -e 's|:/sbin:|:|g' \
+ -e 's|:/bin:|:|g' \
+ -i etc/env.d/50baselayout || die
+ fi
+
+ if use prefix; then
+ hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+ hprefixify etc/shells share/passwd
+ hprefixify -w '/PATH=/' etc/env.d/50baselayout
+ hprefixify -w 1 etc/env.d/50baselayout
+ echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo MANPATH=/usr/share/man >> etc/env.d/99host
+
+ # change branding
+ sed -i \
+ -e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+ -e '/make_os_release/s/${OS}/Prefix/' \
+ Makefile || die
+ fi
+
+ # handle multilib paths. do it here because we want this behavior
+ # regardless of the C library that you're using. we do explicitly
+ # list paths which the native ldconfig searches, but this isn't
+ # problematic as it doesn't change the resulting ld.so.cache or
+ # take longer to generate. similarly, listing both the native
+ # path and the symlinked path doesn't change the resulting cache.
+ local libdir ldpaths
+ for libdir in $(get_all_libdirs) ; do
+ if use split-usr || use prefix-guest; then
+ ldpaths+=":${EPREFIX}/${libdir}"
+ fi
+ ldpaths+=":${EPREFIX}/usr/${libdir}"
+ ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+ done
+ echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+ emake \
+ DESTDIR="${ED}" \
+ install
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # add SDK path which contains development manpages
+ echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+ > "${ED}"/etc/env.d/98macos-sdk
+ fi
+
+ # need the makefile in pkg_preinst
+ insinto /usr/share/${PN}
+ doins Makefile
+
+ dodoc ChangeLog
+
+ # bug 858596
+ if use prefix-guest ; then
+ dodir sbin
+ cat > "${ED}"/sbin/runscript <<- EOF
+ #!/usr/bin/env sh
+ source "${EPREFIX}/lib/gentoo/functions.sh"
+
+ eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+ exit 1
+ EOF
+ chmod 755 "${ED}"/sbin/runscript || die
+ cp "${ED}"/sbin/{runscript,openrc-run} || die
+ fi
+}
+
+pkg_preinst() {
+ # We need to install directories and maybe some dev nodes when building
+ # stages, but they cannot be in CONTENTS.
+ # Also, we cannot reference $S as binpkg will break so we do this.
+ multilib_layout
+ if use build ; then
+ if use split-usr ; then
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+ else
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+ fi
+ fi
+ rm -f "${ED}"/usr/share/${PN}/Makefile || die
+
+ # Create symlinks in pkg_preinst to avoid Portage collision check.
+ # Create the symlinks in ${ED} via dosym so that we own it.
+ # Only create the symlinks if it wont cause a conflict in ${EROOT}.
+ if [[ -L ${EROOT}/var/lock || ! -e ${EROOT}/var/lock ]]; then
+ dosym ../run/lock /var/lock
+ fi
+ if [[ -L ${EROOT}/var/run || ! -e ${EROOT}/var/run ]]; then
+ dosym ../run /var/run
+ fi
+}
+
+pkg_postinst() {
+ local x
+
+ # We installed some files to /usr/share/baselayout instead of /etc to stop
+ # (1) overwriting the user's settings
+ # (2) screwing things up when attempting to merge files
+ # (3) accidentally packaging up personal files with quickpkg
+ # If they don't exist then we install them
+ for x in master.passwd passwd shadow group fstab ; do
+ [ -e "${EROOT}/etc/${x}" ] && continue
+ [ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+ cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+ done
+
+ # Force shadow permissions to not be world-readable #260993
+ for x in shadow ; do
+ if [ -e "${EROOT}/etc/${x}" ] ; then
+ chmod o-rwx "${EROOT}/etc/${x}" || die
+ fi
+ done
+ # whine about users that lack passwords #193541
+ if [[ -e "${EROOT}"/etc/shadow ]] ; then
+ local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+ if [[ -n ${bad_users} ]] ; then
+ echo
+ ewarn "The following users lack passwords!"
+ ewarn ${bad_users}
+ fi
+ fi
+
+ # whine about users with invalid shells #215698
+ if [[ -e "${EROOT}"/etc/passwd ]] ; then
+ local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+ if [[ -n ${bad_shells} ]] ; then
+ echo
+ ewarn "The following users have non-existent shells!"
+ ewarn "${bad_shells}"
+ fi
+ fi
+
+ # https://bugs.gentoo.org/361349
+ if use kernel_linux; then
+ mkdir -p "${EROOT}"/run || die
+
+ local found fstype mountpoint
+ while read -r _ mountpoint fstype _; do
+ [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+ done < "${ROOT}"/proc/mounts
+ [[ -z ${found} ]] &&
+ ewarn "You should reboot now to get /run mounted with tmpfs!"
+ fi
+
+ if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+ ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+ ewarn "Please migrate your changes."
+ fi
+}
diff --git a/sys-apps/baselayout/baselayout-2.14-r3.ebuild b/sys-apps/baselayout/baselayout-2.14-r3.ebuild
new file mode 100644
index 000000000000..820c4f714c44
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.14-r3.ebuild
@@ -0,0 +1,364 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~riscv"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+ # Here we apply some special sauce for riscv.
+ # Two multilib layouts exist for now:
+ # 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+ # these are chosen by us to closely resemble other arches
+ # 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+ # this is the glibc/gcc default
+ # Unfortunately, the default has only one fallback, which is "lib"
+ # for both 32bit and 64bit. So things do not break in 1), we need
+ # to provide compatibility symlinks...
+
+ # This function has exactly two parameters:
+ # - the default libdir, to determine if 1) or 2) applies
+ # - the location of the symlink (which points to ".")
+
+ # Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+ # there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+ case ${CHOST} in
+ riscv*)
+ # are we on a one level libdir profile? is there no symlink yet?
+ if [[ ${1} != */* && ! -L ${2} ]] ; then
+ ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+ fi
+ ;;
+ esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+ local dir def_libdir libdir libdirs
+ local prefix prefix_lst
+ def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+ libdirs=$(get_all_libdirs)
+
+ if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+ for prefix in "${prefix_lst[@]}"; do
+ for libdir in ${libdirs}; do
+ dir="${prefix}${libdir}"
+ if [[ -e "${dir}" ]]; then
+ [[ ! -d "${dir}" ]] &&
+ die "${dir} exists but is not a directory"
+ continue
+ fi
+ if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+ # for the special case of riscv multilib, we drop the
+ # second part of two-component libdirs, e.g. lib64/lp64
+ libdir="${libdir%%/*}"
+ dir="${prefix}${libdir}"
+ if [[ -h "${dir}" ]] ; then
+ if use riscv ; then
+ # with riscv we get now double entries so we
+ # need to ignore already existing symlinks
+ einfo "symlink ${dir} already exists (riscv)"
+ else
+ die "symlink ${dir} already exists"
+ fi
+ else
+ einfo "symlinking ${dir} to usr/${libdir}"
+ ln -s usr/${libdir} ${dir} ||
+ die "Unable to make ${dir} symlink"
+ fi
+ else
+ einfo "creating directory ${dir}"
+ mkdir -p "${dir}" ||
+ die "Unable to create ${dir} directory"
+ fi
+ done
+ [[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+ done
+ return 0
+ fi
+
+ [ -z "${def_libdir}" ] &&
+ die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+ # figure out which paths should be symlinks and which should be directories
+ local dirs syms exp d
+ for libdir in ${libdirs} ; do
+ if use split-usr ; then
+ exp=( {,usr/,usr/local/}${libdir} )
+ else
+ exp=( {usr/,usr/local/}${libdir} )
+ fi
+ for d in "${exp[@]}" ; do
+ # most things should be dirs
+ if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+ [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+ else
+ [ -h "${d}" ] && syms+=" ${d}"
+ fi
+ done
+ done
+ if [ -n "${syms}${dirs}" ] ; then
+ ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+ ewarn "have these paths configured as follows:"
+ [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+ [ -n "${syms}" ] && ewarn "directories:${syms}"
+ ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+ ewarn "If things fail, you will need to manually create/move the directories."
+ echo
+ fi
+
+ # setup symlinks and dirs where we expect them to be; do not migrate
+ # data ... just fall over in that case.
+ if use split-usr ; then
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+ else
+ prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+ fi
+ for prefix in "${prefix_lst[@]}"; do
+ if [ "${SYMLINK_LIB}" = yes ] ; then
+ # we need to make sure "lib" points to the native libdir
+ if [ -h "${prefix}lib" ] ; then
+ # it's already a symlink! assume it's pointing to right place ...
+ continue
+ elif [ -d "${prefix}lib" ] ; then
+ # "lib" is a dir, so need to convert to a symlink
+ ewarn "Converting ${prefix}lib from a dir to a symlink"
+ rm -f "${prefix}lib"/.keep || die
+ if rmdir "${prefix}lib" 2>/dev/null ; then
+ ln -s ${def_libdir} "${prefix}lib" || die
+ else
+ die "non-empty dir found where we needed a symlink: ${prefix}lib"
+ fi
+ else
+ # nothing exists, so just set it up sanely
+ ewarn "Initializing ${prefix}lib as a symlink"
+ mkdir -p "${prefix}" || die
+ rm -f "${prefix}lib" || die
+ ln -s ${def_libdir} "${prefix}lib" || die
+ mkdir -p "${prefix}${def_libdir}" || die #423571
+ fi
+ else
+ # we need to make sure "lib" is a dir
+ if [ -h "${prefix}lib" ] ; then
+ # "lib" is a symlink, so need to convert to a dir
+ ewarn "Converting ${prefix}lib from a symlink to a dir"
+ rm -f "${prefix}lib" || die
+ if [ -d "${prefix}lib32" ] ; then
+ ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+ mv "${prefix}lib32" "${prefix}lib" || die
+ else
+ mkdir -p "${prefix}lib" || die
+ fi
+ elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+ # make sure the old "lib" ABI location does not exist; we
+ # only symlinked the lib dir on systems where we moved it
+ # to "lib32" ...
+ case ${CHOST} in
+ i?86*|x86_64*|powerpc*|sparc*|s390*)
+ if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+ rm -f "${prefix}lib32"/.keep || die
+ if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+ ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+ die "non-empty dir found where there should be none: ${prefix}lib32"
+ fi
+ fi
+ ;;
+ esac
+ else
+ # nothing exists, so just set it up sanely
+ ewarn "Initializing ${prefix}lib as a dir"
+ mkdir -p "${prefix}lib" || die
+ fi
+ fi
+ done
+ if ! use split-usr ; then
+ for libdir in ${libdirs}; do
+ if [[ ! -e "${EROOT}${libdir}" ]]; then
+ ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+ die "Unable to make ${EROOT}${libdir} symlink"
+ fi
+ done
+ fi
+}
+
+pkg_setup() {
+ multilib_layout
+}
+
+src_prepare() {
+ default
+
+ # don't want symlinked directories in PATH on systems with usr-merge
+ if ! use split-usr && ! use prefix-guest; then
+ sed \
+ -e 's|:/usr/sbin:|:|g' \
+ -e 's|:/sbin:|:|g' \
+ -e 's|:/bin:|:|g' \
+ -i etc/env.d/50baselayout || die
+ fi
+
+ if use prefix; then
+ hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+ hprefixify etc/shells share/passwd
+ hprefixify -w '/PATH=/' etc/env.d/50baselayout
+ hprefixify -w 1 etc/env.d/50baselayout
+ echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo MANPATH=/usr/share/man >> etc/env.d/99host
+
+ # change branding
+ sed -i \
+ -e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+ -e '/make_os_release/s/${OS}/Prefix/' \
+ Makefile || die
+ fi
+
+ # handle multilib paths. do it here because we want this behavior
+ # regardless of the C library that you're using. we do explicitly
+ # list paths which the native ldconfig searches, but this isn't
+ # problematic as it doesn't change the resulting ld.so.cache or
+ # take longer to generate. similarly, listing both the native
+ # path and the symlinked path doesn't change the resulting cache.
+ local libdir ldpaths
+ for libdir in $(get_all_libdirs) ; do
+ if use split-usr || use prefix-guest; then
+ ldpaths+=":${EPREFIX}/${libdir}"
+ fi
+ ldpaths+=":${EPREFIX}/usr/${libdir}"
+ ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+ done
+ echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+ emake \
+ DESTDIR="${ED}" \
+ install
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # add SDK path which contains development manpages
+ echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+ > "${ED}"/etc/env.d/98macos-sdk
+ fi
+
+ # need the makefile in pkg_preinst
+ insinto /usr/share/${PN}
+ doins Makefile
+
+ dodoc ChangeLog
+
+ # bug 858596
+ if use prefix-guest ; then
+ dodir sbin
+ cat > "${ED}"/sbin/runscript <<- EOF
+ #!/usr/bin/env sh
+ source "${EPREFIX}/lib/gentoo/functions.sh"
+
+ eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+ exit 1
+ EOF
+ chmod 755 "${ED}"/sbin/runscript || die
+ cp "${ED}"/sbin/{runscript,openrc-run} || die
+ fi
+}
+
+pkg_preinst() {
+ # We need to install directories and maybe some dev nodes when building
+ # stages, but they cannot be in CONTENTS.
+ # Also, we cannot reference $S as binpkg will break so we do this.
+ multilib_layout
+ if use build ; then
+ if use split-usr ; then
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+ else
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+ fi
+ fi
+ rm -f "${ED}"/usr/share/${PN}/Makefile || die
+
+ # Create symlinks in pkg_preinst to avoid Portage collision check.
+ # Create the symlinks in ${ED} via dosym so that we own it.
+ # Only create the symlinks if it wont cause a conflict in ${EROOT}.
+ if [[ -L ${EROOT}/var/lock || ! -e ${EROOT}/var/lock ]]; then
+ dosym ../run/lock /var/lock
+ fi
+ if [[ -L ${EROOT}/var/run || ! -e ${EROOT}/var/run ]]; then
+ dosym ../run /var/run
+ fi
+}
+
+pkg_postinst() {
+ local x
+
+ # We installed some files to /usr/share/baselayout instead of /etc to stop
+ # (1) overwriting the user's settings
+ # (2) screwing things up when attempting to merge files
+ # (3) accidentally packaging up personal files with quickpkg
+ # If they don't exist then we install them
+ for x in master.passwd passwd shadow group fstab ; do
+ [ -e "${EROOT}/etc/${x}" ] && continue
+ [ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+ cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+ done
+
+ # Force shadow permissions to not be world-readable #260993
+ for x in shadow ; do
+ if [ -e "${EROOT}/etc/${x}" ] ; then
+ chmod o-rwx "${EROOT}/etc/${x}" || die
+ fi
+ done
+ # whine about users that lack passwords #193541
+ if [[ -e "${EROOT}"/etc/shadow ]] ; then
+ local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+ if [[ -n ${bad_users} ]] ; then
+ echo
+ ewarn "The following users lack passwords!"
+ ewarn ${bad_users}
+ fi
+ fi
+
+ # whine about users with invalid shells #215698
+ if [[ -e "${EROOT}"/etc/passwd ]] ; then
+ local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+ if [[ -n ${bad_shells} ]] ; then
+ echo
+ ewarn "The following users have non-existent shells!"
+ ewarn "${bad_shells}"
+ fi
+ fi
+
+ # https://bugs.gentoo.org/361349
+ if use kernel_linux; then
+ mkdir -p "${EROOT}"/run || die
+
+ local found fstype mountpoint
+ while read -r _ mountpoint fstype _; do
+ [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+ done < "${ROOT}"/proc/mounts
+ [[ -z ${found} ]] &&
+ ewarn "You should reboot now to get /run mounted with tmpfs!"
+ fi
+
+ if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+ ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+ ewarn "Please migrate your changes."
+ fi
+}
diff --git a/sys-apps/baselayout/baselayout-2.15.ebuild b/sys-apps/baselayout/baselayout-2.15.ebuild
new file mode 100644
index 000000000000..8dfcf1d42876
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.15.ebuild
@@ -0,0 +1,364 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+ # Here we apply some special sauce for riscv.
+ # Two multilib layouts exist for now:
+ # 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+ # these are chosen by us to closely resemble other arches
+ # 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+ # this is the glibc/gcc default
+ # Unfortunately, the default has only one fallback, which is "lib"
+ # for both 32bit and 64bit. So things do not break in 1), we need
+ # to provide compatibility symlinks...
+
+ # This function has exactly two parameters:
+ # - the default libdir, to determine if 1) or 2) applies
+ # - the location of the symlink (which points to ".")
+
+ # Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+ # there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+ case ${CHOST} in
+ riscv*)
+ # are we on a one level libdir profile? is there no symlink yet?
+ if [[ ${1} != */* && ! -L ${2} ]] ; then
+ ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+ fi
+ ;;
+ esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+ local dir def_libdir libdir libdirs
+ local prefix prefix_lst
+ def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+ libdirs=$(get_all_libdirs)
+
+ if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+ for prefix in "${prefix_lst[@]}"; do
+ for libdir in ${libdirs}; do
+ dir="${prefix}${libdir}"
+ if [[ -e "${dir}" ]]; then
+ [[ ! -d "${dir}" ]] &&
+ die "${dir} exists but is not a directory"
+ continue
+ fi
+ if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+ # for the special case of riscv multilib, we drop the
+ # second part of two-component libdirs, e.g. lib64/lp64
+ libdir="${libdir%%/*}"
+ dir="${prefix}${libdir}"
+ if [[ -h "${dir}" ]] ; then
+ if use riscv ; then
+ # with riscv we get now double entries so we
+ # need to ignore already existing symlinks
+ einfo "symlink ${dir} already exists (riscv)"
+ else
+ die "symlink ${dir} already exists"
+ fi
+ else
+ einfo "symlinking ${dir} to usr/${libdir}"
+ ln -s usr/${libdir} ${dir} ||
+ die "Unable to make ${dir} symlink"
+ fi
+ else
+ einfo "creating directory ${dir}"
+ mkdir -p "${dir}" ||
+ die "Unable to create ${dir} directory"
+ fi
+ done
+ [[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+ done
+ return 0
+ fi
+
+ [ -z "${def_libdir}" ] &&
+ die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+ # figure out which paths should be symlinks and which should be directories
+ local dirs syms exp d
+ for libdir in ${libdirs} ; do
+ if use split-usr ; then
+ exp=( {,usr/,usr/local/}${libdir} )
+ else
+ exp=( {usr/,usr/local/}${libdir} )
+ fi
+ for d in "${exp[@]}" ; do
+ # most things should be dirs
+ if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+ [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+ else
+ [ -h "${d}" ] && syms+=" ${d}"
+ fi
+ done
+ done
+ if [ -n "${syms}${dirs}" ] ; then
+ ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+ ewarn "have these paths configured as follows:"
+ [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+ [ -n "${syms}" ] && ewarn "directories:${syms}"
+ ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+ ewarn "If things fail, you will need to manually create/move the directories."
+ echo
+ fi
+
+ # setup symlinks and dirs where we expect them to be; do not migrate
+ # data ... just fall over in that case.
+ if use split-usr ; then
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+ else
+ prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+ fi
+ for prefix in "${prefix_lst[@]}"; do
+ if [ "${SYMLINK_LIB}" = yes ] ; then
+ # we need to make sure "lib" points to the native libdir
+ if [ -h "${prefix}lib" ] ; then
+ # it's already a symlink! assume it's pointing to right place ...
+ continue
+ elif [ -d "${prefix}lib" ] ; then
+ # "lib" is a dir, so need to convert to a symlink
+ ewarn "Converting ${prefix}lib from a dir to a symlink"
+ rm -f "${prefix}lib"/.keep || die
+ if rmdir "${prefix}lib" 2>/dev/null ; then
+ ln -s ${def_libdir} "${prefix}lib" || die
+ else
+ die "non-empty dir found where we needed a symlink: ${prefix}lib"
+ fi
+ else
+ # nothing exists, so just set it up sanely
+ ewarn "Initializing ${prefix}lib as a symlink"
+ mkdir -p "${prefix}" || die
+ rm -f "${prefix}lib" || die
+ ln -s ${def_libdir} "${prefix}lib" || die
+ mkdir -p "${prefix}${def_libdir}" || die #423571
+ fi
+ else
+ # we need to make sure "lib" is a dir
+ if [ -h "${prefix}lib" ] ; then
+ # "lib" is a symlink, so need to convert to a dir
+ ewarn "Converting ${prefix}lib from a symlink to a dir"
+ rm -f "${prefix}lib" || die
+ if [ -d "${prefix}lib32" ] ; then
+ ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+ mv "${prefix}lib32" "${prefix}lib" || die
+ else
+ mkdir -p "${prefix}lib" || die
+ fi
+ elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+ # make sure the old "lib" ABI location does not exist; we
+ # only symlinked the lib dir on systems where we moved it
+ # to "lib32" ...
+ case ${CHOST} in
+ i?86*|x86_64*|powerpc*|sparc*|s390*)
+ if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+ rm -f "${prefix}lib32"/.keep || die
+ if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+ ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+ die "non-empty dir found where there should be none: ${prefix}lib32"
+ fi
+ fi
+ ;;
+ esac
+ else
+ # nothing exists, so just set it up sanely
+ ewarn "Initializing ${prefix}lib as a dir"
+ mkdir -p "${prefix}lib" || die
+ fi
+ fi
+ done
+ if ! use split-usr ; then
+ for libdir in ${libdirs}; do
+ if [[ ! -e "${EROOT}${libdir}" ]]; then
+ ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+ die "Unable to make ${EROOT}${libdir} symlink"
+ fi
+ done
+ fi
+}
+
+pkg_setup() {
+ multilib_layout
+}
+
+src_prepare() {
+ default
+
+ # don't want symlinked directories in PATH on systems with usr-merge
+ if ! use split-usr && ! use prefix-guest; then
+ sed \
+ -e 's|:/usr/sbin:|:|g' \
+ -e 's|:/sbin:|:|g' \
+ -e 's|:/bin:|:|g' \
+ -i etc/env.d/50baselayout || die
+ fi
+
+ if use prefix; then
+ hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+ hprefixify etc/shells share/passwd
+ hprefixify -w '/PATH=/' etc/env.d/50baselayout
+ hprefixify -w 1 etc/env.d/50baselayout
+ echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo MANPATH=/usr/share/man >> etc/env.d/99host
+
+ # change branding
+ sed -i \
+ -e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+ -e '/make_os_release/s/${OS}/Prefix/' \
+ Makefile || die
+ fi
+
+ # handle multilib paths. do it here because we want this behavior
+ # regardless of the C library that you're using. we do explicitly
+ # list paths which the native ldconfig searches, but this isn't
+ # problematic as it doesn't change the resulting ld.so.cache or
+ # take longer to generate. similarly, listing both the native
+ # path and the symlinked path doesn't change the resulting cache.
+ local libdir ldpaths
+ for libdir in $(get_all_libdirs) ; do
+ if use split-usr || use prefix-guest; then
+ ldpaths+=":${EPREFIX}/${libdir}"
+ fi
+ ldpaths+=":${EPREFIX}/usr/${libdir}"
+ ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+ done
+ echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+ emake \
+ DESTDIR="${ED}" \
+ install
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # add SDK path which contains development manpages
+ echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+ > "${ED}"/etc/env.d/98macos-sdk
+ fi
+
+ # need the makefile in pkg_preinst
+ insinto /usr/share/${PN}
+ doins Makefile
+
+ dodoc ChangeLog
+
+ # bug 858596
+ if use prefix-guest ; then
+ dodir sbin
+ cat > "${ED}"/sbin/runscript <<- EOF
+ #!/usr/bin/env sh
+ source "${EPREFIX}/lib/gentoo/functions.sh"
+
+ eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+ exit 1
+ EOF
+ chmod 755 "${ED}"/sbin/runscript || die
+ cp "${ED}"/sbin/{runscript,openrc-run} || die
+ fi
+}
+
+pkg_preinst() {
+ # We need to install directories and maybe some dev nodes when building
+ # stages, but they cannot be in CONTENTS.
+ # Also, we cannot reference $S as binpkg will break so we do this.
+ multilib_layout
+ if use build ; then
+ if use split-usr ; then
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+ else
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+ fi
+ fi
+ rm -f "${ED}"/usr/share/${PN}/Makefile || die
+
+ # Create symlinks in pkg_preinst to avoid Portage collision check.
+ # Create the symlinks in ${ED} via dosym so that we own it.
+ # Only create the symlinks if it wont cause a conflict in ${EROOT}.
+ if [[ -L ${EROOT}/var/lock || ! -e ${EROOT}/var/lock ]]; then
+ dosym ../run/lock /var/lock
+ fi
+ if [[ -L ${EROOT}/var/run || ! -e ${EROOT}/var/run ]]; then
+ dosym ../run /var/run
+ fi
+}
+
+pkg_postinst() {
+ local x
+
+ # We installed some files to /usr/share/baselayout instead of /etc to stop
+ # (1) overwriting the user's settings
+ # (2) screwing things up when attempting to merge files
+ # (3) accidentally packaging up personal files with quickpkg
+ # If they don't exist then we install them
+ for x in master.passwd passwd shadow group fstab ; do
+ [ -e "${EROOT}/etc/${x}" ] && continue
+ [ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+ cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+ done
+
+ # Force shadow permissions to not be world-readable #260993
+ for x in shadow ; do
+ if [ -e "${EROOT}/etc/${x}" ] ; then
+ chmod o-rwx "${EROOT}/etc/${x}" || die
+ fi
+ done
+ # whine about users that lack passwords #193541
+ if [[ -e "${EROOT}"/etc/shadow ]] ; then
+ local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+ if [[ -n ${bad_users} ]] ; then
+ echo
+ ewarn "The following users lack passwords!"
+ ewarn ${bad_users}
+ fi
+ fi
+
+ # whine about users with invalid shells #215698
+ if [[ -e "${EROOT}"/etc/passwd ]] ; then
+ local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+ if [[ -n ${bad_shells} ]] ; then
+ echo
+ ewarn "The following users have non-existent shells!"
+ ewarn "${bad_shells}"
+ fi
+ fi
+
+ # https://bugs.gentoo.org/361349
+ if use kernel_linux; then
+ mkdir -p "${EROOT}"/run || die
+
+ local found fstype mountpoint
+ while read -r _ mountpoint fstype _; do
+ [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+ done < "${ROOT}"/proc/mounts
+ [[ -z ${found} ]] &&
+ ewarn "You should reboot now to get /run mounted with tmpfs!"
+ fi
+
+ if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+ ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+ ewarn "Please migrate your changes."
+ fi
+}
diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
deleted file mode 100644
index 81f43cd133be..000000000000
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ /dev/null
@@ -1,248 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="build kernel_linux"
-
-pkg_setup() {
- multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
- local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
- : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
-
- [ -z "${def_libdir}" ] &&
- die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
- # figure out which paths should be symlinks and which should be directories
- local dirs syms exp d
- for libdir in ${libdirs} ; do
- exp=( {,usr/,usr/local/}${libdir} )
- for d in "${exp[@]}" ; do
- # most things should be dirs
- if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
- [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
- else
- [ -h "${d}" ] && syms+=" ${d}"
- fi
- done
- done
- if [ -n "${syms}${dirs}" ] ; then
- ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
- ewarn "have these paths configured as follows:"
- [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
- [ -n "${syms}" ] && ewarn "directories:${syms}"
- ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
- ewarn "If things fail, you will need to manually create/move the directories."
- echo
- fi
-
- # setup symlinks and dirs where we expect them to be; do not migrate
- # data ... just fall over in that case.
- local prefix
- for prefix in "${EROOT}"{,usr/,usr/local/} ; do
- if [ "${SYMLINK_LIB}" = yes ] ; then
- # we need to make sure "lib" points to the native libdir
- if [ -h "${prefix}lib" ] ; then
- # it's already a symlink! assume it's pointing to right place ...
- continue
- elif [ -d "${prefix}lib" ] ; then
- # "lib" is a dir, so need to convert to a symlink
- ewarn "Converting ${prefix}lib from a dir to a symlink"
- rm -f "${prefix}lib"/.keep
- if rmdir "${prefix}lib" 2>/dev/null ; then
- ln -s ${def_libdir} "${prefix}lib" || die
- else
- die "non-empty dir found where we needed a symlink: ${prefix}lib"
- fi
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a symlink"
- mkdir -p "${prefix}" || die
- rm -f "${prefix}lib" || die
- ln -s ${def_libdir} "${prefix}lib" || die
- mkdir -p "${prefix}${def_libdir}" #423571
- fi
- else
- # we need to make sure "lib" is a dir
- if [ -h "${prefix}lib" ] ; then
- # "lib" is a symlink, so need to convert to a dir
- ewarn "Converting ${prefix}lib from a symlink to a dir"
- rm -f "${prefix}lib" || die
- if [ -d "${prefix}lib32" ] ; then
- ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
- mv "${prefix}lib32" "${prefix}lib" || die
- else
- mkdir -p "${prefix}lib" || die
- fi
- elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
- # make sure the old "lib" ABI location does not exist; we
- # only symlinked the lib dir on systems where we moved it
- # to "lib32" ...
- case ${CHOST} in
- *-gentoo-freebsd*) ;; # We want it the other way on fbsd.
- i?86*|x86_64*|powerpc*|sparc*|s390*)
- if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
- rm -f "${prefix}lib32"/.keep
- if ! rmdir "${prefix}lib32" 2>/dev/null ; then
- ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
- die "non-empty dir found where there should be none: ${prefix}lib32"
- fi
- fi
- ;;
- esac
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a dir"
- mkdir -p "${prefix}lib" || die
- fi
- fi
- done
-}
-
-pkg_preinst() {
- # Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
- # the baselayout-1.x ebuild copies all the real configs from the user's
- # /etc/conf.d into ${D}, it makes them all appear to be the default
- # versions. In order to protect them from being unmerged after this
- # upgrade, modify their timestamps.
- touch "${EROOT}"/etc/conf.d/* 2>/dev/null
-
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
- # We need to install directories and maybe some dev nodes when building
- # stages, but they cannot be in CONTENTS.
- # Also, we cannot reference $S as binpkg will break so we do this.
- multilib_layout
- if use build ; then
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
- fi
- rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
- default
- if use prefix; then
- hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
- hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
- echo PATH=/usr/bin:/bin >> etc/env.d/99host
- echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
- fi
-
- # handle multilib paths. do it here because we want this behavior
- # regardless of the C library that you're using. we do explicitly
- # list paths which the native ldconfig searches, but this isn't
- # problematic as it doesn't change the resulting ld.so.cache or
- # take longer to generate. similarly, listing both the native
- # path and the symlinked path doesn't change the resulting cache.
- local libdir ldpaths
- for libdir in $(get_all_libdirs) ; do
- ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
- ldpaths+=":${EPREFIX}/usr/local/${libdir}"
- done
- echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
- # rc-scripts version for testing of features that *should* be present
- echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
- emake \
- OS=$(usex kernel_FreeBSD BSD Linux) \
- DESTDIR="${ED}" \
- install
- dodoc ChangeLog
-
- # need the makefile in pkg_preinst
- insinto /usr/share/${PN}
- doins Makefile
-}
-
-pkg_postinst() {
- local x
-
- # We installed some files to /usr/share/baselayout instead of /etc to stop
- # (1) overwriting the user's settings
- # (2) screwing things up when attempting to merge files
- # (3) accidentally packaging up personal files with quickpkg
- # If they don't exist then we install them
- for x in master.passwd passwd shadow group fstab ; do
- [ -e "${EROOT}etc/${x}" ] && continue
- [ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
- cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
- done
-
- # Force shadow permissions to not be world-readable #260993
- for x in shadow ; do
- [ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
- done
-
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
- fi
-
- # whine about users that lack passwords #193541
- if [[ -e "${EROOT}"etc/shadow ]] ; then
- local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
- if [[ -n ${bad_users} ]] ; then
- echo
- ewarn "The following users lack passwords!"
- ewarn ${bad_users}
- fi
- fi
-
- # baselayout leaves behind a lot of .keep files, so let's clean them up
- find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
- find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
- # whine about users with invalid shells #215698
- if [[ -e "${EROOT}"etc/passwd ]] ; then
- local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
- if [[ -n ${bad_shells} ]] ; then
- echo
- ewarn "The following users have non-existent shells!"
- ewarn "${bad_shells}"
- fi
- fi
-
- # https://bugs.gentoo.org/361349
- if use kernel_linux; then
- mkdir -p "${EROOT}"run
-
- local found fstype mountpoint
- while read -r _ mountpoint fstype _; do
- [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
- done < "${ROOT}"proc/mounts
- [[ -z ${found} ]] &&
- ewarn "You should reboot now to get /run mounted with tmpfs!"
- fi
-
- for x in ${REPLACING_VERSIONS}; do
- if ! version_is_at_least 2.4 ${v}; then
- ewarn "After updating ${EROOT}etc/profile, please run"
- ewarn "env-update and . /etc/profile"
- break
- fi
- done
-
- if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
- ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
- ewarn "Please migrate your changes."
- fi
-}
diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
deleted file mode 100644
index 5471a444eb25..000000000000
--- a/sys-apps/baselayout/baselayout-2.6-r1.ebuild
+++ /dev/null
@@ -1,297 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-pkg_setup() {
- multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
- local dir def_libdir libdir libdirs
- local prefix prefix_lst
- def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
- libdirs=$(get_all_libdirs)
- : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
-
- if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- for prefix in ${prefix_lst[@]}; do
- for libdir in ${libdirs}; do
- dir="${prefix}${libdir}"
- if [[ -e "${dir}" ]]; then
- [[ ! -d "${dir}" ]] &&
- die "${dir} exists but is not a directory"
- continue
- fi
- if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
- einfo "symlinking ${dir} to usr/${libdir}"
- ln -s usr/${libdir} ${dir} ||
- die " Unable to make ${dir} symlink"
- else
- einfo "creating directory ${dir}"
- mkdir -p "${dir}" ||
- die "Unable to create ${dir} directory"
- fi
- done
- done
- return 0
- fi
-
- [ -z "${def_libdir}" ] &&
- die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
- # figure out which paths should be symlinks and which should be directories
- local dirs syms exp d
- for libdir in ${libdirs} ; do
- if use split-usr ; then
- exp=( {,usr/,usr/local/}${libdir} )
- else
- exp=( {usr/,usr/local/}${libdir} )
- fi
- for d in "${exp[@]}" ; do
- # most things should be dirs
- if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
- [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
- else
- [ -h "${d}" ] && syms+=" ${d}"
- fi
- done
- done
- if [ -n "${syms}${dirs}" ] ; then
- ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
- ewarn "have these paths configured as follows:"
- [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
- [ -n "${syms}" ] && ewarn "directories:${syms}"
- ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
- ewarn "If things fail, you will need to manually create/move the directories."
- echo
- fi
-
- # setup symlinks and dirs where we expect them to be; do not migrate
- # data ... just fall over in that case.
- if use split-usr ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- else
- prefix_lst=( "${EROOT}"{usr/,usr/local/} )
- fi
- for prefix in "${prefix_lst[@]}"; do
- if [ "${SYMLINK_LIB}" = yes ] ; then
- # we need to make sure "lib" points to the native libdir
- if [ -h "${prefix}lib" ] ; then
- # it's already a symlink! assume it's pointing to right place ...
- continue
- elif [ -d "${prefix}lib" ] ; then
- # "lib" is a dir, so need to convert to a symlink
- ewarn "Converting ${prefix}lib from a dir to a symlink"
- rm -f "${prefix}lib"/.keep
- if rmdir "${prefix}lib" 2>/dev/null ; then
- ln -s ${def_libdir} "${prefix}lib" || die
- else
- die "non-empty dir found where we needed a symlink: ${prefix}lib"
- fi
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a symlink"
- mkdir -p "${prefix}" || die
- rm -f "${prefix}lib" || die
- ln -s ${def_libdir} "${prefix}lib" || die
- mkdir -p "${prefix}${def_libdir}" #423571
- fi
- else
- # we need to make sure "lib" is a dir
- if [ -h "${prefix}lib" ] ; then
- # "lib" is a symlink, so need to convert to a dir
- ewarn "Converting ${prefix}lib from a symlink to a dir"
- rm -f "${prefix}lib" || die
- if [ -d "${prefix}lib32" ] ; then
- ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
- mv "${prefix}lib32" "${prefix}lib" || die
- else
- mkdir -p "${prefix}lib" || die
- fi
- elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
- # make sure the old "lib" ABI location does not exist; we
- # only symlinked the lib dir on systems where we moved it
- # to "lib32" ...
- case ${CHOST} in
- *-gentoo-freebsd*) ;; # We want it the other way on fbsd.
- i?86*|x86_64*|powerpc*|sparc*|s390*)
- if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
- rm -f "${prefix}lib32"/.keep
- if ! rmdir "${prefix}lib32" 2>/dev/null ; then
- ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
- die "non-empty dir found where there should be none: ${prefix}lib32"
- fi
- fi
- ;;
- esac
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a dir"
- mkdir -p "${prefix}lib" || die
- fi
- fi
- done
- if ! use split-usr ; then
- for libdir in ${libdirs}; do
- if [[ ! -e "${EROOT}${libdir}" ]]; then
- ln -s usr/"${libdir}" "${EROOT}${libdir}"
- fi
- done
- fi
-}
-
-pkg_preinst() {
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
- # We need to install directories and maybe some dev nodes when building
- # stages, but they cannot be in CONTENTS.
- # Also, we cannot reference $S as binpkg will break so we do this.
- multilib_layout
- if use build ; then
- if use split-usr ; then
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
- else
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
- fi
- fi
- rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
- default
- if use prefix; then
- hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
- hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
- echo PATH=/usr/bin:/bin >> etc/env.d/99host
- echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
- fi
-
- # handle multilib paths. do it here because we want this behavior
- # regardless of the C library that you're using. we do explicitly
- # list paths which the native ldconfig searches, but this isn't
- # problematic as it doesn't change the resulting ld.so.cache or
- # take longer to generate. similarly, listing both the native
- # path and the symlinked path doesn't change the resulting cache.
- local libdir ldpaths
- for libdir in $(get_all_libdirs) ; do
- ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
- ldpaths+=":${EPREFIX}/usr/local/${libdir}"
- done
- echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
- # rc-scripts version for testing of features that *should* be present
- echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
- emake \
- OS=$(usex kernel_FreeBSD BSD Linux) \
- DESTDIR="${ED}" \
- install
- dodoc ChangeLog
-
- # need the makefile in pkg_preinst
- insinto /usr/share/${PN}
- doins Makefile
-}
-
-pkg_postinst() {
- local x
-
- # We installed some files to /usr/share/baselayout instead of /etc to stop
- # (1) overwriting the user's settings
- # (2) screwing things up when attempting to merge files
- # (3) accidentally packaging up personal files with quickpkg
- # If they don't exist then we install them
- for x in master.passwd passwd shadow group fstab ; do
- [ -e "${EROOT}etc/${x}" ] && continue
- [ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
- cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
- done
-
- # Force shadow permissions to not be world-readable #260993
- for x in shadow ; do
- [ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
- done
-
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
- fi
-
- # whine about users that lack passwords #193541
- if [[ -e "${EROOT}"etc/shadow ]] ; then
- local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
- if [[ -n ${bad_users} ]] ; then
- echo
- ewarn "The following users lack passwords!"
- ewarn ${bad_users}
- fi
- fi
-
- # whine about users with invalid shells #215698
- if [[ -e "${EROOT}"etc/passwd ]] ; then
- local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
- if [[ -n ${bad_shells} ]] ; then
- echo
- ewarn "The following users have non-existent shells!"
- ewarn "${bad_shells}"
- fi
- fi
-
- # https://bugs.gentoo.org/361349
- if use kernel_linux; then
- mkdir -p "${EROOT}"run
-
- local found fstype mountpoint
- while read -r _ mountpoint fstype _; do
- [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
- done < "${ROOT}"proc/mounts
- [[ -z ${found} ]] &&
- ewarn "You should reboot now to get /run mounted with tmpfs!"
- fi
-
- for x in ${REPLACING_VERSIONS}; do
- if ! version_is_at_least 2.4 ${x}; then
- ewarn "After updating ${EROOT}etc/profile, please run"
- ewarn "env-update && . /etc/profile"
- fi
-
- if ! version_is_at_least 2.6 ${x}; then
- ewarn "Please run env-update then log out and back in to"
- ewarn "update your path."
- fi
- # clean up after 2.5 typos
- # https://bugs.gentoo.org/show_bug.cgi?id=656380
- if [[ ${x} == 2.5 ]]; then
- rm -fr "${EROOT}{,usr"
- fi
- done
-
- if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
- ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
- ewarn "Please migrate your changes."
- fi
-}
diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
deleted file mode 100644
index 1a631d10b938..000000000000
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ /dev/null
@@ -1,312 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-pkg_setup() {
- multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
- local dir def_libdir libdir libdirs
- local prefix prefix_lst
- def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
- libdirs=$(get_all_libdirs)
- : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
-
- if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- for prefix in "${prefix_lst[@]}"; do
- for libdir in ${libdirs}; do
- dir="${prefix}${libdir}"
- if [[ -e "${dir}" ]]; then
- [[ ! -d "${dir}" ]] &&
- die "${dir} exists but is not a directory"
- continue
- fi
- if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
- einfo "symlinking ${dir} to usr/${libdir}"
- ln -s usr/${libdir} ${dir} ||
- die " Unable to make ${dir} symlink"
- else
- einfo "creating directory ${dir}"
- mkdir -p "${dir}" ||
- die "Unable to create ${dir} directory"
- fi
- done
- done
- return 0
- fi
-
- [ -z "${def_libdir}" ] &&
- die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
- # figure out which paths should be symlinks and which should be directories
- local dirs syms exp d
- for libdir in ${libdirs} ; do
- if use split-usr ; then
- exp=( {,usr/,usr/local/}${libdir} )
- else
- exp=( {usr/,usr/local/}${libdir} )
- fi
- for d in "${exp[@]}" ; do
- # most things should be dirs
- if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
- [ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
- else
- [ -h "${d}" ] && syms+=" ${d}"
- fi
- done
- done
- if [ -n "${syms}${dirs}" ] ; then
- ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
- ewarn "have these paths configured as follows:"
- [ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
- [ -n "${syms}" ] && ewarn "directories:${syms}"
- ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
- ewarn "If things fail, you will need to manually create/move the directories."
- echo
- fi
-
- # setup symlinks and dirs where we expect them to be; do not migrate
- # data ... just fall over in that case.
- if use split-usr ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
- else
- prefix_lst=( "${EROOT}"{usr/,usr/local/} )
- fi
- for prefix in "${prefix_lst[@]}"; do
- if [ "${SYMLINK_LIB}" = yes ] ; then
- # we need to make sure "lib" points to the native libdir
- if [ -h "${prefix}lib" ] ; then
- # it's already a symlink! assume it's pointing to right place ...
- continue
- elif [ -d "${prefix}lib" ] ; then
- # "lib" is a dir, so need to convert to a symlink
- ewarn "Converting ${prefix}lib from a dir to a symlink"
- rm -f "${prefix}lib"/.keep || die
- if rmdir "${prefix}lib" 2>/dev/null ; then
- ln -s ${def_libdir} "${prefix}lib" || die
- else
- die "non-empty dir found where we needed a symlink: ${prefix}lib"
- fi
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a symlink"
- mkdir -p "${prefix}" || die
- rm -f "${prefix}lib" || die
- ln -s ${def_libdir} "${prefix}lib" || die
- mkdir -p "${prefix}${def_libdir}" || die #423571
- fi
- else
- # we need to make sure "lib" is a dir
- if [ -h "${prefix}lib" ] ; then
- # "lib" is a symlink, so need to convert to a dir
- ewarn "Converting ${prefix}lib from a symlink to a dir"
- rm -f "${prefix}lib" || die
- if [ -d "${prefix}lib32" ] ; then
- ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
- mv "${prefix}lib32" "${prefix}lib" || die
- else
- mkdir -p "${prefix}lib" || die
- fi
- elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
- # make sure the old "lib" ABI location does not exist; we
- # only symlinked the lib dir on systems where we moved it
- # to "lib32" ...
- case ${CHOST} in
- *-gentoo-freebsd*) ;; # We want it the other way on fbsd.
- i?86*|x86_64*|powerpc*|sparc*|s390*)
- if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
- rm -f "${prefix}lib32"/.keep || die
- if ! rmdir "${prefix}lib32" 2>/dev/null ; then
- ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
- die "non-empty dir found where there should be none: ${prefix}lib32"
- fi
- fi
- ;;
- esac
- else
- # nothing exists, so just set it up sanely
- ewarn "Initializing ${prefix}lib as a dir"
- mkdir -p "${prefix}lib" || die
- fi
- fi
- done
- if ! use split-usr ; then
- for libdir in ${libdirs}; do
- if [[ ! -e "${EROOT}${libdir}" ]]; then
- ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
- die " Unable to make ${EROOT}${libdir} symlink"
- fi
- done
- fi
-}
-
-pkg_preinst() {
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
- # We need to install directories and maybe some dev nodes when building
- # stages, but they cannot be in CONTENTS.
- # Also, we cannot reference $S as binpkg will break so we do this.
- multilib_layout
- if use build ; then
- if use split-usr ; then
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
- else
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
- fi
- fi
- rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
- default
- if use prefix; then
- hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
- hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
- echo PATH=/usr/bin:/bin >> etc/env.d/99host
- echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
- fi
-
- # don't want symlinked directories in PATH on systems with usr-merge
- if ! use split-usr; then
- sed \
- -e 's|/usr/local/sbin:||g' \
- -e 's|:/usr/sbin:|:|g' \
- -e 's|:/sbin:|:|g' \
- -e 's|:/bin:|:|g' \
- -i etc/env.d/50baselayout || die
- fi
-
- # handle multilib paths. do it here because we want this behavior
- # regardless of the C library that you're using. we do explicitly
- # list paths which the native ldconfig searches, but this isn't
- # problematic as it doesn't change the resulting ld.so.cache or
- # take longer to generate. similarly, listing both the native
- # path and the symlinked path doesn't change the resulting cache.
- local libdir ldpaths
- for libdir in $(get_all_libdirs) ; do
- use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
- ldpaths+=":${EPREFIX}/usr/${libdir}"
- ldpaths+=":${EPREFIX}/usr/local/${libdir}"
- done
- echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
- # rc-scripts version for testing of features that *should* be present
- echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
- emake \
- OS=$(usex kernel_FreeBSD BSD Linux) \
- DESTDIR="${ED}" \
- install
- dodoc ChangeLog
- rm "${ED}"/etc/sysctl.d/README || die
-
- # need the makefile in pkg_preinst
- insinto /usr/share/${PN}
- doins Makefile
-}
-
-pkg_postinst() {
- local x
-
- # We installed some files to /usr/share/baselayout instead of /etc to stop
- # (1) overwriting the user's settings
- # (2) screwing things up when attempting to merge files
- # (3) accidentally packaging up personal files with quickpkg
- # If they don't exist then we install them
- for x in master.passwd passwd shadow group fstab ; do
- [ -e "${EROOT}etc/${x}" ] && continue
- [ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
- cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc || die
- done
-
- # Force shadow permissions to not be world-readable #260993
- for x in shadow ; do
- if [ -e "${EROOT}etc/${x}" ] ; then
- chmod o-rwx "${EROOT}etc/${x}" || die
- fi
- done
-
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release || die
- fi
-
- # whine about users that lack passwords #193541
- if [[ -e "${EROOT}"etc/shadow ]] ; then
- local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
- if [[ -n ${bad_users} ]] ; then
- echo
- ewarn "The following users lack passwords!"
- ewarn ${bad_users}
- fi
- fi
-
- # whine about users with invalid shells #215698
- if [[ -e "${EROOT}"etc/passwd ]] ; then
- local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
- if [[ -n ${bad_shells} ]] ; then
- echo
- ewarn "The following users have non-existent shells!"
- ewarn "${bad_shells}"
- fi
- fi
-
- # https://bugs.gentoo.org/361349
- if use kernel_linux; then
- mkdir -p "${EROOT}"run || die
-
- local found fstype mountpoint
- while read -r _ mountpoint fstype _; do
- [[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
- done < "${ROOT}"proc/mounts
- [[ -z ${found} ]] &&
- ewarn "You should reboot now to get /run mounted with tmpfs!"
- fi
-
- for x in ${REPLACING_VERSIONS}; do
- if ! version_is_at_least 2.4 ${x}; then
- ewarn "After updating ${EROOT}etc/profile, please run"
- ewarn "env-update && . /etc/profile"
- fi
-
- if ! version_is_at_least 2.6 ${x}; then
- ewarn "Please run env-update then log out and back in to"
- ewarn "update your path."
- fi
- # clean up after 2.5 typos
- # https://bugs.gentoo.org/show_bug.cgi?id=656380
- if [[ ${x} == 2.5 ]]; then
- rm -fr "${EROOT}{,usr" || die
- fi
- done
-
- if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
- ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
- ewarn "Please migrate your changes."
- fi
-}
diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index ee4f298e8409..8dfcf1d42876 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit multilib versionator prefix
+inherit multilib prefix
DESCRIPTION="Filesystem baselayout and init scripts"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
@@ -12,15 +12,41 @@ if [[ ${PV} = 9999 ]]; then
inherit git-r3
else
SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="GPL-2"
SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build +split-usr"
-pkg_setup() {
- multilib_layout
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+ # Here we apply some special sauce for riscv.
+ # Two multilib layouts exist for now:
+ # 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+ # these are chosen by us to closely resemble other arches
+ # 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+ # this is the glibc/gcc default
+ # Unfortunately, the default has only one fallback, which is "lib"
+ # for both 32bit and 64bit. So things do not break in 1), we need
+ # to provide compatibility symlinks...
+
+ # This function has exactly two parameters:
+ # - the default libdir, to determine if 1) or 2) applies
+ # - the location of the symlink (which points to ".")
+
+ # Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+ # there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+ case ${CHOST} in
+ riscv*)
+ # are we on a one level libdir profile? is there no symlink yet?
+ if [[ ${1} != */* && ! -L ${2} ]] ; then
+ ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+ fi
+ ;;
+ esac
}
# Create our multilib dirs - the Makefile has no knowledge of this
@@ -29,10 +55,9 @@ multilib_layout() {
local prefix prefix_lst
def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
libdirs=$(get_all_libdirs)
- : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
for prefix in "${prefix_lst[@]}"; do
for libdir in ${libdirs}; do
dir="${prefix}${libdir}"
@@ -41,16 +66,31 @@ multilib_layout() {
die "${dir} exists but is not a directory"
continue
fi
- if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
- einfo "symlinking ${dir} to usr/${libdir}"
- ln -s usr/${libdir} ${dir} ||
- die " Unable to make ${dir} symlink"
+ if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+ # for the special case of riscv multilib, we drop the
+ # second part of two-component libdirs, e.g. lib64/lp64
+ libdir="${libdir%%/*}"
+ dir="${prefix}${libdir}"
+ if [[ -h "${dir}" ]] ; then
+ if use riscv ; then
+ # with riscv we get now double entries so we
+ # need to ignore already existing symlinks
+ einfo "symlink ${dir} already exists (riscv)"
+ else
+ die "symlink ${dir} already exists"
+ fi
+ else
+ einfo "symlinking ${dir} to usr/${libdir}"
+ ln -s usr/${libdir} ${dir} ||
+ die "Unable to make ${dir} symlink"
+ fi
else
einfo "creating directory ${dir}"
mkdir -p "${dir}" ||
die "Unable to create ${dir} directory"
fi
done
+ [[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
done
return 0
fi
@@ -88,9 +128,9 @@ multilib_layout() {
# setup symlinks and dirs where we expect them to be; do not migrate
# data ... just fall over in that case.
if use split-usr ; then
- prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+ prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
else
- prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+ prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
fi
for prefix in "${prefix_lst[@]}"; do
if [ "${SYMLINK_LIB}" = yes ] ; then
@@ -101,7 +141,7 @@ multilib_layout() {
elif [ -d "${prefix}lib" ] ; then
# "lib" is a dir, so need to convert to a symlink
ewarn "Converting ${prefix}lib from a dir to a symlink"
- rm -f "${prefix}lib"/.keep
+ rm -f "${prefix}lib"/.keep || die
if rmdir "${prefix}lib" 2>/dev/null ; then
ln -s ${def_libdir} "${prefix}lib" || die
else
@@ -113,7 +153,7 @@ multilib_layout() {
mkdir -p "${prefix}" || die
rm -f "${prefix}lib" || die
ln -s ${def_libdir} "${prefix}lib" || die
- mkdir -p "${prefix}${def_libdir}" #423571
+ mkdir -p "${prefix}${def_libdir}" || die #423571
fi
else
# we need to make sure "lib" is a dir
@@ -132,10 +172,9 @@ multilib_layout() {
# only symlinked the lib dir on systems where we moved it
# to "lib32" ...
case ${CHOST} in
- *-gentoo-freebsd*) ;; # We want it the other way on fbsd.
i?86*|x86_64*|powerpc*|sparc*|s390*)
if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
- rm -f "${prefix}lib32"/.keep
+ rm -f "${prefix}lib32"/.keep || die
if ! rmdir "${prefix}lib32" 2>/dev/null ; then
ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
die "non-empty dir found where there should be none: ${prefix}lib32"
@@ -154,51 +193,44 @@ multilib_layout() {
for libdir in ${libdirs}; do
if [[ ! -e "${EROOT}${libdir}" ]]; then
ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
- die " Unable to make ${EROOT}${libdir} symlink"
+ die "Unable to make ${EROOT}${libdir} symlink"
fi
done
fi
}
-pkg_preinst() {
- # This is written in src_install (so it's in CONTENTS), but punt all
- # pending updates to avoid user having to do etc-update (and make the
- # pkg_postinst logic simpler).
- rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
- # We need to install directories and maybe some dev nodes when building
- # stages, but they cannot be in CONTENTS.
- # Also, we cannot reference $S as binpkg will break so we do this.
+pkg_setup() {
multilib_layout
- if use build ; then
- if use split-usr ; then
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
- else
- emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
- fi
- fi
- rm -f "${ED}"/usr/share/${PN}/Makefile
}
src_prepare() {
default
- if use prefix; then
- hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
- hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
- echo PATH=/usr/bin:/bin >> etc/env.d/99host
- echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
- fi
# don't want symlinked directories in PATH on systems with usr-merge
- if ! use split-usr; then
+ if ! use split-usr && ! use prefix-guest; then
sed \
- -e 's|/usr/local/sbin:||g' \
-e 's|:/usr/sbin:|:|g' \
-e 's|:/sbin:|:|g' \
-e 's|:/bin:|:|g' \
-i etc/env.d/50baselayout || die
fi
+ if use prefix; then
+ hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+ hprefixify etc/shells share/passwd
+ hprefixify -w '/PATH=/' etc/env.d/50baselayout
+ hprefixify -w 1 etc/env.d/50baselayout
+ echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+ echo MANPATH=/usr/share/man >> etc/env.d/99host
+
+ # change branding
+ sed -i \
+ -e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+ -e '/make_os_release/s/${OS}/Prefix/' \
+ Makefile || die
+ fi
+
# handle multilib paths. do it here because we want this behavior
# regardless of the C library that you're using. we do explicitly
# list paths which the native ldconfig searches, but this isn't
@@ -207,27 +239,70 @@ src_prepare() {
# path and the symlinked path doesn't change the resulting cache.
local libdir ldpaths
for libdir in $(get_all_libdirs) ; do
- use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+ if use split-usr || use prefix-guest; then
+ ldpaths+=":${EPREFIX}/${libdir}"
+ fi
ldpaths+=":${EPREFIX}/usr/${libdir}"
ldpaths+=":${EPREFIX}/usr/local/${libdir}"
done
echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
- # rc-scripts version for testing of features that *should* be present
- echo "Gentoo Base System release ${PV}" > etc/gentoo-release
}
src_install() {
emake \
- OS=$(usex kernel_FreeBSD BSD Linux) \
DESTDIR="${ED}" \
install
- dodoc ChangeLog
- rm "${ED}"/etc/sysctl.d/README
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # add SDK path which contains development manpages
+ echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+ > "${ED}"/etc/env.d/98macos-sdk
+ fi
# need the makefile in pkg_preinst
insinto /usr/share/${PN}
doins Makefile
+
+ dodoc ChangeLog
+
+ # bug 858596
+ if use prefix-guest ; then
+ dodir sbin
+ cat > "${ED}"/sbin/runscript <<- EOF
+ #!/usr/bin/env sh
+ source "${EPREFIX}/lib/gentoo/functions.sh"
+
+ eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+ exit 1
+ EOF
+ chmod 755 "${ED}"/sbin/runscript || die
+ cp "${ED}"/sbin/{runscript,openrc-run} || die
+ fi
+}
+
+pkg_preinst() {
+ # We need to install directories and maybe some dev nodes when building
+ # stages, but they cannot be in CONTENTS.
+ # Also, we cannot reference $S as binpkg will break so we do this.
+ multilib_layout
+ if use build ; then
+ if use split-usr ; then
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+ else
+ emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+ fi
+ fi
+ rm -f "${ED}"/usr/share/${PN}/Makefile || die
+
+ # Create symlinks in pkg_preinst to avoid Portage collision check.
+ # Create the symlinks in ${ED} via dosym so that we own it.
+ # Only create the symlinks if it wont cause a conflict in ${EROOT}.
+ if [[ -L ${EROOT}/var/lock || ! -e ${EROOT}/var/lock ]]; then
+ dosym ../run/lock /var/lock
+ fi
+ if [[ -L ${EROOT}/var/run || ! -e ${EROOT}/var/run ]]; then
+ dosym ../run /var/run
+ fi
}
pkg_postinst() {
@@ -239,23 +314,19 @@ pkg_postinst() {
# (3) accidentally packaging up personal files with quickpkg
# If they don't exist then we install them
for x in master.passwd passwd shadow group fstab ; do
- [ -e "${EROOT}etc/${x}" ] && continue
- [ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
- cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+ [ -e "${EROOT}/etc/${x}" ] && continue
+ [ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+ cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
done
# Force shadow permissions to not be world-readable #260993
for x in shadow ; do
- [ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+ if [ -e "${EROOT}/etc/${x}" ] ; then
+ chmod o-rwx "${EROOT}/etc/${x}" || die
+ fi
done
-
- # Take care of the etc-update for the user
- if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
- mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
- fi
-
# whine about users that lack passwords #193541
- if [[ -e "${EROOT}"etc/shadow ]] ; then
+ if [[ -e "${EROOT}"/etc/shadow ]] ; then
local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
if [[ -n ${bad_users} ]] ; then
echo
@@ -265,8 +336,8 @@ pkg_postinst() {
fi
# whine about users with invalid shells #215698
- if [[ -e "${EROOT}"etc/passwd ]] ; then
- local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+ if [[ -e "${EROOT}"/etc/passwd ]] ; then
+ local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
if [[ -n ${bad_shells} ]] ; then
echo
ewarn "The following users have non-existent shells!"
@@ -276,35 +347,18 @@ pkg_postinst() {
# https://bugs.gentoo.org/361349
if use kernel_linux; then
- mkdir -p "${EROOT}"run
+ mkdir -p "${EROOT}"/run || die
local found fstype mountpoint
while read -r _ mountpoint fstype _; do
[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
- done < "${ROOT}"proc/mounts
+ done < "${ROOT}"/proc/mounts
[[ -z ${found} ]] &&
ewarn "You should reboot now to get /run mounted with tmpfs!"
fi
- for x in ${REPLACING_VERSIONS}; do
- if ! version_is_at_least 2.4 ${x}; then
- ewarn "After updating ${EROOT}etc/profile, please run"
- ewarn "env-update && . /etc/profile"
- fi
-
- if ! version_is_at_least 2.6 ${x}; then
- ewarn "Please run env-update then log out and back in to"
- ewarn "update your path."
- fi
- # clean up after 2.5 typos
- # https://bugs.gentoo.org/show_bug.cgi?id=656380
- if [[ ${x} == 2.5 ]]; then
- rm -fr "${EROOT}{,usr"
- fi
- done
-
- if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
- ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+ if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+ ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
ewarn "Please migrate your changes."
fi
}
diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 0b72092a22d0..6a97f0c772f0 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -1,13 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>williamh@gentoo.org</email>
- <name>William Hubbs</name>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
<stabilize-allarches/>
+ <upstream>
+ <remote-id type="gentoo">proj/baselayout</remote-id>
+ <remote-id type="github">gentoo/baselayout</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/bat/Manifest b/sys-apps/bat/Manifest
index 2c0156aa9701..341e6bcb92e3 100644
--- a/sys-apps/bat/Manifest
+++ b/sys-apps/bat/Manifest
@@ -1,43 +1,53 @@
-DIST adler32-1.0.4.crate 5105 BLAKE2B 344a5258e77328a24a545e32f9bc653fa25b7ea43803ed7861db261bce227aa1599520a42acea3de1f2acebb8fa9fad251e2688413b752eafe2401ca1a2ee34a SHA512 5990e1e277a1c3aae5adef5e4601b807a756a40e88578bb91f1c70d70babfa97fb3f2c1b963482ec8e18c16d5e722bf90fb42f9646c8dd840373f28965a2d123
-DIST aho-corasick-0.7.10.crate 111039 BLAKE2B 69f984dbe528ece5ce4345bc0f39c122507a88e781d7c2d5c9175d1788aeef8d21e0487c7c449e28fbbdaae8203fe68627d23ac0a58d30dc70befd26ac9af32f SHA512 e8a1cb252015435009883662ca23408f1491d8f01461f3a81082feabeeff72ec61beb4f1f3271fc8a87f1379899ecfc38036ac208dca17889f70ddaca2406a9b
-DIST ansi_colours-1.0.1.crate 9937 BLAKE2B 04d86fb964138cadeab0cb708e99d198189efe6ad871b9cea43967f610922234f371befe7b25c8ef824f94daef5b6c52e47a5d86f7966b82ff100ae5a4e38281 SHA512 16d9470385c55eb28be0fd3ea0bf5d8832676282636edb71f670c629a77884f590bf4ea13f2bf1002031a5a014cf1bfb32bb7a09da27af3c1d85e4a0f524af23
-DIST ansi_term-0.11.0.crate 17087 BLAKE2B 9bd35c045a01ce4c6c4a5db1b4f15e9412bb97426eec19d4421dffbec633de8d13452c13c1dc1b30998690b78d7ed38311aca700087f13a81f66bd1d5d7300c4 SHA512 a637466a380748f939b3af090b8c0333f35581925bc03f4dda9b3f95d338836403cf5487ae3af9ff68f8245a837f8ab061aabe57a126a6a2c20f2e972c77d1fa
-DIST ansi_term-0.12.1.crate 24838 BLAKE2B f636772c34e2d68cda7b8d3b2b86abda074585a62bd2654812ce92384244655a9197fa66e6939e19a674c0148ca605313d83de262bb18c2339a8a4eb4438a791 SHA512 b840e28b3e7700689a69a39659b1e066560078dd4a58326b91a028915819e7af883399ee53e920db68fd974c58d35bb1ddf8d427af5937d5f696f57c4376b671
-DIST anymap-0.12.1.crate 14298 BLAKE2B a4f5f4f18263e0a6d5b67ac8fbb56cf410534a0fc3e670d57a3275d0efe318c98b9b594f0be44dd7ac9fd08cda1d05733489290884af25f76ea981e0ae61ad60 SHA512 88fbca9ff7482ecd338f9cd9a025499ed98b47eaa89ca8dcd1ccfb013b6c9ebe7a8eca5d7c873eb716c320af7ccda01f6d4c26bb333c8ff434416416ee64a774
-DIST arrayref-0.3.6.crate 10035 BLAKE2B 88292fa4b3ad4fccd03772c2f0eca04cc13373fe094358bac57d7523c256d89f3087603e5bcb2a0b15d8b2ecd48e904a822b2cb800276a9c47ad6c6b660d9d34 SHA512 368341d00706c1250ff081b0d99c36c9af694a62ff4f4d8c837234340295771ca49c5439b24b6e1a4f2c3c5821764e98881dcb22d793f83de632fd5cb457671f
-DIST arrayvec-0.5.1.crate 26816 BLAKE2B 172dab8f0129134dfc89c6032c5fc15e2f86a5cd1e5be18b87fe2108d18a1bdb0f597a6ed4cd214dc663fbfb27b05c66846fba4543b5e068b5c75d075bdc5bff SHA512 53db2fafea1f60ac1af9ecc0bc9b69010e9f8573048481d55969ecdc9f3d19832fe05824acf10a0186b0464f0fbfe898d73500fba39ed63650c64dac2c2e8043
-DIST assert_cmd-1.0.1.crate 24575 BLAKE2B e204b79da44a27b9c70be8dbf53356714ac994b4e5daced1b4f570c9e6c4a422572e825a54387df25292bd27e9ae11fa57d803bcfe4643382a2f739859dd42fd SHA512 969e1f6ba28edc0d4d25a10390f8e94578562602d303e9a9e402f29655cb9d67edc1040b283e1bc9fb4a88a5817814d88e85b77944204288aabcfb6da69bbdbf
+DIST adler-1.0.2.crate 12778 BLAKE2B a1dc17786adae945ac09d3525e609ed944e6465690787bbb831a1b9d53793cba1989793d0a5606d5d23ee20d36457923d451b1b3530c9ec7072a487aa3e55bbd SHA512 7ab190d31890fc05b0b55d8e2c6527a505e06793d5496be0b3831e0513412f9ba97f8148f6f68ed0770fa9cd980a5092d885e058becf1d5506b7c74b82674aa1
+DIST aho-corasick-0.7.19.crate 113070 BLAKE2B 5ddaa0d415d19cf9922b5723bf3480750634ea68cb66fd05bfa2bf57607eb6383ba86d8c55f70adb87b71b98caa73d8f6ebd075c006493530c81979032899b60 SHA512 0d63d29079650bde4e8a9f8529716b9d8c42db076a1d74715116240c2628173f1e86fb29c08a25ad07a0148e48789ab20de0c186a8b3dfb193cbfeb0d76ae78c
+DIST aho-corasick-1.0.1.crate 167320 BLAKE2B f148004140d4f705e93f448020b97c434b93fea6ae34fd74b1f394b076c2727a87f5ec54542a0f52822d716c10ada3c68ae8f50a46c455fc6e828b10b5650ecc SHA512 7cea5b2305b90aebc54f78446cfc91f275b1be8489d2d80c3baa9ff8b913f9b2296adbdf4aefb0d8fce8f57812963fb9450b200d133a9d61e100cef324068070
+DIST ansi_colours-1.2.1.crate 21866 BLAKE2B b1a2ad5aa797b59fc6f2c090f1c0da6937ade5099367c67c704cd91db62829f86f7bd7dedfd654074df29dd192e4f4d438cd90beb6db51a7605045278741bd69 SHA512 dd89084c997aa42acbde2b885ea414fc7edbeab6de9749abde2270322147fe4850532d916145418e911f5f0950fc3a3f0fd16fb63c40b8ce14c1085017879f73
+DIST anstream-0.6.4.crate 20593 BLAKE2B 2b617c45d351e01222fc50f52551e57b4a8b0ecf84c6ddf44336c7c9d3b9dde15232b1c4f664d567849295bf8f03612b73ded56f1b3937392eb7718f1e0446c3 SHA512 0b983d626c53d1edc184f04cbd2c004eb9c40d14486b23cce86ebf50cbd3d916d32cb0423ae1d67c2b83b966690090af740538538ef846c0b126c686a1ebe159
+DIST anstyle-0.3.5.crate 14272 BLAKE2B 15bb1487dd8c3d7864611d85f0ed277c9226f5f046ed6508ce1f933cfd38bba870af15fe3d238a0aaf104272be28dbb9d2f3a96e53bf28dddd14d0b4de173d52 SHA512 3075963236b4b7b94b98672481a82ad1ab9d219e583dc5646bc7ebfef35a7bbdcb38c9e12c770a51809fdc4fcc510e781875507446b36bc87a69e4a10e562709
+DIST anstyle-1.0.0.crate 13972 BLAKE2B 741704b6e338834696bc816d8a65ff933f9bff48e71d25269f04c4a24c3dbb06826d2f84f73a1dceeda99cfc5c8e3d59b3d07dbb404cc3471b86cf118d074e80 SHA512 5a0159b9f8a80afadff04ecbec3c1769cef712c77de8062b31323298dab9507f4a87b7c777e6335d310ec464b0982d097b5888b4b351c389b5f4419c2c87be7b
+DIST anstyle-parse-0.2.0.crate 24361 BLAKE2B f796ddf1af04c93d7ee2721731e5cd22bb941919940a9edf6b2a658a8c39e87bd801bfd989631d64e9061067f7349796c56009ec61c02d754748181cc4d91a62 SHA512 fbac25189a0f4c0ddf2733c8ff74bdc2dc1a35e522d0201fa48f0f45e1d5d0a42e4806178507d0bc6a2ac22978b813eae5d57f09dddc80582de524690d87147f
+DIST anstyle-query-1.0.0.crate 8620 BLAKE2B 2d296b5066fd6284a2410923215571e6df650c5ef892d6de7a7088a0996ca30608797feabc84f3c325ff4d07001dac80ac5067d2a9c9d15d9ba59a276b399f53 SHA512 2781be5c82293b7ae338ec5046fbeb130de9eb2dbf2e4dfaa73ca5233032e1e52c133e141b02f33d4bc36d996a0a3f680ac82d42d614a5305005f60547133c7a
+DIST anstyle-wincon-3.0.1.crate 11279 BLAKE2B 593de9443b4c612526550285a6c156db26a233815e77a748597c6eea509ae511f41eb8ee736010f8be853695c9f1d94b034a77190e612f0a00bf00385d66ced2 SHA512 75ab14081b09e031ee0f559538976f39092aaeb6f561a56de83d12911cc2b45e28eec21068792c86a61e344021921ab55e7139ca79acec78e7d4a796dfa42a2e
+DIST assert_cmd-2.0.10.crate 24717 BLAKE2B 398c68ff3384229e1a56c969ac74189c2f93494ed8414da4f66491e01cbff185c525b4bd40062e1651b6cca14cef532ee2cca43a240d9599734c1151a85eee82 SHA512 2aba58644cabb8a7daa0bdeb22f628be12c267cf4c720581bb2a1fa5cfb38d7f53aa9ecf840bfcb5b0af1ab859908b0a6e2ae9b9db6cc9a3b74d5a219976a037
+DIST assert_cmd-2.0.8.crate 24347 BLAKE2B b69beb301a11e893ee1c7b59a08ac7860c16a598dc404d7bfd38b2554790898cfb82d1e602750e9b720b4122154e4da140c7b077645786f0a788796d5dafe272 SHA512 886d789af9fe7f8155d393e2742c7982d5c0bb8d44a09f66e5552faed2effcedd000d567f9f00e08ad6d7c17fac9374d7a234ba001f38c9cf444ee41dbe07428
DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
-DIST autocfg-1.0.0.crate 12870 BLAKE2B 79e495d53298574afd3b292da7c9c363dcb3ea434fd44258efaf3628e95ebfc731f03083f8a1060272a2a3478a6452cdc41539e2dac08465cc6e6283844bf260 SHA512 451fc63148792ba1952b884170e3481359b01bacca5ec0456f43ca58f8e092b8f81c9764f8b00d4104059ff608089be5858220ee868127c064cc890c767ec3a3
-DIST base64-0.11.0.crate 48362 BLAKE2B 90d2a64496e20c4bcca6f21c2546474ec88283679ccae95303ea7521133414eba021810e64e5916e3980b6878f90281f09295ebadcc12324fc9a9060ac41a707 SHA512 31b5f56d4907a5e4ae40e92ef1629a446126525186f5236afc2475829bf2e5e067554db200a18f7b3ab741d0cc9c01e20612e77cc0cbc1bc2a4a8d11c0fdbf33
-DIST base64-0.12.1.crate 56378 BLAKE2B 90a948eebbae820ced325055b2d49feebdc3b178a271fa7508356d7e44d9f81f586822b6512169f3c1e9901da491b1728783182796c14e6b2c8c647e57202ed1 SHA512 06c73723c4364ac8bcf4204a943893080d1752dd925a13da800889f486b1ebf97bccae79b7b04cbe758afc95bb1d61464276365d4721689896fa641a8e55b660
-DIST bat-0.15.4.tar.gz 1021888 BLAKE2B 88ebac97807a81a2734325c4d1d86bd3d340572850ba9ff61fb23c8c6a1f902f95be04388e38c862b48b792df71fce2f97e97ca1041c3664868cd147b3b60a0e SHA512 f4338799047c1169c759a0ddf61481972d53103c5e29374ec2fb7bf814458ff6b724aacd551264ad7fc5e135c1e4484a38e391e046e76e113d404a92442db538
-DIST bincode-1.2.1.crate 15489 BLAKE2B 98d8a7b3653dc75aed07a637707a8a0d7b574c9a7e9ab8aa39d6f235d003ee15dc4abdd76e3ba171b10aafc98dc16f9ef8413f4154c30848ca0c12d4972f527e SHA512 b86915db2079128d6abe52c8f3fa0ec21815faa988bf678a162c2caaeb0d2ecf2f5df496d5dab08f399578b4f0258f252e890d9ab9e8347c50e5d7a2ab374db7
-DIST bit-set-0.5.1.crate 14125 BLAKE2B 570b78834400bd6d69b2ad4a3a77766941503fceee069f9b616eab00fe7aff40fb25fc44b1f6506997bd655511c3e941afb0f9bf220b414e4e8cb8a6de4e93da SHA512 1b58b9a1e6dc33483f302415e0a77544dab288c819ed5d899f6ef3969750a17227c5aeb1b563aef41e77e06e665cfa995e358a566f5783a2d3af0087d5fc65c1
-DIST bit-vec-0.5.1.crate 18765 BLAKE2B 17d08d7813893a02a588197f84d9c5bbce574f77150d018889f690902691d83bd42eed4ca9b968789915d09c84e32147b1631ca6323a9fbfd328f6734196c5dc SHA512 c0d57ec2c07ea660919ab7e17881b544496de0d6ee51cc8008b7da0bb39a2dd1ca680cc07051e007d6efaa91b25335e13a799e11a7a9d9a8084cc47525742cc7
-DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
-DIST blake2b_simd-0.5.10.crate 34093 BLAKE2B 6e725c9399714d1e199277e3f9882d636c1737af5b0b290f853573575005d053d2ab3a34843461747914a0c25d370f0d5a5cbb46765fe99308c1fd7666d471c7 SHA512 7471e0347267a4b88e9eea932b3001c420da0a472b2ea0f20dff974789955d6d95e19d51e3a8a312516c7fc4c83b6af17cc59ea2b8fcd4ef879ebac22534307a
-DIST block-buffer-0.7.3.crate 7179 BLAKE2B 549e8532358f9a77fdfbd5ef7a06d60f20f034fcf69072757811cb4a95f5cee5589bebd40fe87af36127254ec42ef3240cc7542828085f590fb774faab8f0e21 SHA512 74c8b89777a006bd72511b32df94f8bd78e2b53c30d85d39ea3c52acf199c357140fb6181f7f7ab5e30dd80d37181582cad740c95b89328a7a4b0f84f77ad6bf
-DIST block-padding-0.1.5.crate 7342 BLAKE2B 876421fa89251d011a455163baa49e0931e0692ed928fad71357fc93b87493eeab4cfcf8fc4aa94638a90a8dce8ec1ad95e9ba91da9557008e5fc19c1f618ab4 SHA512 acf5369cdae38b6b1a5c1561a9df18b8a39c8fd434fa50c49a8f73d2654a835269b7b22876354c903514c49c77aa860c68cd84d3c1efcb36bdfa8b01af300a9a
-DIST bstr-0.2.12.crate 344435 BLAKE2B b55a55be4875d9aefcff0091be82d80a19c1c92d5d6e17b751dd41bebd37f6a5f72d884fa8a70e829905baf3526ce4d854b162d10d894573dd2801ed030460e9 SHA512 2d14ac85274814bb29439acf67c3aaf84ac32ad361dd6d2cbca58bf571c968f594eeb1443a632b625296929b84047652fc60ec39983c110737ba1950d88bce89
-DIST byte-tools-0.3.1.crate 5526 BLAKE2B e87163b1f2abde9c6ad5002c37b21308a98a879dc7af14059839be7b5a019d2487ef03867f3f5cd436b7081cb78a930abce79b5cce23eb95cc60e05067e1b1df SHA512 18e0f248a1e9780706e3a184d63558f03f30002646abc6d46ef49db9d5f6768af3d24d210b688aa4ad33d41248429e4df46bc3926f27851f90c92d260e5c4baa
-DIST byteorder-1.3.4.crate 21943 BLAKE2B 278b24e036e920f84683f883991a967d997883bc80edefc5b69f52551794a37e5051786a1ac1b7a30bf2f5cad7318d781f189a7b2e496e2743df01262d5c33d6 SHA512 0618ce2cd6f3f6c586201d9aee8c8aaa08f99c9f9f215cf448b3cb6af1ac741845f5279953544caaec7fcf0beec1474bb991bee1ad0c0dac0c3f1d3ddd99e2d9
-DIST cc-1.0.52.crate 51006 BLAKE2B a19083042845bc1fcead482b1e644ce09701fc97aad60afc0750d7ee191e26257e5c926fb5a70bef8cc5a37a694581e6098a29c56e63868d67302bb270a8f8f8 SHA512 50558f9b76748298568a1e010ab85b0a0e1cf47d6f8589de718aac0afc130158b092e1be11b73bb1ff51d3a281c5e6ad72ecad5bce9dbff90b4c330c8d95dd90
-DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
-DIST chrono-0.4.11.crate 139811 BLAKE2B d327f6be0a890ed74f2a2330777dcefbcf87e0291e47ef9c63aea46050f38c89a9b2e7a4716ac92202fab66aedc98ae81e090f1921a1aa51fa7ba18cb1cf24a9 SHA512 bedb698ae2994fc6fcf858b86a122cdaccd150996eb3e4313f876599cfa2180c2f687cca78ba30860365e04b75911fcdb19b5930fc155d1c17f06ec8197d3da9
-DIST clap-2.33.0.crate 196458 BLAKE2B 3bb62d817afc77b421a6282746b9b61367d224de6b614c7ed66bde452ce1046728077dab3368a46635b5c74d82ba3196586d87c0201478ce5b89638910dadb1a SHA512 f1075031414d48e4340bfe308904a95a31b72460724773c52a0bc8c004e625a04c904a39fc5420cb8c26a633321f9b5f4f69019c7aae5ed89900b63ed8c21a91
-DIST console-0.11.2.crate 20816 BLAKE2B 4e2c92739fee932e31b28948fa982c1d5feb2c0f590495fcb22ea07d2f88422f475f54b47273bb33556b595e12410ec9592e861e86df9e27466518b15cd4ba26 SHA512 d3f51204654289c59f310730cd1968f6f628cfc7c557f1d645940e78f3831b24b1cc142ac904b5f98ee5dbbbdf51bc91e4914cb203054128e9aeacfb16a1d6e5
-DIST constant_time_eq-0.1.5.crate 4936 BLAKE2B 882dbf33f20954205fcc5b6e39863db8969d184b697fd51ef462f6890c1a754e3fae67bcc7db685d8cc26abe6e3871d3b80aa542489ba9551a0c95a49f7a6dc2 SHA512 a4e0155a7ad72babcfd418d832d362b3fca7333aaaf36c246b00e948983837c3c93378b86e37c5fa7626fe137e3b6d77276ccc61624a7f4ab914605905a88a01
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST base64-0.13.0.crate 62070 BLAKE2B b957f65cdb1e28baeca0cefc92fa98be797409b7dabd15e0e88db6cdfb89779b662cba9f2270fbf3b7b66948fdc46c118b8040a78ab72049c48a928fa802bee0 SHA512 991a72999839daa232f508c5b24e7d3225e8a26db8d1d0e747881b115af9e408b92374e163b31e0b0d324c1c2e57e8e38d66861b61eb0a1dba87bb5871940151
+DIST base64-0.21.0.crate 72180 BLAKE2B c7aeaf671bdeac67703f9c4ee1be003eb8d6f46fbaa0adf61a4da304458742938db04291d5f626115e3fcc901eb3abb3f9baf8247f6344b4d49f60a200fc6fd2 SHA512 60bcc157c6449a2160e083611e6d53e07bbff7db8cd550d9056cb804e99e990d4a20092ba4347306a3c6b6c42474a06d92cb3895125c50cef9b74cd3cbd83a2f
+DIST bat-0.23.0.tar.gz 1903475 BLAKE2B 02594b641b8b2ea942b7b9e3c44a0f60aabdc522052795fdb68655875bb20ad26e406dd2c0a51b9ceeae86947bceb00e47d3facdd3f6eb38f6fbd94c327f2a3c SHA512 49b4d4275c44258d55a0247583369262bb74d9f1f18a3ed592824f7e850953f6ef0ebf9ed47104ff1519109510b797378be053a035e6779eb2e795bb4658afa7
+DIST bat-0.24.0.tar.gz 2751587 BLAKE2B 5026b21855c414ffbf4862962a360718bf6ede6125f64210d37ac127f217b978db93534a01b1cb2494ab77d1ffe6b9b3873d60d4993d9abe45a5a66f9c0fdb4c SHA512 bcb3f818150283ac8d9195175517b17d7de0727604de3e34fc51b168507e8e22ecf91dcb60e12a53cb2f8385dc07fbe5c8123d48bf0dc3a7868a3ae9295da5c4
+DIST bincode-1.3.3.crate 28958 BLAKE2B ea01d2efd8149ecba5e240ed989268b683d542a5f369902d316a4fd1ae4b8edd94e2d4a8cbff0e96646eb29facb04a84b249d74f0781dc3d29c8797ac975aa9f SHA512 49e39d71214dbb623a18e3852f6f2f2a5c3f951b64107d66c8adaa95a442a3283fba978bca41b126c9879b12833b945f478d2c77d35482b3577fc1a894e8e5f3
+DIST bit-set-0.5.3.crate 14470 BLAKE2B f6525500a494236103df2b27e964bae0b2caf718156879f972b9972fa509794bcc663c2130e3d872ecadb7ead0982b415dfa4468ef12523ee248fb1bbec2559e SHA512 c5ce7ef71559706d996505e138ce95d9f008ac3375928012a36339bfec48986ad935b384e2d21fa0d505d4cf98bd3e93be15955ecd9607d253b8a276351334c6
+DIST bit-vec-0.6.3.crate 19927 BLAKE2B f5bd3bb9c87fdf3b206739b74df20cab50a1a45af3a58b2642a5a061c26207884be58ef8369a3cd06dfd3615bff0ce15915fdd4b6b6f03facc4a0f86c0b7e910 SHA512 b4b4a82c80d0ff13527ae4fff449ac9c1c7bc519c013af6ea3428348e0e5b9306b725c0a13a42d7d9dcf0f895a9eee0c63695a2503eb7fd2200083c9ea3a9aa8
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.0.crate 36954 BLAKE2B 1d6cfeb0a17dc53a6249a83c8c7ad7c102985ffcfd7f7f76506889684235e78fe489d23b5a5f9018f0bd526a38d6b1449784c62322fb01f4bb507c0af8bd545c SHA512 0c3d6667abea48811a792749702136ee3db97518b33bc4c7d35737505bf56315e0e5810deeea28b7a1b540ec0e21bd319ba0b3c5c4aef0ba8ed5499ffdfd9b0c
+DIST bstr-1.1.0.crate 340878 BLAKE2B 33168147f9e53bbae98672b61e342665b70dad65ec440af24245d358758ef79e9e50d1a518de09e79207106901aea5cf7824a3d7b18f3a258a3cc511110bfe03 SHA512 5c7802a9d3d2cc219d26fd82c91288195a95d16d4f9f14d7bc3e9932f1027b6a4a50729a2eef998eba25e75d95945a4bd4fba9bd18b8a5bd33306b4548f114ca
+DIST bstr-1.6.0.crate 385877 BLAKE2B c83895b56381b066d17bfed179fca86f69b1284299887d7590be1cf6821cb6ae21e07fdbaeac65cab4a8b2310ea18a316e25c2e5d05c0fbfb926193183cef046 SHA512 094e914ae7087caa6f340a1e26d0ca94927b1c92f0d7f907e4472b3b5c142b63b14759056d537d04be6a7901103fdd47b14f3c6315f68e8c8266155d133cb1dc
+DIST bugreport-0.5.0.crate 16149 BLAKE2B 2728559a8aa0c0c6346335eadfab93ac4b26407604e003432f4d0db1a22ae0c6c22374638482d2e879d09c9139b7da1ac67547764795d303ded1816d3513a1ae SHA512 d1418b6c8df333b4b245f428f3442968f7b75961a00523fb432ff2f904eca07cd208d417e63b2fb0a86b85a6853e4c474d30c19b80a85d8724db66ecd762da7c
+DIST bytemuck-1.12.1.crate 38293 BLAKE2B f714ba0b4b0d693c5b26a3bcbe9de8c1496851a298bb70770e6284ed68caea61d7b8c14d67ed0e8b6d9146e76f791192fcfe11e897146203d5acf536b9721e67 SHA512 50626367364cf0cb33658f6cbb99675f1191ed3e7ad447bd7d2c24f360bd3524ebe1b2d1fcc7d78d1a0692408da8d95795b54efee91a87c55e8b54711a968790
+DIST bytesize-1.1.0.crate 9370 BLAKE2B 38fcddbdb862e82a076b7ae1339b48c776f704d25be78935d08637351ade725e86e00e07e62868e76a1a2db894f223e1f8309f8b362a46405ec6c06f6e421a96 SHA512 36f35cf53c468cf011b231d3fc5d00c5224fa3d917854e347daeaaae53ae7ee36c4d8ba26788460d56c922c9ffb0eeebc60655fef7366ae42e221950d03f6715
+DIST bytesize-1.3.0.crate 10164 BLAKE2B 049f292705082dbd3b2f0abb6f153023613107949f4849154aadce2181f4568ea1b3c12f00b6ad56146f8a4f3b07b7025498e0c989ac6561ac7255720b85ffab SHA512 c718af51b0da2979b70142012544fde6bbf8639cd4fde66a8066b138f7f58dce019209e27566027dc0ec5a7fc1d2ee17b9b6366cc7a5f95a6419e29a0ffedab5
+DIST cc-1.0.73.crate 57880 BLAKE2B be8d7a25a54afdd759844e76aec61526fc2bd5ca09480e6cdd3bdcf27e5f9d3a88dc16cbcbf54cd021470a7cc521e1ad468116c112bbd30752bac0d5486939ac SHA512 980f012b90c6410144f6de4995048337e09214f19603076db6d4edb88e9ef9ac9e8c6e25569f66c2be3a47e99298f5886dafc102e1a9122316179aa26bc1c985
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST clap-4.1.8.crate 207175 BLAKE2B e25dd21c3ca3459082928a1e0d75af087186e7f69f1d729267dfdc73c84bd6a0d026f9500f566516c70f94910a3154617af6ea7930918d4fd81c59d3ce591dc3 SHA512 bb28317f4a1292fae35e7540e37d094c7064cebb009f24d9b781c7c26c49c9bf194221d5387a71e1757115f59ba42b28c995ccec7b10d34145e10cdf739df9ef
+DIST clap-4.4.6.crate 54823 BLAKE2B 0685ecb0fbf3c2c8f5840aabbb5892e88184e866f1afe871b6b75184832f75cb9fc0d43de2f07ef0350cbd290c2cb7c3d86d24120681210af0d2184c91655f98 SHA512 94fb68da3c6b43c90f05dba94339794243a0ab4780feeb27d31f0808e4efd734aa13384fd7e493ab1214ad528134bd23e15ce2e3a9f83075f47a7c856222c6a8
+DIST clap_builder-4.4.6.crate 162450 BLAKE2B 54ba8e3402c7790ed976b4bc0033fb3a4db00e042a828a563bb49f347a60704a18cd6b77e3827db545217101d7b4f88e7176ec01f1406b7c7ad55130af7e9696 SHA512 d6dde9859015995aefa6c7f45d98928bef5120578460b1c576738e49df5a0e64ac0adae04e0f3d7fce0bc84de8b3dd7632840c61ed46c95855f7f801351c6f56
+DIST clap_lex-0.3.2.crate 9650 BLAKE2B c07d8a180cfb959a5c9a2a79ba5343aea2185fbd10052a8e1fdfe0bc8fc2e9433a762d117bfdbb6cef497eb79eb8c757227681559ee995753f1eec738c4c1510 SHA512 f7c55878d3b35e37af607a035b471aaf6c2b1d849c26fba1df6e5585c0af0b93abe0b6409c504d4ee122c9c653daa2e47a89b6d06f31559db760a88a73c42006
+DIST clap_lex-0.5.0.crate 11792 BLAKE2B 0409c9d957ea6a566eb8b50f4212702df038d04c4c38f7440d91cb4c58ec887940f0cf500c4c3949c2191399aac3f5cb1ce44868eac587cde90211d3e467b9a2 SHA512 0149ed7c2438a19b4857f895767550d783711078f07bfa9ac8ca531e06f51c7388110f4d558e30bf503536367cc370cb581e8deb6fe51f9b5460a334963daacd
+DIST clircle-0.3.0.crate 9837 BLAKE2B adeb2d11238c343363475f9e517d01c9b596fa61b7d520f9c92de038f0a106e48263d06045e7f9d0cb5538384d4b2cffc2c969e9a129045b8839bf04ab1bad75 SHA512 a4db35d05ea4ca03155c7308a79b529091dddd4d2d579d787fc3770d80cb7c22ca4a239bcfe7b6a2a85870249754991f8dc960846b80ee7a46b763edfb084b2b
+DIST clircle-0.4.0.crate 14404 BLAKE2B d2349f8723660829b9cfe92bd1b33f8a25439192226ab20e88d5da2c136ca1f2824694ab5cece29696120b8d43c615c5f526697d94323365977e98836e287785 SHA512 3a53c179f00ccfd10a04c21199f1b1fc81f3f579e396b13324c6ae9cdcff5b9b6188a152f7a03808cdec20bc322456b057bebd2c815f941de0be5b0b6c01312e
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST console-0.15.5.crate 34788 BLAKE2B 915818e2a5cc6776a3d40f51ac85ba178e738f5cf40e5e3c1450aa731a04d73a617341dead606e043fcf66d0701f625ccdb5c787978d784c3f22f9ec0524e89a SHA512 54dc15a0c0d7e1a96a368e5866e1e5ea9d11b0b7eafd0e086376085efd3f656bcf5ec86f4eb387b42dd8cd4258f9162c401914d519a175331d0c1873794f8d43
DIST content_inspector-0.2.4.crate 11386 BLAKE2B 2393cf83b2dd338ded7f5acd695e05a4a08fa639a52a8042dd0692be5e959cd1cc670472e25ca696a151d161c821eb899b2a950c74f4cb5b880bc42bc53d1d57 SHA512 1acb8b4f12ce3479f5a60b7b6a0c05b86548591e488e7be529c4a2f9aaa60a76ed07e7ce1e557664d31ddd9964e7f73415ad667cd14ada919f61511bf486ed6f
-DIST crc32fast-1.2.0.crate 39161 BLAKE2B f71c85801f945602d53f93ce251c978c91f63fcd92fecba5083fff0f06738697e99d92c17a824605d5d56b3224db224ff32e4b147b6f6af47ae714dcd511e7cd SHA512 2ee73e0642f83e28034c1baca65156e65d751214e83f2a4ce94b6add5ba11f74ffc80832a3348ece1c099367be2b11e820dfb349fae89fbced1b68bd6b0466f0
-DIST crossbeam-utils-0.7.2.crate 34338 BLAKE2B 3cb287c7741c4d5b0551331634a75b066f07fb4b55fa2b347370506467a05923254b1c4dca667de59ed91ff91f5496b37f40f13d3e9885a1b4f639f5b6748433 SHA512 e375f24c007bcf660d9e297527ed938f678a55696ca7b555b96fee7e0b94c31db2d3f4355675aa0baeadba68b9755ec92dc3a09a37b5db48e3723b926fd4a8f3
-DIST difference-2.0.0.crate 147616 BLAKE2B d720202ba8d73fb9b3cc6a982208e4fbe22eda4b3e296f4238a7b2d8ed0339827ca5a3d93a983396901614a9eabe36a0baf55ecc5f55075ebf7fa1e4c0699eb2 SHA512 cc9956757770ecf237d8f46abef25ce219193c877be6cf83163e87c494956cca3202951ac01bba0728e7202fcde2261009c1b4599f389cf979858f25936a5482
-DIST digest-0.8.1.crate 9449 BLAKE2B a610eb0144fdd49dbd846a86e88781b69ccb6a4f918b09fb4562ee9e3d535d12a1e499e36e5eb894d1d81f7a06ca00296b3aa35063f434fdcf22ff202890650c SHA512 186c3ddc01fefff6a134ea0be633a9fe8067b8db34f31e9991069e7a9b82ed595a1105283a87e3021af2337ad332faf1b85a6bb513a4482df7d24e3e7a5ba055
-DIST dirs-2.0.2.crate 11779 BLAKE2B d1a6152d05a98eacff15c6c7f1f550d475b5a1cf62e541a2fa8b9836b9a1ea6b98f9314341dda35929b968fcf8a47dac7679c5c0b0dd97f21564a8d469c2e254 SHA512 34d6e5956c9db1dae965d33f13c64dde59d3e0e18cbdc56c02f7f31cac8e0034a80fbb561e0a73b8dbd145f85b46fc4e8a147b4c946b5816d8dda6caef185396
-DIST dirs-sys-0.3.4.crate 10477 BLAKE2B 062083f8469ab0d9f1c62c9213b66837e96e4e74ad2d167d5e7a1e3568c7f5432d6f254a248869117ceebdf3f2282231365173f7c6d5941dce42220ac51668b0 SHA512 af36976d97eca3dae3e0a53ea7e4cbefe4e3a4f5277fae5974d7e958e6a880f75b72128b1854320314e3f4da9b625bee7b55bc5331e561ecb3502462f82163f1
+DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
+DIST dashmap-5.4.0.crate 22862 BLAKE2B e24fdd4bba250f1fcf9baaf05184726f4da5dba592d23c0a31f68f903bf6a8f9071c46a11f17e61716a745597338cf52d1db04bf6a8f4c6bdafd745f249f6db6 SHA512 886ec6dd43d4053ca964ade99586a31b420953e47a6e710a1259d8d5f34936f847683844db5c73dfe243803ba45b30ab9641b27af1ae5d825180119a7d61a910
+DIST difflib-0.4.0.crate 7638 BLAKE2B 57c703de0d467c997bcbedc4d6577569b3d72c612d3ccd929025a98f4bf8f72f2a0d43f3cd3bc616676c2569aed176b3c1362cfa868a4bb1197e05fe4dbce32f SHA512 fcb57859424fea6958a4407061c421599fbca111357b1fe72faa65d8fb0b74425c993a24484e8414f475fa146cd8368c4f82e1ceb4e8dd9f95741149345b37a9
+DIST dirs-5.0.0.crate 12235 BLAKE2B 532f66428db2d362ef80cf4379b228e51cd13763a91e8dac493db0dfe1e1d83aa91885c2dcdbc30ef1fbc83169754dcd0201595b227bd73503f403cfa256d0bf SHA512 3f89ac21dc875300ae7a6fd254f5bf0a3dd83d2fe144ecd890bc575ec01a2e69d9343b99905d7002321f185f3826ea9b3174a8800466c3d62fa62ca11fbab2cd
+DIST dirs-sys-0.4.0.crate 10509 BLAKE2B d348905d87d802b3c93ed872c2cfc9319676076417060fa35d09f66855666c299ee3b2317485382a560118a1e55040e5b1baf34bdbe6326661fda6f445c158bc SHA512 5d8b6fdacbd817eed6477a53f8a145901e02cca3ba80788206b50f1cdcb499e9e9228584f545a0000f36a26412ce393b1b8dd2ef385243925d63145b6555c573
+DIST dissimilar-1.0.5.crate 27469 BLAKE2B 316fa635c70addaa3a5d7aeeee359f8affdd1f33c81954b627bc4dc448cc926be892473d24acdf0f3a34faa2bcfdbbb799becf70cf7b99c0dbd35aaa2ac274d6 SHA512 dff9d85c30b095807efcbbf2118336d633e56b8b710c0e71350a8dfdf71bbecf39e9f6fb105f82ff57b2324404fda560571b8f84d2ffc0e3fb12d0bc1b1e4eec
DIST doc-comment-0.3.3.crate 4123 BLAKE2B a82d1c1a7a90af6e111b5e684a1298d7eac5fd8e4bf7d5baf6c7403d26b609958716d57e51122fe7ad7626fe00a2d824dcfef3cc2fd7679fdb7b5099603de1cd SHA512 e98ff9646a3612bd41bb6f278e7b6e9a0c58747f8b82524da814cf51b7f06c76ad4d65b502ac5740e818744abb295f78f15f8262d0b50ced1523f6d1a26939ba
-DIST dtoa-0.4.5.crate 14840 BLAKE2B d6e46d8d53baf565931d0796cdebd030a0f6fae8c6b88f738b7dd00db35bdb130a2b3778192e90fcf06183e706db7c30cc3e2b05909dabc04472e3f6ca9fca7a SHA512 7f9cd7d2e8f143c81896f8a242b09de3384d9dd6c375659a48b4e4f0506b2eb642c8aba6d500a989668760458861f2249bd82f5f3d6fa22d0ffb68e508d059c0
-DIST either-1.5.3.crate 12278 BLAKE2B ffbe3878098daadcef9a554b60b2904d8d4814ea38cb915ee0003d3cd11243e04813dfb41384545e7b180f7d542c7aa2c0a351b736d4f449e70fa11d0a09cca1 SHA512 5e283412597bc3a1341d42c6cfe824606e056aaac82cbf3f662e7074ab74f1f80befe9de1b1011ce2dc970a0ec159ade5ed5b3e71c9984facee6314eac20d0f2
+DIST dunce-1.0.3.crate 8035 BLAKE2B 77e560f0b9d28dd51865b8a49fea832e0b530724c6f6fce9ac981240ab247c8fc564d951cfc236ae68b04daa966e59f23208fc1c768d5c42afbc5cec0bf4dbd6 SHA512 3d775fd99d74462d5bd7dbec65c196868c20befb52f04c37ea93f3f67d33cee6062534342abe20c01577a517ad4b16bf15b08a09bbb2d310fdb731db5b1511dd
+DIST either-1.8.0.crate 15992 BLAKE2B 5b9254d54ced1f23447cc78fca74f12085c37e3c2da441b30521819025ebb808e8cbd9cbcec811f8b3951030914c1736b8bda61744d1323af8c5b8b0a3ef3ee9 SHA512 5089b218af067b51ee39c085568a1a6f542e8f68b362207bd7126cbcd2b76783cd21cc1517a1d088ce4dad1714be03a3660f50e9498a0bb43a8676cd7ec490d2
DIST encode_unicode-0.3.6.crate 45741 BLAKE2B e1e3792bc2bf9db7df33a516d0d755eef5eff1249aa9b2fd7f0dfcb155786c566fb619c9b2d73425a8625c8593988b117e9676c341f65e8795ddc838bf9881c4 SHA512 64193d6ac75f66d58ed864169b5d6228ede36dcf100614395e086bc8e847a3ddd287734d88e8ed50f38c679a99c80ec68449175a67d8ee03b02ec1cfa9d55e77
DIST encoding-0.2.33.crate 88798 BLAKE2B 4163e26e6f38f7fc1d7424f1135fec1dddd2af3d6dd5f5bc6a5edc3eb3fd56af56858cc0fa5ed6a241b55882807f72f2e5d2940c9a7e5c4c6700ef905727044a SHA512 10c186e0f6ffcffeacb11a66fa39960454955b4827dba03e13d9ab5294bf14e77faa8e64956d5c3756fbb7e930081b7b301db8ad6873a6e8d44a7f9d98566e4e
DIST encoding-index-japanese-1.20141219.5.crate 91495 BLAKE2B 4deb91b0b2dd1b33bc4b43ac2ec31df0552344b1177c9e504481d62a706b1c187eb3f4e8dd78c62871aa58c86ab6e309494b1b7937843de6056f3d1a0120160c SHA512 879fa0b9a294f3a73a4b224318ce5e44bc1ad0496763a518cb9ee251a4cadeb08885df97eb72f27a1e331f36d46a96824f98b7d128d879c0639405a10e08b8e2
@@ -46,120 +56,190 @@ DIST encoding-index-simpchinese-1.20141219.5.crate 130962 BLAKE2B 3c1e498c170eda
DIST encoding-index-singlebyte-1.20141219.5.crate 14950 BLAKE2B 89faf849452f0fe78b82616614f43bffaf658dd81063ae5d130ad6eb64d38e0ee8a26ab078f8c992f0c7f3e1db768e73920482f5e3bd56b0d7370c72fc93755f SHA512 648a5b9dcbdd40184b6026f6d0593df3b75c5eed554c19a199810c99aba857fccbab2acbf5b047ff42a75a6a3f6e8211a07e70e6fa4048f07144f9132af7d17a
DIST encoding-index-tradchinese-1.20141219.5.crate 120862 BLAKE2B 727a26b32f2bdec20dfeda482fad4235ca3ded489a002c27d0c26cbb9f37ea81f93f7e46ee4750dfcd7385dfc8bc55669a0a21b3acdba2a1fe91b855edd2decb SHA512 3b23213433947af7c56e9ea3e4eaf937b8083ce7e9e481b1351925a6da647be6a037b505116bab08ce73727bec75550bccb877ead6cb7fb0473bb3bd3d40833d
DIST encoding_index_tests-0.1.4.crate 1631 BLAKE2B 65151672aaa863b169b6139c8e68065ecd6ab602e8fbf8b0f68a5e2af3f34858d363e5f0602f58e4ad3169ddea83d02a0f19a6d635584521397bee63587c9fd9 SHA512 0635e6a879d59aa3373e1c0cae6f61b9bd11138691a1113f3639a1d16ba894c1554f29a6d347353f02395508be4da8a4b16b17db3339cf970a62267874fe93a6
-DIST error-chain-0.12.2.crate 29761 BLAKE2B 2de434a42d2c62845b0d0801cdbaac09b70bf3a7d940b91814efb203aa686a31a77bb36fe12170dbf392cf0fd6df75b46eb0937214cd8c280cafde721e6535ad SHA512 1a64c6813f07d23b091fe3fb69b745711ffcacceffc2ad5e1bf76917ff15d48ba370d63c886441a96a8a88cf645224db46a279152ce6b76878bf8699fbcb43f4
-DIST fake-simd-0.1.2.crate 5398 BLAKE2B 40437b18ca7b77258577f518232dcf67e2bf09b64234dc3f02b9eba0c5c1fede8f8d1dc7cbc112ce80e4f0bf317387d1b8046d41a4f83a7c54981fd2b71fc8e2 SHA512 d57242c54ea3283185eaecbf8d96a4c9decbada3ae3aceb516a79710be9bf038a6e06a29b9ba4ebcd41b8f42943a3024a983ea23e36b17edc445a8c4980f2893
-DIST fancy-regex-0.3.3.crate 63336 BLAKE2B 365bcc78e68aa5e5c61f76695c93178892137ebcea24e63c74baad2ed2b9bcf928ec82a1a058aba1eb837cb69805dcb44652ba62e4b0cfcad40bb5eac85e92da SHA512 6451ee6a994f29c1e10341de80e17b9c208b62bf1ebbe3cb90fd850cf03e4b43f3cbf9635357448d5eb29b98291b3aa6c564dedf28299e985a120f1ee7424d5c
-DIST flate2-1.0.14.crate 74183 BLAKE2B d3ef991f13e063deec70e782c07d064b033c50bebe2d92fe648cc21ff45e1716e7c50eff84f3805d3b11d7ea3510cd97d96b75b531c8f03b56e06889867dae08 SHA512 d70ee34d21b345529149b95000692e2dc590e14924d862cefdf926e77bb6e2572a99d0cea76fc0661d1149730cb3914598c1f500bd09661338713894b9a19152
-DIST fnv-1.0.6.crate 11131 BLAKE2B 220cf5463749b21e1560419ab9b1f235de08dd548c4a9a7fa6190d9516ce7db884f877b67174ee50b66b22be80d3be73ccafca80e06e94e0fa6e96fbb94475f6 SHA512 f1356b3da25f76cb3ccb4336ff54d4967f1dc7523eae6cba21a4349b8ce563516f6a2aa10d626cd5bb6046b55ac2f246e61e4e526a03fad5e78d0ea174841844
-DIST fuchsia-cprng-0.1.1.crate 2950 BLAKE2B 8519407ab5d1f04d03cc946a07050db4dd7bc70e03894e35b9e66910a3be11224084a86ba45103fdec845e94b7ba4defbd7c5217b035a0796c0c4a94b9562cd7 SHA512 ea9f5beb0dfcb023c22cfc2b37ce52dfcf3a2cbbed0f79ffffc332878858386805c65dce8469a431002367562d857a6c064e075688540c27fcb4056a110059d2
-DIST generic-array-0.12.3.crate 18017 BLAKE2B 0d24e12365b31ba77cff37db6841428abf7f37f9722d629c168fd96a3a88390999a95e27adbb6aae697ca99bb9ecb4728af49d4166ea2bf89ad5ee09bf2c943d SHA512 75f3c19d3aa9db42909298b207564b2df40e7e8b8d54ad18972a833748942b5293a0edb881de894b58b5210c870ad546752c200710c5549144d11a4a0d7417d8
-DIST getrandom-0.1.14.crate 24698 BLAKE2B 8139227951eb65cc2bb7bba29291c0e8ff0b8d9a8e2d7eabb01682d1683c989c44b6195952ec7d087c338538c1d6858c45514822625266e0996829e8c50f3d17 SHA512 b5cb78ae81f31fffd7d720f9ea2b5917b4eac103711faf656a3a3fdd24ae5a2e671016d39309cdd11f902de919187311401dd8fe9e6ed68c29b83987de77c957
-DIST git2-0.13.5.crate 166321 BLAKE2B da23d425d90e117c226509ca3d5247db0ec395808e741cdca24506ea2daff95916ba28581055a1b628c12cb92bb72e1baf45f777e2e5c5f191309f90aa8e838a SHA512 a1833899e8391ae81a91786e7e57382efe86c77929ed334c51071c3710c3572912e62b14dd0c64c688b74f0366d074aee705702fac8437019312d663ea238c86
+DIST encoding_rs-0.8.33.crate 1370071 BLAKE2B 0e81419086ca6e18f2aba5194b87eaba49ddf20493fd6ee09d479db86306e39dff9b23f399594afc42f1fdb33855e070beaa1871794dc0b0371c35d296a6369a SHA512 20d28a4c0ff0710f911f510be56c2bc5e7514b76d370493d2b89b7f25d1c0cd46ffa64862e54fc472f07f928a2cc24cf9d790a37751cafafc81f263705aac4bc
+DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
+DIST errno-0.2.8.crate 9276 BLAKE2B b73738deb47d1f76ec91ffd15558126d32312647b82677290725669edb01b8f34a503172fad6518ebf0ffb1633ef0afaf0750982b9384a9fb87833d31721c9a8 SHA512 1f513743224cd9a9b7e4caaf33dab075a4a79efa90c9f46c9edfb0c8600daccd3ad2677ba2116621e19fcf8be456954da5d611cbcea4b6f1410f7731828b50d1
+DIST errno-0.3.3.crate 10543 BLAKE2B 958e9d12766533ae9e84a60b121794929b9b3b1a8111aca9a2e914beee5784b64c946e143cd8031335ac9cb51069e51dbc9a6b61073a2ccfd3ff60612a20b619 SHA512 9524db39d0c9be287e0d2aed3358a86e961b2868717037212a2e9dc408bc73198ab23196d7923a9ba7e0e9357276075148f582e0325ad36ae1b212a8c674173e
+DIST errno-dragonfly-0.1.2.crate 1810 BLAKE2B 781fc26dce5c33d83b9a1fd9be2b2ce9ac2559aaa858957ba6777e143b1e44cdfee48e1b47e3c91a95075a51921d1a421d0b45eb3d8de827cf4dd0ad744a7d8c SHA512 f853f1e1b8dd0f359a8f9a0399b3384c1103cd090d96e2b2204f91a40d40a9eb99383d4aa6a11e5470c51557afacf452d4be2049600d4235d27f59870fa3b916
+DIST etcetera-0.8.0.crate 13295 BLAKE2B 33069c496eb846bc3e602812cd2ed182c660ae06b8a33ecea294a5ec9e37a1fc15391cadc9fde23f3e885e506031cbfb6b7d036b94cc4f94d42b8dfa8ad0ec7b SHA512 857151a9af143c7149feff2aecee8fceec45a7a2ff64a8c1a482aef89ce2f91de05123afd7d22d67cd664d9ec3800652c7800affdde4ec317437f5d925883b3a
+DIST expect-test-1.4.0.crate 13484 BLAKE2B 391c605f93c1bcc03faa0d90292271870b254e681d8c811bd0d25110948917a73cc9caebabda3617f32e23bfdd0120de4691315492ebb08715ecb18bf62481f4 SHA512 1a17c59417d29006860e0dcdc4cb15e821161d5230a46a7acd74455856fcef3e48d3a25a96009c910b06fa6ddcc68233c094b26802336f771095a0e77db106d2
+DIST expect-test-1.4.1.crate 13530 BLAKE2B bc83162a09c2493dffd45d8d8bc11d3ca86ad1d76583073792b411a5af39684d0e80e5183eeb3b87f7001cde46901b280b67ee186283d23425bcfceb6eb5730e SHA512 5665e7bc640fe56f1134fcffb9ac80e5d6df820c679b768a0d68d58198167d3ff0893592adf88299564037ce72a198c6c8cdb33f83683ca5225e329494a2ee52
+DIST fancy-regex-0.7.1.crate 78178 BLAKE2B c5887ef60d0427b5964cb296696749c5dff6877c0348c646c97c318739e9f1c0f517b01229de11656cc50ef702240526248ffb67e9aad91d892a39ebaec5035c SHA512 533cd4eb50a1a9665f42dfb0c6f4e8c7bbf4f45eb50abe023e44f0dee66a9e40ff82784b10dc9e1f4aebd652efebe3472fd3ba92996dec0932465cd2cfc932c5
+DIST fastrand-1.8.0.crate 11369 BLAKE2B 93e911ffcec559e30b2fefa44c4d74d1ffa9b8ef1904ace608b8576210bcd41a2b4c7adffc00cd3bb40996110d07316cf8068f4754a879c6cb47e3d41304d406 SHA512 82cbc2b29b97fa3fa2c9372d3e8c390586a7b39f6c7d8c45f9b779bdfdaa2e8a3b44bc7bfcb3367c18120726facc753c9827cf63a8fb4ddc2667509b16333cb1
+DIST fastrand-2.0.0.crate 14402 BLAKE2B 8bf830151ec616dbc25f216265722e39f8a2cd9ae036b0904b73775a30497368aaf9bb7f49890c330024c3d9b8084749c91f601b60b53bc8cef2da8b0aa71322 SHA512 9449dd52e4b722d5747f68f127843c0d1a402765c2b6186b9526f8ae23293cb1f6b50adcbf18a8ea768292642184cb0eb42b1801d20f6815397903f9977f3cbc
+DIST flate2-1.0.25.crate 70210 BLAKE2B 992525ffeeb4433a222487cdfb0c3927ad77f914e1db94f612d80e81faef4a2c955c755c2b800251e3416d0b22726d5f7d7e432a81c3582c54b7de95ab7a324e SHA512 d81a463360ee2778f609ff297e04548120d1fda1f9e020fb2f429ea51189b8fe6cae57252fcd924d71fb65ad0f93ff7cdc7235913f8b78fa82925939cf884af7
+DIST flate2-1.0.27.crate 73460 BLAKE2B 5603848098ac02c9c83893df79ea9d9ad3df5b7e02ffa155ac74602bda7e28e14e6b7de2ff321b38d24fa3741ccea8a4c811abb47690cc295f90d4cf2bdd0bbf SHA512 e76e76444686433acabd16513e6e5860d4d6fa53a810f37266f36900f154acacac6dcd77b0373599a6d33a09175f5f02146d84726b982c59a78926950e19ff09
+DIST float-cmp-0.9.0.crate 10102 BLAKE2B 46bce5f7e838a947bbbdd22b085435e795b67fd23479780f65bf1586a70e7a35f04f9af086be98bff24e2583eeac7c9688727a2ddbd1ce978526dc01abf67dfd SHA512 f8dad12ecf8a278769054fd78794999dae8dedbcfde5e77bdf6cea12fdeaadeeb2f1f3ca62df9aadc1bc3f61457236c4854d6d6923ad6d03ae7f23af600572e8
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST form_urlencoded-1.1.0.crate 8734 BLAKE2B eaca73d73d16242f3fa3e38e23531c67c01404697bc7b7eb7c64fa04167dcb403a41818487fc46c5d9118842818472d549a2f5fcef5e4d962461e1c103d895d1 SHA512 9e245495dbf235b147e4216b313f2e6a96357d2782a66d71c08c2902c6a065701ca8ecdbb6b2035983a83c44cf36c921b5c71d63af0e02dd39bf5f8347117e11
+DIST fsio-0.4.0.crate 1139854 BLAKE2B 59136c9daf6f515427f8ac44f7f5b9a075ae764f12c755e31ba277470e6fed428770aef99cb06037d131a95c208dd26988f3961cef8d37a9a1a575f4d4b9b8d5 SHA512 a7bcac0b319fa446e9b02d8e0892cdd5fa898915674f1564546fe7e339ab9911d72841eb0d18f0201f80c0ae2f638b486bb08e965346e4c433112de8eb45036c
+DIST getrandom-0.2.7.crate 28854 BLAKE2B 30c054361c9b1d9f95bc505e27e98d8cbb685f37c91437948d9d26f22028e0797a7c704d88912c1648b3704bfe10623a8c5e130e81746c8f85848b831771db80 SHA512 01803e609848662ad8650cf451dfc2c37580da0b7b5e0d4cc764da6ded253cf49ae42a433b1c53e89773bde00c1ccc136394e58ed4548e7b5c0ca7e202e857e1
+DIST git-version-0.3.5.crate 3203 BLAKE2B f73d2f076c79c10c7395e584d811b6fffc7f348954c2c142099c48ba4440d257eb1be59ff26c3a61f37a6bc119afd82105a1697c37f8d7b973f3a43108f099f6 SHA512 7017d59ec7eef1d69c333ce8bcdee355dced8e912c4b5eabcb2abb93f6075ef3d1fd9486661d472c29787b75d7866fc49835d1faf5d06e42837c95c856398629
+DIST git-version-macro-0.3.5.crate 4302 BLAKE2B 39173a36199b34cec11a1924faed795334586b21e3042bb91f3d38cee2d8b97ffb5bb4dd45a3c192d8c1b8d2b2a5bf4e0d3b23927b6f4212cfeb7cb9dbb16d4e SHA512 319729646469ab6508e16e6f3b88f588580fe7089479f70522edd6ac7eadb3c4576f0a57863bd3927d1ada693c3fe3706dc6a75e6cd75723db7f23199dc69ae0
+DIST git2-0.16.1.crate 199956 BLAKE2B bf187855d683b13ec8ec0e103f6536fc2d8321d2a023eebca907a15f0bba760f833cce4a4b0958804675aeae1ee9d2dc0270edf02c66cc2d7231980ba7ab15d1 SHA512 4963798b6d9fc087a4394515b0f6da0a9e01fcbc220dc3d1880a277ea0487083ac05c0bc3a52a537885eb065a9b2209658a199835457b38c94e45395ad8d6252
+DIST git2-0.18.0.crate 210978 BLAKE2B 41fba81bab32d0b31c93f1b579eae61cdb57b7900b8d8b3dd39a601f3ec72820d2106162e89c3e5300442ac450dedf556b2b53c17610dc899ab920cc43c6077d SHA512 de8179c0cb27abb6e870efa27a562728926ae862820a1b71e5c47d2c69e6dc75caf25c0706564a8a5d47c47a2ba0ae7a164d68e88c16260214cad6c672505c70
DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
-DIST globset-0.4.5.crate 22830 BLAKE2B e4e1c4924577cc8ad14f3c76e49821b2f6050395e7673cdf4d118e7025e59e6df1be807762a484ee80739121b14bee8833c10b52ba69a13537ff9919f1bd2e3f SHA512 8fca9a19953370aa5d13b876a254f71ad6ecf0df218d8f5598ff2328eec9676be56b3a44d898dd031c8d4328bda939ee198f9b8dc7e03b45a1609b6f693a9088
-DIST hermit-abi-0.1.11.crate 9203 BLAKE2B ff6f5325f9439979db9b592a4465f343399991e7ec6f0f38a5ab8e1621d83b1b8e9f46b3ac4b6a76f22364367546dd6fd8edb87556eca4c690f93ea9d09126e4 SHA512 b44fbe8d7674dc5a610da9d2c58baede69f7b942e08c214131a449483bd41afd0d221be2eed8ce8d71581be066b1717ee6d80876c7621a10391199fbb79ef1fd
-DIST idna-0.1.5.crate 258735 BLAKE2B 31f2506f76e9bbab68c0da6222db214865dc37994851d91eab8c6e7f0220e6bcebe50ce3a571866bc03f3ad1b337f25c3a02c7e7f1494553d91e85c1bf042950 SHA512 217bc49f667242bd89eff708fef395fd46cfe3d24440bfb76869086fb93805c4f49d718251fb1c35ac40d5588ec98cf8b8b516fda53d6d7fd3da1ab04b0d173a
-DIST idna-0.2.0.crate 257203 BLAKE2B d26117124891f90b5e36af291c9038e2f4d46402c41380a6a89758459fd73839137e6faa401502be12dd81292cd9e12ec82fc611c0ff7a150510d19010767558 SHA512 375d6d73537a5c9cebfc850a2b561d57e748d80059ca27fe5e35c058cc12a5938cfbb39a76cfe57fbe589f7e36f89ccd91ccdb8899458c322e277c299293bc7d
-DIST indexmap-1.3.2.crate 47144 BLAKE2B 70330e3a7bca371051f871b029938c1c3d6507739cdfaf348347a811a69ee923ea9f5884b6375b0b95d7f06472e18be3652ce110ae91cf723d609a01cd4f9dde SHA512 f3a618bbc0274cc9c8e25183448b1f65db11107bc72debbeb178040ab3f5609e4771df00bcd0a9b8cd5f395b982f7d031dae7c3bb8ee71d7abba19fa21534dfb
-DIST itertools-0.8.2.crate 89203 BLAKE2B bcf8c00da5033f36cc205708324fd8eff083d46313ee84f567e4f333d8ac1ebe44474d89835a312a5357a48659e2f51d34d2194d548256118943999a3da8ebaf SHA512 325d87a80c0b217469762ae958c46925d284b37ddd987c3ab977c864f426dc6e4515701864f12fafbe49289b45b1910906f0e7d884ba8aea217cac521c3d1ff3
-DIST itoa-0.4.5.crate 11194 BLAKE2B d8f0e2aaf62152c187e0987ab4b0cf842ac13255262a9ccbf8484d730ea5397572791c023d2363d0562c18c8efd2418680583e99a1f5d14450b3f0184dce69ca SHA512 79ff8774524130a4729d5e708a4a4a837b3e5052384a12c22db4ae3e208dc4391ee185365f685137a8ba55ea7dc3499f8cddddb2fd98b84177ab292c264034d3
-DIST jobserver-0.1.21.crate 21228 BLAKE2B ab1a6496d609e19235f022e920495e708571116e90f8c036edb5f7ba270c2ac938f7571e89f3fb714043c87623d4cbf1d404067ccac6a8b41e4a6768039cf02b SHA512 944249819e1e3dd09495ead941330e9abe439647c1e66ab7e2140c0c9e100b63f4f792fe06aa3c86f509f057df297ee2d35df0ccdfd4bd6a115b6a44076237ad
-DIST kernel32-sys-0.2.2.crate 24537 BLAKE2B dfc4a1e31d3ec9e2ac62b890839919fb7fed1444070c1dcd75bb75acfb53556d6cf2eddf5a6639e7852a3df2a0cc715c5ce1d3fc898ef16a1687020d98f715bc SHA512 682bc7c629aefd035966a2873518fd60719121cca7d63d89d6c97ff5306f24d8b5055a3c91b4eedaec22b1d5dd3fb8b48ff7341a05bbd72d86e06c422dab473b
-DIST kstring-0.1.0.crate 12465 BLAKE2B 8c004826a246e982e5e62ac300a056897d07f543d6db710e276cc0a41e62ea3ea64cd6d02cb08693a7c649be8f9eee7bd0f0b7402b8a2cce6f039d7959f06fe8 SHA512 65529fe62435a77504d38e1bbb5be911ff350c445cc568947aa9e1da254655eb0e3b5d38ef351d4b331bb9c97917a6b4b2bdeed153a9cbbd1760c47fd7bd0206
+DIST globset-0.4.10.crate 22923 BLAKE2B 10bb8db9ceae039143e36c2f1c3cef92848277ae7b4bff6669f1c25aeb3ae1d322da7d88ec13cf9b0ba5edc0e27a52843a5672a8dac225d3c37bc1785c04e6fe SHA512 85a1213fd3ec55ffd87fde25f4cdbd2e8ed4056132d3c516eb117f107a744d733e1ad8fa06f296a60084a23ee968c3c0899399fd3ab9bbf72e217638a5cf165e
+DIST grep-cli-0.1.7.crate 18936 BLAKE2B d208b33b04e497bd85c0224efa132ccf9a7433a3195726916f906c639efab139e212220c92a556b4ba4198272fb1caab1795b595d4f524c554ef550c02589b21 SHA512 3465bc8831c7e67158640fb2d8b98673f6623591a7075546eeeaafe4dd39ae22d2241143e08cdf3409b8782fcff872655a5fc94d687d9176ff11118c42a92252
+DIST grep-cli-0.1.9.crate 19035 BLAKE2B 07fa69b10ef9f003f0ad27e88e5664fe05cbbd9041ca85389fd10b6d6c6f8c7499f2e4348ed2a2ab03eb7175b3d5e89aa1c9ab12029cfc50e84d139cc3295a33 SHA512 572cf0555bfc646558d9ea1dbb5e319eef36b452dd563ab11e836b0863a4345799ca393e98bd2f40aff4acb0c2adba77c59151d7615e29e7de7cec83d45f5c07
+DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76
+DIST hashbrown-0.14.1.crate 127570 BLAKE2B afa9268513caa93fb141e69d27e7d65e72b9232b57d91e499f36ea4ec89d65bc6c8cbb37753ed59d149be5a2d349028b1fb0414c6223914366d6f3f31619855f SHA512 170bc233c9d23ac7e6d1ec5bc965d19d9018d434abeec19bc9f02c48570eba9db4e26035decd9f874306169d2640cad7be17bbbb78a81c145bb01bda3d51ee9c
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST hermit-abi-0.3.1.crate 13793 BLAKE2B ece7865a09f566a95bfba5f1fba380bf12836c3761fc6d5a3d5543d3e50ca0eac81bb567d50b5643849cf1a752aa651a0db4c053c60faa8f1c74fe2f12819d71 SHA512 a55fe9230e4e8fef63284befff74108f206e76067257439d334d33068875368902dc690926a1feea15611f14123073867d7e9cd21397bc484cef849d6e1dfbf9
+DIST home-0.5.5.crate 8557 BLAKE2B b14225f6e967ccd37fa734f50991a50065047f3814c4e526f3b4605ceb9206d4d12e189b4033ab85792ffea34a30f2b0267b10b9b0ed88df52c37f6ae1ecea4d SHA512 4ba97149d8f70e9b6eefc930292c7e62fab6ad03d5e4e6bf93d40209d3a65e40932c6f3d14ca579ed19ba33195977c60fc52b3d3788629fc760f41ce90fa1e58
+DIST idna-0.3.0.crate 271128 BLAKE2B cf8a2c43760f03e94953c6692423a12f28fe763aabea8785b93cd247b3aedd2aeef2cd99978a027186290016ed924db39d19fe7d397da1ab570be9646bbb630a SHA512 9b7cee27811ee52ed9bb39fe82f724742eef2e5370642b6c756bd134c8cbc20bb6faa9f296053672dba8a66f7356a08b2ca99f176407b173e2d566d85d066441
+DIST indexmap-1.9.1.crate 54114 BLAKE2B 71e4968c85d5b3fac550590658f9fed72c754a9443221fc804efb97bd39b5fca7f894ee67f8d2c330bf212eb8a6b5c85879cd813ed56e3fc43a54f0bb689af5a SHA512 7eac99056123332ad38ef32eb65235c810e8b4d051d9b0ddd5582348c9cd3b162d36defe8e46a532e2066562f224e37fae94b52b4649ee9cfac7673b76a2513e
+DIST indexmap-2.0.2.crate 64274 BLAKE2B 6b480a9a1b6a8a388535f13a71e3570a0397be2b417aa41da75f9e886e68f10ae501b9eb8efef038738dd076f43d043cb0182761a4d417d3b7de772d4018d05e SHA512 9511c8ae0e5c7bc591262343587c3a9278af049e7b57334e0a39950e791123a8bf7cb540bc4c7a3682e7f83f861fe3c5424c4aee9ac6269e68e7d5996af2af17
+DIST instant-0.1.12.crate 6128 BLAKE2B 728923f757c1ee4e4a7afb90e460eed81392068961240a538e5c6468e15a0b6491f590fb5f6cc46e6d78901ca232351f65abb9f2f230d8f4983c5e58c4011902 SHA512 fae494c00111c51c840f9dd6a10febe403e27ebb933dd16633a213e9c20f2bc11adeb431c71f8a6713bf88f270a010941e15d83df294e658791934f83a5d2407
+DIST io-lifetimes-1.0.5.crate 35939 BLAKE2B e52a66b90464bc799889c5fe32d8269fa125d5eddec709e2daeb9a0b5db20c5fa5b5f51dcca2b130b75b1980e42e2aa5e892e6133b9d7f8f0b3172856e6808f8 SHA512 73b884426e26c19e65e25bb44c6255f1c46178d946306d39088350151253c2b96760ac9df84a01609f50bbfc79680a58e9a2490a14f2bef2ca7d4c11f4faba2a
+DIST is-terminal-0.4.4.crate 7744 BLAKE2B 051334469f476582dc6443b432bd476e497dcf26ee9d6ed9bd8ab4521ef87184615a5acd2d912ad8ff0cb552ba31c27a706d009c32b62cece180414ddfe27c9a SHA512 7b5906277f65876a6ef66b25b0ad44358a8823c1f69e4700b31418b78ed37398d37bd3e074e82d9fb4dc18863bc316064dbab70b542849fe3c5a079a7334c9c5
+DIST itertools-0.10.5.crate 115354 BLAKE2B f24734bdfedf1dba48554e39b43669efcd4a43656eeb2c511096060daeaf049e1ad3eab232e757057750ce94aabad9fc8a0cf29a997edc6c4b167301c3443391 SHA512 d03c3cfba9841776913bbb6daad0c8945830c155f32ae4b48872e0f937c75a443f0ac9a0355f43b359ff75232f38b15f4f6d446b4be30b00b4209cf66ef770c3
+DIST itoa-1.0.3.crate 10481 BLAKE2B aa516e8b2fdea4e4e1260a0783fb7aa2672c1bccdf519c45c608fe3f3fd4fe652d7f56f0cd6eeb6a56bc324c68ff241f601660a0dc3c5ffdf7fa239f470078ec SHA512 1290c027ec8a13d2d15ace2b58a1d1a3a18730cd5fb55bc995826b8f4d04ede650b8315a8905f6737c4c4988690ae03bf32c86ab3a31ae068a67d5be04cd618b
+DIST jobserver-0.1.25.crate 21888 BLAKE2B 2ecd417446f9eb975119af4ec74c9b3463d061f5348ebca380f0ab9963ccce6dcea8c1671c7701f3f867c7e49d0ec130809a37bff466261a2fc75e80cc01d15c SHA512 0c014e7c72a070e3332463cfa6e9c9095d542a68f8631150bad0efa3706a2d6de0347bf7d1221cc3bc0f3d5f9840fe7188aad949559375403b929d43b4a524b7
DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
-DIST lazycell-1.2.1.crate 11691 BLAKE2B 9b1d6e9ced918aa94dd5dddcd3ffba59116dae922d264180ac36c288d8a6dd9244324a7c3050c5991b216a241e482ee17b2e6d27527b88339b606586128df1f5 SHA512 de74ccd6a3c32c360a12a51ba1d51d6530130396b37d63350a960956ae0ba13e9ac31e2bb70b61ddf055fdfbe7e559b20a38415cac3906839684905a01256ff2
-DIST libc-0.2.69.crate 472393 BLAKE2B 41a9cd242ccc994c69da10f091061b2c31ed6a9c52cadb8e82fc7c5b7b5dd61c81ded5cfded098721500c87b021d5d79766571a7dd6fcde319c826e2e4244d38 SHA512 2addfd505e0904e18a600caa4e695536d2f95292af25906925066616bd588de9ea9abaae45bc8427bc6857c3b9fb6c4288e4cb48e3f1ba69ee1d7be8f3b3bcb6
-DIST libgit2-sys-0.12.5+1.0.0.crate 1549598 BLAKE2B 62c018ebe05a525cf138f7c412f34d38d273b6a9d38dc18af836fe8ec013a7dfcaa3b11c5b619df33028b784ec393ecd5f1867b585c8acd063771915de77fd64 SHA512 7c6b9aa2294bd9ab752ed44d4735af7741b9d16a2e84736c21543b842b25278909dbb434fe59c83d4e8b705f7d4e21c172fa5359805522a0950d95f5249bdf6e
-DIST libz-sys-1.0.25.crate 650151 BLAKE2B dc11dc65c95f6c1f409ffbd0c9b12a809eaca5899da1073d8f302a752f9bb538b419cdf2f540b34b6f72c7ac36719e8fe21a1480533829cee305019304523520 SHA512 3c1d0754230c327876fadbaf3770f52282fedc6b373c92fba386a80261c577f6bea2983db7d3a40a231fbcfee40e560d8f738d25b634d270e2132b3162497547
+DIST libc-0.2.137.crate 606185 BLAKE2B 6724b7ddc2460fef1d0f20efee8726162d904b92987f9de2d3dda06c9cd49124c9fa43a9b39e84d78c03d217ed8ffd30e0dc55a4eb31970413d56fd58ea00adb SHA512 1ef979dc59a7ec4aad7229ec5b40be0ec9a8496c7a2177d325db62f3eab00d72c8d2277d517c0093e0750de12fbb4e45b67133604afeef9153b8e1d4aa0baac4
+DIST libc-0.2.147.crate 686772 BLAKE2B ab2f0c65d071d46b8b88149add1c8429237ef6d9e0563d56ee1adbf23e6147dbb57fb68fbd02498f8ec75327693237a47e5e5259615ce8b0d5ed7a03bbf4fffb SHA512 bfb3c230b59d623b98726f92b7c3f897b47ba3d22fe9834c15f5b4c1b662289aba35a0ae3acfc704ad74696db8c691ee007b9cc6fa03ae65a18eb6bedc81931e
+DIST libgit2-sys-0.14.2+1.5.1.crate 1742257 BLAKE2B 028e6bf6980d7a54b76c918fcd499684869f14cb160e821d6657e59925d142655dae6e018c9f29389de304ef6109197fd71e6e6752d0d0a53152f2c4820ea1a3 SHA512 eb9602706036ea62ecbc08250f297119a1c51ea09ea86ae8630dc6d0521b74db96d8eccc4106343572eb70d9a156415c017c6a91fb5529100fbed091ff8e7921
+DIST libgit2-sys-0.16.1+1.7.1.crate 1773446 BLAKE2B 050b7832dd48c642c3a790481a296fe1b15bcfbddcffcb0f4792735bd135f6c499e5b6f90fe394ddd891c2c055af86041f0b0fcac26832975755a432dd0e44ac SHA512 746e80309af40af7f6d11a7d45721054a6b7f456e10af5b25ea5ddc3ae1f8d934196e9e3b9948f7d7b41b6d9dc45a660874029a39c1c3d67307daebae3f2cb69
+DIST libz-sys-1.1.8.crate 2481844 BLAKE2B e890a3850aed5348afe7558168c7571564687d6a7d3567a4d53ffdf79444d38c4d70d35891e16f496f31169bf73b669534f5fc584f9ec520b518dda05e80b882 SHA512 0766ab72cc1414160ccefe4812e6204cbed1341607e5d17607f24fd4ff81dca68d8f2cf43e1d27f332a508d602bff0ad340c4c647a5d5f85acc120c19cfb4100
DIST line-wrap-0.1.1.crate 10010 BLAKE2B 8f64561931efdb39ef256b90ad12573df76449afadc11f38b5431c1fff73da3ef1dcf9ad8ba0c30cd1ef1b0a8d894a7b34327e4a5eccfea08051ae5abedb483e SHA512 31976e14355317bab470e6716542d3cfd59083a1808bb199dc2eddd51d05fab122ab054783d0996c1feb53bdb316e6fa24b34cae9ed8e8cdb2702bc43fd805eb
-DIST linked-hash-map-0.5.2.crate 16109 BLAKE2B e65a12161dd8b4c0ca49d25e20d0e5b68c411c349c00c6a1faa01f4db4b3f4c811bf9b64947922b8ab900a6bcc90db30e8a6d58ba9e384201879556408803e5e SHA512 74861f70ed09b119c6db1b0dc7f7c8c3483c2824955bf88ee892b3a3fa1a54e9bfcaf7fae0cbc4792762e330584dd347532532e1a0e8a8bca222b5cdb2c7cf94
-DIST liquid-0.20.0.crate 53764 BLAKE2B be3f7e48985cfce462cb809a31e24e92e4f7ce69aa1f023debfcf4eef276907a07a6b2d56ff8e95ace041efdd161cf1214d6ada495047bbc45dd517ba6d3d605 SHA512 38c51b04d5d5c25753bb26ada44dd667d3d9fc62bf8100e2ffb88370cbe3863fad8cf9d2543fd7e5fab079afb798bf32ed784e21dafa1c4c7faa5ef8b5b10136
-DIST liquid-core-0.20.0.crate 52462 BLAKE2B f2033aa5e573b764ecf3af3d74348723e4a017a6a3b1fea4261d2d51352f515cf2558db1e62493f7cef8fbb53e6a9ee2c5177b66a079da5d5c026d78295a8d83 SHA512 46bcc6742c871ed69337b6e4c38872ac745ea243195f9bfa9ca412974e03e704dd367bf89f935817d90b0bb2e945f88b4678d5ee6546aae39c56e94d7966c745
-DIST liquid-derive-0.20.0.crate 19587 BLAKE2B 12de1c4c3c599926d7972e60dc40dbb2c1f3dd233413198ab2281f07a9b0337d3ddf3c527aa90162eb33fc07a54ac22f6c25c903cc43764d0e2e457f2ae7f4b2 SHA512 7b9546251eb539aa47e29fdc206c3517c7e989190fe9e45f1b1b216b3a273476034712400cb836a77b355ebaec742184cf8fd425b96636aa3c97193dbed25234
-DIST liquid-lib-0.20.0.crate 37174 BLAKE2B 977faa3272a14260cd9a2f9503c4f0c08a929c2f0f030844927c75cbb9289948d0197459adb5bd73b1196c9ff604c08078b9d5e0a1d2f041304926e75cbf123b SHA512 ca99b787ca70f665d2982dae3425483235aab43c345300d25a3664bf130fd59b364d522488e6460d6e21b97d49a00c64e6ccb551ffcaf58d0aba295c992695e1
-DIST log-0.4.8.crate 31297 BLAKE2B 31037fdc2fc94f4ab8a6e89a251b0bc29975027dc7efb7cc86a8e848dfc8e2ae50acdb177b7ba9f7c1f20ec01e50798f89abb772d67a33f1b060ac617cf9a8ab SHA512 0b71f97d5964134b5eea1332347e177806b2f171d0be5c410c0ff1539470b242ba9f0933fafd853e4171a43b5e373a150af18918924be431c7216022553a8a3b
-DIST maplit-1.0.2.crate 8871 BLAKE2B 3cf975d35de2d2fbd50227a6d2c5e72227e99197b620c8f29be97bd3666ec162deeef0d9e6bd327a063f175201beeb73c4ed27272449b1df0b78238b2d36ca22 SHA512 917b5cf665e12b687035c895b60b2ae05622963f495f5693515fd24d56f49e95a06ffced68606d061bd20822c655100035930673fd4b0d4790168763b6961a9f
-DIST matches-0.1.8.crate 2216 BLAKE2B f18176110921b1cf6e58d52d12f1d1a3455ce2dc04421fbf1b392f66cdd81a88e924571fa27e307a06301d83b04f3b8a0ca3ae40d2da6f2decb8aac4e2801fbb SHA512 98b58f6a2694b03a7dd1be69ebf7e3ad14483fc8e4cb6e6c26a4937e4e660e843efb4dd04a7312dd9659ca02acd3775678f73b8faac44a76ffafaf873c22f590
-DIST memchr-2.3.3.crate 22566 BLAKE2B f952070b98ef30f0d2780a6efbeb36d295710734f678517d913a8002cafebbd3cfc38975fc4546d306efc11bc815764d14320af3b7a2360bd46fc2ab3db9efa5 SHA512 922e05da920d0d94226857788878ee5e31518cd80d95ae57e1d7ecd233942c37d01565525db2f1dfdfd5b3b1f81b2c73eee058cbfd745cb4e1519518318df248
-DIST miniz_oxide-0.3.6.crate 44717 BLAKE2B 49d69fee6911ada1effe8ed73072d7815ed94a2705276698a178fc77ebf8c9e92eb286d7d71727a894f46e605afacd620d48d6aecf8975d2366e46e2c8c8bfb8 SHA512 d041b41617ae0e614f85bcfeca31d0c9d031c24942f786f43166e34ebc37bd67e3b9a44779e74b119e3d95d288d0842736ba709dd2faa3cb418415e2c86ccc93
-DIST num-integer-0.1.42.crate 19463 BLAKE2B 91ea6900dba5a38bc7ac4de0db8706f5335baab636937e9efdb1b82ff0e8ece4451503de3ac9e473a4dd7c70d599066f14840789fa88aeedafa585f0f98ed61a SHA512 8c7e0529888e18b872a634e8983034b0357143aa72914b45c02ee87447204296970e9b1ed078d9436ecc779f25360b1a1cfaae5a9bf7c8ffc68793d7c25593b2
-DIST num-traits-0.2.11.crate 42000 BLAKE2B 78584a3e8011391b47c7ce45c5a63da5fee88aebc2ee7ae8d788e22b1d6cf46e31e70b7bf6ae094d35ed8dd5ea4f91472e6050c526acff3f181ee383fee139a1 SHA512 12d73656db34456a30de7538daa1efb6e6f61353a0e274aca388bf184732402d8eb8ca19282fbf51975e0541b5c8d764a0148abe346061dc81922d5eb12592e9
-DIST once_cell-1.3.1.crate 23800 BLAKE2B 0dbb0d62ef11454bf8e6e56ab213d3abbe112e1a00d3b82af77e381f01818e7ca293fd2bd95dc12f887d3e5a4425546c40f4c062a349ef99ac3b7c0dc94254c0 SHA512 2e326096216f2b02a922cd2b16e6cd444b9b34ce46d8f77197bcc5e0988f7d4db8f2bf56bdef8daf0a8c9af7e93100f9a46bb434975ea7d4732e3ef5ff561a92
-DIST onig-6.0.0.crate 30200 BLAKE2B 9e9ea6ff6345db408a09ee78e57acf12ba698bdd90c8a41c7c9a9e17df048570f6241de2ec3be8fcea661be66665a3ad70526e24113b09ee97d87700b1eed782 SHA512 f5ab1586c23a96b813300d0478c6f4d401f3a6e44c562f72cc251225374811d3d89ec77b2660a10b5b52d71e4c1656f1f9fb9ab640d227af308401162663be69
-DIST onig_sys-69.5.0.crate 614674 BLAKE2B 3f98097a709b1e95e84404b81ea104a4800e0b9f0713e988c6417c36e578b8148a8b5bb8c6dacd2d59d760ed79d8cf1f93f2ae2cec7ee8abfcb607e5dbb92538 SHA512 644019ca67a89790bab5cb173f5499bf3b0af5a4c39e027e79a63e5752f471c6bff86f679e1c86502b6c3cf795c23cd461a87c36b2eb687dfe21e9d232bcb7ac
-DIST opaque-debug-0.2.3.crate 5643 BLAKE2B fc0cf1ca373f2eef8a37f6d7eb02acc7cbe4d71f7844e01453c036c7595121272c207023f43ae5287b343756ca0a8bddc53c5e0186e95c75c019268a5f716087 SHA512 7aa44aedd3fa5a6ed3d60239c23dce4cb7b27693e110140e6b332579bf1c1b773244f12271ced975e53caf68f3f381a7edaada573efb982d2e13d638a3a6dd40
-DIST path_abs-0.5.0.crate 31108 BLAKE2B 5c6d52f445ffa2f1e87e5ee078b79bcc9dc709fa97a4246759ae1ca476842d87943610ea441b504212bbd9d5f23dcf9482d747294722df7dbdcd93ee187fba75 SHA512 978a3a4d769ebf870ac619f10615cc2375f740b6d329f89bf9af26dcf3e361b4779e95483b4ae11d3ab4440dd6392f7cf9fd5a94dcfd434f9a77a8cb880bf2e1
-DIST percent-encoding-1.0.1.crate 10057 BLAKE2B 6dbfea557cb7a604a99b6fa694ed24b1555fec34bfed54503d98fa4b285a91aab1405b7156bd00be0001b10bf15706878b7bfb4f73cc34560166e0e8f004d944 SHA512 6e884d7172e8cadcf6e39056c9f92b70252f56a8062af0e792179dcf990344f47553c04e2fce84841f20f5c28557d7768727f60c862b9876d29cabffd4ad19e9
-DIST percent-encoding-2.1.0.crate 9748 BLAKE2B f3ff35ac683724b15e40c85e0fb8ececb07b61beeea82b7020f02d27df05a8a3535f157b3cd688533e414d6541de7de8640ef4756706d8061af0fec94ba04ab3 SHA512 98af4dfa7c6a3cf0d5aa929c436f9eb1ba1b576a944513f1284e6df2ad06be7cab9eba145d888d50af88f8c970bacc702b323041bec6d4fa1dc34095186c628a
-DIST pest-2.1.3.crate 77986 BLAKE2B 210638cdc2cc5e389d2248fbc06b8163dd5ddd77974a04d32f674e7f959acb3c5efc7f26100b6ceb7c346ee06a39db0e11ad5b793a1bc09dba679e6a5a4aa2f1 SHA512 08a36d4571cc0e912ae87e1f2116424b3d4139b653dd9a446fec8ff39cd9a691e8305c86cf75d227b5349197ada4ce79912ac25f0726b98a0642981ac4673c83
-DIST pest_derive-2.1.0.crate 14049 BLAKE2B b85c5a625579e9bddf22ceda1ff808e33989d259f07ddfacaf833ee313029e1a8a01f824da915cfd3d57de57394608a9b506589d642be30e8d5e6a3afcac6a9e SHA512 4d554921b35b6c2491f56b859d389e93459552807df6ff989f9913a9314171e5b6eba93cf7e03528973d6025b663cde7b841d38fabd8197c33beddafaf83fbba
-DIST pest_generator-2.1.3.crate 14227 BLAKE2B 2fba3732d71e6036a911e6455d12ec7f4a1a14331b50f762fda1d6dd244269106130b72025d21e684bdadc0b5971c4b19ccf1f113067c26aa5f1ac71c78def8d SHA512 8be05ef3fd59dc4ccb7871388f8e3cb24cbc2f64eacf7a32fb887f1d8911b528ec545fe78bdd7beb03e2c04eb7fc0ad98ac9fce8579f95ea71cc280912f07c3b
-DIST pest_meta-2.1.3.crate 27818 BLAKE2B bd96b36d47e39d6f8cc6f07ab373d1bf8b8f9907afb8b3774f62677c800914f40a0b44531f50b065ae9d11ec77a940da865b5a574d0cb0d2dc51059f718fa826 SHA512 f31492b452b58c632c0c5c3e357ba2b41ae2b5816d0ec432c1a281dfc681c5b5c2ab4f194c1049938e671ac232d85667aab91323e986df4edf6093a4e2d47ac3
-DIST pkg-config-0.3.17.crate 14533 BLAKE2B 729b15209bbbee8a6d3854e30a89b3e6041ca3cf7b1460ff6008e37866e326d9ec8b4ac582c125676e31eefa048b143beda33432b95f00a8f51cc7fa33ee4986 SHA512 42be78556adc07dffa8933ab1436d5d6a776018898377d58dfdc9f961981f9f21397301b41536c55d8a3772bf74a38069899d1a5cddce5c24a032017137044bc
-DIST plist-1.0.0.crate 39489 BLAKE2B b7a968fdf07cab728f64f60a002b1cbf14946431e42f39af4e851469834c58b20b6555d80b51325552368cdacbba27d62c34f7c02da599eb1d06153e52b22de9 SHA512 e8d5e70fe882ce0c471f6a13ea0db897e10594ca28c8113814d7c38a3ed92c90f734ea45646ea12bd6f59c17e060d2269229d191ba9fc3d514e0fa7ce2bfb855
-DIST predicates-1.0.4.crate 26239 BLAKE2B 12ca05a2d98f9a4b6ad5442cdd8c5f5bd90a691d5f9c61389d710a7dcc88998b251252b9dcee4f4d8f742e1e4c00b25ceda57e39fc23b431fa7f04b2d7e64bfb SHA512 20f2ae6853e665b262651d4a2bf1fb70f4ee8e536f4fef2de79225fae44a4f32b4680f06f06523675e5af23e301ff58b0cde3e61c0e58c27e412d2eeec96fc35
-DIST predicates-core-1.0.0.crate 8066 BLAKE2B 71e70aec3adfae302287a1cd3d7d19eff8a697659d61ced33b89caa8a2a3359ab7251db012d973dd574abecec82acc010c5169d0670096af06e325761363c34d SHA512 024f997976ae618e3b82d59613f8b6c41b3c0b3b595b6cf38d10d2d27a11388e9511ca38c06d46b52a12fc19d3cec36a69ca14e1e21f316a719539e41c86d6f4
-DIST predicates-tree-1.0.0.crate 6251 BLAKE2B 00da28f7de9a7abb386c6a4425d8a2285d1ef22032476b0ac1bab4b8d34d2af69948f80d8f0498e2356caea3fe92ce352b58539413a8f0f052e9dbc26c96cc12 SHA512 29e1818b7cbcb7195dedc78e6a1436e8e8c88b61d43469952c4bba5bef7dbfd5b7f0dfbd9fd31f71e71cefe7c7b8c44ef361bff1a86f40c945caf48cbd87cf05
-DIST proc-macro-hack-0.5.15.crate 12806 BLAKE2B 7c6beaad31a2da23028e0a5517737fd9d8f8c81894c4aa09f15e7d323cfc6ee27ad69c5797843d05b360466e46d2e339b4c0b2a03f6a0d3e3bb2114db8c192b1 SHA512 a49115f1271c6a9df57fbfa647b725f84dcf87c6c3894c35d878a13fa5981c790de16f02823c2ea1b07da5fcde85e9b13398e7317aecb4119b80a4ced5dcf59b
-DIST proc-macro2-1.0.10.crate 35622 BLAKE2B ebd141862796e8f0660608ef884ace446fa5158ed1a3f3491f5e5d4ab6b866f19652fe6ccce4432b3bcdbe5467d0a59af688c00fb97249045bf5a2bb5511f2f6 SHA512 a40e6422c26cb8171e5f2d9d7d3b4b2d99a444ff650a8dd8e22bbc7103bf3f9247fc2b2b57ff7da4ce65fb1d293f55c5ef56a5f60ecb5122991d9d2002395eef
-DIST proc-quote-0.3.2.crate 17160 BLAKE2B 30034393cff6aced46d11b6b651b3fe02e73262c8c52760513a344b5f928e9e5869865681232d87d7fbd37c65359fe4a52b602ae309c75a893f7e586a88bbd12 SHA512 96946b74e3a0ec0572ca178a5651ca7eacc9df55abbf0d7688af6e7d0be2b6738a19d53a2b9368d5d7e50522f5e9551728b82661815c872823b53a9868da70d8
-DIST proc-quote-impl-0.3.2.crate 8920 BLAKE2B 5a7932f3070f07514172c2ad9d5780c3c74d551cff7a8bbe5bba9557d1ee0a2d6d8d392ffdf3240248f3ed911fafcdea8dd2565d0f5f321f2c1b56f0154b458a SHA512 59c5205ee9bda70a5a449fb2deebae27805ccfa3300ad59053acd26f8f39a5615bebe3140aaeb625c1c84747e8cdca67178b8bbc9152a3347240e0b335779feb
-DIST quote-1.0.3.crate 22939 BLAKE2B c50e47b647fe1ac1930544d20b2b78ad98e6398a32c98460701d93f93fa1437c6d12c632386ab9eb733cbe64cad57e02dd201686885d0a951cb013fc10a95a9c SHA512 b4867554b86d119251db67f9d0949bf8c3cd7c64f006c76531398ebb7478cb93805b9bcafe159d921ba1a32e92773853b56685cff0e1ebdc6aadaefd3b932ef3
-DIST rand-0.4.6.crate 76401 BLAKE2B 5593ad2d7fb8214d917e2eb734f5eee548f48fd699c9fccc0de9c0c6ee49803a426492a25fda2ffcf844169e2bca00709d4dcd9ceede72a4667ec431f5502fda SHA512 a91c6da7188b426bf9cb832892ee2af87c4cd65fad505c34e9c63343da71efe8c0c67b75c405dca5345317b7940d1d0fc0b20be85afd6b3089203e5698d86f0a
-DIST rand_core-0.3.1.crate 15483 BLAKE2B 2e09b3b3306514c29bd7588498e79be7353de656d8cdeeb4dfc6a1ad092f15a861c2ac20591ff71f7f60d986de9a09c860de4a9f06799f04e736b31bc70a5fbe SHA512 5a7ae601124502bede760fd3179c2b28059ebc3b5983bfcb6b8fa62fb58df95cedc1aeb2734e792d894dfa4620801c13c29702f9cbee64243121575d4b6b9114
-DIST rand_core-0.4.2.crate 20243 BLAKE2B 22fee5e44127eee047ad8abcd9dd828befd0feee77ee9a0bcd4dd42174b1e650f2a19f1f3b39fde937e58c17afaabf7231e2aabf214c2eb22edf3f85b73f6eec SHA512 f7ae3b690e2cc1fbf2707ee04b752bc5472433f737ab581f9872f7c5660966bc6be45f0c5d2cd8771105df6d4a9d206c55f5cc6ffc1693b46e1ae03a2883b028
-DIST rdrand-0.4.0.crate 6456 BLAKE2B 330ee64d998a0358f95a3dce50b3e1bbda531a3b613db7e5ba4038a1cf7191b60be3a0f33416e05380c41040704ce52727928915e9d2f4565d39984d1c86fcd6 SHA512 6476275d124bee28747191471e8d8f321a3b1c148c1f2a7ece4175f5244a7de90afe5f99d2eba5244d886b92e38232398864bf90e6d434b09494533942c8d894
-DIST redox_syscall-0.1.56.crate 17117 BLAKE2B 57b1b01ef3cbc6f55def6c9a0dcde16bd98e83badcef993e26ae3ce849abcd1b1c10f4da931c605970d77f92471734764a537e7329291a221343fde23f3591eb SHA512 17a3044327aa733c830dd74e210d6bda32622617d1c5af9d70d7647232d8569ad0b04ccb14042cbabb5d97ad98e3f1f5a9968a75387354ffb4d175e9577115a1
-DIST redox_users-0.3.4.crate 12526 BLAKE2B cae43317cc63f129bec8d4da5959e5b00a17c4ecb35d5a18a410f12b70a9f72c235afcdbf9bf5de71a94cfe02f46d7e2d6988b536d02ff1b333c6025a5ab906d SHA512 7a42f4b6ced1b8ee53f2c35446154fea6646bd1634133738a281788e69121bfcbc02d4aeb88d25729382429945c0e89b6de4b6b63831e645c6197ff4ad022831
-DIST regex-1.3.7.crate 235600 BLAKE2B 15370ec0cc9f37c6a7092eaf78a731740aae3d79ec6d385244f4568395cac8947860828ff585aba9f35ccae684bb19e214120f39e7f4998350ff2890a43f2466 SHA512 59090515860c26551ce08e8b37cf1227712944844148b79dcc7348f430e5c3c70767c20807cb1affb242686e7e8f885224c4c9fb9ae890b57f766fec96e2aa69
-DIST regex-syntax-0.6.17.crate 294004 BLAKE2B 3d203b06b8b1a5bdb42d50d395ce117ad92e41a7d36e5cb5194014eb7af1b17f944ae493041b7e9a2a9ea929381b4c1cb513c895747beff97aafef524ea2ced5 SHA512 bd9a165bcac207ec3bb87a81ae644be98d9b5ea0053b3bcc69efb334e3ebfeb85021aa372bafc3575758200640cbaaa67d372950fbb3ab210d8ec62b336d147f
-DIST remove_dir_all-0.5.2.crate 8907 BLAKE2B 585f49f83db3ace90dd0b4fc77aab7525844194c82d36cc33ab8999aaa6226d24a130c30f55e2c46a08273cc554d9d4c8bc51958aa7dbf1045085b2e22639e4e SHA512 d19a45398a93adbcef9f233f6b3eaf4a63ae95f5bbae00c880b40c5edd34449e7f798ebcd4d11843c68ddfa15e11bed21d434b224e4a175dcb64ae011c13c8cd
-DIST rust-argon2-0.7.0.crate 27757 BLAKE2B ddeea9ffda1216294e0b8a3dced747fffbd8198fb3b5b74a347a8932a242db7c81554c08c3757574cfbcea5b13b253737df098355e65685d8ae7d95f55306290 SHA512 7310b7f993eb190c155b982bcc6e88e887ca4605dcdae521f0d744f48a5646694c4befa5518f9c94d303c8af1d9111e59c1c67512a9dac4e5f30b83cceed8ddc
-DIST ryu-1.0.3.crate 41983 BLAKE2B 32f2b9e8b7aacee3fb86acf405efc86b44c564b4da4310567a0e1b22d09fa51e5ed8278f6b2c38c220ba235de39c596b15db8958aa413ff822c0876ebed56515 SHA512 53ee61ef116594829849b417feb02d415305783b08d3e45656a467aaf272899e4ed46ac0415cefdf3102f61faa666f21f3237244b2711ad10b528a3773aa8414
+DIST linked-hash-map-0.5.6.crate 15049 BLAKE2B 0f30e388633c60433dcbee353507f1c6857bd210f0b61a4d166a9b95067bdadaebe49d5fca4fa6ce13072e26037c6f75d46cc30cf8dc3c9cfcb3f33b33630093 SHA512 031a87645381c96beff33572e4bac1a9877e52fd2f99d39918fbede17d72291b35e2eb69e07edec20c3058554c35cc38fe85b8f175c2a3c69366136fcc71f707
+DIST linux-raw-sys-0.1.4.crate 878981 BLAKE2B b8708b06e48ef4e32d820b5a0e25ce12d3d985d729a2d7fef46d0b3b4518b4ad40d037d4689fb2270f9c2583dc031d0f4daa26500197e6c32bffd1400357934c SHA512 ee6d5a7a08b183681ae00890784c9e6b72e4c987b2ce2d7de6e7308b7a10d4a2b532db3d5121523bf5d4a262407f3033af4f4c1fd9f09be091523366fa30d768
+DIST linux-raw-sys-0.4.5.crate 1274380 BLAKE2B e15ca5b63cb994e86a8161e3b6e4bd20da8f574d1a470128f9a209a729ff22c86470f4c2b2a8ccbc1e37d6284b026e0805902645ea4b742425fe34491e519638 SHA512 13c36e03cb5bdb2e9f17622e21eda608057fc9d908bc55a829fdeeb77785094769d4f4b4daf376c5509ceb3abfdb3936f668bd6d5b2fd48e21c5c28b6e597e78
+DIST lock_api-0.4.9.crate 25685 BLAKE2B 8adf5c3cccebdf6aff6ec977f230cd2a208b0b188ef57deacbbc6019431f0ede1a760b2384ba3cb49c96b8a589dc56c0f46a6359b3e62277e7ae1a1c3f586fa3 SHA512 9215381d9bb6b80d217c73a900db43df043b3e939b5bd7a292a02e9ab911cf0eacd8f883d35bdf72b3a0e78df8f1bc3e843ca4c775294c7a7a03091dc1a74990
+DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
+DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
+DIST miniz_oxide-0.6.2.crate 54536 BLAKE2B 8127ebec5a2cee1c2101d9533da573e01ef1a0fcb169bb0fb1419973ddd2e6953d8dfe85f9509a5d1226643ad290f0ee1479fc68f1788ade7ddf9633d90bfe1e SHA512 250782e214572acdd11df87c2788cd5f78e8388d9b285d0a850918219678e262e8b9905cc88728f5b70d13920ef9d19c43d243dad8fbcc18f8c8462662ce1419
+DIST miniz_oxide-0.7.1.crate 55194 BLAKE2B 56afbe0c0b3eca98105ae2d507493f365353cce29a6b04910ff26bc75899400fdbd067756cbda7b3d86f047fb8f3d737de00043a4a7348a813cc43e45824e33f SHA512 5eb6ffe34a866403273ff0267ff7838aeb50722ca57a03d5a1d842a5f19a3b4af570b133a3b9d64d78eafe49e4b9732b92dd63fd9c6b0ce59b3295daf10f6a3c
+DIST nix-0.26.2.crate 277973 BLAKE2B 86adcbeda37edda784593196c390e92ee069761d283f706c0390bf8983ba8841a51486a98a1869f910fe4d518afba5572490e9c69a021e12c598d094b41361ad SHA512 abf2d0a4eb83cd4bd43836e8b533f0f07f07979619c86c11302a2df0800d569f33f0dda0bc2c4136d36c79789d175eaf5d3928ecf16286319aabf93c720a1704
+DIST normalize-line-endings-0.3.0.crate 5737 BLAKE2B 935b2d20ccd37ca7469641a37aa0ae9b6872715d6ee88d568d0ee16fb76416cb1a0c585cff861825de8cef11d864b1dc1b350911c28d64e071d8fb444bbdf740 SHA512 f8e2a6e333b0e8972febe8b9cf058c8d899c384fd177e0b6ef1c5f94e0fa18192963970cb1a2ba80e3135a8cca66cdae6796e4d84ac6b325bb369575bdfc6eea
+DIST nu-ansi-term-0.47.0.crate 25656 BLAKE2B fe3f1f564015fb4a3235bcfe3e4dfe59571baa22f28de2a442c3296f731499e76f2c5cbbcdad8c38d0e1bef056a80e225f112f017115f7a815078702f0e1b0a7 SHA512 cca92ab9e7103937eaade490b11362aeaae3f9e25b91cfd054971b25ac03ea29d3b41bac75bb24abce5b8a0169035920cd12874ee34ee8f4fadf8fa2d2cff77f
+DIST nu-ansi-term-0.49.0.crate 28211 BLAKE2B 057f2d9a3b6fa773e5b8b7b33eb0bd588db3310f01354701832716d77dd6c49ae17f69728582cdf84e8387f7c57b9eb05cc97ee6e14541878f12fb50f93855cc SHA512 8168f44f3574e56fe70ecbc67255556bb92215d3520d1cfca7be918b3d7d54be7aa0d82359f1044eaf66f11ee85fab1f9ccf32b13cdc39139c2facc78b2d8e71
+DIST num-traits-0.2.15.crate 49262 BLAKE2B 942ab170b2acce1cb40e6847f766bf810a79edd293d34f3a27864f464c16fe2b99fb13171ba429cc6d584248de879434beaadf1b231a4001b0e8389ed6c1be04 SHA512 5228498af0f15daeac3c9210f3e6e71cfaaeb30beea81dd37f8eb06b9592c8bf3226a47597cd8592ad4c513964a9a40f1ab2c33102ef3dfe3800d22c8d4528e8
+DIST num_threads-0.1.6.crate 7334 BLAKE2B 416efdf395b0299b6b01e1508823afdda08cf67ca54e1d644fc5accbb0490945a492a34bc5ba70c3e838e6405d17ddce164ef87468bd9da27097de8994ad9577 SHA512 b2d9897e29e59353379b6372a629fc7f9afc89f777b4410eaeac7b4729527948a8dbecb175f056899f9076693ef855cc0d40e725cc54f28af588fbac5f7ce3b6
+DIST once_cell-1.17.0.crate 32736 BLAKE2B 767fc8f362ce5ed7a9eafceb2f0764a2a1c7f4070e22d1e6e2498b3c841c5f761e77fb66a34b899a75d48f1563f6b9b73b90aa9431055d4e0269c47a1b043c1f SHA512 291d87380c0ea17fb3ffc9fdff8620d2ff55601c06ef65b2f0c54254fecd5b488645c6e94c6026b82071893f4d420491ff712399a782e14efa1e323e5c299c46
+DIST once_cell-1.18.0.crate 32969 BLAKE2B a08d5beee50a7add28bd9e50b18709e7b34574f0f55f80909d5efb7ac5917e5f30bdcf3fb43ddd0a4f420a427390c7ffe1cc1c7191a3a1d939bc6e3139e6eef7 SHA512 9328968afdf3535b2d9e0113d75afa725259d76994ef2e1948ad7efa4ec8a65bac7cfdc31b749d5cd55ad4e28d2e28ac57b871e3067b89182453c7e2413a13b8
+DIST onig-6.4.0.crate 32616 BLAKE2B eca949c47870f260310c69302c6a0a60b9329f7324281433170b0f6fde80f91d49267307825652830217cf44b6a77a741f526a3bca63a12fd8f28791c14a0d5c SHA512 5d388d35eaeb4ba4876b5a683010e4e38c7c54abaf15c900681a7c9ed199b6b7ff414aa1d6246153546680eab28505cfda359c3d5df5b9fd3a5cdbfba35953bf
+DIST onig_sys-69.8.1.crate 638216 BLAKE2B 08d5f61f4047cfc841ee9e1881deeee49478bdead87483595e9c81c722e475d137b8cf5e1caad2965ea411d3211738a6848896128b5fa1f727a0a175ac217d05 SHA512 26a7dec69abe1535d575e7db63448abd898d363ef42352605e7b7d046b5abac5733e3cc05b7d442ce67db9366dc96d4a7a82a7f486d3b9af6d298b49b0baa864
+DIST os_str_bytes-6.3.0.crate 22928 BLAKE2B 84e8197375742373bc7c7a3b459f8a9f97ffa0b8a2e517bee0d8ebb420a8509056cf56984612f44171c6b5e219b6ea91b14134fa6386b3cf3502b13ab92386c9 SHA512 34f861a15543933c9fcb560a835bd943231ffcef2c68126d8633f8e792d2d59a20765947feddb0c795a15329d74260d6c2bf74a1f10ee88f355f47240acbb42e
+DIST os_str_bytes-6.4.1.crate 23101 BLAKE2B 252fc826f646bbb999fa80b47f58ac9a77e409b10a99284c7b669304c0cd701a3d20e690350018f5d7de8c6c7d38521f3413ac81d08067dc26f76b7c0e5b056b SHA512 2199502ad24449e08370686a596f905325f5b145e105e8c7bf90ed7729bbc405e065fce62c98eada40f77f0665ca041db41f16cc8e62473501eca32c24e56f43
+DIST parking_lot-0.11.2.crate 39869 BLAKE2B 67c555e87b68f5763a7790563fd8d542e126bcb77f91267f3b76c51fd73060a2c32dcb91f9d0db7ea772e555d91576c8d7ff48053a9c35fbd3b749d2459a660c SHA512 526b176363dffa59501c18324bb723a3846ef5b0ff9bf1d890e40ad10e7023284f7c8012eda87520eaa94515ee828d9ef52692a9ed590a55e176383d6d472f9e
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.8.5.crate 32466 BLAKE2B 44d9cb65444ea93fded7e216e3bdbe2256ba1611f5cb6f80d67a01e71d428b81e6c7fc73cb928e2125f34bac0abf4d1da39f622e813dff89b01fed7632308b7e SHA512 c4315df551748d1ae77655e4d9f8c90f911498856e5358009e9e02e410bb8085f006f369188b0753a298371ebd74a5c383d848b65e31b55f3462381308c83a00
+DIST parking_lot_core-0.9.7.crate 32412 BLAKE2B fec3ed2cf28e6d5090aae6a7c0ad583acf3ce6e54e881b78a9cb6721ca1e7040d46c044d405852728e74baff6ff1feaee7a89a64c69d20531f29942dfaafcc72 SHA512 1f232f1a87ba9377621244ba49378663f3113da7192a399fdb70be971ff5e5ca0d0601e1210a3fd8ab75ef464dc8505e719f81902e3448cce5e7848ef4bdbef0
+DIST path_abs-0.5.1.crate 31072 BLAKE2B 5f7041fc98db906183a42523ff6ed3ae23c1a8119c61860f71dc3b496845a9a0cd172151ba21c2cbb9933b0e2fa3e08ddf467700f4d2aef934d101e090b50fb9 SHA512 fd382fb0233b4029b9c6208b0b574c619cba8c3e6b6ffe39f63ff9e1cfd55240acd061d1aa82180987d72c8499802171f074eb35b9b0c60bc11cb48e248ee0ca
+DIST percent-encoding-2.2.0.crate 10075 BLAKE2B 397e59acc3953868c709244b89a2e0db3304c0b574ecba761026b570a485f2cb5b0b2a0159586d1f342ec395ef02ace536da3bc1c72093e1cf93f8b37b26b0ec SHA512 890a5256d2b4290e12e04a02c3529f3a017faa2b6016a4dd0f08b36509f0b1107eacfcb4702024d6a21ff8852a11f263c1adc096b16ef8d12c45a734c087fe68
+DIST pkg-config-0.3.25.crate 16838 BLAKE2B b6ebbcacdc0f440e24ce5730edd4b371387cf7f44e438216893f29c0f303ac7920791630d4a9bf13581da840c8888e18bdd78dc61458d3331e967b3dfa6d0597 SHA512 46658794f0a7446354041c1cc08cf637970f7651c0c506e2b90c9d4e284347cb82f05ce282cc55c8087bed58a5b961424a56574f4500de9f3ba9cb9e71667aa8
+DIST plist-1.3.1.crate 44772 BLAKE2B 2e2b869b4543d06830b54a873d6d5da572502ff0409aa723a5beda5121b0ea8c8aa3656aa70299ef32532f948ed82ccde05f4bbcc9cec6a7288e7fc79eb27536 SHA512 4cf962af14b4218502eb4aae5507d93c58c4a0b716f923c3f0e53e37225940c5ab6847d7d9ad5004f77dc2dbbd28f73412cc114fd231e515f23a4ade3f969e86
+DIST plist-1.4.3.crate 46598 BLAKE2B 9fab922905b3c864aacd4b91f83ffa8903c93ac7195b41b55aaddac6ca7748ee354c2e8d8fe17a33646488b72b722cbe489c53807bd74b70a2b18c4452a5fbe5 SHA512 7a703948b6ca84147cb387f6cf37e94ed06d37e7e3f80c6080752d52bd922df9fdfd8dbcdb02bc15e75ad5f6225ff0f105e46f287066d320e232981f6da3bac5
+DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
+DIST predicates-2.1.5.crate 24165 BLAKE2B a0eb1aa0f26d51140155b8b5e7141a253e298ac2197e59c7023ecc693d68cba01d645792c57467741ee074891438fba2f1439c79a4cef27f3d02eaec8f1d0b10 SHA512 d4b555d7f57ccec5788a957d4a3e130f5549a9333a47654baaef098bb284c64bd5c662677ba7e659b4563b3d0146914f1235e0caa2274af8787d9777141f4dd4
+DIST predicates-3.0.3.crate 22743 BLAKE2B e0dbdba7bfaedfd3730bc381efd439c09a0730a8876be219ae5b8beb230f99acb29263c7eea1ea7333102335550936cb968f82268eeaf61db912fc4d2ba2952c SHA512 6638890cf3ca26170363e789318fd201223818089a34970fb650c12e11da0c2031dbe114ffa1e4bc55c05f7c75f41c60ca3bdb4764e061c6317508275940c7e1
+DIST predicates-core-1.0.3.crate 7757 BLAKE2B 91b3d1596ddfce6e58c33970ecbca94acabca660109f888f32aa73352e157d78afcf879afcb7eec61694f89445c42d355eac46a3ce3cd6163f8e53265e0554b6 SHA512 76d056f0acdb2d9c5cd44828b8da8722899438fe7e11ce6c96d3ce2bc8c267508e1010e2ac2c7bedd3281fb29856a3cf29f93de51b0ee349a5ef51466ace799a
+DIST predicates-core-1.0.6.crate 8084 BLAKE2B 337cbb155bc2859c5a8b891c21d352e998cd1eaaf606cf46c003c9c499a42f12268b071e7a4cca65d50cdfdfd4267f023076e078a0a3eb401ad836755d65298e SHA512 afeb1de4275c76bb1c5950f42bce2f83a21ab217ec60130336286cb48b15f36bf2a1ca346bd652c10a65a1f9e3310d16b23b8333a3e0f7e20fe874c3f728e702
+DIST predicates-tree-1.0.5.crate 8126 BLAKE2B d63d2fe2bf9c61e703f11b8d3f8a8434179b8de1f45a52dc6266e79972e0abbefbefb0d57359005bb0daf06ff17276c858481be8382a7383058ff25e72dbb3dd SHA512 950f9191f44da894feb209110488de3da0e36cc86ef366ad2749a66bba0053e23c39fadb67fc5a4f5db3adccecd414619f9f805c2913733df96254913c360bfa
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro-hack-0.5.19.crate 15556 BLAKE2B 98c22fc3e5f5fa8b6f44d15de42b6ffcc82ba3f98a07ffa48bcbc5d3abcfca6af136c5d0d8c7f1ca34261ed8f8c9c17a394231f97a4c342c81aa7f8b9e74b203 SHA512 9e4cbec41056438287f5b23086264c86e2f0cdc193064006556736377b2954229de13a585149b9995002c9aee3334ee2a80ae4afdcc96cabe7ed2bf718476952
+DIST proc-macro2-1.0.46.crate 41954 BLAKE2B 3bdc274c8ada8bf1a84d4480b25e0348f4ec5bfacebb74da144a36d4dc0efeb341fa24525e7e8408c3589013a048563a46f1e094944afc1726e594534e2455fa SHA512 1c2ae8dc4bebeeaa4af02f8edce18b3d159109a1639d8e9f26be2b7023ade9d09824ee0f2a60ae034967d982158196826fdb989d23a4b3bc81188a9a63e18cb9
+DIST proc-macro2-1.0.66.crate 43575 BLAKE2B 9eb3e816b00fcf625c280ba14ad269f5893d0523473a24de07c21945f6f932fbd08efb3c339b35d903245510e3f065e1478439b024a325f2bb9f97bc7bcbb18d SHA512 85f5a762f9411142e5ac28144bd380f07f0633ed2e44d8a2545be9fb8f42abaca6b5d45631b4be83b8e8b9beca7438bc52f25615c3a410a3a1249474b1aca407
+DIST quick-xml-0.28.1.crate 155431 BLAKE2B 9b9d0dc0fa9225c5f69031714345d3529e3ae78669d81e00222d5c2a47b0bc1dc8ab34f384078b54f67790ba0883c86951e6508e3b29177411e8425727ef28f4 SHA512 1abb1645a7393ee2b22656e075bfb0caa9a6b74f4cd7ebdd3f4023a2d670581651ac73067a1161bcc788fd77816bcfdba93bf8fccab6f8d3ca6bd79ac3cc521f
+DIST quote-1.0.21.crate 28030 BLAKE2B 547344ba9272874f5fbb4bd27a69ef5be99823e10e1318afe71971b18f37e9c73d54168f16efb82c53a332e4874c80a82ea951fb2c85fad50cdfe783622b79fc SHA512 0728eb4df7e1f7c4d32ab08c901c2c969db8eb46b03bcec3e4956a4f6b360939d32abc6b6ebd7a31058e8e9b69c3d995a24cb484f93656f05b4ee963be1c74fc
+DIST quote-1.0.26.crate 28397 BLAKE2B b468a5e9350843ea81e540d17c9fcb302b46fbd450e10280c5fff6fd7c98a439df8c3d3d47e551bc6d67ed02052b5b5c65d215d5ff8ee34f045747e75c1ba37e SHA512 6fcfe4d31f601aa60beb858c25df217421b0a184d185eebc7a4cb9fbf97c687992b77bebd8671a9e6193716387c3e926fed9b75a08684eb2d9a5b155fbc321a5
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
+DIST redox_syscall-0.3.5.crate 23404 BLAKE2B 85aa4299d9816666bf576f523da5cdeae87b3c8fbb2af103e82258d23f73303c068a4b6c3ef4117ad67958cb31e41f836a9f59f2ce1bc52c23605e34399afcf1 SHA512 16f8f4766932bb54e4740cfdb4f0802f76246c0bf88c1d76c69c115949b124b625d8c3b85d8947073c2e9544f425aa16c10f71fabe3c03d29e424c47fe4ccdde
+DIST redox_users-0.4.3.crate 15353 BLAKE2B 5e3b4e902566620cee8856c092cac193366ddcd2f5aef787b1d485353a0da11486ae1359dc60f3c87a198cb68f93ef99ac7551cc2315412b93b10ffb10540633 SHA512 0d3366e23cf93e1b0e025a29025eaebfcd1145bd158e2663b94fd952dc2d8a25566819e3a03c4136ca16a6408d37396e2ead0814c3f0c2bb10334dfd0b838fda
+DIST regex-1.7.0.crate 239421 BLAKE2B 6e9434bb9835bd8e15c81e817aa64e8443c4188219caf46579078c6b7cbd98ee588af0f526e0fd5a01814762dfaa113ca3d15f7cfa14e969d5acda3a631e9560 SHA512 974c15a593d86c33e0bb34f7a67957fe96dec07b3752f2b6b968d657845f5d2342a5ee9ec1359109c43e4f46c9b2b2b678d59f7b752455a0ab1435c1fa56ca3c
+DIST regex-1.8.3.crate 249112 BLAKE2B b70467c2f02e961d3b06ac88642e6c0c94b165ca6813f3ddc95e68e81a35fd94ce2cb8f80c29d5aa6805dc340e6b278fac0a2c91e328aaa66fee48df51427150 SHA512 7d390a09e7f27b4c6f96a4dd674bbee5868adb38fb86acb6329ff61cc6c1f3454ffd19d1c30468db1512c3b1900269e94ea6fb85116db01ecf5ffecbd789f4ab
+DIST regex-automata-0.1.10.crate 114533 BLAKE2B 0e357229f6825f14339b1d7c40730b83e62bba12115d01ed20313320766e769a653a2fcd2c9d19af51a82c38e9e42c1a31d005e1f44f5b6fbb3ead7c9c74027f SHA512 56d64da361afce82c6cb49e70b99ce1fca3e1969c54bba5f9971db135f8544c65f49feb8827789947b3d1dcefc9c49a7a434a7ffe0d09c5900345a1733723c5f
+DIST regex-automata-0.3.7.crate 607421 BLAKE2B ed040e37e24979118edfe37ddd25443986cab4ab96e6391f9a6f70c6ac308678d5773a14bc2d10e809d7bd26d2725bc45d01493efaaef7e6038152de6fc7fc08 SHA512 967f5d0b452ba782b7e5edcb3e7f1e730407cd65f072eecf9d28d1e4c2cec9954a891a3fb4d69310d299a287a5c6afd22f71f7403dc65e07b7be207a2eac83d9
+DIST regex-syntax-0.6.27.crate 297300 BLAKE2B 4ca1a2e23d04e29c5925085ea4ab7ebcc398dfe135eacaab1e686aa8be43a110a28e8bec05a6910183f9a6bb1fd0d635fcb1a60b5a6a03fed4d2cf937a542a5a SHA512 5cc705a5dda08cbdb4dbcf3fa98763cadcda13d9c3ba407b35f3e88d77935efc2704bb40b3fb5aad7dfbad0df43bcb4c4cad9732defb954e2228a0739f7c37c6
+DIST regex-syntax-0.7.2.crate 339778 BLAKE2B 0b9533e4e4bfae1304a7ab5e2c8bc0bc3038367dbcab7bc19e680bc4945146f1eca3baa1c5bbff6ac60447b54059228a5790cad20ae33f16b9dab794a5f76140 SHA512 3065cec128ae6ce427d13b68066fc02357c21f7d1517c1669295f857395eea3297344fb2171c96d15dfe48050785249b7b8b8138fbe5b4a65c8427968347c128
+DIST remove_dir_all-0.5.3.crate 9184 BLAKE2B ab7ef94e0230ddc9b363f038254a180881bbc20eb04a254f97e6f71ed491c99ba1c88f5e85632d450243882a4a0df63f3b8b183bc1fbca9caf30ec23d577b1d7 SHA512 50417d6d8a33912193a1ed37eb72b47431b12ae65d2780cdb7080c3d141e63819da13751c3fb737685cea322f70b36d413389c3dc01aa12b4dce615aefed0e2c
+DIST rgb-0.8.34.crate 16285 BLAKE2B 529d179db7b35948369eae985821cb943498c496a562c04faff62111de64b885fbdd30e299248314667484c6a76e2f62447779ea9531ccc33411a623370fad43 SHA512 2db90ed5e9fe4c28cddb1aba55daaaba01be93885815fd618cdb970df6c5a5c1ebd6af8550594ae57436df1ef631b1d6742e3f2309d665ef486b9c0d07f61da0
+DIST run_script-0.10.0.crate 1139873 BLAKE2B 19fc4104def9883d61da9a54d8ca27886f5fa608d4a118021a656aea1e7852dd935a4c1c4c5aa6b21b36d6c0558c5251a10696a1dc0bc121c7cf30af8dcc3646 SHA512 8034c2e7360733a060a521ca9b0e528ace1f5a9b5bf73ffb9acfcdd90994531cd7f8bccc6522212929fad65f6d4277ca862eff056b83780da88308183c62e60f
+DIST rustix-0.36.8.crate 290808 BLAKE2B 62da252100523d282d6d8d2bf141f6e59f0dafcebb0a1025b6bddb78c2a100643d63edcaea4cf64ce68696219ef52706f6b49f6a7b22f99c544866643952f98b SHA512 6fd6ca326feac93145ddbf6eba65c8eff731c9a9e7ff3a6724c19e5c8bbb05236f526df27c4c916e855e7e75e65914470af2d9c98e1571692991a7bd811b5bb0
+DIST rustix-0.38.11.crate 342416 BLAKE2B 19cfa275f9621b5cbe200414567a345b3119bcc40eddcac453301dc9f53a5a7b3a25d51c69520ed4a0cb5c0bc9b177fd8b9d63e7bc9ebbb7060a177d22108c90 SHA512 23b19d1defd973fd2f6d62e6fa591040052a9322e88fabb4b8a8f574443c39795842ca3a431aabc7470be262a3054a02a881d7ffaf0afd0d89d2eefef70829b5
+DIST rustversion-1.0.9.crate 17425 BLAKE2B 0d4bf497848b3fc0ce10cdb3f1cfd73965bba1c0aa49f24c0b4abb92c2dc133ff546b119a69d2f5843f68cf4d42e4f64e9c59e2879788f91208bd75a2b7c62e8 SHA512 b2c116585816ee3aff5b21ac72ef05520ebb01fc164519e43407685c223ad5f2d3ded663c643a1f0e8150d334383c7504b701ea2708a570e5d7e29d98e2e7c61
+DIST ryu-1.0.11.crate 47007 BLAKE2B d03e8df69c3b21c1b2e4ffa91ece794f141e9f9bce4e9ed1ebf394b1cb0f796147b86189885f0734df8f431b2d166d8f6ed6a261be398d6d088fd56046a85c2e SHA512 dd2642aab2d3017c31432436226d5350b894c8b88a09395eb7de6350964b3cc48451a829ce78b04a9e4e0480076fe1bddd0604f4e57700faa2d60cac6e361408
DIST safemem-0.3.3.crate 7778 BLAKE2B 6ebc0e234054919687e8a369bc30ca6b007d0e4f8147157ba1a90c290b7f0b490e5c21a6d4406671e26ac073f9e4e06a2bc9b1f21eb152b05c4022a3a4ef3793 SHA512 2e4852ca91160f9f1e764b75145d794726a5f6c162cc99ecbf9cae20474a06cb3a0dfc245b895c51342240f6875423010b33e36d038b8b419a37e4820a9caf72
DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
-DIST semver-0.9.0.crate 17344 BLAKE2B ae782bc78f29e45577de8574ee58959c70b54bb0b6f45a5a7b09cc4d358d9a0a80bbefc6e0f2a330e2b55adfbbe5c1f64f4ec9bb94c4adf7bb3e4fc9c142db6c SHA512 03a2ea563456f812c301721c3572370fe4934a22db60079da0dd6ffa33fa789e5e2436ef09e62fc35e0b742b06fabc290992c74eed80419a353c9de9449928dc
-DIST semver-parser-0.7.0.crate 10268 BLAKE2B e46b7cf9d292f8fc54561fca4df8534dc96f6be920a5c869c405ddb31b9d1a18eab0799207113cf4910a52cc0df5017ab1bc1883a7c3787ebf2d60f09ac0ab4f SHA512 17320468ec6b9862d595f358d70c09ac6e09db7885fe0ead7a1e596f79350a6306e8bfde5bbd6512008a7c5454da1c7ae55fe1e3bc1c1ff02ac9df54c0a6121f
-DIST serde-1.0.110.crate 73947 BLAKE2B ceb9896bd205026825767951c6dd4c11aa5ce485ecded75eeae2f88627f4851c378c311d7ad8d06395f2ed976e342d31e11787ddf926dfeb0643ca0575b32ccf SHA512 508fc3195ba0deb75980a758a4392462068fdde9a87fe2f379ab9b28c573c5af45617b82e5fdd1e34cefa075888da7f533675b05d57757f0c0200b4fa5698863
-DIST serde_derive-1.0.110.crate 49751 BLAKE2B 14f3ffe6d6ce5aed13a800c2802459bca54546d3a77dd05c4c095f10ffabec8e66195cd69994b46162a96bd95fc5fb0d78a08864b7709a8f6c32643183cb90be SHA512 b02a831fced998388a39ad5e8ec12de5c7d09e18b69f15b112870d1e5976f74e0cfcd28a68dbcaef87c4be30001bd2cae076de234a59e8f39ea0be3014a395a5
-DIST serde_json-1.0.51.crate 72691 BLAKE2B 7f17bd47618009a3e6f7fcabe623c476bd40a0fc92be0c736f5b367914f14a923a5ff8cc6183081e6b0957ef3c61451fbc22c15bc6b6f9de63454c2f4aecfb45 SHA512 0e9e1be1e1c7ef6af2b2b374df6680ccdce149ee7c0641cb518c678b06d72a335321dd857bb1dc64561c3cb090cc1388c7a016fe4cda66da1f1a19e338c1a470
-DIST serde_yaml-0.8.12.crate 35916 BLAKE2B 6a2cee8a83219dd804d1b8bdeeb8c7b14b6989a849c6707a56fd14c65099a4f67b0a9c0e5f85a6cc97d90abada3d736a18a022a8522aab6c7e6987f5accb43ec SHA512 53cc9327e2baed3583497922dd20870c570de2be20074a537d703d17d7038e2826bf4b5ebf6daa8f451204d07453dff05e931a66670b19910b2d04385229fb1f
-DIST sha-1-0.8.2.crate 12338 BLAKE2B 90702eff48c15b49195b547d797976837b0fc9028f76da626e094b80d5d630bedee637053dc57274c27d68b8b6f3c443f1aef37c06b7aad895630bd9d73039b2 SHA512 65ddb7bd8f0157d134e70f7c6d6abf7aea198cb97da17b418a265642c5930b8cbd9c8e0b97b557102787cc842cddc93213d669345c2aaac6a1e7146765b2d5cd
-DIST shell-words-1.0.0.crate 9798 BLAKE2B b2511d6a956842346f672edc9a3a3554af6d424c3ccad4244c190a7edb5c6d9f18166d91a90ce2c4e86239b858cb04f36f3cb2ac0f1e64926bbc8377f3745d57 SHA512 f1de4606bb249fca7dea437464ef560aa49839382716b9c940738547a5def28337501d9ba77d96a63ecb956d3c49867d6f4742f14946448a2c9d0b1ecea9ebc9
-DIST smallvec-1.3.0.crate 23930 BLAKE2B 3eac4d03ad4a6e111587bce612bcc540a619fc2f68a384a2e0aa0b52e8034a8738f6b56607c3457cb34593a701da2f3b3ff8afb523af050c38b732299fbea224 SHA512 3cb400f5f2e2a8619d6adb6b65e5b8515acddfb686c2545f66432ef279bca147cf4c55b09893a82bcb7f9f91c7c2b7099fa707da8939b1ac4a6b92326e7bb806
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST semver-1.0.16.crate 29850 BLAKE2B 6a6a680e55b6e98e5d0d466cae2f144531d3019988a7a241e7f0e54ebf2ebfbef27eb7af5ac59a618fdaa5546bb84c65e4616734b775fb2e90d87c1ac0b07317 SHA512 4fac06eb9ea475f8a31dd85e4d28c70a351656914e8e61518ad69274e93f1b6f14cc32a5b0c0e5a7d9ba0c74d4a16d502518dfdf2756e8df5e45869886db8c2d
+DIST semver-1.0.17.crate 29685 BLAKE2B b9beb685eb9f6cffe557d1185997e1a93d0e50ecd8e9719d9855347f12dd430ed1020df81839b7924a984596437ae7fb2951e7ae44c5540692a7f37b591bee2e SHA512 5199923757e675506d68c252182b10f55955e47054880492e5471a0a0f9ad13ef25d552d2ab9bd68fba37121b8026d9989bf15db67e95265b3aa53d06377fda7
+DIST serde-1.0.152.crate 77091 BLAKE2B 89c01ce359042ebe6b1b64ea710580886f965a98e1d6085c58a75269a9b43401e2cace080c4c93ee51982855fb7e2f09fdefe9bd237bbf30c5537f3a4258283b SHA512 b47bd58fdc1a81d96cc0c9d14c8b19153b6689e893851975b1d7c7010c4448750e7fa09056dd4f13ed475a4aea2a3950952ff528832976919a6e78504a37bea7
+DIST serde-1.0.163.crate 77030 BLAKE2B 0d7ead66faab8ae01c693c9bbcadfd0a7a736c8bf46f50ef43ba261eec9e0f0c43477feadb2e134f0ed6dda3115dcbc3d22daa28592f343739f1ea03d9c25723 SHA512 752738ef5f67f1b4435bdd4e76e740ba192bd93e83cac55fd667809af26ceaf02db7083aaf7b2074644b38964021af206000b6130199e7994c12c9c57cd31a34
+DIST serde_derive-1.0.152.crate 55586 BLAKE2B f133c6cdb87d435ea0c05144e685047fec22b93df7c61df4aa139358c2732326c98d0f62fda629da0f648aaacfc9d6f312813940238f45b359546dd435e7a516 SHA512 2f4dffb5671b4758f0b7dc0939f6b5cfe3b3ba02a53c62c75b5a0ec89d2db26bdd95f3e269d1fd4b07ec921bc0ca5f0741c26fdfcd25bd6532ac698c6c701e91
+DIST serde_derive-1.0.163.crate 54447 BLAKE2B 284d02fcbdd05c53c8da737fac422fd61ff53669b140686d1732ef727a1e873945b1ebdb85fbda1d79f2c563b2c7b81d3ac51c76fe0cf5205dc6ab4d46a9d4d8 SHA512 744c4235330781c8d9c6ab4f49f6ddd11fcd70b97c97fcbf1434ccac02ba7d29eacfed21ee8e005f5541dd8ab4a34023e95d85231f11c5f4d6e24fcf806f7283
+DIST serde_json-1.0.85.crate 144635 BLAKE2B 03d2de5563c8b8e9150b656b62329a87a5dc42c1fe389e40291a3b2a7232e2342b6e52f6625ecfaa8cde4420017a0db82b2ef332f82f2fc1caa50b98e544031b SHA512 b9ba5c8f5e5c977d31c720995317c99486897a064993784e8abd4e35e0c9ccf20d421552b4436cd88420b5e6fe1d7ebc411bbc2e803cf1732e133c29365834bc
+DIST serde_yaml-0.8.26.crate 40670 BLAKE2B 78ed7b0d45677e2ff5bb94e9a12be0ab72eb2229e064a3e357a7ea3566648f10fc6c2ad5c07ce6067841392c97d4034da5d54d51939a08d81f64815ccd798642 SHA512 f6bde42539fe35dcb09fd506149c564f2056102f15ce275034b33c40ae666e22d6beaecfed8a0048704547f153fe13d52b8b305c95a61007784ee42f6a8372dd
+DIST serde_yaml-0.9.25.crate 64594 BLAKE2B 99a10820e1ee1da842631080631da88b5894758a86ce142a4080e7b38da32e807a5204075b9d4112e069872554203c7fc8db91b5632ead848493006c5db3747f SHA512 a86b0fee5a62dc54fadbd3b9f174ac767a55ea3e0a2f98fcd5f3d6e5c60d76f79d4dad07436a686b786fe2d89367f647287dcf554076d272a83e72cad5df2172
+DIST serial_test-0.6.0.crate 4494 BLAKE2B d68c70c5cb079cae1a22173d90045789b578d8f50407c56df80a30ee7e4abab26445f0a304693e0c3936d466fb1778de71c9f3f9185fd690f595dc02f5a1f588 SHA512 36340e6234b44ef99d0e4f25a6f98dbe080cb0c2b0de06bdb8fe72cf7c6398110ca0489e556b7ba24be708e7fae3fc63400075e1d061a86d5d612d70b216d46f
+DIST serial_test-2.0.0.crate 7946 BLAKE2B 4f467100401f0800cf6cf3000b046d43a0df6c2164264061cdaaf9207cd719b087bc9fdd1fd64f1a8ba945c9f2c432786cf0bb5c77bc0d1525e14148cc6b6044 SHA512 65bbba74ddf39c3437b3afa327f7cb1befad12a81e639bc6285608211621b444dbf81edfde8b1b85c708a873c105d27aaf0d2f2d4dcac8872c68d92849c8f3dc
+DIST serial_test_derive-0.6.0.crate 5581 BLAKE2B 8757effde13525634b73466eb8a10113138248172ccd131c5de6bc8918dbbb435987e0aed5aa66580290eab316bd72f58349f029a43efe9c63df2497dce41208 SHA512 45885b6556ec89356b0db59f53cdec2f147ed71c61c072ab3d5c472bb574c3e64632668272f1b43cb10c6e3113cbbac85e58bb0e2ea589630aba6545a0d2da2b
+DIST serial_test_derive-2.0.0.crate 5638 BLAKE2B 72fcbc0a6903b0ac82af3334048eab8fd43f65333570758d4a484f2a7ab83a44c39e9a9f4af3cb1be5296f25d863208a88e3243162664b710daffdeddfd8b3af SHA512 3cbab9f93c1b966e0827d9ee9f41e4cead47c2de8b8da80a3f9402549d01c9f28042d084abfb6f1037bd31c751de8e4139131014da7c80a165444bc3db804be3
+DIST shell-escape-0.1.5.crate 6847 BLAKE2B ccd71a73b217b375843d3f0a762b3f5317bc0fdc8e43380a17f25e1ffdc391de0af7b0e4472be23241a6654f5b6ab799a51bbed8da35295322002c54ad84e9a5 SHA512 848f8d47d802b82e83f113fb07f44fe962628379481d1bef9d15f2e5821a382c9928c32175652361aae9fe4c8fa5c1dc1c89350db6ef5e68691bae4a3742df93
+DIST shell-words-1.1.0.crate 9871 BLAKE2B 7923b36f0ba50c17ac4eebfdda34566b615291253b7b41879b3f64b3fc1325e63948d3d44801e40748b11ddd2ab201b81d238af2a2007c7a57d71f5dcd0667f6 SHA512 05c280a8e1f65b205746560a82e397689a3b5ec934219b558ece3a25efbfdefe903f9172319240e96039b38fb2c4be6e070805aedbdfd10344d9144b9c93de00
+DIST smallvec-1.10.0.crate 31564 BLAKE2B e3e46a0781d3a7892a739b001592d462d0704f010363984c439e3fe4f75aecb9720648aa1e9bcc56bb3be848dd40cee578212439f78f07a807c9441c3c3e0147 SHA512 a09110184582dcc01d7a0d3fa8f74c17bf726935126d3654667b8e9c4bc43ad16ccfd8fa94feae7d9b31913aa7ee030fe5936e4b44a36302b6ce5fe37372a7ae
+DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
DIST std_prelude-0.2.12.crate 5066 BLAKE2B 06e592e98a78e7d4f0d40075d5c77041019264cbfb50ff2f5ac2a22655787d3f70e4b270aadaa5508e965c9a8615b98b7f3307ddc42e62de708406f2fce14980 SHA512 c929e6eed305c337c4eb52caee63c5c016394ccaf2cb36268a289bf0bc74b0a20d3e739b3b7ca87e30eb45eab503203e04399c04d48f2d69a94da75cfd5804ae
-DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
-DIST syn-1.0.17.crate 198158 BLAKE2B 7093cc8aab4ae2f435aa70a54c8c2b8e4f6928ea76186059942bf5c74e2ad25d73608f469cb0f1d97071a5dc2e3d048a155084bbc28647ca39032f06bcd5a3a3 SHA512 5acf5bafb32f780e08495e1e0782c170eae54baabd72c45a1d350aa41aa4ff2e5fa84b23d088fbb8522f430526e938c459087f89e3372690bde7bd0cb8c4750f
-DIST syntect-4.2.0.crate 750573 BLAKE2B a526ab895803a9779c08021cef315cf457aea88193cdfb5f5cf8eef45a02651e3847467e7e51d0b50d098098d8ee59e82079b8488589ef80a7f999b9d28498d7 SHA512 d2dcf5444b739b6f4466aa40c0f061573d89d639ab1c759a4bd0e1d5eaab706794e8f510e70dd146e4212617fa16c0cc1745e98323e65baa699b79ef37040df6
-DIST tempdir-0.3.7.crate 11468 BLAKE2B 65850a69a07c5c7e5c25d77bfc9881c994b1fe8466b1712b904d9758b234f8d12db6e1b740d461a48b13667bdeca8178e75c956fd6eaa0c0d5aca5aa1ac7523b SHA512 e5b02f7d260ff594fc2dbbd441eb8adfa36ede937f32c8c812b458167c0e49f5cf493c6ebf83ce8007a0aeb97016169fda7f5d2996fecc72f9409d6f463d9bbe
-DIST term_size-0.3.1.crate 10754 BLAKE2B b8ed33afdf8348d9be3200b33b18d121d86fe5a91b6ecd3a8f7a4e55b45910597738fd68c568b5c66feb2cf9d38ba62da705624b52ff01d30bb452c7eca8f6e8 SHA512 fb43e0519cc3371b23b3d4c52d25c59c3e45afc550ba081e8cb832a48d9dbd50cbb69bb154ae7926fe869eb2c35b72b95238cdb8822910bd68b4f65927ca6a5f
-DIST terminal_size-0.1.12.crate 8111 BLAKE2B a5b43c7fe8a3e13e49d7c9e787fc712f51313ea09648e474ac6eee4c0eceda346f5bd85ad69bac1eda67d6713d6d34230398a7b6b008cc3b58ee6d4d6b096bcd SHA512 6f0060529cda5a891a861566d22b0c3a17a702fccd8191387ec7e463bcd05cc88a80d889eb146ef704b6bc50c7b136d340b44897a300d6ef6269dd4b83837b5d
-DIST termios-0.3.2.crate 16545 BLAKE2B a42ef0fdfe6d55784f628d6f39813a5fa02578c09c699cbad104d34e494e8b58d10ef411ac53cd1cd00203437063a0e1871dfa4dbed1e02c8b07379affa8258d SHA512 d672f0bf950da913ac94f94b01d1dc15f29064fc9ae8a0ccf09d399bfabc61c6906f255f60dfbd6b83a8493ac23f9f7c82a5852f854c498eddab1a04a48a4907
-DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
-DIST thread_local-1.0.1.crate 12609 BLAKE2B 34206b5232262cda9cc0fb970e20f154d43ff1c4477a5ad5ff9200e6d874a6c7b2bcd99a2dae75a984b54574281e049ad35307ace0dd188f44c9a95fa93139cf SHA512 f2bfca4eee32a8fc88a01ff5bf24518c12142228d95916d13aae35ed6addd0b7da2235359f15220049ef197555344ac31a8833775e7a5bd49144db9c54b3165b
-DIST time-0.1.43.crate 28653 BLAKE2B 95fe69647e8d52784be1fd3457578896aa38279d00f51f1070eadab111d39450583c63854c73d4384f2e4349b0250f1c9bff9901529b776c596846c057c93335 SHA512 c3e0c68cab1ed2f33f41955f83e632c51924e4d3c1d22dd0c4ae98499e03f3cafde8b0c2d9e69b67a78d6e4055e464ee00d1ed6af5eb9fa75052405b43e24a25
-DIST treeline-0.1.0.crate 3855 BLAKE2B 3347bee24c686a6b6890f85b60429d36b14f2738e6a5e5adcd493d099b097a8087f7c61f4c155fd8b3af3982a97da31740353b4d036ae451ed8944a9b0feaf75 SHA512 37a7c7e95855fdf0fafe5b529eed6c6cfc641da799bc6738a5649a9a0c3db2ef3e63d692862a987bc19263f33b6df2e8ae71b49fe30160d6d470cbb804511824
-DIST typenum-1.12.0.crate 36037 BLAKE2B b5aa97daf856e4c0ecf6f543ce75c1203ea2a27b493e4e62b1a0a22fbccf79217382061833e518a5de296a00a4a5f3c0c1cc736a7fa40a947712fcddf0735ea7 SHA512 b88dac076d4102f2b1d74501cc2bedd4eb923458e060ab77b826093e3146bc48005ad7d3471921c4f5e8765f3f93f8f7c48e0eb00e2623ad439bd60bcf64d6ea
-DIST ucd-trie-0.1.3.crate 44615 BLAKE2B 491f604d63446dbccf5176333edd159ac56261a9aa76efecf57e9a11ae017a6cba975658a4ffdd310561704fb0831686fb7770b1142b4ac495f01e26de51b099 SHA512 54d43b3824669aa20b725c7747f4fb65bd24e620670c968c1bb0094a0503773acda921b50a0b200c1ea0f84e1e059883c1704bfa5a856d2e2ccda116fb8c3e2b
-DIST unicode-bidi-0.3.4.crate 32228 BLAKE2B 853a85b29d1ac2025b7a28af64ead9387e3b4b1e790ad719d4374e349c1853ddbb5959a2890d9d6c94a5c28e4523fc3324deb6b1ed1aeb5e917f21b0e2516f6c SHA512 170ce083fa82bed13ecc62d85cb882fdd6491ae721e1633d3c1a5d3cee69422153afcf6695765c0e8fc7035440d0370d34afac9e978cb27f7506c07cba300e1e
-DIST unicode-normalization-0.1.12.crate 91057 BLAKE2B d5b8354990e1911e093d63d9b3b3adeacb38142ac68637fbfe59c0822f34c743e348cae9f535421c12cc6a56db2112dd5ec75f96c173b1f34a68db66c8ad8dd7 SHA512 0e095a59ff965499a5d2c79bfd4826b793103bebb4d2666c09e675110a50f79d985eb29565e4c40bd8fddc30237f874324d8a24786ead697ee0698ef8f79a1b6
-DIST unicode-segmentation-1.6.0.crate 90703 BLAKE2B b7d63bb8b62cabc604084957aaff021df24a1291f0ebdcddc424cceefe10ad399ed53152211c3e7557e39e21255166f922256f9f8e1fb488d3bae368b49a378e SHA512 80c6f92d9b39602a05809dc63a7cb05a305441689b6056801097a882a36c9795aabd660f884f707daa7e7fe6ad4983f6e245c226962cc982dbfeea2ddfddf41e
-DIST unicode-width-0.1.7.crate 16644 BLAKE2B 8cc5ee2dfeeda8ffe3405a0d4f1576d2b3b8ede1a42cbefb0ba3bd0d71b53a92ceade86c4a06e9d5b31382955dc6e1152ae5cd279dc26dbc51f478dad1d0f64d SHA512 39b8a539c9009d0421f54ae68b139f21456c9cb03d743b58535a977f98bc9655cf42eaacfadbcff796c187a6f315ae16259ee22be9c2da5aa042172c6b464d84
-DIST unicode-xid-0.2.0.crate 14994 BLAKE2B e66b4255798f0ef1c81fb852613fee396a042d780d2158a171dbb5e7dedad0b3d2522f5401ae5d215f89ab8be4f5c371b046e4845693a65554c2a6eedc5d1e28 SHA512 590f727d8d8354023062ae5fe7ac5bed1bcf79d86b883effd7f33b3ea3b1c8922998a63d621ca6962a969e890fa6edd009871f21cd57b1969264f41ba3f78359
-DIST url-1.7.2.crate 68597 BLAKE2B d8d7a4b05e956a956c745dbb536ff94abbe81af22e53af3d7baccf01ed7e556cc4f1f8e0a0d97c258c1f1a23209e1ae494079948de9f0d402901c0b6cdafc373 SHA512 c53d7c397416cb1f3c9f7654a8a0653f350c28d41880859f29f681cd6269848890c1396b7ccdf571ec84212a8f3959138f47193ac0595a97bf98972b58e1ed04
-DIST url-2.1.1.crate 70383 BLAKE2B c4096cb1bd50e9ca97fcdae0ee8b58957e21507607eafa8d84ff71c3df1ba52c68299609776f7baa45c93b971f8b61162fd8afd4174a5c7b66f36dc673707fa0 SHA512 a16c3a625fa85be9305f8150d5711c3e3aaa1f33753e7ecb8368b176cf3ea96f51fde74598c8ea3a5db2effc338589fd2834b297a1fba4bed967fa39e670fabb
-DIST vcpkg-0.2.8.crate 11209 BLAKE2B e393dfbaabf1e47bc74fd89dc05e09f2dd9fd8b965a84f638edafcb2f5cf062005224d0c1b229394b40a3ecdf0fb34bfb3bf2c62a5d5b1016663e02d08bbcc8c SHA512 a239e969a02c8d8670178cc2be654bd12d6e6bb18be9eb70ec547212289fd2ef98859e6b3592aa6fbaf3178e0f2c27e2c8598d82990077a74896e739ae1374b9
-DIST vec_map-0.8.1.crate 14959 BLAKE2B f5c179ccb4349d543747d5e3bb3edfca4bc9f3f64ba3c2d40fb1d9cba98433b7a0641387aafda6347c9b3603592c64bd820b217b46fbfcd37f802f298e5793ab SHA512 026cf10dc7ba98ae51dd312fc847cbaea41c25f0da5db6e0e22c2ecf75584bbf876d7bd96035fbbcf6696d702d5a3f25977e02a2d77cf519aa21e3ed05710e40
-DIST version_check-0.9.1.crate 11459 BLAKE2B 72f002c00504f635b7d2d7ee7137e07ba9c182d2e41d32a51851896f6bf6742c5524b7f66946437ba581ccf80b9c9a57280dd4b02df0918569ac710511940fc1 SHA512 b9cf363169df2022a961f5bed4fb7da07513e0283a85aa69752f6ac567e942611ed2216ac61799db1a199e2bdf0fd9b994e35d4a40c6cd80cd26b97cbfe977cf
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-1.0.104.crate 236683 BLAKE2B 865904923ecac469f1d92bab04ea9ee384be0592c7a303d9d0f2f4bc755744bd883372c215a8f1add8bc2728d7c2c27489ab292fc8a89bdce918fc4a32deae44 SHA512 8feabd8e6b1b5eb15077d7c92f0b3269e848d33b1f233b3df343b6d445ed332fb23e0222911a13edfd82cee969d25c43434268cd7a20ce1c0a608a1bbe327b29
+DIST syn-2.0.12.crate 240123 BLAKE2B 3a7b58eb8bc7afc57c08add89ec4969db77aa8d8f9c30569a5194608e6894c98496f52ffe082b2a966d6fe120b39d3213a111c01d2a4bdaf39f04e2faa20d3f2 SHA512 170707bd4b6d815529a0066a875f097a25cd6fca03921314b9b909a69bbdb60860b0b3779d0bfac362062420355fe0cd4bd68b4aed188d4d8a790e278cdb5ce7
+DIST syntect-5.0.0.crate 809452 BLAKE2B d76194d2234c77decac13d1bd2036862231718ce0ee050469fbbff094a11bc8f4ae2669077f6433d59a113d058c449f6e4d091cf520a985a9ef92dcab058f136 SHA512 b444424ad5f2ff9897707d6c2d0a39cf4e48a8d9a838286fc9f7bd9db6f1b4228bd2a5c985f5f88c014e75a7ee94bffdfee1cca45bd68e6db52e624e71923dc9
+DIST sys-info-0.9.1.crate 20589 BLAKE2B fb3c43a1368c9206393b28064b38a1560aeb863b9b0bc89c9bf6ccc344a46a590296df3596f421218d78c26ae90d3f869ef0457c8c34e8e8dcb9bbd92fee0450 SHA512 52e23efd5bba1ce07d7fffb8c2d6864a8056b1e8ce1b85c4d2d4b37b9d57dfa5a6c0eae9e2018e07af47469c3f7812ccbd27351cbd6c95a7b788ec87cd544b2e
+DIST tempfile-3.3.0.crate 27578 BLAKE2B e98c5ed4c59b6ff411e89ad4eb529bbe15264d6744edca8675c89bfb4397fbbb8da60bbc582da24bf9953afd9bb17cdb22654d933468697e9fa9e9903e6a7c77 SHA512 ba6faafb2dd56d694efe424752099a2efb50316afc0a4db9fdb7620ae3f1a31dfbb2a7b41724878cb977fa11f7568a406bd3b6a4f7cfc0b88b86b2cc616b953e
+DIST tempfile-3.8.0.crate 31720 BLAKE2B ac975555bb4957f91e7d5733ef737bf25c62a738096457afa05079ed038de5e7144cbfd0e28bacd3eeb832de611616fb39ec07866481205c1f5c1005b2869d31 SHA512 8bc8e954bc0c6af46cf6e77d70f93583baea39fce54b111f4bba51fe5d5e5c184753ae2a2ea68a882b6ba5a157a57aeffeecc3e3cae86d78d952f3aa025fdf7f
+DIST termcolor-1.1.3.crate 17242 BLAKE2B 5aef69c0004081bd3cc4d531d13d63627cc02313868c0faab62358d13abfa7b4ba82f142c2801d25a6ae46ecbc8b7bdbeaa21c9105ea3b8950ab6a38cdb88513 SHA512 5838fcbfd70f300cb4b62aab50565db52074c56b152ccc8ac1173e4676c0d5a636271bf5a645a77da6e1d4edbf0091af2cd4dd6d73b85c3d198c760898c06f3a
+DIST terminal_size-0.2.5.crate 10271 BLAKE2B 3ae449296ca82131fd98745fc23bc7d6d4909a0c94999caaf377ab22f78fb30731a480c25839daad6449ffacd8b13c794f3526e9603bcfbcf5975a5c0405db0f SHA512 0f32d8708967e46a5def904d13d49a2496cfbbb9b19ab71aa5b24afcff6ee3677054b1181b529b85cf36cc9e87b9334a93b094dc8b4e236ca92b3e440ff9de54
+DIST terminal_size-0.3.0.crate 10096 BLAKE2B 097ef50a85945128dcfa36d8ea0fb15f11142c206462a32980dbbba4fe2872abd214823fe3c75e804f3159a97d6e929ec338860e9c89587da509fb9e6da5d339 SHA512 f3bc9144aa8a87556543584a2495df6267ce3bb017f3ed3d00fa43e89b5de783e1285ca62dbad9dd9c3b37e3a476a6f3ab0804eba2411cb594a569bbdb310681
+DIST termtree-0.2.4.crate 4416 BLAKE2B 994134f7af962123b19984aa32b30c19c6f77202067a90ddb3aa4414ec8dc541f5d8be9282244cdbb1eb16686c11750393325fc7f7005de0bec38d6a9219e015 SHA512 afe4e94bd57c9917ba48be4b3a22ff2b9b8a6c764c86871a3be9087ae0c65326fadb466e285a129082e4243ba6bca933d89ea01aa9188222c055f0c2b308cdf3
+DIST thiserror-1.0.38.crate 18947 BLAKE2B fb81df34dba2958395ae360cbb14e2708e5a3cfa5cd0bd03c58f29c146d8afd8595a7ca1b30f1ed2a75ba140a55ba450fd4fd040aa1a1dccb0baf393b0e98d60 SHA512 95b8ca682b579834a04058f03ed0c994ccef426d75e0fcc28ee47151d343da25e8fe31f8157744d942aa54652115f477fc6037f91c581dbc127b829cc96476ce
+DIST thiserror-1.0.40.crate 18709 BLAKE2B 8057ebcd11546f8b3ae5d760c1dd1764386f3c29dc43bc7a4aef20604970c65356daef137734e80260051d41e39979943bfda496459696b924a95f455159704c SHA512 db1b1fab3aa61dc6bbc672670eb70cee2f838fa713d3a927022900eddde253108d123bded1aa6df8d314e1aa2f8ff37bc72fc9b0803fe3a56447a64290ab2a91
+DIST thiserror-impl-1.0.38.crate 15429 BLAKE2B 96202c256e970fe23f07b461d71430889e36d9f0e83608d001c6feb4e86f4a34047ce93617b27f89c6e2a5d6ad8702b9f64ac7e59bfee221677261fdfcb06e69 SHA512 628aa28404a181b384ac6a11a433829a5481d97face5bc1704349414f36e93440738122fca716fdf878719870d10e0cf8d495df6b1d40913e985c2824cbc3aba
+DIST thiserror-impl-1.0.40.crate 15138 BLAKE2B 7590428b5a97efde6a823440a9c91e1d1835b20df4ad8a700c1eeddd98516f1203605853fc6dc65528c5fd92480d04f9a8412aa7c20a524cb94435b0a0032f1d SHA512 9027f2d4127864c34d2d92ad3b2753a95893d26f5b2dcdec869884a98232c5304db1700a38112ced258e5f3832218cdea3a4bb21223098e1b20d06af1fd7edd2
+DIST time-0.3.14.crate 93111 BLAKE2B cfa2943bb23c191ffc65cf9ceadc0bbc7af7b6f5e1bbe78fd1c0f65e7787e4ee2a9166d32d5632e13facb65bffd87cbf746dd50198768de9104502f9b1ef4f88 SHA512 7655bad4d95f3533dde6017aa2e41b7760406d38b2ef66e84195133fa33d74b78f27d943ae5054e032e45d6f03cfcb4a14601db381b13129b6c1a1a0298c8a3d
+DIST tinyvec-1.6.0.crate 45991 BLAKE2B e9699d4d80a78978f0ebfd049f5b33d7f23d401cf4f4439ccb168e8c0e322473ad0ea7e2ff0ff69e9aac3e5c4c9ae5a7102185533bfbf96dbe77b3526e700bc9 SHA512 e5acaf353c58c60ae5556130a934f1048abb79cf6668ae467d308bac44b689d8a9997227ea879f4b5fe50f29cde8761801b088d7149bcd063b973056c381921c
+DIST tinyvec_macros-0.1.0.crate 1817 BLAKE2B a3d1966bf57c11afcd026269135a6189f149f905bb70b47537c0a7bcaef0bfc6c89bdcbdb0f6cb8e5255632855134631c683fc90606a254ec8ba818fd5ef0794 SHA512 d6afc83a3c70cde916a6ff599e2772588e4bbfa7a5b1c7e5c8aa0f4a8a5c9426182497a644e4a88194ece986d38fa64b6c8eda9eb1630441c8e65a8741a45873
+DIST unicode-bidi-0.3.8.crate 36575 BLAKE2B c0442dd47a8ee81f575b28e34c9781ccf507b53ea96d1d4df2e8117231e8e67579031e4244a2dacfd6f4c24ec01fbbd4da7c9ab72ad50af51ef56d7d813b6444 SHA512 810b5be48159ecbca542c715496f279518285c3b09f7c39451986f94e6c259fab1057512a2148bf99ba9abf76e861a24456b547cc2273f0b45ed5d3ce9dfe3d5
+DIST unicode-ident-1.0.4.crate 35491 BLAKE2B b92d4f09ec86fe1e0b403b8cb0787989c313f29e6b24961fc2ca046ee5e3b50f43f49469a290880412dd37fc1b46cbeb9123e9636e1f39e425f722a5aa44ad08 SHA512 db41d5c3f72cfaf654b4c250e18ac0ac077a816fd582f1548ed384653f467c15f85fcfbbb4ed2f9e8182587181abf1db14059d50f3e43b60434ddf38c8f65d89
+DIST unicode-normalization-0.1.22.crate 122604 BLAKE2B 3f3430b279cc0ce1595392c869442ce676ab097154c688779ebcf726e10c497df59be2cd7bb2f84f99499a9df0654760a10ac92224c17d74775aeebe291241e1 SHA512 a5810d5e9cd93dbb80e013997aa9d38e60834619483a6623eb2859ec5d59a5aec3fc4db123dc7f4e2fe9f2b8799cf6af48bdff22d69a00a23707240e8bf3bb3c
+DIST unicode-width-0.1.10.crate 18968 BLAKE2B 6174e307fd3ee290d0a5d1d31233baaa5315cdb73f19b8580718e9f9eb04cfd3aeaeb474af1e50c4b9fecc6fc777937dedc527c9dc9ed14ccf42af099e591f31 SHA512 9836a8d489d18ea1ecfe1957ed6d5da7dce825e138cd1848aef093fa8d2eb83fcf01eabb1a2446df4f5ede4e67316e9e81b5d58b59d4e8c5d67870e8fa5dca3b
+DIST unsafe-libyaml-0.2.9.crate 60812 BLAKE2B 2fc475191d1285344e06a7056503bb994acf3bcd19fc5692a61cbf2315b2a331a0ed7d30d50c112cf05fa41f6f71b0b8235e15bb936848497bee85592f6ddc3d SHA512 31e803c321475364c6df65cec149a044bf7941379e9e66f47a698ab324eef0b1a3c32092ccf060e73a350b4c87e4e8bd908a1ad0cccf7b75fd86da679300663e
+DIST url-2.3.1.crate 72777 BLAKE2B 6ca0e537baf373b92269b2531945c1cdf360f1566cae4734dfb96f05a605e5c6c82e3192a1b9dde0ff22b92b87aba2d56e32a1bf17882b4de15efd7cdf52bc76 SHA512 8224010bef067574481e5d84100d944782d52b49db7c396ae2b4dfc145ed58769c15440d97a0fed4d2f9857592a8601417cc5b1bdea959c47a3e7a1f7182ed0d
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
DIST wait-timeout-0.2.0.crate 12441 BLAKE2B a99d3f57bc6e784ac06167f98b2dc2841f730dfab4fb9772b15e67707f756d6ba7daeb3e992d32291bed3daa85eaa8a8ddde64db5e1acf1cc4031fc9bdc82212 SHA512 db3b7aa2acfd44e64451042b8ba98eecab77a82aa5c58ed08dadb119ab36dee4e26d62baad7978ed56d5ad03019c96be5021455362290f56043981137bac8066
-DIST walkdir-2.3.1.crate 23413 BLAKE2B fc9601f4a28cec383297dbd87d422e56db1e989e4273900750f05d1f4a92e114a5b1a5a54368e290c5f4b47159ed51f52d85ce66f003cd2f52ffc737ead20f8b SHA512 ba807ff0d098aabdcd37e23204632beea1dbb7a6adfd16cb1009cae9e7b6957cfeab705cc454bf8f2b62a08743214ab995e43bf46fc510012c938f9e2a434951
-DIST wasi-0.9.0+wasi-snapshot-preview1.crate 31521 BLAKE2B 716bdd2ec46d0bc9911c5e5e29fc783840559931b2563d8619675fc11da9527ddbe653a0f1ce0b782ee0c5f7a3131aba2b0867d415f003aa9c2389357569e7dc SHA512 dbe641f796ee3a5daafcaafc911ecc6dff170340f477c2df7a61fb4858a85aefc2637c9e61973ecce66a987aa8e08a736273a4aad3ef47eaf61ed4268dbf9c47
-DIST wild-2.0.3.crate 7059 BLAKE2B b4dfafc1a83bb6ae06f6f76a24cb7f2fd8b583ff6225b3ee05b6011ceb407bef48e62ec3b8562936cac884a1d7363751e75a5b754d6d7da1441877ce755f59d4 SHA512 e477b3701027ef6099c08f1b085b3e012debbf6688b249511108246792ba76b5462f581fdf2a6298a6fbcf4d34beccd14619031983ee0a83871d150ea434cd5c
-DIST winapi-0.2.8.crate 455145 BLAKE2B 50f3c2a0cf4eeedd6891b11392e520c1cca139a71f8f736eabaf43aa7e4b1b5d57697918978220459572d373940edf971eb8302f292cbff832283e905076319a SHA512 115e6f027cdd4a56f77ca24f4ab249d2a6cac1e1f955c826a9b6ee05db4861790a533f5e674aebbb540370fff52ed41618c2cd7c906e73200e92df213109cebe
-DIST winapi-0.3.8.crate 1128308 BLAKE2B e0e8ef6121f222b0500525192ebb69b26b71cc16f9ba92186f8ad6acc9de4cb8cc7c738f9c31f5bd223d2e34c93c496e8448c973d69797776004670c70abf69c SHA512 5a899ee5f09f30d742b8b8eba78da05cd9f4c664408fdeb9370373f8756a962a23e3f1c07619e745b3270138606c9a369076c02c3f5353f657df09d203d9a736
-DIST winapi-build-0.1.1.crate 669 BLAKE2B 6c8d8e0f81574c086f06fb3f234b0e6759d293d1d254857c3d491e4d43279e5c2f57f2fcfdc9d5d7b083280f4cc2a75a6ee9bc1541ec6ce8f8d904ded0567faf SHA512 8b0a239e205a5368892f41c870a8a7ea16e3468c364b03382bef7fa3a2e7159b09c07661e95b1227578f6d72c14879daa4444b28c51ae20ef15d985d59ca5a77
+DIST walkdir-2.3.2.crate 23516 BLAKE2B 473f2b51aafd6ac17e5c3da8d545d179b31486b3a65ab39fbd8bd7fbb2ebcc24bebf01781200a26a68f0b1cb464f5763a919aead3b03eba5a7e1be6efec5500b SHA512 6c44071354faf37720ec4117ded34c8d530489542ee107ac26a7a56ef4a882b9003e22e84f1d61f6078643521343e35aa1f7b57c838779e78e5937a667bf82da
+DIST walkdir-2.3.3.crate 23125 BLAKE2B 3bd354b9796a31bd4c8f4ca695514101a7837ae2134fa1ffec20df1cc946a67b38c6b50affbc2cb79ffee0934474d8269378dab5ac49a4943ccf8c7aaa51db11 SHA512 2b6e1e27c16e310f636eb1c9ee58435509fb8f7a6c5beba4dd13d87aa1d91599a593bfe720a675d536ce63e217c31e240a57122455d8e18de1282a9e7fc3defe
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST wild-2.1.0.crate 7548 BLAKE2B 51de93b588b1d2934a7b41a8a259a3948db846383e966ac4d1d0fde68927dedd6aac08eb659ceee893a2c1005a33e320bd7ee1b3af17c05a3f0ad6e213ef3230 SHA512 458716b78fde64c65a10ae28d9ac75494c5362a834dd48f5d29efbf7bc54323033f524cfa8ec9d4c851121cfc357d3935129069fcb746e656b8ae397cb9b197c
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
-DIST xml-rs-0.8.2.crate 52353 BLAKE2B e5f041831d7e15459704e031b22b018c82aa214c0d3041639aceca53661536d71f33f2ae254a6376f683fafea351e34e274190a8abfa57cde778acd35ca305b9 SHA512 b98dcb7e9293b372ab61739ea5c82782f4b8dab87c9f3de24fb2c98b87399c6990d77cff87921c4c5b3e072b79a3c5ebd9088d0476d19956b4771e879f575dd3
-DIST yaml-rust-0.4.3.crate 45768 BLAKE2B 6af7374439000dc5e8795b26fccb1bc691040846f844e10765fe5df06237f5cf52752b0f9d25ed7c6f62337f628ee7be2e024f8aeb6b55a7c76f0d3b2ad0489c SHA512 31b0236fe041706befa938cdeb9c74940daccd2f80bdbd4e0e890901c868ecffc39367a41914c8bb98373d1002904f18b18ff13a08bbecd19dec634c08b7a7a3
+DIST windows-sys-0.42.0.crate 3006791 BLAKE2B 7a0962364ecc416cf0ae7e49cce1298a12d819003e488f6e77aff1a52710f00378638b6a05db5557a031e1b75659587657971ddc63eaab35495133762f99a7b2 SHA512 b07b119688f3e3ad234d36979947f34e8e19988fb62101afbe18ec8afc9c8a4261128939df8bbb849d5c5982422cb4c50dbcba70f2bf401fbb7c605df1b2b354
+DIST windows-sys-0.45.0.crate 2568659 BLAKE2B 6f2d634d121a9bf41e2887e277a73f33aee69b04c7fcfc6ff973d21902787997f1e186f530e9226cddc003ffc3f85a179c069c8a8688de459f617df92d33f94f SHA512 f239346c0141b95aa76e0771e2f4e38b9a592f3cd92c6001de353637cd65cd73b94cbf9917a4eaa9b0c0b2e6e2af920b9cf6b3fccb52770df5160254cffc1c47
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-targets-0.42.1.crate 5524 BLAKE2B 755cb6184733417763bb650fb0bd84bc757503aacbf0d91b811d42e9e8efda05434bbe5518006a88937a82a2a607605a9b609df4f34eb58674d09564667d95f3 SHA512 940c85f6214aa4da17787d3bbfe8d6107a9a7fe4f2e2fcf2b1634facf4619620ac2a7a835ebdd0f57970c992c459ba0a780e64e89945005b240c92563c42711a
+DIST windows-targets-0.48.0.crate 7466 BLAKE2B 4ef6d89ad5b1acf26a1a24348122b86d3943bd95935499bc9032fbc7aa01c04999c723df7fecb4989854cb6b7cceffe141537dfb05a9eaf3902c4cb490533116 SHA512 1d2a29602a1e0846c8577ec9167c5f9972091998a5df449d67b13ad918bf37680e7f97247baf5e3010c166d0b3182418c2925470998b92893ee9469939b91e22
+DIST windows_aarch64_gnullvm-0.42.1.crate 362795 BLAKE2B 722b45789bcd1d973803b327d44072fbf9c904d448e29ae9e56d2f9d1a3e9b64e06883e4bf5ebf141f1e924235858fd1472e07a744cc5b16a0a3a4fc8ec8f6d4 SHA512 51eb9fa7ea441a9fef590c12576a8bbef74932d40fafde8f9e3a28f2734ce5aee6dd5fa478fb3847443241c8c392bb4abbc6014c71260bf924431779f7184f73
+DIST windows_aarch64_gnullvm-0.48.0.crate 366543 BLAKE2B 9b10f65089fe6da3ff38a1061783f635644ae84f567f891eaced280af68f7ff3919b34289e8850aa34554bb0346903273ff0a7fa743ca8794c2d23a9f1b0185f SHA512 80c5aa74c5669f7acff3882a8e7575f15e8d7cc58c11a1cb731ff423eb9cc9ba43cc6b80e52803c0d44e6a9001655ba87de6f43a9fe858da6d6e3a5c983a2711
+DIST windows_aarch64_msvc-0.42.1.crate 664655 BLAKE2B f4a060b802016a6d77a8ea6ac44c35dfec384acef9c45f932e2b6aca9d3ac48ae031f99e5b58f270d6020b8796e9dd06f7e8ffa7cc5610ea3f69181c2be7adc8 SHA512 f6412bae4b041201ef94e5a159ce90fd6b09816350204d4f573c1afdfb0a6d62d7887fbc2e416b40ec1d4478db521be492edf4703d87482d6d0006a51b827538
+DIST windows_aarch64_msvc-0.48.0.crate 671479 BLAKE2B 0c80f210437628e1d878d1d14e884fea532c7539b3030aa76d46f27d02372c715c6e33d7efdbbd770666472b44a66c30711a33d819ede9cdcd51c96355802d45 SHA512 617e47a7202f1db4dbd3ecea509682135ccd85e3a458c0331b9bc7aa1d84e5756b59c881cb098d5c6d4c951248d13c8253a8e8a50938e1997bd19ceba77262df
+DIST windows_i686_gnu-0.42.1.crate 733428 BLAKE2B c1ca24973aca06b255d9317735cca7a13f7f69293da52dad41df43a5cdf48aac3d40d8b6765cf564905fb71cb548308d757f01167efe7a61da7bd2e2a7080f0a SHA512 61c3271b07df1d4585c875d27cf1686c8f595dcbb79626e8d15ff47228f7b7a4556d3d994566ccceee0d6795a4c76767f85f4579282fc9eed731e04c7e193a57
+DIST windows_i686_gnu-0.48.0.crate 741490 BLAKE2B 5a4a584f8d8ee5bbd2d4c5b6749a66f2d43fc9e4ef90faab2227709b270f0d46fc26578c029edd96877c71309316ddb32d91c39f46d88f9a484c614f866e3dbe SHA512 15149fdd48b61b6d993acd392dbd353d0280d984ea88745217e4207937174bb90cdd9701f69ff0fe06a842f03607cbb57937d20d79ab577181e605a8a8fadc68
+DIST windows_i686_msvc-0.42.1.crate 722583 BLAKE2B e03978daa0ac95d7bd9f594b28360dab647a1fe525f0ae4b44e6842d93c5674d9f202e8bbca99a0d30ecf7d138af0c48eec8e69e08bf285db51e32bcf83a2c54 SHA512 8afa4f92cb7bd96d4fdbefbd8e7bcaa37dee52224d5d8b950c5a537d3bb805bf9781097b8bd44d96e8b62b1290e3a3020557502fa3b357a53df6fea36b318932
+DIST windows_i686_msvc-0.48.0.crate 730056 BLAKE2B 4e4ad6ed94948145199c2ed50fc65e4af08455a0fd058bb0f763d481f30b029f99a2b8dbac087b29e762500a19270f6683baf62ba99d141eb002a5b0b5c8ea05 SHA512 11a50800e709712dbea907275bc0faa46d2eb2969118445ed5b932d9c5957a09592a5b26a40e554c1f5fd56c6d074a07637e6f88eedd2224e1001e62df7b469b
+DIST windows_x86_64_gnu-0.42.1.crate 697614 BLAKE2B 3cef0a3da3ce142bbdf932dbb54eb6473070c5722c9ec791dc4077efe2d774d51f8b3d06b3321f8f21cc49764f44d54b3432ee7a0d9376925b422b197f5d557e SHA512 f4c16b587fe407dee1f39df029c52302a0fbd5f519816a8d974fe9c2f928043b14037c701c0f3c9cf2e5c765e82430fd4b71615fe63a66a88159f7b15506f892
+DIST windows_x86_64_gnu-0.48.0.crate 703595 BLAKE2B b227efb78a99c43d0538cceadada3fa1840df29adc665787fdcf845b73e77d782da8a9f9aa602e1da61401b550d0107176feb6c397c922a6240b38cc8f04a180 SHA512 38eff1164fb37dbd2bbe53404b20cba92de84cbbd5e4eb9ad60d51fb43d6fdb8b87a1488e2c88ebd4b3ff3b708f93fdc05df4b14a285d3ff11c33ff0d9828602
+DIST windows_x86_64_gnullvm-0.42.1.crate 362788 BLAKE2B fff81e63b86ad04ce22ad3e05ec4cc02c0b791384c93bafb50832f6db9cb7fd9301ad3845339a08dd8cadac1d59f3e8dc9d5f56d7a987989dbfc16b9131af67b SHA512 8cc988b5995a4726bb7518b7fccff528274ad9b2b0160fe247eb240f9ced10db95afe7bff91bfc5a08ebd8237b6821e4a4abad1ff9da45022f1ce7e7586bcf05
+DIST windows_x86_64_gnullvm-0.48.0.crate 366536 BLAKE2B 295dc3aef18c604d1579978045f4058b1a315083a8ab842bddf5800ec3460b1530ad88c3464acab712a229290aca235810de8a3b6a253859a354d9fa97277e58 SHA512 8d82fad4c8445030844708aa026a62f1ca43362b8e15f14b0d226c7e9cda04ffa0715087b6a025dbb738e8891de24fcc4a2df071a532917cf03c4a46f934f396
+DIST windows_x86_64_msvc-0.42.1.crate 664606 BLAKE2B 6c460cfa392aad0d11add200d652a42ee1a60052570527c4e85405f765255375729d4e26287f5246dcad65fa89ccadea23c5135171b311e6da5027e33149c547 SHA512 a651b1a34f101125f929c1d1f5e933691c7a5c19d0bb0c501fb6812236d2771805428e3bd5e05be7d72715595f5fc9e7978dd7934e5d92e9b78a41c2ece695b2
+DIST windows_x86_64_msvc-0.48.0.crate 671422 BLAKE2B abb063610dcc38581657133182b7d9efeed5553df67bd2bd6f30f1668a645186e4824f9ef556a5abc84ace10b1b437b6325bbda6df5a64ce880d7dcb743ac786 SHA512 6e598b8e3ac54912a8ebac01b0dd2c58fd282072527d7fedc7f6ebecdfb7dcb09ae46c22293bc0117849437f8b053db5e90406e7a38276f0f0afd06be3966795
+DIST xml-rs-0.8.4.crate 52690 BLAKE2B 140d4e725ae0e82c949838c1f6d82e1fbb00e2df4d51b74486597302d4a434ccb46bbd6f5e97636b4947c0092793928c29837a3290bb525344e8a27c0951a42b SHA512 b21b0db9ee7cdfddae7c110e4fec714d719e75ba139744c290692d660caa425aa8b1ece644deb5f1879f21c0561b9b412b9ba8931f7f5b4e220ef08f8a7fc5e6
+DIST yaml-rust-0.4.5.crate 47783 BLAKE2B 3e888c5cc7afb43eaf3aaab2b6f47b86df164a66eb54d4e166b965cc84b1e06cd17bd992a0d6ee175d9a73a76e2b44a13167246383ed054afcf3cc1710b309cb SHA512 7621dc8dfd5e7d4a7a8805b2a7e8319b63b852367655f2359d4e3e8fec6c4fad52d75c46ce1161e4c674eac0780b757ce9d34e664e304d8d2beec7afa0363ea0
diff --git a/sys-apps/bat/bat-0.15.4.ebuild b/sys-apps/bat/bat-0.15.4.ebuild
deleted file mode 100644
index 864ac40b0ab1..000000000000
--- a/sys-apps/bat/bat-0.15.4.ebuild
+++ /dev/null
@@ -1,216 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-adler32-1.0.4
-aho-corasick-0.7.10
-ansi_colours-1.0.1
-ansi_term-0.11.0
-ansi_term-0.12.1
-anymap-0.12.1
-arrayref-0.3.6
-arrayvec-0.5.1
-assert_cmd-1.0.1
-atty-0.2.14
-autocfg-1.0.0
-base64-0.11.0
-base64-0.12.1
-bincode-1.2.1
-bit-set-0.5.1
-bit-vec-0.5.1
-bitflags-1.2.1
-blake2b_simd-0.5.10
-block-buffer-0.7.3
-block-padding-0.1.5
-bstr-0.2.12
-byte-tools-0.3.1
-byteorder-1.3.4
-cc-1.0.52
-cfg-if-0.1.10
-chrono-0.4.11
-clap-2.33.0
-console-0.11.2
-constant_time_eq-0.1.5
-content_inspector-0.2.4
-crc32fast-1.2.0
-crossbeam-utils-0.7.2
-difference-2.0.0
-digest-0.8.1
-dirs-2.0.2
-dirs-sys-0.3.4
-doc-comment-0.3.3
-dtoa-0.4.5
-either-1.5.3
-encode_unicode-0.3.6
-encoding-0.2.33
-encoding-index-japanese-1.20141219.5
-encoding-index-korean-1.20141219.5
-encoding-index-simpchinese-1.20141219.5
-encoding-index-singlebyte-1.20141219.5
-encoding-index-tradchinese-1.20141219.5
-encoding_index_tests-0.1.4
-error-chain-0.12.2
-fake-simd-0.1.2
-fancy-regex-0.3.3
-flate2-1.0.14
-fnv-1.0.6
-fuchsia-cprng-0.1.1
-generic-array-0.12.3
-getrandom-0.1.14
-git2-0.13.5
-glob-0.3.0
-globset-0.4.5
-hermit-abi-0.1.11
-idna-0.1.5
-idna-0.2.0
-indexmap-1.3.2
-itertools-0.8.2
-itoa-0.4.5
-jobserver-0.1.21
-kernel32-sys-0.2.2
-kstring-0.1.0
-lazy_static-1.4.0
-lazycell-1.2.1
-libc-0.2.69
-libgit2-sys-0.12.5+1.0.0
-libz-sys-1.0.25
-line-wrap-0.1.1
-linked-hash-map-0.5.2
-liquid-0.20.0
-liquid-core-0.20.0
-liquid-derive-0.20.0
-liquid-lib-0.20.0
-log-0.4.8
-maplit-1.0.2
-matches-0.1.8
-memchr-2.3.3
-miniz_oxide-0.3.6
-num-integer-0.1.42
-num-traits-0.2.11
-once_cell-1.3.1
-onig-6.0.0
-onig_sys-69.5.0
-opaque-debug-0.2.3
-path_abs-0.5.0
-percent-encoding-1.0.1
-percent-encoding-2.1.0
-pest-2.1.3
-pest_derive-2.1.0
-pest_generator-2.1.3
-pest_meta-2.1.3
-pkg-config-0.3.17
-plist-1.0.0
-predicates-1.0.4
-predicates-core-1.0.0
-predicates-tree-1.0.0
-proc-macro-hack-0.5.15
-proc-macro2-1.0.10
-proc-quote-0.3.2
-proc-quote-impl-0.3.2
-quote-1.0.3
-rand-0.4.6
-rand_core-0.3.1
-rand_core-0.4.2
-rdrand-0.4.0
-redox_syscall-0.1.56
-redox_users-0.3.4
-regex-1.3.7
-regex-syntax-0.6.17
-remove_dir_all-0.5.2
-rust-argon2-0.7.0
-ryu-1.0.3
-safemem-0.3.3
-same-file-1.0.6
-semver-0.9.0
-semver-parser-0.7.0
-serde-1.0.110
-serde_derive-1.0.110
-serde_json-1.0.51
-serde_yaml-0.8.12
-sha-1-0.8.2
-shell-words-1.0.0
-smallvec-1.3.0
-std_prelude-0.2.12
-strsim-0.8.0
-syn-1.0.17
-syntect-4.2.0
-tempdir-0.3.7
-term_size-0.3.1
-terminal_size-0.1.12
-termios-0.3.2
-textwrap-0.11.0
-thread_local-1.0.1
-time-0.1.43
-treeline-0.1.0
-typenum-1.12.0
-ucd-trie-0.1.3
-unicode-bidi-0.3.4
-unicode-normalization-0.1.12
-unicode-segmentation-1.6.0
-unicode-width-0.1.7
-unicode-xid-0.2.0
-url-1.7.2
-url-2.1.1
-vcpkg-0.2.8
-vec_map-0.8.1
-version_check-0.9.1
-wait-timeout-0.2.0
-walkdir-2.3.1
-wasi-0.9.0+wasi-snapshot-preview1
-wild-2.0.3
-winapi-0.2.8
-winapi-0.3.8
-winapi-build-0.1.1
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-util-0.1.5
-winapi-x86_64-pc-windows-gnu-0.4.0
-xml-rs-0.8.2
-yaml-rust-0.4.3
-"
-
-inherit cargo
-
-DESCRIPTION="cat(1) clone with syntax highlighting and Git integration"
-HOMEPAGE="https://github.com/sharkdp/bat"
-SRC_URI="https://github.com/sharkdp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
- $(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 Boost-1.0 BSD BSD-2 CC0-1.0 ISC LGPL-3+ MIT Apache-2.0 Unlicense ZLIB"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-
-DEPEND="
- >=dev-libs/libgit2-0.99:=
- dev-libs/oniguruma:=
- sys-libs/zlib:=
-"
-
-# >app-backup/bacula-9.2[qt5] has file collisions, #686118
-RDEPEND="${DEPEND}
- !>app-backup/bacula-9.2[qt5]
-"
-
-BDEPEND="virtual/pkgconfig"
-
-DOCS=( README.md doc/alternatives.md )
-
-QA_FLAGS_IGNORED="/usr/bin/bat"
-
-src_configure() {
- export RUSTONIG_SYSTEM_LIBONIG=1
- export LIBGIT2_SYS_USE_PKG_CONFIG=1
- export PKG_CONFIG_ALLOW_CROSS=1
-}
-
-src_install() {
- cargo_src_install
-
- einstalldocs
-
- doman target/release/build/bat-*/out/assets/manual/bat.1
-
- insinto /usr/share/fish/vendor_completions.d/
- doins target/release/build/bat-*/out/assets/completions/bat.fish
-}
diff --git a/sys-apps/bat/bat-0.23.0-r1.ebuild b/sys-apps/bat/bat-0.23.0-r1.ebuild
new file mode 100644
index 000000000000..b0f52777c924
--- /dev/null
+++ b/sys-apps/bat/bat-0.23.0-r1.ebuild
@@ -0,0 +1,229 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ adler@1.0.2
+ aho-corasick@0.7.19
+ ansi_colours@1.2.1
+ assert_cmd@2.0.8
+ atty@0.2.14
+ autocfg@1.1.0
+ base64@0.13.0
+ bincode@1.3.3
+ bit-set@0.5.3
+ bit-vec@0.6.3
+ bitflags@1.3.2
+ bstr@1.1.0
+ bugreport@0.5.0
+ bytemuck@1.12.1
+ bytesize@1.1.0
+ cc@1.0.73
+ cfg-if@1.0.0
+ clap@4.1.8
+ clap_lex@0.3.2
+ clircle@0.3.0
+ console@0.15.5
+ content_inspector@0.2.4
+ crc32fast@1.3.2
+ difflib@0.4.0
+ dirs-sys@0.4.0
+ dirs@5.0.0
+ dissimilar@1.0.5
+ doc-comment@0.3.3
+ either@1.8.0
+ encode_unicode@0.3.6
+ encoding-index-japanese@1.20141219.5
+ encoding-index-korean@1.20141219.5
+ encoding-index-simpchinese@1.20141219.5
+ encoding-index-singlebyte@1.20141219.5
+ encoding-index-tradchinese@1.20141219.5
+ encoding@0.2.33
+ encoding_index_tests@0.1.4
+ errno-dragonfly@0.1.2
+ errno@0.2.8
+ expect-test@1.4.0
+ fancy-regex@0.7.1
+ fastrand@1.8.0
+ flate2@1.0.25
+ float-cmp@0.9.0
+ fnv@1.0.7
+ form_urlencoded@1.1.0
+ getrandom@0.2.7
+ git-version-macro@0.3.5
+ git-version@0.3.5
+ git2@0.16.1
+ glob@0.3.0
+ globset@0.4.10
+ grep-cli@0.1.7
+ hashbrown@0.12.3
+ hermit-abi@0.1.19
+ hermit-abi@0.3.1
+ idna@0.3.0
+ indexmap@1.9.1
+ instant@0.1.12
+ io-lifetimes@1.0.5
+ is-terminal@0.4.4
+ itertools@0.10.5
+ itoa@1.0.3
+ jobserver@0.1.25
+ lazy_static@1.4.0
+ libc@0.2.137
+ libgit2-sys@0.14.2+1.5.1
+ libz-sys@1.1.8
+ line-wrap@0.1.1
+ linked-hash-map@0.5.6
+ linux-raw-sys@0.1.4
+ lock_api@0.4.9
+ log@0.4.17
+ memchr@2.5.0
+ miniz_oxide@0.6.2
+ nix@0.26.2
+ normalize-line-endings@0.3.0
+ nu-ansi-term@0.47.0
+ num-traits@0.2.15
+ num_threads@0.1.6
+ once_cell@1.17.0
+ onig@6.4.0
+ onig_sys@69.8.1
+ os_str_bytes@6.3.0
+ parking_lot@0.11.2
+ parking_lot_core@0.8.5
+ path_abs@0.5.1
+ percent-encoding@2.2.0
+ pkg-config@0.3.25
+ plist@1.3.1
+ predicates-core@1.0.3
+ predicates-tree@1.0.5
+ predicates@2.1.5
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro-hack@0.5.19
+ proc-macro2@1.0.46
+ quote@1.0.21
+ redox_syscall@0.2.16
+ redox_users@0.4.3
+ regex-automata@0.1.10
+ regex-syntax@0.6.27
+ regex@1.7.0
+ remove_dir_all@0.5.3
+ rgb@0.8.34
+ rustix@0.36.8
+ rustversion@1.0.9
+ ryu@1.0.11
+ safemem@0.3.3
+ same-file@1.0.6
+ scopeguard@1.1.0
+ semver@1.0.16
+ serde@1.0.152
+ serde_derive@1.0.152
+ serde_json@1.0.85
+ serde_yaml@0.8.26
+ serial_test@0.6.0
+ serial_test_derive@0.6.0
+ shell-escape@0.1.5
+ shell-words@1.1.0
+ smallvec@1.10.0
+ static_assertions@1.1.0
+ std_prelude@0.2.12
+ strsim@0.10.0
+ syn@1.0.104
+ syntect@5.0.0
+ sys-info@0.9.1
+ tempfile@3.3.0
+ termcolor@1.1.3
+ terminal_size@0.2.5
+ termtree@0.2.4
+ thiserror-impl@1.0.38
+ thiserror@1.0.38
+ time@0.3.14
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.0
+ unicode-bidi@0.3.8
+ unicode-ident@1.0.4
+ unicode-normalization@0.1.22
+ unicode-width@0.1.10
+ url@2.3.1
+ vcpkg@0.2.15
+ version_check@0.9.4
+ wait-timeout@0.2.0
+ walkdir@2.3.2
+ wasi@0.11.0+wasi-snapshot-preview1
+ wild@2.1.0
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.42.0
+ windows-sys@0.45.0
+ windows-targets@0.42.1
+ windows_aarch64_gnullvm@0.42.1
+ windows_aarch64_msvc@0.42.1
+ windows_i686_gnu@0.42.1
+ windows_i686_msvc@0.42.1
+ windows_x86_64_gnu@0.42.1
+ windows_x86_64_gnullvm@0.42.1
+ windows_x86_64_msvc@0.42.1
+ xml-rs@0.8.4
+ yaml-rust@0.4.5
+"
+
+inherit cargo shell-completion
+
+DESCRIPTION="cat(1) clone with syntax highlighting and Git integration"
+HOMEPAGE="https://github.com/sharkdp/bat"
+SRC_URI="
+ https://github.com/sharkdp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD CC0-1.0 LGPL-3+ MIT Unicode-DFS-2016"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 ~riscv ~x86"
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="
+ >=dev-libs/libgit2-1.1.0:=[threads]
+ dev-libs/oniguruma:=
+ sys-libs/zlib
+"
+# >app-backup/bacula-9.2[qt5] has file collisions, #686118
+RDEPEND="${DEPEND}
+ !>app-backup/bacula-9.2[qt5]
+"
+
+DOCS=( README.md CHANGELOG.md doc/alternatives.md )
+
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_configure() {
+ export RUSTONIG_SYSTEM_LIBONIG=1
+ export LIBGIT2_SYS_USE_PKG_CONFIG=1
+ export PKG_CONFIG_ALLOW_CROSS=1
+ sed -i -e 's/strip = true/strip = false/g' Cargo.toml || die
+}
+
+src_test() {
+ # Set COLUMNS for deterministic help output, #913364
+ local -x COLUMNS=100
+
+ cargo_src_test
+}
+
+src_install() {
+ cargo_src_install
+
+ einstalldocs
+
+ local build_dir=( target/$(usex debug{,} release)/build/${PN}-*/out )
+ cd ${build_dir[0]} || die "Cannot change directory to ${PN} build"
+
+ doman assets/manual/bat.1
+
+ newbashcomp assets/completions/${PN}.bash ${PN}
+ newzshcomp assets/completions/${PN}.zsh _${PN}
+ dofishcomp assets/completions/${PN}.fish
+}
diff --git a/sys-apps/bat/bat-0.24.0-r1.ebuild b/sys-apps/bat/bat-0.24.0-r1.ebuild
new file mode 100644
index 000000000000..0c0d2c793320
--- /dev/null
+++ b/sys-apps/bat/bat-0.24.0-r1.ebuild
@@ -0,0 +1,258 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ adler@1.0.2
+ aho-corasick@0.7.19
+ aho-corasick@1.0.1
+ ansi_colours@1.2.1
+ anstream@0.6.4
+ anstyle-parse@0.2.0
+ anstyle-query@1.0.0
+ anstyle-wincon@3.0.1
+ anstyle@0.3.5
+ anstyle@1.0.0
+ assert_cmd@2.0.10
+ autocfg@1.1.0
+ base64@0.21.0
+ bincode@1.3.3
+ bit-set@0.5.3
+ bit-vec@0.6.3
+ bitflags@1.3.2
+ bitflags@2.4.0
+ bstr@1.6.0
+ bugreport@0.5.0
+ bytemuck@1.12.1
+ bytesize@1.3.0
+ cc@1.0.73
+ cfg-if@1.0.0
+ clap@4.4.6
+ clap_builder@4.4.6
+ clap_lex@0.5.0
+ clircle@0.4.0
+ colorchoice@1.0.0
+ console@0.15.5
+ content_inspector@0.2.4
+ crc32fast@1.3.2
+ dashmap@5.4.0
+ difflib@0.4.0
+ dissimilar@1.0.5
+ doc-comment@0.3.3
+ dunce@1.0.3
+ either@1.8.0
+ encode_unicode@0.3.6
+ encoding_rs@0.8.33
+ equivalent@1.0.1
+ errno-dragonfly@0.1.2
+ errno@0.3.3
+ etcetera@0.8.0
+ expect-test@1.4.1
+ fancy-regex@0.7.1
+ fastrand@2.0.0
+ flate2@1.0.27
+ float-cmp@0.9.0
+ fnv@1.0.7
+ form_urlencoded@1.1.0
+ fsio@0.4.0
+ getrandom@0.2.7
+ git-version-macro@0.3.5
+ git-version@0.3.5
+ git2@0.18.0
+ glob@0.3.0
+ globset@0.4.10
+ grep-cli@0.1.9
+ hashbrown@0.12.3
+ hashbrown@0.14.1
+ home@0.5.5
+ idna@0.3.0
+ indexmap@1.9.1
+ indexmap@2.0.2
+ itertools@0.10.5
+ itoa@1.0.3
+ jobserver@0.1.25
+ lazy_static@1.4.0
+ libc@0.2.147
+ libgit2-sys@0.16.1+1.7.1
+ libz-sys@1.1.8
+ line-wrap@0.1.1
+ linked-hash-map@0.5.6
+ linux-raw-sys@0.4.5
+ lock_api@0.4.9
+ log@0.4.17
+ memchr@2.5.0
+ miniz_oxide@0.7.1
+ nix@0.26.2
+ normalize-line-endings@0.3.0
+ nu-ansi-term@0.49.0
+ num-traits@0.2.15
+ num_threads@0.1.6
+ once_cell@1.18.0
+ onig@6.4.0
+ onig_sys@69.8.1
+ os_str_bytes@6.4.1
+ parking_lot@0.12.1
+ parking_lot_core@0.9.7
+ path_abs@0.5.1
+ percent-encoding@2.2.0
+ pkg-config@0.3.25
+ plist@1.4.3
+ ppv-lite86@0.2.17
+ predicates-core@1.0.6
+ predicates-tree@1.0.5
+ predicates@3.0.3
+ proc-macro-hack@0.5.19
+ proc-macro2@1.0.66
+ quick-xml@0.28.1
+ quote@1.0.26
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ redox_syscall@0.2.16
+ redox_syscall@0.3.5
+ regex-automata@0.3.7
+ regex-syntax@0.6.27
+ regex-syntax@0.7.2
+ regex@1.8.3
+ rgb@0.8.34
+ run_script@0.10.0
+ rustix@0.38.11
+ ryu@1.0.11
+ safemem@0.3.3
+ same-file@1.0.6
+ scopeguard@1.1.0
+ semver@1.0.17
+ serde@1.0.163
+ serde_derive@1.0.163
+ serde_json@1.0.85
+ serde_yaml@0.9.25
+ serial_test@2.0.0
+ serial_test_derive@2.0.0
+ shell-escape@0.1.5
+ shell-words@1.1.0
+ smallvec@1.10.0
+ static_assertions@1.1.0
+ std_prelude@0.2.12
+ strsim@0.10.0
+ syn@1.0.104
+ syn@2.0.12
+ syntect@5.0.0
+ sys-info@0.9.1
+ tempfile@3.8.0
+ termcolor@1.1.3
+ terminal_size@0.3.0
+ termtree@0.2.4
+ thiserror-impl@1.0.40
+ thiserror@1.0.40
+ time@0.3.14
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.0
+ unicode-bidi@0.3.8
+ unicode-ident@1.0.4
+ unicode-normalization@0.1.22
+ unicode-width@0.1.10
+ unsafe-libyaml@0.2.9
+ url@2.3.1
+ utf8parse@0.2.1
+ vcpkg@0.2.15
+ wait-timeout@0.2.0
+ walkdir@2.3.3
+ wasi@0.11.0+wasi-snapshot-preview1
+ wild@2.1.0
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.42.0
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-targets@0.42.1
+ windows-targets@0.48.0
+ windows_aarch64_gnullvm@0.42.1
+ windows_aarch64_gnullvm@0.48.0
+ windows_aarch64_msvc@0.42.1
+ windows_aarch64_msvc@0.48.0
+ windows_i686_gnu@0.42.1
+ windows_i686_gnu@0.48.0
+ windows_i686_msvc@0.42.1
+ windows_i686_msvc@0.48.0
+ windows_x86_64_gnu@0.42.1
+ windows_x86_64_gnu@0.48.0
+ windows_x86_64_gnullvm@0.42.1
+ windows_x86_64_gnullvm@0.48.0
+ windows_x86_64_msvc@0.42.1
+ windows_x86_64_msvc@0.48.0
+ yaml-rust@0.4.5
+"
+
+inherit cargo shell-completion
+
+DESCRIPTION="cat(1) clone with syntax highlighting and Git integration"
+HOMEPAGE="https://github.com/sharkdp/bat"
+SRC_URI="
+ https://github.com/sharkdp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 BSD-2 BSD LGPL-3+ MIT Unicode-DFS-2016
+ || ( CC0-1.0 MIT-0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="
+ >=dev-libs/libgit2-1.7.0:=[threads]
+ dev-libs/oniguruma:=
+ sys-libs/zlib
+"
+# >app-backup/bacula-9.2[qt5] has file collisions, #686118
+RDEPEND="${DEPEND}
+ !>app-backup/bacula-9.2[qt5]
+"
+
+DOCS=( README.md CHANGELOG.md doc/alternatives.md )
+
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_prepare() {
+ default
+
+ # libgit2-sys unnecessarily(?) requests <libgit2-1.8.0, bump to 2 for now
+ sed -e '/range_version/s/1\.8\.0/2/' \
+ -i "${ECARGO_VENDOR}"/libgit2-sys-0.16.1+1.7.1/build.rs || die
+}
+
+src_configure() {
+ export RUSTONIG_SYSTEM_LIBONIG=1
+ export LIBGIT2_NO_VENDOR=1
+ export PKG_CONFIG_ALLOW_CROSS=1
+ sed -i -e 's/strip = true/strip = false/g' Cargo.toml || die
+ cargo_src_configure
+}
+
+src_test() {
+ # Set COLUMNS for deterministic help output, #913364
+ local -x COLUMNS=100
+
+ cargo_src_test
+}
+
+src_install() {
+ cargo_src_install
+
+ einstalldocs
+
+ local build_dir=( target/$(usex debug{,} release)/build/${PN}-*/out )
+ cd ${build_dir[0]} || die "Cannot change directory to ${PN} build"
+
+ doman assets/manual/bat.1
+
+ newbashcomp assets/completions/${PN}.bash ${PN}
+ newzshcomp assets/completions/${PN}.zsh _${PN}
+ dofishcomp assets/completions/${PN}.fish
+}
diff --git a/sys-apps/bat/metadata.xml b/sys-apps/bat/metadata.xml
index 9bbc255a76f4..d6eed4fa4f30 100644
--- a/sys-apps/bat/metadata.xml
+++ b/sys-apps/bat/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>toshokan@shojigate.net</email>
- <name>J. Pz</name>
+ <maintainer type="person" proxied="yes">
+ <email>vimproved@inventati.org</email>
+ <name>Violet Purcell</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/bfs/Manifest b/sys-apps/bfs/Manifest
new file mode 100644
index 000000000000..8518a97392f3
--- /dev/null
+++ b/sys-apps/bfs/Manifest
@@ -0,0 +1,2 @@
+DIST bfs-3.1.2.tar.gz 237571 BLAKE2B 48051f50bcc11a06c542f21e33a858903c80d6950651c022d2a909e5da3f8813659f08937b202b11753ea132388899f3ebc66d28751682f0bfbfa9cf13e3938f SHA512 324a32067b2ae4ed50f166c783c28f16048ac33c8457eda5acc4ea86f25b3c0268c96c3d7c3230e1dde75fee72d41e7d4d53371d5fb6a95b2a9c812d079d1ad5
+DIST bfs-3.1.3.tar.gz 237696 BLAKE2B ca76ef02cd8ea65ab7d866a9c677063367c16c89b5f521da842ca0465e0485a90077009d9b5f324c7df09c1ab53036eb0f2965f372fd56762556dfbed43deb2c SHA512 4511c809666241f1b14ef3a01b80f0dc369510b67f45c1ce3e2d4445bcec9a4b86fb01333067b8dd713e992e57be7b99328b47a21b27864e6575981287de8e36
diff --git a/sys-apps/bfs/bfs-3.1.2.ebuild b/sys-apps/bfs/bfs-3.1.2.ebuild
new file mode 100644
index 000000000000..ba8cd9bde472
--- /dev/null
+++ b/sys-apps/bfs/bfs-3.1.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Breadth-first version of the UNIX find command"
+HOMEPAGE="https://tavianator.com/projects/bfs.html"
+SRC_URI="https://github.com/tavianator/bfs/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="0BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc"
+IUSE="acl caps debug io-uring unicode xattr"
+
+DEPEND="
+ acl? ( virtual/acl )
+ caps? ( sys-libs/libcap )
+ io-uring? ( sys-libs/liburing:= )
+ unicode? ( dev-libs/oniguruma:= )
+ xattr? ( sys-apps/attr )
+"
+RDEPEND="${DEPEND}"
+
+bfsmake() {
+ emake \
+ USE_ACL=$(usev acl '1') \
+ USE_ATTR=$(usev xattr '1') \
+ USE_LIBCAP=$(usev caps '1') \
+ USE_LIBURING=$(usev io-uring '1') \
+ USE_ONIGURUMA=$(usev unicode '1') \
+ "$@"
+}
+
+src_compile() {
+ tc-export CC
+ use debug || append-cppflags -DNDEBUG
+
+ bfsmake
+}
+
+src_test() {
+ # -n check gets confused so need manual src_test definition?
+ bfsmake check
+}
diff --git a/sys-apps/bfs/bfs-3.1.3-r1.ebuild b/sys-apps/bfs/bfs-3.1.3-r1.ebuild
new file mode 100644
index 000000000000..b4bf6e267d1f
--- /dev/null
+++ b/sys-apps/bfs/bfs-3.1.3-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Breadth-first version of the UNIX find command"
+HOMEPAGE="https://tavianator.com/projects/bfs.html"
+SRC_URI="https://github.com/tavianator/bfs/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="0BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc"
+IUSE="acl caps debug io-uring unicode xattr"
+
+DEPEND="
+ acl? ( virtual/acl )
+ caps? ( sys-libs/libcap )
+ io-uring? ( sys-libs/liburing:= )
+ unicode? ( dev-libs/oniguruma:= )
+ xattr? ( sys-apps/attr )
+"
+RDEPEND="${DEPEND}"
+
+bfsmake() {
+ emake \
+ USE_ACL=$(usev acl '1') \
+ USE_ATTR=$(usev xattr '1') \
+ USE_LIBCAP=$(usev caps '1') \
+ USE_LIBURING=$(usev io-uring '1') \
+ USE_ONIGURUMA=$(usev unicode '1') \
+ "$@"
+}
+
+src_compile() {
+ tc-export CC
+ use debug || append-cppflags -DNDEBUG
+
+ bfsmake
+}
+
+src_test() {
+ # -n check gets confused so need manual src_test definition?
+ bfsmake check
+}
+
+src_install() {
+ bfsmake DESTDIR="${D}" install
+ einstalldocs
+}
diff --git a/sys-apps/bfs/metadata.xml b/sys-apps/bfs/metadata.xml
new file mode 100644
index 000000000000..c734443efb54
--- /dev/null
+++ b/sys-apps/bfs/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">tavianator/bfs</remote-id>
+ </upstream>
+ <use>
+ <flag name="io-uring">Use <pkg>sys-libs/liburing</pkg> for faster async I/O</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-apps/biosdevname/Manifest b/sys-apps/biosdevname/Manifest
index 61a8853bc4fb..e58dbdd4b07d 100644
--- a/sys-apps/biosdevname/Manifest
+++ b/sys-apps/biosdevname/Manifest
@@ -1,2 +1 @@
-DIST biosdevname-0.7.2.tar.gz 193926 BLAKE2B b9242c11b082d1c4d52c2976031d680159cfb7c0a6140fe83ecd4abfc23dda89b7c59788f026a169a843a7451e70a7f0f19171e619a3994006eeea1da5cf3f4d SHA512 2b71d33b3c7ab6c19f6129763a4c044f9cb4cbc43aec0e0d2a83177d8edb1440c17ffc4ab2eae448ae997dcb4b52315f8266c2e4010367f9690e4552cba89502
DIST biosdevname-0.7.3.tar.gz 96231 BLAKE2B d572b15f86ba1ddaba191f859afcfbd39fa0fe397ee6968ab794e217d37b875b9f9d20c219cb44f62fc5d3fede7aa487963f54423ca20086c75c15b17d755c8e SHA512 9cd2b7d115d6ee487f4aafa21b00025a3917d3c89489fe70ab3de8aa979158477a1d0b5287101b7cec7200fef0d2f6894a0e6389a174d6f8670dcd7530dc445d
diff --git a/sys-apps/biosdevname/biosdevname-0.7.2.ebuild b/sys-apps/biosdevname/biosdevname-0.7.2.ebuild
deleted file mode 100644
index bfccd3161ba9..000000000000
--- a/sys-apps/biosdevname/biosdevname-0.7.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit udev
-
-DESCRIPTION="Sets BIOS-given device names instead of kernel eth* names"
-HOMEPAGE="http://linux.dell.com/biosdevname/"
-SRC_URI="http://linux.dell.com/biosdevname/${P}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="virtual/udev"
-DEPEND="${CDEPEND}
- sys-apps/pciutils"
-RDEPEND="${CDEPEND}"
-
-src_prepare() {
- sed -i -e 's|/sbin/biosdevname|/usr\0|g' biosdevname.rules.in || die
- sed -i -e "/RULEDEST/s:/lib/udev:$(get_udevdir):" configure{,.ac} || die
-}
diff --git a/sys-apps/biosdevname/biosdevname-0.7.3.ebuild b/sys-apps/biosdevname/biosdevname-0.7.3.ebuild
index 3382b9289a96..08955d3cbcfd 100644
--- a/sys-apps/biosdevname/biosdevname-0.7.3.ebuild
+++ b/sys-apps/biosdevname/biosdevname-0.7.3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit udev
+inherit autotools udev
DESCRIPTION="Sets BIOS-given device names instead of kernel eth* names"
HOMEPAGE="http://linux.dell.com/biosdevname/"
@@ -11,13 +11,11 @@ SRC_URI="https://github.com/dell/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
+KEYWORDS="amd64 x86"
-CDEPEND="virtual/udev"
-DEPEND="${CDEPEND}
+RDEPEND="virtual/udev"
+DEPEND="${RDEPEND}
sys-apps/pciutils"
-RDEPEND="${CDEPEND}"
src_prepare() {
default
@@ -25,5 +23,5 @@ src_prepare() {
sed -i -e 's|/sbin/biosdevname|/usr\0|g' biosdevname.rules.in || die
sed -i -e "/RULEDEST/s:/lib/udev:$(get_udevdir):" configure.ac || die
- ./autogen.sh --no-configure || die
+ eautoreconf
}
diff --git a/sys-apps/biosdevname/metadata.xml b/sys-apps/biosdevname/metadata.xml
index ac6d117c6c65..7b4d595cd47c 100644
--- a/sys-apps/biosdevname/metadata.xml
+++ b/sys-apps/biosdevname/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
-<longdescription lang="en">
-biosdevname in its simplest form takes a kernel device name as an argument, and
-returns the BIOS-given name it "should" be. This is necessary on systems where
-the BIOS name for a given device (e.g. the label on the chassis is "Gb1")
-doesn't map directly and obviously to the kernel name (e.g. eth0).
-</longdescription>
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
+ biosdevname in its simplest form takes a kernel device name as an argument, and
+ returns the BIOS-given name it "should" be. This is necessary on systems where
+ the BIOS name for a given device (e.g. the label on the chassis is "Gb1")
+ doesn't map directly and obviously to the kernel name (e.g. eth0).
+ </longdescription>
+ <upstream>
+ <remote-id type="github">dell/biosdevname</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/biosdisk/biosdisk-1.01.ebuild b/sys-apps/biosdisk/biosdisk-1.01.ebuild
index f4ae904c895e..ddd33591ce56 100644
--- a/sys-apps/biosdisk/biosdisk-1.01.ebuild
+++ b/sys-apps/biosdisk/biosdisk-1.01.ebuild
@@ -1,10 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils
-
DESCRIPTION="FreeDOS based BIOS updating utility for Dell machines"
HOMEPAGE="https://github.com/dell/biosdisk"
SRC_URI="https://github.com/dell/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
diff --git a/sys-apps/biosdisk/metadata.xml b/sys-apps/biosdisk/metadata.xml
index b9de019cb593..d8bc08492d48 100644
--- a/sys-apps/biosdisk/metadata.xml
+++ b/sys-apps/biosdisk/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/bleachbit/Manifest b/sys-apps/bleachbit/Manifest
index fff9dd54226c..f2af61de81e4 100644
--- a/sys-apps/bleachbit/Manifest
+++ b/sys-apps/bleachbit/Manifest
@@ -1 +1,2 @@
-DIST bleachbit-4.0.0.tar.bz2 599756 BLAKE2B 05a4dbf9e0b6bbcba528875a82e36eb9f91ae84c5bdc6f8f69063a54bd192332f5dd1d22ee5a737243eb5fb74cf0362eace1b50a73f7c1d0557a8cba146dea01 SHA512 ce120239b411c6e177af0e22a16b583ac3ae8903ba13579878942492e4e221355da28f737d6c78811312bfcc888af7c8dba6c153673f4e1542cc2aceedf2d2c9
+DIST bleachbit-4.4.2.tar.bz2 653525 BLAKE2B ae65e310d33c2e523244a32de1ff28081be940a6a2ed2aadf682218ebe7346de3b5f37ab457d4f16542730d617678effbcda461e7080c43cd81c17f6b959018d SHA512 247a1ed0e491e5e02c4bc9a5c2d11d5f1511ef9644b9edf34b1c9326e6515c33dfd60b98bb2dab59eac36ab5e1c9b5ed1e8d7c749261bde90450a2fc717dae6f
+DIST bleachbit-4.6.0.tar.bz2 667238 BLAKE2B c150ef9ff5c5f3d8241c5d8a8b8ad5b3f7a23aef24c21ef67a8680f56f3844893fd0e8513f47936ac3a667a15f0d6df2186658be282846309f3ad79f545a380d SHA512 fd0888195bc1fd6dfdc19ca4b35906554e0b6bf22c7f12db01ff8a5790a8a358aedd39f0c0906eb98e67ea5344c655e7f042516cc0c17b59637463d01927a33a
diff --git a/sys-apps/bleachbit/bleachbit-4.0.0.ebuild b/sys-apps/bleachbit/bleachbit-4.0.0.ebuild
deleted file mode 100644
index b1996be593d4..000000000000
--- a/sys-apps/bleachbit/bleachbit-4.0.0.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-PYTHON_REQ_USE="sqlite(+)"
-
-inherit desktop distutils-r1 virtualx
-
-DESCRIPTION="Clean junk to free disk space and to maintain privacy"
-HOMEPAGE="https://www.bleachbit.org"
-SRC_URI="https://download.bleachbit.org/${P}.tar.bz2"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- dev-python/chardet[$PYTHON_USEDEP]
- dev-python/pygobject:3[$PYTHON_USEDEP]
-"
-BDEPEND="
- sys-devel/gettext
- test? ( dev-python/mock[${PYTHON_USEDEP}] )
-"
-
-distutils_enable_tests unittest
-
-# tests fail under FEATURES=usersandbox
-RESTRICT="test"
-
-python_prepare_all() {
- if use test; then
- # avoid tests requiring internet access
- rm tests/Test{Chaff,Update}.py || die
-
- # fails due to non-existent $HOME/.profile
- rm tests/TestInit.py || die
-
- # fails on upstream Travis CI as well as on Gentoo
- sed -e "s/test_get_proc_swaps(self)/_&/" \
- -i tests/TestMemory.py || die
- fi
-
- distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
- emake -C po local
-}
-
-python_test() {
- virtx emake tests
-}
-
-python_install() {
- distutils-r1_python_install
- python_newscript ${PN}.py ${PN}
-}
-
-python_install_all() {
- distutils-r1_python_install_all
- emake -C po DESTDIR="${D}" install
-
- insinto /usr/share/bleachbit/cleaners
- doins cleaners/*.xml
-
- insinto /usr/share/bleachbit
- doins data/app-menu.ui
-
- doicon ${PN}.png
- domenu org.${PN}.BleachBit.desktop
-}
diff --git a/sys-apps/bleachbit/bleachbit-4.4.2-r1.ebuild b/sys-apps/bleachbit/bleachbit-4.4.2-r1.ebuild
new file mode 100644
index 000000000000..c6b013a117af
--- /dev/null
+++ b/sys-apps/bleachbit/bleachbit-4.4.2-r1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_REQ_USE="sqlite(+)"
+DISTUTILS_SINGLE_IMPL=1
+
+inherit desktop distutils-r1 virtualx
+
+DESCRIPTION="Clean junk to free disk space and to maintain privacy"
+HOMEPAGE="https://www.bleachbit.org"
+SRC_URI="https://download.bleachbit.org/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ ')
+ x11-libs/gtk+:3
+"
+BDEPEND="
+ sys-devel/gettext
+ test? (
+ $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]')
+ )
+"
+
+distutils_enable_tests unittest
+
+# tests fail under FEATURES=usersandbox
+RESTRICT="test"
+
+python_prepare_all() {
+ if use test; then
+ # avoid tests requiring internet access
+ rm tests/Test{Chaff,Update}.py || die
+
+ # fails due to non-existent $HOME/.profile
+ rm tests/TestInit.py || die
+
+ # only applicable to Windows installer
+ rm tests/TestNsisUtilities.py || die
+
+ # these fail on upstream Travis CI as well as on Gentoo
+ sed -e "s/test_notify(self)/_&/" \
+ -i tests/TestGUI.py || die
+
+ sed -e "s/test_get_proc_swaps(self)/_&/" \
+ -i tests/TestMemory.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ emake -C po local
+}
+
+python_test() {
+ virtx emake tests
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_newscript ${PN}.py ${PN}
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ emake -C po DESTDIR="${D}" install
+
+ insinto /usr/share/bleachbit/cleaners
+ doins cleaners/*.xml
+
+ insinto /usr/share/bleachbit
+ doins data/app-menu.ui
+
+ doicon ${PN}.png
+ domenu org.${PN}.BleachBit.desktop
+}
diff --git a/sys-apps/bleachbit/bleachbit-4.6.0-r1.ebuild b/sys-apps/bleachbit/bleachbit-4.6.0-r1.ebuild
new file mode 100644
index 000000000000..957436a35baf
--- /dev/null
+++ b/sys-apps/bleachbit/bleachbit-4.6.0-r1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="sqlite(+)"
+DISTUTILS_SINGLE_IMPL=1
+
+inherit desktop distutils-r1 virtualx
+
+DESCRIPTION="Clean junk to free disk space and to maintain privacy"
+HOMEPAGE="https://www.bleachbit.org"
+SRC_URI="https://download.bleachbit.org/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ ')
+ x11-libs/gtk+:3[introspection]
+"
+BDEPEND="
+ sys-devel/gettext
+ test? (
+ $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]')
+ )
+"
+
+distutils_enable_tests unittest
+
+# tests fail under FEATURES=usersandbox
+RESTRICT="test"
+
+python_prepare_all() {
+ if use test; then
+ # avoid tests requiring internet access
+ rm tests/Test{Chaff,Update}.py || die
+
+ # fails due to non-existent $HOME/.profile
+ rm tests/TestInit.py || die
+
+ # only applicable to Windows installer
+ rm tests/TestNsisUtilities.py || die
+
+ # these fail on upstream Travis CI as well as on Gentoo
+ sed -e "s/test_notify(self)/_&/" \
+ -i tests/TestGUI.py || die
+
+ sed -e "s/test_get_proc_swaps(self)/_&/" \
+ -i tests/TestMemory.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ emake -C po local
+}
+
+python_test() {
+ virtx emake tests
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_newscript ${PN}.py ${PN}
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ emake -C po DESTDIR="${D}" install
+
+ insinto /usr/share/bleachbit/cleaners
+ doins cleaners/*.xml
+
+ insinto /usr/share/bleachbit
+ doins data/app-menu.ui
+
+ doicon ${PN}.png
+ domenu org.${PN}.BleachBit.desktop
+}
diff --git a/sys-apps/bleachbit/metadata.xml b/sys-apps/bleachbit/metadata.xml
index b025f5f8290e..698f617540be 100644
--- a/sys-apps/bleachbit/metadata.xml
+++ b/sys-apps/bleachbit/metadata.xml
@@ -1,11 +1,11 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>christian.tietz@mailbox.org</email>
<name>Christian Tietz</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/bolt/Manifest b/sys-apps/bolt/Manifest
index 41dbe3bd2d07..da10152e37d4 100644
--- a/sys-apps/bolt/Manifest
+++ b/sys-apps/bolt/Manifest
@@ -1 +1,5 @@
-DIST bolt-0.9.tar.gz 238596 BLAKE2B 8032ecb83d39d6c3550c000eed400ee0451e5ed94f7c898ffe9c8fcf512af387cfd759bd94241a47623b5aac63615bcda40ddb3e9ae3ec4060da20e46d7e9b7d SHA512 427e9ad95a8d018dd22326cc4b458fc9149b001d3aa6e4bb8e4047eaf6c3cf04a4dc3be9396049734dc0bd54f990b3bce31b6eef4031e3b671a6202a588cfe78
+DIST bolt-0.9.1.tar.gz 250978 BLAKE2B a3b1ea51704e2b54abb0135013019b9cad6ed9c0acfdb56797e19c9b5a1abe9f921446cfcc5b664f73bbbff857cf8d420f588517d4c633d1b3776a35c37fc882 SHA512 c925c290de75d3fa2dfb9e86b2f14ea39279b3f2ab6bebeced72a7853c901d44de02157d684534af2b54edd3a2e0b2ba61e889579ab1b192f99e98a2d73685d9
+DIST bolt-0.9.2.tar.gz 252532 BLAKE2B 45ea8ae2e77a90099152e708dafe68e63492d0370b734612b516d4a772507174c3df75ddd7d6bdea4be5022a88e1e286a738d3b8df6a662ef3b0b92ac7328730 SHA512 69e7ffa58a6dbc8a1b14fd7e11e2291fa60227896ead1a449839716b581c6ab0e351d3ed62f9b51c5e44a5a33ba5e23dc5af73a1b4eef87f733b3231d5454e90
+DIST bolt-0.9.3.tar.gz 253085 BLAKE2B 7547a35aa16a7681737989c72dfd2e13245eb50c7b814de979974750e3c8805156fd22054308d715299baab3ebd4144923aacc04ef301ee039e84b6370cbcba7 SHA512 2160831011090e75cf54408525f53ead6c0e7797de8a4afdd07ef5a035f8e1aa58f34efb9bd52e6e7cd93ac17751e72ff27e99f2b372a5720b2cbadd6abb3c26
+DIST bolt-0.9.6.tar.bz2 192324 BLAKE2B 88e5b94e75833bb5cef090650158ffd26e642188e876cf54407fee7535498faa7ff138b7d47911ea85cacf2bb6ac778b32c23d5cd942c27d1edacc395ec6c9a3 SHA512 7a72b17dbb02917fd55cc480bc4c3ec948577b61aab2ffb366608e82ca65add4e7b402c3b89fd3f98f660165b335ebc9564444bbae3ab55bd6a63c4e0019266a
+DIST bolt-0.9.7.tar.gz 255976 BLAKE2B c7764cb1334f2df96856cb9a92fe6c0ba97ed81340690537fe4567f81bbbf1ee4fbfc659c8b43716f6756d53ab21c71a5c8c9952aea19d1c3f0c14386d327331 SHA512 a9ae0425cdba8932356ec4dcf3f6b3469478c01d47ef3b741c0a841117c81b354f35860be6011ea3b43b28ae10164909a82e2bdbcf92e8541c637cf44277a36c
diff --git a/sys-apps/bolt/bolt-0.9-r1.ebuild b/sys-apps/bolt/bolt-0.9-r1.ebuild
deleted file mode 100644
index afb1c1ec6aad..000000000000
--- a/sys-apps/bolt/bolt-0.9-r1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit linux-info meson systemd
-
-DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
-HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
-SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="doc systemd"
-
-DEPEND="
- >=dev-libs/glib-2.56.0:2
- dev-util/glib-utils
- virtual/libudev
- virtual/udev
- dev-util/umockdev
- sys-auth/polkit[introspection]
- systemd? ( sys-apps/systemd )
- doc? ( app-text/asciidoc )"
-RDEPEND="${DEPEND}"
-
-pkg_pretend() {
- CONFIG_CHECK="~THUNDERBOLT"
- ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
- check_extra_config
-
- CONFIG_CHECK="~HOTPLUG_PCI"
- ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
- check_extra_config
-}
-
-src_configure() {
- local emesonargs=(
- -Dman=$(usex doc true false)
- --sysconfdir=/etc
- --localstatedir=/var
- --sharedstatedir=/var/lib
- )
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
- newinitd "${FILESDIR}"/${PN}.openrc boltd
- keepdir /var/lib/boltd
-}
diff --git a/sys-apps/bolt/bolt-0.9-r2.ebuild b/sys-apps/bolt/bolt-0.9-r2.ebuild
deleted file mode 100644
index ddf044ade359..000000000000
--- a/sys-apps/bolt/bolt-0.9-r2.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit linux-info meson systemd
-
-DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
-HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
-SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc systemd"
-
-DEPEND="
- >=dev-libs/glib-2.56.0:2
- dev-util/glib-utils
- virtual/libudev
- virtual/udev
- dev-util/umockdev
- sys-auth/polkit[introspection]
- systemd? ( sys-apps/systemd )
- doc? ( app-text/asciidoc )"
-RDEPEND="${DEPEND}"
-
-pkg_pretend() {
- if use kernel_linux && kernel_is lt 5 6; then
- CONFIG_CHECK="~THUNDERBOLT"
- ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
- else
- CONFIG_CHECK="~USB4"
- ERROR_USB4="This package requires the USB4 kernel driver for Thunderbolt support."
- fi
- check_extra_config
-
- CONFIG_CHECK="~HOTPLUG_PCI"
- ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
- check_extra_config
-}
-
-src_configure() {
- local emesonargs=(
- -Dman=$(usex doc true false)
- --sysconfdir=/etc
- --localstatedir=/var
- --sharedstatedir=/var/lib
- )
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
- newinitd "${FILESDIR}"/${PN}.openrc boltd
- keepdir /var/lib/boltd
-}
diff --git a/sys-apps/bolt/bolt-0.9.1.ebuild b/sys-apps/bolt/bolt-0.9.1.ebuild
new file mode 100644
index 000000000000..cb34716378bc
--- /dev/null
+++ b/sys-apps/bolt/bolt-0.9.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit linux-info meson systemd
+
+DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
+HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
+SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~riscv x86"
+IUSE="doc selinux systemd"
+
+DEPEND="
+ >=dev-libs/glib-2.56.0:2
+ dev-util/glib-utils
+ virtual/libudev
+ virtual/udev
+ dev-util/umockdev
+ sys-auth/polkit[introspection]
+ systemd? ( sys-apps/systemd )
+ doc? ( app-text/asciidoc )"
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-thunderbolt )"
+
+pkg_pretend() {
+ if use kernel_linux && kernel_is lt 5 6; then
+ CONFIG_CHECK="~THUNDERBOLT"
+ ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
+ else
+ CONFIG_CHECK="~USB4"
+ ERROR_USB4="This package requires the USB4 kernel driver for Thunderbolt support."
+ fi
+ check_extra_config
+
+ CONFIG_CHECK="~HOTPLUG_PCI"
+ ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
+ check_extra_config
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dman=$(usex doc true false)
+ --sysconfdir=/etc
+ --localstatedir=/var
+ --sharedstatedir=/var/lib
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ newinitd "${FILESDIR}"/${PN}.openrc-r1 boltd
+ keepdir /var/lib/boltd
+}
diff --git a/sys-apps/bolt/bolt-0.9.2.ebuild b/sys-apps/bolt/bolt-0.9.2.ebuild
new file mode 100644
index 000000000000..3275183ef322
--- /dev/null
+++ b/sys-apps/bolt/bolt-0.9.2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson udev
+
+DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
+HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
+SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~riscv x86"
+IUSE="selinux test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.56.0:2
+ virtual/libudev:=
+ virtual/udev
+ sys-auth/polkit[introspection]
+ selinux? ( sec-policy/selinux-thunderbolt )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/umockdev )
+"
+BDEPEND="
+ app-text/asciidoc
+ dev-util/glib-utils
+ virtual/pkgconfig
+"
+
+pkg_setup() {
+ if use kernel_linux && kernel_is lt 5 6; then
+ CONFIG_CHECK="~THUNDERBOLT"
+ ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
+ else
+ CONFIG_CHECK="~USB4"
+ ERROR_USB4="This package requires the USB4 kernel driver for Thunderbolt support."
+ fi
+ CONFIG_CHECK+=" ~HOTPLUG_PCI"
+ ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
+
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dman=true
+ --sysconfdir="${EPREFIX}"/etc
+ --localstatedir="${EPREFIX}"/var
+ --sharedstatedir="${EPREFIX}"/var/lib
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ newinitd "${FILESDIR}"/${PN}.openrc-r1 boltd
+ keepdir /var/lib/boltd
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/bolt/bolt-0.9.3.ebuild b/sys-apps/bolt/bolt-0.9.3.ebuild
new file mode 100644
index 000000000000..16e2be81e05b
--- /dev/null
+++ b/sys-apps/bolt/bolt-0.9.3.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson udev
+
+DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
+HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
+SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~loong ~riscv x86"
+IUSE="selinux test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.56.0:2
+ virtual/libudev:=
+ virtual/udev
+ sys-auth/polkit[introspection]
+ selinux? ( sec-policy/selinux-thunderbolt )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/umockdev )
+"
+BDEPEND="
+ app-text/asciidoc
+ dev-util/glib-utils
+ virtual/pkgconfig
+"
+
+pkg_setup() {
+ if use kernel_linux && kernel_is lt 5 6; then
+ CONFIG_CHECK="~THUNDERBOLT"
+ ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
+ else
+ CONFIG_CHECK="~USB4"
+ ERROR_USB4="This package requires the USB4 kernel driver for Thunderbolt support."
+ fi
+ CONFIG_CHECK+=" ~HOTPLUG_PCI"
+ ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
+
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dman=true
+ --sysconfdir="${EPREFIX}"/etc
+ --localstatedir="${EPREFIX}"/var
+ --sharedstatedir="${EPREFIX}"/var/lib
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ newinitd "${FILESDIR}"/${PN}.openrc-r1 boltd
+ keepdir /var/lib/boltd
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/bolt/bolt-0.9.6.ebuild b/sys-apps/bolt/bolt-0.9.6.ebuild
new file mode 100644
index 000000000000..eceef5e6be77
--- /dev/null
+++ b/sys-apps/bolt/bolt-0.9.6.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson udev
+
+DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
+HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
+SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~riscv ~x86"
+IUSE="selinux test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.56.0:2
+ virtual/libudev:=
+ virtual/udev
+ sys-auth/polkit[introspection]
+ selinux? ( sec-policy/selinux-thunderbolt )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/umockdev )
+"
+BDEPEND="
+ app-text/asciidoc
+ dev-util/glib-utils
+ virtual/pkgconfig
+"
+
+pkg_setup() {
+ if use kernel_linux && kernel_is lt 5 6; then
+ CONFIG_CHECK="~THUNDERBOLT"
+ ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
+ else
+ CONFIG_CHECK="~USB4"
+ ERROR_USB4="This package requires the USB4 kernel driver for Thunderbolt support."
+ fi
+ CONFIG_CHECK+=" ~HOTPLUG_PCI"
+ ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
+
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dman=true
+ --sysconfdir="${EPREFIX}"/etc
+ --localstatedir="${EPREFIX}"/var
+ --sharedstatedir="${EPREFIX}"/var/lib
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ newinitd "${FILESDIR}"/${PN}.openrc-r1 boltd
+ keepdir /var/lib/boltd
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/bolt/bolt-0.9.7.ebuild b/sys-apps/bolt/bolt-0.9.7.ebuild
new file mode 100644
index 000000000000..3fc4a5615f8e
--- /dev/null
+++ b/sys-apps/bolt/bolt-0.9.7.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson udev
+
+DESCRIPTION="Userspace system daemon to enable security levels for Thunderbolt 3"
+HOMEPAGE="https://gitlab.freedesktop.org/bolt/bolt"
+SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~riscv ~x86"
+IUSE="selinux test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.56.0:2
+ virtual/libudev:=
+ virtual/udev
+ sys-auth/polkit[introspection]
+ selinux? ( sec-policy/selinux-thunderbolt )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-util/umockdev )
+"
+BDEPEND="
+ app-text/asciidoc
+ dev-util/glib-utils
+ virtual/pkgconfig
+"
+
+pkg_setup() {
+ if use kernel_linux && kernel_is lt 5 6; then
+ CONFIG_CHECK="~THUNDERBOLT"
+ ERROR_THUNDERBOLT="This package requires the thunderbolt kernel driver."
+ else
+ CONFIG_CHECK="~USB4"
+ ERROR_USB4="This package requires the USB4 kernel driver for Thunderbolt support."
+ fi
+ CONFIG_CHECK+=" ~HOTPLUG_PCI"
+ ERROR_HOTPLUG_PCI="Thunderbolt requires PCI hotplug support."
+
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dman=true
+ --sysconfdir="${EPREFIX}"/etc
+ --localstatedir="${EPREFIX}"/var
+ --sharedstatedir="${EPREFIX}"/var/lib
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ newinitd "${FILESDIR}"/${PN}.openrc-r1 boltd
+ keepdir /var/lib/boltd
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/bolt/files/bolt.openrc-r1 b/sys-apps/bolt/files/bolt.openrc-r1
new file mode 100644
index 000000000000..f47b15ffaecb
--- /dev/null
+++ b/sys-apps/bolt/files/bolt.openrc-r1
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="Thunderbolt Security Daemon"
+description="Userspace system daemon to enable security levels for Thunderbolt 3"
+command="/usr/libexec/boltd"
+command_background="true"
+pidfile="/var/run/boltd.pid"
+
+depend() {
+ need dbus
+ before display-manager
+}
diff --git a/sys-apps/bolt/metadata.xml b/sys-apps/bolt/metadata.xml
index 3ffdeb4af3b5..ea1b2836c760 100644
--- a/sys-apps/bolt/metadata.xml
+++ b/sys-apps/bolt/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>prometheanfire@gentoo.org</email>
<name>Matthew Thode</name>
</maintainer>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/bubblewrap/Manifest b/sys-apps/bubblewrap/Manifest
index 7be60f2b8706..43cda601698e 100644
--- a/sys-apps/bubblewrap/Manifest
+++ b/sys-apps/bubblewrap/Manifest
@@ -1 +1 @@
-DIST bubblewrap-0.4.1.tar.xz 214496 BLAKE2B bdbff50cc4e28c91d83c814df7f2ee15702962d26a9316bd841b1e63bf5976c4549c88e20869e8cc236a8a0c9a065518f945c356fa7a058f8831f5b1e9d4eb0d SHA512 0ff46dc0fda2d0cffbb36cc52ff43951b30cbd835a42cc56806acbbbd827796bfadbb1cfafc84d6b47a72c031ca44abe1c377acc0cc25fe3b33e854f5f687d35
+DIST bubblewrap-0.8.0.tar.xz 149088 BLAKE2B 5853cf42a7ab653540ec5134866c6f2459aa101e9eea724a4f283405cbcae2beb3551b7c1a7aa93d82016d4eb0d12f9c97c47df53a6d9b589db40483696253de SHA512 1cbc33f3c834ff83f4c1808d3ec2555921277d495f903ad152cbd5065a6e100c5420b4b5c62386bb2d303eb1734e074b09625013e55e3bd8631cfb3582d70e1c
diff --git a/sys-apps/bubblewrap/bubblewrap-0.4.1.ebuild b/sys-apps/bubblewrap/bubblewrap-0.4.1.ebuild
deleted file mode 100644
index df71b56f75f8..000000000000
--- a/sys-apps/bubblewrap/bubblewrap-0.4.1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 linux-info
-
-DESCRIPTION="Unprivileged sandboxing tool, namespaces-powered chroot-like solution"
-HOMEPAGE="https://github.com/containers/bubblewrap/"
-SRC_URI="https://github.com/containers/${PN}/releases/download/v${PV}/${P}.tar.xz"
-
-LICENSE="LGPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86"
-IUSE="selinux +suid"
-
-RDEPEND="
- sys-libs/libseccomp
- sys-libs/libcap
- selinux? ( >=sys-libs/libselinux-2.1.9 )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- app-text/docbook-xml-dtd:4.3
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- virtual/pkgconfig
-"
-
-# tests require root priviledge
-RESTRICT="test"
-PATCHES=(
- "${FILESDIR}/bubblewrap-0.3.1-selinux-configure.patch" # bug 674312
-)
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != buildonly ]]; then
- CONFIG_CHECK="~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS"
- linux-info_pkg_setup
- fi
-}
-
-src_configure() {
- econf \
- $(use_enable selinux) \
- "--enable-man" \
- "--with-bash-completion-dir=$(get_bashcompdir)" \
- "--with-priv-mode=$(usex suid setuid none)"
-}
diff --git a/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild b/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild
new file mode 100644
index 000000000000..756847be4af5
--- /dev/null
+++ b/sys-apps/bubblewrap/bubblewrap-0.8.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson
+
+DESCRIPTION="Unprivileged sandboxing tool, namespaces-powered chroot-like solution"
+HOMEPAGE="https://github.com/containers/bubblewrap/"
+SRC_URI="https://github.com/containers/${PN}/releases/download/v${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
+IUSE="selinux suid"
+
+RDEPEND="
+ sys-libs/libseccomp
+ sys-libs/libcap
+ selinux? ( >=sys-libs/libselinux-2.1.9 )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-text/docbook-xml-dtd:4.3
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig
+"
+
+# tests require root privileges
+RESTRICT="test"
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ CONFIG_CHECK="~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS"
+ linux-info_pkg_setup
+ fi
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dbash_completion=enabled
+ -Dman=enabled
+ -Dtests=false
+ -Dzsh_completion=enabled
+ $(meson_feature selinux)
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ if use suid; then
+ chmod u+s "${ED}"/usr/bin/bwrap
+ fi
+}
diff --git a/sys-apps/bubblewrap/files/bubblewrap-0.3.1-selinux-configure.patch b/sys-apps/bubblewrap/files/bubblewrap-0.3.1-selinux-configure.patch
deleted file mode 100644
index b8fad6cc1685..000000000000
--- a/sys-apps/bubblewrap/files/bubblewrap-0.3.1-selinux-configure.patch
+++ /dev/null
@@ -1,224 +0,0 @@
-Author: Jonas Jelten <jj@sft.mx>
-
-upstream decided to ship the generated ./configure file...
-here's the updated configure script with the missing PKG_PROG_PKG_CONFIG call
-
-===================================================================
---- bubblewrap-0.3.1.orig/configure
-+++ bubblewrap-0.3.1/configure
-@@ -5224,107 +5224,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
--for ac_header in sys/capability.h
--do :
-- ac_fn_c_check_header_mongrel "$LINENO" "sys/capability.h" "ac_cv_header_sys_capability_h" "$ac_includes_default"
--if test "x$ac_cv_header_sys_capability_h" = xyes; then :
-- cat >>confdefs.h <<_ACEOF
--#define HAVE_SYS_CAPABILITY_H 1
--_ACEOF
--
--else
-- as_fn_error $? "*** POSIX caps headers not found" "$LINENO" 5
--fi
--
--done
--
--
--# Check whether --enable-man was given.
--if test "${enable_man+set}" = set; then :
-- enableval=$enable_man;
--else
-- enable_man=maybe
--fi
--
--
--if test "$enable_man" != no; then :
--
-- # Extract the first word of "xsltproc", so it can be a program name with args.
--set dummy xsltproc; ac_word=$2
--{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
--$as_echo_n "checking for $ac_word... " >&6; }
--if ${ac_cv_path_XSLTPROC+:} false; then :
-- $as_echo_n "(cached) " >&6
--else
-- case $XSLTPROC in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_XSLTPROC="$XSLTPROC" # Let the user override the test with a path.
-- ;;
-- *)
-- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
--for as_dir in $PATH
--do
-- IFS=$as_save_IFS
-- test -z "$as_dir" && as_dir=.
-- for ac_exec_ext in '' $ac_executable_extensions; do
-- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-- ac_cv_path_XSLTPROC="$as_dir/$ac_word$ac_exec_ext"
-- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-- break 2
-- fi
--done
-- done
--IFS=$as_save_IFS
--
-- ;;
--esac
--fi
--XSLTPROC=$ac_cv_path_XSLTPROC
--if test -n "$XSLTPROC"; then
-- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XSLTPROC" >&5
--$as_echo "$XSLTPROC" >&6; }
--else
-- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
--$as_echo "no" >&6; }
--fi
--
--
-- if test -z "$XSLTPROC"; then :
--
-- if test "$enable_man" = yes; then :
--
-- as_fn_error $? "xsltproc is required for --enable-man" "$LINENO" 5
--
--fi
-- enable_man=no
--
--else
--
-- enable_man=yes
--
--fi
--
--fi
-- if test "$enable_man" != no; then
-- ENABLE_MAN_TRUE=
-- ENABLE_MAN_FALSE='#'
--else
-- ENABLE_MAN_TRUE='#'
-- ENABLE_MAN_FALSE=
--fi
--
--
--
--# Check whether --with-bash-completion-dir was given.
--if test "${with_bash_completion_dir+set}" = set; then :
-- withval=$with_bash_completion_dir;
--else
-- with_bash_completion_dir=yes
--fi
--
--
--if test "x$with_bash_completion_dir" = "xyes"; then
--
-
-
-
-@@ -5445,6 +5344,107 @@ $as_echo "no" >&6; }
- fi
- fi
-
-+for ac_header in sys/capability.h
-+do :
-+ ac_fn_c_check_header_mongrel "$LINENO" "sys/capability.h" "ac_cv_header_sys_capability_h" "$ac_includes_default"
-+if test "x$ac_cv_header_sys_capability_h" = xyes; then :
-+ cat >>confdefs.h <<_ACEOF
-+#define HAVE_SYS_CAPABILITY_H 1
-+_ACEOF
-+
-+else
-+ as_fn_error $? "*** POSIX caps headers not found" "$LINENO" 5
-+fi
-+
-+done
-+
-+
-+# Check whether --enable-man was given.
-+if test "${enable_man+set}" = set; then :
-+ enableval=$enable_man;
-+else
-+ enable_man=maybe
-+fi
-+
-+
-+if test "$enable_man" != no; then :
-+
-+ # Extract the first word of "xsltproc", so it can be a program name with args.
-+set dummy xsltproc; ac_word=$2
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-+$as_echo_n "checking for $ac_word... " >&6; }
-+if ${ac_cv_path_XSLTPROC+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ case $XSLTPROC in
-+ [\\/]* | ?:[\\/]*)
-+ ac_cv_path_XSLTPROC="$XSLTPROC" # Let the user override the test with a path.
-+ ;;
-+ *)
-+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+ IFS=$as_save_IFS
-+ test -z "$as_dir" && as_dir=.
-+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+ ac_cv_path_XSLTPROC="$as_dir/$ac_word$ac_exec_ext"
-+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-+ break 2
-+ fi
-+done
-+ done
-+IFS=$as_save_IFS
-+
-+ ;;
-+esac
-+fi
-+XSLTPROC=$ac_cv_path_XSLTPROC
-+if test -n "$XSLTPROC"; then
-+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XSLTPROC" >&5
-+$as_echo "$XSLTPROC" >&6; }
-+else
-+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-+$as_echo "no" >&6; }
-+fi
-+
-+
-+ if test -z "$XSLTPROC"; then :
-+
-+ if test "$enable_man" = yes; then :
-+
-+ as_fn_error $? "xsltproc is required for --enable-man" "$LINENO" 5
-+
-+fi
-+ enable_man=no
-+
-+else
-+
-+ enable_man=yes
-+
-+fi
-+
-+fi
-+ if test "$enable_man" != no; then
-+ ENABLE_MAN_TRUE=
-+ ENABLE_MAN_FALSE='#'
-+else
-+ ENABLE_MAN_TRUE='#'
-+ ENABLE_MAN_FALSE=
-+fi
-+
-+
-+
-+# Check whether --with-bash-completion-dir was given.
-+if test "${with_bash_completion_dir+set}" = set; then :
-+ withval=$with_bash_completion_dir;
-+else
-+ with_bash_completion_dir=yes
-+fi
-+
-+
-+if test "x$with_bash_completion_dir" = "xyes"; then
-+
- pkg_failed=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BASH_COMPLETION" >&5
- $as_echo_n "checking for BASH_COMPLETION... " >&6; }
diff --git a/sys-apps/bubblewrap/metadata.xml b/sys-apps/bubblewrap/metadata.xml
index 716512bf473f..5c14b5b490a0 100644
--- a/sys-apps/bubblewrap/metadata.xml
+++ b/sys-apps/bubblewrap/metadata.xml
@@ -1,14 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>gnome@gentoo.org</email>
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <maintainer type="person">
- <email>slashbeast@gentoo.org</email>
- <name>Piotr Karbowski</name>
- </maintainer>
<upstream>
<remote-id type="github">containers/bubblewrap</remote-id>
</upstream>
diff --git a/sys-apps/busybox/Manifest b/sys-apps/busybox/Manifest
index 7d4a9b2b3d7e..903c83e38250 100644
--- a/sys-apps/busybox/Manifest
+++ b/sys-apps/busybox/Manifest
@@ -1,2 +1 @@
-DIST busybox-1.31.1.tar.bz2 2430221 BLAKE2B 95c2345bc715eb7a1f08816a40add9b7a6176ef509a84069343ec2caddec58d8d57a07676ca2b03c209734169321433e27ba963b4c8b98dbfda4e409dcc347b4 SHA512 0d1197c25d963d7f95ef21e08c06c0d6124ac7b59c99989e891f744ffee4878a3b1fe44a247241a9da39fa5de0ba87f1b6d862401b591f277e66e89c02764bbf
-DIST busybox-1.32.0.tar.bz2 2439463 BLAKE2B 75937ae6e1401d7ab947d80f4b206112023ff2b7d04257ffa2c254cadabb92282ba04d5d608659b6c98fade1ccd0b0f6b204c8758263d59dea6508a3157a7c69 SHA512 1b1227af69a97e820e28f5f1c62413e4e179202ab525725ea0b1afe9b9f9a5f00e5e32f4603e804ba1596b0fedd60d60457a6d2b8fcedfab45b6e049caeb319b
+DIST busybox-1.36.1.tar.bz2 2525473 BLAKE2B e515825cb3ab1c520e16b9c2512e9fc72947366a72a0466bff59b507fdffbc78fc9d16b44a26116175fc7a429d849ad944b1bc379d36c6d3a0eb20969997336e SHA512 8c0c754c9ae04b5e6b23596283a7d3a4ef96225fe179f92d6f6a99c69c0caa95b1aa56c267f52d7c807f6cc69e1f0b7dd29a8ac624098f601738f8c0c57980d4
diff --git a/sys-apps/busybox/busybox-1.31.1-r2.ebuild b/sys-apps/busybox/busybox-1.31.1-r2.ebuild
deleted file mode 100644
index 8457f9229a41..000000000000
--- a/sys-apps/busybox/busybox-1.31.1-r2.ebuild
+++ /dev/null
@@ -1,338 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# See `man savedconfig.eclass` for info on how to use USE=savedconfig.
-
-EAPI=7
-
-inherit flag-o-matic savedconfig toolchain-funcs
-
-DESCRIPTION="Utilities for rescue and embedded systems"
-HOMEPAGE="https://www.busybox.net/"
-if [[ ${PV} == "9999" ]] ; then
- MY_P=${P}
- EGIT_REPO_URI="https://git.busybox.net/busybox"
- inherit git-r3
-else
- MY_P=${PN}-${PV/_/-}
- SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="GPL-2" # GPL-2 only
-SLOT="0"
-IUSE="debug ipv6 livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd"
-REQUIRED_USE="pam? ( !static )"
-RESTRICT="test"
-
-COMMON_DEPEND="!static? ( selinux? ( sys-libs/libselinux ) )
- pam? ( sys-libs/pam )
- virtual/libcrypt:="
-DEPEND="${COMMON_DEPEND}
- static? (
- virtual/libcrypt[static-libs]
- selinux? ( sys-libs/libselinux[static-libs(+)] )
- )
- >=sys-kernel/linux-headers-2.6.39"
-RDEPEND="${COMMON_DEPEND}
- mdev? ( !<sys-apps/openrc-0.13 )"
-
-S="${WORKDIR}/${MY_P}"
-
-busybox_config_option() {
- local flag=$1 ; shift
- if [[ ${flag} != [yn] && ${flag} != \"* ]] ; then
- busybox_config_option $(usex ${flag} y n) "$@"
- return
- fi
- local expr
- while [[ $# -gt 0 ]] ; do
- case ${flag} in
- y) expr="s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" ;;
- n) expr="s:CONFIG_$1=y:# CONFIG_$1 is not set:g" ;;
- *) expr="s:.*\<CONFIG_$1\>.*:CONFIG_$1=${flag}:g" ;;
- esac
- sed -i -e "${expr}" .config || die
- einfo "$(grep "CONFIG_$1[= ]" .config || echo "Could not find CONFIG_$1 ...")"
- shift
- done
-}
-
-busybox_config_enabled() {
- local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config)
- case ${val} in
- "") return 1 ;;
- y) return 0 ;;
- *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;;
- esac
-}
-
-# patches go here!
-PATCHES=(
- "${FILESDIR}"/${PN}-1.26.2-bb.patch
- "${FILESDIR}"/${PN}-1.31.1-glibc-2.31.patch
- # "${FILESDIR}"/${P}-*.patch
-)
-
-src_prepare() {
- default
- unset KBUILD_OUTPUT #88088
- append-flags -fno-strict-aliasing #310413
- use ppc64 && append-flags -mminimal-toc #130943
-
- cp "${FILESDIR}"/ginit.c init/ || die
-
- # flag cleanup
- sed -i -r \
- -e 's:[[:space:]]?-(Werror|Os|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
- Makefile.flags || die
- #sed -i '/bbsh/s:^//::' include/applets.h
- sed -i '/^#error Aborting compilation./d' applets/applets.c || die
- use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile
- sed -i \
- -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
- -e "/^AR\>/s:=.*:= $(tc-getAR):" \
- -e "/^CC\>/s:=.*:= $(tc-getCC):" \
- -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
- -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \
- Makefile || die
- sed -i \
- -e 's:-static-libgcc::' \
- Makefile.flags || die
-}
-
-src_configure() {
- # check for a busybox config before making one of our own.
- # if one exist lets return and use it.
-
- restore_config .config
- if [ -f .config ]; then
- yes "" | emake -j1 -s oldconfig >/dev/null
- return 0
- else
- ewarn "Could not locate user configfile, so we will save a default one"
- fi
-
- # setup the config file
- emake -j1 -s allyesconfig >/dev/null
- # nommu forces a bunch of things off which we want on #387555
- busybox_config_option n NOMMU
- sed -i '/^#/d' .config
- yes "" | emake -j1 -s oldconfig >/dev/null
-
- # now turn off stuff we really don't want
- busybox_config_option n DMALLOC
- busybox_config_option n FEATURE_2_4_MODULES #607548
- busybox_config_option n FEATURE_SUID_CONFIG
- busybox_config_option n BUILD_AT_ONCE
- busybox_config_option n BUILD_LIBBUSYBOX
- busybox_config_option n FEATURE_CLEAN_UP
- busybox_config_option n MONOTONIC_SYSCALL
- busybox_config_option n USE_PORTABLE_CODE
- busybox_config_option n WERROR
- # triming the BSS size may be dangerous
- busybox_config_option n FEATURE_USE_BSS_TAIL
-
- # These cause trouble with musl.
- if use elibc_musl; then
- busybox_config_option n FEATURE_UTMP
- busybox_config_option n EXTRA_COMPAT
- busybox_config_option n FEATURE_VI_REGEX_SEARCH
- fi
-
- # If these are not set and we are using a uclibc/busybox setup
- # all calls to system() will fail.
- busybox_config_option y ASH
- busybox_config_option y SH_IS_ASH
- busybox_config_option n HUSH
- busybox_config_option n SH_IS_HUSH
-
- busybox_config_option '"/run"' PID_FILE_PATH
- busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH
-
- # disable ipv6 applets
- if ! use ipv6; then
- busybox_config_option n FEATURE_IPV6
- busybox_config_option n TRACEROUTE6
- busybox_config_option n PING6
- busybox_config_option n UDHCPC6
- fi
-
- busybox_config_option pam PAM
- busybox_config_option static STATIC
- busybox_config_option syslog {K,SYS}LOGD LOGGER
- busybox_config_option systemd FEATURE_SYSTEMD
- busybox_config_option math FEATURE_AWK_LIBM
-
- # disable features that uClibc doesn't (yet?) provide.
- if use elibc_uclibc; then
- busybox_config_option n FEATURE_SYNC_FANCY #567598
- busybox_config_option n NSENTER
- fi
-
- # all the debug options are compiler related, so punt them
- busybox_config_option n DEBUG_SANITIZE
- busybox_config_option n DEBUG
- busybox_config_option y NO_DEBUG_LIB
- busybox_config_option n DMALLOC
- busybox_config_option n EFENCE
- busybox_config_option $(usex debug y n) TFTP_DEBUG
-
- busybox_config_option selinux SELINUX
-
- # this opt only controls mounting with <linux-2.6.23
- busybox_config_option n FEATURE_MOUNT_NFS
-
- # glibc-2.26 and later does not ship RPC implientation
- busybox_config_option n FEATURE_HAVE_RPC
- busybox_config_option n FEATURE_INETD_RPC
-
- # default a bunch of uncommon options to off
- local opt
- for opt in \
- ADD_SHELL \
- BEEP BOOTCHARTD \
- CRONTAB \
- DC DEVFSD DNSD DPKG{,_DEB} \
- FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \
- FEATURE_DEVFS \
- HOSTID HUSH \
- INETD INOTIFYD IPCALC \
- LOCALE_SUPPORT LOGNAME LPD \
- MAKEMIME MKFS_MINIX MSH \
- OD \
- RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \
- SLATTACH SMEMCAP SULOGIN SV{,LOGD} \
- TASKSET TCPSVD \
- RPM RPM2CPIO \
- UDPSVD UUDECODE UUENCODE
- do
- busybox_config_option n ${opt}
- done
-
- emake -j1 oldconfig > /dev/null
-}
-
-src_compile() {
- unset KBUILD_OUTPUT #88088
- export SKIP_STRIP=y
-
- emake V=1 busybox
-}
-
-src_install() {
- unset KBUILD_OUTPUT #88088
- save_config .config
-
- into /
- dodir /bin
- if use sep-usr ; then
- # install /ginit to take care of mounting stuff
- exeinto /
- newexe busybox_unstripped ginit
- dosym /ginit /bin/bb
- dosym bb /bin/busybox
- else
- newbin busybox_unstripped busybox
- dosym busybox /bin/bb
- fi
- if use mdev ; then
- dodir /$(get_libdir)/mdev/
- use make-symlinks || dosym /bin/bb /sbin/mdev
- cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf
-
- exeinto /$(get_libdir)/mdev/
- doexe "${FILESDIR}"/mdev/*
-
- newinitd "${FILESDIR}"/mdev.initd mdev
- fi
- if use livecd ; then
- dosym busybox /bin/vi
- fi
-
- # add busybox daemon's, bug #444718
- if busybox_config_enabled FEATURE_NTPD_SERVER; then
- newconfd "${FILESDIR}/ntpd.confd" "busybox-ntpd"
- newinitd "${FILESDIR}/ntpd.initd" "busybox-ntpd"
- fi
- if busybox_config_enabled SYSLOGD; then
- newconfd "${FILESDIR}/syslogd.confd" "busybox-syslogd"
- newinitd "${FILESDIR}/syslogd.initd" "busybox-syslogd"
- fi
- if busybox_config_enabled KLOGD; then
- newconfd "${FILESDIR}/klogd.confd" "busybox-klogd"
- newinitd "${FILESDIR}/klogd.initd" "busybox-klogd"
- fi
- if busybox_config_enabled WATCHDOG; then
- newconfd "${FILESDIR}/watchdog.confd" "busybox-watchdog"
- newinitd "${FILESDIR}/watchdog.initd" "busybox-watchdog"
- fi
- if busybox_config_enabled UDHCPC; then
- local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT)
- exeinto "${path%/*}"
- newexe examples/udhcp/simple.script "${path##*/}"
- fi
- if busybox_config_enabled UDHCPD; then
- insinto /etc
- doins examples/udhcp/udhcpd.conf
- fi
-
- # bundle up the symlink files for use later
- emake DESTDIR="${ED}" install
- rm _install/bin/busybox
- # for compatibility, provide /usr/bin/env
- mkdir -p _install/usr/bin
- ln -s /bin/env _install/usr/bin/env
- tar cf busybox-links.tar -C _install . || : #;die
- insinto /usr/share/${PN}
- use make-symlinks && doins busybox-links.tar
-
- dodoc AUTHORS README TODO
-
- cd docs
- docinto txt
- dodoc *.txt
- docinto pod
- dodoc *.pod
- docinto html
- dodoc *.html
-
- cd ../examples
- docinto examples
- dodoc inittab depmod.pl *.conf *.script undeb unrpm
-}
-
-pkg_preinst() {
- if use make-symlinks && [[ ! ${VERY_BRAVE_OR_VERY_DUMB} == "yes" ]] && [[ ${ROOT} == "/" ]] ; then
- ewarn "setting USE=make-symlinks and emerging to / is very dangerous."
- ewarn "it WILL overwrite lots of system programs like: ls bash awk grep (bug 60805 for full list)."
- ewarn "If you are creating a binary only and not merging this is probably ok."
- ewarn "set env VERY_BRAVE_OR_VERY_DUMB=yes if this is really what you want."
- die "silly options will destroy your system"
- fi
-
- if use make-symlinks ; then
- mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
- fi
-}
-
-pkg_postinst() {
- savedconfig_pkg_postinst
-
- if use make-symlinks ; then
- cd "${T}" || die
- mkdir _install
- tar xf busybox-links.tar -C _install || die
- cp -vpPR _install/* "${ROOT}"/ || die "copying links for ${x} failed"
- fi
-
- if use sep-usr ; then
- elog "In order to use the sep-usr support, you have to update your"
- elog "kernel command line. Add the option:"
- elog " init=/ginit"
- elog "To launch a different init than /sbin/init, use:"
- elog " init=/ginit /sbin/yourinit"
- elog "To get a rescue shell, you may boot with:"
- elog " init=/ginit bb"
- fi
-}
diff --git a/sys-apps/busybox/busybox-1.32.0.ebuild b/sys-apps/busybox/busybox-1.32.0.ebuild
deleted file mode 100644
index e4d93e71de3f..000000000000
--- a/sys-apps/busybox/busybox-1.32.0.ebuild
+++ /dev/null
@@ -1,337 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# See `man savedconfig.eclass` for info on how to use USE=savedconfig.
-
-EAPI=7
-
-inherit flag-o-matic savedconfig toolchain-funcs
-
-DESCRIPTION="Utilities for rescue and embedded systems"
-HOMEPAGE="https://www.busybox.net/"
-if [[ ${PV} == "9999" ]] ; then
- MY_P=${P}
- EGIT_REPO_URI="https://git.busybox.net/busybox"
- inherit git-r3
-else
- MY_P=${PN}-${PV/_/-}
- SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="GPL-2" # GPL-2 only
-SLOT="0"
-IUSE="debug ipv6 livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd"
-REQUIRED_USE="pam? ( !static )"
-RESTRICT="test"
-
-COMMON_DEPEND="!static? ( selinux? ( sys-libs/libselinux ) )
- pam? ( sys-libs/pam )
- virtual/libcrypt:="
-DEPEND="${COMMON_DEPEND}
- static? (
- virtual/libcrypt[static-libs]
- selinux? ( sys-libs/libselinux[static-libs(+)] )
- )
- >=sys-kernel/linux-headers-2.6.39"
-RDEPEND="${COMMON_DEPEND}
- mdev? ( !<sys-apps/openrc-0.13 )"
-
-S="${WORKDIR}/${MY_P}"
-
-busybox_config_option() {
- local flag=$1 ; shift
- if [[ ${flag} != [yn] && ${flag} != \"* ]] ; then
- busybox_config_option $(usex ${flag} y n) "$@"
- return
- fi
- local expr
- while [[ $# -gt 0 ]] ; do
- case ${flag} in
- y) expr="s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" ;;
- n) expr="s:CONFIG_$1=y:# CONFIG_$1 is not set:g" ;;
- *) expr="s:.*\<CONFIG_$1\>.*:CONFIG_$1=${flag}:g" ;;
- esac
- sed -i -e "${expr}" .config || die
- einfo "$(grep "CONFIG_$1[= ]" .config || echo "Could not find CONFIG_$1 ...")"
- shift
- done
-}
-
-busybox_config_enabled() {
- local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config)
- case ${val} in
- "") return 1 ;;
- y) return 0 ;;
- *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;;
- esac
-}
-
-# patches go here!
-PATCHES=(
- "${FILESDIR}"/${PN}-1.26.2-bb.patch
- # "${FILESDIR}"/${P}-*.patch
-)
-
-src_prepare() {
- default
- unset KBUILD_OUTPUT #88088
- append-flags -fno-strict-aliasing #310413
- use ppc64 && append-flags -mminimal-toc #130943
-
- cp "${FILESDIR}"/ginit.c init/ || die
-
- # flag cleanup
- sed -i -r \
- -e 's:[[:space:]]?-(Werror|Os|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
- Makefile.flags || die
- #sed -i '/bbsh/s:^//::' include/applets.h
- sed -i '/^#error Aborting compilation./d' applets/applets.c || die
- use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile
- sed -i \
- -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
- -e "/^AR\>/s:=.*:= $(tc-getAR):" \
- -e "/^CC\>/s:=.*:= $(tc-getCC):" \
- -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
- -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \
- Makefile || die
- sed -i \
- -e 's:-static-libgcc::' \
- Makefile.flags || die
-}
-
-src_configure() {
- # check for a busybox config before making one of our own.
- # if one exist lets return and use it.
-
- restore_config .config
- if [ -f .config ]; then
- yes "" | emake -j1 -s oldconfig >/dev/null
- return 0
- else
- ewarn "Could not locate user configfile, so we will save a default one"
- fi
-
- # setup the config file
- emake -j1 -s allyesconfig >/dev/null
- # nommu forces a bunch of things off which we want on #387555
- busybox_config_option n NOMMU
- sed -i '/^#/d' .config
- yes "" | emake -j1 -s oldconfig >/dev/null
-
- # now turn off stuff we really don't want
- busybox_config_option n DMALLOC
- busybox_config_option n FEATURE_2_4_MODULES #607548
- busybox_config_option n FEATURE_SUID_CONFIG
- busybox_config_option n BUILD_AT_ONCE
- busybox_config_option n BUILD_LIBBUSYBOX
- busybox_config_option n FEATURE_CLEAN_UP
- busybox_config_option n MONOTONIC_SYSCALL
- busybox_config_option n USE_PORTABLE_CODE
- busybox_config_option n WERROR
- # triming the BSS size may be dangerous
- busybox_config_option n FEATURE_USE_BSS_TAIL
-
- # These cause trouble with musl.
- if use elibc_musl; then
- busybox_config_option n FEATURE_UTMP
- busybox_config_option n EXTRA_COMPAT
- busybox_config_option n FEATURE_VI_REGEX_SEARCH
- fi
-
- # If these are not set and we are using a uclibc/busybox setup
- # all calls to system() will fail.
- busybox_config_option y ASH
- busybox_config_option y SH_IS_ASH
- busybox_config_option n HUSH
- busybox_config_option n SH_IS_HUSH
-
- busybox_config_option '"/run"' PID_FILE_PATH
- busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH
-
- # disable ipv6 applets
- if ! use ipv6; then
- busybox_config_option n FEATURE_IPV6
- busybox_config_option n TRACEROUTE6
- busybox_config_option n PING6
- busybox_config_option n UDHCPC6
- fi
-
- busybox_config_option pam PAM
- busybox_config_option static STATIC
- busybox_config_option syslog {K,SYS}LOGD LOGGER
- busybox_config_option systemd FEATURE_SYSTEMD
- busybox_config_option math FEATURE_AWK_LIBM
-
- # disable features that uClibc doesn't (yet?) provide.
- if use elibc_uclibc; then
- busybox_config_option n FEATURE_SYNC_FANCY #567598
- busybox_config_option n NSENTER
- fi
-
- # all the debug options are compiler related, so punt them
- busybox_config_option n DEBUG_SANITIZE
- busybox_config_option n DEBUG
- busybox_config_option y NO_DEBUG_LIB
- busybox_config_option n DMALLOC
- busybox_config_option n EFENCE
- busybox_config_option $(usex debug y n) TFTP_DEBUG
-
- busybox_config_option selinux SELINUX
-
- # this opt only controls mounting with <linux-2.6.23
- busybox_config_option n FEATURE_MOUNT_NFS
-
- # glibc-2.26 and later does not ship RPC implientation
- busybox_config_option n FEATURE_HAVE_RPC
- busybox_config_option n FEATURE_INETD_RPC
-
- # default a bunch of uncommon options to off
- local opt
- for opt in \
- ADD_SHELL \
- BEEP BOOTCHARTD \
- CRONTAB \
- DC DEVFSD DNSD DPKG{,_DEB} \
- FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \
- FEATURE_DEVFS \
- HOSTID HUSH \
- INETD INOTIFYD IPCALC \
- LOCALE_SUPPORT LOGNAME LPD \
- MAKEMIME MKFS_MINIX MSH \
- OD \
- RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \
- SLATTACH SMEMCAP SULOGIN SV{,LOGD} \
- TASKSET TCPSVD \
- RPM RPM2CPIO \
- UDPSVD UUDECODE UUENCODE
- do
- busybox_config_option n ${opt}
- done
-
- emake -j1 oldconfig > /dev/null
-}
-
-src_compile() {
- unset KBUILD_OUTPUT #88088
- export SKIP_STRIP=y
-
- emake V=1 busybox
-}
-
-src_install() {
- unset KBUILD_OUTPUT #88088
- save_config .config
-
- into /
- dodir /bin
- if use sep-usr ; then
- # install /ginit to take care of mounting stuff
- exeinto /
- newexe busybox_unstripped ginit
- dosym /ginit /bin/bb
- dosym bb /bin/busybox
- else
- newbin busybox_unstripped busybox
- dosym busybox /bin/bb
- fi
- if use mdev ; then
- dodir /$(get_libdir)/mdev/
- use make-symlinks || dosym /bin/bb /sbin/mdev
- cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf
-
- exeinto /$(get_libdir)/mdev/
- doexe "${FILESDIR}"/mdev/*
-
- newinitd "${FILESDIR}"/mdev.initd mdev
- fi
- if use livecd ; then
- dosym busybox /bin/vi
- fi
-
- # add busybox daemon's, bug #444718
- if busybox_config_enabled FEATURE_NTPD_SERVER; then
- newconfd "${FILESDIR}/ntpd.confd" "busybox-ntpd"
- newinitd "${FILESDIR}/ntpd.initd" "busybox-ntpd"
- fi
- if busybox_config_enabled SYSLOGD; then
- newconfd "${FILESDIR}/syslogd.confd" "busybox-syslogd"
- newinitd "${FILESDIR}/syslogd.initd" "busybox-syslogd"
- fi
- if busybox_config_enabled KLOGD; then
- newconfd "${FILESDIR}/klogd.confd" "busybox-klogd"
- newinitd "${FILESDIR}/klogd.initd" "busybox-klogd"
- fi
- if busybox_config_enabled WATCHDOG; then
- newconfd "${FILESDIR}/watchdog.confd" "busybox-watchdog"
- newinitd "${FILESDIR}/watchdog.initd" "busybox-watchdog"
- fi
- if busybox_config_enabled UDHCPC; then
- local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT)
- exeinto "${path%/*}"
- newexe examples/udhcp/simple.script "${path##*/}"
- fi
- if busybox_config_enabled UDHCPD; then
- insinto /etc
- doins examples/udhcp/udhcpd.conf
- fi
-
- # bundle up the symlink files for use later
- emake DESTDIR="${ED}" install
- rm _install/bin/busybox
- # for compatibility, provide /usr/bin/env
- mkdir -p _install/usr/bin
- ln -s /bin/env _install/usr/bin/env
- tar cf busybox-links.tar -C _install . || : #;die
- insinto /usr/share/${PN}
- use make-symlinks && doins busybox-links.tar
-
- dodoc AUTHORS README TODO
-
- cd docs
- docinto txt
- dodoc *.txt
- docinto pod
- dodoc *.pod
- docinto html
- dodoc *.html
-
- cd ../examples
- docinto examples
- dodoc inittab depmod.pl *.conf *.script undeb unrpm
-}
-
-pkg_preinst() {
- if use make-symlinks && [[ ! ${VERY_BRAVE_OR_VERY_DUMB} == "yes" ]] && [[ ${ROOT} == "/" ]] ; then
- ewarn "setting USE=make-symlinks and emerging to / is very dangerous."
- ewarn "it WILL overwrite lots of system programs like: ls bash awk grep (bug 60805 for full list)."
- ewarn "If you are creating a binary only and not merging this is probably ok."
- ewarn "set env VERY_BRAVE_OR_VERY_DUMB=yes if this is really what you want."
- die "silly options will destroy your system"
- fi
-
- if use make-symlinks ; then
- mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
- fi
-}
-
-pkg_postinst() {
- savedconfig_pkg_postinst
-
- if use make-symlinks ; then
- cd "${T}" || die
- mkdir _install
- tar xf busybox-links.tar -C _install || die
- cp -vpPR _install/* "${ROOT}"/ || die "copying links for ${x} failed"
- fi
-
- if use sep-usr ; then
- elog "In order to use the sep-usr support, you have to update your"
- elog "kernel command line. Add the option:"
- elog " init=/ginit"
- elog "To launch a different init than /sbin/init, use:"
- elog " init=/ginit /sbin/yourinit"
- elog "To get a rescue shell, you may boot with:"
- elog " init=/ginit bb"
- fi
-}
diff --git a/sys-apps/busybox/busybox-1.36.1-r1.ebuild b/sys-apps/busybox/busybox-1.36.1-r1.ebuild
new file mode 100644
index 000000000000..78c429beefc9
--- /dev/null
+++ b/sys-apps/busybox/busybox-1.36.1-r1.ebuild
@@ -0,0 +1,376 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# See `man savedconfig.eclass` for info on how to use USE=savedconfig.
+
+EAPI=8
+
+inherit flag-o-matic readme.gentoo-r1 savedconfig toolchain-funcs
+
+DESCRIPTION="Utilities for rescue and embedded systems"
+HOMEPAGE="https://www.busybox.net/"
+if [[ ${PV} == "9999" ]] ; then
+ MY_P="${P}"
+ EGIT_REPO_URI="https://git.busybox.net/busybox"
+ inherit git-r3
+else
+ MY_P="${PN}-${PV/_/-}"
+ SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2" # GPL-2 only
+SLOT="0"
+IUSE="debug livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd"
+REQUIRED_USE="pam? ( !static )"
+RESTRICT="test"
+
+# TODO: Could make pkgconfig conditional on selinux? bug #782829
+RDEPEND="
+ !static? (
+ virtual/libc
+ virtual/libcrypt:=
+ selinux? ( sys-libs/libselinux )
+ )
+ pam? ( sys-libs/pam )
+"
+DEPEND="${RDEPEND}
+ static? (
+ virtual/libcrypt[static-libs]
+ selinux? ( sys-libs/libselinux[static-libs(+)] )
+ )
+ sys-kernel/linux-headers"
+BDEPEND="virtual/pkgconfig"
+
+DISABLE_AUTOFORMATTING=yes
+DOC_CONTENTS='
+If you want a smaller executable, add `-Oz` to your busybox `CFLAGS`.'
+
+busybox_config_option() {
+ local flag=$1 ; shift
+ if [[ ${flag} != [yn] && ${flag} != \"* ]] ; then
+ busybox_config_option $(usex ${flag} y n) "$@"
+ return
+ fi
+ local expr
+ while [[ $# -gt 0 ]] ; do
+ case ${flag} in
+ y) expr="s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" ;;
+ n) expr="s:CONFIG_$1=y:# CONFIG_$1 is not set:g" ;;
+ *) expr="s:.*\<CONFIG_$1\>.*:CONFIG_$1=${flag}:g" ;;
+ esac
+ sed -i -e "${expr}" .config || die
+ einfo "$(grep "CONFIG_$1[= ]" .config || echo "Could not find CONFIG_$1 ...")"
+ shift
+ done
+}
+
+busybox_config_enabled() {
+ local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config)
+ case ${val} in
+ "") return 1 ;;
+ y) return 0 ;;
+ *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;;
+ esac
+}
+
+# patches go here!
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.26.2-bb.patch
+ "${FILESDIR}"/${PN}-1.34.1-skip-selinux-search.patch
+
+ "${FILESDIR}"/${PN}-1.36.0-fortify-source-3-fixdep.patch
+
+ # "${FILESDIR}"/${P}-*.patch
+)
+
+src_prepare() {
+ default
+ unset KBUILD_OUTPUT #88088
+ append-flags -fno-strict-aliasing #310413
+ use ppc64 && append-flags -mminimal-toc #130943
+
+ cp "${FILESDIR}"/ginit.c init/ || die
+
+ # flag cleanup
+ sed -i -r \
+ -e 's:[[:space:]]?-(Werror|Os|Oz|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
+ Makefile.flags || die
+ sed -i \
+ -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
+ -e "/^AR\>/s:=.*:= $(tc-getAR):" \
+ -e "/^CC\>/s:=.*:= $(tc-getCC):" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \
+ Makefile || die
+ sed -i \
+ -e 's:-static-libgcc::' \
+ Makefile.flags || die
+
+ # Print all link lines too
+ sed -i -e 's:debug=false:debug=true:' scripts/trylink || die
+}
+
+src_configure() {
+ # check for a busybox config before making one of our own.
+ # if one exist lets return and use it.
+
+ restore_config .config
+ if [ -f .config ]; then
+ yes "" | emake -j1 -s oldconfig >/dev/null
+ return 0
+ else
+ ewarn "Could not locate user configfile, so we will save a default one"
+ fi
+
+ # setting SKIP_SELINUX skips searching for selinux at this stage. We don't
+ # need to search now in case we end up not needing it after all.
+ # setup the config file
+ emake -j1 -s allyesconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918
+ # nommu forces a bunch of things off which we want on #387555
+ busybox_config_option n NOMMU
+ sed -i '/^#/d' .config
+ yes "" | emake -j1 -s oldconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918
+
+ # now turn off stuff we really don't want
+ busybox_config_option n DMALLOC
+ busybox_config_option n FEATURE_2_4_MODULES #607548
+ busybox_config_option n FEATURE_SUID_CONFIG
+ busybox_config_option n BUILD_AT_ONCE
+ busybox_config_option n BUILD_LIBBUSYBOX
+ busybox_config_option n FEATURE_CLEAN_UP
+ busybox_config_option n MONOTONIC_SYSCALL
+ busybox_config_option n USE_PORTABLE_CODE
+ busybox_config_option n WERROR
+ # CONFIG_MODPROBE_SMALL=y disables depmod.c and uses a smaller one that
+ # does not support -b. Setting this to no creates slightly larger and
+ # slightly more useful modutils
+ busybox_config_option n MODPROBE_SMALL #472464
+ # triming the BSS size may be dangerous
+ busybox_config_option n FEATURE_USE_BSS_TAIL
+
+ # These cause trouble with musl.
+ if use elibc_musl; then
+ busybox_config_option n FEATURE_UTMP
+ busybox_config_option n EXTRA_COMPAT
+ busybox_config_option n FEATURE_VI_REGEX_SEARCH
+ fi
+
+ # Disable standalone shell mode when using make-symlinks, else Busybox calls its
+ # applets by default without looking up in PATH.
+ # This also enables users to disable a builtin by deleting the corresponding symlink.
+ if use make-symlinks; then
+ busybox_config_option n FEATURE_PREFER_APPLETS
+ busybox_config_option n FEATURE_SH_STANDALONE
+ fi
+
+ # If these are not set and we are using a busybox setup
+ # all calls to system() will fail.
+ busybox_config_option y ASH
+ busybox_config_option y SH_IS_ASH
+ busybox_config_option n HUSH
+ busybox_config_option n SH_IS_HUSH
+
+ busybox_config_option '"/run"' PID_FILE_PATH
+ busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH
+
+ busybox_config_option pam PAM
+ busybox_config_option static STATIC
+ busybox_config_option syslog {K,SYS}LOGD LOGGER
+ busybox_config_option systemd FEATURE_SYSTEMD
+ busybox_config_option math FEATURE_AWK_LIBM
+
+ # all the debug options are compiler related, so punt them
+ busybox_config_option n DEBUG_SANITIZE
+ busybox_config_option n DEBUG
+ busybox_config_option y NO_DEBUG_LIB
+ busybox_config_option n DMALLOC
+ busybox_config_option n EFENCE
+ busybox_config_option $(usex debug y n) TFTP_DEBUG
+
+ busybox_config_option selinux SELINUX
+
+ # this opt only controls mounting with <linux-2.6.23
+ busybox_config_option n FEATURE_MOUNT_NFS
+
+ # glibc-2.26 and later does not ship RPC implientation
+ busybox_config_option n FEATURE_HAVE_RPC
+ busybox_config_option n FEATURE_INETD_RPC
+
+ # default a bunch of uncommon options to off
+ local opt
+ for opt in \
+ ADD_SHELL \
+ BEEP BOOTCHARTD \
+ CRONTAB \
+ DC DEVFSD DNSD DPKG{,_DEB} \
+ FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \
+ FEATURE_DEVFS \
+ HOSTID HUSH \
+ INETD INOTIFYD IPCALC \
+ LOCALE_SUPPORT LOGNAME LPD \
+ MAKEMIME MKFS_MINIX MSH \
+ OD \
+ RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \
+ SLATTACH SMEMCAP SULOGIN SV{,LOGD} \
+ TASKSET TCPSVD \
+ RPM RPM2CPIO \
+ UDPSVD UUDECODE UUENCODE
+ do
+ busybox_config_option n ${opt}
+ done
+
+ emake -j1 oldconfig > /dev/null
+}
+
+src_compile() {
+ unset KBUILD_OUTPUT #88088
+ export SKIP_STRIP=y
+
+ emake V=1 busybox
+
+ # bug #701512
+ emake V=1 doc
+}
+
+src_install() {
+ unset KBUILD_OUTPUT #88088
+ save_config .config
+
+ into /
+ dodir /bin
+ if use sep-usr ; then
+ # install /ginit to take care of mounting stuff
+ exeinto /
+ newexe busybox_unstripped ginit
+ dosym /ginit /bin/bb
+ dosym bb /bin/busybox
+ else
+ newbin busybox_unstripped busybox
+ dosym busybox /bin/bb
+ fi
+ if use mdev ; then
+ dodir /$(get_libdir)/mdev/
+ use make-symlinks || dosym /bin/bb /sbin/mdev
+ cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf || die
+ if [[ ! "$(get_libdir)" == "lib" ]]; then
+ #831251 - replace lib with lib64 where appropriate
+ sed -i -e "s:/lib/:/$(get_libdir)/:g" "${ED}"/etc/mdev.conf || die
+ fi
+
+ exeinto /$(get_libdir)/mdev/
+ doexe "${FILESDIR}"/mdev/*
+
+ newinitd "${FILESDIR}"/mdev.initd mdev
+ fi
+ if use livecd ; then
+ dosym busybox /bin/vi
+ fi
+
+ # add busybox daemon's, bug #444718
+ if busybox_config_enabled FEATURE_NTPD_SERVER; then
+ newconfd "${FILESDIR}"/ntpd.confd busybox-ntpd
+ newinitd "${FILESDIR}"/ntpd.initd busybox-ntpd
+ fi
+ if busybox_config_enabled SYSLOGD; then
+ newconfd "${FILESDIR}"/syslogd.confd busybox-syslogd
+ newinitd "${FILESDIR}"/syslogd.initd busybox-syslogd
+ fi
+ if busybox_config_enabled KLOGD; then
+ newconfd "${FILESDIR}"/klogd.confd busybox-klogd
+ newinitd "${FILESDIR}"/klogd.initd busybox-klogd
+ fi
+ if busybox_config_enabled WATCHDOG; then
+ newconfd "${FILESDIR}"/watchdog.confd busybox-watchdog
+ newinitd "${FILESDIR}"/watchdog.initd busybox-watchdog
+ fi
+ if busybox_config_enabled UDHCPC; then
+ sed -i 's:$((metric++)):$metric; metric=$((metric + 1)):' examples/udhcp/simple.script || die #801535
+ local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT)
+ exeinto "${path%/*}"
+ newexe examples/udhcp/simple.script "${path##*/}"
+ fi
+ if busybox_config_enabled UDHCPD; then
+ insinto /etc
+ doins examples/udhcp/udhcpd.conf
+ fi
+ if busybox_config_enabled ASH && ! use make-symlinks; then
+ dosym -r /bin/busybox /bin/ash
+ fi
+ if busybox_config_enabled CROND; then
+ newconfd "${FILESDIR}"/crond.confd busybox-crond
+ newinitd "${FILESDIR}"/crond.initd busybox-crond
+ fi
+
+ # bundle up the symlink files for use later
+ emake DESTDIR="${ED}" install
+ # for compatibility, provide /usr/bin/env
+ mkdir -p _install/usr/bin || die
+ if [[ ! -e _install/usr/bin/env ]]; then
+ ln -s /bin/env _install/usr/bin/env || die
+ fi
+ rm _install/bin/busybox || die
+ tar cf busybox-links.tar -C _install . || : #;die
+ insinto /usr/share/${PN}
+ use make-symlinks && doins busybox-links.tar
+
+ dodoc AUTHORS README TODO
+
+ cd docs || die
+ doman busybox.1
+ docinto txt
+ dodoc *.txt
+ docinto pod
+ dodoc *.pod
+ docinto html
+ dodoc *.html
+
+ cd ../examples || die
+ docinto examples
+ dodoc inittab depmod.pl *.conf *.script undeb unrpm
+
+ cd ../networking || die
+ dodoc httpd_indexcgi.c httpd_post_upload.cgi
+
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ if use make-symlinks ; then
+ mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
+ fi
+}
+
+pkg_postinst() {
+ savedconfig_pkg_postinst
+
+ if use make-symlinks ; then
+ cd "${T}" || die
+ mkdir _install
+ tar xf busybox-links.tar -C _install || die
+ # 907432: cp -n returns error if it skips any file, but that is expected here
+ # TODO: check if a new coreutils release has a replacement option
+ cp -nvpPR _install/* "${ROOT}"/
+ fi
+
+ if use sep-usr ; then
+ elog "In order to use the sep-usr support, you have to update your"
+ elog "kernel command line. Add the option:"
+ elog " init=/ginit"
+ elog "To launch a different init than /sbin/init, use:"
+ elog " init=/ginit /sbin/yourinit"
+ elog "To get a rescue shell, you may boot with:"
+ elog " init=/ginit bb"
+ fi
+
+ if [[ ${MERGE_TYPE} != binary ]] && ! is-flagq -Oz; then
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test ${v} -le 1.36.1; then
+ FORCE_PRINT_ELOG=yes
+ fi
+ done
+
+ readme.gentoo_print_elog
+ fi
+}
diff --git a/sys-apps/busybox/busybox-1.36.1-r2.ebuild b/sys-apps/busybox/busybox-1.36.1-r2.ebuild
new file mode 100644
index 000000000000..74082ac77ae5
--- /dev/null
+++ b/sys-apps/busybox/busybox-1.36.1-r2.ebuild
@@ -0,0 +1,377 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# See `man savedconfig.eclass` for info on how to use USE=savedconfig.
+
+EAPI=8
+
+inherit flag-o-matic readme.gentoo-r1 savedconfig toolchain-funcs
+
+DESCRIPTION="Utilities for rescue and embedded systems"
+HOMEPAGE="https://www.busybox.net/"
+if [[ ${PV} == "9999" ]] ; then
+ MY_P="${P}"
+ EGIT_REPO_URI="https://git.busybox.net/busybox"
+ inherit git-r3
+else
+ MY_P="${PN}-${PV/_/-}"
+ SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2" # GPL-2 only
+SLOT="0"
+IUSE="debug livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd"
+REQUIRED_USE="pam? ( !static )"
+RESTRICT="test"
+
+# TODO: Could make pkgconfig conditional on selinux? bug #782829
+RDEPEND="
+ !static? (
+ virtual/libc
+ virtual/libcrypt:=
+ selinux? ( sys-libs/libselinux )
+ )
+ pam? ( sys-libs/pam )
+"
+DEPEND="${RDEPEND}
+ static? (
+ virtual/libcrypt[static-libs]
+ selinux? ( sys-libs/libselinux[static-libs(+)] )
+ )
+ sys-kernel/linux-headers"
+BDEPEND="virtual/pkgconfig"
+
+DISABLE_AUTOFORMATTING=yes
+DOC_CONTENTS='
+If you want a smaller executable, add `-Oz` to your busybox `CFLAGS`.'
+
+busybox_config_option() {
+ local flag=$1 ; shift
+ if [[ ${flag} != [yn] && ${flag} != \"* ]] ; then
+ busybox_config_option $(usex ${flag} y n) "$@"
+ return
+ fi
+ local expr
+ while [[ $# -gt 0 ]] ; do
+ case ${flag} in
+ y) expr="s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" ;;
+ n) expr="s:CONFIG_$1=y:# CONFIG_$1 is not set:g" ;;
+ *) expr="s:.*\<CONFIG_$1\>.*:CONFIG_$1=${flag}:g" ;;
+ esac
+ sed -i -e "${expr}" .config || die
+ einfo "$(grep "CONFIG_$1[= ]" .config || echo "Could not find CONFIG_$1 ...")"
+ shift
+ done
+}
+
+busybox_config_enabled() {
+ local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config)
+ case ${val} in
+ "") return 1 ;;
+ y) return 0 ;;
+ *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;;
+ esac
+}
+
+# patches go here!
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.26.2-bb.patch
+ "${FILESDIR}"/${PN}-1.34.1-skip-selinux-search.patch
+
+ "${FILESDIR}"/${PN}-1.36.0-fortify-source-3-fixdep.patch
+ "${FILESDIR}"/${PN}-1.36.1-kernel-6.8.patch
+
+ # "${FILESDIR}"/${P}-*.patch
+)
+
+src_prepare() {
+ default
+ unset KBUILD_OUTPUT #88088
+ append-flags -fno-strict-aliasing #310413
+ use ppc64 && append-flags -mminimal-toc #130943
+
+ cp "${FILESDIR}"/ginit.c init/ || die
+
+ # flag cleanup
+ sed -i -r \
+ -e 's:[[:space:]]?-(Werror|Os|Oz|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
+ Makefile.flags || die
+ sed -i \
+ -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
+ -e "/^AR\>/s:=.*:= $(tc-getAR):" \
+ -e "/^CC\>/s:=.*:= $(tc-getCC):" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \
+ Makefile || die
+ sed -i \
+ -e 's:-static-libgcc::' \
+ Makefile.flags || die
+
+ # Print all link lines too
+ sed -i -e 's:debug=false:debug=true:' scripts/trylink || die
+}
+
+src_configure() {
+ # check for a busybox config before making one of our own.
+ # if one exist lets return and use it.
+
+ restore_config .config
+ if [ -f .config ]; then
+ yes "" | emake -j1 -s oldconfig >/dev/null
+ return 0
+ else
+ ewarn "Could not locate user configfile, so we will save a default one"
+ fi
+
+ # setting SKIP_SELINUX skips searching for selinux at this stage. We don't
+ # need to search now in case we end up not needing it after all.
+ # setup the config file
+ emake -j1 -s allyesconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918
+ # nommu forces a bunch of things off which we want on #387555
+ busybox_config_option n NOMMU
+ sed -i '/^#/d' .config
+ yes "" | emake -j1 -s oldconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918
+
+ # now turn off stuff we really don't want
+ busybox_config_option n DMALLOC
+ busybox_config_option n FEATURE_2_4_MODULES #607548
+ busybox_config_option n FEATURE_SUID_CONFIG
+ busybox_config_option n BUILD_AT_ONCE
+ busybox_config_option n BUILD_LIBBUSYBOX
+ busybox_config_option n FEATURE_CLEAN_UP
+ busybox_config_option n MONOTONIC_SYSCALL
+ busybox_config_option n USE_PORTABLE_CODE
+ busybox_config_option n WERROR
+ # CONFIG_MODPROBE_SMALL=y disables depmod.c and uses a smaller one that
+ # does not support -b. Setting this to no creates slightly larger and
+ # slightly more useful modutils
+ busybox_config_option n MODPROBE_SMALL #472464
+ # triming the BSS size may be dangerous
+ busybox_config_option n FEATURE_USE_BSS_TAIL
+
+ # These cause trouble with musl.
+ if use elibc_musl; then
+ busybox_config_option n FEATURE_UTMP
+ busybox_config_option n EXTRA_COMPAT
+ busybox_config_option n FEATURE_VI_REGEX_SEARCH
+ fi
+
+ # Disable standalone shell mode when using make-symlinks, else Busybox calls its
+ # applets by default without looking up in PATH.
+ # This also enables users to disable a builtin by deleting the corresponding symlink.
+ if use make-symlinks; then
+ busybox_config_option n FEATURE_PREFER_APPLETS
+ busybox_config_option n FEATURE_SH_STANDALONE
+ fi
+
+ # If these are not set and we are using a busybox setup
+ # all calls to system() will fail.
+ busybox_config_option y ASH
+ busybox_config_option y SH_IS_ASH
+ busybox_config_option n HUSH
+ busybox_config_option n SH_IS_HUSH
+
+ busybox_config_option '"/run"' PID_FILE_PATH
+ busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH
+
+ busybox_config_option pam PAM
+ busybox_config_option static STATIC
+ busybox_config_option syslog {K,SYS}LOGD LOGGER
+ busybox_config_option systemd FEATURE_SYSTEMD
+ busybox_config_option math FEATURE_AWK_LIBM
+
+ # all the debug options are compiler related, so punt them
+ busybox_config_option n DEBUG_SANITIZE
+ busybox_config_option n DEBUG
+ busybox_config_option y NO_DEBUG_LIB
+ busybox_config_option n DMALLOC
+ busybox_config_option n EFENCE
+ busybox_config_option $(usex debug y n) TFTP_DEBUG
+
+ busybox_config_option selinux SELINUX
+
+ # this opt only controls mounting with <linux-2.6.23
+ busybox_config_option n FEATURE_MOUNT_NFS
+
+ # glibc-2.26 and later does not ship RPC implientation
+ busybox_config_option n FEATURE_HAVE_RPC
+ busybox_config_option n FEATURE_INETD_RPC
+
+ # default a bunch of uncommon options to off
+ local opt
+ for opt in \
+ ADD_SHELL \
+ BEEP BOOTCHARTD \
+ CRONTAB \
+ DC DEVFSD DNSD DPKG{,_DEB} \
+ FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \
+ FEATURE_DEVFS \
+ HOSTID HUSH \
+ INETD INOTIFYD IPCALC \
+ LOCALE_SUPPORT LOGNAME LPD \
+ MAKEMIME MKFS_MINIX MSH \
+ OD \
+ RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \
+ SLATTACH SMEMCAP SULOGIN SV{,LOGD} \
+ TASKSET TCPSVD \
+ RPM RPM2CPIO \
+ UDPSVD UUDECODE UUENCODE
+ do
+ busybox_config_option n ${opt}
+ done
+
+ emake -j1 oldconfig > /dev/null
+}
+
+src_compile() {
+ unset KBUILD_OUTPUT #88088
+ export SKIP_STRIP=y
+
+ emake V=1 busybox
+
+ # bug #701512
+ emake V=1 doc
+}
+
+src_install() {
+ unset KBUILD_OUTPUT #88088
+ save_config .config
+
+ into /
+ dodir /bin
+ if use sep-usr ; then
+ # install /ginit to take care of mounting stuff
+ exeinto /
+ newexe busybox_unstripped ginit
+ dosym /ginit /bin/bb
+ dosym bb /bin/busybox
+ else
+ newbin busybox_unstripped busybox
+ dosym busybox /bin/bb
+ fi
+ if use mdev ; then
+ dodir /$(get_libdir)/mdev/
+ use make-symlinks || dosym /bin/bb /sbin/mdev
+ cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf || die
+ if [[ ! "$(get_libdir)" == "lib" ]]; then
+ #831251 - replace lib with lib64 where appropriate
+ sed -i -e "s:/lib/:/$(get_libdir)/:g" "${ED}"/etc/mdev.conf || die
+ fi
+
+ exeinto /$(get_libdir)/mdev/
+ doexe "${FILESDIR}"/mdev/*
+
+ newinitd "${FILESDIR}"/mdev.initd mdev
+ fi
+ if use livecd ; then
+ dosym busybox /bin/vi
+ fi
+
+ # add busybox daemon's, bug #444718
+ if busybox_config_enabled FEATURE_NTPD_SERVER; then
+ newconfd "${FILESDIR}"/ntpd.confd busybox-ntpd
+ newinitd "${FILESDIR}"/ntpd.initd busybox-ntpd
+ fi
+ if busybox_config_enabled SYSLOGD; then
+ newconfd "${FILESDIR}"/syslogd.confd busybox-syslogd
+ newinitd "${FILESDIR}"/syslogd.initd busybox-syslogd
+ fi
+ if busybox_config_enabled KLOGD; then
+ newconfd "${FILESDIR}"/klogd.confd busybox-klogd
+ newinitd "${FILESDIR}"/klogd.initd busybox-klogd
+ fi
+ if busybox_config_enabled WATCHDOG; then
+ newconfd "${FILESDIR}"/watchdog.confd busybox-watchdog
+ newinitd "${FILESDIR}"/watchdog.initd busybox-watchdog
+ fi
+ if busybox_config_enabled UDHCPC; then
+ sed -i 's:$((metric++)):$metric; metric=$((metric + 1)):' examples/udhcp/simple.script || die #801535
+ local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT)
+ exeinto "${path%/*}"
+ newexe examples/udhcp/simple.script "${path##*/}"
+ fi
+ if busybox_config_enabled UDHCPD; then
+ insinto /etc
+ doins examples/udhcp/udhcpd.conf
+ fi
+ if busybox_config_enabled ASH && ! use make-symlinks; then
+ dosym -r /bin/busybox /bin/ash
+ fi
+ if busybox_config_enabled CROND; then
+ newconfd "${FILESDIR}"/crond.confd busybox-crond
+ newinitd "${FILESDIR}"/crond.initd busybox-crond
+ fi
+
+ # bundle up the symlink files for use later
+ emake DESTDIR="${ED}" install
+ # for compatibility, provide /usr/bin/env
+ mkdir -p _install/usr/bin || die
+ if [[ ! -e _install/usr/bin/env ]]; then
+ ln -s /bin/env _install/usr/bin/env || die
+ fi
+ rm _install/bin/busybox || die
+ tar cf busybox-links.tar -C _install . || : #;die
+ insinto /usr/share/${PN}
+ use make-symlinks && doins busybox-links.tar
+
+ dodoc AUTHORS README TODO
+
+ cd docs || die
+ doman busybox.1
+ docinto txt
+ dodoc *.txt
+ docinto pod
+ dodoc *.pod
+ docinto html
+ dodoc *.html
+
+ cd ../examples || die
+ docinto examples
+ dodoc inittab depmod.pl *.conf *.script undeb unrpm
+
+ cd ../networking || die
+ dodoc httpd_indexcgi.c httpd_post_upload.cgi
+
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ if use make-symlinks ; then
+ mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
+ fi
+}
+
+pkg_postinst() {
+ savedconfig_pkg_postinst
+
+ if use make-symlinks ; then
+ cd "${T}" || die
+ mkdir _install
+ tar xf busybox-links.tar -C _install || die
+ # 907432: cp -n returns error if it skips any file, but that is expected here
+ # TODO: check if a new coreutils release has a replacement option
+ cp -nvpPR _install/* "${ROOT}"/
+ fi
+
+ if use sep-usr ; then
+ elog "In order to use the sep-usr support, you have to update your"
+ elog "kernel command line. Add the option:"
+ elog " init=/ginit"
+ elog "To launch a different init than /sbin/init, use:"
+ elog " init=/ginit /sbin/yourinit"
+ elog "To get a rescue shell, you may boot with:"
+ elog " init=/ginit bb"
+ fi
+
+ if [[ ${MERGE_TYPE} != binary ]] && ! is-flagq -Oz; then
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test ${v} -le 1.36.1; then
+ FORCE_PRINT_ELOG=yes
+ fi
+ done
+
+ readme.gentoo_print_elog
+ fi
+}
diff --git a/sys-apps/busybox/busybox-9999.ebuild b/sys-apps/busybox/busybox-9999.ebuild
index bf29c9fb1d87..74082ac77ae5 100644
--- a/sys-apps/busybox/busybox-9999.ebuild
+++ b/sys-apps/busybox/busybox-9999.ebuild
@@ -1,39 +1,51 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# See `man savedconfig.eclass` for info on how to use USE=savedconfig.
-EAPI=6
+EAPI=8
-inherit flag-o-matic savedconfig toolchain-funcs
+inherit flag-o-matic readme.gentoo-r1 savedconfig toolchain-funcs
DESCRIPTION="Utilities for rescue and embedded systems"
HOMEPAGE="https://www.busybox.net/"
if [[ ${PV} == "9999" ]] ; then
- MY_P=${P}
+ MY_P="${P}"
EGIT_REPO_URI="https://git.busybox.net/busybox"
inherit git-r3
else
- MY_P=${PN}-${PV/_/-}
+ MY_P="${PN}-${PV/_/-}"
SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
+S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2" # GPL-2 only
SLOT="0"
-IUSE="debug ipv6 livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd"
+IUSE="debug livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd"
REQUIRED_USE="pam? ( !static )"
RESTRICT="test"
-COMMON_DEPEND="!static? ( selinux? ( sys-libs/libselinux ) )
- pam? ( sys-libs/pam )"
-DEPEND="${COMMON_DEPEND}
- static? ( selinux? ( sys-libs/libselinux[static-libs(+)] ) )
- >=sys-kernel/linux-headers-2.6.39"
-RDEPEND="${COMMON_DEPEND}
- mdev? ( !<sys-apps/openrc-0.13 )"
-
-S=${WORKDIR}/${MY_P}
+# TODO: Could make pkgconfig conditional on selinux? bug #782829
+RDEPEND="
+ !static? (
+ virtual/libc
+ virtual/libcrypt:=
+ selinux? ( sys-libs/libselinux )
+ )
+ pam? ( sys-libs/pam )
+"
+DEPEND="${RDEPEND}
+ static? (
+ virtual/libcrypt[static-libs]
+ selinux? ( sys-libs/libselinux[static-libs(+)] )
+ )
+ sys-kernel/linux-headers"
+BDEPEND="virtual/pkgconfig"
+
+DISABLE_AUTOFORMATTING=yes
+DOC_CONTENTS='
+If you want a smaller executable, add `-Oz` to your busybox `CFLAGS`.'
busybox_config_option() {
local flag=$1 ; shift
@@ -66,6 +78,11 @@ busybox_config_enabled() {
# patches go here!
PATCHES=(
"${FILESDIR}"/${PN}-1.26.2-bb.patch
+ "${FILESDIR}"/${PN}-1.34.1-skip-selinux-search.patch
+
+ "${FILESDIR}"/${PN}-1.36.0-fortify-source-3-fixdep.patch
+ "${FILESDIR}"/${PN}-1.36.1-kernel-6.8.patch
+
# "${FILESDIR}"/${P}-*.patch
)
@@ -79,11 +96,8 @@ src_prepare() {
# flag cleanup
sed -i -r \
- -e 's:[[:space:]]?-(Werror|Os|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
+ -e 's:[[:space:]]?-(Werror|Os|Oz|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \
Makefile.flags || die
- #sed -i '/bbsh/s:^//::' include/applets.h
- sed -i '/^#error Aborting compilation./d' applets/applets.c || die
- use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile
sed -i \
-e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
-e "/^AR\>/s:=.*:= $(tc-getAR):" \
@@ -94,6 +108,9 @@ src_prepare() {
sed -i \
-e 's:-static-libgcc::' \
Makefile.flags || die
+
+ # Print all link lines too
+ sed -i -e 's:debug=false:debug=true:' scripts/trylink || die
}
src_configure() {
@@ -108,12 +125,14 @@ src_configure() {
ewarn "Could not locate user configfile, so we will save a default one"
fi
+ # setting SKIP_SELINUX skips searching for selinux at this stage. We don't
+ # need to search now in case we end up not needing it after all.
# setup the config file
- emake -j1 -s allyesconfig >/dev/null
+ emake -j1 -s allyesconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918
# nommu forces a bunch of things off which we want on #387555
busybox_config_option n NOMMU
sed -i '/^#/d' .config
- yes "" | emake -j1 -s oldconfig >/dev/null
+ yes "" | emake -j1 -s oldconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918
# now turn off stuff we really don't want
busybox_config_option n DMALLOC
@@ -125,6 +144,10 @@ src_configure() {
busybox_config_option n MONOTONIC_SYSCALL
busybox_config_option n USE_PORTABLE_CODE
busybox_config_option n WERROR
+ # CONFIG_MODPROBE_SMALL=y disables depmod.c and uses a smaller one that
+ # does not support -b. Setting this to no creates slightly larger and
+ # slightly more useful modutils
+ busybox_config_option n MODPROBE_SMALL #472464
# triming the BSS size may be dangerous
busybox_config_option n FEATURE_USE_BSS_TAIL
@@ -135,7 +158,15 @@ src_configure() {
busybox_config_option n FEATURE_VI_REGEX_SEARCH
fi
- # If these are not set and we are using a uclibc/busybox setup
+ # Disable standalone shell mode when using make-symlinks, else Busybox calls its
+ # applets by default without looking up in PATH.
+ # This also enables users to disable a builtin by deleting the corresponding symlink.
+ if use make-symlinks; then
+ busybox_config_option n FEATURE_PREFER_APPLETS
+ busybox_config_option n FEATURE_SH_STANDALONE
+ fi
+
+ # If these are not set and we are using a busybox setup
# all calls to system() will fail.
busybox_config_option y ASH
busybox_config_option y SH_IS_ASH
@@ -145,26 +176,12 @@ src_configure() {
busybox_config_option '"/run"' PID_FILE_PATH
busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH
- # disable ipv6 applets
- if ! use ipv6; then
- busybox_config_option n FEATURE_IPV6
- busybox_config_option n TRACEROUTE6
- busybox_config_option n PING6
- busybox_config_option n UDHCPC6
- fi
-
busybox_config_option pam PAM
busybox_config_option static STATIC
busybox_config_option syslog {K,SYS}LOGD LOGGER
busybox_config_option systemd FEATURE_SYSTEMD
busybox_config_option math FEATURE_AWK_LIBM
- # disable features that uClibc doesn't (yet?) provide.
- if use elibc_uclibc; then
- busybox_config_option n FEATURE_SYNC_FANCY #567598
- busybox_config_option n NSENTER
- fi
-
# all the debug options are compiler related, so punt them
busybox_config_option n DEBUG_SANITIZE
busybox_config_option n DEBUG
@@ -213,6 +230,9 @@ src_compile() {
export SKIP_STRIP=y
emake V=1 busybox
+
+ # bug #701512
+ emake V=1 doc
}
src_install() {
@@ -234,7 +254,11 @@ src_install() {
if use mdev ; then
dodir /$(get_libdir)/mdev/
use make-symlinks || dosym /bin/bb /sbin/mdev
- cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf
+ cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf || die
+ if [[ ! "$(get_libdir)" == "lib" ]]; then
+ #831251 - replace lib with lib64 where appropriate
+ sed -i -e "s:/lib/:/$(get_libdir)/:g" "${ED}"/etc/mdev.conf || die
+ fi
exeinto /$(get_libdir)/mdev/
doexe "${FILESDIR}"/mdev/*
@@ -247,22 +271,23 @@ src_install() {
# add busybox daemon's, bug #444718
if busybox_config_enabled FEATURE_NTPD_SERVER; then
- newconfd "${FILESDIR}/ntpd.confd" "busybox-ntpd"
- newinitd "${FILESDIR}/ntpd.initd" "busybox-ntpd"
+ newconfd "${FILESDIR}"/ntpd.confd busybox-ntpd
+ newinitd "${FILESDIR}"/ntpd.initd busybox-ntpd
fi
if busybox_config_enabled SYSLOGD; then
- newconfd "${FILESDIR}/syslogd.confd" "busybox-syslogd"
- newinitd "${FILESDIR}/syslogd.initd" "busybox-syslogd"
+ newconfd "${FILESDIR}"/syslogd.confd busybox-syslogd
+ newinitd "${FILESDIR}"/syslogd.initd busybox-syslogd
fi
if busybox_config_enabled KLOGD; then
- newconfd "${FILESDIR}/klogd.confd" "busybox-klogd"
- newinitd "${FILESDIR}/klogd.initd" "busybox-klogd"
+ newconfd "${FILESDIR}"/klogd.confd busybox-klogd
+ newinitd "${FILESDIR}"/klogd.initd busybox-klogd
fi
if busybox_config_enabled WATCHDOG; then
- newconfd "${FILESDIR}/watchdog.confd" "busybox-watchdog"
- newinitd "${FILESDIR}/watchdog.initd" "busybox-watchdog"
+ newconfd "${FILESDIR}"/watchdog.confd busybox-watchdog
+ newinitd "${FILESDIR}"/watchdog.initd busybox-watchdog
fi
if busybox_config_enabled UDHCPC; then
+ sed -i 's:$((metric++)):$metric; metric=$((metric + 1)):' examples/udhcp/simple.script || die #801535
local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT)
exeinto "${path%/*}"
newexe examples/udhcp/simple.script "${path##*/}"
@@ -271,20 +296,30 @@ src_install() {
insinto /etc
doins examples/udhcp/udhcpd.conf
fi
+ if busybox_config_enabled ASH && ! use make-symlinks; then
+ dosym -r /bin/busybox /bin/ash
+ fi
+ if busybox_config_enabled CROND; then
+ newconfd "${FILESDIR}"/crond.confd busybox-crond
+ newinitd "${FILESDIR}"/crond.initd busybox-crond
+ fi
# bundle up the symlink files for use later
emake DESTDIR="${ED}" install
- rm _install/bin/busybox
# for compatibility, provide /usr/bin/env
- mkdir -p _install/usr/bin
- ln -s /bin/env _install/usr/bin/env
+ mkdir -p _install/usr/bin || die
+ if [[ ! -e _install/usr/bin/env ]]; then
+ ln -s /bin/env _install/usr/bin/env || die
+ fi
+ rm _install/bin/busybox || die
tar cf busybox-links.tar -C _install . || : #;die
insinto /usr/share/${PN}
use make-symlinks && doins busybox-links.tar
dodoc AUTHORS README TODO
- cd docs
+ cd docs || die
+ doman busybox.1
docinto txt
dodoc *.txt
docinto pod
@@ -292,20 +327,17 @@ src_install() {
docinto html
dodoc *.html
- cd ../examples
+ cd ../examples || die
docinto examples
dodoc inittab depmod.pl *.conf *.script undeb unrpm
+
+ cd ../networking || die
+ dodoc httpd_indexcgi.c httpd_post_upload.cgi
+
+ readme.gentoo_create_doc
}
pkg_preinst() {
- if use make-symlinks && [[ ! ${VERY_BRAVE_OR_VERY_DUMB} == "yes" ]] && [[ ${ROOT} == "/" ]] ; then
- ewarn "setting USE=make-symlinks and emerging to / is very dangerous."
- ewarn "it WILL overwrite lots of system programs like: ls bash awk grep (bug 60805 for full list)."
- ewarn "If you are creating a binary only and not merging this is probably ok."
- ewarn "set env VERY_BRAVE_OR_VERY_DUMB=yes if this is really what you want."
- die "silly options will destroy your system"
- fi
-
if use make-symlinks ; then
mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
fi
@@ -318,7 +350,9 @@ pkg_postinst() {
cd "${T}" || die
mkdir _install
tar xf busybox-links.tar -C _install || die
- cp -vpPR _install/* "${ROOT}"/ || die "copying links for ${x} failed"
+ # 907432: cp -n returns error if it skips any file, but that is expected here
+ # TODO: check if a new coreutils release has a replacement option
+ cp -nvpPR _install/* "${ROOT}"/
fi
if use sep-usr ; then
@@ -330,4 +364,14 @@ pkg_postinst() {
elog "To get a rescue shell, you may boot with:"
elog " init=/ginit bb"
fi
+
+ if [[ ${MERGE_TYPE} != binary ]] && ! is-flagq -Oz; then
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test ${v} -le 1.36.1; then
+ FORCE_PRINT_ELOG=yes
+ fi
+ done
+
+ readme.gentoo_print_elog
+ fi
}
diff --git a/sys-apps/busybox/files/busybox-1.31.1-glibc-2.31.patch b/sys-apps/busybox/files/busybox-1.31.1-glibc-2.31.patch
deleted file mode 100644
index 1cef320b2842..000000000000
--- a/sys-apps/busybox/files/busybox-1.31.1-glibc-2.31.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-diff --git a/coreutils/date.c b/coreutils/date.c
-index 3414d38ae..4ade6abb4 100644
---- a/coreutils/date.c
-+++ b/coreutils/date.c
-@@ -279,6 +279,9 @@ int date_main(int argc UNUSED_PARAM, char **argv)
- time(&ts.tv_sec);
- #endif
- }
-+#if !ENABLE_FEATURE_DATE_NANO
-+ ts.tv_nsec = 0;
-+#endif
- localtime_r(&ts.tv_sec, &tm_time);
-
- /* If date string is given, update tm_time, and maybe set date */
-@@ -301,9 +304,10 @@ int date_main(int argc UNUSED_PARAM, char **argv)
- if (date_str[0] != '@')
- tm_time.tm_isdst = -1;
- ts.tv_sec = validate_tm_time(date_str, &tm_time);
-+ ts.tv_nsec = 0;
-
- /* if setting time, set it */
-- if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) {
-+ if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME, &ts) < 0) {
- bb_perror_msg("can't set date");
- }
- }
-diff --git a/libbb/missing_syscalls.c b/libbb/missing_syscalls.c
-index 87cf59b3d..dc40d9155 100644
---- a/libbb/missing_syscalls.c
-+++ b/libbb/missing_syscalls.c
-@@ -15,14 +15,6 @@ pid_t getsid(pid_t pid)
- return syscall(__NR_getsid, pid);
- }
-
--int stime(const time_t *t)
--{
-- struct timeval tv;
-- tv.tv_sec = *t;
-- tv.tv_usec = 0;
-- return settimeofday(&tv, NULL);
--}
--
- int sethostname(const char *name, size_t len)
- {
- return syscall(__NR_sethostname, name, len);
-diff --git a/util-linux/rdate.c b/util-linux/rdate.c
-index 70f829e7f..878375d78 100644
---- a/util-linux/rdate.c
-+++ b/util-linux/rdate.c
-@@ -95,9 +95,13 @@ int rdate_main(int argc UNUSED_PARAM, char **argv)
- if (!(flags & 2)) { /* no -p (-s may be present) */
- if (time(NULL) == remote_time)
- bb_error_msg("current time matches remote time");
-- else
-- if (stime(&remote_time) < 0)
-+ else {
-+ struct timespec ts;
-+ ts.tv_sec = remote_time;
-+ ts.tv_nsec = 0;
-+ if (clock_settime(CLOCK_REALTIME, &ts) < 0)
- bb_perror_msg_and_die("can't set time of day");
-+ }
- }
-
- if (flags != 1) /* not lone -s */
diff --git a/sys-apps/busybox/files/busybox-1.34.1-skip-selinux-search.patch b/sys-apps/busybox/files/busybox-1.34.1-skip-selinux-search.patch
new file mode 100644
index 000000000000..6fe043bf39e4
--- /dev/null
+++ b/sys-apps/busybox/files/busybox-1.34.1-skip-selinux-search.patch
@@ -0,0 +1,21 @@
+Setting SKIP_SELINUX skips searching for selinux. The current ebuild calls
+make 3 times. The first 2 times we don't need to search for selinux packages
+because we might end up not needing them and we get useless warnings.
+
+--- a/Makefile.flags
++++ b/Makefile.flags
+@@ -176,12 +176,14 @@
+ LDLIBS += pam pam_misc
+ endif
+
++ifneq ($(SKIP_SELINUX),y)
+ ifeq ($(CONFIG_SELINUX),y)
+ SELINUX_PC_MODULES = libselinux libsepol
+ $(eval $(call pkg_check_modules,SELINUX,$(SELINUX_PC_MODULES)))
+ CPPFLAGS += $(SELINUX_CFLAGS)
+ LDLIBS += $(if $(SELINUX_LIBS),$(SELINUX_LIBS:-l%=%),$(SELINUX_PC_MODULES:lib%=%))
+ endif
++endif
+
+ ifeq ($(CONFIG_FEATURE_NSLOOKUP_BIG),y)
+ ifneq (,$(findstring linux,$(shell $(CC) $(CFLAGS) -dumpmachine)))
diff --git a/sys-apps/busybox/files/busybox-1.36.0-fortify-source-3-fixdep.patch b/sys-apps/busybox/files/busybox-1.36.0-fortify-source-3-fixdep.patch
new file mode 100644
index 000000000000..659c81180fb5
--- /dev/null
+++ b/sys-apps/busybox/files/busybox-1.36.0-fortify-source-3-fixdep.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/893776
+https://bugs.busybox.net/show_bug.cgi?id=15326
+http://lists.busybox.net/pipermail/busybox/2023-February/090173.html
+
+From 2d4a3d9e6c1493a9520b907e07a41aca90cdfd94 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@gentoo.org>
+Date: Tue, 21 Feb 2023 20:20:31 +0100
+Subject: fixdep: avoid underflow when end of entry doesn't coincide with EOF
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Bug: https://bugs.gentoo.org/893776
+Closes: https://bugs.busybox.net/show_bug.cgi?id=15326
+Signed-off-by: Arsen Arsenović <arsen@gentoo.org>
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
+--- a/scripts/basic/fixdep.c
++++ b/scripts/basic/fixdep.c
+@@ -338,6 +338,11 @@ void parse_dep_file(void *map, size_t len)
+ do p--; while (!isalnum((unsigned char)*p));
+ p++;
+ }
++ if (p < m) {
++ /* we've consumed the last filename of this list
++ already. */
++ break;
++ }
+ memcpy(s, m, p-m); s[p-m] = 0;
+ if (strrcmp(s, "include/autoconf.h") &&
+ strrcmp(s, "arch/um/include/uml-config.h") &&
+--
+cgit v1.2.3
diff --git a/sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch b/sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch
new file mode 100644
index 000000000000..4f74d51bdcaf
--- /dev/null
+++ b/sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch
@@ -0,0 +1,53 @@
+http://lists.busybox.net/pipermail/busybox/2024-March/090678.html
+https://bugs.gentoo.org/926872
+
+Linux v6.8-rc1 removed the definitions related to CBQ making tc fail to
+build. Add some #ifdefs to handle this missing support.
+--- a/networking/tc.c
++++ b/networking/tc.c
+@@ -231,6 +231,13 @@ static int cbq_parse_opt(int argc, char **argv, struct nlmsghdr *n)
+ return 0;
+ }
+ #endif
++
++#ifndef TCA_CBQ_MAX
++/*
++ * Linux v6.8-rc1~131^2~60^2^2 removed the uapi definitions for CBQ.
++ * See <A HREF="https://git.kernel.org/linus/33241dca48626">https://git.kernel.org/linus/33241dca48626</A>
++ */
++#else
+ static int cbq_print_opt(struct rtattr *opt)
+ {
+ struct rtattr *tb[TCA_CBQ_MAX+1];
+@@ -322,6 +329,7 @@ static int cbq_print_opt(struct rtattr *opt)
+ done:
+ return 0;
+ }
++#endif
+
+ static FAST_FUNC int print_qdisc(
+ const struct sockaddr_nl *who UNUSED_PARAM,
+@@ -372,8 +380,10 @@ static FAST_FUNC int print_qdisc(
+ int qqq = index_in_strings(_q_, name);
+ if (qqq == 0) { /* pfifo_fast aka prio */
+ prio_print_opt(tb[TCA_OPTIONS]);
++#ifdef TCA_CBQ_MAX
+ } else if (qqq == 1) { /* class based queuing */
+ cbq_print_opt(tb[TCA_OPTIONS]);
++#endif
+ } else {
+ /* don't know how to print options for this qdisc */
+ printf(&quot;(options for %s)&quot;, name);
+@@ -442,9 +452,11 @@ static FAST_FUNC int print_class(
+ int qqq = index_in_strings(_q_, name);
+ if (qqq == 0) { /* pfifo_fast aka prio */
+ /* nothing. */ /*prio_print_opt(tb[TCA_OPTIONS]);*/
++#ifdef TCA_CBQ_MAX
+ } else if (qqq == 1) { /* class based queuing */
+ /* cbq_print_copt() is identical to cbq_print_opt(). */
+ cbq_print_opt(tb[TCA_OPTIONS]);
++#endif
+ } else {
+ /* don't know how to print options for this class */
+ printf(&quot;(options for %s)&quot;, name);
+
diff --git a/sys-apps/busybox/files/crond.confd b/sys-apps/busybox/files/crond.confd
new file mode 100644
index 000000000000..707366252913
--- /dev/null
+++ b/sys-apps/busybox/files/crond.confd
@@ -0,0 +1,2 @@
+# Config file for /etc/init.d/busybox-crond
+CRONDARGS=
diff --git a/sys-apps/busybox/files/crond.initd b/sys-apps/busybox/files/crond.initd
new file mode 100644
index 000000000000..9d81e7a4c9f7
--- /dev/null
+++ b/sys-apps/busybox/files/crond.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+command="/bin/busybox crond"
+command_args="${CRONDARGS}"
+pidfile="/run/crond.pid"
+
+depend() {
+ need clock logger
+ provide cron
+}
diff --git a/sys-apps/busybox/files/mdev/dvbdev b/sys-apps/busybox/files/mdev/dvbdev
index f0186c176cd8..971b0efc9096 100644
--- a/sys-apps/busybox/files/mdev/dvbdev
+++ b/sys-apps/busybox/files/mdev/dvbdev
@@ -8,11 +8,11 @@ DVB_DEV=${MDEV#*.}
case "$ACTION" in
add|"")
- mkdir -p dvb/adapter${N}
- mv ${MDEV} dvb/adapter${N}/${DVB_DEV}
+ mkdir -p "dvb/adapter${N}"
+ mv "${MDEV}" "dvb/adapter${N}/${DVB_DEV}"
;;
remove)
- rm -f dvb/adapter${N}/${DVB_DEV}
- rmdir dvb/adapter${N} 2>/dev/null
+ rm -f "dvb/adapter${N}/${DVB_DEV}"
+ rmdir "dvb/adapter${N}" 2>/dev/null
rmdir dvb/ 2>/dev/null
esac
diff --git a/sys-apps/busybox/files/mdev/ide_links b/sys-apps/busybox/files/mdev/ide_links
index be0c95aa9c0e..dfb7c9cb46d5 100644
--- a/sys-apps/busybox/files/mdev/ide_links
+++ b/sys-apps/busybox/files/mdev/ide_links
@@ -1,23 +1,23 @@
#!/bin/sh
-[ -f /proc/ide/$MDEV/media ] || exit
+[ -f /proc/ide/"${MDEV}"/media ] || exit
-media=`cat /proc/ide/$MDEV/media`
-for i in $media $media[0-9]* ; do
- if [ "`readlink $i 2>/dev/null`" = $MDEV ] ; then
- LINK=$i
+media=$(cat /proc/ide/"${MDEV}"/media)
+for i in "${media}" "${media}"[0-9]* ; do
+ if [ "$(readlink "$i" 2>/dev/null)" = "${MDEV}" ] ; then
+ LINK="$i"
break
fi
done
# link exist, remove if necessary and exit
-if [ "$LINK" ] ; then
- [ "$ACTION" = remove ] && rm $LINK
+if [ "${LINK}" ] ; then
+ [ "${ACTION}" = remove ] && rm "${LINK}"
exit
fi
# create a link
-num=`ls $media[0-9]* 2>/dev/null | wc -l`
-ln -sf $MDEV "$media`echo $num`"
-[ -e "$media" ] || ln -sf $MDEV "$media"
+num=$(ls "${media}"[0-9]* 2>/dev/null | wc -l)
+ln -sf "${MDEV}" "${media}${num}"
+[ -e "${media}" ] || ln -sf "${MDEV}" "${media}"
diff --git a/sys-apps/busybox/files/mdev/usbdev b/sys-apps/busybox/files/mdev/usbdev
index ea5b9155736c..eda3825df287 100644
--- a/sys-apps/busybox/files/mdev/usbdev
+++ b/sys-apps/busybox/files/mdev/usbdev
@@ -5,7 +5,7 @@
# add zeros to device or bus
add_zeros () {
- case "$(echo $1 | wc -L)" in
+ case "$(echo "$1" | wc -L)" in
1) echo "00$1" ;;
2) echo "0$1" ;;
*) echo "$1"
@@ -15,48 +15,48 @@ add_zeros () {
# bus and device dirs in /sys
-USB_PATH=$(echo $MDEV | sed -e 's/usbdev\([0-9]\).[0-9]/usb\1/')
-USB_PATH=$(find /sys/devices -type d -name "$USB_PATH")
-USB_DEV_DIR=$(echo $MDEV | sed -e 's/usbdev\([0-9]\).\([0-9]\)/\1-\2/')
+USB_PATH=$(echo "${MDEV}" | sed -e 's/usbdev\([0-9]\).[0-9]/usb\1/')
+USB_PATH=$(find /sys/devices -type d -name "${USB_PATH}")
+USB_DEV_DIR=$(echo "${MDEV}" | sed -e 's/usbdev\([0-9]\).\([0-9]\)/\1-\2/')
# dir names in /dev
-BUS=$(add_zeros $(echo $MDEV | sed -e 's/^usbdev\([0-9]\).[0-9]/\1/'))
-USB_DEV=$(add_zeros $(echo $MDEV | sed -e 's/^usbdev[0-9].\([0-9]\)/\1/'))
+BUS=$(add_zeros "$(echo "${MDEV}" | sed -e 's/^usbdev\([0-9]\).[0-9]/\1/')")
+USB_DEV=$(add_zeros "$(echo "${MDEV}" | sed -e 's/^usbdev[0-9].\([0-9]\)/\1/')")
# try to load the proper driver for usb devices
-case "$ACTION" in
+case "${ACTION}" in
add|"")
# load usb bus driver
- for i in $USB_PATH/*/modalias ; do
- modprobe `cat $i` 2>/dev/null
+ for i in "${USB_PATH}"/*/modalias ; do
+ modprobe "$(cat "$i")" 2>/dev/null
done
# load usb device driver if existent
- if [ -d $USB_PATH/$USB_DEV_DIR ]; then
- for i in $USB_PATH/$USB_DEV_DIR/*/modalias ; do
- modprobe `cat $i` 2>/dev/null
+ if [ -d "${USB_PATH}/${USB_DEV_DIR}" ]; then
+ for i in "${USB_PATH}/${USB_DEV_DIR}"/*/modalias ; do
+ modprobe "$(cat "$i")" 2>/dev/null
done
fi
# move usb device file
- mkdir -p bus/usb/$BUS
- mv $MDEV bus/usb/$BUS/$USB_DEV
+ mkdir -p "bus/usb/${BUS}"
+ mv "${MDEV}" "bus/usb/${BUS}/${USB_DEV}"
;;
remove)
# unload device driver, if device dir is existent
- if [ -d $USB_PATH/$USB_DEV_DIR ]; then
- for i in $USB_PATH/$USB_DEV_DIR/*/modalias ; do
- modprobe -r `cat $i` 2>/dev/null
+ if [ -d "${USB_PATH}/${USB_DEV_DIR}" ]; then
+ for i in "${USB_PATH}/${USB_DEV_DIR}"/*/modalias ; do
+ modprobe -r "$(cat "$i")" 2>/dev/null
done
fi
# unload usb bus driver. Does this make sense?
# what happens, if two usb devices are plugged in
# and one is removed?
- for i in $USB_PATH/*/modalias ; do
- modprobe -r `cat $i` 2>/dev/null
+ for i in "${USB_PATH}"/*/modalias ; do
+ modprobe -r "$(cat "$i")" 2>/dev/null
done
# remove device file and possible empty dirs
- rm -f bus/usb/$BUS/$USB_DEV
- rmdir bus/usb/$BUS/ 2>/dev/null
+ rm -f "bus/usb/${BUS}/${USB_DEV}"
+ rmdir "bus/usb/${BUS}/" 2>/dev/null
rmdir bus/usb/ 2>/dev/null
rmdir bus/ 2>/dev/null
esac
diff --git a/sys-apps/busybox/files/mdev/usbdisk_link b/sys-apps/busybox/files/mdev/usbdisk_link
index 6bb069243f4c..e42cc8bc9085 100644
--- a/sys-apps/busybox/files/mdev/usbdisk_link
+++ b/sys-apps/busybox/files/mdev/usbdisk_link
@@ -4,31 +4,35 @@
current=$(readlink usbdisk)
-if [ "$current" = "$MDEV" ] && [ "$ACTION" = "remove" ]; then
+if [ "${current}" = "${MDEV}" ] && [ "${ACTION}" = "remove" ]; then
rm -f usbdisk usba1
fi
-[ -n "$current" ] && exit
+[ -n "${current}" ] && exit
-if [ -e /sys/block/$MDEV ]; then
- SYSDEV=$(readlink -f /sys/block/$MDEV/device)
+if [ -e /sys/block/"${MDEV}" ]; then
+ SYSDEV=$(readlink -f /sys/block/"${MDEV}"/device)
# if /sys device path contains '/usb[0-9]' then we assume its usb
# also, if it's a usb without partitions we require FAT
- if [ "${SYSDEV##*/usb[0-9]}" != "$SYSDEV" ]; then
+ if [ "${SYSDEV##*/usb[0-9]}" != "${SYSDEV}" ]; then
# do not create link if there is not FAT
- dd if=/dev/$MDEV bs=512 count=1 2>/dev/null | strings | grep FAT >/dev/null || exit 0
+ dd if=/dev/"${MDEV}" bs=512 count=1 2>/dev/null | strings | grep FAT >/dev/null || exit 0
- ln -sf $MDEV usbdisk
+ ln -sf "${MDEV}" usbdisk
# keep this for compat. people have it in fstab
- ln -sf $MDEV usba1
+ ln -sf "${MDEV}" usba1
fi
-elif [ -e /sys/block/*/$MDEV ] ; then
- PARENT=$(dirname /sys/block/*/$MDEV)
- SYSDEV=$(readlink -f $PARENT/device)
- if [ "${SYSDEV##*/usb[0-9]}" != "$SYSDEV" ]; then
- ln -sf $MDEV usbdisk
- # keep this for compat. people have it in fstab
- ln -sf $MDEV usba1
- fi
+else
+ for i in /sys/block/*/"${MDEV}"; do
+ if [ -e "$i" ]; then
+ PARENT=$(dirname "$i")
+ SYSDEV=$(readlink -f "${PARENT}"/device)
+ if [ "${SYSDEV##*/usb[0-9]}" != "${SYSDEV}" ]; then
+ ln -sf "${MDEV}" usbdisk
+ # keep this for compat. people have it in fstab
+ ln -sf "${MDEV}" usba1
+ fi
+ fi
+ done
fi
diff --git a/sys-apps/busybox/metadata.xml b/sys-apps/busybox/metadata.xml
index 66da6627b150..21b8287c858e 100644
--- a/sys-apps/busybox/metadata.xml
+++ b/sys-apps/busybox/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>embedded@gentoo.org</email>
diff --git a/sys-apps/byld/byld-1.0.3-r1.ebuild b/sys-apps/byld/byld-1.0.3-r1.ebuild
new file mode 100644
index 000000000000..1dafc0d4364e
--- /dev/null
+++ b/sys-apps/byld/byld-1.0.3-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Build a Linux distribution on a single floppy"
+HOMEPAGE="https://byld.sourceforge.net/"
+SRC_URI="mirror://sourceforge/byld/byld-${PV//./_}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86"
+# bug #252054
+RESTRICT="strip"
+
+RDEPEND="sys-apps/util-linux
+ sys-libs/libtermcap-compat"
+
+QA_PREBUILT="*"
+
+src_install() {
+ dodoc BYLDING CREDITS README INSTALL FHS PAKING
+ rm MAKEDEV.8 BYLDING CREDITS README INSTALL FHS LICENSE PAKING || die
+
+ insinto /usr/lib/${PN}
+ doins -r .
+}
+
+pkg_postinst() {
+ einfo "The build scripts have been placed in /usr/lib/${PN}"
+ einfo "For documentation, see /usr/share/doc/${PF}"
+}
diff --git a/sys-apps/byld/byld-1.0.3.ebuild b/sys-apps/byld/byld-1.0.3.ebuild
deleted file mode 100644
index 2c9a65e33e97..000000000000
--- a/sys-apps/byld/byld-1.0.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="build a Linux distribution on a single floppy"
-HOMEPAGE="http://byld.sourceforge.net/"
-SRC_URI="mirror://sourceforge/byld/byld-${PV//./_}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="x86"
-IUSE=""
-RESTRICT="strip" #252054
-
-RDEPEND="sys-apps/util-linux"
-
-src_install() {
- dodoc BYLDING CREDITS README INSTALL FHS PAKING
- rm MAKEDEV.8 BYLDING CREDITS README INSTALL FHS LICENSE PAKING
-
- insinto /usr/lib/${PN}
- doins -r .
-}
-
-pkg_postinst() {
- einfo "The build scripts have been placed in /usr/lib/${PN}"
- einfo "For documentation, see /usr/share/doc/${PF}"
-}
diff --git a/sys-apps/byld/metadata.xml b/sys-apps/byld/metadata.xml
index 81c1d4e6b66b..b093e7c1427c 100644
--- a/sys-apps/byld/metadata.xml
+++ b/sys-apps/byld/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/cciss_vol_status/cciss_vol_status-1.12a-r1.ebuild b/sys-apps/cciss_vol_status/cciss_vol_status-1.12a-r1.ebuild
new file mode 100644
index 000000000000..473e8d688fa2
--- /dev/null
+++ b/sys-apps/cciss_vol_status/cciss_vol_status-1.12a-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Shows status of logical drives attached to HP SmartArray controllers"
+HOMEPAGE="https://cciss.sourceforge.net/#cciss_utils"
+SRC_URI="mirror://sourceforge/cciss/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+KEYWORDS="amd64 ~ia64 x86"
+SLOT="0"
+
+src_install() {
+ default
+ exeinto /etc/cron.hourly
+ newexe "${FILESDIR}/cciss_vol_status-r2.cron" cciss_vol_status
+}
diff --git a/sys-apps/cciss_vol_status/cciss_vol_status-1.12a.ebuild b/sys-apps/cciss_vol_status/cciss_vol_status-1.12a.ebuild
index 94fedd2679d0..fd20b66d605f 100644
--- a/sys-apps/cciss_vol_status/cciss_vol_status-1.12a.ebuild
+++ b/sys-apps/cciss_vol_status/cciss_vol_status-1.12a.ebuild
@@ -1,12 +1,12 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
IUSE=""
DESCRIPTION="Shows status of logical drives attached to HP SmartArray controllers"
-HOMEPAGE="http://cciss.sourceforge.net/#cciss_utils"
-LICENSE="GPL-2"
+HOMEPAGE="https://cciss.sourceforge.net/#cciss_utils"
+LICENSE="GPL-2+"
SRC_URI="mirror://sourceforge/cciss/${P}.tar.gz"
KEYWORDS="amd64 ~ia64 x86"
SLOT="0"
diff --git a/sys-apps/cciss_vol_status/metadata.xml b/sys-apps/cciss_vol_status/metadata.xml
index de3e2e4eb2fc..2d56f7de7fb5 100644
--- a/sys-apps/cciss_vol_status/metadata.xml
+++ b/sys-apps/cciss_vol_status/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>chainsaw@gentoo.org</email>
-</maintainer>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
diff --git a/sys-apps/ccs-tools/ccs-tools-1.8.3_p20130214.ebuild b/sys-apps/ccs-tools/ccs-tools-1.8.3_p20130214.ebuild
index 4e3640cdef0a..545914f17ca3 100644
--- a/sys-apps/ccs-tools/ccs-tools-1.8.3_p20130214.ebuild
+++ b/sys-apps/ccs-tools/ccs-tools-1.8.3_p20130214.ebuild
@@ -1,31 +1,30 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit flag-o-matic toolchain-funcs
MY_P="${P/_p/-}"
DESCRIPTION="TOMOYO Linux tools"
-HOMEPAGE="http://tomoyo.sourceforge.jp/"
+HOMEPAGE="https://tomoyo.sourceforge.jp/"
SRC_URI="mirror://sourceforge.jp/tomoyo/49693/${MY_P}.tar.gz"
+S="${WORKDIR}/${PN}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
RESTRICT="test"
-CDEPEND="
+COMMON_DEPEND="
sys-libs/ncurses:0=
sys-libs/readline:0="
-RDEPEND="${CDEPEND}
+RDEPEND="${COMMON_DEPEND}
sys-apps/which"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
+DEPEND="${COMMON_DEPEND}"
+BDEPEND="virtual/pkgconfig"
-S="${WORKDIR}/${PN}"
PATCHES=(
"${FILESDIR}"/${P}-warnings.patch
"${FILESDIR}"/${P}-ncurses-underlinking.patch
@@ -38,6 +37,8 @@ src_prepare() {
-e "s:/usr/lib:/usr/$(get_libdir):g" \
-e "s:= /:= ${EPREFIX}/:g" \
Include.make || die
+
+ gunzip usr_share_man/man8/ccs*.8.gz || die
}
src_configure() {
diff --git a/sys-apps/ccs-tools/metadata.xml b/sys-apps/ccs-tools/metadata.xml
index 112e5a8833a8..7923bc9807dd 100644
--- a/sys-apps/ccs-tools/metadata.xml
+++ b/sys-apps/ccs-tools/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
- <remote-id type="sourceforge-jp">tomoyo</remote-id>
+ <remote-id type="osdn">tomoyo</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/checkpolicy/Manifest b/sys-apps/checkpolicy/Manifest
index 2a07ee9daf51..d8d08681182e 100644
--- a/sys-apps/checkpolicy/Manifest
+++ b/sys-apps/checkpolicy/Manifest
@@ -1,3 +1,2 @@
-DIST checkpolicy-2.9.tar.gz 68735 BLAKE2B 092b7b67ea952be6a829529249f0b209c31245490f263b248cb0208d9f1f4ec922522791c6555c0b913b56b8a0037bfde54a3511940f0be287f13e3a193c8f26 SHA512 8dafdd871c5fd32023883149c74891279c386cc87d70cbfc6f0a8dcb0406f17f1158f9078c1b35892a0f0edcb6b5208a031594ab80898eec016ad765ad046e03
-DIST checkpolicy-3.0.tar.gz 69037 BLAKE2B 30b8a5e19e02472d1cf256636c70f95739098514ef9d630ee5e782085bd09ff58b4ab6b8c97e9fa652e8260211a7803d80eb765e0fd2f1dde9c328682078d3c1 SHA512 196d24638ec7fc88d427637e2308c7a0c5a3d4cc88c372a5f5dc61d6c1e2f895e308b8e06ee9e47d340d65a1b2d4486dc4decfa6074594dda14e46f1308ded89
-DIST checkpolicy-3.1.tar.gz 69072 BLAKE2B 31cb5ef52533b0a62f954e770278fc5766a961d87fb86260b04abe562bcd90d0025b33931c6ad54096c64ab54150c7562c112eac80eb2f60dbcdda57f4cacfe2 SHA512 2276a5a0919286049d2ceba386ef5f6de523745b588bb81cb4fed5eced5fd0b8070249b7a3ae5a85e2abb9369a86318f727d4073aad14ab75c43750a46069168
+DIST checkpolicy-3.5.tar.gz 69904 BLAKE2B e02ccad07534568a1bbb612330018bbe486800ea40df20ed6f9dc38c88aff7f8858782a28ba7915a58c3bb384f180eb8da7a8fe97a92bcb9baa61eec18da6cbc SHA512 fcd490d865af3b4350c32c5dd9916f8406219841e1e255d8945c6dcc958535247aa27af5597a6988e19f11faea7beeabcb46e8ba2431112bb4aa5c7697bca529
+DIST checkpolicy-3.6.tar.gz 70684 BLAKE2B d32a8b86897bd4a08caf61a096a691c8d049fa7b5b4561f4847e0dfbb62a82fc6c3ddb5be163c7cd6163491c50513aec14e4c67842f256f48688b26178c2887a SHA512 0d48fb385b4d1e66d562e40b6e794406f46d8803cc504705b26547130cb13b65fab5fdb4fc032b1c95d4f91862ff134a89fffde854c5ce466c2dd2657e416070
diff --git a/sys-apps/checkpolicy/checkpolicy-2.9.ebuild b/sys-apps/checkpolicy/checkpolicy-2.9.ebuild
deleted file mode 100644
index 7d2cafef77e8..000000000000
--- a/sys-apps/checkpolicy/checkpolicy-2.9.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20190315"
-
-SEPOL_VER="${PV}"
-SEMNG_VER="${PV}"
-
-DESCRIPTION="SELinux policy compiler"
-HOMEPAGE="http://userspace.selinuxproject.org"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="debug"
-
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}
- >=sys-libs/libsemanage-${SEMNG_VER}
- sys-devel/flex
- sys-devel/bison"
-
-RDEPEND=">=sys-libs/libsemanage-${SEMNG_VER}"
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- YACC="bison -y" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- install
-
- if use debug; then
- dobin "${S}/test/dismod"
- dobin "${S}/test/dispol"
- fi
-}
-
-pkg_postinst() {
- einfo "This checkpolicy can compile version `checkpolicy -V | cut -f 1 -d ' '` policy."
-}
diff --git a/sys-apps/checkpolicy/checkpolicy-3.0.ebuild b/sys-apps/checkpolicy/checkpolicy-3.0.ebuild
deleted file mode 100644
index c831a21a9139..000000000000
--- a/sys-apps/checkpolicy/checkpolicy-3.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20191204"
-
-SEPOL_VER="${PV}"
-SEMNG_VER="${PV}"
-
-DESCRIPTION="SELinux policy compiler"
-HOMEPAGE="http://userspace.selinuxproject.org"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="debug"
-
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}
- >=sys-libs/libsemanage-${SEMNG_VER}
- sys-devel/flex
- sys-devel/bison"
-
-RDEPEND=">=sys-libs/libsemanage-${SEMNG_VER}"
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- YACC="bison -y" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- install
-
- if use debug; then
- dobin "${S}/test/dismod"
- dobin "${S}/test/dispol"
- fi
-}
-
-pkg_postinst() {
- einfo "This checkpolicy can compile version `checkpolicy -V | cut -f 1 -d ' '` policy."
-}
diff --git a/sys-apps/checkpolicy/checkpolicy-3.1.ebuild b/sys-apps/checkpolicy/checkpolicy-3.1.ebuild
deleted file mode 100644
index fe88e2f1c073..000000000000
--- a/sys-apps/checkpolicy/checkpolicy-3.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20200710"
-
-SEPOL_VER="${PV}"
-SEMNG_VER="${PV}"
-
-DESCRIPTION="SELinux policy compiler"
-HOMEPAGE="http://userspace.selinuxproject.org"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="debug"
-
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}
- >=sys-libs/libsemanage-${SEMNG_VER}
- sys-devel/flex
- sys-devel/bison"
-
-RDEPEND=">=sys-libs/libsemanage-${SEMNG_VER}"
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- YACC="bison -y" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- install
-
- if use debug; then
- dobin "${S}/test/dismod"
- dobin "${S}/test/dispol"
- fi
-}
-
-pkg_postinst() {
- if ! tc-is-cross-compiler; then
- einfo "This checkpolicy can compile version `checkpolicy -V | cut -f 1 -d ' '` policy."
- fi
-}
diff --git a/sys-apps/checkpolicy/checkpolicy-3.5.ebuild b/sys-apps/checkpolicy/checkpolicy-3.5.ebuild
new file mode 100644
index 000000000000..e3ad0c610ff7
--- /dev/null
+++ b/sys-apps/checkpolicy/checkpolicy-3.5.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux policy compiler"
+HOMEPAGE="http://userspace.selinuxproject.org"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips ~riscv x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug"
+
+DEPEND=">=sys-libs/libsepol-${PV}"
+BDEPEND="sys-devel/flex
+ sys-devel/bison"
+
+RDEPEND=">=sys-libs/libsepol-${PV}"
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ YACC="bison -y" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)"
+}
+
+src_install() {
+ default
+
+ if use debug; then
+ dobin "${S}/test/dismod"
+ dobin "${S}/test/dispol"
+ fi
+}
+
+pkg_postinst() {
+ if ! tc-is-cross-compiler; then
+ einfo "This checkpolicy can compile version `checkpolicy -V | cut -f 1 -d ' '` policy."
+ fi
+}
diff --git a/sys-apps/checkpolicy/checkpolicy-3.6.ebuild b/sys-apps/checkpolicy/checkpolicy-3.6.ebuild
new file mode 100644
index 000000000000..35e87a352156
--- /dev/null
+++ b/sys-apps/checkpolicy/checkpolicy-3.6.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux policy compiler"
+HOMEPAGE="http://userspace.selinuxproject.org"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips ~riscv x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug"
+
+DEPEND=">=sys-libs/libsepol-${PV}"
+BDEPEND="sys-devel/flex
+ sys-devel/bison"
+
+RDEPEND=">=sys-libs/libsepol-${PV}"
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ YACC="bison -y" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)"
+}
+
+src_install() {
+ default
+
+ if use debug; then
+ dobin "${S}/test/dismod"
+ dobin "${S}/test/dispol"
+ fi
+}
+
+pkg_postinst() {
+ if ! tc-is-cross-compiler; then
+ einfo "This checkpolicy can compile version `checkpolicy -V | cut -f 1 -d ' '` policy."
+ fi
+}
diff --git a/sys-apps/checkpolicy/checkpolicy-9999.ebuild b/sys-apps/checkpolicy/checkpolicy-9999.ebuild
index fe88e2f1c073..6d5e91d8b18a 100644
--- a/sys-apps/checkpolicy/checkpolicy-9999.ebuild
+++ b/sys-apps/checkpolicy/checkpolicy-9999.ebuild
@@ -1,15 +1,12 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit toolchain-funcs
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20200710"
-
-SEPOL_VER="${PV}"
-SEMNG_VER="${PV}"
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
DESCRIPTION="SELinux policy compiler"
HOMEPAGE="http://userspace.selinuxproject.org"
@@ -17,10 +14,10 @@ HOMEPAGE="http://userspace.selinuxproject.org"
if [[ ${PV} == 9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
+ S="${WORKDIR}/${P}/${PN}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~riscv ~x86"
S="${WORKDIR}/${MY_P}"
fi
@@ -28,12 +25,11 @@ LICENSE="GPL-2"
SLOT="0"
IUSE="debug"
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}
- >=sys-libs/libsemanage-${SEMNG_VER}
- sys-devel/flex
+DEPEND=">=sys-libs/libsepol-${PV}"
+BDEPEND="sys-devel/flex
sys-devel/bison"
-RDEPEND=">=sys-libs/libsemanage-${SEMNG_VER}"
+RDEPEND=">=sys-libs/libsepol-${PV}"
src_compile() {
emake \
@@ -43,8 +39,7 @@ src_compile() {
}
src_install() {
- emake DESTDIR="${D}" \
- install
+ default
if use debug; then
dobin "${S}/test/dismod"
diff --git a/sys-apps/checkpolicy/metadata.xml b/sys-apps/checkpolicy/metadata.xml
index 9173800ffc42..861770703d93 100644
--- a/sys-apps/checkpolicy/metadata.xml
+++ b/sys-apps/checkpolicy/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
<name>SELinux Team</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">SELinuxProject/selinux</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/chname/chname-1.1-r1.ebuild b/sys-apps/chname/chname-1.1-r1.ebuild
new file mode 100644
index 000000000000..d127e194d273
--- /dev/null
+++ b/sys-apps/chname/chname-1.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Run a command with a new system hostname"
+HOMEPAGE="https://github.com/marineam/chname"
+SRC_URI="https://github.com/marineam/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+DEPEND=">=sys-kernel/linux-headers-2.6.16"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-flags.patch
+)
+
+src_configure() {
+ tc-export CC
+}
+
+src_install() {
+ dobin "${PN}"
+ doman "${PN}.1"
+ dodoc README*
+}
diff --git a/sys-apps/chname/chname-1.1.ebuild b/sys-apps/chname/chname-1.1.ebuild
deleted file mode 100644
index 9b0bb3d4003f..000000000000
--- a/sys-apps/chname/chname-1.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-DESCRIPTION="Run a command with a new system hostname"
-HOMEPAGE="https://github.com/marineam/chname"
-SRC_URI="https://github.com/marineam/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND=">=sys-kernel/linux-headers-2.6.16"
-RDEPEND=""
-
-PATCHES=(
- "${FILESDIR}"/${P}-flags.patch
-)
-
-src_configure() {
- tc-export CC
-}
-
-src_install() {
- dobin "${PN}"
- doman "${PN}.1"
- dodoc README*
-}
diff --git a/sys-apps/chname/metadata.xml b/sys-apps/chname/metadata.xml
index a04600aaae8e..89db66ac8acc 100644
--- a/sys-apps/chname/metadata.xml
+++ b/sys-apps/chname/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/cinit/cinit-0.2.1-r1.ebuild b/sys-apps/cinit/cinit-0.2.1-r1.ebuild
new file mode 100644
index 000000000000..22cbed1f0264
--- /dev/null
+++ b/sys-apps/cinit/cinit-0.2.1-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="a fast, small and simple init with support for profiles"
+HOMEPAGE="http://linux.schottelius.org/cinit/"
+SRC_URI="http://linux.schottelius.org/${PN}/archives/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~x86"
+IUSE="doc"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.1-musl-clang16-build-fix.patch
+)
+
+src_prepare() {
+ sed -i "/contrib+tools/d" Makefile || die
+ sed -i "/^STRIP/s/strip.*/true/" Makefile.include || die
+ default
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getCC)" \
+ CFLAGS="${CFLAGS} -I." \
+ LDFLAGS="${LDFLAGS}" \
+ STRIP=/bin/true \
+ all
+}
+
+src_install() {
+ emake LD="$(tc-getCC)" DESTDIR="${D}" install
+ rm -f "${D}"/sbin/{init,shutdown,reboot} || die
+ dodoc Changelog CHANGES CREDITS README TODO
+ use doc && dodoc -r doc
+}
diff --git a/sys-apps/cinit/cinit-0.2.1.ebuild b/sys-apps/cinit/cinit-0.2.1.ebuild
index 252f62e217b9..1b16a694e944 100644
--- a/sys-apps/cinit/cinit-0.2.1.ebuild
+++ b/sys-apps/cinit/cinit-0.2.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -31,7 +31,7 @@ src_compile() {
}
src_install() {
- emake LD=$(tc-getCC) DESTDIR="${D}" install
+ emake LD="$(tc-getCC)" DESTDIR="${D}" install
rm -f "${D}"/sbin/{init,shutdown,reboot} || die
dodoc Changelog CHANGES CREDITS README TODO
use doc && dodoc -r doc
diff --git a/sys-apps/cinit/files/cinit-0.2.1-musl-clang16-build-fix.patch b/sys-apps/cinit/files/cinit-0.2.1-musl-clang16-build-fix.patch
new file mode 100644
index 000000000000..832e0590b5c6
--- /dev/null
+++ b/sys-apps/cinit/files/cinit-0.2.1-musl-clang16-build-fix.patch
@@ -0,0 +1,43 @@
+With musl and clang16 the following build error occurs:
+
+client/run_run_svcs.c:24:17: error: use of undeclared identifier 'PATH_MAX'
+ char pathbuf[PATH_MAX+1];
+ ^
+client/run_run_svcs.c:28:21: warning: if statement has empty body [-Wempty-body]
+ D_PRINTF(abspath);
+ ^
+client/run_run_svcs.c:28:21: note: put the semicolon on a separate line to silence this warning
+client/connect_sock.c:28:4: error: call to undeclared library function 'memset' with type
+ 'void *(void *, int, unsigned long)'; ISO C99 and later do not support implicit function declarations
+ [-Wimplicit-function-declaration]
+ memset(&addr,0,socke);
+ ^
+client/connect_sock.c:28:4: note: include the header <string.h> or explicitly provide a declaration for
+ 'memset'
+client/connect_sock.c:29:4: error: call to undeclared library function 'strcpy' with type
+ 'char *(char *, const char *)'; ISO C99 and later do not support implicit function declarations
+ [-Wimplicit-function-declaration]
+ strcpy(addr.sun_path, CINIT_SOCK);
+
+This patch fixes all three of those errors
+Bug: https://bugs.gentoo.org/898542
+--- a/client/connect_sock.c
++++ b/client/connect_sock.c
+@@ -8,6 +8,7 @@
+ #include <sys/socket.h>
+ #include <sys/un.h>
+ #include <stdio.h>
++#include <string.h>
+
+ #include "cinit.h"
+
+--- a/client/run_run_svcs.c
++++ b/client/run_run_svcs.c
+@@ -3,6 +3,7 @@
+ * (c) 2005 Nico Schottelius (nico-linux at schottelius.org)
+ * run services parallel
+ */
++#include <linux/limits.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
+ #include <dirent.h>
diff --git a/sys-apps/cinit/metadata.xml b/sys-apps/cinit/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/sys-apps/cinit/metadata.xml
+++ b/sys-apps/cinit/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/ckbcomp/Manifest b/sys-apps/ckbcomp/Manifest
index 35d54adaf72b..174ca3adc796 100644
--- a/sys-apps/ckbcomp/Manifest
+++ b/sys-apps/ckbcomp/Manifest
@@ -1 +1 @@
-DIST ckbcomp-1.164.tar.gz 3044072 BLAKE2B 74abf0c971a188fbbacd77e9eadad84ec29cbb2cde4c968402b83c0a5cd47ba5432f03dab4ed6bd8f8ae6b0ed8ebb4dcd51b8eddffd3b5d77de445740d5d576f SHA512 b2a71c7c34ff677f555bdb76bc329ae06740c4d0fa5516356dcd833fc9f97c0c560b26b4497fd7e3e0a60acb975a461a75ecc765c3f0fa1250f8b2e0f01c4e40
+DIST console-setup-1.217.tar.gz 3273430 BLAKE2B cf48a8dbd250f3ee0e1093b3dc0b13d9b23a13e456f7c0c60d4d8764bc1ed41bc6f0da57d4f0e5642fdceca9a26d02e5b986df019644d238bab0c91028958aed SHA512 20b148e3ffa1a57509e1bdab091ae36df04f363c7ca54e1decc15c14325df85b3d100e4b9a1e5884c18d47d45066b029bd450c9588f3103c03ad102d348869ad
diff --git a/sys-apps/ckbcomp/ckbcomp-1.164.ebuild b/sys-apps/ckbcomp/ckbcomp-1.164.ebuild
deleted file mode 100644
index e40e5fc54cdc..000000000000
--- a/sys-apps/ckbcomp/ckbcomp-1.164.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Compile an XKB keymap for loadkeys"
-HOMEPAGE="https://anonscm.debian.org/cgit/d-i/console-setup.git"
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://anonscm.debian.org/git/d-i/console-setup.git"
-else
- COMMIT_ID=e327df26fa9dbdf363b778ada91e83967f4bd500
- SRC_URI="https://anonscm.debian.org/cgit/d-i/console-setup.git/snapshot/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${COMMIT_ID}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=""
-RDEPEND="
- dev-lang/perl:*
- sys-apps/kbd
- x11-misc/xkeyboard-config"
-
-src_compile() {
- :
-}
-
-src_install() {
- dobin Keyboard/ckbcomp
-}
diff --git a/sys-apps/ckbcomp/ckbcomp-1.217.ebuild b/sys-apps/ckbcomp/ckbcomp-1.217.ebuild
new file mode 100644
index 000000000000..2f1e3536465f
--- /dev/null
+++ b/sys-apps/ckbcomp/ckbcomp-1.217.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Compile an XKB keymap for loadkeys"
+HOMEPAGE="https://anonscm.debian.org/cgit/d-i/console-setup.git"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anonscm.debian.org/git/d-i/console-setup.git"
+else
+ SRC_URI="https://salsa.debian.org/installer-team/console-setup/-/archive/${PV}/console-setup-${PV}.tar.gz"
+ S="${WORKDIR}"/console-setup-${PV}
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+RDEPEND="
+ dev-lang/perl
+ sys-apps/kbd
+ x11-misc/xkeyboard-config
+"
+
+src_compile() {
+ :
+}
+
+src_install() {
+ dobin Keyboard/ckbcomp
+}
diff --git a/sys-apps/ckbcomp/metadata.xml b/sys-apps/ckbcomp/metadata.xml
index 91b52104f179..2fb28cc9ebf7 100644
--- a/sys-apps/ckbcomp/metadata.xml
+++ b/sys-apps/ckbcomp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/clrngd/clrngd-1.0.3-r1.ebuild b/sys-apps/clrngd/clrngd-1.0.3-r1.ebuild
new file mode 100644
index 000000000000..086359cbc77f
--- /dev/null
+++ b/sys-apps/clrngd/clrngd-1.0.3-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Clock randomness gathering daemon"
+HOMEPAGE="http://echelon.pl/pubs/"
+SRC_URI="http://echelon.pl/pubs/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0.3-implicit-func-declaration.patch
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ econf --bindir="${EPREFIX}"/usr/sbin
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/${PN}-init.d ${PN}
+ newconfd "${FILESDIR}"/${PN}-conf.d ${PN}
+}
diff --git a/sys-apps/clrngd/clrngd-1.0.3-r2.ebuild b/sys-apps/clrngd/clrngd-1.0.3-r2.ebuild
new file mode 100644
index 000000000000..8f8098302781
--- /dev/null
+++ b/sys-apps/clrngd/clrngd-1.0.3-r2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Clock randomness gathering daemon"
+HOMEPAGE="http://echelon.pl/pubs/"
+SRC_URI="http://echelon.pl/pubs/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0.3-implicit-func-declaration.patch
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ econf --bindir="${EPREFIX}"/usr/sbin
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/${PN}-init.d-r2 ${PN}
+ newconfd "${FILESDIR}"/${PN}-conf.d ${PN}
+}
diff --git a/sys-apps/clrngd/clrngd-1.0.3.ebuild b/sys-apps/clrngd/clrngd-1.0.3.ebuild
deleted file mode 100644
index 6cc2a27825b2..000000000000
--- a/sys-apps/clrngd/clrngd-1.0.3.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Clock randomness gathering daemon"
-HOMEPAGE="http://echelon.pl/pubs/"
-SRC_URI="http://echelon.pl/pubs/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-src_configure() {
- econf --bindir="${EPREFIX}"/usr/sbin
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}"/${PN}-init.d ${PN}
- newconfd "${FILESDIR}"/${PN}-conf.d ${PN}
-}
diff --git a/sys-apps/clrngd/files/clrngd-1.0.3-implicit-func-declaration.patch b/sys-apps/clrngd/files/clrngd-1.0.3-implicit-func-declaration.patch
new file mode 100644
index 000000000000..075866ec8044
--- /dev/null
+++ b/sys-apps/clrngd/files/clrngd-1.0.3-implicit-func-declaration.patch
@@ -0,0 +1,27 @@
+--- a/clrngd.c
++++ b/clrngd.c
+@@ -14,6 +14,13 @@
+ #include <sys/time.h>
+ #include <stdio.h>
+ #include <string.h>
++
++#ifdef HAVE_STROPT_H
++#include <stropts.h>
++#else
++#include <sys/ioctl.h>
++#endif
++
+ #include <linux/types.h>
+ #include <linux/random.h>
+ #include <errno.h>
+--- a/configure.in
++++ b/configure.in
+@@ -18,7 +18,7 @@ dnl Checks for libraries.
+
+ dnl Checks for header files.
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS(unistd.h sys/param.h sys/time.h time.h sys/mkdev.h sys/sysmacros.h string.h memory.h fcntl.h dirent.h sys/ndir.h ndir.h alloca.h locale.h )
++AC_CHECK_HEADERS(unistd.h sys/param.h sys/time.h time.h sys/mkdev.h sys/sysmacros.h string.h memory.h fcntl.h dirent.h sys/ndir.h ndir.h alloca.h locale.h stropts.h)
+
+ jm_CHECK_TYPE_STRUCT_UTIMBUF
+ AC_HEADER_MAJOR
diff --git a/sys-apps/clrngd/files/clrngd-init.d-r2 b/sys-apps/clrngd/files/clrngd-init.d-r2
new file mode 100644
index 000000000000..5a7bc5be924d
--- /dev/null
+++ b/sys-apps/clrngd/files/clrngd-init.d-r2
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name='clrngd'
+command='/usr/sbin/clrngd'
+command_args="${clrngd_opts:-${DELAYTIME}}"
+description="Clock entropy for RNG"
+
+depend() {
+ after random
+ before net
+ provide entropy
+}
diff --git a/sys-apps/clrngd/metadata.xml b/sys-apps/clrngd/metadata.xml
index 79d462e85571..aaab041e8885 100644
--- a/sys-apps/clrngd/metadata.xml
+++ b/sys-apps/clrngd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/sys-apps/collectl/collectl-4.3.1-r1.ebuild b/sys-apps/collectl/collectl-4.3.1-r1.ebuild
new file mode 100644
index 000000000000..a4aa255f26f7
--- /dev/null
+++ b/sys-apps/collectl/collectl-4.3.1-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Performance monitoring tool capable of interactive reporting and logging to disk"
+HOMEPAGE="http://collectl.sourceforge.net/"
+SRC_URI="mirror://sourceforge/collectl/${P}.src.tar.gz"
+
+LICENSE="GPL-2 Artistic"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~ia64 x86"
+
+RDEPEND="
+ >=dev-lang/perl-5.8.8
+ virtual/perl-Time-HiRes
+ >=dev-perl/Archive-Zip-1.20
+ sys-apps/ethtool
+ sys-apps/pciutils
+"
+
+HTML_DOCS=( docs/. )
+
+src_install() {
+ dodoc README RELEASE-collectl
+
+ dobin collectl colmux
+
+ insinto /etc
+ doins collectl.conf
+
+ insinto /usr/share/collectl
+ doins *.ph *.std
+
+ insinto /usr/share/collectl/util
+ insopts -m755
+ doins client.pl
+
+ doman man1/*
+ einstalldocs
+
+ newinitd "${FILESDIR}"/collectl.initd-2 collectl
+}
diff --git a/sys-apps/collectl/collectl-4.3.1.ebuild b/sys-apps/collectl/collectl-4.3.1.ebuild
deleted file mode 100644
index d9b81f3dd223..000000000000
--- a/sys-apps/collectl/collectl-4.3.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Performance monitoring tool capable of interactive reporting and logging to disk"
-HOMEPAGE="http://collectl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/collectl/${P}.src.tar.gz"
-
-LICENSE="GPL-2 Artistic"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~ia64 x86"
-IUSE=""
-
-RDEPEND=">=dev-lang/perl-5.8.8
- virtual/perl-Time-HiRes
- >=dev-perl/Archive-Zip-1.20
- sys-apps/ethtool
- sys-apps/pciutils"
-
-HTML_DOCS="docs/*"
-
-DOCS=(
- README
- RELEASE-collectl
-)
-
-src_install() {
- dobin collectl colmux
-
- insinto /etc
- doins collectl.conf
-
- insinto /usr/share/collectl
- doins *.ph *.std
-
- insinto /usr/share/collectl/util
- insopts -m755
- doins client.pl
-
- doman man1/*
- einstalldocs
-
- newinitd "${FILESDIR}"/collectl.initd-2 collectl
-}
diff --git a/sys-apps/collectl/metadata.xml b/sys-apps/collectl/metadata.xml
index 6d59805d86f0..6cc7b68c4823 100644
--- a/sys-apps/collectl/metadata.xml
+++ b/sys-apps/collectl/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/colorized-logs/Manifest b/sys-apps/colorized-logs/Manifest
index e20a345f8a79..e2a022e1cefa 100644
--- a/sys-apps/colorized-logs/Manifest
+++ b/sys-apps/colorized-logs/Manifest
@@ -1,2 +1 @@
-DIST colorized-logs-2.4.tar.gz 10918 BLAKE2B 767d635155ebb66e212888c8e61e2ab65be665497a84c8820aa8183a5d94d30c9f2b653c16131916a907cb369d3b88a004573ae9eeaa1fda954cee239fa6da05 SHA512 5ac5734409f06262ad470a87e215c305f805a5701a604f1fc744632a25e4a1b8dd9c878897f72ad434b71ebe300c6d676cd53760a34f48b8202a62c765dcbe3f
-DIST colorized-logs-2.5.tar.gz 12331 BLAKE2B 79ee9d5a7d2e683ebba044a8b75666fe5824a087be3b41e9e1c4bb3b52d1d2a57b6dd5f3cc64a48fa6705b9074daa6cfaec61a730223bc3deb21835033fc3adb SHA512 a4849db1124bbf65a54285a121aa723a44b7270498858d0ac5f50892d3d8eb38c8109c3bb457cdf6ffe336e77703ba454217047ed819a0d61f415c5b8882cc28
+DIST colorized-logs-2.6.tar.gz 12837 BLAKE2B 8f2203ce11c4702c62d2e5069099470c23b6cff608bae41a944ac9d016232190643bd1bd6025e90a63a08137809d6b4c4cc3eb564bf05f29ef3e37b72313e276 SHA512 9251054331d4e008da68067409a3c526daef75a88befc2e0d349eb341c71f553ce907677a50450b3546b025e2b1a5ffb490671aa3031c560a9b61f2559a016bb
diff --git a/sys-apps/colorized-logs/colorized-logs-2.4.ebuild b/sys-apps/colorized-logs/colorized-logs-2.4.ebuild
deleted file mode 100644
index c21dd88d5a8a..000000000000
--- a/sys-apps/colorized-logs/colorized-logs-2.4.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit cmake-utils
-
-DESCRIPTION="Tools for logs with ANSI color"
-HOMEPAGE="https://github.com/kilobyte/colorized-logs/"
-SRC_URI="https://github.com/kilobyte/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-
-src_install() {
- cmake-utils_src_install
- # Rename to not collide with dev-python/ansi2html
- mv "${ED}/usr/bin/ansi2html" "${ED}/usr/bin/cl-ansi2html" || die
- mv "${ED}/usr/share/man/man1/ansi2html.1" "${ED}/usr/share/man/man1/cl-ansi2html.1" || die
-}
diff --git a/sys-apps/colorized-logs/colorized-logs-2.5.ebuild b/sys-apps/colorized-logs/colorized-logs-2.5.ebuild
deleted file mode 100644
index bef488c2d92c..000000000000
--- a/sys-apps/colorized-logs/colorized-logs-2.5.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit cmake-utils
-
-DESCRIPTION="Tools for logs with ANSI color"
-HOMEPAGE="https://github.com/kilobyte/colorized-logs/"
-SRC_URI="https://github.com/kilobyte/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-
-src_install() {
- cmake-utils_src_install
- # Rename to not collide with dev-python/ansi2html
- mv "${ED}/usr/bin/ansi2html" "${ED}/usr/bin/cl-ansi2html" || die
- mv "${ED}/usr/share/man/man1/ansi2html.1" "${ED}/usr/share/man/man1/cl-ansi2html.1" || die
-}
diff --git a/sys-apps/colorized-logs/colorized-logs-2.6.ebuild b/sys-apps/colorized-logs/colorized-logs-2.6.ebuild
new file mode 100644
index 000000000000..843fc5c13da9
--- /dev/null
+++ b/sys-apps/colorized-logs/colorized-logs-2.6.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit cmake
+
+DESCRIPTION="Tools for logs with ANSI color"
+HOMEPAGE="https://github.com/kilobyte/colorized-logs/"
+SRC_URI="https://github.com/kilobyte/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv x86"
+IUSE=""
+
+src_install() {
+ cmake_src_install
+ # Rename to not collide with dev-python/ansi2html
+ mv "${ED}/usr/bin/ansi2html" "${ED}/usr/bin/cl-ansi2html" || die
+ mv "${ED}/usr/share/man/man1/ansi2html.1" "${ED}/usr/share/man/man1/cl-ansi2html.1" || die
+}
diff --git a/sys-apps/colorized-logs/metadata.xml b/sys-apps/colorized-logs/metadata.xml
index 3da97a9953cc..420fa8f95dc3 100644
--- a/sys-apps/colorized-logs/metadata.xml
+++ b/sys-apps/colorized-logs/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>pacho@gentoo.org</email>
<name>Pacho Ramos</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">kilobyte/colorized-logs</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/config-site/config-site-0.ebuild b/sys-apps/config-site/config-site-0.ebuild
new file mode 100644
index 000000000000..ba0ded685cb8
--- /dev/null
+++ b/sys-apps/config-site/config-site-0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="config.site to load dropins from config.site.d"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base"
+S=${WORKDIR}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+RDEPEND="!<sys-devel/crossdev-20230209-r1"
+
+src_configure() {
+ sed -e "s|@datarootdir@|${EPREFIX}/usr/share|" \
+ "${FILESDIR}/config.site.in" > config.site || die
+}
+
+src_install() {
+ insinto /usr/share
+ doins config.site
+}
diff --git a/sys-apps/config-site/files/config.site.in b/sys-apps/config-site/files/config.site.in
new file mode 100644
index 000000000000..1e732cf28aaa
--- /dev/null
+++ b/sys-apps/config-site/files/config.site.in
@@ -0,0 +1,10 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+for script in "@datarootdir@/config.site.d"/*.conf; do
+ test -f "${script}" || continue
+ test -r "${script}" || continue
+ echo "${0##*/}: loading site script ${script}"
+ . "${script}" || break
+done
+unset script
diff --git a/sys-apps/config-site/metadata.xml b/sys-apps/config-site/metadata.xml
new file mode 100644
index 000000000000..65e1fc82d859
--- /dev/null
+++ b/sys-apps/config-site/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-apps/consolation/metadata.xml b/sys-apps/consolation/metadata.xml
index 56cae167d372..7c1651eba3e0 100644
--- a/sys-apps/consolation/metadata.xml
+++ b/sys-apps/consolation/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
diff --git a/sys-apps/conspy/Manifest b/sys-apps/conspy/Manifest
index 1cf2e9873c24..8d9031b5e49a 100644
--- a/sys-apps/conspy/Manifest
+++ b/sys-apps/conspy/Manifest
@@ -1,2 +1 @@
-DIST conspy-1.10.tar.gz 25211 BLAKE2B 2cb2d2c02bc38ab26bc2f08737c7e2f87dacb4fd04240bda63900e0b9018f98d28b2ee2fa00dba5ca931d59b823a72f2e0dd282828b081b31d91dd64c652dbef SHA512 f22ddff140935f767bff34c8c274ff088ebae049ac61c543ad37fa126bbab2e1cec72bdd93f51cb513d00368b909935491d06a36dbff215f17cdea7a658dbad2
-DIST conspy-1.14.tar.gz 26637 BLAKE2B 6fd4e3c35bf978ca7041aac0de23745a5c7cb200e4b29ec841cc195ea75194ed9a65ef46c85fc40b549ca68593ddab1af39499725880da403a602f97650982cd SHA512 46c25770e399c46de5aadcfbf4cff4ab5bc0f83771d6930b5752b9493f8c6864cc86d787ef6f297a00944e65987a56f6bf2cf99975eff689864745c0eef45b0d
+DIST conspy-1.16.tar.gz 26893 BLAKE2B dfae1677a989c2b9107bf656186513c9624a02a1624976440346138b15f023deb9691d0f4ad651ab2ce0ba96a664d8501685db3ac1ad30a175d6662267d87601 SHA512 231f049c5af379ad6d4b87f462da363fad3fd70138d32986f3de42ba9ae4515b6a3e082ac8d523f70716260f9e4c84d3d01deda0df5e6e7f7f39c0e06ca87ea6
diff --git a/sys-apps/conspy/conspy-1.10.ebuild b/sys-apps/conspy/conspy-1.10.ebuild
deleted file mode 100644
index 488d0abf5504..000000000000
--- a/sys-apps/conspy/conspy-1.10.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-AUTOTOOLS_AUTORECONF=true
-inherit autotools-utils
-
-DESCRIPTION="Remote control for Linux virtual consoles"
-HOMEPAGE="http://conspy.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-1/${P}.tar.gz"
-
-LICENSE="AGPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="sys-libs/ncurses:0="
-DEPEND="${RDEPEND}"
-
-src_configure() {
- autotools-utils_src_configure
-
- mv \
- "${WORKDIR}"/${P}_build/Makefile-automake \
- "${WORKDIR}"/${P}_build/Makefile || die
-}
-
-src_install() {
- dobin "${WORKDIR}"/${P}_build/${PN}
- doman ${PN}.1
- dodoc ChangeLog.txt README.txt
- dohtml ${PN}.html
-}
diff --git a/sys-apps/conspy/conspy-1.14.ebuild b/sys-apps/conspy/conspy-1.14.ebuild
deleted file mode 100644
index 1185be89bd36..000000000000
--- a/sys-apps/conspy/conspy-1.14.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools
-
-DESCRIPTION="Remote control for Linux virtual consoles"
-HOMEPAGE="http://conspy.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-1/${P}.tar.gz"
-
-LICENSE="AGPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- sys-libs/ncurses:0=
-"
-DEPEND="
- ${RDEPEND}
-"
-PATCHES=(
- "${FILESDIR}"/${PN}-1.14-tinfo.patch
-)
-DOCS=(
- ChangeLog.txt README.txt ${PN}.html
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_install() {
- default
-}
diff --git a/sys-apps/conspy/conspy-1.16.ebuild b/sys-apps/conspy/conspy-1.16.ebuild
new file mode 100644
index 000000000000..1221979768fd
--- /dev/null
+++ b/sys-apps/conspy/conspy-1.16.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="Remote control for Linux virtual consoles"
+HOMEPAGE="http://conspy.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}-1/${P}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="sys-libs/ncurses:0="
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14-tinfo.patch
+)
+
+DOCS=( ChangeLog.txt README.txt ${PN}.html )
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/conspy/metadata.xml b/sys-apps/conspy/metadata.xml
index 1d132679808f..8c703c5b2cee 100644
--- a/sys-apps/conspy/metadata.xml
+++ b/sys-apps/conspy/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
+ <changelog>http://conspy.sourceforge.net/ChangeLog.txt</changelog>
<remote-id type="sourceforge">conspy</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/coreutils/Manifest b/sys-apps/coreutils/Manifest
index 587b6b33bc95..2823060d3567 100644
--- a/sys-apps/coreutils/Manifest
+++ b/sys-apps/coreutils/Manifest
@@ -1,4 +1,8 @@
DIST coreutils-8.30-patches-01.tar.xz 5788 BLAKE2B a41511ce39ac570cb14b7f12d125eebef92217469a9490808719fa0665f5e5c0adb96fbd02c4bac4d280d1502295669575790a81dbc01afe2ca3a9d384cbefb0 SHA512 b1e1933637de4581d5f8c6ede4e80a012435d13f0cf5550a76ab5bbe9441e3c15ce19ef3f78a7ea3b8368d5e9a3bb17c1207c471d26171b59786f38adeba0454
-DIST coreutils-8.30.tar.xz 5359532 BLAKE2B b66ccd112a6c2c8b90e58ff1c3371e7f5827937035769329885e5bdae197466189f3715720b8f8cf0b5047fe16d6c86984dcee994117c2d3c7b8dbd597027255 SHA512 25bc132c0d89ce71c33e417f04649c9fcfce6c5ef8b19f093b2e9e2851bfde9b5a31e20499d9c427332228ba54b88d445ddb445551e1944bb8f5cbff5ffa4eda
-DIST coreutils-8.31.tar.xz 5410140 BLAKE2B e3ae6be8edbe9df9164b4c9ac8bf14dc23b147fa665f20669e18ac4c6e45ba839dc0dc99e05670eb006d22133475a4a717a5f40b00ebaedfd6e1fbab887674d5 SHA512 ef8941dae845bbf5ae5838bc49e44554a766302930601aada6fa594e8088f0fbad74e481ee392ff89633e68b99e4da3f761fcb5d31ee3b233d540fe2a2d4e1af
DIST coreutils-8.32.tar.xz 5547836 BLAKE2B 0ad99c176c19ec214fcfd0845523e5362f0151827707c759bd46c0fe8d2501c6ad1c29c5b71266f6525857bc0d56c472db0d7fe29953b6c65e2e6c76bdf3c515 SHA512 1c8f3584efd61b4b02e7ac5db8e103b63cfb2063432caaf1e64cb2dcc56d8c657d1133bbf10bd41468d6a1f31142e6caa81d16ae68fa3e6e84075c253613a145
+DIST coreutils-9.4-patches.tar.xz 6756 BLAKE2B 677454409ccb629fd0efde1e15d8f9c13f208391e63a17816011e84d4ca3fb2a42c2a60853f213ade2a53c821d76fd8924c59388d160c6e7c7fa5755e1db4c68 SHA512 2025c80b5ada92bafb479c678917862be208534becd8b347d335032c6b4cc23c7b7630f15ca7dd3b5d691567cb70f3491753e29441cc54d8700cc3d966a5e743
+DIST coreutils-9.4.tar.xz 5979200 BLAKE2B 83d41c48804c1d470c0e5eed38e692bb6875436dda3f6e2c29784ad6ef563d86e8e066a050e222621b400f78ea4630b1e127d20fc9b76f12096528c42677e35d SHA512 7c55ee23b685a0462bbbd118b04d25278c902604a0dcf3bf4f8bf81faa0500dee5a7813cba6f586d676c98e520cafd420f16479619305e94ea6798d8437561f5
+DIST coreutils-9.4.tar.xz.sig 833 BLAKE2B 870f7eb28e8851f41954820c7f4f4b43a965e6650b303b79541dfdf98ca0cd52fe964d7eec72bea68066452d7ad21a01df5e4db9e5bc4c20bf26d8b416856446 SHA512 9674f783f592c4f3e5c708ff31426ac009bf132fd0005019571bf39c8a1627efb5351c6cecc7faecb1eff8fa2970318666593bffc0eda9c750159e174ef42524
+DIST coreutils-9.5-patches.tar.xz 5912 BLAKE2B 873fbe1a60f8f8034b3d35796146765ce388952d649c32dc81ca0e4c2823c9f2f00b69bc5cb3af686434867459b6dc378fb9a6d59563d28b87c3ee1eceeedbb3 SHA512 4b4ad356615d046b8d67ea35b789f887a787ab01ece3234f6344518aef33cd30ca364fef5d85e11acfdb24003114c16ffdab82922fb135d5425fbcd541064a76
+DIST coreutils-9.5.tar.xz 6007136 BLAKE2B 6fd3a77697c9e85f31415c6ad66559faf18acc7d346677a89d4a999c2027886551e78842a7283e7b3b44fe8ef2fde04ba2f88df32a7844d5f69d45bcb7a04b6f SHA512 2ca0deac4dc10a80fd0c6fd131252e99d457fd03b7bd626a6bc74fe5a0529c0a3d48ce1f5da1d3b3a7a150a1ce44f0fbb6b68a6ac543dfd5baa3e71f5d65401c
+DIST coreutils-9.5.tar.xz.sig 833 BLAKE2B 37c29984bceee0ff3bffde76712f71dbb118c228e328dc230d5c53c37da12f5ec2130e0123b97fda4a561f556c3be307fdbe1f0c21279db2c84030818386f626 SHA512 029997e0f4ee64e561853cff7c8a124f58cc891598595b44c4a46f9813b4b71c9d677464bc8a26d294e9971832f4b87c23777fea4fac6e8e30f06ad93b9957d5
diff --git a/sys-apps/coreutils/coreutils-8.30.ebuild b/sys-apps/coreutils/coreutils-8.30.ebuild
deleted file mode 100644
index fda25b3b8ba0..000000000000
--- a/sys-apps/coreutils/coreutils-8.30.ebuild
+++ /dev/null
@@ -1,210 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python3_6 )
-
-inherit eutils flag-o-matic python-any-r1 toolchain-funcs
-
-PATCH_VER="01"
-DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
-HOMEPAGE="https://www.gnu.org/software/coreutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz
- https://dev.gentoo.org/~polynomial-c/dist/${P}-patches-${PATCH_VER}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~x86-linux"
-IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test userland_BSD vanilla xattr"
-RESTRICT="!test? ( test )"
-
-LIB_DEPEND="acl? ( sys-apps/acl[static-libs] )
- caps? ( sys-libs/libcap )
- gmp? ( dev-libs/gmp:=[static-libs] )
- xattr? ( !userland_BSD? ( sys-apps/attr[static-libs] ) )"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs]} )
- selinux? ( sys-libs/libselinux )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- app-arch/xz-utils
- test? (
- dev-lang/perl
- dev-perl/Expect
- !userland_BSD? (
- dev-util/strace
- )
- ${PYTHON_DEPS}
- $(python_gen_any_dep 'dev-python/pyinotify[${PYTHON_USEDEP}]')
- )"
-RDEPEND+="
- hostname? ( !sys-apps/net-tools[hostname] )
- kill? (
- !sys-apps/util-linux[kill]
- !sys-process/procps[kill]
- )
- !app-misc/realpath
- !<sys-apps/util-linux-2.13
- !<sys-apps/sandbox-2.10-r4
- !sys-apps/stat
- !net-mail/base64
- !sys-apps/mktemp
- !<app-forensics/tct-1.18-r1
- !<net-fs/netatalk-2.0.3-r4"
-
-python_check_deps() {
- has_version --host-root "dev-python/pyinotify[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- if use test ; then
- python-any-r1_pkg_setup
- fi
-}
-
-src_prepare() {
- if ! use vanilla ; then
- eapply "${WORKDIR}"/patch/*.patch
- fi
-
- eapply_user
-
- # Since we've patched many .c files, the make process will try to
- # re-build the manpages by running `./bin --help`. When doing a
- # cross-compile, we can't do that since 'bin' isn't a native bin.
- # Also, it's not like we changed the usage on any of these things,
- # so let's just update the timestamps and skip the help2man step.
- set -- man/*.x
- touch ${@/%x/1}
-
- # Avoid perl dep for compiled in dircolors default #348642
- if ! has_version dev-lang/perl ; then
- touch src/dircolors.h
- touch ${@/%x/1}
- fi
-}
-
-src_configure() {
- local myconf=(
- --with-packager="Gentoo"
- --with-packager-version="${PVR} (p${PATCH_VER:-0})"
- --with-packager-bug-reports="https://bugs.gentoo.org/"
- --enable-install-program="arch,$(usev hostname),$(usev kill)"
- --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
- --enable-largefile
- $(usex caps '' --disable-libcap)
- $(use_enable nls)
- $(use_enable acl)
- $(use_enable multicall single-binary)
- $(use_enable xattr)
- $(use_with gmp)
- )
- if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
- export fu_cv_sys_stat_statfs2_bsize=yes #311569
- export gl_cv_func_realpath_works=yes #416629
- fi
-
- export gl_cv_func_mknod_works=yes #409919
- use static && append-ldflags -static && sed -i '/elf_sys=yes/s:yes:no:' configure #321821
- use selinux || export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no #301782
- use userland_BSD && myconf+=( -program-prefix=g --program-transform-name=s/stat/nustat/ )
- # kill/uptime - procps
- # groups/su - shadow
- # hostname - net-tools
- econf "${myconf[@]}"
-}
-
-src_test() {
- # Known to fail with FEATURES=usersandbox (bug #439574):
- # - tests/du/long-from-unreadable.sh} (bug #413621)
- # - tests/rm/deep-2.sh (bug #413621)
- # - tests/dd/no-allocate.sh (bug #629660)
- if has usersandbox $FEATURES ; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- # Non-root tests will fail if the full path isn't
- # accessible to non-root users
- chmod -R go-w "${WORKDIR}"
- chmod a+rx "${WORKDIR}"
-
- # coreutils tests like to do `mount` and such with temp dirs
- # so make sure /etc/mtab is writable #265725
- # make sure /dev/loop* can be mounted #269758
- mkdir -p "${T}"/mount-wrappers
- mkwrap() {
- local w ww
- for w in "$@" ; do
- ww="${T}/mount-wrappers/${w}"
- cat <<-EOF > "${ww}"
- #!${EPREFIX}/bin/sh
- exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P $w) "\$@"
- EOF
- chmod a+rx "${ww}"
- done
- }
- mkwrap mount umount
-
- addwrite /dev/full
- #export RUN_EXPENSIVE_TESTS="yes"
- #export FETISH_GROUPS="portage wheel"
- env PATH="${T}/mount-wrappers:${PATH}" \
- emake -j1 -k check
-}
-
-src_install() {
- default
-
- insinto /etc
- newins src/dircolors.hin DIR_COLORS
-
- if [[ ${USERLAND} == "GNU" ]] ; then
- cd "${ED%/}"/usr/bin || die
- dodir /bin
- # move critical binaries into /bin (required by FHS)
- local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
- mkdir mknod mv pwd rm rmdir stty sync true uname"
- mv ${fhs} ../../bin/ || die "could not move fhs bins"
- if use hostname; then
- mv hostname ../../bin/ || die
- fi
- if use kill; then
- mv kill ../../bin/ || die
- fi
- if use split-usr ; then
- # move critical binaries into /bin (common scripts)
- local com="basename chroot cut dir dirname du env expr head mkfifo
- mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
- mv ${com} ../../bin/ || die "could not move common bins"
- # create a symlink for uname in /usr/bin/ since autotools require it
- local x
- for x in ${com} uname ; do
- dosym ../../bin/${x} /usr/bin/${x}
- done
- fi
- else
- # For now, drop the man pages, collides with the ones of the system.
- rm -rf "${ED%/}"/usr/share/man
- fi
-
-}
-
-pkg_postinst() {
- ewarn "Make sure you run 'hash -r' in your active shells."
- ewarn "You should also re-source your shell settings for LS_COLORS"
- ewarn " changes, such as: source /etc/profile"
-
- # Help out users using experimental filesystems
- if grep -qs btrfs "${EROOT%/}"/etc/fstab /proc/mounts ; then
- case $(uname -r) in
- 2.6.[12][0-9]|2.6.3[0-7]*)
- ewarn "You are running a system with a buggy btrfs driver."
- ewarn "Please upgrade your kernel to avoid silent corruption."
- ewarn "See: https://bugs.gentoo.org/353907"
- ;;
- esac
- fi
-}
diff --git a/sys-apps/coreutils/coreutils-8.31-r1.ebuild b/sys-apps/coreutils/coreutils-8.31-r1.ebuild
deleted file mode 100644
index 57d93329c450..000000000000
--- a/sys-apps/coreutils/coreutils-8.31-r1.ebuild
+++ /dev/null
@@ -1,190 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit eutils flag-o-matic python-any-r1 toolchain-funcs
-
-PATCH="${PN}-8.30-patches-01"
-DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
-HOMEPAGE="https://www.gnu.org/software/coreutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- mirror://gentoo/${PATCH}.tar.xz
- https://dev.gentoo.org/~polynomial-c/dist/${PATCH}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux"
-IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test vanilla xattr"
-RESTRICT="!test? ( test )"
-
-LIB_DEPEND="acl? ( sys-apps/acl[static-libs] )
- caps? ( sys-libs/libcap )
- gmp? ( dev-libs/gmp:=[static-libs] )
- xattr? ( sys-apps/attr[static-libs] )"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs]} )
- selinux? ( sys-libs/libselinux )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- app-arch/xz-utils
- test? (
- dev-lang/perl
- dev-perl/Expect
- dev-util/strace
- ${PYTHON_DEPS}
- )"
-RDEPEND+="
- hostname? ( !sys-apps/net-tools[hostname] )
- kill? (
- !sys-apps/util-linux[kill]
- !sys-process/procps[kill]
- )
- !app-misc/realpath
- !<sys-apps/util-linux-2.13
- !<sys-apps/sandbox-2.10-r4
- !sys-apps/stat
- !net-mail/base64
- !sys-apps/mktemp
- !<app-forensics/tct-1.18-r1
- !<net-fs/netatalk-2.0.3-r4"
-
-pkg_setup() {
- if use test ; then
- python-any-r1_pkg_setup
- fi
-}
-
-src_prepare() {
- if ! use vanilla ; then
- eapply "${WORKDIR}"/patch/*.patch
- eapply "${FILESDIR}"/${PN}-8.31-sandbox-env-test.patch
- fi
-
- eapply_user
-
- # Since we've patched many .c files, the make process will try to
- # re-build the manpages by running `./bin --help`. When doing a
- # cross-compile, we can't do that since 'bin' isn't a native bin.
- # Also, it's not like we changed the usage on any of these things,
- # so let's just update the timestamps and skip the help2man step.
- set -- man/*.x
- touch ${@/%x/1}
-
- # Avoid perl dep for compiled in dircolors default #348642
- if ! has_version dev-lang/perl ; then
- touch src/dircolors.h
- touch ${@/%x/1}
- fi
-}
-
-src_configure() {
- local myconf=(
- --with-packager="Gentoo"
- --with-packager-version="${PVR} (p${PATCH_VER:-0})"
- --with-packager-bug-reports="https://bugs.gentoo.org/"
- --enable-install-program="arch,$(usev hostname),$(usev kill)"
- --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
- --enable-largefile
- $(usex caps '' --disable-libcap)
- $(use_enable nls)
- $(use_enable acl)
- $(use_enable multicall single-binary)
- $(use_enable xattr)
- $(use_with gmp)
- )
- if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
- export fu_cv_sys_stat_statfs2_bsize=yes #311569
- export gl_cv_func_realpath_works=yes #416629
- fi
-
- export gl_cv_func_mknod_works=yes #409919
- use static && append-ldflags -static && sed -i '/elf_sys=yes/s:yes:no:' configure #321821
- use selinux || export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no #301782
- # kill/uptime - procps
- # groups/su - shadow
- # hostname - net-tools
- econf "${myconf[@]}"
-}
-
-src_test() {
- # Known to fail with FEATURES=usersandbox (bug #439574):
- # - tests/du/long-from-unreadable.sh} (bug #413621)
- # - tests/rm/deep-2.sh (bug #413621)
- # - tests/dd/no-allocate.sh (bug #629660)
- if has usersandbox ${FEATURES} ; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- # Non-root tests will fail if the full path isn't
- # accessible to non-root users
- chmod -R go-w "${WORKDIR}"
- chmod a+rx "${WORKDIR}"
-
- # coreutils tests like to do `mount` and such with temp dirs
- # so make sure /etc/mtab is writable #265725
- # make sure /dev/loop* can be mounted #269758
- mkdir -p "${T}"/mount-wrappers || die
- mkwrap() {
- local w ww
- for w in "${@}" ; do
- ww="${T}/mount-wrappers/${w}"
- cat <<-EOF > "${ww}"
- #!${EPREFIX}/bin/sh
- exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@"
- EOF
- chmod a+rx "${ww}"
- done
- }
- mkwrap mount umount
-
- addwrite /dev/full
- #export RUN_EXPENSIVE_TESTS="yes"
- #export FETISH_GROUPS="portage wheel"
- env PATH="${T}/mount-wrappers:${PATH}" \
- emake -j1 -k check
-}
-
-src_install() {
- default
-
- insinto /etc
- newins src/dircolors.hin DIR_COLORS
-
- if use split-usr ; then
- cd "${ED%/}"/usr/bin || die
- dodir /bin
- # move critical binaries into /bin (required by FHS)
- local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
- mkdir mknod mv pwd rm rmdir stty sync true uname"
- mv ${fhs} ../../bin/ || die "could not move fhs bins"
- if use hostname; then
- mv hostname ../../bin/ || die
- fi
- if use kill; then
- mv kill ../../bin/ || die
- fi
- # move critical binaries into /bin (common scripts)
- # Why are these required for booting?
- local com="basename chroot cut dir dirname du env expr head mkfifo
- mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
- mv ${com} ../../bin/ || die "could not move common bins"
- # create a symlink for uname in /usr/bin/ since autotools require it
- # Other than uname, we need to figure out why we are
- # creating symlinks for these in /usr/bin instead of leaving
- # the files there in the first place.
- local x
- for x in ${com} uname ; do
- dosym ../../bin/${x} /usr/bin/${x}
- done
- fi
-}
-
-pkg_postinst() {
- ewarn "Make sure you run 'hash -r' in your active shells."
- ewarn "You should also re-source your shell settings for LS_COLORS"
- ewarn " changes, such as: source /etc/profile"
-}
diff --git a/sys-apps/coreutils/coreutils-8.32-r1.ebuild b/sys-apps/coreutils/coreutils-8.32-r1.ebuild
index 63b8e1f69406..01a7a97fc192 100644
--- a/sys-apps/coreutils/coreutils-8.32-r1.ebuild
+++ b/sys-apps/coreutils/coreutils-8.32-r1.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_COMPAT=( python3_10 )
-inherit eutils flag-o-matic python-any-r1 toolchain-funcs
+inherit flag-o-matic python-any-r1 toolchain-funcs
PATCH="${PN}-8.30-patches-01"
DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
@@ -17,9 +17,9 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
)
"
-LICENSE="GPL-3"
+LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test vanilla xattr"
RESTRICT="!test? ( test )"
@@ -36,10 +36,11 @@ DEPEND="
"
BDEPEND="
app-arch/xz-utils
+ dev-lang/perl
test? (
+ dev-debug/strace
dev-lang/perl
dev-perl/Expect
- dev-util/strace
${PYTHON_DEPS}
)
"
@@ -49,7 +50,6 @@ RDEPEND+="
!sys-apps/util-linux[kill]
!sys-process/procps[kill]
)
- !app-misc/realpath
!<sys-apps/util-linux-2.13
!<sys-apps/sandbox-2.10-r4
!sys-apps/stat
@@ -79,15 +79,16 @@ src_prepare() {
# Since we've patched many .c files, the make process will try to
# re-build the manpages by running `./bin --help`. When doing a
# cross-compile, we can't do that since 'bin' isn't a native bin.
+ #
# Also, it's not like we changed the usage on any of these things,
# so let's just update the timestamps and skip the help2man step.
set -- man/*.x
- touch ${@/%x/1}
+ touch ${@/%x/1} || die
- # Avoid perl dep for compiled in dircolors default #348642
+ # Avoid perl dep for compiled in dircolors default (bug #348642)
if ! has_version dev-lang/perl ; then
- touch src/dircolors.h
- touch ${@/%x/1}
+ touch src/dircolors.h || die
+ touch ${@/%x/1} || die
fi
}
@@ -96,6 +97,9 @@ src_configure() {
--with-packager="Gentoo"
--with-packager-version="${PVR} (p${PATCH_VER:-0})"
--with-packager-bug-reports="https://bugs.gentoo.org/"
+ # kill/uptime - procps
+ # groups/su - shadow
+ # hostname - net-tools
--enable-install-program="arch,$(usev hostname),$(usev kill)"
--enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
--enable-largefile
@@ -106,17 +110,28 @@ src_configure() {
$(use_enable xattr)
$(use_with gmp)
)
+
if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
- export fu_cv_sys_stat_statfs2_bsize=yes #311569
- export gl_cv_func_realpath_works=yes #416629
+ # bug #311569
+ export fu_cv_sys_stat_statfs2_bsize=yes
+ # bug #416629
+ export gl_cv_func_realpath_works=yes
+ fi
+
+ # bug #409919
+ export gl_cv_func_mknod_works=yes
+
+ if use static ; then
+ append-ldflags -static
+ # bug #321821
+ sed -i '/elf_sys=yes/s:yes:no:' configure || die
+ fi
+
+ if ! use selinux ; then
+ # bug #301782
+ export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no
fi
- export gl_cv_func_mknod_works=yes #409919
- use static && append-ldflags -static && sed -i '/elf_sys=yes/s:yes:no:' configure #321821
- use selinux || export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no #301782
- # kill/uptime - procps
- # groups/su - shadow
- # hostname - net-tools
econf "${myconf[@]}"
}
@@ -132,12 +147,13 @@ src_test() {
# Non-root tests will fail if the full path isn't
# accessible to non-root users
- chmod -R go-w "${WORKDIR}"
- chmod a+rx "${WORKDIR}"
+ chmod -R go-w "${WORKDIR}" || die
+ chmod a+rx "${WORKDIR}" || die
- # coreutils tests like to do `mount` and such with temp dirs
- # so make sure /etc/mtab is writable #265725
- # make sure /dev/loop* can be mounted #269758
+ # coreutils tests like to do `mount` and such with temp dirs,
+ # so make sure:
+ # - /etc/mtab is writable (bug #265725)
+ # - /dev/loop* can be mounted (bug #269758)
mkdir -p "${T}"/mount-wrappers || die
mkwrap() {
local w ww
@@ -147,14 +163,14 @@ src_test() {
#!${EPREFIX}/bin/sh
exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@"
EOF
- chmod a+rx "${ww}"
+ chmod a+rx "${ww}" || die
done
}
mkwrap mount umount
addwrite /dev/full
#export RUN_EXPENSIVE_TESTS="yes"
- #export FETISH_GROUPS="portage wheel"
+ #export COREUTILS_GROUPS="portage wheel"
env PATH="${T}/mount-wrappers:${PATH}" \
emake -j1 -k check
}
@@ -168,25 +184,30 @@ src_install() {
if use split-usr ; then
cd "${ED}"/usr/bin || die
dodir /bin
- # move critical binaries into /bin (required by FHS)
+
+ # Move critical binaries into /bin (required by FHS)
local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
mkdir mknod mv pwd rm rmdir stty sync true uname"
- mv ${fhs} ../../bin/ || die "could not move fhs bins"
- if use hostname; then
+ mv ${fhs} ../../bin/ || die "Could not move FHS bins!"
+
+ if use hostname ; then
mv hostname ../../bin/ || die
fi
- if use kill; then
+
+ if use kill ; then
mv kill ../../bin/ || die
fi
- # move critical binaries into /bin (common scripts)
- # Why are these required for booting?
+
+ # Move critical binaries into /bin (common scripts)
+ # (Why are these required for booting?)
local com="basename chroot cut dir dirname du env expr head mkfifo
mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
- mv ${com} ../../bin/ || die "could not move common bins"
- # create a symlink for uname in /usr/bin/ since autotools require it
- # Other than uname, we need to figure out why we are
+ mv ${com} ../../bin/ || die "Could not move common bins!"
+
+ # Create a symlink for uname in /usr/bin/ since autotools require it.
+ # (Other than uname, we need to figure out why we are
# creating symlinks for these in /usr/bin instead of leaving
- # the files there in the first place.
+ # the files there in the first place...)
local x
for x in ${com} uname ; do
dosym ../../bin/${x} /usr/bin/${x}
diff --git a/sys-apps/coreutils/coreutils-9.4-r1.ebuild b/sys-apps/coreutils/coreutils-9.4-r1.ebuild
new file mode 100644
index 000000000000..cd9bf44d0689
--- /dev/null
+++ b/sys-apps/coreutils/coreutils-9.4-r1.ebuild
@@ -0,0 +1,308 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils
+# The upstream coreutils maintainers also maintain the package in Fedora and may
+# backport fixes which we want to pick up.
+#
+# Also recommend subscribing to the coreutils and bug-coreutils MLs.
+
+PYTHON_COMPAT=( python3_{10..11} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc
+inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
+
+MY_PATCH="${PN}-9.4-patches"
+DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
+HOMEPAGE="https://www.gnu.org/software/coreutils/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ # Note: could put this in devspace, but if it's gone, we don't want
+ # it in tree anyway. It's just for testing.
+ MY_SNAPSHOT="$(ver_cut 1-2).156-b3afb"
+ SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )"
+ S="${WORKDIR}"/${PN}-${MY_SNAPSHOT}
+else
+ SRC_URI="
+ mirror://gnu/${PN}/${P}.tar.xz
+ verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )
+ "
+
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
+fi
+
+SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test vanilla xattr"
+RESTRICT="!test? ( test )"
+
+LIB_DEPEND="
+ acl? ( sys-apps/acl[static-libs] )
+ caps? ( sys-libs/libcap )
+ gmp? ( dev-libs/gmp:=[static-libs] )
+ openssl? ( dev-libs/openssl:=[static-libs] )
+ xattr? ( sys-apps/attr[static-libs] )
+"
+RDEPEND="
+ !static? ( ${LIB_DEPEND//\[static-libs]} )
+ selinux? ( sys-libs/libselinux )
+ nls? ( virtual/libintl )
+"
+DEPEND="
+ ${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+"
+BDEPEND="
+ app-arch/xz-utils
+ dev-lang/perl
+ test? (
+ dev-debug/strace
+ dev-lang/perl
+ dev-perl/Expect
+ ${PYTHON_DEPS}
+ )
+ verify-sig? ( sec-keys/openpgp-keys-coreutils )
+"
+RDEPEND+="
+ hostname? ( !sys-apps/net-tools[hostname] )
+ kill? (
+ !sys-apps/util-linux[kill]
+ !sys-process/procps[kill]
+ )
+ !<sys-apps/util-linux-2.13
+ !<sys-apps/sandbox-2.10-r4
+ !sys-apps/stat
+ !net-mail/base64
+ !sys-apps/mktemp
+ !<app-forensics/tct-1.18-r1
+ !<net-fs/netatalk-2.0.3-r4
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # gnulib FPs (bug #898370)
+ unreachable MIN alignof static_assert
+)
+
+pkg_setup() {
+ if use test ; then
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+
+ cd "${S}" || die
+ ./bootstrap || die
+
+ sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die
+ elif use verify-sig ; then
+ # Needed for downloaded patch (which is unsigned, which is fine)
+ verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig}
+ fi
+
+ default
+}
+
+src_prepare() {
+ # TODO: past 2025, we may need to add our own hack for bug #907474.
+ local PATCHES=(
+ # Upstream patches
+ "${FILESDIR}"/${P}-gnulib-openssl-1.1.patch
+ "${FILESDIR}"/${P}-CVE-2024-0684.patch
+ "${FILESDIR}"/${P}-gnulib-clang-18-c23-stdckdint.patch
+ )
+
+ if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then
+ PATCHES+=( "${WORKDIR}"/${MY_PATCH} )
+ fi
+
+ default
+
+ # Since we've patched many .c files, the make process will try to
+ # re-build the manpages by running `./bin --help`. When doing a
+ # cross-compile, we can't do that since 'bin' isn't a native bin.
+ #
+ # Also, it's not like we changed the usage on any of these things,
+ # so let's just update the timestamps and skip the help2man step.
+ set -- man/*.x
+ touch ${@/%x/1} || die
+
+ # Avoid perl dep for compiled in dircolors default (bug #348642)
+ if ! has_version dev-lang/perl ; then
+ touch src/dircolors.h || die
+ touch ${@/%x/1} || die
+ fi
+}
+
+src_configure() {
+ # TODO: in future (>9.4?), we may want to wire up USE=systemd:
+ # still experimental at the moment, but:
+ # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0
+ local myconf=(
+ --with-packager="Gentoo"
+ --with-packager-version="${PVR} (p${PATCH_VER:-0})"
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+ # kill/uptime - procps
+ # groups/su - shadow
+ # hostname - net-tools
+ --enable-install-program="arch,$(usev hostname),$(usev kill)"
+ --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
+ $(usev !caps --disable-libcap)
+ $(use_enable nls)
+ $(use_enable acl)
+ $(use_enable multicall single-binary)
+ $(use_enable xattr)
+ $(use_with gmp libgmp)
+ $(use_with openssl)
+ )
+
+ if use gmp ; then
+ myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr )
+ fi
+
+ if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
+ # bug #311569
+ export fu_cv_sys_stat_statfs2_bsize=yes
+ # bug #416629
+ export gl_cv_func_realpath_works=yes
+ fi
+
+ # bug #409919
+ export gl_cv_func_mknod_works=yes
+
+ if use static ; then
+ append-ldflags -static
+ # bug #321821
+ sed -i '/elf_sys=yes/s:yes:no:' configure || die
+ fi
+
+ if ! use selinux ; then
+ # bug #301782
+ export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ # Non-root tests will fail if the full path isn't
+ # accessible to non-root users
+ chmod -R go-w "${WORKDIR}" || die
+ chmod a+rx "${WORKDIR}" || die
+
+ # coreutils tests like to do `mount` and such with temp dirs,
+ # so make sure:
+ # - /etc/mtab is writable (bug #265725)
+ # - /dev/loop* can be mounted (bug #269758)
+ mkdir -p "${T}"/mount-wrappers || die
+ mkwrap() {
+ local w ww
+ for w in "${@}" ; do
+ ww="${T}/mount-wrappers/${w}"
+ cat <<-EOF > "${ww}"
+ #!${EPREFIX}/bin/sh
+ exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@"
+ EOF
+ chmod a+rx "${ww}" || die
+ done
+ }
+ mkwrap mount umount
+
+ addwrite /dev/full
+
+ #local -x RUN_EXPENSIVE_TESTS="yes"
+ #local -x COREUTILS_GROUPS="portage wheel"
+ local -x PATH="${T}/mount-wrappers:${PATH}"
+ local -x gl_public_submodule_commit=
+
+ local xfail_tests=(
+ # bug #629660
+ #tests/dd/no-allocate.sh
+
+ # bug #675802
+ tests/env/env-S
+ tests/env/env-S.pl
+
+ # bug #413621 and bug #548250
+ tests/du/long-from-unreadable.sh
+ tests/ls/removed-directory
+ tests/ls/removed-directory.sh
+ tests/ls/stat-free-symlinks
+ tests/ls/stat-free-symlinks.sh
+ tests/rm/deep-2
+ tests/rm/deep-2.sh
+
+ # We have a patch which fixes this (bug #259876)
+ #tests/touch/not-owner
+ #tests/touch/not-owner.sh
+ )
+
+ # This test is flaky (bug #910640).
+ cat > tests/tty/tty-eof.pl <<-EOF || die
+ #!/usr/bin/perl
+ exit 77;
+ EOF
+
+ # We set DISABLE_HARD_ERRORS because some of the tests hard error-out
+ # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed
+ # to downgrade them to FAIL.
+ emake -k check \
+ VERBOSE=yes \
+ DISABLE_HARD_ERRORS=yes \
+ XFAIL_TESTS="${xfail_tests[*]}"
+}
+
+src_install() {
+ default
+
+ insinto /etc
+ newins src/dircolors.hin DIR_COLORS
+
+ if use split-usr ; then
+ cd "${ED}"/usr/bin || die
+ dodir /bin
+
+ # Move critical binaries into /bin (required by FHS)
+ local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
+ mkdir mknod mv pwd rm rmdir stty sync true uname"
+ mv ${fhs} ../../bin/ || die "Could not move FHS bins!"
+
+ if use hostname ; then
+ mv hostname ../../bin/ || die
+ fi
+
+ if use kill ; then
+ mv kill ../../bin/ || die
+ fi
+
+ # Move critical binaries into /bin (common scripts)
+ # (Why are these required for booting?)
+ local com="basename chroot cut dir dirname du env expr head mkfifo
+ mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
+ mv ${com} ../../bin/ || die "Could not move common bins!"
+
+ # Create a symlink for uname in /usr/bin/ since autotools require it.
+ # (Other than uname, we need to figure out why we are
+ # creating symlinks for these in /usr/bin instead of leaving
+ # the files there in the first place...)
+ local x
+ for x in ${com} uname ; do
+ dosym ../../bin/${x} /usr/bin/${x}
+ done
+ fi
+}
+
+pkg_postinst() {
+ ewarn "Make sure you run 'hash -r' in your active shells."
+ ewarn "You should also re-source your shell settings for LS_COLORS"
+ ewarn " changes, such as: source /etc/profile"
+}
diff --git a/sys-apps/coreutils/coreutils-9.4.ebuild b/sys-apps/coreutils/coreutils-9.4.ebuild
new file mode 100644
index 000000000000..7f7d258299b7
--- /dev/null
+++ b/sys-apps/coreutils/coreutils-9.4.ebuild
@@ -0,0 +1,306 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils
+# The upstream coreutils maintainers also maintain the package in Fedora and may
+# backport fixes which we want to pick up.
+#
+# Also recommend subscribing to the coreutils and bug-coreutils MLs.
+
+PYTHON_COMPAT=( python3_{10..11} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc
+inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
+
+MY_PATCH="${PN}-9.4-patches"
+DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
+HOMEPAGE="https://www.gnu.org/software/coreutils/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ # Note: could put this in devspace, but if it's gone, we don't want
+ # it in tree anyway. It's just for testing.
+ MY_SNAPSHOT="$(ver_cut 1-2).156-b3afb"
+ SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )"
+ S="${WORKDIR}"/${PN}-${MY_SNAPSHOT}
+else
+ SRC_URI="
+ mirror://gnu/${PN}/${P}.tar.xz
+ verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )
+ "
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
+fi
+
+SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test vanilla xattr"
+RESTRICT="!test? ( test )"
+
+LIB_DEPEND="
+ acl? ( sys-apps/acl[static-libs] )
+ caps? ( sys-libs/libcap )
+ gmp? ( dev-libs/gmp:=[static-libs] )
+ openssl? ( dev-libs/openssl:=[static-libs] )
+ xattr? ( sys-apps/attr[static-libs] )
+"
+RDEPEND="
+ !static? ( ${LIB_DEPEND//\[static-libs]} )
+ selinux? ( sys-libs/libselinux )
+ nls? ( virtual/libintl )
+"
+DEPEND="
+ ${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+"
+BDEPEND="
+ app-arch/xz-utils
+ dev-lang/perl
+ test? (
+ dev-debug/strace
+ dev-lang/perl
+ dev-perl/Expect
+ ${PYTHON_DEPS}
+ )
+ verify-sig? ( sec-keys/openpgp-keys-coreutils )
+"
+RDEPEND+="
+ hostname? ( !sys-apps/net-tools[hostname] )
+ kill? (
+ !sys-apps/util-linux[kill]
+ !sys-process/procps[kill]
+ )
+ !<sys-apps/util-linux-2.13
+ !<sys-apps/sandbox-2.10-r4
+ !sys-apps/stat
+ !net-mail/base64
+ !sys-apps/mktemp
+ !<app-forensics/tct-1.18-r1
+ !<net-fs/netatalk-2.0.3-r4
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # gnulib FPs (bug #898370)
+ unreachable MIN alignof static_assert
+)
+
+pkg_setup() {
+ if use test ; then
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+
+ cd "${S}" || die
+ ./bootstrap || die
+
+ sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die
+ elif use verify-sig ; then
+ # Needed for downloaded patch (which is unsigned, which is fine)
+ verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig}
+ fi
+
+ default
+}
+
+src_prepare() {
+ # TODO: past 2025, we may need to add our own hack for bug #907474.
+ local PATCHES=(
+ # Upstream patches
+ "${FILESDIR}"/${P}-gnulib-openssl-1.1.patch
+ )
+
+ if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then
+ PATCHES+=( "${WORKDIR}"/${MY_PATCH} )
+ fi
+
+ default
+
+ # Since we've patched many .c files, the make process will try to
+ # re-build the manpages by running `./bin --help`. When doing a
+ # cross-compile, we can't do that since 'bin' isn't a native bin.
+ #
+ # Also, it's not like we changed the usage on any of these things,
+ # so let's just update the timestamps and skip the help2man step.
+ set -- man/*.x
+ touch ${@/%x/1} || die
+
+ # Avoid perl dep for compiled in dircolors default (bug #348642)
+ if ! has_version dev-lang/perl ; then
+ touch src/dircolors.h || die
+ touch ${@/%x/1} || die
+ fi
+}
+
+src_configure() {
+ # TODO: in future (>9.4?), we may want to wire up USE=systemd:
+ # still experimental at the moment, but:
+ # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0
+ local myconf=(
+ --with-packager="Gentoo"
+ --with-packager-version="${PVR} (p${PATCH_VER:-0})"
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+ # kill/uptime - procps
+ # groups/su - shadow
+ # hostname - net-tools
+ --enable-install-program="arch,$(usev hostname),$(usev kill)"
+ --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
+ $(usev !caps --disable-libcap)
+ $(use_enable nls)
+ $(use_enable acl)
+ $(use_enable multicall single-binary)
+ $(use_enable xattr)
+ $(use_with gmp libgmp)
+ $(use_with openssl)
+ )
+
+ if use gmp ; then
+ myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr )
+ fi
+
+ if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
+ # bug #311569
+ export fu_cv_sys_stat_statfs2_bsize=yes
+ # bug #416629
+ export gl_cv_func_realpath_works=yes
+ fi
+
+ # bug #409919
+ export gl_cv_func_mknod_works=yes
+
+ if use static ; then
+ append-ldflags -static
+ # bug #321821
+ sed -i '/elf_sys=yes/s:yes:no:' configure || die
+ fi
+
+ if ! use selinux ; then
+ # bug #301782
+ export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ # Non-root tests will fail if the full path isn't
+ # accessible to non-root users
+ chmod -R go-w "${WORKDIR}" || die
+ chmod a+rx "${WORKDIR}" || die
+
+ # coreutils tests like to do `mount` and such with temp dirs,
+ # so make sure:
+ # - /etc/mtab is writable (bug #265725)
+ # - /dev/loop* can be mounted (bug #269758)
+ mkdir -p "${T}"/mount-wrappers || die
+ mkwrap() {
+ local w ww
+ for w in "${@}" ; do
+ ww="${T}/mount-wrappers/${w}"
+ cat <<-EOF > "${ww}"
+ #!${EPREFIX}/bin/sh
+ exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@"
+ EOF
+ chmod a+rx "${ww}" || die
+ done
+ }
+ mkwrap mount umount
+
+ addwrite /dev/full
+
+ #local -x RUN_EXPENSIVE_TESTS="yes"
+ #local -x COREUTILS_GROUPS="portage wheel"
+ local -x PATH="${T}/mount-wrappers:${PATH}"
+ local -x gl_public_submodule_commit=
+
+ local xfail_tests=(
+ # bug #629660
+ #tests/dd/no-allocate.sh
+
+ # bug #675802
+ tests/env/env-S
+ tests/env/env-S.pl
+
+ # bug #413621 and bug #548250
+ tests/du/long-from-unreadable.sh
+ tests/ls/removed-directory
+ tests/ls/removed-directory.sh
+ tests/ls/stat-free-symlinks
+ tests/ls/stat-free-symlinks.sh
+ tests/rm/deep-2
+ tests/rm/deep-2.sh
+
+ # We have a patch which fixes this (bug #259876)
+ #tests/touch/not-owner
+ #tests/touch/not-owner.sh
+ )
+
+ # This test is flaky (bug #910640).
+ cat > tests/tty/tty-eof.pl <<-EOF || die
+ #!/usr/bin/perl
+ exit 77;
+ EOF
+
+ # We set DISABLE_HARD_ERRORS because some of the tests hard error-out
+ # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed
+ # to downgrade them to FAIL.
+ emake -k check \
+ VERBOSE=yes \
+ DISABLE_HARD_ERRORS=yes \
+ XFAIL_TESTS="${xfail_tests[*]}"
+}
+
+src_install() {
+ default
+
+ insinto /etc
+ newins src/dircolors.hin DIR_COLORS
+
+ if use split-usr ; then
+ cd "${ED}"/usr/bin || die
+ dodir /bin
+
+ # Move critical binaries into /bin (required by FHS)
+ local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
+ mkdir mknod mv pwd rm rmdir stty sync true uname"
+ mv ${fhs} ../../bin/ || die "Could not move FHS bins!"
+
+ if use hostname ; then
+ mv hostname ../../bin/ || die
+ fi
+
+ if use kill ; then
+ mv kill ../../bin/ || die
+ fi
+
+ # Move critical binaries into /bin (common scripts)
+ # (Why are these required for booting?)
+ local com="basename chroot cut dir dirname du env expr head mkfifo
+ mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
+ mv ${com} ../../bin/ || die "Could not move common bins!"
+
+ # Create a symlink for uname in /usr/bin/ since autotools require it.
+ # (Other than uname, we need to figure out why we are
+ # creating symlinks for these in /usr/bin instead of leaving
+ # the files there in the first place...)
+ local x
+ for x in ${com} uname ; do
+ dosym ../../bin/${x} /usr/bin/${x}
+ done
+ fi
+}
+
+pkg_postinst() {
+ ewarn "Make sure you run 'hash -r' in your active shells."
+ ewarn "You should also re-source your shell settings for LS_COLORS"
+ ewarn " changes, such as: source /etc/profile"
+}
diff --git a/sys-apps/coreutils/coreutils-9.5.ebuild b/sys-apps/coreutils/coreutils-9.5.ebuild
new file mode 100644
index 000000000000..187e8ba621a9
--- /dev/null
+++ b/sys-apps/coreutils/coreutils-9.5.ebuild
@@ -0,0 +1,305 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils
+# The upstream coreutils maintainers also maintain the package in Fedora and may
+# backport fixes which we want to pick up.
+#
+# Also recommend subscribing to the coreutils and bug-coreutils MLs.
+
+PYTHON_COMPAT=( python3_{10..12} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc
+inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
+
+MY_PATCH="${PN}-9.5-patches"
+DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
+HOMEPAGE="https://www.gnu.org/software/coreutils/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ # Note: could put this in devspace, but if it's gone, we don't want
+ # it in tree anyway. It's just for testing.
+ MY_SNAPSHOT="$(ver_cut 1-2).185-541b02"
+ SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )"
+ S="${WORKDIR}"/${PN}-${MY_SNAPSHOT}
+else
+ SRC_URI="
+ mirror://gnu/${PN}/${P}.tar.xz
+ verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )
+ "
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+fi
+
+SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test vanilla xattr"
+RESTRICT="!test? ( test )"
+
+LIB_DEPEND="
+ acl? ( sys-apps/acl[static-libs] )
+ caps? ( sys-libs/libcap )
+ gmp? ( dev-libs/gmp:=[static-libs] )
+ openssl? ( dev-libs/openssl:=[static-libs] )
+ xattr? ( sys-apps/attr[static-libs] )
+"
+RDEPEND="
+ !static? ( ${LIB_DEPEND//\[static-libs]} )
+ selinux? ( sys-libs/libselinux )
+ nls? ( virtual/libintl )
+"
+DEPEND="
+ ${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+"
+BDEPEND="
+ app-arch/xz-utils
+ dev-lang/perl
+ test? (
+ dev-debug/strace
+ dev-lang/perl
+ dev-perl/Expect
+ ${PYTHON_DEPS}
+ )
+ verify-sig? ( sec-keys/openpgp-keys-coreutils )
+"
+RDEPEND+="
+ hostname? ( !sys-apps/net-tools[hostname] )
+ kill? (
+ !sys-apps/util-linux[kill]
+ !sys-process/procps[kill]
+ )
+ !<sys-apps/util-linux-2.13
+ !<sys-apps/sandbox-2.10-r4
+ !sys-apps/stat
+ !net-mail/base64
+ !sys-apps/mktemp
+ !<app-forensics/tct-1.18-r1
+ !<net-fs/netatalk-2.0.3-r4
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # gnulib FPs (bug #898370)
+ unreachable MIN alignof static_assert
+)
+
+pkg_setup() {
+ if use test ; then
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+
+ cd "${S}" || die
+ ./bootstrap || die
+
+ sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die
+ elif use verify-sig ; then
+ # Needed for downloaded patch (which is unsigned, which is fine)
+ verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig}
+ fi
+
+ default
+}
+
+src_prepare() {
+ # TODO: past 2025, we may need to add our own hack for bug #907474.
+ local PATCHES=(
+ # Upstream patches
+ )
+
+ if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then
+ PATCHES+=( "${WORKDIR}"/${MY_PATCH} )
+ fi
+
+ default
+
+ # Since we've patched many .c files, the make process will try to
+ # re-build the manpages by running `./bin --help`. When doing a
+ # cross-compile, we can't do that since 'bin' isn't a native bin.
+ #
+ # Also, it's not like we changed the usage on any of these things,
+ # so let's just update the timestamps and skip the help2man step.
+ set -- man/*.x
+ touch ${@/%x/1} || die
+
+ # Avoid perl dep for compiled in dircolors default (bug #348642)
+ if ! has_version dev-lang/perl ; then
+ touch src/dircolors.h || die
+ touch ${@/%x/1} || die
+ fi
+}
+
+src_configure() {
+ # TODO: in future (>9.4?), we may want to wire up USE=systemd:
+ # still experimental at the moment, but:
+ # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0
+ local myconf=(
+ --with-packager="Gentoo"
+ --with-packager-version="${PVR} (p${PATCH_VER:-0})"
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+ # kill/uptime - procps
+ # groups/su - shadow
+ # hostname - net-tools
+ --enable-install-program="arch,$(usev hostname),$(usev kill)"
+ --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
+ $(usev !caps --disable-libcap)
+ $(use_enable nls)
+ $(use_enable acl)
+ $(use_enable multicall single-binary)
+ $(use_enable xattr)
+ $(use_with gmp libgmp)
+ $(use_with openssl)
+ )
+
+ if use gmp ; then
+ myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr )
+ fi
+
+ if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
+ # bug #311569
+ export fu_cv_sys_stat_statfs2_bsize=yes
+ # bug #416629
+ export gl_cv_func_realpath_works=yes
+ fi
+
+ # bug #409919
+ export gl_cv_func_mknod_works=yes
+
+ if use static ; then
+ append-ldflags -static
+ # bug #321821
+ sed -i '/elf_sys=yes/s:yes:no:' configure || die
+ fi
+
+ if ! use selinux ; then
+ # bug #301782
+ export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ # Non-root tests will fail if the full path isn't
+ # accessible to non-root users
+ chmod -R go-w "${WORKDIR}" || die
+ chmod a+rx "${WORKDIR}" || die
+
+ # coreutils tests like to do `mount` and such with temp dirs,
+ # so make sure:
+ # - /etc/mtab is writable (bug #265725)
+ # - /dev/loop* can be mounted (bug #269758)
+ mkdir -p "${T}"/mount-wrappers || die
+ mkwrap() {
+ local w ww
+ for w in "${@}" ; do
+ ww="${T}/mount-wrappers/${w}"
+ cat <<-EOF > "${ww}"
+ #!${EPREFIX}/bin/sh
+ exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@"
+ EOF
+ chmod a+rx "${ww}" || die
+ done
+ }
+ mkwrap mount umount
+
+ addwrite /dev/full
+
+ #local -x RUN_EXPENSIVE_TESTS="yes"
+ #local -x COREUTILS_GROUPS="portage wheel"
+ local -x PATH="${T}/mount-wrappers:${PATH}"
+ local -x gl_public_submodule_commit=
+
+ local xfail_tests=(
+ # bug #629660
+ #tests/dd/no-allocate.sh
+
+ # bug #675802
+ tests/env/env-S
+ tests/env/env-S.pl
+
+ # bug #413621 and bug #548250
+ tests/du/long-from-unreadable.sh
+ tests/ls/removed-directory
+ tests/ls/removed-directory.sh
+ tests/ls/stat-free-symlinks
+ tests/ls/stat-free-symlinks.sh
+ tests/rm/deep-2
+ tests/rm/deep-2.sh
+
+ # We have a patch which fixes this (bug #259876)
+ #tests/touch/not-owner
+ #tests/touch/not-owner.sh
+ )
+
+ # This test is flaky (bug #910640).
+ cat > tests/tty/tty-eof.pl <<-EOF || die
+ #!/usr/bin/perl
+ exit 77;
+ EOF
+
+ # We set DISABLE_HARD_ERRORS because some of the tests hard error-out
+ # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed
+ # to downgrade them to FAIL.
+ emake -k check \
+ VERBOSE=yes \
+ DISABLE_HARD_ERRORS=yes \
+ XFAIL_TESTS="${xfail_tests[*]}"
+}
+
+src_install() {
+ default
+
+ insinto /etc
+ newins src/dircolors.hin DIR_COLORS
+
+ if use split-usr ; then
+ cd "${ED}"/usr/bin || die
+ dodir /bin
+
+ # Move critical binaries into /bin (required by FHS)
+ local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
+ mkdir mknod mv pwd rm rmdir stty sync true uname"
+ mv ${fhs} ../../bin/ || die "Could not move FHS bins!"
+
+ if use hostname ; then
+ mv hostname ../../bin/ || die
+ fi
+
+ if use kill ; then
+ mv kill ../../bin/ || die
+ fi
+
+ # Move critical binaries into /bin (common scripts)
+ # (Why are these required for booting?)
+ local com="basename chroot cut dir dirname du env expr head mkfifo
+ mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
+ mv ${com} ../../bin/ || die "Could not move common bins!"
+
+ # Create a symlink for uname in /usr/bin/ since autotools require it.
+ # (Other than uname, we need to figure out why we are
+ # creating symlinks for these in /usr/bin instead of leaving
+ # the files there in the first place...)
+ local x
+ for x in ${com} uname ; do
+ dosym ../../bin/${x} /usr/bin/${x}
+ done
+ fi
+}
+
+pkg_postinst() {
+ ewarn "Make sure you run 'hash -r' in your active shells."
+ ewarn "You should also re-source your shell settings for LS_COLORS"
+ ewarn " changes, such as: source /etc/profile"
+}
diff --git a/sys-apps/coreutils/coreutils-9999.ebuild b/sys-apps/coreutils/coreutils-9999.ebuild
new file mode 100644
index 000000000000..187e8ba621a9
--- /dev/null
+++ b/sys-apps/coreutils/coreutils-9999.ebuild
@@ -0,0 +1,305 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Try to keep an eye on Fedora's packaging: https://src.fedoraproject.org/rpms/coreutils
+# The upstream coreutils maintainers also maintain the package in Fedora and may
+# backport fixes which we want to pick up.
+#
+# Also recommend subscribing to the coreutils and bug-coreutils MLs.
+
+PYTHON_COMPAT=( python3_{10..12} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/coreutils.asc
+inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
+
+MY_PATCH="${PN}-9.5-patches"
+DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)"
+HOMEPAGE="https://www.gnu.org/software/coreutils/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/coreutils.git"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ # Note: could put this in devspace, but if it's gone, we don't want
+ # it in tree anyway. It's just for testing.
+ MY_SNAPSHOT="$(ver_cut 1-2).185-541b02"
+ SRC_URI="https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz -> ${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.pixelbeat.org/cu/coreutils-${MY_SNAPSHOT}.tar.xz.sig -> ${P}.tar.xz.sig )"
+ S="${WORKDIR}"/${PN}-${MY_SNAPSHOT}
+else
+ SRC_URI="
+ mirror://gnu/${PN}/${P}.tar.xz
+ verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )
+ "
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+fi
+
+SRC_URI+=" !vanilla? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH}.tar.xz )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="acl caps gmp hostname kill multicall nls +openssl selinux +split-usr static test vanilla xattr"
+RESTRICT="!test? ( test )"
+
+LIB_DEPEND="
+ acl? ( sys-apps/acl[static-libs] )
+ caps? ( sys-libs/libcap )
+ gmp? ( dev-libs/gmp:=[static-libs] )
+ openssl? ( dev-libs/openssl:=[static-libs] )
+ xattr? ( sys-apps/attr[static-libs] )
+"
+RDEPEND="
+ !static? ( ${LIB_DEPEND//\[static-libs]} )
+ selinux? ( sys-libs/libselinux )
+ nls? ( virtual/libintl )
+"
+DEPEND="
+ ${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+"
+BDEPEND="
+ app-arch/xz-utils
+ dev-lang/perl
+ test? (
+ dev-debug/strace
+ dev-lang/perl
+ dev-perl/Expect
+ ${PYTHON_DEPS}
+ )
+ verify-sig? ( sec-keys/openpgp-keys-coreutils )
+"
+RDEPEND+="
+ hostname? ( !sys-apps/net-tools[hostname] )
+ kill? (
+ !sys-apps/util-linux[kill]
+ !sys-process/procps[kill]
+ )
+ !<sys-apps/util-linux-2.13
+ !<sys-apps/sandbox-2.10-r4
+ !sys-apps/stat
+ !net-mail/base64
+ !sys-apps/mktemp
+ !<app-forensics/tct-1.18-r1
+ !<net-fs/netatalk-2.0.3-r4
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # gnulib FPs (bug #898370)
+ unreachable MIN alignof static_assert
+)
+
+pkg_setup() {
+ if use test ; then
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+
+ cd "${S}" || die
+ ./bootstrap || die
+
+ sed -i -e "s:submodule-checks ?= no-submodule-changes public-submodule-commit:submodule-checks ?= no-submodule-changes:" gnulib/top/maint.mk || die
+ elif use verify-sig ; then
+ # Needed for downloaded patch (which is unsigned, which is fine)
+ verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig}
+ fi
+
+ default
+}
+
+src_prepare() {
+ # TODO: past 2025, we may need to add our own hack for bug #907474.
+ local PATCHES=(
+ # Upstream patches
+ )
+
+ if ! use vanilla && [[ -d "${WORKDIR}"/${MY_PATCH} ]] ; then
+ PATCHES+=( "${WORKDIR}"/${MY_PATCH} )
+ fi
+
+ default
+
+ # Since we've patched many .c files, the make process will try to
+ # re-build the manpages by running `./bin --help`. When doing a
+ # cross-compile, we can't do that since 'bin' isn't a native bin.
+ #
+ # Also, it's not like we changed the usage on any of these things,
+ # so let's just update the timestamps and skip the help2man step.
+ set -- man/*.x
+ touch ${@/%x/1} || die
+
+ # Avoid perl dep for compiled in dircolors default (bug #348642)
+ if ! has_version dev-lang/perl ; then
+ touch src/dircolors.h || die
+ touch ${@/%x/1} || die
+ fi
+}
+
+src_configure() {
+ # TODO: in future (>9.4?), we may want to wire up USE=systemd:
+ # still experimental at the moment, but:
+ # https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=85edb4afbd119fb69a0d53e1beb71f46c9525dd0
+ local myconf=(
+ --with-packager="Gentoo"
+ --with-packager-version="${PVR} (p${PATCH_VER:-0})"
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+ # kill/uptime - procps
+ # groups/su - shadow
+ # hostname - net-tools
+ --enable-install-program="arch,$(usev hostname),$(usev kill)"
+ --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime"
+ $(usev !caps --disable-libcap)
+ $(use_enable nls)
+ $(use_enable acl)
+ $(use_enable multicall single-binary)
+ $(use_enable xattr)
+ $(use_with gmp libgmp)
+ $(use_with openssl)
+ )
+
+ if use gmp ; then
+ myconf+=( --with-libgmp-prefix="${ESYSROOT}"/usr )
+ fi
+
+ if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then
+ # bug #311569
+ export fu_cv_sys_stat_statfs2_bsize=yes
+ # bug #416629
+ export gl_cv_func_realpath_works=yes
+ fi
+
+ # bug #409919
+ export gl_cv_func_mknod_works=yes
+
+ if use static ; then
+ append-ldflags -static
+ # bug #321821
+ sed -i '/elf_sys=yes/s:yes:no:' configure || die
+ fi
+
+ if ! use selinux ; then
+ # bug #301782
+ export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ # Non-root tests will fail if the full path isn't
+ # accessible to non-root users
+ chmod -R go-w "${WORKDIR}" || die
+ chmod a+rx "${WORKDIR}" || die
+
+ # coreutils tests like to do `mount` and such with temp dirs,
+ # so make sure:
+ # - /etc/mtab is writable (bug #265725)
+ # - /dev/loop* can be mounted (bug #269758)
+ mkdir -p "${T}"/mount-wrappers || die
+ mkwrap() {
+ local w ww
+ for w in "${@}" ; do
+ ww="${T}/mount-wrappers/${w}"
+ cat <<-EOF > "${ww}"
+ #!${EPREFIX}/bin/sh
+ exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@"
+ EOF
+ chmod a+rx "${ww}" || die
+ done
+ }
+ mkwrap mount umount
+
+ addwrite /dev/full
+
+ #local -x RUN_EXPENSIVE_TESTS="yes"
+ #local -x COREUTILS_GROUPS="portage wheel"
+ local -x PATH="${T}/mount-wrappers:${PATH}"
+ local -x gl_public_submodule_commit=
+
+ local xfail_tests=(
+ # bug #629660
+ #tests/dd/no-allocate.sh
+
+ # bug #675802
+ tests/env/env-S
+ tests/env/env-S.pl
+
+ # bug #413621 and bug #548250
+ tests/du/long-from-unreadable.sh
+ tests/ls/removed-directory
+ tests/ls/removed-directory.sh
+ tests/ls/stat-free-symlinks
+ tests/ls/stat-free-symlinks.sh
+ tests/rm/deep-2
+ tests/rm/deep-2.sh
+
+ # We have a patch which fixes this (bug #259876)
+ #tests/touch/not-owner
+ #tests/touch/not-owner.sh
+ )
+
+ # This test is flaky (bug #910640).
+ cat > tests/tty/tty-eof.pl <<-EOF || die
+ #!/usr/bin/perl
+ exit 77;
+ EOF
+
+ # We set DISABLE_HARD_ERRORS because some of the tests hard error-out
+ # because of sandbox. They're skipped above but DISABLE_HARD_ERRORS is needed
+ # to downgrade them to FAIL.
+ emake -k check \
+ VERBOSE=yes \
+ DISABLE_HARD_ERRORS=yes \
+ XFAIL_TESTS="${xfail_tests[*]}"
+}
+
+src_install() {
+ default
+
+ insinto /etc
+ newins src/dircolors.hin DIR_COLORS
+
+ if use split-usr ; then
+ cd "${ED}"/usr/bin || die
+ dodir /bin
+
+ # Move critical binaries into /bin (required by FHS)
+ local fhs="cat chgrp chmod chown cp date dd df echo false ln ls
+ mkdir mknod mv pwd rm rmdir stty sync true uname"
+ mv ${fhs} ../../bin/ || die "Could not move FHS bins!"
+
+ if use hostname ; then
+ mv hostname ../../bin/ || die
+ fi
+
+ if use kill ; then
+ mv kill ../../bin/ || die
+ fi
+
+ # Move critical binaries into /bin (common scripts)
+ # (Why are these required for booting?)
+ local com="basename chroot cut dir dirname du env expr head mkfifo
+ mktemp readlink seq sleep sort tail touch tr tty vdir wc yes"
+ mv ${com} ../../bin/ || die "Could not move common bins!"
+
+ # Create a symlink for uname in /usr/bin/ since autotools require it.
+ # (Other than uname, we need to figure out why we are
+ # creating symlinks for these in /usr/bin instead of leaving
+ # the files there in the first place...)
+ local x
+ for x in ${com} uname ; do
+ dosym ../../bin/${x} /usr/bin/${x}
+ done
+ fi
+}
+
+pkg_postinst() {
+ ewarn "Make sure you run 'hash -r' in your active shells."
+ ewarn "You should also re-source your shell settings for LS_COLORS"
+ ewarn " changes, such as: source /etc/profile"
+}
diff --git a/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch b/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch
deleted file mode 100644
index f81ea13776b3..000000000000
--- a/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Skip tests known to fail when running under Gentoo sandbox.
-
---- a/tests/du/long-from-unreadable.sh
-+++ b/tests/du/long-from-unreadable.sh
-@@ -29,6 +29,9 @@
- # unnecessarily to using FTS_NOCHDIR mode in this corner case.
-
- . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
-+# Avoid #413621 until #548250 is resolved
-+test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)"
-+
- print_ver_ du
-
- require_perl_
---- a/tests/ls/stat-free-symlinks.sh
-+++ b/tests/ls/stat-free-symlinks.sh
-@@ -17,6 +17,9 @@
- # along with this program. If not, see <https://www.gnu.org/licenses/>.
-
- . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
-+# Avoid #413621 until #548250 is resolved
-+test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)"
-+
- print_ver_ ls
- require_strace_ stat
-
---- a/tests/misc/env-S.pl
-+++ b/tests/misc/env-S.pl
-@@ -30,6 +30,11 @@ $env = $1;
- # Turn off localization of executable's output.
- @ENV{qw(LANGUAGE LANG LC_ALL)} = ('C') x 3;
-
-+# Skip if sandbox is enabled
-+if ($ENV{SANDBOX_ACTIVE}) {
-+ CuSkip::skip "Gentoo: Test known bad under sandbox (#675802)\n";
-+}
-+
- my @Tests =
- (
- # Test combination of -S and regular arguments
---- a/tests/rm/deep-2.sh
-+++ b/tests/rm/deep-2.sh
-@@ -17,6 +17,9 @@
- # along with this program. If not, see <https://www.gnu.org/licenses/>.
-
- . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
-+# Avoid #413621 until #548250 is resolved
-+test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)"
-+
- print_ver_ rm
- require_perl_
-
diff --git a/sys-apps/coreutils/files/coreutils-9.4-CVE-2024-0684.patch b/sys-apps/coreutils/files/coreutils-9.4-CVE-2024-0684.patch
new file mode 100644
index 000000000000..293919a006fe
--- /dev/null
+++ b/sys-apps/coreutils/files/coreutils-9.4-CVE-2024-0684.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/922474
+https://www.openwall.com/lists/oss-security/2024/01/18/2
+https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=c4c5ed8f4e9cd55a12966d4f520e3a13101637d9
+
+From c4c5ed8f4e9cd55a12966d4f520e3a13101637d9 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Tue, 16 Jan 2024 13:48:32 -0800
+Subject: split: do not shrink hold buffer
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* src/split.c (line_bytes_split): Do not shrink hold buffer.
+If it’s large for this batch it’s likely to be large for the next
+batch, and for ‘split’ it’s not worth the complexity/CPU hassle to
+shrink it. Do not assume hold_size can be bufsize.
+--- a/src/split.c
++++ b/src/split.c
+@@ -809,10 +809,7 @@ line_bytes_split (intmax_t n_bytes, char *buf, idx_t bufsize)
+ {
+ cwrite (n_out == 0, hold, n_hold);
+ n_out += n_hold;
+- if (n_hold > bufsize)
+- hold = xirealloc (hold, bufsize);
+ n_hold = 0;
+- hold_size = bufsize;
+ }
+
+ /* Output to eol if present. */
+--
+cgit v1.1
diff --git a/sys-apps/coreutils/files/coreutils-9.4-gnulib-clang-18-c23-stdckdint.patch b/sys-apps/coreutils/files/coreutils-9.4-gnulib-clang-18-c23-stdckdint.patch
new file mode 100644
index 000000000000..44982a17a78c
--- /dev/null
+++ b/sys-apps/coreutils/files/coreutils-9.4-gnulib-clang-18-c23-stdckdint.patch
@@ -0,0 +1,30 @@
+https://bugs.gentoo.org/926349
+https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=67c298c36f6
+
+From 67c298c36f69b6906840b7584be06b7b5f33f829 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Tue, 16 Jan 2024 17:21:08 -0800
+Subject: [PATCH] posixtm: pacify clang 18
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf8
+Content-Transfer-Encoding: 8bit
+
+Problem reported by Khem Raj in:
+https://lists.gnu.org/r/bug-gnulib/2024-01/msg00045.html
+* lib/posixtm.c (posixtime): Pacify clang 18 by converting bool to int.
+Arguably this is a bug in draft C2x, since the non-pointer args to
+ckd_add should promote just like any other expressions do;
+but that’s not clang’s fault.
+--- a/lib/posixtm.c
++++ b/lib/posixtm.c
+@@ -191,7 +191,7 @@ posixtime (time_t *p, const char *s, unsigned int syntax_bits)
+ | (tm0.tm_min ^ tm1.tm_min)
+ | (tm0.tm_sec ^ tm1.tm_sec)))
+ {
+- if (ckd_add (&t, t, leapsec))
++ if (ckd_add (&t, t, +leapsec))
+ return false;
+ *p = t;
+ return true;
+--
+2.17.1
diff --git a/sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch b/sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch
new file mode 100644
index 000000000000..3576c7d0d1eb
--- /dev/null
+++ b/sys-apps/coreutils/files/coreutils-9.4-gnulib-openssl-1.1.patch
@@ -0,0 +1,165 @@
+https://bugs.gentoo.org/913368
+https://debbugs.gnu.org/65674
+https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=ce20e238f0b4448a098bd7c076c131edbc759764
+
+From ce20e238f0b4448a098bd7c076c131edbc759764 Mon Sep 17 00:00:00 2001
+From: Bruno Haible <bruno@clisp.org>
+Date: Fri, 1 Sep 2023 12:55:30 +0200
+Subject: crypto/{sha*,md5,sm3}-buffer: Fix --with-openssl (regr. 2023-08-26).
+
+Reported by Agostino Sarubbo via Sam James <sam@gentoo.org> in
+<https://lists.gnu.org/archive/html/bug-gnulib/2023-09/msg00000.html>.
+
+* lib/sha1.h: Test the OpenSSL major version before attempting to
+include <openssl/configuration.h>.
+* lib/sha256.h: Likewise.
+* lib/sha512.h: Likewise.
+* lib/md5.h: Likewise.
+* lib/sm3.h: Likewise.
+--- a/lib/md5.h
++++ b/lib/md5.h
+@@ -33,14 +33,18 @@
+ # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */
+ # endif
+ /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */
+-# include <openssl/configuration.h>
+-# if (OPENSSL_CONFIGURED_API \
+- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
+- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
+- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
+- + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
+-# undef HAVE_OPENSSL_MD5
+-# else
++# include <openssl/opensslv.h>
++# if OPENSSL_VERSION_MAJOR >= 3
++# include <openssl/configuration.h>
++# if (OPENSSL_CONFIGURED_API \
++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
++# undef HAVE_OPENSSL_MD5
++# endif
++# endif
++# if HAVE_OPENSSL_MD5
+ # include <openssl/md5.h>
+ # endif
+ # endif
+--- a/lib/sha1.h
++++ b/lib/sha1.h
+@@ -32,14 +32,18 @@
+ # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */
+ # endif
+ /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */
+-# include <openssl/configuration.h>
+-# if (OPENSSL_CONFIGURED_API \
+- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
+- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
+- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
+- + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
+-# undef HAVE_OPENSSL_SHA1
+-# else
++# include <openssl/opensslv.h>
++# if OPENSSL_VERSION_MAJOR >= 3
++# include <openssl/configuration.h>
++# if (OPENSSL_CONFIGURED_API \
++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
++# undef HAVE_OPENSSL_SHA1
++# endif
++# endif
++# if HAVE_OPENSSL_SHA1
+ # include <openssl/sha.h>
+ # endif
+ # endif
+--- a/lib/sha256.h
++++ b/lib/sha256.h
+@@ -31,14 +31,18 @@
+ # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */
+ # endif
+ /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */
+-# include <openssl/configuration.h>
+-# if (OPENSSL_CONFIGURED_API \
+- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
+- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
+- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
+- + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
+-# undef HAVE_OPENSSL_SHA256
+-# else
++# include <openssl/opensslv.h>
++# if OPENSSL_VERSION_MAJOR >= 3
++# include <openssl/configuration.h>
++# if (OPENSSL_CONFIGURED_API \
++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
++# undef HAVE_OPENSSL_SHA256
++# endif
++# endif
++# if HAVE_OPENSSL_SHA256
+ # include <openssl/sha.h>
+ # endif
+ # endif
+--- a/lib/sha512.h
++++ b/lib/sha512.h
+@@ -31,14 +31,18 @@
+ # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */
+ # endif
+ /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */
+-# include <openssl/configuration.h>
+-# if (OPENSSL_CONFIGURED_API \
+- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
+- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
+- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
+- + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
+-# undef HAVE_OPENSSL_SHA512
+-# else
++# include <openssl/opensslv.h>
++# if OPENSSL_VERSION_MAJOR >= 3
++# include <openssl/configuration.h>
++# if (OPENSSL_CONFIGURED_API \
++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
++# undef HAVE_OPENSSL_SHA512
++# endif
++# endif
++# if HAVE_OPENSSL_SHA512
+ # include <openssl/sha.h>
+ # endif
+ # endif
+--- a/lib/sm3.h
++++ b/lib/sm3.h
+@@ -40,14 +40,18 @@
+ # define OPENSSL_API_COMPAT 0x10101000L /* FIXME: Use OpenSSL 1.1+ API. */
+ # endif
+ /* If <openssl/macros.h> would give a compile-time error, don't use OpenSSL. */
+-# include <openssl/configuration.h>
+-# if (OPENSSL_CONFIGURED_API \
+- < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
+- ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
+- + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
+- + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
+-# undef HAVE_OPENSSL_SM3
+-# else
++# include <openssl/opensslv.h>
++# if OPENSSL_VERSION_MAJOR >= 3
++# include <openssl/configuration.h>
++# if (OPENSSL_CONFIGURED_API \
++ < (OPENSSL_API_COMPAT < 0x900000L ? OPENSSL_API_COMPAT : \
++ ((OPENSSL_API_COMPAT >> 28) & 0xF) * 10000 \
++ + ((OPENSSL_API_COMPAT >> 20) & 0xFF) * 100 \
++ + ((OPENSSL_API_COMPAT >> 12) & 0xFF)))
++# undef HAVE_OPENSSL_SM3
++# endif
++# endif
++# if HAVE_OPENSSL_SM3
+ # include <openssl/sm3.h>
+ # endif
+ # endif
+--
+cgit v1.1
diff --git a/sys-apps/coreutils/metadata.xml b/sys-apps/coreutils/metadata.xml
index 4e46af051b39..1e1f3acef011 100644
--- a/sys-apps/coreutils/metadata.xml
+++ b/sys-apps/coreutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -12,9 +12,11 @@
<flag name="hostname">Build the hostname program</flag>
<flag name="kill">Build the kill program</flag>
<flag name="multicall">Build all tools into a single `coreutils` program akin to busybox to save space</flag>
+ <flag name="openssl">Use openssl libcrypto hash routines for hash functions</flag>
<flag name="split-usr">Enable this if /bin and /usr/bin are separate directories</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:gnu:coreutils</remote-id>
+ <remote-id type="savannah">coreutils</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/cpint/cpint-2.5.3.ebuild b/sys-apps/cpint/cpint-2.5.3.ebuild
index b37f49d86e9e..bd4d469d1d09 100644
--- a/sys-apps/cpint/cpint-2.5.3.ebuild
+++ b/sys-apps/cpint/cpint-2.5.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="http://linuxvm.org/Patches/s390/${PN}${MY_PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="s390"
+KEYWORDS="~s390"
PATCHES=(
"${FILESDIR}"/${P}-build.patch
diff --git a/sys-apps/cpint/metadata.xml b/sys-apps/cpint/metadata.xml
index beb6ce6ed90c..08ce25450ba4 100644
--- a/sys-apps/cpint/metadata.xml
+++ b/sys-apps/cpint/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>s390@gentoo.org</email>
- <name>Gentoo Linux s390 Development</name>
+ <name>s390 architecture team</name>
</maintainer>
</pkgmetadata>
diff --git a/sys-apps/cpu-x/Manifest b/sys-apps/cpu-x/Manifest
new file mode 100644
index 000000000000..15307b475385
--- /dev/null
+++ b/sys-apps/cpu-x/Manifest
@@ -0,0 +1,2 @@
+DIST cpu-x-5.0.2.tar.gz 1975214 BLAKE2B 2b4cccdf96cc789a6c7b8a9e8124b380de681adabcd55cda05b5f0b97661a68feab9a434c1bcb8e092c529502d3472fd7385a7fbe5339fb93f4808ba2546b92d SHA512 3677207af8ea233a5bc1e435f501f4dffbe555486b048f5b51ac818cb458d52ab7ac94830ab83e992772e339de93464b3d4cd92798b8f49a272fd5292484de7e
+DIST cpu-x-5.0.3.tar.gz 1988476 BLAKE2B f1f693d6c7df5f8f342ac8326539febcc95df1ccd154cb013b215ea50d9f8bec70e894d7cbf76f08d454c73a8a2e450296144e9c6af4ed92a07b95df6c705901 SHA512 d9a29a5303101a6c00d9145265d85acec865833f175246bde550ba2dff24a924c1b2de7579b3d8e20aa163092d269af9bbb24e073585d3e18a2c726e48d9be41
diff --git a/sys-apps/cpu-x/cpu-x-5.0.2.ebuild b/sys-apps/cpu-x/cpu-x-5.0.2.ebuild
new file mode 100644
index 000000000000..3f9b4fe3e739
--- /dev/null
+++ b/sys-apps/cpu-x/cpu-x-5.0.2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="CPU-X"
+
+inherit cmake gnome2-utils xdg
+
+DESCRIPTION="A Free software that gathers information on CPU, motherboard and more"
+HOMEPAGE="https://thetumultuousunicornofdarkness.github.io/CPU-X/"
+SRC_URI="https://github.com/TheTumultuousUnicornOfDarkness/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="+cpu force-libstatgrab +gpu gui +ncurses +nls opencl +pci test vulkan"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dev-libs/glib:2
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango
+ force-libstatgrab? ( sys-libs/libstatgrab )
+ !force-libstatgrab? ( sys-process/procps:= )
+ gui? ( dev-cpp/gtkmm:3.0
+ >=x11-libs/gtk+-3.12:3 )
+ cpu? ( >=dev-libs/libcpuid-0.6.0:= )
+ gpu? ( >=media-libs/glfw-3.3
+ media-libs/libglvnd )
+ pci? ( sys-apps/pciutils )
+ ncurses? ( sys-libs/ncurses:=[tinfo] )
+ opencl? ( virtual/opencl )
+ vulkan? ( media-libs/vulkan-loader
+ >=dev-util/vulkan-headers-1.3.151 )
+"
+
+DEPEND="
+ test? (
+ sys-apps/grep[pcre]
+ sys-apps/mawk
+ sys-apps/nawk
+ )
+
+ ${COMMON_DEPEND}
+"
+
+BDEPEND="
+ dev-lang/nasm
+ nls? ( sys-devel/gettext )
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DFORCE_LIBSTATGRAB=$(usex force-libstatgrab)
+ -DWITH_GETTEXT=$(usex nls)
+ -DWITH_GTK=$(usex gui)
+ -DWITH_LIBCPUID=$(usex cpu)
+ -DWITH_LIBGLFW=$(usex gpu)
+ -DWITH_LIBPCI=$(usex pci)
+ -DWITH_LIBSTATGRAB=OFF
+ -DWITH_NCURSES=$(usex ncurses)
+ -DWITH_OPENCL=$(usex opencl)
+ -DWITH_VULKAN=$(usex vulkan)
+ )
+ use gui && mycmakeargs+=( -DGSETTINGS_COMPILE=OFF )
+
+ cmake_src_configure
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
diff --git a/sys-apps/cpu-x/cpu-x-5.0.3.ebuild b/sys-apps/cpu-x/cpu-x-5.0.3.ebuild
new file mode 100644
index 000000000000..8d213e15a20a
--- /dev/null
+++ b/sys-apps/cpu-x/cpu-x-5.0.3.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="CPU-X"
+
+inherit cmake gnome2-utils xdg
+
+DESCRIPTION="A Free software that gathers information on CPU, motherboard and more"
+HOMEPAGE="https://thetumultuousunicornofdarkness.github.io/CPU-X/"
+SRC_URI="https://github.com/TheTumultuousUnicornOfDarkness/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="+cpu force-libstatgrab +gpu gui +ncurses +nls opencl +pci test vulkan"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dev-libs/glib:2
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango
+ force-libstatgrab? ( sys-libs/libstatgrab )
+ !force-libstatgrab? ( sys-process/procps:= )
+ gui? ( dev-cpp/gtkmm:3.0
+ >=x11-libs/gtk+-3.12:3 )
+ cpu? ( >=dev-libs/libcpuid-0.6.0:= )
+ gpu? ( >=media-libs/glfw-3.3
+ media-libs/libglvnd )
+ pci? ( sys-apps/pciutils )
+ ncurses? ( sys-libs/ncurses:=[tinfo] )
+ opencl? ( virtual/opencl )
+ vulkan? ( media-libs/vulkan-loader
+ >=dev-util/vulkan-headers-1.3.151 )
+"
+
+DEPEND="
+ test? (
+ sys-apps/grep[pcre]
+ sys-apps/mawk
+ sys-apps/nawk
+ )
+
+ ${COMMON_DEPEND}
+"
+
+BDEPEND="
+ dev-lang/nasm
+ nls? ( sys-devel/gettext )
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DFORCE_LIBSTATGRAB=$(usex force-libstatgrab)
+ -DWITH_GETTEXT=$(usex nls)
+ -DWITH_GTK=$(usex gui)
+ -DWITH_LIBCPUID=$(usex cpu)
+ -DWITH_LIBGLFW=$(usex gpu)
+ -DWITH_LIBPCI=$(usex pci)
+ -DWITH_LIBSTATGRAB=OFF
+ -DWITH_NCURSES=$(usex ncurses)
+ -DWITH_OPENCL=$(usex opencl)
+ -DWITH_VULKAN=$(usex vulkan)
+ )
+ use gui && mycmakeargs+=( -DGSETTINGS_COMPILE=OFF )
+
+ cmake_src_configure
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
diff --git a/sys-apps/cpu-x/metadata.xml b/sys-apps/cpu-x/metadata.xml
new file mode 100644
index 000000000000..cad187ec83f8
--- /dev/null
+++ b/sys-apps/cpu-x/metadata.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>bkohler@gentoo.org</email>
+ <name>Ben Kohler</name>
+ </maintainer>
+ <longdescription>
+ <pkg>sys-apps/cpu-x</pkg> is similar to CPU-Z (Windows), but, unlike
+ the latter, it is a Free and Open Source software, written in C and
+ designed for GNU/Linux. It can also be used in graphical mode by using
+ <pkg>x11-libs/gtk+</pkg>, than in text-based mode with the use of
+ <pkg>sys-libs/ncurses</pkg>.
+ </longdescription>
+ <longdescription lang="fr">
+ <pkg>sys-apps/cpu-x</pkg> est similaire à CPU-Z (Windows), mais,
+ contrairement à ce dernier, c'est un logiciel Libre et Open Source,
+ écrit en C et concu pour GNU/Linux. Il peut être aussi bien utilisé en
+ mode graphique en utlisant <pkg>x11-libs/gtk+</pkg>, qu'en mode textuel
+ avec l'utilisation de <pkg>sys-libs/ncurses</pkg>.
+ </longdescription>
+ <use>
+ <flag name="cpu">Use the <pkg>dev-libs/libcpuid</pkg> library for CPU info</flag>
+ <flag name="force-libstatgrab">Use <pkg>sys-libs/libstatgrab</pkg> to instead of <pkg>sys-process/procps</pkg></flag>
+ <flag name="gpu">Use the <pkg>media-libs/glfw</pkg> library for GPU info</flag>
+ <flag name="pci">Use the <pkg>sys-apps/pciutils</pkg> library for PCI info</flag>
+ </use>
+ <use lang="fr">
+ <flag name="cpu">Utiliser la bibliothèque <pkg>dev-libs/libcpuid</pkg> pour les informations liées au C.P.U.</flag>
+ <flag name="force-libstatgrab">Utiliser <pkg>sys-libs/libstatgrab</pkg> à la place de <pkg>sys-process/procps</pkg></flag>
+ <flag name="gpu">Utiliser la bibliothèque <pkg>media-libs/glfw</pkg> pour les informations liées au G.P.U.</flag>
+ <flag name="pci">Utiliser la bibliothèque <pkg>sys-apps/pciutils</pkg> pour les informations liées aux bus P.C.I.</flag>
+ </use>
+ <upstream>
+ <maintainer status="active">
+ <name>TheTumultuousUnicornOfDarkness</name>
+ </maintainer>
+ <changelog>https://raw.githubusercontent.com/TheTumultuousUnicornOfDarkness/CPU-X/master/ChangeLog.md</changelog>
+ <doc>https://github.com/TheTumultuousUnicornOfDarkness/CPU-X/wiki/</doc>
+ <bugs-to>https://github.com/TheTumultuousUnicornOfDarkness/CPU-X/issues/</bugs-to>
+ <remote-id type="github">TheTumultuousUnicornOfDarkness/CPU-X</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/cpuid/Manifest b/sys-apps/cpuid/Manifest
index 80ef1cdbb22a..2f8e93ccbfab 100644
--- a/sys-apps/cpuid/Manifest
+++ b/sys-apps/cpuid/Manifest
@@ -1,2 +1,3 @@
-DIST cpuid-20200427.src.tar.gz 115896 BLAKE2B 0c325fe140ffb9e9d1591d414156d280ac6e802eb652f876fcb6888ea4d6cefd485bc6501179a4f7f3db33ca0fe9f64b83214f883b86bda0c8014b81916d893c SHA512 8f943ac517680c8744563f35654f5b5201fde16cfe24264d8ad171ab517b65a6f50dc569789228e095e2b485e5a0d4fe58e2a0d7f199df2b225652689e3a2e83
-DIST cpuid-20201006.src.tar.gz 118994 BLAKE2B 05c547858358a92b0c9270066dc33e08693922e4ba765edcba7aca201811c54074a0cd683edb3e9dedf2bb0fd23682b3cc5725e4067b27ec27e0fe979eb22f56 SHA512 f037c1707b49e92f1bd605ec87a0995ae36215d075bcbadfed1d11f5fefda43391b48f10d2517334574aa7e243f0b73d22f1fcbfe1fb133aaf5bad1046e8ba5e
+DIST cpuid-20230614.src.tar.gz 149777 BLAKE2B 5ebfd7d055f2b67cd158dd6eaa5467a5776170a879a4323e2dc103e8b84f4cf72523d5ae5272d2f89ae6555f597d903bdf149f279f9565bf88a1e26b0e574606 SHA512 46698e5565d1c558e50b9526154489d82ada64ea5dbcebc01e3cd34b79b2b646f324deaf7d63678cd477d227e902437c3ff6c7998b4385ddd373aa1fc76ff70c
+DIST cpuid-20240330.src.tar.gz 154968 BLAKE2B c859b2e66044ce622daf695e951666fbeaad4e529cf764cb86dd7e43837327dc21aaaae98cfd915663560f5b33af1497ee9af9e1e02dba7345456e9aa6948c4a SHA512 a35bcf730a9945df029159f5f851b212fd3c07ab94dfb680d4ebdd541dfbc5fdee1cd269fe0d1f14e9678f78c41c47f2c54621cfe81a93e3b4c5c1194f9be9ee
+DIST cpuid-20240409.src.tar.gz 155607 BLAKE2B 0becfb559137cb4b965b3d9e34c3f6d8875634c6ea46afb4a61c9dabd437c345859dce99c5e05fa54b9945a4d2a001dba14b87825ed2b76344571745c072ae07 SHA512 04b3165d2441e4572754412eda330632bd6c0a2a16df4114231030cb991789ecf5507e1ea52f9ea1c84a43b2d190a95d07a6ee2788d8f8a2a6414da127751a36
diff --git a/sys-apps/cpuid/cpuid-20200427.ebuild b/sys-apps/cpuid/cpuid-20200427.ebuild
deleted file mode 100644
index df1d0117c3b7..000000000000
--- a/sys-apps/cpuid/cpuid-20200427.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Linux tool to dump x86 CPUID information about the CPUs"
-HOMEPAGE="http://www.etallen.com/cpuid.html"
-SRC_URI="http://www.etallen.com/${PN}/${P}.src.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-BDEPEND="dev-lang/perl"
-DEPEND="app-arch/gzip"
-
-DOCS=( "ChangeLog" "FUTURE" )
-
-PATCHES=( "${FILESDIR}/${PN}-20200203-makefile.patch" )
-
-src_prepare() {
- default
-
- tc-export CC
-}
-
-src_install() {
- emake BUILDROOT="${ED}" install
-
- einstalldocs
-}
diff --git a/sys-apps/cpuid/cpuid-20201006.ebuild b/sys-apps/cpuid/cpuid-20201006.ebuild
deleted file mode 100644
index c48d21a156d2..000000000000
--- a/sys-apps/cpuid/cpuid-20201006.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Linux tool to dump x86 CPUID information about the CPUs"
-HOMEPAGE="http://www.etallen.com/cpuid.html"
-SRC_URI="http://www.etallen.com/${PN}/${P}.src.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="dev-lang/perl"
-DEPEND="app-arch/gzip"
-
-DOCS=( "ChangeLog" "FUTURE" )
-
-PATCHES=( "${FILESDIR}/${PN}-20200203-makefile.patch" )
-
-src_prepare() {
- default
-
- tc-export CC
-}
-
-src_install() {
- emake BUILDROOT="${ED}" install
-
- einstalldocs
-}
diff --git a/sys-apps/cpuid/cpuid-20230614-r1.ebuild b/sys-apps/cpuid/cpuid-20230614-r1.ebuild
new file mode 100644
index 000000000000..4b2f6e4279a8
--- /dev/null
+++ b/sys-apps/cpuid/cpuid-20230614-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Linux tool to dump x86 CPUID information about the CPUs"
+HOMEPAGE="http://www.etallen.com/cpuid.html"
+SRC_URI="http://www.etallen.com/${PN}/${P}.src.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+
+BDEPEND="
+ app-alternatives/gzip
+ dev-lang/perl
+"
+
+DOCS=( "ChangeLog" "FUTURE" )
+
+PATCHES=( "${FILESDIR}/${PN}-20220620-makefile.patch" )
+
+src_prepare() {
+ default
+
+ tc-export CC
+}
+
+src_install() {
+ emake BUILDROOT="${ED}" install
+
+ einstalldocs
+}
diff --git a/sys-apps/cpuid/cpuid-20240330-r1.ebuild b/sys-apps/cpuid/cpuid-20240330-r1.ebuild
new file mode 100644
index 000000000000..c2868c0d5525
--- /dev/null
+++ b/sys-apps/cpuid/cpuid-20240330-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Linux tool to dump x86 CPUID information about the CPUs"
+HOMEPAGE="http://www.etallen.com/cpuid.html"
+SRC_URI="http://www.etallen.com/${PN}/${P}.src.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+BDEPEND="
+ app-alternatives/gzip
+ dev-lang/perl
+"
+
+DOCS=( "ChangeLog" "FUTURE" )
+
+PATCHES=( "${FILESDIR}/${PN}-20220620-makefile.patch" )
+
+src_prepare() {
+ default
+
+ tc-export CC
+}
+
+src_install() {
+ emake BUILDROOT="${ED}" install
+
+ einstalldocs
+}
diff --git a/sys-apps/cpuid/cpuid-20240409.ebuild b/sys-apps/cpuid/cpuid-20240409.ebuild
new file mode 100644
index 000000000000..c2868c0d5525
--- /dev/null
+++ b/sys-apps/cpuid/cpuid-20240409.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Linux tool to dump x86 CPUID information about the CPUs"
+HOMEPAGE="http://www.etallen.com/cpuid.html"
+SRC_URI="http://www.etallen.com/${PN}/${P}.src.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+BDEPEND="
+ app-alternatives/gzip
+ dev-lang/perl
+"
+
+DOCS=( "ChangeLog" "FUTURE" )
+
+PATCHES=( "${FILESDIR}/${PN}-20220620-makefile.patch" )
+
+src_prepare() {
+ default
+
+ tc-export CC
+}
+
+src_install() {
+ emake BUILDROOT="${ED}" install
+
+ einstalldocs
+}
diff --git a/sys-apps/cpuid/files/cpuid-20200203-makefile.patch b/sys-apps/cpuid/files/cpuid-20200203-makefile.patch
deleted file mode 100644
index 9cfad5ef594d..000000000000
--- a/sys-apps/cpuid/files/cpuid-20200203-makefile.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -1,11 +1,11 @@
--CFLAGS+=-g
-+CFLAGS+=
- CPPFLAGS?=
- LDFLAGS?=
- ifneq (,$(findstring arch=i386,$(CFLAGS)))
- CISA=-m32
- endif
- CFL=$(CPPFLAGS) $(CFLAGS) $(CISA) -Wall -W -Wshadow -Wcast-align -Wredundant-decls -Wbad-function-cast -Wcast-qual -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wimplicit-fallthrough -Wunused-parameter -D_FILE_OFFSET_BITS=64 -DVERSION=$(VERSION)
--INSTALL_STRIP=-s
-+INSTALL_STRIP=
-
- PACKAGE=cpuid
- VERSION=20200203
-@@ -40,7 +40,7 @@
-
- BUILDROOT=
-
--default: $(PROG) $(PROG).man.gz cpuinfo2cpuid cpuinfo2cpuid.man.gz
-+default: $(PROG) cpuinfo2cpuid
-
- $(PROG): cpuid.c Makefile
- $(CC) $(CFL) $(LDFLAGS) -o $@ cpuid.c
-@@ -56,9 +56,9 @@
-
- install: $(PROG) $(PROG).man.gz cpuinfo2cpuid cpuinfo2cpuid.man.gz
- install -D $(INSTALL_STRIP) -m 755 $(PROG) $(BUILDROOT)/usr/bin/$(PROG)
-- install -D -m 444 $(PROG).man.gz $(BUILDROOT)/usr/share/man/man1/$(PROG).1.gz
-+ install -D -m 444 $(PROG).man $(BUILDROOT)/usr/share/man/man1/$(PROG).1
- install -D -m 755 cpuinfo2cpuid $(BUILDROOT)/usr/bin/cpuinfo2cpuid
-- install -D -m 444 cpuinfo2cpuid.man.gz $(BUILDROOT)/usr/share/man/man1/cpuinfo2cpuid.1.gz
-+ install -D -m 444 cpuinfo2cpuid.man $(BUILDROOT)/usr/share/man/man1/cpuinfo2cpuid.1
-
- clean:
- rm -f $(PROG) $(PROG).i386 $(PROG).x86_64
diff --git a/sys-apps/cpuid/files/cpuid-20220620-makefile.patch b/sys-apps/cpuid/files/cpuid-20220620-makefile.patch
new file mode 100644
index 000000000000..301ba988f7c1
--- /dev/null
+++ b/sys-apps/cpuid/files/cpuid-20220620-makefile.patch
@@ -0,0 +1,37 @@
+--- a/Makefile
++++ b/Makefile
+@@ -1,11 +1,11 @@
+-CFLAGS+=-g
++CFLAGS+=
+ CPPFLAGS?=
+ LDFLAGS?=
+ ifneq (,$(findstring arch=i386,$(CFLAGS)))
+ CISA=-m32
+ endif
+ CFL=$(CPPFLAGS) $(CFLAGS) $(CISA) -Wall -W -Wshadow -Wcast-align -Wredundant-decls -Wbad-function-cast -Wcast-qual -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wimplicit-fallthrough -Wunused-parameter -Wundef -D_FILE_OFFSET_BITS=64 -DVERSION=$(VERSION)
+-INSTALL_STRIP=-s
++INSTALL_STRIP=
+
+ PACKAGE=cpuid
+ VERSION=20220620
+@@ -40,7 +40,7 @@
+
+ BUILDROOT=$(DESTDIR)
+
+-default: $(PROG) $(PROG).man.gz cpuinfo2cpuid cpuinfo2cpuid.man.gz
++default: $(PROG) cpuinfo2cpuid
+
+ $(PROG): cpuid.c Makefile
+ $(CC) $(CFL) $(LDFLAGS) -o $@ cpuid.c
+@@ -56,9 +56,9 @@
+
+ install: $(PROG) $(PROG).man.gz cpuinfo2cpuid cpuinfo2cpuid.man.gz
+ install -D $(INSTALL_STRIP) -m 755 $(PROG) $(BUILDROOT)/usr/bin/$(PROG)
+- install -D -m 444 $(PROG).man.gz $(BUILDROOT)/usr/share/man/man1/$(PROG).1.gz
++ install -D -m 444 $(PROG).man $(BUILDROOT)/usr/share/man/man1/$(PROG).1
+ install -D -m 755 cpuinfo2cpuid $(BUILDROOT)/usr/bin/cpuinfo2cpuid
+- install -D -m 444 cpuinfo2cpuid.man.gz $(BUILDROOT)/usr/share/man/man1/cpuinfo2cpuid.1.gz
++ install -D -m 444 cpuinfo2cpuid.man $(BUILDROOT)/usr/share/man/man1/cpuinfo2cpuid.1
+
+ clean:
+ rm -f $(PROG) $(PROG).i386 $(PROG).x86_64
diff --git a/sys-apps/cpuid/metadata.xml b/sys-apps/cpuid/metadata.xml
index 9695f9b2cf8c..e13a97c088b5 100644
--- a/sys-apps/cpuid/metadata.xml
+++ b/sys-apps/cpuid/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>johu@gentoo.org</email>
- <name>Johannes Huber</name>
- </maintainer>
- <maintainer type="person">
<email>conikost@gentoo.org</email>
<name>Conrad Kostecki</name>
</maintainer>
diff --git a/sys-apps/cracklib-words/Manifest b/sys-apps/cracklib-words/Manifest
index e76b8720e503..137cd6e27a3a 100644
--- a/sys-apps/cracklib-words/Manifest
+++ b/sys-apps/cracklib-words/Manifest
@@ -1 +1 @@
-DIST cracklib-words-2.9.6.gz 5536645 BLAKE2B b0ac23e8777cb094cec565e9728ca8dd37359cd19c2e2d4cd215635f462e464fb27fc5a9e560895804df4e519c465845b381a8cd47fb4d6f9b9c62109ff661e6 SHA512 fc5bbe7699c9c9e3f39f5c82f53ec8a4ea85e08d5513188a2f6423f92779008b87d85cfcf87a9a5d13a49b04c30f73890cd4d3fa7cd4a6bdac5c1ebc18e18bc3
+DIST cracklib-words-2.9.11.xz 4157220 BLAKE2B 1ee0c82a6b7d4bcfedd8f4c99feac0f8de68cce061e41f16962a7f7893bd91443d2677533ea3e9e6a16cb5f8fa37bc502d691552d899dc07bcddcddc762f1354 SHA512 09e4bf6ad6064accc88d9206e2b2dd28f0e80f827c600f510dc9bb8ac5d51454da2dfbd8e80f2683af501b6f298fb53fb4cf2fb2b5d668940cc6f64701ed6730
diff --git a/sys-apps/cracklib-words/cracklib-words-2.9.11.ebuild b/sys-apps/cracklib-words/cracklib-words-2.9.11.ebuild
new file mode 100644
index 000000000000..048a5590ac4e
--- /dev/null
+++ b/sys-apps/cracklib-words/cracklib-words-2.9.11.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Note: ideally bump with sys-libs/cracklib
+DESCRIPTION="Large set of crack/cracklib dictionaries"
+HOMEPAGE="https://github.com/cracklib/cracklib/"
+SRC_URI="https://github.com/cracklib/cracklib/releases/download/v${PV}/${P}.xz"
+S="${WORKDIR}"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
+
+src_install() {
+ insinto /usr/share/dict
+ newins ${P} ${PN}
+}
+
+pkg_postinst() {
+ if [[ -n ${ROOT} ]] && create-cracklib-dict -h >&/dev/null ; then
+ ebegin "Regenerating cracklib dictionary"
+ create-cracklib-dict /usr/share/dict/* >/dev/null
+ eend $?
+ fi
+}
diff --git a/sys-apps/cracklib-words/cracklib-words-2.9.6.ebuild b/sys-apps/cracklib-words/cracklib-words-2.9.6.ebuild
deleted file mode 100644
index ea7cfb38c581..000000000000
--- a/sys-apps/cracklib-words/cracklib-words-2.9.6.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-DESCRIPTION="large set of crack/cracklib dictionaries"
-HOMEPAGE="https://github.com/cracklib/cracklib/"
-SRC_URI="https://github.com/cracklib/cracklib/releases/download/${P/-words}/${P}.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-IUSE=""
-
-S=${WORKDIR}
-
-src_install() {
- insinto /usr/share/dict
- newins ${P} ${PN}
-}
-
-pkg_postinst() {
- if [ "${ROOT}" = "/" ] && create-cracklib-dict -h >&/dev/null ; then
- ebegin "Regenerating cracklib dictionary"
- create-cracklib-dict /usr/share/dict/* >/dev/null
- eend $?
- fi
-}
diff --git a/sys-apps/cracklib-words/metadata.xml b/sys-apps/cracklib-words/metadata.xml
index 0bd584bf7040..1fa6dbfa9349 100644
--- a/sys-apps/cracklib-words/metadata.xml
+++ b/sys-apps/cracklib-words/metadata.xml
@@ -1,12 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="sourceforge">cracklib</remote-id>
- <remote-id type="github">cracklib/cracklib</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="sourceforge">cracklib</remote-id>
+ <remote-id type="github">cracklib/cracklib</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/crazydiskinfo/crazydiskinfo-1.1.0-r1.ebuild b/sys-apps/crazydiskinfo/crazydiskinfo-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..f2b277bdde19
--- /dev/null
+++ b/sys-apps/crazydiskinfo/crazydiskinfo-1.1.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Interactive TUI S.M.A.R.T viewer"
+HOMEPAGE="https://github.com/otakuto/crazydiskinfo"
+SRC_URI="https://github.com/otakuto/crazydiskinfo/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+ dev-libs/libatasmart:0=
+ sys-libs/ncurses:0="
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ sed -e "s#^set(CMAKE_CXX_FLAGS.*#set(CMAKE_CXX_FLAGS \"${CXXFLAGS} -Wall -std=c++11\")#" \
+ -e "5s#^#set(CMAKE_C_FLAGS \"${CFLAGS}\")\n#" \
+ -i CMakeLists.txt || die "can't patch CMakeLists.txt"
+
+ cmake_src_prepare
+}
diff --git a/sys-apps/crazydiskinfo/crazydiskinfo-1.1.0.ebuild b/sys-apps/crazydiskinfo/crazydiskinfo-1.1.0.ebuild
deleted file mode 100644
index ed033278ff51..000000000000
--- a/sys-apps/crazydiskinfo/crazydiskinfo-1.1.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils
-
-DESCRIPTION="Interactive TUI S.M.A.R.T viewer"
-HOMEPAGE="https://github.com/otakuto/crazydiskinfo"
-SRC_URI="https://github.com/otakuto/crazydiskinfo/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-DEPEND="
- dev-libs/libatasmart:0=
- sys-libs/ncurses:0="
-
-RDEPEND="$DEPEND"
-
-src_prepare() {
- sed -e "s#^set(CMAKE_CXX_FLAGS.*#set(CMAKE_CXX_FLAGS \"${CXXFLAGS} -Wall -std=c++11\")#" \
- -e "5s#^#set(CMAKE_C_FLAGS \"${CFLAGS}\")\n#" \
- -i CMakeLists.txt || die "can't patch CMakeLists.txt"
-
- cmake-utils_src_prepare
-}
diff --git a/sys-apps/crazydiskinfo/metadata.xml b/sys-apps/crazydiskinfo/metadata.xml
index cb75991bdac4..80434beb1a51 100644
--- a/sys-apps/crazydiskinfo/metadata.xml
+++ b/sys-apps/crazydiskinfo/metadata.xml
@@ -1,10 +1,7 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- <name>Patrice Clement</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">otakuto/crazydiskinfo</remote-id>
</upstream>
diff --git a/sys-apps/daemonize/daemonize-1.7.8.ebuild b/sys-apps/daemonize/daemonize-1.7.8.ebuild
index 1af06b01514b..e091f30d1d07 100644
--- a/sys-apps/daemonize/daemonize-1.7.8.ebuild
+++ b/sys-apps/daemonize/daemonize-1.7.8.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Runs a command as a Unix daemon"
-HOMEPAGE="https://bmc.github.com/daemonize/"
+HOMEPAGE="http://software.clapper.org/daemonize/"
SRC_URI="https://github.com/bmc/${PN}/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
diff --git a/sys-apps/daemonize/metadata.xml b/sys-apps/daemonize/metadata.xml
index cde1e9b04354..512ee969340e 100644
--- a/sys-apps/daemonize/metadata.xml
+++ b/sys-apps/daemonize/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>johu@gentoo.org</email>
- <name>Johannes Huber</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">bmc/daemonize</remote-id>
</upstream>
diff --git a/sys-apps/daisydog/daisydog-2014.05.30-r1.ebuild b/sys-apps/daisydog/daisydog-2014.05.30-r1.ebuild
new file mode 100644
index 000000000000..880303643aee
--- /dev/null
+++ b/sys-apps/daisydog/daisydog-2014.05.30-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs flag-o-matic
+
+GIT_SHA1="3182aa85c087446e4358370549adc45db21ec124"
+MY_P="${PN}-${GIT_SHA1}"
+
+DESCRIPTION="A very simple /dev/watchdog daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/daisydog/+/master"
+SRC_URI="mirror://gentoo/${MY_P}.tar.gz
+ https://chromium.googlesource.com/chromiumos/third_party/daisydog/+archive/${GIT_SHA1}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="static"
+
+src_configure() {
+ tc-export CC
+ use static && append-ldflags -static
+}
+
+src_install() {
+ dobin daisydog
+ dodoc README.chromiumos
+
+ newconfd "${FILESDIR}"/${PN}.conf.d ${PN}
+ newinitd "${FILESDIR}"/${PN}.init.d-r1 ${PN}
+}
diff --git a/sys-apps/daisydog/daisydog-2014.05.30.ebuild b/sys-apps/daisydog/daisydog-2014.05.30.ebuild
index bcb0ac67a0cd..d7306bc6b63c 100644
--- a/sys-apps/daisydog/daisydog-2014.05.30.ebuild
+++ b/sys-apps/daisydog/daisydog-2014.05.30.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI="7"
inherit toolchain-funcs flag-o-matic
@@ -12,14 +12,13 @@ DESCRIPTION="A very simple /dev/watchdog daemon"
HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/daisydog/+/master"
SRC_URI="mirror://gentoo/${MY_P}.tar.gz
https://chromium.googlesource.com/chromiumos/third_party/daisydog/+archive/${GIT_SHA1}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
IUSE="static"
-S=${WORKDIR}
-
src_configure() {
tc-export CC
use static && append-ldflags -static
diff --git a/sys-apps/daisydog/files/daisydog.init.d b/sys-apps/daisydog/files/daisydog.init.d
index 9513b7ef7578..5eae48824b61 100644
--- a/sys-apps/daisydog/files/daisydog.init.d
+++ b/sys-apps/daisydog/files/daisydog.init.d
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
command="/usr/bin/daisydog"
diff --git a/sys-apps/daisydog/files/daisydog.init.d-r1 b/sys-apps/daisydog/files/daisydog.init.d-r1
new file mode 100644
index 000000000000..9d9efdd42772
--- /dev/null
+++ b/sys-apps/daisydog/files/daisydog.init.d-r1
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/bin/daisydog"
+command_args="${WATCHDOG_OPTS}"
+description="watchdog daemon to pet /dev/watchdog devices"
+command_background="yes"
+pidfile="/run/daisydog.pid"
+
+depend() {
+ provide watchdog
+}
diff --git a/sys-apps/daisydog/metadata.xml b/sys-apps/daisydog/metadata.xml
index aebca33be179..7517f8d97dd7 100644
--- a/sys-apps/daisydog/metadata.xml
+++ b/sys-apps/daisydog/metadata.xml
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
-</maintainer>
+ <maintainer type="person">
+ <name>Mike Frysinger</name>
+ <email>vapier@gentoo.org</email>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/darwin-miscutils/Manifest b/sys-apps/darwin-miscutils/Manifest
index 2bc123dcefa2..f2902a6d8de1 100644
--- a/sys-apps/darwin-miscutils/Manifest
+++ b/sys-apps/darwin-miscutils/Manifest
@@ -1,18 +1,4 @@
DIST adv_cmds-md-147-compile.patch 5423 BLAKE2B f54aaaa8fcecb81fd8e628bcb384f537e572095b8210612c0748017f033e7bb6f9c5b1bd2c544fec23e8002a2ac7b99d840c85a8ca6faadac3b4da2edb77b459 SHA512 951e981b57e7d3d6ef51d638759559581dd4995ce66ec17bb2658f8a298683feb0842d10fd834b713ec39b2a0f671df56049b876d55f17bf1e988d76839fead1
DIST adv_cmds-md-147.1 3623 BLAKE2B 18b856770f0490ef241e19cc6f1661f6521bcc7f363bff41fbec548388d8f1e2d9e6aea879064cd3d7e7d16f8e0b2ff17ead990051a068a66f520a5ff504afa3 SHA512 459beb2b7c92b8718c76d744bbabf631bf8c329feb65c9434ce8a023c73ceac2d207c95e39c4b90b095a4724a74096a3d1bed9122883eb54e5311dfc64ffc718
DIST adv_cmds-md-147.c 25945 BLAKE2B 38af9e06e18a15cc74a81464a4c1ecdf98b800eb34f33f6ab6203b60540e693d459805432e51bae1008661aa566830c87357432428f62d8cbea9973b1e5fc59a SHA512 93e70f7d8697652b5a3c661975d21b51545d2eb07de64fd40524fcf0d5016dae9ae1dc63c4a85cb5ad455c8d1c246b7f5f2eac38226dcefbf4cab12b0b1c7592
-DIST developer_cmds-49.tar.gz 307753 BLAKE2B 774259d7b82efc85bf487111e5a3c4c0d4aa3f8a788463b503e4d108c684837327b97882114d3646dfba5f60a1a1a2671e0e574d92e159b5ea014fc9e2c61015 SHA512 3750374c891f6d681829986291d887cacf2c5b1c7a5de94f12c92ded0b3456157b85e57653c6061526d1f6626a7be8a9e6db9c1df09e2bb3e40c7fa20b9b4103
-DIST developer_cmds-53.1.tar.gz 139637 BLAKE2B cd61d6f86195ee43705b4b8e8802d7c1c578e2d64869ec33ed7acd7894a3231cab4152e08aa44694836fc542b4c3ab29d83b8a30b8b69545a25b12921c547fc9 SHA512 ac15b499d0642332e8deae2f498e5ffb0c64502e2d877bbdfe0fac4118e17fe525b169f3b015cfe8c9f40e2688bd30df4b050fe50eaa706b21a2e62ca9dd4b80
-DIST developer_cmds-55.tar.gz 139664 BLAKE2B 2dcd3b3e5ac9ebd8c15dbffe388fc016c037bfe8cbe0ae600552bf7de7dfc4351380eb0b16df0ecec2a79937d970044d1e937703cef6fb5205c62bd0b5298c4e SHA512 062e4c4a2b1ba4cffe7e850d07f4351c736988958450735f9f653936d64defa3347c9dac7b5fea3dcd25f8efe076133dc9ac3edb4a3e512387d6842bd177c35e
-DIST developer_cmds-63.tar.gz 110662 BLAKE2B 383573203d124904d69e5dbc8f1c5e0aef1b5a2288e40449c8e95470b131c9dc1f181338c38f292a1bcc5a105a54010e23bc12e233d7a92d9c983eb975429474 SHA512 4f672835f0290feaf54c7c268b31774282325448f30c02e4f12ead84c41e15083784fac4c9c4916c098953bc61aa8f29bea24a7b51312428aa87448595be50a1
-DIST misc_cmds-23.tar.gz 114747 BLAKE2B 9c4a1376555775a6999437e0712f62200d10be972f6828c02cfc0215a6004b706e36030e66ebdca59fdb8bcb18fabe4e596ce485b45ffaa072f8262ee9b91d82 SHA512 0e02a939c308f4483cf11cb8b21face84f442589e3774b1827ed0ab5064ee2b433a4468ac634051fa0817919f5d39ac1ed56c67b1f5b011b83388a3806ed33c8
-DIST misc_cmds-27.tar.gz 116351 BLAKE2B 00aece4bc8679d9a7a1e114db65bca97e8f855ead64ee0672ac598c28069c56355f4a763fef0e56784ee9d2de9a081ef6f7e6d9390fc79cb0dec25dbe40ec881 SHA512 594560b179f7dafc651d3a336d33bcb7075f2199cf4964e95d63164faf19bd50ef3a6095124f0e4f91c50d1bceeb831fcd81ceecf740e2696a8e7445c1a690d2
-DIST misc_cmds-31.tar.gz 121187 BLAKE2B 3d12a13cbdc7c541b98596ab5ea675d27a0da93a913ee94945dc5b68b3238a85c3fd13472c3ead30219ae3317a6111ba8d22a6e702fe07f927318f5174870a70 SHA512 d49bb8a49c23aa7efaa7db1958676390b4d5ef1b2e57f80b0bea0f10b8b29a6c3ec6d2d7a1248d3af77d382c5113fb3cbf9d3632ca92bb51c01d8c286fd9f25f
-DIST misc_cmds-33.tar.gz 123114 BLAKE2B fb86518067b36de536503df521f1dc5e4f20fa1da74cfee4679dd728862b9ca4c1c272fd0ba39107d058f992acc04c2c98f3f44d6b2fc57386d3c458cfedd68f SHA512 34957adaebe4ce1569464a466e13aaaa6a567c582b784b99dd260c891a417d37a0297bf11acc9eb16dfabed18f42480058ae726e0a56b7d98ed93b59f75a5644
-DIST misc_cmds-34.tar.gz 124023 BLAKE2B 3c634ab540f4b1046e6abe05476a399ea00fd6d35d2d450f68cd7c3f52c8b9321039221659647b6623d5621af1789dba3798ec9f5cff8677653fbb3f295d1d1c SHA512 5e4040c49cc6aed8d4b471cc5d26d978717c9ad29315d40098090d0f7fee5a78289f2092fd6e8c7b7adea31b766cfefdef0da957b86ffb4e0781c13f4b5e4dbe
-DIST shell_cmds-118.tar.gz 162145 BLAKE2B 5f6a2264bcbd9322cb50e39ac6594f083f9d0c0ffa68d67fccc6e4979c59edfab617bb7ffefb4ef647111a1abc7b855a19a1f3b309ad50a6a1f92900305ece6d SHA512 efce064b76087451293a6992b7946fb0811856275796efa9e1e30459edf9eb0462929a1f0d28d189bf7e85fdde4d9e80b8637d042497b1e6e9216c8888d0d57b
-DIST shell_cmds-149.tar.gz 173740 BLAKE2B d1cc69f204925628f812acf0f69704c8c0f5b94ee9b3bd8898ec773657ee6c8a617f1666a9ce9e63898eff1cfbc915b7dfd7a91c51eebe642affa41c14f0f828 SHA512 e0f87db828c994bad73e4340f1957378ce5c84419172ed1d6b9d63809b90edfa447cce658e715565c5c2a7d2eaf0a9ee75e24fdb6d86080063621e0f83eb2a77
-DIST shell_cmds-162.tar.gz 179189 BLAKE2B 975728cbfe262072c9fcc3aee457d3814ceffbd4f3f87a25e5f30d3b581c4ce05c112b2e023e1c132bc836e337e9edf74f699dc3e6cb797be5b589a3cb5eed82 SHA512 784b6b8b3a90967d79f5a60a23e7f31f7bc92712dac9cdb625770f92b58bd6902669aa19bb59997cc654fcc0e27ddd45f60b1990e7da95d0e6c90fd7f2434f95
-DIST shell_cmds-170.tar.gz 212954 BLAKE2B a9616f7604bb73c0d88f8a065441c2f4769747d407458b3844e3e9126c224b42501bf546b1bc82ab6cdfc318861b43318a8a8877e7a054209cbbc7bdaaec0e24 SHA512 b267a9b5e922c9952451ca05e5f9e328504dc46b5776e1a8405f8e41a604d7f184d70742cb6fa6646875bc1789082097c74eabcc151ac5568ba26ed858269ce7
-DIST shell_cmds-198.tar.gz 411088 BLAKE2B 074efebfdc0fb408df54ce763018c74370049d7c977c912c69bc399f3b3551280f1ea76fbd7205ad54ce676422c642431e297f269cafd2ee5fcb4cd916c91548 SHA512 6e3a43f0cd9b1e3799d1ba79f4fcc4c3bb9be178c35cba2bef9227ecc259ca52c39b4d0e39c71d9af689e07f48dbeee6806bd623286f116f7d3ee3889dc7c71f
-DIST shell_cmds-203.tar.gz 428799 BLAKE2B 54103daa8a8758dd34a66f9c34a5fa4cad2e6a2dd36ff838498d82179566eb95c25c49126341ac481889381c2d39ebea3bf57959bb943536a7ba8a90fcf96f67 SHA512 ba9b00d6681d286e6210d49d70e1f526e86b0a76ed794050e9cdbdb8c0cc30dbe82ee9cd908578ddabb19c53c8994f1b84650f08bfeb88ea9f77d4de942c1cb1
+DIST developer_cmds-63.tar.gz 110943 BLAKE2B 3dfa56406ca3bb3a56122c172151f20cdbf6191a1511e5cfe2db03bd133e565bee7ddd5cd7cbe34aa2e4513a21a8502d44d480f5bc20621cc615b2bc36f1b8c1 SHA512 c37dead04c6e4fb409704d206e5ad66c779917d21aa2930746ed1145be9a392db861f09feb9c97a2fc8c985cf6bce98ddb96fc2688bada1b21a3ac7abbb90f1f
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-10.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-10.ebuild
deleted file mode 100644
index 67fe14641673..000000000000
--- a/sys-apps/darwin-miscutils/darwin-miscutils-10.ebuild
+++ /dev/null
@@ -1,157 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs eutils
-
-# from 10.8
-MISC_VER=31
-SHELL_VER=170
-# from 10.7.4
-DEV_VER=55
-MD_VER=147 # 148 in 10.8 has no md, bug #428530
-
-DESCRIPTION="Miscellaneous commands used on Darwin/Mac OS X systems, Mountain
-Lion 10.8"
-HOMEPAGE="http://www.opensource.apple.com/"
-SRC_URI="http://www.opensource.apple.com/darwinsource/tarballs/other/misc_cmds-${MISC_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/shell_cmds-${SHELL_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/developer_cmds-${DEV_VER}.tar.gz
- http://www.opensource.apple.com/source/adv_cmds/adv_cmds-${MD_VER}/md/md.c?txt -> adv_cmds-md-${MD_VER}.c
- http://www.opensource.apple.com/source/adv_cmds/adv_cmds-${MD_VER}/md/md.1?txt -> adv_cmds-md-${MD_VER}.1"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-S=${WORKDIR}
-
-src_prepare() {
- cd "${S}"/shell_cmds-${SHELL_VER} || die
- epatch "${FILESDIR}"/${PN}-6-w64.patch
-
- mkdir -p "${S}"/adv_cmds-${MD_VER}/md || die
- cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.c \
- "${S}"/adv_cmds-${MD_VER}/md/md.c || die
- cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.1 \
- "${S}"/adv_cmds-${MD_VER}/md/md.1 || die
-
- eapply_user
-}
-
-src_compile() {
- local flags=(
- ${CFLAGS}
- -I.
- -D__FBSDID=__RCSID
- -Wsystem-headers
- -Du_int=uint32_t
- -include stdint.h
- ${LDFLAGS}
- )
-
- local TS=${S}/misc_cmds-${MISC_VER}
- # tsort is provided by coreutils
- for t in leave units calendar; do
- cd "${TS}/${t}"
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
- # compile cal separately
- cd "${TS}/ncal"
- echo "in ${TS}/ncal:"
- echo "$(tc-getCC) ${flags[@]} -c calendar.c"
- $(tc-getCC) ${flags[@]} -c calendar.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c easter.c"
- $(tc-getCC) ${flags[@]} -c easter.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c ncal.c"
- $(tc-getCC) ${flags[@]} -c ncal.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o"
- $(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o || die "failed to compile cal"
-
- TS=${S}/shell_cmds-${SHELL_VER}
- # only pick those tools not provided by coreutils, findutils
- for t in \
- apply getopt hostname jot kill killall \
- lastcomm renice script shlock time whereis;
- do
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t} ${t}.c"
- cd "${TS}/${t}"
- $(tc-getCC) ${flags[@]} -o ${t} ${t}.c || die "failed to compile $t"
- done
- cd "${TS}/w"
- sed -i -e '/#include <libutil.h>/d' w.c || die
- echo "in ${TS}/w:"
- echo "$(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c"
- $(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c \
- || die "failed to compile w"
-
- TS=${S}/developer_cmds-${DEV_VER}
- # only pick those tools that do not conflict (no ctags and indent)
- # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
- # shell scripts
- # don't install rpcgen, as it is heavily related to the OS it runs
- # on (and this is the Snow Leopard version)
- for t in asa hexdump unifdef what ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
-
- TS=${S}/adv_cmds-${MD_VER}
- for t in md ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
-}
-
-src_install() {
- mkdir -p "${ED}"/bin
- mkdir -p "${ED}"/usr/bin
-
- local TS=${S}/misc_cmds-${MISC_VER}
- for t in leave units calendar ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
- # copy cal separately
- cp "${TS}/ncal/cal" "${ED}"/usr/bin/
- dosym /usr/bin/cal /usr/bin/ncal
- doman "${TS}/ncal/ncal.1"
- dosym /usr/share/man/man1/ncal.1 /usr/share/man/man1/cal.1
-
- TS=${S}/shell_cmds-${SHELL_VER}
- for t in \
- apply getopt jot killall lastcomm \
- renice script shlock time w whereis;
- do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- [[ -f "${TS}/${t}/${t}.1" ]] && doman "${TS}/${t}/${t}.1"
- [[ -f "${TS}/${t}/${t}.8" ]] && doman "${TS}/${t}/${t}.8"
- done
- cp "${TS}/w/w" "${ED}"/usr/bin/uptime
- doman "${TS}/w/uptime.1"
- for t in hostname kill; do
- cp "${TS}/${t}/${t}" "${ED}"/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/developer_cmds-${DEV_VER}
- for t in asa hexdump unifdef what ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/adv_cmds-${MD_VER}
- for t in md ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-}
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-11.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-11.ebuild
deleted file mode 100644
index 82bea18938fe..000000000000
--- a/sys-apps/darwin-miscutils/darwin-miscutils-11.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-# from macOS 10.12
-MISC_VER=33
-SHELL_VER=198
-# from DT 8.1
-DEV_VER=63
-# from 10.7.4
-MD_VER=147 # 148 in 10.8 has no md, bug #428530
-
-DESCRIPTION="Miscellaneous commands used on macOS, Sierra 10.12"
-HOMEPAGE="https://www.opensource.apple.com/"
-SRC_URI="https://opensource.apple.com/tarballs/misc_cmds/misc_cmds-${MISC_VER}.tar.gz
- https://opensource.apple.com/tarballs/shell_cmds/shell_cmds-${SHELL_VER}.tar.gz
- https://opensource.apple.com/tarballs/developer_cmds/developer_cmds-${DEV_VER}.tar.gz
- https://opensource.apple.com/source/adv_cmds/adv_cmds-${MD_VER}/md/md.c -> adv_cmds-md-${MD_VER}.c
- https://opensource.apple.com/source/adv_cmds/adv_cmds-${MD_VER}/md/md.1 -> adv_cmds-md-${MD_VER}.1"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-S=${WORKDIR}
-
-src_prepare() {
- cd "${S}"/shell_cmds-${SHELL_VER} || die
- eapply "${FILESDIR}"/${PN}-6-w64.patch
-
- mkdir -p "${S}"/adv_cmds-${MD_VER}/md || die
- cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.c \
- "${S}"/adv_cmds-${MD_VER}/md/md.c || die
- cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.1 \
- "${S}"/adv_cmds-${MD_VER}/md/md.1 || die
-
- eapply_user
-}
-
-src_compile() {
- local flags=(
- ${CFLAGS}
- -I.
- -D__FBSDID=__RCSID
- -Wsystem-headers
- -Du_int=uint32_t
- -include stdint.h
- ${LDFLAGS}
- )
-
- local TS=${S}/misc_cmds-${MISC_VER}
- # tsort is provided by coreutils
- for t in leave units calendar; do
- cd "${TS}/${t}"
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
- # compile cal separately
- cd "${TS}/ncal"
- echo "in ${TS}/ncal:"
- echo "$(tc-getCC) ${flags[@]} -c calendar.c"
- $(tc-getCC) ${flags[@]} -c calendar.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c easter.c"
- $(tc-getCC) ${flags[@]} -c easter.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c ncal.c"
- $(tc-getCC) ${flags[@]} -c ncal.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o"
- $(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o || die "failed to compile cal"
-
- TS=${S}/shell_cmds-${SHELL_VER}
- # only pick those tools not provided by coreutils, findutils
- for t in \
- apply getopt hexdump hostname jot kill killall \
- lastcomm renice script shlock time whereis;
- do
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t} *.c"
- cd "${TS}/${t}"
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
- cd "${TS}/w"
- sed -i -e '/#include <libutil.h>/d' w.c || die
- echo "in ${TS}/w:"
- echo "$(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w *.c"
- $(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w *.c \
- || die "failed to compile w"
-
- TS=${S}/developer_cmds-${DEV_VER}
- # only pick those tools that do not conflict (no ctags and indent)
- # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
- # shell scripts
- # don't install rpcgen, as it is heavily related to the OS it runs
- # on (and this is the Sierra version)
- for t in asa unifdef what ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
-
- # provide this one for gcc-apple
- TS=${S}/adv_cmds-${MD_VER}
- for t in md ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
-}
-
-src_install() {
- mkdir -p "${ED}"/bin
- mkdir -p "${ED}"/usr/bin
-
- local TS=${S}/misc_cmds-${MISC_VER}
- for t in leave units calendar ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
- # copy cal separately
- cp "${TS}/ncal/cal" "${ED}"/usr/bin/
- dosym /usr/bin/cal /usr/bin/ncal
- doman "${TS}/ncal/ncal.1"
- dosym /usr/share/man/man1/ncal.1 /usr/share/man/man1/cal.1
-
- TS=${S}/shell_cmds-${SHELL_VER}
- for t in \
- apply getopt hexdump hostname jot killall lastcomm \
- renice script shlock time w whereis;
- do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- [[ -f "${TS}/${t}/${t}.1" ]] && doman "${TS}/${t}/${t}.1"
- [[ -f "${TS}/${t}/${t}.8" ]] && doman "${TS}/${t}/${t}.8"
- done
- cp "${TS}/w/w" "${ED}"/usr/bin/uptime
- doman "${TS}/w/uptime.1"
- for t in hostname kill; do
- cp "${TS}/${t}/${t}" "${ED}"/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/developer_cmds-${DEV_VER}
- for t in asa unifdef what ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/adv_cmds-${MD_VER}
- for t in md ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-}
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild
new file mode 100644
index 000000000000..c8f3e71d0567
--- /dev/null
+++ b/sys-apps/darwin-miscutils/darwin-miscutils-12-r1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+# from DT 8.2.1
+DEV_VER=63
+# from 10.7.4
+MD_VER=147 # adv_cmds-148 in 10.8 has no md, bug #428530
+
+DESCRIPTION="Miscellaneous commands used on macOS, High Sierra 10.13"
+HOMEPAGE="https://github.com/apple-oss-distributions"
+SRC_URI="
+ https://github.com/apple-oss-distributions/adv_cmds/blob/c8dbac91aa855b2d05282f45709b318f8bc3693d/md/md.1 \
+ -> adv_cmds-md-${MD_VER}.1
+ https://github.com/apple-oss-distributions/adv_cmds/blob/c8dbac91aa855b2d05282f45709b318f8bc3693d/md/md.c \
+ -> adv_cmds-md-${MD_VER}.c
+ https://642666.bugs.gentoo.org/attachment.cgi?id=511988 -> adv_cmds-md-${MD_VER}-compile.patch
+ https://github.com/apple-oss-distributions/developer_cmds/archive/refs/tags/developer_cmds-${DEV_VER}.tar.gz"
+S="${WORKDIR}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~arm64-macos ~ppc-macos ~x64-macos"
+
+# for ncal
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ mkdir -p "${S}"/adv_cmds-${MD_VER}/md || die
+ cd "${S}"/adv_cmds-${MD_VER} || die
+ cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.c md/md.c || die
+ cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.1 md/md.1 || die
+ eapply "${FILESDIR}"/${PN}-12-md-modern-c.patch
+
+ cd "${S}" || die
+ eapply_user
+}
+
+src_compile() {
+ local t
+ local TS
+ local flags=(
+ ${CFLAGS}
+ -I.
+ -D__FBSDID=__RCSID
+ -Du_int=uint32_t
+ -include stdint.h
+ )
+
+ # grobian 2024-04-07:
+ # removed most tools here that are provided by host as well, but
+ # newer versions, and they are in no way critical, but better
+ # figured out by Apple (e.g. tools like w/uptime and hostname)
+ # what's left here is developer tools that GCC interacts with
+ # tools from developer_cmds we could probably loose, but they've
+ # always worked up sofar, and they are needed on old targets
+ # (Darwin9) most likely, so keep them. md is just plain missing, so
+ # keep it in any case
+
+ TS="${S}/developer_cmds-developer_cmds-${DEV_VER}" # new github archives
+ # only pick those tools that do not conflict (no ctags and indent)
+ # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
+ # shell scripts
+ # don't install rpcgen, as it is heavily related to the OS it runs
+ # on (and this is the High Sierra version)
+ for t in asa unifdef what ; do
+ echo "in ${TS}/${t}:"
+ cd "${TS}/${t}" || die
+ edo $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c
+ done
+
+ # provide this one for gcc-apple
+ TS="${S}/adv_cmds-${MD_VER}"
+ for t in md ; do
+ echo "in ${TS}/${t}:"
+ cd "${TS}/${t}" || die
+ edo $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c
+ done
+}
+
+src_install() {
+ local t
+ local TS
+ mkdir -p "${ED}"/{,usr/}bin || die
+
+ TS="${S}/developer_cmds-developer_cmds-${DEV_VER}" # new github archives
+ for t in asa unifdef what ; do
+ cp "${TS}/${t}/${t}" "${ED}"/usr/bin/ || die
+ doman "${TS}/${t}/${t}.1"
+ done
+
+ TS="${S}/adv_cmds-${MD_VER}"
+ for t in md ; do
+ cp "${TS}/${t}/${t}" "${ED}"/usr/bin/ || die
+ doman "${TS}/${t}/${t}.1"
+ done
+}
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-12.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-12.ebuild
deleted file mode 100644
index 96a868b3409d..000000000000
--- a/sys-apps/darwin-miscutils/darwin-miscutils-12.ebuild
+++ /dev/null
@@ -1,156 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-# from macOS 10.13
-MISC_VER=34
-SHELL_VER=203
-# from DT 8.2.1
-DEV_VER=63
-# from 10.7.4
-MD_VER=147 # adv_cmds-148 in 10.8 has no md, bug #428530
-
-DESCRIPTION="Miscellaneous commands used on macOS, High Sierra 10.13"
-HOMEPAGE="https://www.opensource.apple.com/"
-SRC_URI="https://opensource.apple.com/tarballs/misc_cmds/misc_cmds-${MISC_VER}.tar.gz
- https://opensource.apple.com/tarballs/shell_cmds/shell_cmds-${SHELL_VER}.tar.gz
- https://opensource.apple.com/tarballs/developer_cmds/developer_cmds-${DEV_VER}.tar.gz
- https://opensource.apple.com/source/adv_cmds/adv_cmds-${MD_VER}/md/md.c -> adv_cmds-md-${MD_VER}.c
- https://opensource.apple.com/source/adv_cmds/adv_cmds-${MD_VER}/md/md.1 -> adv_cmds-md-${MD_VER}.1
- https://642666.bugs.gentoo.org/attachment.cgi?id=511988 -> adv_cmds-md-${MD_VER}-compile.patch"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-# for ncal
-DEPEND="sys-libs/ncurses:="
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}
-
-src_prepare() {
- cd "${S}"/shell_cmds-${SHELL_VER} || die
- eapply "${FILESDIR}"/${PN}-6-w64.patch
-
- mkdir -p "${S}"/adv_cmds-${MD_VER}/md || die
- cd "${S}"/adv_cmds-${MD_VER} || die
- cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.c md/md.c || die
- cp "${DISTDIR}"/adv_cmds-md-${MD_VER}.1 md/md.1 || die
- eapply "${DISTDIR}"/adv_cmds-md-${MD_VER}-compile.patch
-
- cd "${S}"
- eapply_user
-}
-
-src_compile() {
- local flags=(
- ${CFLAGS}
- -I.
- -D__FBSDID=__RCSID
- -Du_int=uint32_t
- -include stdint.h
- )
-
- v() {
- echo "$*"
- $@
- }
-
- local TS=${S}/misc_cmds-${MISC_VER}
- # tsort is provided by coreutils
- for t in leave units calendar; do
- cd "${TS}/${t}"
- echo "in ${TS}/${t}:"
- v $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c || die
- done
- # compile cal separately
- cd "${TS}/ncal"
- echo "in ${TS}/ncal:"
- v $(tc-getCC) ${flags[@]} -c calendar.c || die
- v $(tc-getCC) ${flags[@]} -c easter.c || die
- v $(tc-getCC) ${flags[@]} -c ncal.c || die
- v $(tc-getCC) -o cal ${LDFLAGS} -lncurses calendar.o easter.o ncal.o || die
-
- TS=${S}/shell_cmds-${SHELL_VER}
- # only pick those tools not provided by coreutils, findutils
- for t in \
- apply getopt hexdump hostname jot kill killall \
- lastcomm renice script shlock time whereis;
- do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}"
- v $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c || die
- done
- cd "${TS}/w"
- sed -i -e '/#include <libutil.h>/d' w.c || die
- echo "in ${TS}/w:"
- v $(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 ${LDFLAGS} -lresolv -o w *.c || die
-
- TS=${S}/developer_cmds-${DEV_VER}
- # only pick those tools that do not conflict (no ctags and indent)
- # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
- # shell scripts
- # don't install rpcgen, as it is heavily related to the OS it runs
- # on (and this is the High Sierra version)
- for t in asa unifdef what ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- v $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c || die
- done
-
- # provide this one for gcc-apple
- TS=${S}/adv_cmds-${MD_VER}
- for t in md ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- v $(tc-getCC) ${flags[@]} -o ${t} ${LDFLAGS} *.c || die
- done
-}
-
-src_install() {
- mkdir -p "${ED}"/{,usr/}bin
-
- local TS=${S}/misc_cmds-${MISC_VER}
- for t in leave units calendar ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
- # copy cal separately
- cp "${TS}/ncal/cal" "${ED}"/usr/bin/ncal
- dosym ncal /usr/bin/cal
- doman "${TS}/ncal/ncal.1"
- dosym ncal.1 /usr/share/man/man1/cal.1
-
- TS=${S}/shell_cmds-${SHELL_VER}
- for t in \
- apply getopt hexdump hostname jot killall lastcomm \
- renice script shlock time w whereis;
- do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- [[ -f "${TS}/${t}/${t}.1" ]] && doman "${TS}/${t}/${t}.1"
- [[ -f "${TS}/${t}/${t}.8" ]] && doman "${TS}/${t}/${t}.8"
- done
- cp "${TS}/w/w" "${ED}"/usr/bin/uptime
- doman "${TS}/w/uptime.1"
- for t in hostname kill; do
- cp "${TS}/${t}/${t}" "${ED}"/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/developer_cmds-${DEV_VER}
- for t in asa unifdef what ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/adv_cmds-${MD_VER}
- for t in md ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-}
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-6-r1.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-6-r1.ebuild
deleted file mode 100644
index b0b7099617b7..000000000000
--- a/sys-apps/darwin-miscutils/darwin-miscutils-6-r1.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs eutils
-
-MISC_VER=23
-SHELL_VER=118
-DEV_VER=49
-
-DESCRIPTION="Miscellaneous commands used on Darwin/Mac OS X systems, Leopard"
-HOMEPAGE="http://www.opensource.apple.com/"
-SRC_URI="http://www.opensource.apple.com/darwinsource/tarballs/other/misc_cmds-${MISC_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/shell_cmds-${SHELL_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/developer_cmds-${DEV_VER}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-S=${WORKDIR}
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-5-w.patch
- epatch "${FILESDIR}"/${PN}-5-stdlib.patch
- epatch "${FILESDIR}"/${PN}-6-w64.patch
- cd "${S}"/developer_cmds-${DEV_VER}
- epatch "${FILESDIR}"/${PN}-5-error.patch
- # deal with OSX Lion and above
- sed -i -e 's/getline/ugetline/g' unifdef/unifdef.c || die
-
- eapply_user
-}
-
-src_compile() {
- local TS=${S}/misc_cmds-${MISC_VER}
- # tsort is provided by coreutils
- for t in leave units calendar; do
- cd "${TS}/${t}"
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) -o ${t}" *.c
- $(tc-getCC) -o ${t} *.c || die "failed to compile $t"
- done
- # compile cal separately
- cd "${TS}/ncal"
- echo "in ${TS}/ncal:"
- local flags
- flags[0]=-I.
- flags[1]=-D__FBSDID=__RCSID
- flags[2]=-Wsystem-headers
- echo "$(tc-getCC) ${flags[@]} -c calendar.c"
- $(tc-getCC) ${flags[@]} -c calendar.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c easter.c"
- $(tc-getCC) ${flags[@]} -c easter.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c ncal.c"
- $(tc-getCC) ${flags[@]} -c ncal.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o"
- $(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o || die "failed to compile cal"
-
- TS=${S}/shell_cmds-${SHELL_VER}
- # only pick those tools not provided by coreutils, findutils
- for t in \
- alias apply getopt hostname jot kill \
- lastcomm renice shlock time whereis;
- do
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) -o ${t} ${t}.c"
- cd "${TS}/${t}"
- $(tc-getCC) -o ${t} ${t}.c || die "failed to compile $t"
- done
- # script and killall need additonal flags
- for t in \
- killall script
- do
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) -D__FBSDID=__RCSID -o ${t} ${t}.c"
- cd "${TS}/${t}"
- $(tc-getCC) -D__FBSDID=__RCSID -o ${t} ${t}.c || die "failed to compile $t"
- done
- cd "${TS}/w"
- echo "in ${TS}/w:"
- echo "$(tc-getCC) -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c"
- $(tc-getCC) -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c \
- || die "failed to compile w"
-
- TS=${S}/developer_cmds-${DEV_VER}
- # only pick those tools that do not conflict (no ctags and indent)
- # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
- # shell scripts
- # don't install rpcgen, as it is heavily related to the OS it runs
- # on (and this is the Leopard version)
- for t in asa error hexdump unifdef what ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}"
- sed -i -e '/^__FBSDID/d' *.c
- echo "$(tc-getCC) -o ${t}" *.c
- $(tc-getCC) -o ${t} *.c || die "failed to compile $t"
- done
-}
-
-src_install() {
- mkdir -p "${ED}"/bin
- mkdir -p "${ED}"/usr/bin
-
- local TS=${S}/misc_cmds-${MISC_VER}
- for t in leave units calendar ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
- # copy cal separately
- cp "${TS}/ncal/cal" "${ED}"/usr/bin/
- dosym /usr/bin/cal /usr/bin/ncal
- doman "${TS}/ncal/ncal.1"
- dosym /usr/share/man/man1/ncal.1 /usr/share/man/man1/cal.1
-
- TS=${S}/shell_cmds-${SHELL_VER}
- for t in \
- alias apply getopt jot killall lastcomm \
- renice script shlock su time w whereis;
- do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- [[ -f "${TS}/${t}/${t}.1" ]] && doman "${TS}/${t}/${t}.1"
- [[ -f "${TS}/${t}/${t}.8" ]] && doman "${TS}/${t}/${t}.8"
- done
- cp "${TS}/w/w" "${ED}"/usr/bin/uptime
- doman "${TS}/w/uptime.1"
- for t in hostname kill; do
- cp "${TS}/${t}/${t}" "${ED}"/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/developer_cmds-${DEV_VER}
- for t in asa error hexdump unifdef what ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-}
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-8.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-8.ebuild
deleted file mode 100644
index adbde8fb92e2..000000000000
--- a/sys-apps/darwin-miscutils/darwin-miscutils-8.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs eutils
-
-MISC_VER=27
-SHELL_VER=149
-DEV_VER=53.1
-
-DESCRIPTION="Miscellaneous commands used on Darwin/Mac OS X systems, Snow Leopard 10.6.3"
-HOMEPAGE="http://www.opensource.apple.com/"
-SRC_URI="http://www.opensource.apple.com/darwinsource/tarballs/other/misc_cmds-${MISC_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/shell_cmds-${SHELL_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/developer_cmds-${DEV_VER}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-S=${WORKDIR}
-
-src_prepare() {
- cd "${S}"/shell_cmds-${SHELL_VER}
- epatch "${FILESDIR}"/${PN}-6-w64.patch
- # deal with OSX Lion and above
- cd "${S}"/developer_cmds-${DEV_VER}
- sed -i -e 's/getline/ugetline/g' unifdef/unifdef.c || die
-
- eapply_user
-}
-
-src_compile() {
- local flags=(
- ${CFLAGS}
- -I.
- -D__FBSDID=__RCSID
- -Wsystem-headers
- -Du_int=uint32_t
- -include stdint.h
- ${LDFLAGS}
- )
-
- local TS=${S}/misc_cmds-${MISC_VER}
- # tsort is provided by coreutils
- for t in leave units calendar; do
- cd "${TS}/${t}"
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
- # compile cal separately
- cd "${TS}/ncal"
- echo "in ${TS}/ncal:"
- echo "$(tc-getCC) ${flags[@]} -c calendar.c"
- $(tc-getCC) ${flags[@]} -c calendar.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c easter.c"
- $(tc-getCC) ${flags[@]} -c easter.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c ncal.c"
- $(tc-getCC) ${flags[@]} -c ncal.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o"
- $(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o || die "failed to compile cal"
-
- TS=${S}/shell_cmds-${SHELL_VER}
- # only pick those tools not provided by coreutils, findutils
- for t in \
- alias apply getopt hostname jot kill killall \
- lastcomm renice script shlock time whereis;
- do
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t} ${t}.c"
- cd "${TS}/${t}"
- $(tc-getCC) ${flags[@]} -o ${t} ${t}.c || die "failed to compile $t"
- done
- cd "${TS}/w"
- sed -i -e '/#include <libutil.h>/d' w.c || die
- echo "in ${TS}/w:"
- echo "$(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c"
- $(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c \
- || die "failed to compile w"
-
- TS=${S}/developer_cmds-${DEV_VER}
- # only pick those tools that do not conflict (no ctags and indent)
- # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
- # shell scripts
- # don't install rpcgen, as it is heavily related to the OS it runs
- # on (and this is the Snow Leopard version)
- for t in asa hexdump unifdef what ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
-}
-
-src_install() {
- mkdir -p "${ED}"/bin
- mkdir -p "${ED}"/usr/bin
-
- local TS=${S}/misc_cmds-${MISC_VER}
- for t in leave units calendar ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
- # copy cal separately
- cp "${TS}/ncal/cal" "${ED}"/usr/bin/
- dosym /usr/bin/cal /usr/bin/ncal
- doman "${TS}/ncal/ncal.1"
- dosym /usr/share/man/man1/ncal.1 /usr/share/man/man1/cal.1
-
- TS=${S}/shell_cmds-${SHELL_VER}
- for t in \
- alias apply getopt jot killall lastcomm \
- renice script shlock time w whereis;
- do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- [[ -f "${TS}/${t}/${t}.1" ]] && doman "${TS}/${t}/${t}.1"
- [[ -f "${TS}/${t}/${t}.8" ]] && doman "${TS}/${t}/${t}.8"
- done
- cp "${TS}/w/w" "${ED}"/usr/bin/uptime
- doman "${TS}/w/uptime.1"
- for t in hostname kill; do
- cp "${TS}/${t}/${t}" "${ED}"/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/developer_cmds-${DEV_VER}
- for t in asa hexdump unifdef what ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-}
diff --git a/sys-apps/darwin-miscutils/darwin-miscutils-9.ebuild b/sys-apps/darwin-miscutils/darwin-miscutils-9.ebuild
deleted file mode 100644
index d0467ed79845..000000000000
--- a/sys-apps/darwin-miscutils/darwin-miscutils-9.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs eutils
-
-MISC_VER=31
-SHELL_VER=162
-DEV_VER=55
-
-DESCRIPTION="Miscellaneous commands used on Darwin/Mac OS X systems, Lion 10.7"
-HOMEPAGE="http://www.opensource.apple.com/"
-SRC_URI="http://www.opensource.apple.com/darwinsource/tarballs/other/misc_cmds-${MISC_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/shell_cmds-${SHELL_VER}.tar.gz
- http://www.opensource.apple.com/darwinsource/tarballs/other/developer_cmds-${DEV_VER}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-S=${WORKDIR}
-
-src_prepare() {
- cd "${S}"/shell_cmds-${SHELL_VER}
- epatch "${FILESDIR}"/${PN}-6-w64.patch
-
- eapply_user
-}
-
-src_compile() {
- local flags=(
- ${CFLAGS}
- -I.
- -D__FBSDID=__RCSID
- -Wsystem-headers
- -Du_int=uint32_t
- -include stdint.h
- ${LDFLAGS}
- )
-
- local TS=${S}/misc_cmds-${MISC_VER}
- # tsort is provided by coreutils
- for t in leave units calendar; do
- cd "${TS}/${t}"
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
- # compile cal separately
- cd "${TS}/ncal"
- echo "in ${TS}/ncal:"
- echo "$(tc-getCC) ${flags[@]} -c calendar.c"
- $(tc-getCC) ${flags[@]} -c calendar.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c easter.c"
- $(tc-getCC) ${flags[@]} -c easter.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -c ncal.c"
- $(tc-getCC) ${flags[@]} -c ncal.c || die "failed to compile cal"
- echo "$(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o"
- $(tc-getCC) ${flags[@]} -o cal calendar.o easter.o ncal.o || die "failed to compile cal"
-
- TS=${S}/shell_cmds-${SHELL_VER}
- # only pick those tools not provided by coreutils, findutils
- for t in \
- alias apply getopt hostname jot kill killall \
- lastcomm renice script shlock time whereis;
- do
- echo "in ${TS}/${t}:"
- echo "$(tc-getCC) ${flags[@]} -o ${t} ${t}.c"
- cd "${TS}/${t}"
- $(tc-getCC) ${flags[@]} -o ${t} ${t}.c || die "failed to compile $t"
- done
- cd "${TS}/w"
- sed -i -e '/#include <libutil.h>/d' w.c || die
- echo "in ${TS}/w:"
- echo "$(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c"
- $(tc-getCC) ${flags[@]} -DHAVE_UTMPX=1 -lresolv -o w w.c pr_time.c proc_compare.c \
- || die "failed to compile w"
-
- TS=${S}/developer_cmds-${DEV_VER}
- # only pick those tools that do not conflict (no ctags and indent)
- # do not install lorder, mkdep and vgrind as they are a non-prefix-aware
- # shell scripts
- # don't install rpcgen, as it is heavily related to the OS it runs
- # on (and this is the Snow Leopard version)
- for t in asa hexdump unifdef what ; do
- echo "in ${TS}/${t}:"
- cd "${TS}/${t}" || die
- echo "$(tc-getCC) ${flags[@]} -o ${t}" *.c
- $(tc-getCC) ${flags[@]} -o ${t} *.c || die "failed to compile $t"
- done
-}
-
-src_install() {
- mkdir -p "${ED}"/bin
- mkdir -p "${ED}"/usr/bin
-
- local TS=${S}/misc_cmds-${MISC_VER}
- for t in leave units calendar ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
- # copy cal separately
- cp "${TS}/ncal/cal" "${ED}"/usr/bin/
- dosym /usr/bin/cal /usr/bin/ncal
- doman "${TS}/ncal/ncal.1"
- dosym /usr/share/man/man1/ncal.1 /usr/share/man/man1/cal.1
-
- TS=${S}/shell_cmds-${SHELL_VER}
- for t in \
- alias apply getopt jot killall lastcomm \
- renice script shlock time w whereis;
- do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- [[ -f "${TS}/${t}/${t}.1" ]] && doman "${TS}/${t}/${t}.1"
- [[ -f "${TS}/${t}/${t}.8" ]] && doman "${TS}/${t}/${t}.8"
- done
- cp "${TS}/w/w" "${ED}"/usr/bin/uptime
- doman "${TS}/w/uptime.1"
- for t in hostname kill; do
- cp "${TS}/${t}/${t}" "${ED}"/bin/
- doman "${TS}/${t}/${t}.1"
- done
-
- TS=${S}/developer_cmds-${DEV_VER}
- for t in asa hexdump unifdef what ; do
- cp "${TS}/${t}/${t}" "${ED}"/usr/bin/
- doman "${TS}/${t}/${t}.1"
- done
-}
diff --git a/sys-apps/darwin-miscutils/files/darwin-miscutils-12-md-modern-c.patch b/sys-apps/darwin-miscutils/files/darwin-miscutils-12-md-modern-c.patch
new file mode 100644
index 000000000000..2e6dcdb50d4b
--- /dev/null
+++ b/sys-apps/darwin-miscutils/files/darwin-miscutils-12-md-modern-c.patch
@@ -0,0 +1,235 @@
+md: bring up to date for modern C to allow Clang and recent GCC to compile
+
+Authors:
+Michael Weiser, https://bugs.gentoo.org/642666
+Alexey Sokolov, https://bugs.gentoo.org/758167
+Fabian Groffen
+
+--- adv_cmds-147/md/md.c
++++ adv_cmds-147/md/md.c
+@@ -78,6 +78,8 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
++#include <fcntl.h>
+
+ #define LINESIZE 65536 // NeXT_MOD
+
+@@ -100,6 +102,7 @@
+ } dep_files[1000];
+ int dep_file_index;
+
++static int
+ qsort_strcmp(a, b)
+ struct dep *a, *b;
+ {
+@@ -137,9 +140,15 @@
+
+ static void scan_mak(FILE *, FILE *, char *);
+ static void finish_mak(FILE *, FILE *);
++static int read_dep(char *);
++static void expunge_mak(FILE *, FILE *);
++static void skip_mak(FILE *, FILE *);
++static void output_dep(FILE *);
++static void parse_dep();
++static void save_dot_o();
+
+-main(argc,argv)
+-register char **argv;
++int
++main(int argc, char** argv)
+ {
+ int size;
+
+@@ -152,7 +161,7 @@
+ if (*token++ != '-' || !*token)
+ break;
+ else { register int flag;
+- for ( ; flag = *token++ ; ) {
++ for ( ; (flag = *token++) ; ) {
+ switch (flag) {
+ case 'd':
+ delete++;
+@@ -177,7 +186,7 @@
+ expunge++;
+ break;
+ case 'D':
+- for ( ; flag = *token++ ; )
++ for ( ; (flag = *token++) ; )
+ switch (flag) {
+ case 'c':
+ D_contents++;
+@@ -211,10 +220,10 @@
+ }
+
+ if (!expunge && argc < 1) goto usage;
+- if ((int) outfile && (int) makefile) /* not both */
++ if (outfile && makefile) /* not both */
+ goto usage;
+
+- if ((int) outfile) {
++ if (outfile) {
+ /*
+ * NeXT_MOD, For SGS stuff, in case still linked to master version
+ */
+@@ -227,7 +236,7 @@
+ exit(1);
+ } else if (D_open)
+ printf("%s: opened outfile \"%s\"\n", name, outfile);
+- } else if (mak = find_mak(makefile)) {
++ } else if ((mak = find_mak(makefile))) {
+ makout = temp_mak();
+ out = makout;
+ if (expunge)
+@@ -235,7 +244,7 @@
+ else
+ skip_mak(mak, makout);
+ } else if (mak_eof && /* non existent file == mt file */
+- (int)(makout = temp_mak())) { /* but we need to be able */
++ (makout = temp_mak()) != NULL) { /* but we need to be able */
+ out = makout; /* to write here */
+ } else if (makefile) {
+ fprintf(stderr, "%s: makefile \"%s\" can not be opened or stat'ed\n",
+@@ -246,7 +255,7 @@
+ for (; argc--; argv++) {
+ dep_file_index = 0;
+
+- if (size = read_dep(*argv)) {
++ if ((size = read_dep(*argv))) {
+
+ save_dot_o();
+ if (D_depend) printf("%s: dot_o = \"%s\"\n", name, dot_o);
+@@ -269,8 +278,8 @@
+ }
+
+
+-read_dep(file)
+-register char *file;
++int
++read_dep(char *file)
+ {
+ register int fd;
+ register int size;
+@@ -294,7 +303,7 @@
+ switch(statbuf.st_mode & S_IFMT) {
+ case S_IFREG:
+ if (D_time)
+- printf("%s: file time = %d\n", name, statbuf.st_mtime);
++ printf("%s: file time = %ld\n", name, statbuf.st_mtime);
+
+ if (statbuf.st_size > IObuffer) {
+ fprintf(stderr, "%s: file \"%s\" tooo big for IObuffer\n",
+@@ -302,9 +311,9 @@
+ goto out;
+ } else if (force)
+ break;
+- else if ((int) mak && statbuf.st_mtime < makstat.st_mtime) {
++ else if (mak && statbuf.st_mtime < makstat.st_mtime) {
+ if (verbose || D_time)
+- fprintf(stderr, "%s: skipping \"%s\" %d < %d \"%s\"\n",
++ fprintf(stderr, "%s: skipping \"%s\" %ld < %ld \"%s\"\n",
+ name, file, statbuf.st_mtime, makstat.st_mtime,
+ real_mak_name);
+ goto out;
+@@ -345,6 +354,7 @@
+ return 0;
+ }
+
++static void
+ save_dot_o()
+ {
+ register char *cp = file_array;
+@@ -355,6 +365,7 @@
+ *svp = 0;
+ }
+
++static void
+ parse_dep()
+ {
+ register char *lp = file_array;
+@@ -381,7 +392,8 @@
+ cp = dep_line;
+ lp[-1] = 0;
+ /* skip .o file name */
+- while ((c = *cp++) && c != ':'); if (!c) continue;
++ while ((c = *cp++) && c != ':');
++ if (!c) continue;
+ next_filename:
+ i = 0;
+ abspath = 0;
+@@ -415,7 +427,7 @@
+ if (abspath)
+ *cp++ = '/';
+ for (c=0; c<i; c++) {register char *ccp = path_component[c];
+- while (*cp++ = *ccp++);
++ while ((*cp++ = *ccp++));
+ *--cp = '/';
+ cp++;
+ }
+@@ -425,7 +437,7 @@
+ dep_files[c].str = tlp;
+ dep_files[c].len = cp - tlp;
+ if (D_depend)
+- printf("%s: dep_file[%d] = \"%s\" Len %d\n",
++ printf("%s: dep_file[%d] = \"%s\" Len %ld\n",
+ name, dep_file_index - 1, tlp, cp - tlp);
+ tlp = cp + 1;
+ if (oldc)
+@@ -436,8 +448,8 @@
+ }
+ }
+
+-output_dep(out)
+-FILE *out;
++static void
++output_dep(FILE *out)
+ {
+ register int j;
+ register int size = 1000;
+@@ -479,12 +491,11 @@
+
+ /* process makefile */
+ FILE *
+-find_mak(file)
+-char *file;
++find_mak(char *file)
+ {
+ FILE *mak;
+
+- if ((int) file) {
++ if (file) {
+ if ((mak = fopen(file, "r")) != NULL) {
+ real_mak_name = file;
+ } else if (update) {
+@@ -514,7 +525,7 @@
+ if (D_open)
+ printf("%s: opened makefile \"%s\"\n", name, real_mak_name);
+ if (D_time)
+- printf("%s: makefile time = %d\n", name, makstat.st_mtime);
++ printf("%s: makefile time = %ld\n", name, makstat.st_mtime);
+
+ return mak;
+ }
+@@ -543,8 +554,8 @@
+ return mak;
+ }
+
+-skip_mak(makin, makout)
+-register FILE *makin, *makout;
++static void
++skip_mak(FILE *makin, FILE *makout)
+ {
+ register int len = SALUTATIONLEN;
+
+@@ -566,8 +577,8 @@
+ printf("eof = %d str = \"%s\"", mak_eof, makbuf);
+ }
+
+-expunge_mak(makin, makout)
+-register FILE *makin, *makout;
++static void
++expunge_mak(FILE *makin, FILE *makout)
+ {
+ register int len = SALUTATIONLEN;
+ register int oldlen = OLDSALUTATIONLEN;
diff --git a/sys-apps/darwin-miscutils/files/darwin-miscutils-5-error.patch b/sys-apps/darwin-miscutils/files/darwin-miscutils-5-error.patch
deleted file mode 100644
index 391dceb39188..000000000000
--- a/sys-apps/darwin-miscutils/files/darwin-miscutils-5-error.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- developer_cmds-48/error/error.h
-+++ developer_cmds-48/error/error.h
-@@ -194,11 +194,7 @@
- */
- extern int nerrors;
- extern Eptr er_head;
--#ifdef __APPLE__
--__private_extern__
--#else
- extern
--#endif
- Eptr *errors;
- /*
- * Resources for each of the files mentioned
diff --git a/sys-apps/darwin-miscutils/files/darwin-miscutils-5-stdlib.patch b/sys-apps/darwin-miscutils/files/darwin-miscutils-5-stdlib.patch
deleted file mode 100644
index 0605310bff42..000000000000
--- a/sys-apps/darwin-miscutils/files/darwin-miscutils-5-stdlib.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- misc_cmds-23/leave/leave.c
-+++ misc_cmds-23/leave/leave.c
-@@ -34,6 +34,7 @@
- */
-
- #include <sys/cdefs.h>
-+#include <stdlib.h>
- #ifndef lint
- __COPYRIGHT("@(#) Copyright (c) 1980, 1988, 1993\n\
- The Regents of the University of California. All rights reserved.\n");
---- shell_cmds-118/alias/alias.c
-+++ shell_cmds-118/alias/alias.c
-@@ -3,6 +3,7 @@
- the shell scripts. It does not lead to any deliverable. Do not remove this
- file from this (..../shell_cmds/alias) directory.
- */
-+#include <stdlib.h>
- int main()
- {
- exit(0);
diff --git a/sys-apps/darwin-miscutils/files/darwin-miscutils-5-w.patch b/sys-apps/darwin-miscutils/files/darwin-miscutils-5-w.patch
deleted file mode 100644
index f6db3753d930..000000000000
--- a/sys-apps/darwin-miscutils/files/darwin-miscutils-5-w.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- shell_cmds-118/w/w.c
-+++ shell_cmds-118/w/w.c
-@@ -75,7 +75,6 @@
- #include <kvm.h>
- #endif
- #include <langinfo.h>
--#include <libutil.h>
- #include <limits.h>
- #include <locale.h>
- #include <netdb.h>
diff --git a/sys-apps/darwin-miscutils/files/darwin-miscutils-6-w64.patch b/sys-apps/darwin-miscutils/files/darwin-miscutils-6-w64.patch
deleted file mode 100644
index 77c194e6df9b..000000000000
--- a/sys-apps/darwin-miscutils/files/darwin-miscutils-6-w64.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-grobian@gentoo.org:
-The provided libresolv library is faulty for 64-bits, or this call is
-doing something wrong. It is highly undocumented, so it feels like
-messing around with some pointers is not going to work. Doing this in
-64-bits mode, at least results in a nice Bus Error.
-
---- shell_cmds-118/w/w.c
-+++ shell_cmds-118/w/w.c
-@@ -262,7 +262,7 @@
- argc -= optind;
- argv += optind;
-
--#if !TARGET_OS_EMBEDDED
-+#if !defined(TARGET_OS_EMBEDDED) && !defined(__LP64__)
- if (!(_res.options & RES_INIT))
- res_init();
- _res.retrans = 2; /* resolver timeout to 2 seconds per try */
diff --git a/sys-apps/darwin-miscutils/metadata.xml b/sys-apps/darwin-miscutils/metadata.xml
index 0c982d881307..e511bd3af00b 100644
--- a/sys-apps/darwin-miscutils/metadata.xml
+++ b/sys-apps/darwin-miscutils/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>prefix@gentoo.org</email>
<name>Gentoo Prefix</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">apple-oss-distributions/adv_cmds</remote-id>
+ <remote-id type="github">apple-oss-distributions/developer_cmds</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/dbus-broker/Manifest b/sys-apps/dbus-broker/Manifest
index bc2a1237b094..737f271721f0 100644
--- a/sys-apps/dbus-broker/Manifest
+++ b/sys-apps/dbus-broker/Manifest
@@ -1,16 +1,2 @@
-DIST c-dvar-9e1a5b4363aaece7169df2b2852944a1434b2df5.tar.gz 24719 BLAKE2B 3688d10d8295bf608d091cbc808dd2a22a535a94d40fcad46735a4f9e6e58ac06f969cd4ae7e65a04dd5719d00b424d902d904553e3e83bd0b93eebf6aed0cc0 SHA512 07e5d8b0b110ae4eab34024cfef05474b6a59a931ce61632bba3d96ed6bf042edf5b21238e2045cde92f1ab91ed45b1d78e2f8fe79f527f0ab6d018dc205608e
-DIST c-dvar-ebcef28b0da11ec20250f2fa710130967ddd8fa9.tar.gz 24584 BLAKE2B 6b9d488b14861084aa48a874d0db97d90ef554df4877650f66631474b12cd9c7d595726e074de4ddc549d7e053984aaa02f0cc0543811842fac468b2e3c3b8a4 SHA512 592ac99b75101e24babb0ab08ede530bf4cd3a31780d7da1e4d4ace04878811ab2db324c91dd962d6d9e433cd05658cc467a272d9ff3d17e2f594bfe08998b3e
-DIST c-ini-43f379396a320940d0661c15780f618f84d29348.tar.gz 14081 BLAKE2B 4d2b63eb5c068505cfddaa1511b95b1a3c646b7325e9efd55b4b5be85312081c148671e40157c757c45ab0128f0a486102267dddf1c3adbc8f91bb7da363a67a SHA512 bdc9412f2e43446f4dcc36f3447047c68f2bbd3c5b278671e3fb5b3d4a09d9724f362bc5d2fae44d5f899d0fe9978c559e3da57ec2eb36ee2d847bbf6af44014
-DIST c-ini-f8336c98a74038a1104283fde284c5b82d6aef92.tar.gz 13957 BLAKE2B 7e0bb2d8b5cd8cdf2aefa48b9e8980327690bbc255937b12b54133014aac9473ddab517a126a0f24a2258cffc263043d643ccacb99c41bb666e4d0c18e62899e SHA512 5abba94f47f5155464e28b4f99ff147f1cd029db9b020c579508eec0f3e9d6be09462a56ed8b9320a4d8ccc0d03a8f959cdb9098fcd828c917f37e2deda90e1c
-DIST c-list-ac7c831398219acd8d63038e866035a6f86f9e21.tar.gz 9218 BLAKE2B 5821032f60a27c696b0e34e2d26250c48df19ad0d8883eb50b5a0ee6acafeb3f570b23db7b0c823ecdd47de6eb0d2d02d5aedf467283e8293e848189af8d59ae SHA512 95a3e03b0b3aefcdaaf350de0b41cdbba081716ff01bf6e2442aaf0340f0411f32f6a06d204614b59af26df921a161b4bee5f83b5145ec2cae485c9954a6709c
-DIST c-list-b1cd4dbf967d73b24dfe6cc56aaf3fdd668692e3.tar.gz 9362 BLAKE2B 04a1bca5166ad8b868ebac679e4a1c1f244bfc04ea617030a7cd9ea3765793d21cc2b1ab6c102a1e0fec65860b4d029f398ab6f9815f8fbec82608da59eb7794 SHA512 e1a852fa8e57f1fbe81f2fdc186079d6e4be9d729bb23d3d1f8450fd867dd2c04db3229fc96a80379c7199568c14df472e92a83d0925e2b2692eccc49a35b84d
-DIST c-rbtree-7624b79b26d020a796fe7c624a4f2d3340f3d66b.tar.gz 25835 BLAKE2B 080f8cc5168b40fcc87a3b21f8b8130385f6ccaafe1c229dca4b9a2e8b6294e7100784f9d2e12c336172e5eaa93645f41379e96bf85c622f0c46f27ad9dbaa65 SHA512 e231a040aedbd12309c4b57cd78fbbe931460fd0748f4a7d0f88ebbe5a0f088bdc6f473be94a5e9d9a28c0a8bf31d81a7a9669132b7eddb44a51a9a2e598cbb0
-DIST c-rbtree-fa97402c3faa18c2ddd8325eb66e2bd58a224477.tar.gz 26050 BLAKE2B 2e295550f455185eb97d1f3212d626bc7df94999fc065e814fdaa8c8d3cd14eb288f840e9cee04842cf1dc4b541a88a043d1f70eee36b77fa82f15430335372f SHA512 1fcafde26da46511dd7141280d14d96d7dd08fb7f62f71c2703c8fdb32783f9e6eac883a4adbdfb0b85139d26f89ce99291a28e789a4ec8c31e4a4560c584418
-DIST c-shquote-1d171fe52c23944c3c0be1f2603595f2488a9ff8.tar.gz 10758 BLAKE2B 1f78587e667b74cdb0dcaf82f54fc891840b75b4fff478bf315b5a45b421875ea43b07504330c35cc31c68956899d5c8e1768dcaf863ef6ece23ac56734b8479 SHA512 a0788dcbd7cdab95577564b499cca3ca1039d2b22bb05f277e84ff3868f1f80796ef26236b5aa082057169d8a9f69781f06792f9a3ae8e869d5d721931f3c882
-DIST c-shquote-80d4252f31c74785f0ec8c4578a26f1c16d5941e.tar.gz 10639 BLAKE2B 9a0f64e0af692a0872b5f40236543e551b7eb49134fc31ca6bfcf56b36e5eba1c2445093a089bf4eaa1aa89671270b35a7cf20767377b167c1cc2cec8f72a23a SHA512 1a79cf2c7c5d3f0d901a3947e371717314b1a4015eb0182b3b670c65abf9c054f30870ec73c628d7b2519b506035be45c23267594e76bc3b7d2e6b53a38cb068
-DIST c-stdaux-d6ecce8afbb7703e1469cc5e7a59a8bd32e2d4a4.tar.gz 13142 BLAKE2B 771c79666d4758e37204aec1149186af8b1b29979ae604b335d3b5e0f78ee934c5fa97e81aa7e4cd19f8eb88f463c2f4a507b93309ae263fae827ee5138c7ac6 SHA512 c486bdddf76522e8242da46b8057a5ee9c9f5f152962a46bb50e0e2e35be5060b8b93d0b2a0d0bcd800abdf8de6e835e68d17d83dc47c6c99e7e0b2f4d91db23
-DIST c-stdaux-ffa3dcc365331e31eb0c0f73ccd258e7a29a162a.tar.gz 13000 BLAKE2B 23f5a264aa4a8c70e8562c62d4c4a3a865e5132febc9709576d4e565a72c171131c0d6292bb9d39a40cf5f3caa2dd6226a5c2e2bb763dd05c0e32e14f8a85725 SHA512 ac51a94b49db7b77c40fc3c1da74ee4a2a5fc8200f51e45d298cff2540fc7de0a348a028709562b8361f99c1978c37fac2de46941c2bd0ce31dabf80d405c042
-DIST c-utf8-1f7e2ff1164bd2161cb480532b2b34cb2074bde1.tar.gz 9462 BLAKE2B 3e1429da756f82123c3aec84c2abdf02af3e131e9004a59434bf6743173082fa4a0c6d43def625da03bf0de1b3c5cfd6f00719dcfb5baced783b3d9dbbc407e6 SHA512 4221c3d366d3cb8bd61a612fcadafbc48ae817cd4770c2710a39b5bdb916a31b8ba17ca55ccac5e54ed88ee9bbcc4a9bbb3ce5b836ccfc570db28d35816cee27
-DIST c-utf8-9017bab6cef301229e2295bdcb19476466065788.tar.gz 9332 BLAKE2B 34c97e01305b45ae0370b15d9c9e6257497fa9954889252f0344e5d2418d054bed07060b92fd22434581d9d9b8875a4771dd60db161447e7e402e75ff073daee SHA512 11b4eb7342f844bf65205e87de18ef96b685f50884d39dc0a00db2d1f99489d463b3c4a4f196e08c9a7dd39be7e0b372a27c3a666658f6e4a5e03951fb1b4596
-DIST dbus-broker-23.tar.gz 209924 BLAKE2B 44f966c04c34c4dec9916224038418203b55013f07f95331b6143aaf3e4d0a5add8e76a288627f9c6458326fabf4e9db9c235190d281c4ed01a7a325c90bcece SHA512 42bcb085e153f81d59ac8f1dccd707aa1da98d01f5299eeb2fac2f12bad3fd7aa3268a489f4e1dc827c0e3f7000f11989394047ffee3c3c4da9f50bc6d12dfac
-DIST dbus-broker-24.tar.gz 210347 BLAKE2B 037ccb389bf1df6dfcc600e363c604d498bff9b5e37ff10f5040acca4917fcd96c03552d769fcf87e50927bac17b8d1fe70f3ec8835c744166518791cc725d81 SHA512 81819f496dd34a43b16e1b3bcc982bb9b8574aec061fef7831b259c2649b05ed8c866795f815de9eb7aff940404811f8b235832121dfabb0672de9b76acb09d8
+DIST dbus-broker-33.tar.xz 253172 BLAKE2B 2b1773999af5caa435acb9dca848c96863b8d738dee6c3542e492d031555c0251a07d371465cd5dc071c0198b33251bf8233f18ddaa7ae34dc9b5df938ca9298 SHA512 776684a5d19a6c25fc46dff19821014a32d967f8132385b86c5281f2d69192dce64b3ad92ae6a158d1d64753e89d918385a1a31f32811f54060504113f065baa
+DIST dbus-broker-35.tar.xz 263388 BLAKE2B 2c270197d76ec157bf2fd8eb561b49cea2739d656fac8129c4ecdd0bbd5804f8e4e427414cb5f209eef4c22cf9559fc409170476d8df0e1d252c0b5aa2288e01 SHA512 409e415889bd53b78e92ba077455e5583852a071e233e4b23dcbb23d8a367f177d6c8138e6fc113dcfe48440b68d594c1a076cb43ef445d472645f671d5ae033
diff --git a/sys-apps/dbus-broker/dbus-broker-23.ebuild b/sys-apps/dbus-broker/dbus-broker-23.ebuild
deleted file mode 100644
index 509831015999..000000000000
--- a/sys-apps/dbus-broker/dbus-broker-23.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2017-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit meson
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/bus1/dbus-broker.git"
-else
- KEYWORDS="~amd64"
- SRC_URI="https://github.com/bus1/dbus-broker/archive/v${PV}/${P}.tar.gz"
- declare -Ag SUBPROJECTS=(
- [c-dvar]=9e1a5b4363aaece7169df2b2852944a1434b2df5
- [c-ini]=43f379396a320940d0661c15780f618f84d29348
- [c-list]=b1cd4dbf967d73b24dfe6cc56aaf3fdd668692e3
- [c-rbtree]=fa97402c3faa18c2ddd8325eb66e2bd58a224477
- [c-shquote]=1d171fe52c23944c3c0be1f2603595f2488a9ff8
- [c-stdaux]=d6ecce8afbb7703e1469cc5e7a59a8bd32e2d4a4
- [c-utf8]=1f7e2ff1164bd2161cb480532b2b34cb2074bde1
- )
- for sp in "${!SUBPROJECTS[@]}"; do
- commit=${SUBPROJECTS[${sp}]}
- SRC_URI+=" https://github.com/c-util/${sp}/archive/${commit}/${sp}-${commit}.tar.gz"
- done
- unset sp commit
-fi
-
-DESCRIPTION="Linux D-Bus Message Broker"
-HOMEPAGE="https://github.com/bus1/dbus-broker/wiki"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="audit doc +launcher selinux"
-
-DEPEND="
- audit? (
- >=sys-process/audit-2.7
- >=sys-libs/libcap-ng-0.6
- )
- launcher? (
- >=dev-libs/expat-2.2
- >=sys-apps/systemd-230:0=
- )
- selinux? ( sys-libs/libselinux )
-"
-RDEPEND="${DEPEND}
- launcher? ( sys-apps/dbus )"
-BDEPEND="
- doc? ( dev-python/docutils )
- virtual/pkgconfig
-"
-
-src_prepare() {
- if [[ ${PV} != 9999 ]]; then
- local sp commit
- for sp in "${!SUBPROJECTS[@]}"; do
- commit=${SUBPROJECTS[${sp}]}
- rmdir "subprojects/${sp}" || die
- mv "${WORKDIR}/${sp}-${commit}" "subprojects/${sp}" || die
- done
- fi
- default
-}
-
-src_configure() {
- local emesonargs=(
- -Daudit=$(usex audit true false)
- -Ddocs=$(usex doc true false)
- -Dlauncher=$(usex launcher true false)
- -Dselinux=$(usex selinux true false)
- )
- meson_src_configure
-}
diff --git a/sys-apps/dbus-broker/dbus-broker-24.ebuild b/sys-apps/dbus-broker/dbus-broker-24.ebuild
deleted file mode 100644
index c88e0f6dba1b..000000000000
--- a/sys-apps/dbus-broker/dbus-broker-24.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2017-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit meson
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/bus1/dbus-broker.git"
-else
- KEYWORDS="~amd64 ~ppc64"
- SRC_URI="https://github.com/bus1/dbus-broker/archive/v${PV}/${P}.tar.gz"
- declare -Ag SUBPROJECTS=(
- [c-dvar]=ebcef28b0da11ec20250f2fa710130967ddd8fa9
- [c-ini]=f8336c98a74038a1104283fde284c5b82d6aef92
- [c-list]=ac7c831398219acd8d63038e866035a6f86f9e21
- [c-rbtree]=7624b79b26d020a796fe7c624a4f2d3340f3d66b
- [c-shquote]=80d4252f31c74785f0ec8c4578a26f1c16d5941e
- [c-stdaux]=ffa3dcc365331e31eb0c0f73ccd258e7a29a162a
- [c-utf8]=9017bab6cef301229e2295bdcb19476466065788
- )
- for sp in "${!SUBPROJECTS[@]}"; do
- commit=${SUBPROJECTS[${sp}]}
- SRC_URI+=" https://github.com/c-util/${sp}/archive/${commit}/${sp}-${commit}.tar.gz"
- done
- unset sp commit
-fi
-
-DESCRIPTION="Linux D-Bus Message Broker"
-HOMEPAGE="https://github.com/bus1/dbus-broker/wiki"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="audit doc +launcher selinux"
-
-DEPEND="
- audit? (
- >=sys-process/audit-2.7
- >=sys-libs/libcap-ng-0.6
- )
- launcher? (
- >=dev-libs/expat-2.2
- >=sys-apps/systemd-230:0=
- )
- selinux? ( sys-libs/libselinux )
-"
-RDEPEND="${DEPEND}
- launcher? ( sys-apps/dbus )"
-BDEPEND="
- doc? ( dev-python/docutils )
- virtual/pkgconfig
-"
-
-src_prepare() {
- if [[ ${PV} != 9999 ]]; then
- local sp commit
- for sp in "${!SUBPROJECTS[@]}"; do
- commit=${SUBPROJECTS[${sp}]}
- rmdir "subprojects/${sp}" || die
- mv "${WORKDIR}/${sp}-${commit}" "subprojects/${sp}" || die
- done
- fi
- default
-}
-
-src_configure() {
- local emesonargs=(
- -Daudit=$(usex audit true false)
- -Ddocs=$(usex doc true false)
- -Dlauncher=$(usex launcher true false)
- -Dselinux=$(usex selinux true false)
- )
- meson_src_configure
-}
diff --git a/sys-apps/dbus-broker/dbus-broker-33-r1.ebuild b/sys-apps/dbus-broker/dbus-broker-33-r1.ebuild
new file mode 100644
index 000000000000..aae6b444ce7e
--- /dev/null
+++ b/sys-apps/dbus-broker/dbus-broker-33-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2017-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic meson
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/bus1/dbus-broker.git"
+else
+ SRC_URI="https://github.com/bus1/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 arm64 ppc64 ~riscv"
+fi
+
+DESCRIPTION="Linux D-Bus Message Broker"
+HOMEPAGE="https://github.com/bus1/dbus-broker/wiki"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="apparmor audit doc +launcher selinux"
+
+DEPEND="
+ apparmor? (
+ >=sys-libs/libapparmor-3.0
+ )
+ audit? (
+ >=sys-process/audit-3.0
+ >=sys-libs/libcap-ng-0.6
+ )
+ launcher? (
+ >=dev-libs/expat-2.2
+ >=sys-apps/systemd-230:0=
+ )
+ selinux? ( >=sys-libs/libselinux-3.2 )
+"
+RDEPEND="${DEPEND}
+ launcher? ( sys-apps/dbus )"
+BDEPEND="
+ doc? ( dev-python/docutils )
+ virtual/pkgconfig
+"
+
+if [[ ${PV} == 9999 ]]; then
+src_unpack() {
+ git-r3_src_unpack
+ cd "${P}" || die
+ meson subprojects download || die
+}
+fi
+
+src_configure() {
+ # Causes test failures with -fno-semantic-interposition (bug #919100)
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ local emesonargs=(
+ $(meson_use apparmor)
+ $(meson_use audit)
+ $(meson_use doc docs)
+ $(meson_use launcher)
+ $(meson_use selinux)
+ )
+ meson_src_configure
+}
diff --git a/sys-apps/dbus-broker/dbus-broker-33-r2.ebuild b/sys-apps/dbus-broker/dbus-broker-33-r2.ebuild
new file mode 100644
index 000000000000..bc58722947b4
--- /dev/null
+++ b/sys-apps/dbus-broker/dbus-broker-33-r2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2017-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/bus1/dbus-broker.git"
+else
+ SRC_URI="https://github.com/bus1/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 arm64 ppc64 ~riscv"
+fi
+
+DESCRIPTION="Linux D-Bus Message Broker"
+HOMEPAGE="https://github.com/bus1/dbus-broker/wiki"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="apparmor audit doc +launcher selinux"
+
+DEPEND="
+ apparmor? (
+ >=sys-libs/libapparmor-3.0
+ )
+ audit? (
+ >=sys-process/audit-3.0
+ >=sys-libs/libcap-ng-0.6
+ )
+ launcher? (
+ >=dev-libs/expat-2.2
+ >=sys-apps/systemd-230:0=
+ )
+ selinux? ( >=sys-libs/libselinux-3.2 )
+"
+RDEPEND="${DEPEND}
+ launcher? ( sys-apps/dbus )"
+BDEPEND="
+ doc? ( dev-python/docutils )
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-33-strict-aliasing.patch
+)
+
+if [[ ${PV} == 9999 ]]; then
+src_unpack() {
+ git-r3_src_unpack
+ cd "${P}" || die
+ meson subprojects download || die
+}
+fi
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use apparmor)
+ $(meson_use audit)
+ $(meson_use doc docs)
+ $(meson_use launcher)
+ $(meson_use selinux)
+ )
+ meson_src_configure
+}
diff --git a/sys-apps/dbus-broker/dbus-broker-35.ebuild b/sys-apps/dbus-broker/dbus-broker-35.ebuild
new file mode 100644
index 000000000000..a5799ed9f4c4
--- /dev/null
+++ b/sys-apps/dbus-broker/dbus-broker-35.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2017-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/bus1/dbus-broker.git"
+else
+ SRC_URI="https://github.com/bus1/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 arm64 ~loong ppc64 ~riscv"
+fi
+
+DESCRIPTION="Linux D-Bus Message Broker"
+HOMEPAGE="https://github.com/bus1/dbus-broker/wiki"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="apparmor audit doc +launcher selinux"
+
+DEPEND="
+ apparmor? (
+ >=sys-libs/libapparmor-3.0
+ )
+ audit? (
+ >=sys-process/audit-3.0
+ >=sys-libs/libcap-ng-0.6
+ )
+ launcher? (
+ >=dev-libs/expat-2.2
+ >=sys-apps/systemd-230:0=
+ )
+ selinux? ( >=sys-libs/libselinux-3.2 )
+"
+RDEPEND="${DEPEND}
+ launcher? ( sys-apps/dbus )"
+BDEPEND="
+ doc? ( dev-python/docutils )
+ virtual/pkgconfig
+"
+
+if [[ ${PV} == 9999 ]]; then
+src_unpack() {
+ git-r3_src_unpack
+ cd "${P}" || die
+ meson subprojects download || die
+}
+fi
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use apparmor)
+ $(meson_use audit)
+ $(meson_use doc docs)
+ $(meson_use launcher)
+ $(meson_use selinux)
+ )
+ meson_src_configure
+}
diff --git a/sys-apps/dbus-broker/dbus-broker-9999.ebuild b/sys-apps/dbus-broker/dbus-broker-9999.ebuild
index 3c404b237532..83050ef5bcd9 100644
--- a/sys-apps/dbus-broker/dbus-broker-9999.ebuild
+++ b/sys-apps/dbus-broker/dbus-broker-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 2017-2020 Gentoo Authors
+# Copyright 2017-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit meson
@@ -9,22 +9,8 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/bus1/dbus-broker.git"
else
- KEYWORDS="~amd64 ~ppc64"
- SRC_URI="https://github.com/bus1/dbus-broker/archive/v${PV}/${P}.tar.gz"
- declare -Ag SUBPROJECTS=(
- [c-dvar]=9e1a5b4363aaece7169df2b2852944a1434b2df5
- [c-ini]=43f379396a320940d0661c15780f618f84d29348
- [c-list]=b1cd4dbf967d73b24dfe6cc56aaf3fdd668692e3
- [c-rbtree]=fa97402c3faa18c2ddd8325eb66e2bd58a224477
- [c-shquote]=1d171fe52c23944c3c0be1f2603595f2488a9ff8
- [c-stdaux]=d6ecce8afbb7703e1469cc5e7a59a8bd32e2d4a4
- [c-utf8]=1f7e2ff1164bd2161cb480532b2b34cb2074bde1
- )
- for sp in "${!SUBPROJECTS[@]}"; do
- commit=${SUBPROJECTS[${sp}]}
- SRC_URI+=" https://github.com/c-util/${sp}/archive/${commit}/${sp}-${commit}.tar.gz"
- done
- unset sp commit
+ SRC_URI="https://github.com/bus1/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv"
fi
DESCRIPTION="Linux D-Bus Message Broker"
@@ -32,18 +18,21 @@ HOMEPAGE="https://github.com/bus1/dbus-broker/wiki"
LICENSE="Apache-2.0"
SLOT="0"
-IUSE="audit doc +launcher selinux"
+IUSE="apparmor audit doc +launcher selinux"
DEPEND="
+ apparmor? (
+ >=sys-libs/libapparmor-3.0
+ )
audit? (
- >=sys-process/audit-2.7
+ >=sys-process/audit-3.0
>=sys-libs/libcap-ng-0.6
)
launcher? (
>=dev-libs/expat-2.2
>=sys-apps/systemd-230:0=
)
- selinux? ( sys-libs/libselinux )
+ selinux? ( >=sys-libs/libselinux-3.2 )
"
RDEPEND="${DEPEND}
launcher? ( sys-apps/dbus )"
@@ -52,24 +41,21 @@ BDEPEND="
virtual/pkgconfig
"
-src_prepare() {
- if [[ ${PV} != 9999 ]]; then
- local sp commit
- for sp in "${!SUBPROJECTS[@]}"; do
- commit=${SUBPROJECTS[${sp}]}
- rmdir "subprojects/${sp}" || die
- mv "${WORKDIR}/${sp}-${commit}" "subprojects/${sp}" || die
- done
- fi
- default
+if [[ ${PV} == 9999 ]]; then
+src_unpack() {
+ git-r3_src_unpack
+ cd "${P}" || die
+ meson subprojects download || die
}
+fi
src_configure() {
local emesonargs=(
- -Daudit=$(usex audit true false)
- -Ddocs=$(usex doc true false)
- -Dlauncher=$(usex launcher true false)
- -Dselinux=$(usex selinux true false)
+ $(meson_use apparmor)
+ $(meson_use audit)
+ $(meson_use doc docs)
+ $(meson_use launcher)
+ $(meson_use selinux)
)
meson_src_configure
}
diff --git a/sys-apps/dbus-broker/files/dbus-broker-33-strict-aliasing.patch b/sys-apps/dbus-broker/files/dbus-broker-33-strict-aliasing.patch
new file mode 100644
index 000000000000..cb21fb08ae5e
--- /dev/null
+++ b/sys-apps/dbus-broker/files/dbus-broker-33-strict-aliasing.patch
@@ -0,0 +1,207 @@
+https://bugs.gentoo.org/919100
+https://github.com/c-util/c-utf8/issues/4
+https://github.com/c-util/c-utf8/commit/4b7cb9f940e45d3c68bf427cdeeaf5da47b03b41
+
+From 4b7cb9f940e45d3c68bf427cdeeaf5da47b03b41 Mon Sep 17 00:00:00 2001
+From: David Rheinsberg <david.rheinsberg@gmail.com>
+Date: Wed, 4 Jan 2023 14:14:56 +0100
+Subject: [PATCH] c-utf8: avoid violating strict-aliasing rules
+
+Use the c_load*() helpers of c-stdaux to avoid the strict aliasing rules
+of the C language.
+
+Signed-off-by: David Rheinsberg <david.rheinsberg@gmail.com>
+--- a/subprojects/libcutf8-1/src/c-utf8.c
++++ b/subprojects/libcutf8-1/src/c-utf8.c
+@@ -17,9 +17,9 @@
+ #define C_UTF8_ASCII_MASK ((size_t)UINT64_C(0x8080808080808080))
+ #define C_UTF8_ASCII_SUB ((size_t)UINT64_C(0x0101010101010101))
+
+-static inline int c_utf8_word_is_ascii(const size_t *word) {
++static inline int c_utf8_word_is_ascii(size_t word) {
+ /* True unless any byte is NULL or has the MSB set. */
+- return ((((*word - C_UTF8_ASCII_SUB) | *word) & C_UTF8_ASCII_MASK) == 0);
++ return ((((word - C_UTF8_ASCII_SUB) | word) & C_UTF8_ASCII_MASK) == 0);
+ }
+
+ /**
+@@ -37,10 +37,10 @@ static inline int c_utf8_word_is_ascii(const size_t *word) {
+ * byte, without any upper bound on its length.
+ */
+ _c_public_ void c_utf8_verify_ascii(const char **strp, size_t *lenp) {
+- unsigned char *str = (unsigned char *)*strp;
++ const char *str = *strp;
+ size_t len = lenp ? *lenp : (size_t)-1;
+
+- while (len > 0 && *str < 128) {
++ while (len > 0 && c_load_8(str, 0) < 128) {
+ if ((void*)c_align_to((unsigned long)str, sizeof(size_t)) == str) {
+ /*
+ * If the string is aligned to a word boundary, scan two
+@@ -51,8 +51,8 @@ _c_public_ void c_utf8_verify_ascii(const char **strp, size_t *lenp) {
+ * available.
+ */
+ while (len >= 2 * sizeof(size_t)) {
+- if (!c_utf8_word_is_ascii((size_t*)str) ||
+- !c_utf8_word_is_ascii(((size_t*)str) + 1))
++ if (!c_utf8_word_is_ascii(c_load(size_t, le, aligned, str, 0)) ||
++ !c_utf8_word_is_ascii(c_load(size_t, le, aligned, str, sizeof(size_t))))
+ break;
+
+ str += 2 * sizeof(size_t);
+@@ -63,8 +63,8 @@ _c_public_ void c_utf8_verify_ascii(const char **strp, size_t *lenp) {
+ /*
+ * Find the actual end of the ASCII-portion of the string.
+ */
+- while (len > 0 && *str < 128) {
+- if (_c_unlikely_(*str == 0x00))
++ while (len > 0 && c_load_8(str, 0) < 128) {
++ if (_c_unlikely_(c_load_8(str, 0) == 0x00))
+ goto out;
+ ++str;
+ --len;
+@@ -74,7 +74,7 @@ _c_public_ void c_utf8_verify_ascii(const char **strp, size_t *lenp) {
+ * The string was not aligned, scan one character at a time until
+ * it is.
+ */
+- if (_c_unlikely_(*str == 0x00))
++ if (_c_unlikely_(c_load_8(str, 0) == 0x00))
+ goto out;
+ ++str;
+ --len;
+@@ -82,7 +82,7 @@ _c_public_ void c_utf8_verify_ascii(const char **strp, size_t *lenp) {
+ }
+
+ out:
+- *strp = (char *)str;
++ *strp = str;
+ if (lenp)
+ *lenp = len;
+ }
+@@ -104,13 +104,13 @@ _c_public_ void c_utf8_verify_ascii(const char **strp, size_t *lenp) {
+ * byte, without any upper bound on its length.
+ */
+ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+- unsigned char *str = (unsigned char *)*strp;
++ const char *str = *strp;
+ size_t len = lenp ? *lenp : (size_t)-1;
+
+ /* See Unicode 10.0.0, Chapter 3, Section D92 */
+
+ while (len > 0) {
+- switch (*str) {
++ switch (c_load_8(str, 0)) {
+ case 0x00:
+ goto out;
+ case 0x01 ... 0x7F:
+@@ -123,7 +123,7 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xC2 ... 0xDF:
+ if (_c_unlikely_(len < 2))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 1))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 1))))
+ goto out;
+
+ str += 2;
+@@ -133,9 +133,9 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xE0:
+ if (_c_unlikely_(len < 3))
+ goto out;
+- if (_c_unlikely_(*(str + 1) < 0xA0 || *(str + 1) > 0xBF))
++ if (_c_unlikely_(c_load_8(str, 1) < 0xA0 || c_load_8(str, 1) > 0xBF))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+
+ str += 3;
+@@ -145,9 +145,9 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xE1 ... 0xEC:
+ if (_c_unlikely_(len < 3))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 1))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 1))))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+
+ str += 3;
+@@ -157,9 +157,9 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xED:
+ if (_c_unlikely_(len < 3))
+ goto out;
+- if (_c_unlikely_(*(str + 1) < 0x80 || *(str + 1) > 0x9F))
++ if (_c_unlikely_(c_load_8(str, 1) < 0x80 || c_load_8(str, 1) > 0x9F))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+
+ str += 3;
+@@ -169,9 +169,9 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xEE ... 0xEF:
+ if (_c_unlikely_(len < 3))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 1))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 1))))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+
+ str += 3;
+@@ -181,11 +181,11 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xF0:
+ if (_c_unlikely_(len < 4))
+ goto out;
+- if (_c_unlikely_(*(str + 1) < 0x90 || *(str + 1) > 0xBF))
++ if (_c_unlikely_(c_load_8(str, 1) < 0x90 || c_load_8(str, 1) > 0xBF))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 3))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 3))))
+ goto out;
+
+ str += 4;
+@@ -195,11 +195,11 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xF1 ... 0xF3:
+ if (_c_unlikely_(len < 4))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 1))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 1))))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 3))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 3))))
+ goto out;
+
+ str += 4;
+@@ -209,11 +209,11 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ case 0xF4:
+ if (_c_unlikely_(len < 4))
+ goto out;
+- if (_c_unlikely_(*(str + 1) < 0x80 || *(str + 1) > 0x8F))
++ if (_c_unlikely_(c_load_8(str, 1) < 0x80 || c_load_8(str, 1) > 0x8F))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 2))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 2))))
+ goto out;
+- if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(*(str + 3))))
++ if (_c_unlikely_(!C_UTF8_CHAR_IS_TAIL(c_load_8(str, 3))))
+ goto out;
+
+ str += 4;
+@@ -226,7 +226,7 @@ _c_public_ void c_utf8_verify(const char **strp, size_t *lenp) {
+ }
+
+ out:
+- *strp = (char *)str;
++ *strp = str;
+ if (lenp)
+ *lenp = len;
+ }
diff --git a/sys-apps/dbus-broker/metadata.xml b/sys-apps/dbus-broker/metadata.xml
index 70b5bc00f437..fd906467218c 100644
--- a/sys-apps/dbus-broker/metadata.xml
+++ b/sys-apps/dbus-broker/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>floppym@gentoo.org</email>
@@ -8,4 +8,7 @@
<use>
<flag name="launcher">dbus-daemon compatibility launcher</flag>
</use>
+ <upstream>
+ <remote-id type="github">bus1/dbus-broker</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/dbus/Manifest b/sys-apps/dbus/Manifest
index b407c1584db7..5fd11e6318ea 100644
--- a/sys-apps/dbus/Manifest
+++ b/sys-apps/dbus/Manifest
@@ -1,2 +1,2 @@
-DIST dbus-1.12.18.tar.gz 2094453 BLAKE2B eba48940c80a7483b858199156b297d97896232283988940d3cdb915eaa30bcdd13bc01f8410dcdb34193040a8bc8ce2dd45f1310aed791071e5dc5a6b38eb27 SHA512 817674e86a5d4cbfa705a79ca5197176311e47505c5da02334c2811f63b55014b582a12bce53bc73a08a3ad5061f210ba0d1e5f3bbf7697c81ca70c22a76fc13
-DIST dbus-1.12.20.tar.gz 2095511 BLAKE2B b467526e7e0281db7b8c7c178469fe006dab29ccb1ea197c02495bd297e8de766230b68ed86c4a7e05dbe09ca30ce941a15e0bf8030fe0df66c04febf0534b3b SHA512 0964683bc6859374cc94e42e1ec0cdb542cca67971c205fcba4352500b6c0891665b0718e7d85eb060c81cb82e3346c313892bc02384da300ddd306c7eef0056
+DIST dbus-1.15.6.tar.xz 1406672 BLAKE2B 5c2b876ede784a82c43096e82c3fa4b905cab26aa8f27e5553d07c53bde6120854cd9b109f3f179e9b47ecd7e2b69c08655b96d821c7790c1c9f52bb6356d331 SHA512 8c2e207d98245d5f8d358e9824be9e8646af8147958e8bd56e18d478e8976e58a6645ee1aba62451fcc58443157e2a39c4a6ed9c2e440e7b6b05053d022f0113
+DIST dbus-1.15.8.tar.xz 1149088 BLAKE2B 7c1962dfccc6a1b6250e80b0706d7f44536fabeff009013865ec4b1edaec6d4b47dcbe8f78caa61ef7aef4bac6b79f0e2027dd16bbb2baae328429e648bf8b8c SHA512 84b8ac194ede3bf300f4501395b7253538469a4f9d59ea4adaf800282e359ef43494d81941b338081d3704317d39f0aba14906c6490419f04f946eb9d815f46c
diff --git a/sys-apps/dbus/dbus-1.12.18.ebuild b/sys-apps/dbus/dbus-1.12.18.ebuild
deleted file mode 100644
index dae892d4e87c..000000000000
--- a/sys-apps/dbus/dbus-1.12.18.ebuild
+++ /dev/null
@@ -1,272 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-inherit autotools flag-o-matic linux-info python-any-r1 readme.gentoo-r1 systemd virtualx multilib-minimal
-
-DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
-HOMEPAGE="https://dbus.freedesktop.org/"
-SRC_URI="https://dbus.freedesktop.org/releases/dbus/${P}.tar.gz"
-
-LICENSE="|| ( AFL-2.1 GPL-2 )"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug doc elogind kernel_linux selinux static-libs systemd test user-session X"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="?? ( elogind systemd )"
-
-BDEPEND="
- acct-user/messagebus
- app-text/xmlto
- app-text/docbook-xml-dtd:4.4
- sys-devel/autoconf-archive
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
-"
-COMMON_DEPEND="
- >=dev-libs/expat-2.1.0
- elogind? ( sys-auth/elogind )
- selinux? ( sys-libs/libselinux )
- systemd? ( sys-apps/systemd:0= )
- X? (
- x11-libs/libX11
- x11-libs/libXt
- )
-"
-DEPEND="${COMMON_DEPEND}
- dev-libs/expat
- test? (
- ${PYTHON_DEPS}
- >=dev-libs/glib-2.40:2
- )
-"
-RDEPEND="${COMMON_DEPEND}
- acct-user/messagebus
- selinux? ( sec-policy/selinux-dbus )
-"
-
-DOC_CONTENTS="
- Some applications require a session bus in addition to the system
- bus. Please see \`man dbus-launch\` for more information.
-"
-
-# out of sources build dir for make check
-TBD="${WORKDIR}/${P}-tests-build"
-
-PATCHES=(
- "${FILESDIR}/${PN}-enable-elogind.patch"
- "${FILESDIR}/${PN}-daemon-optional.patch" # bug #653136
-)
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-
- if use kernel_linux; then
- CONFIG_CHECK="~EPOLL"
- linux-info_pkg_setup
- fi
-}
-
-src_prepare() {
- # Tests were restricted because of this
- sed -i \
- -e 's/.*bus_dispatch_test.*/printf ("Disabled due to excess noise\\n");/' \
- -e '/"dispatch"/d' \
- bus/test-main.c || die
-
- default
-
- if [[ ${CHOST} == *-solaris* ]]; then
- # fix standards conflict, due to gcc being c99 by default nowadays
- sed -i \
- -e 's/_XOPEN_SOURCE=500/_XOPEN_SOURCE=600/' \
- configure.ac || die
- fi
-
- # required for bug 263909, cross-compile so don't remove eautoreconf
- eautoreconf
-}
-
-src_configure() {
- local rundir=$(usex kernel_linux /run /var/run)
- sed -e "s;@rundir@;${EPREFIX}${rundir};g" "${FILESDIR}"/dbus.initd.in \
- > "${T}"/dbus.initd || die
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local docconf myconf testconf
-
- # so we can get backtraces from apps
- case ${CHOST} in
- *-mingw*)
- # error: unrecognized command line option '-rdynamic' wrt #488036
- ;;
- *)
- append-flags -rdynamic
- ;;
- esac
-
- # libaudit is *only* used in DBus wrt SELinux support, so disable it, if
- # not on an SELinux profile.
- myconf=(
- --localstatedir="${EPREFIX}/var"
- $(use_enable static-libs static)
- $(use_enable debug verbose-mode)
- --disable-asserts
- --disable-checks
- $(use_enable selinux)
- $(use_enable selinux libaudit)
- --disable-apparmor
- $(use_enable kernel_linux inotify)
- $(use_enable kernel_FreeBSD kqueue)
- $(use_enable elogind)
- $(use_enable systemd)
- $(use_enable user-session)
- --disable-embedded-tests
- --disable-modular-tests
- $(use_enable debug stats)
- --with-session-socket-dir="${EPREFIX}"/tmp
- --with-system-pid-file="${EPREFIX}${rundir}"/dbus.pid
- --with-system-socket="${EPREFIX}${rundir}"/dbus/system_bus_socket
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- --with-dbus-user=messagebus
- $(use_with X x)
- )
-
- if [[ ${CHOST} == *-darwin* ]]; then
- myconf+=(
- --enable-launchd
- --with-launchd-agent-dir="${EPREFIX}"/Library/LaunchAgents
- )
- fi
-
- if multilib_is_native_abi; then
- docconf=(
- --enable-xml-docs
- $(use_enable doc doxygen-docs)
- )
- else
- docconf=(
- --disable-xml-docs
- --disable-doxygen-docs
- )
- myconf+=(
- --disable-daemon
- --disable-selinux
- --disable-libaudit
- --disable-elogind
- --disable-systemd
- --without-x
- )
- fi
-
- einfo "Running configure in ${BUILD_DIR}"
- ECONF_SOURCE="${S}" econf "${myconf[@]}" "${docconf[@]}"
-
- if multilib_is_native_abi && use test; then
- mkdir "${TBD}" || die
- cd "${TBD}" || die
- testconf=(
- $(use_enable test asserts)
- $(use_enable test checks)
- $(use_enable test embedded-tests)
- $(use_enable test stats)
- $(has_version dev-libs/dbus-glib && echo --enable-modular-tests)
- )
- einfo "Running configure in ${TBD}"
- ECONF_SOURCE="${S}" econf "${myconf[@]}" "${testconf[@]}"
- fi
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi; then
- # after the compile, it uses a selinuxfs interface to
- # check if the SELinux policy has the right support
- use selinux && addwrite /selinux/access
-
- einfo "Running make in ${BUILD_DIR}"
- emake
-
- if use test; then
- einfo "Running make in ${TBD}"
- emake -C "${TBD}"
- fi
- else
- emake -C dbus libdbus-1.la
- fi
-}
-
-src_test() {
- DBUS_VERBOSE=1 virtx emake -j1 -C "${TBD}" check
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- emake DESTDIR="${D}" install
- else
- emake DESTDIR="${D}" install-pkgconfigDATA
- emake DESTDIR="${D}" -C dbus \
- install-libLTLIBRARIES install-dbusincludeHEADERS \
- install-nodist_dbusarchincludeHEADERS
- fi
-}
-
-multilib_src_install_all() {
- newinitd "${T}"/dbus.initd dbus
-
- if use X; then
- # dbus X session script (#77504)
- # turns out to only work for GDM (and startx). has been merged into
- # other desktop (kdm and such scripts)
- exeinto /etc/X11/xinit/xinitrc.d
- doexe "${FILESDIR}"/80-dbus
- fi
-
- # needs to exist for dbus sessions to launch
- keepdir /usr/share/dbus-1/services
- keepdir /etc/dbus-1/{session,system}.d
- # machine-id symlink from pkg_postinst()
- keepdir /var/lib/dbus
- # let the init script create the /var/run/dbus directory
- rm -rf "${ED}"/var/run
-
- dodoc AUTHORS ChangeLog NEWS README doc/TODO
- readme.gentoo_create_doc
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-
- # Ensure unique id is generated and put it in /etc wrt #370451 but symlink
- # for DBUS_MACHINE_UUID_FILE (see tools/dbus-launch.c) and reverse
- # dependencies with hardcoded paths (although the known ones got fixed already)
- dbus-uuidgen --ensure="${EROOT}"/etc/machine-id
- ln -sf "${EPREFIX}"/etc/machine-id "${EROOT}"/var/lib/dbus/machine-id
-
- if [[ ${CHOST} == *-darwin* ]]; then
- local plist="org.freedesktop.dbus-session.plist"
- elog
- elog
- elog "For MacOS/Darwin we now ship launchd support for dbus."
- elog "This enables autolaunch of dbus at session login and makes"
- elog "dbus usable under MacOS/Darwin."
- elog
- elog "The launchd plist file ${plist} has been"
- elog "installed in ${EPREFIX}/Library/LaunchAgents."
- elog "For it to be used, you will have to do all of the following:"
- elog " + cd ~/Library/LaunchAgents"
- elog " + ln -s ${EPREFIX}/Library/LaunchAgents/${plist}"
- elog " + logout and log back in"
- elog
- elog "If your application needs a proper DBUS_SESSION_BUS_ADDRESS"
- elog "specified and refused to start otherwise, then export the"
- elog "the following to your environment:"
- elog " DBUS_SESSION_BUS_ADDRESS=\"launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET\""
- fi
-}
diff --git a/sys-apps/dbus/dbus-1.12.20.ebuild b/sys-apps/dbus/dbus-1.12.20.ebuild
deleted file mode 100644
index 3b9952f62bb9..000000000000
--- a/sys-apps/dbus/dbus-1.12.20.ebuild
+++ /dev/null
@@ -1,272 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-inherit autotools flag-o-matic linux-info python-any-r1 readme.gentoo-r1 systemd virtualx multilib-minimal
-
-DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
-HOMEPAGE="https://dbus.freedesktop.org/"
-SRC_URI="https://dbus.freedesktop.org/releases/dbus/${P}.tar.gz"
-
-LICENSE="|| ( AFL-2.1 GPL-2 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug doc elogind kernel_linux selinux static-libs systemd test user-session X"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="?? ( elogind systemd )"
-
-BDEPEND="
- acct-user/messagebus
- app-text/xmlto
- app-text/docbook-xml-dtd:4.4
- sys-devel/autoconf-archive
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
-"
-COMMON_DEPEND="
- >=dev-libs/expat-2.1.0
- elogind? ( sys-auth/elogind )
- selinux? ( sys-libs/libselinux )
- systemd? ( sys-apps/systemd:0= )
- X? (
- x11-libs/libX11
- x11-libs/libXt
- )
-"
-DEPEND="${COMMON_DEPEND}
- dev-libs/expat
- test? (
- ${PYTHON_DEPS}
- >=dev-libs/glib-2.40:2
- )
-"
-RDEPEND="${COMMON_DEPEND}
- acct-user/messagebus
- selinux? ( sec-policy/selinux-dbus )
-"
-
-DOC_CONTENTS="
- Some applications require a session bus in addition to the system
- bus. Please see \`man dbus-launch\` for more information.
-"
-
-# out of sources build dir for make check
-TBD="${WORKDIR}/${P}-tests-build"
-
-PATCHES=(
- "${FILESDIR}/${PN}-enable-elogind.patch"
- "${FILESDIR}/${PN}-daemon-optional.patch" # bug #653136
-)
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-
- if use kernel_linux; then
- CONFIG_CHECK="~EPOLL"
- linux-info_pkg_setup
- fi
-}
-
-src_prepare() {
- # Tests were restricted because of this
- sed -i \
- -e 's/.*bus_dispatch_test.*/printf ("Disabled due to excess noise\\n");/' \
- -e '/"dispatch"/d' \
- bus/test-main.c || die
-
- default
-
- if [[ ${CHOST} == *-solaris* ]]; then
- # fix standards conflict, due to gcc being c99 by default nowadays
- sed -i \
- -e 's/_XOPEN_SOURCE=500/_XOPEN_SOURCE=600/' \
- configure.ac || die
- fi
-
- # required for bug 263909, cross-compile so don't remove eautoreconf
- eautoreconf
-}
-
-src_configure() {
- local rundir=$(usex kernel_linux /run /var/run)
- sed -e "s;@rundir@;${EPREFIX}${rundir};g" "${FILESDIR}"/dbus.initd.in \
- > "${T}"/dbus.initd || die
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local docconf myconf testconf
-
- # so we can get backtraces from apps
- case ${CHOST} in
- *-mingw*)
- # error: unrecognized command line option '-rdynamic' wrt #488036
- ;;
- *)
- append-flags -rdynamic
- ;;
- esac
-
- # libaudit is *only* used in DBus wrt SELinux support, so disable it, if
- # not on an SELinux profile.
- myconf=(
- --localstatedir="${EPREFIX}/var"
- $(use_enable static-libs static)
- $(use_enable debug verbose-mode)
- --disable-asserts
- --disable-checks
- $(use_enable selinux)
- $(use_enable selinux libaudit)
- --disable-apparmor
- $(use_enable kernel_linux inotify)
- $(use_enable kernel_FreeBSD kqueue)
- $(use_enable elogind)
- $(use_enable systemd)
- $(use_enable user-session)
- --disable-embedded-tests
- --disable-modular-tests
- $(use_enable debug stats)
- --with-session-socket-dir="${EPREFIX}"/tmp
- --with-system-pid-file="${EPREFIX}${rundir}"/dbus.pid
- --with-system-socket="${EPREFIX}${rundir}"/dbus/system_bus_socket
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- --with-dbus-user=messagebus
- $(use_with X x)
- )
-
- if [[ ${CHOST} == *-darwin* ]]; then
- myconf+=(
- --enable-launchd
- --with-launchd-agent-dir="${EPREFIX}"/Library/LaunchAgents
- )
- fi
-
- if multilib_is_native_abi; then
- docconf=(
- --enable-xml-docs
- $(use_enable doc doxygen-docs)
- )
- else
- docconf=(
- --disable-xml-docs
- --disable-doxygen-docs
- )
- myconf+=(
- --disable-daemon
- --disable-selinux
- --disable-libaudit
- --disable-elogind
- --disable-systemd
- --without-x
- )
- fi
-
- einfo "Running configure in ${BUILD_DIR}"
- ECONF_SOURCE="${S}" econf "${myconf[@]}" "${docconf[@]}"
-
- if multilib_is_native_abi && use test; then
- mkdir "${TBD}" || die
- cd "${TBD}" || die
- testconf=(
- $(use_enable test asserts)
- $(use_enable test checks)
- $(use_enable test embedded-tests)
- $(use_enable test stats)
- $(has_version dev-libs/dbus-glib && echo --enable-modular-tests)
- )
- einfo "Running configure in ${TBD}"
- ECONF_SOURCE="${S}" econf "${myconf[@]}" "${testconf[@]}"
- fi
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi; then
- # after the compile, it uses a selinuxfs interface to
- # check if the SELinux policy has the right support
- use selinux && addwrite /selinux/access
-
- einfo "Running make in ${BUILD_DIR}"
- emake
-
- if use test; then
- einfo "Running make in ${TBD}"
- emake -C "${TBD}"
- fi
- else
- emake -C dbus libdbus-1.la
- fi
-}
-
-src_test() {
- DBUS_VERBOSE=1 virtx emake -j1 -C "${TBD}" check
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- emake DESTDIR="${D}" install
- else
- emake DESTDIR="${D}" install-pkgconfigDATA
- emake DESTDIR="${D}" -C dbus \
- install-libLTLIBRARIES install-dbusincludeHEADERS \
- install-nodist_dbusarchincludeHEADERS
- fi
-}
-
-multilib_src_install_all() {
- newinitd "${T}"/dbus.initd dbus
-
- if use X; then
- # dbus X session script (#77504)
- # turns out to only work for GDM (and startx). has been merged into
- # other desktop (kdm and such scripts)
- exeinto /etc/X11/xinit/xinitrc.d
- doexe "${FILESDIR}"/80-dbus
- fi
-
- # needs to exist for dbus sessions to launch
- keepdir /usr/share/dbus-1/services
- keepdir /etc/dbus-1/{session,system}.d
- # machine-id symlink from pkg_postinst()
- keepdir /var/lib/dbus
- # let the init script create the /var/run/dbus directory
- rm -rf "${ED}"/var/run
-
- dodoc AUTHORS ChangeLog NEWS README doc/TODO
- readme.gentoo_create_doc
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-
- # Ensure unique id is generated and put it in /etc wrt #370451 but symlink
- # for DBUS_MACHINE_UUID_FILE (see tools/dbus-launch.c) and reverse
- # dependencies with hardcoded paths (although the known ones got fixed already)
- dbus-uuidgen --ensure="${EROOT}"/etc/machine-id
- ln -sf "${EPREFIX}"/etc/machine-id "${EROOT}"/var/lib/dbus/machine-id
-
- if [[ ${CHOST} == *-darwin* ]]; then
- local plist="org.freedesktop.dbus-session.plist"
- elog
- elog
- elog "For MacOS/Darwin we now ship launchd support for dbus."
- elog "This enables autolaunch of dbus at session login and makes"
- elog "dbus usable under MacOS/Darwin."
- elog
- elog "The launchd plist file ${plist} has been"
- elog "installed in ${EPREFIX}/Library/LaunchAgents."
- elog "For it to be used, you will have to do all of the following:"
- elog " + cd ~/Library/LaunchAgents"
- elog " + ln -s ${EPREFIX}/Library/LaunchAgents/${plist}"
- elog " + logout and log back in"
- elog
- elog "If your application needs a proper DBUS_SESSION_BUS_ADDRESS"
- elog "specified and refused to start otherwise, then export the"
- elog "the following to your environment:"
- elog " DBUS_SESSION_BUS_ADDRESS=\"launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET\""
- fi
-}
diff --git a/sys-apps/dbus/dbus-1.15.6.ebuild b/sys-apps/dbus/dbus-1.15.6.ebuild
new file mode 100644
index 000000000000..2dc19ec5f954
--- /dev/null
+++ b/sys-apps/dbus/dbus-1.15.6.ebuild
@@ -0,0 +1,298 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Be careful with packaging odd-version-number branches!
+# After >1.15, we should at least keep stable as an upstream stable branch,
+# possibly even ~arch too, given the note about security releases on their website.
+# See https://www.freedesktop.org/wiki/Software/dbus/#download.
+
+PYTHON_COMPAT=( python3_{10..12} )
+TMPFILES_OPTIONAL=1
+
+# As of 1.15.6, the Meson build system is now recommended upstream, but we
+# can't use it because our elogind patch needs rebasing and submission upstream.
+# See bug #599494.
+inherit autotools flag-o-matic linux-info python-any-r1 readme.gentoo-r1 systemd tmpfiles virtualx multilib-minimal
+
+DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/dbus/"
+SRC_URI="https://dbus.freedesktop.org/releases/dbus/${P}.tar.xz"
+
+LICENSE="|| ( AFL-2.1 GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="debug doc elogind selinux static-libs systemd test valgrind X"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+BDEPEND="
+ acct-user/messagebus
+ app-text/xmlto
+ app-text/docbook-xml-dtd:4.4
+ dev-build/autoconf-archive
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+"
+COMMON_DEPEND="
+ >=dev-libs/expat-2.1.0
+ elogind? ( sys-auth/elogind )
+ selinux? (
+ sys-process/audit
+ sys-libs/libselinux
+ )
+ systemd? ( sys-apps/systemd:0= )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXt
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/expat
+ test? (
+ ${PYTHON_DEPS}
+ >=dev-libs/glib-2.40:2
+ )
+ valgrind? ( >=dev-debug/valgrind-3.6 )
+ X? ( x11-base/xorg-proto )
+"
+RDEPEND="${COMMON_DEPEND}
+ acct-user/messagebus
+ selinux? ( sec-policy/selinux-dbus )
+ systemd? ( virtual/tmpfiles )
+"
+
+DOC_CONTENTS="
+ Some applications require a session bus in addition to the system
+ bus. Please see \`man dbus-launch\` for more information.
+"
+
+# out of sources build dir for make check
+TBD="${WORKDIR}/${P}-tests-build"
+
+PATCHES=(
+ "${FILESDIR}/dbus-1.15.0-enable-elogind.patch"
+ "${FILESDIR}/dbus-1.15.0-daemon-optional.patch" # bug #653136
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+
+ if use kernel_linux; then
+ CONFIG_CHECK="~EPOLL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${CHOST} == *-solaris* ]]; then
+ # fix standards conflict, due to gcc being c99 by default nowadays
+ sed -i \
+ -e 's/_XOPEN_SOURCE=500/_XOPEN_SOURCE=600/' \
+ configure.ac || die
+ fi
+
+ # required for bug #263909, cross-compile so don't remove eautoreconf
+ eautoreconf
+}
+
+src_configure() {
+ local rundir=$(usex kernel_linux /run /var/run)
+
+ sed -e "s;@rundir@;${EPREFIX}${rundir};g" "${FILESDIR}"/dbus.initd.in \
+ > "${T}"/dbus.initd || die
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local docconf myconf testconf
+
+ # so we can get backtraces from apps
+ case ${CHOST} in
+ *-mingw*)
+ # error: unrecognized command line option '-rdynamic', bug #488036
+ ;;
+ *)
+ append-flags -rdynamic
+ ;;
+ esac
+
+ # libaudit is *only* used in DBus wrt SELinux support, so disable it, if
+ # not on an SELinux profile.
+ myconf=(
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}${rundir}"
+ $(use_enable static-libs static)
+ $(use_enable debug verbose-mode)
+ --disable-asserts
+ --disable-checks
+ $(use_enable selinux)
+ $(use_enable selinux libaudit)
+ --disable-apparmor
+ $(use_enable kernel_linux inotify)
+ --disable-kqueue
+ $(use_enable elogind)
+ $(use_enable systemd)
+ $(use_enable systemd user-session)
+ --disable-embedded-tests
+ --disable-modular-tests
+ $(use_enable debug stats)
+ --with-session-socket-dir="${EPREFIX}"/tmp
+ --with-system-pid-file="${EPREFIX}${rundir}"/dbus.pid
+ --with-system-socket="${EPREFIX}${rundir}"/dbus/system_bus_socket
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --with-systemduserunitdir="$(systemd_get_userunitdir)"
+ --with-dbus-user=messagebus
+ $(multilib_native_use_with valgrind)
+ $(use_with X x)
+ )
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=(
+ --enable-launchd
+ --with-launchd-agent-dir="${EPREFIX}"/Library/LaunchAgents
+ )
+ fi
+
+ if multilib_is_native_abi; then
+ docconf=(
+ --enable-xml-docs
+ $(use_enable doc doxygen-docs)
+ )
+ else
+ docconf=(
+ --disable-xml-docs
+ --disable-doxygen-docs
+ )
+ myconf+=(
+ --disable-daemon
+ --disable-selinux
+ --disable-libaudit
+ --disable-elogind
+ --disable-systemd
+ --without-x
+ )
+ fi
+
+ einfo "Running configure in ${BUILD_DIR}"
+ ECONF_SOURCE="${S}" econf "${myconf[@]}" "${docconf[@]}"
+
+ if multilib_is_native_abi && use test; then
+ mkdir "${TBD}" || die
+ cd "${TBD}" || die
+ testconf=(
+ $(use_enable test asserts)
+ $(use_enable test checks)
+ $(use_enable test embedded-tests)
+ $(use_enable test stats)
+ $(has_version dev-libs/dbus-glib && echo --enable-modular-tests)
+ )
+ einfo "Running configure in ${TBD}"
+ ECONF_SOURCE="${S}" econf "${myconf[@]}" "${testconf[@]}"
+ fi
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ # After the compile, it uses a selinuxfs interface to
+ # check if the SELinux policy has the right support
+ use selinux && addwrite /selinux/access
+
+ einfo "Running make in ${BUILD_DIR}"
+ emake
+
+ if use test; then
+ einfo "Running make in ${TBD}"
+ emake -C "${TBD}"
+ fi
+ else
+ emake -C dbus libdbus-1.la
+ fi
+}
+
+src_test() {
+ # DBUS_TEST_MALLOC_FAILURES=0 to avoid huge test logs
+ # https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/CONTRIBUTING.md#L231
+ DBUS_TEST_MALLOC_FAILURES=0 DBUS_VERBOSE=1 virtx emake -j1 -C "${TBD}" check
+
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake DESTDIR="${D}" install
+ else
+ emake DESTDIR="${D}" install-pkgconfigDATA install-cmakeconfigDATA
+ emake DESTDIR="${D}" -C dbus \
+ install-libLTLIBRARIES install-dbusincludeHEADERS \
+ install-nodist_dbusarchincludeHEADERS
+ fi
+}
+
+multilib_src_install_all() {
+ newinitd "${T}"/dbus.initd dbus
+
+ if use X; then
+ # dbus X session script (bug #77504)
+ # turns out to only work for GDM (and startx). has been merged into
+ # other desktop (kdm and such scripts)
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/80-dbus-r1 80-dbus
+ fi
+
+ # Needs to exist for dbus sessions to launch
+ keepdir /usr/share/dbus-1/services
+ keepdir /etc/dbus-1/{session,system}.d
+ # machine-id symlink from pkg_postinst()
+ keepdir /var/lib/dbus
+ # Let the init script create the /var/run/dbus directory
+ rm -rf "${ED}"/{,var/}run
+
+ # bug #761763
+ rm -rf "${ED}"/usr/lib/sysusers.d
+
+ dodoc AUTHORS NEWS README doc/TODO
+ readme.gentoo_create_doc
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if use systemd; then
+ tmpfiles_process dbus.conf
+ fi
+
+ # Ensure unique id is generated and put it in /etc wrt bug #370451 but symlink
+ # for DBUS_MACHINE_UUID_FILE (see tools/dbus-launch.c) and reverse
+ # dependencies with hardcoded paths (although the known ones got fixed already)
+ # TODO: should be safe to remove at least the ln because of the above tmpfiles_process?
+ dbus-uuidgen --ensure="${EROOT}"/etc/machine-id
+ ln -sf "${EPREFIX}"/etc/machine-id "${EROOT}"/var/lib/dbus/machine-id
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ local plist="org.freedesktop.dbus-session.plist"
+ elog
+ elog
+ elog "For MacOS/Darwin we now ship launchd support for dbus."
+ elog "This enables autolaunch of dbus at session login and makes"
+ elog "dbus usable under MacOS/Darwin."
+ elog
+ elog "The launchd plist file ${plist} has been"
+ elog "installed in ${EPREFIX}/Library/LaunchAgents."
+ elog "For it to be used, you will have to do all of the following:"
+ elog " + cd ~/Library/LaunchAgents"
+ elog " + ln -s ${EPREFIX}/Library/LaunchAgents/${plist}"
+ elog " + logout and log back in"
+ elog
+ elog "If your application needs a proper DBUS_SESSION_BUS_ADDRESS"
+ elog "specified and refused to start otherwise, then export the"
+ elog "the following to your environment:"
+ elog " DBUS_SESSION_BUS_ADDRESS=\"launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET\""
+ fi
+}
diff --git a/sys-apps/dbus/dbus-1.15.8.ebuild b/sys-apps/dbus/dbus-1.15.8.ebuild
new file mode 100644
index 000000000000..ca19fead7d26
--- /dev/null
+++ b/sys-apps/dbus/dbus-1.15.8.ebuild
@@ -0,0 +1,232 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Be careful with packaging odd-version-number branches!
+# After >1.15, we should at least keep stable as an upstream stable branch,
+# possibly even ~arch too, given the note about security releases on their website.
+# See https://www.freedesktop.org/wiki/Software/dbus/#download.
+
+PYTHON_COMPAT=( python3_{10..12} )
+TMPFILES_OPTIONAL=1
+
+inherit linux-info meson-multilib python-any-r1 readme.gentoo-r1 systemd tmpfiles virtualx
+
+DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/dbus/"
+SRC_URI="https://dbus.freedesktop.org/releases/dbus/${P}.tar.xz"
+
+LICENSE="|| ( AFL-2.1 GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+# TODO: USE=daemon
+IUSE="debug doc elogind selinux static-libs systemd test valgrind X"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ acct-user/messagebus
+ app-text/xmlto
+ app-text/docbook-xml-dtd:4.4
+ dev-build/autoconf-archive
+ virtual/pkgconfig
+ doc? ( app-text/doxygen )
+"
+COMMON_DEPEND="
+ >=dev-libs/expat-2.1.0
+ elogind? ( sys-auth/elogind )
+ selinux? (
+ sys-process/audit
+ sys-libs/libselinux
+ )
+ systemd? ( sys-apps/systemd:= )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXt
+ )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-libs/expat
+ test? (
+ ${PYTHON_DEPS}
+ >=dev-libs/glib-2.40:2
+ )
+ valgrind? ( >=dev-debug/valgrind-3.6 )
+ X? ( x11-base/xorg-proto )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ acct-user/messagebus
+ selinux? ( sec-policy/selinux-dbus )
+ systemd? ( virtual/tmpfiles )
+"
+
+DOC_CONTENTS="
+ Some applications require a session bus in addition to the system
+ bus. Please see \`man dbus-launch\` for more information.
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.15.8-enable-elogind.patch # bug #599494
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+
+ if use kernel_linux; then
+ CONFIG_CHECK="~EPOLL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_configure() {
+ local rundir=$(usex kernel_linux /run /var/run)
+
+ sed -e "s;@rundir@;${EPREFIX}${rundir};g" "${FILESDIR}"/dbus.initd.in \
+ > "${T}"/dbus.initd || die
+
+ meson-multilib_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ --localstatedir="${EPREFIX}/var"
+ -Druntime_dir="${EPREFIX}${rundir}"
+
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+
+ -Dapparmor=disabled
+ -Dasserts=false # TODO
+ -Dchecks=false # TODO
+ $(meson_use debug stats)
+ $(meson_use debug verbose_mode)
+ -Dcontainers=false
+ -Ddbus_user=messagebus
+ -Dkqueue=disabled
+ $(meson_feature kernel_linux inotify)
+ $(meson_native_use_feature doc doxygen_docs)
+ $(meson_native_enabled xml_docs) # Controls man pages
+
+ -Dembedded_tests=false
+ -Dinstalled_tests=false
+ $(meson_native_true message_bus) # TODO: USE=daemon?
+ $(meson_feature test modular_tests)
+ -Dqt_help=disabled
+
+ $(meson_native_true tools)
+
+ $(meson_native_use_feature elogind)
+ $(meson_native_use_feature systemd)
+ $(meson_use systemd user_session)
+ $(meson_native_use_feature X x11_autolaunch)
+ $(meson_native_use_feature valgrind)
+
+ # libaudit is *only* used in DBus wrt SELinux support, so disable it if
+ # not on an SELinux profile.
+ $(meson_native_use_feature selinux)
+ $(meson_native_use_feature selinux libaudit)
+
+ -Dsession_socket_dir="${EPREFIX}"/tmp
+ -Dsystem_pid_file="${EPREFIX}${rundir}"/dbus.pid
+ -Dsystem_socket="${EPREFIX}${rundir}"/dbus/system_bus_socket
+ -Dsystemd_system_unitdir="$(systemd_get_systemunitdir)"
+ -Dsystemd_user_unitdir="$(systemd_get_userunitdir)"
+ )
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ emesonargs+=(
+ -Dlaunchd=enabled
+ -Dlaunchd_agent_dir="${EPREFIX}"/Library/LaunchAgents
+ )
+ fi
+
+ meson_src_configure
+}
+
+amultilib_src_configure() {
+ myconf=(
+ $(use_enable static-libs static)
+ )
+
+ # $(has_version dev-libs/dbus-glib && echo --enable-modular-tests)
+}
+
+multilib_src_compile() {
+ # After the compile, it uses a selinuxfs interface to
+ # check if the SELinux policy has the right support
+ use selinux && addwrite /selinux/access
+
+ meson_src_compile
+}
+
+multilib_src_test() {
+ # DBUS_TEST_MALLOC_FAILURES=0 to avoid huge test logs
+ # https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/CONTRIBUTING.md#L231
+ DBUS_TEST_MALLOC_FAILURES=0 DBUS_VERBOSE=1 virtx meson_src_test
+
+}
+
+multilib_src_install_all() {
+ newinitd "${T}"/dbus.initd dbus
+
+ if use X; then
+ # dbus X session script (bug #77504)
+ # turns out to only work for GDM (and startx). has been merged into
+ # other desktop (kdm and such scripts)
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/80-dbus-r1 80-dbus
+ fi
+
+ # Needs to exist for dbus sessions to launch
+ keepdir /usr/share/dbus-1/services
+ keepdir /etc/dbus-1/{session,system}.d
+ # machine-id symlink from pkg_postinst()
+ keepdir /var/lib/dbus
+ # Let the init script create the /var/run/dbus directory
+ rm -rf "${ED}"/{,var/}run
+
+ # bug #761763
+ rm -rf "${ED}"/usr/lib/sysusers.d
+
+ dodoc AUTHORS NEWS README doc/TODO
+ readme.gentoo_create_doc
+
+ mv "${ED}"/usr/share/doc/dbus/* "${ED}"/usr/share/doc/${PF}/ || die
+ rm -rf "${ED}"/usr/share/doc/dbus || die
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if use systemd; then
+ tmpfiles_process dbus.conf
+ fi
+
+ # Ensure unique id is generated and put it in /etc wrt bug #370451 but symlink
+ # for DBUS_MACHINE_UUID_FILE (see tools/dbus-launch.c) and reverse
+ # dependencies with hardcoded paths (although the known ones got fixed already)
+ # TODO: should be safe to remove at least the ln because of the above tmpfiles_process?
+ dbus-uuidgen --ensure="${EROOT}"/etc/machine-id
+ ln -sf "${EPREFIX}"/etc/machine-id "${EROOT}"/var/lib/dbus/machine-id
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ local plist="org.freedesktop.dbus-session.plist"
+ elog
+ elog "For MacOS/Darwin we now ship launchd support for dbus."
+ elog "This enables autolaunch of dbus at session login and makes"
+ elog "dbus usable under MacOS/Darwin."
+ elog
+ elog "The launchd plist file ${plist} has been"
+ elog "installed in ${EPREFIX}/Library/LaunchAgents."
+ elog "For it to be used, you will have to do all of the following:"
+ elog " + cd ~/Library/LaunchAgents"
+ elog " + ln -s ${EPREFIX}/Library/LaunchAgents/${plist}"
+ elog " + logout and log back in"
+ elog
+ elog "If your application needs a proper DBUS_SESSION_BUS_ADDRESS"
+ elog "specified and refused to start otherwise, then export the"
+ elog "the following to your environment:"
+ elog " DBUS_SESSION_BUS_ADDRESS=\"launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET\""
+ fi
+}
diff --git a/sys-apps/dbus/files/80-dbus b/sys-apps/dbus/files/80-dbus
deleted file mode 100644
index 5593e2cd7390..000000000000
--- a/sys-apps/dbus/files/80-dbus
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/bash
-
-# launches a session dbus instance
-
-dbuslaunch="`which dbus-launch 2>/dev/null`"
-if [ -n "$dbuslaunch" ] && [ -x "$dbuslaunch" ] && [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then
- if [ -n "$command" ]; then
- command="$dbuslaunch --exit-with-session $command"
- else
- eval `$dbuslaunch --sh-syntax --exit-with-session`
- fi
-fi
-
diff --git a/sys-apps/dbus/files/80-dbus-r1 b/sys-apps/dbus/files/80-dbus-r1
new file mode 100644
index 000000000000..3499a6a12eca
--- /dev/null
+++ b/sys-apps/dbus/files/80-dbus-r1
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+# launches a session dbus instance
+
+dbuslaunch=$(command -v dbus-launch 2>/dev/null)
+if [ -n "$dbuslaunch" ] && [ -x "$dbuslaunch" ] && [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then
+ if [ -n "$command" ]; then
+ command="$dbuslaunch --exit-with-session $command"
+ else
+ eval "$($dbuslaunch --sh-syntax --exit-with-session)"
+ fi
+fi
+
diff --git a/sys-apps/dbus/files/dbus-1.15.0-daemon-optional.patch b/sys-apps/dbus/files/dbus-1.15.0-daemon-optional.patch
new file mode 100644
index 000000000000..2b9cd03472d8
--- /dev/null
+++ b/sys-apps/dbus/files/dbus-1.15.0-daemon-optional.patch
@@ -0,0 +1,65 @@
+https://bugs.gentoo.org/653136
+
+From 3c08d28fbae8b0ef3839ef26f8d2a713a9a684f9 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 21 Feb 2019 23:53:19 +0100
+Subject: [PATCH] Make dbus daemon build optional
+
+--- a/bus/Makefile.am
++++ b/bus/Makefile.am
+@@ -76,6 +76,7 @@ agentdir=$(LAUNCHD_AGENT_DIR)
+ agent_DATA=org.freedesktop.dbus-session.plist
+ endif
+
++if DBUS_DAEMON
+ if DBUS_BUS_ENABLE_KQUEUE
+ DIR_WATCH_SOURCE=dir-watch-kqueue.c
+ else
+@@ -230,6 +231,7 @@ EXTRA_DIST += \
+ tmpfiles.d/dbus.conf.in \
+ tmpfiles.d/meson.build \
+ $(NULL)
++endif DBUS_DAEMON
+
+ if HAVE_SYSTEMD
+ systemdsystemunit_DATA = \
+--- a/configure.ac
++++ b/configure.ac
+@@ -211,6 +211,7 @@ AC_ARG_ENABLE([apparmor],
+ [enable_apparmor=$enableval],
+ [enable_apparmor=auto])
+ AC_ARG_ENABLE(libaudit,AS_HELP_STRING([--enable-libaudit],[build audit daemon support for SELinux]),enable_libaudit=$enableval,enable_libaudit=auto)
++AC_ARG_ENABLE(daemon, AS_HELP_STRING([--enable-daemon],[build with the dbus daemon]),enable_daemon=$enableval,enable_daemon=yes)
+ AC_ARG_ENABLE(inotify, AS_HELP_STRING([--enable-inotify],[build with inotify support (linux only)]),enable_inotify=$enableval,enable_inotify=auto)
+ AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
+ AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
+@@ -658,7 +659,20 @@ AC_CHECK_MEMBER([struct unpcbid.unp_pid],
+ [],
+ [[#include <sys/un.h>]])
+
+-PKG_CHECK_MODULES([EXPAT], [expat])
++# dbusdaemon checks
++if test x$enable_daemon = xno ; then
++ have_daemon=no
++else
++ have_daemon=yes
++fi
++
++dnl check if daemon shall be built
++if test x$have_daemon = xyes; then
++ AC_DEFINE(DBUS_DAEMON,1,[Use daemon])
++ PKG_CHECK_MODULES([EXPAT], [expat])
++fi
++
++AM_CONDITIONAL(DBUS_DAEMON, test x$have_daemon = xyes)
+
+ save_cflags="$CFLAGS"
+ save_libs="$LIBS"
+@@ -1748,6 +1762,7 @@ echo "
+ Building bus stats API: ${enable_stats}
+ Building SELinux support: ${have_selinux}
+ Building AppArmor support: ${have_apparmor}
++ Building daemon: ${have_daemon}
+ Building inotify support: ${have_inotify}
+ Building kqueue support: ${have_kqueue}
+ Building elogind support: ${have_elogind}
diff --git a/sys-apps/dbus/files/dbus-1.15.0-enable-elogind.patch b/sys-apps/dbus/files/dbus-1.15.0-enable-elogind.patch
new file mode 100644
index 000000000000..a6c0e1bd2153
--- /dev/null
+++ b/sys-apps/dbus/files/dbus-1.15.0-enable-elogind.patch
@@ -0,0 +1,75 @@
+https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/53
+https://bugs.gentoo.org/599494
+--- a/configure.ac
++++ b/configure.ac
+@@ -215,6 +215,7 @@ AC_ARG_ENABLE(inotify, AS_HELP_STRING([--enable-inotify],[build with inotify sup
+ AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
+ AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
+ AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
++AC_ARG_ENABLE(elogind, AS_HELP_STRING([--enable-elogind],[build with elogind user seat support]),enable_elogind=$enableval,enable_elogind=auto)
+ AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
+ AC_ARG_ENABLE(traditional-activation, AS_HELP_STRING([--disable-traditional-activation], [Do not build support for service activation without using SystemdService]), enable_traditional_activation="$enableval", enable_traditional_activation=yes)
+
+@@ -904,6 +905,24 @@ fi
+
+ AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
+
++dnl elogind detection
++if test x$enable_elogind = xno ; then
++ have_elogind=no;
++else
++ PKG_CHECK_MODULES([ELOGIND],
++ [libelogind >= 209],
++ [have_elogind=yes],
++ [have_elogind=no])
++fi
++
++if test x$have_elogind = xyes; then
++ AC_DEFINE(HAVE_ELOGIND,1,[Have elogind])
++fi
++
++if test x$enable_elogind = xyes -a x$have_elogind != xyes ; then
++ AC_MSG_ERROR([Explicitly requested elogind support, but libelogind not found])
++fi
++
+ dnl systemd detection
+ if test x$enable_systemd = xno ; then
+ have_systemd=no;
+@@ -1024,7 +1043,7 @@ if test x$with_valgrind != xno; then
+ fi
+
+ #### Set up final flags
+-LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS"
++LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS $ELOGIND_LIBS"
+ AC_SUBST([LIBDBUS_LIBS])
+
+ ### X11 detection
+@@ -1731,6 +1750,7 @@ echo "
+ Building AppArmor support: ${have_apparmor}
+ Building inotify support: ${have_inotify}
+ Building kqueue support: ${have_kqueue}
++ Building elogind support: ${have_elogind}
+ Building systemd support: ${have_systemd}
+ Traditional activation: ${enable_traditional_activation}
+ Building X11 code: ${have_x11}
+--- a/dbus/dbus-userdb-util.c
++++ b/dbus/dbus-userdb-util.c
+@@ -39,6 +39,9 @@
+ #ifdef HAVE_SYSTEMD
+ #include <systemd/sd-login.h>
+ #endif
++#if HAVE_ELOGIND
++#include <elogind/sd-login.h>
++#endif
+
+ /**
+ * @addtogroup DBusInternalsUtils
+@@ -65,7 +68,7 @@ dbus_bool_t
+ _dbus_is_console_user (dbus_uid_t uid,
+ DBusError *error)
+ {
+-#ifdef HAVE_SYSTEMD
++#if defined(HAVE_SYSTEMD) || defined(HAVE_ELOGIND)
+ /* check if we have logind */
+ if (access ("/run/systemd/seats/", F_OK) >= 0)
+ {
diff --git a/sys-apps/dbus/files/dbus-1.15.8-enable-elogind.patch b/sys-apps/dbus/files/dbus-1.15.8-enable-elogind.patch
new file mode 100644
index 000000000000..543eac5b30f2
--- /dev/null
+++ b/sys-apps/dbus/files/dbus-1.15.8-enable-elogind.patch
@@ -0,0 +1,65 @@
+https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/53
+https://bugs.gentoo.org/599494
+
+Especially see https://bugs.gentoo.org/599494#c21 - this functionality isn't
+particularly required. The only known consumer at the moment is hplip.
+--- a/dbus/dbus-userdb-util.c
++++ b/dbus/dbus-userdb-util.c
+@@ -41,6 +41,9 @@
+ #ifdef HAVE_SYSTEMD
+ #include <systemd/sd-login.h>
+ #endif
++#ifdef HAVE_ELOGIND
++#include <elogind/sd-login.h>
++#endif
+
+ /**
+ * @addtogroup DBusInternalsUtils
+@@ -67,7 +70,7 @@ dbus_bool_t
+ _dbus_is_console_user (dbus_uid_t uid,
+ DBusError *error)
+ {
+-#ifdef HAVE_SYSTEMD
++#if defined(HAVE_SYSTEMD) || defined(HAVE_ELOGIND)
+ /* check if we have logind */
+ if (access ("/run/systemd/seats/", F_OK) >= 0)
+ {
+--- a/dbus/meson.build
++++ b/dbus/meson.build
+@@ -23,6 +23,7 @@ dbus_dependencies = [
+ threads,
+ network_libs,
+ systemd,
++ elogind,
+ valgrind.partial_dependency(compile_args: true),
+ ]
+
+--- a/meson.build
++++ b/meson.build
+@@ -478,6 +478,10 @@ if use_launchd
+ endif
+ endif
+
++elogind = dependency('libelogind', version: '>=209', required: get_option('elogind'))
++use_elogind = elogind.found()
++config.set('HAVE_ELOGIND', use_elogind)
++
+ systemd = dependency('libsystemd', version: '>=209', required: get_option('systemd'))
+ use_systemd = systemd.found()
+ config.set('HAVE_SYSTEMD', use_systemd)
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -244,6 +244,13 @@ option(
+ description: 'Systemd at_console support'
+ )
+
++option(
++ 'elogind',
++ type: 'feature',
++ value: 'auto',
++ description: 'elogind at_console support'
++)
++
+ option(
+ 'test_socket_dir',
+ type: 'string',
diff --git a/sys-apps/dbus/files/dbus-daemon-optional.patch b/sys-apps/dbus/files/dbus-daemon-optional.patch
deleted file mode 100644
index 353dcb5761be..000000000000
--- a/sys-apps/dbus/files/dbus-daemon-optional.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 3c08d28fbae8b0ef3839ef26f8d2a713a9a684f9 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Thu, 21 Feb 2019 23:53:19 +0100
-Subject: [PATCH] Make dbus daemon build optional
-
----
- bus/Makefile.am | 2 ++
- configure.ac | 17 ++++++++++++++++-
- 2 files changed, 18 insertions(+), 1 deletion(-)
-
-diff --git a/bus/Makefile.am b/bus/Makefile.am
-index 9ae3071..26a770c 100644
---- a/bus/Makefile.am
-+++ b/bus/Makefile.am
-@@ -70,6 +70,7 @@ agentdir=$(LAUNCHD_AGENT_DIR)
- agent_DATA=org.freedesktop.dbus-session.plist
- endif
-
-+if DBUS_DAEMON
- if DBUS_BUS_ENABLE_KQUEUE
- DIR_WATCH_SOURCE=dir-watch-kqueue.c
- else
-@@ -241,6 +242,7 @@ test_bus_LDADD = \
- $(top_builddir)/dbus/libdbus-internal.la \
- $(DBUS_BUS_LIBS) \
- $(NULL)
-+endif DBUS_DAEMON
-
- install-data-hook:
- $(mkinstalldirs) $(DESTDIR)$(dbusdatadir)/session.d
-diff --git a/configure.ac b/configure.ac
-index be6b065..854e846 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -202,6 +202,7 @@ AC_ARG_ENABLE([apparmor],
- [enable_apparmor=$enableval],
- [enable_apparmor=auto])
- AC_ARG_ENABLE(libaudit,AS_HELP_STRING([--enable-libaudit],[build audit daemon support for SELinux]),enable_libaudit=$enableval,enable_libaudit=auto)
-+AC_ARG_ENABLE(daemon, AS_HELP_STRING([--enable-daemon],[build with the dbus daemon]),enable_daemon=$enableval,enable_daemon=yes)
- AC_ARG_ENABLE(inotify, AS_HELP_STRING([--enable-inotify],[build with inotify support (linux only)]),enable_inotify=$enableval,enable_inotify=auto)
- AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
- AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
-@@ -830,7 +831,20 @@ AC_CHECK_FUNCS(getpeerucred getpeereid)
-
- AC_CHECK_FUNCS(pipe2 accept4)
-
--PKG_CHECK_MODULES([EXPAT], [expat])
-+# dbusdaemon checks
-+if test x$enable_daemon = xno ; then
-+ have_daemon=no
-+else
-+ have_daemon=yes
-+fi
-+
-+dnl check if daemon shall be built
-+if test x$have_daemon = xyes; then
-+ AC_DEFINE(DBUS_DAEMON,1,[Use daemon])
-+ PKG_CHECK_MODULES([EXPAT], [expat])
-+fi
-+
-+AM_CONDITIONAL(DBUS_DAEMON, test x$have_daemon = xyes)
-
- save_cflags="$CFLAGS"
- save_libs="$LIBS"
-@@ -1824,6 +1838,7 @@ echo "
- Building bus stats API: ${enable_stats}
- Building SELinux support: ${have_selinux}
- Building AppArmor support: ${have_apparmor}
-+ Building daemon: ${have_daemon}
- Building inotify support: ${have_inotify}
- Building kqueue support: ${have_kqueue}
- Building systemd support: ${have_systemd}
---
-2.20.1
-
diff --git a/sys-apps/dbus/files/dbus-enable-elogind.patch b/sys-apps/dbus/files/dbus-enable-elogind.patch
deleted file mode 100644
index 5cb5d649cd91..000000000000
--- a/sys-apps/dbus/files/dbus-enable-elogind.patch
+++ /dev/null
@@ -1,73 +0,0 @@
---- a/dbus/dbus-userdb-util.c 2015-09-30 16:48:40.000000000 +0200
-+++ b/dbus/dbus-userdb-util.c 2016-11-03 11:09:42.550520587 +0100
-@@ -32,6 +32,9 @@
- #if HAVE_SYSTEMD
- #include <systemd/sd-login.h>
- #endif
-+#if HAVE_ELOGIND
-+#include <elogind/sd-login.h>
-+#endif
-
- /**
- * @addtogroup DBusInternalsUtils
-@@ -54,7 +57,7 @@
- const DBusUserInfo *info;
- dbus_bool_t result = FALSE;
-
--#ifdef HAVE_SYSTEMD
-+#if defined(HAVE_SYSTEMD) || defined(HAVE_ELOGIND)
- /* check if we have logind */
- if (access ("/run/systemd/seats/", F_OK) >= 0)
- {
---- a/configure.ac 2016-11-03 11:13:58.286528265 +0100
-+++ b/configure.ac 2016-11-03 11:22:11.210543063 +0100
-@@ -185,6 +185,7 @@
- AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
- AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
- AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
-+AC_ARG_ENABLE(elogind, AS_HELP_STRING([--enable-elogind],[build with elogind user seat support]),enable_elogind=$enableval,enable_elogind=auto)
- AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
-
- AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install]))
-@@ -1184,6 +1185,24 @@
-
- AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
-
-+dnl elogind detection
-+if test x$enable_elogind = xno ; then
-+ have_elogind=no;
-+else
-+ PKG_CHECK_MODULES([ELOGIND],
-+ [libelogind >= 209],
-+ [have_elogind=yes],
-+ [have_elogind=no])
-+fi
-+
-+if test x$have_elogind = xyes; then
-+ AC_DEFINE(HAVE_ELOGIND,1,[Have elogind])
-+fi
-+
-+if test x$enable_elogind = xyes -a x$have_elogind != xyes ; then
-+ AC_MSG_ERROR([Explicitly requested elogind support, but libelogind not found])
-+fi
-+
- dnl systemd detection
- if test x$enable_systemd = xno ; then
- have_systemd=no;
-@@ -1290,7 +1309,7 @@
- fi
-
- #### Set up final flags
--LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS"
-+LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS $ELOGIND_LIBS"
- AC_SUBST([LIBDBUS_LIBS])
-
- ### X11 detection
-@@ -1949,6 +1968,7 @@
- Building AppArmor support: ${have_apparmor}
- Building inotify support: ${have_inotify}
- Building kqueue support: ${have_kqueue}
-+ Building elogind support: ${have_elogind}
- Building systemd support: ${have_systemd}
- Building X11 code: ${have_x11}
- Building Doxygen docs: ${enable_doxygen_docs}
diff --git a/sys-apps/dbus/metadata.xml b/sys-apps/dbus/metadata.xml
index a8736a778169..e74554521cbe 100644
--- a/sys-apps/dbus/metadata.xml
+++ b/sys-apps/dbus/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>freedesktop-bugs@gentoo.org</email>
@@ -7,9 +7,9 @@
<use>
<flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking.</flag>
<flag name="systemd">Build with <pkg>sys-apps/systemd</pkg> at_console support</flag>
- <flag name="user-session">Enable user-session semantics for session bus under systemd</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:freedesktop:dbus</remote-id>
+ <remote-id type="freedesktop-gitlab">dbus/dbus</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/dcfldd/Manifest b/sys-apps/dcfldd/Manifest
index c912fc4ffd37..0b1484be8f1f 100644
--- a/sys-apps/dcfldd/Manifest
+++ b/sys-apps/dcfldd/Manifest
@@ -1,4 +1,3 @@
-DIST dcfldd-1.3.4-1.tar.gz 163141 BLAKE2B 99954c674907196020dc1eff86103122897accdf0ff20ea0e6d5582d7fb87e4bcebfd12bf774f47e402853240896bbd536500c79ae6e7b478a3611171745dcc3 SHA512 04b53adf62c6b468ff816e2cd94cf360eb5315eb980e2aa7d71afae706ec9c4683430269e82d712608be265710907fdaaa1316e4f734b7481ee9395a37926c7a
-DIST dcfldd-1.5.tar.gz 81661 BLAKE2B c1037c8948bfa78704279b438f4604c8b6383d3840947c0e8e0a3ea52ba2b96fe0958b38e700675be97ec2bcee4fb6290f94a847476e3536fdd2790891d02cc9 SHA512 4c91211bf10fec409abe930fe67ae73ebfa67b5a29263cc2b5de7bc42df51f4c7d0647261e31bdad96b591f947c2f0e951004befe296fc37957ce5b56756debd
-DIST dcfldd-1.6.tar.gz 81795 BLAKE2B e4e09fd2f3720bb4a1ecff3427bbdda832d2c82cbc1dd95ef884fa3b10a02707d6eaa6302c86518d124eaff5669ecd4d5bbe8b207bb1bb70f7fdb1c88ee8ecae SHA512 893bb4920d86749fd01e877239ddbb3e85e73f6b305c8cd6e9a38135fec1f8c14dc748f5761a3630e83299769284c55a80afc93f3c9981cd8b4e19d4506a8c08
-DIST dcfldd-1.7.tar.gz 81892 BLAKE2B bf34dcd3e0430421c36dbd9d6b3f5ea2d4a4cb41151db8f14deb48d4169d1008fee2776f2ae821ea40ca7743f2354db62520bc919206e02a6e525ed6a38a0fec SHA512 e1dc4773438914a8102a692c7b7cbf486a9b03111820facb0134b4b9d058751695d1a7c64481852026412aacbb0fa04a18f833ff77ca30f154d5067a07057f31
+DIST dcfldd-1.8.tar.gz 89853 BLAKE2B c4c492500962bbe5329b2b67387424a99fce9853a9ab8788894e981e8327f5945f9f9ddf8a7bf219e1ff2a506725e2bcee7180e862be09023bef961842b989f0 SHA512 68b1d5806a723a3b499220a007faafb60fd1baa1924511a2e56be41828e2ac517d40e4f53160feb67d5202b25abdf6d304a1e8f100b49594f31dcf0198aaf7da
+DIST dcfldd-1.9.1.tar.gz 90536 BLAKE2B 644a96ba193ab0275a805c5bad1bc64fcfc2386c2aace4be1d523d6adb52ded6dc02ec2b0c40f1427772e00f6bef285f0fa515e99fa1793a0e1341916a41bd3a SHA512 bef5dfaa25a51889efcadec101948c4d0e3cbf6ee4a624e4818502bbc78b458310f7b67538946dff927713b7ce6294d269dd3ddba0685fb367988eec582d1f02
+DIST dcfldd-1.9.tar.gz 90477 BLAKE2B a594474fea9414e18ba80c1d385f87a19baac49cd09c966fb9b3dac512d7465f376b269e78117e87bc8c797132321227a81689387ef8c13c5e8f2ca4e261cba5 SHA512 675ae32f70206d1027a9687b1b30f6b1d63bcad7dc19219b070b68630721e0bd4cf5e48e7d56d6d5e03c486d6a707f9ff54175ed60e02717219cf38dcb4add37
diff --git a/sys-apps/dcfldd/dcfldd-1.3.4.1-r1.ebuild b/sys-apps/dcfldd/dcfldd-1.3.4.1-r1.ebuild
deleted file mode 100644
index 22ae54876b88..000000000000
--- a/sys-apps/dcfldd/dcfldd-1.3.4.1-r1.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-My_PV=$(ver_rs 3 '-')
-
-DESCRIPTION="enhanced dd with features for forensics and security"
-HOMEPAGE="http://dcfldd.sourceforge.net/"
-SRC_URI="mirror://sourceforge/dcfldd/${PN}-${My_PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86"
-
-S="${WORKDIR}/${PN}-${My_PV}"
diff --git a/sys-apps/dcfldd/dcfldd-1.5.ebuild b/sys-apps/dcfldd/dcfldd-1.5.ebuild
deleted file mode 100644
index 83b8567efac5..000000000000
--- a/sys-apps/dcfldd/dcfldd-1.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools
-
-DESCRIPTION="enhanced dd with features for forensics and security"
-HOMEPAGE="http://dcfldd.sourceforge.net/"
-SRC_URI="https://github.com/resurrecting-open-source-projects/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-DOCS=(
- AUTHORS
- CONTRIBUTING.md
- ChangeLog
- NEWS
- README.md
-)
-
-src_prepare() {
- default
- eautoreconf
-}
diff --git a/sys-apps/dcfldd/dcfldd-1.6.ebuild b/sys-apps/dcfldd/dcfldd-1.6.ebuild
deleted file mode 100644
index 83b8567efac5..000000000000
--- a/sys-apps/dcfldd/dcfldd-1.6.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools
-
-DESCRIPTION="enhanced dd with features for forensics and security"
-HOMEPAGE="http://dcfldd.sourceforge.net/"
-SRC_URI="https://github.com/resurrecting-open-source-projects/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-DOCS=(
- AUTHORS
- CONTRIBUTING.md
- ChangeLog
- NEWS
- README.md
-)
-
-src_prepare() {
- default
- eautoreconf
-}
diff --git a/sys-apps/dcfldd/dcfldd-1.7.ebuild b/sys-apps/dcfldd/dcfldd-1.7.ebuild
deleted file mode 100644
index 83b8567efac5..000000000000
--- a/sys-apps/dcfldd/dcfldd-1.7.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools
-
-DESCRIPTION="enhanced dd with features for forensics and security"
-HOMEPAGE="http://dcfldd.sourceforge.net/"
-SRC_URI="https://github.com/resurrecting-open-source-projects/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-DOCS=(
- AUTHORS
- CONTRIBUTING.md
- ChangeLog
- NEWS
- README.md
-)
-
-src_prepare() {
- default
- eautoreconf
-}
diff --git a/sys-apps/dcfldd/dcfldd-1.8.ebuild b/sys-apps/dcfldd/dcfldd-1.8.ebuild
new file mode 100644
index 000000000000..7b14719021c6
--- /dev/null
+++ b/sys-apps/dcfldd/dcfldd-1.8.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools
+
+DESCRIPTION="enhanced dd with features for forensics and security"
+HOMEPAGE="https://github.com/resurrecting-open-source-projects/dcfldd"
+SRC_URI="https://github.com/resurrecting-open-source-projects/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~riscv x86"
+DOCS=(
+ AUTHORS
+ CONTRIBUTING.md
+ ChangeLog
+ NEWS
+ README.md
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/dcfldd/dcfldd-1.9-r1.ebuild b/sys-apps/dcfldd/dcfldd-1.9-r1.ebuild
new file mode 100644
index 000000000000..a5429c9cad6e
--- /dev/null
+++ b/sys-apps/dcfldd/dcfldd-1.9-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools bash-completion-r1
+
+DESCRIPTION="enhanced dd with features for forensics and security"
+HOMEPAGE="https://github.com/resurrecting-open-source-projects/dcfldd"
+SRC_URI="https://github.com/resurrecting-open-source-projects/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+DOCS=(
+ AUTHORS
+ CONTRIBUTING.md
+ ChangeLog
+ NEWS
+ README.md
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_install() {
+ default
+ newbashcomp doc/dcfldd-bash_completion dcfldd
+}
diff --git a/sys-apps/dcfldd/dcfldd-1.9.1.ebuild b/sys-apps/dcfldd/dcfldd-1.9.1.ebuild
new file mode 100644
index 000000000000..a5429c9cad6e
--- /dev/null
+++ b/sys-apps/dcfldd/dcfldd-1.9.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools bash-completion-r1
+
+DESCRIPTION="enhanced dd with features for forensics and security"
+HOMEPAGE="https://github.com/resurrecting-open-source-projects/dcfldd"
+SRC_URI="https://github.com/resurrecting-open-source-projects/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+DOCS=(
+ AUTHORS
+ CONTRIBUTING.md
+ ChangeLog
+ NEWS
+ README.md
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_install() {
+ default
+ newbashcomp doc/dcfldd-bash_completion dcfldd
+}
diff --git a/sys-apps/dcfldd/metadata.xml b/sys-apps/dcfldd/metadata.xml
index d24bba91dc0a..29067b481c86 100644
--- a/sys-apps/dcfldd/metadata.xml
+++ b/sys-apps/dcfldd/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>sping@gentoo.org</email>
<name>Sebastian Pipping</name>
</maintainer>
<upstream>
+ <remote-id type="github">resurrecting-open-source-projects/dcfldd</remote-id>
<remote-id type="sourceforge">dcfldd</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/dchroot/dchroot-0.12.1.ebuild b/sys-apps/dchroot/dchroot-0.12.1.ebuild
index eee10e8bef06..fef8cb146e1d 100644
--- a/sys-apps/dchroot/dchroot-0.12.1.ebuild
+++ b/sys-apps/dchroot/dchroot-0.12.1.ebuild
@@ -1,31 +1,27 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit toolchain-funcs
+inherit autotools
DESCRIPTION="Utility for managing chroots for non-root users"
-HOMEPAGE="https://packages.debian.org/unstable/admin/dchroot"
-SRC_URI="mirror://debian/pool/main/d/dchroot/dchroot_${PV}.tar.gz"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="mirror://gentoo/${P/-/_}.tar.gz"
-LICENSE="GPL-2"
+LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
-DEPEND="sys-apps/help2man"
RDEPEND="!dev-util/schroot[dchroot]"
+BDEPEND="sys-apps/help2man"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-make.patch
+)
src_prepare() {
default
- sed -i \
- -e '/^all:/s:$: docs:' \
- -e '/^CFLAGS/s:-O2:@CFLAGS@:' \
- -e '/@CFLAGS@/ s:@CFLAGS@:@CFLAGS@ @LDFLAGS@:' \
- Makefile.in || die "sed failed"
-}
-src_compile() {
- emake CC="$(tc-getCC)"
+ eautoreconf #874318
}
diff --git a/sys-apps/dchroot/files/dchroot-0.12.1-make.patch b/sys-apps/dchroot/files/dchroot-0.12.1-make.patch
new file mode 100644
index 000000000000..1c6be7a65c91
--- /dev/null
+++ b/sys-apps/dchroot/files/dchroot-0.12.1-make.patch
@@ -0,0 +1,16 @@
+https://bugs.gentoo.org/722920
+https://bugs.gentoo.org/824542
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -4,8 +4,9 @@
+
+ INSTALL=install
+-CFLAGS=-Wl,-z,now -O2 -Wall -Wstrict-prototypes -Werror -g \
++CC := @CC@
++CFLAGS := @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ \
+ -DDCHROOT_VERSION="\"@DCHROOT_VERSION@\""
+
+-all: dchroot
++all: dchroot docs
+
+ docs: dchroot.1
diff --git a/sys-apps/dchroot/metadata.xml b/sys-apps/dchroot/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/sys-apps/dchroot/metadata.xml
+++ b/sys-apps/dchroot/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/debianutils/Manifest b/sys-apps/debianutils/Manifest
index 4f1d1fa5664a..058d557a9341 100644
--- a/sys-apps/debianutils/Manifest
+++ b/sys-apps/debianutils/Manifest
@@ -1,2 +1 @@
-DIST debianutils_4.11.1.tar.xz 157536 BLAKE2B 2093568ff6e779d25ff2960b1bc6b12bcd451eaf9ad586ee48d6a6f52bcb0d53c58cb01697eee3fe47d22bf9019fedb5e2857fc8bb358b1449f65079cab1190b SHA512 8283e42f190a9c59c54817a745e219fcc9a1f8995204d62aff84f755ace041e433fe707d3b4373060207a70c9c01d958234281061f77e6e6fb6c560c79711772
-DIST debianutils_4.11.2.tar.xz 158132 BLAKE2B c2a95c90b4267e3b1d61c21db562f960b4666982c488e69a757fb0a7a42e8e739d44f553edd8cf532df30c492e999920ab63ec3580479de7de5d901d75de76fc SHA512 0bd9098beee78b3c8dae839f0c29e9f142cbb22f2ced473cf7ae47a14d9493ba882c1829eba213780392a87a3223b3689729754c8ded80a091efaef3f6f903fd
+DIST debianutils_5.14.tar.xz 79676 BLAKE2B b8e6c5a38cf5fe8e3d8151b1c19cfda4d5866f805453eeb8376a94e1982653cb532ffefdb560f188574ba01e97249b49b69d41f1dda9aa76de4511034736965a SHA512 4a152fec6c363c0ca26339bf8bf3f39ec3c10227bbfe5d2f5974c24a6207fdb6c34644ecfdf0c773d4c778b1a95f91a15697b12b5c0cd9a6d0d8f369373b956f
diff --git a/sys-apps/debianutils/debianutils-4.11.1.ebuild b/sys-apps/debianutils/debianutils-4.11.1.ebuild
deleted file mode 100644
index 20486d2d14c8..000000000000
--- a/sys-apps/debianutils/debianutils-4.11.1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-DESCRIPTION="A selection of tools from Debian"
-HOMEPAGE="https://packages.qa.debian.org/d/debianutils.html"
-SRC_URI="mirror://debian/pool/main/d/${PN}/${PN}_${PV}.tar.xz"
-
-LICENSE="BSD GPL-2 SMAIL"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux"
-IUSE="+installkernel static"
-
-PDEPEND="
- installkernel? (
- || (
- sys-kernel/installkernel-gentoo
- sys-kernel/installkernel-systemd-boot
- )
- )"
-
-PATCHES=( "${FILESDIR}"/${PN}-3.4.2-no-bs-namespace.patch )
-
-src_configure() {
- use static && append-ldflags -static
- default
-}
-
-src_install() {
- into /
- dobin tempfile run-parts
-
- into /usr
- dobin ischroot
- dosbin savelog
-
- doman ischroot.1 tempfile.1 run-parts.8 savelog.8
- cd debian || die
- dodoc changelog control
-}
diff --git a/sys-apps/debianutils/debianutils-4.11.2.ebuild b/sys-apps/debianutils/debianutils-4.11.2.ebuild
deleted file mode 100644
index b398e3f5f041..000000000000
--- a/sys-apps/debianutils/debianutils-4.11.2.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-DESCRIPTION="A selection of tools from Debian"
-HOMEPAGE="https://packages.qa.debian.org/d/debianutils.html"
-SRC_URI="mirror://debian/pool/main/d/${PN}/${PN}_${PV}.tar.xz"
-
-LICENSE="BSD GPL-2 SMAIL"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
-IUSE="+installkernel static"
-
-PDEPEND="
- installkernel? (
- || (
- sys-kernel/installkernel-gentoo
- sys-kernel/installkernel-systemd-boot
- )
- )"
-
-S="${WORKDIR}/${PN}"
-
-PATCHES=( "${FILESDIR}"/${PN}-3.4.2-no-bs-namespace.patch )
-
-src_configure() {
- use static && append-ldflags -static
- default
-}
-
-src_install() {
- into /
- dobin tempfile run-parts
-
- into /usr
- dobin ischroot
- dosbin savelog
-
- doman ischroot.1 tempfile.1 run-parts.8 savelog.8
- cd debian || die
- dodoc changelog control
-}
diff --git a/sys-apps/debianutils/debianutils-5.14-r1.ebuild b/sys-apps/debianutils/debianutils-5.14-r1.ebuild
new file mode 100644
index 000000000000..4b74321d89c4
--- /dev/null
+++ b/sys-apps/debianutils/debianutils-5.14-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A selection of tools from Debian"
+HOMEPAGE="https://packages.qa.debian.org/d/debianutils.html"
+#SRC_URI="mirror://debian/pool/main/d/${PN}/${PN}_${PV}.tar.xz"
+SRC_URI="mirror://gentoo/e7/${PN}_${PV}.tar.xz"
+
+LICENSE="BSD GPL-2 SMAIL"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
+IUSE="static"
+
+PATCHES=( "${FILESDIR}"/${PN}-3.4.2-no-bs-namespace.patch )
+
+src_prepare() {
+ # Avoid adding po4a dependency, upstream refreshes manpages.
+ sed -i -e '/SUBDIRS/s|po4a||' Makefile.am || die
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ default
+}
+
+src_install() {
+ einstalldocs
+
+ into /
+ dobin run-parts
+
+ into /usr
+ dobin ischroot
+ dosbin savelog
+
+ doman ischroot.1 run-parts.8 savelog.8
+}
diff --git a/sys-apps/debianutils/metadata.xml b/sys-apps/debianutils/metadata.xml
index 1c1ee347ef1a..b0d83aa2e489 100644
--- a/sys-apps/debianutils/metadata.xml
+++ b/sys-apps/debianutils/metadata.xml
@@ -1,14 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
- <use>
- <flag name='installkernel'>
- Install /sbin/installkernel script (for Linux).
- installkernel is required whenever a kernel will be installed via make install
- </flag>
- </use>
</pkgmetadata>
diff --git a/sys-apps/diffutils/Manifest b/sys-apps/diffutils/Manifest
index 98d0d4dbed4e..cae233d525be 100644
--- a/sys-apps/diffutils/Manifest
+++ b/sys-apps/diffutils/Manifest
@@ -1 +1,2 @@
-DIST diffutils-3.7.tar.xz 1448828 BLAKE2B d9f115e0ec9b2499545a3bef4e469fb7786d4a95e0a1c8459c885c53e8b1dc797027979e42c53c2a7df4e1e224942bd9ce5214813977af2bcc67f0698ea0c647 SHA512 7b12cf8aea1b9844773748f72272d9c6a38adae9c3c3a8c62048f91fb56c60b76035fa5f51665dceaf2cfbf1d1f4a3efdcc24bf47a5a16ff4350543314b12c9c
+DIST diffutils-3.10.tar.xz 1624240 BLAKE2B 24a90162b3d876e6378243f19a85a1f1bb4cdfe98d130dee684740a902f2987509d5830dd32df4e26678b468b96960f6f9785ffb922e828cb8b4acce0d8587f6 SHA512 219d2c815a120690c6589846271e43aee5c96c61a7ee4abbef97dfcdb3d6416652ed494b417de0ab6688c4322540d48be63b5e617beb6d20530b5d55d723ccbb
+DIST diffutils-3.10.tar.xz.sig 833 BLAKE2B 06650838d6a3327fda6b2ab09693170ec18b730b1f5981c8f3e2180b2c8a553307ae93199e4be0532a534a8a3f95e4a7b4fccbbd9e5f8d1b1cedd0816b0aac90 SHA512 91aa1fcfca224454e292540ea7813f4a0eb348f06a4374017326d524949775359fc833de597cc201c97f357eb6c675800828a6e3332572376f3554f1f2e1aca1
diff --git a/sys-apps/diffutils/diffutils-3.10.ebuild b/sys-apps/diffutils/diffutils-3.10.ebuild
new file mode 100644
index 000000000000..e98fc92d4dcf
--- /dev/null
+++ b/sys-apps/diffutils/diffutils-3.10.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/diffutils.asc
+inherit verify-sig
+
+DESCRIPTION="Tools to make diffs and compare files"
+HOMEPAGE="https://www.gnu.org/software/diffutils/"
+
+if [[ ${PV} == *_p* ]] ; then
+ # Subscribe to the 'platform-testers' ML to find these.
+ # Useful to test on our especially more niche arches and report issues upstream.
+ MY_COMMIT="17-cc36"
+ MY_P=${PN}-$(ver_cut 1-2).${MY_COMMIT}
+ SRC_URI="https://meyering.net/diff/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://meyering.net/diff/${MY_P}.tar.xz.sig )"
+ S="${WORKDIR}"/${MY_P}
+else
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="nls"
+
+BDEPEND="
+ nls? ( sys-devel/gettext )
+ verify-sig? ( sec-keys/openpgp-keys-diffutils )
+"
+
+src_prepare() {
+ default
+
+ # Needed because of ${P}-diff-D-option-regression.patch
+ #touch man/diff.1 || die
+}
+
+src_configure() {
+ # Disable automagic dependency over libsigsegv; see bug #312351.
+ export ac_cv_libsigsegv=no
+
+ # required for >=glibc-2.26, bug #653914
+ use elibc_glibc && export gl_cv_func_getopt_gnu=yes
+
+ local myeconfargs=(
+ # Interferes with F_S (sets F_S=2)
+ --disable-gcc-warnings
+ --with-packager="Gentoo"
+ --with-packager-version="${PVR}"
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+ $(use_enable nls)
+ )
+ econf "${myeconfargs[@]}"
+}
diff --git a/sys-apps/diffutils/diffutils-3.7-r1.ebuild b/sys-apps/diffutils/diffutils-3.7-r1.ebuild
deleted file mode 100644
index 4a5fcb88c029..000000000000
--- a/sys-apps/diffutils/diffutils-3.7-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-DESCRIPTION="Tools to make diffs and compare files"
-HOMEPAGE="https://www.gnu.org/software/diffutils/"
-SRC_URI="mirror://gnu/diffutils/${P}.tar.xz
- mirror://gnu-alpha/diffutils/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls static"
-
-BDEPEND="nls? ( sys-devel/gettext )"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_configure() {
- use static && append-ldflags -static
-
- # Disable automagic dependency over libsigsegv; see bug #312351.
- export ac_cv_libsigsegv=no
-
- # required for >=glibc-2.26, bug #653914
- use elibc_glibc && export gl_cv_func_getopt_gnu=yes
-
- local myeconfargs=(
- --with-packager="Gentoo"
- --with-packager-version="${PVR}"
- --with-packager-bug-reports="https://bugs.gentoo.org/"
- $(use_enable nls)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_test() {
- # explicitly allow parallel testing
- emake check
-}
diff --git a/sys-apps/diffutils/metadata.xml b/sys-apps/diffutils/metadata.xml
index 56c124413057..8963b14ac40d 100644
--- a/sys-apps/diffutils/metadata.xml
+++ b/sys-apps/diffutils/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:diffutils</remote-id>
+ <remote-id type="savannah">diffutils</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/dmapi/Manifest b/sys-apps/dmapi/Manifest
deleted file mode 100644
index 8a68188e55fa..000000000000
--- a/sys-apps/dmapi/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dmapi-2.2.12.tar.gz 367318 BLAKE2B 7d74f3081f8430c43d3ea961bd4ad2743a3ab65a016b0653a68074353ed60fa0c1a01a77aa470326aa1b10e731a5058355ab887cae00d21196958563ae6c4ee8 SHA512 aa44c0c7857158fed198deb9d1e00abaab549e3c22a7ce0e24e6088146bde56ecf967405b1b61a589460981ddcfaffbb1e9a2e677088efec317e3a7cb44abe4f
diff --git a/sys-apps/dmapi/dmapi-2.2.12-r1.ebuild b/sys-apps/dmapi/dmapi-2.2.12-r1.ebuild
deleted file mode 100644
index 9150f009d58a..000000000000
--- a/sys-apps/dmapi/dmapi-2.2.12-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils toolchain-funcs ltprune multilib multilib-minimal usr-ldscript
-
-DESCRIPTION="XFS data management API library"
-HOMEPAGE="https://xfs.wiki.kernel.org/"
-SRC_URI="ftp://oss.sgi.com/projects/xfs/cmd_tars/${P}.tar.gz
- ftp://oss.sgi.com/projects/xfs/previous/cmd_tars/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
-IUSE="static-libs"
-
-RDEPEND="sys-fs/xfsprogs"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- sed -i \
- -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \
- include/builddefs.in \
- || die
- epatch "${FILESDIR}"/${P}-headers.patch
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- export OPTIMIZER=${CFLAGS}
- export DEBUG=-DNDEBUG
-
- econf \
- --libexecdir=/usr/$(get_libdir) \
- $(use_enable static-libs static)
-}
-
-multilib_src_install() {
- emake DESTDIR="${D}" install install-dev
- gen_usr_ldscript -a dm
-}
-
-multilib_src_install_all() {
- prune_libtool_files --all
- rm "${ED}"/usr/share/doc/${PF}/COPYING
-}
diff --git a/sys-apps/dmapi/files/dmapi-2.2.12-headers.patch b/sys-apps/dmapi/files/dmapi-2.2.12-headers.patch
deleted file mode 100644
index 259e1aec3a09..000000000000
--- a/sys-apps/dmapi/files/dmapi-2.2.12-headers.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-https://bugs.gentoo.org/560212
-
-pull in headers for funcs that are used
-
---- a/libdm/dm_handle2path.c
-+++ b/libdm/dm_handle2path.c
-@@ -20,6 +20,9 @@
- #include <dmapi_kern.h>
- #include "dmapi_lib.h"
-
-+#include <fcntl.h> /* open */
-+#include <unistd.h> /* close */
-+#include <string.h> /* strlen */
- #include <mntent.h>
- #include <dirent.h>
- #ifdef linux
diff --git a/sys-apps/dmapi/metadata.xml b/sys-apps/dmapi/metadata.xml
deleted file mode 100644
index 56c124413057..000000000000
--- a/sys-apps/dmapi/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-</pkgmetadata>
diff --git a/sys-apps/dmidecode/Manifest b/sys-apps/dmidecode/Manifest
index 4ac317f9c10f..3cbad40a4371 100644
--- a/sys-apps/dmidecode/Manifest
+++ b/sys-apps/dmidecode/Manifest
@@ -1,2 +1,3 @@
-DIST dmidecode-3.2.tar.xz 54440 BLAKE2B ff5b891b28231bc50657e6fe1fa1345171109ce9baf7fa4558ced482a0616be4206ef69dcf3909611475d543b12691cc2bfe4849d8e3d35b34d1bfffe600af21 SHA512 b080c73fbda756109f0f29935c641e0b32ea9ffe90f0a8254164c9c1ff5617d042347298e6bac31e5463e94fa56efe2b2743238156d878254fc77120e6dc1a18
-DIST dmidecode-3.3.tar.xz 56372 BLAKE2B 7a4557a203702da5d5d6722c72870342e18458b3777d095656e9d5c3a5f80cc712d16b775fa16e4ae9326965a789d393092d45651a449444e268438c1d16773e SHA512 dc77f40a7898011cea1b747d4677be2fbe8f52ec6ac460a5656de2f3389eca83bc416d6494acbe759971b5afce37b78f21ab55c34d62b1105b800e31566d1d22
+DIST dmidecode-3.5-80de376231e903d2cbea95e51ffea31860502159.patch 1762 BLAKE2B b3b1d4232ab8089cfd405f5bf88a9e5eab7be244b70c3af663b33836c0e2d7c7bc01affa41e826ff0129b66afd6a066f51a722d8a0ab64c42990a1d1440285c4 SHA512 cb7cc66e608bfd67d1db6ba96e887b06c11526956819ea48c378edbb93af139600b41501330ae936bfbe333de461265b51d680170fb044b29d70fedfeb47f52a
+DIST dmidecode-3.5-c76ddda0ba0aa99a55945e3290095c2ec493c892.patch 1933 BLAKE2B e3aff73dc780d3d6b92a9d0de05906a620657664c3b30d40bc10a57e29522e883f671ce7658c0fdea6ee6c2b891639c1639a695f4f2f25dbe091cc93c6951cee SHA512 7caee6762b6676f4e133025cd0e68e7fbd93ae2dea773b2f6180505fda3384f60e0de40ae32322ff50a470b7986dbf6071a86dd770d7bca9df3cc601dbc0e18b
+DIST dmidecode-3.5.tar.xz 65068 BLAKE2B 07cc4c069dc1cba36160de158c4d0390df9b77b4192f5847df0756f9e097a7fbc751cd7b5b073df7661267ab78ea0d9be2831d70ddda8d1981c628f3cfee8802 SHA512 690c9bea391f6bbfc8cd48e8db408a61d5b551a07a2823c29d03a09607fc2043cc1bea44ee9fd27fd0e7bc0b287bf9de9f22a1a66053f5b1e63d77c03d93e1ae
diff --git a/sys-apps/dmidecode/dmidecode-3.2.ebuild b/sys-apps/dmidecode/dmidecode-3.2.ebuild
deleted file mode 100644
index fdbf2088aaa7..000000000000
--- a/sys-apps/dmidecode/dmidecode-3.2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="DMI (Desktop Management Interface) table related utilities"
-HOMEPAGE="https://www.nongnu.org/dmidecode/"
-SRC_URI="https://savannah.nongnu.org/download/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* ~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~x86-solaris"
-IUSE="selinux"
-
-RDEPEND="selinux? ( sec-policy/selinux-dmidecode )"
-DEPEND=""
-
-src_prepare() {
- default
- sed -i \
- -e "/^prefix/s:/usr/local:${EPREFIX}/usr:" \
- -e "/^docdir/s:dmidecode:${PF}:" \
- -e '/^PROGRAMS !=/d' \
- Makefile || die
-}
-
-src_compile() {
- emake \
- CFLAGS="${CFLAGS} ${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- CC="$(tc-getCC)"
-}
-
-pkg_postinst() {
- if [[ ${CHOST} == *-solaris* ]] ; then
- einfo "dmidecode needs root privileges to read /dev/xsvc"
- einfo "To make dmidecode useful, either run as root, or chown and setuid the binary."
- einfo "Note that /usr/sbin/ptrconf and /usr/sbin/ptrdiag give similar"
- einfo "information without requiring root privileges."
- fi
-}
diff --git a/sys-apps/dmidecode/dmidecode-3.3.ebuild b/sys-apps/dmidecode/dmidecode-3.3.ebuild
deleted file mode 100644
index 8e6e738c4474..000000000000
--- a/sys-apps/dmidecode/dmidecode-3.3.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="DMI (Desktop Management Interface) table related utilities"
-HOMEPAGE="https://www.nongnu.org/dmidecode/"
-SRC_URI="https://savannah.nongnu.org/download/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* ~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-solaris"
-IUSE="selinux"
-
-RDEPEND="selinux? ( sec-policy/selinux-dmidecode )"
-DEPEND=""
-
-src_prepare() {
- default
- sed -i \
- -e "/^prefix/s:/usr/local:${EPREFIX}/usr:" \
- -e "/^docdir/s:dmidecode:${PF}:" \
- -e '/^PROGRAMS !=/d' \
- Makefile || die
-}
-
-src_compile() {
- emake \
- CFLAGS="${CFLAGS} ${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- CC="$(tc-getCC)"
-}
-
-pkg_postinst() {
- if [[ ${CHOST} == *-solaris* ]] ; then
- einfo "dmidecode needs root privileges to read /dev/xsvc"
- einfo "To make dmidecode useful, either run as root, or chown and setuid the binary."
- einfo "Note that /usr/sbin/ptrconf and /usr/sbin/ptrdiag give similar"
- einfo "information without requiring root privileges."
- fi
-}
diff --git a/sys-apps/dmidecode/dmidecode-3.5-r2.ebuild b/sys-apps/dmidecode/dmidecode-3.5-r2.ebuild
new file mode 100644
index 000000000000..f171497c09df
--- /dev/null
+++ b/sys-apps/dmidecode/dmidecode-3.5-r2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream often give "recommended patches" at https://www.nongnu.org/dmidecode/
+# Check regularly after releases!
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="DMI (Desktop Management Interface) table related utilities"
+HOMEPAGE="https://www.nongnu.org/dmidecode/"
+SRC_URI="https://savannah.nongnu.org/download/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* ~alpha amd64 arm arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv x86"
+IUSE="selinux"
+
+RDEPEND="selinux? ( sec-policy/selinux-dmidecode )"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-backport-HPE-OEM-record-137-fix.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e "/^prefix/s:/usr/local:${EPREFIX}/usr:" \
+ -e "/^docdir/s:dmidecode:${PF}:" \
+ -e '/^PROGRAMS !=/d' \
+ Makefile || die
+}
+
+src_compile() {
+ append-lfs-flags
+
+ emake \
+ CFLAGS="${CFLAGS} ${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CC="$(tc-getCC)"
+}
+
+pkg_postinst() {
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ einfo "dmidecode needs root privileges to read /dev/xsvc"
+ einfo "To make dmidecode useful, either run as root, or chown and setuid the binary."
+ einfo "Note that /usr/sbin/ptrconf and /usr/sbin/ptrdiag give similar"
+ einfo "information without requiring root privileges."
+ fi
+}
diff --git a/sys-apps/dmidecode/dmidecode-3.5-r3.ebuild b/sys-apps/dmidecode/dmidecode-3.5-r3.ebuild
new file mode 100644
index 000000000000..acd03ad4b18e
--- /dev/null
+++ b/sys-apps/dmidecode/dmidecode-3.5-r3.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream often give "recommended patches" at https://www.nongnu.org/dmidecode/
+# Check regularly after releases!
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="DMI (Desktop Management Interface) table related utilities"
+HOMEPAGE="https://www.nongnu.org/dmidecode/"
+SRC_URI="https://savannah.nongnu.org/download/${PN}/${P}.tar.xz"
+PATCHES=()
+UPSTREAM_PATCHES=(
+ c76ddda0ba0aa99a55945e3290095c2ec493c892
+ 80de376231e903d2cbea95e51ffea31860502159
+)
+
+for c in "${UPSTREAM_PATCHES[@]}" ; do
+ SRC_URI+=" https://git.savannah.gnu.org/cgit/dmidecode.git/patch/?id=${c} -> ${P}-${c}.patch "
+ PATCHES+=( "${DISTDIR}"/${P}-${c}.patch )
+done
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* ~alpha amd64 arm arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv x86"
+IUSE="selinux"
+
+RDEPEND="selinux? ( sec-policy/selinux-dmidecode )"
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e "/^prefix/s:/usr/local:${EPREFIX}/usr:" \
+ -e "/^docdir/s:dmidecode:${PF}:" \
+ -e '/^PROGRAMS !=/d' \
+ Makefile || die
+}
+
+src_compile() {
+ append-lfs-flags
+
+ emake \
+ CFLAGS="${CFLAGS} ${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CC="$(tc-getCC)"
+}
+
+pkg_postinst() {
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ einfo "dmidecode needs root privileges to read /dev/xsvc"
+ einfo "To make dmidecode useful, either run as root, or chown and setuid the binary."
+ einfo "Note that /usr/sbin/ptrconf and /usr/sbin/ptrdiag give similar"
+ einfo "information without requiring root privileges."
+ fi
+}
diff --git a/sys-apps/dmidecode/files/dmidecode-3.5-backport-HPE-OEM-record-137-fix.patch b/sys-apps/dmidecode/files/dmidecode-3.5-backport-HPE-OEM-record-137-fix.patch
new file mode 100644
index 000000000000..b1c0270c4762
--- /dev/null
+++ b/sys-apps/dmidecode/files/dmidecode-3.5-backport-HPE-OEM-record-137-fix.patch
@@ -0,0 +1,39 @@
+As recommended by upstream on their website.
+
+From 80de376231e903d2cbea95e51ffea31860502159 Mon Sep 17 00:00:00 2001
+From: Jerry Hoemann <jerry.hoemann@hpe.com>
+Date: Mon, 3 Apr 2023 10:15:12 +0200
+Subject: dmioem: HPE OEM Record 237 Firmware change
+
+HPE OEM record type 237 offset 0x09 field was changed from a single
+byte STRING to a two byte WORD representing date.
+
+Fixes: cdab638dabb7 ("dmioem: Decode HPE OEM Record 237")
+Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
+Signed-off-by: Jean Delvare <jdelvare@suse.de>
+--- a/dmioem.c
++++ b/dmioem.c
+@@ -1094,7 +1094,8 @@ static int dmi_decode_hp(const struct dmi_header *h)
+ * 0x06 | Manufacture|STRING | DIMM Manufacturer
+ * 0x07 | Part Number|STRING | DIMM Manufacturer's Part Number
+ * 0x08 | Serial Num |STRING | DIMM Vendor Serial Number
+- * 0x09 | Spare Part |STRING | DIMM Spare Part Number
++ * 0x09 | Man Date | BYTE | DIMM Manufacture Date (YEAR) in BCD
++ * 0x0A | Man Date | BYTE | DIMM Manufacture Date (WEEK) in BCD
+ */
+ if (gen < G9) return 0;
+ pr_handle_name("%s DIMM Vendor Information", company);
+@@ -1105,8 +1106,9 @@ static int dmi_decode_hp(const struct dmi_header *h)
+ pr_attr("DIMM Manufacturer Part Number", "%s", dmi_string(h, data[0x07]));
+ if (h->length < 0x09) break;
+ pr_attr("DIMM Vendor Serial Number", "%s", dmi_string(h, data[0x08]));
+- if (h->length < 0x0A) break;
+- pr_attr("DIMM Spare Part Number", "%s", dmi_string(h, data[0x09]));
++ if (h->length < 0x0B) break;
++ if (WORD(data + 0x09))
++ pr_attr("DIMM Manufacture Date", "20%02x-W%02x", data[0x09], data[0x0A]);
+ break;
+
+ case 238:
+--
+cgit v1.1
diff --git a/sys-apps/dmidecode/metadata.xml b/sys-apps/dmidecode/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/dmidecode/metadata.xml
+++ b/sys-apps/dmidecode/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/dnotify/dnotify-0.18.0-r1.ebuild b/sys-apps/dnotify/dnotify-0.18.0-r1.ebuild
new file mode 100644
index 000000000000..b92ef1d92179
--- /dev/null
+++ b/sys-apps/dnotify/dnotify-0.18.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Execute a command when the contents of a directory change"
+HOMEPAGE="https://directory.fsf.org/project/dnotify/"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~mips ppc -sparc x86"
+IUSE="nls"
+
+DEPEND="nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}/${P}-nls.patch"
+ "${FILESDIR}/${P}-glibc-212.patch"
+)
+
+src_configure() {
+ econf $(use_enable nls)
+}
diff --git a/sys-apps/dnotify/dnotify-0.18.0.ebuild b/sys-apps/dnotify/dnotify-0.18.0.ebuild
deleted file mode 100644
index 6c11fbe8b1dc..000000000000
--- a/sys-apps/dnotify/dnotify-0.18.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Execute a command when the contents of a directory change"
-HOMEPAGE="https://directory.fsf.org/project/dnotify/"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~mips ppc -sparc x86"
-IUSE="nls"
-
-RDEPEND=""
-DEPEND="nls? ( sys-devel/gettext )"
-
-PATCHES=(
- "${FILESDIR}/${P}-nls.patch"
- "${FILESDIR}/${P}-glibc-212.patch"
-)
-
-src_configure() {
- econf \
- $(use_enable nls)
-}
diff --git a/sys-apps/dnotify/files/dnotify-0.18.0-nls.patch b/sys-apps/dnotify/files/dnotify-0.18.0-nls.patch
index 55400b704983..7bcb3a3a320e 100644
--- a/sys-apps/dnotify/files/dnotify-0.18.0-nls.patch
+++ b/sys-apps/dnotify/files/dnotify-0.18.0-nls.patch
@@ -1,5 +1,5 @@
---- a/src/gettext.h 2006-01-27 18:23:31.000000000 +0100
-+++ b/src/gettext.h 2006-01-27 18:25:07.000000000 +0100
+--- a/src/gettext.h
++++ b/src/gettext.h
@@ -24,6 +24,7 @@
/* Get declarations of GNU message catalog functions. */
diff --git a/sys-apps/dnotify/metadata.xml b/sys-apps/dnotify/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/dnotify/metadata.xml
+++ b/sys-apps/dnotify/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/dog/dog-1.7-r6.ebuild b/sys-apps/dog/dog-1.7-r6.ebuild
index 3a0680938b24..ea419e8e51c7 100644
--- a/sys-apps/dog/dog-1.7-r6.ebuild
+++ b/sys-apps/dog/dog-1.7-r6.ebuild
@@ -1,18 +1,17 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="Dog is better than cat"
-# the best HOMEPAGE we have.
-HOMEPAGE="https://packages.gentoo.org/package/sys-apps/dog"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
SRC_URI="mirror://gentoo/${P}.tar.gz"
-LICENSE="GPL-2"
+LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc64-solaris"
+KEYWORDS="~alpha amd64 ~arm64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
PATCHES=(
"${FILESDIR}"/${P}-check-ctime.diff
diff --git a/sys-apps/dog/metadata.xml b/sys-apps/dog/metadata.xml
index 3cf14bf74636..6258504e5133 100644
--- a/sys-apps/dog/metadata.xml
+++ b/sys-apps/dog/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>shell-tools@gentoo.org</email>
diff --git a/sys-apps/dstat/dstat-0.7.4-r2.ebuild b/sys-apps/dstat/dstat-0.7.4-r2.ebuild
index 9ba37f135bac..ff7e7673547d 100644
--- a/sys-apps/dstat/dstat-0.7.4-r2.ebuild
+++ b/sys-apps/dstat/dstat-0.7.4-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6..9} )
+PYTHON_COMPAT=( python3_{9..11} )
inherit python-r1
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/dagwieers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 ~arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~x86-linux"
IUSE="doc examples"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/sys-apps/dstat/metadata.xml b/sys-apps/dstat/metadata.xml
index 4ae294d3be22..7e52a50f1218 100644
--- a/sys-apps/dstat/metadata.xml
+++ b/sys-apps/dstat/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>lmiphay@gmail.com</email>
<name>Paul Healy</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
@@ -22,4 +22,3 @@ same interval).
<remote-id type="github">dagwieers/dstat</remote-id>
</upstream>
</pkgmetadata>
-
diff --git a/sys-apps/dtc/Manifest b/sys-apps/dtc/Manifest
index ce7f0fee1d6b..48789513fcd2 100644
--- a/sys-apps/dtc/Manifest
+++ b/sys-apps/dtc/Manifest
@@ -1,2 +1,2 @@
-DIST dtc-1.5.0.tar.xz 152936 BLAKE2B 4ad9cf8f8fd0ccde0c7b8b66c0039eb9b012ed26e51387c06c03fa7950ca194878bbb23b50be5b80c4d4e18140d6316092a9f0eea87e5d713856635dcfc1b0ec SHA512 fd1e692a1b7bf7987f921ad17d9be6719f7b3aa7915873b45fa86f4ecb1398a0a62cdf53c1fddf98a0f7fed9bf34a79f684018bd01a2b5e88746b50879bf7102
DIST dtc-1.6.0.tar.xz 158584 BLAKE2B 47b15b5df7f5d87369d6daaad87f2989a80865f2fab19f89d050d390a9f8319bcd86a36e12f7cc8d62947bb4d1335769071d0e3ea0a6e16861aea163e78f4696 SHA512 15433b24f1d6b7ed1f8066d050bd1bcbf988731aa38147564e3dd04b5f69af8d69e03befdc621a768526c620425a9bdd24aad4f9ff135930d6a1eeb0625f7de3
+DIST dtc-1.7.0.tar.xz 165548 BLAKE2B de433a1034b7ef75559bf39f85695d0b275cfd17bf100c12b6186e226a65659053f9b5a053f20e64a5a0670ea3e728edd0e624c26287bd264594569408065bab SHA512 d3ba6902a9a2f2cdbaff55f12fca3cfe4a1ec5779074a38e3d8b88097c7abc981835957e8ce72971e10c131e05fde0b1b961768e888ff96d89e42c75edb53afb
diff --git a/sys-apps/dtc/dtc-1.5.0-r2.ebuild b/sys-apps/dtc/dtc-1.5.0-r2.ebuild
deleted file mode 100644
index ac119788204b..000000000000
--- a/sys-apps/dtc/dtc-1.5.0-r2.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit multilib toolchain-funcs eutils
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/dtc/dtc.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-DESCRIPTION="Open Firmware device tree compiler"
-HOMEPAGE="https://devicetree.org/ https://git.kernel.org/cgit/utils/dtc/dtc.git/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="static-libs yaml"
-
-BDEPEND="
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
-"
-RDEPEND="yaml? ( dev-libs/libyaml )"
-DEPEND="${RDEPEND}"
-
-DOCS="
- Documentation/dt-object-internal.txt
- Documentation/dts-format.txt
- Documentation/manual.txt
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.4.4-posix-shell.patch
- "${FILESDIR}"/${PN}-1.5.0-fdt_check_full-visibility.patch
- "${FILESDIR}"/${PN}-1.5.0-gcc-10.patch
-)
-
-_emake() {
- # valgrind is used only in 'make checkm'
- emake \
- NO_PYTHON=1 \
- NO_VALGRIND=1 \
- NO_YAML=$(usex !yaml 1 0) \
- \
- AR="$(tc-getAR)" \
- CC="$(tc-getCC)" \
- PKG_CONFIG="$(tc-getPKG_CONFIG)" \
- \
- V=1 \
- \
- PREFIX="${EPREFIX}/usr" \
- \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- \
- "$@"
-}
-
-src_prepare() {
- default
-
- sed -i \
- -e '/^CFLAGS =/s:=:+=:' \
- -e '/^CPPFLAGS =/s:=:+=:' \
- -e 's:-Werror::' \
- -e 's:-g -Os::' \
- Makefile || die
-
- tc-export AR CC PKG_CONFIG
-}
-
-src_compile() {
- _emake
-}
-
-src_test() {
- _emake check
-}
-
-src_install() {
- _emake DESTDIR="${D}" install
-
- use static-libs || find "${ED}" -name '*.a' -delete
-}
diff --git a/sys-apps/dtc/dtc-1.5.0.ebuild b/sys-apps/dtc/dtc-1.5.0.ebuild
deleted file mode 100644
index f2284dee2e44..000000000000
--- a/sys-apps/dtc/dtc-1.5.0.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit multilib toolchain-funcs eutils
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/dtc/dtc.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-fi
-
-DESCRIPTION="Open Firmware device tree compiler"
-HOMEPAGE="https://devicetree.org/ https://git.kernel.org/cgit/utils/dtc/dtc.git/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="static-libs"
-
-DEPEND="
- sys-devel/bison
- sys-devel/flex
-"
-DOCS="
- Documentation/dt-object-internal.txt
- Documentation/dts-format.txt
- Documentation/manual.txt
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.4.4-posix-shell.patch
- "${FILESDIR}"/${PN}-1.5.0-fdt_check_full-visibility.patch
- "${FILESDIR}"/${PN}-1.5.0-gcc-10.patch
-)
-
-src_prepare() {
- default
-
- sed -i \
- -e '/^CFLAGS =/s:=:+=:' \
- -e '/^CPPFLAGS =/s:=:+=:' \
- -e 's:-Werror::' \
- -e 's:-g -Os::' \
- -e "/^PREFIX =/s:=.*:= ${EPREFIX}/usr:" \
- -e "/^LIBDIR =/s:=.*:= \$(PREFIX)/$(get_libdir):" \
- Makefile || die
-
- tc-export AR CC PKG_CONFIG
- export V=1
-}
-
-src_install() {
- default
-
- use static-libs || find "${ED}" -name '*.a' -delete
-}
diff --git a/sys-apps/dtc/dtc-1.6.0.ebuild b/sys-apps/dtc/dtc-1.6.0.ebuild
index 12c3ff004ae9..6e285f4459f5 100644
--- a/sys-apps/dtc/dtc-1.6.0.ebuild
+++ b/sys-apps/dtc/dtc-1.6.0.ebuild
@@ -1,15 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit multilib toolchain-funcs eutils
+
+inherit toolchain-funcs
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/dtc/dtc.git"
inherit git-r3
else
SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
DESCRIPTION="Open Firmware device tree compiler"
@@ -20,8 +21,8 @@ SLOT="0"
IUSE="static-libs yaml"
BDEPEND="
- sys-devel/bison
- sys-devel/flex
+ app-alternatives/yacc
+ app-alternatives/lex
virtual/pkgconfig
"
RDEPEND="yaml? ( dev-libs/libyaml )"
diff --git a/sys-apps/dtc/dtc-1.7.0.ebuild b/sys-apps/dtc/dtc-1.7.0.ebuild
new file mode 100644
index 000000000000..f674774c831b
--- /dev/null
+++ b/sys-apps/dtc/dtc-1.7.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit meson python-single-r1
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/dtc/dtc.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="Open Firmware device tree compiler"
+HOMEPAGE="https://devicetree.org/ https://git.kernel.org/cgit/utils/dtc/dtc.git/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="python static-libs test yaml"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+BDEPEND="
+ app-alternatives/yacc
+ app-alternatives/lex
+ virtual/pkgconfig
+ python? ( dev-lang/swig )
+"
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ yaml? ( dev-libs/libyaml )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=(
+ Documentation/dt-object-internal.txt
+ Documentation/dts-format.txt
+ Documentation/manual.txt
+)
+
+PATCHES=(
+ "${FILESDIR}"/${P}-meson-tests.patch
+ "${FILESDIR}"/${P}-meson-macos.patch
+)
+
+pkg_setup() {
+ if use python ; then
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+ python-single-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+
+ if ! use test ; then
+ sed -i -e "/subdir('tests')/d" meson.build || die
+ fi
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dtools=true
+ -Dvalgrind=disabled # only used for some tests
+ $(meson_feature python)
+ $(meson_feature yaml)
+ )
+
+ # bug #909366
+ use static-libs && emesonargs+=( -Dstatic-build=true )
+
+ meson_src_configure
+}
diff --git a/sys-apps/dtc/dtc-9999.ebuild b/sys-apps/dtc/dtc-9999.ebuild
index 5d8cb20a5b37..dd2aadfad28a 100644
--- a/sys-apps/dtc/dtc-9999.ebuild
+++ b/sys-apps/dtc/dtc-9999.ebuild
@@ -1,15 +1,17 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-inherit multilib toolchain-funcs eutils
+EAPI=8
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/dtc/dtc.git"
+PYTHON_COMPAT=( python3_{10..11} )
+inherit meson python-single-r1
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/dtc/dtc.git"
inherit git-r3
else
SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
DESCRIPTION="Open Firmware device tree compiler"
@@ -17,65 +19,53 @@ HOMEPAGE="https://devicetree.org/ https://git.kernel.org/cgit/utils/dtc/dtc.git/
LICENSE="GPL-2"
SLOT="0"
-IUSE="static-libs yaml"
+IUSE="python static-libs test yaml"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
BDEPEND="
- sys-devel/bison
- sys-devel/flex
+ app-alternatives/yacc
+ app-alternatives/lex
virtual/pkgconfig
+ python? ( dev-lang/swig )
+"
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ yaml? ( >=dev-libs/libyaml-0.2.3 )
"
-RDEPEND="yaml? ( dev-libs/libyaml )"
DEPEND="${RDEPEND}"
-DOCS="
+DOCS=(
Documentation/dt-object-internal.txt
Documentation/dts-format.txt
Documentation/manual.txt
-"
+)
-_emake() {
- # valgrind is used only in 'make checkm'
- emake \
- NO_PYTHON=1 \
- NO_VALGRIND=1 \
- NO_YAML=$(usex !yaml 1 0) \
- \
- AR="$(tc-getAR)" \
- CC="$(tc-getCC)" \
- PKG_CONFIG="$(tc-getPKG_CONFIG)" \
- \
- V=1 \
- \
- PREFIX="${EPREFIX}/usr" \
- \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- \
- "$@"
+pkg_setup() {
+ if use python ; then
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+ python-single-r1_pkg_setup
+ fi
}
src_prepare() {
default
- sed -i \
- -e '/^CFLAGS =/s:=:+=:' \
- -e '/^CPPFLAGS =/s:=:+=:' \
- -e 's:-Werror::' \
- -e 's:-g -Os::' \
- Makefile || die
-
- tc-export AR CC PKG_CONFIG
+ if ! use test ; then
+ sed -i -e "/subdir('tests')/d" meson.build || die
+ fi
}
-src_compile() {
- _emake
-}
-
-src_test() {
- _emake check
-}
+src_configure() {
+ local emesonargs=(
+ -Dtools=true
+ -Dvalgrind=disabled # only used for some tests
+ $(meson_feature python)
+ $(meson_feature yaml)
+ )
-src_install() {
- _emake DESTDIR="${D}" install
+ # bug #909366
+ use static-libs && emesonargs+=( -Dstatic-build=true )
- use static-libs || find "${ED}" -name '*.a' -delete
+ meson_src_configure
}
diff --git a/sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch b/sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch
deleted file mode 100644
index b9b0175c0bd3..000000000000
--- a/sys-apps/dtc/files/dtc-1.4.4-posix-shell.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 4d9522764985462741c7bb4af1ab231b9251476b Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@chromium.org>
-Date: Wed, 10 Jan 2018 00:41:43 -0500
-Subject: [PATCH] dtdiff: change to POSIX shell
-
-This changes from the bash-specific process substitution feature to
-reading with pipes. It relies on /dev/fd or /proc/self/fd existing.
-
-URL: https://crbug.com/756559
-Signed-off-by: Mike Frysinger <vapier@chromium.org>
----
- dtdiff | 19 +++++++++++++------
- 1 file changed, 13 insertions(+), 6 deletions(-)
-
-diff --git a/dtdiff b/dtdiff
-index 5fa772b0ab62..4d1b71756c2f 100644
---- a/dtdiff
-+++ b/dtdiff
-@@ -1,8 +1,4 @@
--#! /bin/bash
--
--# This script uses the bash <(...) extension.
--# If you want to change this to work with a generic /bin/sh, make sure
--# you fix that.
-+#! /bin/sh
-
-
- DTC=dtc
-@@ -35,4 +31,15 @@ if [ $# != 2 ]; then
- exit 1
- fi
-
--diff -u <(source_and_sort "$1") <(source_and_sort "$2")
-+for dir in /dev/fd /proc/self/fd; do
-+ if [ -d "${dir}" ]; then
-+ break
-+ fi
-+done
-+
-+source_and_sort "$1" | (
-+ # Duplicate current stdin from the first file to fd 3 so we can change fd 0
-+ # to the second file.
-+ exec 3<&0
-+ source_and_sort "$2" | diff -u "${dir}/3" "${dir}/0"
-+)
---
-2.15.1
-
diff --git a/sys-apps/dtc/files/dtc-1.5.0-fdt_check_full-visibility.patch b/sys-apps/dtc/files/dtc-1.5.0-fdt_check_full-visibility.patch
deleted file mode 100644
index a5a3d7524c45..000000000000
--- a/sys-apps/dtc/files/dtc-1.5.0-fdt_check_full-visibility.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/libfdt/version.lds b/libfdt/version.lds
-index 9f5d708..6b0f6d8 100644
---- a/libfdt/version.lds
-+++ b/libfdt/version.lds
-@@ -1,6 +1,7 @@
- LIBFDT_1.2 {
- global:
- fdt_next_node;
-+ fdt_check_full;
- fdt_check_header;
- fdt_move;
- fdt_string;
diff --git a/sys-apps/dtc/files/dtc-1.5.0-gcc-10.patch b/sys-apps/dtc/files/dtc-1.5.0-gcc-10.patch
deleted file mode 100644
index 80773bfaebbc..000000000000
--- a/sys-apps/dtc/files/dtc-1.5.0-gcc-10.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-https://bugs.gentoo.org/706660
-https://git.kernel.org/pub/scm/utils/dtc/dtc.git/patch/?id=0e9225eb0dfec51def612b928d2f1836b092bc7e
-
-From 0e9225eb0dfec51def612b928d2f1836b092bc7e Mon Sep 17 00:00:00 2001
-From: Dirk Mueller <dmueller@suse.com>
-Date: Tue, 14 Jan 2020 18:53:41 +0100
-Subject: Remove redundant YYLOC global declaration
-
-gcc 10 will default to -fno-common, which causes this error at link
-time:
-
- (.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here
-
-This is because both dtc-lexer as well as dtc-parser define the same
-global symbol yyloc. Before with -fcommon those were merged into one
-defintion. The proper solution would be to to mark this as "extern",
-however that leads to:
-
- dtc-lexer.l:26:16: error: redundant redeclaration of 'yylloc' [-Werror=redundant-decls]
- 26 | extern YYLTYPE yylloc;
- | ^~~~~~
-In file included from dtc-lexer.l:24:
-dtc-parser.tab.h:127:16: note: previous declaration of 'yylloc' was here
- 127 | extern YYLTYPE yylloc;
- | ^~~~~~
-cc1: all warnings being treated as errors
-
-which means the declaration is completely redundant and can just be
-dropped.
-
-Signed-off-by: Dirk Mueller <dmueller@suse.com>
-Message-Id: <20200114175341.2994-1-dmueller@suse.com>
-Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
----
- dtc-lexer.l | 1 -
- 1 file changed, 1 deletion(-)
-
---- a/dtc-lexer.l
-+++ b/dtc-lexer.l
-@@ -23,7 +23,6 @@ LINECOMMENT "//".*\n
- #include "srcpos.h"
- #include "dtc-parser.tab.h"
-
--YYLTYPE yylloc;
- extern bool treesource_error;
-
- /* CAUTION: this will stop working if we ever use yyless() or yyunput() */
---
-cgit 1.2-0.3.lf.el7
-
diff --git a/sys-apps/dtc/files/dtc-1.7.0-meson-macos.patch b/sys-apps/dtc/files/dtc-1.7.0-meson-macos.patch
new file mode 100644
index 000000000000..473cd9a29e1a
--- /dev/null
+++ b/sys-apps/dtc/files/dtc-1.7.0-meson-macos.patch
@@ -0,0 +1,39 @@
+https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=71a8b8ef0adf01af4c78c739e04533a35c1dc89c
+
+From 71a8b8ef0adf01af4c78c739e04533a35c1dc89c Mon Sep 17 00:00:00 2001
+From: Otavio Salvador <otavio@ossystems.com.br>
+Date: Wed, 31 May 2023 11:41:42 -0300
+Subject: libfdt: meson: Fix linking on macOS linker
+
+-undefined error is the equivalent of --no-undefined for the macOS
+linker, but -undefined would also be understood as a valid argument for
+GNU ld so we use the supported linker variant.
+
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
+--- a/libfdt/meson.build
++++ b/libfdt/meson.build
+@@ -16,10 +16,20 @@ sources = files(
+ 'fdt_wip.c',
+ )
+
++link_args = []
++if cc.has_link_argument('-Wl,--no-undefined')
++ link_args += '-Wl,--no-undefined'
++else
++ # -undefined error is the equivalent of --no-undefined for the macOS linker,
++ # but -undefined would also be understood as a valid argument for GNU ld!
++ link_args += cc.get_supported_link_arguments('-Wl,-undefined,error')
++endif
++
++link_args += version_script
+ libfdt = library(
+ 'fdt', sources,
+ version: '1.6.0',
+- link_args: ['-Wl,--no-undefined', version_script],
++ link_args: link_args,
+ link_depends: 'version.lds',
+ install: true,
+ )
+--
+cgit
diff --git a/sys-apps/dtc/files/dtc-1.7.0-meson-tests.patch b/sys-apps/dtc/files/dtc-1.7.0-meson-tests.patch
new file mode 100644
index 000000000000..0bc2d71aea1c
--- /dev/null
+++ b/sys-apps/dtc/files/dtc-1.7.0-meson-tests.patch
@@ -0,0 +1,27 @@
+https://git.kernel.org/pub/scm/utils/dtc/dtc.git/patch/?id=32174a66efa4ad19fc6a2a6422e4af2ae4f055cb
+
+From 32174a66efa4ad19fc6a2a6422e4af2ae4f055cb Mon Sep 17 00:00:00 2001
+From: David Gibson <david@gibson.dropbear.id.au>
+Date: Tue, 28 Feb 2023 10:33:58 +1100
+Subject: meson: Fix cell overflow tests when running from meson
+
+Because meson always builds out-of-tree we need to reference things in the
+original source tree via $SRCDIR from run_tests.sh. We forgot a couple of
+cases for the cell overflow tests. Fix them.
+
+Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
+--- a/tests/run_tests.sh
++++ b/tests/run_tests.sh
+@@ -519,8 +519,8 @@ libfdt_tests () {
+ check_tests "$SRCDIR/phandle-args-overflow.dts" clocks_property
+
+ ## https://github.com/dgibson/dtc/issues/74
+- run_dtc_test -I dts -O dtb -o cell-overflow-results.test.dtb cell-overflow-results.dts
+- run_dtc_test -I dts -O dtb -o cell-overflow.test.dtb cell-overflow.dts
++ run_dtc_test -I dts -O dtb -o cell-overflow-results.test.dtb "$SRCDIR/cell-overflow-results.dts"
++ run_dtc_test -I dts -O dtb -o cell-overflow.test.dtb "$SRCDIR/cell-overflow.dts"
+ run_test dtbs_equal_ordered cell-overflow.test.dtb cell-overflow-results.test.dtb
+
+ # check full tests
+--
+cgit
diff --git a/sys-apps/dtc/metadata.xml b/sys-apps/dtc/metadata.xml
index 17bad4a3b9b4..2adff2b25d4d 100644
--- a/sys-apps/dtc/metadata.xml
+++ b/sys-apps/dtc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>lu_zero@gentoo.org</email>
diff --git a/sys-apps/duc/Manifest b/sys-apps/duc/Manifest
index 4beb1637a043..bc1d38c14108 100644
--- a/sys-apps/duc/Manifest
+++ b/sys-apps/duc/Manifest
@@ -1,2 +1 @@
-DIST duc-1.4.1.tar.gz 325689 BLAKE2B 1e23204b60d1dd67eb094c1152c5056d0abc1fc6037a3811df5be18cbc4d61ccd2077b175f8f75559f368e2633476990e0c453cf88cff03c8aa3fc1796a42440 SHA512 88aa8f51651adf019c3a91c83eca308b822ff7569d6f6d30cf91338740ec9b0bd21c4f5dd783cf46c8d67aad6b03ad908cd7ed472e5db6feaf66ee02582d9f88
-DIST duc-1.4.3.tar.gz 363507 BLAKE2B 8d4364d48c247d7a83c8c5dd900b1c36ec78c68fa7d090e178a0e3209583e433c2e459d192f65ac350038c7e0d5a57df2c5c0d649cc9f554d7af74ad960c8db5 SHA512 5eb3e862e7003838e012dd1faab507a9b58607b77bd2af70a662005b6e4008ac44d1fb2e17b99da8e42ddfadb1cede2a468144ace7a72c12d0825fc7df4d18cd
+DIST duc-1.4.5.tar.gz 288381 BLAKE2B dc597618a9e00258abef23ffded94711e6b66a37dce3cb078fe44ef2e1b253b7b48a46f38a545eb05ce4b83f0357d93c2a594ef82da0b81e6963fed8136d8ea6 SHA512 b6d48222ed2821d3d1317102f867f71f9060a093ba11ba48d9f0d9dc743c5b361442cb605aec6e91dd6588ae4b51897b4ed5da96ba33019e8a501a262af12371
diff --git a/sys-apps/duc/duc-1.4.1-r1.ebuild b/sys-apps/duc/duc-1.4.1-r1.ebuild
deleted file mode 100644
index b063305e8b89..000000000000
--- a/sys-apps/duc/duc-1.4.1-r1.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/zevv/duc.git"
- KEYWORDS=""
-else
- KEYWORDS="~amd64 ~x86"
- SRC_URI="https://github.com/zevv/${PN}/releases/download/${PV}/${P}.tar.gz"
-fi
-
-DESCRIPTION="A library and suite of tools for inspecting disk usage"
-HOMEPAGE="https://github.com/zevv/duc"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="cairo gui -leveldb ncurses -sqlite +tokyocabinet X"
-
-REQUIRED_USE="
- ^^ ( tokyocabinet leveldb sqlite )
- X? ( cairo gui )
-"
-
-DEPEND="
- cairo? ( x11-libs/cairo x11-libs/pango )
- gui? (
- X? (
- x11-libs/cairo[X]
- x11-libs/libX11
- x11-libs/pango[X]
- )
- !X? ( >=media-libs/glfw-3.0 )
- )
- leveldb? ( dev-libs/leveldb )
- ncurses? ( sys-libs/ncurses:= )
- sqlite? ( dev-db/sqlite:3 )
- tokyocabinet? ( dev-db/tokyocabinet )
-"
-RDEPEND="${DEPEND}"
-
-src_unpack() {
- if [[ "${PV}" == "9999" ]]; then
- git-r3_src_unpack
- else
- unpack ${A}
- fi
-}
-
-src_prepare() {
- sed -i -e "/ldconfig/d" -e "/install-exec-hook/d" Makefile.am || die
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- local myconf=( $(use_enable ncurses ui) )
-
- if use tokyocabinet; then
- myconf+=( --with-db-backend=tokyocabinet )
- elif use leveldb; then
- myconf+=( --with-db-backend=leveldb )
- else
- myconf+=( --with-db-backend=sqlite3 )
- fi
-
- # Necessary logic for cairo
- if use gui && use X; then
- # X backend GUI
- myconf+=( --enable-x11 --disable-opengl --enable-cairo )
- elif use gui; then
- # OpenGL backend GUI
- myconf+=( --disable-x11 --enable-opengl $(use_enable cairo) )
- else
- # No GUI
- myconf+=( $(use_enable cairo) --disable-x11 --disable-opengl )
- fi
-
- econf ${myconf[@]}
-}
diff --git a/sys-apps/duc/duc-1.4.3-r1.ebuild b/sys-apps/duc/duc-1.4.3-r1.ebuild
deleted file mode 100644
index 0c79dbc7abe7..000000000000
--- a/sys-apps/duc/duc-1.4.3-r1.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/zevv/duc.git"
- KEYWORDS=""
-else
- KEYWORDS="~amd64 ~x86"
- SRC_URI="https://github.com/zevv/${PN}/releases/download/${PV}/${P}.tar.gz"
-fi
-
-DESCRIPTION="A library and suite of tools for inspecting disk usage"
-HOMEPAGE="https://github.com/zevv/duc"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="cairo gui -leveldb ncurses -sqlite +tokyocabinet X"
-
-REQUIRED_USE="
- ^^ ( tokyocabinet leveldb sqlite )
- X? ( cairo gui )
-"
-
-DEPEND="
- cairo? ( x11-libs/cairo x11-libs/pango )
- gui? (
- X? (
- x11-libs/cairo[X]
- x11-libs/libX11
- x11-libs/pango[X]
- )
- !X? ( >=media-libs/glfw-3.0 )
- )
- leveldb? ( dev-libs/leveldb:= )
- ncurses? ( sys-libs/ncurses:= )
- sqlite? ( dev-db/sqlite:3 )
- tokyocabinet? ( dev-db/tokyocabinet )
-"
-RDEPEND="${DEPEND}"
-PATCHES=(
- "${FILESDIR}"/${PN}-1.4.1-tinfo.patch
-)
-
-src_unpack() {
- if [[ "${PV}" == "9999" ]]; then
- git-r3_src_unpack
- else
- unpack ${A}
- fi
-}
-
-src_prepare() {
- sed -i -e "/ldconfig/d" -e "/install-exec-hook/d" Makefile.am || die
-
- default
-
- eautoreconf
-}
-
-src_configure() {
- local myconf=( $(use_enable ncurses ui) )
-
- if use tokyocabinet; then
- myconf+=( --with-db-backend=tokyocabinet )
- elif use leveldb; then
- myconf+=( --with-db-backend=leveldb )
- else
- myconf+=( --with-db-backend=sqlite3 )
- fi
-
- # Necessary logic for cairo
- if use gui && use X; then
- # X backend GUI
- myconf+=( --enable-x11 --disable-opengl --enable-cairo )
- elif use gui; then
- # OpenGL backend GUI
- myconf+=( --disable-x11 --enable-opengl $(use_enable cairo) )
- else
- # No GUI
- myconf+=( $(use_enable cairo) --disable-x11 --disable-opengl )
- fi
-
- econf ${myconf[@]}
-}
diff --git a/sys-apps/duc/duc-1.4.5.ebuild b/sys-apps/duc/duc-1.4.5.ebuild
new file mode 100644
index 000000000000..a0fde0e3916e
--- /dev/null
+++ b/sys-apps/duc/duc-1.4.5.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+if [[ "${PV}" == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zevv/duc.git"
+else
+ KEYWORDS="~amd64 ~x86"
+ SRC_URI="https://github.com/zevv/${PN}/releases/download/${PV}/${P}.tar.gz"
+fi
+
+DESCRIPTION="Library and suite of tools for inspecting disk usage"
+HOMEPAGE="https://github.com/zevv/duc"
+
+LICENSE="LGPL-3"
+SLOT="0"
+IUSE="cairo gui leveldb ncurses sqlite +tokyocabinet X"
+
+REQUIRED_USE="
+ ^^ ( tokyocabinet leveldb sqlite )
+ X? ( cairo gui )
+"
+
+DEPEND="
+ cairo? ( x11-libs/cairo x11-libs/pango )
+ gui? (
+ X? (
+ x11-libs/cairo[X]
+ x11-libs/libX11
+ x11-libs/pango[X]
+ )
+ !X? ( >=media-libs/glfw-3.0 )
+ )
+ leveldb? ( dev-libs/leveldb:= )
+ ncurses? ( sys-libs/ncurses:= )
+ sqlite? ( dev-db/sqlite:3 )
+ tokyocabinet? ( dev-db/tokyocabinet )
+"
+RDEPEND="${DEPEND}"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4.1-tinfo.patch
+)
+
+src_unpack() {
+ if [[ "${PV}" == "9999" ]]; then
+ git-r3_src_unpack
+ else
+ unpack ${A}
+ fi
+}
+
+src_prepare() {
+ sed -i -e "/ldconfig/d" -e "/install-exec-hook/d" Makefile.am || die
+
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=( $(use_enable ncurses ui) )
+
+ if use tokyocabinet; then
+ myconf+=( --with-db-backend=tokyocabinet )
+ elif use leveldb; then
+ myconf+=( --with-db-backend=leveldb )
+ else
+ myconf+=( --with-db-backend=sqlite3 )
+ fi
+
+ # Necessary logic for cairo
+ if use gui && use X; then
+ # X backend GUI
+ myconf+=( --enable-x11 --disable-opengl --enable-cairo )
+ elif use gui; then
+ # OpenGL backend GUI
+ myconf+=( --disable-x11 --enable-opengl $(use_enable cairo) )
+ else
+ # No GUI
+ myconf+=( $(use_enable cairo) --disable-x11 --disable-opengl )
+ fi
+
+ econf ${myconf[@]}
+}
diff --git a/sys-apps/duc/duc-9999.ebuild b/sys-apps/duc/duc-9999.ebuild
index 0c79dbc7abe7..a0fde0e3916e 100644
--- a/sys-apps/duc/duc-9999.ebuild
+++ b/sys-apps/duc/duc-9999.ebuild
@@ -1,25 +1,24 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit autotools
if [[ "${PV}" == "9999" ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/zevv/duc.git"
- KEYWORDS=""
else
KEYWORDS="~amd64 ~x86"
SRC_URI="https://github.com/zevv/${PN}/releases/download/${PV}/${P}.tar.gz"
fi
-DESCRIPTION="A library and suite of tools for inspecting disk usage"
+DESCRIPTION="Library and suite of tools for inspecting disk usage"
HOMEPAGE="https://github.com/zevv/duc"
-LICENSE="GPL-2"
+LICENSE="LGPL-3"
SLOT="0"
-IUSE="cairo gui -leveldb ncurses -sqlite +tokyocabinet X"
+IUSE="cairo gui leveldb ncurses sqlite +tokyocabinet X"
REQUIRED_USE="
^^ ( tokyocabinet leveldb sqlite )
@@ -67,7 +66,7 @@ src_configure() {
if use tokyocabinet; then
myconf+=( --with-db-backend=tokyocabinet )
- elif use leveldb; then
+ elif use leveldb; then
myconf+=( --with-db-backend=leveldb )
else
myconf+=( --with-db-backend=sqlite3 )
diff --git a/sys-apps/duc/metadata.xml b/sys-apps/duc/metadata.xml
index 729eae15639e..2750d6483c4b 100644
--- a/sys-apps/duc/metadata.xml
+++ b/sys-apps/duc/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>NP-Hardass@gentoo.org</email>
- <name>NP-Hardass</name>
- </maintainer>
+ <!-- maintainer-needed -->
<use>
<flag name="cairo">Build support for exporting to PNG and PDF with <pkg>x11-libs/cairo</pkg></flag>
<flag name="leveldb">Use <pkg>dev-libs/leveldb</pkg> as the backend</flag>
diff --git a/sys-apps/earlyoom/Manifest b/sys-apps/earlyoom/Manifest
index 6987a325711d..e100bbfd7ffc 100644
--- a/sys-apps/earlyoom/Manifest
+++ b/sys-apps/earlyoom/Manifest
@@ -1,2 +1,2 @@
-DIST earlyoom-1.3.tar.gz 31399 BLAKE2B 3867540afb23493fbb532bcb72a5cfacca4ed297a053ff5e2c7e394bfa3640887e3e7c6430789bc1eda4b7a68680d8a74ab56b641fe9e5d4caa4406e2edb0667 SHA512 c5de742289e82c2098bd88c61dcb3e20eb022905a015b4894c95a4de3978ce18d794a9e7c17c97851ca9f8888728908f7bf978c014b3b69799bffa8b546d258a
-DIST earlyoom-1.6.1.tar.gz 48200 BLAKE2B 559ed59fa24cb05dbc74785eff06e1e4a2772b555fba2c67cda2651cf1c514e842f18cd085905d556e0bd1de238012385eae37953d90a6a5302f7a727be9eb8a SHA512 4f7e2053f6331c1a0c0163952067503da0ea4f09a5650ef4f4d2692530e04cd0841e4fd83fe593d54dc5361d51c86002d93fb9e6ae0f76d669646bd8de9f2065
+DIST earlyoom-1.7-deps.tar.xz 1974036 BLAKE2B ff378ae64b6b293e3b9d9fa05607209a515edadd18edcb70e204de1e0808b06dfaca7e6dcddeffbda9dae8abbadf7ac6074df725997b96be8a8d8cc35ac4d8c8 SHA512 67072000f8695935f77494faca84c74c67de4b9a4b3b889b310ad674f28c7ed85a0d59e91f4d5caa06cc1d7c1e7ef31aa3a373851361b905dc29e6d4d04eeeb9
+DIST earlyoom-1.7.tar.gz 52210 BLAKE2B c8338434160e4ccaa5ee64299487ca47a3d94e894362c320cf8210caf895a34c7abb584654afcdcb6fc1e058d53c1fa7eb740477acb104ed295700faccbcbdc1 SHA512 5732632c38d9b511aaa81845b3d8f8afe737aa6498dca7e31accaf18bfcf271ba436946aa06a514a34c953f99343f9b197d8a2b8751e16d336aeb084944f3602
diff --git a/sys-apps/earlyoom/earlyoom-1.3.ebuild b/sys-apps/earlyoom/earlyoom-1.3.ebuild
deleted file mode 100644
index cae1f13f3b86..000000000000
--- a/sys-apps/earlyoom/earlyoom-1.3.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd
-
-DESCRIPTION="Early OOM Daemon for Linux"
-HOMEPAGE="https://github.com/rfjakob/earlyoom"
-
-LICENSE="MIT-with-advertising"
-SLOT="0"
-if [ "${PV}" = "9999" ]; then
- EGIT_REPO_URI="https://github.com/rfjakob/earlyoom.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/rfjakob/earlyoom/archive/v$PV.tar.gz -> $P.tar.gz"
- KEYWORDS="amd64 x86"
-fi
-IUSE="docs systemd test"
-
-RDEPEND=""
-DEPEND=""
-BDEPEND="
- docs? ( app-text/pandoc )
- test? ( dev-lang/go )
-"
-
-RESTRICT="!test? ( test )"
-
-src_prepare() {
- eapply "${FILESDIR}/${P}-test-fixed.patch"
- default
-}
-
-src_compile() {
- VERSION="v${PV}" emake earlyoom
- use docs && VERSION="v${PV}" emake earlyoom.1
- use systemd && emake PREFIX=/usr earlyoom.service
-}
-
-src_install() {
- dobin earlyoom
- use docs && doman earlyoom.1
-
- insinto /etc/default
- newins earlyoom.default earlyoom
-
- doinitd "${FILESDIR}/${PN}"
- use systemd && systemd_dounit earlyoom.service
-}
diff --git a/sys-apps/earlyoom/earlyoom-1.6.1.ebuild b/sys-apps/earlyoom/earlyoom-1.6.1.ebuild
deleted file mode 100644
index 898c4fbac557..000000000000
--- a/sys-apps/earlyoom/earlyoom-1.6.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd
-
-DESCRIPTION="Early OOM Daemon for Linux"
-HOMEPAGE="https://github.com/rfjakob/earlyoom"
-
-LICENSE="MIT-with-advertising"
-SLOT="0"
-if [ "${PV}" = "9999" ]; then
- EGIT_REPO_URI="https://github.com/rfjakob/earlyoom.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/rfjakob/earlyoom/archive/v$PV.tar.gz -> $P.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-IUSE="docs systemd test"
-
-RDEPEND=""
-DEPEND=""
-BDEPEND="
- docs? ( app-text/pandoc )
- test? ( dev-lang/go )
-"
-
-#tests don't work
-RESTRICT=test
-
-src_compile() {
- VERSION="v${PV}" emake earlyoom
- use docs && VERSION="v${PV}" emake earlyoom.1
- use systemd && emake PREFIX=/usr earlyoom.service
-}
-
-src_install() {
- dobin earlyoom
- use docs && doman earlyoom.1
-
- insinto /etc/default
- newins earlyoom.default earlyoom
-
- doinitd "${FILESDIR}/${PN}"
- use systemd && systemd_dounit earlyoom.service
-}
diff --git a/sys-apps/earlyoom/earlyoom-1.7-r1.ebuild b/sys-apps/earlyoom/earlyoom-1.7-r1.ebuild
new file mode 100644
index 000000000000..9c0f8e1059dc
--- /dev/null
+++ b/sys-apps/earlyoom/earlyoom-1.7-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GO_OPTIONAL=1
+inherit go-module systemd toolchain-funcs
+
+DESCRIPTION="Early OOM Daemon for Linux"
+HOMEPAGE="https://github.com/rfjakob/earlyoom"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/rfjakob/earlyoom.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/rfjakob/earlyoom/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz )"
+
+ KEYWORDS="amd64 x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="man test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ man? ( virtual/pandoc )
+ test? (
+ dev-lang/go
+ dev-util/cppcheck
+ )
+"
+
+src_unpack() {
+ default
+
+ use test && go-module_src_unpack
+}
+
+src_compile() {
+ tc-export CC
+
+ emake \
+ PREFIX="${EPREFIX}"/usr \
+ VERSION="v${PV}" \
+ SYSTEMDUNITDIR="$(systemd_get_systemunitdir)" \
+ earlyoom earlyoom.service $(usev man 'earlyoom.1')
+}
+
+src_install() {
+ dobin earlyoom
+
+ use man && doman earlyoom.1
+
+ insinto /etc/default
+ newins earlyoom.default earlyoom
+
+ dodir /etc/conf.d
+ dosym -r /etc/default/earlyoom /etc/conf.d/earlyoom
+
+ newinitd "${FILESDIR}"/${PN}-r1 ${PN}
+ systemd_dounit earlyoom.service
+}
diff --git a/sys-apps/earlyoom/earlyoom-9999.ebuild b/sys-apps/earlyoom/earlyoom-9999.ebuild
index 898c4fbac557..26455f1c6000 100644
--- a/sys-apps/earlyoom/earlyoom-9999.ebuild
+++ b/sys-apps/earlyoom/earlyoom-9999.ebuild
@@ -1,47 +1,61 @@
-# Copyright 2020 Gentoo Authors
+# Copyright 2020-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit systemd
+GO_OPTIONAL=1
+inherit go-module systemd toolchain-funcs
DESCRIPTION="Early OOM Daemon for Linux"
HOMEPAGE="https://github.com/rfjakob/earlyoom"
-LICENSE="MIT-with-advertising"
-SLOT="0"
-if [ "${PV}" = "9999" ]; then
+if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/rfjakob/earlyoom.git"
inherit git-r3
else
- SRC_URI="https://github.com/rfjakob/earlyoom/archive/v$PV.tar.gz -> $P.tar.gz"
+ SRC_URI="https://github.com/rfjakob/earlyoom/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz )"
+
KEYWORDS="~amd64 ~x86"
fi
-IUSE="docs systemd test"
-RDEPEND=""
-DEPEND=""
+LICENSE="MIT"
+SLOT="0"
+IUSE="man test"
+RESTRICT="!test? ( test )"
+
BDEPEND="
- docs? ( app-text/pandoc )
+ man? ( virtual/pandoc )
test? ( dev-lang/go )
"
-#tests don't work
-RESTRICT=test
+src_unpack() {
+ default
+
+ use test && go-module_src_unpack
+}
src_compile() {
- VERSION="v${PV}" emake earlyoom
- use docs && VERSION="v${PV}" emake earlyoom.1
- use systemd && emake PREFIX=/usr earlyoom.service
+ tc-export CC
+
+ emake \
+ PREFIX="${EPREFIX}"/usr \
+ VERSION="v${PV}" \
+ SYSTEMDUNITDIR="$(systemd_get_systemunitdir)" \
+ earlyoom earlyoom.service $(usev man 'earlyoom.1')
}
src_install() {
dobin earlyoom
- use docs && doman earlyoom.1
+
+ use man && doman earlyoom.1
insinto /etc/default
newins earlyoom.default earlyoom
- doinitd "${FILESDIR}/${PN}"
- use systemd && systemd_dounit earlyoom.service
+ dodir /etc/conf.d
+ dosym -r /etc/default/earlyoom /etc/conf.d/earlyoom
+
+ newinitd "${FILESDIR}"/${PN}-r1 ${PN}
+ systemd_dounit earlyoom.service
}
diff --git a/sys-apps/earlyoom/files/earlyoom b/sys-apps/earlyoom/files/earlyoom
deleted file mode 100644
index 374c0d1af231..000000000000
--- a/sys-apps/earlyoom/files/earlyoom
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/sbin/openrc-run
-name=earlyoom
-command=/usr/bin/earlyoom
-command_args=-k
-command_background=1
-pidfile=/run/earlyoom.pid
diff --git a/sys-apps/earlyoom/files/earlyoom-1.3-test-fixed.patch b/sys-apps/earlyoom/files/earlyoom-1.3-test-fixed.patch
deleted file mode 100644
index 8c6fc3ab6df5..000000000000
--- a/sys-apps/earlyoom/files/earlyoom-1.3-test-fixed.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 3648b351e88331f3f2e46af4ae0ddd19e27bc7c2 Mon Sep 17 00:00:00 2001
-From: Jakob Unterwurzacher <jakobunt@gmail.com>
-Date: Mon, 8 Jul 2019 21:07:04 +0200
-Subject: [PATCH] tests: fix TestCli failure when all processes have badness 0
-
-On a machine with a lot of RAM and no big processes running,
-all processes may have badness 0, and we will get
-
- ^ new victim (higher vm_rss)
-
-in the debug output, but not
-
- ^ new victim (higher badness)
-
-. This is not a failure.
-
-Fixes https://github.com/rfjakob/earlyoom/issues/137
----
- tests/cli_test.go | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/cli_test.go b/tests/cli_test.go
-index 7085290..ef4abee 100644
---- a/tests/cli_test.go
-+++ b/tests/cli_test.go
-@@ -72,7 +72,7 @@ func TestCli(t *testing.T) {
- {args: nil, code: -1, stderrContains: startupMsg, stdoutContains: memReport},
- {args: []string{"-p"}, code: -1, stdoutContains: memReport},
- {args: []string{"-v"}, code: 0, stderrContains: "earlyoom v", stdoutEmpty: true},
-- {args: []string{"-d"}, code: -1, stdoutContains: "^ new victim (higher badness)"},
-+ {args: []string{"-d"}, code: -1, stdoutContains: "^ new victim"},
- {args: []string{"-m", "1"}, code: -1, stderrContains: " 1 %", stdoutContains: memReport},
- {args: []string{"-m", "0"}, code: 15, stderrContains: "fatal", stdoutEmpty: true},
- {args: []string{"-m", "-10"}, code: 15, stderrContains: "fatal", stdoutEmpty: true},
diff --git a/sys-apps/earlyoom/files/earlyoom-r1 b/sys-apps/earlyoom/files/earlyoom-r1
new file mode 100644
index 000000000000..124e5b0023fd
--- /dev/null
+++ b/sys-apps/earlyoom/files/earlyoom-r1
@@ -0,0 +1,6 @@
+#!/sbin/openrc-run
+name=earlyoom
+command=/usr/bin/earlyoom
+command_args="${EARLYOOM_ARGS}"
+command_background=1
+pidfile=/run/earlyoom.pid
diff --git a/sys-apps/earlyoom/metadata.xml b/sys-apps/earlyoom/metadata.xml
index 40cd1829d964..da37dbcffe7e 100644
--- a/sys-apps/earlyoom/metadata.xml
+++ b/sys-apps/earlyoom/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zerochaos@gentoo.org</email>
<name>Rick Farina</name>
</maintainer>
- <use>
- <flag name="docs">Generate man page</flag>
- </use>
+ <upstream>
+ <remote-id type="github">rfjakob/earlyoom</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/ed/Manifest b/sys-apps/ed/Manifest
index a87cb0deff22..34c451955b16 100644
--- a/sys-apps/ed/Manifest
+++ b/sys-apps/ed/Manifest
@@ -1,2 +1,6 @@
-DIST ed-1.15.tar.xz 67924 BLAKE2B 89a5614e528f974853d8c23060b77a872ae34675f6898b713543109d3a21d0d42b4d07fea5e86e842a34619617d342058ebb82655088320764295422f700fdc4 SHA512 b723353d4f2a1e719b79cb210750596c723be87c282ab96285524eb707d5ae15c242b2d7b0a282ce2ebd0aaf221cd2be41897e79f8fc17f10e9e318a9be487a0
-DIST ed-1.16.tar.xz 68432 BLAKE2B 222ab30f72fb466372cd7ced75807e9324a916ca5962c6829d562476ae1d9ae9c01235a130e58f952bd6029b931f6362d2a695b35963ca32bb3cfa539dceab0d SHA512 45b29fb86c7e7d8569c02c8177a9c7f7e691e08e913bc07b301b34210b6dc27377858ce60dd695feb950ef436c86d7059ade90396364c95aefa3c1e7a9d3a2a4
+DIST ed-1.19.tar.lz 66448 BLAKE2B 139305a1d64e96f7eadcb462325918e5eee18de229ec8e1b3fac29dc9b8ef58ceea4cd7ffdbd3674fd7f421d90bc0c9e3557318eb57830d7cd46e579828fa95d SHA512 594d5cf895931783110ee1956078f6a77aee022fb67730cbc6f1d30521c120b97820a5eb349278575f85c4c1e17fea0e16a3bc22592edae53c6fd27941ee3d7e
+DIST ed-1.19.tar.lz.sig 72 BLAKE2B ada611148a6347d8953c65669b61f69eb0ed8d48f6dc4ffaab8975dd7e28f1d87e434493a77e817ca05874f741e243309529e60e95f2a7636148fa71c711f5e3 SHA512 03ff7cf2f337fdc94efaa1374ce95d37c29c556b2a9a13f7216e05e8e9e9efc95bcbb554bd05000b5283d5f20884f3f50b16f220fba8e6ff318b1b975c6a44c9
+DIST ed-1.20.1.tar.lz 69062 BLAKE2B bcdfd8390d69bc5980823b81863bfa3e871d525140c77790ac1b39fd0cab201c8e9ab63c708eb619e305e6a1dfb8db0cb1e3cad66a90acff528c7bd3214157ea SHA512 a528e5f8e53a6102a25d5607dccf14310aca3b19fad3341cc72b7e5cd560ebd1ff9361d422525e456da5752b8ff2ee92bd7d5d8e6d545e4ff8e1c31d20ab83df
+DIST ed-1.20.1.tar.lz.sig 72 BLAKE2B 5fe7a32df4d889983b03bbbb21cb7c0aff705e8357cf961cec202703ae1cc23e01057c8b236582a3f17ad03e219248b6fe1d25ae5197640ccc2e14b9f11c682a SHA512 9d63dc1f32a41d0c5d1878cee3756e418fcf33d2d3e769ded3a358190e3f42c86040b3c4ff158afb1e6b7a4ae21867705b76cc15f92ce7a9b2f160fa9daea3f1
+DIST ed-1.20.tar.lz 69366 BLAKE2B d212c6d5302627145332ec25b989ca2d4a064ce5c0ea45ad1ad6b780ffd72037ff2144b933c52667c52192d6f5acd5766b5c31d4a2b5cf5993813c43e1523af3 SHA512 90c0f24b1d0b7abd18d34345bc37de0e67a0bb96375a4531a742a89b53d4858c30781911c22d81aa0387d0cf4d2153e0b4286fd3483b05e4c35d5e02c0991c53
+DIST ed-1.20.tar.lz.sig 72 BLAKE2B 25673b17d6b97f21255d3c706928ea7eed6a06b2d39787f0a6791e809218cb6a610091ed9ed1147c8027855279ac65b948d4faaef4774ffd567f6ea172c0744f SHA512 d1360a08cc430301ba2baf8be112b08f48545815d3090ae7da8e448f3e13806eba286d9ec13cd00f3e289e6e82b861fa7dabd63b48c75bee1e0ab59b72dc239d
diff --git a/sys-apps/ed/ed-1.15-r1.ebuild b/sys-apps/ed/ed-1.15-r1.ebuild
deleted file mode 100644
index 14abe1230a48..000000000000
--- a/sys-apps/ed/ed-1.15-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-DESCRIPTION="Your basic line editor"
-HOMEPAGE="https://www.gnu.org/software/ed/"
-#SRC_URI="mirror://gnu/ed/${P}.tar.lz"
-# Using gzip instead -- the filesize diff is small and lzip uncommon #545344
-SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND="sys-apps/texinfo"
-RDEPEND=""
-
-src_configure() {
- # Upstream configure script is moronic.
- ./configure \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- --bindir="${EPREFIX}/bin" \
- --prefix="${EPREFIX}/usr"
-}
diff --git a/sys-apps/ed/ed-1.16.ebuild b/sys-apps/ed/ed-1.16.ebuild
deleted file mode 100644
index f25383ee8d41..000000000000
--- a/sys-apps/ed/ed-1.16.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-MY_P="${PN}-${PV/_/-}"
-
-DESCRIPTION="Your basic line editor"
-HOMEPAGE="https://www.gnu.org/software/ed/"
-#SRC_URI="mirror://gnu/ed/${P}.tar.lz"
-# Using gzip instead -- the filesize diff is small and lzip uncommon #545344
-SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${MY_P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-[[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND="sys-apps/texinfo"
-RDEPEND=""
-
-S="${WORKDIR}/${MY_P}"
-
-src_configure() {
- # Upstream configure script is moronic.
- ./configure \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- --bindir="${EPREFIX}/bin" \
- --prefix="${EPREFIX}/usr"
-}
diff --git a/sys-apps/ed/ed-1.19-r1.ebuild b/sys-apps/ed/ed-1.19-r1.ebuild
new file mode 100644
index 000000000000..41e9d8c20fa6
--- /dev/null
+++ b/sys-apps/ed/ed-1.19-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit edo toolchain-funcs unpacker verify-sig
+
+MY_P="${PN}-${PV/_/-}"
+
+DESCRIPTION="Your basic line editor"
+HOMEPAGE="https://www.gnu.org/software/ed/"
+SRC_URI="
+ mirror://gnu/ed/${MY_P}.tar.lz
+ https://download.savannah.gnu.org/releases/ed/${MY_P}.tar.lz
+ verify-sig? (
+ mirror://gnu/ed/${MY_P}.tar.lz.sig
+ https://download.savannah.gnu.org/releases/ed/${MY_P}.tar.lz.sig
+ )
+"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2+"
+SLOT="0"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+BDEPEND="
+ sys-apps/texinfo
+ $(unpacker_src_uri_depends)
+ verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )
+"
+
+src_unpack() {
+ use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.lz{,.sig}
+ unpacker "${DISTDIR}"/${MY_P}.tar.lz
+}
+
+src_configure() {
+ edo ./configure \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ --bindir="${EPREFIX}/bin" \
+ --prefix="${EPREFIX}/usr"
+}
diff --git a/sys-apps/ed/ed-1.20.1.ebuild b/sys-apps/ed/ed-1.20.1.ebuild
new file mode 100644
index 000000000000..06f722418844
--- /dev/null
+++ b/sys-apps/ed/ed-1.20.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit edo toolchain-funcs unpacker verify-sig
+
+MY_P="${PN}-${PV/_/-}"
+
+DESCRIPTION="Your basic line editor"
+HOMEPAGE="https://www.gnu.org/software/ed/"
+SRC_URI="
+ mirror://gnu/ed/${MY_P}.tar.lz
+ https://download.savannah.gnu.org/releases/ed/${MY_P}.tar.lz
+ verify-sig? (
+ mirror://gnu/ed/${MY_P}.tar.lz.sig
+ https://download.savannah.gnu.org/releases/ed/${MY_P}.tar.lz.sig
+ )
+"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2+"
+SLOT="0"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+BDEPEND="
+ sys-apps/texinfo
+ $(unpacker_src_uri_depends)
+ verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )
+"
+
+src_unpack() {
+ use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.lz{,.sig}
+ unpacker "${DISTDIR}"/${MY_P}.tar.lz
+}
+
+src_configure() {
+ edo ./configure \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ --bindir="${EPREFIX}/bin" \
+ --prefix="${EPREFIX}/usr"
+}
diff --git a/sys-apps/ed/ed-1.20.ebuild b/sys-apps/ed/ed-1.20.ebuild
new file mode 100644
index 000000000000..a6c6dacf9a4c
--- /dev/null
+++ b/sys-apps/ed/ed-1.20.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/antoniodiazdiaz.asc
+inherit edo toolchain-funcs unpacker verify-sig
+
+MY_P="${PN}-${PV/_/-}"
+
+DESCRIPTION="Your basic line editor"
+HOMEPAGE="https://www.gnu.org/software/ed/"
+SRC_URI="
+ mirror://gnu/ed/${MY_P}.tar.lz
+ https://download.savannah.gnu.org/releases/ed/${MY_P}.tar.lz
+ verify-sig? (
+ mirror://gnu/ed/${MY_P}.tar.lz.sig
+ https://download.savannah.gnu.org/releases/ed/${MY_P}.tar.lz.sig
+ )
+"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2+"
+SLOT="0"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+BDEPEND="
+ sys-apps/texinfo
+ $(unpacker_src_uri_depends)
+ verify-sig? ( sec-keys/openpgp-keys-antoniodiazdiaz )
+"
+
+src_unpack() {
+ use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.lz{,.sig}
+ unpacker "${DISTDIR}"/${MY_P}.tar.lz
+}
+
+src_configure() {
+ edo ./configure \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ --bindir="${EPREFIX}/bin" \
+ --prefix="${EPREFIX}/usr"
+}
diff --git a/sys-apps/ed/metadata.xml b/sys-apps/ed/metadata.xml
index 56c124413057..021ef4fa578f 100644
--- a/sys-apps/ed/metadata.xml
+++ b/sys-apps/ed/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="savannah">ed</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/edac-utils/edac-utils-0.18-r2.ebuild b/sys-apps/edac-utils/edac-utils-0.18-r2.ebuild
new file mode 100644
index 000000000000..a23ea1dcd4f7
--- /dev/null
+++ b/sys-apps/edac-utils/edac-utils-0.18-r2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools systemd
+
+DESCRIPTION="Userspace helper for Linux kernel EDAC drivers"
+HOMEPAGE="https://github.com/grondo/edac-utils"
+SRC_URI="https://github.com/grondo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="debug"
+
+DEPEND="sys-fs/sysfsutils"
+RDEPEND="${DEPEND}
+ sys-apps/dmidecode"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-mitac-hawk.patch
+)
+
+pkg_pretend() {
+ ewarn "edac-utils can't handle the interface newer kernels use to report"
+ ewarn "EDAC events, so it may miss some (or all) events which occur."
+ ewarn "See app-admin/rasdaemon's README for technical details."
+ ewarn "Consider using app-admin/rasdaemon instead."
+}
+
+src_prepare() {
+ default
+
+ # Needed to refresh libtool and friends to not call CC directly
+ # bug #725540
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-static \
+ $(use_enable debug)
+}
+
+src_install() {
+ default
+
+ # Dump the inappropriate-for-us bundled init script
+ rm -rf "${ED}/etc/init.d" || die
+
+ # Install our own
+ newinitd "${FILESDIR}"/edac.init edac
+ systemd_dounit "${FILESDIR}"/edac.service
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "There must be an entry for your mainboard in ${EROOT}/etc/edac/labels.db"
+ elog "in case you want nice labels in /sys/module/*_edac/"
+ elog "Run the following command to check whether such an entry is already available:"
+ elog " edac-ctl --print-labels"
+}
diff --git a/sys-apps/edac-utils/edac-utils-0.18.ebuild b/sys-apps/edac-utils/edac-utils-0.18.ebuild
deleted file mode 100644
index aff815880bb3..000000000000
--- a/sys-apps/edac-utils/edac-utils-0.18.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils ltprune
-
-DESCRIPTION="Userspace helper for Linux kernel EDAC drivers"
-HOMEPAGE="https://github.com/grondo/edac-utils"
-SRC_URI="https://github.com/grondo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE="debug"
-
-DEPEND="sys-fs/sysfsutils"
-RDEPEND="${DEPEND}
- sys-apps/dmidecode"
-
-src_prepare() {
- sed -i \
- -e 's|-Werror||' \
- configure || die
-}
-
-src_configure() {
- econf \
- --disable-static \
- $(use_enable debug)
-}
-
-src_install() {
- default
-
- # We don't need this init.d file
- # Modules should be loaded by adding them to /etc/conf.d/modules
- # The rest is done via the udev-rule
- rm -rf "${D}/etc/init.d"
-
- prune_libtool_files
-}
-
-pkg_postinst() {
- elog "There must be an entry for your mainboard in /etc/edac/labels.db"
- elog "in case you want nice labels in /sys/module/*_edac/"
- elog "Run the following command to check whether such an entry is already available:"
- elog " edac-ctl --print-labels"
-}
diff --git a/sys-apps/edac-utils/files/edac-utils-0.18-mitac-hawk.patch b/sys-apps/edac-utils/files/edac-utils-0.18-mitac-hawk.patch
new file mode 100644
index 000000000000..4472bad2ae43
--- /dev/null
+++ b/sys-apps/edac-utils/files/edac-utils-0.18-mitac-hawk.patch
@@ -0,0 +1,25 @@
+From 1c57818ecee186aa47af0342149577df5302c022 Mon Sep 17 00:00:00 2001
+From: Fabian Groffen <grobian@gentoo.org>
+Date: Sun, 30 Jan 2022 14:49:58 +0100
+Subject: [PATCH] etc/labels.db: add MiTAC HAWK layout
+
+This is for an Ampere eMag Hawk 32-core ARMv8 board, which features 8
+banks of DDR4 RDIMMs (1DPC).
+
+Signed-off-by: Fabian Groffen <grobian@gentoo.org>
+---
+ src/etc/labels.db | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/src/etc/labels.db b/src/etc/labels.db
+index f915666..63baf43 100644
+--- a/src/etc/labels.db
++++ b/src/etc/labels.db
+@@ -187,0 +187,7 @@ Vendor: Intel Corporation
++
++Vendor: MiTAC
++ Model: HAWK
++ DIMM 1: 0.0.0; DIMM 8: 0.7.0;
++ DIMM 2: 0.1.0; DIMM 7: 0.6.0;
++ DIMM 3: 0.2.0; DIMM 6: 0.5.0;
++ DIMM 4: 0.3.0; DIMM 5: 0.4.0;
diff --git a/sys-apps/edac-utils/files/edac.init b/sys-apps/edac-utils/files/edac.init
new file mode 100644
index 000000000000..23318b37e10c
--- /dev/null
+++ b/sys-apps/edac-utils/files/edac.init
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+command=/usr/bin/edac-ctl
+
+start() {
+ ebegin "Registering edac-utils labels"
+ /usr/sbin/edac-ctl --register-labels
+ eend $?
+}
+
+stop() {
+ ebegin "Unregistering edac-utils labels"
+ /usr/sbin/edac-ctl --unload
+ eend $?
+}
diff --git a/sys-apps/edac-utils/files/edac.service b/sys-apps/edac-utils/files/edac.service
new file mode 100644
index 000000000000..b94a4b6b5443
--- /dev/null
+++ b/sys-apps/edac-utils/files/edac.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Initialize EDAC Drivers For Machine Hardware
+
+[Service]
+Type=oneshot
+ExecStart=/usr/sbin/edac-ctl --register-labels
+ExecStop=/usr/sbin/edac-ctl --unload
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-apps/edac-utils/metadata.xml b/sys-apps/edac-utils/metadata.xml
index 0d757f0cc8d4..8dba29ac400f 100644
--- a/sys-apps/edac-utils/metadata.xml
+++ b/sys-apps/edac-utils/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="github">grondo/edac-utils</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">grondo/edac-utils</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/edid-decode/Manifest b/sys-apps/edid-decode/Manifest
index 167abfacca0d..4b05eb1d40f9 100644
--- a/sys-apps/edid-decode/Manifest
+++ b/sys-apps/edid-decode/Manifest
@@ -1 +1,2 @@
-DIST edid-decode-0_pre20200720.tar.gz 102525 BLAKE2B 57b296987ef890c9d4dd46d432730ffab5adfb758be4e1bcc7b6b5e34fc3fae42901da98c302c4a1742d39274b295b8b639012e4b848ed48ab0ee69cbc45b98a SHA512 4545c3a2263587eaf98cab0a3ec109659b50478b17e2ee51605ae53b1475761aee16f4c6e1549889016359cfce3de03cd907c3e801f12021e7459f25cebfdccb
+DIST edid-decode-0_pre20220319.tar.gz 135715 BLAKE2B 3ca70f7147463ec586d9b28e4e68327c5b2e8075dcf6f57f0be40288f87a4b498998654333321b3d3ca7e7d38926befc53094250b2953cd2b33b686f5cd878cc SHA512 5f3f285b898ae1a47abf06e787e097c8aebb558e3efbc6e80bdd4ed5505ea4f59f723d5a0a820bbc0c575d25f686f03aa33fe424e1b3a1b2c1be1ef13b6508c2
+DIST edid-decode-0_pre20230131.tar.gz 147392 BLAKE2B 8a08ca44bbdb61b0264a24b911b082d264eb1ef281d98a93dc12d62f5d233cc898cf1ad06647e680f8ab49b047721f31c80572582a2dd5dc8fec93ff70227b03 SHA512 53619eb79e456d4bf3566506019ad77a8f8dacb4211106cdf21164c26d0d026383bedd8a8ba2a7050d4d0657e1bbca51fb89978cfd066f1130f888a4537dd19b
diff --git a/sys-apps/edid-decode/edid-decode-0_pre20200720.ebuild b/sys-apps/edid-decode/edid-decode-0_pre20200720.ebuild
deleted file mode 100644
index 3685473eeacb..000000000000
--- a/sys-apps/edid-decode/edid-decode-0_pre20200720.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-EGIT_COMMIT="56dd103a0c20724ee956950f5bcb8cc1c8667af9"
-MY_P="${PN}-${EGIT_COMMIT}"
-
-DESCRIPTION="Decode EDID data in a human-readable format"
-HOMEPAGE="https://git.linuxtv.org/edid-decode.git/"
-SRC_URI="https://dev.gentoo.org/~conikost/files/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-KEYWORDS="amd64 x86"
-LICENSE="MIT"
-SLOT="0"
-IUSE="examples"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- tc-export CXX
- default
-}
-
-src_install() {
- emake DESTDIR="${ED}" install
- einstalldocs
-
- if use examples; then
- insinto /usr/share/edid-decode/examples
- doins data/*
- fi
-}
diff --git a/sys-apps/edid-decode/edid-decode-0_pre20220319.ebuild b/sys-apps/edid-decode/edid-decode-0_pre20220319.ebuild
new file mode 100644
index 000000000000..ed99cdb3764f
--- /dev/null
+++ b/sys-apps/edid-decode/edid-decode-0_pre20220319.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+EGIT_COMMIT="cb74358c289650322d91af60cb48a9d984509fd2"
+MY_P="${PN}-${EGIT_COMMIT}"
+
+DESCRIPTION="Decode EDID data in a human-readable format"
+HOMEPAGE="https://git.linuxtv.org/edid-decode.git/"
+SRC_URI="https://dev.gentoo.org/~conikost/files/${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+KEYWORDS="amd64 ~arm64 x86"
+LICENSE="MIT"
+SLOT="0"
+IUSE="examples"
+
+src_compile() {
+ tc-export CXX
+ default
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ einstalldocs
+
+ if use examples; then
+ insinto /usr/share/edid-decode/examples
+ doins data/*
+ fi
+}
diff --git a/sys-apps/edid-decode/edid-decode-0_pre20230131.ebuild b/sys-apps/edid-decode/edid-decode-0_pre20230131.ebuild
new file mode 100644
index 000000000000..ab504c4b4a5a
--- /dev/null
+++ b/sys-apps/edid-decode/edid-decode-0_pre20230131.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+EGIT_COMMIT="915b0ce5329f417d2c3f84ddab3d443dd0e01b61"
+MY_P="${PN}-${EGIT_COMMIT}"
+
+DESCRIPTION="Decode EDID data in a human-readable format"
+HOMEPAGE="https://git.linuxtv.org/edid-decode.git/"
+SRC_URI="https://dev.gentoo.org/~conikost/distfiles/${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+KEYWORDS="amd64 arm64 ~loong ppc64 ~riscv x86"
+LICENSE="MIT"
+SLOT="0"
+IUSE="examples"
+
+src_compile() {
+ tc-export CXX
+ default
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ einstalldocs
+
+ if use examples; then
+ insinto /usr/share/edid-decode/examples
+ doins data/*
+ fi
+}
diff --git a/sys-apps/edid-decode/edid-decode-9999.ebuild b/sys-apps/edid-decode/edid-decode-9999.ebuild
index 8e35fcbc1324..a46948f8178a 100644
--- a/sys-apps/edid-decode/edid-decode-9999.ebuild
+++ b/sys-apps/edid-decode/edid-decode-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit git-r3 toolchain-funcs
diff --git a/sys-apps/edid-decode/metadata.xml b/sys-apps/edid-decode/metadata.xml
index 207a2c8a4f1d..1507ce42a4af 100644
--- a/sys-apps/edid-decode/metadata.xml
+++ b/sys-apps/edid-decode/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/edid-fixdim/edid-fixdim-1.ebuild b/sys-apps/edid-fixdim/edid-fixdim-1.ebuild
index 67d4e3603638..097c16939fa5 100644
--- a/sys-apps/edid-fixdim/edid-fixdim-1.ebuild
+++ b/sys-apps/edid-fixdim/edid-fixdim-1.ebuild
@@ -1,19 +1,22 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_COMPAT=( python3_{6,7,8} )
inherit python-single-r1
DESCRIPTION="Tool to fix screen dimensions in EDID data dumps"
-HOMEPAGE="https://github.com/mgorny/edid-fixdim"
-SRC_URI="https://github.com/mgorny/edid-fixdim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/projg2/edid-fixdim/"
+SRC_URI="
+ https://github.com/projg2/edid-fixdim/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64"
-IUSE=""
REQUIRED_USE=${PYTHON_REQUIRED_USE}
RDEPEND="${PYTHON_DEPS}"
diff --git a/sys-apps/edid-fixdim/metadata.xml b/sys-apps/edid-fixdim/metadata.xml
index 0319eec4c8be..43357af94fcb 100644
--- a/sys-apps/edid-fixdim/metadata.xml
+++ b/sys-apps/edid-fixdim/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">projg2/edid-fixdim</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/eless/Manifest b/sys-apps/eless/Manifest
new file mode 100644
index 000000000000..25014df3769a
--- /dev/null
+++ b/sys-apps/eless/Manifest
@@ -0,0 +1 @@
+DIST eless-0.7.tar.gz 555328 BLAKE2B 1b3a30c5206ed6768f3c3b82e1ee061cb50da6ec10abbb6e02dd9a723995c39d41da742f51ff23445b4eb46e82f79a99634b9aa2c0eba62888be7ef0eacb38fb SHA512 452518dc4367222f19a59376cd31dcf8f8fa346a06158d147f5b223d8082d4d82695f6de61572161ca5dc1aafeffb520ccc44be233e2396def795ba08b0c0577
diff --git a/sys-apps/eless/eless-0.7.ebuild b/sys-apps/eless/eless-0.7.ebuild
new file mode 100644
index 000000000000..e5372f766685
--- /dev/null
+++ b/sys-apps/eless/eless-0.7.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Use Emacs as a paginator"
+HOMEPAGE="https://eless.scripter.co/ https://github.com/kaushalmodi/eless/"
+SRC_URI="https://github.com/kaushalmodi/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+RESTRICT="test" # Tests have to be run manually
+
+RDEPEND="
+ >=app-editors/emacs-25.3:*
+ app-shells/bash
+ dev-lang/perl
+"
+
+src_compile() {
+ : # Nothing to compile
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc ${PN}.org README.org
+ doinfo docs/${PN}.info
+}
diff --git a/sys-apps/eless/metadata.xml b/sys-apps/eless/metadata.xml
new file mode 100644
index 000000000000..f84decef9437
--- /dev/null
+++ b/sys-apps/eless/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnu-emacs@gentoo.org</email>
+ <name>Gentoo GNU Emacs project</name>
+ </maintainer>
+ <longdescription>
+ eless provides a combination of Bash script and a minimal Emacs view-mode.
+ Features: independent of a user’s Emacs config, customizable via the
+ (locate-user-emacs-file "elesscfg") config, not require an Emacs server to
+ be already running, syntax highlighting, Org-mode file rendering, man page
+ viewer, info viewer, dired, wdired, (batch edit symbolic links), colored
+ diffs, git diff, git log, ls with auto ANSI detection, filter log files
+ lines matching a regexp, auto-revert log files similar to tail -f, quickly
+ change frame and font sizes.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/kaushalmodi/eless/issues/</bugs-to>
+ <remote-id type="github">kaushalmodi/eless</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/elfix/elfix-0.9.5.ebuild b/sys-apps/elfix/elfix-0.9.5.ebuild
index 519175458f3f..0f1ed96f6f05 100644
--- a/sys-apps/elfix/elfix-0.9.5.ebuild
+++ b/sys-apps/elfix/elfix-0.9.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -8,7 +8,7 @@ if [[ ${PV} == *9999* ]] ; then
inherit autotools git-r3
else
SRC_URI="https://dev.gentoo.org/~blueness/elfix/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
fi
DESCRIPTION="A suite of tools to work with ELF objects on Hardened Gentoo"
@@ -17,14 +17,12 @@ HOMEPAGE="https://www.gentoo.org/proj/en/hardened/pax-quickstart.xml
LICENSE="GPL-3"
SLOT="0"
-IUSE="+ptpax +xtpax"
-
-DOCS=( AUTHORS ChangeLog INSTALL README THANKS TODO )
-
+IUSE="+ptpax test +xtpax"
REQUIRED_USE="|| ( ptpax xtpax )"
-
# These only work with a properly configured PaX kernel
-RESTRICT="test"
+RESTRICT="!test? ( test ) test"
+
+DOCS=( AUTHORS ChangeLog INSTALL README THANKS TODO )
DEPEND="~dev-python/pypax-${PV}[ptpax=,xtpax=]
ptpax? ( dev-libs/elfutils )
@@ -42,7 +40,8 @@ src_prepare() {
src_configure() {
rm -f "${S}/scripts/setup.py"
- econf --disable-tests \
+ econf \
+ $(use_enable test tests) \
$(use_enable ptpax) \
$(use_enable xtpax)
}
diff --git a/sys-apps/elfix/elfix-9999.ebuild b/sys-apps/elfix/elfix-9999.ebuild
index a7a57400096c..05b415e1f5d3 100644
--- a/sys-apps/elfix/elfix-9999.ebuild
+++ b/sys-apps/elfix/elfix-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -8,7 +8,7 @@ if [[ ${PV} == *9999* ]] ; then
inherit autotools git-r3
else
SRC_URI="https://dev.gentoo.org/~blueness/elfix/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
DESCRIPTION="A suite of tools to work with ELF objects on Hardened Gentoo"
@@ -17,14 +17,12 @@ HOMEPAGE="https://www.gentoo.org/proj/en/hardened/pax-quickstart.xml
LICENSE="GPL-3"
SLOT="0"
-IUSE="+ptpax +xtpax"
-
-DOCS=( AUTHORS ChangeLog INSTALL README THANKS TODO )
-
+IUSE="+ptpax test +xtpax"
REQUIRED_USE="|| ( ptpax xtpax )"
-
# These only work with a properly configured PaX kernel
-RESTRICT="test"
+RESTRICT="!test? ( test ) test"
+
+DOCS=( AUTHORS ChangeLog INSTALL README THANKS TODO )
DEPEND="~dev-python/pypax-${PV}[ptpax=,xtpax=]
ptpax? ( dev-libs/elfutils )
@@ -42,7 +40,8 @@ src_prepare() {
src_configure() {
rm -f "${S}/scripts/setup.py"
- econf --disable-tests \
+ econf \
+ $(use_enable test tests) \
$(use_enable ptpax) \
$(use_enable xtpax)
}
diff --git a/sys-apps/elfix/metadata.xml b/sys-apps/elfix/metadata.xml
index 66a241e9f76d..ce910eb81c8a 100644
--- a/sys-apps/elfix/metadata.xml
+++ b/sys-apps/elfix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>blueness@gentoo.org</email>
@@ -13,4 +13,8 @@
<flag name="xtpax">Enable XATTR_PAX_FLAGS support.</flag>
<flag name="ptpax">Enable PT_PAX_FLAGS support.</flag>
</use>
+ <upstream>
+ <remote-id type="gentoo">proj/elfix</remote-id>
+ <remote-id type="github">gentoo/elfix</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/epoch/Manifest b/sys-apps/epoch/Manifest
index 15c9f2cab1e3..442574622061 100644
--- a/sys-apps/epoch/Manifest
+++ b/sys-apps/epoch/Manifest
@@ -1,3 +1 @@
-DIST epoch-1.2.1.tar.gz 66718 BLAKE2B 1fc75001ead0f65df6a303ae4933995eb5607e4f8f2de21c2b74b95f7a8a5ca0be21bf6c509826d36c79795905a1f65c18a755b7944d0eceb0364abc1d58613a SHA512 2d0c767165ec41452d1dabf338c8ea31772f1a8cd1e1dbd60c8469f2f235bb1f0cb60b467189f1fd1079dfc223b0687c1cfe5e729e1142ebc63323b1f9c0cf93
-DIST epoch_1.2.2.tar.gz 229377 BLAKE2B 0f2c00df56a7d35dd224b8a1b22c78dae943c09eabb78c72cddc1085d5596cf6ef23b4d0c240191bb6b69e511a97f0bdb9f0cf99a4146097211867ae1beaf213 SHA512 9e3e38ef95c20237a3db4f47c9464f27e893a665f0692200d89e96b12f6b2e3af9b84d951356b7b354f19ea4fbe372e2e0ba406fdfeb8819914d46cfed3024a3
DIST epoch_1.3.0.tar.gz 70681 BLAKE2B 7ad2ab4c7f6c5544138aeb29a9b3a3f8889ade23b448abf1ec257fc7bbf811f4f6b01f0c9c81005aec56fe243d1f1e53a2daacdcdc4ff935bfcbd707fb8b2ab6 SHA512 1e4a8bee26d8819303cbeb67265ee74e294502acfb3f5e594222bb7bdcb2d077fe19e73c40e9111a6ef9af788d767434f5a9a357430b59d6a0cac0e36a3b8f9e
diff --git a/sys-apps/epoch/epoch-1.2.1.ebuild b/sys-apps/epoch/epoch-1.2.1.ebuild
deleted file mode 100644
index 16daffeeac89..000000000000
--- a/sys-apps/epoch/epoch-1.2.1.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils linux-info
-
-MY_PV="${PV/rc/RC}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="An init system, a /sbin/init replacement; designed for simplicity"
-HOMEPAGE="http://universe2.us/epoch.html"
-SRC_URI="https://github.com/Subsentient/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 arm x86"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
- local CONFIG_CHECK="~PROC_FS"
-
- [[ ${MERGE_TYPE} != buildonly ]] && check_extra_config
-}
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.0-fix-CFLAGS.patch
-}
-
-src_compile() {
- NEED_EMPTY_CFLAGS=1 sh ./buildepoch.sh || die "Cannot build epoch."
-}
-
-newepochins() {
- local type="$1"
-
- cd ${type} || die "Cannot change directory."
- for file in * ; do
- if [[ "${file}" != "epoch" ]] ; then
- new${type} ${file} epoch-${file}
- fi
- done
- cd .. || die "Cannot change directory."
-}
-
-src_install() {
- cd built || die "Cannot change directory."
-
- dosbin sbin/epoch
-
- # For now, rename to epoch-* until we can blend in with a standard approach.
- newepochins bin
- newepochins sbin
-
- insinto /etc/epoch/
- newins "${FILESDIR}"/${PN}-1.0-epoch.conf epoch.conf
-}
-
-pkg_postinst() {
- elog "Make sure to provide /run and /tmp tmpfs mounts using /etc/fstab."
- elog ""
- elog "An example epoch configuration is provided at /etc/epoch/epoch.conf"
- elog "which starts a minimal needed to use Gentoo."
- elog ""
- elog "To use epoch, add this kernel parameter: init=/usr/sbin/epoch-init"
- elog ""
- elog "Additional information about epoch is available at"
- elog "${HOMEPAGE} and configuration documentation at"
- elog "http://universe2.us/epochconfig.html which is useful reading material."
- elog ""
- elog "Its author Subsentient can be contacted at #epoch on irc.freenode.net."
-}
diff --git a/sys-apps/epoch/epoch-1.2.2.ebuild b/sys-apps/epoch/epoch-1.2.2.ebuild
deleted file mode 100644
index 4bb4a8d5db24..000000000000
--- a/sys-apps/epoch/epoch-1.2.2.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils linux-info
-
-MY_PV="${PV/rc/RC}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="An init system, a /sbin/init replacement; designed for simplicity"
-HOMEPAGE="http://universe2.us/epoch.html"
-SRC_URI="http://universe2.us/${PN}_${PV}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-S="${WORKDIR}/${PN}_${PV}"
-
-pkg_pretend() {
- local CONFIG_CHECK="~PROC_FS"
-
- [[ ${MERGE_TYPE} != buildonly ]] && check_extra_config
-}
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.0-fix-CFLAGS.patch
-}
-
-src_compile() {
- NEED_EMPTY_CFLAGS=1 sh ./buildepoch.sh || die "Cannot build epoch."
-}
-
-newepochins() {
- local type="$1"
-
- cd ${type} || die "Cannot change directory."
- for file in * ; do
- if [[ "${file}" != "epoch" ]] ; then
- new${type} ${file} epoch-${file}
- fi
- done
- cd .. || die "Cannot change directory."
-}
-
-src_install() {
- cd built || die "Cannot change directory."
-
- dosbin sbin/epoch
-
- # For now, rename to epoch-* until we can blend in with a standard approach.
- newepochins bin
- newepochins sbin
-
- insinto /etc/epoch/
- newins "${FILESDIR}"/${PN}-1.0-epoch.conf epoch.conf
-}
-
-pkg_postinst() {
- elog "Make sure to provide /run and /tmp tmpfs mounts using /etc/fstab."
- elog ""
- elog "An example epoch configuration is provided at /etc/epoch/epoch.conf"
- elog "which starts a minimal needed to use Gentoo."
- elog ""
- elog "To use epoch, add this kernel parameter: init=/usr/sbin/epoch-init"
- elog ""
- elog "Additional information about epoch is available at"
- elog "${HOMEPAGE} and configuration documentation at"
- elog "http://universe2.us/epochconfig.html which is useful reading material."
- elog ""
- elog "Its author Subsentient can be contacted at #epoch on irc.freenode.net."
-}
diff --git a/sys-apps/epoch/epoch-1.3.0.ebuild b/sys-apps/epoch/epoch-1.3.0.ebuild
index 9b6a3f67f14b..6e888e4e4b61 100644
--- a/sys-apps/epoch/epoch-1.3.0.ebuild
+++ b/sys-apps/epoch/epoch-1.3.0.ebuild
@@ -1,22 +1,18 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=8
-inherit eutils linux-info
+inherit linux-info
-MY_PV="${PV/rc/RC}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="An init system, a /sbin/init replacement; designed for simplicity"
-HOMEPAGE="http://universe2.us/epoch.html"
-SRC_URI="http://universe2.us/${PN}_${PV}.tar.gz"
+DESCRIPTION="Init system, /sbin/init replacement; designed for simplicity"
+HOMEPAGE="https://universe2.us/epoch.html"
+SRC_URI="https://universe2.us/${PN}_${PV}.tar.gz"
+S="${WORKDIR}/${PN}_${PV/rc/RC}"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-S="${WORKDIR}/${PN}_${PV}"
+KEYWORDS="amd64 arm x86"
pkg_pretend() {
local CONFIG_CHECK="~PROC_FS"
@@ -24,10 +20,10 @@ pkg_pretend() {
[[ ${MERGE_TYPE} != buildonly ]] && check_extra_config
}
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.0-fix-CFLAGS.patch
- epatch "${FILESDIR}"/${PN}-1.3.0-fix-main.patch
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0-fix-CFLAGS.patch
+ "${FILESDIR}"/${PN}-1.3.0-fix-main.patch
+)
src_compile() {
NEED_EMPTY_CFLAGS=1 sh ./buildepoch.sh || die "Cannot build epoch."
@@ -68,7 +64,7 @@ pkg_postinst() {
elog ""
elog "Additional information about epoch is available at"
elog "${HOMEPAGE} and configuration documentation at"
- elog "http://universe2.us/epochconfig.html which is useful reading material."
+ elog "https://universe2.us/epochconfig.html which is useful reading material."
elog ""
- elog "Its author Subsentient can be contacted at #epoch on irc.freenode.net."
+ elog "Its author Subsentient can be contacted at #epoch on irc.libera.chat."
}
diff --git a/sys-apps/epoch/epoch-9999.ebuild b/sys-apps/epoch/epoch-9999.ebuild
index f35febe3564b..8022520e994c 100644
--- a/sys-apps/epoch/epoch-9999.ebuild
+++ b/sys-apps/epoch/epoch-9999.ebuild
@@ -1,32 +1,28 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=8
-inherit eutils linux-info git-r3
+inherit linux-info git-r3
-MY_PV="${PV/rc/RC}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="An init system, a /sbin/init replacement; designed for simplicity"
-HOMEPAGE="http://universe2.us/epoch.html"
+DESCRIPTION="Init system, /sbin/init replacement; designed for simplicity"
+HOMEPAGE="https://universe2.us/epoch.html"
EGIT_REPO_URI="https://github.com/Subsentient/epoch.git"
+S="${WORKDIR}/${PN}-${PV/rc/RC}"
LICENSE="public-domain"
SLOT="0"
KEYWORDS=""
-S="${WORKDIR}/${MY_P}"
-
pkg_pretend() {
local CONFIG_CHECK="~PROC_FS"
[[ ${MERGE_TYPE} != buildonly ]] && check_extra_config
}
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.0-fix-CFLAGS.patch
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0-fix-CFLAGS.patch
+)
src_compile() {
NEED_EMPTY_CFLAGS=1 sh ./buildepoch.sh || die "Cannot build epoch."
@@ -67,7 +63,7 @@ pkg_postinst() {
elog ""
elog "Additional information about epoch is available at"
elog "${HOMEPAGE} and configuration documentation at"
- elog "http://universe2.us/epochconfig.html which is useful reading material."
+ elog "https://universe2.us/epochconfig.html which is useful reading material."
elog ""
- elog "Its author Subsentient can be contacted at #epoch on irc.freenode.net."
+ elog "Its author Subsentient can be contacted at #epoch on irc.libera.chat."
}
diff --git a/sys-apps/epoch/files/epoch-1.3.0-fix-main.patch b/sys-apps/epoch/files/epoch-1.3.0-fix-main.patch
index b158ae2e3396..f6df7680ac29 100644
--- a/sys-apps/epoch/files/epoch-1.3.0-fix-main.patch
+++ b/sys-apps/epoch/files/epoch-1.3.0-fix-main.patch
@@ -1,5 +1,5 @@
---- src/main.c.orig 2016-11-13 15:11:58.511021203 +0000
-+++ src/main.c 2016-11-13 15:12:21.096021358 +0000
+--- a/src/main.c
++++ b/src/main.c
@@ -1142,8 +1142,9 @@ static ReturnCode HandleEpochCommand(int
ShutdownMemBus(false); //We're done with membus now.
diff --git a/sys-apps/epoch/metadata.xml b/sys-apps/epoch/metadata.xml
index ea25ec8b9cbd..f42e2d69f13d 100644
--- a/sys-apps/epoch/metadata.xml
+++ b/sys-apps/epoch/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>alicef@gentoo.org</email>
- <name>Alice Ferrazzi</name>
- </maintainer>
+<!-- maintainer-needed -->
<longdescription>
Epoch is an init system (analogous to systemd or upstart)
for Linux by Subsentient. It is intended as a lightweight
diff --git a/sys-apps/etckeeper/Manifest b/sys-apps/etckeeper/Manifest
index e00ca069370b..394defd4f8b9 100644
--- a/sys-apps/etckeeper/Manifest
+++ b/sys-apps/etckeeper/Manifest
@@ -1 +1,3 @@
-DIST etckeeper-1.18.14.tar.gz 93528 BLAKE2B b36316b4a92ae7f885a1c0c0974fa69a3c1cee06ab9eb0bbee8c025f76b1dffcd19ac2f92fed49372873f54234ec1e8da023cab98097562d3eecd862ca4d98c7 SHA512 1bc01845d47ce3af1ef56474745843e8be6e005da90a21bed302fe73476fbf1f64b84fae7dac73139c394ca698bd146e1609fa34ebbc6737ba73a6f61e670948
+DIST etckeeper-1.18.18.tar.gz 101845 BLAKE2B 2072b54db4023211e85fcbed82bd93412eb02707d5447b297bf98e65f1d534e02e790612d9771ae433a07aa6a462dd9b5c5528207d2bcfd4059232417e3186e1 SHA512 57b2f7297c0b71e3d39a7838dd3e6599bb3f1275d86200be9d7986f46f0392aa0ba130cb38ba7a5757fcb5d6fa33b4d32233237dba15e8ce9fb8c52565cf251b
+DIST etckeeper-1.18.20.tar.gz 110787 BLAKE2B 8d69cd65a1cad7ff64eae95d70a3da70c60adfd2fa15ae34d45a394456ba362376a5fc93116841f25f907c71fb4df2af2e1d5ffe155e11c368f6862c53d39135 SHA512 b190da11ac589d6240c8293d961b75efe01e835091f9b5fba84c3c9062ffb4cb1dc52c9ea2bdf881f021c7d5584c4487d3c60121fdcb0a2a35e349c8321422c6
+DIST etckeeper-1.18.21.tar.gz 116961 BLAKE2B ad765ebc1e3b393a896b6491f21195a7c1081212f798b8586966adc72578c2bffe9adfb5a6004cba7ff87efb66f4318314dd3646e538d9bbe7a686250ea1f160 SHA512 c23bd0f24e04b565ceae77e552eb00926dae16f4a6c8c183c5a6bb404d5351ee7a040e01287b7c0d3d530bc8dea62cd2336b3151a349998aa9c145f1258ac2a0
diff --git a/sys-apps/etckeeper/etckeeper-1.18.14.ebuild b/sys-apps/etckeeper/etckeeper-1.18.14.ebuild
deleted file mode 100644
index 19e82426b9ea..000000000000
--- a/sys-apps/etckeeper/etckeeper-1.18.14.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 prefix systemd tmpfiles
-
-DESCRIPTION="A collection of tools to let /etc be stored in a repository"
-HOMEPAGE="https://etckeeper.branchable.com/"
-SRC_URI="https://git.joeyh.name/index.cgi/etckeeper.git/snapshot/${P}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="amd64 ~arm ppc64 x86"
-SLOT="0"
-IUSE="cron test"
-
-BDEPEND="test? (
- dev-util/bats
- dev-vcs/git
-)"
-
-RDEPEND="app-portage/portage-utils
- cron? ( virtual/cron )
- || (
- dev-vcs/git
- dev-vcs/mercurial
- dev-vcs/darcs
- )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=( "${FILESDIR}"/${PN}-1.18.14-gentoo.patch )
-
-src_prepare() {
- default
- hprefixify *.d/* etckeeper
- sed -i \
- -e s'@zsh/vendor-completions@zsh/site-functions@' \
- -e s"@/lib/systemd/system@"$(systemd_get_systemunitdir)"@" \
- Makefile || die
- rm -v init.d/60darcs-deleted-symlinks || die
-}
-
-src_compile() {
- :
-}
-
-src_install() {
- emake DESTDIR="${ED}" install
-
- doenvd "$(prefixify_ro "${FILESDIR}"/99${PN})"
-
- newbashcomp bash_completion ${PN}
- dodoc doc/README.mdwn
- newdoc "${FILESDIR}"/bashrc-r1 bashrc.example
-
- rm -rv "${ED}/var/cache" || die
- newtmpfiles "${FILESDIR}/${PN}".tmpfilesd "${PN}".conf
-
- if use cron ; then
- exeinto /etc/cron.daily
- newexe debian/cron.daily etckeeper
- fi
-}
-
-pkg_postinst() {
- tmpfiles_process "${PN}.conf"
-
- elog "${PN} supports git, mercurial and darcs"
- elog "This ebuild just ensures at least one is installed!"
- elog
- elog "You may want to adjust your /etc/portage/bashrc"
- elog "see the example file in /usr/share/doc/${PF}"
- elog
- elog "To initialise your etc-dir as a repository run:"
- elog "${PN} init -d /etc"
-}
diff --git a/sys-apps/etckeeper/etckeeper-1.18.18.ebuild b/sys-apps/etckeeper/etckeeper-1.18.18.ebuild
new file mode 100644
index 000000000000..3bc3ee63044b
--- /dev/null
+++ b/sys-apps/etckeeper/etckeeper-1.18.18.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 prefix systemd tmpfiles
+
+DESCRIPTION="A collection of tools to let /etc be stored in a repository"
+HOMEPAGE="https://etckeeper.branchable.com/"
+SRC_URI="https://git.joeyh.name/index.cgi/etckeeper.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="amd64 arm arm64 hppa ~ppc ppc64 ~riscv ~sparc x86"
+SLOT="0"
+IUSE="cron test"
+
+BDEPEND="test? (
+ dev-util/bats
+ dev-vcs/git
+)"
+
+RDEPEND="app-portage/portage-utils
+ cron? ( virtual/cron )
+ || (
+ dev-vcs/git
+ dev-vcs/mercurial
+ dev-vcs/darcs
+ )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ # TODO: submit upstream
+ "${FILESDIR}"/${PN}-1.18.18-gentoo.patch
+)
+
+src_prepare() {
+ default
+ hprefixify *.d/* etckeeper
+ local systemdunitdir="$(systemd_get_systemunitdir)"
+ systemdunitdir="${systemdunitdir#${EPREFIX}}"
+ sed -i \
+ -e s'@zsh/vendor-completions@zsh/site-functions@' \
+ -e s"@/lib/systemd/system@"${systemdunitdir}"@" \
+ Makefile || die
+ rm -v init.d/60darcs-deleted-symlinks || die
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ doenvd "$(prefixify_ro "${FILESDIR}"/99${PN})"
+
+ newbashcomp bash_completion ${PN}
+ dodoc doc/README.mdwn
+ newdoc "${FILESDIR}"/bashrc-r1 bashrc.example
+
+ rm -rv "${ED}/var/cache" || die
+ newtmpfiles "${FILESDIR}/${PN}".tmpfilesd "${PN}".conf
+
+ if use cron ; then
+ exeinto /etc/cron.daily
+ newexe - etckeeper <<'_EOF_'
+#!/bin/sh
+set -e
+if [ -e /etc/etckeeper/daily ] && [ -e /etc/etckeeper/etckeeper.conf ]; then
+ . /etc/etckeeper/etckeeper.conf
+ if [ "$AVOID_DAILY_AUTOCOMMITS" != "1" ]; then
+ /etc/etckeeper/daily
+ fi
+fi
+_EOF_
+ fi
+
+ local conf_update_dir="/etc/portage/conf-update.d"
+ insinto "${conf_update_dir}"
+ newins "${FILESDIR}/${PN}-conf-update-hook" "${PN}"
+ fperms 755 "${conf_update_dir}/${PN}"
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ elog "${PN} supports git, mercurial and darcs"
+ elog "This ebuild just ensures at least one is installed!"
+ elog
+ elog "You may want to adjust your /etc/portage/bashrc"
+ elog "see the example file in /usr/share/doc/${PF}"
+ elog
+ elog "To initialise your etc-dir as a repository run:"
+ elog "${PN} init -d /etc"
+}
diff --git a/sys-apps/etckeeper/etckeeper-1.18.20.ebuild b/sys-apps/etckeeper/etckeeper-1.18.20.ebuild
new file mode 100644
index 000000000000..8b7fc8ff184a
--- /dev/null
+++ b/sys-apps/etckeeper/etckeeper-1.18.20.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 prefix systemd tmpfiles
+
+DESCRIPTION="A collection of tools to let /etc be stored in a repository"
+HOMEPAGE="https://etckeeper.branchable.com/"
+SRC_URI="https://git.joeyh.name/index.cgi/etckeeper.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="amd64 arm arm64 hppa ~ppc ppc64 ~riscv ~sparc x86"
+SLOT="0"
+IUSE="cron test"
+
+BDEPEND="test? (
+ dev-util/bats
+ dev-vcs/git
+)"
+
+RDEPEND="app-portage/portage-utils
+ cron? ( virtual/cron )
+ || (
+ dev-vcs/git
+ dev-vcs/mercurial
+ dev-vcs/darcs
+ )
+"
+
+RESTRICT="!test? ( test )"
+
+src_prepare() {
+ default
+ hprefixify *.d/* etckeeper
+ local systemdunitdir="$(systemd_get_systemunitdir)"
+ systemdunitdir="${systemdunitdir#${EPREFIX}}"
+ sed -i \
+ -e s'@zsh/vendor-completions@zsh/site-functions@' \
+ -e s"@/lib/systemd/system@"${systemdunitdir}"@" \
+ -e '/etckeeper-bzr\/__init__\.py/d' \
+ Makefile || die
+
+ # pre-configure for portage.
+ sed -i \
+ -e 's/^HIGHLEVEL_PACKAGE_MANAGER=apt/HIGHLEVEL_PACKAGE_MANAGER=emerge/' \
+ -e 's/^LOWLEVEL_PACKAGE_MANAGER=dpkg/LOWLEVEL_PACKAGE_MANAGER=qlist/' \
+ etckeeper.conf || die
+
+ rm -v init.d/60darcs-deleted-symlinks || die
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ doenvd "$(prefixify_ro "${FILESDIR}"/99${PN})"
+
+ newbashcomp bash_completion ${PN}
+ dodoc doc/README.mdwn
+ newdoc "${FILESDIR}"/bashrc-r1 bashrc.example
+
+ rm -rv "${ED}/var/cache" || die
+ newtmpfiles "${FILESDIR}/${PN}".tmpfilesd "${PN}".conf
+
+ if use cron ; then
+ exeinto /etc/cron.daily
+ newexe - etckeeper <<'_EOF_'
+#!/bin/sh
+set -e
+if [ -e /etc/etckeeper/daily ] && [ -e /etc/etckeeper/etckeeper.conf ]; then
+ . /etc/etckeeper/etckeeper.conf
+ if [ "$AVOID_DAILY_AUTOCOMMITS" != "1" ]; then
+ /etc/etckeeper/daily
+ fi
+fi
+_EOF_
+ fi
+
+ local conf_update_dir="/etc/portage/conf-update.d"
+ insinto "${conf_update_dir}"
+ newins "${FILESDIR}/${PN}-conf-update-hook" "${PN}"
+ fperms 755 "${conf_update_dir}/${PN}"
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ elog "${PN} supports git, mercurial and darcs"
+ elog "This ebuild just ensures at least one is installed!"
+ elog
+ elog "You may want to adjust your /etc/portage/bashrc"
+ elog "see the example file in /usr/share/doc/${PF}"
+ elog
+ elog "To initialise your etc-dir as a repository run:"
+ elog "${PN} init -d /etc"
+}
diff --git a/sys-apps/etckeeper/etckeeper-1.18.21.ebuild b/sys-apps/etckeeper/etckeeper-1.18.21.ebuild
new file mode 100644
index 000000000000..d55624b11c95
--- /dev/null
+++ b/sys-apps/etckeeper/etckeeper-1.18.21.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 prefix systemd tmpfiles
+
+DESCRIPTION="A collection of tools to let /etc be stored in a repository"
+HOMEPAGE="https://etckeeper.branchable.com/"
+SRC_URI="https://git.joeyh.name/index.cgi/etckeeper.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="0"
+IUSE="cron test"
+
+BDEPEND="test? (
+ dev-util/bats
+ dev-vcs/git
+)"
+
+RDEPEND="app-portage/portage-utils
+ cron? ( virtual/cron )
+ || (
+ dev-vcs/git
+ dev-vcs/mercurial
+ dev-vcs/darcs
+ )
+"
+
+RESTRICT="!test? ( test )"
+
+src_prepare() {
+ default
+ hprefixify *.d/* etckeeper
+ local systemdunitdir="$(systemd_get_systemunitdir)"
+ systemdunitdir="${systemdunitdir#${EPREFIX}}"
+ sed -i \
+ -e s'@zsh/vendor-completions@zsh/site-functions@' \
+ -e s"@/lib/systemd/system@"${systemdunitdir}"@" \
+ -e '/etckeeper-bzr\/__init__\.py/d' \
+ Makefile || die
+
+ # pre-configure for portage.
+ sed -i \
+ -e 's/^HIGHLEVEL_PACKAGE_MANAGER=apt/HIGHLEVEL_PACKAGE_MANAGER=emerge/' \
+ -e 's/^LOWLEVEL_PACKAGE_MANAGER=dpkg/LOWLEVEL_PACKAGE_MANAGER=qlist/' \
+ etckeeper.conf || die
+
+ rm -v init.d/60darcs-deleted-symlinks || die
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ doenvd "$(prefixify_ro "${FILESDIR}"/99${PN})"
+
+ newbashcomp bash_completion ${PN}
+ dodoc doc/README.mdwn
+ newdoc "${FILESDIR}"/bashrc-r1 bashrc.example
+
+ rm -rv "${ED}/var/cache" || die
+ newtmpfiles "${FILESDIR}/${PN}".tmpfilesd "${PN}".conf
+
+ if use cron ; then
+ exeinto /etc/cron.daily
+ newexe - etckeeper <<'_EOF_'
+#!/bin/sh
+set -e
+if [ -e /etc/etckeeper/daily ] && [ -e /etc/etckeeper/etckeeper.conf ]; then
+ . /etc/etckeeper/etckeeper.conf
+ if [ "$AVOID_DAILY_AUTOCOMMITS" != "1" ]; then
+ /etc/etckeeper/daily
+ fi
+fi
+_EOF_
+ fi
+
+ local conf_update_dir="/etc/portage/conf-update.d"
+ insinto "${conf_update_dir}"
+ newins "${FILESDIR}/${PN}-conf-update-hook" "${PN}"
+ fperms 755 "${conf_update_dir}/${PN}"
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ elog "${PN} supports git, mercurial and darcs"
+ elog "This ebuild just ensures at least one is installed!"
+ elog
+ elog "You may want to adjust your /etc/portage/bashrc"
+ elog "see the example file in /usr/share/doc/${PF}"
+ elog
+ elog "To initialise your etc-dir as a repository run:"
+ elog "${PN} init -d /etc"
+}
diff --git a/sys-apps/etckeeper/files/etckeeper-1.18.14-gentoo.patch b/sys-apps/etckeeper/files/etckeeper-1.18.14-gentoo.patch
deleted file mode 100644
index e677af993fe7..000000000000
--- a/sys-apps/etckeeper/files/etckeeper-1.18.14-gentoo.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 46e299da6914962007fb540a401a68a17d00bca3 Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Sun, 26 Jan 2020 23:24:54 -0800
-Subject: [PATCH] 1.18.14-gentoo
-
----
- Makefile | 1 -
- etckeeper.conf | 14 ++++++++++++--
- list-installed.d/50list-installed | 4 ++++
- update-ignore.d/01update-ignore | 4 ++++
- 4 files changed, 20 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 73d2411..ffcf218 100644
---- a/Makefile
-+++ b/Makefile
-@@ -68,7 +68,6 @@ ifeq ($(HIGHLEVEL_PACKAGE_MANAGER),zypper)
- mkdir -p $(DESTDIR)$(prefix)/lib/zypp/plugins/commit
- $(INSTALL) zypper-etckeeper.py $(DESTDIR)$(prefix)/lib/zypp/plugins/commit/zypper-etckeeper.py
- endif
-- -$(PYTHON) ./etckeeper-bzr/__init__.py install --root=$(DESTDIR) ${PYTHON_INSTALL_OPTS} || echo "** bzr support not installed"
- echo "** installation successful"
-
- clean: etckeeper.spec etckeeper.version
-diff --git a/etckeeper.conf b/etckeeper.conf
-index f13de1c..16ff71d 100644
---- a/etckeeper.conf
-+++ b/etckeeper.conf
-@@ -33,11 +33,21 @@ DARCS_COMMIT_OPTIONS="-a"
-
- # The high-level package manager that's being used.
- # (apt, pacman, pacman-g2, yum, dnf, zypper, apk etc)
--HIGHLEVEL_PACKAGE_MANAGER=apt
-+#HIGHLEVEL_PACKAGE_MANAGER=apt
-+
-+# Gentoo specific:
-+# For portage this is emerge
-+# For paludis this is cave
-+HIGHLEVEL_PACKAGE_MANAGER=emerge
-
- # The low-level package manager that's being used.
- # (dpkg, rpm, pacman, pacmatic, pacman-g2, apk etc)
--LOWLEVEL_PACKAGE_MANAGER=dpkg
-+#LOWLEVEL_PACKAGE_MANAGER=dpkg
-+
-+# Gentoo specific:
-+# For portage this is qlist
-+# For paludis this is cave
-+LOWLEVEL_PACKAGE_MANAGER=qlist
-
- # To push each commit to a remote, put the name of the remote here.
- # (eg, "origin" for git). Space-separated lists of multiple remotes
-diff --git a/list-installed.d/50list-installed b/list-installed.d/50list-installed
-index d89b8ce..2db838d 100755
---- a/list-installed.d/50list-installed
-+++ b/list-installed.d/50list-installed
-@@ -23,5 +23,9 @@ else
- pkg info -E "*"
- elif [ "$LOWLEVEL_PACKAGE_MANAGER" = apk ]; then
- apk info -v | sort
-+ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = qlist ]; then
-+ qlist -ICv
-+ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = cave ]; then
-+ cave print-packages -r installed
- fi
- fi
-diff --git a/update-ignore.d/01update-ignore b/update-ignore.d/01update-ignore
-index 8733a85..53afbde 100755
---- a/update-ignore.d/01update-ignore
-+++ b/update-ignore.d/01update-ignore
-@@ -103,6 +103,10 @@ writefile () {
- comment "new versions of conffiles, stored by apk"
- ignore "*.apk-new"
- nl
-+ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = "qlist" -o "$LOWLEVEL_PACKAGE_MANAGER" = "cave" ]; then
-+ comment "new and old versions of conffiles, stored by emerge"
-+ ignore "._cfg*"
-+ nl
- fi
-
- comment "old versions of files"
---
-2.25.0
-
diff --git a/sys-apps/etckeeper/files/etckeeper-1.18.18-gentoo.patch b/sys-apps/etckeeper/files/etckeeper-1.18.18-gentoo.patch
new file mode 100644
index 000000000000..298671c90004
--- /dev/null
+++ b/sys-apps/etckeeper/files/etckeeper-1.18.18-gentoo.patch
@@ -0,0 +1,70 @@
+From 5ac7b1861a7e23935bc09cacfa6675d8a086877e Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Sun, 26 Jan 2020 23:24:54 -0800
+Subject: [PATCH] 1.18.18-gentoo
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/Makefile
++++ b/Makefile
+@@ -68,7 +68,6 @@ ifeq ($(HIGHLEVEL_PACKAGE_MANAGER),zypper)
+ mkdir -p $(DESTDIR)$(prefix)/lib/zypp/plugins/commit
+ $(INSTALL) zypper-etckeeper.py $(DESTDIR)$(prefix)/lib/zypp/plugins/commit/zypper-etckeeper.py
+ endif
+- -$(PYTHON) ./etckeeper-bzr/__init__.py install --root=$(DESTDIR) ${PYTHON_INSTALL_OPTS} || echo "** bzr support not installed"
+ echo "** installation successful"
+
+ clean: etckeeper.spec etckeeper.version
+--- a/etckeeper.conf
++++ b/etckeeper.conf
+@@ -33,11 +33,21 @@ DARCS_COMMIT_OPTIONS="-a"
+
+ # The high-level package manager that's being used.
+ # (apt, pacman, pacman-g2, yum, dnf, zypper, apk, xbps etc)
+-HIGHLEVEL_PACKAGE_MANAGER=apt
++#HIGHLEVEL_PACKAGE_MANAGER=apt
++
++# Gentoo specific:
++# For portage this is emerge
++# For paludis this is cave
++HIGHLEVEL_PACKAGE_MANAGER=emerge
+
+ # The low-level package manager that's being used.
+ # (dpkg, rpm, pacman, pacmatic, pacman-g2, apk, xbps etc)
+-LOWLEVEL_PACKAGE_MANAGER=dpkg
++#LOWLEVEL_PACKAGE_MANAGER=dpkg
++
++# Gentoo specific:
++# For portage this is qlist
++# For paludis this is cave
++LOWLEVEL_PACKAGE_MANAGER=qlist
+
+ # To push each commit to a remote, put the name of the remote here.
+ # (eg, "origin" for git). Space-separated lists of multiple remotes
+--- a/list-installed.d/50list-installed
++++ b/list-installed.d/50list-installed
+@@ -30,5 +30,9 @@ else
+ apk info -v | sort
+ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = xbps ]; then
+ xbps-query -l | awk '{print $2}' | sed -r 's/-([^-]+)$/ \1/g;'
++ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = qlist ]; then
++ qlist -ICv
++ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = cave ]; then
++ cave print-packages -r installed
+ fi
+ fi
+--- a/update-ignore.d/01update-ignore
++++ b/update-ignore.d/01update-ignore
+@@ -107,8 +107,12 @@ writefile () {
+ comment "new versions of conffiles, stored by xbps"
+ ignore "*.new-*_[0-9]*"
+ nl
++ elif [ "$LOWLEVEL_PACKAGE_MANAGER" = "qlist" -o "$LOWLEVEL_PACKAGE_MANAGER" = "cave" ]; then
++ comment "new and old versions of conffiles, stored by emerge"
++ ignore "._cfg*"
++ nl
+ fi
+-
++
+ comment "old versions of files"
+ ignore "*.old"
+ # Not currently ignored as admins tend to rely on these files.
diff --git a/sys-apps/etckeeper/files/etckeeper-conf-update-hook b/sys-apps/etckeeper/files/etckeeper-conf-update-hook
new file mode 100644
index 000000000000..d0546c8776d3
--- /dev/null
+++ b/sys-apps/etckeeper/files/etckeeper-conf-update-hook
@@ -0,0 +1,32 @@
+#!/usr/bin/env bash
+set -eu
+
+# etckeeper hook for portage's conf-update hooks (e.g. invoked by
+# dispatch-conf). Requires portage > 3.0.22.
+
+# Do nothing if etckeeper is not initialized.
+if [[ ! -f "/etc/etckeeper/etckeeper.conf" ]]; then
+ exit
+fi
+
+echo "conf-update.d ${@}"
+
+case "${1}" in
+ pre-session)
+ echo "Commiting uncommited changes before starting a configuration update session"
+ etckeeper pre-install
+ ;;
+ post-session)
+ echo "Commiting uncommited changes before after finishing a configuration update session"
+ etckeeper post-install
+ ;;
+ post-update)
+ ACTION=${1}
+ FILE_PATH=${2}
+ FILE=$(basename "${FILE_PATH}")
+
+ echo "Commiting changes for ${FILE}"
+ etckeeper vcs add "${FILE_PATH}"
+ etckeeper vcs commit -m "${FILE}: ${ACTION} (conf-update.d hook)"
+ ;;
+esac
diff --git a/sys-apps/etckeeper/metadata.xml b/sys-apps/etckeeper/metadata.xml
index affe25c2e34c..838d76fac7fd 100644
--- a/sys-apps/etckeeper/metadata.xml
+++ b/sys-apps/etckeeper/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
- </maintainer>
+ <!-- maintainer-needed -->
<use>
<flag name="cron">Install cron script</flag>
</use>
diff --git a/sys-apps/ethq/Manifest b/sys-apps/ethq/Manifest
index 424470715491..3c03cf67dacc 100644
--- a/sys-apps/ethq/Manifest
+++ b/sys-apps/ethq/Manifest
@@ -1,2 +1 @@
-DIST ethq-0_5_0.tar.gz 15830 BLAKE2B b18326f1564d08f94500aa934838053a3b84b78f3d6fa90984c3730ac8922fbe3fd5141d5e9ff4a2c8db54bb8d2c2e493f5583f46b287324d4327583f29b8bf5 SHA512 989978e0dfbb553497f5325807f2d09e4e2842de9df5f5717e832312141adba3e99ef1d57dde4ac0fdd2919c9f5a0eadef5b5f76a300ab4ac7e881c8509fbbec
DIST ethq-0_6_1.tar.gz 23475 BLAKE2B 04d933294ba432ed69108022b0a2b13c47537902f66c6969bbd5afca144a977a6215a2164cbefd975d0f599bd8503feca79ef9e38856d8c9e6943c2cd2c3f99f SHA512 72c38ecb0cb6c7d6f522d99f2a6ec08bd2c42065d5f83d86890706a52420006fcdb5774a1457a66ccd5e174113e09c2a4285d311af334616a01c32ad8753126d
diff --git a/sys-apps/ethq/ethq-0.5.0.ebuild b/sys-apps/ethq/ethq-0.5.0.ebuild
deleted file mode 100644
index 937e95dba856..000000000000
--- a/sys-apps/ethq/ethq-0.5.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=${PV//./_}
-MY_P=${PN}-${MY_PV}
-
-inherit toolchain-funcs
-
-DESCRIPTION="Ethernet NIC Queue stats viewer"
-HOMEPAGE="https://github.com/isc-projects/ethq"
-SRC_URI="https://github.com/isc-projects/ethq/archive/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="MPL-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="sys-libs/ncurses:0"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
-
- # Respect FLAGS
- sed -i \
- -e '/CXXFLAGS/s/= -O3/+=/' \
- -e 's/ -Werror//' \
- -e '/LDFLAGS/s/=/+=/' Makefile || die "sed failed for Makefile"
-
- if ! use test ; then
- sed -i '/TARGETS/s/ethq_test//' Makefile \
- || die "sed failed for USE flag test"
- fi
-}
-
-src_compile() {
- # override for ncurses[tinfo]
- emake CXX="$(tc-getCXX)" LIBS_CURSES="$($(tc-getPKG_CONFIG) --libs ncurses)"
-}
-
-src_test() {
- local driver
- for driver in tests/* ; do
- "${S}"/ethq_test "${driver##*/}" "${driver}" \
- || die "test failed on ${driver}"
- done
-}
-
-src_install() {
- einstalldocs
- dobin ethq
-}
diff --git a/sys-apps/ethq/ethq-0.6.1.ebuild b/sys-apps/ethq/ethq-0.6.1.ebuild
index b5718cb8f726..9165d5a82da5 100644
--- a/sys-apps/ethq/ethq-0.6.1.ebuild
+++ b/sys-apps/ethq/ethq-0.6.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
MY_PV=${PV//./_}
MY_P=${PN}-${MY_PV}
-inherit toolchain-funcs
+inherit flag-o-matic toolchain-funcs
DESCRIPTION="Ethernet NIC Queue stats viewer"
HOMEPAGE="https://github.com/isc-projects/ethq"
@@ -18,7 +18,7 @@ KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
-DEPEND="sys-libs/ncurses:0"
+DEPEND="sys-libs/ncurses:="
RDEPEND="${DEPEND}"
S="${WORKDIR}/${MY_P}"
@@ -26,8 +26,9 @@ S="${WORKDIR}/${MY_P}"
src_prepare() {
default
- # Respect FLAGS
- sed -i -e '/CXXFLAGS/s/= -O3/+=/' \
+ # Respect FLAGS, remove Werror
+ sed -i -e '/CXXFLAGS/s/= -O3/+=/' \
+ -e '/CXXFLAGS/s/ -Werror//' \
-e '/LDFLAGS/s/=/+=/' Makefile || die "sed failed for Makefile"
if ! use test ; then
@@ -36,6 +37,13 @@ src_prepare() {
fi
}
+src_configure() {
+ # https://github.com/isc-projects/ethq/issues/30 (bug #879893)
+ filter-lto
+
+ default
+}
+
src_compile() {
# override for ncurses[tinfo]
emake CXX="$(tc-getCXX)" LIBS_CURSES="$($(tc-getPKG_CONFIG) --libs ncurses)"
diff --git a/sys-apps/ethq/ethq-9999.ebuild b/sys-apps/ethq/ethq-9999.ebuild
index 59fa6fa3cdc7..da954c3b0cc6 100644
--- a/sys-apps/ethq/ethq-9999.ebuild
+++ b/sys-apps/ethq/ethq-9999.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EGIT_REPO_URI="https://github.com/isc-projects/${PN}.git"
-inherit git-r3 toolchain-funcs
+inherit git-r3 flag-o-matic toolchain-funcs
DESCRIPTION="Ethernet NIC Queue stats viewer"
HOMEPAGE="https://github.com/isc-projects/ethq"
@@ -17,16 +17,16 @@ KEYWORDS=""
IUSE="test"
RESTRICT="!test? ( test )"
-DEPEND="sys-libs/ncurses:0"
+DEPEND="sys-libs/ncurses:="
RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
default
- # Respect FLAGS
- sed -i \
- -e '/CXXFLAGS/s/= -O3/+=/' \
- -e 's/ -Werror//' \
+ # Respect FLAGS, remove Werror
+ sed -i -e '/CXXFLAGS/s/= -O3/+=/' \
+ -e '/CXXFLAGS/s/ -Werror//' \
-e '/LDFLAGS/s/=/+=/' Makefile || die "sed failed for Makefile"
if ! use test ; then
@@ -35,6 +35,13 @@ src_prepare() {
fi
}
+src_configure() {
+ # https://github.com/isc-projects/ethq/issues/30 (bug #879893)
+ filter-lto
+
+ default
+}
+
src_compile() {
# override for ncurses[tinfo]
emake CXX="$(tc-getCXX)" LIBS_CURSES="$($(tc-getPKG_CONFIG) --libs ncurses)"
diff --git a/sys-apps/ethq/metadata.xml b/sys-apps/ethq/metadata.xml
index 61adaf0931ba..e069d81d9754 100644
--- a/sys-apps/ethq/metadata.xml
+++ b/sys-apps/ethq/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>spiderx@spiderx.dp.ua</email>
<name>Vladimir Pavljuchenkov</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/ethtool/Manifest b/sys-apps/ethtool/Manifest
index f268e5eb4d6b..8976897d9e11 100644
--- a/sys-apps/ethtool/Manifest
+++ b/sys-apps/ethtool/Manifest
@@ -1,3 +1,2 @@
-DIST ethtool-5.4.tar.xz 239288 BLAKE2B 8c8b2bee53fe3e71510684ca7c6f64153cb6f1c5ebe44cd4d1dc351885d2d9957eb206a96bda9efadb5faa0e15a3f0ba07923d7e29b27694e3e3f605151a940d SHA512 c7bfe7eae2ba207d710716274e9f5ae275c57d0bebc0a9acb95677125e64f1b42ef610032011fb59894aab46973988bad40fddbc5ccc238893e7da66f913255b
-DIST ethtool-5.8.tar.xz 299416 BLAKE2B ea7433205eba831b6ba56e140c73cfe283cc5dc56ced963414a017b0d6b6fbde9d0195ff64ebdc060351e5e9844af8beb8f00f7e04d76b04f958b166cda7e589 SHA512 5eada909f82573ad93bc5476e6f8d50f68ce2c9948558877eb6ace8dc17aee895b2f27343592f5f23eaef0e0fc70b5f776f76e75d9614bab305a2819ca82370e
-DIST ethtool-5.9.tar.xz 307792 BLAKE2B 0cb5b56f6367bba18c92b1d420471be0b203e05d36fec1495f18de7a2e793fb12cd57b3f2f79369327be1b76a9ec749a65b91801c90da79de9d23da62e628fcb SHA512 9166a06b823373188e754b3085cf8e8f71455d83d1bcfcaf1350433b21bdbc6ae851f62108d3d2e3bbbca33ca595382cd2c68966ce4824b55f7f59eb0996bf36
+DIST ethtool-6.6.tar.xz 352476 BLAKE2B dfbc5f9a6ac63210d1ae305c2458cc44d38d44fcc272c9b0397a13a93e0aa0a09e3750e330a27dcf4dce796c6bd302c4d4c1fd91faab824a81949c31f1ed3504 SHA512 1e7eae3abe59e6af4bce0ebedd0a7ea84d1b0adc7693a0f03021c4096677096a022fdae521ac02413f9db46ee232b89dd2015a116845aa6ca7686fdda50a5b21
+DIST ethtool-6.7.tar.xz 352772 BLAKE2B 94a6fd8d29ff479eb894fe56bf991f522fff9af5a94c176d06be2819fe2520125cb48dbded229df1a9f5a0308aeaec503c55caf5d248eef87640c7f90f1132ec SHA512 07d13f9a8f980dab73c07e7c68179cfee272f53103c6dfbce1814b768e3313dc671a0cbefc63d4d53a616876bc1f96db8db2444617e4d58d741fae3acf0be524
diff --git a/sys-apps/ethtool/ethtool-5.4.ebuild b/sys-apps/ethtool/ethtool-5.4.ebuild
deleted file mode 100644
index 8b709203d4d7..000000000000
--- a/sys-apps/ethtool/ethtool-5.4.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces"
-HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/"
-SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86"
-
-DEPEND="app-arch/xz-utils"
diff --git a/sys-apps/ethtool/ethtool-5.8-r1.ebuild b/sys-apps/ethtool/ethtool-5.8-r1.ebuild
deleted file mode 100644
index f1dae680c309..000000000000
--- a/sys-apps/ethtool/ethtool-5.8-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces"
-HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/"
-SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86"
-IUSE="+netlink"
-
-DEPEND="app-arch/xz-utils"
-RDEPEND="netlink? ( net-libs/libmnl )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-5.8-avoid_bashisms.patch"
- "${FILESDIR}/${P}-only-memset-non-NULL-link-settings.patch"
-)
-
-src_configure() {
- econf $(use_enable netlink)
-}
diff --git a/sys-apps/ethtool/ethtool-5.9.ebuild b/sys-apps/ethtool/ethtool-5.9.ebuild
deleted file mode 100644
index 804cce9dde3e..000000000000
--- a/sys-apps/ethtool/ethtool-5.9.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces"
-HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/"
-SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="+netlink"
-
-DEPEND="app-arch/xz-utils"
-RDEPEND="netlink? ( net-libs/libmnl )"
-
-src_configure() {
- econf $(use_enable netlink)
-}
diff --git a/sys-apps/ethtool/ethtool-6.6.ebuild b/sys-apps/ethtool/ethtool-6.6.ebuild
new file mode 100644
index 000000000000..b84034311ce8
--- /dev/null
+++ b/sys-apps/ethtool/ethtool-6.6.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces"
+HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/"
+SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
+IUSE="+netlink"
+
+RDEPEND="netlink? ( net-libs/libmnl )"
+DEPEND="${RDEPEND}"
+BDEPEND="app-arch/xz-utils"
+
+src_configure() {
+ econf $(use_enable netlink)
+}
diff --git a/sys-apps/ethtool/ethtool-6.7.ebuild b/sys-apps/ethtool/ethtool-6.7.ebuild
new file mode 100644
index 000000000000..b84034311ce8
--- /dev/null
+++ b/sys-apps/ethtool/ethtool-6.7.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces"
+HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/"
+SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
+IUSE="+netlink"
+
+RDEPEND="netlink? ( net-libs/libmnl )"
+DEPEND="${RDEPEND}"
+BDEPEND="app-arch/xz-utils"
+
+src_configure() {
+ econf $(use_enable netlink)
+}
diff --git a/sys-apps/ethtool/files/ethtool-5.8-avoid_bashisms.patch b/sys-apps/ethtool/files/ethtool-5.8-avoid_bashisms.patch
deleted file mode 100644
index 9cd9fd86fb70..000000000000
--- a/sys-apps/ethtool/files/ethtool-5.8-avoid_bashisms.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Running this script with dash results in an endless loop spitting out this:
-
- ./test-driver: 62: [: --test-name: unexpected operator
- ./test-driver: 78: [[: not found
-
-This is caused by two bashisms which are being fixed by the below patch
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
-
---- ethtool-5.8/test-driver
-+++ ethtool-5.8/test-driver
-@@ -59,7 +59,7 @@
- while test $# -gt 1; do
- arg=${1%=*}
- val=${1#*=}
-- if [ $arg == $val ]; then
-+ if [ $arg = $val ]; then
- val=$2
- shift
- fi
-@@ -75,7 +75,7 @@
- --) break;;
- -*) usage_error "invalid option: '$1'";;
- esac
-- [[ $arg != $val ]] && shift
-+ [ $arg != $val ] && shift
- done
-
- missing_opts=
diff --git a/sys-apps/ethtool/files/ethtool-5.8-only-memset-non-NULL-link-settings.patch b/sys-apps/ethtool/files/ethtool-5.8-only-memset-non-NULL-link-settings.patch
deleted file mode 100644
index 573ee645615b..000000000000
--- a/sys-apps/ethtool/files/ethtool-5.8-only-memset-non-NULL-link-settings.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-https://bugs.gentoo.org/740114
-https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?id=cf12872ebe7d8fac2088e7d2cd5e2a0a5f03499d
-
---- a/ethtool.c
-+++ b/ethtool.c
-@@ -3048,10 +3048,11 @@ static int do_sset(struct cmd_context *ctx)
- struct ethtool_link_usettings *link_usettings;
-
- link_usettings = do_ioctl_glinksettings(ctx);
-- memset(&link_usettings->deprecated, 0,
-- sizeof(link_usettings->deprecated));
- if (link_usettings == NULL)
- link_usettings = do_ioctl_gset(ctx);
-+ else
-+ memset(&link_usettings->deprecated, 0,
-+ sizeof(link_usettings->deprecated));
- if (link_usettings == NULL) {
- perror("Cannot get current device settings");
- err = -1;
-
diff --git a/sys-apps/ethtool/metadata.xml b/sys-apps/ethtool/metadata.xml
index 81acd210e0ed..81a09d9fa949 100644
--- a/sys-apps/ethtool/metadata.xml
+++ b/sys-apps/ethtool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/exa/Manifest b/sys-apps/exa/Manifest
deleted file mode 100644
index bce4e718e1fc..000000000000
--- a/sys-apps/exa/Manifest
+++ /dev/null
@@ -1,64 +0,0 @@
-DIST aho-corasick-0.7.3.crate 55093 BLAKE2B 16dfd6505ac34c1b0351c736a913852a354da64177fbf8fabf35212a4deea087150ed7e558787061da1e71c995e3c876c155eb1c629865cc282ab8aee06c9539 SHA512 4250dc8fa38ad74e0c25375744f34eb06ff3bddbf16d6b4d757a9053ca16c3945d15c8f9deb11ea55d30b6d1c1744c4bccc388a4413b723a429445bf5ef3ffa9
-DIST ansi_term-0.12.0.crate 22762 BLAKE2B 4612905fc52d4aa67b9443f49f2e967e63688df1dbd3c3fe40c19774ee214bba6dccdd185deae40ee97b5c4913d2849b5bb202a90e6ce91c75d10d4081041af2 SHA512 ca41f0a8ff75fdd5a1033589d95a52e89bbc7bc8a23aba161cb8f7d32f85d909171483917dfcfe7db2b65b00221e026380286fbd2baa735666b6793a1ecb5d7f
-DIST atty-0.2.11.crate 5916 BLAKE2B e502c23faaa9dd27cc5865b68a721b0403071edb483fca0c745707f4c0ca1b1787b5677b2d8ad7f327b8f5588ba784126ce78496c1db54f7ca4ce0ccea669499 SHA512 9d6417dc1e8abdb4969418525b36c451274fd76769adb57bef9875ef62ef521c50d58626ebc4f96d2bea32cbadb6999fd67653b570293d7253b403b6d0736c79
-DIST autocfg-0.1.4.crate 10937 BLAKE2B 272fc9d216749941cb73d37d5233d1df4bde5abcf9a6e75ed928ee6493e9011922a06551dac1f6b1d0c34dce587c6ce1442ea62e88457c0cecf985e7a3d5e47e SHA512 811b68ea24a836980026abba12598b35359abdff5660e6e9d3cc65e3edbedcd10dffc208900af5d4c21e983e1218b5fb5499117c05ab60b3e4716f0529b231ce
-DIST bitflags-1.0.4.crate 15282 BLAKE2B 63f5feb47460c344983cef8822804b1c4ac2f3adfffcf206df2b05fafb9c7bfd73986721cde46705a3e4a0dc72a40683e4d369f2339adfc1b55208bad1766875 SHA512 81850d2be62eabb8486024ab263da67e6eb8ebfa732cac3a5d46a9186c564b2065cba15fa3da468bbd26eaf2b67038680e5de19d5dd99d78f60dae8a1776c8de
-DIST byteorder-1.3.2.crate 21596 BLAKE2B 2ac70cff46af36e96b8b41c3adf9e09134af4d3d5b17c14233047fc3b70c829bffe6c129def84f529c1017ab2882c1bb66e86eab7b749a0d40daf2650da85d0a SHA512 2ef6b986926a4671dd945583730b0bfd4bd5e75b62a8a70c2875328157ba95f2c1b17c534d905e9b287457bd34363c1a33fd3dee9217c371032393ebbe206a8f
-DIST cc-1.0.35.crate 44369 BLAKE2B e74583fd826dcda590d7d6b853f751a3f18b10705f62a35a954bfba2a38768870b43046d98b6e8535143cb40950bfd8daa21c86b1a24d30c3cab485b7bebeaea SHA512 6d2c2708d696598e403027b3ee3e4cda4d7119185bdc2ab8c825e36bb2b9f48f40b84392b708100b812ed4a74626b7fef5b3698a9f5513de8f00ff6d922a3f04
-DIST cfg-if-0.1.7.crate 7360 BLAKE2B 0f9a457501441c9d3408a40efb199eeee196490bc22f4c14565703ee09dacac2a0b4e1704c05853bd4662977d487c7723521cb733881a9bafad3ff46d775acd0 SHA512 30a1510f0a217e588e9a2c1ef51e6188d7437c63641284782262fa9a2ec78f04d0bbdac7ce32c0e8282e2e518d4b6c9d6ed0c2658baac412133ad1cc1f8d43a4
-DIST datetime-0.4.7.crate 117378 BLAKE2B c841917a4c8c46dd53c5ba18555b7ed385e80e0a5a71f6fd6433ca9c6c4ce7ffc78733590d020314cc9c17d2a43e64503f61e9aa9a9cd323ac233d0653233966 SHA512 c7b0503cae21628f64ba8740ffdf5798a7289ab7f6bb31fa02410bf36d7c5a0ace156ccbcb51fe57d7918e4885e608652af859b1e137a06b1a3b2d4a9a46bcc8
-DIST env_logger-0.6.1.crate 28567 BLAKE2B a7302e44a807dcb1b523e1dde683a040837b1de2fbda5e8e7347478f77d4b7a39521aadd1d6d42dffbb6229e0dd6bd1b2b9fc47b860db45281a95612dd78faab SHA512 7e5142fa24e46aeb246515f42f9fc561364f266a693ec9f8c45dbe96d31174bf5663ef6233f41a5f96849dd19b61e2a97ab7ca1a7a55c51f741f4efa5af371c5
-DIST exa-0.9.0.crate 118381 BLAKE2B 9844e5145add04d806165a74253ebcab1f1d86db9e6f0ad713001155539f6309075d8d391f428eb2c8a2b22e20179a5bea42ec1d7cc8eff6224874ac6b894744 SHA512 fa798e962e4a70f98fc78ccc8eb4ae7dfd4c3c0fabca2d7f6627301ffa5042f4437c98c5698f3b4ddc77acc4162b9141e6dc2e7d2f2818ff4f03ba755a6278d6
-DIST git2-0.9.1.crate 151280 BLAKE2B d0c08fbfeb2928e3986cdf57baccc44f75454b2bbb4470593903391d552369a0daeaaf1a64038e4dfab2194c2a3255579ddd4700cc0ebfe881023855521beb1b SHA512 293a8d3c284bde2636ca600f5fcb460a6077783a15c4c3b4e5472d4486233d0c5aa18968cc4d0e9e019fa8a1706e04000c858f8c87e2d92d0114ad0f18f136b2
-DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
-DIST humantime-1.2.0.crate 16795 BLAKE2B cf3cbd2f89800994430b2634699eced4074d7fbc1ec53b8ebb145b8399bd2d5d05c86bc8d9adafc97d861b1133910ba67cf407b01815106e77ad5bdcdac60764 SHA512 718e5d3568305e09c359ffb8ca478b36ca3b829667029daf238517e2b88df198c33e29c93b7e2d02552a4ec746c121421128002d20c549400ecee1942c4be6cb
-DIST idna-0.1.5.crate 258735 BLAKE2B 31f2506f76e9bbab68c0da6222db214865dc37994851d91eab8c6e7f0220e6bcebe50ce3a571866bc03f3ad1b337f25c3a02c7e7f1494553d91e85c1bf042950 SHA512 217bc49f667242bd89eff708fef395fd46cfe3d24440bfb76869086fb93805c4f49d718251fb1c35ac40d5588ec98cf8b8b516fda53d6d7fd3da1ab04b0d173a
-DIST iso8601-0.1.1.crate 7770 BLAKE2B 59f11b56722e612bb95ae80c3f666c5df656dedd4988bff4a9de6a6749dd49e68dc8944eb029afd4d133c3c3ac57608903a886ce34704a32598b637bff884cfe SHA512 c2c53777a69df5bb4bbc37e377dc064aa8f285a7532797cb9da278ed2b4766843583fb5535ae482335cd21ee67db176701e8c6e5d38c3a6ebdb8b05e82ed2aa0
-DIST kernel32-sys-0.2.2.crate 24537 BLAKE2B dfc4a1e31d3ec9e2ac62b890839919fb7fed1444070c1dcd75bb75acfb53556d6cf2eddf5a6639e7852a3df2a0cc715c5ce1d3fc898ef16a1687020d98f715bc SHA512 682bc7c629aefd035966a2873518fd60719121cca7d63d89d6c97ff5306f24d8b5055a3c91b4eedaec22b1d5dd3fb8b48ff7341a05bbd72d86e06c422dab473b
-DIST lazy_static-1.3.0.crate 10616 BLAKE2B caa2af77f69c96b5f35dbb2aad7e73784544e6baa5e1fcc2272738fcd3d5f0576480c8169cdddc665a953eb9b6b7ddeb69e93cfa60401458afbe783fff82d1b1 SHA512 08288790139876765b6d4a5988f47fd2a4bfc77c2f2406ad44e64920a471b5655c7f54cb197e5a40c29ee8b42aecbbefaac2b6f4a7dd2b5e24dd92c46cb9b822
-DIST libc-0.2.51.crate 397323 BLAKE2B 51306c2ab8eed6de1fabd4d59b7618ee74d8d699eaec776d21fa5df20c63cdd743a50ace3a37334b282e3050dd718faa9f95d359abd2495a2bb8de0384738b15 SHA512 d05693e7106e1887d94b23ddff5692111c2164e7ce59d9c60995af2a49fcf03ea8723e837370867c1177315aecdf25be82bf723c5e798ada66f5cc7886c22857
-DIST libgit2-sys-0.8.1.crate 1264574 BLAKE2B a060ba4a460f345169c1ca3de30ddffd888197ce9b046b55b28ab92e7350d31a1aeb24f06c88d83b68a4bbc6be1b965cb9b51c91d1074f8f854bfebb37719713 SHA512 15cc37fde84725195441c066294392263a8cead13439c02a114b031c41dc6c508fe440b0866c4e70c6bac5060921629432d92cbb767429a75f8462a6854a6e72
-DIST libz-sys-1.0.25.crate 650151 BLAKE2B dc11dc65c95f6c1f409ffbd0c9b12a809eaca5899da1073d8f302a752f9bb538b419cdf2f540b34b6f72c7ac36719e8fe21a1480533829cee305019304523520 SHA512 3c1d0754230c327876fadbaf3770f52282fedc6b373c92fba386a80261c577f6bea2983db7d3a40a231fbcfee40e560d8f738d25b634d270e2132b3162497547
-DIST locale-0.2.2.crate 18910 BLAKE2B f34c69403d81c86c6b178f8f28271e39ddec59696d11eb17c40bdbbcfe9be697184237f2ee3fa4c7b703067cc8c6dbb999a60884f81378b394994c53426e11fc SHA512 ae542f8811405fac032029885a59d39c922da7c1b59e69f5e0d73047d05ed803475b3aa9b486cce47abfdac03f5892013b822e896794e6dd80329b4f105be28f
-DIST log-0.4.6.crate 22303 BLAKE2B 3b1ad5e1cc1cf7bb223df569a6024b5749fdc973bb99a2a1f11772774cb384cc98214366e62d846b57c7d150f925cdf0e906f8113039204a82fbf001ae15133a SHA512 3844c771f97531ae7312c6bb0cf74ccaab94925f68bf1172419cc44fa4b5373f3ac6b42fb6d0ba636a970b295ea5d1b5abbe72b4da67a103e8dc4ed48a0cc5cb
-DIST matches-0.1.8.crate 2216 BLAKE2B f18176110921b1cf6e58d52d12f1d1a3455ce2dc04421fbf1b392f66cdd81a88e924571fa27e307a06301d83b04f3b8a0ca3ae40d2da6f2decb8aac4e2801fbb SHA512 98b58f6a2694b03a7dd1be69ebf7e3ad14483fc8e4cb6e6c26a4937e4e660e843efb4dd04a7312dd9659ca02acd3775678f73b8faac44a76ffafaf873c22f590
-DIST memchr-2.2.0.crate 20939 BLAKE2B 224963d641cf2bcad4b32699c9673c81d730f714f2df18878ce4ed78c816d38a2050dce11f9b3a529d45456e16027461bcfef9d5f0e08f7a70175a74e61b0131 SHA512 19bb5fe9c4ff471e2f8cba0e3be3ebb715f0eaf3d9c012c05833e78243d8baa6b98e14eb4c9a900caca48aa539483972f4ff8e5a47aec5141f96f3f23fc24088
-DIST natord-1.0.9.crate 3866 BLAKE2B 8e8f576af50121e7571a1d919557ddc14a3c1511c12154a9cb74fa34cb5c2279406e1ae7ffb120242689e34d4f237d9548631f5a35f4f5d4369bafd8a728fcc6 SHA512 bf58eda54c759fecca1fd310bece370f26555bde1096081adc5bb1e9446a538f1652fb3049a52f898f4f62a2608805b72cb72dd52ff3fc9b88fe0a7c9071025a
-DIST nom-1.2.4.crate 68547 BLAKE2B 87ed1c1770772beed7e2b5faf9a63ce4ab506913ee104a7e36bd64a69ebd47b7a7bea2ebfe1cd14a54e87cc671340b6768cdd47de68f163e48253f02283a13ed SHA512 4a1000f56dedfd71b1f91d44c27c07519f81629f5fc24b469d179d59e8b3305c8ae1a418fa60193be1cb4289887af2ad9b9791dcbf1f6e7a5eda36171a314539
-DIST num-traits-0.1.43.crate 7659 BLAKE2B 313221a4364b18eb29e2d4c480209766c56b1ca2587a0ab8f668c71cfdefcd733d64be1430bea1846a77f075a26137fbe71f2f4d9be79688374cdbe9e0274ba4 SHA512 35ee0a41f8ae33b1e6656935585f540956a8155045992e7b488b9fdbcf0eb9c9adc90ed8128d45f248b9ac583114cf518c4c7de719b8c6627b29f2fbbac91f17
-DIST num-traits-0.2.6.crate 39923 BLAKE2B 7bd781368c553622620f0d62a09f2c82fd26d4e6378ea8fc51b0e655dcf0561701881027f46f7a98da1bc25b777c62ab7338387c776a9e5e3463ea53a7efe922 SHA512 db638c662737972f07bc7ab82b923bece8a6c04719199ec0c7ca90140ac11e4fd1e4eb3748a69ddd3ad2791d4f5f5f69a00ce8aae92a647d9015d130f85b6b4c
-DIST num_cpus-1.10.0.crate 10669 BLAKE2B 96500421a82aafbacbcf982e3041ddba40dd8ab7fb967d1fb386c2d543b7f3efe12e35c386602a20377e7dfe09f31ecc9094ee0a06aea588149bda7866fabedb SHA512 a97b282da6323fa37b93caaaa262e699f0a219f08d32bc8531363daa57ae3ea397927d09c36d38615dcd372443aa65a43b91f4a7a59910273b581b5322946a02
-DIST number_prefix-0.3.0.crate 6291 BLAKE2B 24b232d965aa08a092d6bd65f0d28e5a93c7948b4831ad42bae067387908513a67a81dd85dcc8a2ae7d829abd6232409abd2ed4a15c993176b1c056351177998 SHA512 014c37c477b1c99c20461dfa6deb1692d93f10c592387bdb757d9220347ec7bfce5861e82029286cf3a64e9d53427cbfc40549e358c3fbaaebeb73e91b598107
-DIST openssl-src-111.3.0+1.1.1c.crate 5106252 BLAKE2B bc7bbcd8d9d43cb8d5dfdc5de2ee8beb506d4a1132337625a87481975bb8d7284224c05d16ea63504b0be72e0444da5dff0226ad461037ff201c4e57b66bef5e SHA512 4c7f0d5badb5d62e73cc324f069343f60a3431751e9b3adf4de1a474bba48767513508ce65019dfcc16433e0dc62fd36eaf1c6294b48e064f4575b40a847a64a
-DIST openssl-sys-0.9.47.crate 44276 BLAKE2B 021996a0f385d3f1a917a5404fb1112b6c6fac7e3aa38e7c37292a843a8b50d0218870f6724efbfcce3fea9e687385b1c94e7efa6badb734cd492e01b3270dea SHA512 8d3a38a5f403cbd957b069c60d80f790f2030490847113b3050afbe769b4c692b581ec763656042973167dee6ca70939fe0f15cc1150db67731fb3808d98b6cf
-DIST pad-0.1.5.crate 4853 BLAKE2B 62db785d1805f1db76515fa588ddc1be344fdc89092f0a5575e5ac1c7fa66284894dbf4f9c8fe21f0da0b9f9245fa113f9e45f7b5bcc860b6bddbe2fdfc2eed7 SHA512 ebfdd66fa6a9dcf5f627dc7c469deb72870678bb6579877122534aad450618307ff345014cf777c5bd67306ac50de0a59bced3578951f661cace8e70c237f4ba
-DIST percent-encoding-1.0.1.crate 10057 BLAKE2B 6dbfea557cb7a604a99b6fa694ed24b1555fec34bfed54503d98fa4b285a91aab1405b7156bd00be0001b10bf15706878b7bfb4f73cc34560166e0e8f004d944 SHA512 6e884d7172e8cadcf6e39056c9f92b70252f56a8062af0e792179dcf990344f47553c04e2fce84841f20f5c28557d7768727f60c862b9876d29cabffd4ad19e9
-DIST pkg-config-0.3.14.crate 13565 BLAKE2B bc457c2bee4034e7b5a5303bddf078e0b3e52018eb7513c5fa610ec9b272b95fab6cbbe35281e86bf0f97883526d91dcf8c156ea83e7dc23da0924a395b6c811 SHA512 bf120f0694f44d7b83b431eb28fe14ef3aca4d08ae0c2c9edbf8f184c145ba3faa479a6ab25e2d7e9f9d9f2d9a3fc21674fd4ddfe88bcc4fadad40bd8285656d
-DIST quick-error-1.2.2.crate 15132 BLAKE2B 0c35f1d0145d4a3bc4b835f203cc4348e1d9e8f6f7c1ef887d923bf8a9a63f896929da67e27978f0d797a9455be5aa868078bccfb8eac480569d62ad64e0fee8 SHA512 f4ed283635e1fb72bd30929457ac04b1b79c36b4b08603af6266a3ea6e18f12c834cb88ac090e42bb869c8a608f7521812de81932a81073a34f16fc882c6148b
-DIST redox_syscall-0.1.54.crate 15668 BLAKE2B 2da177fdb698073829b29023e6cd0a2f422ad1cf1ac359b37d3f5cf4c12f6334eb241bd313fde0236afced49714af92469919d62119ad4ddc49448ab5d9a2589 SHA512 38ee15c2fa470428329b3888fef1f1b5bc57ffae96b6ec505fc051f33a8da86512afddfeb6966cb2342382a5cbccb624a825767d3492b3d6d21d6f8e97e57e9e
-DIST redox_termios-0.1.1.crate 3227 BLAKE2B 0b109d34e942735e804dd3da2a9639506e8bf6eb5b1f69ae021b115b0b75ae5159e8457abdf647dabfc19d5119cd3a44b8966635d7862cc66a8a997e4468e1ab SHA512 201d051900e919e2c6c6769ef252e51979d90133df16b6605e2a2f424cfb2e6e505e21add75ef5854fe5e0cab1ed1f1c1451010f072ae4bc8703c585a4323981
-DIST regex-1.1.6.crate 243429 BLAKE2B a41cf5b9fa83a7fd4e0a18b15d30f9faacc36267ab0546927061323427eabf4b66893a487f5f59043226d04b700e5ccdd77b47df0219562b6a6615453f271ffe SHA512 f2c039ea729f8360f086b83a8f3da4966932d9bf252ebdbd2058d0249afe997c08c2065efb597e88b55266a18fbe44aa61c67f49ec5047dc6a5bff310f04c32e
-DIST regex-syntax-0.6.6.crate 273068 BLAKE2B 283806a4fc1f0656d2984e8d970ef1db515a56ec08573e397fc342e6f61b6534941530a0ba7fbea69d3817a043dc110b11322ec14b50ce59c2976deb6a66e393 SHA512 5b21640438443394631d28ed1ee391e82bf8b2afc0b3cdbf67f33319064ef4771dc250dfc555d7ff0fb453da3b71e30caebb37ca5c0be446cc40726228c51b76
-DIST scoped_threadpool-0.1.9.crate 7800 BLAKE2B b6f887c1af054666ab7f717dfdafe5701bbc0a778169d885a1837202d4d215970af567ea620c6ef47db69fa664c6be65c782aa87d9efc1d9c8c280b6210e38f1 SHA512 df8034b347fb489735895d75e5489c264aea1b50f46a8dd512963df05cb9ba9274317b26aeca63b9b4edcf792e796659bad435ad3f3446cb397340e2bf0a5f33
-DIST smallvec-0.6.9.crate 21548 BLAKE2B 465f70349baa54a3b0ec1b21e732fc6b79362c866e24cb15acd09c753c4e4469a9f085859b5cc33c5a24849d64554dd64d6c66410c221c4c4bb6f3fae4b55dd9 SHA512 2bfd96b6c07a740b77c9d3221604e108bb730770970e7428a2a38d29711dff16eea08251e826d2d511d13a887c3256ec3a689e3c481ddb9029f47452fb2877e2
-DIST term_grid-0.1.7.crate 7353 BLAKE2B eb4d11b84995d8ca831c32c3b0c781244d7d97367aa6b877f1aaa21e6b10edad5a4597ab06d5c1b6a9cc00fbecd62fa3f28b9970119dec98c0eb5d0c74948b5f SHA512 12196d1f2579b6d593a7cdd34d74635b93fad710bcd682dd438143a9e814759346dc263dc8a65628b7ed8fc1dbcaa60fd9cec543d0cdae000cc5dc6fbb199bca
-DIST term_size-0.3.1.crate 10754 BLAKE2B b8ed33afdf8348d9be3200b33b18d121d86fe5a91b6ecd3a8f7a4e55b45910597738fd68c568b5c66feb2cf9d38ba62da705624b52ff01d30bb452c7eca8f6e8 SHA512 fb43e0519cc3371b23b3d4c52d25c59c3e45afc550ba081e8cb832a48d9dbd50cbb69bb154ae7926fe869eb2c35b72b95238cdb8822910bd68b4f65927ca6a5f
-DIST termcolor-1.0.4.crate 14416 BLAKE2B 373701dd2b8a3d584a44d1429e5fd3a697eb7b9138ca6c76eadbf642976e73a701d565a93d77ead3f5cc542c204b3bdce9cc5101b2778b3e32272db9c419edd7 SHA512 cc2f90f453834666b3dcf96c48695cc1fc48c6aacf71437bab635678f486cf02ba6e1c040ff011be078a17b50f9f6d2c09fec771e362d8d2d07526b0f040df6b
-DIST termion-1.5.1.crate 20659 BLAKE2B 5b4291c2c26a074c16eac2e7bcb40467380181bac69c941e5c958059dc239cbbfd74872d9bd3da65245d010f9fc39804c43dc96f4caab2499b021cf35977a6b0 SHA512 1d1536f08600c7c1f414b4579a1a6e7eff91f4c105504125118d3cadf71c7886a352d1c5f7e07f3d7c28aa8b4752f07b51eddb4d9adc6a9286f7b6bade2bec76
-DIST thread_local-0.3.6.crate 12388 BLAKE2B 290c35e5327e80a5cdca5609252b1efd1b78a654fc9ab4ba68eeaa3c2769d844f725d17d91cbb15048dbaac84913c51edcb39bb402882c9e7b4d0c4e4811518d SHA512 cd783d3d9caec43868da1f6118d4c4d520e03b9f1049d8f15d2c12482989401d3aee748e04a149953d35e5d6487355c2891d44569ef688bc1d45f01b6461d253
-DIST ucd-util-0.1.3.crate 25897 BLAKE2B d67d250603625d7fe55b1bd17a8bff03ddf2e48b531e8f754f51dcd49370a2b66d0915842fb2fce85a69df2c38f9c086ac3c36115d40c5a8138e5451f71a1cfe SHA512 50a796feb198012241d73001bb53c8e3d3168df379de91d7ecaccfd829b08a356afe3db736fb8cced8748141d7a9e4b157440442c425816c78c0615c08e20f2e
-DIST unicode-bidi-0.3.4.crate 32228 BLAKE2B 853a85b29d1ac2025b7a28af64ead9387e3b4b1e790ad719d4374e349c1853ddbb5959a2890d9d6c94a5c28e4523fc3324deb6b1ed1aeb5e917f21b0e2516f6c SHA512 170ce083fa82bed13ecc62d85cb882fdd6491ae721e1633d3c1a5d3cee69422153afcf6695765c0e8fc7035440d0370d34afac9e978cb27f7506c07cba300e1e
-DIST unicode-normalization-0.1.8.crate 71158 BLAKE2B c548a2bc537abc6d86bffb0828a366ff82b143dcb0ee01e2c21b3b7134fd5f818f3775db391d358f4ebcb906ff256e3d2228ab042066a3de9a6747be05b8effa SHA512 4e3245689d6162a21cedb42e07b179e3aad03728a37b005c2e6bff644a6efd06b6bd26a20a255861a01441a9d15c4318575db3016248b96a03436212aa414547
-DIST unicode-width-0.1.5.crate 15761 BLAKE2B 575e6bfe8b8b70cb0e5a167bf546df2964361a223b03a65bdc588c32d4cf9f01194daa8d6d1c90319f1f9981aa5b092dce67c9c97450be4ea630784d834cdbe2 SHA512 bd5ac5f0433953d79408074239edc7c43ce23d56659d467805d81ab01c576a3cf77ccedb3bba41d48bc4ad46a8905ac8a1927b99312053ef6295fd940a6766d2
-DIST url-1.7.2.crate 68597 BLAKE2B d8d7a4b05e956a956c745dbb536ff94abbe81af22e53af3d7baccf01ed7e556cc4f1f8e0a0d97c258c1f1a23209e1ae494079948de9f0d402901c0b6cdafc373 SHA512 c53d7c397416cb1f3c9f7654a8a0653f350c28d41880859f29f681cd6269848890c1396b7ccdf571ec84212a8f3959138f47193ac0595a97bf98972b58e1ed04
-DIST users-0.9.1.crate 20456 BLAKE2B 49a2dd188f8d944d361a4e58f3f437718af7510c2b684e22209058e97dfd9d5ecec2c901cbe2cef36ab74d11091b1280de8b94135da523f57b02372ed5571fe0 SHA512 e372f8402d241e924c77a13621053836a1a36a6a6b9b66d5e187a582be0a85638270ea140c048e07f6739ed228711095fc98705303c499f2b542fd548df0819a
-DIST utf8-ranges-1.0.2.crate 8510 BLAKE2B 877ff38444aec99bf8e0d09c6880d4835eb453c8c7e38fa5e7f8fe3cadd5b34b11a030193e46fe97b19fd90e94de156c0eaf12c613aae7cee47f0f016a3fb96d SHA512 ac168b908a34c4814a682b77502d2e5aa3130acb01fa87e29c78b760a61ba61b01f9fa2d67202604ac9824e0b2fe92143b72c0d4100a62ff9f53e4b00a4a12fb
-DIST vcpkg-0.2.6.crate 9866 BLAKE2B c9c6e1a52e54d6d4103e0b833d77cdd4b2463123a5a12d7c15922bf782c7d56f0055ed5dc9d2bd236a14fb0ed6612c7b691d8a31a98e34b48f84228e6c10a567 SHA512 55678e3cbb7b1bf80e2589df3fc580bb595576a5f24e515819906082ed081e47a546d6825bb92fae56ed0157407244e1b77af1677f0380f2fdd15cc54853675e
-DIST winapi-0.2.8.crate 455145 BLAKE2B 50f3c2a0cf4eeedd6891b11392e520c1cca139a71f8f736eabaf43aa7e4b1b5d57697918978220459572d373940edf971eb8302f292cbff832283e905076319a SHA512 115e6f027cdd4a56f77ca24f4ab249d2a6cac1e1f955c826a9b6ee05db4861790a533f5e674aebbb540370fff52ed41618c2cd7c906e73200e92df213109cebe
-DIST winapi-0.3.7.crate 1075776 BLAKE2B 694cea6d0d14fbe85ba718c0ca7b9db79ba8f943b44f4741d77000617de43314a2c657285736a032c138b5d2095b06146a2ac8d84b8efe2307ef44bb7073c604 SHA512 6871b93ad8d48e39b90cb7b31b3132f84665f965b4dfe06fcebdfb873e7d099007cf3d7a50e832a941c3425ad2f39c3ab48a77151e60863685b97fc05c71d134
-DIST winapi-build-0.1.1.crate 669 BLAKE2B 6c8d8e0f81574c086f06fb3f234b0e6759d293d1d254857c3d491e4d43279e5c2f57f2fcfdc9d5d7b083280f4cc2a75a6ee9bc1541ec6ce8f8d904ded0567faf SHA512 8b0a239e205a5368892f41c870a8a7ea16e3468c364b03382bef7fa3a2e7159b09c07661e95b1227578f6d72c14879daa4444b28c51ae20ef15d985d59ca5a77
-DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
-DIST winapi-util-0.1.2.crate 7810 BLAKE2B 511f14b606b591da19159f0f49665846e55ef8e22c7519fedaa5dd65cdc0c51134606c2a7ff0a6cbd7f24e75aaf3109959decaf2a5171fe01fbfc7ad7453fbc4 SHA512 54514420da9851f9657f888d8b198b3a97a6009b7e965d5a23ec471251f6548c2a58c716a5f48fb5d83a5775503d696da98eaed7b71fdd9ba7cd74ba6923b11a
-DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
-DIST wincolor-1.0.1.crate 4737 BLAKE2B b1519327a69d71845bc4d7ebf34205d63883aacbeb9284260e5cc89178193aac15525641546582e32c00128ca4a7c1967ba8f076fbfa98bf9d79a5fe2801555e SHA512 f9914b8b416f3810f5199e85b8088c669bff3cbc0f5b86fdb5b600bbd0554465a559bae3ac918fb7197780663e94bf645ede8f35b60ab0e6a6cf2305b1eb99e1
-DIST zoneinfo_compiled-0.4.8.crate 7959 BLAKE2B 06b41aa69298319760eef3959c9447d9078ced6ea409b95bc0a3de5d9ddc1006d022caa23a64f46a9c6abf1eb077681ffaa3e03af0d533ec65d3351a4ecb3ac7 SHA512 e5337233b464cb97501a2694972a5707f6762ee567416bae876e0ee72aa0bb9cfd152a9253ba97c9fcb24a59e6b2fd5417d5567f7e17336ddc8dee121ba76589
diff --git a/sys-apps/exa/exa-0.9.0-r1.ebuild b/sys-apps/exa/exa-0.9.0-r1.ebuild
deleted file mode 100644
index 01d6850ecc92..000000000000
--- a/sys-apps/exa/exa-0.9.0-r1.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-aho-corasick-0.7.3
-ansi_term-0.12.0
-atty-0.2.11
-autocfg-0.1.4
-bitflags-1.0.4
-byteorder-1.3.2
-cc-1.0.35
-cfg-if-0.1.7
-datetime-0.4.7
-env_logger-0.6.1
-exa-0.9.0
-git2-0.9.1
-glob-0.3.0
-humantime-1.2.0
-idna-0.1.5
-iso8601-0.1.1
-kernel32-sys-0.2.2
-lazy_static-1.3.0
-libc-0.2.51
-libgit2-sys-0.8.1
-libz-sys-1.0.25
-locale-0.2.2
-log-0.4.6
-matches-0.1.8
-memchr-2.2.0
-natord-1.0.9
-nom-1.2.4
-num-traits-0.1.43
-num-traits-0.2.6
-num_cpus-1.10.0
-number_prefix-0.3.0
-openssl-src-111.3.0+1.1.1c
-openssl-sys-0.9.47
-pad-0.1.5
-percent-encoding-1.0.1
-pkg-config-0.3.14
-quick-error-1.2.2
-redox_syscall-0.1.54
-redox_termios-0.1.1
-regex-1.1.6
-regex-syntax-0.6.6
-scoped_threadpool-0.1.9
-smallvec-0.6.9
-term_grid-0.1.7
-term_size-0.3.1
-termcolor-1.0.4
-termion-1.5.1
-thread_local-0.3.6
-ucd-util-0.1.3
-unicode-bidi-0.3.4
-unicode-normalization-0.1.8
-unicode-width-0.1.5
-url-1.7.2
-users-0.9.1
-utf8-ranges-1.0.2
-vcpkg-0.2.6
-winapi-0.2.8
-winapi-0.3.7
-winapi-build-0.1.1
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-util-0.1.2
-winapi-x86_64-pc-windows-gnu-0.4.0
-wincolor-1.0.1
-zoneinfo_compiled-0.4.8
-"
-
-inherit bash-completion-r1 cargo
-
-DESCRIPTION="A modern replacement for 'ls' written in Rust"
-HOMEPAGE="https://the.exa.website/"
-SRC_URI="$(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 MIT Unlicense"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 ~x86"
-IUSE="+git"
-
-DEPEND="git? ( dev-libs/libgit2:= )"
-RDEPEND="${DEPEND}"
-
-# some tests fail on tmpfs/zfs/btrfs
-RESTRICT="test"
-
-QA_FLAGS_IGNORED="/usr/bin/exa"
-
-src_compile() {
- export LIBGIT2_SYS_USE_PKG_CONFIG=1
- export PKG_CONFIG_ALLOW_CROSS=1
- cargo_src_compile $(usex git "" --no-default-features)
-}
-
-src_install() {
- cargo_src_install $(usex git "" --no-default-features)
-
- newbashcomp contrib/completions.bash exa
-
- insinto /usr/share/zsh/site-functions
- newins contrib/completions.zsh _exa
-
- insinto /usr/share/fish/vendor_completions.d
- newins contrib/completions.fish exa.fish
-
- doman contrib/man/*
-}
diff --git a/sys-apps/exa/metadata.xml b/sys-apps/exa/metadata.xml
deleted file mode 100644
index 973eccd22023..000000000000
--- a/sys-apps/exa/metadata.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription lang="en">
- exa is a modern replacement for ls.
-
- It uses colours for information by default,
- helping you distinguish between many types of files,
- such as whether you are the owner, or in the owning group.
-
- It also has extra features not present in the original ls,
- such as viewing the Git status for a directory,
- or recursing into directories with a tree view.
-
- exa is written in Rust, so it’s small, fast, and portable.
- </longdescription>
- <upstream>
- <remote-id type="github">ogham/exa</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/eza/Manifest b/sys-apps/eza/Manifest
new file mode 100644
index 000000000000..0ad381683350
--- /dev/null
+++ b/sys-apps/eza/Manifest
@@ -0,0 +1,184 @@
+DIST aho-corasick-1.0.5.crate 172064 BLAKE2B bab7767070b959e8e4c054bf505b9423d7fc8b02dc682b559f54db986abe72ddf83a069b4bb585d71b47de92d2fce66a1c151a0d29c4aae99378ca05c3d5eb50 SHA512 6b0a64dbfe0c166341a34cd169bc46d28e40f72db4d599a1aff5327a6e891408f39e8e92e983cf9396a8e8135f93e41550237ff3e5c8c05a5325688746fd814b
+DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077
+DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
+DIST anes-0.1.6.crate 23857 BLAKE2B 9ef464a964709b408c7d7846b9b1e54e52d6ae8f21f22ccfe509ef7197d4694f439084dbdb01fdf88829d181965ea9d1452253789a46fdf6d0520e3413c50d61 SHA512 f9dfaaca9ca327881ec30efaf24e208daae668b1e9d6963c8b0ca9f9fd13be777c793076a87980429f0dfa4db28ef5331ce6652a76da4d5a87485b23fc2fde29
+DIST ansi-width-0.1.0.crate 6116 BLAKE2B f90f1f2cf668ef6d36b8aa723c3dec02b64139d4729f2c286c7298b78752d1e241fc7063ba2571388bba9f06d61feae05b0f48f2eaadb91f04035fe16184875a SHA512 2366fc37e81153dd19554fc4f2688ee1ce4a4794cdc6a56eaf6e7cf6a5459b2b1309bc35d8d049114c64730d9eb6d73a9a1380747b4cde644498a9b39e41c31e
+DIST ansi_colours-1.2.2.crate 21374 BLAKE2B a5ca621a12070686d531b1053eb2f7c01ee848a8c5f10469011d4ebb7b92d9b4d5ad9a569dc7bdcbc127e572e58f2e80af4154080014b02164941a8b115ed867 SHA512 077a6ddb4b44f79aebc704128804bcfe549b5c68a75d0d57452250b91cc02cd3784c25a93f061bae6060bff3eb02bb8a88fdf46ef6128a843eff4b0e84f7c972
+DIST ansiterm-0.12.2.crate 26777 BLAKE2B 08dd1e95ce9c3bc3673dc92e2e6c61d6d9c125560717e2046a52786f5ab50c9619a7bedabee8991ca90c9e09f2b4c5ad2b7c8e67b874779ca989023ebc6bd56a SHA512 b9a37ea51a3ec4e9cef972a1480fb07f9e8626fd800dfe417e3ac615156310648b65f4d6665e0bb91ac6e1ef28b74c1f66d5cae66cfcfe4c1a3b74805cb1dbed
+DIST anstream-0.6.11.crate 30239 BLAKE2B 4ac585ec56a804239d32ad3e64d93936ef9d5c8e0f0e2df17f7b081b6a3b2c4c32ff4ebc09ec02507bbed22b025628029d859610aed90c024e19a3216de73c8b SHA512 f8dd65cc116a1495782a3bfc98edfdd0973ab22ea2fafd292fb4bd3495af7b5ea410f320d3fa05f7f812fa96c2a20f4cd2af9fc58869a1a306f32714cbe45163
+DIST anstyle-1.0.3.crate 13986 BLAKE2B 9e9fa894da78a6c0933c423524827ead33aa4e384e04771ccccaa179f1e8a6459a5094db7f61714457b919d2e713d09df4429b83793d807821bfdb226ff115a5 SHA512 f1ac506814e1ce1df537ea8a88ed75f3f897aa9e559ba7eb5a8acfd043641dada12953669153d1f719da28f935a9651a07b5ae1e351139f0f03b58a67bc28477
+DIST anstyle-parse-0.2.1.crate 24802 BLAKE2B 6304a56c6a9fbaf1bb4d1d177b2315684345dc9d71c35836f9544145364f8d6eb56e25c03076690c594ab7db5914501acb569f6c136952e59c93179ced527fb2 SHA512 5c8fc7d88ffc3a6e78340ffe0f3c2d72e865512030ade4509de9c673eba955c536bb1873dac11f6ba11cc8367fb30c67451ed65d19f81507c9e917c702bfd176
+DIST anstyle-query-1.0.0.crate 8620 BLAKE2B 2d296b5066fd6284a2410923215571e6df650c5ef892d6de7a7088a0996ca30608797feabc84f3c325ff4d07001dac80ac5067d2a9c9d15d9ba59a276b399f53 SHA512 2781be5c82293b7ae338ec5046fbeb130de9eb2dbf2e4dfaa73ca5233032e1e52c133e141b02f33d4bc36d996a0a3f680ac82d42d614a5305005f60547133c7a
+DIST anstyle-wincon-3.0.1.crate 11279 BLAKE2B 593de9443b4c612526550285a6c156db26a233815e77a748597c6eea509ae511f41eb8ee736010f8be853695c9f1d94b034a77190e612f0a00bf00385d66ced2 SHA512 75ab14081b09e031ee0f559538976f39092aaeb6f561a56de83d12911cc2b45e28eec21068792c86a61e344021921ab55e7139ca79acec78e7d4a796dfa42a2e
+DIST approx-0.5.1.crate 15100 BLAKE2B 8fe84d52263521c0b72a1d1e82ed283828f680b8b56f532df2c14ea86ca09e793686d823c5d58ecfd7a829948543bb375e85223c866cf036e9432be5d6aa7399 SHA512 c6d768496c974b6ff4cf7ad8e65f3fc9faf29a1957da497968ee112c6a0b9d7a0ff9a2579206e864976c0f65ed2190bc9d2b63b31a09ced7b57879e207c46407
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST base64-0.21.5.crate 77134 BLAKE2B 901cf92d7dd8af2bbb789ffbe60972c1fd295b16690ecebbcb500e4613afa057ab2b294bbafdcaa4007f46412825260a0711d89e55664418a503dde02c8afd1a SHA512 40b1d8470a932c8b7f31717e33bf26742c1bf920caae639b8a992f77e64d5e6d287569742c1348daa25b7325f8ca8d8a312754a743dab3932181f37149d91b16
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.0.crate 36954 BLAKE2B 1d6cfeb0a17dc53a6249a83c8c7ad7c102985ffcfd7f7f76506889684235e78fe489d23b5a5f9018f0bd526a38d6b1449784c62322fb01f4bb507c0af8bd545c SHA512 0c3d6667abea48811a792749702136ee3db97518b33bc4c7d35737505bf56315e0e5810deeea28b7a1b540ec0e21bd319ba0b3c5c4aef0ba8ed5499ffdfd9b0c
+DIST bumpalo-3.13.0.crate 82114 BLAKE2B 62a930b165e853aeeb40558079f570c75ed13ff5e8436d99309dc6252aa28ae69d327c4b438913d6c7543bc156f2714f0c1e80d759ea0d44babe24ef0f268ac0 SHA512 419368d6ca37474c2867751fe5706d0c747326bebce323d571cfc07ee0f022d8e8a7ef5692091b0fa804995b081998dafc55da19a53e51135a767bc0afdb9605
+DIST byteorder-1.4.3.crate 22512 BLAKE2B d39c546ba7346df315297fc53da4bfc77ecb1f38567ddb788549ee31cae2719a8bc0b7d1f1705abb3cff033aa57af004987d90748f5a31765273b3223a011c0d SHA512 8c8000eb8ecf40351c9ce36a3a8acd7a02f81786d1b11aab85adfeffa0f2267ed74df29b2ca5d1d38128484d1d3cad2b673aa0d0441dcd0620dfd3934bb888fa
+DIST cast-0.3.0.crate 11452 BLAKE2B fe6edddd0589fa436cda32342d7beaabe4003afdbdf1d7c5db7e8748adf23b1b2cdcdd286235837c735d2143f29e692c152a5d56fb0458a54961e4dea303b2cb SHA512 4a3e19bc1e9e5ecc03aaef9bcdce01624ac0e6858c065fa1c41693db0ac172b9735ce872064561347cd9e79f00a274129011f6e4ccf9e61d960c8bb684b6d396
+DIST cc-1.0.79.crate 62624 BLAKE2B b3cbed3bd6fcac1c6ea258ec96cd107f859947a35dc89c3dc8f314741b0f668e61518f896ec32ce10c9a7eb20dd350bc177a71810d53ebea59fda062ed9d27db SHA512 cbf0a25f3a23fc540e9d638fabc23f761f1c240ebb4814e761e90437d71fc559cd155768ab9e78fc192220d8a605c66c3af342ed736b719181656170b98d7bf5
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST chrono-0.4.34.crate 228932 BLAKE2B a2feab8d8b079209f8661fd8c5069f2a5fc3e5b0a6233187ace16f8f2ad8b4a147253e47af306cb31aacd82bdf490a8c8a171ad702b8dc22f9b934205d080c55 SHA512 2aaccde5e5ecaec744613429f807b3c34b92632973de7fdbdafd7ca510b917a23a0abc92a6497754d0d3368d684305648aec1fa2a0a61c88a100a20fab2348f1
+DIST ciborium-0.2.1.crate 34974 BLAKE2B 370f4228aa63075cd7a0d41dd83f15211fc69267235905e7f5607f6e6c0baf64db0f6203c97990604de2ae683ca1937acf284c6444702414fe1a685ccfdc12a4 SHA512 4403239badcdb5ea6e754e706472e25c4593a1fbdfc5a07e46409ea3dac41151020204167102dbf401a2e5f31b3731267bc3759be59a73880a022e5f4a3064fc
+DIST ciborium-io-0.2.1.crate 6679 BLAKE2B 1835b1002c2e5f6fb1cc36a6a1f1e3ee10423760646b00a75e5ee5e66dfd2892914705e4456ec440cde27dda04e28329febfbd5c640ec7f86e7c013a9a9d748d SHA512 8860de0a72f07d0d0bb84af3c24635193540c574cc87367c7379222bf97ed68648330511866810265b68076bd1146e0ddb41c269e62db669b1c3390aca679c50
+DIST ciborium-ll-0.2.1.crate 14649 BLAKE2B 02f5ddca41141e426492afe237ef439acca518c448a6f8daea650ceb925f6a13517819df88c93c979ed1ad9e8411cde400ff39ca288d2de8577ec870531453f3 SHA512 214550780734dcb0bb5dc999ecf22283850bf52ee4a9cfb58d86bdac9d4b80db32f0664eef71e8197e7e56a6643ff45d2974b9a36945db2c754a98df42adf9f8
+DIST clap-4.4.3.crate 55326 BLAKE2B c01506c62e2e2e64756435f747144bd354450a0e9fd039dcdfa0c5118bc0150be7cf26ccfc7ac0a56531035cac8b8d87bb3772b635d2e8cb97696de9ef9d2519 SHA512 75a40e911b2aed8633b553cf068898b598c6084903bb603fadbfd6e3ad8a077efdd3855d1a3771b8478da0f44d99902382d97994acddf5598f6ffbf71212cfe7
+DIST clap_builder-4.4.2.crate 162358 BLAKE2B afe7a9e1f62553a4c25617305b4060152e8a74b8ea8ba37fdb399ee1e4c4c8ae8d387fa81ffd6e9faa1f903da6add42b4711919c9b398770a41ddd9c60a4f4fa SHA512 58f211803ffcc9007aee856f2491b9ab823bea281d35a1f2f177beb8efb5419ea7fa6fe4bb6790f134c288194837bac13b695311b2521fba9f1d0f90608a8336
+DIST clap_lex-0.5.1.crate 11793 BLAKE2B 8e3d2dc120401fdd0cf0bf069119c8b7eafa13e5f682c56499062fc09acc05f443caafa6fca791ea53e693a83de69e98fd0488726a4170db037c37118ce0edf1 SHA512 ea5e49e9a8536093f7de89be30add7c3d880b232b0ce393b0429fd4402db2518036998689817bdfd472b6400224fd3c42fec1b5f8538dc433c31dadeb6281e80
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST content_inspector-0.2.4.crate 11386 BLAKE2B 2393cf83b2dd338ded7f5acd695e05a4a08fa639a52a8042dd0692be5e959cd1cc670472e25ca696a151d161c821eb899b2a950c74f4cb5b880bc42bc53d1d57 SHA512 1acb8b4f12ce3479f5a60b7b6a0c05b86548591e488e7be529c4a2f9aaa60a76ed07e7ce1e557664d31ddd9964e7f73415ad667cd14ada919f61511bf486ed6f
+DIST core-foundation-sys-0.8.4.crate 17725 BLAKE2B 8afe47838dc91c8848c0d6a96a604149e5f0762228dbc10c17b85e4e9cd2c3928712bd0b28e1071f5fd6fd76d4ef972cb86c6c929246fb6e84577776933a8ac7 SHA512 15da472316d6decc213e4e5f08ecd22a108ebefe427b890741de4f9199614f19123e64329da76de5e8b4c9ff74ffc31738fd929acc1460fc757b4aa1fd3fdbb6
+DIST criterion-0.5.1.crate 110088 BLAKE2B b99018b6a6f97fe47d90a2135e3d483ee624d43088d7881bafb2c35ba385629f1a4353110bf190c04903abc4ee99ad1735bc9c5afc6c2854a1aa9221fd714617 SHA512 6a1a32437bdb95f8472bafb5b04bb5999a6ff6fee4ca5965028ec53b4867d01b529241d01809a003722ec7d5710c323274b6f3b50ca0935919a9dee693f4d3b0
+DIST criterion-plot-0.5.0.crate 22706 BLAKE2B 28a50375f2871ce6f168aafabff46f4368bf55cac379c67a2b4396403259372759dba3355786e695b566b1cddee9091a469755a04c06ee949f00aee8e9a28699 SHA512 971e96dcc64a5afa7488f1a99475f0f5639c0ef63f9eeebcada351868697cbff397e99827cc07c0a52e7d7d1a87856fe1fc48c22075776b3bc9c94af62d79f14
+DIST crossbeam-deque-0.8.3.crate 21746 BLAKE2B c24025c65d7c1c98e442af95491749dd4f777af0509636ed66886dcf656359ec50dc2a5e26327559c6659f6b355d2b0b992dafa691a36571c99637cb47372d0f SHA512 f3201c9afef7d2d119702696f7e5e7997a104b8f7d67c7adebd1cbed84d3a3415636ff674f1ccdfd95d0dc162384e46c6138c8203ede69577b0d5359a4b44672
+DIST crossbeam-epoch-0.9.15.crate 48553 BLAKE2B 23aa0532d3126e22efc779859478098e505b4ec895c643530a3f7e8dba0543df3d8ffcb6825b1d3869a4418e17d798d464b3e1bb51522435d50f53ac224e22c8 SHA512 d9292c059ef1d156da52950137b2b3ea5eab66c4cc2f763d02078d0b0106980839ebed2ae2aec53e026ee7b3ddc37c4b51370d925ada1ad13d9981934daa7bde
+DIST crossbeam-utils-0.8.16.crate 42508 BLAKE2B dfaf9e7cade2cb5a2de90dc622e58a69c5b28fe9f69d3cbb945431683cf48fb409565190e3414a815563afb12631d990476919890fc482ce6b5792fdc25536a7 SHA512 4b8d599a8b93015eea2fd404cdf1526fbb94662fffc7c64d2f0659aeef349e4ad682f61b2b85d075c7f3fbbc4d8106cd7caf6e65dae117ba982f31262df3f831
+DIST datetime-0.5.2.crate 113732 BLAKE2B e9461220ae45b67fd20b925f1c8e0b3b66d980340fc01d4a36fbba2007100d5d3904b3307eb2e5e75b84bb182dd702e9a274cfe7c5a6f382c053beb7131fdd32 SHA512 7578d839bf8d673d15f1caf84266c45c42bc1efaca9067a4ca22c25bc4ad14b7fd8eb73425f5178e188485872a20f1fe153665331d409302bb1cb4aab6cff623
+DIST deranged-0.3.9.crate 17080 BLAKE2B a1441d629cb5d8ed75c49c25a42c144ecf5f6d060612b01bc2c78cde577f59fc3aed35b8b5629be50433244975fb4f98004ea99bad1177862d15c8695951dda1 SHA512 63abb2a6aaa770596caf96672c764e2f65b867653f9cd3fc268b4d2137afee7b3fc0618d83ab29c80c313e03455fb717a5015cfb33a69f95adeeddce723003fd
+DIST dunce-1.0.4.crate 8034 BLAKE2B e1e7ffbcf1e3632036c03303ab46fc37b2b0a991598790b2dc65d7a61341a78bf555230ccded8fbb87d6288282af3ed2a8641212a0f1fab929bf99298e878b6b SHA512 f57d9c53c177bac8e10a4b56ae421c604085aef0f264b8d6871abb7e1ff713b55f396c5c5f24422763319c504c6ea6a774416af1c2ba23ba7b67b2282f6731f8
+DIST either-1.9.0.crate 16660 BLAKE2B ad61038bfacb16f678fff5dd9ccf8f345e1bef18bd7aa0aa9c99d44abf8428939362f32fc8dbb1b60ac56016e0096201071d0bf8c0431b660605d0dfa97da466 SHA512 4978d50842386f51e31a47ad037d5e491106a668bc701bb833e6ec3998afe3ebd80efddc47756b2f300f534b39b26fc01386dc878d3b02cc8c1fec6a474c2177
+DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
+DIST errno-0.3.3.crate 10543 BLAKE2B 958e9d12766533ae9e84a60b121794929b9b3b1a8111aca9a2e914beee5784b64c946e143cd8031335ac9cb51069e51dbc9a6b61073a2ccfd3ff60612a20b619 SHA512 9524db39d0c9be287e0d2aed3358a86e961b2868717037212a2e9dc408bc73198ab23196d7923a9ba7e0e9357276075148f582e0325ad36ae1b212a8c674173e
+DIST errno-dragonfly-0.1.2.crate 1810 BLAKE2B 781fc26dce5c33d83b9a1fd9be2b2ce9ac2559aaa858957ba6777e143b1e44cdfee48e1b47e3c91a95075a51921d1a421d0b45eb3d8de827cf4dd0ad744a7d8c SHA512 f853f1e1b8dd0f359a8f9a0399b3384c1103cd090d96e2b2204f91a40d40a9eb99383d4aa6a11e5470c51557afacf452d4be2049600d4235d27f59870fa3b916
+DIST eza-0.18.6-manpages.tar.xz 7680 BLAKE2B 527c4168a3db228e2b64496aee1a85b659f62e732a4d938459eb06b92139673834a4db6ff3a19763608a52d315949dbaaded451d7821080813d79540805a75d4 SHA512 98293a498c590bee460483bf5092fb3b8be5435c76cd3e8bbabca68cccf5fdb0a7152612de3eca65faae138f861e6ac408331fcef154a97efc9db57343467edf
+DIST eza-0.18.6.tar.gz 1385830 BLAKE2B b2f2b3a72388a0b33ba80c206d32a52df36325c40dddf68420b70cf59a41769ffb54599ea5a021d0f28a5f7df795b6c98993104158c590a723d1fe50596201c1 SHA512 f7e492e19a74e66b63658734b2f01c3908ce5364c3ba50982c9dadb3f8c52137d86b341af71c4362388163a19cff0b21a04452d071100bac9b471498f8b2b266
+DIST fast-srgb8-1.0.0.crate 17214 BLAKE2B c5d2e04bf43fccdcd31d6f81cdcde3d89bf0ce94bbc506c2bc09c62b4e83469a2b72db0bb09f4cc2495ace7510834e7fe49df6aa7864092452d9f7865f35cc14 SHA512 834edef5eb4ec23b9e627b5e879a1649af19a17a1af0bae97c040869dbd14751ff3b29a606c52e5fe07b60f07fb695f328409c39788a4e74af0ab7b716688a0b
+DIST fastrand-2.0.0.crate 14402 BLAKE2B 8bf830151ec616dbc25f216265722e39f8a2cd9ae036b0904b73775a30497368aaf9bb7f49890c330024c3d9b8084749c91f601b60b53bc8cef2da8b0aa71322 SHA512 9449dd52e4b722d5747f68f127843c0d1a402765c2b6186b9526f8ae23293cb1f6b50adcbf18a8ea768292642184cb0eb42b1801d20f6815397903f9977f3cbc
+DIST filetime-0.2.22.crate 15029 BLAKE2B 068f4a84388d04d900bc5518a94895985ecba9c618a47b6483cabc31abd267e37ce69d78c51703ec5745307800d96ac801f37ac9959c60283c3c3d6ccd349c0a SHA512 d40d8baeb57ec85bb9ccf76ff0f898915c4e6cf384020121b53f4a2a1ef2840af5b4c9e8e1ff177034273f4f7a6bf81d2dd7a02cf498b61ea31ceaa30b877067
+DIST form_urlencoded-1.0.1.crate 8773 BLAKE2B e2d2224dbd85d053343aea29ef1bd540fb8be12fd600289e9c048e3b74bfb009d0770f8296556309ef756086f22feec4713dfed1006e1101075c8897be5471cc SHA512 3ab371c223561a27ffbd35cf648ef4a9145d47bba9d71900a7c54cfc2f089175e9361f6352331a9a7fa018923b15e7a3553c8f9ff9fae80e1626e641a5faff68
+DIST git2-0.18.2.crate 212536 BLAKE2B fffdea2d9a279ec6c371b03489f85039a50250bed9177ebb82090b74a7deddb988b3456ac7e7323be00822e3c243820839f00bd2478cc4d17d0d5d9ad943b4c6 SHA512 d7b7f61ee2c074da28b85bce8475d1b0b953e047ddea70d834fbcffc58a910f0fee3cb91b6e3a0e6fd14b76d142ea02909330db0266299b73c743463a8443a99
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST half-1.8.2.crate 41874 BLAKE2B c3c5c01771f05b7af652abb8e5490dde7afd04de130537e67845fe7ed58904e7ad66c7286a4e7deca3641876a6d12c5b6e95883fee2809c8e685d2f79cf96610 SHA512 5eb128e41b8b7f9769a669834b2f8380b115395bf2a2a181732bf6c71234d978dbc4c527fddadaa7bd7fae9add77958b27616bfa1767fd123d3cfb887663292e
+DIST hashbrown-0.14.2.crate 140080 BLAKE2B 4a9fc89d77940d116d781ac6ca2a07a8ba3146fed54bd5d304d5ccb7722d27c053bbd83ec5ef897f1a25db50f838b73421677fd92be5d534a91909a7ad390d3b SHA512 a611359ccc8d859a72e812b94123ff162f5653caa1839c5f5e3269ed18b5fe2b2c7b15b4f03ae8076a622d08090a90e747d8cbcdfce9cf7f317592f1a3695351
+DIST hermit-abi-0.3.2.crate 13783 BLAKE2B 43089507a5ca0731a9e9a54fdc8f4dd5f807244797eba5bdcc072c2c2b3761481df65b8cc65900769777d9d21f8345b502cb1915ec36747160e87f179469a661 SHA512 22901ec8976a7c96e93c9e07a2c5d3db49d7af60ce60c7ee6f61c3cbe93190d1f285e737c1c8b2236d540ab14e5d92e42828ec05f1b212332a862baf2b1b57f6
+DIST humantime-2.1.0.crate 16749 BLAKE2B e2ae8325b037fb175b9200cc5c1944ce579056c6662cce307beb6701894552362a25e371aad65f8fb9384945b48815ca74bb8b544a32e0a5845b7edd30b918c9 SHA512 3bf29ddd1391d82897c22baa0ff3ed58ef6d6959859f1f8ed54d324caba5b6fb4422e56790511ce82f902cd11467f93c8ab7fc7b0e0bdb719308a4d0a446ae0c
+DIST humantime-serde-1.1.1.crate 7886 BLAKE2B 4c66a483276e0cc5f4bd82fd49cfa0ee40c8ceda753919cfb7a8c794d098e9e4e851643fbc42a209d6ab00c5c62d9edc81c3bb1f6da218a09eafc96da9b566f6 SHA512 0bd72554e700f89506d2d1c8191832aed0065ea02aacb99e27139a60c883d3dbabb1fc3d60f499f5aeb20bd155fdcf21dc671aec1ca68d4041bf98ddf324248d
+DIST iana-time-zone-0.1.57.crate 19785 BLAKE2B 2304a63e4d3a477125ed07fccd5a84832f775c4a0fbd60a995e6f1850aaf3f5047c6f70975c9f6334f96def12770d470677e1f536e9817f8ab1df8a312622cfe SHA512 79bc0fe559dce022cd3c15ffc3b6f870c14a40de6d5a61b4a5a6ad28fe7efce82a16ac5102073a3510f3ba683843475f7fb8a4029bbafbc1cc25e48b98ce2fe8
+DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
+DIST idna-0.2.3.crate 271023 BLAKE2B 157ece18825fd3f8055581ccbd14191a6923da4c806ce51b3d6376682878db000a1b873f744c8e9e1966e4c1f8393643bcb603deae299ed0bd87847b0bd2c591 SHA512 1278bd561ce329e1dc7a6f24a10f83d9a068af5d15a088414f3921c6728b0d54f4d60d6f4d0d5a786596ad226263e1e50c3842f192d5758aa4665ba4ed5c269f
+DIST indexmap-2.1.0.crate 68224 BLAKE2B 9d833570cbb63ecae138ca234b998bd0e5b11b1a7e3d5ef4a21212bb32d0998395f1fc609f66860bdbab198081687630f583f5a2e495fac1afa40ff48bee8a0f SHA512 9d303eef918b9264b9fe326cc1d71f4095f7ed5639ed8696efa3e9be65dff2c50ada4495409e109e7718997db51ae1fd865cf8e88978107d7823faba14380600
+DIST is-terminal-0.4.9.crate 8109 BLAKE2B 0fa495da123f6fe5e3ba5f643f1ee097fc4f8e8aa54d9525b6108855a6a2e58556534a5e8dbfe7b5f8e2f1932003ac63f6aa3384317de7b385cf724bee294468 SHA512 0803ea53945715333d9b5fb18feec7230a49cb1a5f7308e2ea8d06a650e376794dd372be111e85622fd21320228706dd589423510dd010cd6ea112f185c46966
+DIST itertools-0.10.5.crate 115354 BLAKE2B f24734bdfedf1dba48554e39b43669efcd4a43656eeb2c511096060daeaf049e1ad3eab232e757057750ce94aabad9fc8a0cf29a997edc6c4b167301c3443391 SHA512 d03c3cfba9841776913bbb6daad0c8945830c155f32ae4b48872e0f937c75a443f0ac9a0355f43b359ff75232f38b15f4f6d446b4be30b00b4209cf66ef770c3
+DIST itoa-1.0.9.crate 10492 BLAKE2B 0d5acef9ae72d3f4b5a387d231952e6025def69da81d38269b4882bc534be7acadc073e526fd8bebdca898a98b2c741735c541e0b6a35ed0f8f8799b906b65b1 SHA512 95f7906edb7d6a2690389167f8c4d01bc37827205bca87d527f2eb33722419ed2f2e8afaa559cc5a0a7e7fac76515c9c44c71c42b536aa34b0e2858c40946b6d
+DIST jobserver-0.1.22.crate 21175 BLAKE2B dc0f20541fd14aa5c8b161cf36829a36e550ef414215417e25516ef1cf67cc1c7100cbe4ebcf8d2530e3245f8793a3ff11f407a0ec5d96385ecb6618e2de7a20 SHA512 ad3d180bb49fbaf51c9a2f40de0e2082947a0cb5bef95001bcc664e4c98f75a4c32a6c53f5eba90595e415b600aacae54d92c2f613dbeb8af94fa08b6d770d8b
+DIST js-sys-0.3.64.crate 80313 BLAKE2B 7cf5dcb2b9e0b63cb82771c9e98518a4cda70372c5aed07866a07d2aa51274622357e4b5a665499328f5a3c38f7c515303da50421bad4a496fbb658e2132325f SHA512 a4f389a4eb45c2122e7bcf365dccdce8fcf14b1b521b8b839746bba8783296e2f1b959d73bdd874743f49c61a24c4077dec52f63cc7d594cd42e9cd6ea9c2e64
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST libgit2-sys-0.16.2+1.7.2.crate 1773674 BLAKE2B 86eedb63c1d92a15cbe2ce735530b60abb3d915a9f6051f7a084b9f6e6402dbdbffad2a261689f5e5abc2353b7765a390eff7cb86e88e50fb4cfe4346487bb8b SHA512 45e23f66e1823c551b1f91d1466d971b05927e591684b35b75047ac5f7d23de889910b662ec403388b88a35dfd19b8ad9787481d36e10949e610aa02fcc35c40
+DIST libz-sys-1.1.2.crate 1339299 BLAKE2B c055fdcdeaff5d44cc95f6cef190094317644e4881f356e46b0c0347221ffb867afcd29ecd4d995bf397f714b705ce84cf34ab87010770e00b3aed1956fa46a0 SHA512 2342c738230ac570c61b466920e2ceafc0194381643540f094f6541917639a4f5b11d46d575bb03c7623ce109d376bafc3076a9d172233313e38cb6f49ed16db
+DIST line-wrap-0.1.1.crate 10010 BLAKE2B 8f64561931efdb39ef256b90ad12573df76449afadc11f38b5431c1fff73da3ef1dcf9ad8ba0c30cd1ef1b0a8d894a7b34327e4a5eccfea08051ae5abedb483e SHA512 31976e14355317bab470e6716542d3cfd59083a1808bb199dc2eddd51d05fab122ab054783d0996c1feb53bdb316e6fa24b34cae9ed8e8cdb2702bc43fd805eb
+DIST linux-raw-sys-0.4.11.crate 1413981 BLAKE2B 45172cc348e758bf87831b47d2d52ea43e781a738a59654dffc04cd5f1726efdd8d1e2376cdc247019b64d82d756f4739815422c353f54f081a2c539df02b5f4 SHA512 befe18ab06e5248ee89f0cb8fbc192a5564c15c9873672fea62754322d3c197563d9133b839d5222e6baa522ec1fafc48176ee605ec7954c5d93e52dfb6d9772
+DIST locale-0.2.2.crate 18910 BLAKE2B f34c69403d81c86c6b178f8f28271e39ddec59696d11eb17c40bdbbcfe9be697184237f2ee3fa4c7b703067cc8c6dbb999a60884f81378b394994c53426e11fc SHA512 ae542f8811405fac032029885a59d39c922da7c1b59e69f5e0d73047d05ed803475b3aa9b486cce47abfdac03f5892013b822e896794e6dd80329b4f105be28f
+DIST log-0.4.21.crate 43442 BLAKE2B 8429b3270794d3e2c7f7d5b58bd4fa1abb9d4807ab3a1ac980ac81c11d9544635003d8cf2e608c2c0094865459108a2879f280278e121df68d09bc1561d604ba SHA512 0becc1a06b6e7048cff6c0bb8df49a16ac4772133c00239e9e9459c0811e7715c500f440cf1a9aef8d7ad74f57434559ca9b55917f588b8e476cf36eb6d4e10b
+DIST matches-0.1.8.crate 2216 BLAKE2B f18176110921b1cf6e58d52d12f1d1a3455ce2dc04421fbf1b392f66cdd81a88e924571fa27e307a06301d83b04f3b8a0ca3ae40d2da6f2decb8aac4e2801fbb SHA512 98b58f6a2694b03a7dd1be69ebf7e3ad14483fc8e4cb6e6c26a4937e4e660e843efb4dd04a7312dd9659ca02acd3775678f73b8faac44a76ffafaf873c22f590
+DIST memchr-2.6.3.crate 94377 BLAKE2B 5f1603397d6703ddd9a1e68429cb6e9dae9021e14692c1e084f3b5c82d36645a1fa930c7a76b97df8e1919402fa7e1c621969ce85ce20c82b3087104afe18f25 SHA512 8d5e1425ea702a0950c95271dfd2e81610731496f77af0d683536b074a22922a7d7ec6da41577487d1d658e3b27257b7d1e142761b523e68760a2f5f24f049bc
+DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55
+DIST natord-1.0.9.crate 3866 BLAKE2B 8e8f576af50121e7571a1d919557ddc14a3c1511c12154a9cb74fa34cb5c2279406e1ae7ffb120242689e34d4f237d9548631f5a35f4f5d4369bafd8a728fcc6 SHA512 bf58eda54c759fecca1fd310bece370f26555bde1096081adc5bb1e9446a538f1652fb3049a52f898f4f62a2608805b72cb72dd52ff3fc9b88fe0a7c9071025a
+DIST normalize-line-endings-0.3.0.crate 5737 BLAKE2B 935b2d20ccd37ca7469641a37aa0ae9b6872715d6ee88d568d0ee16fb76416cb1a0c585cff861825de8cef11d864b1dc1b350911c28d64e071d8fb444bbdf740 SHA512 f8e2a6e333b0e8972febe8b9cf058c8d899c384fd177e0b6ef1c5f94e0fa18192963970cb1a2ba80e3135a8cca66cdae6796e4d84ac6b325bb369575bdfc6eea
+DIST num-traits-0.2.14.crate 45476 BLAKE2B ae310d9d5640acc3e45e1e5d1d2f519539795922c0058ee940c94c94b6654b39358b7c18dd23a276f2c1b16a30dd4de4cbc8575bcda6a5c11e70665d670e6439 SHA512 c3028eca9f7b718de0db3a36cf3e462bdba43562d52c9b809ed4cc0aa6af403aea542d6d4da743cd1dd541397815a3c5a84cef4d6e40122994e4be6a62319b2e
+DIST number_prefix-0.4.0.crate 6922 BLAKE2B 81bd3b588c788e6865104e5ce87119b5e0c5a526042963d52cd582ff23c2f8c9f32b4c445ef0397fc402b6d047e031d8e2c67ac97e191bde22e17662eec3a554 SHA512 a43b668d7314218b86ca7451daa9dfef71f6c9f6616bc34c12d94ae6030f182bcca9da83905cb46f3d49d0aa81385a787e92e4f3ae239658067adc249f8174df
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST oorandom-11.1.3.crate 10068 BLAKE2B 443ced49f63015823866257a36a88e566f75adaa79511c1c73f1190ec8855ca590d2b6ece07c2ad5e9e47a89f7891af6e9e43b7d74d9ac57cb3551e60b50aca1 SHA512 51ae60ef51da56d7673f36a6c5b99b743580c5f5be54fdcb54b69e5e2f6bbba3267f96b74e7cd6dee6962dfa6696fd9ed073f22726a2861b8f2601946a8efab9
+DIST openssl-src-111.26.0+1.1.1u.crate 5110372 BLAKE2B 34b2641303b676e2254eb9a754812b40f9fd32f02e4f851b006b3d09ccc2f29e206b4f30f49f8f1bbb3de1ce3f01e4ff15791705e663eddc09c8cbd6b314f891 SHA512 b5f663e3a05a620d75d587c69cbdaf316f9c4243f013bc6e5f4be812e4bea1b67a2b01ccb4575d9b7242b9900e106eba71f732afcdba47f82c8bfa570d258b5d
+DIST openssl-sys-0.9.61.crate 52010 BLAKE2B 4746fdfffb1f0cf626ff0fe93e3057bafd8277c6469f577e37370010d5267b0f9bde8a91279e9f8d0ca0b93cad2231153ca07d667fb3b7c8feb637a04dbc352c SHA512 0ef36b2483163af083465ba9e84586ac0c2068285a8b3f1ad1e6a2831361722132d1d008791d969be669ab1131500416852813bb431307a484c1a277b5ab9abd
+DIST os_pipe-1.1.4.crate 11436 BLAKE2B 215f548a5b16854e156f785a1cc57ff16c241b50223c75159081017889cfe718d6dbdc6567dfc751d71eebda7476c95701c8ae88b1320a0cbba66a694b471d08 SHA512 8568008e30fdc47c1c89f7368654d26407fb6594cd89e2b85786c875d9dd99e77ed2bb84d281351072670e2dfe7a952d6251c6fb4d111ebe6a63cb34942b6aa3
+DIST palette-0.7.5.crate 204746 BLAKE2B bd5bbe4bf8bdc7428834a72513901d40edd7f0027591f8c3ce46412bb42837f473a35b56a45d6a6a71cba693a301c9ad0b4eff0b59cf025f00b0031ec1b050d4 SHA512 b6cc7e9c1ff1302a6827de905450e38a1cc66d97c803add57deeca9f40c565db61b0ac59b6d627e1491b6f221878c2323af5cc6ca05cfeb9554918e9d9c89efe
+DIST palette_derive-0.7.5.crate 14285 BLAKE2B be50b33a675c46ae62021b4c9e3b4f413b8f9d251a1ee2bd01633877e24e4c880ee6bcc13d4385110d96a1d7c3c53edbb8c46fd0878b97a94c61359349dae96a SHA512 13fa53ae40aea409c94675c119228e39a4602ad50015d8a44b2a394c919dbbb4d719e0aa60fc3fe804d2abe54f405ed0097ff66230e73022227811b7520e49a6
+DIST partition-identity-0.3.0.crate 6711 BLAKE2B 4dbe9e11684099b4cce4e077eb0b8a7942ea166d7f7d094a76f9ef79e52bb03299f9ef52a5badfa5b168e3144dbfb446096ccd06d4b81cfaf7718dbca293901d SHA512 153843ea6c6a76fed350a24fad206304aa88f66755737c50b9f17bea3be434b7fe8940fdb8e31d43415accd4435c6b0c16f5ffcb5d5a1da72cdb8056c7b66bdb
+DIST path-clean-1.0.1.crate 4514 BLAKE2B f35919495573266fda5a68a0de68b7dd751f946b9ed670f369b6c374190fd1a4d1e392d112127b55c5b4ce30237ad7b6e099ae36f8a5393517792a23bf6a7964 SHA512 27ec9449a574d18ec4609147aceb02c0eac98600c15c5c2d5784f7de747479881a83dbc9e12ad07d497944c73d67bd946e5013c7c2cf1125c1931c3c84bb3274
+DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
+DIST phf-0.11.2.crate 21569 BLAKE2B c809201298f1c5046874b3bbdd30e33f2bee2e4b977152a2c5faa91019ee5a1c8fe1d42cf91f6d0b0dd52015fc66f0a84c1b3ae014291ad7d5ba647a78debded SHA512 97752bfb44f3d1f9347b4ccfb6fa2fb80b3263d6f67aa703c52ae90d693c537a0db878acef828c79bd4c41e8f7ca0ea45588dee073d12c9bb0f2980c511b65b4
+DIST phf_generator-0.11.2.crate 14190 BLAKE2B a20d6d3d815ca0eb5ef18780587b9963459887a3ddfe3408c99f5ad7c382da014cc0bbbdca24fe13c780460f3e4ec4580665004afbd300fa470a91d3becf1a5f SHA512 122ee5ddb1f65f386d35e438396eafb7c9f2b1254daa11aefe0a6a45aa0662190c0b7fce32b6e003b04d022e60c2af4e355f995d5ddbd1b58df93eedacb809b3
+DIST phf_macros-0.11.2.crate 4748 BLAKE2B 643942f8e83dcf5623f3479d677ee11c7e25a87e9e90f2aa3b43a75398e6d956613257046f5b307476f605b433c5ae443832223ff1319a918fcf3f9602ce291d SHA512 ea6acfc43491af1330d32860103ad60f29566f6c32d43bbef254f23da0f17cc3723b1d04153fa41f82c01d3865e0e16156b9d2dcbe6a52532b8f268f3a55df7c
+DIST phf_shared-0.11.2.crate 14284 BLAKE2B 3c3bbd24de77b032d194d0b0679a84a4e2848d41ceea5552f73e51e3ebddd5e61188393f126f668689dccbbfa92a8accd9c09a77de39eeaf72b8993dae280dcf SHA512 f2cf9e8ceabde75bb7548e5a47dece9a8fb7eea4a6c5568675e7bd735860c3e51181d749a26cd3dcad1476ec22d524ccb77a956dd267cd0f2b7dfb81db9abcbe
+DIST pkg-config-0.3.19.crate 15451 BLAKE2B dc23b5ef12719b4b3d2fc5c93c087399ba954a5e127be91b26619466d5d7422e71684d02905304dca65273d69b66338d94c0642e3810a14df845ef507ddc0bfb SHA512 42bc13c4e39c8f71690db527d815884acdfd2ccf5fbfea700c6ed60257e852cdcb1c443e7774409e51da53612b0ff0aa165554b99fd0cba973f94a8df52982d9
+DIST plist-1.6.0.crate 47932 BLAKE2B 1996f016b12205fee8a22d52e78d5fccd309407728bc7ef516d7c54e998e76051f405032cc9fd72b8f2d81d509ce6e0aff28e088fe97e1f222e5af0f18a43705 SHA512 025f7a04cc0f16a3f44af0c63b5fbad49bcb7227460ba4e7849499a4436836b86d331c81c936ed246ee700fa2556598f9f745c1d2bf5196e0222625db0a2633b
+DIST plotters-0.3.5.crate 143975 BLAKE2B 57b9b37d9e5f43f12f1bbd95d0c0789a09b2f34b30278c62d8637f341a901ac4c0d70ce4a4f869429a43cafaab637d2f25af3eff12354b0e85b184f439c91320 SHA512 38bd608db346161ffa04c50aa315bf5d5eb2840490c5ad6722b9e294b8aacc3c434a1c6de073d2a29cb34de6cdc6260a227f9b7995ffbe75fbb8783708f50045
+DIST plotters-backend-0.3.5.crate 13440 BLAKE2B 72ba042a2057f7afebad34a794df17a0c340ae0d15af2631a3f3abbe117dd8a8d17f877dd935ad59f33494c523664cbd4fc11e05f6c7ae0c495b5e9d4c4a8708 SHA512 4468e2619d7fe47cd03fefa8b1d901ddf5cd47b2899b4b9082cfb695f315cbe415fd57efbef6e0a67eb51dd8edad530c15442810fbb87dfc4b7943b1a7f55460
+DIST plotters-svg-0.3.5.crate 6948 BLAKE2B 1e8df5cdf68b1e27e22ef2f383a81caf76ab598d09f31c536e86c543df78a609a33c3c426660a34a37d1313cc2937b0c678c5e1e43fd3d65bce95b59b2531935 SHA512 91c4955f62dbb8d80e01e5cbdc7ad5f1869be6025de1d2baeeb9198fb108ad8f01916cdc0728b7123ed9217abe92cdd8ad30116dd454312c8f63bf9cec98644a
+DIST powerfmt-0.2.0.crate 15165 BLAKE2B a3e1ce63f5866f75526eeb749bec6607e42cb495bbb953082cde7e98e6aa429ecaa41889d98ff7ed4cf5031258b4f7e0553ff8fc435b3b6f8b4ef2b6d53d9b61 SHA512 0623f92e4d6ab284b3f6dae58220d79d9185df4a738999d68040c50d72fe0380d70358cb622f079c629bab53bb03c6e085e165d5bddfbeea84245864fed90029
+DIST proc-macro2-1.0.66.crate 43575 BLAKE2B 9eb3e816b00fcf625c280ba14ad269f5893d0523473a24de07c21945f6f932fbd08efb3c339b35d903245510e3f065e1478439b024a325f2bb9f97bc7bcbb18d SHA512 85f5a762f9411142e5ac28144bd380f07f0633ed2e44d8a2545be9fb8f42abaca6b5d45631b4be83b8e8b9beca7438bc52f25615c3a410a3a1249474b1aca407
+DIST proc-mounts-0.3.0.crate 8363 BLAKE2B 928790cd65ae64cbc434e1bd6f1f8335d920c82f888f89f6d03241a79efc6df8b1412971eba053867a744a2cfe6226b7d2a9a228e82f95d7a124f21018ef4a21 SHA512 c66ae15b5a3313a346929ff7bf2b9bfe8e588c9f6996b7f921afb7320e17c73d024cfe00b247f49a0e4703829c37b73c540cd7fd3711bee1bd8c56ab32e7b0fb
+DIST quick-xml-0.31.0.crate 172236 BLAKE2B b83c7f485a30576027a4ae77aa23cd6284942d786f0f0a14faafdfecff646371ba15133b3ba90f820183c8537c8ac47ad3e1e7deaad65e56761bc662be406026 SHA512 9b1f4f9c32694ccb244938a9a4e9373c3902314afb6af5d2f6b1be55e5ec63fee5cf1085f8f32161570cc10fdd96f3375c7564b1d884bb152542b86593f175de
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST rayon-1.9.0.crate 177770 BLAKE2B 34e20aeb82a548bd80b8ab3faf8fd870201ba3d67f9618e5493332a3c43bcf1443c027b8ccc76cec8df6bff852434531a01c8490f829f57df5cfbc3d8a6e8a42 SHA512 c9763503fb135eefdebebb82d4d19d20e48a182f1125030a7df085ebda4184942d9057598194ab8e8d39b942c83c231834b10a677e89badb6305a2b571fc1abc
+DIST rayon-core-1.12.1.crate 70701 BLAKE2B a32eb9ae9a71b4f0881f7bfd5375aa7db5681f20f7e0b25e6ecb3161f2aad36b93026c1691d02bf298a48ea07ec9475a237fba457ed0b0b8624aebab2b4988df SHA512 33d0297b682f131c50e1eabc3be583211a5abe790301cbca91bf510e43d6714b7564ca39fab7c4bf6f02aa0df6bb394f386a61320f21ddb6bd7aea1372b5e99e
+DIST redox_syscall-0.1.57.crate 17087 BLAKE2B 88e3ffcfd752e757f8fadfd4edca367f9185f09e609c329bb36f179183cf103dc182aae701c14afb717d2b4c3d72ba307b49fc671cc97aa7c9d03df1a7a1835f SHA512 c6e187087060084b7173ed0d9d0e982e4259d4f76522112268c02ff20751382e3bc8e119da6153170f5c54bd5b9cb028910f2f85c1c842099205dccd44659184
+DIST redox_syscall-0.3.5.crate 23404 BLAKE2B 85aa4299d9816666bf576f523da5cdeae87b3c8fbb2af103e82258d23f73303c068a4b6c3ef4117ad67958cb31e41f836a9f59f2ce1bc52c23605e34399afcf1 SHA512 16f8f4766932bb54e4740cfdb4f0802f76246c0bf88c1d76c69c115949b124b625d8c3b85d8947073c2e9544f425aa16c10f71fabe3c03d29e424c47fe4ccdde
+DIST regex-1.9.5.crate 253883 BLAKE2B aeb05371251aaa0fd11dce1f22ea095345b3b1e68d9d5e083b4b8b0b938d0d901b3bade66015bec830db3ee71d0d2ccac09b842ff9919e08b0e98112ea1897be SHA512 79b921edc977dc98bd07e89dc17873c8a1088473ddf941504973259bb8c46ad11bbe3818fb88a7ed07b86841206c322a9555033d0a5dfebb18fcae45e07ea53e
+DIST regex-automata-0.3.8.crate 610113 BLAKE2B 1aebbca26e76e85b42b035fa9ba02f98425b75fdeeec0f12c1c08e8f4a320c64d36c129c692e622256d7f8772052041c47df1aff165d8337d55d61770963a777 SHA512 47ad01be2c51fd510576e14f399b7f30d379a2cce2dbef3af4ee3e609859451082885132ae703c810e2b19bb3716976356e057a1a592ed507146aff9e7138dac
+DIST regex-syntax-0.7.5.crate 343366 BLAKE2B af07596e45e3525ffd253d6070ddad08dffc8f0409ea14843a135646da8b37a7a568c12ede809d9fa47eec2329f68da7a3b3c0e0cabfa200de64affe6ecefee3 SHA512 6388dbf68c8c86d8a5bd8cfb13a86e9ab2da1a339fd607c1a16848f85dd21c85d744d694c7b918954ea27eeefc90b589926c9da464343fb78ab639a5e2925efd
+DIST rustix-0.38.21.crate 358962 BLAKE2B b3e4915385aaa1783e0024caee2c454d9ce66542ffdb9ab0f0ef02f07b6d583a49b29b25a604832903f7909a0362bcd2260958cfe3fe045af4df2ea5c62c1da8 SHA512 f3b147706e1befb9d743bb57c7f8dc0a1ca8f244ed98069dfc757ee9d7281f097531bf7d1028d21ac798ee27bfb07b2ea6ac395dd0bc6caef4647fac88669833
+DIST ryu-1.0.15.crate 46906 BLAKE2B 6d6949e43aaa27fba0ec6002fa11ba859af8d867f87c90d88413267186abbf6302b817985bca3d577ab3fab2e319e11756f144473a16330dfd8fc7b604cdc4b3 SHA512 4655b5647f919082a9b84b889539ae7fb23a1201057cf280efe79c58cb5f040864efb7812cda5021bf6d34838a15d173ac8bdb0fb9fa2dba85173d3efa5a826b
+DIST safemem-0.3.3.crate 7778 BLAKE2B 6ebc0e234054919687e8a369bc30ca6b007d0e4f8147157ba1a90c290b7f0b490e5c21a6d4406671e26ac073f9e4e06a2bc9b1f21eb152b05c4022a3a4ef3793 SHA512 2e4852ca91160f9f1e764b75145d794726a5f6c162cc99ecbf9cae20474a06cb3a0dfc245b895c51342240f6875423010b33e36d038b8b419a37e4820a9caf72
+DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST serde-1.0.188.crate 76230 BLAKE2B 81e92adf17e3f2ce73c82e3069b8fd656211cfeb6755abd338b74d52f748f5bba6690abf5c83ea2a126fbd6187bc587b539f0ebcf621e928085876f28fbb9513 SHA512 7d42ce834bcd1034f8ccbcd6646cc93f8e189e344f29f4d7b0ab148ba11ce7848d0ab986dce7a0245fcd6893243f5768f7bc0ca9c24c75c53585ecc899d312d2
+DIST serde_derive-1.0.188.crate 55563 BLAKE2B 3b24044915a704d9d8a2cae6e6547ecffea7ee3fd4260ddb2bf7fa38b23fd7fc597b61ac28bf65b9f0d45e18ffd6bc7596f5a3d602cc79835697fb3f5440242f SHA512 fa9132a319f7829e6afad65289031be99255466d76270875d9d81f82f63e53592eaef5452d0df38da92e9d0b6f2b37e91026635fff4bf597b0ae662b71b5eff0
+DIST serde_json-1.0.107.crate 146458 BLAKE2B 753be6076826ee0ba41a067e81c031e6fd69b539086a2d649e6595136fd05d61b717c3d4cb6774af0a0c02102f7f4588e682bd21732450afa93877d093596880 SHA512 ecd4ef86538df402f2a397cb86c5b4b277a9a43d742e2af3d51ab5ac0ba31c677bfc72db06c10f8abbc970ee41d5f77d758f1f70ea18495d96bf78cb7d66c2bc
+DIST serde_spanned-0.6.5.crate 8349 BLAKE2B f4f8f798ae3a02c0d5178aa12a94bd1bc08fef88b6a81d782ba07ba36fb0d89927ecf621087faf376b6e53de12f6a96e0880ce0cd01ecc31c5dab7dadc6f3ff4 SHA512 bffe2398629ae5a5a5bb6d5fc2fa0f4b94d02c96e25d1be2fb9ad95d8ca2fa9bfdeb3af11049ee9c050e497f3beca108f03020f88f6de29b208063c3898af354
+DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
+DIST similar-2.2.1.crate 51147 BLAKE2B c86005ff69a14980db2cb90b13ed908448a711f09d1ee20a109d1dab2cc5bd839274f3803082721f1d81003c9011efdadcd190f4cb46eb09b26e338107546f45 SHA512 9a353bfbe495bab83e401314bb97c6605fa6283af06e03bad50bc429388c7abf44bb9cc68db781ef2b786840eb444907f35b70b17343b2cb993800536b4e36a2
+DIST siphasher-0.3.11.crate 10442 BLAKE2B 771221614bbd56f609b9743da4352dc7a2cbd0f6257952fab0cd052e5e5b258a4c95a0461d6d1b579dec90b72d66a0e58e036899b3db8341ae753a421a4cd4d5 SHA512 601121bd41da896142dc6ccc74a6eec3ebee3e976857ab8b5d21e915fdc8bc6e979af66a489c406371fbbbfc7a13338cc4b3744aa981206e43c53998f3e1699b
+DIST snapbox-0.5.5.crate 49091 BLAKE2B 1a5b996dfb3f8660dca6dbf5f9cb1a5dbbdee6f86a5d31b921c7d99827d1b230cd5513086539f0d6d9b26e17227217a84f2340124de7ca4a057074af64d0bf11 SHA512 f0ac51aca51158025783f95761cd454aa6104022abea2e05fcc87021cde1a5f545c1653d101b437aa80eb64fca36f5a13198c8515e8b0fc33b13d0777fec4615
+DIST snapbox-macros-0.3.8.crate 6328 BLAKE2B 217515d52debafcda4bbd3cca583c4e029758a54640d726c2c0230062cbbbf4c4b0e97a82fe56a2813a793f799879d8284c62b3cf985ae72e399db7556f317e1 SHA512 a0d4d923a5b64db9794b51c553e011af80ea7f86d797a4af8a81c7ac097808f42c00579225cecace46aea9e818d3b4fe00ebeddaae291c3a4bed61c77e6bbfe4
+DIST syn-2.0.29.crate 241664 BLAKE2B 5b339433249d7ee17b032cc9ecb118169957d91f438619940aeba0003ab0015b01cc6afb00656b5492539a5396325ec16c37e33764b00d6f9b8dc6b5b5e6a9f0 SHA512 a6319ee743a7690c7858da8492ffb6a963d102beba07009e82b08082d33ac8e8ea2675bdfc3ac3684392b3bc3d7f2624983dc508dd8b8f1fb9a57ec8a5b82828
+DIST tempfile-3.8.0.crate 31720 BLAKE2B ac975555bb4957f91e7d5733ef737bf25c62a738096457afa05079ed038de5e7144cbfd0e28bacd3eeb832de611616fb39ec07866481205c1f5c1005b2869d31 SHA512 8bc8e954bc0c6af46cf6e77d70f93583baea39fce54b111f4bba51fe5d5e5c184753ae2a2ea68a882b6ba5a157a57aeffeecc3e3cae86d78d952f3aa025fdf7f
+DIST terminal_size-0.3.0.crate 10096 BLAKE2B 097ef50a85945128dcfa36d8ea0fb15f11142c206462a32980dbbba4fe2872abd214823fe3c75e804f3159a97d6e929ec338860e9c89587da509fb9e6da5d339 SHA512 f3bc9144aa8a87556543584a2495df6267ce3bb017f3ed3d00fa43e89b5de783e1285ca62dbad9dd9c3b37e3a476a6f3ab0804eba2411cb594a569bbdb310681
+DIST thiserror-1.0.48.crate 18862 BLAKE2B b98d63646526e1ed0baf27a17faacee3d8be34421f6fb211d4e1909965a3a327440c0b97c4aba423f416c5a849a47a1d42623a6e64ae27d2236706dc9a30a783 SHA512 078427d19a28f59aaca27f508795cfb06c024b5a34dfc83360c3bec2b8f7abe474706a41fb68732998f154507921beb03dd033f0a6d1dcfcee03b1f2adb8a0b2
+DIST thiserror-impl-1.0.48.crate 15096 BLAKE2B 6b5eed1102256f2c809c21201cf319cc8eed11ab1dd04e6b6bf9759c8eb32e58f0c88407e7c515ac801cea69abfa3bba0c4ee98b034459129f322f6918e9e168 SHA512 6826e242445fba8beb16325fe2e0ad0423b84aae6c1a035dca85e6e07d2b62be8879cb1a0a2b307602d330ad83530260a2480123c9ac5cde59157f74ffd665b7
+DIST time-0.3.30.crate 120289 BLAKE2B 917b71ea8362ca14f2564706919e7e62ebd3e8024d48ebcd9ac9799368a12f425b982a7739a73c025155d5dd0650ef8c9fd4642c60a9111294cad7ac2e30672c SHA512 268f0c779e2a44431932aa407f39878ff1412e287f9678574537fe7185f12faf7605c5ef433aa6d364bf77894e819ff3953f870ef7ad208b7203f1c58eccc4e5
+DIST time-core-0.1.2.crate 7191 BLAKE2B c477ad3410ff29f3bf4a38fc6ac4a043d49b6d2bdf5cf309ffcd2eec3bb6e4c4b62156ee7f069f0b37ea31c163bc75ccbf35abc1db2833cdd4912135e60ddfc9 SHA512 3861724c23cb806829a01186deb5217ae8252c20af622975264e6670cff528f42155039e4937756a9eb312a5580ffab07949437d5504d684a0e70755046cac52
+DIST time-macros-0.2.15.crate 23568 BLAKE2B ed16207f302e03095e726f0087f9f7c1514cd71b68a17ac804424c526349838171f3bda62d442b8429a89adb084cca1a4117828c3d66d20f2ff8272d7cb2d3a6 SHA512 d6da54996ab99a46b2b2cef83cec62eca2462490db439ba9814502f7d5ecc3018eb266b29453d601677a0ef39797da77a106d407e0e5de3b110ec1c5ae2f3c6b
+DIST timeago-0.4.2.crate 18821 BLAKE2B 3669505354a6a3611fcea12e246318cdae805c23492f891cac879c08dc7b616f6843384d7debdbf76a7f598dc33cbfa6c71e23b0983ce826162bb5176542cc4a SHA512 f1f8c63b4f42463068478d3eac661d0431204ca65ca0a63d29d93af587c40a4c4912e3f027e37dc3344591e30362d49fb3b770a14ac0d8120d8e08fd5fe97e4c
+DIST tinytemplate-1.2.1.crate 26490 BLAKE2B af39d96f33f63238e455a4e38fde1d1730fd9661ae68be7b05df6ef9d2ab1a04db1332cc4ec9deb6da3a8e22b124df81b0fa8916d8491b808742bb733c8e48be SHA512 0cc080057e096f0796e72004343e1a8332c2e8a12e43f6ade150ebf632e9c29c7ad04de0b940cd57df81efdc4d07a6607da9b86a30d8383e39ac3d7be185edb9
+DIST tinyvec-1.2.0.crate 41625 BLAKE2B d7ffe63aa2f076ecf57a2c8af3269abc7c811b7e19c3bb6ce4830f9d12a9942620a43786f4f578000d01883a9cc33105619e4357b29d64babb9d6313ad99bbd1 SHA512 eae5ef44a90995a3e7186e52c1d90447f677b9b6db2f4e120e5c32f2077f324f000a16474e347eae702b7fa2a487f3e5ff06baa2082f3904ecf404c27ceae74e
+DIST tinyvec_macros-0.1.0.crate 1817 BLAKE2B a3d1966bf57c11afcd026269135a6189f149f905bb70b47537c0a7bcaef0bfc6c89bdcbdb0f6cb8e5255632855134631c683fc90606a254ec8ba818fd5ef0794 SHA512 d6afc83a3c70cde916a6ff599e2772588e4bbfa7a5b1c7e5c8aa0f4a8a5c9426182497a644e4a88194ece986d38fa64b6c8eda9eb1630441c8e65a8741a45873
+DIST toml_datetime-0.6.5.crate 10910 BLAKE2B 93a21ab2784e96ee2e6b56c7b4f733f6ac4c68c1e7d7dac3fbd8aceedb3580e25b4a9c7d9c3f9b5ed152560353b3e80906e37824956dc4ea90bc6f039768f6cb SHA512 502bdedbcbd2ac9fbaa5f4b51f2e409af185f3633f01f8845de5e3b007f2400215ddeb82ac588bc915ed5a5f9d7251ccf93fe2a57cd40fca2927f4c0966357e6
+DIST toml_edit-0.22.6.crate 103304 BLAKE2B 93f14ec5e0765673b4621216707605d7c2afef82d0ad9fe1e0c660be62fb65a59e91db3144c7bf04c71cf5848dc970447b3b31255125d3a2be94ababb3d82692 SHA512 9816338008f2727fd53d34164c0be16621b61e22ac4838752839af4bd09e4d361f319bbd188c5732c1af140358d73d645e05faf4d655eb295d6c331293b7f2d2
+DIST trycmd-0.15.0.crate 33990 BLAKE2B a206f2adca22972ba59b348db7b62b4beba111c300a7faef80483c9458221b25d2f6dc0f63ae75b0f6fa896dfda6487065374a2312ae493b5b912c099b81639e SHA512 4b63bac98a5c609e17d7bb6cad6b052a512799fe3fb49e68e4e19bb0a031f0098356a6a72582c115de636681b6826ed277ab47547f28bef2da692560c0c95743
+DIST unicode-bidi-0.3.5.crate 33423 BLAKE2B 26434df7646ca6fc3b655ac2482c2be70700bd84fdd31d016f49b5276b23308d1f9258d40ff97a4090e3dd603d3a19f8fe45c13c5dcde6b00816dcee1695c7d3 SHA512 4541d84db17eef16da6ea59f1ff7103549ff338d6ffabef21e75fbfcfdb1a3fd0f8e8fe18abab7b6117e997cefeaa5e87fb01fed8fedbcd0657fc913743de8ad
+DIST unicode-ident-1.0.11.crate 42067 BLAKE2B 3c7cac3d2bf1cbf1cf04716a482f130123e8e6940f7a90a17bc62fca44ac0069688165538f5329b95a72f735b594cfb85e3250738393ffd1b53cb0cd95077d89 SHA512 9682bbee339fb987c9d0bb6a54406d37b28b5c3587372d406402e4341900fec97e3234cd03b5c98b90b6378fd533dc452cac3de90d3ade19c4b09657e4abf6df
+DIST unicode-normalization-0.1.17.crate 100345 BLAKE2B 2579748ab87f6d74ab8e845d88c1990e4ef32e46e38f9a1841e3381d257d973f2f8a9da359c8e3f11790a888acf81f548ed3b749a67bb3e95acf3b744dd063f3 SHA512 727b4844a4eb103375dff7d88d620e1fb581cbdf2523f07a5c1673ff333d772d48ffae7658bfe4816a5bb42de5f68a96e15be9341c540a0f746c2990eeccb3d6
+DIST unicode-width-0.1.11.crate 19187 BLAKE2B 6baf7f3b32eb838925e591792abfe11968206d177facefb89ef51daf44c18f3fef1e41c19a47b88b81be50667af626af2024ccc540b240fb6e1d83fdea57076f SHA512 ee06f4144525424327a17578642565f396802f0eea539b3bebc8d9627376a8bc6c5376d83a6ee577068e99fe75815bd765e6d49fb9ab9b253d00594bb15a5ffe
+DIST url-2.2.1.crate 65434 BLAKE2B e9180c56afaf9dd781812b3650b28cee14a2330629e708bb8a67144f6c12e3781d07fae68166990bebaae60190a1a88dfa1d087d4982ed04d8cdfa59ae4a0d7e SHA512 f2065e68dd917cc174c222a44127ac10a59d25a87ccce6b88ac1e1e775856fd7d5931d728296db355117f94e71e12404fdd68a283545b543a2e00a659a6997ed
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST uutils_term_grid-0.6.0.crate 10904 BLAKE2B 9779eac591c1e9b2e60630fbd49350d171b11fabe2e0d0df64e2c46da186afa579808ea052c8bb5db02f174a8548905dbcaf3b002fc3f240a1fe469cd739c99e SHA512 9d169a6eacc368824924c49d7f4847927f633c6492d921735deedcefc02c53664b094e8d736fe45b1d9085d5c99ea3ec676f25221a2cf2e81ce4c5f261ad40ab
+DIST uzers-0.11.3.crate 22745 BLAKE2B 59a64624c1a59dff483e28f1b80499191c9a860dcb00e4f27c5c39942ba5a1ec6a4fbe98bb585fca079f4594a57fb24db41675e1aac87fb4873e6056ef13c98f SHA512 3a4eb2d2479550bb34319d2d3841f1e4a5b024dd85193ce127a90479b3d801880d9d3624caa265aaaf9908c7dea73fd7da5780c12c2984db3db04ce45668d97d
+DIST vcpkg-0.2.12.crate 15530 BLAKE2B 23ee1a34064f19b67232c417a11093f01624b1ddb6aa572ac67ec125dd3f784036e68b58078607e028028e7c7e787c40a158d99cf120b8b80fd8d18c18a07a74 SHA512 33076b42cc83fa614fde2cbcfe1bc5426c99fe3707c129e6c2b7aa16afe3bbf6ada027ac35cc70bc432df25e6a4f6086d251effceae373b6efc23c6a6fb2ff46
+DIST wait-timeout-0.2.0.crate 12441 BLAKE2B a99d3f57bc6e784ac06167f98b2dc2841f730dfab4fb9772b15e67707f756d6ba7daeb3e992d32291bed3daa85eaa8a8ddde64db5e1acf1cc4031fc9bdc82212 SHA512 db3b7aa2acfd44e64451042b8ba98eecab77a82aa5c58ed08dadb119ab36dee4e26d62baad7978ed56d5ad03019c96be5021455362290f56043981137bac8066
+DIST walkdir-2.4.0.crate 23550 BLAKE2B b4298c01cb38be0479b7ddfee627af01f889b6b6ff432e368bb67f65134c3958a4fe271a5a7dd61b19259ae88f5680e5ce8e12e50a872b05fcba68f59b7073ec SHA512 09e1bc852c01b452c95b26a369831a97bc5c9e0ada3111c73774570dd73bb5b9e4735317d5572304fb48dca44ce7b9f77bbd17c418b6b047b2ab17b8bb42d9d9
+DIST wasm-bindgen-0.2.87.crate 175052 BLAKE2B bf8cf4aa1786ac5c2ba76e80500b5c54313adf9690ef370e60b894401bd1b81416da7bb46b90c014412c96f30f995bd1e52cf7f3a6be1111aea40866e8178396 SHA512 0c3099155ef079d2b91d2d5b135243d687bf865cdd9ae9d97d8cc2eb4c9bf7439b66b28d5b1d7e95048e53be63ed4909b6b3f2427951348de25ca7abb7a03705
+DIST wasm-bindgen-backend-0.2.87.crate 26821 BLAKE2B e230aa256a1f681ab3ffd2c83c3f6a810c305bb79a5e1d806b8b2b9f54ef0babc83809f6153b9ca511faa4b122f80bd1cc9eb97e7ae3cb4cba9e2dc1c6bd0b51 SHA512 317ee2bdf85067cb7f4b4ed6ff475ff9e5063143e9b7c8a28572211c09025935815227c4afa8c92823ac92102562d4d34531aa4891d8c922048d37e27377ee94
+DIST wasm-bindgen-macro-0.2.87.crate 13897 BLAKE2B 0926975b0328cdd5525820358795b7b68b4ab9dc460715ed84e5d276e76e936057140efb1ba875acf25f3d2862e680f9827bd05cc47560d54f7ec673f30244cb SHA512 af366d8d853b280014cdf5286f3b1f6d7fb0837ce6e359a81cb6f85161537c8e2cd06d7f893c957f5bf1548d34084d33a213670b471937782b56033a23cb15a6
+DIST wasm-bindgen-macro-support-0.2.87.crate 20006 BLAKE2B d32dfc7231e4fbc226586e66063538208f9e299fbf803c4e2d1e1e61b4a22f51cc7509bdd269a44f072f9843a083ee84d2326408fb3211009ce93542c3fdc6ce SHA512 9390aa2767fed1027be168612c424d4c7cd4423addd83b79afd8c67886f66303ca4846e6454302ecc78b47bc62e8ee46849a4c0d3edb98849ce8476901424e33
+DIST wasm-bindgen-shared-0.2.87.crate 7248 BLAKE2B 0393ce9452119fd5f92836a76b28d3a697f91fb09de39d1af0a2a83e81d48bd4a17f39b48f15ae97edca3e361d4f8fedae8de04173c4ba1711decc73f64000d5 SHA512 cb9ff537554f56fd07052ddc4adc904a57ee64e13298df1dfca58b361ce163c34640e7dd9ed301ec1375f335dfa424230e22638ea7569ceb34aeca4505f6c008
+DIST web-sys-0.3.64.crate 725584 BLAKE2B f650eecc22ca53b75fff06c4117439d8fe9efa486701cb16a0daf76865cd017a9e25ed8c7ae1fc65fa2dd94a12c14bc2e6f9e837b70b47b4ca468bef65a29f82 SHA512 b02b0bc3f1354842b364d2f062ea4f5025edb6e615046750b56a6e2fcacef7e0b46a190eb45e14e590cf297e3ec1a813a81612ac5acfc12d744fe16c5ce041a4
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-0.48.0.crate 11864177 BLAKE2B 39c0e4f058f68a829ee08721818a0b04287af20dfe6e03a125b75566b4c8a58b56557d685600f1f9c215811154f9782f12368d42848445d54dcf9bfd6471349d SHA512 7c906f885fa0a730f1cb1ef4e62f5b602a49d44343febe1d38fcd4cbc28e0342766983796042585fe457aa229333558715b6270e378946faa8f398a7ecc2af8c
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows-targets-0.52.0.crate 6229 BLAKE2B 4b1efdd32202f112d3782b586ce60667f5d3b6f97ccae0d7da833aee2ae81ceece88b5ef4126db2448c9019de3f77e4fe66ed4286bb6275d9a5e8ab74725b804 SHA512 0ea09552d89b802ec0d419b640fa02d0af7af602704a0e88ba10f81d123dee0c907460f6ec91224177ec9a948970abd7414740eb219148a4d66c269c2362740e
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_gnullvm-0.52.0.crate 430182 BLAKE2B f23370c62c4ab3fd885e3ee22e8ec2fb5a3a837a57044c1df3f9986dd4e7e9d0a44ec58be1648a41e1ea4d037afa3077f0f03de0204199a82fb8395731815a4a SHA512 b7c3fe0a2ad5149be0df48fc7a4d15879eb130bd9441c58c25fc71b8a91483f0b553fb1bf29a9302acd348e9083a547430a840b059b0cfe19867ecaffcae986f
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_aarch64_msvc-0.52.0.crate 821663 BLAKE2B e6f772858205f7cd871722136aec4d00daea4793ff9dcae53e6311e74526c46aa11c2b3df7a85e6c577757254cbfa5a713e68c694625ca274b64e7a1c5532c23 SHA512 8446bfe5b9fe538415762c8129ab3bf2fe45482e045bce367475747786602ad4ae1187c6e508dd9d7b6be81bfc8d430e0db9c624e35c7cc52e823023e46f5cf1
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_gnu-0.52.0.crate 870285 BLAKE2B a7688062a128a1b1394b3978210334e4e2aaa10dce131457c4a11ce0cb3f551e7f4962d1ece1846d8e9526983ced0e0a3ee8c933858e9314b62e76381e086ef9 SHA512 fe993f5bb6e039c257be9b35337e0221f718d23866818bfd19c76aaae236aafc2de4bb5014fcdf919563b5901cdaa14a2136cd086eeed3c83e46a5d02f6aa77e
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_i686_msvc-0.52.0.crate 888693 BLAKE2B 7a6e9d03e503c8f543e80a8c7bcf3f50cfa7eed462e487ae7b581746d7cc4d871b33e307110d3a3a75226d88e837f9452ac56bf3baf71b66cfab2626cc15558a SHA512 817ac796fd00bed51d80133ec873cf3d3d582ba41fec8a6f6407fbd7544f198e928aa5d710f70c13bbf74a1dde4c91c54e65eb9d3b7518a7f011ea42725eb671
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnu-0.52.0.crate 826213 BLAKE2B 3ca03285ef289fc844261142154e710e996c29940b1c0a7dc3016906ff6452fa50b24f8668fce0ca44bf169ab1228c217fece9f7bddac9ab8bdc54fddafaf8a8 SHA512 2d81af56ad0bc9536f6e066776642a546ce6c6d99551edc0603ffcafe6db15d5d5a32a642b204bbfadf34231daa3894ad7897a9c0c575c2b6bc1e3e58a9a3eb7
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_gnullvm-0.52.0.crate 430165 BLAKE2B af9345a1f6e0ed1392ca1534c68d23f3be0fbb6a42b3c5518cee14373e645038526da15e849d14abe45c53766a30c6c2042a626482ba4a05409f325eb6aa36b1 SHA512 e88af35fd1c694dc189783e5c81aafa61aeffbddce4d7130e1125d0ce3d932fafeb345990ffd98477c41b578b7f5090f4f9c0457b02146309b95549c9f8f44f0
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
+DIST windows_x86_64_msvc-0.52.0.crate 821600 BLAKE2B cc448b65f98fc0fc4949ae622b7020d2dae927ae45310649f6ef71809740eda9d3db0fc035676c201fd9ab9639e9e7f21e2e992b4c789542f12b419d2c752179 SHA512 3aaee31533a1a48a6ab5cd15b3cadfbd906a93a153e53919d0aa74e440d11e29830554e4e014c215f5b88a475bb733fa8ba4ce9d773d3e23a40ea9ad37ddd0a7
+DIST winnow-0.6.2.crate 157140 BLAKE2B 2cb9e63875403fe525739e2e20d4351f51b6f52dc03928af6de4531f388ec5cd0af7e21ef2f621330f7c91b01eb644fafd0618a246ce3c3dfe61d801e8f8e0e3 SHA512 dd54d69f7ce91f7ac2503ec79bf5bc3e45d2e8b0a3fc593487af33396f819c9df145eacd5ab43ecedca592a89ef259351314335de3fe740a05af5889f24fa8a5
+DIST zoneinfo_compiled-0.5.1.crate 8837 BLAKE2B 1d513b145a391ccb22d2110cce06dc1fc91e109d93cc7f2a056ceb5056a5a480b98ed3471cf8ff8fb8011f2d9c037b3bbd4f47dcedc0a56499e324ea5d7849da SHA512 4ad46983742ed37246f3ba5538fdf3a4dfc444ec635ffaa51d5daffa70c14e1876e703cd0a1f077e6b324e0d44d4b5e1e710b3543636fa9f33d509fa8bce333c
diff --git a/sys-apps/eza/eza-0.18.6.ebuild b/sys-apps/eza/eza-0.18.6.ebuild
new file mode 100644
index 000000000000..0bd577b67434
--- /dev/null
+++ b/sys-apps/eza/eza-0.18.6.ebuild
@@ -0,0 +1,260 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ aho-corasick@1.0.5
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ anes@0.1.6
+ ansi-width@0.1.0
+ ansi_colours@1.2.2
+ ansiterm@0.12.2
+ anstream@0.6.11
+ anstyle-parse@0.2.1
+ anstyle-query@1.0.0
+ anstyle-wincon@3.0.1
+ anstyle@1.0.3
+ approx@0.5.1
+ autocfg@1.1.0
+ base64@0.21.5
+ bitflags@1.3.2
+ bitflags@2.4.0
+ bumpalo@3.13.0
+ byteorder@1.4.3
+ cast@0.3.0
+ cc@1.0.79
+ cfg-if@1.0.0
+ chrono@0.4.34
+ ciborium-io@0.2.1
+ ciborium-ll@0.2.1
+ ciborium@0.2.1
+ clap@4.4.3
+ clap_builder@4.4.2
+ clap_lex@0.5.1
+ colorchoice@1.0.0
+ content_inspector@0.2.4
+ core-foundation-sys@0.8.4
+ criterion-plot@0.5.0
+ criterion@0.5.1
+ crossbeam-deque@0.8.3
+ crossbeam-epoch@0.9.15
+ crossbeam-utils@0.8.16
+ datetime@0.5.2
+ deranged@0.3.9
+ dunce@1.0.4
+ either@1.9.0
+ equivalent@1.0.1
+ errno-dragonfly@0.1.2
+ errno@0.3.3
+ fast-srgb8@1.0.0
+ fastrand@2.0.0
+ filetime@0.2.22
+ form_urlencoded@1.0.1
+ git2@0.18.2
+ glob@0.3.1
+ half@1.8.2
+ hashbrown@0.14.2
+ hermit-abi@0.3.2
+ humantime-serde@1.1.1
+ humantime@2.1.0
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.57
+ idna@0.2.3
+ indexmap@2.1.0
+ is-terminal@0.4.9
+ itertools@0.10.5
+ itoa@1.0.9
+ jobserver@0.1.22
+ js-sys@0.3.64
+ libc@0.2.153
+ libgit2-sys@0.16.2+1.7.2
+ libz-sys@1.1.2
+ line-wrap@0.1.1
+ linux-raw-sys@0.4.11
+ locale@0.2.2
+ log@0.4.21
+ matches@0.1.8
+ memchr@2.6.3
+ memoffset@0.9.0
+ natord@1.0.9
+ normalize-line-endings@0.3.0
+ num-traits@0.2.14
+ number_prefix@0.4.0
+ once_cell@1.19.0
+ oorandom@11.1.3
+ openssl-src@111.26.0+1.1.1u
+ openssl-sys@0.9.61
+ os_pipe@1.1.4
+ palette@0.7.5
+ palette_derive@0.7.5
+ partition-identity@0.3.0
+ path-clean@1.0.1
+ percent-encoding@2.3.1
+ phf@0.11.2
+ phf_generator@0.11.2
+ phf_macros@0.11.2
+ phf_shared@0.11.2
+ pkg-config@0.3.19
+ plist@1.6.0
+ plotters-backend@0.3.5
+ plotters-svg@0.3.5
+ plotters@0.3.5
+ powerfmt@0.2.0
+ proc-macro2@1.0.66
+ proc-mounts@0.3.0
+ quick-xml@0.31.0
+ quote@1.0.33
+ rand@0.8.5
+ rand_core@0.6.4
+ rayon-core@1.12.1
+ rayon@1.9.0
+ redox_syscall@0.1.57
+ redox_syscall@0.3.5
+ regex-automata@0.3.8
+ regex-syntax@0.7.5
+ regex@1.9.5
+ rustix@0.38.21
+ ryu@1.0.15
+ safemem@0.3.3
+ same-file@1.0.6
+ scopeguard@1.2.0
+ serde@1.0.188
+ serde_derive@1.0.188
+ serde_json@1.0.107
+ serde_spanned@0.6.5
+ shlex@1.3.0
+ similar@2.2.1
+ siphasher@0.3.11
+ snapbox-macros@0.3.8
+ snapbox@0.5.5
+ syn@2.0.29
+ tempfile@3.8.0
+ terminal_size@0.3.0
+ thiserror-impl@1.0.48
+ thiserror@1.0.48
+ time-core@0.1.2
+ time-macros@0.2.15
+ time@0.3.30
+ timeago@0.4.2
+ tinytemplate@1.2.1
+ tinyvec@1.2.0
+ tinyvec_macros@0.1.0
+ toml_datetime@0.6.5
+ toml_edit@0.22.6
+ trycmd@0.15.0
+ unicode-bidi@0.3.5
+ unicode-ident@1.0.11
+ unicode-normalization@0.1.17
+ unicode-width@0.1.11
+ url@2.2.1
+ utf8parse@0.2.1
+ uutils_term_grid@0.6.0
+ uzers@0.11.3
+ vcpkg@0.2.12
+ wait-timeout@0.2.0
+ walkdir@2.4.0
+ wasm-bindgen-backend@0.2.87
+ wasm-bindgen-macro-support@0.2.87
+ wasm-bindgen-macro@0.2.87
+ wasm-bindgen-shared@0.2.87
+ wasm-bindgen@0.2.87
+ web-sys@0.3.64
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.48.5
+ windows-targets@0.52.0
+ windows@0.48.0
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.0
+ winnow@0.6.2
+ zoneinfo_compiled@0.5.1
+"
+
+inherit cargo shell-completion
+
+# script to generate the tarball: https://raw.githubusercontent.com/sevz17/eza-manpages/main/generate-eza-manpages
+MANPAGES_BASE_URI="https://github.com/sevz17/eza-manpages/releases/download/${PV}"
+
+DESCRIPTION="A modern, maintained replacement for ls"
+HOMEPAGE="https://github.com/eza-community/eza"
+SRC_URI="https://github.com/eza-community/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ ${MANPAGES_BASE_URI}/${P}-manpages.tar.xz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 LGPL-3+ MIT Unicode-DFS-2016"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="+git"
+
+DEPEND="git? ( >=dev-libs/libgit2-1.7.0:= )"
+RDEPEND="${DEPEND}"
+BDEPEND=">=virtual/rust-1.70.0"
+
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_prepare() {
+ default
+
+ # Known failing test, upstream says it could potentially be ignored for know
+ # bug #914214
+ # https://github.com/eza-community/eza/issues/393
+ rm tests/cmd/{icons,basic}_all.toml || die
+ rm tests/cmd/absolute{,_recurse}_unix.toml
+
+ sed -i -e 's/^strip = true$/strip = false/g' Cargo.toml || die "failed to disable stripping"
+
+ if use git; then
+ # libgit2-sys unnecessarily(?) requests <libgit2-1.8.0, bump to 2 for now
+ sed -e '/range_version/s/1\.8\.0/2/' \
+ -i "${ECARGO_VENDOR}"/libgit2-sys-0.16.2+1.7.2/build.rs || die
+ fi
+}
+
+src_configure() {
+ local myfeatures=(
+ $(usev git)
+ )
+ export LIBGIT2_NO_VENDOR=1
+ export PKG_CONFIG_ALLOW_CROSS=1
+ cargo_src_configure --no-default-features
+}
+
+src_install() {
+ cargo_src_install
+
+ dobashcomp "completions/bash/${PN}"
+ dozshcomp "completions/zsh/_${PN}"
+ dofishcomp "completions/fish/${PN}.fish"
+
+ doman "${WORKDIR}"/manpages/*
+}
+
+pkg_postinst() {
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt "0.13.0"; then
+ elog "Starting with 0.13.0 \$EXA_COLORS using style codes nh and uh"
+ elog "will need to be updated to use nt and ut"
+ fi
+ done
+}
diff --git a/sys-apps/eza/metadata.xml b/sys-apps/eza/metadata.xml
new file mode 100644
index 000000000000..131e5f97fc16
--- /dev/null
+++ b/sys-apps/eza/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>leohdz172@proton.me</email>
+ <name>Leonardo Hernández Hernández</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">eza-community/eza</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/fakechroot/Manifest b/sys-apps/fakechroot/Manifest
index 2e1daebc38fe..a7019d114129 100644
--- a/sys-apps/fakechroot/Manifest
+++ b/sys-apps/fakechroot/Manifest
@@ -1,2 +1,2 @@
-DIST fakechroot-2.19.tar.gz 492346 BLAKE2B 9ad9d6515756e867f5e936deec3f6a020f2d8937000f1b7ea9f0f915db68efc4a8f1075d9ee1932c1f20d1c20db04f97de22574f6c51905a070dc1d130a435c4 SHA512 3f1846360dac2ebf9430949651ab0e4b232218cb576a3408b7199dac1e8b555d550ec281eacc65890e79f079f558308c9d56c10a6c7ff38e1419bb45ada7450a
-DIST fakechroot-2.20.1.tar.gz 504343 BLAKE2B 73459895319c1fd6297ab455e0d15f4b9985f433d958598d8581a35268e4df0f631b39d026061fe5c00ec6b805f3bf4f5f261039b93176db460b6f936c0de1b8 SHA512 9ddc715ff5c550b700c2384284c9f0cf6c2a99353a06d8e4c3b8363f4affdf9a11757ed5d1c9b85c83499b3bec054544290508a20f2ee16d46e66dc824a924ed
+DIST fakechroot_2.20.1+ds-2.debian.tar.xz 16120 BLAKE2B f4fe6943ca8e0f2bc68cc9d97af1195c34b8700b37838ced773e1452352d46806ebd31dbd6439121fa625ce74148d749e5064fe347ea5b1fa2e41c4e1b1a9867 SHA512 060448526eb7ac89b53984c582bcfffb641abdf4e7696e0033610343039012e6d459fb6682b4c1caa12bfcb91d515dfc4123ff3f1be3468d9db1a58ab9a8b415
+DIST fakechroot_2.20.1+ds.orig.tar.xz 88680 BLAKE2B 5e119eb6d7acee1f45bfc267e15b228624bbc5e29ebb19bcb61c4684719df4ce751c315423c27bceb0e2f97bcd491daa16d76f6b964842dcaddb90761dca092e SHA512 c61960b4fb03e65d7678511ae01a6f977d7f5584e81ee15a283f98da102dfc85d923265936443c7e9e208b62bb2147e8ae21a0ac62acf5bd8432775a4f6e723e
diff --git a/sys-apps/fakechroot/fakechroot-2.19.ebuild b/sys-apps/fakechroot/fakechroot-2.19.ebuild
deleted file mode 100644
index 93702f3f87d1..000000000000
--- a/sys-apps/fakechroot/fakechroot-2.19.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Provide a faked chroot environment without requiring root privileges"
-HOMEPAGE="https://github.com/dex4er/fakechroot"
-SRC_URI="https://github.com/dex4er/${PN}/releases/download/${PV}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 ~sparc x86"
-
-RESTRICT="test"
-
-src_configure() {
- econf --disable-static
-}
-
-src_install() {
- default
- find "${D}" -name '*.la' -exec rm -f '{}' +
-}
diff --git a/sys-apps/fakechroot/fakechroot-2.20.1.ebuild b/sys-apps/fakechroot/fakechroot-2.20.1.ebuild
deleted file mode 100644
index 4657276f544b..000000000000
--- a/sys-apps/fakechroot/fakechroot-2.20.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Provide a faked chroot environment without requiring root privileges"
-HOMEPAGE="https://github.com/dex4er/fakechroot"
-SRC_URI="https://github.com/dex4er/${PN}/releases/download/${PV}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-
-RESTRICT="test"
-
-src_configure() {
- econf --disable-static
-}
-
-src_install() {
- default
- find "${D}" -name '*.la' -exec rm -f '{}' +
-}
diff --git a/sys-apps/fakechroot/fakechroot-2.20.1_p2.ebuild b/sys-apps/fakechroot/fakechroot-2.20.1_p2.ebuild
new file mode 100644
index 000000000000..a8b0f7ace3d8
--- /dev/null
+++ b/sys-apps/fakechroot/fakechroot-2.20.1_p2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream seem to be kind of dead, so using Debian's patches.
+DESCRIPTION="Provide a faked chroot environment without requiring root privileges"
+HOMEPAGE="https://github.com/dex4er/fakechroot"
+if [[ ${PV} == *_p* ]] ; then
+ inherit autotools
+
+ SRC_URI="mirror://debian/pool/main/f/${PN}/${PN}_$(ver_cut 1-3)+ds.orig.tar.xz"
+ SRC_URI+=" mirror://debian/pool/main/f/${PN}/${PN}_$(ver_cut 1-3)+ds-$(ver_cut 5).debian.tar.xz"
+ S="${WORKDIR}"/${PN}-$(ver_cut 1-3)
+else
+ SRC_URI="https://github.com/dex4er/${PN}/releases/download/${PV}/${P}.tar.gz"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == *_p* ]] ; then
+ if [[ -d "${WORKDIR}"/debian/patches ]] ; then
+ eapply $(sed -e 's:^:../debian/patches/:' ../debian/patches/series || die)
+ fi
+
+ eautoreconf
+ fi
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/fakechroot/metadata.xml b/sys-apps/fakechroot/metadata.xml
index d715ee50dce8..e81a3354fc93 100644
--- a/sys-apps/fakechroot/metadata.xml
+++ b/sys-apps/fakechroot/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/fakeroot-ng/Manifest b/sys-apps/fakeroot-ng/Manifest
deleted file mode 100644
index c6c0d8cb77f6..000000000000
--- a/sys-apps/fakeroot-ng/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fakeroot-ng-0.18.tar.gz 207870 BLAKE2B d2e0eff8ec508bb5dcad89f51b80162b3a9fc769d24561cddbbeb83d02e9d6089c9252ad60a628f33c7a5c8d07c7e9db29a19247e6ee9106ff2e68a13ba4e3cd SHA512 8ece6830d229b92537d9c0a2eb42cb9ec4ae6b83453303004dded5eab0707b9ae8eaa2c71aac6ea68226c43cf08db6b0939a9422aab32948f5ecb185ee01d854
diff --git a/sys-apps/fakeroot-ng/fakeroot-ng-0.18-r1.ebuild b/sys-apps/fakeroot-ng/fakeroot-ng-0.18-r1.ebuild
deleted file mode 100644
index dae7a63ec7ce..000000000000
--- a/sys-apps/fakeroot-ng/fakeroot-ng-0.18-r1.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A utility to run commands with fake root privileges"
-HOMEPAGE="https://fakeroot-ng.lingnu.com/"
-SRC_URI="mirror://sourceforge/${PN//-/}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-
-PATCHES=(
- "${FILESDIR}/${PN}-gcc-4.8.2.patch"
-)
diff --git a/sys-apps/fakeroot-ng/files/fakeroot-ng-gcc-4.8.2.patch b/sys-apps/fakeroot-ng/files/fakeroot-ng-gcc-4.8.2.patch
deleted file mode 100644
index 50df56d51bdb..000000000000
--- a/sys-apps/fakeroot-ng/files/fakeroot-ng-gcc-4.8.2.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- 1/arch/linux/i386/platform_specific.h
-+++ 1/arch/linux/i386/platform_specific.h
-@@ -2,6 +2,7 @@
- #define PLATFORM_SPECIFIC_H
-
- #include <asm/ptrace.h>
-+#include <sys/types.h>
- #include <sys/syscall.h>
- #include <sys/resource.h>
-
diff --git a/sys-apps/fakeroot-ng/metadata.xml b/sys-apps/fakeroot-ng/metadata.xml
deleted file mode 100644
index 0cfd8edb60fc..000000000000
--- a/sys-apps/fakeroot-ng/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="sourceforge">fakerootng</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/fakeroot/Manifest b/sys-apps/fakeroot/Manifest
index efb1cacb4c70..5ba25406ed52 100644
--- a/sys-apps/fakeroot/Manifest
+++ b/sys-apps/fakeroot/Manifest
@@ -1,6 +1,2 @@
-DIST fakeroot_1.22.orig.tar.bz2 338238 BLAKE2B b6cee7483ea7ec17747e638cbfefa565f26b3b00517f3ec90280f8ce556ce8efa3833accc07885365e20f80967a67291fadc27cd80766548cc86e2aa70c74c33 SHA512 193478d9ff88ca2ae69fe47b73b6c61aeb2ba3f2a9e7ed5d455022705857c6f34cdcbe2d3f614c4c4c9509368dc78b9a7b7aa56fb3b50bb3309448140abd796a
-DIST fakeroot_1.23.orig.tar.xz 298080 BLAKE2B eac3da8486d57266f0f6af0479f0fcec5aaf82f4707ad8f810f954373a31cf5f390ef57dcc71ba630a1d4a578df95ac9beda9c93b3c75adffcbc89860f442b69 SHA512 0984679207e6e340abf715d4b26a213f85420cd8c58f21e65eb069337a3bd67436c6f80168412c10b28701689ec63290f122a5ff5d44a57b2b166aa72799d036
-DIST fakeroot_1.24.orig.tar.gz 522497 BLAKE2B fb08ed6512a3e26538662ceb28a197b85fd4a05c37b543529df6880e01c64bd774037bed1230bf7d7fe0bde798364c2fd0fcfab257fff4d3e6ae9800c076a5b0 SHA512 b15db7bbfb03264f294fb3b42813e17758b43ef7f121e55a24af9ec30ff3f4ec8eb0392db88133e56f9728b3828f6c1432d1e5d2e881a69d083ad444b9177487
-DIST fakeroot_1.25.1.orig.tar.gz 126880 BLAKE2B ea92815d005422ade80a91d1351c500614f7628b2173caf23bab2192f9395440ba4429ac773723c79a0f0205b7c750db9c1cecbefe7e9e2c442c8a92938df0cf SHA512 0e340aacfb49558ee6719aa11aa297ccda2afe2f66209da8fa10e45ec7954d5db689717db38f30cdfb9d89b75ca63ec6aed42e2cc314fd25c60262aa735eab0d
-DIST fakeroot_1.25.2.orig.tar.gz 126876 BLAKE2B 13c4457aed3d6df08fef0f3af6093eea05bcaedff280146a7d09e96a1e73d0615c2527ce32bc4999a0acc0478610241440ec9a70ee27860cd61d799f636c30d3 SHA512 3afc0d6c82bef4968f1eac293174d12f957788f173fa8b69753c422f0f3bb54e012d350eaa8e535501dd62185479c1d4cb1c6e3f605930ae5987a7f622c450c2
-DIST fakeroot_1.25.3.orig.tar.gz 126884 BLAKE2B a6a860a8714bb2a43f2820bc586cac38d25df8b8cb32b219064618c845d0308b57929108bd582b46c15b2fe4b2fc00d662ba72458a9e9ffcf7d035dce515eb55 SHA512 b54366ef82b49af414d7214d069a4bc7dd188dfa4f8e3121f6bd65fd67268b02346ff72e857087243ab0efe9fa82faaa9f9c3309cac4b5af0ea00908c2e5eb6e
+DIST fakeroot_1.32.2.orig.tar.gz 571345 BLAKE2B 796ad9a43fb6390ff9a286940517c84c0c4c304cdb9316bcb65da4e7a763e3911a3524cb47b797a48bec55e9f0ce587bd571ed11097ef4c4d4b6979609e4b4e4 SHA512 62fd597f8fb7e2d977892851a5dc579d431fc9a25fd0ce02e3997ac6be3d22edd9cf03ede68cf961096de86659962f9f04e0e747074ea3c79931c0413c32612a
+DIST fakeroot_1.33.orig.tar.gz 571364 BLAKE2B bdc961939c63d9fd2d9a6700a17ea36aba806b640aadc471053d4a947c1635783bd28e57237818036922c437e7d7624138192e7a3e0f6ee48073c6a1442f9052 SHA512 f87b85531fc5af4ff24a6e27a5b7a25f7d220672fb0b0b925554b0138f3cff7ff7920ce96ed77313a7fb55656a313dc07b58c2935be262091405e509fdcbec03
diff --git a/sys-apps/fakeroot/fakeroot-1.22.ebuild b/sys-apps/fakeroot/fakeroot-1.22.ebuild
deleted file mode 100644
index 81e7e7047e5a..000000000000
--- a/sys-apps/fakeroot/fakeroot-1.22.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
-HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.bz2"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug static-libs test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- sys-libs/libcap
- acl? ( sys-apps/acl )
- test? ( app-arch/sharutils )"
-
-DOCS="AUTHORS BUGS DEBUG README doc/README.saving"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.19-no-acl_h.patch
- "${FILESDIR}"/${PN}-1.20.2-glibc-2.24.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- export ac_cv_header_sys_acl_h=$(usex acl)
-
- use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING"
- econf \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -o -name '*.a' -delete || die
-}
diff --git a/sys-apps/fakeroot/fakeroot-1.23.ebuild b/sys-apps/fakeroot/fakeroot-1.23.ebuild
deleted file mode 100644
index c0f5629f8051..000000000000
--- a/sys-apps/fakeroot/fakeroot-1.23.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
-HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug static-libs test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- sys-libs/libcap
- acl? ( sys-apps/acl )
- test? ( app-arch/sharutils )"
-
-DOCS="AUTHORS BUGS DEBUG README doc/README.saving"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.19-no-acl_h.patch
- "${FILESDIR}"/${PN}-1.20.2-glibc-2.24.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- export ac_cv_header_sys_acl_h=$(usex acl)
-
- use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING"
- econf \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -o -name '*.a' -delete || die
-}
diff --git a/sys-apps/fakeroot/fakeroot-1.24.ebuild b/sys-apps/fakeroot/fakeroot-1.24.ebuild
deleted file mode 100644
index 1145abde6854..000000000000
--- a/sys-apps/fakeroot/fakeroot-1.24.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
-HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug static-libs test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- sys-libs/libcap
- acl? ( sys-apps/acl )
- test? ( app-arch/sharutils )"
-
-DOCS="AUTHORS BUGS DEBUG README doc/README.saving"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.19-no-acl_h.patch
- "${FILESDIR}"/${PN}-1.20.2-glibc-2.24.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- export ac_cv_header_sys_acl_h=$(usex acl)
-
- use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING"
- econf \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -o -name '*.a' -delete || die
-}
diff --git a/sys-apps/fakeroot/fakeroot-1.25.1.ebuild b/sys-apps/fakeroot/fakeroot-1.25.1.ebuild
deleted file mode 100644
index eac32e7e9542..000000000000
--- a/sys-apps/fakeroot/fakeroot-1.25.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
-HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug static-libs test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- sys-libs/libcap
- acl? ( sys-apps/acl )
- test? ( app-arch/sharutils )"
-BDEPEND="app-text/po4a"
-
-DOCS="AUTHORS BUGS DEBUG README doc/README.saving"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_compile() {
- # Create tranlated man pages
- pushd doc &>/dev/null || die
- po4a -v -k 0 --variable "srcdir=${S}/doc/" po4a/po4a.cfg || die
- popd &>/dev/null || die
-
- default
-}
-
-src_configure() {
- export ac_cv_header_sys_acl_h=$(usex acl)
-
- use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING"
- econf \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -o -name '*.a' -delete || die
-}
diff --git a/sys-apps/fakeroot/fakeroot-1.25.2.ebuild b/sys-apps/fakeroot/fakeroot-1.25.2.ebuild
deleted file mode 100644
index eac32e7e9542..000000000000
--- a/sys-apps/fakeroot/fakeroot-1.25.2.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
-HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug static-libs test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- sys-libs/libcap
- acl? ( sys-apps/acl )
- test? ( app-arch/sharutils )"
-BDEPEND="app-text/po4a"
-
-DOCS="AUTHORS BUGS DEBUG README doc/README.saving"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_compile() {
- # Create tranlated man pages
- pushd doc &>/dev/null || die
- po4a -v -k 0 --variable "srcdir=${S}/doc/" po4a/po4a.cfg || die
- popd &>/dev/null || die
-
- default
-}
-
-src_configure() {
- export ac_cv_header_sys_acl_h=$(usex acl)
-
- use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING"
- econf \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -o -name '*.a' -delete || die
-}
diff --git a/sys-apps/fakeroot/fakeroot-1.25.3.ebuild b/sys-apps/fakeroot/fakeroot-1.25.3.ebuild
deleted file mode 100644
index eac32e7e9542..000000000000
--- a/sys-apps/fakeroot/fakeroot-1.25.3.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
-HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug static-libs test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- sys-libs/libcap
- acl? ( sys-apps/acl )
- test? ( app-arch/sharutils )"
-BDEPEND="app-text/po4a"
-
-DOCS="AUTHORS BUGS DEBUG README doc/README.saving"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_compile() {
- # Create tranlated man pages
- pushd doc &>/dev/null || die
- po4a -v -k 0 --variable "srcdir=${S}/doc/" po4a/po4a.cfg || die
- popd &>/dev/null || die
-
- default
-}
-
-src_configure() {
- export ac_cv_header_sys_acl_h=$(usex acl)
-
- use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING"
- econf \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -o -name '*.a' -delete || die
-}
diff --git a/sys-apps/fakeroot/fakeroot-1.32.2.ebuild b/sys-apps/fakeroot/fakeroot-1.32.2.ebuild
new file mode 100644
index 000000000000..8f71a0750d44
--- /dev/null
+++ b/sys-apps/fakeroot/fakeroot-1.32.2.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="de es fr nl pt ro sv"
+inherit autotools flag-o-matic plocale
+
+DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
+HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
+SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="acl debug nls test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ sys-libs/libcap
+ acl? ( sys-apps/acl )
+ test? ( app-arch/sharutils )
+"
+BDEPEND="nls? ( app-text/po4a )"
+
+DOCS=( AUTHORS BUGS DEBUG README doc/README.saving )
+
+src_prepare() {
+ default
+
+ disable_locale() {
+ local locale=${1}
+
+ sed -i -e "s: ${locale}::" doc/po4a/po4a.cfg doc/Makefile.am || die
+ }
+
+ plocale_find_changes doc/po4a/po '' '.po'
+ plocale_for_each_disabled_locale disable_locale
+
+ # We could make this conditional and disable the autodependency in
+ # autotools.eclass but it'd make it too easy for NLS builds to be broken
+ # and us not realise.
+ eautoreconf
+}
+
+src_configure() {
+ export ac_cv_header_sys_acl_h=$(usex acl)
+ use acl || export ac_cv_search_acl_get_fd=no # bug 759568
+ use debug && append-cppflags -DLIBFAKEROOT_DEBUGGING
+
+ # https://bugs.gentoo.org/834445
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101270
+ filter-flags -fno-semantic-interposition
+
+ econf --disable-static
+}
+
+src_compile() {
+ local enabled_locales=$(plocale_get_locales)
+
+ if use nls && [[ -n ${enabled_locales} ]] ; then
+ # Create translated man pages
+ pushd doc >/dev/null || die
+ po4a -v -k 0 --variable "srcdir=${S}/doc/" po4a/po4a.cfg || die
+ popd >/dev/null || die
+ fi
+
+ default
+}
+
+src_install() {
+ default
+
+ # no static archives
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/fakeroot/fakeroot-1.33.ebuild b/sys-apps/fakeroot/fakeroot-1.33.ebuild
new file mode 100644
index 000000000000..8f71a0750d44
--- /dev/null
+++ b/sys-apps/fakeroot/fakeroot-1.33.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="de es fr nl pt ro sv"
+inherit autotools flag-o-matic plocale
+
+DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery"
+HOMEPAGE="https://packages.qa.debian.org/f/fakeroot.html"
+SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="acl debug nls test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ sys-libs/libcap
+ acl? ( sys-apps/acl )
+ test? ( app-arch/sharutils )
+"
+BDEPEND="nls? ( app-text/po4a )"
+
+DOCS=( AUTHORS BUGS DEBUG README doc/README.saving )
+
+src_prepare() {
+ default
+
+ disable_locale() {
+ local locale=${1}
+
+ sed -i -e "s: ${locale}::" doc/po4a/po4a.cfg doc/Makefile.am || die
+ }
+
+ plocale_find_changes doc/po4a/po '' '.po'
+ plocale_for_each_disabled_locale disable_locale
+
+ # We could make this conditional and disable the autodependency in
+ # autotools.eclass but it'd make it too easy for NLS builds to be broken
+ # and us not realise.
+ eautoreconf
+}
+
+src_configure() {
+ export ac_cv_header_sys_acl_h=$(usex acl)
+ use acl || export ac_cv_search_acl_get_fd=no # bug 759568
+ use debug && append-cppflags -DLIBFAKEROOT_DEBUGGING
+
+ # https://bugs.gentoo.org/834445
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101270
+ filter-flags -fno-semantic-interposition
+
+ econf --disable-static
+}
+
+src_compile() {
+ local enabled_locales=$(plocale_get_locales)
+
+ if use nls && [[ -n ${enabled_locales} ]] ; then
+ # Create translated man pages
+ pushd doc >/dev/null || die
+ po4a -v -k 0 --variable "srcdir=${S}/doc/" po4a/po4a.cfg || die
+ popd >/dev/null || die
+ fi
+
+ default
+}
+
+src_install() {
+ default
+
+ # no static archives
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/fakeroot/files/fakeroot-1.19-no-acl_h.patch b/sys-apps/fakeroot/files/fakeroot-1.19-no-acl_h.patch
deleted file mode 100644
index d208b8ffa43b..000000000000
--- a/sys-apps/fakeroot/files/fakeroot-1.19-no-acl_h.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-http://bugs.gentoo.org/424419
-
---- fakeroot-1.19/libfakeroot.c
-+++ fakeroot-1.19/libfakeroot.c
-@@ -1908,6 +1908,7 @@
- return fakeroot_disabled;
- }
-
-+#ifdef HAVE_SYS_ACL_H
- #ifdef HAVE_ACL_T
- acl_t acl_get_fd(int fd) {
- errno = ENOTSUP;
-@@ -1926,6 +1927,7 @@
- errno = ENOTSUP;
- return -1;
- }
-+#endif /* HAVE_ACL_T */
- #endif /* HAVE_SYS_ACL_H */
-
- #ifdef HAVE_FTS_READ
---- fakeroot-1.19/wrapfunc.inp
-+++ fakeroot-1.19/wrapfunc.inp
-@@ -206,12 +206,14 @@
- #endif /* HAVE_UNLINKAT */
- #endif /* HAVE_FSTATAT */
-
-+#ifdef HAVE_SYS_ACL_H
- #ifdef HAVE_ACL_T
- acl_get_fd;acl_t;(int fd);(fd)
- acl_get_file;acl_t;(const char *path_p, acl_type_t type);(path_p, type)
- acl_set_fd;int;(int fd, acl_t acl);(fd, acl)
- acl_set_file;int;(const char *path_p, acl_type_t type, acl_t acl);(path_p, type, acl)
- #endif /* HAVE_ACL_T */
-+#endif /* HAVE_SYS_ACL_H */
-
- #ifdef HAVE_FTS_READ
- fts_read;FTSENT *;(FTS *ftsp);(ftsp)
diff --git a/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch b/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch
deleted file mode 100644
index 3fd34c8778fa..000000000000
--- a/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Description: Hide error from dlsym()
- dlsym(), starting in glibc 2.24 actually reports errors. In our case,
- we try to get ACL functions which are not in the glibc. This causes
- failures in test suites, so hide those messages for non-debugging
- purposes for now. It also makes the build logs annoying to read.
-Author: Julian Andres Klode <juliank@ubuntu.com>
-Origin: vendor
-Bug-Debian: https://bugs.debian.org/830912
-Forwarded: no
-Last-Update: 2016-08-12
-
---- a/libfakeroot.c
-+++ b/libfakeroot.c
-@@ -256,10 +256,16 @@ void load_library_symbols(void){
- /* clear dlerror() just in case dlsym() legitimately returns NULL */
- msg = dlerror();
- *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name);
-+
- if ( (msg = dlerror()) != NULL){
-- fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
--/* abort ();*/
-+#ifdef LIBFAKEROOT_DEBUGGING
-+ if (fakeroot_debug) {
-+ fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
-+/* abort ();*/
-+ }
-+#endif
- }
-+
- }
- }
-
diff --git a/sys-apps/fakeroot/metadata.xml b/sys-apps/fakeroot/metadata.xml
index 4eb20a048df2..b0d83aa2e489 100644
--- a/sys-apps/fakeroot/metadata.xml
+++ b/sys-apps/fakeroot/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/fbset/fbset-2.1.ebuild b/sys-apps/fbset/fbset-2.1.ebuild
index 941cc93c11a6..8ef61437ac43 100644
--- a/sys-apps/fbset/fbset-2.1.ebuild
+++ b/sys-apps/fbset/fbset-2.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit toolchain-funcs flag-o-matic eutils
+inherit toolchain-funcs flag-o-matic
DESCRIPTION="A utility to set the framebuffer videomode"
HOMEPAGE="http://users.telenet.be/geertu/Linux/fbdev/"
@@ -11,18 +11,17 @@ SRC_URI="http://users.telenet.be/geertu/Linux/fbdev/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ppc ppc64 s390 sparc x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="static"
-DEPEND="sys-devel/bison
- sys-devel/flex"
+BDEPEND="app-alternatives/yacc
+ app-alternatives/lex"
RDEPEND=""
-src_prepare() {
- epatch "${FILESDIR}/${P}-build.patch"
- epatch "${FILESDIR}/${P}-add-linux-types-h.patch"
- default
-}
+PATCHES=(
+ "${FILESDIR}/${P}-build.patch"
+ "${FILESDIR}/${P}-add-linux-types-h.patch"
+)
src_compile() {
use static && append-ldflags -static
diff --git a/sys-apps/fbset/metadata.xml b/sys-apps/fbset/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/fbset/metadata.xml
+++ b/sys-apps/fbset/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/fd/Manifest b/sys-apps/fd/Manifest
index 82fe5e520b04..5747b0f14a74 100644
--- a/sys-apps/fd/Manifest
+++ b/sys-apps/fd/Manifest
@@ -1,68 +1,106 @@
-DIST aho-corasick-0.7.10.crate 111039 BLAKE2B 69f984dbe528ece5ce4345bc0f39c122507a88e781d7c2d5c9175d1788aeef8d21e0487c7c449e28fbbdaae8203fe68627d23ac0a58d30dc70befd26ac9af32f SHA512 e8a1cb252015435009883662ca23408f1491d8f01461f3a81082feabeeff72ec61beb4f1f3271fc8a87f1379899ecfc38036ac208dca17889f70ddaca2406a9b
-DIST ansi_term-0.11.0.crate 17087 BLAKE2B 9bd35c045a01ce4c6c4a5db1b4f15e9412bb97426eec19d4421dffbec633de8d13452c13c1dc1b30998690b78d7ed38311aca700087f13a81f66bd1d5d7300c4 SHA512 a637466a380748f939b3af090b8c0333f35581925bc03f4dda9b3f95d338836403cf5487ae3af9ff68f8245a837f8ab061aabe57a126a6a2c20f2e972c77d1fa
-DIST ansi_term-0.12.1.crate 24838 BLAKE2B f636772c34e2d68cda7b8d3b2b86abda074585a62bd2654812ce92384244655a9197fa66e6939e19a674c0148ca605313d83de262bb18c2339a8a4eb4438a791 SHA512 b840e28b3e7700689a69a39659b1e066560078dd4a58326b91a028915819e7af883399ee53e920db68fd974c58d35bb1ddf8d427af5937d5f696f57c4376b671
-DIST anyhow-1.0.31.crate 28514 BLAKE2B 1177bbac61e96eb007a7a9a79499a7dab08a5c828987221df32c137b69bed53473b37f01debf49a7da0883407c6da40192fbc800c9b7983128738b2889d327a4 SHA512 e60394f48b74f8db4e61b9bfdb146b8e7a8b014c0a729ccb9e657d648a9310e642c77f6e5e5d4c8a6ed40a65c65bda79e45cda9a3efd04a901376e3912aebb8a
-DIST arrayref-0.3.6.crate 10035 BLAKE2B 88292fa4b3ad4fccd03772c2f0eca04cc13373fe094358bac57d7523c256d89f3087603e5bcb2a0b15d8b2ecd48e904a822b2cb800276a9c47ad6c6b660d9d34 SHA512 368341d00706c1250ff081b0d99c36c9af694a62ff4f4d8c837234340295771ca49c5439b24b6e1a4f2c3c5821764e98881dcb22d793f83de632fd5cb457671f
-DIST arrayvec-0.5.1.crate 26816 BLAKE2B 172dab8f0129134dfc89c6032c5fc15e2f86a5cd1e5be18b87fe2108d18a1bdb0f597a6ed4cd214dc663fbfb27b05c66846fba4543b5e068b5c75d075bdc5bff SHA512 53db2fafea1f60ac1af9ecc0bc9b69010e9f8573048481d55969ecdc9f3d19832fe05824acf10a0186b0464f0fbfe898d73500fba39ed63650c64dac2c2e8043
-DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
-DIST autocfg-1.0.0.crate 12870 BLAKE2B 79e495d53298574afd3b292da7c9c363dcb3ea434fd44258efaf3628e95ebfc731f03083f8a1060272a2a3478a6452cdc41539e2dac08465cc6e6283844bf260 SHA512 451fc63148792ba1952b884170e3481359b01bacca5ec0456f43ca58f8e092b8f81c9764f8b00d4104059ff608089be5858220ee868127c064cc890c767ec3a3
-DIST base64-0.11.0.crate 48362 BLAKE2B 90d2a64496e20c4bcca6f21c2546474ec88283679ccae95303ea7521133414eba021810e64e5916e3980b6878f90281f09295ebadcc12324fc9a9060ac41a707 SHA512 31b5f56d4907a5e4ae40e92ef1629a446126525186f5236afc2475829bf2e5e067554db200a18f7b3ab741d0cc9c01e20612e77cc0cbc1bc2a4a8d11c0fdbf33
-DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
-DIST blake2b_simd-0.5.10.crate 34093 BLAKE2B 6e725c9399714d1e199277e3f9882d636c1737af5b0b290f853573575005d053d2ab3a34843461747914a0c25d370f0d5a5cbb46765fe99308c1fd7666d471c7 SHA512 7471e0347267a4b88e9eea932b3001c420da0a472b2ea0f20dff974789955d6d95e19d51e3a8a312516c7fc4c83b6af17cc59ea2b8fcd4ef879ebac22534307a
-DIST bstr-0.2.13.crate 345445 BLAKE2B 9a17fa04d55e5d053b115aef2a075b58cab0fb84c574df61eec7c3ab6f06e17d156991b1c070ad357599de5455af78982eecb8632336d53792958800ecafe839 SHA512 f1f778262269dfea6ba1cf953a5177107c2e1e838248a67588283ee11efa81adfa30498c7cfb20422e0955544a07d2a8f86c4eefc78e9f407a92be9591e26fe5
-DIST cc-1.0.53.crate 51740 BLAKE2B 04d9d6d7e5999c9463dd86eaed965ec728c285ea0e642a02383b45ea820bcbb37c91116646b0fa2636e7176030bcff29612a72482df8c7a02a7262a805791e55 SHA512 8c7224b21a36d46afcdb7b2475686edb2d31b784e95e792f81acd5d5840b0065ca8869ca1c8c5a70cfb3e31dbe5c006360b054c1f11a92f0e1937e4e6d335229
-DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
-DIST clap-2.33.1.crate 201567 BLAKE2B 7bb63b6a243eb33050e5354622fb544ba6db3b859005d857b198af4c3f34dbda22d605326e80a274a12f73fb2c13aea99ec6652584a02d0a3092841f4e119d91 SHA512 31209da6a0ac987f7e1b2504a2fb7738c3aba4ddee4cc2bc22cc37d4d2b0feeff41ece557d4960d51564fd31cb23e413bf180eb60102a872caf623bf55c6f089
-DIST constant_time_eq-0.1.5.crate 4936 BLAKE2B 882dbf33f20954205fcc5b6e39863db8969d184b697fd51ef462f6890c1a754e3fae67bcc7db685d8cc26abe6e3871d3b80aa542489ba9551a0c95a49f7a6dc2 SHA512 a4e0155a7ad72babcfd418d832d362b3fca7333aaaf36c246b00e948983837c3c93378b86e37c5fa7626fe137e3b6d77276ccc61624a7f4ab914605905a88a01
-DIST crossbeam-utils-0.7.2.crate 34338 BLAKE2B 3cb287c7741c4d5b0551331634a75b066f07fb4b55fa2b347370506467a05923254b1c4dca667de59ed91ff91f5496b37f40f13d3e9885a1b4f639f5b6748433 SHA512 e375f24c007bcf660d9e297527ed938f678a55696ca7b555b96fee7e0b94c31db2d3f4355675aa0baeadba68b9755ec92dc3a09a37b5db48e3723b926fd4a8f3
-DIST ctrlc-3.1.4.crate 12702 BLAKE2B 96437ca96cc75eac980623a7ae15e9ecd224f7d6373744f39b16ff0fdac708bc2761829c1d8de2bc4c66a0f6e7fcf7791831044447e9d0ac6521e4da4d566d98 SHA512 1a5101d11b57c4000edfe3cec6367d59c4a59d4db3b0c39fb50a86f175dc89bee3494950c301317e6137250499cc39aa9b30bf94042caf08cc185152743a5b2f
-DIST diff-0.1.12.crate 10223 BLAKE2B 369f305661f1da31207f3801ed1841dbce12451ac9c3e9d3736f7158ece433af9b2e42c29063e5d93bb86b1d300e503caa9c3ce7dd0b25553f91d72a9eea5298 SHA512 0e81331c0424e9369963e23894a6412b65a3ed4f3154ccc184fc84cf1c5985b81c586a6b34e8c6c0e5c3afba38fb15277cfd89e7f50c85bd5d8d4d24ba670d16
-DIST dirs-2.0.2.crate 11779 BLAKE2B d1a6152d05a98eacff15c6c7f1f550d475b5a1cf62e541a2fa8b9836b9a1ea6b98f9314341dda35929b968fcf8a47dac7679c5c0b0dd97f21564a8d469c2e254 SHA512 34d6e5956c9db1dae965d33f13c64dde59d3e0e18cbdc56c02f7f31cac8e0034a80fbb561e0a73b8dbd145f85b46fc4e8a147b4c946b5816d8dda6caef185396
-DIST dirs-sys-0.3.4.crate 10477 BLAKE2B 062083f8469ab0d9f1c62c9213b66837e96e4e74ad2d167d5e7a1e3568c7f5432d6f254a248869117ceebdf3f2282231365173f7c6d5941dce42220ac51668b0 SHA512 af36976d97eca3dae3e0a53ea7e4cbefe4e3a4f5277fae5974d7e958e6a880f75b72128b1854320314e3f4da9b625bee7b55bc5331e561ecb3502462f82163f1
-DIST fd-8.1.1.tar.gz 75702 BLAKE2B 9bf5a18edd54cdf797c6279d2ed3181f0b7ac6ca3a54843bd7e8f3f070e9aecdd0d7b51922a420e330fecc5f6427b16be09302504ea26fbfb3beefe0f3a2a3c2 SHA512 71c078deacd498ebd9e52e32c4208c35383035ec7b87513b4127319c0294b598ce8fd9ad1acb7d665f6b64024b69f6f9fe3ace93da9f1504b7d5875018204352
-DIST fd-find-8.1.1.crate 75449 BLAKE2B 7f94b2c74fcf1b919c31cfde182b29f7409af1c107a5ca603d1d933568a65606db6c18128a6785ebf626a9aa9e26e2eb885f65b40c214f7074ee52864730a37c SHA512 fd9e887940e662337b6b1ff949ed60619e8996b52ff481dcde820d680a3eb9ba6676b710a8b2be7fde6a769089efbf49d857d06d64263965f58592524fff68d5
-DIST filetime-0.2.10.crate 13880 BLAKE2B bc2289129c0d79f37b2589ee31f7bd9719c1aa97854c0c06f321a394202bb96e86b9ec8f8727735e4925e214e6c7f75d87578ab44530a123807b5b7eae7b1097 SHA512 45d1b6fd6017bd1a479a4e343b8651c8d426616cb68914c728456fae2a27bb1a45fafcafeb9a12c89c4eed835327e461bf92b80eed0f3a4e84b196b584b8698e
-DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
-DIST fs_extra-1.1.0.crate 29292 BLAKE2B ea1b787484218733a2c107ff059f3e89357afc51c510da0f5f30e4c9289c722a7c810a0a08138673aa454445dfcb08caa986ac64165ac27476d9b709d819308f SHA512 c001a37a23a614f1752a45fbf392694911c8d06bb5af8b8a40f2dcba9c80c67ab634de0dd4fa951007072204b162430fed2c89bbb11ac2fca62dfa5cd4cbd46a
-DIST fuchsia-cprng-0.1.1.crate 2950 BLAKE2B 8519407ab5d1f04d03cc946a07050db4dd7bc70e03894e35b9e66910a3be11224084a86ba45103fdec845e94b7ba4defbd7c5217b035a0796c0c4a94b9562cd7 SHA512 ea9f5beb0dfcb023c22cfc2b37ce52dfcf3a2cbbed0f79ffffc332878858386805c65dce8469a431002367562d857a6c064e075688540c27fcb4056a110059d2
-DIST getrandom-0.1.14.crate 24698 BLAKE2B 8139227951eb65cc2bb7bba29291c0e8ff0b8d9a8e2d7eabb01682d1683c989c44b6195952ec7d087c338538c1d6858c45514822625266e0996829e8c50f3d17 SHA512 b5cb78ae81f31fffd7d720f9ea2b5917b4eac103711faf656a3a3fdd24ae5a2e671016d39309cdd11f902de919187311401dd8fe9e6ed68c29b83987de77c957
-DIST globset-0.4.5.crate 22830 BLAKE2B e4e1c4924577cc8ad14f3c76e49821b2f6050395e7673cdf4d118e7025e59e6df1be807762a484ee80739121b14bee8833c10b52ba69a13537ff9919f1bd2e3f SHA512 8fca9a19953370aa5d13b876a254f71ad6ecf0df218d8f5598ff2328eec9676be56b3a44d898dd031c8d4328bda939ee198f9b8dc7e03b45a1609b6f693a9088
-DIST hermit-abi-0.1.13.crate 9230 BLAKE2B 9591171d6f303a4a462d23edc2f8d493bdc23b6c2da4b464444718bfc89078e5a627e1543b7ab5be9d4e05f16c3508e55642360bb8d2cbd5edc2ce39b28d022e SHA512 ac424683ee3cfff9c63c735ac91008df722a2709d12744f009466574098433677266799e8ca817d3d3cad8f10f3c02e8081c67ff479701eabdc4543c0a79bd25
-DIST humantime-2.0.0.crate 17374 BLAKE2B 35f36b30d8fe3cb26f666dd57e31ab93924cf9d1c40d6c83cbf800f141c951634fcd641634a8f552baabf858303570bf8d1207e5455d5129f433d0c95b138c35 SHA512 5686246351af000cc38d10f65bd6cf3fe446dbedd75867f9bfc7a68c4b8183ccfc9e0cf14b7fa149d912acbfd9ff917d8ed5be3b5eab7832d23bf573a8e024e2
-DIST ignore-0.4.15.crate 52328 BLAKE2B 12567e87ae3c5cbf6daae21b4b1a7df7270f95734a8e2d21d7eb038e7a195b8fdb78da646c00fb232f2357ed1eccdd10c747d8985e0edfa6ae847be361203977 SHA512 f12b152a841d29a812af12d668648a142b79b4cdb01eb8c59ef9574c7c7bbcd7321b3e049bb3931866c3b26c196dfd3a48f7e5df63fa5923cb13a2daf0033f46
-DIST jemalloc-sys-0.3.2.crate 1344660 BLAKE2B c530eed197673dd515b41d504127c6c7abf75bb2dd0063b0a693be9502e3b5ae9db6d97dbf7fdd4bbab626ba1f788bf6b8e6804a476e109f22737bd2a79dcdff SHA512 b718dd98474d16fa5448bba62ac5e18a9e9798f31fce19dbeb4a12526c63e78f306454e0d9e2c6c5a3fd95660bfe82bb5fb09e4091cd8b43706eca2c4872b647
-DIST jemallocator-0.3.2.crate 16393 BLAKE2B 03c190b2f4c6cf01957a4e11d13a230dd55593e1845ae4179b60c62fa28eaed4dd27efb3113039ddab1e66a28c102d4d9c64169d0c10a1945bac162d2f613a79 SHA512 e3fd9d377d6465519e73a91d5639d47bfd6cdf5898d551c49e3efd3269d14a75bb9163980e13ff429e7dc637b8430cdfdb1f5d6ec52993fcf7b6247a69850ac6
+DIST aho-corasick-1.1.2.crate 183136 BLAKE2B 2d4306d8968061b9f7e50190be6a92b3f668169ba1b9f9691de08a57c96185f7a4288d20c64cb8488a260eb18d3ed4b0e8358b0cca47aa44759b2e448049cbaa SHA512 61ef5092673ab5a60bec4e92df28a91fe6171ba59d5829ffe41fc55aff3bfb755533a4ad53dc7bf827a0b789fcce593b17e69d1fcfb3694f06ed3b1bd535d40c
+DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077
+DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
+DIST anstream-0.6.4.crate 20593 BLAKE2B 2b617c45d351e01222fc50f52551e57b4a8b0ecf84c6ddf44336c7c9d3b9dde15232b1c4f664d567849295bf8f03612b73ded56f1b3937392eb7718f1e0446c3 SHA512 0b983d626c53d1edc184f04cbd2c004eb9c40d14486b23cce86ebf50cbd3d916d32cb0423ae1d67c2b83b966690090af740538538ef846c0b126c686a1ebe159
+DIST anstyle-1.0.4.crate 13998 BLAKE2B fb501700855709e53438461c2f4b48d869613e7bb3bb700db8bd0d95082876d3782dc2cfe3ce110bb4a206994de56afe0e90fe89f9ccd07c60fe1c652123ba59 SHA512 671c6f57106198bcfc2f9000aacba98fabacfadfce2329dfe8d0e0a2af9404da483d7a844ca2b08e1fc0249371f574c13d0082c9f7a4ed90ff581308257a52d3
+DIST anstyle-parse-0.2.2.crate 24696 BLAKE2B 979daa24ccc3ea484445216bddc190f148f0ad83b95c997c1becbadfb641b67834980c413bcf5b7ddc2c6883d5e071a9636fbb44f79680ac42f8b73a797e466a SHA512 28039806f87c2bd8266cea834975939b79fdf0cc95a029654806655c0662520aa497d84eefadcd9edce204986e60b62678e76a09cdb38bcc50c91e9d05c4bee9
+DIST anstyle-query-1.0.0.crate 8620 BLAKE2B 2d296b5066fd6284a2410923215571e6df650c5ef892d6de7a7088a0996ca30608797feabc84f3c325ff4d07001dac80ac5067d2a9c9d15d9ba59a276b399f53 SHA512 2781be5c82293b7ae338ec5046fbeb130de9eb2dbf2e4dfaa73ca5233032e1e52c133e141b02f33d4bc36d996a0a3f680ac82d42d614a5305005f60547133c7a
+DIST anstyle-wincon-3.0.1.crate 11279 BLAKE2B 593de9443b4c612526550285a6c156db26a233815e77a748597c6eea509ae511f41eb8ee736010f8be853695c9f1d94b034a77190e612f0a00bf00385d66ced2 SHA512 75ab14081b09e031ee0f559538976f39092aaeb6f561a56de83d12911cc2b45e28eec21068792c86a61e344021921ab55e7139ca79acec78e7d4a796dfa42a2e
+DIST anyhow-1.0.75.crate 43901 BLAKE2B 6353557d7ec2cbfdd001c039fad62c95fea9e02b113149f726fd14bb36b31e637e8609dd5ee20a900e9c11bb783d9958d664b31ba7c467382fa7f51d477ad3aa SHA512 190d6be8ede0af9808210db53e4dc31ce69b126a26b0357220c4705a11e83cab2c2c09c59964a35794f3c434f717eaa6bb669e9e8f16012535c14246b17e8d40
+DIST argmax-0.3.1.crate 11270 BLAKE2B 5ea6790707e3d133cc52cf56fdfa93938e6e368408f97b28b4f3cec7aa3493beaff6be6ccdd13e9b34ecbb9a50bfb00f8a702a06820c925a720c5c3baf8606ec SHA512 717df8bab99c0047fa14255208b9799be0324e962addd363eee17f4fbfcc8df8b73263e9e8fc6c8eba6212b84adf8eac87cd3a77cc76b7c5a0ea7973870490b9
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.1.crate 37043 BLAKE2B f61c45b142265e9c2944c7054e01704de47510735e9ee5351cd02b98676cc4eb42d68b1fc4849ad5f54654617a74f20cb533b4207c2fe76516b724ba9318b414 SHA512 d3fd7abc95acc1cb5bf16d6acc12dbb8eadd250f069268df13c2e8dc3d5f5c15a929cd17ca931c77393b64dce0516ef8674c469789ed32d78e315b5faada062b
+DIST bstr-1.7.0.crate 380090 BLAKE2B e8a31f687ad34da715c352701bf008c1afe8e43ffe0a3377232eb4893098018ef7978dddd45bfe0ba3155fe432142836c0c7bb95aeaf4086da81b10c342f2984 SHA512 b6cad70391525589dc028e685065db280837ae00b60824fe58ec3d77d71cb343680c745845944b3ffe05c02577eb7c2eafdac82537009b1778a7ffc47a5d42bb
+DIST bumpalo-3.14.0.crate 82400 BLAKE2B 13bde02e2e60ea3099f4e46ff679d07b2e8046740c1855bb81fe8d20a4ef0fb26e565da724f628a00c9154ef16ffc9018f67433d2a32544564b66803b5bab223 SHA512 179c116a5320c5f21163c343ed48add36089d806e35bc303318dcfe09ba1d5f02bf8012726d0c2cb76a73fae05a7c887a91e18f9e5ff3b9f9ad8a2f12838757b
+DIST cc-1.0.83.crate 68343 BLAKE2B 33245b33fa845ea2f36da36e3830ec835f937e4319865b357ee9d5ea29a0f9f8392eadb38bf1d95e3c15ed201e561acaa87aedcef744f8db3dabff87a96c7f02 SHA512 742a248c3a7547bb220a0b9c97b67a831fab9b4ac21daa08c85a3966b9fe576088def33e16132fcabec9a2828a6fc437088bb045bfc98b2cea829df6742565a7
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST chrono-0.4.31.crate 214513 BLAKE2B 2ac43852ea14cb7b129adf68ff62adac1763b3f4802dd3d23c43cb131377b501b4adb22aa93818d7ceded8eb10c17f94a7836257ce2876d0513b063276129c54 SHA512 23276daa2c1bc3b7b2327dc84200fb40cc995a8b599d1a537e92e08138ab8a0d1548a510a8155dcdda18820120d7204e89a4686c866fc3a8d2460cdb30ac6089
+DIST clap-4.4.10.crate 54778 BLAKE2B 89f11794a132e5e7cd5527395e4171bd67bbfe355c0d1bd186bd1ae6b1aaac9b7c3ff51dccd6f5ff580a5f5893551d4f5df00792dcea1398b494f0fcd645675d SHA512 d153a13486dc6a3a5b8b0bedb23d577e7b6fd98f5b7fa0dcef4a12bb9a238ae89113f788109fd988fb46965af6314f4d8b2d37eb7021231c11ae740d387ee58f
+DIST clap_builder-4.4.9.crate 163198 BLAKE2B b871227906be49e9c3091d49cf83e344b2d351a023dfe94afef18db00a94fc6aafe022af554fa8d22b3eb06b14d7dc5d64b2a5ccc3673c0d1c080841610a5c6b SHA512 1853ffa3d6a03a5fc6eaa9f93668f1c96a1169b972e93cde75226b12598942398d8727a598af89510b8d897a6023f5b70f6e1885119c9bc07adde67b95ba19c3
+DIST clap_complete-4.4.4.crate 37405 BLAKE2B fd43c668a29b8e8329f94153a5e5ce19e27437f60d88ea0a59573456c50a475e6dca659588d137909659a05b04ba5b4b412fd33d3daca20ee317a9890eadc8e8 SHA512 880b3022105d4ca68846e35e359a1613e177ce0be2b5f75b15bb3c4630bba93f8ebb4c7832205783f8bbe84dcd49d756468ac10c48d0e803d644a158f1163991
+DIST clap_derive-4.4.7.crate 29046 BLAKE2B 96ca919b8f9901b2e89c58ee8cf8bd3881ff715ac27999c03c867b317321e4839d9e923f68d411a05b45c34d54557af12b8a173f2445732fb6de16f30dad8e2b SHA512 4be40460468f7ce22906cdc9eea8d01bb07cb206d4ce0c3df2abd929d6925b175a49cf63907925ca16ae6297d6f4d933087fa5b35958e551117ec7ae050be167
+DIST clap_lex-0.6.0.crate 12272 BLAKE2B 22aa04997fffa15a2efc7013ae27fd223c3247cd31f8fe96aafb4e87e3224f075e887df10a95a2da80b468d4e16088ae9f171ba6551c0ae06d77bf3b8920ff9d SHA512 3651aa5e27ed35b6b75b1d25fd9c20c26a2a6039116e54d84c51469087732a4f0fd71754326456b367e341b017d03749e9a6774cb7b62250ca8745f5af46574e
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST core-foundation-sys-0.8.4.crate 17725 BLAKE2B 8afe47838dc91c8848c0d6a96a604149e5f0762228dbc10c17b85e4e9cd2c3928712bd0b28e1071f5fd6fd76d4ef972cb86c6c929246fb6e84577776933a8ac7 SHA512 15da472316d6decc213e4e5f08ecd22a108ebefe427b890741de4f9199614f19123e64329da76de5e8b4c9ff74ffc31738fd929acc1460fc757b4aa1fd3fdbb6
+DIST crossbeam-channel-0.5.8.crate 90455 BLAKE2B 017132056f1b40e55fbc7a09b75509d72b0a6123a0e5ea5d6104fe822f73b3ccce670d711d3b84b5ce743dcab5f10445297a6701b71213b77c0d56e2c3fd7160 SHA512 47677d6fe63050c51393e4a0537a3c65d7055c9eae118ebe60c5d716b4f47f23c2b1947b1e1b66bfb34a57c4db3a44631d323e996dd545565fe4f58c25863ff4
+DIST crossbeam-deque-0.8.3.crate 21746 BLAKE2B c24025c65d7c1c98e442af95491749dd4f777af0509636ed66886dcf656359ec50dc2a5e26327559c6659f6b355d2b0b992dafa691a36571c99637cb47372d0f SHA512 f3201c9afef7d2d119702696f7e5e7997a104b8f7d67c7adebd1cbed84d3a3415636ff674f1ccdfd95d0dc162384e46c6138c8203ede69577b0d5359a4b44672
+DIST crossbeam-epoch-0.9.15.crate 48553 BLAKE2B 23aa0532d3126e22efc779859478098e505b4ec895c643530a3f7e8dba0543df3d8ffcb6825b1d3869a4418e17d798d464b3e1bb51522435d50f53ac224e22c8 SHA512 d9292c059ef1d156da52950137b2b3ea5eab66c4cc2f763d02078d0b0106980839ebed2ae2aec53e026ee7b3ddc37c4b51370d925ada1ad13d9981934daa7bde
+DIST crossbeam-utils-0.8.16.crate 42508 BLAKE2B dfaf9e7cade2cb5a2de90dc622e58a69c5b28fe9f69d3cbb945431683cf48fb409565190e3414a815563afb12631d990476919890fc482ce6b5792fdc25536a7 SHA512 4b8d599a8b93015eea2fd404cdf1526fbb94662fffc7c64d2f0659aeef349e4ad682f61b2b85d075c7f3fbbc4d8106cd7caf6e65dae117ba982f31262df3f831
+DIST ctrlc-3.4.1.crate 14191 BLAKE2B da87431cf1a5497ce1212da60a63f362b5d6fea2972e2fff5cbe4a64b0f815d331173df0f78b58cb1e6566068d9320f36ed85aac09944a7115da061c7c614e66 SHA512 7a42302274ce2b4a361b0ca80f0d4ad5d14e0936ca50679b5655bec40d9815d4e2e634322dfb2d652f7de0b0d04f8548915d7af9e13685f1a63415a078f849d9
+DIST diff-0.1.13.crate 46216 BLAKE2B 27ceeafb7afd45eabbbe22d1f05667f513a6062762e6b77122e267282a8f2a0bf96384989508bf10c9e13af4856bc9f58f09b10055d6fc2c32681e288ffa9f9e SHA512 45e259c9fe7c23bd9e9454891b42d4aef6d681d35ee039d21fdb05ae9ed5856161a40f29889e7880ac2a2daf85f1b7d752d213b4a99a1a74ed2682c18a3ae7fb
+DIST errno-0.3.5.crate 10576 BLAKE2B 2d0548a8feee461445eed7acec865ebc2e2df31ce640aa265e14f72aabf933d45f1fbee57d15f608e1fccd547793676eb5ab96b1ebba5404a128bd84bc29ad50 SHA512 4036464d511ee39a309554a53a5f829ec39ff3683de7fc79c5f6f635e655c39001f077bd7eb6d93d8350f424a9c3b077f66b1652890f7b61ca47d32ae6d0f4ed
+DIST etcetera-0.8.0.crate 13295 BLAKE2B 33069c496eb846bc3e602812cd2ed182c660ae06b8a33ecea294a5ec9e37a1fc15391cadc9fde23f3e885e506031cbfb6b7d036b94cc4f94d42b8dfa8ad0ec7b SHA512 857151a9af143c7149feff2aecee8fceec45a7a2ff64a8c1a482aef89ce2f91de05123afd7d22d67cd664d9ec3800652c7800affdde4ec317437f5d925883b3a
+DIST faccess-0.2.4.crate 7262 BLAKE2B d069c8ea1555563137a9e7fd4e8626b8327f96e7eb1e05f1281e20fd1f283278cfada7eb2a10064bd03d8057561367283bcc16280132f16ad3e9e977027f8150 SHA512 6d3328238dcdad0a310ad33e28ca32e68314c7a1b99b0c88c4bb5b380c5a385ec8deb23bb5e8f6bb2eff957becf0b514c488564eb6bd88d471f6ebd3a1614efd
+DIST fastrand-2.0.1.crate 14664 BLAKE2B 7a5812153500170dcc53ca8d66384fef46eeb5a8f970be43863f22f82bf427672d07cb053f4e04b0fea358ca89178399871235680f57223b8561c07b8d21cf13 SHA512 79a1e1b3f39264f037def236afbd87b732f5e0a2154b1d9e721b3c7990c52be45138320e2571fe628f482e0da7e3cf867abb745e3c277b19015fc031fd4410d9
+DIST fd-9.0.0.tar.gz 118225 BLAKE2B fe2f5573e48d3036f3553a4a640f01e1090d09285d4b2ba642d10d8c8f3fc4547604916ff733c409ca111f7488af341e4092ec72074bcb819fe73449832afc68 SHA512 e992db9170884c5c426d51ba06a0684b000c65df3fae392fe9ffb3555b94f1d0cfde9b5ae01da37508a1b11bc75b023534db380c992cb4ccf17084d27ec87c84
+DIST fd-v9.0.0-i686-unknown-linux-gnu.tar.gz 1661826 BLAKE2B 48b085790bc0c0a4b4a315ca33b9ab6424199f6b329cfdd92e8f87de84d35d56a12d78fcb43dedc7ec6f86d7e59289e708a95d136e6b4f5a69cc8c21a42ed9b6 SHA512 e33a5c847420851f8090eb81d8ce2b7fb98138892b24dedd9eb7cfc69b7507c1c9059e572ba41ae933b8380bedc40118c4bc9864d7d0ccf8611eedc1608a59dd
+DIST filetime-0.2.22.crate 15029 BLAKE2B 068f4a84388d04d900bc5518a94895985ecba9c618a47b6483cabc31abd267e37ce69d78c51703ec5745307800d96ac801f37ac9959c60283c3c3d6ccd349c0a SHA512 d40d8baeb57ec85bb9ccf76ff0f898915c4e6cf384020121b53f4a2a1ef2840af5b4c9e8e1ff177034273f4f7a6bf81d2dd7a02cf498b61ea31ceaa30b877067
+DIST globset-0.4.14.crate 25090 BLAKE2B 2c3e6f8384a066ebfa1f36bf03125b5eae79329255674e32c58963451d4b342ada10f17524232a953bee133b3c77b678a141543759ebc622b5fd659fe55622ae SHA512 e83e4f5e42a97609e2579b09f49c2cb0a76a94e7e2975c5871f2c5af5d3b809736e0a7b220404c582f4a0c7eebdbfad6cb432e89b26401b58f2b253f8c0151bc
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST home-0.5.5.crate 8557 BLAKE2B b14225f6e967ccd37fa734f50991a50065047f3814c4e526f3b4605ceb9206d4d12e189b4033ab85792ffea34a30f2b0267b10b9b0ed88df52c37f6ae1ecea4d SHA512 4ba97149d8f70e9b6eefc930292c7e62fab6ad03d5e4e6bf93d40209d3a65e40932c6f3d14ca579ed19ba33195977c60fc52b3d3788629fc760f41ce90fa1e58
+DIST humantime-2.1.0.crate 16749 BLAKE2B e2ae8325b037fb175b9200cc5c1944ce579056c6662cce307beb6701894552362a25e371aad65f8fb9384945b48815ca74bb8b544a32e0a5845b7edd30b918c9 SHA512 3bf29ddd1391d82897c22baa0ff3ed58ef6d6959859f1f8ed54d324caba5b6fb4422e56790511ce82f902cd11467f93c8ab7fc7b0e0bdb719308a4d0a446ae0c
+DIST iana-time-zone-0.1.58.crate 27020 BLAKE2B 3e62ae3876e181e6ce4be1ca2417363298c0b83fe7d66d1e1dcb5ec308e9342871306387ca0c5fb3aa7ebf8f16968094d4c7b4a497fb792171fd400fe23e6a50 SHA512 9e55f17e08f371c476394ac2db9b447ff7f2a5e37e2cd3e84ec3e2b77980bd9de7eb81e8618695367d708e69156628a2e4ed80c4b7343aa71ce0d75a41e24b75
+DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
+DIST ignore-0.4.21.crate 55500 BLAKE2B f9ede294134ff8f18b1dece391664de3367c6b691ac47db5bc86c314e1db7ecbae6ddd9eba2433140209901a6c16cca383c48bbff3315c9e6f3b93783752e533 SHA512 34f41115f5ecb4e76c1a3a74052f35f2b9ada17963dcf0f6257bedd843f54a44b3c170d7c44763399edf2997d2c8f291e1eab6622aa7afcbf50eb9485d722b41
+DIST jemalloc-sys-0.5.4+5.3.0-patched.crate 884321 BLAKE2B 36f66a53472f6b02aa05a5be5dd437d0668eefa5b058e1b72d3d5eae4aef61df55795379cac7560ae87e805d7e714581dc9ca9ba7ee9bb042976716ddb7079ae SHA512 b81c75efa70b869abe08c0805fd9545436ccd4e6ce24bb7355c1b3684a03bbf234af0680854f3fd9b519e7d59296d32ef04497a1f45584ed8de462e4e21d60c1
+DIST jemallocator-0.5.4.crate 13088 BLAKE2B 760cb954b24c705ccb072c21ce0aa699dbc3140141a44a037bb917e5e1fa45f831d103b5058d5bbba221c347f7148c7e6fa4e0395e68ef5e9b7fc2eb46c9e11f SHA512 23b0107ce5fa6a31cbe2cd07beeee973543c1e5f6f2a57fde5a313dfdf0b7138a0675fd00b1b4823d60eeffe02b9159d0261579c9ee4ce4246fcf799f9c1f853
+DIST js-sys-0.3.64.crate 80313 BLAKE2B 7cf5dcb2b9e0b63cb82771c9e98518a4cda70372c5aed07866a07d2aa51274622357e4b5a665499328f5a3c38f7c515303da50421bad4a496fbb658e2132325f SHA512 a4f389a4eb45c2122e7bcf365dccdce8fcf14b1b521b8b839746bba8783296e2f1b959d73bdd874743f49c61a24c4077dec52f63cc7d594cd42e9cd6ea9c2e64
DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
-DIST libc-0.2.70.crate 472909 BLAKE2B bbc4b3ec2ebad2bed2a164e407e344ee4a70a7d83a00b8501d82d70a03dd76a3af40b5a494676d203c37683d602437737c8fd1cf1e7f513bfe5db2820ff29b39 SHA512 a543b972e73d5bf142988464cd62f4402b782796074aabf4ec9396e341050d545b83212c7e4c62c224d5e06de4d794c67fea91b83d605626df115b30d8f326de
-DIST log-0.4.8.crate 31297 BLAKE2B 31037fdc2fc94f4ab8a6e89a251b0bc29975027dc7efb7cc86a8e848dfc8e2ae50acdb177b7ba9f7c1f20ec01e50798f89abb772d67a33f1b060ac617cf9a8ab SHA512 0b71f97d5964134b5eea1332347e177806b2f171d0be5c410c0ff1539470b242ba9f0933fafd853e4171a43b5e373a150af18918924be431c7216022553a8a3b
-DIST lscolors-0.7.0.crate 18036 BLAKE2B 6ed35013099c9adcbb6f1a471216138cf12592928a098ff2312dd227744e2208a001e812a77d63cb729cf2b66bcdb0188ab1ba51d78d7f80a88bfc8f1ae5623e SHA512 470bb3ec7d603959394e561a1f3f1d037479da48f966ff822bf8ae4f7e724be87523adc6b5225ee4521a7bffae15ef67f60d0c04488c12e30cbec45651198bd3
-DIST memchr-2.3.3.crate 22566 BLAKE2B f952070b98ef30f0d2780a6efbeb36d295710734f678517d913a8002cafebbd3cfc38975fc4546d306efc11bc815764d14320af3b7a2360bd46fc2ab3db9efa5 SHA512 922e05da920d0d94226857788878ee5e31518cd80d95ae57e1d7ecd233942c37d01565525db2f1dfdfd5b3b1f81b2c73eee058cbfd745cb4e1519518318df248
-DIST nix-0.17.0.crate 195654 BLAKE2B 6857f84b3deb5800fe3167efd226f042bbcbbc61a4153ce59f69fb544616842c3f6d4566444201c669c6235d1d7577302e5404399f4937f1c0bbbd17fd47ef71 SHA512 3f2bc4f0e9dcb9753535aec9d626ad8126f0a9ea18f73760ba72be0f35d82542c659b4c443783010de133a318f423a16f71cd1f1dd5b5a1f4f71ff7bda247b63
-DIST num_cpus-1.13.0.crate 14704 BLAKE2B e7a26e597ad5e45309393a9500b031ba64a77831320cbb96d7861139a2f7a453b7ba06a3255439b43ac1e2e36269b0a350d514020d3cd82c2513b57934b3ebbc SHA512 e75ec298fa682be84bf4efb6cf40126da9233ef25f07e887c2fa7421ee78790204564e6406c8219466651f47421e27f69eca690bb9cdfc982b644d78cc10de3f
-DIST rand-0.4.6.crate 76401 BLAKE2B 5593ad2d7fb8214d917e2eb734f5eee548f48fd699c9fccc0de9c0c6ee49803a426492a25fda2ffcf844169e2bca00709d4dcd9ceede72a4667ec431f5502fda SHA512 a91c6da7188b426bf9cb832892ee2af87c4cd65fad505c34e9c63343da71efe8c0c67b75c405dca5345317b7940d1d0fc0b20be85afd6b3089203e5698d86f0a
-DIST rand_core-0.3.1.crate 15483 BLAKE2B 2e09b3b3306514c29bd7588498e79be7353de656d8cdeeb4dfc6a1ad092f15a861c2ac20591ff71f7f60d986de9a09c860de4a9f06799f04e736b31bc70a5fbe SHA512 5a7ae601124502bede760fd3179c2b28059ebc3b5983bfcb6b8fa62fb58df95cedc1aeb2734e792d894dfa4620801c13c29702f9cbee64243121575d4b6b9114
-DIST rand_core-0.4.2.crate 20243 BLAKE2B 22fee5e44127eee047ad8abcd9dd828befd0feee77ee9a0bcd4dd42174b1e650f2a19f1f3b39fde937e58c17afaabf7231e2aabf214c2eb22edf3f85b73f6eec SHA512 f7ae3b690e2cc1fbf2707ee04b752bc5472433f737ab581f9872f7c5660966bc6be45f0c5d2cd8771105df6d4a9d206c55f5cc6ffc1693b46e1ae03a2883b028
-DIST rdrand-0.4.0.crate 6456 BLAKE2B 330ee64d998a0358f95a3dce50b3e1bbda531a3b613db7e5ba4038a1cf7191b60be3a0f33416e05380c41040704ce52727928915e9d2f4565d39984d1c86fcd6 SHA512 6476275d124bee28747191471e8d8f321a3b1c148c1f2a7ece4175f5244a7de90afe5f99d2eba5244d886b92e38232398864bf90e6d434b09494533942c8d894
-DIST redox_syscall-0.1.56.crate 17117 BLAKE2B 57b1b01ef3cbc6f55def6c9a0dcde16bd98e83badcef993e26ae3ce849abcd1b1c10f4da931c605970d77f92471734764a537e7329291a221343fde23f3591eb SHA512 17a3044327aa733c830dd74e210d6bda32622617d1c5af9d70d7647232d8569ad0b04ccb14042cbabb5d97ad98e3f1f5a9968a75387354ffb4d175e9577115a1
-DIST redox_users-0.3.4.crate 12526 BLAKE2B cae43317cc63f129bec8d4da5959e5b00a17c4ecb35d5a18a410f12b70a9f72c235afcdbf9bf5de71a94cfe02f46d7e2d6988b536d02ff1b333c6025a5ab906d SHA512 7a42f4b6ced1b8ee53f2c35446154fea6646bd1634133738a281788e69121bfcbc02d4aeb88d25729382429945c0e89b6de4b6b63831e645c6197ff4ad022831
-DIST regex-1.3.7.crate 235600 BLAKE2B 15370ec0cc9f37c6a7092eaf78a731740aae3d79ec6d385244f4568395cac8947860828ff585aba9f35ccae684bb19e214120f39e7f4998350ff2890a43f2466 SHA512 59090515860c26551ce08e8b37cf1227712944844148b79dcc7348f430e5c3c70767c20807cb1affb242686e7e8f885224c4c9fb9ae890b57f766fec96e2aa69
-DIST regex-syntax-0.6.17.crate 294004 BLAKE2B 3d203b06b8b1a5bdb42d50d395ce117ad92e41a7d36e5cb5194014eb7af1b17f944ae493041b7e9a2a9ea929381b4c1cb513c895747beff97aafef524ea2ced5 SHA512 bd9a165bcac207ec3bb87a81ae644be98d9b5ea0053b3bcc69efb334e3ebfeb85021aa372bafc3575758200640cbaaa67d372950fbb3ab210d8ec62b336d147f
-DIST remove_dir_all-0.5.2.crate 8907 BLAKE2B 585f49f83db3ace90dd0b4fc77aab7525844194c82d36cc33ab8999aaa6226d24a130c30f55e2c46a08273cc554d9d4c8bc51958aa7dbf1045085b2e22639e4e SHA512 d19a45398a93adbcef9f233f6b3eaf4a63ae95f5bbae00c880b40c5edd34449e7f798ebcd4d11843c68ddfa15e11bed21d434b224e4a175dcb64ae011c13c8cd
-DIST rust-argon2-0.7.0.crate 27757 BLAKE2B ddeea9ffda1216294e0b8a3dced747fffbd8198fb3b5b74a347a8932a242db7c81554c08c3757574cfbcea5b13b253737df098355e65685d8ae7d95f55306290 SHA512 7310b7f993eb190c155b982bcc6e88e887ca4605dcdae521f0d744f48a5646694c4befa5518f9c94d303c8af1d9111e59c1c67512a9dac4e5f30b83cceed8ddc
+DIST libc-0.2.150.crate 719359 BLAKE2B d08e17fb29992c76337bb5862cbc1cdaf7b9d7749cd65021f145fcf49fa7954d6251c8c2f3c9a796b46283c3bc014bccfd259ea52824459841911ad847fd7f5a SHA512 7ae8fe6a1db38ac6d951c0b4880d25a02f064f5e61d6057c20f7208dec8395d58efd085e41857bcf5f4da2b014d2952dc4ddaf18ac4acd3a23675bb659e70385
+DIST linux-raw-sys-0.4.10.crate 1407767 BLAKE2B 8bc633d99bc1ee1a6fdfa19501fd034a4475fa9ebe18a206e4254309d91aee7a91fc70faf9775efa5157a1b2fb7e5f827bde40a770b066643356113f2cf38b5d SHA512 107f61add087bff55869798d5c71bc6ac9ecb27a603d8f9071b856189de8b7b0a7f9243fa1433700f52a0c3020eff5604dbf6e0653109d0dd277b98ab45fae21
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST lscolors-0.16.0.crate 23368 BLAKE2B f4c39acda48e5da0489b8a5b169a55bd69f9d4a2e7c264e6f785feb6f50c5b51ce793b5b34a85aca90809644d55999ce5158117e6496936ebf13758b064d59e5 SHA512 3b6f65e5cdad090fb05b278d4f5cc3d3219dcaa5413dcdb20ca4f673842906c09c71fab4dfe23a3669a9a3781af0d08a793e1626900a078e7e776286c676195a
+DIST memchr-2.6.4.crate 94439 BLAKE2B d1136f7105a33565214fdeecdc5a95e74d7fc7cf45997f81bf3cf389f3015fa561ab326433ddcff2db0b7259246eb6d26fc7b4e3c90c3af8b9b7ed7e8ec56ba0 SHA512 1065a67e04ec9210c70e430288e0a8d39f36ce6414722099553e99112ea2f8f710eae44bf39f8775b9850e6c8a50e634a1b1b084a8eb4f6b2eae6697dcf5b5f4
+DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55
+DIST nix-0.24.3.crate 266843 BLAKE2B 1eb1667a60d07c4541a0cb0cf0bed2c7c5256411028becdb229febd0f6215e8e176d3bf691f3bad2fc64841209bf364ff8345a3e92afb2bf8d3705fd734c8ef5 SHA512 6ecda3a14ce00002265e46a066b443cd3c092a306e25d9206b74ae31b8468fd5105b597ff1e7097588bbb6ef5e52fa48ebad908303b61db53361b525f44c13ad
+DIST nix-0.27.1.crate 286494 BLAKE2B 63fbe347360ad4b7a86f30bf2f1b27ff1ec581145a90c34160f4d143e9c297a34a2ee72e9de3a48bd3418657fbc9bafd09b704ec15a42b16b3a4187d5304ce77 SHA512 7b35a0f87427eb1b5e1480d7daedafea4609b7f3a4fcf48ca99bdbc2f150865996539f2c51c7ae6a6a13169614681fc838efb306994b020d44b45735a7380010
+DIST normpath-1.1.1.crate 19786 BLAKE2B 39c955c41283051e414f8576fdaa51f11f0ab5a23bfb7f6aaaac38fd9474912721c546810c02da335a9095fdd6d8e37ff2f5fad2aa93d93c21b4be76267088fa SHA512 05f1f498f571c57c2307d201d5fa15c72fd2f297b7854757107bb27684470d43a4d40137d31c735018dd2ba50c11f23dfd5e989909e809bdedcd7bbf018385ca
+DIST nu-ansi-term-0.49.0.crate 28211 BLAKE2B 057f2d9a3b6fa773e5b8b7b33eb0bd588db3310f01354701832716d77dd6c49ae17f69728582cdf84e8387f7c57b9eb05cc97ee6e14541878f12fb50f93855cc SHA512 8168f44f3574e56fe70ecbc67255556bb92215d3520d1cfca7be918b3d7d54be7aa0d82359f1044eaf66f11ee85fab1f9ccf32b13cdc39139c2facc78b2d8e71
+DIST num-traits-0.2.17.crate 50190 BLAKE2B a549ef00c749dc7f276c4817477d1f9dab70cba01b6a3afa5743f16f16353bc50d992d7446a54859cf750a410d66c8cd3440708a6b91fd89d3b8889f8fff1668 SHA512 4d47d3e2f5a31019e038e609897cb0cef1ba061b35cee7e2a02e65179dcdd4960bd5b9bc759b5c013d699b3fbd9b014940a15e36658f7d4fd12cb0c7841c5b4e
+DIST once_cell-1.18.0.crate 32969 BLAKE2B a08d5beee50a7add28bd9e50b18709e7b34574f0f55f80909d5efb7ac5917e5f30bdcf3fb43ddd0a4f420a427390c7ffe1cc1c7191a3a1d939bc6e3139e6eef7 SHA512 9328968afdf3535b2d9e0113d75afa725259d76994ef2e1948ad7efa4ec8a65bac7cfdc31b749d5cd55ad4e28d2e28ac57b871e3067b89182453c7e2413a13b8
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro2-1.0.69.crate 44271 BLAKE2B 9d1531a0b123e6238363d574bee03ad050454b65710b9800c12597f3a9ae2f9bf50c617da0472b7ac0b549afaca19c546ccd6519e648598500efda9c0db2ef6d SHA512 d197cbe9b6100c3193a01fd7dd6b4e49d440290012ababb5d9f139409f0afe816f213d67a03abeb1f3227228e0a1f2446d1dc0a2775363a15d1237c38b45d6a1
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST redox_syscall-0.3.5.crate 23404 BLAKE2B 85aa4299d9816666bf576f523da5cdeae87b3c8fbb2af103e82258d23f73303c068a4b6c3ef4117ad67958cb31e41f836a9f59f2ce1bc52c23605e34399afcf1 SHA512 16f8f4766932bb54e4740cfdb4f0802f76246c0bf88c1d76c69c115949b124b625d8c3b85d8947073c2e9544f425aa16c10f71fabe3c03d29e424c47fe4ccdde
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST regex-1.10.2.crate 252839 BLAKE2B 4be7bede72d41634c52eea25566fb13337a84a055aae6fb73d3b18ab9168085ed04ffbfd5b6f87c2f85c9922893b9c9a253a8c874eae9185b2100850443b1517 SHA512 e594f70cc540586e4039e7b905ede9e507757b531f22a94aae185e47732ae0d54bceb2c6aceb815819a9652c01ccf697798d372631f2f864c04ca2eec59759d3
+DIST regex-automata-0.4.3.crate 617011 BLAKE2B e685724eb037411c1a73d6d355c76e9e32c40f1c9029acaf86477796d3f5ad092b0c5619f4df2fc1ce34243f2ad8af147aa31f83a435e5b5adf55b4c9c8a9359 SHA512 4fc82fe3556f829956c3172447589555ef286fd66ee9a445cbdcdbe57970655e35b6eb0895ba02c344d826609257e0c95d3f7f51858aa260103bed7b08d8c1a8
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST rustix-0.38.21.crate 358962 BLAKE2B b3e4915385aaa1783e0024caee2c454d9ce66542ffdb9ab0f0ef02f07b6d583a49b29b25a604832903f7909a0362bcd2260958cfe3fe045af4df2ea5c62c1da8 SHA512 f3b147706e1befb9d743bb57c7f8dc0a1ca8f244ed98069dfc757ee9d7281f097531bf7d1028d21ac798ee27bfb07b2ea6ac395dd0bc6caef4647fac88669833
DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
-DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
-DIST tempdir-0.3.7.crate 11468 BLAKE2B 65850a69a07c5c7e5c25d77bfc9881c994b1fe8466b1712b904d9758b234f8d12db6e1b740d461a48b13667bdeca8178e75c956fd6eaa0c0d5aca5aa1ac7523b SHA512 e5b02f7d260ff594fc2dbbd441eb8adfa36ede937f32c8c812b458167c0e49f5cf493c6ebf83ce8007a0aeb97016169fda7f5d2996fecc72f9409d6f463d9bbe
-DIST term_size-0.3.2.crate 10917 BLAKE2B 2302faf4cc03e0e40e4b4b0ca79cea5e70caed8087a16f2b985673476041d19ee6908bb17931b453e63a89e33158f7e01875716879964664487fb26395ff7f49 SHA512 7e820ca667f841719e82cf97e90bd2546cdd7ecd4834c68f8eeadd2e530bb13ced1d058ea7beda5db77eabacfaef64b8c3699c482bd912ff570f6ab78149dc88
-DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
-DIST thread_local-1.0.1.crate 12609 BLAKE2B 34206b5232262cda9cc0fb970e20f154d43ff1c4477a5ad5ff9200e6d874a6c7b2bcd99a2dae75a984b54574281e049ad35307ace0dd188f44c9a95fa93139cf SHA512 f2bfca4eee32a8fc88a01ff5bf24518c12142228d95916d13aae35ed6addd0b7da2235359f15220049ef197555344ac31a8833775e7a5bd49144db9c54b3165b
-DIST unicode-width-0.1.7.crate 16644 BLAKE2B 8cc5ee2dfeeda8ffe3405a0d4f1576d2b3b8ede1a42cbefb0ba3bd0d71b53a92ceade86c4a06e9d5b31382955dc6e1152ae5cd279dc26dbc51f478dad1d0f64d SHA512 39b8a539c9009d0421f54ae68b139f21456c9cb03d743b58535a977f98bc9655cf42eaacfadbcff796c187a6f315ae16259ee22be9c2da5aa042172c6b464d84
-DIST users-0.10.0.crate 18531 BLAKE2B 18f1dba893d2d88b33785b997f6b2a3582fbd5c2c21f460fd7ab3c98572d524dc0e0fdc1ab3c5651d46f4219cdfaa4b60fafc045f01f6147d99dd3aad92c146e SHA512 21052adcd602ff6c30a4e9f4e14fdca896dce03969b1b03069f93f3e9d2b25c66b83ac2f40ed4e960dcfb5a0e67719ee45da475855f6e397f3618273ea52469b
-DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc8e1ef4e847648e2de08dece8c4debe92889edeccb8d393645fd0b62436b49d236ded7ad181c4a51239a9539 SHA512 4f1ef59bc2c437e79f1f84fe021bce5aa8ccd581f500f3d5776913d5f17d45b03ccee64f5bd03d47656318cfc9344a1f4311079d471fa409a8e4e94c143973f9
-DIST version_check-0.9.1.crate 11459 BLAKE2B 72f002c00504f635b7d2d7ee7137e07ba9c182d2e41d32a51851896f6bf6742c5524b7f66946437ba581ccf80b9c9a57280dd4b02df0918569ac710511940fc1 SHA512 b9cf363169df2022a961f5bed4fb7da07513e0283a85aa69752f6ac567e942611ed2216ac61799db1a199e2bdf0fd9b994e35d4a40c6cd80cd26b97cbfe977cf
-DIST void-1.0.2.crate 2356 BLAKE2B 41578fb5507f94e7d135f9595cec107ed00a926f4968df8b59792d1676ba5b6980cd67310f820fc37a9c14ebe43a171833fa8dfc09eac5dd42f2ebe808632a83 SHA512 1cc7d282600dc0164d7e410aa895d5dc99de1174991549c6733c94cc2027026517f66797751d737869eae58c560fa26edbf43f36b3015eb2fd99828fe40e0aa1
-DIST walkdir-2.3.1.crate 23413 BLAKE2B fc9601f4a28cec383297dbd87d422e56db1e989e4273900750f05d1f4a92e114a5b1a5a54368e290c5f4b47159ed51f52d85ce66f003cd2f52ffc737ead20f8b SHA512 ba807ff0d098aabdcd37e23204632beea1dbb7a6adfd16cb1009cae9e7b6957cfeab705cc454bf8f2b62a08743214ab995e43bf46fc510012c938f9e2a434951
-DIST wasi-0.9.0+wasi-snapshot-preview1.crate 31521 BLAKE2B 716bdd2ec46d0bc9911c5e5e29fc783840559931b2563d8619675fc11da9527ddbe653a0f1ce0b782ee0c5f7a3131aba2b0867d415f003aa9c2389357569e7dc SHA512 dbe641f796ee3a5daafcaafc911ecc6dff170340f477c2df7a61fb4858a85aefc2637c9e61973ecce66a987aa8e08a736273a4aad3ef47eaf61ed4268dbf9c47
-DIST winapi-0.3.8.crate 1128308 BLAKE2B e0e8ef6121f222b0500525192ebb69b26b71cc16f9ba92186f8ad6acc9de4cb8cc7c738f9c31f5bd223d2e34c93c496e8448c973d69797776004670c70abf69c SHA512 5a899ee5f09f30d742b8b8eba78da05cd9f4c664408fdeb9370373f8756a962a23e3f1c07619e745b3270138606c9a369076c02c3f5353f657df09d203d9a736
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST serde-1.0.189.crate 76276 BLAKE2B e4cf8d9608f341007f9a92af434395659511238040ddd2cec137539a51c05b949f79c4965ad9ec25f67a72fe8341573f2d1075766f7ab5842a107b12e0468a3a SHA512 3fb1732f6866db8412cbc4ceb57bc8f90cbee005e2687a388b052e5b94dd464aebff57a91cc8ce5da62508bfbd6cc4e14a524090a5fa60724cc9bd1bb5ea1035
+DIST serde_derive-1.0.189.crate 55708 BLAKE2B 6f49c1a8ef5402251d6bdbfcc03fa411c0440d292fb03bbe38e9d4f9eacc128c60a33bbdcdb5fceeb4e0a6f6eace56b8da16f90fffda08c580b87409ac5c3d29 SHA512 54bf81d6a18297d57122d8eca3fa4fd60a13907fe65bb68081c6f9c0f8c13f3f3206f74a0e9e3c3546c8581b8f7d4af92dd74fe4172f039d3022eda031e1e342
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.38.crate 243284 BLAKE2B 660de454989016dbb352c262d5d066ddc663eafcb928a2f62f61e6faf14cceed5cfbc37559e3795e1ce7886c78842be71eaa82ddced0cd6dd99ad99f95ab8ca4 SHA512 84fd4f4bc6de97cdb63a1ee9161daf8fb8fd1fa0f3c3bba4a29c463cd62cffd292c45b8cf17fd0911e580098cadc7b167e4e686595d31d72e7b53ee7df6d5f04
+DIST tempfile-3.8.1.crate 32164 BLAKE2B abccff7939df8cd223a5a8ee61e5af7c35335f1cd61b3e72fed9a8565465c293e99938d57b50743141aace3cd20422ad5d3090507ed66561cb0155771fe0a5ec SHA512 b257bfb70793575d59ec4cf4b7492aff83dafb68b367a48594211f476a3b1d4800b69bddc405d8749d8b320c30cbe71be1261a60b4bbc862663b37a6c7d97a3a
+DIST terminal_size-0.3.0.crate 10096 BLAKE2B 097ef50a85945128dcfa36d8ea0fb15f11142c206462a32980dbbba4fe2872abd214823fe3c75e804f3159a97d6e929ec338860e9c89587da509fb9e6da5d339 SHA512 f3bc9144aa8a87556543584a2495df6267ce3bb017f3ed3d00fa43e89b5de783e1285ca62dbad9dd9c3b37e3a476a6f3ab0804eba2411cb594a569bbdb310681
+DIST test-case-3.3.1.crate 8797 BLAKE2B bad61b52f7865882cf6f1ad9448335a8c2eb725629858d62675ed5c10e3a160f5b2cf28cea1179a0c1fea1b33668a70f294b8a2252db460490f3c0bdb705e7d9 SHA512 9d6836759dcd71a61ab4e395db7c1a75a14ac3102a36c39b09868ba96d28a2265d8ded385942e55cf95dafc7f4b53fc498b30b6473cedc9b558977878e831b3c
+DIST test-case-core-3.2.1.crate 13783 BLAKE2B 61d5c7383443a401b2fdcf35091ddcc5d2c183a44438a7c2d17cdcdfd884ce515b86514a71826222f4c02d0e94d0734e383d97178bcda074ea5ffbcea38f569a SHA512 aa794947a737e8cdc8323cd55f7166eb1d93718f887388dd9537721cd26100ccd2afa27d0a017104024ca3d032ced686c9f778cd01cdd6b15577ae7d3ce1ab3e
+DIST test-case-macros-3.2.1.crate 5011 BLAKE2B ea959c01b66ed021101d3b45834e01e95eb6ad0d4d087af9d9e91b11f695279d07ec3b2acc729f4dfcb5d348b4bdf818c2e6376e131ce70c7f678c365c373ffb SHA512 21ad4f69caf795575e4bf04e4ce438d6d47f5878abd4ab0094c53cf56cef262ba01951e9acaf4bf3ddf23a502378d5af971e54d71019faa1cc3df99bcbf11abe
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST walkdir-2.4.0.crate 23550 BLAKE2B b4298c01cb38be0479b7ddfee627af01f889b6b6ff432e368bb67f65134c3958a4fe271a5a7dd61b19259ae88f5680e5ce8e12e50a872b05fcba68f59b7073ec SHA512 09e1bc852c01b452c95b26a369831a97bc5c9e0ada3111c73774570dd73bb5b9e4735317d5572304fb48dca44ce7b9f77bbd17c418b6b047b2ab17b8bb42d9d9
+DIST wasm-bindgen-0.2.87.crate 175052 BLAKE2B bf8cf4aa1786ac5c2ba76e80500b5c54313adf9690ef370e60b894401bd1b81416da7bb46b90c014412c96f30f995bd1e52cf7f3a6be1111aea40866e8178396 SHA512 0c3099155ef079d2b91d2d5b135243d687bf865cdd9ae9d97d8cc2eb4c9bf7439b66b28d5b1d7e95048e53be63ed4909b6b3f2427951348de25ca7abb7a03705
+DIST wasm-bindgen-backend-0.2.87.crate 26821 BLAKE2B e230aa256a1f681ab3ffd2c83c3f6a810c305bb79a5e1d806b8b2b9f54ef0babc83809f6153b9ca511faa4b122f80bd1cc9eb97e7ae3cb4cba9e2dc1c6bd0b51 SHA512 317ee2bdf85067cb7f4b4ed6ff475ff9e5063143e9b7c8a28572211c09025935815227c4afa8c92823ac92102562d4d34531aa4891d8c922048d37e27377ee94
+DIST wasm-bindgen-macro-0.2.87.crate 13897 BLAKE2B 0926975b0328cdd5525820358795b7b68b4ab9dc460715ed84e5d276e76e936057140efb1ba875acf25f3d2862e680f9827bd05cc47560d54f7ec673f30244cb SHA512 af366d8d853b280014cdf5286f3b1f6d7fb0837ce6e359a81cb6f85161537c8e2cd06d7f893c957f5bf1548d34084d33a213670b471937782b56033a23cb15a6
+DIST wasm-bindgen-macro-support-0.2.87.crate 20006 BLAKE2B d32dfc7231e4fbc226586e66063538208f9e299fbf803c4e2d1e1e61b4a22f51cc7509bdd269a44f072f9843a083ee84d2326408fb3211009ce93542c3fdc6ce SHA512 9390aa2767fed1027be168612c424d4c7cd4423addd83b79afd8c67886f66303ca4846e6454302ecc78b47bc62e8ee46849a4c0d3edb98849ce8476901424e33
+DIST wasm-bindgen-shared-0.2.87.crate 7248 BLAKE2B 0393ce9452119fd5f92836a76b28d3a697f91fb09de39d1af0a2a83e81d48bd4a17f39b48f15ae97edca3e361d4f8fedae8de04173c4ba1711decc73f64000d5 SHA512 cb9ff537554f56fd07052ddc4adc904a57ee64e13298df1dfca58b361ce163c34640e7dd9ed301ec1375f335dfa424230e22638ea7569ceb34aeca4505f6c008
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
-DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-core-0.51.1.crate 42364 BLAKE2B 0227e8cc033f40b644879ce4a86f17b9552076378eb6cc6c8cedaa15602ef3ce0deb1ca48c6a7b4276af2bc2e0434e76193649051d7a2f78695f60400d00ccff SHA512 90615ed84f11fdfe0725a4a8b112e45f93ae6cb7e65c16636f85217369fd8b708553ae5bd28aff66e18b180ffa3c0f6820a94022fc5eb202b4f8358f8926fde6
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
diff --git a/sys-apps/fd/fd-8.1.1.ebuild b/sys-apps/fd/fd-8.1.1.ebuild
deleted file mode 100644
index e1a3a8f0436b..000000000000
--- a/sys-apps/fd/fd-8.1.1.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-aho-corasick-0.7.10
-ansi_term-0.11.0
-ansi_term-0.12.1
-anyhow-1.0.31
-arrayref-0.3.6
-arrayvec-0.5.1
-atty-0.2.14
-autocfg-1.0.0
-base64-0.11.0
-bitflags-1.2.1
-blake2b_simd-0.5.10
-bstr-0.2.13
-cc-1.0.53
-cfg-if-0.1.10
-clap-2.33.1
-constant_time_eq-0.1.5
-crossbeam-utils-0.7.2
-ctrlc-3.1.4
-diff-0.1.12
-dirs-2.0.2
-dirs-sys-0.3.4
-fd-find-8.1.1
-filetime-0.2.10
-fnv-1.0.7
-fs_extra-1.1.0
-fuchsia-cprng-0.1.1
-getrandom-0.1.14
-globset-0.4.5
-hermit-abi-0.1.13
-humantime-2.0.0
-ignore-0.4.15
-jemalloc-sys-0.3.2
-jemallocator-0.3.2
-lazy_static-1.4.0
-libc-0.2.70
-log-0.4.8
-lscolors-0.7.0
-memchr-2.3.3
-nix-0.17.0
-num_cpus-1.13.0
-rand-0.4.6
-rand_core-0.3.1
-rand_core-0.4.2
-rdrand-0.4.0
-redox_syscall-0.1.56
-redox_users-0.3.4
-regex-1.3.7
-regex-syntax-0.6.17
-remove_dir_all-0.5.2
-rust-argon2-0.7.0
-same-file-1.0.6
-strsim-0.8.0
-tempdir-0.3.7
-term_size-0.3.2
-textwrap-0.11.0
-thread_local-1.0.1
-unicode-width-0.1.7
-users-0.10.0
-vec_map-0.8.2
-version_check-0.9.1
-void-1.0.2
-walkdir-2.3.1
-wasi-0.9.0+wasi-snapshot-preview1
-winapi-0.3.8
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-util-0.1.5
-winapi-x86_64-pc-windows-gnu-0.4.0
-"
-
-inherit bash-completion-r1 cargo
-
-DESCRIPTION="Alternative to find that provides sensible defaults for 80% of the use cases"
-HOMEPAGE="https://github.com/sharkdp/fd"
-SRC_URI="https://github.com/sharkdp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
- $(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 BSD-2 ISC MIT Unlicense"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-IUSE=""
-
-DEPEND="!elibc_musl? ( >=dev-libs/jemalloc-5.1.0:= )"
-RDEPEND="${DEPEND}"
-
-QA_FLAGS_IGNORED="/usr/bin/fd"
-
-src_compile() {
- export SHELL_COMPLETIONS_DIR="${T}/shell_completions"
- # this enables to build with system jemallloc, but musl targets do not use it at all
- use elibc_musl || export JEMALLOC_OVERRIDE="${ESYSROOT}/usr/$(get_libdir)/libjemalloc.so"
- cargo_src_compile
-}
-
-src_install() {
- cargo_src_install
-
- newbashcomp "${T}"/shell_completions/fd.bash fd
- insinto /usr/share/zsh/site-functions
- doins "${T}"/shell_completions/_fd
- insinto /usr/share/fish/vendor_completions.d
- doins "${T}"/shell_completions/fd.fish
- dodoc README.md
- doman doc/*.1
-}
diff --git a/sys-apps/fd/fd-9.0.0.ebuild b/sys-apps/fd/fd-9.0.0.ebuild
new file mode 100644
index 000000000000..9969c41e0d72
--- /dev/null
+++ b/sys-apps/fd/fd-9.0.0.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ aho-corasick@1.1.2
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ anstream@0.6.4
+ anstyle-parse@0.2.2
+ anstyle-query@1.0.0
+ anstyle-wincon@3.0.1
+ anstyle@1.0.4
+ anyhow@1.0.75
+ argmax@0.3.1
+ autocfg@1.1.0
+ bitflags@1.3.2
+ bitflags@2.4.1
+ bstr@1.7.0
+ bumpalo@3.14.0
+ cc@1.0.83
+ cfg-if@1.0.0
+ chrono@0.4.31
+ clap@4.4.10
+ clap_builder@4.4.9
+ clap_complete@4.4.4
+ clap_derive@4.4.7
+ clap_lex@0.6.0
+ colorchoice@1.0.0
+ core-foundation-sys@0.8.4
+ crossbeam-channel@0.5.8
+ crossbeam-deque@0.8.3
+ crossbeam-epoch@0.9.15
+ crossbeam-utils@0.8.16
+ ctrlc@3.4.1
+ diff@0.1.13
+ errno@0.3.5
+ etcetera@0.8.0
+ faccess@0.2.4
+ fastrand@2.0.1
+ filetime@0.2.22
+ globset@0.4.14
+ heck@0.4.1
+ home@0.5.5
+ humantime@2.1.0
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.58
+ ignore@0.4.21
+ jemalloc-sys@0.5.4+5.3.0-patched
+ jemallocator@0.5.4
+ js-sys@0.3.64
+ lazy_static@1.4.0
+ libc@0.2.150
+ linux-raw-sys@0.4.10
+ log@0.4.20
+ lscolors@0.16.0
+ memchr@2.6.4
+ memoffset@0.9.0
+ nix@0.24.3
+ nix@0.27.1
+ normpath@1.1.1
+ nu-ansi-term@0.49.0
+ num-traits@0.2.17
+ once_cell@1.18.0
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@1.0.69
+ quote@1.0.33
+ redox_syscall@0.3.5
+ redox_syscall@0.4.1
+ regex-automata@0.4.3
+ regex-syntax@0.8.2
+ regex@1.10.2
+ rustix@0.38.21
+ same-file@1.0.6
+ scopeguard@1.2.0
+ serde@1.0.189
+ serde_derive@1.0.189
+ strsim@0.10.0
+ syn@1.0.109
+ syn@2.0.38
+ tempfile@3.8.1
+ terminal_size@0.3.0
+ test-case-core@3.2.1
+ test-case-macros@3.2.1
+ test-case@3.3.1
+ unicode-ident@1.0.12
+ utf8parse@0.2.1
+ version_check@0.9.4
+ walkdir@2.4.0
+ wasm-bindgen-backend@0.2.87
+ wasm-bindgen-macro-support@0.2.87
+ wasm-bindgen-macro@0.2.87
+ wasm-bindgen-shared@0.2.87
+ wasm-bindgen@0.2.87
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-core@0.51.1
+ windows-sys@0.48.0
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+"
+
+inherit bash-completion-r1 cargo
+
+DESCRIPTION="Alternative to find that provides sensible defaults for 80% of the use cases"
+HOMEPAGE="https://github.com/sharkdp/fd"
+SRC_URI="
+ https://github.com/sharkdp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/sharkdp/${PN}/releases/download/v${PV}/${PN}-v${PV}-i686-unknown-linux-gnu.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+# Dependent crate licenses
+LICENSE+=" MIT Unicode-DFS-2016"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+DEPEND="!elibc_musl? ( >=dev-libs/jemalloc-5.1.0:= )"
+RDEPEND="${DEPEND}"
+
+QA_FLAGS_IGNORED="/usr/bin/fd"
+
+src_compile() {
+ sed -i -e '/strip/d' Cargo.toml || die
+
+ # this enables to build with system jemallloc, but musl targets do not use it at all
+ if ! use elibc_musl; then
+ export JEMALLOC_OVERRIDE="${ESYSROOT}/usr/$(get_libdir)/libjemalloc.so"
+ export CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS=1 # https://github.com/tikv/jemallocator/issues/19
+ fi
+ cargo_src_compile
+}
+
+src_test() {
+ unset CLICOLOR_FORCE
+ cargo_src_test
+}
+
+src_install() {
+ cargo_src_install
+
+ # pre-downloaded to avoid generation via running itself.
+ local compdir="${WORKDIR}/${PN}-v${PV}-i686-unknown-linux-gnu"
+
+ newbashcomp "${compdir}"/autocomplete/fd.bash fd
+
+ insinto /usr/share/fish/vendor_completions.d
+ doins "${compdir}"/autocomplete/fd.fish
+
+ # zsh completion is in contrib
+ insinto /usr/share/zsh/site-functions
+ doins contrib/completion/_fd
+
+ dodoc README.md
+ doman doc/*.1
+}
diff --git a/sys-apps/fd/metadata.xml b/sys-apps/fd/metadata.xml
index 163db25b7535..8eb91527d787 100644
--- a/sys-apps/fd/metadata.xml
+++ b/sys-apps/fd/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
</maintainer>
<longdescription lang="en">
Simple, fast and user-friendly alternative to find.
diff --git a/sys-apps/file/Manifest b/sys-apps/file/Manifest
index 42c17cea2946..c4c8697aff68 100644
--- a/sys-apps/file/Manifest
+++ b/sys-apps/file/Manifest
@@ -1,3 +1,2 @@
-DIST file-5.37.tar.gz 887682 BLAKE2B c5635e5de879af31cbef1c988275ab8620133909d146769b27a2f8eefa90871fad5fa75e66b9e1d77a6261e5d6dec315fb5a8ad587d8c214eaa0bc2e5a929fe7 SHA512 bf153c15aebdd00329806231d20f295077b8b99efd0181d01279bcf3734a1718567df38cf75bc929eb8015ac98d29bb4bf1228d7ece8bfdfe14dd976391dd06d
-DIST file-5.38.tar.gz 932528 BLAKE2B 08d8d56e2e1b6a0c9fb0caed89ca6145bf683ecc52a639c036ded01b913e7eea75d9235851a2fbd410cbc9b929c26579b06fe1d54fb73817c951bef3544bc345 SHA512 9eeeba69cbc9f0c00a0bdf9eaf60c73a4a709e797068f109d85c1ef2a19c8b0e012ecd73714f03cbb1770dfa717e8a661ad746b644cc030cafbfb1f7aac35a40
-DIST file-5.39.tar.gz 954266 BLAKE2B 4d6d9a6317961e0a2aa391f502b0be8bbb40ede57c3470230d91aaf9ce5d35bcaceb32d551ca5a391fc8c40b64517fdb996833a8b1ca47ced7e92e9e545d2682 SHA512 9cf1a7b769c56eb6f5b25c66ce85fa1300128396e445b2e53dbbd8951e5da973a7a07c4ef9f7ebd1fe945d47bdaf2cd9ef09bd2be6c217a0bcb907d9449835e6
+DIST file-5.45.tar.gz 1246503 BLAKE2B 30fc77c091e6624f2e9a950f4c6fe69ea6aa46d4a8ad9f20d49320a3675617c5bfbc9ff1ebba5eeb2cf4435c38d71b47b8beeb5146c9f55fe3bac11fe65e89bd SHA512 12611a59ff766c22a55db4b4a9f80f95a0a2e916a1d8593612c6ead32c247102a8fdc23693c6bf81bda9b604d951a62c0051e91580b1b79e190a3504c0efc20a
+DIST file-5.45.tar.gz.asc 163 BLAKE2B 1405080c63412e9c66bfe06086ecee28b276b77cc2ddacb20cfd370c539a0d983812fd29dcf7a33bad69d6490cd439ef8d1219bfaf3928fb835a38da85013af3 SHA512 56bf131b2f35e896788be19b4d8cd1c7ec942c794fb584d5e589375d22fbccebdd04c03e779fafc0c10840586dc41e64251b3de1767ae9ab95f5d3300f9af254
diff --git a/sys-apps/file/file-5.37-r1.ebuild b/sys-apps/file/file-5.37-r1.ebuild
deleted file mode 100644
index 72edb1d0c5c0..000000000000
--- a/sys-apps/file/file-5.37-r1.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_OPTIONAL=1
-
-inherit distutils-r1 libtool toolchain-funcs multilib-minimal
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://github.com/glensc/file.git"
- inherit autotools git-r3
-else
- SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="identify a file's format by scanning binary data for patterns"
-HOMEPAGE="https://www.darwinsys.com/file/"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="python static-libs zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DEPEND="
- python? (
- ${PYTHON_DEPS}
- dev-python/setuptools[${PYTHON_USEDEP}]
- )
- zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )"
-RDEPEND="${DEPEND}
- python? ( !dev-python/python-magic )"
-
-PATCHES=( "${FILESDIR}"/${P}-CVE-2019-18218.patch )
-
-src_prepare() {
- default
-
- [[ ${PV} == "9999" ]] && eautoreconf
- elibtoolize
-
- # don't let python README kill main README #60043
- mv python/README.md python/README.python.md || die
- sed 's@README.md@README.python.md@' -i python/setup.py || die #662090
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --disable-libseccomp
- --enable-fsect-man5
- $(use_enable static-libs static)
- $(use_enable zlib)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-src_configure() {
- # when cross-compiling, we need to build up our own file
- # because people often don't keep matching host/target
- # file versions #362941
- if tc-is-cross-compiler && ! ROOT=/ has_version ~${CATEGORY}/${P} ; then
- mkdir -p "${WORKDIR}"/build || die
- cd "${WORKDIR}"/build || die
- tc-export_build_env BUILD_C{C,XX}
- ECONF_SOURCE="${S}" \
- ac_cv_header_zlib_h=no \
- ac_cv_lib_z_gzopen=no \
- CHOST=${CBUILD} \
- CFLAGS=${BUILD_CFLAGS} \
- CXXFLAGS=${BUILD_CXXFLAGS} \
- CPPFLAGS=${BUILD_CPPFLAGS} \
- LDFLAGS="${BUILD_LDFLAGS} -static" \
- CC=${BUILD_CC} \
- CXX=${BUILD_CXX} \
- econf --disable-shared --disable-libseccomp
- fi
-
- multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi ; then
- emake
- else
- cd src || die
- emake magic.h #586444
- emake libmagic.la
- fi
-}
-
-src_compile() {
- if tc-is-cross-compiler && ! ROOT=/ has_version "~${CATEGORY}/${P}" ; then
- emake -C "${WORKDIR}"/build/src magic.h #586444
- emake -C "${WORKDIR}"/build/src file
- PATH="${WORKDIR}/build/src:${PATH}"
- fi
- multilib-minimal_src_compile
-
- if use python ; then
- cd python || die
- distutils-r1_src_compile
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi ; then
- default
- else
- emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}"
- fi
-}
-
-multilib_src_install_all() {
- dodoc ChangeLog MAINT README
-
- # Required for `file -C`
- dodir /usr/share/misc/magic
- insinto /usr/share/misc/magic
- doins -r magic/Magdir/*
-
- if use python ; then
- cd python || die
- distutils-r1_src_install
- fi
- find "${ED}" -type f -name "*.la" -delete || die
-}
diff --git a/sys-apps/file/file-5.38-r1.ebuild b/sys-apps/file/file-5.38-r1.ebuild
deleted file mode 100644
index 7cc595691640..000000000000
--- a/sys-apps/file/file-5.38-r1.ebuild
+++ /dev/null
@@ -1,142 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-DISTUTILS_OPTIONAL=1
-
-inherit distutils-r1 libtool toolchain-funcs multilib-minimal
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://github.com/glensc/file.git"
- inherit autotools git-r3
-else
- SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="identify a file's format by scanning binary data for patterns"
-HOMEPAGE="https://www.darwinsys.com/file/"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="bzip2 lzma python static-libs zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DEPEND="
- bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
- lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- dev-python/setuptools[${PYTHON_USEDEP}]
- )
- zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )"
-RDEPEND="${DEPEND}
- python? ( !dev-python/python-magic )"
-
-PATCHES=(
- "${FILESDIR}"/${P}-Revert-PR-93-iaeiaeiaeiae-Do-as-the-comment-says-and.patch
- "${FILESDIR}"/${P}-td-is-for-ptrdiff_t-not-for-off_t.patch
- "${FILESDIR}"/${P}-The-executable-bit-is-only-set-when-DF_1_PIE-bit-is-.patch
-)
-
-src_prepare() {
- default
-
- [[ ${PV} == "9999" ]] && eautoreconf
- elibtoolize
-
- # don't let python README kill main README #60043
- mv python/README.md python/README.python.md || die
- sed 's@README.md@README.python.md@' -i python/setup.py || die #662090
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --disable-libseccomp
- --enable-fsect-man5
- $(use_enable bzip2 bzlib)
- $(use_enable lzma xzlib)
- $(use_enable static-libs static)
- $(use_enable zlib)
- )
- econf "${myeconfargs[@]}"
-}
-
-build_src_configure() {
- local myeconfargs=(
- --disable-shared
- --disable-libseccomp
- --disable-bzlib
- --disable-xzlib
- --disable-zlib
- )
- tc-env_build econf "${myeconfargs[@]}"
-}
-
-need_build_file() {
- # when cross-compiling, we need to build up our own file
- # because people often don't keep matching host/target
- # file versions #362941
- tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}"
-}
-
-src_configure() {
- local ECONF_SOURCE=${S}
-
- if need_build_file; then
- mkdir -p "${WORKDIR}"/build || die
- cd "${WORKDIR}"/build || die
- build_src_configure
- fi
-
- multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi ; then
- emake
- else
- cd src || die
- emake magic.h #586444
- emake libmagic.la
- fi
-}
-
-src_compile() {
- if need_build_file; then
- emake -C "${WORKDIR}"/build/src magic.h #586444
- emake -C "${WORKDIR}"/build/src file
- local -x PATH="${WORKDIR}/build/src:${PATH}"
- fi
- multilib-minimal_src_compile
-
- if use python ; then
- cd python || die
- distutils-r1_src_compile
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi ; then
- default
- else
- emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}"
- fi
-}
-
-multilib_src_install_all() {
- dodoc ChangeLog MAINT README
-
- # Required for `file -C`
- dodir /usr/share/misc/magic
- insinto /usr/share/misc/magic
- doins -r magic/Magdir/*
-
- if use python ; then
- cd python || die
- distutils-r1_src_install
- fi
- find "${ED}" -type f -name "*.la" -delete || die
-}
diff --git a/sys-apps/file/file-5.39-r3.ebuild b/sys-apps/file/file-5.39-r3.ebuild
deleted file mode 100644
index d9f6397209d1..000000000000
--- a/sys-apps/file/file-5.39-r3.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-DISTUTILS_OPTIONAL=1
-
-inherit distutils-r1 libtool toolchain-funcs multilib-minimal
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://github.com/glensc/file.git"
- inherit autotools git-r3
-else
- SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="identify a file's format by scanning binary data for patterns"
-HOMEPAGE="https://www.darwinsys.com/file/"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="bzip2 lzma python seccomp static-libs zlib"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DEPEND="
- bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
- lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- dev-python/setuptools[${PYTHON_USEDEP}]
- )
- zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )"
-RDEPEND="${DEPEND}
- python? ( !dev-python/python-magic )
- seccomp? ( sys-libs/libseccomp[${MULTILIB_USEDEP}] )"
-
-PATCHES=(
- "${FILESDIR}/file-5.39-add-missing-termios.patch" #728416
- "${FILESDIR}/file-5.39-seccomp-musl.patch"
- "${FILESDIR}/file-5.39-portage-sandbox.patch" #713710 #728978
-)
-
-src_prepare() {
- default
-
- if [[ ${PV} == 9999 ]]; then
- eautoreconf
- fi
-
- elibtoolize
-
- # don't let python README kill main README #60043
- mv python/README.md python/README.python.md || die
- sed 's@README.md@README.python.md@' -i python/setup.py || die #662090
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --enable-fsect-man5
- $(use_enable bzip2 bzlib)
- $(use_enable lzma xzlib)
- $(use_enable seccomp libseccomp)
- $(use_enable static-libs static)
- $(use_enable zlib)
- )
- econf "${myeconfargs[@]}"
-}
-
-build_src_configure() {
- local myeconfargs=(
- --disable-shared
- --disable-libseccomp
- --disable-bzlib
- --disable-xzlib
- --disable-zlib
- )
- tc-env_build econf "${myeconfargs[@]}"
-}
-
-need_build_file() {
- # when cross-compiling, we need to build up our own file
- # because people often don't keep matching host/target
- # file versions #362941
- tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}"
-}
-
-src_configure() {
- local ECONF_SOURCE=${S}
-
- if need_build_file; then
- mkdir -p "${WORKDIR}"/build || die
- cd "${WORKDIR}"/build || die
- build_src_configure
- fi
-
- multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi ; then
- emake
- else
- cd src || die
- emake magic.h #586444
- emake libmagic.la
- fi
-}
-
-src_compile() {
- if need_build_file; then
- emake -C "${WORKDIR}"/build/src magic.h #586444
- emake -C "${WORKDIR}"/build/src file
- local -x PATH="${WORKDIR}/build/src:${PATH}"
- fi
- multilib-minimal_src_compile
-
- if use python ; then
- cd python || die
- distutils-r1_src_compile
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi ; then
- default
- else
- emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}"
- fi
-}
-
-multilib_src_install_all() {
- dodoc ChangeLog MAINT README
-
- # Required for `file -C`
- dodir /usr/share/misc/magic
- insinto /usr/share/misc/magic
- doins -r magic/Magdir/*
-
- if use python ; then
- cd python || die
- distutils-r1_src_install
- fi
- find "${ED}" -type f -name "*.la" -delete || die
-}
diff --git a/sys-apps/file/file-5.45-r3.ebuild b/sys-apps/file/file-5.45-r3.ebuild
new file mode 100644
index 000000000000..4bad50bf1169
--- /dev/null
+++ b/sys-apps/file/file-5.45-r3.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 toolchain-funcs multilib-minimal
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/glensc/file.git"
+ inherit autotools git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc
+ inherit autotools verify-sig
+ SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
+ SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )"
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
+fi
+
+DESCRIPTION="Identify a file's format by scanning binary data for patterns"
+HOMEPAGE="https://www.darwinsys.com/file/"
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="bzip2 lzip lzma python seccomp static-libs zlib zstd"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="
+ bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ lzip? ( app-arch/lzlib )
+ lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ )
+ seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
+ zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="
+ ${DEPEND}
+ python? ( !dev-python/python-magic )
+ seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
+"
+BDEPEND+="
+ python? (
+ ${PYTHON_DEPS}
+ ${DISTUTILS_DEPS}
+ )
+"
+
+# https://bugs.gentoo.org/898676
+QA_CONFIG_IMPL_DECL_SKIP=( makedev )
+
+PATCHES=(
+ "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
+ "${FILESDIR}/file-5.45-seccomp-sandbox.patch"
+ "${FILESDIR}/${P}-32-bit-time_t.patch"
+ "${FILESDIR}/${P}-32-bit-time_t-deux.patch"
+ "${FILESDIR}/${P}-weak-magic-shell.patch" #908401
+)
+
+src_prepare() {
+ default
+
+ #if [[ ${PV} == 9999 ]] ; then
+ # eautoreconf
+ #else
+ # elibtoolize
+ #fi
+ # Just for file-5.45-32-bit-time_t-deux.patch, drop in 5.46
+ eautoreconf
+
+ # Don't let python README kill main README, bug #60043
+ mv python/README.md python/README.python.md || die
+
+ # bug #662090
+ sed -i 's@README.md@README.python.md@' python/setup.py || die
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --enable-fsect-man5
+ $(use_enable bzip2 bzlib)
+ $(multilib_native_use_enable lzip lzlib)
+ $(use_enable lzma xzlib)
+ $(use_enable seccomp libseccomp)
+ $(use_enable static-libs static)
+ $(use_enable zlib)
+ $(use_enable zstd zstdlib)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+build_src_configure() {
+ local myeconfargs=(
+ --disable-shared
+ --disable-libseccomp
+ --disable-bzlib
+ --disable-xzlib
+ --disable-zlib
+ )
+
+ econf_build "${myeconfargs[@]}"
+}
+
+need_build_file() {
+ # When cross-compiling, we need to build up our own file
+ # because people often don't keep matching host/target
+ # file versions, bug #362941
+ tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}"
+}
+
+src_configure() {
+ local ECONF_SOURCE="${S}"
+
+ if need_build_file ; then
+ mkdir -p "${WORKDIR}"/build || die
+ cd "${WORKDIR}"/build || die
+ build_src_configure
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi ; then
+ emake
+ else
+ # bug #586444
+ emake -C src magic.h
+ emake -C src libmagic.la
+ fi
+}
+
+src_compile() {
+ if need_build_file ; then
+ # bug #586444
+ emake -C "${WORKDIR}"/build/src magic.h
+ emake -C "${WORKDIR}"/build/src file
+ local -x PATH="${WORKDIR}/build/src:${PATH}"
+ fi
+
+ multilib-minimal_src_compile
+
+ if use python ; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi ; then
+ default
+ else
+ emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}"
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc ChangeLog MAINT # README
+
+ # Required for `file -C`
+ insinto /usr/share/misc/magic
+ doins -r magic/Magdir/*
+
+ if use python ; then
+ cd python || die
+ distutils-r1_src_install
+ fi
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/file/file-5.45-r4.ebuild b/sys-apps/file/file-5.45-r4.ebuild
new file mode 100644
index 000000000000..f822d863338e
--- /dev/null
+++ b/sys-apps/file/file-5.45-r4.ebuild
@@ -0,0 +1,179 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 toolchain-funcs multilib-minimal
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/glensc/file.git"
+ inherit autotools git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc
+ inherit autotools verify-sig
+ SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
+ SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )"
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
+fi
+
+DESCRIPTION="Identify a file's format by scanning binary data for patterns"
+HOMEPAGE="https://www.darwinsys.com/file/"
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="bzip2 lzip lzma python seccomp static-libs zlib zstd"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="
+ bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ lzip? ( app-arch/lzlib )
+ lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
+ seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
+ zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="
+ ${DEPEND}
+ python? (
+ ${PYTHON_DEPS}
+ !dev-python/python-magic
+ )
+ seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
+"
+BDEPEND+="
+ python? (
+ ${PYTHON_DEPS}
+ ${DISTUTILS_DEPS}
+ )
+"
+
+# https://bugs.gentoo.org/898676
+QA_CONFIG_IMPL_DECL_SKIP=( makedev )
+
+PATCHES=(
+ "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
+ "${FILESDIR}/file-5.45-seccomp-sandbox.patch"
+ "${FILESDIR}/${P}-32-bit-time_t.patch"
+ "${FILESDIR}/${P}-32-bit-time_t-deux.patch"
+ "${FILESDIR}/${P}-weak-magic-shell.patch" #908401
+)
+
+src_prepare() {
+ default
+
+ #if [[ ${PV} == 9999 ]] ; then
+ # eautoreconf
+ #else
+ # elibtoolize
+ #fi
+ # Just for file-5.45-32-bit-time_t-deux.patch, drop in 5.46
+ eautoreconf
+
+ # Don't let python README kill main README, bug #60043
+ mv python/README.md python/README.python.md || die
+
+ # bug #662090
+ sed -i 's@README.md@README.python.md@' python/setup.py || die
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --enable-fsect-man5
+ $(use_enable bzip2 bzlib)
+ $(multilib_native_use_enable lzip lzlib)
+ $(use_enable lzma xzlib)
+ $(use_enable seccomp libseccomp)
+ $(use_enable static-libs static)
+ $(use_enable zlib)
+ $(use_enable zstd zstdlib)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+build_src_configure() {
+ local myeconfargs=(
+ --disable-shared
+ --disable-libseccomp
+ --disable-bzlib
+ --disable-xzlib
+ --disable-zlib
+ )
+
+ econf_build "${myeconfargs[@]}"
+}
+
+need_build_file() {
+ # When cross-compiling, we need to build up our own file
+ # because people often don't keep matching host/target
+ # file versions, bug #362941
+ tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}"
+}
+
+src_configure() {
+ local ECONF_SOURCE="${S}"
+
+ if need_build_file ; then
+ mkdir -p "${WORKDIR}"/build || die
+ cd "${WORKDIR}"/build || die
+ build_src_configure
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi ; then
+ emake
+ else
+ # bug #586444
+ emake -C src magic.h
+ emake -C src libmagic.la
+ fi
+}
+
+src_compile() {
+ if need_build_file ; then
+ # bug #586444
+ emake -C "${WORKDIR}"/build/src magic.h
+ emake -C "${WORKDIR}"/build/src file
+ local -x PATH="${WORKDIR}/build/src:${PATH}"
+ fi
+
+ multilib-minimal_src_compile
+
+ if use python ; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi ; then
+ default
+ else
+ emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}"
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc ChangeLog MAINT # README
+
+ # Required for `file -C`
+ insinto /usr/share/misc/magic
+ doins -r magic/Magdir/*
+
+ if use python ; then
+ cd python || die
+ distutils-r1_src_install
+ fi
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/file/file-9999.ebuild b/sys-apps/file/file-9999.ebuild
index 71c29604e7d5..19c650b61358 100644
--- a/sys-apps/file/file-9999.ebuild
+++ b/sys-apps/file/file-9999.ebuild
@@ -1,68 +1,95 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_PEP517=setuptools
DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{10..11} )
inherit distutils-r1 libtool toolchain-funcs multilib-minimal
-if [[ ${PV} == "9999" ]] ; then
+if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/glensc/file.git"
inherit autotools git-r3
else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc
+ inherit verify-sig
SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )"
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
fi
-DESCRIPTION="identify a file's format by scanning binary data for patterns"
+DESCRIPTION="Identify a file's format by scanning binary data for patterns"
HOMEPAGE="https://www.darwinsys.com/file/"
LICENSE="BSD-2"
SLOT="0"
-IUSE="bzip2 lzma python seccomp static-libs zlib"
+IUSE="bzip2 lzip lzma python seccomp static-libs zlib zstd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
DEPEND="
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ lzip? ( app-arch/lzlib )
lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
+ seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
+ zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="
+ ${DEPEND}
python? (
${PYTHON_DEPS}
- dev-python/setuptools[${PYTHON_USEDEP}]
+ !dev-python/python-magic
)
- zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )"
-RDEPEND="${DEPEND}
- python? ( !dev-python/python-magic )
- seccomp? ( sys-libs/libseccomp[${MULTILIB_USEDEP}] )"
+ seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
+"
+BDEPEND+="
+ python? (
+ ${PYTHON_DEPS}
+ ${DISTUTILS_DEPS}
+ )
+"
+
+# https://bugs.gentoo.org/898676
+QA_CONFIG_IMPL_DECL_SKIP=( makedev )
PATCHES=(
- "${FILESDIR}/file-5.39-portage-sandbox.patch" #713710 #728978
+ "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
+ "${FILESDIR}/file-5.43-portage-sandbox.patch" #889046
)
src_prepare() {
default
- if [[ ${PV} == 9999 ]]; then
+ if [[ ${PV} == 9999 ]] ; then
eautoreconf
+ else
+ elibtoolize
fi
- elibtoolize
-
- # don't let python README kill main README #60043
+ # Don't let python README kill main README, bug #60043
mv python/README.md python/README.python.md || die
- sed 's@README.md@README.python.md@' -i python/setup.py || die #662090
+
+ # bug #662090
+ sed -i 's@README.md@README.python.md@' python/setup.py || die
}
multilib_src_configure() {
local myeconfargs=(
--enable-fsect-man5
$(use_enable bzip2 bzlib)
+ $(multilib_native_use_enable lzip lzlib)
$(use_enable lzma xzlib)
$(use_enable seccomp libseccomp)
$(use_enable static-libs static)
$(use_enable zlib)
+ $(use_enable zstd zstdlib)
)
+
econf "${myeconfargs[@]}"
}
@@ -74,20 +101,21 @@ build_src_configure() {
--disable-xzlib
--disable-zlib
)
- tc-env_build econf "${myeconfargs[@]}"
+
+ econf_build "${myeconfargs[@]}"
}
need_build_file() {
- # when cross-compiling, we need to build up our own file
+ # When cross-compiling, we need to build up our own file
# because people often don't keep matching host/target
- # file versions #362941
+ # file versions, bug #362941
tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}"
}
src_configure() {
- local ECONF_SOURCE=${S}
+ local ECONF_SOURCE="${S}"
- if need_build_file; then
+ if need_build_file ; then
mkdir -p "${WORKDIR}"/build || die
cd "${WORKDIR}"/build || die
build_src_configure
@@ -100,18 +128,20 @@ multilib_src_compile() {
if multilib_is_native_abi ; then
emake
else
- cd src || die
- emake magic.h #586444
- emake libmagic.la
+ # bug #586444
+ emake -C src magic.h
+ emake -C src libmagic.la
fi
}
src_compile() {
- if need_build_file; then
- emake -C "${WORKDIR}"/build/src magic.h #586444
+ if need_build_file ; then
+ # bug #586444
+ emake -C "${WORKDIR}"/build/src magic.h
emake -C "${WORKDIR}"/build/src file
local -x PATH="${WORKDIR}/build/src:${PATH}"
fi
+
multilib-minimal_src_compile
if use python ; then
@@ -129,10 +159,9 @@ multilib_src_install() {
}
multilib_src_install_all() {
- dodoc ChangeLog MAINT README
+ dodoc ChangeLog MAINT # README
# Required for `file -C`
- dodir /usr/share/misc/magic
insinto /usr/share/misc/magic
doins -r magic/Magdir/*
@@ -140,5 +169,6 @@ multilib_src_install_all() {
cd python || die
distutils-r1_src_install
fi
+
find "${ED}" -type f -name "*.la" -delete || die
}
diff --git a/sys-apps/file/files/file-5.37-CVE-2019-18218.patch b/sys-apps/file/files/file-5.37-CVE-2019-18218.patch
deleted file mode 100644
index 1cd02b778abf..000000000000
--- a/sys-apps/file/files/file-5.37-CVE-2019-18218.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-CVE-2019-18218
-https://github.com/file/file/commit/46a8443f76cec4b41ec736eca396984c74664f84
-
---- a/src/cdf.c
-+++ b/src/cdf.c
-@@ -1027,8 +1027,9 @@ cdf_read_property_info(const cdf_stream_t *sst, const cdf_header_t *h,
- goto out;
- }
- nelements = CDF_GETUINT32(q, 1);
-- if (nelements == 0) {
-- DPRINTF(("CDF_VECTOR with nelements == 0\n"));
-+ if (nelements > CDF_ELEMENT_LIMIT || nelements == 0) {
-+ DPRINTF(("CDF_VECTOR with nelements == %"
-+ SIZE_T_FORMAT "u\n", nelements));
- goto out;
- }
- slen = 2;
-@@ -1070,8 +1071,6 @@ cdf_read_property_info(const cdf_stream_t *sst, const cdf_header_t *h,
- goto out;
- inp += nelem;
- }
-- DPRINTF(("nelements = %" SIZE_T_FORMAT "u\n",
-- nelements));
- for (j = 0; j < nelements && i < sh.sh_properties;
- j++, i++)
- {
---- a/src/cdf.h
-+++ b/src/cdf.h
-@@ -48,6 +48,7 @@
- typedef int32_t cdf_secid_t;
-
- #define CDF_LOOP_LIMIT 10000
-+#define CDF_ELEMENT_LIMIT 100000
-
- #define CDF_SECID_NULL 0
- #define CDF_SECID_FREE -1
diff --git a/sys-apps/file/files/file-5.38-Revert-PR-93-iaeiaeiaeiae-Do-as-the-comment-says-and.patch b/sys-apps/file/files/file-5.38-Revert-PR-93-iaeiaeiaeiae-Do-as-the-comment-says-and.patch
deleted file mode 100644
index 240edc11f680..000000000000
--- a/sys-apps/file/files/file-5.38-Revert-PR-93-iaeiaeiaeiae-Do-as-the-comment-says-and.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From c9d21a58bea2ecb2dc8876e09e471094d54a25e4 Mon Sep 17 00:00:00 2001
-From: Thomas Deutschmann <whissi@gentoo.org>
-Date: Mon, 13 Apr 2020 01:08:12 +0200
-Subject: [PATCH 1/3] Revert "PR/93: iaeiaeiaeiae: Do as the comment says, and
- count as dynamically linked"
-
-This reverts commit 24c9c086cd7c55b7b0a003a145b32466468e2608.
-
-Fixes misdetection of shared libraries as statically linked as
-reported in bug 717264.
-
-Bug: https://bugs.gentoo.org/717264
-Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
----
- src/readelf.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/readelf.c b/src/readelf.c
-index 40bcfab1..afec31d1 100644
---- a/src/readelf.c
-+++ b/src/readelf.c
-@@ -1638,6 +1638,7 @@ dophn_exec(struct magic_set *ms, int clazz, int swap, int fd, off_t off,
- /* Things we can determine before we seek */
- switch (xph_type) {
- case PT_DYNAMIC:
-+ linking_style = "dynamically";
- doread = 1;
- break;
- case PT_NOTE:
-@@ -1653,7 +1654,6 @@ dophn_exec(struct magic_set *ms, int clazz, int swap, int fd, off_t off,
- }
- /*FALLTHROUGH*/
- case PT_INTERP:
-- linking_style = "dynamically";
- doread = 1;
- break;
- default:
---
-2.26.0
-
diff --git a/sys-apps/file/files/file-5.38-The-executable-bit-is-only-set-when-DF_1_PIE-bit-is-.patch b/sys-apps/file/files/file-5.38-The-executable-bit-is-only-set-when-DF_1_PIE-bit-is-.patch
deleted file mode 100644
index bb211f355f77..000000000000
--- a/sys-apps/file/files/file-5.38-The-executable-bit-is-only-set-when-DF_1_PIE-bit-is-.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From ed971e5e3ae79bd28697d16c8b78b693052484e4 Mon Sep 17 00:00:00 2001
-From: Christos Zoulas <christos@zoulas.com>
-Date: Wed, 12 Feb 2020 22:17:33 +0000
-Subject: [PATCH 3/3] The executable bit is only set when DF_1_PIE bit is set
- so it is fine.
-
----
- magic/Magdir/elf | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/magic/Magdir/elf b/magic/Magdir/elf
-index b5a2e00b..f5e1af9a 100644
---- a/magic/Magdir/elf
-+++ b/magic/Magdir/elf
-@@ -50,8 +50,9 @@
- !:mime application/x-object
- >16 leshort 2 executable,
- !:mime application/x-executable
-->16 leshort 3 shared object,
--!:mime application/x-sharedlib
-+>16 leshort 3 ${x?pie executable:shared object},
-+
-+!:mime application/x-${x?pie-executable:sharedlib}
- >16 leshort 4 core file,
- !:mime application/x-coredump
- # OS-specific
---
-2.26.0
-
diff --git a/sys-apps/file/files/file-5.38-td-is-for-ptrdiff_t-not-for-off_t.patch b/sys-apps/file/files/file-5.38-td-is-for-ptrdiff_t-not-for-off_t.patch
deleted file mode 100644
index 09fcaef151ea..000000000000
--- a/sys-apps/file/files/file-5.38-td-is-for-ptrdiff_t-not-for-off_t.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From c49dc91df427f89ebcf9cdec556b8fc88cdfc3c1 Mon Sep 17 00:00:00 2001
-From: Christos Zoulas <christos@zoulas.com>
-Date: Tue, 17 Dec 2019 15:27:27 +0000
-Subject: [PATCH 2/3] %td is for ptrdiff_t not for off_t.
-
----
- src/readelf.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/readelf.c b/src/readelf.c
-index afec31d1..8ac3b7d6 100644
---- a/src/readelf.c
-+++ b/src/readelf.c
-@@ -1349,8 +1349,8 @@ doshn(struct magic_set *ms, int clazz, int swap, int fd, off_t off, int num,
- name_off = xsh_offset;
-
- if (fsize != SIZE_UNKNOWN && fsize < name_off) {
-- if (file_printf(ms, ", too large section header offset %td",
-- name_off) == -1)
-+ if (file_printf(ms, ", too large section header offset %jd",
-+ (intmax_t)name_off) == -1)
- return -1;
- return 0;
- }
---
-2.26.0
-
diff --git a/sys-apps/file/files/file-5.39-add-missing-termios.patch b/sys-apps/file/files/file-5.39-add-missing-termios.patch
deleted file mode 100644
index 0614f52dd275..000000000000
--- a/sys-apps/file/files/file-5.39-add-missing-termios.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 471e2c6c61ecd30ba6e304ae0444d364cfd44254 Mon Sep 17 00:00:00 2001
-From: Christos Zoulas <christos@zoulas.com>
-Date: Thu, 18 Jun 2020 16:25:12 +0000
-Subject: [PATCH] PR/168: gyakovlev: Include <termios.h>
-
----
- src/seccomp.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/seccomp.c b/src/seccomp.c
-index e667adfe4..68c56485d 100644
---- a/src/seccomp.c
-+++ b/src/seccomp.c
-@@ -27,7 +27,7 @@
- #include "file.h"
-
- #ifndef lint
--FILE_RCSID("@(#)$File: seccomp.c,v 1.15 2020/05/30 23:56:26 christos Exp $")
-+FILE_RCSID("@(#)$File: seccomp.c,v 1.16 2020/06/18 16:25:12 christos Exp $")
- #endif /* lint */
-
- #if HAVE_LIBSECCOMP
-@@ -35,6 +35,7 @@ FILE_RCSID("@(#)$File: seccomp.c,v 1.15 2020/05/30 23:56:26 christos Exp $")
- #include <sys/prctl.h> /* prctl */
- #include <sys/ioctl.h>
- #include <sys/socket.h>
-+#include <termios.h>
- #include <fcntl.h>
- #include <stdlib.h>
- #include <errno.h>
diff --git a/sys-apps/file/files/file-5.39-portage-sandbox.patch b/sys-apps/file/files/file-5.39-portage-sandbox.patch
deleted file mode 100644
index 3ea26641671f..000000000000
--- a/sys-apps/file/files/file-5.39-portage-sandbox.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 81765a2d4fcce23f42495d5ec03bbfecb2a3c381 Mon Sep 17 00:00:00 2001
-From: tka <tka@kamph.org>
-Date: Wed, 24 Jun 2020 11:18:45 +0200
-Subject: [PATCH] Allow getcwd for Gentoo's portage sandbox
-
-Bug: https://bugs.gentoo.org/728978
----
- src/seccomp.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/seccomp.c b/src/seccomp.c
-index db9364ae..7f5d6f26 100644
---- a/src/seccomp.c
-+++ b/src/seccomp.c
-@@ -229,6 +229,8 @@ enable_sandbox_full(void)
- ALLOW_RULE(write);
- ALLOW_RULE(writev);
-
-+ // needed by Gentoo's portage sandbox
-+ ALLOW_RULE(getcwd);
-
- #if 0
- // needed by valgrind
---
-2.28.0
-
diff --git a/sys-apps/file/files/file-5.39-seccomp-musl.patch b/sys-apps/file/files/file-5.39-seccomp-musl.patch
deleted file mode 100644
index 72836de67e58..000000000000
--- a/sys-apps/file/files/file-5.39-seccomp-musl.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 93c91e2ba8042d499fee168e27cbd526438454c6 Mon Sep 17 00:00:00 2001
-From: Christos Zoulas <christos@zoulas.com>
-Date: Sat, 5 Sep 2020 17:20:32 +0000
-Subject: [PATCH] PR/194: puchuu: Handle muslc syscalls
-
----
- src/seccomp.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/seccomp.c b/src/seccomp.c
-index 68c56485d..db9364ae4 100644
---- a/src/seccomp.c
-+++ b/src/seccomp.c
-@@ -27,7 +27,7 @@
- #include "file.h"
-
- #ifndef lint
--FILE_RCSID("@(#)$File: seccomp.c,v 1.16 2020/06/18 16:25:12 christos Exp $")
-+FILE_RCSID("@(#)$File: seccomp.c,v 1.17 2020/09/05 17:20:32 christos Exp $")
- #endif /* lint */
-
- #if HAVE_LIBSECCOMP
-@@ -220,12 +220,14 @@ enable_sandbox_full(void)
- ALLOW_RULE(rt_sigreturn);
- ALLOW_RULE(select);
- ALLOW_RULE(stat);
-+ ALLOW_RULE(statx);
- ALLOW_RULE(stat64);
- ALLOW_RULE(sysinfo);
- ALLOW_RULE(umask); // Used in file_pipe2file()
- ALLOW_RULE(getpid); // Used by glibc in file_pipe2file()
- ALLOW_RULE(unlink);
- ALLOW_RULE(write);
-+ ALLOW_RULE(writev);
-
-
- #if 0
diff --git a/sys-apps/file/files/file-5.43-seccomp-fstatat64-musl.patch b/sys-apps/file/files/file-5.43-seccomp-fstatat64-musl.patch
new file mode 100644
index 000000000000..a039882ac8d7
--- /dev/null
+++ b/sys-apps/file/files/file-5.43-seccomp-fstatat64-musl.patch
@@ -0,0 +1,22 @@
+From 8c13923a8e17a02be0989649b2edc20124816729 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Tue, 15 Jun 2021 16:08:22 -0400
+Subject: [PATCH] seccomp: undef fstatat64 to avoid build failure on musl
+
+sys/stat.h in musl does this:
+
+ #define fstatat64 fstatat
+
+Counteract this with an #undef.
+
+Bug: https://bugs.gentoo.org/789336
+--- a/src/seccomp.c
++++ b/src/seccomp.c
+@@ -182,6 +182,7 @@ enable_sandbox_full(void)
+ #endif
+ ALLOW_RULE(fstat64);
+ #ifdef __NR_fstatat64
++#undef fstatat64
+ ALLOW_RULE(fstatat64);
+ #endif
+ ALLOW_RULE(futex);
diff --git a/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch b/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch
new file mode 100644
index 000000000000..8c1e0934145c
--- /dev/null
+++ b/sys-apps/file/files/file-5.45-32-bit-time_t-deux.patch
@@ -0,0 +1,29 @@
+https://github.com/file/file/commit/8dc5513908381a14981b16a85d59ba054bf4df52
+
+From 8dc5513908381a14981b16a85d59ba054bf4df52 Mon Sep 17 00:00:00 2001
+From: Christos Zoulas <christos@zoulas.com>
+Date: Mon, 31 Jul 2023 15:56:12 +0000
+Subject: [PATCH] Check if we support _TIME_BITS. (Werner Fink)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -152,6 +152,18 @@ AC_TYPE_UINT64_T
+ AC_TYPE_INT64_T
+ AC_TYPE_INTPTR_T
+ AC_TYPE_UINTPTR_T
++m4_ifdef([AC_SYS_YEAR2038], [AC_SYS_YEAR2038], [
++# GNU libc only allows setting _TIME_BITS when FILE_OFFSET_BITS is also set.
++# GNU libc defines __TIMESIZE on systems where _TIME_BITS can be set.
++AS_IF([test X"$ac_cv_sys_file_offset_bits" = X"64"], [
++ AC_CHECK_DECL(__TIMESIZE, [
++ AC_DEFINE([_TIME_BITS], [64], [Number of bits in a timestamp, on hosts where this is settable.])
++ ], [], [
++AC_INCLUDES_DEFAULT
++#include <time.h>
++ ])
++ ])
++])
+ AC_FUNC_MMAP
+ AC_FUNC_FORK
+ AC_FUNC_MBRTOWC
+
diff --git a/sys-apps/file/files/file-5.45-32-bit-time_t.patch b/sys-apps/file/files/file-5.45-32-bit-time_t.patch
new file mode 100644
index 000000000000..c86a46207e60
--- /dev/null
+++ b/sys-apps/file/files/file-5.45-32-bit-time_t.patch
@@ -0,0 +1,34 @@
+https://mailman.astron.com/pipermail/file/2023-July/001206.html
+https://github.com/file/file/commit/218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1
+
+From 218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1 Mon Sep 17 00:00:00 2001
+From: Christos Zoulas <christos@zoulas.com>
+Date: Fri, 28 Jul 2023 14:38:25 +0000
+Subject: [PATCH] deal with 32 bit time_t
+
+--- a/src/file.h
++++ b/src/file.h
+@@ -27,7 +27,7 @@
+ */
+ /*
+ * file.h - definitions for file(1) program
+- * @(#)$File: file.h,v 1.247 2023/07/27 19:40:22 christos Exp $
++ * @(#)$File: file.h,v 1.248 2023/07/28 14:38:25 christos Exp $
+ */
+
+ #ifndef __file_h__
+@@ -159,9 +159,11 @@
+ /*
+ * Dec 31, 23:59:59 9999
+ * we need to make sure that we don't exceed 9999 because some libc
+- * implementations like muslc crash otherwise
++ * implementations like muslc crash otherwise. If you are unlucky
++ * to be running on a system with a 32 bit time_t, then it is even less.
+ */
+-#define MAX_CTIME CAST(time_t, 0x3afff487cfULL)
++#define MAX_CTIME \
++ CAST(time_t, sizeof(time_t) > 4 ? 0x3afff487cfULL : 0x7fffffffULL)
+
+ #define FILE_BADSIZE CAST(size_t, ~0ul)
+ #define MAXDESC 64 /* max len of text description/MIME type */
+
diff --git a/sys-apps/file/files/file-5.45-seccomp-sandbox.patch b/sys-apps/file/files/file-5.45-seccomp-sandbox.patch
new file mode 100644
index 000000000000..d5f499d395f5
--- /dev/null
+++ b/sys-apps/file/files/file-5.45-seccomp-sandbox.patch
@@ -0,0 +1,56 @@
+From b05f904dc5df267f90c6489817a379cb7f7f62ee Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Thu, 19 Oct 2023 13:58:20 -0400
+Subject: [PATCH] seccomp: allow syscalls used by Gentoo's LD_PRELOAD sandbox
+
+Bug: https://bugs.gentoo.org/728978
+Bug: https://bugs.gentoo.org/889046
+Bug: https://bugs.gentoo.org/915890
+---
+ src/seccomp.c | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/src/seccomp.c b/src/seccomp.c
+index 87d4c49e..f1804660 100644
+--- a/src/seccomp.c
++++ b/src/seccomp.c
+@@ -174,6 +174,9 @@ enable_sandbox_full(void)
+ ALLOW_RULE(exit_group);
+ #ifdef __NR_faccessat
+ ALLOW_RULE(faccessat);
++#endif
++#ifdef __NR_faccessat2
++ ALLOW_RULE(faccessat2);
+ #endif
+ ALLOW_RULE(fcntl);
+ ALLOW_RULE(fcntl64);
+@@ -185,9 +188,26 @@ enable_sandbox_full(void)
+ ALLOW_RULE(fstatat64);
+ #endif
+ ALLOW_RULE(futex);
++ ALLOW_RULE(getcwd);
+ ALLOW_RULE(getdents);
+ #ifdef __NR_getdents64
+ ALLOW_RULE(getdents64);
++#endif
++ ALLOW_RULE(getegid);
++#ifdef __NR_getegid32
++ ALLOW_RULE(getegid32);
++#endif
++ ALLOW_RULE(geteuid);
++#ifdef __NR_geteuid32
++ ALLOW_RULE(geteuid32);
++#endif
++ ALLOW_RULE(getgid);
++#ifdef __NR_getgid32
++ ALLOW_RULE(getgid32);
++#endif
++ ALLOW_RULE(getuid);
++#ifdef __NR_getuid32
++ ALLOW_RULE(getuid32);
+ #endif
+ #ifdef FIONREAD
+ // called in src/compress.c under sread
+--
+2.42.0
+
diff --git a/sys-apps/file/files/file-5.45-weak-magic-shell.patch b/sys-apps/file/files/file-5.45-weak-magic-shell.patch
new file mode 100644
index 000000000000..cdcab736b64e
--- /dev/null
+++ b/sys-apps/file/files/file-5.45-weak-magic-shell.patch
@@ -0,0 +1,43 @@
+https://bugs.gentoo.org/908401
+https://bugs.astron.com/view.php?id=457
+https://github.com/file/file/commit/1fc9175166fc5c5117838a1dcfb309b7c595eb56
+
+From 1fc9175166fc5c5117838a1dcfb309b7c595eb56 Mon Sep 17 00:00:00 2001
+From: Christos Zoulas <christos@zoulas.com>
+Date: Sun, 30 Jul 2023 16:31:47 +0000
+Subject: [PATCH] Comment out weak magic
+
+--- a/magic/Magdir/printer
++++ b/magic/Magdir/printer
+@@ -1,6 +1,6 @@
+
+ #------------------------------------------------------------------------------
+-# $File: printer,v 1.34 2023/06/16 19:27:12 christos Exp $
++# $File: printer,v 1.35 2023/07/30 16:31:47 christos Exp $
+ # printer: file(1) magic for printer-formatted files
+ #
+
+@@ -230,8 +230,9 @@
+ 0 string PS4
+ >0 use hpgl
+ # la.hp
+-0 string BP
+->0 use hpgl
++# Too weak
++#0 string BP
++#>0 use hpgl
+ # miter.hp
+ # Plot Absolute x,y{,x,y{...}}; x and y in range between -32767 and 32768 like: PA4000,3000;
+ 0 string PA
+@@ -241,8 +242,9 @@
+ #>2 regex \^([-]{0,1}[0-9]{1,5}) COORDINATE=%s
+ >>0 use hpgl
+ # pw.hpg number of pens x
+-0 string NP
+->0 use hpgl
++# Too weak
++#0 string NP
++#>0 use hpgl
+ # win_1.hp
+ #0 string \003INCA WHAT_IS_THAT
+ #>0 use hpgl
diff --git a/sys-apps/file/metadata.xml b/sys-apps/file/metadata.xml
index 6e4080f7c328..9d92ca28bc24 100644
--- a/sys-apps/file/metadata.xml
+++ b/sys-apps/file/metadata.xml
@@ -1,12 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <bugs-to>https://bugs.astron.com/</bugs-to>
- <remote-id type="cpe">cpe:/a:file_project:file</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugs.astron.com/</bugs-to>
+ <remote-id type="cpe">cpe:/a:file_project:file</remote-id>
+ <remote-id type="github">file/file</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/findutils/Manifest b/sys-apps/findutils/Manifest
index 61aa8b5fa95a..48148583bc1c 100644
--- a/sys-apps/findutils/Manifest
+++ b/sys-apps/findutils/Manifest
@@ -1 +1,2 @@
-DIST findutils-4.7.0.tar.xz 1895048 BLAKE2B 5d9f1f2f6bc47415057f9139af3d28abae7be9f812a15bce6016a4478eb3206f35c9329f281fda892f614d017f4f5615003ad60b6a74996ebfad81b1f4b54bf0 SHA512 650a24507f8f4ebff83ad28dd27daa4785b4038dcaadc4fe00823b976e848527074cce3f9ec34065b7f037436d2aa6e9ec099bc05d7472c29864ac2c69de7f2e
+DIST findutils-4.9.0.tar.xz 2046252 BLAKE2B 3ada8903fc552ad2e580a7b631a4b9d941935b3f4231029564c6f2b7b10ba6f2244e2de57f6d79268c5e0481a193f64edbbae637e7a51ae6f495e3eefabf52c9 SHA512 ba4844f4403de0148ad14b46a3dbefd5a721f6257c864bf41a6789b11705408524751c627420b15a52af95564d8e5b52f0978474f640a62ab86a41d20cf14be9
+DIST findutils-4.9.0.tar.xz.sig 488 BLAKE2B 7aab47ccb1351f08be03e781332b79d6778ff0d5d7959adf75fa8eab11325ee9971c89972338edfb58daac7f702891a1a5dd8379a703ccfa601e6b99db588197 SHA512 b8e0b5471242912a20b9e468fa27b7f27339af5f7be8918173105262dee0152183bf4cf516844d348b206a694e028490d5d3b190f3aed8c698ba5444941f8dfc
diff --git a/sys-apps/findutils/files/findutils-4.9.0-dash-tests.patch b/sys-apps/findutils/files/findutils-4.9.0-dash-tests.patch
new file mode 100644
index 000000000000..5bbc632e7710
--- /dev/null
+++ b/sys-apps/findutils/files/findutils-4.9.0-dash-tests.patch
@@ -0,0 +1,41 @@
+https://git.savannah.gnu.org/cgit/findutils.git/commit/?id=a5b2e20d8
+
+From a5b2e20d8f93e96817e00af6dd0a4c914580e8a2 Mon Sep 17 00:00:00 2001
+From: Bernhard Voelker <mail@bernhard-voelker.de>
+Date: Tue, 23 May 2023 01:57:47 +0200
+Subject: tests: fix FP in xargs test when /bin/sh is dash
+
+Dash as /bin/sh apparently does not know $'\n' syntax.
+
+* tests/xargs/verbose-quote.sh: Define NL variable for newline character;
+change from $'\n' syntax to the above variable when generating input
+for xargs.
+
+Fixes https://sv.gnu.org/bugs/?63934
+---
+ tests/xargs/verbose-quote.sh | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/tests/xargs/verbose-quote.sh b/tests/xargs/verbose-quote.sh
+index d25f7db..e3607ce 100755
+--- a/tests/xargs/verbose-quote.sh
++++ b/tests/xargs/verbose-quote.sh
+@@ -28,12 +28,15 @@ printf "%s\n" \
+ || framework_failure_
+
+ # Run xargs with -t for verious commands which require quoting.
++# (Use NL because dash as /bin/sh does not know $'\n' syntax.)
++nl='
++'
+ printf '%s\0' \
+ 000 \
+ '10 0' \
+ '20"0' \
+ "30'0" \
+- 40$'\n'0 \
++ "40${nl}0" \
+ | xargs -0t '-I{}' './my command' 'hel lo' '{}' world > out 2> err \
+ || fail=1
+
+--
+cgit v1.1
diff --git a/sys-apps/findutils/findutils-4.7.0.ebuild b/sys-apps/findutils/findutils-4.7.0.ebuild
deleted file mode 100644
index d708ec6f23ca..000000000000
--- a/sys-apps/findutils/findutils-4.7.0.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit flag-o-matic toolchain-funcs python-any-r1
-
-DESCRIPTION="GNU utilities for finding files"
-HOMEPAGE="https://www.gnu.org/software/findutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls selinux static test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="selinux? ( sys-libs/libselinux )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
- test? ( ${PYTHON_DEPS} )
-"
-BDEPEND="
- nls? ( sys-devel/gettext )
-"
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # Don't build or install locate because it conflicts with mlocate,
- # which is a secure version of locate. See bug 18729
- sed \
- -e '/^SUBDIRS/s@locate@@' \
- -e '/^built_programs/s@ frcode locate updatedb@@' \
- -i Makefile.in || die
-
- default
-}
-
-src_configure() {
- if use static; then
- append-flags -pthread
- append-ldflags -static
- fi
-
- program_prefix=$(usex userland_GNU '' g)
- local myeconfargs=(
- --with-packager="Gentoo"
- --with-packager-version="${PVR}"
- --with-packager-bug-reports="https://bugs.gentoo.org/"
- --program-prefix=${program_prefix}
- $(use_enable nls)
- $(use_with selinux)
- --libexecdir='$(libdir)'/find
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- # We don't build locate, but the docs want a file in there.
- emake -C locate dblocation.texi
- default
-}
diff --git a/sys-apps/findutils/findutils-4.9.0-r2.ebuild b/sys-apps/findutils/findutils-4.9.0-r2.ebuild
new file mode 100644
index 000000000000..2d767d0f1a44
--- /dev/null
+++ b/sys-apps/findutils/findutils-4.9.0-r2.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/findutils.asc
+inherit flag-o-matic python-any-r1 verify-sig
+
+DESCRIPTION="GNU utilities for finding files"
+HOMEPAGE="https://www.gnu.org/software/findutils/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="nls selinux static test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ selinux? ( sys-libs/libselinux )
+ nls? ( virtual/libintl )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ nls? ( sys-devel/gettext )
+ test? (
+ ${PYTHON_DEPS}
+ dev-util/dejagnu
+ )
+ verify-sig? ( sec-keys/openpgp-keys-findutils )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-dash-tests.patch
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Don't build or install locate because it conflicts with mlocate,
+ # which is a secure version of locate. See bug 18729
+ sed \
+ -e '/^SUBDIRS/s@locate@@' \
+ -e '/^built_programs/s@ frcode locate updatedb@@' \
+ -i Makefile.in || die
+
+ default
+}
+
+src_configure() {
+ if use static; then
+ append-flags -pthread
+ append-ldflags -static
+ fi
+
+ append-lfs-flags
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00050.html
+ # https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00051.html
+ append-cppflags '-D__nonnull\(X\)='
+ fi
+
+ local myeconfargs=(
+ --with-packager="Gentoo"
+ --with-packager-version="${PVR}"
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+ $(use_enable nls)
+ $(use_with selinux)
+ --libexecdir='$(libdir)'/find
+ # rename to gfind, gxargs for better BSD compatibility
+ --program-prefix=g
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ local -x SANDBOX_PREDICT=${SANDBOX_PREDICT}
+ addpredict /
+ default
+}
+
+src_compile() {
+ # We don't build locate, but the docs want a file in there.
+ emake -C locate dblocation.texi
+ default
+}
+
+src_install() {
+ default
+
+ # symlink to the standard names
+ dosym gfind /usr/bin/find
+ dosym gxargs /usr/bin/xargs
+ dosym gfind.1 /usr/share/man/man1/find.1
+ dosym gxargs.1 /usr/share/man/man1/xargs.1
+}
diff --git a/sys-apps/findutils/metadata.xml b/sys-apps/findutils/metadata.xml
index b385831efd34..36d37d7a5a35 100644
--- a/sys-apps/findutils/metadata.xml
+++ b/sys-apps/findutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:gnu:findutils</remote-id>
+ <remote-id type="savannah">findutils</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/firejail-lts/Manifest b/sys-apps/firejail-lts/Manifest
deleted file mode 100644
index 39d94c6c0465..000000000000
--- a/sys-apps/firejail-lts/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST firejail-lts-0.9.56.2.tar.gz 934289 BLAKE2B ff8b27f57da90cd94d3ec9b83c8398b7c569b09008f61094bd9aca15e996cd7a4d559e87168228271ccba4c9fe8e1ce97fa5045596f950f3ac2d8593b9ea5838 SHA512 75edc0405fa3fd7f2f5d7831f7f4e838ed63bacadd7f9a869a1611908c716a333251b602ff0bd70e3f98627418e84541b26790d34e644f60d97e84e9c33f873a
diff --git a/sys-apps/firejail-lts/files/firejail-lts-fix-compressed-manpages.patch b/sys-apps/firejail-lts/files/firejail-lts-fix-compressed-manpages.patch
deleted file mode 100644
index 313c1c2a9dd3..000000000000
--- a/sys-apps/firejail-lts/files/firejail-lts-fix-compressed-manpages.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/Makefile.in b/Makefile.in
-index 9dafb56..4117468 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -127,10 +127,9 @@ endif
- install -m 0755 -d $(DESTDIR)/$(mandir)/man5
- for man in $(MANPAGES); do \
- rm -f $$man.gz; \
-- gzip -9n $$man; \
- case "$$man" in \
-- *.1) install -c -m 0644 $$man.gz $(DESTDIR)/$(mandir)/man1/; ;; \
-- *.5) install -c -m 0644 $$man.gz $(DESTDIR)/$(mandir)/man5/; ;; \
-+ *.1) install -c -m 0644 $$man $(DESTDIR)/$(mandir)/man1/; ;; \
-+ *.5) install -c -m 0644 $$man $(DESTDIR)/$(mandir)/man5/; ;; \
- esac; \
- done
- rm -f $(MANPAGES) $(MANPAGES:%=%.gz)
diff --git a/sys-apps/firejail-lts/firejail-lts-0.9.56.2-r1.ebuild b/sys-apps/firejail-lts/firejail-lts-0.9.56.2-r1.ebuild
deleted file mode 100644
index 736d806a8f6f..000000000000
--- a/sys-apps/firejail-lts/firejail-lts-0.9.56.2-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Security sandbox for any type of processes; LTS version"
-HOMEPAGE="https://firejail.wordpress.com/"
-
-MY_PN=firejail
-
-SRC_URI="https://github.com/netblue30/${MY_PN}/archive/${PV}-LTS.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE="apparmor +globalcfg +network +seccomp +suid +userns test +whitelist"
-RESTRICT="!test? ( test )"
-
-DEPEND="!sys-apps/firejail
- apparmor? ( sys-libs/libapparmor )
- test? ( dev-tcltk/expect )"
-
-RDEPEND="apparmor? ( sys-libs/libapparmor )"
-
-PATCHES=( "${FILESDIR}/${PN}-fix-compressed-manpages.patch" )
-
-S="${WORKDIR}/${MY_PN}-${PV}-LTS"
-
-src_prepare() {
- default
-
- find -type f -name Makefile.in | xargs sed --in-place --regexp-extended \
- --expression='/^\tinstall .*COPYING /d' \
- --expression='/CFLAGS/s: (-O2|-ggdb) : :g' || die
-
- sed --in-place --regexp-extended '/CFLAGS/s: (-O2|-ggdb) : :g' ./src/common.mk.in || die
-}
-
-src_configure() {
- econf \
- $(use_enable apparmor) \
- $(use_enable globalcfg) \
- $(use_enable network) \
- $(use_enable seccomp) \
- $(use_enable suid) \
- $(use_enable userns) \
- $(use_enable whitelist)
-}
diff --git a/sys-apps/firejail-lts/firejail-lts-0.9.56.2-r2.ebuild b/sys-apps/firejail-lts/firejail-lts-0.9.56.2-r2.ebuild
deleted file mode 100644
index 6cc506086b86..000000000000
--- a/sys-apps/firejail-lts/firejail-lts-0.9.56.2-r2.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Security sandbox for any type of processes; LTS version"
-HOMEPAGE="https://firejail.wordpress.com/"
-
-MY_PN=firejail
-
-SRC_URI="https://github.com/netblue30/${MY_PN}/archive/${PV}-LTS.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE="apparmor +globalcfg +network +seccomp +suid +userns test +whitelist"
-RESTRICT="!test? ( test )"
-
-RDEPEND="apparmor? ( sys-libs/libapparmor )"
-
-DEPEND="${RDEPEND}
- !sys-apps/firejail
- test? ( dev-tcltk/expect )"
-
-S="${WORKDIR}/${MY_PN}-${PV}-LTS"
-
-src_prepare() {
- default
-
- find -type f -name Makefile.in | xargs sed -i -r \
- -e '/^\tinstall .*COPYING /d' \
- -e '/CFLAGS/s: (-O2|-ggdb) : :g' || die
-
- sed -i -r -e '/CFLAGS/s: (-O2|-ggdb) : :g' ./src/common.mk.in || die
-
- # remove compression of man pages
- sed -i -e '/gzip -9n $$man; \\/d' Makefile.in || die
- sed -i -e '/rm -f $$man.gz; \\/d' Makefile.in || die
- sed -i -r -e 's|\*\.([[:digit:]])\) install -c -m 0644 \$\$man\.gz|\*\.\1\) install -c -m 0644 \$\$man|g' Makefile.in || die
-}
-
-src_configure() {
- econf \
- $(use_enable apparmor) \
- $(use_enable globalcfg) \
- $(use_enable network) \
- $(use_enable seccomp) \
- $(use_enable suid) \
- $(use_enable userns) \
- $(use_enable whitelist)
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
diff --git a/sys-apps/firejail-lts/metadata.xml b/sys-apps/firejail-lts/metadata.xml
deleted file mode 100644
index b59050f3232d..000000000000
--- a/sys-apps/firejail-lts/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription lang="en">
- Firejail is a SUID program that reduces the risk of security breaches by restricting the running environment of
- untrusted applications using Linux namespaces and seccomp-bpf. It allows a process and all its descendants to
- have their own private view of the globally shared kernel resources, such as the network stack, process table,
- mount table.
-
- This is long term support branch of firejail. For the regular version see sys-apps/firejail.
- The code base is approximately 40% smaller than the regular version,
- providing a smaller attack surface for the SUID executable.
- </longdescription>
- <upstream>
- <remote-id type="github">netblue30/firejail</remote-id>
- </upstream>
- <use>
- <flag name="apparmor">Enable support for custom AppArmor profiles</flag>
- <flag name="globalcfg">Enable global config file</flag>
- <flag name="network">Enable networking features</flag>
- <flag name="seccomp">Enable system call filtering</flag>
- <flag name="userns">Enable attaching a new user namespace to a sandbox (--noroot option)</flag>
- <flag name="whitelist">Enable file and directory whitelisting</flag>
- </use>
-</pkgmetadata>
diff --git a/sys-apps/firejail/Manifest b/sys-apps/firejail/Manifest
index ff7b7900af6a..72515d1276d5 100644
--- a/sys-apps/firejail/Manifest
+++ b/sys-apps/firejail/Manifest
@@ -1 +1,2 @@
-DIST firejail-0.9.62.tar.gz 918477 BLAKE2B 8654539a6a115b6f69ea94a0b699c9129cfcecaf3d478409eaf288b953563768716eae9b9a83ddc538249322daa62a764bc2eb286eddaa14fc0e5fa887c0e319 SHA512 dfdbfbffdcb9a239e071983035d57350440eb58d79bb4375bc1fe585471a260c8b090bea59ac939739ac3daddf296c041ab4cc47ebbf718b0c9deae47f16af9f
+DIST firejail-0.9.70.tar.xz 485096 BLAKE2B d5164ba5ee08e80415a84999e4152f1f9c897f50def669731098126cec117aed3cf4b21603aeb13ccbdb1bffa9d48de69dcb19fe7135691e891b9b83f48a5ca1 SHA512 a790ccb711da6c3e52677011d7eb38c482ffb5066498d4586018671ab4ee533e02edb31fda872e0647fd27c00014b04305eafcb56f1f1b07f470aa4fb701cbe5
+DIST firejail-0.9.72.tar.xz 503192 BLAKE2B 3d57b345476cb62399859622c88f5d6c22842da5894045c09bc7d84229ec2a01c494e4e9393b6fba6c668f73c6b7046f9a014a315baa5bc56d1479b9cad178a7 SHA512 846fa5caf6e68c669f76a07d6321ed365bf3c45f7992e8be3784ed99ef508ea8dffc5d6cc5da75eeb37964ad358d61b7959e8590051950951de8ca904d8a49de
diff --git a/sys-apps/firejail/files/firejail-0.9.70-envlimits.patch b/sys-apps/firejail/files/firejail-0.9.70-envlimits.patch
new file mode 100644
index 000000000000..d99db424c052
--- /dev/null
+++ b/sys-apps/firejail/files/firejail-0.9.70-envlimits.patch
@@ -0,0 +1,12 @@
+diff -urP firejail-0.9.70.orig/src/firejail/firejail.h firejail-0.9.70/src/firejail/firejail.h
+--- firejail-0.9.70.orig/src/firejail/firejail.h 2022-06-08 07:42:50.000000000 -0600
++++ firejail-0.9.70/src/firejail/firejail.h 2022-06-09 13:06:04.094034022 -0600
+@@ -706,7 +706,7 @@
+ int check_kernel_procs(void);
+ void run_no_sandbox(int argc, char **argv) __attribute__((noreturn));
+
+-#define MAX_ENVS 256 // some sane maximum number of environment variables
++#define MAX_ENVS 2048 // some sane maximum number of environment variables
+ #define MAX_ENV_LEN (PATH_MAX + 32) // FOOBAR=SOME_PATH, only applied to Firejail's own sandboxed apps
+ // env.c
+ typedef enum {
diff --git a/sys-apps/firejail/files/firejail-0.9.70-firecfg.config.patch b/sys-apps/firejail/files/firejail-0.9.70-firecfg.config.patch
new file mode 100644
index 000000000000..ff751b9dc684
--- /dev/null
+++ b/sys-apps/firejail/files/firejail-0.9.70-firecfg.config.patch
@@ -0,0 +1,82 @@
+diff -urP firejail-0.9.70.orig/src/firecfg/firecfg.config firejail-0.9.70/src/firecfg/firecfg.config
+--- firejail-0.9.70.orig/src/firecfg/firecfg.config 2022-06-08 07:42:50.000000000 -0600
++++ firejail-0.9.70/src/firecfg/firecfg.config 2022-06-09 13:06:38.646038407 -0600
+@@ -213,7 +213,8 @@
+ electron-mail
+ electrum
+ element-desktop
+-elinks
++# Breaks emerge/portage on Gentoo: 'too many environment variables'
++#elinks
+ empathy
+ enchant
+ enchant-2
+@@ -259,7 +260,8 @@
+ flameshot
+ flashpeak-slimjet
+ flowblade
+-fontforge
++# Breaks emerge/portage on Gentoo
++#fontforge
+ font-manager
+ fossamail
+ four-in-a-row
+@@ -490,11 +492,16 @@
+ luminance-hdr
+ lximage-qt
+ lxmusic
+-lynx
++# Breaks emerge/portage on Gentoo: 'too many environment variables'
++#lynx
+ lyx
+ macrofusion
+ magicor
+-man
++# Breaks: $ man chromium-browser
++# WARNING: terminal is not fully functional
++# Press RETURN to continue
++# Manual page chromium-browser(1) byte 0/0 (END) (press h for help or q to quit)
++#man
+ manaplus
+ marker
+ masterpdfeditor
+@@ -571,7 +578,8 @@
+ musictube
+ musixmatch
+ mutool
+-mutt
++# Breaks when configs are under ~/.mutt/
++#mutt
+ mypaint
+ mypaint-ora-thumbnailer
+ natron
+@@ -635,7 +643,8 @@
+ palemoon
+ #pandoc
+ parole
+-patch
++# Breaks emerge/portage on Gentoo: 'too many environment variables', path issues
++#patch
+ pavucontrol
+ pavucontrol-qt
+ pcsxr
+@@ -761,7 +770,8 @@
+ stellarium
+ strawberry
+ straw-viewer
+-strings
++# Breaks emerge/portage on Gentoo
++#strings
+ studio.sh
+ subdownloader
+ supertux2
+@@ -880,7 +890,8 @@
+ weechat
+ weechat-curses
+ wesnoth
+-wget
++# Breaks emerge/portage on Gentoo: 'too many environment variables', path issues
++#wget
+ wget2
+ whalebird
+ whois
diff --git a/sys-apps/firejail/files/profile_display.local b/sys-apps/firejail/files/profile_display.local
new file mode 100644
index 000000000000..edf025c4720d
--- /dev/null
+++ b/sys-apps/firejail/files/profile_display.local
@@ -0,0 +1,2 @@
+private-lib gcc/*/*/libgcc_s.so.*,gcc/*/*/libgomp.so.*,libMagickWand-*.so.*,libfreetype.so.*,libXext.so.*,libltdl.so.*,ImageMagick*
+private-etc ImageMagick-7
diff --git a/sys-apps/firejail/files/profile_patch.local b/sys-apps/firejail/files/profile_patch.local
new file mode 100644
index 000000000000..24fe0c43b516
--- /dev/null
+++ b/sys-apps/firejail/files/profile_patch.local
@@ -0,0 +1,8 @@
+private-bin /usr/bin/patch,red
+ignore private-bin
+# Needed so patch can write under /var/tmp/portage/
+writable-var
+read-write /var/tmp/portage
+whitelist /var/tmp/portage
+
+private-lib libsandbox.so*
diff --git a/sys-apps/firejail/files/profile_pdftotext.local b/sys-apps/firejail/files/profile_pdftotext.local
new file mode 100644
index 000000000000..449e4787d5a8
--- /dev/null
+++ b/sys-apps/firejail/files/profile_pdftotext.local
@@ -0,0 +1,2 @@
+private-etc alternatives,ld.so.cache,ld.so.conf,ld.so.conf.d,ld.so.preload
+private-lib gcc/*/*/libgcc_s.so.*,gcc/*/*/libstdc++.so.*
diff --git a/sys-apps/firejail/files/profile_wget.local b/sys-apps/firejail/files/profile_wget.local
new file mode 100644
index 000000000000..4b1d5b50a2b7
--- /dev/null
+++ b/sys-apps/firejail/files/profile_wget.local
@@ -0,0 +1,5 @@
+# Needed so that portage can wget into the distfile dir.
+writable-var
+whitelist /var/cache/distfiles
+
+private-bin /usr/bin/wget
diff --git a/sys-apps/firejail/firejail-0.9.62-r1.ebuild b/sys-apps/firejail/firejail-0.9.62-r1.ebuild
deleted file mode 100644
index 0521f812dbf4..000000000000
--- a/sys-apps/firejail/firejail-0.9.62-r1.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-if [[ ${PV} != 9999 ]]; then
- KEYWORDS="amd64 ~x86"
- SRC_URI="https://github.com/netblue30/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-else
- inherit git-r3
- EGIT_REPO_URI="https://github.com/netblue30/firejail.git"
- EGIT_BRANCH="master"
-fi
-
-DESCRIPTION="Security sandbox for any type of processes"
-HOMEPAGE="https://firejail.wordpress.com/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="apparmor +chroot contrib debug +file-transfer +globalcfg +network +overlayfs +private-home +seccomp +suid test +userns vim-syntax +whitelist x11"
-RESTRICT="!test? ( test )"
-
-RDEPEND="apparmor? ( sys-libs/libapparmor )"
-
-DEPEND="${RDEPEND}
- !sys-apps/firejail-lts
- test? ( dev-tcltk/expect )"
-
-src_prepare() {
- default
-
- find ./contrib -type f -name '*.py' | xargs sed --in-place 's-#!/usr/bin/python3-#!/usr/bin/env python3-g' || die
-
- find -type f -name Makefile.in | xargs sed -i -r \
- -e '/^\tinstall .*COPYING /d' \
- -e '/CFLAGS/s: (-O2|-ggdb) : :g' || die
-
- sed -i -r -e '/CFLAGS/s: (-O2|-ggdb) : :g' ./src/common.mk.in || die
-
- # remove compression of man pages
- sed -i -e '/gzip -9n $$man; \\/d' Makefile.in || die
- sed -i -e '/rm -f $$man.gz; \\/d' Makefile.in || die
- sed -i -r -e 's|\*\.([[:digit:]])\) install -c -m 0644 \$\$man\.gz|\*\.\1\) install -c -m 0644 \$\$man|g' Makefile.in || die
-}
-
-src_configure() {
- econf \
- --disable-firetunnel \
- $(use_enable apparmor) \
- $(use_enable chroot) \
- $(use_enable contrib contrib-install) \
- $(use_enable file-transfer) \
- $(use_enable globalcfg) \
- $(use_enable network) \
- $(use_enable overlayfs) \
- $(use_enable private-home) \
- $(use_enable seccomp) \
- $(use_enable suid) \
- $(use_enable userns) \
- $(use_enable whitelist) \
- $(use_enable x11)
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- default
-
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/ftdetect
- doins contrib/vim/ftdetect/firejail.vim
-
- insinto /usr/share/vim/vimfiles/syntax
- doins contrib/vim/syntax/firejail.vim
- fi
-}
diff --git a/sys-apps/firejail/firejail-0.9.62.ebuild b/sys-apps/firejail/firejail-0.9.62.ebuild
deleted file mode 100644
index 1b6e14740a13..000000000000
--- a/sys-apps/firejail/firejail-0.9.62.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} != 9999 ]]; then
- KEYWORDS="amd64 ~x86"
- SRC_URI="https://github.com/netblue30/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-else
- inherit git-r3
- EGIT_REPO_URI="https://github.com/netblue30/firejail.git"
- EGIT_BRANCH="master"
-fi
-
-DESCRIPTION="Security sandbox for any type of processes"
-HOMEPAGE="https://firejail.wordpress.com/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="apparmor +chroot contrib debug +file-transfer +globalcfg +network +overlayfs +private-home +seccomp +suid test +userns vim-syntax +whitelist x11"
-
-DEPEND="!sys-apps/firejail-lts
- apparmor? ( sys-libs/libapparmor )
- test? ( dev-tcltk/expect )"
-
-RDEPEND="apparmor? ( sys-libs/libapparmor )"
-
-# TODO: enable tests
-RESTRICT="test"
-
-src_prepare() {
- default
-
- find ./contrib -type f -name '*.py' | xargs sed --in-place 's-#!/usr/bin/python3-#!/usr/bin/env python3-g' || die
-
- find -type f -name Makefile.in | xargs sed --in-place --regexp-extended \
- --expression='/^\tinstall .*COPYING /d' \
- --expression='/CFLAGS/s: (-O2|-ggdb) : :g' || die
-
- sed --in-place --regexp-extended '/CFLAGS/s: (-O2|-ggdb) : :g' ./src/common.mk.in || die
-
- # remove compression of man pages
- sed --in-place '/gzip -9n $$man; \\/d' Makefile.in || die
- sed --in-place '/rm -f $$man.gz; \\/d' Makefile.in || die
- sed --in-place --regexp-extended 's|\*\.([[:digit:]])\) install -c -m 0644 \$\$man\.gz|\*\.\1\) install -c -m 0644 \$\$man|g' Makefile.in || die
-}
-
-src_configure() {
- econf \
- --disable-firetunnel \
- $(use_enable apparmor) \
- $(use_enable chroot) \
- $(use_enable contrib contrib-install) \
- $(use_enable file-transfer) \
- $(use_enable globalcfg) \
- $(use_enable network) \
- $(use_enable overlayfs) \
- $(use_enable private-home) \
- $(use_enable seccomp) \
- $(use_enable suid) \
- $(use_enable userns) \
- $(use_enable whitelist) \
- $(use_enable x11)
-}
-
-src_install() {
- default
-
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/ftdetect
- doins contrib/vim/ftdetect/firejail.vim
-
- insinto /usr/share/vim/vimfiles/syntax
- doins contrib/vim/syntax/firejail.vim
- fi
-}
diff --git a/sys-apps/firejail/firejail-0.9.70.ebuild b/sys-apps/firejail/firejail-0.9.70.ebuild
new file mode 100644
index 000000000000..a35fe516d656
--- /dev/null
+++ b/sys-apps/firejail/firejail-0.9.70.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit toolchain-funcs python-single-r1 linux-info
+
+if [[ ${PV} != 9999 ]]; then
+ SRC_URI="https://github.com/netblue30/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 ~arm ~arm64 ~x86"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/netblue30/firejail.git"
+ EGIT_BRANCH="master"
+fi
+
+DESCRIPTION="Security sandbox for any type of processes"
+HOMEPAGE="https://firejail.wordpress.com/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="apparmor +chroot contrib +dbusproxy +file-transfer +globalcfg +network +private-home test +userns X"
+# Needs a lot of work to function within sandbox/portage
+# bug #769731
+RESTRICT="test"
+
+RDEPEND="!sys-apps/firejail-lts
+ apparmor? ( sys-libs/libapparmor )
+ contrib? ( ${PYTHON_DEPS} )
+ dbusproxy? ( sys-apps/xdg-dbus-proxy )"
+
+DEPEND="${RDEPEND}
+ sys-libs/libseccomp
+ test? ( dev-tcltk/expect )"
+
+REQUIRED_USE="contrib? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+ "${FILESDIR}/${P}-envlimits.patch"
+ "${FILESDIR}/${P}-firecfg.config.patch"
+ )
+
+pkg_setup() {
+ CONFIG_CHECK="~SQUASHFS"
+ local ERROR_SQUASHFS="CONFIG_SQUASHFS: required for firejail --appimage mode"
+ check_extra_config
+ use contrib && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ find -type f -name Makefile.in -exec sed -i -r -e '/CFLAGS/s: (-O2|-ggdb) : :g' {} + || die
+
+ sed -i -r -e '/CFLAGS/s: (-O2|-ggdb) : :g' ./src/common.mk.in || die
+
+ # fix up hardcoded paths to templates and docs
+ local files=$(grep -E -l -r '/usr/share/doc/firejail([^-]|$)' ./RELNOTES ./src/man/ ./etc/profile*/ ./test/ || die)
+ for file in ${files[@]} ; do
+ sed -i -r -e "s:/usr/share/doc/firejail([^-]|\$):/usr/share/doc/${PF}\1:" "${file}" || die
+ done
+
+ # remove compression of man pages
+ sed -i -r -e '/rm -f \$\$man.gz; \\/d; /gzip -9n \$\$man; \\/d; s|\*\.([[:digit:]])\) install -m 0644 \$\$man\.gz|\*\.\1\) install -m 0644 \$\$man|g' Makefile.in || die
+
+ if use contrib; then
+ python_fix_shebang -f contrib/*.py
+ fi
+}
+
+src_configure() {
+ econf \
+ --disable-firetunnel \
+ --enable-suid \
+ $(use_enable apparmor) \
+ $(use_enable chroot) \
+ $(use_enable dbusproxy) \
+ $(use_enable file-transfer) \
+ $(use_enable globalcfg) \
+ $(use_enable network) \
+ $(use_enable private-home) \
+ $(use_enable userns) \
+ $(use_enable X x11)
+
+ cat > 99firejail <<-EOF || die
+ SANDBOX_WRITE="/run/firejail"
+ EOF
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ default
+
+ # Gentoo-specific profile customizations
+ insinto /etc/${PN}
+ local profile_local
+ for profile_local in "${FILESDIR}"/profile_*local ; do
+ newins "${profile_local}" "${profile_local/\/*profile_/}"
+ done
+
+ # Prevent sandbox violations when toolchain is firejailed
+ insinto /etc/sandbox.d
+ doins 99firejail
+
+ rm "${ED}"/usr/share/doc/${PF}/COPYING || die
+
+ if use contrib; then
+ python_scriptinto /usr/$(get_libdir)/firejail
+ python_doscript contrib/*.py
+ insinto /usr/$(get_libdir)/firejail
+ dobin contrib/*.sh
+ fi
+}
diff --git a/sys-apps/firejail/firejail-0.9.72.ebuild b/sys-apps/firejail/firejail-0.9.72.ebuild
new file mode 100644
index 000000000000..85c24854379a
--- /dev/null
+++ b/sys-apps/firejail/firejail-0.9.72.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit toolchain-funcs python-single-r1 linux-info
+
+DESCRIPTION="Security sandbox for any type of processes"
+HOMEPAGE="https://firejail.wordpress.com/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/netblue30/firejail.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/netblue30/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 ~arm ~arm64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="apparmor +chroot contrib +dbusproxy +file-transfer +globalcfg +network +private-home selinux test +userns X"
+REQUIRED_USE="contrib? ( ${PYTHON_REQUIRED_USE} )"
+# Needs a lot of work to function within sandbox/portage. Can look at the alternative
+# test targets in Makefile too, bug #769731
+RESTRICT="test"
+
+RDEPEND="
+ !sys-apps/firejail-lts
+ apparmor? ( sys-libs/libapparmor )
+ contrib? ( ${PYTHON_DEPS} )
+ dbusproxy? ( sys-apps/xdg-dbus-proxy )
+ selinux? ( sys-libs/libselinux )
+"
+DEPEND="
+ ${RDEPEND}
+ sys-libs/libseccomp
+ test? ( dev-tcltk/expect )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.9.70-envlimits.patch"
+ "${FILESDIR}/${PN}-0.9.70-firecfg.config.patch"
+)
+
+pkg_setup() {
+ CONFIG_CHECK="~SQUASHFS"
+ local ERROR_SQUASHFS="CONFIG_SQUASHFS: required for firejail --appimage mode"
+ check_extra_config
+
+ use contrib && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # Our toolchain already sets SSP by default but forcing it causes problems
+ # on arches which don't support it. As for F_S, we again set it by defualt
+ # in our toolchain, but forcing F_S=2 is actually a downgrade if 3 is set.
+ sed -i \
+ -e 's:-fstack-protector-all::' \
+ -e 's:-D_FORTIFY_SOURCE=2::' \
+ src/so.mk src/prog.mk || die
+
+ find -type f -name Makefile -exec sed -i -r -e '/CFLAGS/s: (-O2|-ggdb) : :g' {} + || die
+
+ # Fix up hardcoded paths to templates and docs
+ local files=$(grep -E -l -r '/usr/share/doc/firejail([^-]|$)' ./RELNOTES ./src/man/ ./etc/profile*/ ./test/ || die)
+ for file in ${files[@]} ; do
+ sed -i -r -e "s:/usr/share/doc/firejail([^-]|\$):/usr/share/doc/${PF}\1:" "${file}" || die
+ done
+
+ # remove compression of man pages
+ sed -i -r -e '/rm -f \$\$man.gz; \\/d; /gzip -9n \$\$man; \\/d; s|\*\.([[:digit:]])\) install -m 0644 \$\$man\.gz|\*\.\1\) install -m 0644 \$\$man|g' Makefile || die
+
+ if use contrib; then
+ python_fix_shebang -f contrib/*.py
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-fatal-warnings
+ --disable-firetunnel
+ --disable-lts
+ --enable-suid
+ $(use_enable apparmor)
+ $(use_enable chroot)
+ $(use_enable dbusproxy)
+ $(use_enable file-transfer)
+ $(use_enable globalcfg)
+ $(use_enable network)
+ $(use_enable private-home)
+ $(use_enable selinux)
+ $(use_enable userns)
+ $(use_enable X x11)
+ )
+
+ econf "${myeconfargs[@]}"
+
+ cat > 99firejail <<-EOF || die
+ SANDBOX_WRITE="/run/firejail"
+ EOF
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_test() {
+ emake test-utils test-sysutils
+}
+
+src_install() {
+ default
+
+ # Gentoo-specific profile customizations
+ insinto /etc/${PN}
+ local profile_local
+ for profile_local in "${FILESDIR}"/profile_*local ; do
+ newins "${profile_local}" "${profile_local/\/*profile_/}"
+ done
+
+ # Prevent sandbox violations when toolchain is firejailed
+ insinto /etc/sandbox.d
+ doins 99firejail
+
+ rm "${ED}"/usr/share/doc/${PF}/COPYING || die
+
+ if use contrib; then
+ python_scriptinto /usr/$(get_libdir)/firejail
+ python_doscript contrib/*.py
+ insinto /usr/$(get_libdir)/firejail
+ dobin contrib/*.sh
+ fi
+}
diff --git a/sys-apps/firejail/firejail-9999.ebuild b/sys-apps/firejail/firejail-9999.ebuild
deleted file mode 100644
index 8dfef8571888..000000000000
--- a/sys-apps/firejail/firejail-9999.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} != 9999 ]]; then
- KEYWORDS="~amd64 ~x86"
- SRC_URI="https://github.com/netblue30/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-else
- inherit git-r3
- EGIT_REPO_URI="https://github.com/netblue30/firejail.git"
- EGIT_BRANCH="master"
-fi
-
-DESCRIPTION="Security sandbox for any type of processes"
-HOMEPAGE="https://firejail.wordpress.com/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="apparmor +chroot contrib debug +file-transfer +globalcfg +network +overlayfs +private-home +seccomp +suid test +userns vim-syntax +whitelist x11"
-
-DEPEND="!sys-apps/firejail-lts
- apparmor? ( sys-libs/libapparmor )
- test? ( dev-tcltk/expect )"
-
-RDEPEND="apparmor? ( sys-libs/libapparmor )"
-
-# TODO: enable tests
-RESTRICT="test"
-
-src_prepare() {
- default
-
- find ./contrib -type f -name '*.py' | xargs sed --in-place 's-#!/usr/bin/python3-#!/usr/bin/env python3-g' || die
-
- find -type f -name Makefile.in | xargs sed --in-place --regexp-extended \
- --expression='/^\tinstall .*COPYING /d' \
- --expression='/CFLAGS/s: (-O2|-ggdb) : :g' || die
-
- sed --in-place --regexp-extended '/CFLAGS/s: (-O2|-ggdb) : :g' ./src/common.mk.in || die
-
- # remove compression of man pages
- sed --in-place '/gzip -9n $$man; \\/d' Makefile.in || die
- sed --in-place '/rm -f $$man.gz; \\/d' Makefile.in || die
- sed --in-place --regexp-extended 's|\*\.([[:digit:]])\) install -c -m 0644 \$\$man\.gz|\*\.\1\) install -c -m 0644 \$\$man|g' Makefile.in || die
-}
-
-src_configure() {
- econf \
- --disable-firetunnel \
- $(use_enable apparmor) \
- $(use_enable chroot) \
- $(use_enable contrib contrib-install) \
- $(use_enable file-transfer) \
- $(use_enable globalcfg) \
- $(use_enable network) \
- $(use_enable overlayfs) \
- $(use_enable private-home) \
- $(use_enable seccomp) \
- $(use_enable suid) \
- $(use_enable userns) \
- $(use_enable whitelist) \
- $(use_enable x11)
-}
-
-src_install() {
- default
-
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/ftdetect
- doins contrib/vim/ftdetect/firejail.vim
-
- insinto /usr/share/vim/vimfiles/syntax
- doins contrib/vim/syntax/firejail.vim
- fi
-}
diff --git a/sys-apps/firejail/metadata.xml b/sys-apps/firejail/metadata.xml
index f435d71e1994..ee1cc2f6e7bb 100644
--- a/sys-apps/firejail/metadata.xml
+++ b/sys-apps/firejail/metadata.xml
@@ -1,14 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>hlein@korelogic.com</email>
+ <name>Hank Leininger</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<longdescription lang="en">
Firejail is a SUID program that reduces the risk of security breaches by restricting the running environment of
untrusted applications using Linux namespaces and seccomp-bpf. It allows a process and all its descendants to
have their own private view of the globally shared kernel resources, such as the network stack, process table,
mount table.
-
- This is the regular version. For a long term support version see sys-apps/firejail-lts.
</longdescription>
<upstream>
<remote-id type="cpe">cpe:/a:firejail_project:firejail</remote-id>
@@ -18,14 +23,12 @@
<flag name="apparmor">Enable support for custom AppArmor profiles</flag>
<flag name="chroot">Enable chrooting to custom directory</flag>
<flag name="contrib">Install contrib scripts</flag>
+ <flag name="dbusproxy">Enable DBus proxying to filter access in supporting profiles</flag>
<flag name="file-transfer">Enable file transfers between sandboxes and the host system</flag>
<flag name="globalcfg">Enable global config file</flag>
<flag name="network">Enable networking features</flag>
- <flag name="overlayfs">Enable overlayfs</flag>
<flag name="private-home">Enable private home feature</flag>
- <flag name="seccomp">Enable system call filtering</flag>
<flag name="userns">Enable attaching a new user namespace to a sandbox (--noroot option)</flag>
- <flag name="whitelist">Enable whitelist</flag>
- <flag name="x11">Enable X11 sandboxing</flag>
+ <flag name="X">Enable X11 sandboxing</flag>
</use>
</pkgmetadata>
diff --git a/sys-apps/fix-gnustack/files/0.1/0001-fix-gnustack-respect-CFLAGS-LDFLAGS-for-tests.patch b/sys-apps/fix-gnustack/files/0.1/0001-fix-gnustack-respect-CFLAGS-LDFLAGS-for-tests.patch
new file mode 100644
index 000000000000..f0c786abf183
--- /dev/null
+++ b/sys-apps/fix-gnustack/files/0.1/0001-fix-gnustack-respect-CFLAGS-LDFLAGS-for-tests.patch
@@ -0,0 +1,28 @@
+From 4fb8a9cb2a5410aa565d028bd8deb53d8682da62 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 6 Jan 2023 05:39:13 +0000
+Subject: [PATCH 1/3] fix-gnustack: respect CFLAGS, LDFLAGS for tests
+
+Needed to correctly run tests with Clang, as Clang doesn't create
+executable stacks by default.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -5,11 +5,11 @@ noinst_PROGRAMS = bad-gnustack
+ EXTRA_DIST = gnustacktest.sh
+
+ bad-gnustack.s: bad-gnustack.c
+- $(CC) -S $<
++ $(CC) $(CPPFLAGS) $(CFLAGS) -S $<
+ $(SED) -i -e 's/GNU-stack,"",/GNU-stack,"x",/' $@
+
+ bad-gnustack$(EXEEXT): bad-gnustack.s
+- $(CC) -o $@ $<
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $<
+
+ check_SCRIPTS = gnustacktest
+ TEST = $(check_SCRIPTS)
+--
+2.39.0
+
diff --git a/sys-apps/fix-gnustack/files/0.1/0002-fix-gnustack-add-set-x-in-tests-for-easier-debugging.patch b/sys-apps/fix-gnustack/files/0.1/0002-fix-gnustack-add-set-x-in-tests-for-easier-debugging.patch
new file mode 100644
index 000000000000..16ade32c2bd1
--- /dev/null
+++ b/sys-apps/fix-gnustack/files/0.1/0002-fix-gnustack-add-set-x-in-tests-for-easier-debugging.patch
@@ -0,0 +1,22 @@
+From 87ca5c5bbe63ea3c9227fdd4a01ccdc1ce723323 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 6 Jan 2023 05:39:43 +0000
+Subject: [PATCH 2/3] fix-gnustack: add 'set -x' in tests for easier debugging
+
+It's hard to see why something failed otherwise, as we only have the
+exit code.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/tests/gnustacktest.sh
++++ b/tests/gnustacktest.sh
+@@ -16,6 +16,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #
++set -x
+
+ before=$(../fix-gnustack -f bad-gnustack)
+ before=$(echo ${before} | awk '{ print $2 }')
+--
+2.39.0
+
diff --git a/sys-apps/fix-gnustack/files/0.1/0003-fix-gnustack-pass-Wl-z-execstack-for-tests-with-Clan.patch b/sys-apps/fix-gnustack/files/0.1/0003-fix-gnustack-pass-Wl-z-execstack-for-tests-with-Clan.patch
new file mode 100644
index 000000000000..66ffa5e5136d
--- /dev/null
+++ b/sys-apps/fix-gnustack/files/0.1/0003-fix-gnustack-pass-Wl-z-execstack-for-tests-with-Clan.patch
@@ -0,0 +1,26 @@
+From c8a1d365ff1349cc438352917863ed98ee34a80f Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 11 Jan 2023 07:09:53 +0000
+Subject: [PATCH 3/3] fix-gnustack: pass -Wl,-z,execstack for tests with Clang
+
+Clang doesn't create executable stacks by default, so we need to force it
+for the purposes of the tests.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -8,8 +8,10 @@ bad-gnustack.s: bad-gnustack.c
+ $(CC) $(CPPFLAGS) $(CFLAGS) -S $<
+ $(SED) -i -e 's/GNU-stack,"",/GNU-stack,"x",/' $@
+
++# Clang doesn't create executable stacks by default, so
++# tests for fix-gnustack fail without this.
+ bad-gnustack$(EXEEXT): bad-gnustack.s
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $<
++ $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,execstack -o $@ $<
+
+ check_SCRIPTS = gnustacktest
+ TEST = $(check_SCRIPTS)
+--
+2.39.0
+
diff --git a/sys-apps/fix-gnustack/fix-gnustack-0.1-r1.ebuild b/sys-apps/fix-gnustack/fix-gnustack-0.1-r1.ebuild
new file mode 100644
index 000000000000..84043888ab1f
--- /dev/null
+++ b/sys-apps/fix-gnustack/fix-gnustack-0.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Utility to report and remove the executable flag from an ELF object's GNU_STACK"
+HOMEPAGE="https://dev.gentoo.org/~blueness/fix-gnustack"
+SRC_URI="https://dev.gentoo.org/~blueness/${PN}/${P}.tar.bz2"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+
+DEPEND="dev-libs/elfutils"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ # Backports from master, drop on next release
+ "${FILESDIR}"/${PV}
+)
+
+src_prepare() {
+ default
+
+ # Drop on next release, only needed for tests patch
+ eautoreconf
+}
diff --git a/sys-apps/fix-gnustack/fix-gnustack-0.1.ebuild b/sys-apps/fix-gnustack/fix-gnustack-0.1.ebuild
deleted file mode 100644
index f80f513ccabd..000000000000
--- a/sys-apps/fix-gnustack/fix-gnustack-0.1.ebuild
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="Utility to report and remove the executable flag from an ELF object's GNU_STACK"
-HOMEPAGE="https://dev.gentoo.org/~blueness/fix-gnustack"
-SRC_URI="https://dev.gentoo.org/~blueness/${PN}/${P}.tar.bz2"
-LICENSE="GPL-3"
-
-DEPEND="dev-libs/elfutils"
-RDEPEND="${DEPEND}"
-
-KEYWORDS="amd64 ~x86"
-SLOT="0"
-
-S="${WORKDIR}/${PN}"
diff --git a/sys-apps/fix-gnustack/metadata.xml b/sys-apps/fix-gnustack/metadata.xml
index 62a593741836..fd1dbcd3a21e 100644
--- a/sys-apps/fix-gnustack/metadata.xml
+++ b/sys-apps/fix-gnustack/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>blueness@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gentoo">proj/elfix</remote-id>
+ <remote-id type="github">gentoo/elfix</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/flashrom/Manifest b/sys-apps/flashrom/Manifest
index 1084bda4b5a9..20d3cca7fc80 100644
--- a/sys-apps/flashrom/Manifest
+++ b/sys-apps/flashrom/Manifest
@@ -1 +1,2 @@
DIST flashrom-v1.2.tar.bz2 366995 BLAKE2B 091e01a91e12b486154ace334a5e74bccbb5f5311ad76e37f43a28167080757873d8c78b8f549d2e77eb984922c830895ba955b23eb6ee4fc24f1ffed259954b SHA512 8e01395a54d0d1344bc55e7e4975f43bb8e59ebe83fb5f2766d14f76756d718b487254ce9a19ef4093aed04fb9d40fff5fe8f709b18c512f6e6fad894f83d7b8
+DIST flashrom-v1.3.0.tar.bz2 489782 BLAKE2B e6d2284d83171b003b434251f060fa44edf32ecfd3d397bd4ba39b74c6a0b5c9d1659b703dd6b632b63aa4bf27d08c8aeece72920199712c6a4ae160b2eb3a8a SHA512 73b6e00bd3bc66c98d4ad53966a65b19d3d92f07d7b210d69e041d6f5788605b9791a9bf7aec0a52e13d19fcb62c4bdaf4bab9f805fc31468393ca313129a77b
diff --git a/sys-apps/flashrom/files/flashrom-1.2_make-libflashrom-usable.patch b/sys-apps/flashrom/files/flashrom-1.2_make-libflashrom-usable.patch
deleted file mode 100644
index ea15a4230592..000000000000
--- a/sys-apps/flashrom/files/flashrom-1.2_make-libflashrom-usable.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-1. Add an (extremely primitive) rule for generating a pkgconfig file
- for libflashrom, as fwupd cannot find it without one. Note that this
- rule depends on several variables to be passed to make, see ebuilds
- using this patch for details;
-2. Tweak the way library dependencies are passed around a bit to make it
- easier to inject them into said pkgconfig file;
-3. Move print.o from CLI_OBJS to LIB_OBJS - it contains the array
- 'boards_known' which is used in library code. Upstream have already
- fixed this in Meson files but not in the Makefile.
-
-diff -urN a/flashrom.pc.in b/flashrom.pc.in
---- a/flashrom.pc.in 1970-01-01 01:00:00.000000000 +0100
-+++ b/flashrom.pc.in 2020-07-28 22:47:01.928679346 +0200
-@@ -0,0 +1,9 @@
-+prefix=@PREFIX@
-+libdir=${prefix}/@LIBDIR@
-+includedir=${prefix}/@INCLUDEDIR@
-+
-+Name: libflashrom
-+Description: library to interact with flashrom
-+Version: @VERSION@
-+Libs: -L${libdir} -lflashrom @LIBS@
-+Cflags: -I${includedir}
-diff -urN a/Makefile b/Makefile
---- a/Makefile 2019-12-31 18:25:41.000000000 +0100
-+++ b/Makefile 2020-07-28 23:18:41.019492448 +0200
-@@ -570,12 +570,12 @@
- ###############################################################################
- # Library code.
-
--LIB_OBJS = libflashrom.o layout.o flashrom.o udelay.o programmer.o helpers.o ich_descriptors.o fmap.o
-+LIB_OBJS = libflashrom.o layout.o flashrom.o udelay.o programmer.o helpers.o ich_descriptors.o fmap.o print.o
-
- ###############################################################################
- # Frontend related stuff.
-
--CLI_OBJS = cli_classic.o cli_output.o cli_common.o print.o
-+CLI_OBJS = cli_classic.o cli_output.o cli_common.o
-
- # versioninfo.inc stores metadata required to build a packaged flashrom. It is generated by the export rule and
- # imported below. If versioninfo.inc is not found and the variables are not defined by the user, the info will
-@@ -1130,11 +1130,16 @@
- @+$(MAKE) -C util/ich_descriptors_tool/ TARGET_OS=$(TARGET_OS) EXEC_SUFFIX=$(EXEC_SUFFIX)
- endif
-
-+ALL_LIBS = $(LIBS) $(PCILIBS) $(FEATURE_LIBS) $(USBLIBS) $(USB1LIBS) $(JAYLINKLIBS) $(NI845X_LIBS)
-+
-+flashrom.pc:
-+ sed -e "s#@PREFIX@#$(PREFIX)#" -e "s#@LIBDIR@#$(LIBDIR)#" -e "s#@INCLUDEDIR@#$(INCLUDEDIR)#" -e "s#@VERSION@#$(VERSION)#" -e "s#@LIBS@#$(ALL_LIBS)#" < $@.in > $@.tmp && mv $@.tmp $@
-+
- $(PROGRAM)$(EXEC_SUFFIX): $(OBJS)
-- $(CC) $(LDFLAGS) -o $(PROGRAM)$(EXEC_SUFFIX) $(OBJS) $(LIBS) $(PCILIBS) $(FEATURE_LIBS) $(USBLIBS) $(USB1LIBS) $(JAYLINKLIBS) $(NI845X_LIBS)
-+ $(CC) $(LDFLAGS) -o $(PROGRAM)$(EXEC_SUFFIX) $(OBJS) $(ALL_LIBS)
-
--libflashrom.a: $(LIBFLASHROM_OBJS)
-- $(AR) rcs $@ $^
-+libflashrom.a: $(LIBFLASHROM_OBJS) flashrom.pc
-+ $(AR) rcs $@ $(LIBFLASHROM_OBJS)
- $(RANLIB) $@
-
- # TAROPTIONS reduces information leakage from the packager's system.
-@@ -1149,7 +1154,7 @@
- # This includes all frontends and libflashrom.
- # We don't use EXEC_SUFFIX here because we want to clean everything.
- clean:
-- rm -f $(PROGRAM) $(PROGRAM).exe libflashrom.a *.o *.d $(PROGRAM).8 $(PROGRAM).8.html $(BUILD_DETAILS_FILE)
-+ rm -f $(PROGRAM) $(PROGRAM).exe libflashrom.a flashrom.pc *.o *.d $(PROGRAM).8 $(PROGRAM).8.html $(BUILD_DETAILS_FILE)
- @+$(MAKE) -C util/ich_descriptors_tool/ clean
-
- distclean: clean
diff --git a/sys-apps/flashrom/files/flashrom-1.2_meson-fixes.patch b/sys-apps/flashrom/files/flashrom-1.2_meson-fixes.patch
new file mode 100644
index 000000000000..bb185fae8223
--- /dev/null
+++ b/sys-apps/flashrom/files/flashrom-1.2_meson-fixes.patch
@@ -0,0 +1,289 @@
+--- a/meson.build
++++ b/meson.build
+@@ -2,7 +2,7 @@
+ version : run_command('util/getversion.sh', '-v').stdout().strip(),
+ license : 'GPL-2.0',
+ meson_version : '>=0.47.0',
+- default_options : ['warning_level=2', 'c_std=c99'],
++ default_options : ['warning_level=2', 'c_std=gnu99'],
+ )
+
+ # libtool versioning
+@@ -44,6 +44,7 @@
+ config_gfxnvidia = get_option('config_gfxnvidia')
+ config_internal = get_option('config_internal')
+ config_it8212 = get_option('config_it8212')
++config_jlink_spi = get_option('config_jlink_spi')
+ config_linux_mtd = get_option('config_linux_mtd')
+ config_linux_spi = get_option('config_linux_spi')
+ config_mstarddc_spi = get_option('config_mstarddc_spi')
+@@ -67,6 +68,10 @@
+ deps = []
+ srcs = []
+
++config_bitbang_spi = false
++need_libftdi = false
++need_libpci = false
++need_libusb = false
+ need_raw_access = false
+ need_serial = false
+
+@@ -81,24 +86,24 @@
+ add_project_arguments('-DHAVE_UTSNAME=1', language : 'c')
+ endif
+
+-# some programmers require libusb
+-if get_option('usb')
+- srcs += 'usbdev.c'
+- deps += dependency('libusb-1.0')
+-else
++if get_option('no_libftdi_programmers')
++ message('Disabling ALL libftdi-based programmers')
++ config_ft2232_spi = false
++ config_usbblaster_spi = false
++endif
++
++if get_option('no_libusb_programmers')
++ message('Disabling ALL libusb-based programmers')
+ config_ch341a_spi = false
+ config_dediprog = false
+- config_digilent_spi = false
+ config_developerbox_spi = false
++ config_digilent_spi = false
+ config_pickit2_spi = false
++ config_stlinkv3_spi = false
+ endif
+
+-# some programmers require libpci
+-if get_option('pciutils')
+- srcs += 'pcidev.c'
+- deps += dependency('libpci')
+- cargs += '-DNEED_PCI=1'
+-else
++if get_option('no_libpci_programmers')
++ message('Disabling ALL libpci-based programmers')
+ config_atahpt = false
+ config_atapromise = false
+ config_atavia = false
+@@ -121,14 +126,20 @@
+ # set defines for configured programmers
+ if config_atahpt
+ srcs += 'atahpt.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_ATAHPT=1'
+ endif
+ if config_atapromise
+ srcs += 'atapromise.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_ATAPROMISE=1'
+ endif
+ if config_atavia
+ srcs += 'atavia.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_ATAVIA=1'
+ endif
+ if config_buspirate_spi
+@@ -138,22 +149,28 @@
+ endif
+ if config_ch341a_spi
+ srcs += 'ch341a_spi.c'
++ need_libusb = true
+ cargs += '-DCONFIG_CH341A_SPI=1'
+ endif
+ if config_dediprog
+ srcs += 'dediprog.c'
++ need_libusb = true
+ cargs += '-DCONFIG_DEDIPROG=1'
+ endif
+ if config_developerbox_spi
+ srcs += 'developerbox_spi.c'
++ need_libusb = true
+ cargs += '-DCONFIG_DEVELOPERBOX_SPI=1'
+ endif
+ if config_digilent_spi
+ srcs += 'digilent_spi.c'
++ need_libusb = true
+ cargs += '-DCONFIG_DIGILENT_SPI=1'
+ endif
+ if config_drkaiser
+ srcs += 'drkaiser.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_DRKAISER=1'
+ endif
+ if config_dummy
+@@ -162,12 +179,14 @@
+ endif
+ if config_ft2232_spi
+ srcs += 'ft2232_spi.c'
++ need_libftdi = true
+ cargs += '-DCONFIG_FT2232_SPI=1'
+- deps += dependency('libftdi1')
+ cargs += '-DHAVE_FT232H=1'
+ endif
+ if config_gfxnvidia
+ srcs += 'gfxnvidia.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_GFXNVIDIA=1'
+ endif
+ if config_internal
+@@ -186,6 +205,8 @@
+ srcs += 'sb600spi.c'
+ srcs += 'wbsio_spi.c'
+ endif
++ need_libpci = true
++ need_raw_access = true
+ config_bitbang_spi = true
+ cargs += '-DCONFIG_INTERNAL=1'
+ if get_option('config_internal_dmi')
+@@ -195,6 +216,8 @@
+ endif
+ if config_it8212
+ srcs += 'it8212.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_IT8212=1'
+ endif
+ if config_linux_mtd
+@@ -211,36 +234,51 @@
+ endif
+ if config_nic3com
+ srcs += 'nic3com.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_NIC3COM=1'
+ endif
+ if config_nicintel
+ srcs += 'nicintel.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_NICINTEL=1'
+ endif
+ if config_nicintel_eeprom
+ srcs += 'nicintel_eeprom.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_NICINTEL_EEPROM=1'
+ endif
+ if config_nicintel_spi
+ srcs += 'nicintel_spi.c'
++ need_libpci = true
++ need_raw_access = true
+ config_bitbang_spi = true
+ cargs += '-DCONFIG_NICINTEL_SPI=1'
+ endif
+ if config_nicnatsemi
+ srcs += 'nicnatsemi.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_NICNATSEMI=1'
+ endif
+ if config_nicrealtek
+ srcs += 'nicrealtek.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_NICREALTEK=1'
+ endif
+ if config_ogp_spi
+ config_bitbang_spi = true
+ srcs += 'ogp_spi.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_OGP_SPI=1'
+ endif
+ if config_pickit2_spi
+ srcs += 'pickit2_spi.c'
++ need_libusb = true
+ cargs += '-DCONFIG_PICKIT2_SPI=1'
+ endif
+ if config_pony_spi
+@@ -252,15 +290,20 @@
+ if config_rayer_spi
+ srcs += 'rayer_spi.c'
+ config_bitbang_spi = true
++ need_libpci = true
+ need_raw_access = true
+ cargs += '-DCONFIG_RAYER_SPI=1'
+ endif
+ if config_satamv
+ srcs += 'satamv.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_SATAMV=1'
+ endif
+ if config_satasii
+ srcs += 'satasii.c'
++ need_libpci = true
++ need_raw_access = true
+ cargs += '-DCONFIG_SATASII=1'
+ endif
+ if config_serprog
+@@ -270,12 +313,19 @@
+ endif
+ if config_usbblaster_spi
+ srcs += 'usbblaster_spi.c'
++ need_libftdi = true
+ cargs += '-DCONFIG_USBBLASTER_SPI=1'
+ endif
+ if config_stlinkv3_spi
+ srcs += 'stlinkv3_spi.c'
++ need_libusb = true
+ cargs += '-DCONFIG_STLINKV3_SPI=1'
+ endif
++if config_jlink_spi
++ srcs += 'jlink_spi.c'
++ cargs += '-DCONFIG_JLINK_SPI=1'
++ deps += dependency('libjaylink')
++endif
+
+ # bitbanging SPI infrastructure
+ if config_bitbang_spi
+@@ -296,6 +346,25 @@
+ srcs += 'serial.c'
+ endif
+
++# some programmers require libftdi
++if need_libftdi
++ deps += dependency('libftdi1')
++endif
++
++# some programmers require libpci
++if need_libpci
++ srcs += 'pcidev.c'
++ deps += dependency('libpci')
++ cargs += '-DNEED_PCI=1'
++endif
++
++# some programmers require libusb
++if need_libusb
++ srcs += 'usbdev.c'
++ deps += dependency('libusb-1.0')
++endif
++
++
+ prefix = get_option('prefix')
+ sbindir = join_paths(prefix, get_option('sbindir'))
+ libdir = join_paths(prefix, get_option('libdir'))
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,5 +1,6 @@
+-option('pciutils', type : 'boolean', value : true, description : 'use pciutils')
+-option('usb', type : 'boolean', value : true, description : 'use libusb1')
++option('no_libftdi_programmers', type : 'boolean', value : false, description : 'disable all programmers depending on libftdi')
++option('no_libpci_programmers', type : 'boolean', value : false, description : 'disable all programmers depending on libpci')
++option('no_libusb_programmers', type : 'boolean', value : false, description : 'disable all programmers depending on libusb')
+
+ option('config_atahpt', type : 'boolean', value : false, description : 'Highpoint (HPT) ATA/RAID controllers')
+ option('config_atapromise', type : 'boolean', value : false, description : 'Promise ATA controller')
+@@ -16,6 +17,7 @@
+ option('config_internal', type : 'boolean', value : true, description : 'internal/onboard')
+ option('config_internal_dmi', type : 'boolean', value : true, description : 'Use internal DMI parser')
+ option('config_it8212', type : 'boolean', value : true, description : 'ITE IT8212F PATA')
++option('config_jlink_spi', type : 'boolean', value : false, description : 'SEGGER J-Link and compatible')
+ option('config_linux_mtd', type : 'boolean', value : true, description : 'Linux MTD interfaces')
+ option('config_linux_spi', type : 'boolean', value : true, description : 'Linux spidev interfaces')
+ option('config_mstarddc_spi', type : 'boolean', value : false, description : 'MSTAR DDC support')
diff --git a/sys-apps/flashrom/files/flashrom-1.2_meson-install-manpage.patch b/sys-apps/flashrom/files/flashrom-1.2_meson-install-manpage.patch
new file mode 100644
index 000000000000..8783cfeefa7e
--- /dev/null
+++ b/sys-apps/flashrom/files/flashrom-1.2_meson-install-manpage.patch
@@ -0,0 +1,43 @@
+This is essentially the upstream commit 7aea04f7099ad4dde7b1f5900b54ef603eadf25e,
+modified so that MAN_DATE is set to simply '-' - the commit generates
+the date using the script util/getrevision.sh, which is not included in
+release tarballs.
+
+--- a/flashrom.8.tmpl
++++ b/flashrom.8.tmpl
+@@ -40,7 +40,7 @@
+ . \}
+ . \}
+ ..
+-.TH FLASHROM 8 "" ""
++.TH FLASHROM 8 "@MAN_DATE@" "@VERSION@" "@MAN_DATE@"
+ .SH NAME
+ flashrom \- detect, read, write, verify and erase flash chips
+ .SH SYNOPSIS
+--- a/meson.build
++++ b/meson.build
+@@ -321,6 +321,7 @@ endif
+ prefix = get_option('prefix')
+ sbindir = join_paths(prefix, get_option('sbindir'))
+ libdir = join_paths(prefix, get_option('libdir'))
++mandir = join_paths(prefix, get_option('mandir'))
+
+ install_headers([
+ 'libflashrom.h',
+@@ -394,6 +395,16 @@ pkgg.generate(
+ description : 'library to interact with flashrom',
+ )
+
++conf.set('VERSION', version)
++conf.set('MAN_DATE', '-')
++configure_file(
++ input : 'flashrom.8.tmpl',
++ output : 'flashrom.8',
++ configuration : conf,
++ install: true,
++ install_dir: join_paths(mandir, 'man8'),
++)
++
+ flashrom_dep = declare_dependency(
+ link_with : flashrom,
+ include_directories : include_directories('.'),
diff --git a/sys-apps/flashrom/files/flashrom-1.3.0-c99.patch b/sys-apps/flashrom/files/flashrom-1.3.0-c99.patch
new file mode 100644
index 000000000000..5fdb8ff87e61
--- /dev/null
+++ b/sys-apps/flashrom/files/flashrom-1.3.0-c99.patch
@@ -0,0 +1,59 @@
+https://bugs.gentoo.org/919266
+https://github.com/flashrom/flashrom/commit/e31d721469a37bd5784b86ffcd2318108a796616
+
+From e31d721469a37bd5784b86ffcd2318108a796616 Mon Sep 17 00:00:00 2001
+From: Nikolai Artemiev <nartemiev@google.com>
+Date: Mon, 28 Nov 2022 17:40:56 +1100
+Subject: [PATCH] tree/: Make probe_opcode() flashctx argument const
+
+Probing an opcode generally shouldn't involve mutating the flashctx
+state and currently no probe_opcode functions do that.
+
+Make the flashctx arg const so that call sites don't need to have a
+non-const pointer.
+
+BUG=b:253715389,b:253713774
+BRANCH=none
+TEST=ninja test
+
+Change-Id: I19e98be50d682de2d2715417f8b7b8c62b871617
+Signed-off-by: Nikolai Artemiev <nartemiev@google.com>
+Reviewed-on: https://review.coreboot.org/c/flashrom/+/70030
+Reviewed-by: Angel Pons <th3fanbus@gmail.com>
+Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
+Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
+---
+ dummyflasher.c | 4 ++--
+ ichspi.c | 2 +-
+ 4 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/dummyflasher.c b/dummyflasher.c
+index 35cdfef0b..da4efc79f 100644
+--- a/dummyflasher.c
++++ b/dummyflasher.c
+@@ -122,10 +122,10 @@ static int dummy_spi_write_256(struct flashctx *flash, const uint8_t *buf, unsig
+ emu_data->spi_write_256_chunksize);
+ }
+
+-static bool dummy_spi_probe_opcode(struct flashctx *flash, uint8_t opcode)
++static bool dummy_spi_probe_opcode(const struct flashctx *flash, uint8_t opcode)
+ {
+ size_t i;
+- struct emu_data *emu_data = flash->mst->spi.data;
++ const struct emu_data *emu_data = flash->mst->spi.data;
+ for (i = 0; i < emu_data->spi_blacklist_size; i++) {
+ if (emu_data->spi_blacklist[i] == opcode)
+ return false;
+diff --git a/ichspi.c b/ichspi.c
+index 62d1799b6..4588502a6 100644
+--- a/ichspi.c
++++ b/ichspi.c
+@@ -1661,7 +1661,7 @@ static int ich_spi_send_multicommand(const struct flashctx *flash,
+ return ret;
+ }
+
+-static bool ich_spi_probe_opcode(struct flashctx *flash, uint8_t opcode)
++static bool ich_spi_probe_opcode(const struct flashctx *flash, uint8_t opcode)
+ {
+ return find_opcode(curopcodes, opcode) >= 0;
+ }
diff --git a/sys-apps/flashrom/files/flashrom-1.3.0_spi-master.patch b/sys-apps/flashrom/files/flashrom-1.3.0_spi-master.patch
new file mode 100644
index 000000000000..72298f8cfca3
--- /dev/null
+++ b/sys-apps/flashrom/files/flashrom-1.3.0_spi-master.patch
@@ -0,0 +1,285 @@
+Backported upstream commit
+https://github.com/flashrom/flashrom/commit/e1f30bbce7a603d518ecec9d7e6885719f396719
+
+--- a/bitbang_spi.c
++++ b/bitbang_spi.c
+@@ -148,7 +148,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = bitbang_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ int register_spi_bitbang_master(const struct bitbang_spi_master *master, void *spi_data)
+--- a/buspirate_spi.c
++++ b/buspirate_spi.c
+@@ -183,7 +183,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = buspirate_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static const struct buspirate_speeds spispeeds[] = {
+--- a/ch341a_spi.c
++++ b/ch341a_spi.c
+@@ -418,7 +418,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = ch341a_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int ch341a_spi_init(const struct programmer_cfg *cfg)
+--- a/dediprog.c
++++ b/dediprog.c
+@@ -1038,7 +1038,6 @@
+ .write_256 = dediprog_spi_write_256,
+ .write_aai = dediprog_spi_write_aai,
+ .shutdown = dediprog_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ /*
+--- a/digilent_spi.c
++++ b/digilent_spi.c
+@@ -338,7 +338,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = digilent_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static bool default_reset(struct libusb_device_handle *handle)
+--- a/dirtyjtag_spi.c
++++ b/dirtyjtag_spi.c
+@@ -198,7 +198,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = dirtyjtag_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int dirtyjtag_spi_init(const struct programmer_cfg *cfg)
+--- a/ft2232_spi.c
++++ b/ft2232_spi.c
+@@ -301,7 +301,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = ft2232_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ /* Returns 0 upon success, a negative number upon errors. */
+--- a/include/chipdrivers.h
++++ b/include/chipdrivers.h
+@@ -26,6 +26,7 @@
+ int spi_aai_write(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+ int spi_chip_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+ int spi_chip_read(struct flashctx *flash, uint8_t *buf, unsigned int start, int unsigned len);
++bool spi_probe_opcode(const struct flashctx *flash, uint8_t opcode);
+
+ /* spi25.c */
+ int probe_spi_rdid(struct flashctx *flash);
+--- a/include/programmer.h
++++ b/include/programmer.h
+@@ -312,7 +312,7 @@
+ int (*write_256)(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+ int (*write_aai)(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+ int (*shutdown)(void *data);
+- bool (*probe_opcode)(struct flashctx *flash, uint8_t opcode);
++ bool (*probe_opcode)(const struct flashctx *flash, uint8_t opcode); /* NULL func implies true. */
+ void *data;
+ };
+
+@@ -322,7 +322,6 @@
+ int default_spi_read(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+ int default_spi_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+ int default_spi_write_aai(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+-bool default_spi_probe_opcode(struct flashctx *flash, uint8_t opcode);
+ int register_spi_master(const struct spi_master *mst, void *data);
+
+ /* The following enum is needed by ich_descriptor_tool and ich* code as well as in chipset_enable.c. */
+--- a/it87spi.c
++++ b/it87spi.c
+@@ -320,7 +320,6 @@
+ .write_256 = it8716f_spi_chip_write_256,
+ .write_aai = spi_chip_write_1,
+ .shutdown = it8716f_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static uint16_t it87spi_probe(const struct programmer_cfg *cfg, uint16_t port)
+--- a/jlink_spi.c
++++ b/jlink_spi.c
+@@ -190,7 +190,6 @@
+ .write_aai = default_spi_write_aai,
+ .features = SPI_MASTER_4BA,
+ .shutdown = jlink_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int jlink_spi_init(const struct programmer_cfg *cfg)
+--- a/linux_spi.c
++++ b/linux_spi.c
+@@ -121,7 +121,6 @@
+ .write_256 = linux_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = linux_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ /* Read max buffer size from sysfs, or use page size as fallback. */
+--- a/mediatek_i2c_spi.c
++++ b/mediatek_i2c_spi.c
+@@ -461,7 +461,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = mediatek_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int get_params(const struct programmer_cfg *cfg, bool *allow_brick)
+--- a/mstarddc_spi.c
++++ b/mstarddc_spi.c
+@@ -147,7 +147,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = mstarddc_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ /* Returns 0 upon success, a negative number upon errors. */
+--- a/ni845x_spi.c
++++ b/ni845x_spi.c
+@@ -537,7 +537,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = ni845x_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int ni845x_spi_init(const struct programmer_cfg *cfg)
+--- a/parade_lspcon.c
++++ b/parade_lspcon.c
+@@ -435,7 +435,6 @@
+ .write_256 = parade_lspcon_write_256,
+ .write_aai = parade_lspcon_write_aai,
+ .shutdown = parade_lspcon_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int get_params(const struct programmer_cfg *cfg, bool *allow_brick)
+--- a/pickit2_spi.c
++++ b/pickit2_spi.c
+@@ -385,7 +385,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = pickit2_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int pickit2_spi_init(const struct programmer_cfg *cfg)
+--- a/raiden_debug_spi.c
++++ b/raiden_debug_spi.c
+@@ -1325,7 +1325,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = raiden_debug_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int match_endpoint(struct libusb_endpoint_descriptor const *descriptor,
+--- a/realtek_mst_i2c_spi.c
++++ b/realtek_mst_i2c_spi.c
+@@ -440,7 +440,6 @@
+ .write_256 = realtek_mst_i2c_spi_write_256,
+ .write_aai = realtek_mst_i2c_spi_write_aai,
+ .shutdown = realtek_mst_i2c_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int get_params(const struct programmer_cfg *cfg, bool *reset, bool *enter_isp, bool *allow_brick)
+--- a/sb600spi.c
++++ b/sb600spi.c
+@@ -581,7 +581,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = sb600spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static const struct spi_master spi_master_yangtze = {
+@@ -595,7 +594,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = sb600spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ int sb600_probe_spi(const struct programmer_cfg *cfg, struct pci_dev *dev)
+--- a/serprog.c
++++ b/serprog.c
+@@ -463,7 +463,6 @@
+ .read = default_spi_read,
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int sp_check_opbuf_usage(int bytes_to_be_added)
+--- a/spi.c
++++ b/spi.c
+@@ -131,9 +131,11 @@
+ return flash->mst->spi.write_aai(flash, buf, start, len);
+ }
+
+-bool default_spi_probe_opcode(struct flashctx *flash, uint8_t opcode)
++bool spi_probe_opcode(const struct flashctx *flash, uint8_t opcode)
+ {
+- return true;
++ if (!flash->mst->spi.probe_opcode)
++ return true; /* no probe_opcode implies default of supported. */
++ return flash->mst->spi.probe_opcode(flash, opcode);
+ }
+
+ int register_spi_master(const struct spi_master *mst, void *data)
+@@ -148,7 +150,7 @@
+ }
+
+ if (!mst->write_aai || !mst->write_256 || !mst->read || !mst->command ||
+- !mst->multicommand || !mst->probe_opcode ||
++ !mst->multicommand ||
+ ((mst->command == default_spi_send_command) &&
+ (mst->multicommand == default_spi_send_multicommand))) {
+ msg_perr("%s called with incomplete master definition. "
+--- a/stlinkv3_spi.c
++++ b/stlinkv3_spi.c
+@@ -471,7 +471,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = stlinkv3_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ static int stlinkv3_spi_init(const struct programmer_cfg *cfg)
+--- a/usbblaster_spi.c
++++ b/usbblaster_spi.c
+@@ -173,7 +173,6 @@
+ .write_256 = default_spi_write_256,
+ .write_aai = default_spi_write_aai,
+ .shutdown = usbblaster_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ /* Returns 0 upon success, a negative number upon errors. */
+--- a/wbsio_spi.c
++++ b/wbsio_spi.c
+@@ -193,7 +193,6 @@
+ .write_256 = spi_chip_write_1,
+ .write_aai = spi_chip_write_1,
+ .shutdown = wbsio_spi_shutdown,
+- .probe_opcode = default_spi_probe_opcode,
+ };
+
+ int wbsio_check_for_spi(void)
diff --git a/sys-apps/flashrom/flashrom-1.2-r1.ebuild b/sys-apps/flashrom/flashrom-1.2-r1.ebuild
deleted file mode 100644
index e984e762420a..000000000000
--- a/sys-apps/flashrom/flashrom-1.2-r1.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://review.coreboot.org/flashrom.git"
- inherit git-r3
-else
- MY_P="${PN}-v${PV}"
- SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
- KEYWORDS="amd64 arm arm64 ppc ppc64 sparc x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
-HOMEPAGE="https://flashrom.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-# The defaults match the upstream Makefile.
-# Note: Do not list bitbang_spi as it is not a programmer; it's a backend used
-# by some other spi programmers.
-IUSE_PROGRAMMERS="
- atahpt
- +atapromise
- +atavia
- +buspirate-spi
- +ch341a-spi
- +dediprog
- +developerbox-spi
- +digilent-spi
- +drkaiser
- +dummy
- +ft2232-spi
- +gfxnvidia
- +internal
- +it8212
- jlink-spi
- +linux-mtd
- +linux-spi
- mstarddc-spi
- +nic3com
- +nicintel
- +nicintel-eeprom
- +nicintel-spi
- nicnatsemi
- +nicrealtek
- +ogp-spi
- +pickit2-spi
- +pony-spi
- +rayer-spi
- +satamv
- +satasii
- +serprog
- stlinkv3-spi
- +usbblaster-spi
-"
-
-IUSE="${IUSE_PROGRAMMERS} +internal-dmi static tools +wiki"
-
-LIB_DEPEND="
- atahpt? ( sys-apps/pciutils[static-libs(+)] )
- atapromise? ( sys-apps/pciutils[static-libs(+)] )
- atavia? ( sys-apps/pciutils[static-libs(+)] )
- ch341a-spi? ( virtual/libusb:1[static-libs(+)] )
- dediprog? ( virtual/libusb:1[static-libs(+)] )
- developerbox-spi? ( virtual/libusb:1[static-libs(+)] )
- digilent-spi? ( virtual/libusb:1[static-libs(+)] )
- drkaiser? ( sys-apps/pciutils[static-libs(+)] )
- ft2232-spi? ( dev-embedded/libftdi:=[static-libs(+)] )
- gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
- internal? ( sys-apps/pciutils[static-libs(+)] )
- it8212? ( sys-apps/pciutils[static-libs(+)] )
- jlink-spi? ( dev-embedded/libjaylink[static-libs(+)] )
- nic3com? ( sys-apps/pciutils[static-libs(+)] )
- nicintel-eeprom? ( sys-apps/pciutils[static-libs(+)] )
- nicintel-spi? ( sys-apps/pciutils[static-libs(+)] )
- nicintel? ( sys-apps/pciutils[static-libs(+)] )
- nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
- nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
- ogp-spi? ( sys-apps/pciutils[static-libs(+)] )
- pickit2-spi? ( virtual/libusb:0[static-libs(+)] )
- rayer-spi? ( sys-apps/pciutils[static-libs(+)] )
- satamv? ( sys-apps/pciutils[static-libs(+)] )
- satasii? ( sys-apps/pciutils[static-libs(+)] )
- stlinkv3-spi? ( virtual/libusb:1[static-libs(+)] )
- usbblaster-spi? ( dev-embedded/libftdi:=[static-libs(+)] )
-"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- sys-apps/diffutils"
-RDEPEND+=" !internal-dmi? ( sys-apps/dmidecode )"
-
-_flashrom_enable() {
- local c="CONFIG_${2:-$(echo "$1" | tr '[:lower:]-' '[:upper:]_')}"
- args+=( "${c}=$(usex $1 yes no)" )
-}
-flashrom_enable() {
- local u
- for u ; do _flashrom_enable "${u}" ; done
-}
-
-src_prepare() {
- # To make libflashrom.a actually useful
- append-flags -fPIC
-
- default
-}
-
-src_compile() {
- # Help keep things in sync.
- local sprogs=$(echo $(
- grep -o 'CONFIG_[A-Z0-9_]*' flashrom.c | \
- LC_ALL=C sort -u | \
- sed 's:^CONFIG_::' | \
- tr '[:upper:]_' '[:lower:]-' | \
- grep -v ni845x-spi))
- local eprogs=$(echo ${IUSE_PROGRAMMERS} | sed -E 's/\B[-+]\b//g')
- if [[ ${sprogs} != "${eprogs}" ]] ; then
- eerror "The ebuild needs to be kept in sync."
- eerror "IUSE set to: ${eprogs}"
- eerror "flashrom.c : ${sprogs}"
- die "sync IUSE to the list of source programmers"
- fi
-
- # Turn USE flags into CONFIG_xxx settings.
- local args=()
- flashrom_enable ${eprogs}
- _flashrom_enable wiki PRINT_WIKI
- _flashrom_enable static STATIC
-
- # You have to specify at least one programmer, and if you specify more than
- # one programmer you have to include either dummy or internal in the list.
- # We pick dummy as the default because internal requires libpci.
- if ! use internal && ! use dummy ; then
- if [[ ${#args[@]} -ne 1 ]] ; then
- ewarn "You have to specify at least one programmer, and if you specify"
- ewarn "more than one programmer, you have to enable either dummy or"
- ewarn "internal as well. 'dummy' will be the default now."
- args+=( CONFIG_DUMMY=yes )
- fi
- fi
-
- tc-export AR CC PKG_CONFIG RANLIB
- emake WARNERROR=no "${args[@]}" all libflashrom.a
-}
-
-src_install() {
- dosbin flashrom
- doman flashrom.8
- dodoc README Documentation/*.txt
- dolib.a libflashrom.a
- doheader libflashrom.h
-
- if use tools; then
- dosbin util/ich_descriptors_tool/ich_descriptors_tool
- fi
-}
diff --git a/sys-apps/flashrom/flashrom-1.2-r2.ebuild b/sys-apps/flashrom/flashrom-1.2-r2.ebuild
deleted file mode 100644
index ae710e470315..000000000000
--- a/sys-apps/flashrom/flashrom-1.2-r2.ebuild
+++ /dev/null
@@ -1,180 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://review.coreboot.org/flashrom.git"
- inherit git-r3
-else
- MY_P="${PN}-v${PV}"
- SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
-HOMEPAGE="https://flashrom.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-# The defaults match the upstream Makefile.
-# Note: Do not list bitbang_spi as it is not a programmer; it's a backend used
-# by some other spi programmers.
-IUSE_PROGRAMMERS="
- atahpt
- +atapromise
- +atavia
- +buspirate-spi
- +ch341a-spi
- +dediprog
- +developerbox-spi
- +digilent-spi
- +drkaiser
- +dummy
- +ft2232-spi
- +gfxnvidia
- +internal
- +it8212
- jlink-spi
- +linux-mtd
- +linux-spi
- mstarddc-spi
- +nic3com
- +nicintel
- +nicintel-eeprom
- +nicintel-spi
- nicnatsemi
- +nicrealtek
- +ogp-spi
- +pickit2-spi
- +pony-spi
- +rayer-spi
- +satamv
- +satasii
- +serprog
- stlinkv3-spi
- +usbblaster-spi
-"
-
-IUSE="${IUSE_PROGRAMMERS} +internal-dmi static tools +wiki"
-
-LIB_DEPEND="
- atahpt? ( sys-apps/pciutils[static-libs(+)] )
- atapromise? ( sys-apps/pciutils[static-libs(+)] )
- atavia? ( sys-apps/pciutils[static-libs(+)] )
- ch341a-spi? ( virtual/libusb:1[static-libs(+)] )
- dediprog? ( virtual/libusb:1[static-libs(+)] )
- developerbox-spi? ( virtual/libusb:1[static-libs(+)] )
- digilent-spi? ( virtual/libusb:1[static-libs(+)] )
- drkaiser? ( sys-apps/pciutils[static-libs(+)] )
- ft2232-spi? ( dev-embedded/libftdi:=[static-libs(+)] )
- gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
- internal? ( sys-apps/pciutils[static-libs(+)] )
- it8212? ( sys-apps/pciutils[static-libs(+)] )
- jlink-spi? ( dev-embedded/libjaylink[static-libs(+)] )
- nic3com? ( sys-apps/pciutils[static-libs(+)] )
- nicintel-eeprom? ( sys-apps/pciutils[static-libs(+)] )
- nicintel-spi? ( sys-apps/pciutils[static-libs(+)] )
- nicintel? ( sys-apps/pciutils[static-libs(+)] )
- nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
- nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
- ogp-spi? ( sys-apps/pciutils[static-libs(+)] )
- pickit2-spi? ( virtual/libusb:0[static-libs(+)] )
- rayer-spi? ( sys-apps/pciutils[static-libs(+)] )
- satamv? ( sys-apps/pciutils[static-libs(+)] )
- satasii? ( sys-apps/pciutils[static-libs(+)] )
- stlinkv3-spi? ( virtual/libusb:1[static-libs(+)] )
- usbblaster-spi? ( dev-embedded/libftdi:=[static-libs(+)] )
-"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- sys-apps/diffutils"
-RDEPEND+=" !internal-dmi? ( sys-apps/dmidecode )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.2_make-libflashrom-usable.patch
-)
-
-_flashrom_enable() {
- local c="CONFIG_${2:-$(echo "$1" | tr '[:lower:]-' '[:upper:]_')}"
- args+=( "${c}=$(usex $1 yes no)" )
-}
-flashrom_enable() {
- local u
- for u ; do _flashrom_enable "${u}" ; done
-}
-
-src_prepare() {
- # To make libflashrom.a actually useful
- append-flags -fPIC
-
- default
-}
-
-src_compile() {
- # Help keep things in sync.
- local sprogs=$(echo $(
- grep -o 'CONFIG_[A-Z0-9_]*' flashrom.c | \
- LC_ALL=C sort -u | \
- sed 's:^CONFIG_::' | \
- tr '[:upper:]_' '[:lower:]-' | \
- grep -v ni845x-spi))
- local eprogs=$(echo ${IUSE_PROGRAMMERS} | sed -E 's/\B[-+]\b//g')
- if [[ ${sprogs} != "${eprogs}" ]] ; then
- eerror "The ebuild needs to be kept in sync."
- eerror "IUSE set to: ${eprogs}"
- eerror "flashrom.c : ${sprogs}"
- die "sync IUSE to the list of source programmers"
- fi
-
- # Turn USE flags into CONFIG_xxx settings.
- local args=()
- flashrom_enable ${eprogs}
- _flashrom_enable wiki PRINT_WIKI
- _flashrom_enable static STATIC
-
- # You have to specify at least one programmer, and if you specify more than
- # one programmer you have to include either dummy or internal in the list.
- # We pick dummy as the default because internal requires libpci.
- if ! use internal && ! use dummy ; then
- if [[ ${#args[@]} -ne 1 ]] ; then
- ewarn "You have to specify at least one programmer, and if you specify"
- ewarn "more than one programmer, you have to enable either dummy or"
- ewarn "internal as well. 'dummy' will be the default now."
- args+=( CONFIG_DUMMY=yes )
- fi
- fi
-
- tc-export AR CC PKG_CONFIG RANLIB
- # PREFIX, INCLUDEDIR and LIBDIR are injected into the libflashrom pkgconfig
- # file, which is why we pass them here even though src_install() puts all
- # files in correct locations without employing make.
- # VERSION too goes into the pkgconfig file, and we override the upstream
- # value to get rid of the prefix 'v'.
- emake \
- INCLUDEDIR="include" \
- LIBDIR="$(get_libdir)" \
- PREFIX="${EPREFIX}/usr" \
- VERSION="${PV}" \
- WARNERROR=no "${args[@]}" \
- all libflashrom.a
-}
-
-src_install() {
- dosbin flashrom
- doman flashrom.8
- dodoc README Documentation/*.txt
- dolib.a libflashrom.a
- doheader libflashrom.h
-
- insinto /usr/$(get_libdir)/pkgconfig
- doins ${PN}.pc
-
- if use tools; then
- dosbin util/ich_descriptors_tool/ich_descriptors_tool
- fi
-}
diff --git a/sys-apps/flashrom/flashrom-1.2-r4.ebuild b/sys-apps/flashrom/flashrom-1.2-r4.ebuild
new file mode 100644
index 000000000000..2bb0b89fed55
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-1.2-r4.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://review.coreboot.org/flashrom.git"
+ inherit git-r3
+else
+ MY_P="${PN}-v${PV}"
+ SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
+ KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="https://flashrom.org/Flashrom"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+# The defaults match the upstream meson_options.txt.
+IUSE_PROGRAMMERS="
+ atahpt
+ atapromise
+ +atavia
+ +buspirate-spi
+ +ch341a-spi
+ +dediprog
+ +developerbox-spi
+ +digilent-spi
+ +drkaiser
+ +dummy
+ +ft2232-spi
+ +gfxnvidia
+ +internal
+ +it8212
+ jlink-spi
+ +linux-mtd
+ +linux-spi
+ mstarddc-spi
+ +nic3com
+ +nicintel
+ +nicintel-eeprom
+ +nicintel-spi
+ nicnatsemi
+ +nicrealtek
+ +ogp-spi
+ +pickit2-spi
+ +pony-spi
+ +rayer-spi
+ +satamv
+ +satasii
+ +serprog
+ +stlinkv3-spi
+ +usbblaster-spi
+"
+IUSE="${IUSE_PROGRAMMERS} +internal-dmi tools"
+
+RDEPEND="atahpt? ( sys-apps/pciutils )
+ atapromise? ( sys-apps/pciutils )
+ atavia? ( sys-apps/pciutils )
+ ch341a-spi? ( virtual/libusb:1 )
+ dediprog? ( virtual/libusb:1 )
+ developerbox-spi? ( virtual/libusb:1 )
+ digilent-spi? ( virtual/libusb:1 )
+ drkaiser? ( sys-apps/pciutils )
+ ft2232-spi? ( dev-embedded/libftdi:1= )
+ gfxnvidia? ( sys-apps/pciutils )
+ internal? ( sys-apps/pciutils )
+ it8212? ( sys-apps/pciutils )
+ jlink-spi? ( dev-embedded/libjaylink )
+ nic3com? ( sys-apps/pciutils )
+ nicintel-eeprom? ( sys-apps/pciutils )
+ nicintel-spi? ( sys-apps/pciutils )
+ nicintel? ( sys-apps/pciutils )
+ nicnatsemi? ( sys-apps/pciutils )
+ nicrealtek? ( sys-apps/pciutils )
+ ogp-spi? ( sys-apps/pciutils )
+ pickit2-spi? ( virtual/libusb:1 )
+ rayer-spi? ( sys-apps/pciutils )
+ satamv? ( sys-apps/pciutils )
+ satasii? ( sys-apps/pciutils )
+ stlinkv3-spi? ( virtual/libusb:1 )
+ usbblaster-spi? ( dev-embedded/libftdi:1= )"
+DEPEND="${RDEPEND}
+ sys-apps/diffutils"
+RDEPEND+=" !internal-dmi? ( sys-apps/dmidecode )"
+
+DOCS=( README Documentation/ )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.2_meson-fixes.patch
+ "${FILESDIR}"/${PN}-1.2_meson-install-manpage.patch
+)
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use atahpt config_atahpt)
+ $(meson_use atapromise config_atapromise)
+ $(meson_use atavia config_atavia)
+ $(meson_use buspirate-spi config_buspirate_spi)
+ $(meson_use ch341a-spi config_ch341a_spi)
+ $(meson_use dediprog config_dediprog)
+ $(meson_use developerbox-spi config_developerbox_spi)
+ $(meson_use digilent-spi config_digilent_spi)
+ $(meson_use drkaiser config_drkaiser)
+ $(meson_use dummy config_dummy)
+ $(meson_use ft2232-spi config_ft2232_spi)
+ $(meson_use gfxnvidia config_gfxnvidia)
+ $(meson_use internal config_internal)
+ $(meson_use internal-dmi config_internal_dmi)
+ $(meson_use it8212 config_it8212)
+ $(meson_use jlink-spi config_jlink_spi)
+ $(meson_use linux-mtd config_linux_mtd)
+ $(meson_use linux-spi config_linux_spi)
+ $(meson_use mstarddc-spi config_mstarddc_spi)
+ $(meson_use nic3com config_nic3com)
+ $(meson_use nicintel-eeprom config_nicintel_eeprom)
+ $(meson_use nicintel-spi config_nicintel_spi)
+ $(meson_use nicintel config_nicintel)
+ $(meson_use nicnatsemi config_nicnatsemi)
+ $(meson_use nicrealtek config_nicrealtek)
+ $(meson_use ogp-spi config_ogp_spi)
+ $(meson_use pickit2-spi config_pickit2_spi)
+ $(meson_use pony-spi config_pony_spi)
+ $(meson_use rayer-spi config_rayer_spi)
+ $(meson_use satamv config_satamv)
+ $(meson_use satasii config_satasii)
+ $(meson_use stlinkv3-spi config_stlinkv3_spi)
+ $(meson_use serprog config_serprog)
+ $(meson_use usbblaster-spi config_usbblaster_spi)
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ if use tools; then
+ dosbin "${BUILD_DIR}"/util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-1.3.0-r1.ebuild b/sys-apps/flashrom/flashrom-1.3.0-r1.ebuild
new file mode 100644
index 000000000000..bf6e187fd824
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-1.3.0-r1.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+MY_P="${PN}-v${PV}"
+SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
+KEYWORDS="amd64 arm arm64 ~loong ppc ~ppc64 ~riscv x86"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="https://flashrom.org/Flashrom"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+# The defaults should match the upstream "default" flags in meson.build
+IUSE_PROGRAMMERS="
+ atahpt
+ atapromise
+ +atavia
+ +buspirate-spi
+ +ch341a-spi
+ +dediprog
+ +developerbox-spi
+ +digilent-spi
+ +dirtyjtag-spi
+ +drkaiser
+ +dummy
+ +ft2232-spi
+ +gfxnvidia
+ +internal
+ +it8212
+ jlink-spi
+ +linux-mtd
+ +linux-spi
+ mediatek-i2c-spi
+ mstarddc-spi
+ +nic3com
+ +nicintel
+ +nicintel-eeprom
+ +nicintel-spi
+ nicnatsemi
+ +nicrealtek
+ +ogp-spi
+ parade-lspcon
+ +pickit2-spi
+ +pony-spi
+ +raiden-debug-spi
+ +rayer-spi
+ realtek-mst-i2c-spi
+ +satamv
+ +satasii
+ +serprog
+ +stlinkv3-spi
+ +usbblaster-spi"
+IUSE="${IUSE_PROGRAMMERS} +internal-dmi test tools"
+
+RESTRICT="!test? ( test )"
+
+COMMON="atahpt? ( sys-apps/pciutils )
+ atapromise? ( sys-apps/pciutils )
+ atavia? ( sys-apps/pciutils )
+ ch341a-spi? ( virtual/libusb:1 )
+ dediprog? ( virtual/libusb:1 )
+ developerbox-spi? ( virtual/libusb:1 )
+ digilent-spi? ( virtual/libusb:1 )
+ dirtyjtag-spi? ( virtual/libusb:1 )
+ drkaiser? ( sys-apps/pciutils )
+ ft2232-spi? ( dev-embedded/libftdi:1= )
+ gfxnvidia? ( sys-apps/pciutils )
+ internal? ( sys-apps/pciutils )
+ it8212? ( sys-apps/pciutils )
+ jlink-spi? ( dev-embedded/libjaylink )
+ nic3com? ( sys-apps/pciutils )
+ nicintel? ( sys-apps/pciutils )
+ nicintel-eeprom? ( sys-apps/pciutils )
+ nicintel-spi? ( sys-apps/pciutils )
+ nicnatsemi? ( sys-apps/pciutils )
+ nicrealtek? ( sys-apps/pciutils )
+ ogp-spi? ( sys-apps/pciutils )
+ pickit2-spi? ( virtual/libusb:1 )
+ raiden-debug-spi? ( virtual/libusb:1 )
+ satamv? ( sys-apps/pciutils )
+ satasii? ( sys-apps/pciutils )
+ stlinkv3-spi? ( virtual/libusb:1 )
+ usbblaster-spi? ( dev-embedded/libftdi:1= )"
+RDEPEND="${COMMON}
+ !internal-dmi? ( sys-apps/dmidecode )"
+DEPEND="${COMMON}
+ sys-apps/diffutils
+ linux-mtd? ( sys-kernel/linux-headers )
+ linux-spi? ( sys-kernel/linux-headers )
+ mediatek-i2c-spi? ( sys-kernel/linux-headers )
+ mstarddc-spi? ( sys-kernel/linux-headers )
+ parade-lspcon? ( sys-kernel/linux-headers )
+ realtek-mst-i2c-spi? ( sys-kernel/linux-headers )"
+BDEPEND="test? ( dev-util/cmocka )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.0_spi-master.patch
+)
+
+DOCS=( README Documentation/ )
+
+src_configure() {
+ local programmers="$(printf '%s,' $(for flag in ${IUSE_PROGRAMMERS//+/}; do usev ${flag}; done))"
+ programmers="${programmers%,}"
+ programmers="${programmers//-/_}"
+ local emesonargs=(
+ -Dclassic_cli="enabled"
+ -Dprogrammer="${programmers}"
+ $(meson_feature test tests)
+ $(meson_feature tools ich_descriptors_tool)
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # Upstream requires libflashrom.a to be present at build time because the classic CLI
+ # executable uses internal symbols from that library. Therefore, we let it be built
+ # but keep it out of the installed tree.
+ find "${ED}" -name '*.a' -delete || die
+
+ if use tools; then
+ dosbin "${BUILD_DIR}"/util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-1.3.0-r2.ebuild b/sys-apps/flashrom/flashrom-1.3.0-r2.ebuild
new file mode 100644
index 000000000000..1249ff4ee1a1
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-1.3.0-r2.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+MY_P="${PN}-v${PV}"
+SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="https://flashrom.org/Flashrom"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+# The defaults should match the upstream "default" flags in meson.build
+IUSE_PROGRAMMERS="
+ atahpt
+ atapromise
+ +atavia
+ +buspirate-spi
+ +ch341a-spi
+ +dediprog
+ +developerbox-spi
+ +digilent-spi
+ +dirtyjtag-spi
+ +drkaiser
+ +dummy
+ +ft2232-spi
+ +gfxnvidia
+ +internal
+ +it8212
+ jlink-spi
+ +linux-mtd
+ +linux-spi
+ mediatek-i2c-spi
+ mstarddc-spi
+ +nic3com
+ +nicintel
+ +nicintel-eeprom
+ +nicintel-spi
+ nicnatsemi
+ +nicrealtek
+ +ogp-spi
+ parade-lspcon
+ +pickit2-spi
+ +pony-spi
+ +raiden-debug-spi
+ +rayer-spi
+ realtek-mst-i2c-spi
+ +satamv
+ +satasii
+ +serprog
+ +stlinkv3-spi
+ +usbblaster-spi"
+IUSE="${IUSE_PROGRAMMERS} +internal-dmi test tools"
+
+RESTRICT="!test? ( test )"
+
+COMMON="atahpt? ( sys-apps/pciutils )
+ atapromise? ( sys-apps/pciutils )
+ atavia? ( sys-apps/pciutils )
+ ch341a-spi? ( virtual/libusb:1 )
+ dediprog? ( virtual/libusb:1 )
+ developerbox-spi? ( virtual/libusb:1 )
+ digilent-spi? ( virtual/libusb:1 )
+ dirtyjtag-spi? ( virtual/libusb:1 )
+ drkaiser? ( sys-apps/pciutils )
+ ft2232-spi? ( dev-embedded/libftdi:1= )
+ gfxnvidia? ( sys-apps/pciutils )
+ internal? ( sys-apps/pciutils )
+ it8212? ( sys-apps/pciutils )
+ jlink-spi? ( dev-embedded/libjaylink )
+ nic3com? ( sys-apps/pciutils )
+ nicintel? ( sys-apps/pciutils )
+ nicintel-eeprom? ( sys-apps/pciutils )
+ nicintel-spi? ( sys-apps/pciutils )
+ nicnatsemi? ( sys-apps/pciutils )
+ nicrealtek? ( sys-apps/pciutils )
+ ogp-spi? ( sys-apps/pciutils )
+ pickit2-spi? ( virtual/libusb:1 )
+ raiden-debug-spi? ( virtual/libusb:1 )
+ satamv? ( sys-apps/pciutils )
+ satasii? ( sys-apps/pciutils )
+ stlinkv3-spi? ( virtual/libusb:1 )
+ usbblaster-spi? ( dev-embedded/libftdi:1= )"
+RDEPEND="${COMMON}
+ !internal-dmi? ( sys-apps/dmidecode )"
+DEPEND="${COMMON}
+ sys-apps/diffutils
+ linux-mtd? ( sys-kernel/linux-headers )
+ linux-spi? ( sys-kernel/linux-headers )
+ mediatek-i2c-spi? ( sys-kernel/linux-headers )
+ mstarddc-spi? ( sys-kernel/linux-headers )
+ parade-lspcon? ( sys-kernel/linux-headers )
+ realtek-mst-i2c-spi? ( sys-kernel/linux-headers )"
+BDEPEND="test? ( dev-util/cmocka )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.0_spi-master.patch
+ "${FILESDIR}"/${PN}-1.3.0-c99.patch
+)
+
+DOCS=( README Documentation/ )
+
+src_configure() {
+ local programmers="$(printf '%s,' $(for flag in ${IUSE_PROGRAMMERS//+/}; do usev ${flag}; done))"
+ programmers="${programmers%,}"
+ programmers="${programmers//-/_}"
+ local emesonargs=(
+ -Dclassic_cli="enabled"
+ -Dprogrammer="${programmers}"
+ $(meson_feature test tests)
+ $(meson_feature tools ich_descriptors_tool)
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # Upstream requires libflashrom.a to be present at build time because the classic CLI
+ # executable uses internal symbols from that library. Therefore, we let it be built
+ # but keep it out of the installed tree.
+ find "${ED}" -name '*.a' -delete || die
+
+ if use tools; then
+ dosbin "${BUILD_DIR}"/util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-1.3.0.ebuild b/sys-apps/flashrom/flashrom-1.3.0.ebuild
new file mode 100644
index 000000000000..1281c12fa3c3
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-1.3.0.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+MY_P="${PN}-v${PV}"
+SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
+KEYWORDS="amd64 arm arm64 ppc ~ppc64 ~riscv x86"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="https://flashrom.org/Flashrom"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+# The defaults should match the upstream "default" flags in meson.build
+IUSE_PROGRAMMERS="
+ atahpt
+ atapromise
+ +atavia
+ +buspirate-spi
+ +ch341a-spi
+ +dediprog
+ +developerbox-spi
+ +digilent-spi
+ +dirtyjtag-spi
+ +drkaiser
+ +dummy
+ +ft2232-spi
+ +gfxnvidia
+ +internal
+ +it8212
+ jlink-spi
+ +linux-mtd
+ +linux-spi
+ mediatek-i2c-spi
+ mstarddc-spi
+ +nic3com
+ +nicintel
+ +nicintel-eeprom
+ +nicintel-spi
+ nicnatsemi
+ +nicrealtek
+ +ogp-spi
+ parade-lspcon
+ +pickit2-spi
+ +pony-spi
+ +raiden-debug-spi
+ +rayer-spi
+ realtek-mst-i2c-spi
+ +satamv
+ +satasii
+ +serprog
+ +stlinkv3-spi
+ +usbblaster-spi"
+IUSE="${IUSE_PROGRAMMERS} +internal-dmi test tools"
+
+RESTRICT="!test? ( test )"
+
+COMMON="atahpt? ( sys-apps/pciutils )
+ atapromise? ( sys-apps/pciutils )
+ atavia? ( sys-apps/pciutils )
+ ch341a-spi? ( virtual/libusb:1 )
+ dediprog? ( virtual/libusb:1 )
+ developerbox-spi? ( virtual/libusb:1 )
+ digilent-spi? ( virtual/libusb:1 )
+ dirtyjtag-spi? ( virtual/libusb:1 )
+ drkaiser? ( sys-apps/pciutils )
+ ft2232-spi? ( dev-embedded/libftdi:1= )
+ gfxnvidia? ( sys-apps/pciutils )
+ internal? ( sys-apps/pciutils )
+ it8212? ( sys-apps/pciutils )
+ jlink-spi? ( dev-embedded/libjaylink )
+ nic3com? ( sys-apps/pciutils )
+ nicintel? ( sys-apps/pciutils )
+ nicintel-eeprom? ( sys-apps/pciutils )
+ nicintel-spi? ( sys-apps/pciutils )
+ nicnatsemi? ( sys-apps/pciutils )
+ nicrealtek? ( sys-apps/pciutils )
+ ogp-spi? ( sys-apps/pciutils )
+ pickit2-spi? ( virtual/libusb:1 )
+ raiden-debug-spi? ( virtual/libusb:1 )
+ satamv? ( sys-apps/pciutils )
+ satasii? ( sys-apps/pciutils )
+ stlinkv3-spi? ( virtual/libusb:1 )
+ usbblaster-spi? ( dev-embedded/libftdi:1= )"
+RDEPEND="${COMMON}
+ !internal-dmi? ( sys-apps/dmidecode )"
+DEPEND="${COMMON}
+ sys-apps/diffutils
+ linux-mtd? ( sys-kernel/linux-headers )
+ linux-spi? ( sys-kernel/linux-headers )
+ mediatek-i2c-spi? ( sys-kernel/linux-headers )
+ mstarddc-spi? ( sys-kernel/linux-headers )
+ parade-lspcon? ( sys-kernel/linux-headers )
+ realtek-mst-i2c-spi? ( sys-kernel/linux-headers )"
+BDEPEND="test? ( dev-util/cmocka )"
+
+DOCS=( README Documentation/ )
+
+src_configure() {
+ local programmers="$(printf '%s,' $(for flag in ${IUSE_PROGRAMMERS//+/}; do usev ${flag}; done))"
+ programmers="${programmers%,}"
+ programmers="${programmers//-/_}"
+ local emesonargs=(
+ -Dclassic_cli="enabled"
+ -Dprogrammer="${programmers}"
+ $(meson_feature test tests)
+ $(meson_feature tools ich_descriptors_tool)
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # Upstream requires libflashrom.a to be present at build time because the classic CLI
+ # executable uses internal symbols from that library. Therefore, we let it be built
+ # but keep it out of the installed tree.
+ find "${ED}" -name '*.a' -delete || die
+
+ if use tools; then
+ dosbin "${BUILD_DIR}"/util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-9999.ebuild b/sys-apps/flashrom/flashrom-9999.ebuild
deleted file mode 100644
index 2df167b1449f..000000000000
--- a/sys-apps/flashrom/flashrom-9999.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://review.coreboot.org/flashrom.git"
- inherit git-r3
-else
- MY_P="${PN}-v${PV}"
- SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
-HOMEPAGE="https://flashrom.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-# The defaults match the upstream Makefile.
-# Note: Do not list bitbang_spi as it is not a programmer; it's a backend used
-# by some other spi programmers.
-IUSE_PROGRAMMERS="
- atahpt
- +atapromise
- +atavia
- +buspirate-spi
- +ch341a-spi
- +dediprog
- +developerbox-spi
- +digilent-spi
- +drkaiser
- +dummy
- +ene-lpc
- +ft2232-spi
- +gfxnvidia
- +internal
- +it8212
- jlink-spi
- +linux-mtd
- +linux-spi
- lspcon-i2c-spi
- +mec1308
- mstarddc-spi
- +nic3com
- +nicintel
- +nicintel-eeprom
- +nicintel-spi
- nicnatsemi
- +nicrealtek
- +ogp-spi
- +pickit2-spi
- +pony-spi
- +raiden
- +rayer-spi
- realtek-mst-i2c-spi
- +satamv
- +satasii
- +serprog
- stlinkv3-spi
- +usbblaster-spi
-"
-
-IUSE="${IUSE_PROGRAMMERS} +internal-dmi static tools +wiki"
-
-LIB_DEPEND="
- atahpt? ( sys-apps/pciutils[static-libs(+)] )
- atapromise? ( sys-apps/pciutils[static-libs(+)] )
- atavia? ( sys-apps/pciutils[static-libs(+)] )
- ch341a-spi? ( virtual/libusb:1[static-libs(+)] )
- dediprog? ( virtual/libusb:1[static-libs(+)] )
- developerbox-spi? ( virtual/libusb:1[static-libs(+)] )
- digilent-spi? ( virtual/libusb:1[static-libs(+)] )
- drkaiser? ( sys-apps/pciutils[static-libs(+)] )
- ft2232-spi? ( dev-embedded/libftdi:=[static-libs(+)] )
- gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
- internal? ( sys-apps/pciutils[static-libs(+)] )
- it8212? ( sys-apps/pciutils[static-libs(+)] )
- jlink-spi? ( dev-embedded/libjaylink[static-libs(+)] )
- nic3com? ( sys-apps/pciutils[static-libs(+)] )
- nicintel-eeprom? ( sys-apps/pciutils[static-libs(+)] )
- nicintel-spi? ( sys-apps/pciutils[static-libs(+)] )
- nicintel? ( sys-apps/pciutils[static-libs(+)] )
- nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
- nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
- ogp-spi? ( sys-apps/pciutils[static-libs(+)] )
- pickit2-spi? ( virtual/libusb:0[static-libs(+)] )
- rayer-spi? ( sys-apps/pciutils[static-libs(+)] )
- satamv? ( sys-apps/pciutils[static-libs(+)] )
- satasii? ( sys-apps/pciutils[static-libs(+)] )
- stlinkv3-spi? ( virtual/libusb:1[static-libs(+)] )
- usbblaster-spi? ( dev-embedded/libftdi:=[static-libs(+)] )
-"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- sys-apps/diffutils"
-RDEPEND+=" !internal-dmi? ( sys-apps/dmidecode )"
-
-_flashrom_enable() {
- local c="CONFIG_${2:-$(echo "$1" | tr '[:lower:]-' '[:upper:]_')}"
- args+=( "${c}=$(usex $1 yes no)" )
-}
-flashrom_enable() {
- local u
- for u ; do _flashrom_enable "${u}" ; done
-}
-
-src_compile() {
- # Help keep things in sync.
- local sprogs=$(echo $(
- grep -o 'CONFIG_[A-Z0-9_]*' flashrom.c | \
- LC_ALL=C sort -u | \
- sed 's:^CONFIG_::' | \
- tr '[:upper:]_' '[:lower:]-' | \
- grep -v ni845x-spi))
- local eprogs=$(echo ${IUSE_PROGRAMMERS} | sed -E 's/\B[-+]\b//g')
- if [[ ${sprogs} != "${eprogs}" ]] ; then
- eerror "The ebuild needs to be kept in sync."
- eerror "IUSE set to: ${eprogs}"
- eerror "flashrom.c : ${sprogs}"
- die "sync IUSE to the list of source programmers"
- fi
-
- # Turn USE flags into CONFIG_xxx settings.
- local args=()
- flashrom_enable ${eprogs}
- _flashrom_enable wiki PRINT_WIKI
- _flashrom_enable static STATIC
-
- # You have to specify at least one programmer, and if you specify more than
- # one programmer you have to include either dummy or internal in the list.
- # We pick dummy as the default because internal requires libpci.
- if ! use internal && ! use dummy ; then
- if [[ ${#args[@]} -ne 1 ]] ; then
- ewarn "You have to specify at least one programmer, and if you specify"
- ewarn "more than one programmer, you have to enable either dummy or"
- ewarn "internal as well. 'dummy' will be the default now."
- args+=( CONFIG_DUMMY=yes )
- fi
- fi
-
- tc-export AR CC PKG_CONFIG RANLIB
- emake WARNERROR=no "${args[@]}" all libflashrom.a
-}
-
-src_install() {
- dosbin flashrom
- doman flashrom.8
- dodoc README Documentation/*.txt
- dolib.a libflashrom.a
- doheader libflashrom.h
-
- if use tools; then
- dosbin util/ich_descriptors_tool/ich_descriptors_tool
- fi
-}
diff --git a/sys-apps/flashrom/metadata.xml b/sys-apps/flashrom/metadata.xml
index 972fea21b4bd..6f60f84bb3d6 100644
--- a/sys-apps/flashrom/metadata.xml
+++ b/sys-apps/flashrom/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>marecki@gentoo.org</email>
@@ -14,9 +14,9 @@
<flag name="dediprog">Dediprog SF100 support</flag>
<flag name="developerbox-spi">Enable Devloperbox SPI recovery support</flag>
<flag name="digilent-spi">Enable support for Digilent iCEblink40 development board</flag>
+ <flag name="dirtyjtag-spi">Support for DirtyJTAG (a USB-JTAG firmware for STM32 MCUs)</flag>
<flag name="drkaiser">Enable Dr. Kaiser programmer</flag>
<flag name="dummy">Enable dummy tracing</flag>
- <flag name="ene-lpc">Enable ENE LPC interface keyboard controller</flag>
<flag name="ft2232-spi">Enable ftdi programmer, flashing through FTDI/SPI USB interface</flag>
<flag name="gfxnvidia">Enable NVIDIA programmer</flag>
<flag name="internal">Enable internal/onboard support</flag>
@@ -25,8 +25,7 @@
<flag name="jlink-spi">Support for SEGGER J-Link and compatible devices</flag>
<flag name="linux-mtd">Enable support for Linux mtd SPI flash devices</flag>
<flag name="linux-spi">Enable support for Linux userspace spidev interface</flag>
- <flag name="lspcon-i2c-spi">Enable support for Parade lspcon USB-C to HDMI protocol translator</flag>
- <flag name="mec1308">Enable support for Microchip MEC1308 embedded controller</flag>
+ <flag name="mediatek-i2c-spi">Support for Mediatek LCD controllers</flag>
<flag name="mstarddc-spi">Support for SPI flash ROMs accessible through DDC in MSTAR-equipped displays</flag>
<flag name="nic3com">Enable 3Com NIC programmer</flag>
<flag name="nicintel">Support for Intel NICs</flag>
@@ -35,18 +34,18 @@
<flag name="nicnatsemi">Support for National Semiconductor NICs</flag>
<flag name="nicrealtek">Support for Realtek NICs</flag>
<flag name="ogp-spi">Enable support for OGP (Open Graphics Project) SPI flashing</flag>
- <flag name="pickit2-spi">SUpport for SPI flash ROMs accessible via Microchip PICkit2</flag>
+ <flag name="parade-lspcon">Enable support for Parade lspcon USB-C to HDMI protocol translator</flag>
+ <flag name="pickit2-spi">Support for SPI flash ROMs accessible via Microchip PICkit2</flag>
<flag name="pony-spi">Enable support for SI-Prog like hardware by Lancos</flag>
- <flag name="raiden">Enable ChromiumOS Servo DUT debug board</flag>
+ <flag name="raiden-debug-spi">Support for Chrome EC based debug tools - SuzyQable, Servo V4, C2D2 &amp; uServo</flag>
<flag name="rayer-spi">RayeR SPIPGM hardware support</flag>
- <flag name="realtek-mst-i2c-spi">Enable support for Realtek MultiStream Transport (MST)</flag>
- <flag name="satasii">Enable programmer for SiI SATA controllers</flag>
+ <flag name="realtek-mst-i2c-spi">Enable support for Realtek RTD2142 MST</flag>
<flag name="satamv">Enable programmer for Marvell SATA controllers</flag>
+ <flag name="satasii">Enable programmer for SiI SATA controllers</flag>
<flag name="stlinkv3-spi">Enable SPI programmer using STLINK-V3</flag>
<flag name="serprog">Enable Serial Flasher programmer</flag>
<flag name="tools">Install ich_descriptor_tool, a tool for reading descriptor-mode SPI-flash images for Intel chipsets</flag>
<flag name="usbblaster-spi">Enable support for Altera USB-Blaster dongles</flag>
- <flag name="wiki">Enable wiki informations, like supported devices etc.</flag>
</use>
<longdescription lang="en">
flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash BIOS/EFI/coreboot/firmware/optionROM images on mainboards, network/graphics/storage controller cards, and various other programmer devices.
@@ -62,4 +61,7 @@
Speed. flashrom is often much faster than most vendor flash tools.
Portability. Supports DOS, Linux, FreeBSD, NetBSD, OpenBSD, DragonFly BSD, Solaris, Mac OS X, and other Unix-like OSes. Partial Windows support is available (no internal programmer support at the moment, hence no "BIOS flashing").
</longdescription>
+ <upstream>
+ <remote-id type="github">flashrom/flashrom</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/flatpak/Manifest b/sys-apps/flatpak/Manifest
index 3fcd56345efd..dc467e2313ab 100644
--- a/sys-apps/flatpak/Manifest
+++ b/sys-apps/flatpak/Manifest
@@ -1 +1,5 @@
-DIST flatpak-1.8.2.tar.xz 1424468 BLAKE2B 4ade582176cd4ed494d0afc2a75b81168dc2263183d4ec2ef731b2d3ccbd96a7cc0fdb012f07966b4429529ab69c79b32abbcc4c1a8640b030d3ba2edfbce36d SHA512 f27c05b2621328dce31e4c31ae097765864bac84f6c1fada23f48c0235c6b85f447948a07861653f7bed4e17e43f8ff3d2c60263e23426c765c787b5f447a4e2
+DIST flatpak-1.12.8.tar.xz 1568984 BLAKE2B 6db457eba6b5c03ae4b7037e55f0537821152a80cad8746939fe93008922a9a33ff9f08635613e56a84f2d151826130c497c1e9f7f1e41a5b2dc215882f2eb14 SHA512 5a37d94e12c18a746b222c1ddbd20bddfb22079af1d3a79dc819cdb25f04774c9e4b3a51f9b5ed64f210317e7ec9fb97324ae38ec3430c6a515ba4042805fc57
+DIST flatpak-1.12.9.tar.xz 1572536 BLAKE2B bd9b116bf0e51e60d1e0c420c4c4553a0ebc55a667bce23a0f3116da0dd566c7ffdb063c0b63f466b9b6e451b3c7791daf40cb5d13e2535d988b58cfc947341f SHA512 9103acfed4cb25e6ff4a9d023864845cc565f688b1a4b49b0c8c2605eda9a142f33a37ad2ce670c5f7bd30a398027c141adf2a6f6d0d7549b2bfca82214d3f85
+DIST flatpak-1.14.4.tar.xz 1637484 BLAKE2B cf208c581ad76d46489ba473d290c35907da0d1d473bf2b4792fb56c31e7110cd38f1c6fc4ad04aa3675868d17116ba52a84b028d7b7789c1736cfe26f3cabfe SHA512 3f97096affd4f1de184ded353f1ab403d9f1813b199b9a1595596cc7c5d6b46062aa2ef184255823f50ae95ca60d0542d9b9e520f9a605f9bc51091863bf89b0
+DIST flatpak-1.14.5.tar.xz 1637692 BLAKE2B 180dc094ef3feef1ccefceb562836f55f6e875016588a5984435ea3157498a8746305c16aa2c83044c107fd7f0e8f6c034c326b4ae29ade1c657e82cff353d47 SHA512 552deaaf3e6712a56f33698c20e6b8225c8893fe9a375af897fd99e19c487bf79b19c3e4ce3b00f3caf90020019ff67c628ca6a8f2ae1e6e01db397d2081ab2b
+DIST flatpak-1.14.6.tar.xz 1644056 BLAKE2B 68bc8bdaf1d1c8a6046a06f800d41c1603e691e60a90f070c694501d50ee6fba3ad1978e222d22a9f99e2b85de9154e670149227b0f2ea6543483c2d103b5093 SHA512 d858682dbf539afe1b91087b6a0e0ebeea6658a0ef02c96d68259f3d8c58d1e6d02dd8b69db1b3c55f6d5df0f4d7e41c6165f668f09763dd3f9c3beb48f8bcf5
diff --git a/sys-apps/flatpak/files/flatpak-1.14.4-fuse-3-slotted.patch b/sys-apps/flatpak/files/flatpak-1.14.4-fuse-3-slotted.patch
new file mode 100644
index 000000000000..a0db209fae2f
--- /dev/null
+++ b/sys-apps/flatpak/files/flatpak-1.14.4-fuse-3-slotted.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/906653
+--- a/common/flatpak-dir.c
++++ b/common/flatpak-dir.c
+@@ -2109,7 +2109,7 @@ flatpak_dir_revokefs_fuse_unmount (OstreeRepo **repo,
+
+ fusermount = g_subprocess_new (G_SUBPROCESS_FLAGS_NONE,
+ error,
+- "fusermount", "-u", "-z", mnt_dir,
++ "fusermount3", "-u", "-z", mnt_dir,
+ NULL);
+ if (g_subprocess_wait_check (fusermount, NULL, error))
+ {
+--- a/tests/can-use-fuse.c
++++ b/tests/can-use-fuse.c
+@@ -53,11 +53,11 @@ check_fuse (void)
+ return FALSE;
+ }
+
+- fusermount = g_find_program_in_path ("fusermount");
++ fusermount = g_find_program_in_path ("fusermount3");
+
+ if (fusermount == NULL)
+ {
+- cannot_use_fuse = g_strdup ("fusermount not found in PATH");
++ cannot_use_fuse = g_strdup ("fusermount3 not found in PATH");
+ return FALSE;
+ }
+
+@@ -69,7 +69,7 @@ check_fuse (void)
+
+ if (!g_file_test ("/etc/mtab", G_FILE_TEST_EXISTS))
+ {
+- cannot_use_fuse = g_strdup ("fusermount won't work without /etc/mtab");
++ cannot_use_fuse = g_strdup ("fusermount3 won't work without /etc/mtab");
+ return FALSE;
+ }
+
+--- a/tests/libtest.sh
++++ b/tests/libtest.sh
+@@ -542,7 +542,7 @@ skip_one_without_bwrap () {
+ }
+
+ skip_without_fuse () {
+- fusermount --version >/dev/null 2>&1 || skip "no fusermount"
++ fusermount3 --version >/dev/null 2>&1 || skip "no fusermount3"
+
+ capsh --print | grep -q 'Bounding set.*[^a-z]cap_sys_admin' || \
+ skip "No cap_sys_admin in bounding set, can't use FUSE"
+@@ -608,7 +608,7 @@ commit_to_path () {
+ cleanup () {
+ /bin/kill -9 $DBUS_SESSION_BUS_PID
+ gpg-connect-agent --homedir "${FL_GPG_HOMEDIR}" killagent /bye >&2 || true
+- fusermount -u $XDG_RUNTIME_DIR/doc >&2 || :
++ fusermount3 -u $XDG_RUNTIME_DIR/doc >&2 || :
+ kill $(jobs -p) &> /dev/null || true
+ if test -n "${TEST_SKIP_CLEANUP:-}"; then
+ echo "# Skipping cleanup of ${TEST_DATA_DIR}"
diff --git a/sys-apps/flatpak/files/flatpak-update.service b/sys-apps/flatpak/files/flatpak-update.service
new file mode 100644
index 000000000000..07330552f7d6
--- /dev/null
+++ b/sys-apps/flatpak/files/flatpak-update.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Update system Flatpaks
+After=network-online.target
+Wants=network-online.target
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/flatpak --system update --assumeyes
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-apps/flatpak/files/flatpak-update.timer b/sys-apps/flatpak/files/flatpak-update.timer
new file mode 100644
index 000000000000..f34af44de847
--- /dev/null
+++ b/sys-apps/flatpak/files/flatpak-update.timer
@@ -0,0 +1,9 @@
+[Unit]
+Description=Update user Flatpaks daily
+
+[Timer]
+OnCalendar=daily
+Persistent=true
+
+[Install]
+WantedBy=timers.target
diff --git a/sys-apps/flatpak/flatpak-1.12.8.ebuild b/sys-apps/flatpak/flatpak-1.12.8.ebuild
new file mode 100644
index 000000000000..6bc1f0bd87d5
--- /dev/null
+++ b/sys-apps/flatpak/flatpak-1.12.8.ebuild
@@ -0,0 +1,108 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10,11} )
+
+inherit linux-info python-any-r1
+
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+DESCRIPTION="Linux application sandboxing and distribution framework"
+HOMEPAGE="https://flatpak.org/"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
+IUSE="doc introspection policykit seccomp systemd X"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/flatpak
+ acct-user/flatpak
+ >=app-arch/libarchive-2.8:=
+ app-arch/zstd:=
+ >=app-crypt/gpgme-1.1.8:=
+ >=dev-libs/appstream-glib-0.5.10:=
+ >=dev-libs/glib-2.56:2=
+ >=dev-libs/libxml2-2.4:=
+ dev-libs/json-glib:=
+ dev-libs/libassuan:=
+ >=dev-util/ostree-2020.8:=[gpg(+)]
+ || (
+ dev-util/ostree[curl]
+ dev-util/ostree[soup]
+ )
+ >=gnome-base/dconf-0.26:=
+ gnome-base/gsettings-desktop-schemas
+ >=net-libs/libsoup-2.4:2.4=
+ >=sys-apps/bubblewrap-0.5.0
+ sys-apps/dbus
+ >=sys-fs/fuse-2.9.9:0=
+ sys-apps/xdg-dbus-proxy
+ X? (
+ x11-apps/xauth
+ x11-libs/libXau:=
+ )
+ x11-libs/gdk-pixbuf:2=
+ policykit? ( >=sys-auth/polkit-0.98:= )
+ seccomp? ( sys-libs/libseccomp:= )
+ systemd? ( sys-apps/systemd:= )
+"
+
+DEPEND="${RDEPEND}"
+# pyparsing version pinned for https://bugs.gentoo.org/825230
+BDEPEND="
+ >=dev-build/automake-1.13.4
+ >=sys-devel/gettext-0.18.2
+ virtual/pkgconfig
+ dev-util/gdbus-codegen
+ app-alternatives/yacc
+ introspection? ( >=dev-libs/gobject-introspection-1.40 )
+ doc? (
+ >=dev-util/gtk-doc-1.20
+ dev-libs/libxslt
+ )
+ $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]')
+"
+
+PDEPEND="sys-apps/xdg-desktop-portal"
+
+python_check_deps() {
+ has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~USER_NS"
+ linux-info_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ # This line fails because locales are in /usr/lib/locale/locale-archive.
+ sed -i 's:^cp -r /usr/lib/locale/C.*:#\0:' tests/make-test-runtime.sh || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-sandboxed-triggers
+ --localstatedir="${EPREFIX}"/var
+ --with-system-bubblewrap
+ --with-system-dbus-proxy
+ $(use_enable X xauth)
+ $(use_enable doc documentation)
+ $(use_enable doc gtk-doc)
+ $(use_enable introspection)
+ $(use_enable policykit system-helper)
+ $(use_enable seccomp)
+ $(use_with systemd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # resolve conflict with acct-user/flatpak for #856706
+ rm -rf "${ED}/usr/lib/sysusers.d"
+}
diff --git a/sys-apps/flatpak/flatpak-1.12.9.ebuild b/sys-apps/flatpak/flatpak-1.12.9.ebuild
new file mode 100644
index 000000000000..5d1d9025a7c6
--- /dev/null
+++ b/sys-apps/flatpak/flatpak-1.12.9.ebuild
@@ -0,0 +1,108 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10,11} )
+
+inherit linux-info python-any-r1
+
+DESCRIPTION="Linux application sandboxing and distribution framework"
+HOMEPAGE="https://flatpak.org/"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="doc introspection policykit seccomp systemd X"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/flatpak
+ acct-user/flatpak
+ >=app-arch/libarchive-2.8:=
+ app-arch/zstd:=
+ >=app-crypt/gpgme-1.1.8:=
+ >=dev-libs/appstream-glib-0.5.10:=
+ >=dev-libs/glib-2.56:2=
+ >=dev-libs/libxml2-2.4:=
+ dev-libs/json-glib:=
+ dev-libs/libassuan:=
+ >=dev-util/ostree-2020.8:=[gpg(+)]
+ || (
+ dev-util/ostree[curl]
+ dev-util/ostree[soup]
+ )
+ >=gnome-base/dconf-0.26:=
+ gnome-base/gsettings-desktop-schemas
+ >=net-libs/libsoup-2.4:2.4=
+ >=sys-apps/bubblewrap-0.5.0
+ sys-apps/dbus
+ >=sys-fs/fuse-2.9.9:0=
+ sys-apps/xdg-dbus-proxy
+ X? (
+ x11-apps/xauth
+ x11-libs/libXau:=
+ )
+ x11-libs/gdk-pixbuf:2=
+ policykit? ( >=sys-auth/polkit-0.98:= )
+ seccomp? ( sys-libs/libseccomp:= )
+ systemd? ( sys-apps/systemd:= )
+"
+
+DEPEND="${RDEPEND}"
+# pyparsing version pinned for https://bugs.gentoo.org/825230
+BDEPEND="
+ >=dev-build/automake-1.13.4
+ >=sys-devel/gettext-0.18.2
+ virtual/pkgconfig
+ dev-util/gdbus-codegen
+ app-alternatives/yacc
+ introspection? ( >=dev-libs/gobject-introspection-1.40 )
+ doc? (
+ >=dev-util/gtk-doc-1.20
+ dev-libs/libxslt
+ )
+ $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]')
+"
+
+PDEPEND="sys-apps/xdg-desktop-portal"
+
+python_check_deps() {
+ python_has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~USER_NS"
+ linux-info_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ # This line fails because locales are in /usr/lib/locale/locale-archive.
+ sed -i 's:^cp -r /usr/lib/locale/C.*:#\0:' tests/make-test-runtime.sh || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-sandboxed-triggers
+ --localstatedir="${EPREFIX}"/var
+ --with-system-bubblewrap
+ --with-system-dbus-proxy
+ $(use_enable X xauth)
+ $(use_enable doc documentation)
+ $(use_enable doc gtk-doc)
+ $(use_enable introspection)
+ $(use_enable policykit system-helper)
+ $(use_enable seccomp)
+ $(use_with systemd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # resolve conflict with acct-user/flatpak for #856706
+ rm -rf "${ED}/usr/lib/sysusers.d"
+}
diff --git a/sys-apps/flatpak/flatpak-1.14.4-r3.ebuild b/sys-apps/flatpak/flatpak-1.14.4-r3.ebuild
new file mode 100644
index 000000000000..b5359b986a75
--- /dev/null
+++ b/sys-apps/flatpak/flatpak-1.14.4-r3.ebuild
@@ -0,0 +1,115 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10,11} )
+
+inherit linux-info python-any-r1 systemd
+
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+DESCRIPTION="Linux application sandboxing and distribution framework"
+HOMEPAGE="https://flatpak.org/"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86"
+IUSE="doc introspection policykit seccomp systemd X"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/flatpak
+ acct-user/flatpak
+ >=app-arch/libarchive-2.8:=
+ app-arch/zstd:=
+ >=app-crypt/gpgme-1.1.8:=
+ >=dev-libs/appstream-0.12:=
+ >=dev-libs/appstream-glib-0.5.10:=
+ >=dev-libs/glib-2.56:2=
+ >=dev-libs/libxml2-2.4:=
+ dev-libs/json-glib:=
+ dev-libs/libassuan:=
+ >=dev-util/ostree-2020.8:=[gpg(+)]
+ dev-util/ostree[curl]
+ >=gnome-base/dconf-0.26:=
+ gnome-base/gsettings-desktop-schemas
+ net-misc/curl:=
+ >=sys-apps/bubblewrap-0.5.0
+ sys-apps/dbus
+ >=sys-fs/fuse-3.1.1:3=
+ sys-apps/xdg-dbus-proxy
+ X? (
+ x11-apps/xauth
+ x11-libs/libXau:=
+ )
+ x11-libs/gdk-pixbuf:2=
+ policykit? ( >=sys-auth/polkit-0.98:= )
+ seccomp? ( sys-libs/libseccomp:= )
+ systemd? ( sys-apps/systemd:= )
+"
+
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-build/automake-1.13.4
+ >=sys-devel/gettext-0.18.2
+ virtual/pkgconfig
+ dev-util/gdbus-codegen
+ app-alternatives/yacc
+ $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]')
+ introspection? ( >=dev-libs/gobject-introspection-1.40 )
+ doc? (
+ app-text/xmlto
+ dev-libs/libxslt
+ )
+"
+
+PDEPEND="sys-apps/xdg-desktop-portal"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.4-fuse-3-slotted.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~USER_NS"
+ linux-info_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ # This line fails because locales are in /usr/lib/locale/locale-archive.
+ sed -i 's:^cp -r /usr/lib/locale/C.*:#\0:' tests/make-test-runtime.sh || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-sandboxed-triggers
+ --localstatedir="${EPREFIX}"/var
+ --with-system-bubblewrap
+ --with-system-dbus-proxy
+ $(use_enable X xauth)
+ $(use_enable doc documentation)
+ $(use_enable doc docbook-docs)
+ $(use_enable introspection)
+ $(use_enable policykit system-helper)
+ $(use_enable seccomp)
+ $(use_with systemd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # https://projects.gentoo.org/qa/policy-guide/installed-files.html#pg0303
+ find "${ED}" -name '*.la' -delete || die
+ # resolve conflict with acct-user/flatpak for #856706
+ rm -rf "${ED}/usr/lib/sysusers.d"
+
+ if use systemd; then
+ systemd_dounit "${FILESDIR}"/flatpak-update.{service,timer}
+ fi
+}
diff --git a/sys-apps/flatpak/flatpak-1.14.5.ebuild b/sys-apps/flatpak/flatpak-1.14.5.ebuild
new file mode 100644
index 000000000000..517a31bce219
--- /dev/null
+++ b/sys-apps/flatpak/flatpak-1.14.5.ebuild
@@ -0,0 +1,120 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit linux-info python-any-r1 systemd tmpfiles
+
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+DESCRIPTION="Linux application sandboxing and distribution framework"
+HOMEPAGE="https://flatpak.org/"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="doc introspection policykit seccomp systemd X"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/flatpak
+ acct-user/flatpak
+ >=app-arch/libarchive-2.8:=
+ app-arch/zstd:=
+ >=app-crypt/gpgme-1.1.8:=
+ >=dev-libs/appstream-0.12:=
+ >=dev-libs/appstream-glib-0.5.10:=
+ >=dev-libs/glib-2.56:2=
+ >=dev-libs/libxml2-2.4:=
+ dev-libs/json-glib:=
+ dev-libs/libassuan:=
+ >=dev-util/ostree-2020.8:=[gpg(+)]
+ dev-util/ostree[curl]
+ >=gnome-base/dconf-0.26:=
+ gnome-base/gsettings-desktop-schemas
+ net-misc/curl:=
+ >=sys-apps/bubblewrap-0.5.0
+ sys-apps/dbus
+ >=sys-fs/fuse-3.1.1:3=
+ sys-apps/xdg-dbus-proxy
+ X? (
+ x11-apps/xauth
+ x11-libs/libXau:=
+ )
+ x11-libs/gdk-pixbuf:2=
+ policykit? ( >=sys-auth/polkit-0.98:= )
+ seccomp? ( sys-libs/libseccomp:= )
+ systemd? ( sys-apps/systemd:= )
+"
+
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-build/automake-1.13.4
+ >=sys-devel/gettext-0.18.2
+ virtual/pkgconfig
+ dev-util/gdbus-codegen
+ app-alternatives/yacc
+ $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]')
+ introspection? ( >=dev-libs/gobject-introspection-1.40 )
+ doc? (
+ app-text/xmlto
+ dev-libs/libxslt
+ )
+"
+
+PDEPEND="sys-apps/xdg-desktop-portal"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.4-fuse-3-slotted.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~USER_NS"
+ linux-info_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ # This line fails because locales are in /usr/lib/locale/locale-archive.
+ sed -i 's:^cp -r /usr/lib/locale/C.*:#\0:' tests/make-test-runtime.sh || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-sandboxed-triggers
+ --localstatedir="${EPREFIX}"/var
+ --with-system-bubblewrap
+ --with-system-dbus-proxy
+ --with-tmpfilesdir="/usr/lib/tmpfiles.d"
+ $(use_enable X xauth)
+ $(use_enable doc documentation)
+ $(use_enable doc docbook-docs)
+ $(use_enable introspection)
+ $(use_enable policykit system-helper)
+ $(use_enable seccomp)
+ $(use_with systemd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # https://projects.gentoo.org/qa/policy-guide/installed-files.html#pg0303
+ find "${ED}" -name '*.la' -delete || die
+ # resolve conflict with acct-user/flatpak for #856706
+ rm -rf "${ED}/usr/lib/sysusers.d"
+
+ if use systemd; then
+ systemd_dounit "${FILESDIR}"/flatpak-update.{service,timer}
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process flatpak.conf
+}
diff --git a/sys-apps/flatpak/flatpak-1.14.6.ebuild b/sys-apps/flatpak/flatpak-1.14.6.ebuild
new file mode 100644
index 000000000000..d8cfe2b1993d
--- /dev/null
+++ b/sys-apps/flatpak/flatpak-1.14.6.ebuild
@@ -0,0 +1,120 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit linux-info python-any-r1 systemd tmpfiles
+
+DESCRIPTION="Linux application sandboxing and distribution framework"
+HOMEPAGE="https://flatpak.org/"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="doc introspection policykit seccomp systemd X"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/flatpak
+ acct-user/flatpak
+ >=app-arch/libarchive-2.8:=
+ app-arch/zstd:=
+ >=app-crypt/gpgme-1.1.8:=
+ >=dev-libs/appstream-0.12:=
+ >=dev-libs/appstream-glib-0.5.10:=
+ >=dev-libs/glib-2.56:2=
+ >=dev-libs/libxml2-2.4:=
+ dev-libs/json-glib:=
+ dev-libs/libassuan:=
+ >=dev-util/ostree-2020.8:=[gpg(+)]
+ dev-util/ostree[curl]
+ >=gnome-base/dconf-0.26:=
+ gnome-base/gsettings-desktop-schemas
+ net-misc/curl:=
+ >=sys-apps/bubblewrap-0.5.0
+ sys-apps/dbus
+ >=sys-fs/fuse-3.1.1:3=
+ sys-apps/xdg-dbus-proxy
+ X? (
+ x11-apps/xauth
+ x11-libs/libXau:=
+ )
+ x11-libs/gdk-pixbuf:2=
+ policykit? ( >=sys-auth/polkit-0.98:= )
+ seccomp? ( sys-libs/libseccomp:= )
+ systemd? ( sys-apps/systemd:= )
+"
+
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-build/automake-1.13.4
+ >=sys-devel/gettext-0.18.2
+ virtual/pkgconfig
+ dev-util/gdbus-codegen
+ app-alternatives/yacc
+ $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]')
+ introspection? ( >=dev-libs/gobject-introspection-1.40 )
+ doc? (
+ app-text/xmlto
+ dev-libs/libxslt
+ )
+"
+
+PDEPEND="sys-apps/xdg-desktop-portal"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.4-fuse-3-slotted.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~USER_NS"
+ linux-info_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ # This line fails because locales are in /usr/lib/locale/locale-archive.
+ sed -i 's:^cp -r /usr/lib/locale/C.*:#\0:' tests/make-test-runtime.sh || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-sandboxed-triggers
+ --localstatedir="${EPREFIX}"/var
+ --with-system-bubblewrap
+ --with-system-dbus-proxy
+ --with-tmpfilesdir="/usr/lib/tmpfiles.d"
+ $(use_enable X xauth)
+ $(use_enable doc documentation)
+ $(use_enable doc docbook-docs)
+ $(use_enable introspection)
+ $(use_enable policykit system-helper)
+ $(use_enable seccomp)
+ $(use_with systemd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # https://projects.gentoo.org/qa/policy-guide/installed-files.html#pg0303
+ find "${ED}" -name '*.la' -delete || die
+ # resolve conflict with acct-user/flatpak for #856706
+ rm -rf "${ED}/usr/lib/sysusers.d"
+
+ if use systemd; then
+ systemd_dounit "${FILESDIR}"/flatpak-update.{service,timer}
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process flatpak.conf
+}
diff --git a/sys-apps/flatpak/flatpak-1.8.2.ebuild b/sys-apps/flatpak/flatpak-1.8.2.ebuild
deleted file mode 100644
index 9fe2a7609826..000000000000
--- a/sys-apps/flatpak/flatpak-1.8.2.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit autotools linux-info python-any-r1
-
-SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
-DESCRIPTION="Linux application sandboxing and distribution framework"
-HOMEPAGE="https://flatpak.org/"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-IUSE="doc gtk kde introspection policykit seccomp systemd"
-RESTRICT+=" test"
-
-RDEPEND="
- acct-group/flatpak
- acct-user/flatpak
- >=app-arch/libarchive-2.8:=
- app-arch/zstd:=
- >=app-crypt/gpgme-1.1.8:=
- >=dev-libs/appstream-glib-0.5.10:=
- >=dev-libs/glib-2.56:2=
- >=dev-libs/libxml2-2.4:=
- dev-libs/json-glib:=
- dev-libs/libassuan:=
- >=dev-util/ostree-2019.5:=[gpg(+)]
- || (
- dev-util/ostree[curl]
- dev-util/ostree[soup]
- )
- >=gnome-base/dconf-0.26:=
- >=net-libs/libsoup-2.4:=
- sys-apps/bubblewrap
- sys-apps/dbus
- >=sys-fs/fuse-2.9.9:0=
- sys-apps/xdg-dbus-proxy
- x11-apps/xauth
- x11-libs/gdk-pixbuf:2=
- x11-libs/libXau:=
- policykit? ( >=sys-auth/polkit-0.98:= )
- seccomp? ( sys-libs/libseccomp:= )
- systemd? ( sys-apps/systemd:= )
-"
-
-DEPEND="${RDEPEND}"
-BDEPEND="
- >=sys-devel/automake-1.13.4
- >=sys-devel/gettext-0.18.2
- virtual/pkgconfig
- dev-util/gdbus-codegen
- sys-devel/bison
- introspection? ( >=dev-libs/gobject-introspection-1.40 )
- doc? (
- >=dev-util/gtk-doc-1.20
- dev-libs/libxslt
- )
- $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]')
-"
-
-PDEPEND="
- gtk? ( sys-apps/xdg-desktop-portal-gtk )
- kde? ( kde-plasma/xdg-desktop-portal-kde )
-"
-
-python_check_deps() {
- has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- local CONFIG_CHECK="~USER_NS"
- linux-info_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- default
- # This line fails because locales are in /usr/lib/locale/locale-archive.
- sed -i 's:^cp -r /usr/lib/locale/C.*:#\0:' tests/make-test-runtime.sh || die
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-sandboxed-triggers
- --enable-xauth
- --localstatedir="${EPREFIX}"/var
- --with-system-bubblewrap
- --with-system-dbus-proxy
- $(use_enable doc documentation)
- $(use_enable doc gtk-doc)
- $(use_enable introspection)
- $(use_enable policykit system-helper)
- $(use_enable seccomp)
- $(use_with systemd)
- )
-
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/flatpak/metadata.xml b/sys-apps/flatpak/metadata.xml
index 55de060f05cf..8a8679909866 100644
--- a/sys-apps/flatpak/metadata.xml
+++ b/sys-apps/flatpak/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zmedico@gentoo.org</email>
diff --git a/sys-apps/frandom/Manifest b/sys-apps/frandom/Manifest
deleted file mode 100644
index 1c8fba081710..000000000000
--- a/sys-apps/frandom/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST frandom-1.1.tar.gz 8146 BLAKE2B a18a97c4650376cb2e3c6abfa8b6043c69426f83c9607c36614007426b7734f89a537206e7656b3fd901d69111683592e4511d0c94c7b111c8e77e6fbe660323 SHA512 f64bd1bc1482d223f84f344554b04a4a413be32cf6c348e006b831e68eea0165f1231e194536bb6867450dfc901e80e765e71ba6369209ce579597ad1cdfdeaf
diff --git a/sys-apps/frandom/frandom-1.1-r1.ebuild b/sys-apps/frandom/frandom-1.1-r1.ebuild
deleted file mode 100644
index 45a10e79afc5..000000000000
--- a/sys-apps/frandom/frandom-1.1-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit linux-mod udev
-
-DESCRIPTION="Fast kernel-land pseudo-random number generator using the RC4 algorithm"
-HOMEPAGE="http://billauer.co.il/frandom.html"
-SRC_URI="mirror://sourceforge/project/frandom//${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RESTRICT="strip"
-
-BUILD_TARGETS="default"
-BUILD_TARGET_ARCH="${ARCH}"
-MODULE_NAMES="frandom(misc)"
-
-src_prepare() {
- sed -i -e "s:\$(shell uname -r):${KV_FULL}:" "${S}"/Makefile || die "sed failed"
-}
-
-src_install() {
- linux-mod_src_install
-
- udev_dorules "${S}"/10-${PN}.rules
-}
diff --git a/sys-apps/frandom/metadata.xml b/sys-apps/frandom/metadata.xml
deleted file mode 100644
index 423ed6917d9c..000000000000
--- a/sys-apps/frandom/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">frandom</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/fwts/Manifest b/sys-apps/fwts/Manifest
index 2b49ded6555f..a76175cb518d 100644
--- a/sys-apps/fwts/Manifest
+++ b/sys-apps/fwts/Manifest
@@ -1 +1,2 @@
-DIST fwts_20.05.00.orig.tar.gz 3817917 BLAKE2B 10365979a1b6bf2768930e144baa3982d462f05b77b1ca81116f7b44b80487924f37e097e46602c49696e987d9061a1917e3613e016bdb126146d880699c38f8 SHA512 4f68f6fc8351024e877e6fa6c9b856c7c3720348c1936f33fc8b455f5e85df83c9dc39a5c2dc16e106c851d4ac622f0a1d23b70f2b7726689f92077dbca5d82f
+DIST fwts-23.11.00.tar.gz 3962015 BLAKE2B 33afde1548629fda784b301b42c7ca3ae4c17deb86909b0534f839ba369dae74fc0f7a3c2f4b50a2ad101da9debcb522326b649ba811b7f13c8cf7b79d552f26 SHA512 df72a799a7e317f53bd43c35953a8955aa194a93596eacab43300717d87dac4aef3bdfcdb1b2028c0177a3f40577dd0e4a55e5c3269e37190a47684df928b092
+DIST fwts_22.03.00.orig.tar.gz 3900335 BLAKE2B 2e36392f69140b1a2d3b77cc8d57740f66ea016063644916e69bb738e20191a780a9d2ed275cfd8b871ad8c3455f96c8ae26ab7c1574c0cc8efdbbb20f4cc785 SHA512 88f183293da4f6ebc1cefc382c9b5e1b378ac7d03e0c577937db89be9e8417e0ffdf0952cdffda57ac21787c3fe02c5254ec7ce61e100e78555ffa92d6a30dc2
diff --git a/sys-apps/fwts/files/fwts-22.03.00-slibtool.patch b/sys-apps/fwts/files/fwts-22.03.00-slibtool.patch
new file mode 100644
index 000000000000..bc66006bf674
--- /dev/null
+++ b/sys-apps/fwts/files/fwts-22.03.00-slibtool.patch
@@ -0,0 +1,155 @@
+Upstream-ML: https://lists.ubuntu.com/archives/fwts-devel/2022-May/013515.html
+
+From 47bc82375865e2548edcb1607ca52ec60d632123 Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Tue, 10 May 2022 20:35:01 -0700
+Subject: [PATCH 1/2] build: Improve linking
+
+This improves the linking enough to get the build to complete
+with slibtool and GNU libtool.
+---
+ configure.ac | 2 ++
+ src/Makefile.am | 20 ++++++++++----------
+ src/lib/src/Makefile.am | 18 ++++++++++--------
+ src/libfwtsacpica/Makefile.am | 7 ++-----
+ src/libfwtsiasl/Makefile.am | 4 ++--
+ 5 files changed, 26 insertions(+), 25 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f40c367..7ee5604 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -64,6 +64,8 @@
+ AC_CHECK_HEADERS([asm/opal-prd.h])
+ AC_CHECK_HEADERS([mtd/mtd-abi.h])
+ AC_CHECK_HEADERS([pci/pci.h])
++ PKG_CHECK_MODULES([GIO], [gio-2.0])
++ PKG_CHECK_MODULES([GLIB], [glib-2.0])
+ AM_CONDITIONAL([HAVE_ASM_OPAL_PRD_H],
+ [test "x$ac_cv_header_asm_opal_prd_h" = "xyes"])
+ AM_CONDITIONAL([HAVE_MTD_ABI_H],
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 9a26af8..e2180e7 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -12,7 +12,7 @@ AM_CPPFLAGS = \
+ -I$(top_srcdir)/src/acpica/source/compiler \
+ -I$(top_srcdir)/efi_runtime \
+ -I$(top_srcdir)/smccc_test \
+- -pthread `pkg-config --cflags glib-2.0 gio-2.0` \
++ -pthread \
+ -Wall -Werror -Wextra \
+ -Wno-address-of-packed-member \
+ -Wfloat-equal -Wmissing-declarations \
+@@ -23,7 +23,11 @@ AM_CPPFLAGS = \
+
+ bin_PROGRAMS = fwts
+
+-fwts_CPPFLAGS = $(AM_CPPFLAGS) -DACPI_DEBUG_OUTPUT
++fwts_CPPFLAGS = \
++ $(AM_CPPFLAGS) \
++ @GIO_CFLAGS@ \
++ @GLIB_CFLAGS@ \
++ -DACPI_DEBUG_OUTPUT
+
+ if HAVE_LIBFDT
+ dt_tests = \
+@@ -207,16 +211,12 @@ fwts_SOURCES = main.c \
+ $(power_mgmt_tests) \
+ $(dt_tests)
+
+-fwts_LDFLAGS = -lm -lbsd `pkg-config --libs glib-2.0 gio-2.0`
++fwts_LDFLAGS = -no-undefined
+
+ fwts_LDADD = \
+- -lfwts \
+- -L$(top_builddir)/src \
+- -L$(top_builddir)/src/acpica \
+- -L$(top_builddir)/src/libfwtsiasl \
+- -L$(top_builddir)/src/libfwtsacpica \
+- -L$(top_builddir)/src/lib/src \
+- -lfwtsacpica
++ $(top_builddir)/src/lib/src/libfwts.la \
++ $(top_builddir)/src/libfwtsiasl/libfwtsiasl.la \
++ $(top_builddir)/src/libfwtsacpica/libfwtsacpica.la
+
+ man_MANS = ../doc/fwts.1 ../doc/fwts-collect.1 ../doc/fwts-frontend-text.1
+
+diff --git a/src/lib/src/Makefile.am b/src/lib/src/Makefile.am
+index 0a39882..94bfcdf 100644
+--- a/src/lib/src/Makefile.am
++++ b/src/lib/src/Makefile.am
+@@ -21,22 +21,24 @@ AM_CPPFLAGS = \
+ -I$(top_srcdir)/src/libfwtsiasl \
+ -I$(top_srcdir)/src/acpica/source/include \
+ -I$(top_srcdir)/src/acpica/source/compiler \
+- `pkg-config --silence-errors --cflags json` \
+- `pkg-config --silence-errors --cflags json-c` \
+- `pkg-config --cflags glib-2.0 gio-2.0` \
+ -DDATAROOTDIR=\"$(datarootdir)\" \
+ -Wall -Werror -Wextra \
+ -Wno-address-of-packed-member
+
+ pkglib_LTLIBRARIES = libfwts.la
+
+-libfwts_la_LDFLAGS = \
++libfwts_la_LDFLAGS = -version-info 1:0:0
++
++libfwts_la_LIBADD = \
+ -lm -lpthread -lbsd \
+- -version-info 1:0:0 \
+- -L$(top_builddir)/src/libfwtsiasl \
+- -lfwtsiasl `pkg-config --libs glib-2.0 gio-2.0`
++ @GIO_LIBS@ \
++ @GLIB_LIBS@
+
+-libfwts_la_CPPFLAGS = $(AM_CPPFLAGS) -DACPI_DEBUG_OUTPUT
++libfwts_la_CPPFLAGS = \
++ $(AM_CPPFLAGS) \
++ @GIO_CFLAGS@ \
++ @GLIB_CFLAGS@ \
++ -DACPI_DEBUG_OUTPUT
+
+ if HAVE_LIBFDT
+ dt_sources = \
+diff --git a/src/libfwtsacpica/Makefile.am b/src/libfwtsacpica/Makefile.am
+index f37f585..62f0d8c 100644
+--- a/src/libfwtsacpica/Makefile.am
++++ b/src/libfwtsacpica/Makefile.am
+@@ -74,7 +74,8 @@ CLEANFILES = osunixxf_munged.c \
+
+ pkglib_LTLIBRARIES = libfwtsacpica.la
+
+-libfwtsacpica_la_LDFLAGS = -lpthread -version-info 1:0:0
++libfwtsacpica_la_LDFLAGS = -version-info 1:0:0
++libfwtsacpica_la_LIBADD = -lpthread
+ libfwtsacpica_la_CPPFLAGS = $(AM_CPPFLAGS)
+
+ #
+@@ -280,8 +281,4 @@ libfwtsacpica_la_SOURCES = \
+ ../../src/acpica/source/tools/acpiexec/aeinstall.c \
+ ../../src/acpica/source/os_specific/service_layers/osgendbg.c
+
+-libfwtsacpica_la_LIBADD = \
+- -L../../src/lib/src -lfwts -lrt
+-
+-
+ -include ../../git.mk
+diff --git a/src/libfwtsiasl/Makefile.am b/src/libfwtsiasl/Makefile.am
+index 328134c..2728780 100644
+--- a/src/libfwtsiasl/Makefile.am
++++ b/src/libfwtsiasl/Makefile.am
+@@ -104,8 +104,8 @@ BUILT_SOURCES = aslcompiler.y \
+ #
+ # Just export fwts specific API so we don't clash with core ACPICA library
+ #
+-libfwtsiasl_la_LDFLAGS = -export-symbols-regex "fwts_.*" -lpthread -version-info 1:0:0
+-
++libfwtsiasl_la_LDFLAGS = -export-symbols-regex "fwts_.*" -version-info 1:0:0
++libfwtsiasl_la_LIBADD = -lpthread
+ CLEANFILES = $(BUILT_SOURCES)
+
+ libfwtsiasl_la_CPPFLAGS = $(AM_CPPFLAGS)
+--
+2.35.1
+
diff --git a/sys-apps/fwts/files/fwts-22.03.00-werror.patch b/sys-apps/fwts/files/fwts-22.03.00-werror.patch
new file mode 100644
index 000000000000..6502c75b7413
--- /dev/null
+++ b/sys-apps/fwts/files/fwts-22.03.00-werror.patch
@@ -0,0 +1,65 @@
+From 85f27bc6dcd8c7f1479dce259713540f1d1a888c Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Tue, 10 May 2022 21:11:29 -0700
+Subject: [PATCH 2/2] build: Remove -Werror
+
+---
+ configure.ac | 2 +-
+ src/Makefile.am | 2 +-
+ src/lib/src/Makefile.am | 2 +-
+ src/utilities/Makefile.am | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 7ee5604..4d2960e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,5 +1,5 @@
+ AC_INIT([fwts],[0.1],[fwts-devel@lists.ubuntu.com])
+- AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
++ AM_INIT_AUTOMAKE([-Wall foreign subdir-objects])
+ m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+ AC_CANONICAL_HOST
+ AC_CONFIG_MACRO_DIR([m4])
+diff --git a/src/Makefile.am b/src/Makefile.am
+index e2180e7..eee8b49 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -13,7 +13,7 @@ AM_CPPFLAGS = \
+ -I$(top_srcdir)/efi_runtime \
+ -I$(top_srcdir)/smccc_test \
+ -pthread \
+- -Wall -Werror -Wextra \
++ -Wall -Wextra \
+ -Wno-address-of-packed-member \
+ -Wfloat-equal -Wmissing-declarations \
+ -Wno-long-long -Wredundant-decls -Wshadow \
+diff --git a/src/lib/src/Makefile.am b/src/lib/src/Makefile.am
+index 94bfcdf..390326a 100644
+--- a/src/lib/src/Makefile.am
++++ b/src/lib/src/Makefile.am
+@@ -22,7 +22,7 @@ AM_CPPFLAGS = \
+ -I$(top_srcdir)/src/acpica/source/include \
+ -I$(top_srcdir)/src/acpica/source/compiler \
+ -DDATAROOTDIR=\"$(datarootdir)\" \
+- -Wall -Werror -Wextra \
++ -Wall -Wextra \
+ -Wno-address-of-packed-member
+
+ pkglib_LTLIBRARIES = libfwts.la
+diff --git a/src/utilities/Makefile.am b/src/utilities/Makefile.am
+index a7d9b9c..2356af3 100644
+--- a/src/utilities/Makefile.am
++++ b/src/utilities/Makefile.am
+@@ -16,7 +16,7 @@
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #
+
+-AM_CPPFLAGS = -Wall -Werror -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \
++AM_CPPFLAGS = -Wall -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \
+ -I$(srcdir)/../lib/include
+
+ bin_PROGRAMS = kernelscan
+--
+2.35.1
+
diff --git a/sys-apps/fwts/fwts-20.05.00.ebuild b/sys-apps/fwts/fwts-20.05.00.ebuild
deleted file mode 100644
index 55aaf54db461..000000000000
--- a/sys-apps/fwts/fwts-20.05.00.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Firmware Test Suite"
-HOMEPAGE="https://wiki.ubuntu.com/Kernel/Reference/fwts"
-SRC_URI="https://launchpad.net/ubuntu/+archive/primary/+files/${PN}_${PV}.orig.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RDEPEND="dev-libs/glib:2
- >=dev-libs/json-c-0.10-r1
- dev-libs/libpcre
- sys-apps/dmidecode
- sys-apps/pciutils
- sys-power/iasl
- sys-power/pmtools"
-DEPEND="${RDEPEND}
- sys-devel/libtool"
-
-S=${WORKDIR}
-
-src_prepare() {
- default
- sed -i -e 's/-Wall -Werror/-Wall/' configure.ac {,src/,src/lib/src/}Makefile.am || die
- sed -i -e 's:/usr/bin/lspci:'$(type -p lspci)':' src/lib/include/fwts_binpaths.h || die
-
- # Fix json-c includes
- sed -e 's/^#include <json\//#include <json-c\//g' -i \
- configure.ac || die
- sed -e 's/^#include <json.h>/#include <json-c\/json.h>/' \
- -i src/lib/include/fwts_json.h \
- src/utilities/kernelscan.c || die
- sed -e 's/-ljson/-ljson-c/'\
- -i src/Makefile.am\
- src/lib/src/Makefile.am\
- src/utilities/Makefile.am || die
-
- eautoreconf
-}
diff --git a/sys-apps/fwts/fwts-22.03.00.ebuild b/sys-apps/fwts/fwts-22.03.00.ebuild
new file mode 100644
index 000000000000..8f0cfe82ca3d
--- /dev/null
+++ b/sys-apps/fwts/fwts-22.03.00.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Firmware Test Suite"
+HOMEPAGE="https://wiki.ubuntu.com/Kernel/Reference/fwts https://kernel.ubuntu.com/git/hwe/fwts.git"
+SRC_URI="https://launchpad.net/ubuntu/+archive/primary/+files/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="dev-libs/glib:2
+ >=dev-libs/json-c-0.10-r1
+ dev-libs/libbsd
+ dev-libs/libpcre
+ sys-apps/dmidecode
+ sys-apps/dtc
+ sys-apps/pciutils
+ sys-power/iasl
+ sys-power/pmtools
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+S=${WORKDIR}
+
+PATCHES=(
+ "${FILESDIR}/${P}-slibtool.patch" # 780372
+ "${FILESDIR}/${P}-werror.patch"
+)
+
+src_prepare() {
+ default
+
+ sed -e 's:/usr/bin/lspci:'$(type -p lspci)':' \
+ -e 's:/usr/sbin/dmidecode:'$(type -p dmidecode)':' \
+ -e 's:/usr/bin/iasl:'$(type -p iasl)':' \
+ -i src/lib/include/fwts_binpaths.h || die
+
+ eautoreconf
+}
+
+src_compile() {
+ # https://github.com/fwts/fwts/issues/7 (bug #870109)
+ emake -j1 --shuffle=none
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/fwts/fwts-23.11.00.ebuild b/sys-apps/fwts/fwts-23.11.00.ebuild
new file mode 100644
index 000000000000..81de83078744
--- /dev/null
+++ b/sys-apps/fwts/fwts-23.11.00.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Firmware Test Suite"
+HOMEPAGE="https://wiki.ubuntu.com/Kernel/Reference/fwts https://github.com/fwts/fwts"
+SRC_URI="https://github.com/fwts/fwts/archive/refs/tags/V${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+# https://bugs.launchpad.net/fwts/+bug/2047906 (bug #795051)
+#KEYWORDS="~amd64"
+
+DEPEND="dev-libs/glib:2
+ >=dev-libs/json-c-0.10-r1
+ dev-libs/libbsd
+ dev-libs/libpcre
+ sys-apps/dmidecode
+ sys-apps/dtc
+ sys-apps/pciutils
+ sys-power/iasl
+ sys-power/pmtools
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-22.03.00-werror.patch"
+)
+
+src_prepare() {
+ default
+
+ sed -e 's:/usr/bin/lspci:'$(type -p lspci)':' \
+ -e 's:/usr/sbin/dmidecode:'$(type -p dmidecode)':' \
+ -e 's:/usr/bin/iasl:'$(type -p iasl)':' \
+ -i src/lib/include/fwts_binpaths.h || die
+
+ eautoreconf
+}
+
+src_compile() {
+ # https://github.com/fwts/fwts/issues/7 (bug #870109)
+ emake -j1 --shuffle=none
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/fwts/metadata.xml b/sys-apps/fwts/metadata.xml
index 0cb1ad901328..4d1285fa19bc 100644
--- a/sys-apps/fwts/metadata.xml
+++ b/sys-apps/fwts/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
<remote-id type="launchpad">ubuntu</remote-id>
+ <remote-id type="github">fwts/fwts</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/fwupd-efi/Manifest b/sys-apps/fwupd-efi/Manifest
new file mode 100644
index 000000000000..cbec4718721f
--- /dev/null
+++ b/sys-apps/fwupd-efi/Manifest
@@ -0,0 +1,2 @@
+DIST fwupd-efi-1.4.tar.xz 35984 BLAKE2B 24ce9788500781aac5b856740dc17d94bec79cf57f4f1a0359f42e6be4b9600d34259794a88f69bf83aa38ee5976b26228b20813f717edce5cc627c163585b40 SHA512 c330409861a8c1e332a0d4fd49c54ef2c5bf7cdaca99d14de39b50fb35f0c490e9f7f7a4c9dd48181bd509cd358c43eb23659536aea93408c1fefb47629e4991
+DIST fwupd-efi-1.5.tar.xz 38460 BLAKE2B fe2d06e9d9a588b524a6a26afc401898f8dd1d3bd49fa608cfaa6c32ec71a88f125d2158e3892a44706cc2f8349ed379ee8d7b62bfbe8ba38990d1545eff9f94 SHA512 b1edaa1fa4b7e768ee822c92bdd2858343993f19edde6445e333fad470f997420aeab10dd36e5abff90cb0a87d8f3b2a0de9e7cf49a03758e0e1c9c2fd06ef19
diff --git a/sys-apps/fwupd-efi/files/fwupd-efi-1.4-efi_ld_override.patch b/sys-apps/fwupd-efi/files/fwupd-efi-1.4-efi_ld_override.patch
new file mode 100644
index 000000000000..0b703a41d2e6
--- /dev/null
+++ b/sys-apps/fwupd-efi/files/fwupd-efi-1.4-efi_ld_override.patch
@@ -0,0 +1,26 @@
+--- a/efi/meson.build
++++ b/efi/meson.build
+@@ -1,6 +1,7 @@
+ generate_sbat = find_program('generate_sbat.py', native: true)
+ generate_binary = find_program('generate_binary.py', native: true)
+
++efi_ld = get_option('efi-ld')
+ efi_ldsdir = get_option('efi-ldsdir')
+ efi_incdir = get_option('efi-includedir')
+
+@@ -226,7 +227,7 @@
+ so = custom_target('fwup.so',
+ input : [o_file1, o_file2, o_file3, o_file4, o_file5],
+ output : 'fwup.so',
+- command : [ld, '-o', '@OUTPUT@'] +
++ command : [efi_ld, '-o', '@OUTPUT@'] +
+ efi_ldflags + ['@INPUT@'] +
+ ['-lefi', '-lgnuefi', libgcc_file_name],
+ depends: fwupd_so_deps)
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,4 @@
++option('efi-ld', type : 'string', value : 'ld', description : 'the linker to use for EFI modules')
+ option('efi-libdir', type : 'string', description : 'path to the EFI lib directory')
+ option('efi-ldsdir', type : 'string', description : 'path to the EFI lds directory')
+ option('efi-includedir', type : 'string', value : '/usr/include/efi', description : 'path to the EFI header directory')
diff --git a/sys-apps/fwupd-efi/files/fwupd-efi-1.4-uefi_210_fixes.patch b/sys-apps/fwupd-efi/files/fwupd-efi-1.4-uefi_210_fixes.patch
new file mode 100644
index 000000000000..d4de5f174857
--- /dev/null
+++ b/sys-apps/fwupd-efi/files/fwupd-efi-1.4-uefi_210_fixes.patch
@@ -0,0 +1,107 @@
+From bd958f2e8f03a85a7e1fe40a3ca7b78e0b24b79f Mon Sep 17 00:00:00 2001
+From: Callum Farmer <gmbr3@opensuse.org>
+Date: Sat, 11 Feb 2023 15:39:06 +0000
+Subject: [PATCH] UEFI 2.10 fixes
+
+Revert "Align sections to 512 bytes"
+
+This is not permitted according to the Microsoft
+guidelines which require section alignment to be
+the same as the page size of the architecture which
+for all supported archs is the default in Binutils
+
+https://techcommunity.microsoft.com/t5/hardware-dev-center/new-uefi-ca-memory-mitigation-requirements-for-signing/ba-p/3608714
+
+This reverts commit c60c0b8dfda71275ab40bdb316a6ca650c7a8948.
+
+Keep .areloc ARM32 section
+
+This is the psuedo .reloc section but renamed only on ARM32 to avoid
+a bad RELSZ value (gnu-efi 3.0.18+)
+
+Only use 4KiB pages on aarch64
+
+Binutils is currently configured by default
+to use 64KiB pages on aarch64, however this
+is not allowed by the UEFI specification
+
+Check if crt0 contains .note.GNU-stack section
+
+We need the .note.GNU-stack section for NX
+compat. If we don't have a new enough
+gnu-efi, error as the gnu-efi libraries
+themselves must have been built as NX
+for this to work
+
+Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
+---
+ efi/crt0/meson.build | 1 +
+ efi/generate_binary.py | 4 ++--
+ efi/meson.build | 12 +++++++++++-
+ 3 files changed, 14 insertions(+), 3 deletions(-)
+
+diff --git a/efi/crt0/meson.build b/efi/crt0/meson.build
+index f5f45c5..fbd943e 100644
+--- a/efi/crt0/meson.build
++++ b/efi/crt0/meson.build
+@@ -1,3 +1,4 @@
++arch_crt_source = 'crt0-efi-@0@.S'.format(gnu_efi_path_arch)
+ o_crt0 = custom_target('efi_crt0',
+ input : arch_crt_source,
+ output : arch_crt,
+diff --git a/efi/generate_binary.py b/efi/generate_binary.py
+index bd2d959..e27f926 100755
+--- a/efi/generate_binary.py
++++ b/efi/generate_binary.py
+@@ -31,9 +31,9 @@ def _run_objcopy(args):
+ "-j",
+ ".rodata",
+ "-j",
++ ".areloc",
++ "-j",
+ ".rel*",
+- "--section-alignment",
+- "512",
+ args.infile,
+ args.outfile,
+ ]
+diff --git a/efi/meson.build b/efi/meson.build
+index 1931855..a476884 100644
+--- a/efi/meson.build
++++ b/efi/meson.build
+@@ -95,6 +95,11 @@ else
+ coff_header_in_crt0 = false
+ endif
+
++# For NX compat, we must ensure we have .note.GNU-stack
++if run_command('grep', '-q', '.note.GNU-stack', join_paths(efi_crtdir, arch_crt), check: false).returncode() != 0
++ error('Cannot find NX section in @0@, update to gnu-efi 3.0.15+'.format(join_paths(efi_crtdir, arch_crt)))
++endif
++
+ # older objcopy for Aarch64 and ARM32 are not EFI capable.
+ # Use 'binary' instead, and add required symbols manually.
+ if host_cpu == 'arm' or (host_cpu == 'aarch64' and (objcopy_version.version_compare ('< 2.38') or coff_header_in_crt0))
+@@ -119,7 +124,6 @@ endif
+ # is the system crt0 for arm and aarch64 new enough to know about SBAT?
+ if objcopy_manualsymbols
+ if get_option('efi_sbat_distro_id') != ''
+- arch_crt_source = 'crt0-efi-@0@.S'.format(gnu_efi_path_arch)
+ cmd = run_command('grep', '-q', 'sbat', join_paths(efi_crtdir, arch_crt))
+ if cmd.returncode() != 0
+ warning('Cannot find SBAT section in @0@, using local copy'.format(join_paths(efi_crtdir, arch_crt)))
+@@ -187,6 +191,12 @@ efi_ldflags = ['-T',
+ '-L', efi_libdir,
+ join_paths(efi_crtdir, arch_crt)]
+
++if host_cpu == 'aarch64'
++# Don't use 64KiB pages
++ efi_ldflags += ['-z', 'common-page-size=4096']
++ efi_ldflags += ['-z', 'max-page-size=4096']
++endif
++
+ if objcopy_manualsymbols
+ # older objcopy for Aarch64 and ARM32 are not EFI capable.
+ # Use 'binary' instead, and add required symbols manually.
+--
+2.34.1
+
diff --git a/sys-apps/fwupd-efi/fwupd-efi-1.4-r1.ebuild b/sys-apps/fwupd-efi/fwupd-efi-1.4-r1.ebuild
new file mode 100644
index 000000000000..5a890daf01a9
--- /dev/null
+++ b/sys-apps/fwupd-efi/fwupd-efi-1.4-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-any-r1 secureboot toolchain-funcs
+
+DESCRIPTION="EFI executable for fwupd"
+HOMEPAGE="https://fwupd.org"
+
+if [[ ${PV} = *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/fwupd/fwupd-efi.git"
+else
+ SRC_URI="https://github.com/fwupd/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+IUSE=""
+
+BDEPEND="$(python_gen_any_dep '
+ dev-python/pefile[${PYTHON_USEDEP}]
+ ')
+ virtual/pkgconfig"
+
+DEPEND="sys-boot/gnu-efi"
+
+RDEPEND="!<sys-apps/fwupd-1.6.0"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4-efi_ld_override.patch # Bug #892339
+ "${FILESDIR}"/${PN}-1.4-uefi_210_fixes.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pefile[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ secureboot_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ python_fix_shebang "${S}/efi"
+}
+
+src_configure() {
+ local emesonargs=(
+ -Defi-ld="$(tc-getLD)"
+ -Defi-libdir="${EPREFIX}"/usr/$(get_libdir)
+ -Defi_sbat_distro_id="gentoo"
+ -Defi_sbat_distro_summary="Gentoo GNU/Linux"
+ -Defi_sbat_distro_pkgname="${PN}"
+ -Defi_sbat_distro_version="${PVR}"
+ -Defi_sbat_distro_url="https://packages.gentoo.org/packages/${CATEGORY}/${PN}"
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ secureboot_auto_sign
+}
diff --git a/sys-apps/fwupd-efi/fwupd-efi-1.4.ebuild b/sys-apps/fwupd-efi/fwupd-efi-1.4.ebuild
new file mode 100644
index 000000000000..553f1fbfc16e
--- /dev/null
+++ b/sys-apps/fwupd-efi/fwupd-efi-1.4.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit meson python-any-r1 secureboot toolchain-funcs
+
+DESCRIPTION="EFI executable for fwupd"
+HOMEPAGE="https://fwupd.org"
+
+if [[ ${PV} = *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/fwupd/fwupd-efi.git"
+else
+ SRC_URI="https://github.com/fwupd/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 ~arm ~arm64 x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+IUSE=""
+
+BDEPEND="$(python_gen_any_dep '
+ dev-python/pefile[${PYTHON_USEDEP}]
+ ')
+ virtual/pkgconfig"
+
+DEPEND="sys-boot/gnu-efi"
+
+RDEPEND="!<sys-apps/fwupd-1.6.0"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4-efi_ld_override.patch # Bug #892339
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pefile[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ secureboot_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ python_fix_shebang "${S}/efi"
+}
+
+src_configure() {
+ local emesonargs=(
+ -Defi-ld="$(tc-getLD)"
+ -Defi-libdir="${EPREFIX}"/usr/$(get_libdir)
+ -Defi_sbat_distro_id="gentoo"
+ -Defi_sbat_distro_summary="Gentoo GNU/Linux"
+ -Defi_sbat_distro_pkgname="${PN}"
+ -Defi_sbat_distro_version="${PVR}"
+ -Defi_sbat_distro_url="https://packages.gentoo.org/packages/${CATEGORY}/${PN}"
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ secureboot_auto_sign
+}
diff --git a/sys-apps/fwupd-efi/fwupd-efi-1.5.ebuild b/sys-apps/fwupd-efi/fwupd-efi-1.5.ebuild
new file mode 100644
index 000000000000..a136dde4ec54
--- /dev/null
+++ b/sys-apps/fwupd-efi/fwupd-efi-1.5.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-any-r1 secureboot
+
+DESCRIPTION="EFI executable for fwupd"
+HOMEPAGE="https://fwupd.org"
+
+if [[ ${PV} = *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/fwupd/fwupd-efi.git"
+else
+ SRC_URI="https://github.com/fwupd/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+
+BDEPEND="$(python_gen_any_dep '
+ dev-python/pefile[${PYTHON_USEDEP}]
+ ')
+ virtual/pkgconfig"
+
+DEPEND="sys-boot/gnu-efi"
+
+python_check_deps() {
+ python_has_version "dev-python/pefile[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ secureboot_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ python_fix_shebang "${S}/efi"
+}
+
+src_configure() {
+ local emesonargs=(
+ -Defi-libdir="${EPREFIX}"/usr/$(get_libdir)
+ -Defi_sbat_distro_id="gentoo"
+ -Defi_sbat_distro_summary="Gentoo GNU/Linux"
+ -Defi_sbat_distro_pkgname="${PN}"
+ -Defi_sbat_distro_version="${PVR}"
+ -Defi_sbat_distro_url="https://packages.gentoo.org/packages/${CATEGORY}/${PN}"
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ secureboot_auto_sign
+}
diff --git a/sys-apps/fwupd-efi/metadata.xml b/sys-apps/fwupd-efi/metadata.xml
new file mode 100644
index 000000000000..e8bbd920f7b6
--- /dev/null
+++ b/sys-apps/fwupd-efi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/fwupd/fwupd-efi/issues</bugs-to>
+ <remote-id type="github">fwupd/fwupd-efi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/fwupd/Manifest b/sys-apps/fwupd/Manifest
index a46efc5fdce8..e0b34873639d 100644
--- a/sys-apps/fwupd/Manifest
+++ b/sys-apps/fwupd/Manifest
@@ -1,4 +1,4 @@
-DIST fwupd-1.3.10.tar.gz 2255394 BLAKE2B 39f517b7648236f39df6f41b5950fcba45a1184f269e533facd752f8e132bb979b32a1420ce4bfcad5bb5d5546ea3f28b357603f7754267550fc02c2125642c5 SHA512 a30ef2933fc01136a9296e99a0b1b9220f952a058aa28339ff944633a8966678b374f479b3a93a1e63bd97491679d3ce304cb621f6e63b86238a8746768daac2
-DIST fwupd-1.3.11.tar.gz 2255359 BLAKE2B 0f91c32602459d31e53c63647762307cfe2313c553e16836cc646eb04e3ac54ebd53d2e8615afb7f43b8cd79b7e6315ed688ae04b57de851be62ed6065579ebf SHA512 e300a84a1c2d7e44e2a1d5d86300487783fc3990b20b540065f9899705569bee8996eae951f32b6fac559e76955ff9b661aa9b181e4dc0211a33a514613ffddd
-DIST fwupd-1.4.5.tar.gz 2318208 BLAKE2B 1e46137f5b72ff104d920771e54e3123bd0665cafd20c75327682a7e4284be93f8e284947db91892c29a153803013bab8ac45e5a0263fcda33b7491c53dd5558 SHA512 47eb40e8d84dc49af783b661db0fce0fb800c4581929becffb03b79c41ed8bfb0987f40fbb8262292b24af85b7f91978a6979ea7458058ee2bfc1a4353d0bd31
-DIST fwupd-1.4.6.tar.gz 2368201 BLAKE2B 86f4e8a3264b69eb72a357f59db082e81534dc28822934df328b1bf94aacb7ed1a219f8e5a03a9a37a0d07c248410822a3d12c4fd6b5df3a14157795e092a095 SHA512 c456704f40e7c5a5225255dbe3e4b794819d3fa982683a31b15a81f5467f007eef00cd80dac1844eca00ebab9ae12061139ae31c1fd7e2a6e012779d2a4b59f9
+DIST fwupd-1.9.10.tar.xz 3901816 BLAKE2B d8a0931188bf494e1b916f5bdebaf290b8e4b81a314e899f7b7e2aeec2dc37240b40c9fbf6259662fd2d92abca477460d630af0d8d95363027aa00ce46021789 SHA512 308bcd3af84d82157492a2ee8dc6fa4d7df6a66cca64e45b3dff9b46d0367f7d3122671388b627f67ab59a69bac1cb36feeccd1668cce0487fe466736dd8b8cc
+DIST fwupd-1.9.14.tar.xz 4367612 BLAKE2B d2e8ef60d751e56279428cd681769b8b6132148d87ad18beb8b355d10d03519da3d520f7f3f5a72b50591957b00176e80a4b26a472ed2305d39986b56adbbbc3 SHA512 582813ce5d61e10d0774195bc0e5abdf0f0ce103417df4a90a0c94ed6c124cd1bcad3118ba6f9f2054b156c0b85fc66edcbcced70dfefe616c2689257e8beeb1
+DIST fwupd-1.9.16.tar.xz 4284796 BLAKE2B 67f83826ed4978324777e737e2751f43454078b7d5e0165993572747c79465f128954c13ea39056483f9916a0b31cfd6800bea49c7bb50844a4df72d63d6ab09 SHA512 e373f17a8d946b07d6f299353949dfc503138c4198a87272018524a39598f3fbd8c381dd13d74469e296a143071cc9e739b3774d9eda8ae9557760fef0a02bb5
+DIST fwupd-1.9.6.tar.xz 3863452 BLAKE2B 8b54efef5947dc4766a24b8501100f7e24707944b5c9aae3c3fcd88dfce230667507af8816203b0ececa0510485661f5f599c1cdc2285df72683ede4b7a6d15c SHA512 c65d795268e0e36fd2572ce3d4f2fb811412c16d583fa5463bee017a70b5d0f8b1b92460efa977a7d70bb5e3f6b5b02756e795e5f8ab7e7ac7874dc1ab5a0bfb
diff --git a/sys-apps/fwupd/files/fwupd-1.3.9-logind_plugin.patch b/sys-apps/fwupd/files/fwupd-1.3.9-logind_plugin.patch
deleted file mode 100644
index 526fe7700ed0..000000000000
--- a/sys-apps/fwupd/files/fwupd-1.3.9-logind_plugin.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Enable logind plugin when -Delogind=true is set as well
-
---- fwupd-1.3.9/plugins/meson.build
-+++ fwupd-1.3.9/plugins/meson.build
-@@ -27,7 +27,7 @@
- subdir('wacom-raw')
- endif
-
--if get_option('systemd')
-+if get_option('systemd') or get_option('elogind')
- subdir('logind')
- endif
-
diff --git a/sys-apps/fwupd/files/fwupd-1.4.4-help2man_var.patch b/sys-apps/fwupd/files/fwupd-1.4.4-help2man_var.patch
deleted file mode 100644
index 818a69ddcd41..000000000000
--- a/sys-apps/fwupd/files/fwupd-1.4.4-help2man_var.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From 5164e713f620972b43c54e34a653a932c968e653 Mon Sep 17 00:00:00 2001
-From: Mario Limonciello <mario.limonciello@dell.com>
-Date: Thu, 18 Jun 2020 12:11:31 -0500
-Subject: [PATCH] trivial: fix issue with agent on but man off
-
-Fixes: #2192
----
- src/meson.build | 64 +++++++++++++++++++++++++------------------------
- 1 file changed, 33 insertions(+), 31 deletions(-)
-
-diff --git a/src/meson.build b/src/meson.build
-index 7a0b2976a..9a8334973 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -166,22 +166,24 @@ fwupdtool = executable(
- install_dir : bindir
- )
-
--if build_daemon and get_option('man')
-+if get_option('man')
- help2man = find_program('help2man')
-- custom_target('fwupdmgr-man',
-- input : fwupdmgr,
-- output : 'fwupdmgr.1',
-- command : [
-- help2man, '@INPUT@',
-- '--no-info',
-- '--output', '@OUTPUT@',
-- '--name', 'Firmware update manager client utility',
-- '--manual', 'User Commands',
-- '--version-string', fwupd_version,
-- ],
-- install : true,
-- install_dir : join_paths(mandir, 'man1'),
-- )
-+ if build_daemon
-+ custom_target('fwupdmgr-man',
-+ input : fwupdmgr,
-+ output : 'fwupdmgr.1',
-+ command : [
-+ help2man, '@INPUT@',
-+ '--no-info',
-+ '--output', '@OUTPUT@',
-+ '--name', 'Firmware update manager client utility',
-+ '--manual', 'User Commands',
-+ '--version-string', fwupd_version,
-+ ],
-+ install : true,
-+ install_dir : join_paths(mandir, 'man1'),
-+ )
-+ endif
- if get_option('agent')
- custom_target('fwupdagent-man',
- input : fwupdagent,
-@@ -198,22 +200,22 @@ if build_daemon and get_option('man')
- install_dir : join_paths(mandir, 'man1'),
- )
- endif
--endif
--if get_option('man')
-- custom_target('fwupdtool-man',
-- input : fwupdtool,
-- output : 'fwupdtool.1',
-- command : [
-- help2man, '@INPUT@',
-- '--no-info',
-- '--output', '@OUTPUT@',
-- '--name', 'Standalone firmware update utility',
-- '--manual', 'User Commands',
-- '--version-string', fwupd_version,
-- ],
-- install : true,
-- install_dir : join_paths(mandir, 'man1'),
-- )
-+ if build_standalone
-+ custom_target('fwupdtool-man',
-+ input : fwupdtool,
-+ output : 'fwupdtool.1',
-+ command : [
-+ help2man, '@INPUT@',
-+ '--no-info',
-+ '--output', '@OUTPUT@',
-+ '--name', 'Standalone firmware update utility',
-+ '--manual', 'User Commands',
-+ '--version-string', fwupd_version,
-+ ],
-+ install : true,
-+ install_dir : join_paths(mandir, 'man1'),
-+ )
-+ endif
- endif
-
- if build_daemon
diff --git a/sys-apps/fwupd/files/fwupd-1.9.6-fragile_tests.patch b/sys-apps/fwupd/files/fwupd-1.9.6-fragile_tests.patch
new file mode 100644
index 000000000000..cc40dc7c9e01
--- /dev/null
+++ b/sys-apps/fwupd/files/fwupd-1.9.6-fragile_tests.patch
@@ -0,0 +1,28 @@
+umockdev-based tests appear not to play nicely with the sandbox,
+often they work but on some systems they persistently fail.
+
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -457,6 +457,11 @@
+ value: true,
+ description: 'enable tests',
+ )
++option('test-full',
++ type: 'boolean',
++ value: false,
++ description: 'enable tests known to be fragile when called from Gentoo ebuilds'
++)
+ option('curl',
+ type: 'feature',
+ description: 'libcurl support',
+--- a/plugins/thunderbolt/meson.build
++++ b/plugins/thunderbolt/meson.build
+@@ -19,7 +19,7 @@
+ plugin_builtins += plugin_builtin_thunderbolt
+
+ # we use functions from 2.52 in the tests
+-if get_option('tests') and run_sanitize_unsafe_tests and umockdev.found() and gio.version().version_compare('>= 2.52')
++if get_option('tests') and get_option('test-full') and run_sanitize_unsafe_tests and umockdev.found() and gio.version().version_compare('>= 2.52')
+ env = environment()
+ env.set('G_TEST_SRCDIR', meson.current_source_dir())
+ env.set('G_TEST_BUILDDIR', meson.current_build_dir())
diff --git a/sys-apps/fwupd/files/fwupd-r1 b/sys-apps/fwupd/files/fwupd-r1
deleted file mode 100644
index 4a4865ef15af..000000000000
--- a/sys-apps/fwupd/files/fwupd-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-description="Firmware update daemon"
-pidfile="/var/run/fwupd.pid"
-command="/usr/libexec/fwupd/fwupd"
-command_background="true"
-
-depend() {
- need %SEAT_MANAGER% dbus
- before xdm
-}
diff --git a/sys-apps/fwupd/files/fwupd-r2 b/sys-apps/fwupd/files/fwupd-r2
new file mode 100644
index 000000000000..d30bf1df08c2
--- /dev/null
+++ b/sys-apps/fwupd/files/fwupd-r2
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Firmware update daemon"
+pidfile="/var/run/fwupd.pid"
+command="/usr/libexec/fwupd/fwupd"
+command_background="true"
+
+depend() {
+ need elogind dbus
+ before display-manager
+}
diff --git a/sys-apps/fwupd/fwupd-1.3.10.ebuild b/sys-apps/fwupd/fwupd-1.3.10.ebuild
deleted file mode 100644
index a75d878756bd..000000000000
--- a/sys-apps/fwupd/fwupd-1.3.10.ebuild
+++ /dev/null
@@ -1,170 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info meson python-single-r1 vala xdg toolchain-funcs
-
-DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
-HOMEPAGE="https://fwupd.org"
-SRC_URI="https://github.com/hughsie/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 ~arm x86"
-IUSE="agent amt dell gtk-doc elogind minimal +gpg introspection +man nvme pkcs7 redfish synaptics systemd test thunderbolt tpm uefi"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- ^^ ( elogind minimal systemd )
- dell? ( uefi )
- minimal? ( !introspection )
-"
-RESTRICT="!test? ( test )"
-
-BDEPEND="$(vala_depend)
- virtual/pkgconfig
- gtk-doc? ( dev-util/gtk-doc )
- introspection? ( dev-libs/gobject-introspection )
- man? (
- app-text/docbook-sgml-utils
- sys-apps/help2man
- )
- test? (
- thunderbolt? ( dev-util/umockdev )
- net-libs/gnutls[tools]
- )
-"
-CDEPEND="${PYTHON_DEPS}
- >=app-arch/gcab-1.0
- app-arch/libarchive:=
- dev-db/sqlite
- >=dev-libs/glib-2.45.8:2
- dev-libs/json-glib
- dev-libs/libgpg-error
- dev-libs/libgudev:=
- >=dev-libs/libgusb-0.2.9[introspection?]
- >=dev-libs/libxmlb-0.1.13:=
- $(python_gen_cond_dep '
- dev-python/pillow[${PYTHON_MULTI_USEDEP}]
- dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
- dev-python/pygobject:3[cairo,${PYTHON_MULTI_USEDEP}]
- ')
- >=net-libs/libsoup-2.51.92:2.4[introspection?]
- virtual/libelf:0=
- virtual/udev
- dell? (
- sys-libs/efivar
- >=sys-libs/libsmbios-2.4.0
- )
- elogind? ( sys-auth/elogind )
- gpg? (
- app-crypt/gpgme
- dev-libs/libgpg-error
- )
- !minimal? (
- >=sys-auth/polkit-0.103
- )
- nvme? ( sys-libs/efivar )
- pkcs7? ( >=net-libs/gnutls-3.4.4.1:= )
- redfish? ( sys-libs/efivar )
- systemd? ( >=sys-apps/systemd-211 )
- tpm? ( app-crypt/tpm2-tss )
- uefi? (
- app-crypt/tpm2-tss
- media-libs/fontconfig
- media-libs/freetype
- sys-boot/gnu-efi
- sys-boot/efibootmgr
- >=sys-libs/efivar-33
- x11-libs/cairo
- )
-"
-# Block sci-chemistry/chemical-mime-data for bug #701900
-RDEPEND="
- !<sci-chemistry/chemical-mime-data-0.1.94-r4
- ${CDEPEND}
- sys-apps/dbus
-"
-
-DEPEND="
- ${CDEPEND}
- x11-libs/pango[introspection]
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.3.9-logind_plugin.patch"
- "${FILESDIR}/${PN}-1.4.4-help2man_var.patch" #728484
-)
-
-pkg_setup() {
- python-single-r1_pkg_setup
- if use nvme; then
- kernel_is -ge 4 4 || die "NVMe support requires kernel >= 4.4"
- fi
-}
-
-src_prepare() {
- default
- # c.f. https://github.com/fwupd/fwupd/issues/1414
- sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
- -i plugins/thunderbolt/meson.build || die
- vala_src_prepare
-}
-
-src_configure() {
- local emesonargs=(
- --localstatedir "${EPREFIX}"/var
- -Dbuild="$(usex minimal standalone all)"
- $(meson_use agent)
- $(meson_use amt plugin_amt)
- $(meson_use dell plugin_dell)
- $(meson_use elogind)
- $(meson_use gpg)
- $(meson_use gtk-doc gtkdoc)
- $(meson_use introspection)
- $(meson_use man)
- $(meson_use nvme plugin_nvme)
- $(meson_use pkcs7)
- $(meson_use redfish plugin_redfish)
- $(meson_use synaptics plugin_synaptics)
- $(meson_use systemd)
- $(meson_use test tests)
- $(meson_use thunderbolt plugin_thunderbolt)
- $(meson_use tpm plugin_tpm)
- $(meson_use uefi plugin_uefi)
- # Requires libflashrom which our sys-apps/flashrom
- # package does not provide
- -Dplugin_flashrom="false"
- # Dependencies are not available (yet?)
- -Dplugin_modem_manager="false"
- -Dconsolekit="false"
- )
- export CACHE_DIRECTORY="${T}"
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- if ! use minimal ; then
- sed "s@%SEAT_MANAGER%@elogind@" \
- "${FILESDIR}"/${PN}-r1 \
- > "${T}"/${PN} || die
- doinitd "${T}"/${PN}
-
- if ! use systemd ; then
- # Don't timeout when fwupd is running (#673140)
- sed '/^IdleTimeout=/s@=[[:digit:]]\+@=0@' \
- -i "${ED}"/etc/${PN}/daemon.conf || die
- fi
- fi
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- elog "In case you are using openrc as init system"
- elog "and you're upgrading from <fwupd-1.1.0, you"
- elog "need to start the fwupd daemon via the openrc"
- elog "init script that comes with this package."
-}
diff --git a/sys-apps/fwupd/fwupd-1.3.11.ebuild b/sys-apps/fwupd/fwupd-1.3.11.ebuild
deleted file mode 100644
index 378dc3009785..000000000000
--- a/sys-apps/fwupd/fwupd-1.3.11.ebuild
+++ /dev/null
@@ -1,170 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info meson python-single-r1 vala xdg toolchain-funcs
-
-DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
-HOMEPAGE="https://fwupd.org"
-SRC_URI="https://github.com/hughsie/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="agent amt dell gtk-doc elogind minimal +gpg introspection +man nvme pkcs7 redfish synaptics systemd test thunderbolt tpm uefi"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- ^^ ( elogind minimal systemd )
- dell? ( uefi )
- minimal? ( !introspection )
-"
-RESTRICT="!test? ( test )"
-
-BDEPEND="$(vala_depend)
- virtual/pkgconfig
- gtk-doc? ( dev-util/gtk-doc )
- introspection? ( dev-libs/gobject-introspection )
- man? (
- app-text/docbook-sgml-utils
- sys-apps/help2man
- )
- test? (
- thunderbolt? ( dev-util/umockdev )
- net-libs/gnutls[tools]
- )
-"
-CDEPEND="${PYTHON_DEPS}
- >=app-arch/gcab-1.0
- app-arch/libarchive:=
- dev-db/sqlite
- >=dev-libs/glib-2.45.8:2
- dev-libs/json-glib
- dev-libs/libgpg-error
- dev-libs/libgudev:=
- >=dev-libs/libgusb-0.2.9[introspection?]
- >=dev-libs/libxmlb-0.1.13:=
- $(python_gen_cond_dep '
- dev-python/pillow[${PYTHON_MULTI_USEDEP}]
- dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
- dev-python/pygobject:3[cairo,${PYTHON_MULTI_USEDEP}]
- ')
- >=net-libs/libsoup-2.51.92:2.4[introspection?]
- virtual/libelf:0=
- virtual/udev
- dell? (
- sys-libs/efivar
- >=sys-libs/libsmbios-2.4.0
- )
- elogind? ( sys-auth/elogind )
- gpg? (
- app-crypt/gpgme
- dev-libs/libgpg-error
- )
- !minimal? (
- >=sys-auth/polkit-0.103
- )
- nvme? ( sys-libs/efivar )
- pkcs7? ( >=net-libs/gnutls-3.4.4.1:= )
- redfish? ( sys-libs/efivar )
- systemd? ( >=sys-apps/systemd-211 )
- tpm? ( app-crypt/tpm2-tss )
- uefi? (
- app-crypt/tpm2-tss
- media-libs/fontconfig
- media-libs/freetype
- sys-boot/gnu-efi
- sys-boot/efibootmgr
- >=sys-libs/efivar-33
- x11-libs/cairo
- )
-"
-# Block sci-chemistry/chemical-mime-data for bug #701900
-RDEPEND="
- !<sci-chemistry/chemical-mime-data-0.1.94-r4
- ${CDEPEND}
- sys-apps/dbus
-"
-
-DEPEND="
- ${CDEPEND}
- x11-libs/pango[introspection]
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.3.9-logind_plugin.patch"
- "${FILESDIR}/${PN}-1.4.4-help2man_var.patch" #728484
-)
-
-pkg_setup() {
- python-single-r1_pkg_setup
- if use nvme; then
- kernel_is -ge 4 4 || die "NVMe support requires kernel >= 4.4"
- fi
-}
-
-src_prepare() {
- default
- # c.f. https://github.com/fwupd/fwupd/issues/1414
- sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
- -i plugins/thunderbolt/meson.build || die
- vala_src_prepare
-}
-
-src_configure() {
- local emesonargs=(
- --localstatedir "${EPREFIX}"/var
- -Dbuild="$(usex minimal standalone all)"
- $(meson_use agent)
- $(meson_use amt plugin_amt)
- $(meson_use dell plugin_dell)
- $(meson_use elogind)
- $(meson_use gpg)
- $(meson_use gtk-doc gtkdoc)
- $(meson_use introspection)
- $(meson_use man)
- $(meson_use nvme plugin_nvme)
- $(meson_use pkcs7)
- $(meson_use redfish plugin_redfish)
- $(meson_use synaptics plugin_synaptics)
- $(meson_use systemd)
- $(meson_use test tests)
- $(meson_use thunderbolt plugin_thunderbolt)
- $(meson_use tpm plugin_tpm)
- $(meson_use uefi plugin_uefi)
- # Requires libflashrom which our sys-apps/flashrom
- # package does not provide
- -Dplugin_flashrom="false"
- # Dependencies are not available (yet?)
- -Dplugin_modem_manager="false"
- -Dconsolekit="false"
- )
- export CACHE_DIRECTORY="${T}"
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- if ! use minimal ; then
- sed "s@%SEAT_MANAGER%@elogind@" \
- "${FILESDIR}"/${PN}-r1 \
- > "${T}"/${PN} || die
- doinitd "${T}"/${PN}
-
- if ! use systemd ; then
- # Don't timeout when fwupd is running (#673140)
- sed '/^IdleTimeout=/s@=[[:digit:]]\+@=0@' \
- -i "${ED}"/etc/${PN}/daemon.conf || die
- fi
- fi
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- elog "In case you are using openrc as init system"
- elog "and you're upgrading from <fwupd-1.1.0, you"
- elog "need to start the fwupd daemon via the openrc"
- elog "init script that comes with this package."
-}
diff --git a/sys-apps/fwupd/fwupd-1.4.5.ebuild b/sys-apps/fwupd/fwupd-1.4.5.ebuild
deleted file mode 100644
index 10d29cf18bc2..000000000000
--- a/sys-apps/fwupd/fwupd-1.4.5.ebuild
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info meson python-single-r1 vala xdg toolchain-funcs
-
-DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
-HOMEPAGE="https://fwupd.org"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="agent amt dell gtk-doc elogind minimal introspection +man nvme redfish synaptics systemd test thunderbolt tpm uefi"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- ^^ ( elogind minimal systemd )
- dell? ( uefi )
- minimal? ( !introspection )
-"
-RESTRICT="!test? ( test )"
-
-BDEPEND="$(vala_depend)
- virtual/pkgconfig
- gtk-doc? ( dev-util/gtk-doc )
- introspection? ( dev-libs/gobject-introspection )
- man? (
- app-text/docbook-sgml-utils
- sys-apps/help2man
- )
- test? (
- thunderbolt? ( dev-util/umockdev )
- net-libs/gnutls[tools]
- )
-"
-CDEPEND="${PYTHON_DEPS}
- >=app-arch/gcab-1.0
- app-arch/libarchive:=
- dev-db/sqlite
- >=dev-libs/glib-2.45.8:2
- dev-libs/json-glib
- dev-libs/libgpg-error
- dev-libs/libgudev:=
- >=dev-libs/libgusb-0.2.9[introspection?]
- >=dev-libs/libjcat-0.1.0[gpg,pkcs7]
- >=dev-libs/libxmlb-0.1.13:=
- $(python_gen_cond_dep '
- dev-python/pillow[${PYTHON_MULTI_USEDEP}]
- dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
- dev-python/pygobject:3[cairo,${PYTHON_MULTI_USEDEP}]
- ')
- >=net-libs/libsoup-2.51.92:2.4[introspection?]
- virtual/libelf:0=
- virtual/udev
- dell? (
- sys-libs/efivar
- >=sys-libs/libsmbios-2.4.0
- )
- elogind? ( sys-auth/elogind )
- !minimal? (
- >=sys-auth/polkit-0.103
- )
- nvme? ( sys-libs/efivar )
- redfish? ( sys-libs/efivar )
- systemd? ( >=sys-apps/systemd-211 )
- tpm? ( app-crypt/tpm2-tss )
- uefi? (
- app-crypt/tpm2-tss
- media-libs/fontconfig
- media-libs/freetype
- sys-boot/gnu-efi
- sys-boot/efibootmgr
- >=sys-libs/efivar-33
- x11-libs/cairo
- )
-"
-# Block sci-chemistry/chemical-mime-data for bug #701900
-RDEPEND="
- !<sci-chemistry/chemical-mime-data-0.1.94-r4
- ${CDEPEND}
- sys-apps/dbus
-"
-
-DEPEND="
- ${CDEPEND}
- x11-libs/pango[introspection]
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.3.9-logind_plugin.patch"
- "${FILESDIR}/${PN}-1.4.4-help2man_var.patch" #728484
-)
-
-pkg_setup() {
- python-single-r1_pkg_setup
- if use nvme; then
- kernel_is -ge 4 4 || die "NVMe support requires kernel >= 4.4"
- fi
-}
-
-src_prepare() {
- default
- # c.f. https://github.com/fwupd/fwupd/issues/1414
- sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
- -i plugins/thunderbolt/meson.build || die
- vala_src_prepare
-}
-
-src_configure() {
- local emesonargs=(
- --localstatedir "${EPREFIX}"/var
- -Dbuild="$(usex minimal standalone all)"
- $(meson_use agent)
- $(meson_use amt plugin_amt)
- $(meson_use dell plugin_dell)
- $(meson_use elogind)
- $(meson_use gtk-doc gtkdoc)
- $(meson_use man)
- $(meson_use nvme plugin_nvme)
- $(meson_use introspection)
- $(meson_use redfish plugin_redfish)
- $(meson_use synaptics plugin_synaptics)
- $(meson_use systemd)
- $(meson_use test tests)
- $(meson_use thunderbolt plugin_thunderbolt)
- $(meson_use tpm plugin_tpm)
- $(meson_use uefi plugin_uefi)
- # Although our sys-apps/flashrom package now provides
- # libflashrom.a, meson still can't find it
- -Dplugin_flashrom="false"
- # Dependencies are not available (yet?)
- -Dplugin_modem_manager="false"
- -Dconsolekit="false"
- )
- export CACHE_DIRECTORY="${T}"
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- if ! use minimal ; then
- sed "s@%SEAT_MANAGER%@elogind@" \
- "${FILESDIR}"/${PN}-r1 \
- > "${T}"/${PN} || die
- doinitd "${T}"/${PN}
-
- if ! use systemd ; then
- # Don't timeout when fwupd is running (#673140)
- sed '/^IdleTimeout=/s@=[[:digit:]]\+@=0@' \
- -i "${ED}"/etc/${PN}/daemon.conf || die
- fi
- fi
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- elog "In case you are using openrc as init system"
- elog "and you're upgrading from <fwupd-1.1.0, you"
- elog "need to start the fwupd daemon via the openrc"
- elog "init script that comes with this package."
-}
diff --git a/sys-apps/fwupd/fwupd-1.4.6.ebuild b/sys-apps/fwupd/fwupd-1.4.6.ebuild
deleted file mode 100644
index 10d29cf18bc2..000000000000
--- a/sys-apps/fwupd/fwupd-1.4.6.ebuild
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info meson python-single-r1 vala xdg toolchain-funcs
-
-DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
-HOMEPAGE="https://fwupd.org"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="agent amt dell gtk-doc elogind minimal introspection +man nvme redfish synaptics systemd test thunderbolt tpm uefi"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- ^^ ( elogind minimal systemd )
- dell? ( uefi )
- minimal? ( !introspection )
-"
-RESTRICT="!test? ( test )"
-
-BDEPEND="$(vala_depend)
- virtual/pkgconfig
- gtk-doc? ( dev-util/gtk-doc )
- introspection? ( dev-libs/gobject-introspection )
- man? (
- app-text/docbook-sgml-utils
- sys-apps/help2man
- )
- test? (
- thunderbolt? ( dev-util/umockdev )
- net-libs/gnutls[tools]
- )
-"
-CDEPEND="${PYTHON_DEPS}
- >=app-arch/gcab-1.0
- app-arch/libarchive:=
- dev-db/sqlite
- >=dev-libs/glib-2.45.8:2
- dev-libs/json-glib
- dev-libs/libgpg-error
- dev-libs/libgudev:=
- >=dev-libs/libgusb-0.2.9[introspection?]
- >=dev-libs/libjcat-0.1.0[gpg,pkcs7]
- >=dev-libs/libxmlb-0.1.13:=
- $(python_gen_cond_dep '
- dev-python/pillow[${PYTHON_MULTI_USEDEP}]
- dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
- dev-python/pygobject:3[cairo,${PYTHON_MULTI_USEDEP}]
- ')
- >=net-libs/libsoup-2.51.92:2.4[introspection?]
- virtual/libelf:0=
- virtual/udev
- dell? (
- sys-libs/efivar
- >=sys-libs/libsmbios-2.4.0
- )
- elogind? ( sys-auth/elogind )
- !minimal? (
- >=sys-auth/polkit-0.103
- )
- nvme? ( sys-libs/efivar )
- redfish? ( sys-libs/efivar )
- systemd? ( >=sys-apps/systemd-211 )
- tpm? ( app-crypt/tpm2-tss )
- uefi? (
- app-crypt/tpm2-tss
- media-libs/fontconfig
- media-libs/freetype
- sys-boot/gnu-efi
- sys-boot/efibootmgr
- >=sys-libs/efivar-33
- x11-libs/cairo
- )
-"
-# Block sci-chemistry/chemical-mime-data for bug #701900
-RDEPEND="
- !<sci-chemistry/chemical-mime-data-0.1.94-r4
- ${CDEPEND}
- sys-apps/dbus
-"
-
-DEPEND="
- ${CDEPEND}
- x11-libs/pango[introspection]
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.3.9-logind_plugin.patch"
- "${FILESDIR}/${PN}-1.4.4-help2man_var.patch" #728484
-)
-
-pkg_setup() {
- python-single-r1_pkg_setup
- if use nvme; then
- kernel_is -ge 4 4 || die "NVMe support requires kernel >= 4.4"
- fi
-}
-
-src_prepare() {
- default
- # c.f. https://github.com/fwupd/fwupd/issues/1414
- sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
- -i plugins/thunderbolt/meson.build || die
- vala_src_prepare
-}
-
-src_configure() {
- local emesonargs=(
- --localstatedir "${EPREFIX}"/var
- -Dbuild="$(usex minimal standalone all)"
- $(meson_use agent)
- $(meson_use amt plugin_amt)
- $(meson_use dell plugin_dell)
- $(meson_use elogind)
- $(meson_use gtk-doc gtkdoc)
- $(meson_use man)
- $(meson_use nvme plugin_nvme)
- $(meson_use introspection)
- $(meson_use redfish plugin_redfish)
- $(meson_use synaptics plugin_synaptics)
- $(meson_use systemd)
- $(meson_use test tests)
- $(meson_use thunderbolt plugin_thunderbolt)
- $(meson_use tpm plugin_tpm)
- $(meson_use uefi plugin_uefi)
- # Although our sys-apps/flashrom package now provides
- # libflashrom.a, meson still can't find it
- -Dplugin_flashrom="false"
- # Dependencies are not available (yet?)
- -Dplugin_modem_manager="false"
- -Dconsolekit="false"
- )
- export CACHE_DIRECTORY="${T}"
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- if ! use minimal ; then
- sed "s@%SEAT_MANAGER%@elogind@" \
- "${FILESDIR}"/${PN}-r1 \
- > "${T}"/${PN} || die
- doinitd "${T}"/${PN}
-
- if ! use systemd ; then
- # Don't timeout when fwupd is running (#673140)
- sed '/^IdleTimeout=/s@=[[:digit:]]\+@=0@' \
- -i "${ED}"/etc/${PN}/daemon.conf || die
- fi
- fi
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- elog "In case you are using openrc as init system"
- elog "and you're upgrading from <fwupd-1.1.0, you"
- elog "need to start the fwupd daemon via the openrc"
- elog "init script that comes with this package."
-}
diff --git a/sys-apps/fwupd/fwupd-1.9.10-r1.ebuild b/sys-apps/fwupd/fwupd-1.9.10-r1.ebuild
new file mode 100644
index 000000000000..800a75b349ba
--- /dev/null
+++ b/sys-apps/fwupd/fwupd-1.9.10-r1.ebuild
@@ -0,0 +1,209 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 vala udev xdg
+
+DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
+HOMEPAGE="https://fwupd.org"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc +gusb introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test test-full tpm uefi"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ ^^ ( elogind minimal systemd )
+ fastboot? ( gusb )
+ logitech? ( gusb )
+ minimal? ( !introspection )
+ modemmanager? ( gusb )
+ spi? ( lzma )
+ synaptics? ( gnutls )
+ test? ( archive gusb )
+ test-full? ( test )
+ uefi? ( gnutls )
+"
+RESTRICT="!test? ( test )"
+
+BDEPEND="$(vala_depend)
+ $(python_gen_cond_dep '
+ dev-python/jinja[${PYTHON_USEDEP}]
+ ')
+ >=dev-build/meson-0.60.0
+ virtual/pkgconfig
+ gtk-doc? (
+ $(python_gen_cond_dep '
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ ')
+ >=dev-util/gi-docgen-2021.1
+ )
+ bash-completion? ( >=app-shells/bash-completion-2.0 )
+ introspection? ( dev-libs/gobject-introspection )
+ test? (
+ net-libs/gnutls[tools]
+ test-full? ( dev-util/umockdev )
+ )
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ >=app-arch/gcab-1.0
+ app-arch/xz-utils
+ >=dev-libs/glib-2.68:2
+ >=dev-libs/json-glib-1.6.0
+ >=dev-libs/libgudev-232:=
+ >=dev-libs/libjcat-0.1.4[gpg,pkcs7]
+ >=dev-libs/libxmlb-0.3.6:=[introspection?]
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ ')
+ >=net-misc/curl-7.62.0
+ archive? ( app-arch/libarchive:= )
+ cbor? ( >=dev-libs/libcbor-0.7.0:= )
+ elogind? ( >=sys-auth/elogind-211 )
+ flashrom? ( >=sys-apps/flashrom-1.2-r3 )
+ gnutls? ( >=net-libs/gnutls-3.6.0 )
+ gusb? ( >=dev-libs/libgusb-0.3.8[introspection?] )
+ logitech? ( dev-libs/protobuf-c:= )
+ lzma? ( app-arch/xz-utils )
+ modemmanager? ( net-misc/modemmanager[mbim,qmi] )
+ policykit? ( >=sys-auth/polkit-0.114 )
+ sqlite? ( dev-db/sqlite )
+ systemd? ( >=sys-apps/systemd-211 )
+ tpm? ( app-crypt/tpm2-tss:= )
+ uefi? (
+ sys-apps/fwupd-efi
+ sys-boot/efibootmgr
+ sys-fs/udisks
+ sys-libs/efivar
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ sys-apps/dbus
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-libs/pango[introspection]
+ amdgpu? (
+ sys-kernel/linux-headers
+ x11-libs/libdrm[video_cards_amdgpu]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9.6-fragile_tests.patch
+)
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test-full && has sandbox ${FEATURES}; then
+ ewarn "Certain ${PN} tests are fragile with sandboxing enabled,"
+ ewarn "see https://github.com/fwupd/fwupd/issues/1414."
+ ewarn "When in doubt, emerge ${PN} with USE=-test-full."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ vala_setup
+
+ sed -e "/install_dir.*'doc'/s/doc/gtk-doc/" \
+ -i docs/meson.build || die
+
+ python_fix_shebang "${S}"/contrib/*.py
+}
+
+src_configure() {
+ local plugins=(
+ -Dplugin_gpio="enabled"
+ $(meson_feature amdgpu plugin_amdgpu)
+ $(meson_feature amt plugin_intel_me)
+ $(meson_feature fastboot plugin_fastboot)
+ $(meson_feature flashrom plugin_flashrom)
+ $(meson_feature gusb plugin_uf2)
+ $(meson_feature logitech plugin_logitech_bulkcontroller)
+ $(meson_feature modemmanager plugin_modem_manager)
+ $(meson_feature nvme plugin_nvme)
+ $(meson_use spi plugin_intel_spi)
+ $(meson_feature synaptics plugin_synaptics_mst)
+ $(meson_feature synaptics plugin_synaptics_rmi)
+ $(meson_feature tpm plugin_tpm)
+ $(meson_feature uefi plugin_uefi_capsule)
+ $(meson_use uefi plugin_uefi_capsule_splash)
+ $(meson_feature uefi plugin_uefi_pk)
+ )
+ if use ppc64 || use riscv ; then
+ plugins+=( -Dplugin_msr="disabled" )
+ fi
+
+ local emesonargs=(
+ --localstatedir "${EPREFIX}"/var
+ -Dbuild="$(usex minimal standalone all)"
+ -Dconsolekit="disabled"
+ -Dcurl="enabled"
+ -Defi_binary="false"
+ -Dman="true"
+ -Dsupported_build="enabled"
+ -Dsystemd_unit_user=""
+ -Dudevdir="${EPREFIX}$(get_udevdir)"
+ $(meson_feature archive libarchive)
+ $(meson_use bash-completion bash_completion)
+ $(meson_feature bluetooth bluez)
+ $(meson_feature cbor)
+ $(meson_feature elogind)
+ $(meson_feature gnutls)
+ $(meson_feature gtk-doc docs)
+ $(meson_feature gusb)
+ $(meson_feature lzma)
+ $(meson_feature introspection)
+ $(meson_feature policykit polkit)
+ $(meson_feature sqlite)
+ $(meson_feature systemd)
+ $(meson_use test tests)
+ $(meson_use test-full)
+
+ ${plugins[@]}
+ )
+ use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
+ export CACHE_DIRECTORY="${T}"
+ meson_src_configure
+}
+
+src_test() {
+ LC_ALL="C" meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ if ! use minimal ; then
+ newinitd "${FILESDIR}"/${PN}-r2 ${PN}
+ fi
+
+ if use test; then
+ # Preventing tests from being installed in the first place is a moving target,
+ # just axe them all afterwards.
+ rm -rf "${ED}"/etc/fwupd/remotes.d/fwupd-tests.conf \
+ "${ED}"/usr/libexec/installed-tests \
+ "${ED}"/usr/share/fwupd/device-tests \
+ "${ED}"/usr/share/fwupd/host-emulate.d/thinkpad-p1-iommu.json.gz \
+ "${ED}"/usr/share/installed-tests \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ use minimal || udev_reload
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ use minimal || udev_reload
+}
diff --git a/sys-apps/fwupd/fwupd-1.9.14.ebuild b/sys-apps/fwupd/fwupd-1.9.14.ebuild
new file mode 100644
index 000000000000..6553ff479810
--- /dev/null
+++ b/sys-apps/fwupd/fwupd-1.9.14.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 vala udev xdg
+
+DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
+HOMEPAGE="https://fwupd.org"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc +gusb introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test test-full tpm uefi"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ ^^ ( elogind minimal systemd )
+ fastboot? ( gusb )
+ logitech? ( gusb )
+ minimal? ( !introspection )
+ modemmanager? ( gusb )
+ spi? ( lzma )
+ synaptics? ( gnutls )
+ test? ( archive gusb )
+ test-full? ( test )
+ uefi? ( gnutls )
+"
+RESTRICT="!test? ( test )"
+
+BDEPEND="$(vala_depend)
+ $(python_gen_cond_dep '
+ dev-python/jinja[${PYTHON_USEDEP}]
+ ')
+ >=dev-build/meson-0.60.0
+ virtual/pkgconfig
+ gtk-doc? (
+ $(python_gen_cond_dep '
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ ')
+ >=dev-util/gi-docgen-2021.1
+ )
+ bash-completion? ( >=app-shells/bash-completion-2.0 )
+ introspection? ( dev-libs/gobject-introspection )
+ test? (
+ net-libs/gnutls[tools]
+ test-full? ( dev-util/umockdev )
+ )
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ >=app-arch/gcab-1.0
+ app-arch/xz-utils
+ >=dev-libs/glib-2.68:2
+ >=dev-libs/json-glib-1.6.0
+ >=dev-libs/libgudev-232:=
+ >=dev-libs/libjcat-0.1.4[gpg,pkcs7]
+ >=dev-libs/libxmlb-0.3.6:=[introspection?]
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ ')
+ >=net-misc/curl-7.62.0
+ archive? ( app-arch/libarchive:= )
+ cbor? ( >=dev-libs/libcbor-0.7.0:= )
+ elogind? ( >=sys-auth/elogind-211 )
+ flashrom? ( >=sys-apps/flashrom-1.2-r3 )
+ gnutls? ( >=net-libs/gnutls-3.6.0 )
+ gusb? ( >=dev-libs/libgusb-0.3.8[introspection?] )
+ logitech? ( dev-libs/protobuf-c:= )
+ lzma? ( app-arch/xz-utils )
+ modemmanager? ( net-misc/modemmanager[mbim,qmi] )
+ policykit? ( >=sys-auth/polkit-0.114 )
+ sqlite? ( dev-db/sqlite )
+ systemd? ( >=sys-apps/systemd-211 )
+ tpm? ( app-crypt/tpm2-tss:= )
+ uefi? (
+ sys-apps/fwupd-efi
+ sys-boot/efibootmgr
+ sys-fs/udisks
+ sys-libs/efivar
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ sys-apps/dbus
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-libs/pango[introspection]
+ amdgpu? (
+ sys-kernel/linux-headers
+ x11-libs/libdrm[video_cards_amdgpu]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9.6-fragile_tests.patch
+)
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test-full && has sandbox ${FEATURES}; then
+ ewarn "Certain ${PN} tests are fragile with sandboxing enabled,"
+ ewarn "see https://github.com/fwupd/fwupd/issues/1414."
+ ewarn "When in doubt, emerge ${PN} with USE=-test-full."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ vala_setup
+
+ sed -e "/install_dir.*'doc'/s/doc/gtk-doc/" \
+ -i docs/meson.build || die
+
+ python_fix_shebang "${S}"/contrib/*.py
+}
+
+src_configure() {
+ local plugins=(
+ -Dplugin_gpio="enabled"
+ $(meson_feature amdgpu plugin_amdgpu)
+ $(meson_feature amt plugin_intel_me)
+ $(meson_feature fastboot plugin_fastboot)
+ $(meson_feature flashrom plugin_flashrom)
+ $(meson_feature gusb plugin_uf2)
+ $(meson_feature logitech plugin_logitech_bulkcontroller)
+ $(meson_feature modemmanager plugin_modem_manager)
+ $(meson_feature nvme plugin_nvme)
+ $(meson_use spi plugin_intel_spi)
+ $(meson_feature synaptics plugin_synaptics_mst)
+ $(meson_feature synaptics plugin_synaptics_rmi)
+ $(meson_feature tpm plugin_tpm)
+ $(meson_feature uefi plugin_uefi_capsule)
+ $(meson_use uefi plugin_uefi_capsule_splash)
+ $(meson_feature uefi plugin_uefi_pk)
+ )
+ if use ppc64 || use riscv ; then
+ plugins+=( -Dplugin_msr="disabled" )
+ fi
+
+ local emesonargs=(
+ --localstatedir "${EPREFIX}"/var
+ -Dbuild="$(usex minimal standalone all)"
+ -Dconsolekit="disabled"
+ -Dcurl="enabled"
+ -Defi_binary="false"
+ -Dman="true"
+ -Dsupported_build="enabled"
+ -Dsystemd_unit_user=""
+ -Dudevdir="${EPREFIX}$(get_udevdir)"
+ $(meson_feature archive libarchive)
+ $(meson_use bash-completion bash_completion)
+ $(meson_feature bluetooth bluez)
+ $(meson_feature cbor)
+ $(meson_feature elogind)
+ $(meson_feature gnutls)
+ $(meson_feature gtk-doc docs)
+ $(meson_feature gusb)
+ $(meson_feature lzma)
+ $(meson_feature introspection)
+ $(meson_feature policykit polkit)
+ $(meson_feature sqlite)
+ $(meson_feature systemd)
+ $(meson_use test tests)
+ $(meson_use test-full)
+
+ ${plugins[@]}
+ )
+ use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
+ export CACHE_DIRECTORY="${T}"
+ meson_src_configure
+}
+
+src_test() {
+ LC_ALL="C" meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ if ! use minimal ; then
+ newinitd "${FILESDIR}"/${PN}-r2 ${PN}
+ fi
+
+ if use test; then
+ # Preventing tests from being installed in the first place is a moving target,
+ # just axe them all afterwards.
+ rm -rf \
+ "${ED}"/usr/libexec/installed-tests \
+ "${ED}"/usr/share/fwupd/device-tests \
+ "${ED}"/usr/share/fwupd/host-emulate.d/thinkpad-p1-iommu.json.gz \
+ "${ED}"/usr/share/fwupd/remotes.d/fwupd-tests.conf \
+ "${ED}"/usr/share/installed-tests \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ use minimal || udev_reload
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ use minimal || udev_reload
+}
diff --git a/sys-apps/fwupd/fwupd-1.9.16.ebuild b/sys-apps/fwupd/fwupd-1.9.16.ebuild
new file mode 100644
index 000000000000..6553ff479810
--- /dev/null
+++ b/sys-apps/fwupd/fwupd-1.9.16.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 vala udev xdg
+
+DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
+HOMEPAGE="https://fwupd.org"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc +gusb introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test test-full tpm uefi"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ ^^ ( elogind minimal systemd )
+ fastboot? ( gusb )
+ logitech? ( gusb )
+ minimal? ( !introspection )
+ modemmanager? ( gusb )
+ spi? ( lzma )
+ synaptics? ( gnutls )
+ test? ( archive gusb )
+ test-full? ( test )
+ uefi? ( gnutls )
+"
+RESTRICT="!test? ( test )"
+
+BDEPEND="$(vala_depend)
+ $(python_gen_cond_dep '
+ dev-python/jinja[${PYTHON_USEDEP}]
+ ')
+ >=dev-build/meson-0.60.0
+ virtual/pkgconfig
+ gtk-doc? (
+ $(python_gen_cond_dep '
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ ')
+ >=dev-util/gi-docgen-2021.1
+ )
+ bash-completion? ( >=app-shells/bash-completion-2.0 )
+ introspection? ( dev-libs/gobject-introspection )
+ test? (
+ net-libs/gnutls[tools]
+ test-full? ( dev-util/umockdev )
+ )
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ >=app-arch/gcab-1.0
+ app-arch/xz-utils
+ >=dev-libs/glib-2.68:2
+ >=dev-libs/json-glib-1.6.0
+ >=dev-libs/libgudev-232:=
+ >=dev-libs/libjcat-0.1.4[gpg,pkcs7]
+ >=dev-libs/libxmlb-0.3.6:=[introspection?]
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ ')
+ >=net-misc/curl-7.62.0
+ archive? ( app-arch/libarchive:= )
+ cbor? ( >=dev-libs/libcbor-0.7.0:= )
+ elogind? ( >=sys-auth/elogind-211 )
+ flashrom? ( >=sys-apps/flashrom-1.2-r3 )
+ gnutls? ( >=net-libs/gnutls-3.6.0 )
+ gusb? ( >=dev-libs/libgusb-0.3.8[introspection?] )
+ logitech? ( dev-libs/protobuf-c:= )
+ lzma? ( app-arch/xz-utils )
+ modemmanager? ( net-misc/modemmanager[mbim,qmi] )
+ policykit? ( >=sys-auth/polkit-0.114 )
+ sqlite? ( dev-db/sqlite )
+ systemd? ( >=sys-apps/systemd-211 )
+ tpm? ( app-crypt/tpm2-tss:= )
+ uefi? (
+ sys-apps/fwupd-efi
+ sys-boot/efibootmgr
+ sys-fs/udisks
+ sys-libs/efivar
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ sys-apps/dbus
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-libs/pango[introspection]
+ amdgpu? (
+ sys-kernel/linux-headers
+ x11-libs/libdrm[video_cards_amdgpu]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9.6-fragile_tests.patch
+)
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test-full && has sandbox ${FEATURES}; then
+ ewarn "Certain ${PN} tests are fragile with sandboxing enabled,"
+ ewarn "see https://github.com/fwupd/fwupd/issues/1414."
+ ewarn "When in doubt, emerge ${PN} with USE=-test-full."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ vala_setup
+
+ sed -e "/install_dir.*'doc'/s/doc/gtk-doc/" \
+ -i docs/meson.build || die
+
+ python_fix_shebang "${S}"/contrib/*.py
+}
+
+src_configure() {
+ local plugins=(
+ -Dplugin_gpio="enabled"
+ $(meson_feature amdgpu plugin_amdgpu)
+ $(meson_feature amt plugin_intel_me)
+ $(meson_feature fastboot plugin_fastboot)
+ $(meson_feature flashrom plugin_flashrom)
+ $(meson_feature gusb plugin_uf2)
+ $(meson_feature logitech plugin_logitech_bulkcontroller)
+ $(meson_feature modemmanager plugin_modem_manager)
+ $(meson_feature nvme plugin_nvme)
+ $(meson_use spi plugin_intel_spi)
+ $(meson_feature synaptics plugin_synaptics_mst)
+ $(meson_feature synaptics plugin_synaptics_rmi)
+ $(meson_feature tpm plugin_tpm)
+ $(meson_feature uefi plugin_uefi_capsule)
+ $(meson_use uefi plugin_uefi_capsule_splash)
+ $(meson_feature uefi plugin_uefi_pk)
+ )
+ if use ppc64 || use riscv ; then
+ plugins+=( -Dplugin_msr="disabled" )
+ fi
+
+ local emesonargs=(
+ --localstatedir "${EPREFIX}"/var
+ -Dbuild="$(usex minimal standalone all)"
+ -Dconsolekit="disabled"
+ -Dcurl="enabled"
+ -Defi_binary="false"
+ -Dman="true"
+ -Dsupported_build="enabled"
+ -Dsystemd_unit_user=""
+ -Dudevdir="${EPREFIX}$(get_udevdir)"
+ $(meson_feature archive libarchive)
+ $(meson_use bash-completion bash_completion)
+ $(meson_feature bluetooth bluez)
+ $(meson_feature cbor)
+ $(meson_feature elogind)
+ $(meson_feature gnutls)
+ $(meson_feature gtk-doc docs)
+ $(meson_feature gusb)
+ $(meson_feature lzma)
+ $(meson_feature introspection)
+ $(meson_feature policykit polkit)
+ $(meson_feature sqlite)
+ $(meson_feature systemd)
+ $(meson_use test tests)
+ $(meson_use test-full)
+
+ ${plugins[@]}
+ )
+ use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
+ export CACHE_DIRECTORY="${T}"
+ meson_src_configure
+}
+
+src_test() {
+ LC_ALL="C" meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ if ! use minimal ; then
+ newinitd "${FILESDIR}"/${PN}-r2 ${PN}
+ fi
+
+ if use test; then
+ # Preventing tests from being installed in the first place is a moving target,
+ # just axe them all afterwards.
+ rm -rf \
+ "${ED}"/usr/libexec/installed-tests \
+ "${ED}"/usr/share/fwupd/device-tests \
+ "${ED}"/usr/share/fwupd/host-emulate.d/thinkpad-p1-iommu.json.gz \
+ "${ED}"/usr/share/fwupd/remotes.d/fwupd-tests.conf \
+ "${ED}"/usr/share/installed-tests \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ use minimal || udev_reload
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ use minimal || udev_reload
+}
diff --git a/sys-apps/fwupd/fwupd-1.9.6.ebuild b/sys-apps/fwupd/fwupd-1.9.6.ebuild
new file mode 100644
index 000000000000..76c999756943
--- /dev/null
+++ b/sys-apps/fwupd/fwupd-1.9.6.ebuild
@@ -0,0 +1,205 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 vala udev xdg
+
+DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
+HOMEPAGE="https://fwupd.org"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~loong ppc64 ~riscv x86"
+IUSE="amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc +gusb introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test test-full tpm uefi"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ ^^ ( elogind minimal systemd )
+ fastboot? ( gusb )
+ logitech? ( gusb )
+ minimal? ( !introspection )
+ modemmanager? ( gusb )
+ spi? ( lzma )
+ synaptics? ( gnutls )
+ test? ( archive gusb )
+ test-full? ( test )
+ uefi? ( gnutls )
+"
+RESTRICT="!test? ( test )"
+
+BDEPEND="$(vala_depend)
+ $(python_gen_cond_dep '
+ dev-python/jinja[${PYTHON_USEDEP}]
+ ')
+ >=dev-build/meson-0.60.0
+ virtual/pkgconfig
+ gtk-doc? (
+ $(python_gen_cond_dep '
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ ')
+ >=dev-util/gi-docgen-2021.1
+ )
+ bash-completion? ( >=app-shells/bash-completion-2.0 )
+ introspection? ( dev-libs/gobject-introspection )
+ test? (
+ net-libs/gnutls[tools]
+ test-full? ( dev-util/umockdev )
+ )
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ >=app-arch/gcab-1.0
+ app-arch/xz-utils
+ >=dev-libs/glib-2.68:2
+ >=dev-libs/json-glib-1.6.0
+ >=dev-libs/libgudev-232:=
+ >=dev-libs/libjcat-0.1.4[gpg,pkcs7]
+ >=dev-libs/libxmlb-0.3.6:=[introspection?]
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ ')
+ >=net-misc/curl-7.62.0
+ archive? ( app-arch/libarchive:= )
+ cbor? ( >=dev-libs/libcbor-0.7.0:= )
+ elogind? ( >=sys-auth/elogind-211 )
+ flashrom? ( >=sys-apps/flashrom-1.2-r3 )
+ gnutls? ( >=net-libs/gnutls-3.6.0 )
+ gusb? ( >=dev-libs/libgusb-0.3.8[introspection?] )
+ logitech? ( dev-libs/protobuf-c:= )
+ lzma? ( app-arch/xz-utils )
+ modemmanager? ( net-misc/modemmanager[mbim,qmi] )
+ policykit? ( >=sys-auth/polkit-0.114 )
+ sqlite? ( dev-db/sqlite )
+ systemd? ( >=sys-apps/systemd-211 )
+ tpm? ( app-crypt/tpm2-tss:= )
+ uefi? (
+ sys-apps/fwupd-efi
+ sys-boot/efibootmgr
+ sys-fs/udisks
+ sys-libs/efivar
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ sys-apps/dbus
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-libs/pango[introspection]
+ amdgpu? ( sys-kernel/linux-headers )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9.6-fragile_tests.patch
+)
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test-full && has sandbox ${FEATURES}; then
+ ewarn "Certain ${PN} tests are fragile with sandboxing enabled,"
+ ewarn "see https://github.com/fwupd/fwupd/issues/1414."
+ ewarn "When in doubt, emerge ${PN} with USE=-test-full."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ vala_setup
+
+ sed -e "/install_dir.*'doc'/s/doc/gtk-doc/" \
+ -i docs/meson.build || die
+
+ python_fix_shebang "${S}"/contrib/*.py
+}
+
+src_configure() {
+ local plugins=(
+ -Dplugin_gpio="enabled"
+ $(meson_feature amdgpu plugin_amdgpu)
+ $(meson_feature amt plugin_intel_me)
+ $(meson_feature fastboot plugin_fastboot)
+ $(meson_feature flashrom plugin_flashrom)
+ $(meson_feature gusb plugin_uf2)
+ $(meson_feature logitech plugin_logitech_bulkcontroller)
+ $(meson_feature modemmanager plugin_modem_manager)
+ $(meson_feature nvme plugin_nvme)
+ $(meson_use spi plugin_intel_spi)
+ $(meson_feature synaptics plugin_synaptics_mst)
+ $(meson_feature synaptics plugin_synaptics_rmi)
+ $(meson_feature tpm plugin_tpm)
+ $(meson_feature uefi plugin_uefi_capsule)
+ $(meson_use uefi plugin_uefi_capsule_splash)
+ $(meson_feature uefi plugin_uefi_pk)
+ )
+ if use ppc64 || use riscv ; then
+ plugins+=( -Dplugin_msr="disabled" )
+ fi
+
+ local emesonargs=(
+ --localstatedir "${EPREFIX}"/var
+ -Dbuild="$(usex minimal standalone all)"
+ -Dconsolekit="disabled"
+ -Dcurl="enabled"
+ -Defi_binary="false"
+ -Dman="true"
+ -Dsupported_build="enabled"
+ -Dudevdir="${EPREFIX}$(get_udevdir)"
+ $(meson_feature archive libarchive)
+ $(meson_use bash-completion bash_completion)
+ $(meson_feature bluetooth bluez)
+ $(meson_feature cbor)
+ $(meson_feature elogind)
+ $(meson_feature gnutls)
+ $(meson_feature gtk-doc docs)
+ $(meson_feature gusb)
+ $(meson_feature lzma)
+ $(meson_feature introspection)
+ $(meson_feature policykit polkit)
+ $(meson_feature sqlite)
+ $(meson_feature systemd)
+ $(meson_use test tests)
+ $(meson_use test-full)
+
+ ${plugins[@]}
+ )
+ use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
+ export CACHE_DIRECTORY="${T}"
+ meson_src_configure
+}
+
+src_test() {
+ LC_ALL="C" meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ if ! use minimal ; then
+ newinitd "${FILESDIR}"/${PN}-r2 ${PN}
+ fi
+
+ if use test; then
+ # Preventing tests from being installed in the first place is a moving target,
+ # just axe them all afterwards.
+ rm -rf "${ED}"/etc/fwupd/remotes.d/fwupd-tests.conf \
+ "${ED}"/usr/libexec/installed-tests \
+ "${ED}"/usr/share/fwupd/device-tests \
+ "${ED}"/usr/share/fwupd/host-emulate.d/thinkpad-p1-iommu.json.gz \
+ "${ED}"/usr/share/installed-tests \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ use minimal || udev_reload
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ use minimal || udev_reload
+}
diff --git a/sys-apps/fwupd/metadata.xml b/sys-apps/fwupd/metadata.xml
index 70be5575b0f1..37f757e41a8c 100644
--- a/sys-apps/fwupd/metadata.xml
+++ b/sys-apps/fwupd/metadata.xml
@@ -1,25 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
- <use>
- <flag name="agent">Enable update notification agent</flag>
- <flag name="amt">Build and install Intel AMT plugin</flag>
- <flag name="dell">Enable Dell-specific support.</flag>
- <flag name="gpg">Enable GPG support.</flag>
- <flag name="man">Build and install man pages</flag>
- <flag name="nvme">Build and install NVMe plugin</flag>
- <flag name="pkcs7">Enable PKCS7 verification support via <pkg>net-libs/gnutls</pkg></flag>
- <flag name="redfish">Install redfish plugin</flag>
- <flag name="synaptics">Install synaptics plugin</flag>
- <flag name="thunderbolt">Install Thunderbolt plugin</flag>
- <flag name="tpm">Install Trusted Platform Module plugin</flag>
- <flag name="uefi">Enable UEFI support</flag>
- </use>
- <upstream>
- <remote-id type="github">hughsie/fwupd</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <use>
+ <flag name="archive">Use <pkg>app-arch/libarchive</pkg> for archives support</flag>
+ <flag name="amdgpu">Build and install AMD dGPU (Navi3x and above) plugin</flag>
+ <flag name="amt">Build and install Intel AMT plugin</flag>
+ <flag name="cbor">Enable CBOR support for coSWID and uSWID via <pkg>dev-libs/libcbor</pkg></flag>
+ <flag name="fastboot">Build and install fastboot plugin</flag>
+ <flag name="flashrom">Enable flashrom plugin via <pkg>sys-apps/flashrom</pkg></flag>
+ <flag name="gusb">Enable <pkg>dev-libs/libgusb</pkg> support</flag>
+ <flag name="logitech">Build and install Logitech bulk controller plugin</flag>
+ <flag name="nvme">Build and install NVMe plugin</flag>
+ <flag name="modemmanager">Build and install Modem Manager plugin</flag>
+ <flag name="spi">Install Intel-SPI plugin</flag>
+ <flag name="synaptics">Install synaptics plugin</flag>
+ <flag name="test-full">Enable tests known not to play nicely with the sandbox</flag>
+ <flag name="tpm">Install Trusted Platform Module plugin</flag>
+ <flag name="uefi">Enable UEFI support</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://github.com/fwupd/fwupd/issues</bugs-to>
+ <remote-id type="github">fwupd/fwupd</remote-id>
+ <remote-id type="cpe">cpe:/a:fwupd:fwupd</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/fxload/fxload-20081013-r1.ebuild b/sys-apps/fxload/fxload-20081013-r1.ebuild
index be8b180ba2c6..eac58ae463f0 100644
--- a/sys-apps/fxload/fxload-20081013-r1.ebuild
+++ b/sys-apps/fxload/fxload-20081013-r1.ebuild
@@ -1,26 +1,26 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
-inherit eutils toolchain-funcs
+inherit toolchain-funcs
# source maintainers named it fxload-YYYY_MM_DD instead of fxload-YYYYMMDD
MY_P="${PN}-${PV:0:4}_${PV:4:2}_${PV:6:2}"
DESCRIPTION="USB firmware uploader"
HOMEPAGE="http://linux-hotplug.sourceforge.net/"
SRC_URI="mirror://sourceforge/linux-hotplug/${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_P}
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 hppa ~ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-S=${WORKDIR}/${MY_P}
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ppc ppc64 sparc x86"
src_prepare() {
+ default
+
sed -i \
- -e 's:$(CC) -o:$(CC) $(LDFLAGS) -o:' \
+ -e 's:$(CC) -o:$(CC) $(CPPFLAGS) $(LDFLAGS) -o:' \
Makefile || die
}
diff --git a/sys-apps/fxload/metadata.xml b/sys-apps/fxload/metadata.xml
index 21c3a638d6ee..eedf2dd53f53 100644
--- a/sys-apps/fxload/metadata.xml
+++ b/sys-apps/fxload/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/gawk/Manifest b/sys-apps/gawk/Manifest
index 58ba1b9d171d..6021ab2da4cd 100644
--- a/sys-apps/gawk/Manifest
+++ b/sys-apps/gawk/Manifest
@@ -1,3 +1,4 @@
-DIST gawk-4.2.1.tar.xz 2985412 BLAKE2B ea0635904ae8af8943d545b21affbfad64de5a688a615e22e1af2634583d0002094c0668c3260837184f965452ccf84141fff705bbf42d55b6d55c7516c24d8b SHA512 0e3006a795dc3ac91359a7d2590c0cccbfd39b18a1d491617d68505c55a2800355b1439050681b4fcacf65fb0d533151a046babe0fd774503037bab363ef2ae4
-DIST gawk-5.0.1.tar.xz 3136004 BLAKE2B 1dd8a9bca2488f2d3c946406b01fcbdce0487922ece49fe2121c39d6d10bcfcb6a056edbbf88ba6c22772ef88a250fc8ffcba33ead399c0d7c8f5d19d0e896d3 SHA512 ff9842a91035f843482d93eac8a35cddf2ce16acaa43a0112c1efff08802aebf705ee70d47eff74a190dca7be330c31f7204ad27cb63bdee65333f9b9c984212
-DIST gawk-5.1.0.tar.xz 3154564 BLAKE2B a969b03f45e1d830d2b3760d75530de97eb521a35ac448cf441d7fd2d1a8c1059bd9240cb9571f58ef6ec122864ced3d274a07453c3138177deda895ac3433d9 SHA512 971e6a7617eb051d587984f64be2ff830e49eb60721c3401e8944401e3c3a7cd3334f0334b6e28bfc9283aaff15d83b0933f1fd77b0f8c7059068fa3f94c3cb4
+DIST gawk-5.2.2.tar.xz 3402872 BLAKE2B 49dd69d3e2414867d60fe42b74b39bc6858114aeeb9305ade7bfd64f1933b3c93d59d127362b614cb4b73e29279ed3b4ea9fa0da94fce98ca9925980d17b5d0c SHA512 90611e4daba7226d5ce8230843bf479dc71c0101740c005d851ef7c5b935b6cd4c42089b858abc1619adc05ed25fc7234f993690a76d2ea0b8e61bcbb7dc5a58
+DIST gawk-5.2.2.tar.xz.sig 488 BLAKE2B ad737580d7eeb556187a3eeb269decb484398ca91b0fbf08da7f78bba92328ca2fb566b00f8e880fb7c5f0f956e49f8ab9fddc73209902c420666d5413e8a467 SHA512 563911c3771feddf64810ef2480705fd470c90380c0e258940cedeef3f15d594ef657ddab267a6d958321333d466b77c9b83be2392549c959245324950fb32ed
+DIST gawk-5.3.0.tar.xz 3436180 BLAKE2B 1bab754626a51679e4d6fe4552bc965f402a51d176eab30686bf19c74085fd15507b51514c3c46d38f68d3e98da4326c138411abe12e4d8793cec617b2533f3c SHA512 c274a62c7420e7b7769b8ed94db40024bd5917ff49bd50a77ad6df1f16ecf116968aaf85da94015479466bf5570b370b6fdd197f95212ae0c3509dfcb7d9e35a
+DIST gawk-5.3.0.tar.xz.sig 488 BLAKE2B 9d35eca94424cc39bb52b0b790e0db0b9ee51099c40da0a8be7bc60450d227735ba51dcfc10a08f6765d2037054cb9324f0fba100ea2ad08cf56dac1e2c11ac0 SHA512 b0fd75375bee6ca113bb99b07a868729bb90a50d06bc4ff124603594cd9ba564433f69a26e8d01c30f4e4fbfb70ecad2ffa14ed93142b9a1aab2e38ae71b7903
diff --git a/sys-apps/gawk/files/gawk-5.3.0-str2wstr.patch b/sys-apps/gawk/files/gawk-5.3.0-str2wstr.patch
new file mode 100644
index 000000000000..078ba8b1c746
--- /dev/null
+++ b/sys-apps/gawk/files/gawk-5.3.0-str2wstr.patch
@@ -0,0 +1,193 @@
+https://bugs.gentoo.org/921503
+https://lists.gnu.org/archive/html/bug-gawk/2024-01/msg00013.html
+https://git.savannah.gnu.org/cgit/gawk.git/commit/?h=gawk-5.3-stable&id=e05040b5d81b5a0e809fc56df2a7c3d654c77e1d
+
+From e05040b5d81b5a0e809fc56df2a7c3d654c77e1d Mon Sep 17 00:00:00 2001
+From: "Arnold D. Robbins" <arnold@skeeve.com>
+Date: Sun, 28 Jan 2024 20:24:09 +0200
+Subject: Bug fix in str2wstr.
+
+---
+ node.c | 26 ++++++++++++++------------
+ pc/Makefile.tst | 6 ++++++
+ test/Makefile.am | 5 ++++-
+ test/Makefile.in | 10 +++++++++-
+ test/Maketests | 5 +++++
+ test/match4.awk | 1 +
+ test/match4.ok | 1 +
+ 10 files changed, 56 insertions(+), 14 deletions(-)
+ create mode 100644 test/match4.awk
+ create mode 100644 test/match4.ok
+
+diff --git a/node.c b/node.c
+index de12f05..5aac5e8 100644
+--- a/node.c
++++ b/node.c
+@@ -816,6 +816,20 @@ str2wstr(NODE *n, size_t **ptr)
+ assert((n->flags & (STRING|STRCUR)) != 0);
+
+ /*
++ * For use by do_match, create and fill in an array.
++ * For each byte `i' in n->stptr (the original string),
++ * a[i] is equal to `j', where `j' is the corresponding wchar_t
++ * in the converted wide string.
++ *
++ * This is needed even for Nnull_string or Null_field.
++ *
++ * Create the array.
++ */
++ if (ptr != NULL) {
++ ezalloc(*ptr, size_t *, sizeof(size_t) * (n->stlen + 1), "str2wstr");
++ }
++
++ /*
+ * Don't convert global null string or global null field
+ * variables to a wide string. They are both zero-length anyway.
+ * This also avoids future double-free errors while releasing
+@@ -848,18 +862,6 @@ str2wstr(NODE *n, size_t **ptr)
+ emalloc(n->wstptr, wchar_t *, sizeof(wchar_t) * (n->stlen + 1), "str2wstr");
+ wsp = n->wstptr;
+
+- /*
+- * For use by do_match, create and fill in an array.
+- * For each byte `i' in n->stptr (the original string),
+- * a[i] is equal to `j', where `j' is the corresponding wchar_t
+- * in the converted wide string.
+- *
+- * Create the array.
+- */
+- if (ptr != NULL) {
+- ezalloc(*ptr, size_t *, sizeof(size_t) * (n->stlen + 1), "str2wstr");
+- }
+-
+ sp = n->stptr;
+ src_count = n->stlen;
+ memset(& mbs, 0, sizeof(mbs));
+diff --git a/pc/Makefile.tst b/pc/Makefile.tst
+index daf3c56..9ab61c7 100644
+--- a/pc/Makefile.tst
++++ b/pc/Makefile.tst
+@@ -180,6 +180,7 @@ BASIC_TESTS = \
+ substr swaplns synerr1 synerr2 synerr3 tailrecurse tradanch \
+ trailbs tweakfld uninit2 uninit3 uninit4 uninit5 uninitialized \
+ unterm uparrfs uplus wideidx wideidx2 widesub widesub2 widesub3 \
++ match4 \
+ widesub4 wjposer1 zero2 zeroe0 zeroflag
+
+ UNIX_TESTS = \
+@@ -2602,6 +2603,11 @@ widesub3:
+ AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
++match4:
++ @echo $@
++ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
++ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
++
+ widesub4:
+ @echo $@ $(ZOS_FAIL)
+ @-[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=ENU_USA.1252; export GAWKLOCALE; \
+diff --git a/test/Makefile.am b/test/Makefile.am
+index a876b3a..e1e1f3f 100644
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -1,7 +1,7 @@
+ #
+ # test/Makefile.am --- automake input file for gawk
+ #
+-# Copyright (C) 1988-2023 the Free Software Foundation, Inc.
++# Copyright (C) 1988-2024 the Free Software Foundation, Inc.
+ #
+ # This file is part of GAWK, the GNU implementation of the
+ # AWK Programming Language.
+@@ -763,6 +763,8 @@ EXTRA_DIST = \
+ match3.awk \
+ match3.in \
+ match3.ok \
++ match4.awk \
++ match4.ok \
+ math.awk \
+ math.ok \
+ mbfw1.awk \
+@@ -1544,6 +1546,7 @@ BASIC_TESTS = \
+ substr swaplns synerr1 synerr2 synerr3 tailrecurse tradanch \
+ trailbs tweakfld uninit2 uninit3 uninit4 uninit5 uninitialized \
+ unterm uparrfs uplus wideidx wideidx2 widesub widesub2 widesub3 \
++ match4 \
+ widesub4 wjposer1 zero2 zeroe0 zeroflag
+
+ UNIX_TESTS = \
+diff --git a/test/Makefile.in b/test/Makefile.in
+index 1ef143f..681a85b 100644
+--- a/test/Makefile.in
++++ b/test/Makefile.in
+@@ -17,7 +17,7 @@
+ #
+ # test/Makefile.am --- automake input file for gawk
+ #
+-# Copyright (C) 1988-2023 the Free Software Foundation, Inc.
++# Copyright (C) 1988-2024 the Free Software Foundation, Inc.
+ #
+ # This file is part of GAWK, the GNU implementation of the
+ # AWK Programming Language.
+@@ -1027,6 +1027,8 @@ EXTRA_DIST = \
+ match3.awk \
+ match3.in \
+ match3.ok \
++ match4.awk \
++ match4.ok \
+ math.awk \
+ math.ok \
+ mbfw1.awk \
+@@ -1808,6 +1810,7 @@ BASIC_TESTS = \
+ substr swaplns synerr1 synerr2 synerr3 tailrecurse tradanch \
+ trailbs tweakfld uninit2 uninit3 uninit4 uninit5 uninitialized \
+ unterm uparrfs uplus wideidx wideidx2 widesub widesub2 widesub3 \
++ match4 \
+ widesub4 wjposer1 zero2 zeroe0 zeroflag
+
+ UNIX_TESTS = \
+@@ -4414,6 +4417,11 @@ widesub3:
+ AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
++match4:
++ @echo $@
++ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
++ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
++
+ widesub4:
+ @echo $@ $(ZOS_FAIL)
+ @-[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
+diff --git a/test/Maketests b/test/Maketests
+index bac220f..9a00140 100644
+--- a/test/Maketests
++++ b/test/Maketests
+@@ -1288,6 +1288,11 @@ widesub3:
+ AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
++match4:
++ @echo $@
++ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
++ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
++
+ widesub4:
+ @echo $@ $(ZOS_FAIL)
+ @-[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
+diff --git a/test/match4.awk b/test/match4.awk
+new file mode 100644
+index 0000000..e50150a
+--- /dev/null
++++ b/test/match4.awk
+@@ -0,0 +1 @@
++BEGIN { print match (m, /a?/) }
+diff --git a/test/match4.ok b/test/match4.ok
+new file mode 100644
+index 0000000..d00491f
+--- /dev/null
++++ b/test/match4.ok
+@@ -0,0 +1 @@
++1
+--
+cgit v1.1
diff --git a/sys-apps/gawk/gawk-4.2.1-r1.ebuild b/sys-apps/gawk/gawk-4.2.1-r1.ebuild
deleted file mode 100644
index 807061875e31..000000000000
--- a/sys-apps/gawk/gawk-4.2.1-r1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs multilib
-
-DESCRIPTION="GNU awk pattern-matching language"
-HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html"
-SRC_URI="mirror://gnu/gawk/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="mpfr nls readline"
-
-RDEPEND="
- dev-libs/gmp:0=
- mpfr? ( dev-libs/mpfr:0= )
- readline? ( sys-libs/readline:0= )
-"
-DEPEND="${RDEPEND}
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- default
-
- # use symlinks rather than hardlinks, and disable version links
- sed -i \
- -e '/^LN =/s:=.*:= $(LN_S):' \
- -e '/install-exec-hook:/s|$|\nfoo:|' \
- Makefile.in doc/Makefile.in || die
- sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in #413327
- # fix standards conflict on Solaris
- if [[ ${CHOST} == *-solaris* ]] ; then
- sed -i \
- -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \
- -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \
- extension/inplace.c || die
- fi
-}
-
-src_configure() {
- export ac_cv_libsigsegv=no
- local myeconfargs=(
- --libexec='$(libdir)/misc'
- $(use_with mpfr)
- $(use_enable nls)
- $(use_with readline)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- rm -rf README_d # automatic dodocs barfs
- default
-
- # Install headers
- insinto /usr/include/awk
- doins *.h
- rm "${ED%/}"/usr/include/awk/config.h || die
-}
-
-pkg_postinst() {
- # symlink creation here as the links do not belong to gawk, but to any awk
- if has_version app-admin/eselect \
- && has_version app-eselect/eselect-awk ; then
- eselect awk update ifunset
- else
- local l
- for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk; do
- [[ -e ${l} && ! -e ${l/gawk/awk} ]] && ln -s "${l##*/}" "${l/gawk/awk}"
- done
- [[ ! -e ${EROOT}/bin/awk ]] && ln -s "../usr/bin/gawk" "${EROOT}/bin/awk"
- fi
-}
-
-pkg_postrm() {
- if has_version app-admin/eselect \
- && has_version app-eselect/eselect-awk ; then
- eselect awk update ifunset
- fi
-}
diff --git a/sys-apps/gawk/gawk-5.0.1.ebuild b/sys-apps/gawk/gawk-5.0.1.ebuild
deleted file mode 100644
index 8ae898e71e82..000000000000
--- a/sys-apps/gawk/gawk-5.0.1.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs multilib
-
-DESCRIPTION="GNU awk pattern-matching language"
-HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html"
-SRC_URI="mirror://gnu/gawk/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="mpfr nls readline"
-
-RDEPEND="
- dev-libs/gmp:0=
- mpfr? ( dev-libs/mpfr:0= )
- readline? ( sys-libs/readline:0= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- nls? ( sys-devel/gettext )
-"
-
-src_prepare() {
- default
-
- # use symlinks rather than hardlinks, and disable version links
- sed -i \
- -e '/^LN =/s:=.*:= $(LN_S):' \
- -e '/install-exec-hook:/s|$|\nfoo:|' \
- Makefile.in doc/Makefile.in || die
- sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die #413327
- # fix standards conflict on Solaris
- if [[ ${CHOST} == *-solaris* ]] ; then
- sed -i \
- -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \
- -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \
- extension/inplace.c || die
- fi
-}
-
-src_configure() {
- export ac_cv_libsigsegv=no
- local myeconfargs=(
- --libexec='$(libdir)/misc'
- $(use_with mpfr)
- $(use_enable nls)
- $(use_with readline)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- rm -rf README_d # automatic dodocs barfs
- default
-
- # Install headers
- insinto /usr/include/awk
- doins *.h
- rm "${ED}"/usr/include/awk/config.h || die
-}
-
-pkg_postinst() {
- # symlink creation here as the links do not belong to gawk, but to any awk
- if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
- eselect awk update ifunset
- else
- local l
- for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do
- if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then
- ln -s "${l##*/}" "${l/gawk/awk}" || die
- fi
- done
- if ! [[ -e ${EROOT}/bin/awk ]] ; then
- ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die
- fi
- fi
-}
-
-pkg_postrm() {
- if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
- eselect awk update ifunset
- fi
-}
diff --git a/sys-apps/gawk/gawk-5.1.0.ebuild b/sys-apps/gawk/gawk-5.1.0.ebuild
deleted file mode 100644
index 2890b2ba4deb..000000000000
--- a/sys-apps/gawk/gawk-5.1.0.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs multilib
-
-DESCRIPTION="GNU awk pattern-matching language"
-HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html"
-SRC_URI="mirror://gnu/gawk/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="mpfr nls readline"
-
-RDEPEND="
- dev-libs/gmp:0=
- mpfr? ( dev-libs/mpfr:0= )
- readline? ( sys-libs/readline:0= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- >=sys-apps/texinfo-6.7
- >=sys-devel/bison-3.5.4
- nls? ( sys-devel/gettext )
-"
-
-src_prepare() {
- default
-
- # use symlinks rather than hardlinks, and disable version links
- sed -i \
- -e '/^LN =/s:=.*:= $(LN_S):' \
- -e '/install-exec-hook:/s|$|\nfoo:|' \
- Makefile.in doc/Makefile.in || die
- sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die #413327
- # fix standards conflict on Solaris
- if [[ ${CHOST} == *-solaris* ]] ; then
- sed -i \
- -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \
- -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \
- extension/inplace.c || die
- fi
-}
-
-src_configure() {
- export ac_cv_libsigsegv=no
- local myeconfargs=(
- --libexec='$(libdir)/misc'
- $(use_with mpfr)
- $(use_enable nls)
- $(use_with readline)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- rm -rf README_d # automatic dodocs barfs
- default
-
- # Install headers
- insinto /usr/include/awk
- doins *.h
- rm "${ED}"/usr/include/awk/config.h || die
-}
-
-pkg_postinst() {
- # symlink creation here as the links do not belong to gawk, but to any awk
- if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
- eselect awk update ifunset
- else
- local l
- for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do
- if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then
- ln -s "${l##*/}" "${l/gawk/awk}" || die
- fi
- done
- if ! [[ -e ${EROOT}/bin/awk ]] ; then
- ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die
- fi
- fi
-}
-
-pkg_postrm() {
- if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
- eselect awk update ifunset
- fi
-}
diff --git a/sys-apps/gawk/gawk-5.2.2.ebuild b/sys-apps/gawk/gawk-5.2.2.ebuild
new file mode 100644
index 000000000000..41e94d8b51af
--- /dev/null
+++ b/sys-apps/gawk/gawk-5.2.2.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+#GAWK_IS_BETA=yes
+
+DESCRIPTION="GNU awk pattern-matching language"
+HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html"
+
+if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then
+ if [[ ${PV} == *_beta* ]] ; then
+ # Beta versioning is sometimes for the release prior, e.g.
+ # 5.2.1_beta is labelled upstream as 5.2.0b.
+ MY_PV=${PV/_beta/b}
+ MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV})
+ MY_P=${PN}-${MY_PV}
+
+ S="${WORKDIR}"/${MY_P}
+ else
+ MY_P=${P}
+ fi
+
+ SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gawk.asc
+ inherit verify-sig
+
+ SRC_URI="mirror://gnu/gawk/${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )"
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+# While tempting to enable mpfr by default as e.g. Fedora do, as of 5.2.x,
+# MPFR support is "on parole" and may be removed:
+# https://www.gnu.org/software/gawk/manual/html_node/MPFR-On-Parole.html.
+IUSE="mpfr pma nls readline"
+
+RDEPEND="
+ mpfr? (
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ )
+ readline? ( sys-libs/readline:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-apps/texinfo-6.7
+ >=sys-devel/bison-3.5.4
+ nls? ( sys-devel/gettext )
+"
+
+if [[ ${GAWK_IS_BETA} != yes ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )"
+fi
+
+src_prepare() {
+ default
+
+ # Use symlinks rather than hardlinks, and disable version links
+ sed -i \
+ -e '/^LN =/s:=.*:= $(LN_S):' \
+ -e '/install-exec-hook:/s|$|\nfoo:|' \
+ Makefile.in doc/Makefile.in || die
+
+ # bug #413327
+ sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die
+
+ # Fix standards conflict on Solaris
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ sed -i \
+ -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \
+ -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \
+ extension/inplace.c || die
+ fi
+}
+
+src_configure() {
+ # Avoid automagic dependency on libsigsegv
+ export ac_cv_libsigsegv=no
+
+ # README says gawk may not work properly if built with non-Bison.
+ # We already BDEPEND on Bison, so just unset YACC rather than
+ # guessing if we need to do yacc.bison or bison -y.
+ unset YACC
+
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ --libexec='$(libdir)/misc'
+ $(use_with mpfr)
+ $(use_enable nls)
+ $(use_enable pma)
+ $(use_with readline)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ # Automatic dodocs barfs
+ rm -rf README_d || die
+
+ default
+
+ # Install headers
+ insinto /usr/include/awk
+ doins *.h
+ rm "${ED}"/usr/include/awk/config.h || die
+}
+
+pkg_postinst() {
+ # Symlink creation here as the links do not belong to gawk, but to any awk
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
+ eselect awk update ifunset
+ else
+ local l
+ for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do
+ if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then
+ ln -s "${l##*/}" "${l/gawk/awk}" || die
+ fi
+ done
+
+ if ! [[ -e ${EROOT}/bin/awk ]] ; then
+ # /bin might not exist yet (stage1)
+ [[ -d "${EROOT}/bin" ]] || mkdir "${EROOT}/bin" || die
+
+ ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die
+ fi
+ fi
+}
+
+pkg_postrm() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
+ eselect awk update ifunset
+ fi
+}
diff --git a/sys-apps/gawk/gawk-5.3.0-r1.ebuild b/sys-apps/gawk/gawk-5.3.0-r1.ebuild
new file mode 100644
index 000000000000..7c1825b7c51d
--- /dev/null
+++ b/sys-apps/gawk/gawk-5.3.0-r1.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+#GAWK_IS_BETA=yes
+
+DESCRIPTION="GNU awk pattern-matching language"
+HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html"
+
+if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then
+ if [[ ${PV} == *_beta* ]] ; then
+ # Beta versioning is sometimes for the release prior, e.g.
+ # 5.2.1_beta is labelled upstream as 5.2.0b.
+ MY_PV=${PV/_beta/b}
+ MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV})
+ MY_P=${PN}-${MY_PV}
+
+ S="${WORKDIR}"/${MY_P}
+ else
+ MY_P=${P}
+ fi
+
+ SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gawk.asc
+ inherit verify-sig
+
+ SRC_URI="mirror://gnu/gawk/${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )"
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+# While tempting to enable mpfr by default as e.g. Fedora do, as of 5.2.x,
+# MPFR support is "on parole" and may be removed:
+# https://www.gnu.org/software/gawk/manual/html_node/MPFR-On-Parole.html.
+IUSE="mpfr pma nls readline"
+
+RDEPEND="
+ mpfr? (
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ )
+ readline? ( sys-libs/readline:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-apps/texinfo-7.1
+ >=sys-devel/bison-3.5.4
+ nls? ( sys-devel/gettext )
+"
+
+if [[ ${GAWK_IS_BETA} != yes ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${P}-str2wstr.patch
+)
+
+src_prepare() {
+ default
+
+ # Use symlinks rather than hardlinks, and disable version links
+ sed -i \
+ -e '/^LN =/s:=.*:= $(LN_S):' \
+ -e '/install-exec-hook:/s|$|\nfoo:|' \
+ Makefile.in doc/Makefile.in || die
+
+ # bug #413327
+ sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die
+
+ # Fix standards conflict on Solaris
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ sed -i \
+ -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \
+ -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \
+ extension/inplace.c || die
+ fi
+}
+
+src_configure() {
+ # README says gawk may not work properly if built with non-Bison.
+ # We already BDEPEND on Bison, so just unset YACC rather than
+ # guessing if we need to do yacc.bison or bison -y.
+ unset YACC
+
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ --libexec='$(libdir)/misc'
+ $(use_with mpfr)
+ $(use_enable nls)
+ $(use_enable pma)
+ $(use_with readline)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ # Automatic dodocs barfs
+ rm -rf README_d || die
+
+ default
+
+ # Install headers
+ insinto /usr/include/awk
+ doins *.h
+ rm "${ED}"/usr/include/awk/config.h || die
+}
+
+pkg_postinst() {
+ # Symlink creation here as the links do not belong to gawk, but to any awk
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
+ eselect awk update ifunset
+ else
+ local l
+ for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do
+ if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then
+ ln -s "${l##*/}" "${l/gawk/awk}" || die
+ fi
+ done
+
+ if ! [[ -e ${EROOT}/bin/awk ]] ; then
+ # /bin might not exist yet (stage1)
+ [[ -d "${EROOT}/bin" ]] || mkdir "${EROOT}/bin" || die
+
+ ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die
+ fi
+ fi
+}
+
+pkg_postrm() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then
+ eselect awk update ifunset
+ fi
+}
diff --git a/sys-apps/gawk/metadata.xml b/sys-apps/gawk/metadata.xml
index 3fa1f9889991..66b0edfce4ae 100644
--- a/sys-apps/gawk/metadata.xml
+++ b/sys-apps/gawk/metadata.xml
@@ -1,11 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="mpfr">use mpfr for high precision arithmetic (-M / --bignum)</flag>
-</use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="mpfr">
+ Use <pkg>dev-libs/mpfr</pkg> for high precision arithmetic (-M / --bignum)
+ </flag>
+ <flag name="pma">
+ Experimental Persistent Memory Allocator (PMA) support which allows persistence
+ of variables, arrays, and user-defined functions across runs.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="savannah">gawk</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/gcp/Manifest b/sys-apps/gcp/Manifest
deleted file mode 100644
index 95ba1c716350..000000000000
--- a/sys-apps/gcp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gcp-0.2.1.tar.gz 33098 BLAKE2B 9affaf87db722c1e35fe71acf93521753a4372d42bf33892cde8605b17972ac46f616177114c5ccc36fad64011ae881ecc9382c79311dbca93ebedd04e688526 SHA512 900e08554e8f87e9572c52381c83bdcd89f02cab4fbf51335ddb81796057fa8bec156cf3ddab8712ed2c55ca7d6d0e1c209939ccead9bf7693d76bf882807017
diff --git a/sys-apps/gcp/files/gcp-0.2.1-gentoo-fhs.patch b/sys-apps/gcp/files/gcp-0.2.1-gentoo-fhs.patch
deleted file mode 100644
index 78ddb5d09617..000000000000
--- a/sys-apps/gcp/files/gcp-0.2.1-gentoo-fhs.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -41,9 +41,8 @@
- # 'console_scripts': ['gcp=gcp:main'],
- # },
- data_files=[
-- ('man/man1', ["gcp.1"]),
-+ ('share/man/man1', ["gcp.1"]),
- ('share/locale/fr/LC_MESSAGES', ['i18n/fr/LC_MESSAGES/gcp.mo']),
-- ('share/doc/%s' % name, ['CHANGELOG', 'LICENSE', 'README.md']),
- ],
- install_requires=['PyGObject', 'dbus-python'],
- python_requires='>=3',
diff --git a/sys-apps/gcp/gcp-0.2.1.ebuild b/sys-apps/gcp/gcp-0.2.1.ebuild
deleted file mode 100644
index a3cfc30ce969..000000000000
--- a/sys-apps/gcp/gcp-0.2.1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit distutils-r1 virtualx
-
-DESCRIPTION="File copying utility with progress and I/O indicator"
-HOMEPAGE="https://code.lm7.fr/mcy/gcp"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- dev-python/dbus-python[${PYTHON_USEDEP}]
- dev-python/progressbar[${PYTHON_USEDEP}]
- dev-python/pygobject:3[${PYTHON_USEDEP}]"
-
-distutils_enable_tests unittest
-
-PATCHES=( "${FILESDIR}"/${PN}-0.2.1-gentoo-fhs.patch )
-
-src_test() {
- export $(dbus-launch)
- virtx distutils-r1_src_test
- kill -9 "${DBUS_SESSION_BUS_PID}"
-}
-
-python_test() {
- local -x PATH="${S}:${PATH}"
- "${EPYTHON}" test/test_gcp.py || die "Tests fail with ${EPYTHON}"
-}
diff --git a/sys-apps/gcp/metadata.xml b/sys-apps/gcp/metadata.xml
deleted file mode 100644
index e25cd064c44a..000000000000
--- a/sys-apps/gcp/metadata.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>soap@gentoo.org</email>
- </maintainer>
-</pkgmetadata>
diff --git a/sys-apps/gentoo-functions/Manifest b/sys-apps/gentoo-functions/Manifest
index 331a18a8dda2..28260cfbf702 100644
--- a/sys-apps/gentoo-functions/Manifest
+++ b/sys-apps/gentoo-functions/Manifest
@@ -1 +1,2 @@
-DIST gentoo-functions-0.13.tar.gz 11334 BLAKE2B 740e6d950b62b777e533d16b707cbf6f9ab0e9de4c92c5e755af186571539949017aadcd7d428b1e635f43052a575f89787b3e92087675b600a6b7350fda24a6 SHA512 61185197e1eb4155d0db9ba024dcb1b9eb0d272e3369f986668634012e35b57c3cdcd7beecd4714b9b48a0e44e8bb73472713949e16827aa05c055ec83d537dd
+DIST gentoo-functions-0.19.tar.bz2 12079 BLAKE2B be0a3a54d4dee1755866047b670a69cd6fec368239123c3f0c08180b79a33c20147bca0e35e568faef6877513551e731bdf0c181aeb0460f6574d2d708219373 SHA512 2674d3fe5724cc6d685ae58bf0ee33f4a1bdba2c5e5809cfb193fd0a710d4678c2d9392c2c62d2321cf455f524950266dc1629ab684fe46632d179e539d5a39e
+DIST gentoo-functions-1.0.tar.bz2 18066 BLAKE2B a843de65d5d8f93396713dd5c80377dad478482d5749736ec3a08e0d0cc40f1a2ce5c967282b8060452d73f6377590f06e5c2a12cdfc753e7f6a18754cde4997 SHA512 057a7159a613108710a40f2ca54403adf64ab9649732be49d3a72314e2ca3c65d7a9093168e26ec12814203e1fe14cc1fc5cf2cefa2f923ec8bb714972d20f55
diff --git a/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild b/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild
deleted file mode 100644
index a6af72821bb5..000000000000
--- a/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2014-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
-else
- SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-fi
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="base functions required by all Gentoo systems"
-HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE=""
-
-src_configure() {
- tc-export CC
- append-lfs-flags
- export ROOTPREFIX="${EPREFIX}"
- export PREFIX="${EPREFIX}/usr"
-}
diff --git a/sys-apps/gentoo-functions/gentoo-functions-0.19.ebuild b/sys-apps/gentoo-functions/gentoo-functions-0.19.ebuild
new file mode 100644
index 000000000000..39769eaa9170
--- /dev/null
+++ b/sys-apps/gentoo-functions/gentoo-functions-0.19.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2014-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+inherit toolchain-funcs flag-o-matic
+
+DESCRIPTION="Base functions required by all Gentoo systems"
+HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+# Specifically needs GNU find, as well.
+RDEPEND=">=sys-apps/findutils-4.9"
+
+src_configure() {
+ tc-export CC
+ append-lfs-flags
+ export ROOTPREFIX="${EPREFIX}"
+ export PREFIX="${EPREFIX}/usr"
+}
diff --git a/sys-apps/gentoo-functions/gentoo-functions-1.0.ebuild b/sys-apps/gentoo-functions/gentoo-functions-1.0.ebuild
new file mode 100644
index 000000000000..8df3a1e88bad
--- /dev/null
+++ b/sys-apps/gentoo-functions/gentoo-functions-1.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2014-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+inherit meson
+
+DESCRIPTION="Base functions required by all Gentoo systems"
+HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git"
+
+LICENSE="GPL-2 public-domain"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Specifically needs GNU find, as well.
+RDEPEND=">=sys-apps/findutils-4.9"
+
+src_configure() {
+ local emesonargs=(
+ # Deliberately avoid /usr as consumers assume we're at /lib/gentoo.
+ --prefix="${EPREFIX:-/}"
+ --mandir="${EPREFIX}/usr/share/man"
+ $(meson_use test tests)
+ )
+
+ meson_src_configure
+}
diff --git a/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild b/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild
index 04f1a329e9ec..54a24d65f0a1 100644
--- a/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild
+++ b/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild
@@ -1,28 +1,36 @@
-# Copyright 2014-2020 Gentoo Authors
+# Copyright 2014-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
else
- SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+ SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
-inherit toolchain-funcs flag-o-matic
+inherit meson
-DESCRIPTION="base functions required by all Gentoo systems"
+DESCRIPTION="Base functions required by all Gentoo systems"
HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git"
-LICENSE="GPL-2"
+LICENSE="GPL-2 public-domain"
SLOT="0"
-IUSE=""
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Specifically needs GNU find, as well.
+RDEPEND=">=sys-apps/findutils-4.9"
src_configure() {
- tc-export CC
- append-lfs-flags
- export ROOTPREFIX="${EPREFIX}"
- export PREFIX="${EPREFIX}/usr"
+ local emesonargs=(
+ # Deliberately avoid /usr as consumers assume we're at /lib/gentoo.
+ --prefix="${EPREFIX:-/}"
+ --mandir="${EPREFIX}/usr/share/man"
+ $(meson_use test tests)
+ )
+
+ meson_src_configure
}
diff --git a/sys-apps/gentoo-functions/metadata.xml b/sys-apps/gentoo-functions/metadata.xml
index 72a9e91e6086..8107c73dd794 100644
--- a/sys-apps/gentoo-functions/metadata.xml
+++ b/sys-apps/gentoo-functions/metadata.xml
@@ -1,17 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>williamh@gentoo.org</email>
-</maintainer>
-<maintainer type="person">
- <email>blueness@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="github">gentoo/gentoo-functions</remote-id>
-</upstream>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gentoo">proj/gentoo-functions</remote-id>
+ <remote-id type="github">gentoo/gentoo-functions</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/gentoo-systemd-integration/Manifest b/sys-apps/gentoo-systemd-integration/Manifest
index 16f6be65ab64..86c5768d727b 100644
--- a/sys-apps/gentoo-systemd-integration/Manifest
+++ b/sys-apps/gentoo-systemd-integration/Manifest
@@ -1,2 +1 @@
-DIST gentoo-systemd-integration-7.tar.gz 64243 BLAKE2B 389c6627af6eca9b4a0854d35751a8cb45cdb2795c7b621e96e9d5bcc13a80fe1cb109c0cb2bfd9d33f7642fd08198a0afbd5b4e5956ea6ba8dc89cf4635d9c0 SHA512 cd47caa01d73da57998b6b37d89cbeb53fa722c7f4a31bb03d03762350490cde1db3ce06090df6b6ff25c1cafb40f6c2186efbd52156ebc6d078b4a59d6fef52
-DIST gentoo-systemd-integration-8.tar.bz2 53734 BLAKE2B 711f1f6603fa40e81fe32809a32f61486ab068b1f636502ac36d58e4c204b5f0d46f51a6624f134a457f246b520614213cf45cc5397de769b315e01e32720bcf SHA512 373892ca9ae8845673f9ddad74e0be0b71af944e109adf0d2ce8e54a9c24ffff5e90cfa92e74b7abc1e7d7b1598404258b90b549697bde28a1025a2d974e991f
+DIST gentoo-systemd-integration-9.tar.gz 65696 BLAKE2B 7d2105e37ff53d48e312b78a971f16124df1d3a1f99ae37eb757e4be31663eee15ba1a9fb31ef31250c79f902f7a00e1de84030f3fb67e41ab2243d58deabcb6 SHA512 e4810e74c713793f1e5aca7f025780c32e8f0fe404bf74b65263bfaeff1ae1398551fdff7de37a4050f0e48d5e0b90525217f5b3caa18111ab1981f57f41fc18
diff --git a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-7.ebuild b/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-7.ebuild
deleted file mode 100644
index cf3c9066f0cd..000000000000
--- a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-7.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-systemd-integration.git"
- inherit autotools git-r3
-else
- SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
-fi
-
-inherit systemd
-
-DESCRIPTION="systemd integration files for Gentoo"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Systemd"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE=""
-
-RDEPEND=">=sys-apps/systemd-207
- !sys-fs/eudev
- !sys-fs/udev"
-DEPEND=">=sys-apps/systemd-207
- virtual/pkgconfig"
-
-if [[ ${PV} == 9999 ]]; then
- DEPEND+=" sys-devel/systemd-m4"
-fi
-
-src_prepare() {
- default
- [[ ${PV} != 9999 ]] || eautoreconf
-}
diff --git a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-8.ebuild b/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-8.ebuild
deleted file mode 100644
index 6d20838c7866..000000000000
--- a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-8.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-systemd-integration.git"
- inherit autotools git-r3
-else
- SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 sparc x86"
-fi
-
-inherit systemd
-
-DESCRIPTION="systemd integration files for Gentoo"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Systemd"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE=""
-
-RDEPEND=">=sys-apps/systemd-207
- !sys-fs/eudev
- !sys-fs/udev"
-DEPEND=">=sys-apps/systemd-207"
-BDEPEND="virtual/pkgconfig"
-
-src_prepare() {
- default
- [[ ${PV} != 9999 ]] || eautoreconf
-}
diff --git a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9.ebuild b/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9.ebuild
new file mode 100644
index 000000000000..0023f2d5ed9d
--- /dev/null
+++ b/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2013-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd udev
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-systemd-integration.git"
+ inherit autotools git-r3
+else
+ SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+DESCRIPTION="systemd integration files for Gentoo"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Systemd"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE=""
+
+RDEPEND="acct-group/floppy
+ acct-group/usb
+ >=sys-apps/systemd-207
+ !sys-fs/eudev
+ !sys-fs/udev"
+DEPEND=">=sys-apps/systemd-207"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+ [[ ${PV} != 9999 ]] || eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ --with-systemdsystemgeneratordir="$(systemd_get_systemgeneratordir)"
+ --with-systemdsystempresetdir="$(systemd_get_systempresetdir)"
+ udevdir="${EPREFIX}$(get_udevdir)"
+ )
+ econf "${myconf[@]}"
+}
diff --git a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9999.ebuild b/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9999.ebuild
index 37315de4274a..693cb5671001 100644
--- a/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9999.ebuild
+++ b/sys-apps/gentoo-systemd-integration/gentoo-systemd-integration-9999.ebuild
@@ -1,18 +1,18 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 2013-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
+
+inherit systemd udev
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-systemd-integration.git"
inherit autotools git-r3
else
SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
-inherit systemd
-
DESCRIPTION="systemd integration files for Gentoo"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Systemd"
@@ -20,13 +20,24 @@ LICENSE="BSD"
SLOT="0"
IUSE=""
-RDEPEND=">=sys-apps/systemd-207
+RDEPEND="acct-group/floppy
+ acct-group/usb
+ >=sys-apps/systemd-207
!sys-fs/eudev
!sys-fs/udev"
-DEPEND=">=sys-apps/systemd-207
- virtual/pkgconfig"
+DEPEND=">=sys-apps/systemd-207"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
default
[[ ${PV} != 9999 ]] || eautoreconf
}
+
+src_configure() {
+ local myconf=(
+ --with-systemdsystemgeneratordir="$(systemd_get_systemgeneratordir)"
+ --with-systemdsystempresetdir="$(systemd_get_systempresetdir)"
+ udevdir="${EPREFIX}$(get_udevdir)"
+ )
+ econf "${myconf[@]}"
+}
diff --git a/sys-apps/gentoo-systemd-integration/metadata.xml b/sys-apps/gentoo-systemd-integration/metadata.xml
index 0c04b426d911..f8eca82e557f 100644
--- a/sys-apps/gentoo-systemd-integration/metadata.xml
+++ b/sys-apps/gentoo-systemd-integration/metadata.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>systemd@gentoo.org</email>
<name>Gentoo systemd team</name>
</maintainer>
+ <stabilize-allarches/>
<upstream>
<remote-id type="bitbucket">mgorny/gentoo-systemd-integration</remote-id>
</upstream>
diff --git a/sys-apps/gnome-disk-utility/Manifest b/sys-apps/gnome-disk-utility/Manifest
index 86739cfc59f1..a5721cde5909 100644
--- a/sys-apps/gnome-disk-utility/Manifest
+++ b/sys-apps/gnome-disk-utility/Manifest
@@ -1,3 +1 @@
-DIST gnome-disk-utility-3.34.5.tar.xz 1385256 BLAKE2B d13202abf77c62cdbf483486d7ed8204016111042f29fc810f0a55a9cd3dd48553d523523348e73a5d3dc3c3133939577b14227f2f5122471076cd93482dde15 SHA512 04c1ba0865b3947cfc332e479faae7b404f70907d04446bfe471d8fa2f8f5c921b1d59ab0f82fad13f4183401dacf3a516ee7ec439e94dc3e073a8dd62021a51
-DIST gnome-disk-utility-3.36.1.tar.xz 1370848 BLAKE2B 02f642de5f0d320396bb5d9a258ab184955c412cc4351a77f60fe65a55818ea82a7f702b6646428f6aa44a88a08327aae4efda742956971c30aea10925cda169 SHA512 7565ef3647b4ae562af60e0cc70577268bb2baa54ece3859e5dfbd5e661a963788598768d591592d1dee3541673331f99c2bdb947a2a0af09cb6096887dc71fd
-DIST gnome-disk-utility-3.36.3.tar.xz 1373276 BLAKE2B 445aeaf68aa6b56dd6731e69e8fecdd1ca0385ba481bd0c8cd2ed411f7b117261f7acf47651f5354d0832141c479a6cd1b0727257d6f533159dd2d437edc59db SHA512 160283e1b0864e08ba6feb9368791e4cd3b287dc628553a69a1c276fa66252b37b1d906451b4342d953504a4669056aed0ebb3233ff61cbb761e612258ca078f
+DIST gnome-disk-utility-45.1.tar.xz 1774976 BLAKE2B cc7aa559acfec54df2adf725dc2c8e6918f148139fdc96d2378d178cb37a0cea1297a5db678c104cf7c103d7fc2e0d6e9dd965147a5afa10f217346ba5abe720 SHA512 30705f0b123738816e8f18c8951b1172f7b09b7c500aa8afa313b5bc1e7d2f248e086663dbe7ca4f44584bb8c2a09ca19ab6fbd11edabfc0f32a47dd939f2131
diff --git a/sys-apps/gnome-disk-utility/gnome-disk-utility-3.34.5.ebuild b/sys-apps/gnome-disk-utility/gnome-disk-utility-3.34.5.ebuild
deleted file mode 100644
index 19aa489c4f18..000000000000
--- a/sys-apps/gnome-disk-utility/gnome-disk-utility-3.34.5.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit gnome.org gnome2-utils meson xdg
-
-DESCRIPTION="Disk Utility for GNOME using udisks"
-HOMEPAGE="https://wiki.gnome.org/Apps/Disks"
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="fat elogind gnome systemd"
-REQUIRED_USE="?? ( elogind systemd )"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-
-DEPEND="
- >=media-libs/libdvdread-4.2.0:0=
- >=dev-libs/glib-2.31:2
- >=x11-libs/gtk+-3.16.0:3
- >=media-libs/libcanberra-0.1[gtk3]
- >=app-arch/xz-utils-5.0.5
- >=x11-libs/libnotify-0.7:=
- >=app-crypt/libsecret-0.7
- >=dev-libs/libpwquality-1.0.0
- >=sys-fs/udisks-2.7.6:2
- elogind? ( >=sys-auth/elogind-209 )
- systemd? ( >=sys-apps/systemd-209:0= )
-"
-RDEPEND="${DEPEND}
- x11-themes/adwaita-icon-theme
- fat? ( sys-fs/dosfstools )
- gnome? ( >=gnome-base/gnome-settings-daemon-3.8 )
-"
-# libxml2 for xml-stripblanks in gresource
-BDEPEND="
- dev-libs/libxml2:2
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/glib-utils
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-"
-
-src_configure() {
- local emesonargs=(
- -Dlogind=$(usex systemd libsystemd $(usex elogind libelogind none))
- $(meson_use gnome gsd_plugin)
- -Dman=true
- )
- meson_src_configure
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- gnome2_schemas_update
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_schemas_update
-}
diff --git a/sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.1.ebuild b/sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.1.ebuild
deleted file mode 100644
index 6f3bb0f36d10..000000000000
--- a/sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit gnome.org gnome2-utils meson xdg
-
-DESCRIPTION="Disk Utility for GNOME using udisks"
-HOMEPAGE="https://wiki.gnome.org/Apps/Disks"
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="fat elogind gnome systemd"
-REQUIRED_USE="?? ( elogind systemd )"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-
-DEPEND="
- >=media-libs/libdvdread-4.2.0:0=
- >=dev-libs/glib-2.31:2
- >=x11-libs/gtk+-3.16.0:3
- >=media-libs/libcanberra-0.1[gtk3]
- >=app-arch/xz-utils-5.0.5
- >=x11-libs/libnotify-0.7:=
- >=app-crypt/libsecret-0.7
- >=dev-libs/libpwquality-1.0.0
- >=sys-fs/udisks-2.7.6:2
- elogind? ( >=sys-auth/elogind-209 )
- systemd? ( >=sys-apps/systemd-209:0= )
-"
-RDEPEND="${DEPEND}
- x11-themes/adwaita-icon-theme
- fat? ( sys-fs/dosfstools )
- gnome? ( >=gnome-base/gnome-settings-daemon-3.8 )
-"
-# libxml2 for xml-stripblanks in gresource
-BDEPEND="
- dev-libs/libxml2:2
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/glib-utils
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-"
-
-src_configure() {
- local emesonargs=(
- -Dlogind=$(usex systemd libsystemd $(usex elogind libelogind none))
- $(meson_use gnome gsd_plugin)
- -Dman=true
- )
- meson_src_configure
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- gnome2_schemas_update
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_schemas_update
-}
diff --git a/sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.3.ebuild b/sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.3.ebuild
deleted file mode 100644
index 19aa489c4f18..000000000000
--- a/sys-apps/gnome-disk-utility/gnome-disk-utility-3.36.3.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit gnome.org gnome2-utils meson xdg
-
-DESCRIPTION="Disk Utility for GNOME using udisks"
-HOMEPAGE="https://wiki.gnome.org/Apps/Disks"
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="fat elogind gnome systemd"
-REQUIRED_USE="?? ( elogind systemd )"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-
-DEPEND="
- >=media-libs/libdvdread-4.2.0:0=
- >=dev-libs/glib-2.31:2
- >=x11-libs/gtk+-3.16.0:3
- >=media-libs/libcanberra-0.1[gtk3]
- >=app-arch/xz-utils-5.0.5
- >=x11-libs/libnotify-0.7:=
- >=app-crypt/libsecret-0.7
- >=dev-libs/libpwquality-1.0.0
- >=sys-fs/udisks-2.7.6:2
- elogind? ( >=sys-auth/elogind-209 )
- systemd? ( >=sys-apps/systemd-209:0= )
-"
-RDEPEND="${DEPEND}
- x11-themes/adwaita-icon-theme
- fat? ( sys-fs/dosfstools )
- gnome? ( >=gnome-base/gnome-settings-daemon-3.8 )
-"
-# libxml2 for xml-stripblanks in gresource
-BDEPEND="
- dev-libs/libxml2:2
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/glib-utils
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-"
-
-src_configure() {
- local emesonargs=(
- -Dlogind=$(usex systemd libsystemd $(usex elogind libelogind none))
- $(meson_use gnome gsd_plugin)
- -Dman=true
- )
- meson_src_configure
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- gnome2_schemas_update
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_schemas_update
-}
diff --git a/sys-apps/gnome-disk-utility/gnome-disk-utility-45.1.ebuild b/sys-apps/gnome-disk-utility/gnome-disk-utility-45.1.ebuild
new file mode 100644
index 000000000000..a533b433edab
--- /dev/null
+++ b/sys-apps/gnome-disk-utility/gnome-disk-utility-45.1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit gnome.org gnome2-utils meson xdg
+
+DESCRIPTION="Disk Utility for GNOME using udisks"
+HOMEPAGE="https://wiki.gnome.org/Apps/Disks"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="fat elogind gnome systemd"
+REQUIRED_USE="?? ( elogind systemd )"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
+
+DEPEND="
+ >=media-libs/libdvdread-4.2.0:0=
+ >=dev-libs/glib-2.31:2
+ >=x11-libs/gtk+-3.16.0:3
+ >=media-libs/libcanberra-0.1[gtk3]
+ >=gui-libs/libhandy-1.5.0:1
+ >=app-arch/xz-utils-5.0.5
+ >=x11-libs/libnotify-0.7
+ >=app-crypt/libsecret-0.7
+ >=dev-libs/libpwquality-1.0.0
+ >=sys-fs/udisks-2.7.6:2
+ elogind? ( >=sys-auth/elogind-209 )
+ systemd? ( >=sys-apps/systemd-209:0= )
+"
+RDEPEND="${DEPEND}
+ x11-themes/adwaita-icon-theme
+ fat? ( sys-fs/dosfstools )
+ gnome? ( >=gnome-base/gnome-settings-daemon-3.8 )
+"
+# libxml2 for xml-stripblanks in gresource
+BDEPEND="
+ dev-libs/libxml2:2
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dlogind=$(usex systemd libsystemd $(usex elogind libelogind none))
+ $(meson_use gnome gsd_plugin)
+ -Dman=true
+ )
+ meson_src_configure
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
diff --git a/sys-apps/gnome-disk-utility/metadata.xml b/sys-apps/gnome-disk-utility/metadata.xml
index 7a24d5bba6c4..1d4f056df527 100644
--- a/sys-apps/gnome-disk-utility/metadata.xml
+++ b/sys-apps/gnome-disk-utility/metadata.xml
@@ -1,17 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
-<use>
- <flag name="fat">Include FAT16/FAT32 support
- (<pkg>sys-fs/dosfstools</pkg>)</flag>
-</use>
-<longdescription lang="en">
- Disks provides an easy way to inspect, format, partition, and configure disks
- and block devices. Using Disks, you can view SMART data, manage devices,
- benchmark physical disks, and image USB sticks.
-</longdescription>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <use>
+ <flag name="fat">Include FAT16/FAT32 support (<pkg>sys-fs/dosfstools</pkg>)</flag>
+ </use>
+ <longdescription lang="en">
+ Disks provides an easy way to inspect, format, partition, and configure disks
+ and block devices. Using Disks, you can view SMART data, manage devices,
+ benchmark physical disks, and image USB sticks.
+ </longdescription>
+ <upstream>
+ <remote-id type="gnome-gitlab">GNOME/gnome-disk-utility</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/goawk/Manifest b/sys-apps/goawk/Manifest
new file mode 100644
index 000000000000..2bcb620c818f
--- /dev/null
+++ b/sys-apps/goawk/Manifest
@@ -0,0 +1,2 @@
+DIST goawk-1.25.0.tar.gz 1685633 BLAKE2B e435393c17e6502a8642af53982ce964aaba86c3f72d373f69c0d7a4c6c163b6801c952d5e2cc7f2704df233d3eac9e5db8beb3e9379d05940711021c83dc6e5 SHA512 33a00063f6b12359da8d9d2788d893d149f5c14105de8899f5e44c3146b6b30ce778529bbeaac142f2f7fdd23ac1037ea9ef902569b0189eab3deabff54785bd
+DIST goawk-1.26.0.tar.gz 1686762 BLAKE2B c627c9e182139d7c325f8da36985ddba596fd7c9900a6c59f6111ceb822231ed575ad133c1a242c668b4a8fd911889234c20d259a6d82830c09e2672f7751195 SHA512 d645aac503ad52e63fdc737aef45a52f58543554d7ecfad22a55b2626c509551cf09d091c7148762249ae57d97095c33ef8591684afdb410456d85240450c1fc
diff --git a/sys-apps/goawk/goawk-1.25.0.ebuild b/sys-apps/goawk/goawk-1.25.0.ebuild
new file mode 100644
index 000000000000..cc88fec202a1
--- /dev/null
+++ b/sys-apps/goawk/goawk-1.25.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="POSIX-compliant AWK interpreter written in Go, with CSV support"
+HOMEPAGE="https://github.com/benhoyt/goawk"
+SRC_URI="https://github.com/benhoyt/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+BDEPEND=">=dev-lang/go-1.16"
+
+src_compile() {
+ ego build
+}
+
+src_test() {
+ ego test
+}
+
+src_install() {
+ einstalldocs
+
+ dobin goawk
+}
diff --git a/sys-apps/goawk/goawk-1.26.0.ebuild b/sys-apps/goawk/goawk-1.26.0.ebuild
new file mode 100644
index 000000000000..9b774e46f9c9
--- /dev/null
+++ b/sys-apps/goawk/goawk-1.26.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="POSIX-compliant AWK interpreter written in Go, with CSV support"
+HOMEPAGE="https://github.com/benhoyt/goawk"
+SRC_URI="https://github.com/benhoyt/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+BDEPEND=">=dev-lang/go-1.16"
+
+src_compile() {
+ ego build
+}
+
+src_test() {
+ ego test
+}
+
+src_install() {
+ einstalldocs
+
+ dobin goawk
+}
diff --git a/sys-apps/goawk/metadata.xml b/sys-apps/goawk/metadata.xml
new file mode 100644
index 000000000000..65bd5f412a1b
--- /dev/null
+++ b/sys-apps/goawk/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">benhoyt/goawk</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/gpet/Manifest b/sys-apps/gpet/Manifest
deleted file mode 100644
index 74aba9944392..000000000000
--- a/sys-apps/gpet/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gpet-0.4.tar.bz2 352653 BLAKE2B e9bee8cd62332101afea95f427646dfc51a0dcbb95a5807b8cbd0503594090ef2ff5428876bd7d017465d8708e7c3a282602cc48edeb6cafd2976a51568a911d SHA512 e373d57ab67d71fb750ee9af93893d036ff26f764f317328117745a4440c0559c2356866c09acfe579473e950e003744ae0a308df3b284d46097dcfe967c122e
diff --git a/sys-apps/gpet/gpet-0.4.ebuild b/sys-apps/gpet/gpet-0.4.ebuild
deleted file mode 100644
index 70a0b701a922..000000000000
--- a/sys-apps/gpet/gpet-0.4.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="GTK+ based TOMOYO policy editor"
-HOMEPAGE="http://en.sourceforge.jp/projects/gpet/"
-SRC_URI="mirror://sourceforge.jp/gpet/53178/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- gnome-base/gconf
- sys-devel/gettext
- x11-libs/cairo
- x11-libs/gtk+:2
- x11-libs/pango"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-util/intltool
- virtual/pkgconfig"
diff --git a/sys-apps/gpet/metadata.xml b/sys-apps/gpet/metadata.xml
deleted file mode 100644
index ac3f3e7a0378..000000000000
--- a/sys-apps/gpet/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">gpet</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/gptfdisk/Manifest b/sys-apps/gptfdisk/Manifest
index 4e8e9cf566b0..50e5811b14e5 100644
--- a/sys-apps/gptfdisk/Manifest
+++ b/sys-apps/gptfdisk/Manifest
@@ -1,2 +1,2 @@
-DIST gptfdisk-1.0.4.tar.gz 204075 BLAKE2B 45be16bd4e8312e4797a70c07447702a7f966edec94a9e9e17cff89eee51bf33cb9418dcac2a103e68ea2ebb8df4e7a997fd006bfa4109cfd774838bd4bd7d19 SHA512 2df6db6974c06a6677a155d32566b8b46dad0df7781131e9018072db9acce5e41f6c4e7024b0e5f236dd43350a63572be34fb4b6fdb580cd9b946619a7a683bf
-DIST gptfdisk-1.0.5.tar.gz 205973 BLAKE2B e026dd4b4f2b63ca660feef34a1fdfb14034d0d64e4828fddf4a0c63756cbc840b3292231838f0c016256be2358069bde8a17ef0e33dec355c48406a9a930e75 SHA512 3d3a59e3488dd3d6bda5d103b9ad8b7936752210346b9787ddc936681498fba90577b6ae950c471d09a01bf6405fce32038ff1777c52db0b21e5277737fe3703
+DIST gptfdisk-1.0.10.tar.gz 220787 BLAKE2B 9047bf68a2c5c254bda9b2815488963dc19a9415c90fbf4a127268a37fe8a545b7d45a333e356bd9da22e37ef649d9f60896ffedfdc35b60c7642a48e4ed2e5a SHA512 76764e176cd92470648a1d7a8d2570ebc41005204e73b0f2dd5a7aff2fc1981d3bec61a3bd68b855cc3474bcb7cf49c1cb2ea25843d4e7945bef7648d548383d
+DIST gptfdisk-1.0.9.tar.gz 215065 BLAKE2B 1939ffd75972a4d7f92af2bfab90c7b0223825b5478b6b808dd35af943c687d38ba81663cd7ba5e0f9400656db4dac019c13a9f75d90b7bd716568c676c24dd2 SHA512 c2489ac7e196cb53b9fdb18d0e421571eca43c366de8922c5c7f550aadf192558e7af69b181c30747d6cf607c1670126223465eaa5e231cc589402d94a4e97a2
diff --git a/sys-apps/gptfdisk/files/gptfdisk-1.0.10_utf16-to-utf8-conversion.patch b/sys-apps/gptfdisk/files/gptfdisk-1.0.10_utf16-to-utf8-conversion.patch
new file mode 100644
index 000000000000..f30eb593799f
--- /dev/null
+++ b/sys-apps/gptfdisk/files/gptfdisk-1.0.10_utf16-to-utf8-conversion.patch
@@ -0,0 +1,19 @@
+From ade1729d1ca44b34678653fdf12e787e1afc5fd8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm@gentoo.org>
+Date: Wed, 13 Mar 2024 20:38:37 +0100
+Subject: [PATCH] gptpart.cc: Fix Unicode to UTF-8 conversion in GetDescription
+
+--- a/gptpart.cc
++++ b/gptpart.cc
+@@ -131,7 +131,7 @@ string GPTPart::GetDescription(void) {
+ } // if
+ else {
+ utf8 += (char) ( 0xf0 | ( uni >> 18 ) ) ;
+- utf8 += (char) ( 0xe0 | ( ( uni >> 12 ) & 0x3f ) ) ;
++ utf8 += (char) ( 0x80 | ( ( uni >> 12 ) & 0x3f ) ) ;
+ utf8 += (char) ( 0x80 | ( ( uni >> 6 ) & 0x3f ) ) ;
+ utf8 += (char) ( 0x80 | ( uni & 0x3f ) ) ;
+ } // if
+--
+2.44.0
+
diff --git a/sys-apps/gptfdisk/files/gptfdisk-1.0.9-build_flags.patch b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-build_flags.patch
new file mode 100644
index 000000000000..2f92d77f3855
--- /dev/null
+++ b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-build_flags.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -66,7 +66,7 @@
+ # Default/Linux settings....
+ STRIP?=strip
+ #CXXFLAGS+=-O2 -Wall -D_FILE_OFFSET_BITS=64 -D USE_UTF16
+-CXXFLAGS+=-O2 -Wall -D_FILE_OFFSET_BITS=64
++CXXFLAGS+=-D_FILE_OFFSET_BITS=64
+ LDFLAGS+=
+ LDLIBS+=-luuid #-licuio -licuuc
+ FATBINFLAGS=
diff --git a/sys-apps/gptfdisk/files/gptfdisk-1.0.9-libuuid.patch b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-libuuid.patch
new file mode 100644
index 000000000000..e7a5f68e19ee
--- /dev/null
+++ b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-libuuid.patch
@@ -0,0 +1,37 @@
+From e67faca2c0ca955f56cbd22e90941cdcbdc12597 Mon Sep 17 00:00:00 2001
+From: Rod Smith <rodsmith@rodsbooks.com>
+Date: Sat, 16 Apr 2022 09:32:04 -0400
+Subject: [PATCH] Updated guid.cc to deal with minor change in libuuid
+
+---
+ NEWS | 3 +++
+ guid.cc | 2 +-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/NEWS b/NEWS
+index c7add56..3d90d9a 100644
+--- a/NEWS
++++ b/NEWS
+@@ -1,3 +1,6 @@
++
++- Updated guid.cc to deal with minor change in libuuid.
++
+ 1.0.9 (4/14/2022):
+ ------------------
+
+diff --git a/guid.cc b/guid.cc
+index 1e73ab7..d3e4fd5 100644
+--- a/guid.cc
++++ b/guid.cc
+@@ -141,7 +141,7 @@ void GUIDData::Zero(void) {
+ void GUIDData::Randomize(void) {
+ int i, uuidGenerated = 0;
+
+-#ifdef _UUID_UUID_H
++#if defined (_UUID_UUID_H) || defined (_UL_LIBUUID_UUID_H)
+ uuid_generate(uuidData);
+ ReverseBytes(&uuidData[0], 4);
+ ReverseBytes(&uuidData[4], 2);
+--
+2.36.1
+
diff --git a/sys-apps/gptfdisk/files/gptfdisk-1.0.9-musl-1.2.4.patch b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-musl-1.2.4.patch
new file mode 100644
index 000000000000..6f019d9eec6f
--- /dev/null
+++ b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-musl-1.2.4.patch
@@ -0,0 +1,30 @@
+Upstream: https://sourceforge.net/p/gptfdisk/code/ci/7dfa8984f5a30f313d8675ff6097c8592d636d10/
+
+From 7dfa8984f5a30f313d8675ff6097c8592d636d10 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 12 Dec 2022 12:50:07 -0800
+Subject: [PATCH] Use 64bit time_t on linux as well
+
+Alias 64bit version of stat functions to original functions
+we are already passing -D_FILE_OFFSET_BITS=64 in linux Makefile
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/diskio-unix.cc
++++ b/diskio-unix.cc
+@@ -37,8 +37,12 @@
+
+ using namespace std;
+
+-#ifdef __APPLE__
++#if defined(__APPLE__) || defined(__linux__)
+ #define off64_t off_t
++#define stat64 stat
++#define fstat64 fstat
++#define lstat64 lstat
++#define lseek64 lseek
+ #endif
+
+ // Returns the official "real" name for a shortened version of same.
+--
+2.41.0
+
diff --git a/sys-apps/gptfdisk/files/gptfdisk-1.0.9-popt_segv.patch b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-popt_segv.patch
new file mode 100644
index 000000000000..470defd33cf6
--- /dev/null
+++ b/sys-apps/gptfdisk/files/gptfdisk-1.0.9-popt_segv.patch
@@ -0,0 +1,22 @@
+--- a/gptcl.cc
++++ b/gptcl.cc
+@@ -156,9 +156,10 @@
+
+ // Assume first non-option argument is the device filename....
+ device = (char*) poptGetArg(poptCon);
+- poptResetContext(poptCon);
+
+ if (device != NULL) {
++ device = strdup(device);
++ poptResetContext(poptCon);
+ JustLooking(); // reset as necessary
+ BeQuiet(); // Tell called functions to be less verbose & interactive
+ if (LoadPartitions((string) device)) {
+@@ -498,6 +499,7 @@
+ cerr << "Error encountered; not saving changes.\n";
+ retval = 4;
+ } // if
++ free(device);
+ } // if (device != NULL)
+ poptFreeContext(poptCon);
+ return retval;
diff --git a/sys-apps/gptfdisk/gptfdisk-1.0.10-r1.ebuild b/sys-apps/gptfdisk/gptfdisk-1.0.10-r1.ebuild
new file mode 100644
index 000000000000..e1986b2d8214
--- /dev/null
+++ b/sys-apps/gptfdisk/gptfdisk-1.0.10-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="GPT partition table manipulator for Linux"
+HOMEPAGE="https://www.rodsbooks.com/gdisk/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="ncurses static"
+
+# libuuid from util-linux is required.
+RDEPEND="!static? (
+ dev-libs/popt
+ ncurses? ( sys-libs/ncurses:=[unicode(+)] )
+ kernel_linux? ( sys-apps/util-linux )
+ )"
+DEPEND="
+ ${RDEPEND}
+ static? (
+ dev-libs/popt[static-libs(+)]
+ ncurses? ( sys-libs/ncurses:=[unicode(+),static-libs(+)] )
+ kernel_linux? ( sys-apps/util-linux[static-libs(+)] )
+ )
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0.9-build_flags.patch
+ "${FILESDIR}"/${PN}-1.0.10_utf16-to-utf8-conversion.patch
+)
+
+src_prepare() {
+ default
+
+ tc-export CXX PKG_CONFIG
+
+ if ! use ncurses ; then
+ sed -i \
+ -e '/^all:/s: cgdisk::' \
+ Makefile || die
+ fi
+
+ sed \
+ -e '/g++/s:=:?=:g' \
+ -e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \
+ -i Makefile || die
+
+ use static && append-ldflags -static
+}
+
+src_install() {
+ dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts
+ doman *.8
+ dodoc NEWS README
+}
diff --git a/sys-apps/gptfdisk/gptfdisk-1.0.4.ebuild b/sys-apps/gptfdisk/gptfdisk-1.0.4.ebuild
deleted file mode 100644
index 9850f5dda92e..000000000000
--- a/sys-apps/gptfdisk/gptfdisk-1.0.4.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="GPT partition table manipulator for Linux"
-HOMEPAGE="https://www.rodsbooks.com/gdisk/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="kernel_linux ncurses static"
-
-# libuuid from util-linux is required.
-RDEPEND="!static? (
- dev-libs/popt
- ncurses? ( >=sys-libs/ncurses-5.7-r7:0=[unicode] )
- kernel_linux? ( sys-apps/util-linux )
- )"
-DEPEND="
- ${RDEPEND}
- static? (
- dev-libs/popt[static-libs(+)]
- ncurses? ( >=sys-libs/ncurses-5.7-r7:0=[unicode,static-libs(+)] )
- kernel_linux? ( sys-apps/util-linux[static-libs(+)] )
- )
- virtual/pkgconfig
-"
-
-src_prepare() {
- default
-
- tc-export CXX PKG_CONFIG
-
- if ! use ncurses ; then
- sed -i \
- -e '/^all:/s:cgdisk::' \
- Makefile || die
- fi
-
- sed \
- -e '/g++/s:=:?=:g' \
- -e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \
- -i Makefile || die
-
- use static && append-ldflags -static
-}
-
-src_install() {
- dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts
- doman *.8
- dodoc NEWS README
-}
diff --git a/sys-apps/gptfdisk/gptfdisk-1.0.5.ebuild b/sys-apps/gptfdisk/gptfdisk-1.0.5.ebuild
deleted file mode 100644
index 253b6a84a848..000000000000
--- a/sys-apps/gptfdisk/gptfdisk-1.0.5.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="GPT partition table manipulator for Linux"
-HOMEPAGE="https://www.rodsbooks.com/gdisk/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="kernel_linux ncurses static"
-
-# libuuid from util-linux is required.
-RDEPEND="!static? (
- dev-libs/popt
- ncurses? ( >=sys-libs/ncurses-5.7-r7:0=[unicode] )
- kernel_linux? ( sys-apps/util-linux )
- )"
-DEPEND="
- ${RDEPEND}
- static? (
- dev-libs/popt[static-libs(+)]
- ncurses? ( >=sys-libs/ncurses-5.7-r7:0=[unicode,static-libs(+)] )
- kernel_linux? ( sys-apps/util-linux[static-libs(+)] )
- )
- virtual/pkgconfig
-"
-
-src_prepare() {
- default
-
- tc-export CXX PKG_CONFIG
-
- if ! use ncurses ; then
- sed -i \
- -e '/^all:/s:cgdisk::' \
- Makefile || die
- fi
-
- sed \
- -e '/g++/s:=:?=:g' \
- -e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \
- -i Makefile || die
-
- use static && append-ldflags -static
-}
-
-src_install() {
- dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts
- doman *.8
- dodoc NEWS README
-}
diff --git a/sys-apps/gptfdisk/gptfdisk-1.0.9-r3.ebuild b/sys-apps/gptfdisk/gptfdisk-1.0.9-r3.ebuild
new file mode 100644
index 000000000000..8ace86a48cbc
--- /dev/null
+++ b/sys-apps/gptfdisk/gptfdisk-1.0.9-r3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="GPT partition table manipulator for Linux"
+HOMEPAGE="https://www.rodsbooks.com/gdisk/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="ncurses static"
+
+# libuuid from util-linux is required.
+RDEPEND="!static? (
+ dev-libs/popt
+ ncurses? ( sys-libs/ncurses:=[unicode(+)] )
+ kernel_linux? ( sys-apps/util-linux )
+ )"
+DEPEND="
+ ${RDEPEND}
+ static? (
+ dev-libs/popt[static-libs(+)]
+ ncurses? ( sys-libs/ncurses:=[unicode(+),static-libs(+)] )
+ kernel_linux? ( sys-apps/util-linux[static-libs(+)] )
+ )
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.0.9-libuuid.patch" #844073
+ "${FILESDIR}/${PN}-1.0.9-popt_segv.patch" #872131
+ "${FILESDIR}"/${PN}-1.0.9-build_flags.patch
+ "${FILESDIR}"/${PN}-1.0.9-musl-1.2.4.patch
+)
+
+src_prepare() {
+ default
+
+ tc-export CXX PKG_CONFIG
+
+ if ! use ncurses ; then
+ sed -i \
+ -e '/^all:/s: cgdisk::' \
+ Makefile || die
+ fi
+
+ sed \
+ -e '/g++/s:=:?=:g' \
+ -e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \
+ -i Makefile || die
+
+ use static && append-ldflags -static
+}
+
+src_install() {
+ dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts
+ doman *.8
+ dodoc NEWS README
+}
diff --git a/sys-apps/gptfdisk/metadata.xml b/sys-apps/gptfdisk/metadata.xml
index 62c9aa4fad0c..519be91819e5 100644
--- a/sys-apps/gptfdisk/metadata.xml
+++ b/sys-apps/gptfdisk/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">gptfdisk</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">gptfdisk</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/gradm/Manifest b/sys-apps/gradm/Manifest
index 89b980f75996..999eae344ccc 100644
--- a/sys-apps/gradm/Manifest
+++ b/sys-apps/gradm/Manifest
@@ -1,5 +1 @@
-DIST gradm-3.1-201603152148.tar.gz 91549 BLAKE2B a569ebbac10418ad69effb47a4102bdfd16cb99448d70550a71cad5ab2dca8076d03c4234819fa8ba9d3d50a57d676c2d703c2f308396a7d9ffdf527b1f1a5d8 SHA512 a423db1dfdaa0b068970b92dc970d6e10bfc20695437e92d967b064c3efe05114ab6de672eec984ab2f048b67b12ec8c6667a71bc584f03e5d2f0ebab1476158
-DIST gradm-3.1-201607172312.tar.gz 91667 BLAKE2B 207f86d12789ada00eeb3bc813863d671be54265eff7649a40960ab41296977d0e36dc60ebc482514e1803050026783d43017e7423e25e4d652f813cfb3e75c0 SHA512 61f14038ee555b99e4d0096dd01697d8adba45e057ffceadb44eafbdfba807b53030684c5073d169c005902acfa6baa673975ed4ab00ad035941c209f8f1d2e2
-DIST gradm-3.1-201608131257.tar.gz 91949 BLAKE2B e1dc55706a0c8492b2d0716cfe8abb4efdcd3829da725f412bd6882e28b34e0f52eb796fb9ff0b25db93512893d9d7dafe1aa54f44fa2f3b329adb48d4bc14b4 SHA512 0947abda8d4085fd6f4a569a29f146d6f093c7013ea3aba50df4fb740487b93696b63ab475eb862cfcd26aeb62cd69a55c3d6083b91a2eb9349ad566735f8cfe
-DIST gradm-3.1-201708012022.tar.gz 92238 BLAKE2B 220a2cba3f01e92adc6bf959cfa1721d6ea41247be2c6b742577c434071fe80d0135773e18b9a8a89f1c893c9cd03443e29af0e0b027c97422e4a743f8b6c960 SHA512 1c319ce5b102ad54d0c4d0c43222ed755719bb2568c9a4575b62965a73b0765265dc7068488e5e34df52ed9382b17e4bf1b32a8eef20a4d7a534f3f9a4ba2b3d
DIST gradm-3.1-201903191516.tar.gz 92504 BLAKE2B e302f77cd3b27e5288a63a578a8161784161b024ff9740e0fbbd75edc66e918025082cf6c860b7be21be14cea2cbe0ed38376a528309aabb574a5bb909bcd1be SHA512 224f87035c2604640f14a6cafc94b16aae765bbaf457675cc189fe7c8b73450281bc16456d1c59cc8926c920601293840a148f4193e708c83509aef2a25fbd9f
diff --git a/sys-apps/gradm/gradm-3.1.201603152148.ebuild b/sys-apps/gradm/gradm-3.1.201603152148.ebuild
deleted file mode 100644
index 5a4b2c5d4a94..000000000000
--- a/sys-apps/gradm/gradm-3.1.201603152148.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic toolchain-funcs udev versionator
-
-MY_PV="$(replace_version_separator 2 -)"
-
-DESCRIPTION="Administrative interface for the grsecurity Role Based Access Control system"
-HOMEPAGE="https://www.grsecurity.net/"
-SRC_URI="https://dev.gentoo.org/~blueness/hardened-sources/gradm/${PN}-${MY_PV}.tar.gz"
-LICENSE="GPL-2"
-
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86"
-IUSE="pam"
-
-RDEPEND=""
-DEPEND="
- sys-devel/bison
- sys-devel/flex
- pam? ( sys-libs/pam )"
-
-S=${WORKDIR}/${PN}
-
-PATCHES=(
- "${FILESDIR}"/respect-gentoo-env-r3.patch
-)
-
-src_prepare() {
- default
- sed -i -e "s:/lib/udev:$(get_udevdir):" Makefile || die
-}
-
-src_compile() {
- local target
- use pam || target="nopam"
-
- emake ${target} CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- fperms 711 /sbin/gradm
-}
-
-pkg_postinst() {
- ewarn
- ewarn "Be sure to set a password with 'gradm -P' before enabling learning mode."
- ewarn
-}
diff --git a/sys-apps/gradm/gradm-3.1.201607172312.ebuild b/sys-apps/gradm/gradm-3.1.201607172312.ebuild
deleted file mode 100644
index 5a4b2c5d4a94..000000000000
--- a/sys-apps/gradm/gradm-3.1.201607172312.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic toolchain-funcs udev versionator
-
-MY_PV="$(replace_version_separator 2 -)"
-
-DESCRIPTION="Administrative interface for the grsecurity Role Based Access Control system"
-HOMEPAGE="https://www.grsecurity.net/"
-SRC_URI="https://dev.gentoo.org/~blueness/hardened-sources/gradm/${PN}-${MY_PV}.tar.gz"
-LICENSE="GPL-2"
-
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86"
-IUSE="pam"
-
-RDEPEND=""
-DEPEND="
- sys-devel/bison
- sys-devel/flex
- pam? ( sys-libs/pam )"
-
-S=${WORKDIR}/${PN}
-
-PATCHES=(
- "${FILESDIR}"/respect-gentoo-env-r3.patch
-)
-
-src_prepare() {
- default
- sed -i -e "s:/lib/udev:$(get_udevdir):" Makefile || die
-}
-
-src_compile() {
- local target
- use pam || target="nopam"
-
- emake ${target} CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- fperms 711 /sbin/gradm
-}
-
-pkg_postinst() {
- ewarn
- ewarn "Be sure to set a password with 'gradm -P' before enabling learning mode."
- ewarn
-}
diff --git a/sys-apps/gradm/gradm-3.1.201608131257.ebuild b/sys-apps/gradm/gradm-3.1.201608131257.ebuild
deleted file mode 100644
index 5e731f31b54f..000000000000
--- a/sys-apps/gradm/gradm-3.1.201608131257.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic toolchain-funcs udev versionator
-
-MY_PV="$(replace_version_separator 2 -)"
-
-DESCRIPTION="Administrative interface for the grsecurity Role Based Access Control system"
-HOMEPAGE="https://www.grsecurity.net/"
-SRC_URI="https://dev.gentoo.org/~blueness/hardened-sources/gradm/${PN}-${MY_PV}.tar.gz"
-LICENSE="GPL-2"
-
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="pam"
-
-RDEPEND=""
-DEPEND="
- sys-devel/bison
- sys-devel/flex
- pam? ( sys-libs/pam )"
-
-S=${WORKDIR}/${PN}
-
-PATCHES=(
- "${FILESDIR}"/respect-gentoo-env-r3.patch
-)
-
-src_prepare() {
- default
- sed -i -e "s:/lib/udev:$(get_udevdir):" Makefile || die
-}
-
-src_compile() {
- local target
- use pam || target="nopam"
-
- emake ${target} CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- fperms 711 /sbin/gradm
-}
-
-pkg_postinst() {
- ewarn
- ewarn "Be sure to set a password with 'gradm -P' before enabling learning mode."
- ewarn
-}
diff --git a/sys-apps/gradm/gradm-3.1.201708012022.ebuild b/sys-apps/gradm/gradm-3.1.201708012022.ebuild
deleted file mode 100644
index 5e731f31b54f..000000000000
--- a/sys-apps/gradm/gradm-3.1.201708012022.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic toolchain-funcs udev versionator
-
-MY_PV="$(replace_version_separator 2 -)"
-
-DESCRIPTION="Administrative interface for the grsecurity Role Based Access Control system"
-HOMEPAGE="https://www.grsecurity.net/"
-SRC_URI="https://dev.gentoo.org/~blueness/hardened-sources/gradm/${PN}-${MY_PV}.tar.gz"
-LICENSE="GPL-2"
-
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="pam"
-
-RDEPEND=""
-DEPEND="
- sys-devel/bison
- sys-devel/flex
- pam? ( sys-libs/pam )"
-
-S=${WORKDIR}/${PN}
-
-PATCHES=(
- "${FILESDIR}"/respect-gentoo-env-r3.patch
-)
-
-src_prepare() {
- default
- sed -i -e "s:/lib/udev:$(get_udevdir):" Makefile || die
-}
-
-src_compile() {
- local target
- use pam || target="nopam"
-
- emake ${target} CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- fperms 711 /sbin/gradm
-}
-
-pkg_postinst() {
- ewarn
- ewarn "Be sure to set a password with 'gradm -P' before enabling learning mode."
- ewarn
-}
diff --git a/sys-apps/gradm/gradm-3.1.201903191516.ebuild b/sys-apps/gradm/gradm-3.1.201903191516.ebuild
index 35dd8bc4384a..85bccb3730eb 100644
--- a/sys-apps/gradm/gradm-3.1.201903191516.ebuild
+++ b/sys-apps/gradm/gradm-3.1.201903191516.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit flag-o-matic toolchain-funcs udev
MY_PV="$(ver_rs 2 -)"
@@ -12,13 +13,13 @@ SRC_URI="https://dev.gentoo.org/~slashbeast/distfiles/gradm/${PN}-${MY_PV}.tar.g
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86"
IUSE="pam"
RDEPEND=""
DEPEND="
- sys-devel/bison
- sys-devel/flex
+ app-alternatives/yacc
+ app-alternatives/lex
pam? ( sys-libs/pam )"
S=${WORKDIR}/${PN}
@@ -36,6 +37,9 @@ src_compile() {
local target
use pam || target="nopam"
+ # bug #863569
+ filter-lto
+
emake ${target} CC="$(tc-getCC)" OPT_FLAGS="${CFLAGS}"
}
diff --git a/sys-apps/gradm/metadata.xml b/sys-apps/gradm/metadata.xml
index 2fdcc0c0ceb0..3e45e0f6b901 100644
--- a/sys-apps/gradm/metadata.xml
+++ b/sys-apps/gradm/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>blueness@gentoo.org</email>
- <name>Anthony G. Basile</name>
- </maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>hardened@gentoo.org</email>
<name>Gentoo Hardened</name>
</maintainer>
diff --git a/sys-apps/grep/Manifest b/sys-apps/grep/Manifest
index adc41b7c6e7c..0f0873e8b5ee 100644
--- a/sys-apps/grep/Manifest
+++ b/sys-apps/grep/Manifest
@@ -1,3 +1,2 @@
-DIST grep-3.3.tar.xz 1473056 BLAKE2B e1592b623d1f32d1b21d127b0d28f8f6501d4b854ff2de810d12d43292c00e6af887b038f22d0c4c45c314b6e9d73a82dec6d737519c674bb139c2ef70511aa0 SHA512 e4805dbddf7cd0f0faf412557d408509650c1ccf703bc450f10a3f727c690dbfaa1235aa81939a0e4b7ac6190f88c15ea1fcc562b343d4b4c7550f967aeb15db
-DIST grep-3.4.tar.xz 1555820 BLAKE2B 4e1924d6d5eb66faca93b405cce9784d726a476f26a384c3b44375cb09f817008aeedaa701a30b6c1f21c030902d603a80ec80105b2d5d76eadf09b910d573a7 SHA512 0f1506bd19971fbdcb47a111277ca63e8ad045456f096980852fd0a61c860f29f4b369bbaaa5cbce4b0a81718e3e3274d9a078b491f2109baa9a02ce600ee206
-DIST grep-3.5.tar.xz 1586396 BLAKE2B 62c98acb29b9998e60b64cacbe82df4f03a8d8a427a060d00283506155e6acadc4d77e8b8c2fa110227715c314ac7cde38a38eff0b92eb0ec793c59ba2562ea5 SHA512 8367aa930ecf7fa5c07153666bf7991097648bd7bf4ca672e6b14e0bb806c89991ec55d2880812877761cbde1d33562f22803835d74bfcd293c2246e274306c4
+DIST grep-3.11.tar.xz 1703776 BLAKE2B e21785bca20b5a090d32bb5dc525fb298af30165106ed4c289b1518ea3d2acdcacfd6309b12f13be29a4b958f19588546119c695deb2b7500d49dcff86357bdc SHA512 f254a1905a08c8173e12fbdd4fd8baed9a200217fba9d7641f0d78e4e002c1f2a621152d67027d9b25f0bb2430898f5233dc70909d8464fd13d7dd9298e65c42
+DIST grep-3.11.tar.xz.sig 833 BLAKE2B 5edfba20e3a9f54d25ae63cf04985382bf6afb0ca643979561321090614e68b5d234767b07e48211888722c52c441233093735e183ff69432d5ee2e6a4f53aea SHA512 487aba063373ca0594c519991f19b2a6a33b3da0d74735c890f3828fd0880e7e6f64495d2c8f9efa5da53d1eb2d446609bab2399a4b89dcb4510a632e31ffb54
diff --git a/sys-apps/grep/grep-3.11.ebuild b/sys-apps/grep/grep-3.11.ebuild
new file mode 100644
index 000000000000..9a87747dac3d
--- /dev/null
+++ b/sys-apps/grep/grep-3.11.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/grep.asc
+inherit flag-o-matic verify-sig
+
+DESCRIPTION="GNU regular expression matcher"
+HOMEPAGE="https://www.gnu.org/software/grep/"
+
+if [[ ${PV} == *_p* ]] ; then
+ # Subscribe to the 'platform-testers' ML to find these.
+ # Useful to test on our especially more niche arches and report issues upstream.
+ MY_COMMIT="19-2ea9"
+ MY_P=${PN}-$(ver_cut 1-2).${MY_COMMIT}
+ SRC_URI="https://meyering.net/${PN}/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://meyering.net/${PN}/${MY_P}.tar.xz.sig )"
+ S="${WORKDIR}"/${MY_P}
+else
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="+egrep-fgrep nls pcre static"
+
+# We lack dev-libs/libsigsegv[static-libs] for now
+REQUIRED_USE="static? ( !sparc )"
+
+LIB_DEPEND="
+ pcre? ( >=dev-libs/libpcre2-10.42-r1[static-libs(+)] )
+ sparc? ( dev-libs/libsigsegv )
+"
+RDEPEND="
+ !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ nls? ( virtual/libintl )
+ virtual/libiconv
+"
+DEPEND="
+ ${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+ verify-sig? ( sec-keys/openpgp-keys-grep )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # Either gnulib FPs or fixed in newer autoconf, not worth autoreconf here for now?
+ MIN
+ alignof
+ static_assert
+)
+
+src_prepare() {
+ default
+
+ # bug #523898
+ sed -i \
+ -e "s:@SHELL@:${EPREFIX}/bin/sh:g" \
+ -e "s:@grep@:${EPREFIX}/bin/grep:" \
+ src/egrep.sh || die
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ # We used to turn this off unconditionally (bug #673524) but we now
+ # allow it for cases where libsigsegv is better for userspace handling
+ # of stack overflows.
+ # In particular, it's necessary for sparc: bug #768135
+ export ac_cv_libsigsegv=$(usex sparc)
+
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/bin
+ $(use_enable nls)
+ $(use_enable pcre perl-regexp)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if use egrep-fgrep ; then
+ # Delete the upstream wrapper variants which warn on egrep+fgrep use
+ rm "${ED}"/bin/{egrep,fgrep} || die
+
+ into /
+ # Install egrep, fgrep which don't warn.
+ #
+ # We do this by default to avoid breakage in old scripts
+ # and such which don't expect unexpected output on stderr,
+ # we've had examples of builds failing because foo-config
+ # starts returning a warning.
+ #
+ # https://lists.gnu.org/archive/html/bug-grep/2022-10/msg00000.html
+ newbin - egrep <<-EOF
+ #!/usr/bin/env sh
+ exec "${EPREFIX}/bin/grep" -E "\$@"
+ EOF
+
+ newbin - fgrep <<-EOF
+ #!/usr/bin/env sh
+ exec "${EPREFIX}/bin/grep" -F "\$@"
+ EOF
+ fi
+}
diff --git a/sys-apps/grep/grep-3.3-r1.ebuild b/sys-apps/grep/grep-3.3-r1.ebuild
deleted file mode 100644
index f8c15a4f4d62..000000000000
--- a/sys-apps/grep/grep-3.3-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="GNU regular expression matcher"
-HOMEPAGE="https://www.gnu.org/software/grep/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- mirror://gentoo/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls pcre static"
-
-LIB_DEPEND="pcre? ( >=dev-libs/libpcre-7.8-r1[static-libs(+)] )"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- nls? ( virtual/libintl )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
- static? ( ${LIB_DEPEND} )"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
- sed -i \
- -e "s:@SHELL@:${EPREFIX}/bin/sh:g" \
- -e "s:@grep@:${EPREFIX}/bin/grep:" \
- src/egrep.sh || die #523898
-
- default
-}
-
-src_configure() {
- use static && append-ldflags -static
- # don't link against libsigsegv even when available
- export ac_cv_libsigsegv=no
- # Always use pkg-config to get lib info for pcre.
- export ac_cv_search_pcre_compile=$(
- usex pcre "$($(tc-getPKG_CONFIG) --libs $(usex static --static '') libpcre)" ''
- )
- econf \
- --bindir="${EPREFIX}"/bin \
- $(use_enable nls) \
- $(use_enable pcre perl-regexp)
-}
diff --git a/sys-apps/grep/grep-3.4.ebuild b/sys-apps/grep/grep-3.4.ebuild
deleted file mode 100644
index 9f94192b4198..000000000000
--- a/sys-apps/grep/grep-3.4.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="GNU regular expression matcher"
-HOMEPAGE="https://www.gnu.org/software/grep/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- mirror://gentoo/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls pcre static"
-
-LIB_DEPEND="pcre? ( >=dev-libs/libpcre-7.8-r1[static-libs(+)] )"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- nls? ( virtual/libintl )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )"
-BDEPEND="
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
- sed -i \
- -e "s:@SHELL@:${EPREFIX}/bin/sh:g" \
- -e "s:@grep@:${EPREFIX}/bin/grep:" \
- src/egrep.sh || die #523898
-
- default
-}
-
-src_configure() {
- use static && append-ldflags -static
- # don't link against libsigsegv even when available
- export ac_cv_libsigsegv=no
- # Always use pkg-config to get lib info for pcre.
- export ac_cv_search_pcre_compile=$(
- usex pcre "$($(tc-getPKG_CONFIG) --libs $(usex static --static '') libpcre)" ''
- )
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- $(use_enable nls)
- $(use_enable pcre perl-regexp)
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/grep/grep-3.5.ebuild b/sys-apps/grep/grep-3.5.ebuild
deleted file mode 100644
index a581969446e1..000000000000
--- a/sys-apps/grep/grep-3.5.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="GNU regular expression matcher"
-HOMEPAGE="https://www.gnu.org/software/grep/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
- mirror://gentoo/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls pcre static"
-
-LIB_DEPEND="pcre? ( >=dev-libs/libpcre-7.8-r1[static-libs(+)] )"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
- nls? ( virtual/libintl )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )"
-BDEPEND="
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-
-src_prepare() {
- sed -i \
- -e "s:@SHELL@:${EPREFIX}/bin/sh:g" \
- -e "s:@grep@:${EPREFIX}/bin/grep:" \
- src/egrep.sh || die #523898
-
- default
-}
-
-src_configure() {
- use static && append-ldflags -static
- # don't link against libsigsegv even when available
- export ac_cv_libsigsegv=no
- # Always use pkg-config to get lib info for pcre.
- export ac_cv_search_pcre_compile=$(
- usex pcre "$($(tc-getPKG_CONFIG) --libs $(usex static --static '') libpcre)" ''
- )
- local myeconfargs=(
- --bindir="${EPREFIX}"/bin
- $(use_enable nls)
- $(use_enable pcre perl-regexp)
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/grep/metadata.xml b/sys-apps/grep/metadata.xml
index f4a75bc8b992..89eff5cf9f7e 100644
--- a/sys-apps/grep/metadata.xml
+++ b/sys-apps/grep/metadata.xml
@@ -1,11 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="cpe">cpe:/a:gnu:grep</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="egrep-fgrep">
+ Install deprecated 'egrep' and 'fgrep' wrappers
+ for 'grep -E' and 'grep -F' respectively.
+
+ GNU grep 3.8 onwards warns about their usage by
+ default, but the versions installed by this flag do not.
+
+ No deprecation warnings are emitted when this
+ flag is enabled.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:grep</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/grepcidr/files/grepcidr-2.0-Makefile.patch b/sys-apps/grepcidr/files/grepcidr-2.0-Makefile.patch
new file mode 100644
index 000000000000..c1b0b56f2a11
--- /dev/null
+++ b/sys-apps/grepcidr/files/grepcidr-2.0-Makefile.patch
@@ -0,0 +1,12 @@
+Respect CPPFLAGS, LDFLAGS
+--- a/Makefile
++++ b/Makefile
+@@ -15,7 +15,7 @@ LDFLAGS=
+ all: grepcidr
+
+ grepcidr: grepcidr.o
+- $(CC) $(CFLAGS) grepcidr.o -o grepcidr
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) grepcidr.o -o grepcidr
+
+ doc: grepcidr.1
+
diff --git a/sys-apps/grepcidr/grepcidr-2.0.ebuild b/sys-apps/grepcidr/grepcidr-2.0.ebuild
index 77b3863961fd..4b99fd34edbb 100644
--- a/sys-apps/grepcidr/grepcidr-2.0.ebuild
+++ b/sys-apps/grepcidr/grepcidr-2.0.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
inherit toolchain-funcs
@@ -12,17 +12,21 @@ SRC_URI="http://www.pc-tools.net/files/unix/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
-DEPEND=""
-RDEPEND="${DEPEND}"
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0-Makefile.patch
+)
src_compile() {
- emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
}
src_install() {
- emake DESTDIR="${D}" PREFIX="${EROOT}/usr" install
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install
dodoc README ChangeLog
}
diff --git a/sys-apps/grepcidr/metadata.xml b/sys-apps/grepcidr/metadata.xml
index 5840601f180f..df90b41cf905 100644
--- a/sys-apps/grepcidr/metadata.xml
+++ b/sys-apps/grepcidr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>idl0r@gentoo.org</email>
diff --git a/sys-apps/groff/Manifest b/sys-apps/groff/Manifest
index 67a1953b5d4d..04dcfcdf33ad 100644
--- a/sys-apps/groff/Manifest
+++ b/sys-apps/groff/Manifest
@@ -1 +1,2 @@
DIST groff-1.22.4.tar.gz 4137480 BLAKE2B cdda8a7e8e42b8d8991656ecfbffe0cd0ed5d8932467cab2f3c1eecb3365f4a5c03321b6ed929d451c3dfb00a46046a781303a1c55c4aa65eb7d178fb36b1cbc SHA512 1c42d3cd71efaf067b5850945d9097fa1f0fadd5e2b6ba7446bd9d4f439fe1ad058e4ddb0d4e0f503682137dfc7c822944ce1e3e5cf981673f8ba197ea77126d
+DIST groff-1.23.0.tar.gz 7433031 BLAKE2B 9fc5a2302f034761a17f0639a04b82c536ba8a7db15b062dd736e0011fc5a27fddcaf035af128d09f06762825d9bb965e8f5561e4be7a9fea3fe86ca5f6cb2dd SHA512 eff473fd1d0e6b27527318452ef2b7c6c7aba0b1c27fc529036496eccba5717f3639df0b81a297a57f700e27543196d7086b15e43d7e3c7bf075f95feb7f4089
diff --git a/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch b/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch
new file mode 100644
index 000000000000..3db5315aaa72
--- /dev/null
+++ b/sys-apps/groff/files/groff-1.22.4-skip-broken-diffutils-test.patch
@@ -0,0 +1,38 @@
+https://savannah.gnu.org/bugs/?63726
+https://git.savannah.gnu.org/cgit/groff.git/commit/?id=10274fb69e517b2c4b10fcd0ba3347e5bd0eefd7
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -4195,8 +4195,7 @@ SUFFIXES = .roff .in .ps .mom .pdf .me .ms .ps .html .txt .texi .dvi \
+
+ # tests launched by make check
+ check_SCRIPTS =
+-TESTS = contrib/gdiffmk/tests/gdiffmk_tests.sh $(am__append_5) \
+- $(am__append_8)
++TESTS = $(am__append_5) $(am__append_8)
+ AM_TESTS_ENVIRONMENT = \
+ abs_top_srcdir=$(abs_top_srcdir) \
+ abs_top_builddir=$(abs_top_builddir) \
+@@ -9570,13 +9569,6 @@ recheck: all $(check_PROGRAMS) $(check_SCRIPTS)
+ am__force_recheck=am--force-recheck \
+ TEST_LOGS="$$log_list"; \
+ exit $$?
+-contrib/gdiffmk/tests/gdiffmk_tests.sh.log: contrib/gdiffmk/tests/gdiffmk_tests.sh
+- @p='contrib/gdiffmk/tests/gdiffmk_tests.sh'; \
+- b='contrib/gdiffmk/tests/gdiffmk_tests.sh'; \
+- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+- --log-file $$b.log --trs-file $$b.trs \
+- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+- "$$tst" $(AM_TESTS_FD_REDIRECT)
+ contrib/hdtbl/examples/test-hdtbl.sh.log: contrib/hdtbl/examples/test-hdtbl.sh
+ @p='contrib/hdtbl/examples/test-hdtbl.sh'; \
+ b='contrib/hdtbl/examples/test-hdtbl.sh'; \
+--- a/contrib/gdiffmk/gdiffmk.am
++++ b/contrib/gdiffmk/gdiffmk.am
+@@ -26,7 +26,6 @@
+ ########################################################################
+ gdiffmk_srcdir = $(top_srcdir)/contrib/gdiffmk
+ bin_SCRIPTS += gdiffmk
+-TESTS += contrib/gdiffmk/tests/gdiffmk_tests.sh
+ man1_MANS += contrib/gdiffmk/gdiffmk.1
+ EXTRA_DIST += \
+ contrib/gdiffmk/gdiffmk.1.man \
diff --git a/sys-apps/groff/groff-1.22.4.ebuild b/sys-apps/groff/groff-1.22.4.ebuild
index 78724e949eac..2f7892efc8ce 100644
--- a/sys-apps/groff/groff-1.22.4.ebuild
+++ b/sys-apps/groff/groff-1.22.4.ebuild
@@ -1,33 +1,35 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit toolchain-funcs
+inherit flag-o-matic toolchain-funcs
MY_P="${P/_/.}"
DESCRIPTION="Text formatter used for man pages"
HOMEPAGE="https://www.gnu.org/software/groff/groff.html"
SRC_URI="mirror://gnu/groff/${MY_P}.tar.gz
- mirror://gnu-alpha/groff/${MY_P}.tar.gz"
+ https://alpha.gnu.org/gnu/groff/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
[[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="examples X"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="examples uchardet X"
RDEPEND="
+ uchardet? ( app-i18n/uchardet )
X? (
+ x11-libs/libICE
+ x11-libs/libSM
x11-libs/libX11
- x11-libs/libXt
- x11-libs/libXmu
x11-libs/libXaw
- x11-libs/libSM
- x11-libs/libICE
+ x11-libs/libXmu
+ x11-libs/libXt
)"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
dev-lang/perl
sys-apps/texinfo"
@@ -37,6 +39,7 @@ S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}"/${PN}-1.19.2-man-unicode-dashes.patch #16108 #17580 #121502
+ "${FILESDIR}"/${PN}-1.22.4-skip-broken-diffutils-test.patch
)
src_prepare() {
@@ -60,24 +63,33 @@ src_prepare() {
}
src_configure() {
+ if use elibc_musl ; then
+ # This should be safe to drop in the release after 1.22.4
+ # gnulib was rather out of date and didn't include musl in its
+ # CHOST checks.
+ # bug #678026
+ export gl_cv_func_signbit_gcc=yes
+ fi
+
+ # Drop in release after 1.22.4! bug #894154
+ append-cxxflags -std=gnu++11
+
local myeconfargs=(
--with-appresdir="${EPREFIX}"/usr/share/X11/app-defaults
+ $(use_with uchardet)
$(use_with X x)
)
econf "${myeconfargs[@]}"
}
src_compile() {
- if tc-is-cross-compiler ; then
- local CROSS_ARGS=(
- GROFFBIN="$(type -P groff)"
- TROFFBIN="$(type -P troff)"
- GROFF_BIN_DIR=
- GROFF_BIN_PATH=
- )
- else
- unset CROSS_ARGS
- fi
+ local -a CROSS_ARGS
+ tc-is-cross-compiler && CROSS_ARGS+=(
+ GROFFBIN="$(type -P groff)"
+ TROFFBIN="$(type -P troff)"
+ GROFF_BIN_DIR=
+ GROFF_BIN_PATH=
+ )
emake AR="$(tc-getAR)" "${CROSS_ARGS[@]}"
}
@@ -91,11 +103,11 @@ src_install() {
if ! use examples ; then
# The pdf files might not be generated if ghostscript is unavailable. #602020
- local pdf="${ED%/}/usr/share/doc/${PF}/examples/mom/mom-pdf.pdf"
+ local pdf="${ED}/usr/share/doc/${PF}/examples/mom/mom-pdf.pdf"
if [[ -e ${pdf} ]] ; then
# Keep mom-pdf.pdf since it's more of a manual than an example. #454196 #516732
- mv "${pdf}" "${ED%/}"/usr/share/doc/${PF}/pdf/ || die
+ mv "${pdf}" "${ED}/usr/share/doc/${PF}/pdf/" || die
fi
- rm -rf "${ED%/}"/usr/share/doc/${PF}/examples
+ rm -rf "${ED}/usr/share/doc/${PF}/examples"
fi
}
diff --git a/sys-apps/groff/groff-1.23.0.ebuild b/sys-apps/groff/groff-1.23.0.ebuild
new file mode 100644
index 000000000000..38f1316c870e
--- /dev/null
+++ b/sys-apps/groff/groff-1.23.0.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_P="${P/_/.}"
+DESCRIPTION="Text formatter used for man pages"
+HOMEPAGE="https://www.gnu.org/software/groff/groff.html"
+
+if [[ ${PV} == *_rc* ]] ; then
+ SRC_URI="https://alpha.gnu.org/gnu/groff/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://gnu/groff/${MY_P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="examples uchardet X"
+
+RDEPEND="
+ uchardet? ( app-i18n/uchardet )
+ X? (
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXaw
+ x11-libs/libXmu
+ x11-libs/libXt
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-lang/perl
+ sys-apps/texinfo
+"
+
+DOCS=( BUG-REPORT ChangeLog MORE.STUFF NEWS PROBLEMS PROJECTS README TODO )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # False positive with older autoconf, will be fixed w/ autoconf-2.72
+ static_assert
+)
+
+PATCHES=(
+ # bug #16108, bug #17580, bug #121502
+ "${FILESDIR}"/${PN}-1.19.2-man-unicode-dashes.patch
+)
+
+src_prepare() {
+ default
+
+ # Honor Gentoo's docdir
+ sed -i -e "s|^docdir =.*|docdir = \"${EPREFIX}/usr/share/doc/${PF}\"|g" \
+ Makefile.in \
+ || die "failed to modify Makefile.in"
+
+ local pfx=$(usex prefix ' Prefix' '')
+ cat <<-EOF >> tmac/mdoc.local || die
+ .ds volume-operating-system Gentoo${pfx}
+ .ds operating-system Gentoo${pfx}/${KERNEL}
+ .ds default-operating-system Gentoo${pfx}/${KERNEL}
+ EOF
+
+ # make sure we don't get a crappy `g' nameprefix on UNIX systems with real
+ # troff (GROFF_G macro runs some test to see, its own troff doesn't satisfy)
+ sed -i -e 's/^[ \t]\+g=g$/g=/' configure || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-appdefdir="${EPREFIX}"/usr/share/X11/app-defaults
+ --without-compatibility-wrappers # for Prefix
+ $(use_with uchardet)
+ $(use_with X x)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ local -a CROSS_ARGS
+ tc-is-cross-compiler && CROSS_ARGS+=(
+ GROFFBIN="$(type -P groff)"
+ TROFFBIN="$(type -P troff)"
+ GROFF_BIN_DIR=
+ GROFF_BIN_PATH=
+ )
+
+ emake AR="$(tc-getAR)" "${CROSS_ARGS[@]}"
+}
+
+src_install() {
+ default
+
+ # The following links are required for man, bug #123674
+ dosym eqn /usr/bin/geqn
+ dosym tbl /usr/bin/gtbl
+
+ if ! use examples ; then
+ # The pdf files might not be generated if ghostscript is unavailable, bug #602020
+ local pdf="${ED}/usr/share/doc/${PF}/examples/mom/mom-pdf.pdf"
+ if [[ -e ${pdf} ]] ; then
+ # Keep mom-pdf.pdf since it's more of a manual than an example
+ # bug #454196 and bug #516732
+ mv "${pdf}" "${ED}/usr/share/doc/${PF}/pdf/" || die
+ fi
+ rm -rf "${ED}/usr/share/doc/${PF}/examples"
+ fi
+}
diff --git a/sys-apps/groff/metadata.xml b/sys-apps/groff/metadata.xml
index 56c124413057..321c7b254471 100644
--- a/sys-apps/groff/metadata.xml
+++ b/sys-apps/groff/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="uchardet">Enable automatic encoding detection via <pkg>app-i18n/uchardet</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:groff</remote-id>
+ <remote-id type="savannah">groff</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch b/sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch
new file mode 100644
index 000000000000..d38603c34962
--- /dev/null
+++ b/sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch
@@ -0,0 +1,30 @@
+Bug: https://bugs.gentoo.org/887001
+--- a/menues.c
++++ b/menues.c
+@@ -280,7 +280,7 @@ static void readQuadletApp(gpointer callback_data, guint callback_action,
+ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog->dialog)->vbox),
+ table, TRUE, TRUE, 0);
+
+- transactionDialogAddOkClose(dialog, readQuadletAppOk);
++ transactionDialogAddOkClose(dialog, (GtkSignalFunc)readQuadletAppOk);
+
+ gtk_widget_show_all(dialog->dialog);
+ }
+@@ -336,7 +336,7 @@ static void writeQuadletApp(gpointer callback_data, guint callback_action,
+ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog->dialog)->vbox),
+ table, TRUE, TRUE, 0);
+
+- transactionDialogAddOkClose(dialog, writeQuadletAppOk);
++ transactionDialogAddOkClose(dialog, (GtkSignalFunc)writeQuadletAppOk);
+
+ gtk_widget_show_all(dialog->dialog);
+ }
+@@ -417,7 +417,7 @@ static void readBlockApp(gpointer callback_data, guint callback_action,
+ table, TRUE, TRUE, 0);
+
+ //dialogAddOkClose(dialog->dialog, readBlockAppOk);
+- transactionDialogAddOkClose(dialog, readBlockAppOk);
++ transactionDialogAddOkClose(dialog, (GtkSignalFunc)readBlockAppOk);
+
+ gtk_widget_show_all(dialog->dialog);
+ }
diff --git a/sys-apps/gscanbus/gscanbus-0.8-r1.ebuild b/sys-apps/gscanbus/gscanbus-0.8-r1.ebuild
new file mode 100644
index 000000000000..00b0859878b0
--- /dev/null
+++ b/sys-apps/gscanbus/gscanbus-0.8-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Bus scanning, testing and topology visualizing tool for Linux IEEE1394 subsystem"
+HOMEPAGE="https://sourceforge.net/projects/gscanbus.berlios/"
+SRC_URI="mirror://sourceforge/${PN}.berlios/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+RDEPEND="
+ sys-libs/libraw1394
+ x11-libs/gtk+:2"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-Wimplicit-function-declaration.patch
+ "${FILESDIR}"/${P}-incompatible-function-pointer-types.patch
+
+)
diff --git a/sys-apps/gscanbus/metadata.xml b/sys-apps/gscanbus/metadata.xml
index 5f4c1b866e0f..e067278b84a6 100644
--- a/sys-apps/gscanbus/metadata.xml
+++ b/sys-apps/gscanbus/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/gsmartcontrol/Manifest b/sys-apps/gsmartcontrol/Manifest
index 4aeefb329957..aea538f805bd 100644
--- a/sys-apps/gsmartcontrol/Manifest
+++ b/sys-apps/gsmartcontrol/Manifest
@@ -1,2 +1 @@
-DIST gsmartcontrol-1.0.2.tar.bz2 695445 BLAKE2B cccfe2d96eab050fbcc2b99107e6a962a75c6cce492d64e40cab371f7d23cec6eaf6df7682cc0a43a8678152be3425ccd6eeb6f8743bd1a8e2edb7f4624d4238 SHA512 a9dd037fc4223afa762408bc34325fb31947822250efe32ae97b88e836c5bb68d8354d7605925b2ab7c834764ea473a14f2cd1f234577ef76730b02ad9a8b701
-DIST gsmartcontrol-1.1.3.tar.bz2 677998 BLAKE2B f444dd29602f6934b440650e57d5d981a3b9823a905ce3c178109b230e6536edd4f38ed0762872b38186774127a164feb7363bb45cbd80e9c0b34398c1a06092 SHA512 7a8bb79875a53d742923fc8ff8336d7fbbdaf2e1b1f64296840557997125d4dcfea9a93a5e8a834003d592083a180ee85ca0e29d3aecf0eb475a3d4fed460456
+DIST gsmartcontrol-1.1.4.tar.bz2 691155 BLAKE2B 484452b85e848ca9d0539f9fb9e63fc60f837d5e5de1d85d6ef6340fba194ea52cb2026682b263b1391a59eee4ee846dad3863dc1f0bd00296015ddcf86dda9a SHA512 a59147f7adb76fa1cfc55198d175b38f7840c0ec07563bc020757d7609891c8f67953b87a867235821f90c52bc3c8e40a8d8a57a1429e4b75a3afb3a2ada42f1
diff --git a/sys-apps/gsmartcontrol/gsmartcontrol-1.0.2.ebuild b/sys-apps/gsmartcontrol/gsmartcontrol-1.0.2.ebuild
deleted file mode 100644
index 66da4d4c59b9..000000000000
--- a/sys-apps/gsmartcontrol/gsmartcontrol-1.0.2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic gnome2-utils
-
-DESCRIPTION="Hard disk drive health inspection tool"
-HOMEPAGE="https://gsmartcontrol.sourceforge.io/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
-
-LICENSE="|| ( GPL-2 GPL-3 ) Boost-1.0 BSD Unlicense ZLIB"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- dev-cpp/gtkmm:3.0
- dev-libs/libpcre:3
- sys-apps/smartmontools
-"
-RDEPEND="${COMMON_DEPEND}
- x11-apps/xmessage
-"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- test? ( dev-util/gtk-builder-convert )
-"
-
-DOCS="TODO" # See 'dist_doc_DATA' value in Makefile.am
-
-src_prepare() {
- default
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- econf $(use test tests)
-}
-
-src_install() {
- default
- rm -f "${ED}"/usr/share/doc/${PF}/LICENSE_* || die
-}
-
-pkg_preinst() { gnome2_icon_savelist; }
-pkg_postinst() { gnome2_icon_cache_update; }
-pkg_postrm() { gnome2_icon_cache_update; }
diff --git a/sys-apps/gsmartcontrol/gsmartcontrol-1.1.3.ebuild b/sys-apps/gsmartcontrol/gsmartcontrol-1.1.3.ebuild
deleted file mode 100644
index 66da4d4c59b9..000000000000
--- a/sys-apps/gsmartcontrol/gsmartcontrol-1.1.3.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic gnome2-utils
-
-DESCRIPTION="Hard disk drive health inspection tool"
-HOMEPAGE="https://gsmartcontrol.sourceforge.io/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
-
-LICENSE="|| ( GPL-2 GPL-3 ) Boost-1.0 BSD Unlicense ZLIB"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- dev-cpp/gtkmm:3.0
- dev-libs/libpcre:3
- sys-apps/smartmontools
-"
-RDEPEND="${COMMON_DEPEND}
- x11-apps/xmessage
-"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- test? ( dev-util/gtk-builder-convert )
-"
-
-DOCS="TODO" # See 'dist_doc_DATA' value in Makefile.am
-
-src_prepare() {
- default
- append-cxxflags -std=c++11
-}
-
-src_configure() {
- econf $(use test tests)
-}
-
-src_install() {
- default
- rm -f "${ED}"/usr/share/doc/${PF}/LICENSE_* || die
-}
-
-pkg_preinst() { gnome2_icon_savelist; }
-pkg_postinst() { gnome2_icon_cache_update; }
-pkg_postrm() { gnome2_icon_cache_update; }
diff --git a/sys-apps/gsmartcontrol/gsmartcontrol-1.1.4-r1.ebuild b/sys-apps/gsmartcontrol/gsmartcontrol-1.1.4-r1.ebuild
new file mode 100644
index 000000000000..2abd71879045
--- /dev/null
+++ b/sys-apps/gsmartcontrol/gsmartcontrol-1.1.4-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic xdg
+
+DESCRIPTION="Hard disk drive health inspection tool"
+HOMEPAGE="https://gsmartcontrol.sourceforge.io/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="|| ( GPL-2 GPL-3 ) Boost-1.0 BSD Unlicense ZLIB"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-cpp/gtkmm:3.0
+ dev-libs/libpcre:3[cxx]
+ sys-apps/smartmontools"
+RDEPEND="${DEPEND}
+ x11-apps/xmessage"
+BDEPEND="virtual/pkgconfig
+ test? ( dev-util/gtk-builder-convert )"
+
+DOCS=( TODO ) # See 'dist_doc_DATA' value in Makefile.am
+
+src_configure() {
+ append-cxxflags -std=c++11
+
+ econf $(use test tests)
+}
+
+src_install() {
+ default
+
+ rm "${ED}"/usr/share/doc/${PF}/LICENSE_* || die
+}
diff --git a/sys-apps/gsmartcontrol/metadata.xml b/sys-apps/gsmartcontrol/metadata.xml
index 222e5fde05cd..46eb3aab15c3 100644
--- a/sys-apps/gsmartcontrol/metadata.xml
+++ b/sys-apps/gsmartcontrol/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<upstream>
+ <remote-id type="github">ashaduri/gsmartcontrol</remote-id>
<remote-id type="sourceforge">gsmartcontrol</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/habitat/Manifest b/sys-apps/habitat/Manifest
deleted file mode 100644
index fac26c94f547..000000000000
--- a/sys-apps/habitat/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST habitat-0.54.0.tar.gz 35324897 BLAKE2B 554a2097c019e61cd6f1facdd0195abbca5e94834819283ddc2d742d196b6768e1da03a8a94f462a17d3c5c751fdddc1499f59a698f73fce170387055a07cbc6 SHA512 4b34de34e6d7b20ab641222636720357c903228aeb6833462ecc3367c6844d9f377d101b3187996e3cf3c179aa7b0c71a83921b4d18d1002fe30e3b25e31a35d
-DIST habitat-cargo-0.54.0.tar.xz 247811208 BLAKE2B 28d79018ff9f1209881908b335a1c77f60c39799fbd02e37ffde6bccc37c46aafe1cb05914c9b373150a0a917fa5b1538a94a8a75127172cf9d15cca5ba90520 SHA512 603e45b6e61b24b5420e57ef1d06bf15a67681525ae7a4210f07d14a072cf116947d28cc754e415f1e35fc6e03ede70cd47706ddf4857b76ac17aa420bf95d07
diff --git a/sys-apps/habitat/habitat-0.54.0.ebuild b/sys-apps/habitat/habitat-0.54.0.ebuild
deleted file mode 100644
index 760312921c1f..000000000000
--- a/sys-apps/habitat/habitat-0.54.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Application automation framework"
-HOMEPAGE="https://github.com/habitat-sh/habitat https://habitat.sh"
-SRC_URI="https://github.com/habitat-sh/habitat/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://dev.gentoo.org/~mrueg/files/${PN}-cargo-${PV}.tar.xz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND=">=net-libs/zeromq-3.2
- virtual/pkgconfig
- >=virtual/rust-1.23"
-
-RESTRICT="test"
-
-src_prepare() {
- default
- # move cache dir where cargo expects it
- mv ../.cargo "${HOME}" || die
-}
-
-src_install() {
- dodoc README.md CHANGELOG.md
- dobin target/debug/hab{,-butterfly,-sup}
-}
-
-src_test() {
- emake unit-all
-}
diff --git a/sys-apps/habitat/metadata.xml b/sys-apps/habitat/metadata.xml
deleted file mode 100644
index 2b27fe032012..000000000000
--- a/sys-apps/habitat/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="github">habitat-sh/habitat</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/haveged/Manifest b/sys-apps/haveged/Manifest
index 35ecce484413..9f024ef91150 100644
--- a/sys-apps/haveged/Manifest
+++ b/sys-apps/haveged/Manifest
@@ -1,3 +1,3 @@
-DIST haveged-1.9.13.tar.gz 495737 BLAKE2B 5a8c154d27ca7dc71e7d34051a5e24ec2bd49be7a68175c351293958261083f2cfb0b318daaf005cc95f6a9b76664df63d4c41d28d4276f6906081d21097475a SHA512 dff0f4273643ed6b2fea26f1ba5c17be3d655d27ab0b96091bcd23e1cb984fc440cc81e694cc7bcc84a9a667d96f3c04a73675f79ecae525ee56390940cce576
-DIST haveged-1.9.2.tar.gz 494682 BLAKE2B a972d128b19fecc3d01e17bd4cf6d5ec03ae716c4b4934c73193e03f3d3f9ff3461a8280ec0a20885499fd334343deb193ddc98b0697b2b14f92fff897bbf59b SHA512 65f70950fb90ef9c24ff3bf1b26e19a9cde2bec4749e2e64d5461a51646a20cf610efa2a5014219b8605957afa0084abd2ba11c7dc15f9379afce784971627b8
-DIST haveged-1.9.8c.tar.gz 494470 BLAKE2B 840aa0b985107feb38a7b5823f94de3473e79f75542565e571c4ec9b2640dddcabb09d598e101678defbdd2eb04fe2fc1fb1f8466157e53d7c41272131450dec SHA512 24167e8a9773d96b3c57cd3e57def7e291f3de86873e796cafc1a59d3f89818c6cb8d46d05e5ae4eb2683fc86b313b1acaed7f210724dadb7df3939e1b3900aa
+DIST haveged-1.9.15.tar.gz 493789 BLAKE2B 08d956651e3e717bdaf42f957bca93d0f74049b38219b2d283c3b0e2dc49be0061c8a58b742c63cb1f8b03f8060ed9816735879d023c5dc606a0362e81b56f75 SHA512 405fe15e3711de503d4d28f5f67fc9f393da03eb80d2a5f6167c3539fda4f11f7e7b8e795a6770d6dfa3273ee887133898c1ca4b41d80c62e1997d8796f4325e
+DIST haveged-1.9.17.tar.gz 495429 BLAKE2B e1f89bc47a9920517ffe9040b4bfcf2fb25e8b7f7404b16fe526fc225550050d602446ccba7442cb68b797c1b12d6e93e1826cc847c27e1a6d3a04814c31b4cb SHA512 0db4fc287dc80b6d7fbe6e1b4a6fb73bcab9db6604b437ac127f4fb4aeef64867d7bb90b24b4286e5e46e85db8e85f4b5fc15f189a8fe1f071ec79c9b5f24095
+DIST haveged-1.9.18.tar.gz 495798 BLAKE2B 73e93fff2edfb39e4b5966fb9e1e631e073d9da3aca3e85ef579a1824f3243484dc4b6891b385358969b1d4224bdbfb2d58a6c3fa62e7bed5fe5a8788c625f49 SHA512 ef2e0ae3be68a8fba16371c3347d52ecf9748269ae30eef2e5c26aad6cfb516f87295e1e56be902df1064e7d4ace04863dd094d62b69e584608f779d63b42d8e
diff --git a/sys-apps/haveged/files/haveged-1.9.8c-threads_build_fix.patch b/sys-apps/haveged/files/haveged-1.9.8c-threads_build_fix.patch
deleted file mode 100644
index fb88a8b51212..000000000000
--- a/sys-apps/haveged/files/haveged-1.9.8c-threads_build_fix.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From cb1f0653c45d9c4a9a855119c85a1d4bfcc9b3b2 Mon Sep 17 00:00:00 2001
-From: Lars Wendler <polynomial-c@gentoo.org>
-Date: Thu, 14 Nov 2019 16:15:00 +0100
-Subject: [PATCH] build: Fix compilation with --enable-threads
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Previously failed with:
-
-havegetune.c:190:12: error: ‘BUILD_THREAD’ undeclared (first use in this function); did you mean ‘BUILD_THREADS’?
- 190 | *bp++ = BUILD_THREAD;
- | ^~~~~~~~~~~~
- | BUILD_THREADS
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
----
- src/havegetune.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/havegetune.c b/src/havegetune.c
-index de39c53..6f14476 100644
---- a/src/havegetune.c
-+++ b/src/havegetune.c
-@@ -187,7 +187,7 @@ void havege_tune( /* RETURN: none */
- *bp++ = BUILD_CPUID;
- #endif
- #if NUMBER_CORES>1
-- *bp++ = BUILD_THREAD;
-+ *bp++ = BUILD_THREADS;
- #endif
- #ifdef ONLINE_TESTS_ENABLE
- *bp++ = BUILD_OLT;
---
-2.24.0
-
diff --git a/sys-apps/haveged/haveged-1.9.13.ebuild b/sys-apps/haveged/haveged-1.9.13.ebuild
deleted file mode 100644
index e312af7ae69d..000000000000
--- a/sys-apps/haveged/haveged-1.9.13.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit systemd
-
-DESCRIPTION="A simple entropy daemon using the HAVEGE algorithm"
-HOMEPAGE="http://www.issihosts.com/haveged/"
-SRC_URI="https://github.com/jirka-h/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE="selinux static-libs threads"
-
-RDEPEND="
- !<sys-apps/openrc-0.11.8
- selinux? ( sec-policy/selinux-entropyd )
-"
-
-src_configure() {
- local myeconfargs=(
- $(use_enable static-libs static)
- $(use_enable threads)
- --bindir=/usr/sbin
- --enable-nistest
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- # Install gentoo ones instead
- newinitd "${FILESDIR}"/haveged-init.d.3 haveged
- newconfd "${FILESDIR}"/haveged-conf.d haveged
-
- systemd_newunit "${FILESDIR}"/service.gentoo ${PN}.service
- insinto /etc
- doins "${FILESDIR}"/haveged.conf
-}
diff --git a/sys-apps/haveged/haveged-1.9.15.ebuild b/sys-apps/haveged/haveged-1.9.15.ebuild
new file mode 100644
index 000000000000..de9a69ac22d6
--- /dev/null
+++ b/sys-apps/haveged/haveged-1.9.15.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit systemd
+
+DESCRIPTION="A simple entropy daemon using the HAVEGE algorithm"
+HOMEPAGE="https://www.issihosts.com/haveged/"
+SRC_URI="https://github.com/jirka-h/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~mips ~ppc ppc64 ~riscv x86"
+IUSE="selinux static-libs threads"
+
+RDEPEND="
+ !<sys-apps/openrc-0.11.8
+ selinux? ( sec-policy/selinux-entropyd )
+"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable static-libs static)
+ $(use_enable threads)
+ --bindir=/usr/sbin
+ --enable-nistest
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # Install gentoo ones instead
+ newinitd "${FILESDIR}"/haveged-init.d.3 haveged
+ newconfd "${FILESDIR}"/haveged-conf.d haveged
+
+ systemd_newunit "${FILESDIR}"/service.gentoo ${PN}.service
+ insinto /etc
+ doins "${FILESDIR}"/haveged.conf
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/haveged/haveged-1.9.17.ebuild b/sys-apps/haveged/haveged-1.9.17.ebuild
new file mode 100644
index 000000000000..9615b9c266ed
--- /dev/null
+++ b/sys-apps/haveged/haveged-1.9.17.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+DESCRIPTION="A simple entropy daemon using the HAVEGE algorithm"
+HOMEPAGE="https://www.issihosts.com/haveged/"
+SRC_URI="https://github.com/jirka-h/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~mips ~ppc ppc64 ~riscv x86"
+IUSE="selinux static-libs threads"
+
+RDEPEND="
+ !<sys-apps/openrc-0.11.8
+ selinux? ( sec-policy/selinux-entropyd )
+"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable static-libs static)
+ $(use_enable threads)
+ --bindir=/usr/sbin
+ --enable-nistest
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # Install gentoo ones instead
+ newinitd "${FILESDIR}"/haveged-init.d.3 haveged
+ newconfd "${FILESDIR}"/haveged-conf.d haveged
+
+ systemd_newunit "${FILESDIR}"/service.gentoo ${PN}.service
+ insinto /etc
+ doins "${FILESDIR}"/haveged.conf
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/haveged/haveged-1.9.18.ebuild b/sys-apps/haveged/haveged-1.9.18.ebuild
new file mode 100644
index 000000000000..5c363d7d3ba2
--- /dev/null
+++ b/sys-apps/haveged/haveged-1.9.18.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+DESCRIPTION="A simple entropy daemon using the HAVEGE algorithm"
+HOMEPAGE="https://www.issihosts.com/haveged/"
+SRC_URI="https://github.com/jirka-h/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv x86"
+IUSE="selinux static-libs threads"
+
+RDEPEND="
+ !<sys-apps/openrc-0.11.8
+ selinux? ( sec-policy/selinux-entropyd )
+"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable static-libs static)
+ $(use_enable threads)
+ --bindir=/usr/sbin
+ --enable-nistest
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # Install gentoo ones instead
+ newinitd "${FILESDIR}"/haveged-init.d.3 haveged
+ newconfd "${FILESDIR}"/haveged-conf.d haveged
+
+ systemd_newunit "${FILESDIR}"/service.gentoo ${PN}.service
+ insinto /etc
+ doins "${FILESDIR}"/haveged.conf
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/haveged/haveged-1.9.2-r1.ebuild b/sys-apps/haveged/haveged-1.9.2-r1.ebuild
deleted file mode 100644
index c3429c8d4723..000000000000
--- a/sys-apps/haveged/haveged-1.9.2-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit systemd
-
-DESCRIPTION="A simple entropy daemon using the HAVEGE algorithm"
-HOMEPAGE="http://www.issihosts.com/haveged/"
-SRC_URI="http://www.issihosts.com/haveged/${P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ~ppc x86"
-IUSE="selinux static-libs"
-
-DEPEND=""
-RDEPEND="!<sys-apps/openrc-0.11.8
- selinux? ( sec-policy/selinux-entropyd )"
-
-# threads are broken right now, but eventually
-# we should add $(use_enable threads)
-src_configure() {
- econf \
- $(use_enable static-libs static) \
- --bindir=/usr/sbin \
- --enable-nistest \
- --disable-threads
-}
-
-src_install() {
- default
-
- # Install gentoo ones instead
- newinitd "${FILESDIR}"/haveged-init.d.3 haveged
- newconfd "${FILESDIR}"/haveged-conf.d haveged
-
- systemd_newunit "${FILESDIR}"/service.gentoo ${PN}.service
- insinto /etc
- doins "${FILESDIR}"/haveged.conf
-}
diff --git a/sys-apps/haveged/haveged-1.9.8c.ebuild b/sys-apps/haveged/haveged-1.9.8c.ebuild
deleted file mode 100644
index 52a76b0dcb25..000000000000
--- a/sys-apps/haveged/haveged-1.9.8c.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit systemd
-
-DESCRIPTION="A simple entropy daemon using the HAVEGE algorithm"
-HOMEPAGE="http://www.issihosts.com/haveged/"
-SRC_URI="https://github.com/jirka-h/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ~ppc ~ppc64 x86"
-IUSE="selinux static-libs threads"
-
-RDEPEND="
- !<sys-apps/openrc-0.11.8
- selinux? ( sec-policy/selinux-entropyd )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.9.8c-threads_build_fix.patch"
-)
-
-src_configure() {
- local myeconfargs=(
- $(use_enable static-libs static)
- $(use_enable threads)
- --bindir=/usr/sbin
- --enable-nistest
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- # Install gentoo ones instead
- newinitd "${FILESDIR}"/haveged-init.d.3 haveged
- newconfd "${FILESDIR}"/haveged-conf.d haveged
-
- systemd_newunit "${FILESDIR}"/service.gentoo ${PN}.service
- insinto /etc
- doins "${FILESDIR}"/haveged.conf
-}
diff --git a/sys-apps/haveged/metadata.xml b/sys-apps/haveged/metadata.xml
index f583146d8316..62ccdfb2e8cb 100644
--- a/sys-apps/haveged/metadata.xml
+++ b/sys-apps/haveged/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>blueness@gentoo.org</email>
- <name>Anthony G. Basile</name>
- </maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>sysadmin@gentoo.org</email>
<name>Gentoo Sysadmin Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">jirka-h/haveged</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/hd-idle/files/hd-idle-dropin.conf b/sys-apps/hd-idle/files/hd-idle-dropin.conf
new file mode 100644
index 000000000000..d8c9eea5ff89
--- /dev/null
+++ b/sys-apps/hd-idle/files/hd-idle-dropin.conf
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# override settings for hd-idle
+
+# hd-idle command line options
+# Options are:
+# -a Set (partial) device name of disks for subsequent
+# idle-time parameters (-i). This parameter is optional
+# in the sense that there's a default entry for all
+# disks which are not named otherwise by using this
+# parameter.
+# -i <idle_time> Idle time in seconds.
+# -l <logfile> Name of logfile (written only after a disk has spun
+# up). Please note that this option might cause the
+# disk which holds the logfile to spin up just because
+# another disk had some activity. This option should
+# not be used on systems with more than one disk
+# except for tuning purposes. On single-disk systems,
+# this option should not cause any additional spinups.
+#
+# Options not exactly useful here:
+# -t <disk> Spin-down the specfified disk immediately and exit.
+# -d Debug mode. This will prevent hd-idle from
+# becoming a daemon and print debugging info to
+# stdout/stderr
+# -h Print usage information.
+
+# To override, uncomment the following line to override ExecStart:
+#ExecStart=/usr/sbin/hd-idle -i 180 -l /var/log/hd-idle.log
diff --git a/sys-apps/hd-idle/files/hd-idle-service b/sys-apps/hd-idle/files/hd-idle-service
deleted file mode 100644
index f69c1d754b68..000000000000
--- a/sys-apps/hd-idle/files/hd-idle-service
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-[Unit]
-Description=hd-idle - spinning down HDDs after a period of idle time
-Documentation=man:hd-idle(1)
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/hd-idle
-ExecStart=/usr/sbin/hd-idle $HD_IDLE_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/sys-apps/hd-idle/files/hd-idle.service b/sys-apps/hd-idle/files/hd-idle.service
new file mode 100644
index 000000000000..4b33904483bc
--- /dev/null
+++ b/sys-apps/hd-idle/files/hd-idle.service
@@ -0,0 +1,12 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+[Unit]
+Description=hd-idle - spinning down HDDs after a period of idle time
+Documentation=man:hd-idle(1)
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/hd-idle -i 180 -l /var/log/hd-idle.log
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-apps/hd-idle/hd-idle-1.05-r1.ebuild b/sys-apps/hd-idle/hd-idle-1.05-r1.ebuild
deleted file mode 100644
index d65adc91bc74..000000000000
--- a/sys-apps/hd-idle/hd-idle-1.05-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit linux-info systemd
-
-DESCRIPTION="Utility for spinning down hard disks after a period of idle time"
-HOMEPAGE="http://hd-idle.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-S="${WORKDIR}/${PN}"
-
-CONFIG_CHECK="~PROC_FS"
-
-DOCS=( debian/changelog README )
-
-src_install() {
- default
- systemd_newunit "${FILESDIR}"/hd-idle-service ${PN}.service
- newinitd "${FILESDIR}"/hd-idle-init hd-idle
- newconfd "${FILESDIR}"/hd-idle-conf hd-idle
-}
diff --git a/sys-apps/hd-idle/hd-idle-1.05-r2.ebuild b/sys-apps/hd-idle/hd-idle-1.05-r2.ebuild
new file mode 100644
index 000000000000..139080ba4c64
--- /dev/null
+++ b/sys-apps/hd-idle/hd-idle-1.05-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info systemd
+
+DESCRIPTION="Utility for spinning down hard disks after a period of idle time"
+HOMEPAGE="https://hd-idle.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+S="${WORKDIR}/${PN}"
+
+CONFIG_CHECK="~PROC_FS"
+
+DOCS=( debian/changelog README )
+
+src_install() {
+ default
+ systemd_newunit "${FILESDIR}"/hd-idle.service ${PN}.service
+ systemd_install_serviced "${FILESDIR}"/hd-idle-dropin.conf
+ newinitd "${FILESDIR}"/hd-idle-init hd-idle
+ newconfd "${FILESDIR}"/hd-idle-conf hd-idle
+
+ elog "The systemd unit file for hd-idle no longer sources ${EPREFIX}/etc/conf.d/hd-idle ."
+ elog "Configuration is still done via ${EPREFIX}/etc/conf.d/hd-idle for OpenRC systems"
+ elog "while for systemd systems, a systemd drop-in file located at"
+ elog "${EPREFIX}/etc/systemd/system/hd-idle.service.d/00gentoo.conf"
+ elog "is used for configuration."
+}
diff --git a/sys-apps/hd-idle/metadata.xml b/sys-apps/hd-idle/metadata.xml
index 4687c9a5147b..7929538ff69a 100644
--- a/sys-apps/hd-idle/metadata.xml
+++ b/sys-apps/hd-idle/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>o.freyermuth@googlemail.com</email>
<name>Oliver Freyermuth</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/hdparm/Manifest b/sys-apps/hdparm/Manifest
index 8f621eb7d101..73fd9a66fa6f 100644
--- a/sys-apps/hdparm/Manifest
+++ b/sys-apps/hdparm/Manifest
@@ -1,2 +1 @@
-DIST hdparm-9.56.tar.gz 137213 BLAKE2B ffea04fb2cb14fd9ee01f0583c5fbe8d0c24d3dcecaa68750653e0475d97b86f1a39bde43ca1feb68f393606613c6a4cc8090e714eb60b1a30e223929b1fcadd SHA512 5dee7211a2528920bd197d45217a7b58df933c2500d224d39a8bb89c4d3f340962953e17b7b5f66fd52205a3a3b225d5bc0b75fc7af0f064f8ea092b55090b03
-DIST hdparm-9.58.tar.gz 138845 BLAKE2B 29e2697afaedcfbb1d7dea2238f9477afd932d553166437abbf068b8b3f3a5445a0b8542714d8a15e3c64f42a794c2603fe626ed936b4dbdeb8e4fe63afc5f46 SHA512 42fb70f494aae4cc205ca68c3e883e1f4fc33e8ced1914e280e9f3faa7233d3f839e59178ec09ddb9d32e9d2bca122ce324645ecb5ac73defa284030ac7d3cea
+DIST hdparm-9.65.tar.gz 140425 BLAKE2B 79b1c16e7807f82a992ed7f22faef57045c56da4a281fbd8db3b8846b193ccc4b42329fa6abbebf8b652fbefb13aa0f18dfa726e802e8e1a45c94f414fb303b9 SHA512 4ffc8902b90cee10d68af8ddb9f3b9454d523ecd49cdaaed254b4d7a999462a8ad5ec1bb5d7684b09fefa41b5941ab533b167dad290003b51c795a633ca88913
diff --git a/sys-apps/hdparm/files/hdparm-9.51-build.patch b/sys-apps/hdparm/files/hdparm-9.51-build.patch
deleted file mode 100644
index 2c6bdba68e3f..000000000000
--- a/sys-apps/hdparm/files/hdparm-9.51-build.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-* drop hardcoded -O2 flag from CFLAGS
-* drop hardcoded -s (strip) flag from LDFLAGS, and respect user LDFLAGS
-* fix hardcoded `make` and hardcoded -j2 flags
-* respect CFLAGS when linking
-
---- hdparm-9.51/Makefile
-+++ hdparm-9.51/Makefile
-@@ -13,9 +13,8 @@
- CC ?= gcc
- STRIP ?= strip
-
--CFLAGS := -O2 -W -Wall -Wbad-function-cast -Wcast-align -Wpointer-arith -Wcast-qual -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -fkeep-inline-functions -Wwrite-strings -Waggregate-return -Wnested-externs -Wtrigraphs $(CFLAGS)
-+CFLAGS += -W -Wall -Wbad-function-cast -Wcast-align -Wpointer-arith -Wcast-qual -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -fkeep-inline-functions -Wwrite-strings -Waggregate-return -Wnested-externs -Wtrigraphs
-
--LDFLAGS = -s
- #LDFLAGS = -s -static
- INSTALL = install
- INSTALL_DATA = $(INSTALL) -m 644
-@@ -24,11 +23,10 @@
-
- OBJS = hdparm.o identify.o sgio.o sysfs.o geom.o fallocate.o fibmap.o fwdownload.o dvdspeed.o wdidle3.o
-
--all:
-- $(MAKE) -j4 hdparm
-+all: hdparm
-
- hdparm: hdparm.h sgio.h $(OBJS)
-- $(CC) $(LDFLAGS) -o hdparm $(OBJS)
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o hdparm $(OBJS)
- $(STRIP) hdparm
-
- hdparm.o: hdparm.h sgio.h
diff --git a/sys-apps/hdparm/files/hdparm-9.60-build.patch b/sys-apps/hdparm/files/hdparm-9.60-build.patch
new file mode 100644
index 000000000000..3cc1a7564e35
--- /dev/null
+++ b/sys-apps/hdparm/files/hdparm-9.60-build.patch
@@ -0,0 +1,32 @@
+* drop hardcoded -O2 flag from CFLAGS
+* fix hardcoded `make` and hardcoded -j4 flags
+* respect CFLAGS when linking
+
+--- hdparm-9.60/Makefile
++++ hdparm-9.60/Makefile
+@@ -13,7 +13,7 @@
+ CC ?= gcc
+ STRIP ?= strip
+
+-CFLAGS := -O2 -W -Wall -Wbad-function-cast -Wcast-align -Wpointer-arith -Wcast-qual -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -fkeep-inline-functions -Wwrite-strings -Waggregate-return -Wnested-externs -Wtrigraphs $(CFLAGS)
++CFLAGS += -W -Wall -Wbad-function-cast -Wcast-align -Wpointer-arith -Wcast-qual -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -fkeep-inline-functions -Wwrite-strings -Waggregate-return -Wnested-externs -Wtrigraphs
+
+ INSTALL = install
+ INSTALL_DATA = $(INSTALL) -m 644
+@@ -22,14 +22,13 @@
+
+ OBJS = hdparm.o identify.o sgio.o sysfs.o geom.o fallocate.o fibmap.o fwdownload.o dvdspeed.o wdidle3.o apt.o
+
+-all:
+- $(MAKE) -j4 hdparm
++all: hdparm
+
+ static:
+ LDFLAGS=-static $(MAKE)
+
+ hdparm: Makefile hdparm.h sgio.h $(OBJS)
+- $(CC) $(LDFLAGS) -o hdparm $(OBJS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o hdparm $(OBJS)
+ $(STRIP) hdparm
+
+ hdparm.o: hdparm.h sgio.h
diff --git a/sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch b/sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch
new file mode 100644
index 000000000000..bb8df3735deb
--- /dev/null
+++ b/sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch
@@ -0,0 +1,16 @@
+# Guard _LARGEFILE64_SOURCE define to avoid warning with append-lfs-flags
+# https://bugs.gentoo.org/914505
+diff --git a/hdparm.c b/hdparm.c
+index eb9796b..a3204f9 100644
+--- a/hdparm.c
++++ b/hdparm.c
+@@ -4,7 +4,9 @@
+ */
+ #define HDPARM_VERSION "v9.65"
+
++#ifndef _LARGEFILE64_SOURCE
+ #define _LARGEFILE64_SOURCE /*for lseek64*/
++#endif
+ #define _BSD_SOURCE /* for strtoll() */
+ #include <unistd.h>
+ #include <stdlib.h>
diff --git a/sys-apps/hdparm/hdparm-9.56.ebuild b/sys-apps/hdparm/hdparm-9.56.ebuild
deleted file mode 100644
index acb642f6568a..000000000000
--- a/sys-apps/hdparm/hdparm-9.56.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="Utility to change hard drive performance parameters"
-HOMEPAGE="https://sourceforge.net/projects/hdparm/"
-SRC_URI="mirror://sourceforge/hdparm/${P}.tar.gz"
-
-LICENSE="BSD GPL-2" # GPL-2 only
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-9.51-build.patch
-)
-
-src_prepare() {
- default
- use static && append-ldflags -static
-}
-
-src_configure() {
- tc-export CC
- export STRIP=:
-}
-
-src_install() {
- into /
- dosbin hdparm contrib/idectl
-
- newinitd "${FILESDIR}"/hdparm-init-8 hdparm
- newconfd "${FILESDIR}"/hdparm-conf.d.3 hdparm
-
- doman hdparm.8
- dodoc hdparm.lsm Changelog README.acoustic hdparm-sysconfig
- docinto wiper
- dodoc wiper/{README.txt,wiper.sh}
- docompress -x /usr/share/doc/${PF}/wiper/wiper.sh
-}
diff --git a/sys-apps/hdparm/hdparm-9.58.ebuild b/sys-apps/hdparm/hdparm-9.58.ebuild
deleted file mode 100644
index acb642f6568a..000000000000
--- a/sys-apps/hdparm/hdparm-9.58.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="Utility to change hard drive performance parameters"
-HOMEPAGE="https://sourceforge.net/projects/hdparm/"
-SRC_URI="mirror://sourceforge/hdparm/${P}.tar.gz"
-
-LICENSE="BSD GPL-2" # GPL-2 only
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-9.51-build.patch
-)
-
-src_prepare() {
- default
- use static && append-ldflags -static
-}
-
-src_configure() {
- tc-export CC
- export STRIP=:
-}
-
-src_install() {
- into /
- dosbin hdparm contrib/idectl
-
- newinitd "${FILESDIR}"/hdparm-init-8 hdparm
- newconfd "${FILESDIR}"/hdparm-conf.d.3 hdparm
-
- doman hdparm.8
- dodoc hdparm.lsm Changelog README.acoustic hdparm-sysconfig
- docinto wiper
- dodoc wiper/{README.txt,wiper.sh}
- docompress -x /usr/share/doc/${PF}/wiper/wiper.sh
-}
diff --git a/sys-apps/hdparm/hdparm-9.65-r2.ebuild b/sys-apps/hdparm/hdparm-9.65-r2.ebuild
new file mode 100644
index 000000000000..c74d588fb2a5
--- /dev/null
+++ b/sys-apps/hdparm/hdparm-9.65-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs flag-o-matic
+
+DESCRIPTION="Utility to change hard drive performance parameters"
+HOMEPAGE="https://sourceforge.net/projects/hdparm/"
+SRC_URI="mirror://sourceforge/hdparm/${P}.tar.gz"
+
+# GPL-2 only
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-9.60-build.patch
+ "${FILESDIR}"/${P}-graceful-lfs.patch
+)
+
+src_prepare() {
+ default
+
+ use static && append-ldflags -static
+}
+
+src_configure() {
+ append-lfs-flags
+}
+
+src_compile() {
+ emake STRIP="true" CC="$(tc-getCC)"
+}
+
+src_install() {
+ into /
+ dosbin hdparm contrib/idectl
+
+ newinitd "${FILESDIR}"/hdparm-init-8 hdparm
+ newconfd "${FILESDIR}"/hdparm-conf.d.3 hdparm
+
+ doman hdparm.8
+ dodoc hdparm.lsm Changelog README.acoustic hdparm-sysconfig
+
+ docinto wiper
+ dodoc wiper/{README.txt,wiper.sh}
+ docompress -x /usr/share/doc/${PF}/wiper/wiper.sh
+}
diff --git a/sys-apps/hdparm/metadata.xml b/sys-apps/hdparm/metadata.xml
index dc7b6247e89e..8b7682960b2d 100644
--- a/sys-apps/hdparm/metadata.xml
+++ b/sys-apps/hdparm/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="sourceforge">hdparm</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">hdparm</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/heirloom-tools/heirloom-tools-070715-r3.ebuild b/sys-apps/heirloom-tools/heirloom-tools-070715-r3.ebuild
deleted file mode 100644
index 1374a47e8583..000000000000
--- a/sys-apps/heirloom-tools/heirloom-tools-070715-r3.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Heirloom toolchest - original Unix tools"
-HOMEPAGE="http://heirloom.sourceforge.net/tools.html"
-SRC_URI="http://downloads.sourceforge.net/project/heirloom/heirloom/${PV}/heirloom-${PV}.tar.bz2"
-
-LICENSE="CDDL GPL-2 LGPL-2.1 9base ZLIB"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- sys-libs/zlib
-"
-DEPEND=${RDEPEND}
-BDEPEND="
- sys-apps/ed
- sys-devel/bc
- virtual/pkgconfig
-"
-S="${WORKDIR}/heirloom-${PV}"
-PATCHES=(
- "${FILESDIR}"/${P}-major.patch
- "${FILESDIR}"/${P}-makefile.patch
- "${FILESDIR}"/${P}-glibc-2.30.patch
- "${FILESDIR}"/${P}-glibc-2.31.patch
- "${FILESDIR}"/${P}-gcc-10.patch
- "${FILESDIR}"/${P}-clang.patch
-)
-
-# slightly broken
-RESTRICT="test"
-
-src_prepare() {
- default
-
- sed -i "s/\bar\b/$(tc-getAR)/g" libwchar/Makefile.mk || die
-}
-
-src_compile() {
- append-cppflags -D_GNU_SOURCE
- emake -j1 \
- CC="$(tc-getCC)" \
- AR="$(tc-getAR)" \
- RANLIB="$(tc-getRANLIB)" \
- CFLAGS="${CFLAGS}" \
- CFLAGS2="${CFLAGS}" \
- CFLAGSS="${CFLAGS}" \
- CFLAGSU="${CFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LCURS="$( $(tc-getPKG_CONFIG) --libs ncurses)" \
- LDFLAGS="${LDFLAGS}" \
- ROOT="${ED}" \
- DEFBIN="/usr/bin/${PN}/5bin" \
- DEFSBIN="/usr/bin/${PN}/5bin" \
- SV3BIN="/usr/bin/${PN}/5bin" \
- S42BIN="/usr/bin/${PN}/5bin/s42" \
- SUSBIN="/usr/bin/${PN}/5bin/posix" \
- UCBBIN="/usr/bin/${PN}/ucb" \
- CCSBIN="/usr/bin/${PN}/ccs/bin" \
- SU3BIN="/usr/bin/${PN}/5bin/posix2001" \
- DEFLIB="/usr/bin/${PN}/5lib" \
- LIBZ=-lz
-}
-
-src_install() {
- # we don't want to strip here, so use "true" as noop
- emake -j1 \
- STRIP="true" \
- ROOT="${ED}" \
- DEFBIN="/usr/bin/${PN}/5bin" \
- DEFSBIN="/usr/bin/${PN}/5bin" \
- SV3BIN="/usr/bin/${PN}/5bin" \
- S42BIN="/usr/bin/${PN}/5bin/s42" \
- SUSBIN="/usr/bin/${PN}/5bin/posix" \
- UCBBIN="/usr/bin/${PN}/ucb" \
- CCSBIN="/usr/bin/${PN}/ccs/bin" \
- SU3BIN="/usr/bin/${PN}/5bin/posix2001" \
- DEFLIB="/usr/bin/${PN}/5lib" \
- install
-}
-
-pkg_postinst() {
- elog "You may want to adjust your \$PATH, to enable "
- elog "using the apps of heirloom toolchest by default."
- elog "Man pages are installed in /usr/share/man/5man/"
- elog "You may need to set \$MANPATH to access them."
-}
diff --git a/sys-apps/heirloom-tools/heirloom-tools-070715-r6.ebuild b/sys-apps/heirloom-tools/heirloom-tools-070715-r6.ebuild
new file mode 100644
index 000000000000..f3749259531a
--- /dev/null
+++ b/sys-apps/heirloom-tools/heirloom-tools-070715-r6.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic readme.gentoo-r1 toolchain-funcs
+
+DESCRIPTION="Heirloom toolchest - original Unix tools"
+HOMEPAGE="https://heirloom.sourceforge.net/tools.html"
+SRC_URI="mirror://sourceforge/heirloom/heirloom/${PV}/heirloom-${PV}.tar.bz2"
+S="${WORKDIR}/heirloom-${PV}"
+
+LICENSE="ZLIB BSD BSD-4 CDDL GPL-2+ LGPL-2.1+ LPL-1.02 Info-ZIP public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# slightly broken
+RESTRICT="test"
+
+RDEPEND="
+ sys-libs/ncurses:=
+ sys-libs/zlib
+ virtual/libcrypt:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-apps/ed
+ app-alternatives/bc
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-major.patch
+ "${FILESDIR}"/${P}-makefile.patch
+ "${FILESDIR}"/${P}-glibc-2.30.patch
+ "${FILESDIR}"/${P}-glibc-2.31.patch
+ "${FILESDIR}"/${P}-gcc-10.patch
+ "${FILESDIR}"/${P}-clang.patch
+)
+
+src_prepare() {
+ default
+ sed -i "s:\bar\b:$(tc-getAR):g" libwchar/Makefile.mk || die
+}
+
+src_compile() {
+ mypaths=(
+ DEFBIN="${EPREFIX}/usr/lib/${PN}/5bin"
+ SV3BIN="${EPREFIX}/usr/lib/${PN}/5bin"
+ S42BIN="${EPREFIX}/usr/lib/${PN}/5bin/s42"
+ SUSBIN="${EPREFIX}/usr/lib/${PN}/5bin/posix"
+ SU3BIN="${EPREFIX}/usr/lib/${PN}/5bin/posix2001"
+ UCBBIN="${EPREFIX}/usr/lib/${PN}/ucb"
+ CCSBIN="${EPREFIX}/usr/lib/${PN}/ccs/bin"
+ DEFLIB="${EPREFIX}/usr/lib/${PN}/5lib"
+ DEFSBIN="${EPREFIX}/usr/lib/${PN}/5bin"
+ MANDIR="${EPREFIX}/usr/share/man/5man"
+ DFLDIR="${EPREFIX}/etc/default"
+ SPELLHIST="/dev/null"
+ SULOG="${EPREFIX}/var/log/sulog"
+ )
+
+ append-cppflags -D_GNU_SOURCE
+ emake -j1 \
+ CC="$(tc-getCC)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ CFLAGS="${CFLAGS}" \
+ CFLAGS2="${CFLAGS}" \
+ CFLAGSS="${CFLAGS}" \
+ CFLAGSU="${CFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LCURS="$($(tc-getPKG_CONFIG) --libs ncurses)" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBZ="-lz" \
+ "${mypaths[@]}"
+}
+
+src_install() {
+ # we don't want to strip here, so use "true" as noop
+ emake -j1 \
+ STRIP="true" \
+ ROOT="${D}" \
+ "${mypaths[@]}" \
+ install
+ rm -r "${D}/dev" || die
+
+ dodoc CHANGES README
+
+ local DOC_CONTENTS="You may want to adjust your PATH, to enable
+ using the apps of ${PN} by default.
+ \\n\\nMan pages are installed in /usr/share/man/5man/.
+ You may need to set MANPATH to access them."
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/sys-apps/heirloom-tools/metadata.xml b/sys-apps/heirloom-tools/metadata.xml
index b6887e34071b..2cdf55106bc5 100644
--- a/sys-apps/heirloom-tools/metadata.xml
+++ b/sys-apps/heirloom-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/help2man/Manifest b/sys-apps/help2man/Manifest
index dc717cbf51e1..6a83922c1ec3 100644
--- a/sys-apps/help2man/Manifest
+++ b/sys-apps/help2man/Manifest
@@ -1 +1 @@
-DIST help2man-1.47.16.tar.xz 203036 BLAKE2B 8e06c2c2e90adfc2ab8345908516b15ae50b02a7a9554d5d9beee4373b71c131aeaa0c148b9a988c531bbfe2149c25069af56a79101a4248b6c1adfeb734a132 SHA512 b427e60a9e3d2e805caf1ae84c337b09c7ca6f92b7ff14771f946c4a1bf7adf177df99b9c1c223ad76df99756005ababf5b548ff8e08d4746702ff7f8150b544
+DIST help2man-1.49.3.tar.xz 228472 BLAKE2B a5ed9ea3ff78b5287fa5bc02302da6a3657fee8fefd4fc43289e209bbe128d58da633c38aa4039c93a761c4842d3549a73cc14e77ee2859ed256613a8fba6e23 SHA512 5f19fad1e38b0572b63ed8bfd146b717fc22dff3a26641e8b5c8431df13da9574679d9a3407da62790db8a29286694ea1bfd751cba168f475302ad31cce845cf
diff --git a/sys-apps/help2man/help2man-1.47.16.ebuild b/sys-apps/help2man/help2man-1.47.16.ebuild
deleted file mode 100644
index 0600e090e0c0..000000000000
--- a/sys-apps/help2man/help2man-1.47.16.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="GNU utility to convert program --help output to a man page"
-HOMEPAGE="https://www.gnu.org/software/help2man/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="nls"
-
-RDEPEND="dev-lang/perl
- nls? ( dev-perl/Locale-gettext )"
-DEPEND="${RDEPEND}"
-
-DOCS=( debian/changelog NEWS README THANKS ) #385753
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.46.1-linguas.patch
-)
-
-src_prepare() {
- if [[ ${CHOST} == *-darwin* ]] ; then
- sed -i \
- -e 's/-shared/-bundle/' \
- Makefile.in || die
- fi
- default
-}
-
-src_configure() {
- # Disable gettext requirement as the release includes the gmo files #555018
- local myeconfargs=(
- ac_cv_path_MSGFMT=$(type -P false)
- $(use_enable nls)
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/help2man/help2man-1.49.3.ebuild b/sys-apps/help2man/help2man-1.49.3.ebuild
new file mode 100644
index 000000000000..c5dc38f13145
--- /dev/null
+++ b/sys-apps/help2man/help2man-1.49.3.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="GNU utility to convert program --help output to a man page"
+HOMEPAGE="https://www.gnu.org/software/help2man/ https://salsa.debian.org/bod/help2man"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+# nls/FSFAP for bindtextdomain.c
+LICENSE="GPL-3+ nls? ( FSFAP )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="nls"
+
+RDEPEND="dev-lang/perl
+ nls? ( dev-perl/Locale-gettext )"
+DEPEND="${RDEPEND}"
+
+# bug #385753
+DOCS=( debian/changelog NEWS README THANKS )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.46.1-linguas.patch
+)
+
+src_prepare() {
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed -i \
+ -e 's/-shared/-bundle/' \
+ Makefile.in || die
+ fi
+
+ default
+}
+
+src_configure() {
+ # Disable gettext requirement as the release includes the gmo files, bug #555018
+ local myeconfargs=(
+ ac_cv_path_MSGFMT=$(type -P false)
+ $(use_enable nls)
+ )
+
+ econf "${myeconfargs[@]}"
+}
diff --git a/sys-apps/help2man/metadata.xml b/sys-apps/help2man/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/help2man/metadata.xml
+++ b/sys-apps/help2man/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/hexdump-esr/Manifest b/sys-apps/hexdump-esr/Manifest
deleted file mode 100644
index 3a5f578f6d5d..000000000000
--- a/sys-apps/hexdump-esr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hexdump-1.8.tar.gz 7463 BLAKE2B 337a388e86a360a7493b8e40fee0adca64e552d41477d341bf03f346d207ac3baa3fcf1ef9fc5b7be66e9f3b6b59ceb2ccd2bcce9550f1a17212aa28acc2dbc9 SHA512 a0f0b9f0386b895b0dd07223e93ca72a7d87f4b0ad663d340cea8266ed7e801178b120c6a78b797a9e12412e7b9c76b45b8e395d1892c7ba3956a90dee45db3d
diff --git a/sys-apps/hexdump-esr/hexdump-esr-1.8.ebuild b/sys-apps/hexdump-esr/hexdump-esr-1.8.ebuild
deleted file mode 100644
index 309feaa76fac..000000000000
--- a/sys-apps/hexdump-esr/hexdump-esr-1.8.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit toolchain-funcs
-
-MY_P="${P/-esr/}"
-
-DESCRIPTION="Eric Raymond's hex dumper"
-HOMEPAGE="http://www.catb.org/~esr/hexdump/"
-SRC_URI="http://www.catb.org/~esr/hexdump/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-S="${WORKDIR}/${MY_P}"
-
-# tests are broken in this release(missing files)
-RESTRICT="test"
-
-src_prepare() {
- sed -i Makefile \
- -e "s|-O |${CFLAGS} ${LDFLAGS} |g" \
- || die "sed on Makefile failed"
- tc-export CC
-}
-
-src_install() {
- newbin hexdump ${PN}
- newman hexdump.1 ${PN}.1
- dodoc NEWS README
- dosym ${PN} /usr/bin/hex
-}
diff --git a/sys-apps/hexdump-esr/metadata.xml b/sys-apps/hexdump-esr/metadata.xml
deleted file mode 100644
index 6f49eba8f496..000000000000
--- a/sys-apps/hexdump-esr/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/sys-apps/highway/highway-1.1.0-r1.ebuild b/sys-apps/highway/highway-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..a0aaaa41a09b
--- /dev/null
+++ b/sys-apps/highway/highway-1.1.0-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="High performance source code search tool"
+HOMEPAGE="https://github.com/tkengo/highway"
+SRC_URI="https://github.com/tkengo/highway/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/highway/highway-1.1.0.ebuild b/sys-apps/highway/highway-1.1.0.ebuild
deleted file mode 100644
index 812b73d8fffa..000000000000
--- a/sys-apps/highway/highway-1.1.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="High performance source code search tool"
-HOMEPAGE="https://github.com/tkengo/highway"
-SRC_URI="https://github.com/tkengo/highway/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-IUSE=""
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-src_prepare()
-{
- default
- eautoreconf
-}
diff --git a/sys-apps/highway/metadata.xml b/sys-apps/highway/metadata.xml
index fe4d17c2ec3b..1b7fbf354a84 100644
--- a/sys-apps/highway/metadata.xml
+++ b/sys-apps/highway/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>otakuto.gentoo@gmail.com</email>
<name>Tact Yoshida</name>
</maintainer>
@@ -9,7 +9,7 @@
<email>alicef@gentoo.org</email>
<name>Ferrazzi Alice</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/hotplug2stdout/hotplug2stdout-1.2.1.ebuild b/sys-apps/hotplug2stdout/hotplug2stdout-1.2.1.ebuild
index 24d87721c34c..c38d1da44a2b 100644
--- a/sys-apps/hotplug2stdout/hotplug2stdout-1.2.1.ebuild
+++ b/sys-apps/hotplug2stdout/hotplug2stdout-1.2.1.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
+
inherit toolchain-funcs
DESCRIPTION="A tool for reading kernel uevent(s) to stdout"
@@ -12,8 +13,19 @@ SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
-src_prepare() { rm -f ${PN}; }
-src_compile() { $(tc-getCC) ${LDFLAGS} ${CFLAGS} ${CPPFLAGS} ${PN}.c -o ${PN} || die; }
-src_install() { dobin ${PN}; }
+src_prepare() {
+ default
+
+ # Clean up prebuilt binary
+ rm -f ${PN} || die
+}
+
+src_compile() {
+ elog "$(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} ${PN}.c -o ${PN}"
+ $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} ${PN}.c -o ${PN} || die
+}
+
+src_install() {
+ dobin ${PN}
+}
diff --git a/sys-apps/hotplug2stdout/metadata.xml b/sys-apps/hotplug2stdout/metadata.xml
index 7a38bb900964..115e9d64a669 100644
--- a/sys-apps/hotplug2stdout/metadata.xml
+++ b/sys-apps/hotplug2stdout/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/hponcfg/Manifest b/sys-apps/hponcfg/Manifest
index e452b9168ac2..a9b64ea563bd 100644
--- a/sys-apps/hponcfg/Manifest
+++ b/sys-apps/hponcfg/Manifest
@@ -1,4 +1 @@
-DIST hponcfg-4.6.0-0.i386.rpm 39344 BLAKE2B a1fb8c4237eae8caa90086b49dd89ad641c77663e0c98f82ec97724564437837223ea3acd15136aaf6c575e35923f2e804766c51179771aead9800ecae424cd1 SHA512 534e2d656349e34c539755d807456a671363640ca8dd6853787dbf7f2a594acb88478b59b2e21ca07b8c6f118f6ad3c2e0eb1ec072484db6a8fb707bd593e0e7
-DIST hponcfg-4.6.0-0.x86_64.rpm 44121 BLAKE2B 5fb073a0789380527066087a14e1806bd98a7ee76da18facbc578b0aff397a73df8a3236c22939bda4e8af19e3b6a03670947998c666fdd9b8e390a77be6d9e3 SHA512 830abe6816295fa7e0888e0848d707ab41510a9ea6dc17d01fd5de2fa56faf49af43ef6698aa379ac8baa6ab729262e77e209b90103ce67d45bf6f0b2d4df142
-DIST hponcfg-5.4.0-0.x86_64.rpm 59246 BLAKE2B 50979eec63121ad89fa2e13eb286236b1cd6fc02269ba93767a9cf19a7782aea570577f98cb307e75c73fcac1fc8bc8c281f21187be157cb816253751d263ed6 SHA512 55583acd1a9e5a639fe63ecff051af9676518130e431ba76a0cdbf2ba18f4b600aaae8388895631eb0b9be343e110b5fe39dc4ab844c3a2afef0bc601756c04c
-DIST hponcfg-5.5.0-0.x86_64.rpm 60092 BLAKE2B 8a81b1b0e3f0cd81e5a3861d1f7e0f5a07ed32cd0efac2c77d8c8b94666a44daf7cb289e53b1610cb5ea66782c256dce652f897f15370a2c7d129ffc6c47f6c1 SHA512 478b94f9a99be7f1cab10e909d33b804a0831159c5829dbdcfa78df02aa5fd9a140f0f036c2e9556e2ffb90ac85bf0efcfddc137665fd438c6379fa0eb43ce74
+DIST hponcfg-5.6.0-0.x86_64.rpm 60457 BLAKE2B 88ed71e20e7c7db28b0228974ed0ca41726d3b1f976005b211013028c9ca9a8704c26119c2a41525458e87515d06c57232d109d795fd9bb0096366f91d7523d7 SHA512 7685584ff9ab3f3f23ff77017de194ba935cbddee2ba8946299ed25399fd67ce58697fc754071ecf2c6e3f926a82da89307088cf8b721efd3667397025a73db7
diff --git a/sys-apps/hponcfg/hponcfg-4.6.0.0.ebuild b/sys-apps/hponcfg/hponcfg-4.6.0.0.ebuild
deleted file mode 100644
index d8e4a559205d..000000000000
--- a/sys-apps/hponcfg/hponcfg-4.6.0.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit pax-utils rpm versionator
-
-MY_PV=$(replace_version_separator 3 '-')
-
-DESCRIPTION="HP Lights-Out Online Configuration Utility (HPONCFG)"
-HOMEPAGE="http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_5ab6295f49964f16a699064f29"
-SRC_URI="
- amd64? ( https://downloads.linux.hpe.com/SDR/repo/spp/RHEL/6/x86_64/current/${PN}-${MY_PV}.x86_64.rpm )
- x86? ( https://downloads.linux.hpe.com/SDR/repo/spp/RHEL/6/i686/current/${PN}-${MY_PV}.i386.rpm )"
-
-LICENSE="hpe"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="elibc_glibc? ( >sys-libs/glibc-2.14 )"
-
-S="${WORKDIR}"
-
-QA_PRESTRIPPED="/usr/sbin/hponcfg /usr/li.*/libcpqc.*"
-
-src_install() {
- dosbin sbin/hponcfg
-
- # When bumping, verify SONAME (scanelf -S libhponcfg64.so)!
- if use amd64; then
- newlib.so "${S}"/usr/lib64/libhponcfg64.so libcpqci64.so.3
- dosym libcpqci64.so.3 /usr/$(get_libdir)/libhponcfg64.so
- elif use x86; then
- newlib.so "${S}"/usr/lib/libhponcfg.so libcpqci.so.3
- dosym libcpqci.so.3 /usr/$(get_libdir)/libhponcfg.so
- fi
-
- dodoc "${S}"/usr/share/doc/hponcfg/*
-
- pax-mark m "${D}"usr/sbin/hponcfg
-}
diff --git a/sys-apps/hponcfg/hponcfg-5.4.0.0.ebuild b/sys-apps/hponcfg/hponcfg-5.4.0.0.ebuild
deleted file mode 100644
index 8afc8cddad42..000000000000
--- a/sys-apps/hponcfg/hponcfg-5.4.0.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit pax-utils rpm
-
-MY_PV=$(ver_rs 3 '-')
-
-DESCRIPTION="HP Lights-Out Online Configuration Utility (HPONCFG)"
-HOMEPAGE="http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_5ab6295f49964f16a699064f29"
-SRC_URI="amd64? ( https://downloads.linux.hpe.com/SDR/repo/spp/RHEL/7/x86_64/current/${PN}-${MY_PV}.x86_64.rpm )"
-
-LICENSE="hpe"
-SLOT="0"
-KEYWORDS="-* amd64"
-IUSE=""
-
-DEPEND=""
-RDEPEND="elibc_glibc? ( >sys-libs/glibc-2.14 )"
-
-S="${WORKDIR}"
-
-QA_PRESTRIPPED="usr/sbin/hponcfg usr/lib*/libcp*"
-QA_PREBUILT="${QA_PRESTRIPPED}"
-
-src_install() {
- dosbin sbin/hponcfg
-
- # When bumping, verify SONAME (scanelf -S libhponcfg64.so)!
- newlib.so "${S}"/usr/lib64/libhponcfg64.so libcpqci64.so.3
- dosym libcpqci64.so.3 /usr/$(get_libdir)/libhponcfg64.so
-
- dodoc "${S}"/usr/share/doc/hponcfg/*
-
- pax-mark m "${D}"/usr/sbin/hponcfg
-}
diff --git a/sys-apps/hponcfg/hponcfg-5.5.0.0.ebuild b/sys-apps/hponcfg/hponcfg-5.5.0.0.ebuild
deleted file mode 100644
index f7b9cb0e2083..000000000000
--- a/sys-apps/hponcfg/hponcfg-5.5.0.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit pax-utils rpm
-
-MY_PV=$(ver_rs 3 '-')
-
-DESCRIPTION="HP Lights-Out Online Configuration Utility (HPONCFG)"
-HOMEPAGE="http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_5ab6295f49964f16a699064f29"
-SRC_URI="amd64? ( https://downloads.linux.hpe.com/SDR/repo/spp/RHEL/7/x86_64/current/${PN}-${MY_PV}.x86_64.rpm )"
-
-LICENSE="hpe"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-IUSE=""
-
-DEPEND=""
-RDEPEND="elibc_glibc? ( >sys-libs/glibc-2.14 )"
-
-S="${WORKDIR}"
-
-QA_PRESTRIPPED="usr/sbin/hponcfg usr/lib*/libcp*"
-QA_PREBUILT="${QA_PRESTRIPPED}"
-
-src_install() {
- dosbin sbin/hponcfg
-
- # When bumping, verify SONAME (scanelf -S libhponcfg64.so)!
- newlib.so "${S}"/usr/lib64/libhponcfg64.so libcpqci64.so.3
- dosym libcpqci64.so.3 /usr/$(get_libdir)/libhponcfg64.so
-
- dodoc "${S}"/usr/share/doc/hponcfg/*
-
- pax-mark m "${D}"/usr/sbin/hponcfg
-}
diff --git a/sys-apps/hponcfg/hponcfg-5.6.0.0-r1.ebuild b/sys-apps/hponcfg/hponcfg-5.6.0.0-r1.ebuild
new file mode 100644
index 000000000000..3359775c54b3
--- /dev/null
+++ b/sys-apps/hponcfg/hponcfg-5.6.0.0-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils rpm
+
+MY_PV=$(ver_rs 3 '-')
+
+DESCRIPTION="HP Lights-Out Online Configuration Utility (HPONCFG)"
+HOMEPAGE="https://support.hpe.com/hpesc/public/docDisplay?docId=emr_na-a00007610en_us"
+SRC_URI="https://downloads.linux.hpe.com/SDR/repo/spp/RHEL/7/x86_64/current/${PN}-${MY_PV}.x86_64.rpm"
+S="${WORKDIR}"
+
+LICENSE="hpe"
+SLOT="0"
+KEYWORDS="-* amd64"
+RESTRICT="mirror bindist"
+
+RDEPEND="elibc_glibc? ( >sys-libs/glibc-2.14 )"
+
+QA_PRESTRIPPED="usr/sbin/hponcfg usr/lib*/libcp*"
+QA_PREBUILT="${QA_PRESTRIPPED}"
+
+src_install() {
+ dosbin sbin/hponcfg
+
+ # When bumping, verify SONAME (scanelf -S libhponcfg64.so)!
+ newlib.so "${S}"/usr/lib64/libhponcfg64.so libcpqci64.so.3
+ dosym libcpqci64.so.3 /usr/$(get_libdir)/libhponcfg64.so
+
+ dodoc "${S}"/usr/share/doc/hponcfg/*
+
+ pax-mark m "${D}"/usr/sbin/hponcfg
+}
diff --git a/sys-apps/hponcfg/metadata.xml b/sys-apps/hponcfg/metadata.xml
index a32d600f949d..115e9d64a669 100644
--- a/sys-apps/hponcfg/metadata.xml
+++ b/sys-apps/hponcfg/metadata.xml
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>whissi@gentoo.org</email>
- <name>Thomas Deutschmann</name>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/hprofile/Manifest b/sys-apps/hprofile/Manifest
index a7fb5588700c..2dda018f5247 100644
--- a/sys-apps/hprofile/Manifest
+++ b/sys-apps/hprofile/Manifest
@@ -1 +1,2 @@
DIST hprofile-6.1.3.tar.gz 18719 BLAKE2B 1e70bad6426b73fa03d4c987bc5c585413122462dfd7270f140a78b351633b75d366dd2efd328296f5ad3c78ccafe2182f758e730e6af809e1f16e010f5a93b1 SHA512 33987e1fa61619794c40dce737878a37a7c202e50edcd086fe6b59829908f019438a5dccdbda45eb798e227eb2a6ffd3510788645cd73751baa14b5028f6f670
+DIST hprofile-6.2.1.tar.gz 19249 BLAKE2B 3af40718aaac95219cbf93613eb9c121890f3dba40fb64188e04a07549eba1ce11f7891467d0b8293100c45d8806e68bfca7e6a123bbed179f28eecba5d53790 SHA512 efc1fd14d478e6a932e1e7955d389aeac93c598d27e288f663cc88b1fb3f4f47969741f7e1bc4cd6068c6e20930205ec3224f2cfaaf25be7de9ff9914fd2fc79
diff --git a/sys-apps/hprofile/hprofile-6.1.3-r1.ebuild b/sys-apps/hprofile/hprofile-6.1.3-r1.ebuild
new file mode 100644
index 000000000000..b928e6c0c06c
--- /dev/null
+++ b/sys-apps/hprofile/hprofile-6.1.3-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Utility to manage hardware, network, power or other profiles (fork)"
+HOMEPAGE="https://github.com/tokiclover/hprofile"
+SRC_URI="https://github.com/tokiclover/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+src_prepare() {
+ default
+ sed -i '1s:.*:#!/sbin/openrc-run:' hprofile.initd || die
+ sed -i "/^prefix/s:=.*:=${EPREFIX}/usr:" Makefile || die
+}
diff --git a/sys-apps/hprofile/hprofile-6.1.3.ebuild b/sys-apps/hprofile/hprofile-6.1.3.ebuild
deleted file mode 100644
index 4bff3d42441c..000000000000
--- a/sys-apps/hprofile/hprofile-6.1.3.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Utility to manage hardware, network, power or other profiles (fork)"
-HOMEPAGE="https://github.com/tokiclover/hprofile"
-SRC_URI="https://github.com/tokiclover/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-src_prepare() {
- default
- sed -i '1s:.*:#!/sbin/openrc-run:' hprofile.initd || die
- sed -i "/^prefix/s:=.*:=${EPREFIX}/usr:" Makefile || die
-}
diff --git a/sys-apps/hprofile/hprofile-6.2.1.ebuild b/sys-apps/hprofile/hprofile-6.2.1.ebuild
new file mode 100644
index 000000000000..b928e6c0c06c
--- /dev/null
+++ b/sys-apps/hprofile/hprofile-6.2.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Utility to manage hardware, network, power or other profiles (fork)"
+HOMEPAGE="https://github.com/tokiclover/hprofile"
+SRC_URI="https://github.com/tokiclover/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+src_prepare() {
+ default
+ sed -i '1s:.*:#!/sbin/openrc-run:' hprofile.initd || die
+ sed -i "/^prefix/s:=.*:=${EPREFIX}/usr:" Makefile || die
+}
diff --git a/sys-apps/hprofile/metadata.xml b/sys-apps/hprofile/metadata.xml
index fd9e55c27e5d..72f6f7ece8a5 100644
--- a/sys-apps/hprofile/metadata.xml
+++ b/sys-apps/hprofile/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/hw-probe/Manifest b/sys-apps/hw-probe/Manifest
index 6bc85b53ded8..f336481c7867 100644
--- a/sys-apps/hw-probe/Manifest
+++ b/sys-apps/hw-probe/Manifest
@@ -1,2 +1 @@
-DIST hw-probe-1.5.tar.gz 113996 BLAKE2B 59f6fc27e2cbb99a4b7dd9428e32a93dce2ffcc1133e82539b8836a694e6c5634fe2e172732675acf0d83504907a750c63f138d6dec236039eb7c805010a8383 SHA512 80dd2484bd317ac1e86d7f434626f288648aebf110a4bf81c0c05548abcb19d990119c1690fcb5796384a6c32fd5c1e827698a31165bfc41ef6df9fc7fdd368d
-DIST hw-probe-1.6_beta2.tar.gz 143569 BLAKE2B fc7b7562f86eb1b26fef32a8ed9b4a8d01c5621bedbc7e810d5a011c53d528b000ff9df312cf5e3f0ab455558e08e2b9a3ddcd543cd6856208466721f9a0e13c SHA512 2727e7b0fe449cbb6dd21fc112660df4ec666be845bbfd21037b41372a499dfb80c8c2dc37bd222032c68faadff91192a6d6f5229353cb0fc63b8e3dbd715f5d
+DIST hw-probe-1.6.5_p20230812.tar.gz 166015 BLAKE2B 1c5e3ab58aa28e1d5a757d75e8b462b7eaf3da1eb4baca308c681000b95c333e8ea3141b9af2a28e8453a449ea38cca9f5239996e216c0c7dfc4414fc8781b8a SHA512 633cda1e1d6a3104587b6ebf4faad98526e0d6daec5e9a26b319a4b5b76baeac063277eca9e81e7903b28cdebbb3db095f7526d1f46511f885e37b31e1032b7d
diff --git a/sys-apps/hw-probe/files/hw-probe-1.5-disable-automatic-upload.patch b/sys-apps/hw-probe/files/hw-probe-1.5-disable-automatic-upload.patch
deleted file mode 100644
index 4f16c0d87fae..000000000000
--- a/sys-apps/hw-probe/files/hw-probe-1.5-disable-automatic-upload.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 6a211f965c21f1aa2e8612bcd7e2966ce8e8c607 Mon Sep 17 00:00:00 2001
-From: Conrad Kostecki <conikost@gentoo.org>
-Date: Wed, 23 Sep 2020 22:26:45 +0200
-Subject: [PATCH] hw-probe.pl: disable automatic upload
-
-Due security concerns, running 'hw-probe.pl' without any parameters
-shouldn't upload directly by default all data. Instead, the user should
-add '-upload' if he really wants that.
-
-Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
----
- hw-probe.pl | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/hw-probe.pl b/hw-probe.pl
-index b71f250..1bceb0e 100644
---- a/hw-probe.pl
-+++ b/hw-probe.pl
-@@ -217,15 +217,13 @@
-
- if($#ARGV_COPY==-1)
- { # Run from STDIN
-- print "Executing hw-probe -all -upload\n\n";
-+ print "Executing hw-probe -all\n\n";
- $Opt{"All"} = 1;
-- $Opt{"Upload"} = 1;
- }
- elsif($#ARGV_COPY==0 and grep { $ARGV_COPY[0] eq $_ } ("-snap", "-flatpak"))
- { # Run by desktop file
-- print "Executing hw-probe -all -upload\n\n";
-+ print "Executing hw-probe -all\n\n";
- $Opt{"All"} = 1;
-- $Opt{"Upload"} = 1;
-
- if($SNAP_DESKTOP or $FLATPAK_DESKTOP)
- { # Desktop
diff --git a/sys-apps/hw-probe/hw-probe-1.5-r1.ebuild b/sys-apps/hw-probe/hw-probe-1.5-r1.ebuild
deleted file mode 100644
index 5cf31892ccff..000000000000
--- a/sys-apps/hw-probe/hw-probe-1.5-r1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit optfeature readme.gentoo-r1
-
-DESCRIPTION="A tool to probe for hardware, check it's operability and find drivers"
-HOMEPAGE="https://github.com/linuxhw/hw-probe/"
-SRC_URI="https://github.com/linuxhw/hw-probe/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- dev-lang/perl
- dev-perl/Digest-SHA1
- net-misc/curl
- sys-apps/dmidecode
- sys-apps/edid-decode
- sys-apps/hwinfo
- sys-apps/pciutils
- sys-apps/smartmontools
- sys-apps/usbutils
- virtual/perl-Data-Dumper
-"
-
-PATCHES=( "${FILESDIR}/${PN}-1.5-disable-automatic-upload.patch" )
-
-src_compile() {
- :;
-}
-
-src_install() {
- default
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-
- optfeature "showing Machine Check Exceptions." app-admin/mcelog
- optfeature "showing additional I/O statistics." app-admin/sysstat
- optfeature "showing smart card (reader) information." dev-libs/opensc
- optfeature "showing Vulkan GPU hardware information." dev-util/vulkan-tools
- optfeature "showing information of attached scanners." media-gfx/sane-backends
- optfeature "showing GPU information provided by MESA." media-libs/mesa
- optfeature "showing zeroconf statistics." net-dns/avahi
- optfeature "showing HP printer statistics." net-print/hplip
- optfeature "showing status about rfkill switches on communication devices." net-wireless/rfkill
- optfeature "showing additional CPU capabilities." sys-apps/cpuid
- optfeature "showing hard disk (HDD, SSD, ..) capabilities." sys-apps/hdparm
- optfeature "showing available I2C sensors." sys-apps/i2c-tools
- optfeature "showing additional hardware and system information detected by inxi." sys-apps/inxi
- optfeature "showing information about tested memory for faults." sys-apps/memtester
- optfeature "showing 'Plug & Play' devices." sys-apps/pnputils
- optfeature "showing systemd boot process information." sys-apps/systemd
- optfeature "showing ACPI statistics and tables." sys-power/iasl
- optfeature "showing information about NUMA." sys-process/numactl
- optfeature "showing additional GPU information provided by MESA progs." x11-apps/mesa-progs
- optfeature "showing available Xinput devices." x11-apps/xinput
-}
diff --git a/sys-apps/hw-probe/hw-probe-1.6.5_p20230812.ebuild b/sys-apps/hw-probe/hw-probe-1.6.5_p20230812.ebuild
new file mode 100644
index 000000000000..d9507250c6bb
--- /dev/null
+++ b/sys-apps/hw-probe/hw-probe-1.6.5_p20230812.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EGIT_COMMIT="b895b77b7e03f4b1b0a5fb177118373ee0328a25"
+
+inherit optfeature readme.gentoo-r1
+
+DESCRIPTION="A tool to probe for hardware, check it's operability and find drivers"
+HOMEPAGE="https://github.com/linuxhw/hw-probe/"
+SRC_URI="https://github.com/linuxhw/hw-probe/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~loong x86"
+
+RDEPEND="
+ dev-lang/perl
+ dev-perl/Digest-SHA1
+ net-misc/curl
+ sys-apps/dmidecode
+ sys-apps/edid-decode
+ sys-apps/hwinfo
+ sys-apps/pciutils
+ sys-apps/smartmontools
+ sys-apps/usbutils
+ virtual/perl-Data-Dumper
+"
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ default
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ optfeature "showing Machine Check Exceptions." app-admin/mcelog
+ optfeature "showing additional I/O statistics." app-admin/sysstat
+ optfeature "showing display data channel (ddc) information." app-misc/ddcutil
+ optfeature "showing smart card (reader) information." dev-libs/opensc
+ optfeature "showing Vulkan GPU hardware information." dev-util/vulkan-tools
+ optfeature "showing information of attached scanners." media-gfx/sane-backends
+ optfeature "showing GPU information provided by MESA." media-libs/mesa
+ optfeature "showing zeroconf statistics." net-dns/avahi
+ optfeature "showing HP printer statistics." net-print/hplip
+ optfeature "showing status about rfkill switches on communication devices." net-wireless/rfkill
+ optfeature "showing additional CPU capabilities." sys-apps/cpuid
+ optfeature "showing hard disk (HDD, SSD, ..) capabilities." sys-apps/hdparm
+ optfeature "showing available I2C sensors." sys-apps/i2c-tools
+ optfeature "showing additional hardware and system information detected by inxi." sys-apps/inxi
+ optfeature "showing information about tested memory for faults." sys-apps/memtester
+ optfeature "showing 'Plug & Play' devices." sys-apps/pnputils
+ optfeature "showing systemd boot process information." sys-apps/systemd
+ optfeature "showing ACPI statistics and tables." sys-power/iasl
+ optfeature "showing information about NUMA." sys-process/numactl
+ optfeature "showing additional GPU information provided by MESA progs." x11-apps/mesa-progs
+ optfeature "showing available Xinput devices." x11-apps/xinput
+}
diff --git a/sys-apps/hw-probe/hw-probe-1.6_beta2-r1.ebuild b/sys-apps/hw-probe/hw-probe-1.6_beta2-r1.ebuild
deleted file mode 100644
index 10f2227e5771..000000000000
--- a/sys-apps/hw-probe/hw-probe-1.6_beta2-r1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV="${PV/_/-}"
-MY_PV_BETA="${MY_PV/2/}"
-
-inherit optfeature readme.gentoo-r1
-
-DESCRIPTION="A tool to probe for hardware, check it's operability and find drivers"
-HOMEPAGE="https://github.com/linuxhw/hw-probe/"
-SRC_URI="https://github.com/linuxhw/hw-probe/archive/${MY_PV_BETA}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/${PN}-${MY_PV_BETA}"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- dev-lang/perl
- dev-perl/Digest-SHA1
- net-misc/curl
- sys-apps/dmidecode
- sys-apps/edid-decode
- sys-apps/hwinfo
- sys-apps/pciutils
- sys-apps/smartmontools
- sys-apps/usbutils
- virtual/perl-Data-Dumper
-"
-
-PATCHES=( "${FILESDIR}/${PN}-1.5-disable-automatic-upload.patch" )
-
-src_compile() {
- :;
-}
-
-src_install() {
- default
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-
- optfeature "showing Machine Check Exceptions." app-admin/mcelog
- optfeature "showing additional I/O statistics." app-admin/sysstat
- optfeature "showing display data channel (ddc) information." app-misc/ddcutil
- optfeature "showing smart card (reader) information." dev-libs/opensc
- optfeature "showing Vulkan GPU hardware information." dev-util/vulkan-tools
- optfeature "showing information of attached scanners." media-gfx/sane-backends
- optfeature "showing GPU information provided by MESA." media-libs/mesa
- optfeature "showing zeroconf statistics." net-dns/avahi
- optfeature "showing HP printer statistics." net-print/hplip
- optfeature "showing status about rfkill switches on communication devices." net-wireless/rfkill
- optfeature "showing additional CPU capabilities." sys-apps/cpuid
- optfeature "showing hard disk (HDD, SSD, ..) capabilities." sys-apps/hdparm
- optfeature "showing available I2C sensors." sys-apps/i2c-tools
- optfeature "showing additional hardware and system information detected by inxi." sys-apps/inxi
- optfeature "showing information about tested memory for faults." sys-apps/memtester
- optfeature "showing 'Plug & Play' devices." sys-apps/pnputils
- optfeature "showing systemd boot process information." sys-apps/systemd
- optfeature "showing ACPI statistics and tables." sys-power/iasl
- optfeature "showing information about NUMA." sys-process/numactl
- optfeature "showing additional GPU information provided by MESA progs." x11-apps/mesa-progs
- optfeature "showing available Xinput devices." x11-apps/xinput
-}
diff --git a/sys-apps/hw-probe/metadata.xml b/sys-apps/hw-probe/metadata.xml
index 55a7ebd2ff02..53910a2f847f 100644
--- a/sys-apps/hw-probe/metadata.xml
+++ b/sys-apps/hw-probe/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/hwdata-gentoo/Manifest b/sys-apps/hwdata-gentoo/Manifest
deleted file mode 100644
index 1f28a13d54b4..000000000000
--- a/sys-apps/hwdata-gentoo/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hwdata-gentoo-0.4.tar.bz2 149060 BLAKE2B 77534979aa9605836ce52906413b994a71d96636a3a39c65456a4899d839cb2f91ad101bfba884869c43795268c7fb13c7fa8ffab6f097f40dfd071712c4582b SHA512 dd62c51986c83ff5a9338fa20d98827cd44d86e808c9a2a52ff327dcdd941d0faed0ea4f85058485e8fc2f78e0c2fa18d3030e27fded8ed1777832ee789c189a
diff --git a/sys-apps/hwdata-gentoo/files/0.4-openchrome.patch b/sys-apps/hwdata-gentoo/files/0.4-openchrome.patch
deleted file mode 100644
index 7b0c6e87c9d5..000000000000
--- a/sys-apps/hwdata-gentoo/files/0.4-openchrome.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/pcitable
-+++ b/pcitable
-@@ -3688,7 +3688,7 @@
- 0x1106 0x3336 "unknown" "VIA Technologies, Inc.|K8M890CE Host Bridge"
- 0x1106 0x3337 "unknown" "VIA Technologies Inc.|VT8237A PCI to ISA Bridge"
- 0x1106 0x3340 "unknown" "VIA Technologies, Inc.|PT900 Host Bridge"
--0x1106 0x3344 "unknown" "VIA Technologies, Inc.|UniChrome Pro IGP"
-+0x1106 0x3344 "Card:S3 UniChrome" "VIA Technologies, Inc.|UniChrome Pro IGP"
- 0x1106 0x3349 "ahci" "VIA Technologies Inc.|VT8251 AHCI/SATA 4-Port Controller"
- 0x1106 0x3351 "unknown" "VIA Technologies, Inc.|VT3351 Host Bridge"
- 0x1106 0x3364 "unknown" "VIA Technologies, Inc.|P4M900 Host Bridge"
---- a/Cards
-+++ b/Cards
-@@ -429,7 +429,7 @@
- DRIVER s3
-
- NAME S3 UniChrome
--DRIVER via
-+DRIVER openchrome
-
- NAME S3 ViRGE (generic)
- DRIVER s3virge
diff --git a/sys-apps/hwdata-gentoo/hwdata-gentoo-0.4.ebuild b/sys-apps/hwdata-gentoo/hwdata-gentoo-0.4.ebuild
deleted file mode 100644
index caf609cc8650..000000000000
--- a/sys-apps/hwdata-gentoo/hwdata-gentoo-0.4.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils
-
-DESCRIPTION="Data for the hwsetup program"
-SRC_URI="mirror://gentoo/${P}.tar.bz2
- http://wolf31o2.org/sources/hwdata/${P}.tar.bz2"
-HOMEPAGE="http://wolf31o2.org"
-
-IUSE="opengl binary-drivers"
-KEYWORDS="~alpha amd64 hppa ~ia64 ppc ppc64 sparc x86"
-SLOT="0"
-LICENSE="GPL-2"
-
-DEPEND="!sys-apps/hwdata-redhat"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PV}-openchrome.patch
-
- if use x86 || use amd64
- then
- if use opengl && use binary-drivers
- then
- continue
- else
- sed -e 's/DRIVER fglrx/DRIVER radeon/' \
- -e 's/DRIVER nvidia/DRIVER nv/' \
- -i "${S}"/Cards || die
- fi
- fi
-}
-
-src_install() {
- dodoc ChangeLog check-cards
- insinto /usr/share/hwdata
- doins Cards MonitorsDB pcitable blacklist
-}
diff --git a/sys-apps/hwdata-gentoo/metadata.xml b/sys-apps/hwdata-gentoo/metadata.xml
deleted file mode 100644
index 467fca776d12..000000000000
--- a/sys-apps/hwdata-gentoo/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>livecd@gentoo.org</email>
- <name>Gentoo LiveCD Project</name>
-</maintainer>
-<use>
- <flag name="binary-drivers">Adds support for ATI/NVIDIA binary
- drivers</flag>
-</use>
-</pkgmetadata>
diff --git a/sys-apps/hwdata/Manifest b/sys-apps/hwdata/Manifest
new file mode 100644
index 000000000000..0d07a06557d4
--- /dev/null
+++ b/sys-apps/hwdata/Manifest
@@ -0,0 +1,2 @@
+DIST hwdata-0.375.tar.gz 2367434 BLAKE2B 9fe350d9ba0c38d1b765cb38d3e6f3a969c0d9847f0453b0e6709e3a992ae2daffd52871ea730da6bcf297785fa44dc7c745ffa4579b85ba08df7a98144b6b32 SHA512 6d3a796be26d5e50991354e6859d69145c09003fd04dafce93ea20e72909ce2f0572004c0270832ab99fed780497234c526f3fbf3b154162f449373be7039a83
+DIST hwdata-0.376.tar.gz 2375353 BLAKE2B dabc8e7006d00e38e328e074967a1c92e2d7b2f8411a7d9ea2e2df596f861dc8d36ce9f2311cb9c23ee8e7d7b4f63bf8397d3cbf43da0b7d600c24d047ddb0e0 SHA512 3b38a485baa62bd7908083ae13202aa5202ace16a993be0ea60cb658c4e2b9f6ba32dccf58a17d69036798c95109a684d878b9f9bb8149a8713248e5b8f1bda9
diff --git a/sys-apps/hwdata/hwdata-0.375.ebuild b/sys-apps/hwdata/hwdata-0.375.ebuild
new file mode 100644
index 000000000000..b5d599c17b39
--- /dev/null
+++ b/sys-apps/hwdata/hwdata-0.375.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo
+
+DESCRIPTION="Hardware identification and configuration data"
+HOMEPAGE="https://github.com/vcrhonek/hwdata"
+SRC_URI="https://github.com/vcrhonek/hwdata/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+
+RESTRICT="test"
+
+src_configure() {
+ # configure is not compatible with econf
+ local conf=(
+ ./configure
+ --prefix="${EPREFIX}/usr"
+ --libdir="${EPREFIX}/lib"
+ --datadir="${EPREFIX}/usr/share"
+ )
+
+ edo "${conf[@]}"
+}
diff --git a/sys-apps/hwdata/hwdata-0.376.ebuild b/sys-apps/hwdata/hwdata-0.376.ebuild
new file mode 100644
index 000000000000..b5d599c17b39
--- /dev/null
+++ b/sys-apps/hwdata/hwdata-0.376.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo
+
+DESCRIPTION="Hardware identification and configuration data"
+HOMEPAGE="https://github.com/vcrhonek/hwdata"
+SRC_URI="https://github.com/vcrhonek/hwdata/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+
+RESTRICT="test"
+
+src_configure() {
+ # configure is not compatible with econf
+ local conf=(
+ ./configure
+ --prefix="${EPREFIX}/usr"
+ --libdir="${EPREFIX}/lib"
+ --datadir="${EPREFIX}/usr/share"
+ )
+
+ edo "${conf[@]}"
+}
diff --git a/sys-apps/hwdata/metadata.xml b/sys-apps/hwdata/metadata.xml
new file mode 100644
index 000000000000..b94496ecd92c
--- /dev/null
+++ b/sys-apps/hwdata/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="github">vcrhonek/hwdata</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/hwids/Manifest b/sys-apps/hwids/Manifest
deleted file mode 100644
index af941fe105ea..000000000000
--- a/sys-apps/hwids/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST hwids-20200204.tar.gz 3495191 BLAKE2B 23075b6728d9b0e020be45729d0df4cef95cac5e912e646b612266337d1add59c87a1031e6672c5b6eb23e13c26e6299b62a5886aa25017242a86fd474c1e9ae SHA512 1d2a9baaa7ab64575a3d9b98ae4df9060cb8593ae752365296dd53b18bc5996170bbfe1c5b4b1ffc24b28e3dbaa7c321c4fa333bbf91449a6ca7b187cbe23741
-DIST hwids-20200306.tar.gz 3512152 BLAKE2B 6a6ee48598e72f97a90bff8f45aacb699218570ede5b60ed119ebae78de6cd4b92e02f96cf57c83710da699be9a7dcdfdef8d404539e04b664298874b35e54ce SHA512 eff1d2783925ca459b387fbaa5cf68a98aa4209ab8509ad92a902b4d02cc7f4a47e5506c2beed4c792d24a8ab636ad77b376a92b59ae4f605d1b5258350ff250
-DIST hwids-20200813.1.tar.gz 3680906 BLAKE2B 652cf4b05ead42a750c6f41ad78650ea8b0125f90563dec37bfa8388d021ceab12e94fd2f949b3f7b3b7c09a356d279b91e62164af2cf066cfee07ab583f8b83 SHA512 5ba15067969fa19d3218f523c1a0186568841466de4d18c563b5f09202ab7185c4df02b962f70eb6d3e99915caad8a743fc6c6349f49b666db742f9ced8053fc
diff --git a/sys-apps/hwids/hwids-20200204.ebuild b/sys-apps/hwids/hwids-20200204.ebuild
deleted file mode 100644
index 13c9146d0919..000000000000
--- a/sys-apps/hwids/hwids-20200204.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2012-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit udev
-
-DESCRIPTION="Hardware (PCI, USB, OUI, IAB) IDs databases"
-HOMEPAGE="https://github.com/gentoo/hwids"
-if [[ ${PV} == 99999999 ]]; then
- PYTHON_COMPAT=( python3_{6,7} )
- inherit git-r3 python-any-r1
- EGIT_REPO_URI="https://github.com/gentoo/hwids.git"
-else
- SRC_URI="https://github.com/gentoo/hwids/archive/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="|| ( GPL-2 BSD ) public-domain"
-SLOT="0"
-IUSE="+net +pci +udev +usb"
-
-RDEPEND="
- udev? ( virtual/udev )
-"
-
-if [[ ${PV} == 99999999 ]]; then
- BDEPEND="
- net-misc/curl
- udev? ( $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]') )
- "
- python_check_deps() {
- if use udev; then
- has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
- fi
- }
-else
- S=${WORKDIR}/hwids-${P}
-fi
-
-pkg_setup() {
- :
-}
-
-src_unpack() {
- if [[ ${PV} == 99999999 ]]; then
- git-r3_src_unpack
- cd "${S}" || die
- emake fetch
- else
- default
- fi
-}
-
-src_prepare() {
- default
- sed -i -e '/udevadm hwdb/d' Makefile || die
-}
-
-_emake() {
- emake \
- NET=$(usex net) \
- PCI=$(usex pci) \
- UDEV=$(usex udev) \
- USB=$(usex usb) \
- "$@"
-}
-
-src_compile() {
- if [[ ${PV} == 99999999 ]] && use udev; then
- python_setup
- _emake udev-hwdb
- fi
- _emake
-}
-
-src_install() {
- _emake install \
- DOCDIR="${EPREFIX}/usr/share/doc/${PF}" \
- MISCDIR="${EPREFIX}/usr/share/misc" \
- HWDBDIR="${EPREFIX}$(get_udevdir)/hwdb.d" \
- DESTDIR="${D}"
-}
-
-pkg_postinst() {
- if use udev; then
- udevadm hwdb --update --root="${ROOT}"
- fi
-}
diff --git a/sys-apps/hwids/hwids-20200306.ebuild b/sys-apps/hwids/hwids-20200306.ebuild
deleted file mode 100644
index c964e6ebfa16..000000000000
--- a/sys-apps/hwids/hwids-20200306.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2012-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit udev
-
-DESCRIPTION="Hardware (PCI, USB, OUI, IAB) IDs databases"
-HOMEPAGE="https://github.com/gentoo/hwids"
-if [[ ${PV} == 99999999 ]]; then
- PYTHON_COMPAT=( python3_{6,7} )
- inherit git-r3 python-any-r1
- EGIT_REPO_URI="https://github.com/gentoo/hwids.git"
-else
- SRC_URI="https://github.com/gentoo/hwids/archive/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="|| ( GPL-2 BSD ) public-domain"
-SLOT="0"
-IUSE="+net +pci +udev +usb"
-
-RDEPEND="
- udev? ( virtual/udev )
-"
-
-if [[ ${PV} == 99999999 ]]; then
- BDEPEND="
- net-misc/curl
- udev? ( $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]') )
- "
- python_check_deps() {
- if use udev; then
- has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
- fi
- }
-else
- S=${WORKDIR}/hwids-${P}
-fi
-
-pkg_setup() {
- :
-}
-
-src_unpack() {
- if [[ ${PV} == 99999999 ]]; then
- git-r3_src_unpack
- cd "${S}" || die
- emake fetch
- else
- default
- fi
-}
-
-src_prepare() {
- default
- sed -i -e '/udevadm hwdb/d' Makefile || die
-}
-
-_emake() {
- emake \
- NET=$(usex net) \
- PCI=$(usex pci) \
- UDEV=$(usex udev) \
- USB=$(usex usb) \
- "$@"
-}
-
-src_compile() {
- if [[ ${PV} == 99999999 ]] && use udev; then
- python_setup
- _emake udev-hwdb
- fi
- _emake
-}
-
-src_install() {
- _emake install \
- DOCDIR="${EPREFIX}/usr/share/doc/${PF}" \
- MISCDIR="${EPREFIX}/usr/share/misc" \
- HWDBDIR="${EPREFIX}$(get_udevdir)/hwdb.d" \
- DESTDIR="${D}"
-}
-
-pkg_postinst() {
- if use udev; then
- udevadm hwdb --update --root="${ROOT}"
- fi
-}
diff --git a/sys-apps/hwids/hwids-20200813.1.ebuild b/sys-apps/hwids/hwids-20200813.1.ebuild
deleted file mode 100644
index c964e6ebfa16..000000000000
--- a/sys-apps/hwids/hwids-20200813.1.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2012-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit udev
-
-DESCRIPTION="Hardware (PCI, USB, OUI, IAB) IDs databases"
-HOMEPAGE="https://github.com/gentoo/hwids"
-if [[ ${PV} == 99999999 ]]; then
- PYTHON_COMPAT=( python3_{6,7} )
- inherit git-r3 python-any-r1
- EGIT_REPO_URI="https://github.com/gentoo/hwids.git"
-else
- SRC_URI="https://github.com/gentoo/hwids/archive/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="|| ( GPL-2 BSD ) public-domain"
-SLOT="0"
-IUSE="+net +pci +udev +usb"
-
-RDEPEND="
- udev? ( virtual/udev )
-"
-
-if [[ ${PV} == 99999999 ]]; then
- BDEPEND="
- net-misc/curl
- udev? ( $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]') )
- "
- python_check_deps() {
- if use udev; then
- has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
- fi
- }
-else
- S=${WORKDIR}/hwids-${P}
-fi
-
-pkg_setup() {
- :
-}
-
-src_unpack() {
- if [[ ${PV} == 99999999 ]]; then
- git-r3_src_unpack
- cd "${S}" || die
- emake fetch
- else
- default
- fi
-}
-
-src_prepare() {
- default
- sed -i -e '/udevadm hwdb/d' Makefile || die
-}
-
-_emake() {
- emake \
- NET=$(usex net) \
- PCI=$(usex pci) \
- UDEV=$(usex udev) \
- USB=$(usex usb) \
- "$@"
-}
-
-src_compile() {
- if [[ ${PV} == 99999999 ]] && use udev; then
- python_setup
- _emake udev-hwdb
- fi
- _emake
-}
-
-src_install() {
- _emake install \
- DOCDIR="${EPREFIX}/usr/share/doc/${PF}" \
- MISCDIR="${EPREFIX}/usr/share/misc" \
- HWDBDIR="${EPREFIX}$(get_udevdir)/hwdb.d" \
- DESTDIR="${D}"
-}
-
-pkg_postinst() {
- if use udev; then
- udevadm hwdb --update --root="${ROOT}"
- fi
-}
diff --git a/sys-apps/hwids/hwids-99999999.ebuild b/sys-apps/hwids/hwids-99999999.ebuild
deleted file mode 100644
index fdc4a456ddd5..000000000000
--- a/sys-apps/hwids/hwids-99999999.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2012-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit udev
-
-DESCRIPTION="Hardware (PCI, USB, OUI, IAB) IDs databases"
-HOMEPAGE="https://github.com/gentoo/hwids"
-if [[ ${PV} == 99999999 ]]; then
- PYTHON_COMPAT=( python3_{6..9} )
- inherit git-r3 python-any-r1
- EGIT_REPO_URI="https://github.com/gentoo/hwids.git"
-else
- SRC_URI="https://github.com/gentoo/hwids/archive/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="|| ( GPL-2 BSD ) public-domain"
-SLOT="0"
-IUSE="+net +pci +udev +usb"
-
-RDEPEND="
- udev? ( virtual/udev )
-"
-
-if [[ ${PV} == 99999999 ]]; then
- BDEPEND="
- net-misc/curl
- udev? ( $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]') )
- "
- python_check_deps() {
- if use udev; then
- has_version -b "dev-python/pyparsing[${PYTHON_USEDEP}]"
- fi
- }
-else
- S=${WORKDIR}/hwids-${P}
-fi
-
-pkg_setup() {
- :
-}
-
-src_unpack() {
- if [[ ${PV} == 99999999 ]]; then
- git-r3_src_unpack
- cd "${S}" || die
- emake fetch
- else
- default
- fi
-}
-
-src_prepare() {
- default
- sed -i -e '/udevadm hwdb/d' Makefile || die
-}
-
-_emake() {
- emake \
- NET=$(usex net) \
- PCI=$(usex pci) \
- UDEV=$(usex udev) \
- USB=$(usex usb) \
- "$@"
-}
-
-src_compile() {
- if [[ ${PV} == 99999999 ]] && use udev; then
- python_setup
- _emake udev-hwdb
- fi
- _emake
-}
-
-src_install() {
- _emake install \
- DOCDIR="${EPREFIX}/usr/share/doc/${PF}" \
- MISCDIR="${EPREFIX}/usr/share/misc" \
- HWDBDIR="${EPREFIX}$(get_udevdir)/hwdb.d" \
- DESTDIR="${D}"
-}
-
-pkg_postinst() {
- if use udev; then
- udevadm hwdb --update --root="${ROOT}"
- fi
-}
diff --git a/sys-apps/hwids/metadata.xml b/sys-apps/hwids/metadata.xml
deleted file mode 100644
index d3fd22109cdc..000000000000
--- a/sys-apps/hwids/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<maintainer type="person">
- <email>floppym@gentoo.org</email>
-</maintainer>
-<use>
- <flag name="net">Install the oui.txt and iab.txt databases</flag>
- <flag name="pci">Install the pci.ids database</flag>
- <flag name="usb">Install the usb.ids database</flag>
- <flag name="udev">Install hwdb.d rules for udev</flag>
-</use>
-<upstream>
- <remote-id type="github">gentoo/hwids</remote-id>
-</upstream>
-</pkgmetadata>
diff --git a/sys-apps/hwinfo/Manifest b/sys-apps/hwinfo/Manifest
index 7a06146360c6..c57d4ab8f8f3 100644
--- a/sys-apps/hwinfo/Manifest
+++ b/sys-apps/hwinfo/Manifest
@@ -1,2 +1 @@
-DIST hwinfo-21.23-1.2.src.rpm 844672 BLAKE2B 33cfd68c06081d76b33243474b9a72cc5994c749ff57b7fc4f36c88627707068fb86d4825bae66e4e08f730dc8849264f5f31f8717f28400b3d54302ac12b1eb SHA512 d25c955fa5620268a34a857916e0bdbbdb92f8e092735ac453e7bacc6476e00047c9ccef3a5275e5d50cc354bf9e3cffef57af519dc885d0afd3d161ab426629
-DIST hwinfo-21.4-1.1.src.rpm 781525 BLAKE2B 83c6d0b3d15a7b4354223eef8b976643ec6520842007ce6fb06534360a8994d4aac0975eba059275910f59391e7069b0166b69301006ea78ca4b74c6aefbde7c SHA512 bccac7749751924e1e1a8005e6fd783da7114926b6d9b9a1247b3b26dd680848eb2b85b368c312d08b444c8d7b75036d249daf33afc5b7efbbcc09bfbad4b340
+DIST hwinfo-23.2.tar.gz 1237565 BLAKE2B 86c085c0b58b967f94ded3db4975cd824f69908b3b7fc1d27e2d51cb0e570969a7af2274f55d6eb1d871e1422016deb8007c76199be441ad94486ab18f9bff7a SHA512 86096455cc58ecdd3be4306d61beaea02da39b8ee3b2a99966d4aaf022e276616329ca82550d7903e2aed9b1723a99b2305617fb85df21c1d2024ce46b447af3
diff --git a/sys-apps/hwinfo/hwinfo-21.23.ebuild b/sys-apps/hwinfo/hwinfo-21.23.ebuild
deleted file mode 100644
index 97cc8c3e0a74..000000000000
--- a/sys-apps/hwinfo/hwinfo-21.23.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib rpm toolchain-funcs
-
-DESCRIPTION="Hardware detection tool used in SuSE Linux"
-HOMEPAGE="https://www.opensuse.org/"
-SRC_URI="http://download.opensuse.org/source/factory/repo/oss/suse/src/${P}-1.2.src.rpm"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND="
- amd64? ( dev-libs/libx86emu )
- x86? ( dev-libs/libx86emu )"
-DEPEND="${RDEPEND}
- sys-devel/flex
- >=sys-kernel/linux-headers-2.6.17"
-
-MAKEOPTS="${MAKEOPTS} -j1"
-
-src_prepare() {
- # Respect AR variable.
- sed -i \
- -e 's:ar r:$(AR) r:' \
- src/{,isdn,ids,smp,hd}/Makefile || die
-
- # Respect LDFLAGS.
- sed -i -e 's:$(CC) $(CFLAGS):$(CC) $(LDFLAGS) $(CFLAGS):' src/ids/Makefile || die
-
- # Respect MAKE variable. Skip forced -pipe and -g. Respect LDFLAGS.
- sed -i \
- -e 's:make:$(MAKE):' \
- -e 's:-pipe -g::' \
- -e 's:LDFLAGS.*=:LDFLAGS +=:' \
- Makefile{,.common} || die
- default
-}
-
-src_compile() {
- tc-export AR
- emake CC="$(tc-getCC)" RPM_OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${ED}" LIBDIR="/usr/$(get_libdir)" install
-
- dodoc changelog README*
- doman doc/*.{1,8}
- insinto /usr/share/doc/${PF}/examples
- doins doc/example*.c
-}
diff --git a/sys-apps/hwinfo/hwinfo-21.4.ebuild b/sys-apps/hwinfo/hwinfo-21.4.ebuild
deleted file mode 100644
index a63b0e33b3f5..000000000000
--- a/sys-apps/hwinfo/hwinfo-21.4.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib rpm toolchain-funcs
-
-DESCRIPTION="hardware detection tool used in SuSE Linux"
-HOMEPAGE="https://www.opensuse.org/"
-SRC_URI="http://download.opensuse.org/source/factory/repo/oss/suse/src/${P}-1.1.src.rpm"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND="
- amd64? ( dev-libs/libx86emu )
- x86? ( dev-libs/libx86emu )"
-DEPEND="${RDEPEND}
- sys-devel/flex
- >=sys-kernel/linux-headers-2.6.17"
-
-MAKEOPTS="${MAKEOPTS} -j1"
-
-src_prepare() {
- # Respect AR variable.
- sed -i \
- -e 's:ar r:$(AR) r:' \
- src/{,isdn,ids,smp,hd}/Makefile || die
-
- # Avoid -I directories for dbus because HAL is obsolete.
- sed -i -e '/CFLAGS/d' src/hd/Makefile || die
- # Respect LDFLAGS.
- sed -i -e 's:$(CC) -shared:& $(LDFLAGS):' src/Makefile || die
- sed -i -e 's:$(CC) $(CFLAGS):$(CC) $(LDFLAGS) $(CFLAGS):' src/ids/Makefile || die
-
- # Use linux/pci.h directly. #506876
- sed -i \
- -e '/#include.*sys\/pci.h/s:sys/pci.h:linux/pci.h:' \
- src/hd/*.c || die
-
- # Respect MAKE variable. Skip forced -pipe and -g. Respect LDFLAGS.
- sed -i \
- -e 's:make:$(MAKE):' \
- -e 's:-pipe -g::' \
- -e 's:LDFLAGS.*=:LDFLAGS +=:' \
- Makefile{,.common} || die
-}
-
-src_compile() {
- tc-export AR
- emake CC="$(tc-getCC)" RPM_OPT_FLAGS="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${ED}" LIBDIR="/usr/$(get_libdir)" install
-
- dodoc changelog README
- doman doc/*.{1,8}
- insinto /usr/share/doc/${PF}/examples
- doins doc/example*.c
-}
diff --git a/sys-apps/hwinfo/hwinfo-23.2-r1.ebuild b/sys-apps/hwinfo/hwinfo-23.2-r1.ebuild
new file mode 100644
index 000000000000..7426bb0ccfdc
--- /dev/null
+++ b/sys-apps/hwinfo/hwinfo-23.2-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Hardware detection tool used in SuSE Linux"
+HOMEPAGE="https://github.com/openSUSE/hwinfo/"
+SRC_URI="https://github.com/openSUSE/hwinfo/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ~riscv x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="amd64? ( dev-libs/libx86emu:= )
+ x86? ( dev-libs/libx86emu:= )"
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-2.6.17"
+BDEPEND="app-alternatives/lex"
+
+src_prepare() {
+ default
+ # Respect AR variable.
+ sed -i \
+ -e 's:ar r:$(AR) r:' \
+ src/{,isdn,ids,smp,hd}/Makefile || die
+
+ # Respect LDFLAGS.
+ sed -i -e 's:$(CC) $(CFLAGS):$(CC) $(LDFLAGS) $(CFLAGS):' src/ids/Makefile || die
+
+ # Respect MAKE variable. Skip forced -pipe and -g.
+ sed -i \
+ -e 's:make:$(MAKE):' \
+ -e 's:-pipe -g::' \
+ Makefile{,.common} || die
+ rm -f git2log || die
+}
+
+src_compile() {
+ emake -j1 AR="$(tc-getAR)" CC="$(tc-getCC)" HWINFO_VERSION="${PV}" \
+ RPM_OPT_FLAGS="${CFLAGS}" LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" LIBDIR="/usr/$(get_libdir)" install
+ keepdir /var/lib/hardware/udi
+
+ dodoc README*
+ docinto examples
+ dodoc doc/example*.c
+ doman doc/*.{1,8}
+}
diff --git a/sys-apps/hwinfo/metadata.xml b/sys-apps/hwinfo/metadata.xml
index 483ee9fe5899..d4df3edaa615 100644
--- a/sys-apps/hwinfo/metadata.xml
+++ b/sys-apps/hwinfo/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>robbat2@gentoo.org</email>
- <name>Robin H. Johnson</name>
+ <email>bkohler@gentoo.org</email>
+ <name>Ben Kohler</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">openSUSE/hwinfo</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/hwloc/Manifest b/sys-apps/hwloc/Manifest
index 592f63c97ac7..48bc8e36e176 100644
--- a/sys-apps/hwloc/Manifest
+++ b/sys-apps/hwloc/Manifest
@@ -1,5 +1,8 @@
-DIST hwloc-1.11.10.tar.bz2 4102431 BLAKE2B 4caec6f1c1a5f0b571854127cc6fd808e778b3b2bcf7ded7edfe99100ac4ccc05c893f3df0a56119234510aa5256e5da84cfa15dddb7d15e49eca2936baa7f41 SHA512 9e2cf5cc43f8c21cfd0bf09a58fda09ba832908eca5a211d164eb106f090609b6351bc934e572200530284fbfc5c460db29a49ec7974dbd298d757ed8aaf32b3
DIST hwloc-1.11.13.tar.bz2 4120436 BLAKE2B a6a09f7d6abeaa9d23df555cfd2186ae61f0f67f83fa8f1aa4bc29376b233a8511f11745f35064f39545c7e62e9d271c1334b6906712028729e138e41d1f212f SHA512 dd38bcc9a5df2dcfd3bbd828ab13fdb1c1d21747a0b62e6c87df95d2835c0472590344ff5bda4f6c28e597eaba1ea11c0bc96907ad45f1215f51f95ac9f58138
-DIST hwloc-1.11.2.tar.bz2 4019136 BLAKE2B 29a959c48b3be347b5816333c3f9948ddafc6c4882d7c646c956ae08d72827dd4cef22da7842a034e3131e0044f9528573c6dfceb373869c326890f23651d967 SHA512 aa54b6389c303470a00dbbb3ae5f688244d0f1e0d84e661b739933ff9d86928869f2f3be04fe621cdf06c206defcd4ea1c9e8b72696f7cada9bb3243c3feba68
-DIST hwloc-2.0.4.tar.bz2 6057001 BLAKE2B 0d73c2ec544263bb36404d8112412b6b308935b9b8b4ba37cac05d8bdc525763fa862c63d387545cb0e02e1bd8f1c931e034381dede83b7119f30928f4e54bf4 SHA512 c7bb69f0e536188921138d003f3854a12f942a4f625e665d5ce6d32c1c4a884e0a91f9125de33dd292f522032b759e6240df3f3e53534033567ea0d829feefce
-DIST hwloc-2.1.0.tar.bz2 6272755 BLAKE2B 3ab13bd5cd00c4c19a1c4b1de21fb799038bd0afaa86520696478eada8d0ac11a4f4de11b96b0d92495b431f4b49ccb4185b176ad5abb9372ba6c5c9794ef21c SHA512 3fda7c4152c3f1b701c3da0fcbbe7e1dffb502042cb86e9a44ce6df8e227c005333e61d5459407f88efbd56816db0ab90b19f75d047e0c77b3b7f5c6405ea501
+DIST hwloc-2.6.0.tar.bz2 6728585 BLAKE2B 96099ae3527e11a83adc068e07756752d2effa38b4bae174045e5142a3457af8790e9fd3d778ff2d91708101aaf6e108affed7688918195e0f2bdbd55235ad46 SHA512 3f35ee685507469e2c7d4a2ab4c339eff24123b4bc21d96bc53fd2737a36bdd371f1e1e4440b410ecac6cf1881562187243bfbf846203cb3702a4c4c7be0d5df
+DIST hwloc-2.8.0.tar.bz2 6896344 BLAKE2B 33f75987ee904d5ee9c62268695a2f7f59b0adc2e1601fc4407f525664b78a7fab04c75823ce9d190c8cb9ffc0ce983d7137555625d47bc1451a2d0c6f330055 SHA512 025c8ebc2945bdf696cc66fe2cfea0195694713a6098603fb4eaeac409d2f6c3386a7c2b4d7f3758d828f6b621e7f06ffb5745224cb1df2f8ff4f19b2a8a4a7b
+DIST hwloc-2.9.0.tar.bz2 6923168 BLAKE2B 8451d24a2685b1e52b93a21a0fd43cb93564e03a4a3d1708ffe021dd59e701b50088b7202a1e50358c23e19278cc0526f0064b5ec79ca5152697e1380549e6e0 SHA512 45705d30c8a974c6afd998559cd1195e7e478cf01b669ad60c06baeac9d17c5cd163eb00ad12c2187889e9a7ea96ff6d5a3cb414e8e6de7f00a6fa10eb8c7507
+DIST hwloc-2.9.1.tar.bz2 6942860 BLAKE2B 6f0a0caa593683d76b52751b32d47a28509fc99e9ee4b8645257de054823328afe35e46ac5e264a8a6a9279e6c06129d6df096b7c2c491d90fc7d05ee0c011f5 SHA512 9c05b7b7c4e3cb5474efb6eb1a4bf3e5ad0f8d0480d043a11e695e4a1f5f6748abb96c7055c0f3b2bc36950dda247fbdd7dc02ec7c9debbfe2631e6ebb89d957
+DIST hwloc-2.9.2.tar.bz2 6976699 BLAKE2B 70737325888b87f90f95799490621e209864430813deff4731dbbbaa7be900d6d58fa874b3da5e851b553af00ba17e387762d3825bb9a592ffb311705b4a6833 SHA512 ed38bd608eac81d3182243f0b63c6da070be918fdd8c876ca35fd63cccb4e25684b28bb045d033c53cd7b53451795d28e05e0bd876a5a0231de06c76ace11fef
+DIST hwloc-2.9.3.tar.bz2 6986142 BLAKE2B db47dcf7fbedb67e3e339faf2f88326cc5b9838747b40774a6dbfc29bb9e52797ae9da9ae098168f70ff47cd7ff3e949a2294da52e91f2e45c0d9bc25bdbb1b7 SHA512 181a700ed036ecc8a6685e8023f3f6ba317b5fd3bb0699d9081e4627f375df7e9791148965d92f8152f6e7ea5c4ba7c581a0cad5a717d408725faae79777e267
+DIST lstopo.png 18008 BLAKE2B 5468cc81f9ee4b9a4dd28bd9334edd7f4e7d4ff394caf09228b4e860ab924bb80114b977b1b1125cd180478967d2f3bbde50435522b77a8314f823b1c2678e75 SHA512 8a8a6e62c3089a8d77f592a348ad87fca14a84bdecd889760a37bef8e65c876594b91091aac2f54ca3cca855a02459fe1c960909ccd0ddea1ff77c95bb171823
diff --git a/sys-apps/hwloc/hwloc-1.11.10.ebuild b/sys-apps/hwloc/hwloc-1.11.10.ebuild
deleted file mode 100644
index c3630b9ccaa1..000000000000
--- a/sys-apps/hwloc/hwloc-1.11.10.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools cuda flag-o-matic toolchain-funcs versionator multilib-minimal
-
-MY_PV=v$(get_version_component_range 1-2)
-
-DESCRIPTION="displays the hardware topology in convenient formats"
-HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
-SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0/5"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="cairo cuda debug gl +numa +pci plugins svg static-libs xml X"
-
-# opencl support dropped with x11-drivers/ati-drivers being removed (#582406).
-# Anyone with hardware is welcome to step up and help test to get it re-added.
-
-# dev-util/nvidia-cuda-toolkit is always multilib
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
- cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg?,${MULTILIB_USEDEP}] )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1 )
- gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
- pci? (
- >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
- >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
- )
- plugins? ( dev-libs/libltdl:0[${MULTILIB_USEDEP}] )
- numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )
- xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
-DOCS=( AUTHORS NEWS README VERSION )
-
-src_prepare() {
- default
- eautoreconf
-
- if use cuda ; then
- append-cflags -I"${EPREFIX}"/opt/cuda/include
- append-cppflags -I"${EPREFIX}"/opt/cuda/include
- fi
-}
-
-multilib_src_configure() {
- export HWLOC_PKG_CONFIG=$(tc-getPKG_CONFIG) #393467
-
- if use cuda ; then
- local -x LDFLAGS="${LDFLAGS}"
- append-ldflags -L"${EPREFIX}"/opt/cuda/$(get_libdir)
- fi
-
- ECONF_SOURCE=${S} econf \
- $(use_enable static-libs static) \
- $(use_enable cairo) \
- $(multilib_native_use_enable cuda) \
- $(use_enable debug) \
- $(multilib_native_use_enable gl) \
- $(use_enable pci) \
- $(use_enable plugins) \
- $(use_enable numa libnuma) \
- $(use_enable xml libxml2) \
- $(use_with X x)
-}
diff --git a/sys-apps/hwloc/hwloc-1.11.13-r1.ebuild b/sys-apps/hwloc/hwloc-1.11.13-r1.ebuild
new file mode 100644
index 000000000000..fa0401fa01ac
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-1.11.13-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools cuda flag-o-matic multilib-minimal toolchain-funcs
+
+MY_PV=v$(ver_cut 1-2)
+
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0/5"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="cairo cuda debug gl +numa +pci plugins svg static-libs xml X"
+
+# opencl support dropped with x11-drivers/ati-drivers being removed (#582406).
+# Anyone with hardware is welcome to step up and help test to get it re-added.
+
+# dev-util/nvidia-cuda-toolkit is always multilib
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ plugins? ( dev-libs/libltdl:0[${MULTILIB_USEDEP}] )
+ numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+ eautoreconf
+
+ if use cuda ; then
+ append-cflags -I"${ESYSROOT}"/opt/cuda/include
+ append-cppflags -I"${ESYSROOT}"/opt/cuda/include
+ fi
+}
+
+multilib_src_configure() {
+ export HWLOC_PKG_CONFIG=$(tc-getPKG_CONFIG) #393467
+
+ if use cuda ; then
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags -L"${ESYSROOT}"/opt/cuda/$(get_libdir)
+ fi
+
+ ECONF_SOURCE=${S} econf \
+ --disable-opencl \
+ $(use_enable static-libs static) \
+ $(use_enable cairo) \
+ $(multilib_native_use_enable cuda) \
+ $(use_enable debug) \
+ $(multilib_native_use_enable gl) \
+ $(use_enable pci) \
+ $(use_enable plugins) \
+ $(use_enable numa libnuma) \
+ $(use_enable xml libxml2) \
+ $(use_with X x)
+}
diff --git a/sys-apps/hwloc/hwloc-1.11.13.ebuild b/sys-apps/hwloc/hwloc-1.11.13.ebuild
deleted file mode 100644
index ad6e57460544..000000000000
--- a/sys-apps/hwloc/hwloc-1.11.13.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools cuda flag-o-matic eapi7-ver multilib-minimal toolchain-funcs
-
-MY_PV=v$(ver_cut 1-2)
-
-DESCRIPTION="displays the hardware topology in convenient formats"
-HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
-SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0/5"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="cairo cuda debug gl +numa +pci plugins svg static-libs xml X"
-
-# opencl support dropped with x11-drivers/ati-drivers being removed (#582406).
-# Anyone with hardware is welcome to step up and help test to get it re-added.
-
-# dev-util/nvidia-cuda-toolkit is always multilib
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
- cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg?,${MULTILIB_USEDEP}] )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
- gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
- pci? (
- >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
- >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
- )
- plugins? ( dev-libs/libltdl:0[${MULTILIB_USEDEP}] )
- numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )
- xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
-DOCS=( AUTHORS NEWS README VERSION )
-
-src_prepare() {
- default
- eautoreconf
-
- if use cuda ; then
- append-cflags -I"${EPREFIX}"/opt/cuda/include
- append-cppflags -I"${EPREFIX}"/opt/cuda/include
- fi
-}
-
-multilib_src_configure() {
- export HWLOC_PKG_CONFIG=$(tc-getPKG_CONFIG) #393467
-
- if use cuda ; then
- local -x LDFLAGS="${LDFLAGS}"
- append-ldflags -L"${EPREFIX}"/opt/cuda/$(get_libdir)
- fi
-
- ECONF_SOURCE=${S} econf \
- $(use_enable static-libs static) \
- $(use_enable cairo) \
- $(multilib_native_use_enable cuda) \
- $(use_enable debug) \
- $(multilib_native_use_enable gl) \
- $(use_enable pci) \
- $(use_enable plugins) \
- $(use_enable numa libnuma) \
- $(use_enable xml libxml2) \
- $(use_with X x)
-}
diff --git a/sys-apps/hwloc/hwloc-1.11.2-r1.ebuild b/sys-apps/hwloc/hwloc-1.11.2-r1.ebuild
deleted file mode 100644
index a447cda89521..000000000000
--- a/sys-apps/hwloc/hwloc-1.11.2-r1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit flag-o-matic cuda autotools-multilib multilib toolchain-funcs versionator
-
-MY_PV=v$(get_version_component_range 1-2)
-
-DESCRIPTION="displays the hardware topology in convenient formats"
-HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
-SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0/5"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="cairo cuda debug gl +numa +pci plugins svg static-libs xml X"
-
-# opencl support dropped with x11-drivers/ati-drivers being removed (#582406).
-# Anyone with hardware is welcome to step up and help test to get it re-added.
-
-# dev-util/nvidia-cuda-toolkit is always multilib
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
- cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg?,${MULTILIB_USEDEP}] )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1 )
- gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
- pci? (
- >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
- >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
- )
- plugins? ( dev-libs/libltdl:0[${MULTILIB_USEDEP}] )
- numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )
- xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-DOCS=( AUTHORS NEWS README VERSION )
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.8.1-gl.patch"
-)
-AUTOTOOLS_AUTORECONF=1
-
-src_prepare() {
- if use cuda ; then
- append-cflags -I/opt/cuda/include
- append-cppflags -I/opt/cuda/include
- fi
- autotools-utils_src_prepare
-}
-
-multilib_src_configure() {
- export HWLOC_PKG_CONFIG=$(tc-getPKG_CONFIG) #393467
- use cuda && local LDFLAGS="${LDFLAGS} -L/opt/cuda/$(get_libdir)"
- local myeconfargs=(
- --docdir="${EPREFIX}"/usr/share/doc/${PF}
- $(use_enable cairo)
- $(use_enable cuda)
- $(use_enable debug)
- $(multilib_native_use_enable gl)
- $(use_enable pci)
- $(use_enable plugins)
- $(use_enable numa libnuma)
- $(use_enable xml libxml2)
- $(use_with X x)
- )
- autotools-utils_src_configure
-}
diff --git a/sys-apps/hwloc/hwloc-2.0.4.ebuild b/sys-apps/hwloc/hwloc-2.0.4.ebuild
deleted file mode 100644
index c412bfedcf48..000000000000
--- a/sys-apps/hwloc/hwloc-2.0.4.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools cuda flag-o-matic eapi7-ver multilib-minimal toolchain-funcs
-
-MY_PV=v$(ver_cut 1-2)
-
-DESCRIPTION="displays the hardware topology in convenient formats"
-HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
-SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0/15"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="cairo cuda debug gl +pci plugins svg static-libs xml X"
-
-# opencl support dropped with x11-drivers/ati-drivers being removed (#582406).
-# Anyone with hardware is welcome to step up and help test to get it re-added.
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
- cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg?,${MULTILIB_USEDEP}] )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
- gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
- pci? (
- >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
- >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
- )
- plugins? ( dev-libs/libltdl:0[${MULTILIB_USEDEP}] )
- xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
-DOCS=( AUTHORS NEWS README VERSION )
-
-src_prepare() {
- default
- eautoreconf
-
- if use cuda ; then
- append-cflags -I"${EPREFIX}"/opt/cuda/include
- append-cppflags -I"${EPREFIX}"/opt/cuda/include
- fi
-}
-
-multilib_src_configure() {
- export HWLOC_PKG_CONFIG=$(tc-getPKG_CONFIG) #393467
-
- if use cuda ; then
- local -x LDFLAGS="${LDFLAGS}"
- append-ldflags -L"${EPREFIX}"/opt/cuda/$(get_libdir)
- fi
-
- ECONF_SOURCE=${S} econf \
- --disable-opencl \
- $(use_enable static-libs static) \
- $(use_enable cairo) \
- $(multilib_native_use_enable cuda) \
- $(use_enable debug) \
- $(multilib_native_use_enable gl) \
- $(use_enable pci) \
- $(use_enable plugins) \
- $(use_enable xml libxml2) \
- $(use_with X x)
-}
diff --git a/sys-apps/hwloc/hwloc-2.1.0.ebuild b/sys-apps/hwloc/hwloc-2.1.0.ebuild
deleted file mode 100644
index d996e67548ae..000000000000
--- a/sys-apps/hwloc/hwloc-2.1.0.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit autotools cuda flag-o-matic systemd toolchain-funcs multilib-minimal
-
-MY_PV="v$(ver_cut 1-2)"
-
-DESCRIPTION="displays the hardware topology in convenient formats"
-HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
-SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0/15"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="cairo +cpuid cuda debug gl libudev netloc nvml +pci plugins static-libs svg xml X"
-
-# opencl support dropped with x11-drivers/ati-drivers being removed (#582406).
-# Anyone with hardware is welcome to step up and help test to get it re-added.
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
-
- cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg?,${MULTILIB_USEDEP}] )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
- gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
- libudev? ( virtual/libudev )
- netloc? ( !sys-apps/netloc )
- pci? (
- >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
- >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
- )
- plugins? ( dev-libs/libltdl:0[${MULTILIB_USEDEP}] )
- xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
-DOCS=( AUTHORS NEWS README VERSION )
-
-src_prepare() {
- default
- eautoreconf
-
- if use cuda ; then
- append-cflags "-I${EPREFIX}/opt/cuda/include"
- append-cppflags "-I${EPREFIX}/opt/cuda/include"
- fi
-}
-
-multilib_src_configure() {
- export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)" #393467
-
- if use cuda ; then
- local -x LDFLAGS="${LDFLAGS}"
- append-ldflags "-L${EPREFIX}/opt/cuda/$(get_libdir)"
- fi
-
- local myconf=(
- --disable-opencl
- --enable-shared
- $(multilib_native_use_enable cuda)
- $(multilib_native_use_enable gl)
- $(use_enable cairo)
- $(use_enable cpuid)
- $(use_enable debug)
- $(use_enable libudev)
- $(use_enable netloc)
- $(use_enable nvml)
- $(use_enable pci)
- $(use_enable plugins)
- $(use_enable static-libs static)
- $(use_enable xml libxml2)
- $(use_with X x)
- )
- ECONF_SOURCE="${S}" econf "${myconf[@]}"
-}
-
-multilib_src_install_all() {
- default
- systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service"
- find "${ED}" -name '*.la' -delete || die
-}
diff --git a/sys-apps/hwloc/hwloc-2.6.0-r1.ebuild b/sys-apps/hwloc/hwloc-2.6.0-r1.ebuild
new file mode 100644
index 000000000000..fcd3e9bebf0d
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-2.6.0-r1.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit autotools bash-completion-r1 cuda flag-o-matic systemd toolchain-funcs multilib-minimal
+
+MY_PV="v$(ver_cut 1-2)"
+
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +cpuid cuda debug gl nvml +pci static-libs svg udev xml X"
+
+# opencl support dropped with x11-drivers/ati-drivers being removed (bug #582406).
+# Anyone with hardware is welcome to step up and help test to get it re-added.
+RDEPEND=">=sys-libs/ncurses-5.9-r3:0[${MULTILIB_USEDEP}]
+
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ gl? ( x11-drivers/nvidia-drivers[static-libs,tools] )
+ nvml? ( x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ udev? ( virtual/libudev )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}"
+# 2.69-r5 for --runstatedir
+BDEPEND="
+ >=dev-build/autoconf-2.69-r5
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ if use cuda ; then
+ append-cflags "-I${ESYSROOT}/opt/cuda/include"
+ append-cppflags "-I${ESYSROOT}/opt/cuda/include"
+ fi
+}
+
+multilib_src_configure() {
+ # bug #393467
+ export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+ if use cuda ; then
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags "-L${ESYSROOT}/opt/cuda/$(get_libdir)"
+ fi
+
+ local myconf=(
+ --disable-opencl
+ # netloc is deprecated upstream, about to be removed
+ # bug #796797
+ --disable-netloc
+ --disable-plugin-ltdl
+ --enable-plugins
+ --enable-shared
+ --runstatedir="${EPREFIX}/run"
+ $(multilib_native_use_enable cuda)
+ $(multilib_native_use_enable gl)
+ $(use_enable cairo)
+ $(use_enable cpuid)
+ $(use_enable debug)
+ $(use_enable udev libudev)
+ $(use_enable nvml)
+ $(use_enable pci)
+ $(use_enable static-libs static)
+ $(use_enable xml libxml2)
+ $(use_with X x)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ default
+
+ case ${ARCH} in
+ # hwloc-dump-hwdata binary only built on those arches, so don't install non-working unit.
+ amd64|x86)
+ systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service" ;;
+ esac
+
+ mv "${ED}"/usr/share/bash-completion/completions/hwloc{,-annotate} || die
+ bashcomp_alias hwloc-annotate \
+ hwloc-{diff,ps,compress-dir,gather-cpuid,distrib,info,bind,patch,calc,ls,gather-topology}
+ bashcomp_alias hwloc-annotate lstopo{,-no-graphics}
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-apps/hwloc/hwloc-2.8.0-r1.ebuild b/sys-apps/hwloc/hwloc-2.8.0-r1.ebuild
new file mode 100644
index 000000000000..cf59ac1e36bb
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-2.8.0-r1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools bash-completion-r1 cuda desktop flag-o-matic systemd toolchain-funcs multilib-minimal
+
+MY_PV="v$(ver_cut 1-2)"
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2
+ https://raw.githubusercontent.com/open-mpi/hwloc/master/contrib/android/assets/lstopo.png"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +cpuid cuda debug nvml +pci static-libs svg udev xml X video_cards_nvidia"
+
+# opencl: opencl support dropped with x11-drivers/ati-drivers being removed (bug #582406).
+# anyone with hardware is welcome to step up and help test to get it re-added.
+# video-cards_nvidia: libXext/libX11 deps are only here, see HWLOC_GL_REQUIRES usage in config/hwloc.m4
+RDEPEND=">=sys-libs/ncurses-5.9-r3:=[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ nvml? ( x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ udev? ( virtual/libudev:= )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )
+ video_cards_nvidia? (
+ x11-drivers/nvidia-drivers[static-libs]
+ x11-libs/libXext
+ x11-libs/libX11
+ )"
+DEPEND="${RDEPEND}"
+# 2.69-r5 for --runstatedir
+BDEPEND=">=dev-build/autoconf-2.69-r5
+ virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # bug #393467
+ export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+ if use video_cards_nvidia ; then
+ addpredict /dev/nvidiactl
+ fi
+
+ if use cuda ; then
+ append-cflags "-I${ESYSROOT}/opt/cuda/include"
+ append-cppflags "-I${ESYSROOT}/opt/cuda/include"
+
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags "-L${ESYSROOT}/opt/cuda/$(get_libdir)"
+ fi
+
+ local myconf=(
+ --disable-opencl
+
+ # netloc is deprecated upstream, about to be removed
+ # bug #796797
+ --disable-netloc
+
+ --disable-plugin-ltdl
+ --enable-plugins
+ --enable-shared
+ --runstatedir="${EPREFIX}/run"
+ $(multilib_native_use_enable cuda)
+ $(multilib_native_use_enable video_cards_nvidia gl)
+ $(use_enable cairo)
+ $(use_enable cpuid)
+ $(use_enable debug)
+ $(use_enable udev libudev)
+ $(use_enable nvml)
+ $(use_enable pci)
+ $(use_enable static-libs static)
+ $(use_enable xml libxml2)
+ $(use_with X x)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ default
+
+ case ${ARCH} in
+ # hwloc-dump-hwdata binary only built on those arches, so don't install non-working unit.
+ amd64|x86)
+ systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service"
+ ;;
+ esac
+
+ mv "${ED}"/usr/share/bash-completion/completions/hwloc{,-annotate} || die
+ bashcomp_alias hwloc-annotate \
+ hwloc-{diff,ps,compress-dir,gather-cpuid,distrib,info,bind,patch,calc,ls,gather-topology}
+ bashcomp_alias hwloc-annotate lstopo{,-no-graphics}
+
+ find "${ED}" -name '*.la' -delete || die
+ doicon "${DISTDIR}/lstopo.png"
+}
diff --git a/sys-apps/hwloc/hwloc-2.9.0.ebuild b/sys-apps/hwloc/hwloc-2.9.0.ebuild
new file mode 100644
index 000000000000..96bf46020bec
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-2.9.0.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools bash-completion-r1 cuda desktop flag-o-matic systemd toolchain-funcs multilib-minimal
+
+MY_PV="v$(ver_cut 1-2)"
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2
+ https://raw.githubusercontent.com/open-mpi/hwloc/master/contrib/android/assets/lstopo.png"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +cpuid cuda debug nvml +pci static-libs svg udev xml X video_cards_nvidia"
+
+# opencl: opencl support dropped with x11-drivers/ati-drivers being removed (bug #582406).
+# anyone with hardware is welcome to step up and help test to get it re-added.
+# video-cards_nvidia: libXext/libX11 deps are only here, see HWLOC_GL_REQUIRES usage in config/hwloc.m4
+RDEPEND=">=sys-libs/ncurses-5.9-r3:=[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ nvml? ( x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ udev? ( virtual/libudev:= )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )
+ video_cards_nvidia? (
+ x11-drivers/nvidia-drivers[static-libs]
+ x11-libs/libXext
+ x11-libs/libX11
+ )"
+DEPEND="${RDEPEND}"
+# 2.69-r5 for --runstatedir
+BDEPEND=">=dev-build/autoconf-2.69-r5
+ virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # bug #393467
+ export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+ if use video_cards_nvidia ; then
+ addpredict /dev/nvidiactl
+ fi
+
+ if use cuda ; then
+ append-cflags "-I${ESYSROOT}/opt/cuda/include"
+ append-cppflags "-I${ESYSROOT}/opt/cuda/include"
+
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags "-L${ESYSROOT}/opt/cuda/$(get_libdir)"
+ fi
+
+ local myconf=(
+ --disable-opencl
+
+ # netloc is deprecated upstream, about to be removed
+ # bug #796797
+ --disable-netloc
+
+ --disable-plugin-ltdl
+ --enable-plugins
+ --enable-shared
+ --runstatedir="${EPREFIX}/run"
+ $(multilib_native_use_enable cuda)
+ $(multilib_native_use_enable video_cards_nvidia gl)
+ $(use_enable cairo)
+ $(use_enable cpuid)
+ $(use_enable debug)
+ $(use_enable udev libudev)
+ $(use_enable nvml)
+ $(use_enable pci)
+ $(use_enable static-libs static)
+ $(use_enable xml libxml2)
+ $(use_with X x)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ default
+
+ case ${ARCH} in
+ # hwloc-dump-hwdata binary only built on those arches, so don't install non-working unit.
+ amd64|x86)
+ systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service"
+ ;;
+ esac
+
+ mv "${ED}"/usr/share/bash-completion/completions/hwloc{,-annotate} || die
+ bashcomp_alias hwloc-annotate \
+ hwloc-{diff,ps,compress-dir,gather-cpuid,distrib,info,bind,patch,calc,ls,gather-topology}
+ bashcomp_alias hwloc-annotate lstopo{,-no-graphics}
+
+ find "${ED}" -name '*.la' -delete || die
+ doicon "${DISTDIR}/lstopo.png"
+}
diff --git a/sys-apps/hwloc/hwloc-2.9.1.ebuild b/sys-apps/hwloc/hwloc-2.9.1.ebuild
new file mode 100644
index 000000000000..e728d731b628
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-2.9.1.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools bash-completion-r1 cuda desktop flag-o-matic systemd toolchain-funcs multilib-minimal
+
+MY_PV="v$(ver_cut 1-2)"
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2
+ https://raw.githubusercontent.com/open-mpi/hwloc/master/contrib/android/assets/lstopo.png"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +cpuid cuda debug nvml +pci static-libs svg udev valgrind xml X video_cards_nvidia"
+
+# opencl: opencl support dropped with x11-drivers/ati-drivers being removed (bug #582406).
+# anyone with hardware is welcome to step up and help test to get it re-added.
+# video-cards_nvidia: libXext/libX11 deps are only here, see HWLOC_GL_REQUIRES usage in config/hwloc.m4
+RDEPEND=">=sys-libs/ncurses-5.9-r3:=[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ nvml? ( x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ udev? ( virtual/libudev:= )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )
+ video_cards_nvidia? (
+ x11-drivers/nvidia-drivers[static-libs]
+ x11-libs/libXext
+ x11-libs/libX11
+ )"
+DEPEND="${RDEPEND}
+ valgrind? ( dev-debug/valgrind )"
+# 2.69-r5 for --runstatedir
+BDEPEND=">=dev-build/autoconf-2.69-r5
+ virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # bug #393467
+ export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+ if use video_cards_nvidia ; then
+ addpredict /dev/nvidiactl
+ fi
+
+ if use cuda ; then
+ append-cflags "-I${ESYSROOT}/opt/cuda/include"
+ append-cppflags "-I${ESYSROOT}/opt/cuda/include"
+
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags "-L${ESYSROOT}/opt/cuda/$(get_libdir)"
+ fi
+
+ export ac_cv_header_valgrind_valgrind_h=$(multilib_native_usex valgrind)
+ export ac_cv_have_decl_RUNNING_ON_VALGRIND=$(multilib_native_usex valgrind)
+
+ local myconf=(
+ --disable-opencl
+
+ # netloc is deprecated upstream, about to be removed
+ # bug #796797
+ --disable-netloc
+
+ --disable-plugin-ltdl
+ --enable-plugins
+ --enable-shared
+ --runstatedir="${EPREFIX}/run"
+ $(multilib_native_use_enable cuda)
+ $(multilib_native_use_enable video_cards_nvidia gl)
+ $(use_enable cairo)
+ $(use_enable cpuid)
+ $(use_enable debug)
+ $(use_enable udev libudev)
+ $(use_enable nvml)
+ $(use_enable pci)
+ $(use_enable static-libs static)
+ $(use_enable xml libxml2)
+ $(use_with X x)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ default
+
+ case ${ARCH} in
+ # hwloc-dump-hwdata binary only built on those arches, so don't install non-working unit.
+ amd64|x86)
+ systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service"
+ ;;
+ esac
+
+ mv "${ED}"/usr/share/bash-completion/completions/hwloc{,-annotate} || die
+ bashcomp_alias hwloc-annotate \
+ hwloc-{diff,ps,compress-dir,gather-cpuid,distrib,info,bind,patch,calc,ls,gather-topology}
+ bashcomp_alias hwloc-annotate lstopo{,-no-graphics}
+
+ find "${ED}" -name '*.la' -delete || die
+ newicon "${DISTDIR}/lstopo.png" "${PN}"
+}
diff --git a/sys-apps/hwloc/hwloc-2.9.2.ebuild b/sys-apps/hwloc/hwloc-2.9.2.ebuild
new file mode 100644
index 000000000000..800918a87c06
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-2.9.2.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools bash-completion-r1 cuda desktop flag-o-matic systemd toolchain-funcs multilib-minimal
+
+MY_PV="v$(ver_cut 1-2)"
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="
+ https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2
+ https://raw.githubusercontent.com/open-mpi/hwloc/master/contrib/android/assets/lstopo.png
+"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +cpuid cuda debug nvml +pci static-libs svg udev valgrind xml X video_cards_nvidia"
+
+# opencl: opencl support dropped with x11-drivers/ati-drivers being removed (bug #582406).
+# anyone with hardware is welcome to step up and help test to get it re-added.
+# video-cards_nvidia: libXext/libX11 deps are only here, see HWLOC_GL_REQUIRES usage in config/hwloc.m4
+RDEPEND="
+ >=sys-libs/ncurses-5.9-r3:=[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ nvml? ( x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ udev? ( virtual/libudev:= )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )
+ video_cards_nvidia? (
+ x11-drivers/nvidia-drivers[static-libs]
+ x11-libs/libXext
+ x11-libs/libX11
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ valgrind? ( dev-debug/valgrind )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # bug #393467
+ export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+ if use video_cards_nvidia ; then
+ addpredict /dev/nvidiactl
+ fi
+
+ if use cuda ; then
+ append-cflags "-I${ESYSROOT}/opt/cuda/include"
+ append-cppflags "-I${ESYSROOT}/opt/cuda/include"
+
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags "-L${ESYSROOT}/opt/cuda/$(get_libdir)"
+ fi
+
+ export ac_cv_header_valgrind_valgrind_h=$(multilib_native_usex valgrind)
+ export ac_cv_have_decl_RUNNING_ON_VALGRIND=$(multilib_native_usex valgrind)
+
+ local myconf=(
+ --disable-opencl
+
+ # netloc is deprecated upstream, about to be removed
+ # bug #796797
+ --disable-netloc
+
+ --disable-plugin-ltdl
+ --enable-plugins
+ --enable-shared
+ --runstatedir="${EPREFIX}/run"
+ $(multilib_native_use_enable cuda)
+ $(multilib_native_use_enable video_cards_nvidia gl)
+ $(use_enable cairo)
+ $(use_enable cpuid)
+ $(use_enable debug)
+ $(use_enable udev libudev)
+ $(use_enable nvml)
+ $(use_enable pci)
+ $(use_enable static-libs static)
+ $(use_enable xml libxml2)
+ $(use_with X x)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ default
+
+ case ${ARCH} in
+ # hwloc-dump-hwdata binary only built on those arches, so don't install non-working unit.
+ amd64|x86)
+ systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service"
+ ;;
+ esac
+
+ mv "${ED}"/usr/share/bash-completion/completions/hwloc{,-annotate} || die
+ bashcomp_alias hwloc-annotate \
+ hwloc-{diff,ps,compress-dir,gather-cpuid,distrib,info,bind,patch,calc,ls,gather-topology}
+ bashcomp_alias hwloc-annotate lstopo{,-no-graphics}
+
+ find "${ED}" -name '*.la' -delete || die
+ newicon "${DISTDIR}/lstopo.png" "${PN}"
+}
diff --git a/sys-apps/hwloc/hwloc-2.9.3.ebuild b/sys-apps/hwloc/hwloc-2.9.3.ebuild
new file mode 100644
index 000000000000..ed032f53b9ab
--- /dev/null
+++ b/sys-apps/hwloc/hwloc-2.9.3.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools bash-completion-r1 cuda desktop flag-o-matic systemd toolchain-funcs multilib-minimal
+
+MY_PV="v$(ver_cut 1-2)"
+DESCRIPTION="Displays the hardware topology in convenient formats"
+HOMEPAGE="https://www.open-mpi.org/projects/hwloc/"
+SRC_URI="
+ https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.bz2
+ https://raw.githubusercontent.com/open-mpi/hwloc/master/contrib/android/assets/lstopo.png
+"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="cairo +cpuid cuda debug nvml +pci static-libs svg udev valgrind xml X video_cards_nvidia"
+
+# opencl: opencl support dropped with x11-drivers/ati-drivers being removed (bug #582406).
+# anyone with hardware is welcome to step up and help test to get it re-added.
+# video-cards_nvidia: libXext/libX11 deps are only here, see HWLOC_GL_REQUIRES usage in config/hwloc.m4
+RDEPEND="
+ >=sys-libs/ncurses-5.9-r3:=[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[X?,svg(+)?,${MULTILIB_USEDEP}] )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ nvml? ( x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] )
+ pci? (
+ >=sys-apps/pciutils-3.3.0-r2[${MULTILIB_USEDEP}]
+ >=x11-libs/libpciaccess-0.13.1-r1[${MULTILIB_USEDEP}]
+ )
+ udev? ( virtual/libudev:= )
+ xml? ( >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}] )
+ video_cards_nvidia? (
+ x11-drivers/nvidia-drivers[static-libs]
+ x11-libs/libXext
+ x11-libs/libX11
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ valgrind? ( dev-debug/valgrind )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8.1-gl.patch" )
+
+DOCS=( AUTHORS NEWS README VERSION )
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # bug #393467
+ export HWLOC_PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+ if use video_cards_nvidia ; then
+ addpredict /dev/nvidiactl
+ fi
+
+ if use cuda ; then
+ append-cflags "-I${ESYSROOT}/opt/cuda/include"
+ append-cppflags "-I${ESYSROOT}/opt/cuda/include"
+
+ local -x LDFLAGS="${LDFLAGS}"
+ append-ldflags "-L${ESYSROOT}/opt/cuda/$(get_libdir)"
+ fi
+
+ export ac_cv_header_valgrind_valgrind_h=$(multilib_native_usex valgrind)
+ export ac_cv_have_decl_RUNNING_ON_VALGRIND=$(multilib_native_usex valgrind)
+
+ local myconf=(
+ --disable-opencl
+
+ # netloc is deprecated upstream, about to be removed
+ # bug #796797
+ --disable-netloc
+
+ --disable-plugin-ltdl
+ --enable-plugins
+ --enable-shared
+ --runstatedir="${EPREFIX}/run"
+ $(multilib_native_use_enable cuda)
+ $(multilib_native_use_enable video_cards_nvidia gl)
+ $(use_enable cairo)
+ $(use_enable cpuid)
+ $(use_enable debug)
+ $(use_enable udev libudev)
+ $(use_enable nvml)
+ $(use_enable pci)
+ $(use_enable static-libs static)
+ $(use_enable xml libxml2)
+ $(use_with X x)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ default
+
+ case ${ARCH} in
+ # hwloc-dump-hwdata binary only built on those arches, so don't install non-working unit.
+ amd64|x86)
+ systemd_dounit "${ED}/usr/share/hwloc/hwloc-dump-hwdata.service"
+ ;;
+ esac
+
+ mv "${ED}"/usr/share/bash-completion/completions/hwloc{,-annotate} || die
+ bashcomp_alias hwloc-annotate \
+ hwloc-{diff,ps,compress-dir,gather-cpuid,distrib,info,bind,patch,calc,ls,gather-topology}
+ bashcomp_alias hwloc-annotate lstopo{,-no-graphics}
+
+ find "${ED}" -name '*.la' -delete || die
+ newicon "${DISTDIR}/lstopo.png" "${PN}"
+}
diff --git a/sys-apps/hwloc/metadata.xml b/sys-apps/hwloc/metadata.xml
index b84a415e26af..083b6957c7ac 100644
--- a/sys-apps/hwloc/metadata.xml
+++ b/sys-apps/hwloc/metadata.xml
@@ -1,30 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>cluster@gentoo.org</email>
- <name>Gentoo Cluster Project</name>
-</maintainer>
-<longdescription>
- The Portable Hardware Locality (hwloc) software package provides a portable abstraction
- (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures,
- including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading.
- It also gathers various system attributes such as cache and memory information.
- It primarily aims at helping applications with gathering information about modern computing
- hardware so as to exploit it accordingly and efficiently.
-</longdescription>
-<use>
- <flag name="cairo">Enable the Cairo back-end of hwloc's lstopo command</flag>
- <flag name="cpuid">Enable the cpuid-based architecture specific support (x86 component)</flag>
- <flag name="cuda">Enable CUDA device discovery using libcudart</flag>
- <flag name="gl">Enable GL display device discovery (NVCtrl)</flag>
- <flag name="libudev">Enable the Linux libudev</flag>
- <flag name="netloc">Enable Netloc</flag>
- <flag name="numa">Add support for numa memory allocation</flag>
- <flag name="nvml">Enable the NVML device discovery</flag>
- <flag name="pci">Enable PCI device discovery using libpci</flag>
- <flag name="plugins">Build hwloc components as plugins so that the hwloc core library does not directly depend on their dependencies (for instance the libpci library)</flag>
- <flag name="xml">use libxml2 for XML support, instead of a custom minimalistic support</flag>
- <flag name="X">use the X Window System</flag>
-</use>
+ <maintainer type="project">
+ <email>cluster@gentoo.org</email>
+ <name>Gentoo Cluster Project</name>
+ </maintainer>
+ <longdescription>
+ The Portable Hardware Locality (hwloc) software package provides a portable abstraction
+ (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures,
+ including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading.
+ It also gathers various system attributes such as cache and memory information.
+ It primarily aims at helping applications with gathering information about modern computing
+ hardware so as to exploit it accordingly and efficiently.
+ </longdescription>
+ <use>
+ <flag name="cairo">Enable the Cairo back-end of hwloc's lstopo command</flag>
+ <flag name="cpuid">Enable the cpuid-based architecture specific support (x86 component)</flag>
+ <flag name="cuda">Enable CUDA device discovery using libcudart</flag>
+ <flag name="gl">Enable GL display device discovery (NVCtrl)</flag>
+ <flag name="numa">Add support for numa memory allocation</flag>
+ <flag name="nvml">Enable the NVML device discovery</flag>
+ <flag name="pci">Enable PCI device discovery using libpci</flag>
+ <flag name="plugins">Build hwloc components as plugins so that the hwloc core library does not directly depend on their dependencies (for instance the libpci library)</flag>
+ <flag name="xml">use libxml2 for XML support, instead of a custom minimalistic support</flag>
+ <flag name="X">use the X Window System</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">open-mpi/hwloc</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/hwsetup/Manifest b/sys-apps/hwsetup/Manifest
deleted file mode 100644
index 7acdb97c1da3..000000000000
--- a/sys-apps/hwsetup/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hwsetup_1.2-7.tar.gz 10706 BLAKE2B 2d0e005629f631aa3ef22f44122cf934d23929c89ee4ca7240dcdd9c2898e622a78e494a057b9eed96045e8b1a7b54252f402311360e84d57007876cd9a5f630 SHA512 ef252c748ecf1fc17d107fa413a76df5d9daab84b10eb1ca2c5c320207e0be522c4ae6204c1c85c613403e40312c9c876bcab04eeaa1a2e1724b7bb1c6d41a1e
diff --git a/sys-apps/hwsetup/files/1.2-3-fastprobe.patch b/sys-apps/hwsetup/files/1.2-3-fastprobe.patch
deleted file mode 100644
index 600b8c4002d6..000000000000
--- a/sys-apps/hwsetup/files/1.2-3-fastprobe.patch
+++ /dev/null
@@ -1,74 +0,0 @@
---- a/hwsetup.c
-+++ b/hwsetup.c
-@@ -140,14 +140,15 @@
-
- int syntax(char *option)
- {
-- printf(VERSION);
-+ puts(VERSION);
- if(option) fprintf(stderr,"hwsetup: Unknown option '%s'\n\n",option);
-- printf("Usage: hwsetup\n"
-- " -v be verbose\n"
-- " -p print rotating prompt\n"
-- " -a ignore audio devices\n"
-- " -s ignore scsi controllers\n"
-- " -n probe only, don't configure anything.\n");
-+ puts("Usage: hwsetup\n"
-+ "\t\t-v\tbe verbose\n"
-+ "\t\t-p\tprint rotating prompt\n"
-+ "\t\t-a\tignore audio devices\n"
-+ "\t\t-s\tignore scsi controllers\n"
-+ "\t\t-n\tprobe only, don't configure anything.\n"
-+ "\t\t-f\trun a fast probe.");
- return option?1:0;
- }
-
-@@ -425,7 +426,7 @@
- {
- signal(SIGALRM,SIG_IGN);
- fprintf(stderr,"\nWARNING: Autodetection seems to hang,\n"
-- "please check your computers BIOS settings.\n");
-+ "please check your computer's BIOS settings.\n");
- fflush(stderr);
- if(wpid) { kill(wpid,SIGTERM); usleep(2500000); kill(wpid,SIGKILL); wpid=0; }
- exit(1); /* exit program */
-@@ -591,12 +592,13 @@
- return 0;
- }
-
--int hw_setup(enum deviceClass dc, int verbose, int probeonly, int skip)
-+int hw_setup(enum deviceClass dc, int verbose, int probeonly, int skip, int fastprobe)
- {
- int i,mouse=0,cdrom=0,modem=0,scanner=0;
-+ int probeopt=fastprobe?PROBE_SAFE:PROBE_ALL;
- struct device **currentDevs, *d, *serialmouse=NULL, *usbmouse=NULL;
- if(verbose&VERBOSE_PROMPT) wpid=startwheel();
-- currentDevs=probeDevices(dc,BUS_UNSPEC,PROBE_ALL);
-+ currentDevs=probeDevices(dc,BUS_UNSPEC,probeopt);
- if(verbose&VERBOSE_PROMPT&&wpid>0) { kill(wpid,SIGTERM); wpid=0; usleep(160000); write(2,"\033[0m Done.\n",11); }
- if(currentDevs==NULL) return -1;
- check_proc_modules(); /* Get currently loaded module list */
-@@ -650,7 +652,7 @@
-
- int main(int argc, char **argv)
- {
-- int i, verbose=0, probeonly=0, skip=0;
-+ int i, verbose=0, probeonly=0, skip=0, fast=0;
- enum deviceClass dc=CLASS_UNSPEC;
- for(i=1;i<argc;i++)
- {
-@@ -659,6 +661,7 @@
- else if(!strcasecmp(argv[i],"-a")) skip|=SKIP_AUDIO;
- else if(!strcasecmp(argv[i],"-s")) skip|=SKIP_SCSI;
- else if(!strcasecmp(argv[i],"-n")) probeonly=1;
-+ else if(!strcasecmp(argv[i],"-f")) fast=1;
- else return syntax(argv[i]);
- }
- /* Allow SIGTERM, SIGINT: rmmod depends on this. */
-@@ -667,5 +670,5 @@
- #ifdef BLACKLIST
- gen_blacklist();
- #endif
-- return hw_setup(dc,verbose,probeonly,skip);
-+ return hw_setup(dc,verbose,probeonly,skip,fast);
- }
diff --git a/sys-apps/hwsetup/files/1.2-7-dyn_blacklist.patch b/sys-apps/hwsetup/files/1.2-7-dyn_blacklist.patch
deleted file mode 100644
index efbe0f6abfed..000000000000
--- a/sys-apps/hwsetup/files/1.2-7-dyn_blacklist.patch
+++ /dev/null
@@ -1,62 +0,0 @@
---- a/hwsetup.c
-+++ b/hwsetup.c
-@@ -51,13 +51,40 @@
- /* Do not, under any circumstances, load these modules automatically, */
- /* even if in pcitable. (libkudzu may ignore this, and the KNOPPIX */
- /* autoconfig scripts may probe them, too) */
--char *blacklist[] =
-+char *blacklist[200][200] =
- { "apm","agpgart","yenta_socket","i82092","i82365","tcic",
- "pcmcia_core","ds","ohci1394","hisax", "hisax_fcpcipnp",
- "hisax_isac","hisax_st5481",
- /* Winmodems, unusable, can block sound slot */
- "snd-atiixp-modem", "snd-intel8x0m","snd-via82xx-modem"
- };
-+
-+int blacklistsize = 13;
-+void gen_blacklist(){
-+ int n = 13;
-+ int size = 0;
-+ char *comment;
-+ char module[1024];
-+ FILE *stream;
-+
-+ if((stream = fopen ("/usr/share/hwdata/blacklist", "r")) != (FILE *)0) {
-+ while((fgets(module, 1023, stream)) != (char *)0 ) {
-+
-+ comment = strchr(module, '#');
-+ if (comment != 0) *comment = '\0';
-+ comment = strchr(module, '\n');
-+ if (comment != 0) *comment = '\0';
-+ size = strlen(module);
-+ if (size < 2) continue;
-+ strcat (module , " \0");
-+ strcpy(blacklist[n] , module);
-+ n++;
-+ if ( n == 200 ) break;
-+ //printf(module);
-+ }
-+ blacklistsize = n;
-+ }
-+}
- #endif
-
- /* If a conflicting module in a row is already loaded, the new module will not be probed anymore */
-@@ -547,7 +574,7 @@
- char *cc;
- if((m==NULL)||(!strcmp("unknown",m))||(!strcmp("ignore",m))|| check_loaded(m)) return 0;
- #ifdef BLACKLIST
-- for(i=0;i<(sizeof(blacklist)/sizeof(char*));i++)
-+ for(i=0;i<blacklistsize;i++)
- {
- if(!modcmp(blacklist[i],m))
- {
-@@ -781,5 +808,8 @@
- /* Allow SIGTERM, SIGINT: rmmod depends on this. */
- signal(SIGTERM,SIG_DFL); signal(SIGINT,SIG_DFL);
- signal(SIGALRM,alarm_handler); alarm(MAX_TIME);
-+#ifdef BLACKLIST
-+ gen_blacklist();
-+#endif
- return hw_setup(dc,verbose,probeonly,skip);
- }
diff --git a/sys-apps/hwsetup/files/1.2-7-gentoo.patch b/sys-apps/hwsetup/files/1.2-7-gentoo.patch
deleted file mode 100644
index e4fc590393fd..000000000000
--- a/sys-apps/hwsetup/files/1.2-7-gentoo.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/hwsetup.c
-+++ b/hwsetup.c
-@@ -388,7 +388,7 @@
- sprintf(fullpath,"%.90s%.32s",xpath,server[i]);
- if(!exists(fullpath)) continue;
- strncpy(xi.xserver,server[i],sizeof(xi.xserver));
-- }
-+ }
- }
- }
- if((xpos=strstr(d->driver,xorg))!=NULL) /* Check for Xorg */
-@@ -653,7 +653,7 @@
- int writeconfig(char *name,struct device *d,int verbose)
- {
- FILE *f,*k;
-- const char *kconfig="/etc/sysconfig/knoppix";
-+ const char *kconfig="/etc/sysconfig/gentoo";
- char *desc;
- unlink(name);
- if((f=fopen(name,"w"))==NULL)
diff --git a/sys-apps/hwsetup/files/1.2-7-openchrome.patch b/sys-apps/hwsetup/files/1.2-7-openchrome.patch
deleted file mode 100644
index fb80f9dfcb1a..000000000000
--- a/sys-apps/hwsetup/files/1.2-7-openchrome.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/hwsetup.c
-+++ b/hwsetup.c
-@@ -456,7 +456,7 @@
- else if(strcasestr(xi.xdesc,"Newport")) strcpy(xi.xmodule,"newport");
- else if(strcasestr(xi.xdesc,"Siliconmotion")||strcasestr(xi.xdesc,"Silicon Motion")) strcpy(xi.xmodule,"siliconmotion");
- else if(strcasestr(xi.xdesc,"Chips")) strcpy(xi.xmodule,"chips");
-- else if(strcasestr(xi.xdesc,"VIA ")) strcpy(xi.xmodule,"via");
-+ else if(strcasestr(xi.xdesc,"VIA ")) strcpy(xi.xmodule,"openchrome");
- }
- else strcpy(xi.xmodule,xvesa4);
- }
diff --git a/sys-apps/hwsetup/files/1.2-strip.patch b/sys-apps/hwsetup/files/1.2-strip.patch
deleted file mode 100644
index 17de636a5dc7..000000000000
--- a/sys-apps/hwsetup/files/1.2-strip.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -3,7 +3,7 @@
- # define BLACKLIST to avoid loading potentially dangerous modules
- CFLAGS=-DBLACKLIST -Wall -fPIC
- OPT=-O2
--LDFLAGS=-s
-+#LDFLAGS=-s
- LIBS=-lkudzu -lpci
- CC=gcc
-
diff --git a/sys-apps/hwsetup/hwsetup-1.2-r3.ebuild b/sys-apps/hwsetup/hwsetup-1.2-r3.ebuild
deleted file mode 100644
index c535829a9ffa..000000000000
--- a/sys-apps/hwsetup/hwsetup-1.2-r3.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils toolchain-funcs flag-o-matic
-
-MY_PV=${PV}-7
-DESCRIPTION="Hardware setup program from Knoppix - used only on LiveCD"
-HOMEPAGE="http://www.knopper.net/"
-SRC_URI="http://debian-knoppix.alioth.debian.org/sources/${PN}_${MY_PV}.tar.gz"
-#http://developer.linuxtag.net/knoppix/sources/${PN}_${MY_PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 hppa ~ia64 -mips ppc ppc64 sparc x86"
-IUSE="zlib"
-
-COMMON_DEPEND="
- sys-apps/pciutils[zlib?]
- zlib? ( sys-libs/zlib )
-"
-DEPEND="
- ${COMMON_DEPEND}
- sys-libs/libkudzu
-"
-RDEPEND="
- ${COMMON_DEPEND}
- sys-apps/hwdata-gentoo
-"
-
-pkg_setup() {
- ewarn "This package is designed for use on the LiveCD only and will do "
- ewarn "unspeakably horrible and unexpected things on a normal system."
- ewarn "YOU HAVE BEEN WARNED!!!"
-}
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${MY_PV}-dyn_blacklist.patch \
- "${FILESDIR}"/${PV}-3-fastprobe.patch \
- "${FILESDIR}"/${MY_PV}-gentoo.patch \
- "${FILESDIR}"/${PV}-strip.patch \
- "${FILESDIR}"/${MY_PV}-openchrome.patch
-}
-
-src_configure() {
- if use zlib ; then
- sed -i \
- -e '/^LIBS=/s,-lpci,-lz -lpci,g' \
- Makefile
- fi
-}
-
-src_compile() {
- emake LDFLAGS="${LDFLAGS}" OPT="${CFLAGS}" CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX=/usr MANDIR=/usr/share/man
- dosbin ${PN}
- keepdir /etc/sysconfig
-}
-
-pkg_postinst() {
- ewarn "This package is intended for use on the Gentoo release media. If"
- ewarn "you are not building a CD, remove this package. It will not work"
- ewarn "properly on a running system, as Gentoo does not use any of the"
- ewarn "Knoppix-style detection except for CD builds."
-}
diff --git a/sys-apps/hwsetup/metadata.xml b/sys-apps/hwsetup/metadata.xml
deleted file mode 100644
index 767266dca141..000000000000
--- a/sys-apps/hwsetup/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>livecd@gentoo.org</email>
- <name>Gentoo LiveCD Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/sys-apps/i2c-tools/Manifest b/sys-apps/i2c-tools/Manifest
index 6b32301a6067..a632d9274602 100644
--- a/sys-apps/i2c-tools/Manifest
+++ b/sys-apps/i2c-tools/Manifest
@@ -1,2 +1 @@
-DIST i2c-tools-4.1.tar.xz 83576 BLAKE2B 0a9ed3bb335b61f6c17a6b6c705502ff008b4fb8bab6a5fde63163a32528b5214d92affc4b8d6cca29676dc7ba82dfa84be5f14943b7e81c8612a7d9419ac628 SHA512 83262bcfd94c2adf74517cc50095dd78221fa4d16a62397245d4a538de7463272abf4f6727024be8ab1ca8ecbfe647af85ba2a553e5b5e68a53e50dfcad20248
-DIST i2c-tools-4.2.tar.xz 87600 BLAKE2B 89f84ad07f4c042f67c308d48a402aa9ed46352062ddad3456d048730019e099e6eef626d487d802e07b100ae2c836e9aa6b2345950ff8744cbc0fe1a22616fb SHA512 5e230be4983c5c9c5718491d3ce9ee2e6205edea75c4097735eb32a25e522e37a074ef4cb61d2492707efebf0cb1b75ff65f1b2ae8c0bc1684a169526809a096
+DIST i2c-tools-4.3.tar.xz 81276 BLAKE2B c7300224c8d32785cd067b632bf0e9591f05264b1572f44aebda5f30a95164732d606710c13739ccb7899476219ceb3033beaf95b718ed7e18122f9181dc13fc SHA512 8a6cc12d927d6291b9baf407bc15807280539a7048ec5c2edf77414432eab43b28353c42bc0e45b7b481502aa4c5588def08f130d97fc275f635d1f77488f501
diff --git a/sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild b/sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild
deleted file mode 100644
index 5514e78e808e..000000000000
--- a/sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-DISTUTILS_OPTIONAL="1"
-
-inherit distutils-r1 flag-o-matic toolchain-funcs
-
-DESCRIPTION="I2C tools for bus probing, chip dumping, EEPROM decoding, and more"
-HOMEPAGE="https://www.kernel.org/pub/software/utils/i2c-tools"
-SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~mips ~ppc ~ppc64 ~sparc x86"
-IUSE="perl python static-libs"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="
- python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-RDEPEND+="
- perl? ( dev-lang/perl )"
-
-src_prepare() {
- default
- use python && distutils-r1_src_prepare
-
- # Cut out the eeprom/ & stub/ dirs as only perl scripts live there.
- if ! use perl ; then
- sed -i '/^SRCDIRS/s: eeprom stub : :g' Makefile || die
- fi
-}
-
-src_configure() {
- use python && distutils-r1_src_configure
-
- # Always build & use dynamic libs if possible.
- if tc-is-static-only ; then
- export BUILD_DYNAMIC_LIB=0
- export USE_STATIC_LIB=1
- export BUILD_STATIC_LIB=1
- else
- export BUILD_DYNAMIC_LIB=1
- export USE_STATIC_LIB=0
- export BUILD_STATIC_LIB=$(usex static-libs 1 0)
- fi
-}
-
-src_compile() {
- emake AR="$(tc-getAR)" CC="$(tc-getCC)" all-lib # parallel make
- emake CC="$(tc-getCC)"
- emake -C eepromer CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
-
- if use python ; then
- cd py-smbus || die
- append-cppflags -I../include
- distutils-r1_src_compile
- fi
-}
-
-src_install() {
- emake DESTDIR="${D}" libdir="/usr/$(get_libdir)" PREFIX="/usr" install-lib install
- dosbin eepromer/eeprom{,er}
- rm -rf "${D}"/usr/include || die # part of linux-headers
- dodoc CHANGES README
- local d
- for d in $(usex perl eeprom '') eepromer ; do
- docinto "${d}"
- dodoc "${d}"/README*
- done
-
- if use python ; then
- cd py-smbus || die
- docinto py-smbus
- dodoc README*
- distutils-r1_src_install
- fi
-}
diff --git a/sys-apps/i2c-tools/i2c-tools-4.2.ebuild b/sys-apps/i2c-tools/i2c-tools-4.2.ebuild
deleted file mode 100644
index f55d8d32a059..000000000000
--- a/sys-apps/i2c-tools/i2c-tools-4.2.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_7,3_8} )
-DISTUTILS_OPTIONAL="1"
-DISTUTILS_USE_SETUPTOOLS=no
-
-inherit distutils-r1 flag-o-matic toolchain-funcs
-
-DESCRIPTION="I2C tools for bus probing, chip dumping, EEPROM decoding, and more"
-HOMEPAGE="https://www.kernel.org/pub/software/utils/i2c-tools"
-SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="perl python"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="
- python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-RDEPEND+="
- perl? ( dev-lang/perl )"
-
-src_prepare() {
- default
- use python && distutils-r1_src_prepare
-
- # Cut out the eeprom/ & stub/ dirs as only perl scripts live there.
- if ! use perl ; then
- sed -i '/^SRCDIRS/s: eeprom stub : :g' Makefile || die
- fi
-}
-
-src_configure() {
- use python && distutils-r1_src_configure
-
- export BUILD_DYNAMIC_LIB=1
- export USE_STATIC_LIB=0
- export BUILD_STATIC_LIB=0
-}
-
-src_compile() {
- emake AR="$(tc-getAR)" CC="$(tc-getCC)" all-lib # parallel make
- emake CC="$(tc-getCC)"
- emake -C eepromer CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
-
- if use python ; then
- cd py-smbus || die
- append-cppflags -I../include
- distutils-r1_src_compile
- fi
-}
-
-src_install() {
- emake DESTDIR="${D}" libdir="/usr/$(get_libdir)" PREFIX="/usr" install-lib install
- dosbin eepromer/eeprom{,er}
- dodoc CHANGES README
- local d
- for d in $(usex perl eeprom '') eepromer ; do
- docinto "${d}"
- dodoc "${d}"/README*
- done
-
- if use python ; then
- cd py-smbus || die
- docinto py-smbus
- dodoc README*
- distutils-r1_src_install
- fi
-}
diff --git a/sys-apps/i2c-tools/i2c-tools-4.3-r1.ebuild b/sys-apps/i2c-tools/i2c-tools-4.3-r1.ebuild
new file mode 100644
index 000000000000..e0211bd875af
--- /dev/null
+++ b/sys-apps/i2c-tools/i2c-tools-4.3-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_OPTIONAL=1
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 flag-o-matic toolchain-funcs
+
+DESCRIPTION="I2C tools for bus probing, chip dumping, EEPROM decoding, and more"
+HOMEPAGE="https://www.kernel.org/pub/software/utils/i2c-tools"
+SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+ GPL-2+ python? ( GPL-2 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )"
+BDEPEND="
+ python? (
+ ${PYTHON_DEPS}
+ ${DISTUTILS_DEPS}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ )"
+
+src_prepare() {
+ default
+ use python && distutils-r1_src_prepare
+}
+
+src_configure() {
+ use python && distutils-r1_src_configure
+
+ export BUILD_DYNAMIC_LIB=1
+ export USE_STATIC_LIB=0
+ export BUILD_STATIC_LIB=0
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)" CC="$(tc-getCC)" EXTRA="eeprog"
+
+ if use python ; then
+ cd py-smbus || die
+ append-cppflags -I../include
+ distutils-r1_src_compile
+ fi
+}
+
+src_install() {
+ emake EXTRA="eeprog" DESTDIR="${D}" libdir="/usr/$(get_libdir)" PREFIX="/usr" install
+ dodoc CHANGES README
+
+ if use python ; then
+ cd py-smbus || die
+ docinto py-smbus
+ dodoc README*
+ distutils-r1_src_install
+ fi
+}
diff --git a/sys-apps/i2c-tools/i2c-tools-4.3.ebuild b/sys-apps/i2c-tools/i2c-tools-4.3.ebuild
new file mode 100644
index 000000000000..86b0f1a7d221
--- /dev/null
+++ b/sys-apps/i2c-tools/i2c-tools-4.3.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_OPTIONAL="1"
+
+inherit distutils-r1 flag-o-matic toolchain-funcs
+
+DESCRIPTION="I2C tools for bus probing, chip dumping, EEPROM decoding, and more"
+HOMEPAGE="https://www.kernel.org/pub/software/utils/i2c-tools"
+SRC_URI="https://www.kernel.org/pub/software/utils/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
+IUSE="python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )"
+BDEPEND="
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ )"
+
+src_prepare() {
+ default
+ use python && distutils-r1_src_prepare
+}
+
+src_configure() {
+ use python && distutils-r1_src_configure
+
+ export BUILD_DYNAMIC_LIB=1
+ export USE_STATIC_LIB=0
+ export BUILD_STATIC_LIB=0
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)" CC="$(tc-getCC)" EXTRA="eeprog"
+
+ if use python ; then
+ cd py-smbus || die
+ append-cppflags -I../include
+ distutils-r1_src_compile
+ fi
+}
+
+src_install() {
+ emake EXTRA="eeprog" DESTDIR="${D}" libdir="/usr/$(get_libdir)" PREFIX="/usr" install
+ dodoc CHANGES README
+
+ if use python ; then
+ cd py-smbus || die
+ docinto py-smbus
+ dodoc README*
+ distutils-r1_src_install
+ fi
+}
diff --git a/sys-apps/i2c-tools/metadata.xml b/sys-apps/i2c-tools/metadata.xml
index 203fa55c746f..ba63e601ec3b 100644
--- a/sys-apps/i2c-tools/metadata.xml
+++ b/sys-apps/i2c-tools/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>zlogene@gentoo.org</email>
- <name>Mikle Kolyada</name>
-</maintainer>
+<!-- maintainer-needed -->
+<upstream>
+ <remote-id type="cpe">cpe:/a:i2c-tools_project:i2c-tools</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/sys-apps/ibm-powerpc-utils/Manifest b/sys-apps/ibm-powerpc-utils/Manifest
index 99e52049706a..0a3f12d3cea7 100644
--- a/sys-apps/ibm-powerpc-utils/Manifest
+++ b/sys-apps/ibm-powerpc-utils/Manifest
@@ -1 +1,2 @@
+DIST ibm-powerpc-utils-1.3.10.tar.gz 388572 BLAKE2B 683263df9f1a17a31d00325a7c760d81b51bccf74914215b78069b14c9cac7336457ab48891ed69467dc8c70e3886c1e22a614c6d53b9d24714f3ce744bd69fd SHA512 37b09268e9ce9041e7f823423f7517d5837625ebe33c28b9dcd8902580718327df0a835a1cf7f2659ef3e0b637f2bd008153114ea146996f3b1b97d6c078b46e
DIST ibm-powerpc-utils-1.3.8.tar.gz 355931 BLAKE2B cb1756640962f55eead8556abb714f938a066d9c63e990ee6467ecdb032eac7058ce8715dc8b8d403e3c03efe98a7af0c7d560158258e7097300befbb04f8472 SHA512 7c9057131315d8fac6154c410562d9cd1807f76241bcc190566ece05b0ddd2ddbe1097749b7e644ccc9691641d40460a877368162e9b951fe790f53f638f635e
diff --git a/sys-apps/ibm-powerpc-utils/files/ibm-powerpc-utils-1.3.8-musl.patch b/sys-apps/ibm-powerpc-utils/files/ibm-powerpc-utils-1.3.8-musl.patch
new file mode 100644
index 000000000000..5357e5fdcef3
--- /dev/null
+++ b/sys-apps/ibm-powerpc-utils/files/ibm-powerpc-utils-1.3.8-musl.patch
@@ -0,0 +1,95 @@
+From ec0eb99a402ff9371965c2c8726bc400674215b7 Mon Sep 17 00:00:00 2001
+From: Fabian Groffen <grobian@gentoo.org>
+Date: Fri, 21 May 2021 11:25:21 +0200
+Subject: [PATCH] add includes/defines for musl libc support
+
+- add some missing includes to get proper definitions for beXXtoh and
+ PATH_MAX
+- guard backtrace() from execinfo.h usage for it is glibc only
+
+PR: https://github.com/ibm-power-utilities/powerpc-utils/pull/63
+Signed-off-by: Fabian Groffen <grobian@gentoo.org>
+---
+ src/common/cpu_info_helpers.c | 1 +
+ src/drmgr/common.c | 6 ++++++
+ src/drmgr/dr.h | 1 +
+ src/rtas_dbg.c | 1 +
+ 4 files changed, 9 insertions(+)
+
+diff --git a/src/common/cpu_info_helpers.c b/src/common/cpu_info_helpers.c
+index 3d08ff7..925f220 100644
+--- a/src/common/cpu_info_helpers.c
++++ b/src/common/cpu_info_helpers.c
+@@ -29,6 +29,7 @@
+ #include <errno.h>
+ #include <stdbool.h>
+ #include <dirent.h>
++#include <limits.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include "cpu_info_helpers.h"
+diff --git a/src/drmgr/common.c b/src/drmgr/common.c
+index 5e8135b..32cf805 100644
+--- a/src/drmgr/common.c
++++ b/src/drmgr/common.c
+@@ -28,7 +28,9 @@
+ #include <signal.h>
+ #include <errno.h>
+ #include <dirent.h>
++#ifdef __GLIBC__
+ #include <execinfo.h>
++#endif
+ #include <ctype.h>
+ #include <sys/wait.h>
+ #include <endian.h>
+@@ -853,6 +855,7 @@ sighandler(int signo)
+ say(ERROR, "Received signal %d, attempting to cleanup and exit\n",
+ signo);
+
++#ifdef __GLIBC__
+ if (log_fd) {
+ void *callstack[128];
+ int sz;
+@@ -860,6 +863,7 @@ sighandler(int signo)
+ sz = backtrace(callstack, 128);
+ backtrace_symbols_fd(callstack, sz, log_fd);
+ }
++#endif
+
+ dr_fini();
+ exit(-1);
+@@ -925,8 +929,10 @@ sig_setup(void)
+ if (sigaction(SIGBUS, &sigact, NULL))
+ return -1;
+
++#ifdef __GLIBC__
+ /* dummy call to backtrace to get symbol loaded */
+ backtrace(callstack, 128);
++#endif
+ return 0;
+ }
+
+diff --git a/src/drmgr/dr.h b/src/drmgr/dr.h
+index f171bfe..b32d49a 100644
+--- a/src/drmgr/dr.h
++++ b/src/drmgr/dr.h
+@@ -26,6 +26,7 @@
+ #include <nl_types.h>
+ #include <unistd.h>
+ #include <stdarg.h>
++#include <limits.h>
+ #include "rtas_calls.h"
+ #include "drpci.h"
+
+diff --git a/src/rtas_dbg.c b/src/rtas_dbg.c
+index 526e78b..ebc7474 100644
+--- a/src/rtas_dbg.c
++++ b/src/rtas_dbg.c
+@@ -32,6 +32,7 @@
+ #include <getopt.h>
+ #include <dirent.h>
+ #include <string.h>
++#include <endian.h>
+ #include <sys/syscall.h>
+ #include <unistd.h>
+ #include <linux/unistd.h>
diff --git a/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.10-r1.ebuild b/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.10-r1.ebuild
new file mode 100644
index 000000000000..5e7ecd9231cc
--- /dev/null
+++ b/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.10-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools systemd
+
+DESCRIPTION="Utilities for the maintenance of the IBM and Apple PowerPC platforms"
+HOMEPAGE="https://github.com/ibm-power-utilities/powerpc-utils"
+SRC_URI="https://github.com/ibm-power-utilities/${PN//ibm-}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P//ibm-}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="ppc ppc64"
+IUSE="+rtas"
+
+RDEPEND="
+ !<sys-apps/powerpc-utils-1.1.3.18-r4
+ sys-process/numactl
+ rtas? ( >=sys-libs/librtas-2.0.2 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.5-docdir.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-werror \
+ --with-systemd="$(systemd_get_systemunitdir)" \
+ $(use_with rtas librtas)
+}
diff --git a/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.8-r1.ebuild b/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.8-r1.ebuild
index d828529d9685..01005efd85fb 100644
--- a/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.8-r1.ebuild
+++ b/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-1.3.8-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -22,6 +22,7 @@ RDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-1.3.5-docdir.patch
+ "${FILESDIR}"/${P}-musl.patch
)
src_prepare() {
diff --git a/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-99999.ebuild b/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-99999.ebuild
deleted file mode 100644
index b6e7ae3be805..000000000000
--- a/sys-apps/ibm-powerpc-utils/ibm-powerpc-utils-99999.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools git-r3
-
-DESCRIPTION="Utilities for the maintainance of the IBM and Apple PowerPC platforms"
-HOMEPAGE="https://github.com/ibm-power-utilities/powerpc-utils"
-EGIT_REPO_URI="https://github.com/ibm-power-utilities/powerpc-utils"
-IUSE="+rtas"
-
-SLOT="0"
-LICENSE="GPL-2+"
-KEYWORDS=""
-
-RDEPEND="
- !<sys-apps/powerpc-utils-1.1.3.18-r4
- rtas? ( >=sys-libs/librtas-2.0.2 )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.3.5-docdir.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf $(use_with rtas librtas)
-}
diff --git a/sys-apps/ibm-powerpc-utils/metadata.xml b/sys-apps/ibm-powerpc-utils/metadata.xml
index fac826b0b031..ffc4baf91c0e 100644
--- a/sys-apps/ibm-powerpc-utils/metadata.xml
+++ b/sys-apps/ibm-powerpc-utils/metadata.xml
@@ -1,14 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
<use>
<flag name="rtas">Add support for the Run Time Abstraction Services (RTAS)</flag>
</use>
<upstream>
<remote-id type="sourceforge">powerpc-utils</remote-id>
+ <remote-id type="github">ibm-power-utilities/powerpc-utils</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r1.ebuild b/sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r1.ebuild
deleted file mode 100644
index ac7e897740b2..000000000000
--- a/sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Set, get or disable the value of the idle3 timer found on WD HDDs"
-HOMEPAGE="http://idle3-tools.sourceforge.net/"
-SRC_URI="https://dev.gentoo.org/~conikost/files/${P}.tar.bz2"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="amd64 arm x86"
-
-PATCHES=( "${FILESDIR}"/makefile.patch )
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
diff --git a/sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r2.ebuild b/sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r2.ebuild
new file mode 100644
index 000000000000..2803e5aab702
--- /dev/null
+++ b/sys-apps/idle3-tools/idle3-tools-0.9.3_pre20120123-r2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Set, get or disable the value of the idle3 timer found on WD HDDs"
+HOMEPAGE="http://idle3-tools.sourceforge.net/"
+SRC_URI="https://dev.gentoo.org/~conikost/files/${P}.tar.bz2"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+
+PATCHES=( "${FILESDIR}"/makefile.patch )
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
diff --git a/sys-apps/idle3-tools/metadata.xml b/sys-apps/idle3-tools/metadata.xml
index e6ab1d062d74..96d6f74a4401 100644
--- a/sys-apps/idle3-tools/metadata.xml
+++ b/sys-apps/idle3-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/ifd-gempc/Manifest b/sys-apps/ifd-gempc/Manifest
index b2fd1b53cd55..50aed48b4f56 100644
--- a/sys-apps/ifd-gempc/Manifest
+++ b/sys-apps/ifd-gempc/Manifest
@@ -1 +1,2 @@
DIST ifd-gempc-1.0.7.tar.gz 76712 BLAKE2B 5ae734ff97865a66d993fc67a2ee5537875773b8275a2125c8853ddf0006cea61f20cd38571be44126cb2cfeb16a6778d6917fd056616e24997a3aed85226e76 SHA512 dde143bd2ca46cca91f979ddbb300f0b5fea37ecfa0c67058d887fcd56edf58adecce85dd05c7af25329fdfcfdf5bf7a52d4dc24061231a234180aad3df44a93
+DIST ifd-gempc-1.0.8.tar.gz 75298 BLAKE2B 6a371a554751819bbd971dc9273fee0bfce4ef8d6fa0a8c261c6944f4689d032102630b3f103c557156de64bb3cf8f5035bdf6a141dcd1e8dd271c60a249de53 SHA512 e3410877120482c80695af832d27ea2fa6697106c3264c57c32fb46b556573a381a699b8a11307c4597e5cfb97f7bbdfc5662acd87a129d44e8adc979d507f4a
diff --git a/sys-apps/ifd-gempc/ifd-gempc-1.0.7.ebuild b/sys-apps/ifd-gempc/ifd-gempc-1.0.7.ebuild
index 7e89f583238f..8c3677634c1c 100644
--- a/sys-apps/ifd-gempc/ifd-gempc-1.0.7.ebuild
+++ b/sys-apps/ifd-gempc/ifd-gempc-1.0.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -31,7 +31,7 @@ src_install() {
emake CC="$(tc-getCC)" DESTDIR="${D}" install
einstalldocs
- local pcscdir="$(pkg-config --variable=usbdropdir libpcsclite)"
+ local pcscdir="$($(tc-getPKG_CONFIG) --variable=usbdropdir libpcsclite)"
local conf="/etc/reader.conf.d/${PN}.conf"
dodir "$(dirname "${conf}")"
insinto "$(dirname "${conf}")"
diff --git a/sys-apps/ifd-gempc/ifd-gempc-1.0.8.ebuild b/sys-apps/ifd-gempc/ifd-gempc-1.0.8.ebuild
new file mode 100644
index 000000000000..a9870055183d
--- /dev/null
+++ b/sys-apps/ifd-gempc/ifd-gempc-1.0.8.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="GemCore based PC/SC reader drivers for pcsc-lite"
+HOMEPAGE="http://ludovic.rousseau.free.fr/softwares/ifd-GemPC"
+SRC_URI="http://ludovic.rousseau.free.fr/softwares/ifd-GemPC/${P}.tar.gz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+RDEPEND="
+ >=sys-apps/pcsc-lite-1.2.9_beta7
+ virtual/libusb:0
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( README README.410 README.430 )
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake CC="$(tc-getCC)" DESTDIR="${D}" install
+ einstalldocs
+
+ local pcscdir="$($(tc-getPKG_CONFIG) --variable=usbdropdir libpcsclite)"
+ local conf="/etc/reader.conf.d/${PN}.conf"
+
+ insinto "$(dirname "${conf}")"
+ newins "${FILESDIR}/reader.conf" "$(basename "${conf}")"
+ sed -e "s:%PCSC_DRIVERS_DIR%:${pcscdir}:g" -e "s:%libGemPC410%:libGemPC410.so.${PV}:g" -i "${D}${conf}"
+}
+
+pkg_postinst() {
+ elog "NOTICE:"
+ elog "1. If you are using GemPC410, modify ${conf}"
+ elog "2. Run update-reader.conf, yes this is a command..."
+ elog "3. Restart pcscd"
+}
+
+pkg_postrm() {
+ #
+ # Without this, pcscd will not start next time.
+ #
+ local conf="/etc/reader.conf.d/${PN}.conf"
+ if ! [[ -f "${conf}" && -f "$(grep LIBPATH "${conf}" | sed 's/LIBPATH *//' | sed 's/ *$//g' | head -n 1)" ]]; then
+ [[ -f "${conf}" ]] && rm "${conf}"
+ update-reader.conf
+ elog "NOTICE:"
+ elog "You need to restart pcscd"
+ fi
+}
diff --git a/sys-apps/ifd-gempc/metadata.xml b/sys-apps/ifd-gempc/metadata.xml
index c10caf905e1e..cae2b2bc0ad2 100644
--- a/sys-apps/ifd-gempc/metadata.xml
+++ b/sys-apps/ifd-gempc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
diff --git a/sys-apps/ifplugd/ifplugd-0.28-r11.ebuild b/sys-apps/ifplugd/ifplugd-0.28-r11.ebuild
index 560ccc4ef8f4..f6963726777a 100644
--- a/sys-apps/ifplugd/ifplugd-0.28-r11.ebuild
+++ b/sys-apps/ifplugd/ifplugd-0.28-r11.ebuild
@@ -9,7 +9,7 @@ SRC_URI="http://0pointer.de/lennart/projects/ifplugd/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 hppa ppc x86"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc x86"
IUSE="doc selinux"
DEPEND="virtual/pkgconfig
diff --git a/sys-apps/ifplugd/metadata.xml b/sys-apps/ifplugd/metadata.xml
index 0065a0bccee6..abab3d1ce71d 100644
--- a/sys-apps/ifplugd/metadata.xml
+++ b/sys-apps/ifplugd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/init-system-helpers/Manifest b/sys-apps/init-system-helpers/Manifest
index f74e73aee069..bd84e5746eb4 100644
--- a/sys-apps/init-system-helpers/Manifest
+++ b/sys-apps/init-system-helpers/Manifest
@@ -1 +1 @@
-DIST init-system-helpers_1.49.tar.xz 42660 BLAKE2B 548711283b04e3df13e9287154e2648b99ac80c2cdc71a428b4496220cd7c319f8f7afccb1e611c07b9d801837ef8799a3295a0490aa62812d47b728ba5ddba9 SHA512 bd612207e51e18a44f9c90e1e5b069ab39e06c776b8a0d6c9ecb367890d4a44ff02b3028418ac10a688782745331f39bb9299ba836f333b712e6fdd7ddc8da16
+DIST init-system-helpers_1.60.tar.xz 40584 BLAKE2B ad21a65ef3c4bcec16b14fc4db890fb7f83df625d1038fe217c20e9391404914df189ae31506b9bbef0442cdd333f46bd9c4d9009b7d671d9ae2deb6b05eee8e SHA512 3739613fa8afa1fa6032f47f8cec67c526171987a7d1eae31d479db9cc1e49ae3cd397a858130c17680d62becb9c6499bd1da1268e9ed25b044337ab69f0dd88
diff --git a/sys-apps/init-system-helpers/files/revert-openrc-management.patch b/sys-apps/init-system-helpers/files/revert-openrc-management.patch
index 49b4916fab31..582b71d9b1c4 100644
--- a/sys-apps/init-system-helpers/files/revert-openrc-management.patch
+++ b/sys-apps/init-system-helpers/files/revert-openrc-management.patch
@@ -1,3 +1,6 @@
+Tries to manage started service instead of allowing OpenRC to do it.
+https://bugs.gentoo.org/641836
+https://bugs.gentoo.org/649014
--- a/script/service
+++ b/script/service
@@ -159,23 +160,6 @@ run_via_sysvinit() {
diff --git a/sys-apps/init-system-helpers/init-system-helpers-1.49-r1.ebuild b/sys-apps/init-system-helpers/init-system-helpers-1.49-r1.ebuild
deleted file mode 100644
index 1e0096905cac..000000000000
--- a/sys-apps/init-system-helpers/init-system-helpers-1.49-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Helper scripts useful for both OpenRC and systemd"
-HOMEPAGE="https://packages.debian.org/sid/init-system-helpers"
-# git repo: https://anonscm.debian.org/git/collab-maint/init-system-helpers.git
-SRC_URI="http://http.debian.net/debian/pool/main/i/${PN}/${PN}_${PV}.tar.xz"
-
-LICENSE="BSD GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm64 hppa ~ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="!<sys-apps/openrc-0.33"
-
-PATCHES=( "${FILESDIR}/revert-openrc-management.patch" )
-
-src_install() {
- # We only care about 'service' script/manpage:
- exeinto /sbin/
- doexe script/service
-
- # FIXME: need to patch to remove *rc.d references, which we don't ship
- # And should probably add a list of supported options (e.g., start/stop/etc.)
- doman man8/service.8
-}
diff --git a/sys-apps/init-system-helpers/init-system-helpers-1.60.ebuild b/sys-apps/init-system-helpers/init-system-helpers-1.60.ebuild
new file mode 100644
index 000000000000..9e7c8156a3a1
--- /dev/null
+++ b/sys-apps/init-system-helpers/init-system-helpers-1.60.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Helper scripts useful for both OpenRC and systemd"
+HOMEPAGE="https://packages.debian.org/sid/init-system-helpers"
+# git repo: https://anonscm.debian.org/git/collab-maint/init-system-helpers.git
+SRC_URI="http://http.debian.net/debian/pool/main/i/${PN}/${PN}_${PV}.tar.xz"
+
+LICENSE="BSD GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
+
+BDEPEND="dev-python/docutils"
+RDEPEND="!<sys-apps/openrc-0.33"
+
+PATCHES=(
+ "${FILESDIR}/revert-openrc-management.patch"
+)
+
+src_install() {
+ # We only care about 'service' script/manpage:
+ exeinto /sbin/
+ doexe script/service
+
+ rst2man.py man8/service.rst > man8/service.8 || die "Failed to generate man page"
+
+ # FIXME: need to patch to remove *rc.d references, which we don't ship
+ # And should probably add a list of supported options (e.g., start/stop/etc.)
+ doman man8/service.8
+}
diff --git a/sys-apps/init-system-helpers/metadata.xml b/sys-apps/init-system-helpers/metadata.xml
index 7a38bb900964..c3bda71eefca 100644
--- a/sys-apps/init-system-helpers/metadata.xml
+++ b/sys-apps/init-system-helpers/metadata.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
+ <stabilize-allarches/>
</pkgmetadata>
diff --git a/sys-apps/input-utils/Manifest b/sys-apps/input-utils/Manifest
index 7b5225e2be11..28ebbac10219 100644
--- a/sys-apps/input-utils/Manifest
+++ b/sys-apps/input-utils/Manifest
@@ -1,2 +1 @@
-DIST input-1.2.tar.gz 22809 BLAKE2B efef0701ccbdd1bf934049bf687f921194d1a4328882b94e7b2844ec55f25c5c2293eb76ff869d7ed44dbf5e8efe3b2ebd0bb5b657b2b411da5ef83b39520db4 SHA512 75a5e2d5b778ae93fb2d29ed7c8b0ec564233a385d88d0fe3a9e5ecd55259f14014bf269c318b5872ddd1379110565d354a1a043eb0a4693c724d52b6ca12173
DIST input-1.3.tar.gz 23755 BLAKE2B 45a9d138f55677da596298d86e18af5849a81f5cff7397dab028c4939b6b385cc3116fc48bd23844edc36330d0f25456931fb903af9adcdc60aa21d8267cf725 SHA512 4f864301e6b7d40882327b26780db1d9b7e37215cb558653738f93b74ea2781f64676e41a440fbd2659f14bd30640c7af6c709315cce4dcc6a157d80ac2cb60d
diff --git a/sys-apps/input-utils/input-utils-1.2.ebuild b/sys-apps/input-utils/input-utils-1.2.ebuild
deleted file mode 100644
index 5bd6e7f4694f..000000000000
--- a/sys-apps/input-utils/input-utils-1.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils
-
-MY_PN="input"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Small collection of linux input layer utils"
-HOMEPAGE="https://www.kraxel.org/blog/linux/input/"
-SRC_URI="https://www.kraxel.org/releases/input/${MY_P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- # Ported from Debian
- #epatch "${FILESDIR}"/input-utils-0.0.1_pre20081014.patch
- # version check stuff
- #epatch "${FILESDIR}"/input-utils-0.0.1-protocol-mismatch-fix.patch
- :
-}
-
-src_install() {
- make install bindir="${D}"/usr/bin mandir="${D}"/usr/share/man STRIP="" || die "make install failed"
- dodoc lircd.conf
- dodoc README
-}
diff --git a/sys-apps/input-utils/input-utils-1.3.ebuild b/sys-apps/input-utils/input-utils-1.3.ebuild
index 3c39e5a2ee89..9de77fcb13cc 100644
--- a/sys-apps/input-utils/input-utils-1.3.ebuild
+++ b/sys-apps/input-utils/input-utils-1.3.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
MY_PN="input"
MY_P="${MY_PN}-${PV}"
@@ -9,19 +9,14 @@ MY_P="${MY_PN}-${PV}"
DESCRIPTION="Small collection of linux input layer utils"
HOMEPAGE="https://www.kraxel.org/blog/linux/input/"
SRC_URI="https://www.kraxel.org/releases/input/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-
-S="${WORKDIR}/${MY_P}"
+KEYWORDS="amd64 ~arm ~arm64 ppc ~riscv x86"
src_install() {
- make install bindir="${D}"/usr/bin mandir="${D}"/usr/share/man STRIP="" || die "make install failed"
+ emake EPREFIX="${EPREFIX}/usr" bindir="${ED}"/usr/bin mandir="${ED}"/usr/share/man STRIP="" install
dodoc lircd.conf
dodoc README
}
diff --git a/sys-apps/input-utils/metadata.xml b/sys-apps/input-utils/metadata.xml
index 39796f7a1929..632c9a4b1568 100644
--- a/sys-apps/input-utils/metadata.xml
+++ b/sys-apps/input-utils/metadata.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
-<email>robbat2@gentoo.org</email>
-<name>Robin H. Johnson</name>
-</maintainer>
-<longdescription lang="en">
-This is a collection of utilities which are useful when working with the input
-layer of the Linux kernel (version 2.6 and later). Included are utilities to
-list the input devices known to the kernel, show the input events that are
-received by a device, and query or modify keyboard maps.
-</longdescription>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <longdescription lang="en">
+ This is a collection of utilities which are useful when working with the input
+ layer of the Linux kernel (version 2.6 and later). Included are utilities to
+ list the input devices known to the kernel, show the input events that are
+ received by a device, and query or modify keyboard maps.
+ </longdescription>
</pkgmetadata>
diff --git a/sys-apps/install-xattr/Manifest b/sys-apps/install-xattr/Manifest
index fc0ca8e58254..d5dd03eb3c20 100644
--- a/sys-apps/install-xattr/Manifest
+++ b/sys-apps/install-xattr/Manifest
@@ -1,3 +1 @@
-DIST install-xattr-0.5.tar.bz2 16136 BLAKE2B 8973584d4819b9f500dcfb76ed0eaddce725b78e72dfa73ccff52c745e6f041926f8f930e5c5035fa888402c6b530207546098864266268dee2c897404bf7c74 SHA512 0bbde3a548fc5062041b38f90ac09c402f3cb0aebf4f0c331552fc44d39dd3d5e4d73bca0811de36c53af8afa5d22e543a7c90107d272f2a1b97c819b244eb7c
-DIST install-xattr-0.7.tar.bz2 16200 BLAKE2B bdddd4610e5fbb6f6ccfcdfb37abacff00ada5ca5fa18a6a4ad254b623ebe6dc9d0a2c8931f919f8623ed8f64e9c09584d6beabffbf3c72088f80383b198a2d7 SHA512 1cb4a4e72a9c5820081e032bd0d681ef985a228ad9bb025d5eb31c7b57678348d772f270def803376f2d9d4f8e6ebcede9629ce65eef917b3e8a06d6f40eec44
DIST install-xattr-0.8.tar.bz2 16359 BLAKE2B 25c483211ea6d01f46d9739fd3f1327e543e8b986a252d97e8b012ff6169a9b6430dc0ab7c184bf04c6665182c242eb37f7059d2d23cecececea723bde74cb56 SHA512 3af95a724d95286854767fe28679b024de8d257ce2d21addecbd40906e10bf48cfd4263609c6c2f436c6a807e91d24118110fda041091fadbefd848c892af778
diff --git a/sys-apps/install-xattr/files/0.8/0001-install-xattr-avoid-accessing-empty-storage.patch b/sys-apps/install-xattr/files/0.8/0001-install-xattr-avoid-accessing-empty-storage.patch
new file mode 100644
index 000000000000..b77f74635e48
--- /dev/null
+++ b/sys-apps/install-xattr/files/0.8/0001-install-xattr-avoid-accessing-empty-storage.patch
@@ -0,0 +1,46 @@
+https://github.com/gentoo/elfix/pull/3
+
+From 2a0dffbf0080dc74f82910a74f051d835cfd653f Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 6 Jan 2023 03:06:50 +0000
+Subject: [PATCH 1/2] install-xattr: avoid accessing empty storage
+
+UBSAN reports:
+```
+install-xattr.c:124:16: runtime error: load of address 0x55555556d440 with insufficient space for an object of type 'char'
+0x55555556d440: note: pointer points here
+ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 61 00 00 00
+ ^
+ #0 0x555555557a27 in copyxattr /home/sam/git/elfix//install-xattr.c:124
+ #1 0x555555556a4d in main /home/sam/git/elfix//install-xattr.c:410
+ #2 0x7ffff77c864f (/usr/lib64/libc.so.6+0x2364f)
+ #3 0x7ffff77c8708 in __libc_start_main (/usr/lib64/libc.so.6+0x23708)
+ #4 0x555555557114 in _start (/home/sam/git/elfix//install-xattr+0x3114)
+```
+
+Triggered with:
+```
+mkdir /tmp/a
+touch /tmp/foo
+./install-xattr -c /tmp/foo /tmp/foo2 /tmp/a
+```
+
+I don't see this with Clang or < GCC 12, but I do with GCC 13 (13.0.0_pre20230101 p5);
+I suspect it's because of object-size improvements.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/install-xattr.c
++++ b/install-xattr.c
+@@ -119,6 +119,10 @@ copyxattr(const char *source, const char *target)
+ lxattr = xmalloc(lsize);
+ xlistxattr(source, lxattr, lsize);
+
++ /* There's no xattrs at all. */
++ if (lsize == 0)
++ return;
++
+ i = 0;
+ while (1) {
+ while (lxattr[i++] == 0)
+--
+2.39.0
diff --git a/sys-apps/install-xattr/files/0.8/0002-install-xattr-fix-small-memory-leak.patch b/sys-apps/install-xattr/files/0.8/0002-install-xattr-fix-small-memory-leak.patch
new file mode 100644
index 000000000000..91c9d8885b9e
--- /dev/null
+++ b/sys-apps/install-xattr/files/0.8/0002-install-xattr-fix-small-memory-leak.patch
@@ -0,0 +1,50 @@
+https://github.com/gentoo/elfix/pull/3
+
+From 776afeae92d2afd3340cd753abc58ccd8daba48f Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 6 Jan 2023 06:39:30 +0000
+Subject: [PATCH 2/2] install-xattr: fix small memory leak
+
+There's another with strdup/malloc but it gets a bit messier
+to fix so let's leave that for now (this is mostly about correctness
+anyway, as the runtime of install-xattr is very small):
+```
+Direct leak of 4097 byte(s) in 1 object(s) allocated from:
+ #0 0x7f4a2c22e257 in __interceptor_malloc /usr/src/debug/sys-devel/gcc-13.0.0_pre20230101/gcc-13-20230101/libsanitizer/asan/asan_malloc_linux.cpp:69
+ #1 0x7f4a2c1d2b40 in __interceptor_realpath /usr/src/debug/sys-devel/gcc-13.0.0_pre20230101/gcc-13-20230101/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:3904
+ #2 0x55da3adf5629 in realpath /usr/include/bits/stdlib.h:42
+ #3 0x55da3adf5629 in main /home/sam/git/elfix/install-xattr.c:252
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/install-xattr.c
++++ b/install-xattr.c
+@@ -248,7 +248,6 @@ main(int argc, char* argv[])
+ char *target = NULL; /* the target file or directory */
+ char *path; /* path to the target file */
+
+- char *mypath = realpath("/proc/self/exe", NULL); /* path to argv[0] */
+ char *install; /* path to the system install */
+
+ struct stat s; /* test if a file is a regular file or a directory */
+@@ -353,7 +352,9 @@ main(int argc, char* argv[])
+ case -1:
+ err(1, "fork() failed");
+
+- case 0:
++ case 0: {
++ char *mypath = realpath("/proc/self/exe", NULL); /* path to argv[0] */
++
+ /* find system install avoiding mypath and portage_helper_path! */
+ if (portage_helper_path)
+ portage_helper_canpath = realpath(portage_helper_path, NULL);
+@@ -363,6 +364,7 @@ main(int argc, char* argv[])
+ argv[0] = install; /* so coreutils' lib/program.c behaves */
+ execv(install, argv); /* The kernel will free(install). */
+ err(1, "execv() failed");
++ }
+
+ default:
+ wait(&status);
+--
+2.39.0
diff --git a/sys-apps/install-xattr/install-xattr-0.5.ebuild b/sys-apps/install-xattr/install-xattr-0.5.ebuild
deleted file mode 100644
index 8fea04f5cca6..000000000000
--- a/sys-apps/install-xattr/install-xattr-0.5.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="Wrapper to coreutil's install to preserve Filesystem Extended Attributes"
-HOMEPAGE="https://dev.gentoo.org/~blueness/install-xattr/"
-
-inherit toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/elfix.git"
- inherit git-r3
-else
- SRC_URI="https://dev.gentoo.org/~blueness/install-xattr/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
- S=${WORKDIR}/${PN}
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-
-src_prepare() {
- tc-export CC
-}
-
-src_compile() {
- if [[ ${PV} == "9999" ]] ; then
- cd "${WORKDIR}/${P}/misc/${PN}" || die
- fi
- default
-}
-
-src_install() {
- if [[ ${PV} == "9999" ]] ; then
- cd "${WORKDIR}/${P}/misc/${PN}" || die
- fi
- default
-}
-
-# We need to fix how tests are done
-src_test() {
- true
-}
diff --git a/sys-apps/install-xattr/install-xattr-0.7.ebuild b/sys-apps/install-xattr/install-xattr-0.7.ebuild
deleted file mode 100644
index 44b01b811bb3..000000000000
--- a/sys-apps/install-xattr/install-xattr-0.7.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Wrapper to coreutil's install to preserve Filesystem Extended Attributes"
-HOMEPAGE="https://dev.gentoo.org/~blueness/install-xattr/"
-
-inherit flag-o-matic toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/elfix.git"
- inherit git-r3
-else
- SRC_URI="https://dev.gentoo.org/~blueness/install-xattr/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- S=${WORKDIR}/${PN}
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-
-src_prepare() {
- default
- tc-export CC
- append-cppflags "-D_FILE_OFFSET_BITS=64"
-}
-
-src_compile() {
- if [[ ${PV} == "9999" ]] ; then
- cd "${WORKDIR}/${P}/misc/${PN}" || die
- fi
- default
-}
-
-src_install() {
- if [[ ${PV} == "9999" ]] ; then
- cd "${WORKDIR}/${P}/misc/${PN}" || die
- fi
- DESTDIR=${ED} emake install
-}
-
-# We need to fix how tests are done
-src_test() {
- true
-}
diff --git a/sys-apps/install-xattr/install-xattr-0.8-r1.ebuild b/sys-apps/install-xattr/install-xattr-0.8-r1.ebuild
new file mode 100644
index 000000000000..11c649329eaf
--- /dev/null
+++ b/sys-apps/install-xattr/install-xattr-0.8-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Wrapper to coreutils install to preserve Filesystem Extended Attributes"
+HOMEPAGE="https://dev.gentoo.org/~blueness/install-xattr/"
+
+inherit flag-o-matic toolchain-funcs
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/elfix.git"
+ inherit git-r3
+else
+ SRC_URI="https://dev.gentoo.org/~blueness/install-xattr/${P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ S="${WORKDIR}"/${PN}
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+
+PATCHES=(
+ # Backports from master, drop on next release
+ "${FILESDIR}"/${PV}
+)
+
+src_prepare() {
+ default
+
+ tc-export CC
+ append-lfs-flags
+}
+
+src_compile() {
+ if [[ ${PV} == "9999" ]] ; then
+ cd "${WORKDIR}/${P}/misc/${PN}" || die
+ fi
+ default
+}
+
+src_install() {
+ if [[ ${PV} == "9999" ]] ; then
+ cd "${WORKDIR}/${P}/misc/${PN}" || die
+ fi
+
+ emake DESTDIR="${ED}" install
+}
diff --git a/sys-apps/install-xattr/install-xattr-0.8.ebuild b/sys-apps/install-xattr/install-xattr-0.8.ebuild
deleted file mode 100644
index 44b01b811bb3..000000000000
--- a/sys-apps/install-xattr/install-xattr-0.8.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Wrapper to coreutil's install to preserve Filesystem Extended Attributes"
-HOMEPAGE="https://dev.gentoo.org/~blueness/install-xattr/"
-
-inherit flag-o-matic toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/elfix.git"
- inherit git-r3
-else
- SRC_URI="https://dev.gentoo.org/~blueness/install-xattr/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- S=${WORKDIR}/${PN}
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-
-src_prepare() {
- default
- tc-export CC
- append-cppflags "-D_FILE_OFFSET_BITS=64"
-}
-
-src_compile() {
- if [[ ${PV} == "9999" ]] ; then
- cd "${WORKDIR}/${P}/misc/${PN}" || die
- fi
- default
-}
-
-src_install() {
- if [[ ${PV} == "9999" ]] ; then
- cd "${WORKDIR}/${P}/misc/${PN}" || die
- fi
- DESTDIR=${ED} emake install
-}
-
-# We need to fix how tests are done
-src_test() {
- true
-}
diff --git a/sys-apps/install-xattr/install-xattr-9999.ebuild b/sys-apps/install-xattr/install-xattr-9999.ebuild
index 44b01b811bb3..bef83b301b9f 100644
--- a/sys-apps/install-xattr/install-xattr-9999.ebuild
+++ b/sys-apps/install-xattr/install-xattr-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-DESCRIPTION="Wrapper to coreutil's install to preserve Filesystem Extended Attributes"
+DESCRIPTION="Wrapper to coreutils install to preserve Filesystem Extended Attributes"
HOMEPAGE="https://dev.gentoo.org/~blueness/install-xattr/"
inherit flag-o-matic toolchain-funcs
@@ -13,17 +13,22 @@ if [[ ${PV} == "9999" ]] ; then
inherit git-r3
else
SRC_URI="https://dev.gentoo.org/~blueness/install-xattr/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- S=${WORKDIR}/${PN}
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ S="${WORKDIR}"/${PN}
fi
LICENSE="GPL-3"
SLOT="0"
+PATCHES=(
+ "${FILESDIR}"/${PV}
+)
+
src_prepare() {
default
+
tc-export CC
- append-cppflags "-D_FILE_OFFSET_BITS=64"
+ append-lfs-flags
}
src_compile() {
@@ -37,10 +42,6 @@ src_install() {
if [[ ${PV} == "9999" ]] ; then
cd "${WORKDIR}/${P}/misc/${PN}" || die
fi
- DESTDIR=${ED} emake install
-}
-# We need to fix how tests are done
-src_test() {
- true
+ emake DESTDIR="${ED}" install
}
diff --git a/sys-apps/install-xattr/metadata.xml b/sys-apps/install-xattr/metadata.xml
index 62a593741836..73dda144f9ac 100644
--- a/sys-apps/install-xattr/metadata.xml
+++ b/sys-apps/install-xattr/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>blueness@gentoo.org</email>
-</maintainer>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
diff --git a/sys-apps/intel-performance-counter-monitor/Manifest b/sys-apps/intel-performance-counter-monitor/Manifest
deleted file mode 100644
index 4bba000166fc..000000000000
--- a/sys-apps/intel-performance-counter-monitor/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST IntelPerformanceCounterMonitor-PCM-V2.10.zip 950922 BLAKE2B 3b3b0cf3e12e1f57241e25b13848253157624ac49c1aaec74a0ec8fd2cf92dffa56e5c25299189bd886cb069897dd5a7117a71b5189487be89ee704a377bbc03 SHA512 a9a219495d9e99f8a8ffdae729c56e565c63856b81d71d7d188db2543d8d656535bb88f5701351a41aee948aeeeae304951cdf99dac7e6628bd43ba79bda757a
diff --git a/sys-apps/intel-performance-counter-monitor/intel-performance-counter-monitor-2.10.ebuild b/sys-apps/intel-performance-counter-monitor/intel-performance-counter-monitor-2.10.ebuild
deleted file mode 100644
index 775ebf6f9022..000000000000
--- a/sys-apps/intel-performance-counter-monitor/intel-performance-counter-monitor-2.10.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit versionator fcaps
-
-MY_PN="IntelPerformanceCounterMonitor-PCM"
-MY_PV="V2.10"
-MY_P="${MY_PN}-${MY_PV}.zip"
-
-DESCRIPTION="Intel Performance Counter Monitor - A better way to measure CPU utilization"
-HOMEPAGE="https://software.intel.com/en-us/articles/intel-performance-counter-monitor-a-better-way-to-measure-cpu-utilization"
-SRC_URI="https://dev.gentoo.org/~idella4/distfiles/${MY_P}"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND=">=sys-devel/gcc-4:*"
-
-DEPEND="${RDEPEND}
- sys-apps/sed"
-
-CONFIG_CHECK="~X86_MSR ~PERF_EVENTS"
-ERROR_X86_MSR="Intel Performance Counter Monitor, requires X86_MSR to be set in kernel config."
-
-S="${WORKDIR}/${MY_PN}-${MY_PV}"
-
-src_prepare() {
- sed -i 's/^#CXXFLAGS += -DPCM_USE_PERF/CXXFLAGS += -DPCM_USE_PERF/' Makefile || die
-}
-
-src_install() {
- exeinto /usr/bin
- newexe pcm.x pcm
- newexe pcm-memory.x pcm-memory
- newexe pcm-msr.x pcm-msr
- newexe pcm-numa.x pcm-numa
- newexe pcm-pcie.x pcm-pcie
- newexe pcm-power.x pcm-power
- newexe pcm-sensor.x pcm-sensor
- newexe pcm-tsx.x pcm-tsx
-}
-
-pkg_postinst() {
- fcaps CAP_SYS_RAWIO usr/bin/pcm
- fcaps CAP_SYS_RAWIO usr/bin/pcm-{memory,msr,numa,pcie,power,tsx}
-}
diff --git a/sys-apps/intel-performance-counter-monitor/metadata.xml b/sys-apps/intel-performance-counter-monitor/metadata.xml
deleted file mode 100644
index 6f49eba8f496..000000000000
--- a/sys-apps/intel-performance-counter-monitor/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0-r1.ebuild b/sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0-r1.ebuild
new file mode 100644
index 000000000000..e96418f15b69
--- /dev/null
+++ b/sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_PN="INTEL-SA-00075-Linux-Detection-And-Mitigation-Tools"
+
+DESCRIPTION="Tools from Intel to detect and mitigate the AMT/MEI vulnerability"
+HOMEPAGE="https://downloadcenter.intel.com/download/26799/INTEL-SA-00075-Linux-Detection-and-Mitigation-Tools"
+SRC_URI="https://github.com/intel/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=("${FILESDIR}/${PN}-makefile.patch")
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
+}
diff --git a/sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0.ebuild b/sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0.ebuild
deleted file mode 100644
index ad560d576889..000000000000
--- a/sys-apps/intel-sa-00075-tools/intel-sa-00075-tools-1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-MY_PN="INTEL-SA-00075-Linux-Detection-And-Mitigation-Tools"
-
-DESCRIPTION="Tools from Intel to detect and mitigate the AMT/MEI vulnerability"
-HOMEPAGE="https://downloadcenter.intel.com/download/26799/INTEL-SA-00075-Linux-Detection-and-Mitigation-Tools"
-SRC_URI="https://github.com/intel/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2 BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-PATCHES=("${FILESDIR}/${PN}-makefile.patch")
-
-src_compile() {
- emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
-}
diff --git a/sys-apps/intel-sa-00075-tools/metadata.xml b/sys-apps/intel-sa-00075-tools/metadata.xml
index bf8d19147b75..80b9416eb7be 100644
--- a/sys-apps/intel-sa-00075-tools/metadata.xml
+++ b/sys-apps/intel-sa-00075-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
diff --git a/sys-apps/inxi/Manifest b/sys-apps/inxi/Manifest
index 15f915a5b6bb..fce8408fd373 100644
--- a/sys-apps/inxi/Manifest
+++ b/sys-apps/inxi/Manifest
@@ -1,5 +1,4 @@
-DIST inxi-3.0.33.1.tar.gz 306370 BLAKE2B 9ebd8d6e00fe241d5fdf52ddbfc01bdb03682f10baf79cf600a4ad94d36870cd5676fb74cbaebd5edfe9288df3c8f649e4f99dd6bbcd12681663423554f74114 SHA512 7239920311e8066f08a6d81525f3608bb555d229bc4f9e33d45442cef4ee219266bdd7c4a7a25de386db8079d1ef496e3fc22620ada772ce6a51c04cb7023256
-DIST inxi-3.0.34.1.tar.gz 308373 BLAKE2B 290a0887a7885b040f614140a99cbd7e0a8f8b89943e2f39cf00f033fb88fbe6a65dd4b5848f4ff7758f5fe81112404abef6102c44f4732308cda0e4ce887766 SHA512 cfc221ce5cd87dd2418ef0a6f916b17ed4a90aa9c6485ffc40a37d87d337f18d1ad98ae53fa366dc56b5250f2e95dc14c528b14d8f796b6d1b26b982cbf0b22b
-DIST inxi-3.0.36.1.tar.gz 311680 BLAKE2B 95c9ab57a9af50ace8fdacebb42a94017b1506a9215f8f70ff35f281dd207685d570fe257abc5446b57dd9b9a7ce28e568a4ebf9d664731dde437a6cfd64647f SHA512 1b242878b9a5180ed63dedcac7381ce41380a1bd95ba7f85bfb2c97b635fdc7700162373078963ef708fa5cd47084aa6f5c71b212042fe1acd87e01a85599296
-DIST inxi-3.0.38.1.tar.gz 320672 BLAKE2B 9c486ee07db4abad47c767c2f0d27d5e7c30e6640c50062c986f36201dce5217babd487a2d8f516be2d9bc41b8a06137d94ccb560fa0996d9a660a26004ef18d SHA512 44f97474a130f2b932c0ee54658673846712305bf2fb738c293514f62df1ca2c5d11688e2557a3f6eaeb933db0fed904e818e3dda28b839baa3ac89e6385d3a2
-DIST inxi-3.1.06.1.tar.gz 357819 BLAKE2B e6eb8a34807323d7f46ff029af797e3a13229813bf0cff4b8b874cd21ff1d38459e2181ddf3882b4ee0d29e8c788e2fce1c01f5c295911493292082192c56c2b SHA512 6621252048e95132cfec30e341f72f5942188f273488509614aab28e55ee9987b8f3820e1298c4d9a16b4f3464f1f270fb4c1d5e5a7bf0d2f616b4180193ab6b
+DIST inxi-3.3.27.1.tar.gz 614167 BLAKE2B 1a312255340bfe361eb10dd725cc9fb1421d8dfda34ee944347278e4a293cbcb51d1e2b7aa00f26c16286b90f26d3e0f91f68fb4beeb112ecd8f7a3bc86680ff SHA512 f21285d709d8dc7ce393a6c3b43b5ebabb8ef2c55adf43f00935b728a28f502bbcbd8c1482249e872e4623430f01b4e8cf51f0a6790d56fb12147fa125152575
+DIST inxi-3.3.30.1.tar.gz 643283 BLAKE2B cfcafc643e7e18261fac622df3614e7ad296ec2233ebf6750243d9490e0ca5e8ba3742286a0630ae948d16ac4d09705ffc1b20df666f48ed2c5331a8320919d7 SHA512 dba5c23d991bd6fb34eec9c2b6107da4e0ddab202f97e8aa53efb25d446fbe77f5250a9d14f543014f21d2cc614cd4e2d486a9f1fae78dde37ecee418cb763f5
+DIST inxi-3.3.33.1.tar.gz 679978 BLAKE2B 7445989e64cbb4beb39d6b415230ed70f5b7be90a9b4155104abdb4d57d490ea5ae09cd48871ed3745ba7b719fe4eb49e9706ad168f59245c66f8f576cf022f3 SHA512 7537da7175fe1578a09567e169a309c5258cbb1fd1ae7e58d98df800110cd03333775f8a73f672a5a6a8f0a950123f4f5908a15023648da9150f43464d25be10
+DIST inxi-3.3.34.1.tar.gz 683279 BLAKE2B 5693d8add89185fe626f8f6a9e606f7582175402158cd01e30b91779eb289e00d5e8bc71c0d72028b0d5bf1913c040c206c7db83e5fd4639a622dc847d6f1ba9 SHA512 75b21d4ac99383b44d9a2f0f206b3bc612bd2f10fdae44e4b15373090825eea6c7c70250c8f535438d44fc4e938e4ebdb813016cc4a6ab2dbd6d91b6b50adc27
diff --git a/sys-apps/inxi/inxi-3.0.33.1.ebuild b/sys-apps/inxi/inxi-3.0.33.1.ebuild
deleted file mode 100644
index 430ac49c150b..000000000000
--- a/sys-apps/inxi/inxi-3.0.33.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=$(ver_rs 3 '-')
-# 2.3.56 was the last version with no tagged release.
-# It was also the last Bash based release. Later versions are Perl based
-
-DESCRIPTION="The CLI inxi collects and prints hardware and system information"
-HOMEPAGE="https://github.com/smxi/inxi"
-SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="bluetooth hddtemp opengl"
-
-DEPEND=""
-RDEPEND="dev-lang/perl
- sys-apps/pciutils
- sys-apps/usbutils
- bluetooth? ( net-wireless/bluez )
- hddtemp? ( app-admin/hddtemp )
- opengl? ( x11-apps/mesa-progs )
- "
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_install() {
- dobin ${PN}
- doman ${PN}.1
-}
diff --git a/sys-apps/inxi/inxi-3.0.34.1.ebuild b/sys-apps/inxi/inxi-3.0.34.1.ebuild
deleted file mode 100644
index 4a987eacb4f9..000000000000
--- a/sys-apps/inxi/inxi-3.0.34.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=$(ver_rs 3 '-')
-# 2.3.56 was the last version with no tagged release.
-# It was also the last Bash based release. Later versions are Perl based
-
-DESCRIPTION="The CLI inxi collects and prints hardware and system information"
-HOMEPAGE="https://github.com/smxi/inxi"
-SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="bluetooth hddtemp opengl"
-
-DEPEND=""
-RDEPEND="dev-lang/perl
- sys-apps/pciutils
- sys-apps/usbutils
- bluetooth? ( net-wireless/bluez )
- hddtemp? ( app-admin/hddtemp )
- opengl? ( x11-apps/mesa-progs )
- "
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_install() {
- dobin ${PN}
- doman ${PN}.1
-}
-
-pkg_postinst() {
- elog "Some features of inxi depend on additional packages. Get a full list with"
- elog "inxi --recommends"
-}
diff --git a/sys-apps/inxi/inxi-3.0.36.1.ebuild b/sys-apps/inxi/inxi-3.0.36.1.ebuild
deleted file mode 100644
index 4a987eacb4f9..000000000000
--- a/sys-apps/inxi/inxi-3.0.36.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=$(ver_rs 3 '-')
-# 2.3.56 was the last version with no tagged release.
-# It was also the last Bash based release. Later versions are Perl based
-
-DESCRIPTION="The CLI inxi collects and prints hardware and system information"
-HOMEPAGE="https://github.com/smxi/inxi"
-SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="bluetooth hddtemp opengl"
-
-DEPEND=""
-RDEPEND="dev-lang/perl
- sys-apps/pciutils
- sys-apps/usbutils
- bluetooth? ( net-wireless/bluez )
- hddtemp? ( app-admin/hddtemp )
- opengl? ( x11-apps/mesa-progs )
- "
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_install() {
- dobin ${PN}
- doman ${PN}.1
-}
-
-pkg_postinst() {
- elog "Some features of inxi depend on additional packages. Get a full list with"
- elog "inxi --recommends"
-}
diff --git a/sys-apps/inxi/inxi-3.0.38.1.ebuild b/sys-apps/inxi/inxi-3.0.38.1.ebuild
deleted file mode 100644
index e8100eb6024d..000000000000
--- a/sys-apps/inxi/inxi-3.0.38.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=$(ver_rs 3 '-')
-# 2.3.56 was the last version with no tagged release.
-# It was also the last Bash based release. Later versions are Perl based
-
-DESCRIPTION="The CLI inxi collects and prints hardware and system information"
-HOMEPAGE="https://github.com/smxi/inxi"
-SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="bluetooth hddtemp opengl"
-
-DEPEND=""
-RDEPEND="dev-lang/perl
- sys-apps/pciutils
- sys-apps/usbutils
- bluetooth? ( net-wireless/bluez )
- hddtemp? ( app-admin/hddtemp )
- opengl? ( x11-apps/mesa-progs )
- "
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_install() {
- dobin ${PN}
- doman ${PN}.1
-}
-
-pkg_postinst() {
- elog "Some features of inxi depend on additional packages. Get a full list with"
- elog "inxi --recommends"
-}
diff --git a/sys-apps/inxi/inxi-3.1.06.1.ebuild b/sys-apps/inxi/inxi-3.1.06.1.ebuild
deleted file mode 100644
index 9f446bf4dc90..000000000000
--- a/sys-apps/inxi/inxi-3.1.06.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=$(ver_rs 3 '-')
-# 2.3.56 was the last version with no tagged release.
-# It was also the last Bash based release. Later versions are Perl based
-
-DESCRIPTION="The CLI inxi collects and prints hardware and system information"
-HOMEPAGE="https://github.com/smxi/inxi"
-SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="bluetooth hddtemp opengl"
-
-DEPEND=""
-RDEPEND="dev-lang/perl
- sys-apps/pciutils
- sys-apps/usbutils
- bluetooth? ( net-wireless/bluez )
- hddtemp? ( app-admin/hddtemp )
- opengl? ( x11-apps/mesa-progs )
- "
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_install() {
- dobin ${PN}
- doman ${PN}.1
-}
diff --git a/sys-apps/inxi/inxi-3.3.27.1.ebuild b/sys-apps/inxi/inxi-3.3.27.1.ebuild
new file mode 100644
index 000000000000..1ed63b070e2a
--- /dev/null
+++ b/sys-apps/inxi/inxi-3.3.27.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=$(ver_rs 3 '-')
+# 2.3.56 was the last version with no tagged release.
+# It was also the last Bash based release. Later versions are Perl based
+
+DESCRIPTION="The CLI inxi collects and prints hardware and system information"
+HOMEPAGE="https://codeberg.org/smxi/inxi"
+SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+IUSE="bluetooth hddtemp opengl"
+
+RDEPEND="dev-lang/perl
+ sys-apps/pciutils
+ sys-apps/usbutils
+ bluetooth? ( net-wireless/bluez )
+ hddtemp? ( app-admin/hddtemp )
+ opengl? ( x11-apps/mesa-progs )
+ "
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc README.txt
+}
diff --git a/sys-apps/inxi/inxi-3.3.30.1.ebuild b/sys-apps/inxi/inxi-3.3.30.1.ebuild
new file mode 100644
index 000000000000..b6c6cb35e9a5
--- /dev/null
+++ b/sys-apps/inxi/inxi-3.3.30.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=$(ver_rs 3 '-')
+# 2.3.56 was the last version with no tagged release.
+# It was also the last Bash based release. Later versions are Perl based
+
+DESCRIPTION="The CLI inxi collects and prints hardware and system information"
+HOMEPAGE="https://codeberg.org/smxi/inxi"
+SRC_URI="https://github.com/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="bluetooth hddtemp opengl"
+
+RDEPEND="dev-lang/perl
+ sys-apps/pciutils
+ sys-apps/usbutils
+ bluetooth? ( net-wireless/bluez )
+ hddtemp? ( app-admin/hddtemp )
+ opengl? ( x11-apps/mesa-progs )
+ "
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc README.txt
+}
diff --git a/sys-apps/inxi/inxi-3.3.33.1.ebuild b/sys-apps/inxi/inxi-3.3.33.1.ebuild
new file mode 100644
index 000000000000..448ac56c9be6
--- /dev/null
+++ b/sys-apps/inxi/inxi-3.3.33.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=$(ver_rs 3 '-')
+
+inherit optfeature
+
+DESCRIPTION="The CLI inxi collects and prints hardware and system information"
+HOMEPAGE="https://codeberg.org/smxi/inxi"
+SRC_URI="https://codeberg.org/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
+
+RDEPEND="dev-lang/perl
+ sys-apps/pciutils
+ "
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc README.txt
+}
+
+pkg_postinst() {
+ # All packages are in the same order as displayed by inxi --recommends
+ # including duplicates in order to keep track of changes in the future.
+ optfeature_header "Optional features as suggested by inxi --recommends:"
+
+ optfeature "blockdev: --admin -p/-P (filesystem blocksize)" sys-apps/util-linux
+ optfeature "bt-adapter: -E bluetooth data (if no hciconfig, btmgmt)" net-wireless/bluez-tools
+ optfeature "btmgmt: -E bluetooth data (if no hciconfig)" net-wireless/bluez
+ optfeature "dig: -i wlan IP" net-dns/bind-tools
+ optfeature "dmidecode: -M if no sys machine data; -m" sys-apps/dmidecode
+ optfeature "doas: -Dx hddtemp-user; -o file-user (alt for sudo)" app-admin/doas
+ optfeature "fdisk: -D partition scheme (fallback)" sys-apps/util-linux
+
+ # currently implicit dependency:
+ # optfeature "file: -o unmounted file system (if no lsblk)" sys-apps/file
+ # not packaged yet:
+ # fruid_print: -M machine data, Elbrus only
+
+ optfeature "hciconfig: -E bluetooth data (deprecated, good report)" net-wireless/bluez
+ optfeature "hddtemp: -Dx show hdd temp, if no drivetemp module" app-admin/hddtemp
+ optfeature "ifconfig: -i ip LAN (deprecated)" sys-apps/net-tools
+ optfeature "ip: -i ip LAN" sys-apps/iproute2
+ optfeature "ipmitool: -s IPMI sensors (servers)" sys-apps/ipmitool
+ optfeature "ipmi-sensors: -s IPMI sensors (servers)" sys-libs/freeipmi
+ optfeature "lsblk: -L LUKS/bcache; -o unmounted file system (best option)" sys-apps/util-linux
+ optfeature "lsusb: -A usb audio; -J (optional); -N usb networking" sys-apps/usbutils
+ optfeature "lvs: -L LVM data" sys-fs/lvm2
+ optfeature "mdadm: -Ra advanced mdraid data" sys-fs/mdadm
+ optfeature "modinfo: Ax; -Nx module version" sys-apps/kmod
+ optfeature "runlevel: -I fallback to Perl" sys-apps/sysvinit
+ optfeature "sensors: -s sensors output (optional, /sys supplies most)" sys-apps/lm-sensors
+ optfeature "smartctl: -Da advanced data" sys-apps/smartmontools
+ # TODO optfeature "strings: -I sysvinit version" sys-devel/llvm-toolchain-symlinks
+ optfeature "sudo: -Dx hddtemp-user; -o file-user (try doas!)" app-admin/sudo
+ optfeature "tree: --debugger 20,21 /sys tree" app-text/tree
+ optfeature "udevadm: -m ram data for non-root, or no dmidecode" sys-apps/systemd
+ optfeature "upower: -sx attached device battery info" sys-power/upower
+ optfeature "uptime: -I uptime" sys-process/procps
+ optfeature "eglinfo: -G X11/Wayland EGL info" x11-apps/mesa-progs
+ optfeature "glxinfo: -G X11 GLX info" x11-apps/mesa-progs
+ optfeature "vulkaninfo: -G Vulkan API info" dev-util/vulkan-tools
+ optfeature "wayland-info: -G Wayland data (not for X)" app-misc/wayland-utils
+ optfeature "wmctrl: -S active window manager (fallback)" x11-misc/wmctrl
+ optfeature "xdpyinfo: -G (X) Screen resolution, dpi; -Ga Screen size" x11-apps/xdpyinfo
+ optfeature "xprop: -S (X) desktop data" x11-apps/xprop
+ optfeature "xdriinfo: -G (X) DRI driver (if missing, fallback to Xorg log)" x11-apps/xdriinfo
+ optfeature "xrandr: -G (X) monitors(s) resolution; -Ga monitor data" x11-apps/xrandr
+}
diff --git a/sys-apps/inxi/inxi-3.3.34.1.ebuild b/sys-apps/inxi/inxi-3.3.34.1.ebuild
new file mode 100644
index 000000000000..990d547acf19
--- /dev/null
+++ b/sys-apps/inxi/inxi-3.3.34.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=$(ver_rs 3 '-')
+
+inherit optfeature
+
+DESCRIPTION="The CLI inxi collects and prints hardware and system information"
+HOMEPAGE="https://codeberg.org/smxi/inxi"
+SRC_URI="https://codeberg.org/smxi/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="dev-lang/perl
+ sys-apps/pciutils
+ "
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc README.txt
+}
+
+pkg_postinst() {
+ # All packages are in the same order as displayed by inxi --recommends
+ # including duplicates in order to keep track of changes in the future.
+ optfeature_header "Optional features as suggested by inxi --recommends:"
+
+ optfeature "blockdev: --admin -p/-P (filesystem blocksize)" sys-apps/util-linux
+ optfeature "bt-adapter: -E bluetooth data (if no hciconfig, btmgmt)" net-wireless/bluez-tools
+ optfeature "btmgmt: -E bluetooth data (if no hciconfig)" net-wireless/bluez
+ optfeature "dig: -i wlan IP" net-dns/bind-tools
+ optfeature "dmidecode: -M if no sys machine data; -m" sys-apps/dmidecode
+ optfeature "doas: -Dx hddtemp-user; -o file-user (alt for sudo)" app-admin/doas
+ optfeature "fdisk: -D partition scheme (fallback)" sys-apps/util-linux
+
+ # currently implicit dependency:
+ # optfeature "file: -o unmounted file system (if no lsblk)" sys-apps/file
+ # not packaged yet:
+ # fruid_print: -M machine data, Elbrus only
+
+ optfeature "hciconfig: -E bluetooth data (deprecated, good report)" net-wireless/bluez
+ optfeature "hddtemp: -Dx show hdd temp, if no drivetemp module" app-admin/hddtemp
+ optfeature "ifconfig: -i ip LAN (deprecated)" sys-apps/net-tools
+ optfeature "ip: -i ip LAN" sys-apps/iproute2
+ optfeature "ipmitool: -s IPMI sensors (servers)" sys-apps/ipmitool
+ optfeature "ipmi-sensors: -s IPMI sensors (servers)" sys-libs/freeipmi
+ optfeature "lsblk: -L LUKS/bcache; -o unmounted file system (best option)" sys-apps/util-linux
+ optfeature "lsusb: -A usb audio; -J (optional); -N usb networking" sys-apps/usbutils
+ optfeature "lvs: -L LVM data" sys-fs/lvm2
+ optfeature "mdadm: -Ra advanced mdraid data" sys-fs/mdadm
+ optfeature "modinfo: Ax; -Nx module version" sys-apps/kmod
+ optfeature "runlevel: -I fallback to Perl" sys-apps/sysvinit
+ optfeature "sensors: -s sensors output (optional, /sys supplies most)" sys-apps/lm-sensors
+ optfeature "smartctl: -Da advanced data" sys-apps/smartmontools
+ # TODO optfeature "strings: -I sysvinit version" sys-devel/llvm-toolchain-symlinks
+ optfeature "sudo: -Dx hddtemp-user; -o file-user (try doas!)" app-admin/sudo
+ optfeature "tree: --debugger 20,21 /sys tree" app-text/tree
+ optfeature "udevadm: -m ram data for non-root, or no dmidecode" sys-apps/systemd
+ optfeature "upower: -sx attached device battery info" sys-power/upower
+ optfeature "uptime: -I uptime" sys-process/procps
+ optfeature "eglinfo: -G X11/Wayland EGL info" x11-apps/mesa-progs
+ optfeature "glxinfo: -G X11 GLX info" x11-apps/mesa-progs
+ optfeature "vulkaninfo: -G Vulkan API info" dev-util/vulkan-tools
+ optfeature "wayland-info: -G Wayland data (not for X)" app-misc/wayland-utils
+ optfeature "wmctrl: -S active window manager (fallback)" x11-misc/wmctrl
+ optfeature "xdpyinfo: -G (X) Screen resolution, dpi; -Ga Screen size" x11-apps/xdpyinfo
+ optfeature "xprop: -S (X) desktop data" x11-apps/xprop
+ optfeature "xdriinfo: -G (X) DRI driver (if missing, fallback to Xorg log)" x11-apps/xdriinfo
+ optfeature "xrandr: -G (X) monitors(s) resolution; -Ga monitor data" x11-apps/xrandr
+}
diff --git a/sys-apps/inxi/metadata.xml b/sys-apps/inxi/metadata.xml
index 21d07ca80426..facad1bc6f11 100644
--- a/sys-apps/inxi/metadata.xml
+++ b/sys-apps/inxi/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>jstein@gentoo.org</email>
<name>Jonas Stein</name>
</maintainer>
<upstream>
+ <remote-id type="codeberg">smxi/inxi</remote-id>
<remote-id type="github">smxi/inxi</remote-id>
</upstream>
<longdescription>inxi is a script to print information about the system. It was forked from infobash. The script parses files in /proc but can also collects information from other tools such as glxinfo or dmidecode. See a full list of supported tools with inxi --recommends.</longdescription>
diff --git a/sys-apps/iotools/metadata.xml b/sys-apps/iotools/metadata.xml
index c4098c5336c7..e41546c315db 100644
--- a/sys-apps/iotools/metadata.xml
+++ b/sys-apps/iotools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<use>
diff --git a/sys-apps/ipmi-fan-control/Manifest b/sys-apps/ipmi-fan-control/Manifest
new file mode 100644
index 000000000000..eeeb875bd42d
--- /dev/null
+++ b/sys-apps/ipmi-fan-control/Manifest
@@ -0,0 +1,98 @@
+DIST aho-corasick-0.7.19.crate 113070 BLAKE2B 5ddaa0d415d19cf9922b5723bf3480750634ea68cb66fd05bfa2bf57607eb6383ba86d8c55f70adb87b71b98caa73d8f6ebd075c006493530c81979032899b60 SHA512 0d63d29079650bde4e8a9f8529716b9d8c42db076a1d74715116240c2628173f1e86fb29c08a25ad07a0148e48789ab20de0c186a8b3dfb193cbfeb0d76ae78c
+DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bindgen-0.60.1.crate 207507 BLAKE2B 570b3f8d38cc14f12e8230250e51b7896cb74baae8be0fbdb20b75de64f872262add4e106609f73e73a6f5e8f3dc106109c658f17ecede1df11a7d996ac8d280 SHA512 51548656bca17db37fe63c4443474a6b88b70e3e1aff7cf59e09213d82caf8252b414bcffbcf542d472abd731135658b7d214126763fc545643736024aca7a39
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bytes-1.2.1.crate 54857 BLAKE2B fae7e7b0e8023e4b5a9b7d5a390035dc5ee2b19f1fca03d885ad27611d45bd276c837bb63e9498e3f6d2f00d5573fd01f20115da21ccdf8606ce8d8bf5bd1b7f SHA512 39c19594f52af24b04eab319ab329e8ecb5732e4531184eb376677f57c8a6402c15bd171282498e69a4a472d82e308d0dc8140df0b7d923dca588aec90c4fd31
+DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST clang-sys-1.3.3.crate 37943 BLAKE2B 92ecba81573fc27de689752e7009514d0e51c4d09407d0345eee7a94f4713cfd01304b98370aa89d56a3b028912370f4967f8fda28ae9e3620fbb4af991da117 SHA512 fd922627ff66f9265aae30bf585bccab1efdea7f66b9fb95f45af0f316727bff7b791f36ef42010df5d8b3b474f36457fec03fdbb25c50cc8922c3b157387dc9
+DIST clap-3.2.22.crate 219438 BLAKE2B 32e256ba1a4257f5b49681ed5b71f0c79b6fe0c5f6eed72497050368a010a91b4d618ab529cafad54b0e78a6628c6dc5bb61d0baf59c4508557e5d8395f0032e SHA512 fe067057753c351ae5c2fbe78ca83588642faf2eea8d30c08f9d7b5bdc4f3c732349f1b6e1b0de88932049d1c8644771a09d9e592827b297c75de8061268a241
+DIST clap_derive-3.2.18.crate 28208 BLAKE2B 05a23083a8e792858819d7eebf057257b1d49b0e8246d3f24c6f812456cbabfc75d9271c295a0d44539bd531ea6808ca7490e787c1fcae63bce045422d33d280 SHA512 d5349b3d5711bd4900173aa5210d7c4aebb0bf70128e11f26b362f5acb43687f6ce5ef73e4d614ce9c1d649d34b68ff15ab8b65fdf1898fd295ee4b4a7523497
+DIST clap_lex-0.2.4.crate 9652 BLAKE2B 5120b508dedf52507068c0c369a45ddfbe0369e5c05b65bc5a78c422b2a4bf488f9ef1e0bed4e335450f2c08b80148eb5f7efed678039b5a94b5bd666385939f SHA512 6c05e5fd850befd45be9005af7252385f2304aa28a107413bbe329d97aea835f7acfd0bd169c99f69f466ab93d6e1c35d73a4e48343457a06fe2d6be5bedde0f
+DIST either-1.8.0.crate 15992 BLAKE2B 5b9254d54ced1f23447cc78fca74f12085c37e3c2da441b30521819025ebb808e8cbd9cbcec811f8b3951030914c1736b8bda61744d1323af8c5b8b0a3ef3ee9 SHA512 5089b218af067b51ee39c085568a1a6f542e8f68b362207bd7126cbcd2b76783cd21cc1517a1d088ce4dad1714be03a3660f50e9498a0bb43a8676cd7ec490d2
+DIST env_logger-0.9.1.crate 33425 BLAKE2B 86caabde93af971864275d97d80c14c195e0277d474fd3e93d5e1a510063def2e18680aa8ad1f934bb404fde55a5fe23170a3851e53d04a6925b9a8e19db5d62 SHA512 f97b63eb00e8565d8c6aabb306ed8a91ee4241ba35dd9b6e08e0029daf7fa5a54425553d4c0839e369e55fda2c85c9704f658fbb760a093f55c38429f6705d65
+DIST futures-0.3.24.crate 51399 BLAKE2B 03eb55cdcadb6646d01a485efc9ca0c679d8a71186d1dd97b078772ca298939e147537692216e2601b7d42cebe0c961b3a6693d7059c7ca735efa28fac8be07f SHA512 91f3f1b121923c239b1e3042048fd420a35506b4c1ed6527bcff0fffa8153049a384c4e0b21d59944327552c094db8de8977036c61127b27948979e0da6df949
+DIST futures-channel-0.3.24.crate 31963 BLAKE2B 2abaeb5249ce94271588cce9c6af9c96ba52d5a8900c69b5232e0e144e5e218bcd57788a3592e5b95aea84d73714552db131524d82de3655886f136789529c36 SHA512 2145a54fa7b89763c7c6352818b3e3b581190e131a3d3e7bf7b745a8e04ae6ecd9f5f1cc78ee65f7aabf1f786a25cae6b37d358cbbef34c494c34e217b84d7ac
+DIST futures-core-0.3.24.crate 14618 BLAKE2B 381b5f9dd5249550a859ef83987121c1574c91a2498e0e96ccdc5657cdcadc770319a4b50200cf3138bd504fe537ab2d5c701bd97d3e0e39f4a9e75d4a7459db SHA512 d39b19f0c2109d7937d8dd7f6ee45144ca3662746189a5856e0f9a29bb255bc915214c008e97475046703fa90ea28343984575fba394a93dd782b95f09963e67
+DIST futures-executor-0.3.24.crate 17745 BLAKE2B 835a8f835c319e513443c0c947bae83c4a4d1656acf17af333063e33f96eafc76105d45798ccfff3ac2fc362bd54b785bcd2bd406a4830962e75ecb63d710c82 SHA512 fa6385534511ddfe73e4bc80081879b0a425041557d83b1d59f3e44f86ec279327532d732ed4daa4b13e74a11460fa7a99713b00563cdad153ea13c0dade234c
+DIST futures-io-0.3.24.crate 8910 BLAKE2B 67de3c0fbb671897b7ed64967e057b03a9b018b5dcb3d78af4945d4415cceb6a866bc04de2910d124452cc3175a6cc5651af979f8fbe6343f9b96e174cb31279 SHA512 63257cf13e99b8968a797dcce9d572722858c7c91c212a52d05badcf10440824ce9c450bfe5eaeef5528369339a14144a8e94d7e8b2fc717de26fa21a16f2848
+DIST futures-macro-0.3.24.crate 11252 BLAKE2B 397a7675d735c9be21bdbb1f540445197f6cdf8c595c952483268cc19a9a06e673338f5713cc378b66f4a93bf5a8ba0d2edcce01390ffb9f0ec9337fd3b527d6 SHA512 05cdf441404a7656a092a0b9a9a2800412a8671e2d28b8b68b26e4b9121256acdf911851ea566847462e981ab4a2bbed3bba5500cf9560f3f61e6ce536afec81
+DIST futures-sink-0.3.24.crate 7854 BLAKE2B c0cac5188d84de0ebdbe13419c30dcc38594b8edf9952468eb1e04dacbb2d7f754f5b555a1aed5fba9704978a294974c25cceee27a9e4ec6d90b031f324a3ac3 SHA512 4da560975ea2ce2d6cf01042f9a3a16401d769a34e2d8bfe2b0fffc818ac0c729464efa0c2d45ecd280aa7b74d7bab1d17a5670db3d2f4904e4b0a5f4cc463eb
+DIST futures-task-0.3.24.crate 11836 BLAKE2B 1f697816b721f4a51150dc38909974c6c765231c451e0884ae41e1ca16df9b93a8890e1df3a5083330de73ffccc3cfeeb976644504e45306ac5ee99ef4cd87ad SHA512 a78a739176c20afac835ed7b1fec04772aee1f2127bf4a4d0e54bf1e78079e854794fb3cff5858108168d8d1bfef7da99221599c9c533bc3c3059ef07286d54c
+DIST futures-util-0.3.24.crate 155823 BLAKE2B 6fd86340f0fb96240e28f3e3885be9e555675b879e844643352241de81b55cc67023746b4c3fd941b2b38cddebcef41efbf72581d41cd30e7aba8f0330ad503e SHA512 30cfa53bc58101948ca6e828839186575cd8b092a629bf59a7e4df205309f82d0cd4ec70340f5e98c76fecf604934e553562f7c79ef382ac8451c640bd95c5be
+DIST getrandom-0.2.7.crate 28854 BLAKE2B 30c054361c9b1d9f95bc505e27e98d8cbb685f37c91437948d9d26f22028e0797a7c704d88912c1648b3704bfe10623a8c5e130e81746c8f85848b831771db80 SHA512 01803e609848662ad8650cf451dfc2c37580da0b7b5e0d4cc764da6ded253cf49ae42a433b1c53e89773bde00c1ccc136394e58ed4548e7b5c0ca7e202e857e1
+DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
+DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76
+DIST heck-0.4.0.crate 11161 BLAKE2B 13b8bc39cf3ab90e71433e3c7b3e5f1c19404bec58dc4298dca05d94d5c14c2fc97350de737cb78aa45196b1241aa8f1ccf3a11ca309da5fe0f6a657673412b3 SHA512 33bdbf4ff9ecc4f4d74cf06590e056f4d96bf0d990d5381b9da5b65682b2495ed74e27b45419c2afa986c1f6200909d5175b137ae73ced5cc8ac869e4e1bce8f
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST humantime-2.1.0.crate 16749 BLAKE2B e2ae8325b037fb175b9200cc5c1944ce579056c6662cce307beb6701894552362a25e371aad65f8fb9384945b48815ca74bb8b544a32e0a5845b7edd30b918c9 SHA512 3bf29ddd1391d82897c22baa0ff3ed58ef6d6959859f1f8ed54d324caba5b6fb4422e56790511ce82f902cd11467f93c8ab7fc7b0e0bdb719308a4d0a446ae0c
+DIST indexmap-1.9.1.crate 54114 BLAKE2B 71e4968c85d5b3fac550590658f9fed72c754a9443221fc804efb97bd39b5fca7f894ee67f8d2c330bf212eb8a6b5c85879cd813ed56e3fc43a54f0bb689af5a SHA512 7eac99056123332ad38ef32eb65235c810e8b4d051d9b0ddd5582348c9cd3b162d36defe8e46a532e2066562f224e37fae94b52b4649ee9cfac7673b76a2513e
+DIST ipmi-fan-control-0.4.0.tar.gz 44621 BLAKE2B 1d136061feb513e99f3ca1993bd61005010d8224d605c8e707ff302137b0487e78a9d8d4f816c8d071708842641410ed9a20a68660124bd6b4607f9b520427ce SHA512 1e388bdf29aee041a76e1f25430f25516a518c8cd21ccc5b89bc72aa63055e6ff831cdf6f14055cf0a4169a96fab662788ee9c6d7081c245aa1c6e729bf33626
+DIST itoa-1.0.3.crate 10481 BLAKE2B aa516e8b2fdea4e4e1260a0783fb7aa2672c1bccdf519c45c608fe3f3fd4fe652d7f56f0cd6eeb6a56bc324c68ff241f601660a0dc3c5ffdf7fa239f470078ec SHA512 1290c027ec8a13d2d15ace2b58a1d1a3a18730cd5fb55bc995826b8f4d04ede650b8315a8905f6737c4c4988690ae03bf32c86ab3a31ae068a67d5be04cd618b
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST lazycell-1.3.0.crate 12502 BLAKE2B dca2d3f46823a52dcf87b7d6103fc4f1f83bc5247ce361946ac2d9df239fb43ce4b418104503698dff0242480cd014996e77da4ae0a88f3cedbce4eb9d3c9ef8 SHA512 f9d627afc28b61e9687a3f72260eb013401fd64057647641ff2e763770d7380ab1d2d8cbb4a3c8818d53d504c618a3b46aaf701f72f4d7b25d226042824c2f8d
+DIST libc-0.2.132.crate 595317 BLAKE2B 1b1ae80e034d94468befcafd4bae4c41f29424cbf3770b827dd1d7099cd2364db62cf2e7343da5010e230a47fbd91d320b162f7b54fa3955fd195b6976c3fb45 SHA512 48340dd173ed4d487f6504f4c32cb3c13dac8ad4da95469c8dd79386a7564d258a9ca42ccf1b174154717bafc1d3551b87c8fe35f7e4e062c8e33da9259fec50
+DIST libloading-0.7.3.crate 27378 BLAKE2B da36353819cbbc85dbb3196585970b431eb5570140978fed8a6b5e46bec2560b373e20fc108b9520589bfd1f804eea57a524a0cb497620d4a8fd11030e9c4818 SHA512 58da6e73f86aa05132949939507a128188ec2e26e2245e23b1534d90673c9909c7d5220aa4aeab2c16249f7433b4d0f98f20c94b8b1f7434c7abadc8b8039ae9
+DIST lock_api-0.4.8.crate 25677 BLAKE2B 2d7fd36e83dbd345889d043e4566b35737b6929092a7ad313b2e09b606b2b4a562ad6b8e1fb5371c086c3d226ca585f08dc34e6205b402a1b96569348ae1e96f SHA512 2dd90be33a732cb8111b522cf65fbf37926ab3121c4dba20dbf66403805575ee597d90d776807c13be1a48ddc5920a691ef78dce734adc6a26b52d4ad44b9785
+DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
+DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
+DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c
+DIST mio-0.8.4.crate 93013 BLAKE2B bc9722d2211195dcfaf574d83b2967d299eb02ff40b4fb4df2eb6b08d78e018ae1a9e198f43268ab2d38733feaa8298e9736dec9fb9add66c401d57406fd1292 SHA512 b44675c90daa37336a25e7eef53cdc664e6f52590ed4955bac82641baf8099d3d94850da79d985255eb74b61a499b1ea4a9d7309f6ea4c41454b3dbb090b70ee
+DIST nom-7.1.1.crate 115818 BLAKE2B 1ec3df3d9a7527f26618a9b6b976ca8ad5176d711dc7e6163dafb1ec214a55345e952439b4c98b2ac371c9a67c7ffdc3213d1081b62b699b36af68207fa8b320 SHA512 1456efdbda4f5b3da6c8580721acf101ed7d779619ee0190c1df103244e405a8ffa0c3889901a2d8beeab0ab84074ed4c7cec5330c7cc2a5a3c30e36a2530be8
+DIST num_cpus-1.13.1.crate 14752 BLAKE2B 27490aeee349d944c29e50b44e9a84371030459353a9316ffaa0245ce499df4424e39c25a81be59cd0f9a19c3214c78bdc7a84b632059282be476d8f918c44d6 SHA512 91ffe0ec792228621d6c2d5cc544ef4744203d19fc9c86e0aad2610038c43aca0448b6c27d82979417a0f6c939ea73523303a44c28df0d1c1b8d09814d5306d9
+DIST once_cell-1.14.0.crate 31614 BLAKE2B b9ac8f889c86d4160ee026fca20b5135aa7bd60e8bfaf23946d003bcf0b666929a4da5859d874449d15b6ba0ec4c26e98273d020be50184b9d44ae90b8608175 SHA512 81531f06f32854e1794555e10ccd6ee2b6913bfefdd9eed52dd44a02e799fa6371cdf102cc67bc70d581a0cc4abb7dd16c9c12ede6df4ff38b20dc5908bad186
+DIST os_str_bytes-6.3.0.crate 22928 BLAKE2B 84e8197375742373bc7c7a3b459f8a9f97ffa0b8a2e517bee0d8ebb420a8509056cf56984612f44171c6b5e219b6ea91b14134fa6386b3cf3502b13ab92386c9 SHA512 34f861a15543933c9fcb560a835bd943231ffcef2c68126d8633f8e792d2d59a20765947feddb0c795a15329d74260d6c2bf74a1f10ee88f355f47240acbb42e
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.3.crate 32256 BLAKE2B 79a1924a983b948a5c2b0c074452a7b2b61abda973d3bc8040d9153d34b378f0ee330e36aa813f49544319c479665d6328be71481f2e1e41bc94abb9bfbd12a0 SHA512 fa30db0fc73b268ab8395adb8bda35d12dc15363b247a95b7c4bb848ff9b8dbfb971a20f320b4feff3317d5b533c59b62152e4c652c1809a422c5671310b30df
+DIST peeking_take_while-0.1.2.crate 6697 BLAKE2B 31571604d00872900abcb677a483da93654de523bbdb0331c326dc9a3e531f246e571bebcb983e79dc46e33ed6dd32b978be509841ec0d9f1e7209c06289c22a SHA512 7bf8721987c3e2e1986683dd897746592a909382f02b840b777effec7d8b0a864c1a83b03c73d555e359f22c423168a54b75448a7e7b996b739527ce8c88b721
+DIST pin-project-lite-0.2.9.crate 27713 BLAKE2B d6985b5add432fb6287d1b0c9fb0cc91a195f82c5a748a9ea430e4ba884717ec7b16d730b5ea62de5b2bfead1771da2d115b3776e12e605f70f2538f374a28fa SHA512 cef0b77233adca712db1183f780732ea577cf1b27c2643de221d54c837c75ce749f907e24a967be7474812c7682cba613a3fc5d553a9578a1b80569da0e562e4
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.25.crate 16838 BLAKE2B b6ebbcacdc0f440e24ce5730edd4b371387cf7f44e438216893f29c0f303ac7920791630d4a9bf13581da840c8888e18bdd78dc61458d3331e967b3dfa6d0597 SHA512 46658794f0a7446354041c1cc08cf637970f7651c0c506e2b90c9d4e284347cb82f05ce282cc55c8087bed58a5b961424a56574f4500de9f3ba9cb9e71667aa8
+DIST ppv-lite86-0.2.16.crate 22245 BLAKE2B 03cba61af42dc3a78ab8f6b03d833c028b7ed737e101b1952467a1e19706bdce6c758eca4ec7d575b2f61daa47cb25fa1d74039b2adb0dbf949b66b7aff3f10a SHA512 264b916f7d1bb6f1c0c0d3cc45f40b72b638abc7174416b49241c3663fe500409509ef6c8241a24515a21a20288c2ba508035b6b37972e4ae7ad02ad19118b74
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro2-1.0.43.crate 41512 BLAKE2B da0577094cb0b8b419f3160bab6342f97865b01337be4cd7a344d4dea98fc2f8905dd05a56427792379f59565a25f8e16cfe4a37edb3bf77bf2e703f27953fdb SHA512 3139c668dbf593afeb77b970c77edc70f7b46b42d80f1d0e30773dedb14ab98c9eeca0dc953bc940610954860fbce663174ea6c270b8711db45aef4d57f3b910
+DIST quote-1.0.21.crate 28030 BLAKE2B 547344ba9272874f5fbb4bd27a69ef5be99823e10e1318afe71971b18f37e9c73d54168f16efb82c53a332e4874c80a82ea951fb2c85fad50cdfe783622b79fc SHA512 0728eb4df7e1f7c4d32ab08c901c2c969db8eb46b03bcec3e4956a4f6b360939d32abc6b6ebd7a31058e8e9b69c3d995a24cb484f93656f05b4ee963be1c74fc
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
+DIST regex-1.6.0.crate 239329 BLAKE2B 646405e681ce572ebe2dc51a3339f0f8204143f9b2b8f8e74a4c80379c43c3581363ad347610a384d5ee831cf1425f74ddd944a658b1da2461e8068c5521af69 SHA512 b4861c9cc13d6fb224f67057fd3522f04576591b3d7ae0d3581dce42ca2b2bff96860cf2a7f4dfab00e46a1d29e6473f6723c4aeb02e34ed6d5f205b66f07876
+DIST regex-syntax-0.6.27.crate 297300 BLAKE2B 4ca1a2e23d04e29c5925085ea4ab7ebcc398dfe135eacaab1e686aa8be43a110a28e8bec05a6910183f9a6bb1fd0d635fcb1a60b5a6a03fed4d2cf937a542a5a SHA512 5cc705a5dda08cbdb4dbcf3fa98763cadcda13d9c3ba407b35f3e88d77935efc2704bb40b3fb5aad7dfbad0df43bcb4c4cad9732defb954e2228a0739f7c37c6
+DIST retry-2.0.0.crate 6688 BLAKE2B c3b2b9c67c13f927dfe533b85cdacf01d9a1d85eefe13bb964606d9f0892817a48ccfbc814de25b7d1fe120b5a7b4ced8438d2e323186053c6213d33bc36d1dc SHA512 e3e0f0e4a1c0b728edcb503f42a7bf828544f74152c4ac74f1acfe26aa5ade60fa901e4d7b38989651708cd23f28d837a2846c9e4d27d0ec0cb2772c8810d8cd
+DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
+DIST ryu-1.0.11.crate 47007 BLAKE2B d03e8df69c3b21c1b2e4ffa91ece794f141e9f9bce4e9ed1ebf394b1cb0f796147b86189885f0734df8f431b2d166d8f6ed6a261be398d6d088fd56046a85c2e SHA512 dd2642aab2d3017c31432436226d5350b894c8b88a09395eb7de6350964b3cc48451a829ce78b04a9e4e0480076fe1bddd0604f4e57700faa2d60cac6e361408
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST serde-1.0.144.crate 76387 BLAKE2B 7e66355c24e1116eec4a3ba4f9164570b6d4ab57196d39d19a0bca912c9d2acfb33d8e17e09bc07903984dad154034187d0ffcc8f9073b36336ac2b38ea012cf SHA512 d7388a40e4a5e0a65ec7b49193f2d53d758adcf26b98ca3bc6270351c7553add2f38a8434223a95826994c6d039dd91fc4f4020ce191410fe57bebd29e4938de
+DIST serde_derive-1.0.144.crate 54867 BLAKE2B d1eabf53f4efdf95c3c12a907090617e0aa02661fa0e3cc51bf0ef8dcdbf45f0382a57588565ce26ef7baca330c19ad216a8a0975247bc02af37c4440bdd6859 SHA512 d41208452b36b8d3f0644e58164c9c4e75f8cab2d8be09cfd1b38bdfc690e880a062e0eafe46dd4400d01f541b34c9acd3574504c4aa856afb00cfc2e9617a0a
+DIST serde_json-1.0.85.crate 144635 BLAKE2B 03d2de5563c8b8e9150b656b62329a87a5dc42c1fe389e40291a3b2a7232e2342b6e52f6625ecfaa8cde4420017a0db82b2ef332f82f2fc1caa50b98e544031b SHA512 b9ba5c8f5e5c977d31c720995317c99486897a064993784e8abd4e35e0c9ccf20d421552b4436cd88420b5e6fe1d7ebc411bbc2e803cf1732e133c29365834bc
+DIST shlex-1.1.0.crate 5199 BLAKE2B 325536bab9c9707566a099a161e7bc8448c7369cd9d7b2f144ed71543d551038ef1fd764376491e8076ccdcc928b5c4e177764a68584267a91386b8d542264c3 SHA512 e51892298dd79dc7cf04d7e6f0a03e4850a57b15cd75e6e3b56e2a0b15d4cb85ee8afcc14e3727d193c8b91baec8c2864a9c800834ee4d18a1be584f17591752
+DIST signal-hook-registry-1.4.0.crate 17912 BLAKE2B c50ade90e580e5f009832d812299b33529e53f68e6f1b7f5f9b5ac9ee0de502825c7bbd66199a65d4494152809eaf3dcfb676152c5b4f66c7a38b33551fcdd30 SHA512 b564379e5df1061739734179a69897badf9e2e6b469e091954428b05c3c7143885396df4bd008d77e08dae53729d2267d50fc8563121b086e25d8a5adabf6d6d
+DIST slab-0.4.7.crate 16647 BLAKE2B f567cc822e7b84f64a0b0372c22a0463d260871455a33df025808a0476dcbbd4e051a117d8896d96d6d3d0655b7c296cd691ca22edc54486440f4e2e0f5d1e1b SHA512 659a9ca3323fc2cd236f6cb9eb6feeae8a1f5fa046fa239a34cd7a5ab8a7eadb9e5977e8d5cc41e9138900dd7c75ebc0601480771c5fdd2e084ee76619b82521
+DIST smallvec-1.9.0.crate 28396 BLAKE2B b04100f0a8db9e7c34a425e665242772c9857c5a4c5f34468a3f1b14f669d5cd21de2d54dc5295a22f52032370e8e989fc61cea3f4e6574ccca5be639c645e74 SHA512 e7158393d4257564eeb8fa53a630fdfc13edb33f3c555e41606edcfdbe9189e5c59c25d255dd21d02d4abad1ab2931e21744ec6c2f91ad4db66f87e748a45e56
+DIST socket2-0.4.7.crate 44619 BLAKE2B 9bf2560812db2c91498d12274e02d17c279efe5817d882faabc465de71b1cb8045f6eab3c8e6031f6fd18e0e77913f42daab07f01e8d83bfa5ea44cc6966466f SHA512 44487f2de30cd327cad1af31ad36aaaa0bf10c33b5c23b024ada8d7e41d064fb2adbc9edb14aa8aa1eba679d8530c373c7187fc68d9709ae736a5c1a2cf37088
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-1.0.99.crate 236084 BLAKE2B 852493506271ee364ecb6e907fca55f18af9dc7ec4b4737e43e104d04064a37a2a59b31f5f780621785e44606d43e74adca5cf24c9ac1a8e186955c6b3e43b85 SHA512 47a9ec4d5e6702709c1069d1804d29880a1c5bbbed5a91c44e80eec657c62ceb223d6fbd942deef591463664766ae1997d154525f4e7a212bb84151418f40d10
+DIST termcolor-1.1.3.crate 17242 BLAKE2B 5aef69c0004081bd3cc4d531d13d63627cc02313868c0faab62358d13abfa7b4ba82f142c2801d25a6ae46ecbc8b7bdbeaa21c9105ea3b8950ab6a38cdb88513 SHA512 5838fcbfd70f300cb4b62aab50565db52074c56b152ccc8ac1173e4676c0d5a636271bf5a645a77da6e1d4edbf0091af2cd4dd6d73b85c3d198c760898c06f3a
+DIST textwrap-0.15.1.crate 55940 BLAKE2B 5db6b617e3d2546a74c240cc405568226dea66947fd8c79e9b8655e4292b39d3a7964688e97b1bd82e924a125b1271a7e4ee5cef9d01b6f6e659f6865ceb9c96 SHA512 dd710f1c36354243d09d1c5e4d217cf66c5a86df7e87d6dfe86cc26b3055cb456041f057cad78063a2ac17d4439f5abe7effb42cfad580aa82398d3fbbd09b12
+DIST thiserror-1.0.35.crate 18451 BLAKE2B 5ffe5fba8734291cd5304285ef327e4af2f2e2d9c7272d878ac2d3235761deeb789cfe55752b5876bb7949b02f2483ddc8749ce85f2241385249b5a4c479cf79 SHA512 2a55a0cb831cbec2529132a4d230360ba8f89f55b46d1116bb7a3461e92141d58935ff83b6d6e3c8eb99b690752f9aad2281c99dc9b3a242b3cf349d32d61912
+DIST thiserror-impl-1.0.35.crate 15433 BLAKE2B af40ee4a29ae92c02bd7681ff9c3f434462056a7386b3b8d7b370d1fff2235f0b674ed9c282daf48cab760cd6232962593ddd1afdb6de2f40092a42e0fd9ff0f SHA512 8669781bc8165126274813653ec9ccbce2df18f6549415571e5db28f64b7715e11ac3f87128769e14b6b49535aaf6964db6a382e0ac482c35fe983b88f9fb1cc
+DIST tokio-1.21.1.crate 605841 BLAKE2B c5dc71a9f9cbb4a943786a06f372122615500360b7f6276810ffb9980bb65ad6a03f307eb3650a79f14926de92676614613bcd48bff01102ee8ecd11e8b5a6b8 SHA512 2ae573a0d5e83d20f747d8b09a2afd712072caed6114aeaf3243becb3bc2eb89673b7f99ddd5edcdf1c0482d9bd6e51c707eb3136c6bbce8baff4c9a67e0bf0d
+DIST tokio-macros-1.8.0.crate 9346 BLAKE2B b334eb3f221ae22ad379db2ef7e4c88e6a01a69146726287b16a958a0c17fadc69063c2e6ca3cd1dbb21e764084c9ba64cfad705b5b5d448133349a7aed69437 SHA512 3fa620db09a8e911a2896c5c671494d3f5894b4014e868374e4f1331829975b287499c2f7a7615bf26a6b9abb3815b459c1fa684a738ea153ce09cecbfa57bc2
+DIST tokio-stream-0.1.10.crate 33880 BLAKE2B fde3b0a865c36ec59ee53d272ef42e090271069793130df4d17ff7a7b678e14e93d0cc8424720215acff3c75db2c63340eab5db8cfbdcbdafd816eeac5cbba8f SHA512 cbafc3c629d150b8743a3706c2ea40369ea339bdc9270c137eb781542fc485aa11d01095e0faf7db7e010a3e8ab53d8da3eae8b9e8724a7454077638b0d42a04
+DIST toml-0.5.9.crate 55667 BLAKE2B f2bbcac136e0182cad9b51f07943610c8700b68afd08fdbb822b47bb79d215e8132376da8ac61fd550e86c353a83b007297b6ac92ef5d503e1b90e746c40c649 SHA512 7151bcafbe2bdb1d2bb91562daebd357c884819af047843f1b4a56bc3812d4153eaf70683d0f9bff51bd1048700920322d64d41da13ebb4cbf34f0f7822d7ce7
+DIST unicode-ident-1.0.4.crate 35491 BLAKE2B b92d4f09ec86fe1e0b403b8cb0787989c313f29e6b24961fc2ca046ee5e3b50f43f49469a290880412dd37fc1b46cbeb9123e9636e1f39e425f722a5aa44ad08 SHA512 db41d5c3f72cfaf654b4c250e18ac0ac077a816fd582f1548ed384653f467c15f85fcfbbb4ed2f9e8182587181abf1db14059d50f3e43b60434ddf38c8f65d89
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST which-4.3.0.crate 9635 BLAKE2B 36556a9eca6d8702c0e3634abc458f7ff831aec28a7117f21f812c6f46cccd8db0e6ce7cc76f8033ba89d51858411251e5fecb0883542669269cade9c1a5aadb SHA512 cad05bd43dfcf9e50fd6e3b9dcd5d9a987175a0f44adbf204079117b70d0b42e6483e635287924698c51d0452f168e48e041453f18ff5720c0e2ec4c734d2578
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.36.1.crate 3347053 BLAKE2B 818f7812bd9a55a4e95b3d461fa5fcc14569a159882f950d20fd5a6b7d2a2841f082c0bccaab657f5830549e6286a37d9f8fdf825a42403f543b51e35b2d20d4 SHA512 80973e461bef3be0d0d0c13d02b2129aeb0d0700768d637544315654126f101b39f980738035fe325bd96f549493a2245bd7b82511f833efa7bbcb2f62266001
+DIST windows_aarch64_msvc-0.36.1.crate 661960 BLAKE2B d503150a05c4aa6ec376d1094ad24a7a4b3579d8f60cae65f4a98adfe830dd776c8996d5c3acfbfca1a69598475b918b5de2a162e3253b0b28cd6aa17de2dc13 SHA512 d0c352c78caec9c71bbaa1a688baab8f39a33c903c0492b19398c76e08194183e254ecd3a8b24af3e7e5e1d9d97373dcbab54499236829898a4fd153cfde2ccf
+DIST windows_i686_gnu-0.36.1.crate 818115 BLAKE2B fdb78cf88e1049d1ed6c474f870dfd1ff37b48bc24726d754cfec5b3e77075162f291f93aa709c07c9fa38ccb21a6c31cb5149dabc2cc8ad8a85c03408384a0b SHA512 e2c60e6639beb879472a06ed4462667eb4a78385df6bcde1ca579af759cf2b4ac70e84f7dd7b736e7fbd1b129061555671fed4b83bcd81a6083cc013963194a5
+DIST windows_i686_msvc-0.36.1.crate 724575 BLAKE2B cf964bec007d8432e2009644cf7f89ea7d910ccf9512c067b7bf5c6c825208ce4a36e9864c0cbca137f523983eb46e58e4bd01054cecd7ac7126d2ba9f67ac0c SHA512 02bb1507981229422498ce29f6c777d5e412358040128f84b09d948ccddf0461b078a0a20cc7f6ab7da8595121bb369453ae9ea1f0506aab715662e8c631e737
+DIST windows_x86_64_gnu-0.36.1.crate 790934 BLAKE2B 9dec5d966bdc89efbc81989acca242d519f51676ec37487df2bfacd6bfbc5a8de2871be72c5b96a073a899c666e3a39aa60d493e7df39fa90efe869fb744a332 SHA512 598b69e4f2cd3d68f910d526a66dadb465ff30a8c261c9a4455aa1c5b952d23c04f8edaa063cd16fb43564c116a13f06d607f3a0a9c7495054b8bfe1c04d1865
+DIST windows_x86_64_msvc-0.36.1.crate 661999 BLAKE2B 4cf967f10d4ce148bac967598168752d1996b4ddf5278a8fca53360566c37c1a014bfb4dfdc0ae2d96e01196c42eb4906ea80d8e9dd23b9e9f3163631c9e253e SHA512 89c22ed51a74f531662d80ae0fa5e0215728db1e6caf3c13eaeba95a93548b43c00b8474f52553ac866ac83c203b6c22dc44fbc870e882a4c9c97ba54b87c631
diff --git a/sys-apps/ipmi-fan-control/ipmi-fan-control-0.4.0.ebuild b/sys-apps/ipmi-fan-control/ipmi-fan-control-0.4.0.ebuild
new file mode 100644
index 000000000000..d5ac89808170
--- /dev/null
+++ b/sys-apps/ipmi-fan-control/ipmi-fan-control-0.4.0.ebuild
@@ -0,0 +1,161 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ aho-corasick-0.7.19
+ atty-0.2.14
+ autocfg-1.1.0
+ bindgen-0.60.1
+ bitflags-1.3.2
+ bytes-1.2.1
+ cexpr-0.6.0
+ cfg-if-1.0.0
+ clang-sys-1.3.3
+ clap-3.2.22
+ clap_derive-3.2.18
+ clap_lex-0.2.4
+ either-1.8.0
+ env_logger-0.9.1
+ futures-0.3.24
+ futures-channel-0.3.24
+ futures-core-0.3.24
+ futures-executor-0.3.24
+ futures-io-0.3.24
+ futures-macro-0.3.24
+ futures-sink-0.3.24
+ futures-task-0.3.24
+ futures-util-0.3.24
+ getrandom-0.2.7
+ glob-0.3.0
+ hashbrown-0.12.3
+ heck-0.4.0
+ hermit-abi-0.1.19
+ humantime-2.1.0
+ indexmap-1.9.1
+ itoa-1.0.3
+ lazy_static-1.4.0
+ lazycell-1.3.0
+ libc-0.2.132
+ libloading-0.7.3
+ lock_api-0.4.8
+ log-0.4.17
+ memchr-2.5.0
+ minimal-lexical-0.2.1
+ mio-0.8.4
+ nom-7.1.1
+ num_cpus-1.13.1
+ once_cell-1.14.0
+ os_str_bytes-6.3.0
+ parking_lot-0.12.1
+ parking_lot_core-0.9.3
+ peeking_take_while-0.1.2
+ pin-project-lite-0.2.9
+ pin-utils-0.1.0
+ pkg-config-0.3.25
+ ppv-lite86-0.2.16
+ proc-macro-error-1.0.4
+ proc-macro-error-attr-1.0.4
+ proc-macro2-1.0.43
+ quote-1.0.21
+ rand-0.8.5
+ rand_chacha-0.3.1
+ rand_core-0.6.4
+ redox_syscall-0.2.16
+ regex-1.6.0
+ regex-syntax-0.6.27
+ retry-2.0.0
+ rustc-hash-1.1.0
+ ryu-1.0.11
+ scopeguard-1.1.0
+ serde-1.0.144
+ serde_derive-1.0.144
+ serde_json-1.0.85
+ shlex-1.1.0
+ signal-hook-registry-1.4.0
+ slab-0.4.7
+ smallvec-1.9.0
+ socket2-0.4.7
+ strsim-0.10.0
+ syn-1.0.99
+ termcolor-1.1.3
+ textwrap-0.15.1
+ thiserror-1.0.35
+ thiserror-impl-1.0.35
+ tokio-1.21.1
+ tokio-macros-1.8.0
+ tokio-stream-0.1.10
+ toml-0.5.9
+ unicode-ident-1.0.4
+ version_check-0.9.4
+ wasi-0.11.0+wasi-snapshot-preview1
+ which-4.3.0
+ winapi-0.3.9
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-util-0.1.5
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ windows-sys-0.36.1
+ windows_aarch64_msvc-0.36.1
+ windows_i686_gnu-0.36.1
+ windows_i686_msvc-0.36.1
+ windows_x86_64_gnu-0.36.1
+ windows_x86_64_msvc-0.36.1
+"
+
+inherit cargo optfeature systemd
+
+DESCRIPTION="SuperMicro IPMI fan control daemon"
+HOMEPAGE="https://github.com/chenxiaolong/ipmi-fan-control"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/chenxiaolong/${PN}"
+else
+ SRC_URI="https://github.com/chenxiaolong/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ $(cargo_crate_uris)"
+ # supported boards are x86_64 only, do not keyword elsewhere
+ # technically it could run on remote host and issue commands via ipmitool lanplus, but that's very edgy case
+ KEYWORDS="-* ~amd64"
+fi
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 GPL-3+ ISC MIT Unicode-DFS-2016 Unlicense"
+SLOT="0"
+
+BDEPEND="
+ sys-devel/clang
+ virtual/pkgconfig
+"
+
+RDEPEND="sys-libs/freeipmi"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_install() {
+ cargo_src_install
+
+ sed -i \
+ -e "s|@BINDIR@|${EPREFIX}/usr/bin|" \
+ -e "s|@SYSCONFDIR@|${EPREFIX}/etc|" \
+ dist/ipmi-fan-control.service.in || die
+
+ # TODO: add openrc service
+ systemd_newunit dist/ipmi-fan-control.service.in ipmi-fan-control.service
+
+ insinto /etc
+ newins config.sample.toml "${PN}".toml
+}
+
+pkg_postinst() {
+ optfeature "S.M.A.R.T. drive temperature support" sys-apps/smartmontools
+}
diff --git a/sys-apps/ipmi-fan-control/ipmi-fan-control-9999.ebuild b/sys-apps/ipmi-fan-control/ipmi-fan-control-9999.ebuild
new file mode 100644
index 000000000000..9edc0bc051d8
--- /dev/null
+++ b/sys-apps/ipmi-fan-control/ipmi-fan-control-9999.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+inherit cargo optfeature systemd
+
+DESCRIPTION="SuperMicro IPMI fan control daemon"
+HOMEPAGE="https://github.com/chenxiaolong/ipmi-fan-control"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/chenxiaolong/${PN}"
+else
+ SRC_URI="https://github.com/chenxiaolong/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ $(cargo_crate_uris)"
+ # supported boards are x86_64 only, do not keyword elsewhere
+ # technically it could run on remote host and issue commands via ipmitool lanplus, but that's very edgy case
+ KEYWORDS="-* ~amd64"
+fi
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 GPL-3+ ISC MIT Unicode-DFS-2016 Unlicense"
+SLOT="0"
+
+BDEPEND="
+ sys-devel/clang
+ virtual/pkgconfig
+"
+
+RDEPEND="sys-libs/freeipmi"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_install() {
+ cargo_src_install
+
+ sed -i \
+ -e "s|@BINDIR@|${EPREFIX}/usr/bin|" \
+ -e "s|@SYSCONFDIR@|${EPREFIX}/etc|" \
+ dist/ipmi-fan-control.service.in || die
+
+ # TODO: add openrc service
+ systemd_newunit dist/ipmi-fan-control.service.in ipmi-fan-control.service
+
+ insinto /etc
+ newins config.sample.toml "${PN}".toml
+}
+
+pkg_postinst() {
+ optfeature "S.M.A.R.T. drive temperature support" sys-apps/smartmontools
+}
diff --git a/sys-apps/ipmi-fan-control/metadata.xml b/sys-apps/ipmi-fan-control/metadata.xml
new file mode 100644
index 000000000000..19563e0602ea
--- /dev/null
+++ b/sys-apps/ipmi-fan-control/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/chenxiaolong/ipmi-fan-control/issues</bugs-to>
+ <remote-id type="github">chenxiaolong/ipmi-fan-control</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/ipmicfg/Manifest b/sys-apps/ipmicfg/Manifest
index a3ba31fcf77a..78a129b9ad90 100644
--- a/sys-apps/ipmicfg/Manifest
+++ b/sys-apps/ipmicfg/Manifest
@@ -1 +1 @@
-DIST IPMICFG_1.32.0_build.200820.zip 1821515 BLAKE2B a214d45f0a52ba16e85f4287780da1d7c3b236624139f71e32e0112914864a044a5b1756ee75525bbd9e8c475b39c608e80b3fc679388c3d07b4b2823a36d57d SHA512 c800f8fc3675718a7077cd717d0a810a516f17081c0a1d3a440af4b292f1f908b66e2450a1f8f5efcd34ebcaf9db56a2dc8b4c448d6d920fd36578356f7753dc
+DIST IPMICFG_1.34.2_build.230224.zip 2381414 BLAKE2B de33d12aeee5da25357a4954b970cb69b0f5446d92c75d15dfdf07c2d72c06dc2a3f0d6da3927a273ca029a8e9e76175256dfe34dec87ab1ea5f351f66417a41 SHA512 5c9447bafb054957c3ab430cae4d853acb98ca3aa112ae06439ce20fe04c4c9ff68bf596a507b65cda2020f8b8c7ed8ce1dd50c610868218d1483d6216211ee8
diff --git a/sys-apps/ipmicfg/ipmicfg-1.32.0.200820.ebuild b/sys-apps/ipmicfg/ipmicfg-1.32.0.200820.ebuild
deleted file mode 100644
index 642ff2b9341a..000000000000
--- a/sys-apps/ipmicfg/ipmicfg-1.32.0.200820.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_DATE="$(ver_cut 4)"
-MY_PN="${PN^^}"
-MY_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="An in-band utility for configuring Supermicro IPMI devices"
-HOMEPAGE="https://www.supermicro.com"
-SRC_URI="https://www.supermicro.com/wftp/utility/${MY_PN}/${MY_PN}_${MY_PV}_build.${MY_DATE}.zip"
-
-LICENSE="supermicro"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE="uefi"
-
-BDEPEND="app-arch/unzip"
-
-RESTRICT="bindist mirror"
-
-S="${WORKDIR}/${MY_PN}_${MY_PV}_build.${MY_DATE}"
-
-QA_PREBUILT="usr/bin/ipmicfg"
-
-src_install() {
- newbin Linux/$(usex amd64 '64bit' '32bit')/IPMICFG-Linux.x86$(usex amd64 '_64' '') ipmicfg
-
- if use uefi; then
- insinto /usr/share/ipmicfg
- newins UEFI/IPMICFG.efi ipmicfg.efi
- fi
-
- # Install docs
- local DOCS=(
- "IPMICFG_UserGuide.pdf"
- "ReleaseNotes.txt"
- )
- einstalldocs
-}
diff --git a/sys-apps/ipmicfg/ipmicfg-1.34.2.230224.ebuild b/sys-apps/ipmicfg/ipmicfg-1.34.2.230224.ebuild
new file mode 100644
index 000000000000..cb0fafe4c1e4
--- /dev/null
+++ b/sys-apps/ipmicfg/ipmicfg-1.34.2.230224.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_DATE="$(ver_cut 4)"
+MY_PN="${PN^^}"
+MY_PV="$(ver_cut 1-3)"
+
+inherit secureboot
+
+DESCRIPTION="An in-band utility for configuring Supermicro IPMI devices"
+HOMEPAGE="https://www.supermicro.com"
+SRC_URI="https://www.supermicro.com/Bios/sw_download/551/${MY_PN}_${MY_PV}_build.${MY_DATE}.zip"
+S="${WORKDIR}/${MY_PN}_${MY_PV}_build.${MY_DATE}"
+
+LICENSE="supermicro"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="uefi"
+
+BDEPEND="app-arch/unzip"
+
+RESTRICT="bindist mirror"
+
+QA_PREBUILT="usr/bin/ipmicfg"
+
+pkg_setup() {
+ use uefi && secureboot_pkg_setup
+}
+
+src_install() {
+ newbin Linux/$(usex amd64 '64bit' '32bit')/IPMICFG-Linux.x86$(usex amd64 '_64' '') ipmicfg
+
+ if use uefi; then
+ insinto /usr/share/ipmicfg
+ newins UEFI/IPMICFG.efi ipmicfg.efi
+ secureboot_auto_sign --in-place
+ fi
+
+ # Install docs
+ local DOCS=(
+ "IPMICFG_UserGuide.pdf"
+ "ReleaseNotes.txt"
+ )
+ einstalldocs
+}
diff --git a/sys-apps/ipmicfg/metadata.xml b/sys-apps/ipmicfg/metadata.xml
index 1da025bfee6b..4799bebcec68 100644
--- a/sys-apps/ipmicfg/metadata.xml
+++ b/sys-apps/ipmicfg/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/ipmitool/Manifest b/sys-apps/ipmitool/Manifest
index dac59e8952bf..4b714ddf3312 100644
--- a/sys-apps/ipmitool/Manifest
+++ b/sys-apps/ipmitool/Manifest
@@ -1,6 +1,2 @@
-DIST enterprise-numbers.2020-10-21.xz 1426932 BLAKE2B bfe39ceea321ba47cd40eafa67862eb4dfd6dc29b192afb20ad0c908cd93a16b4103c5de64d042df012417c8cadc03000f2b2a00779bcc582a430603cad5f3cf SHA512 4a854a56e8ed51997c320cbfba041d43cb98b14743ef80b67e701942068d3729604abaedb617655a83ca21a7e20ea5a622ede4de317ca492cefd46da784d28f3
-DIST ipmitool-1.8.18.tar.gz 995313 BLAKE2B 4aee2b1488a8a97348954dd1555baf3d576d70f22fd17f11ba6147595b07ef52059ac8ab6775afa0ad956355eefbf3e2b0300cf87bb373d2f82b585de807412d SHA512 274d424fff079f7628c0f9fe06580937cb9717c809a71b2f5ef97266c6b6c89983b662fbb1f090e2f94861f1799677c8fc6536013828a8a5e6cb239af53e45ab
-DIST ipmitool-1.8.18_p20201004.tar.gz 638493 BLAKE2B 52f4ec8c82336b88640d1b91fc17af8f2fe0948a5c48c16067867dcad0852168d48bb21fdd99bde7ed957b66df888fd369c909079d1f81c861acd8c7f8dfa6f2 SHA512 8d72eef3584f4d2c86bfe43f70b5d687f3b7bbdf75b8979f7132c5c98b01baae22c336e540c197652187749fc9bb221a92e546b56e5cf2eb5650fad5094e9433
-DIST ipmitool_1.8.18-1.debian.tar.xz 19140 BLAKE2B 255c4da005946f3b118a127f96fc5daad02a170ea079d7a765a0c7650e1eb7e50ad49b31fca95312b49e5a524e04a8a21215cafb1a8451e5b2af2aaec22cda75 SHA512 8aede337d07987decfd032898f194d32730eced443630ac3956676533d693fb2d17a175ef14218cbcd55da44f6b17714f676a912a1d5124a15a995e01d2828ef
-DIST ipmitool_1.8.18-9.debian-ported-gentoo.tar.xz 3208 BLAKE2B b37a127eff361039b3b810e19dd97f0c395462b658803f56f10f2dd1abbbe92743dc409ce6b83560db15621b7fa7a3c0f989100077893993df18108a082e49d2 SHA512 0f7646a2307ac98425e99dece9d3e3b23026136a97524151efdecc910fb537af41a91702782989046e44163da98610fa05792878473e228b45c16351f6015a45
-DIST ipmitool_1.8.18-9.debian.tar.xz 18508 BLAKE2B 09e37fd2f6fad8f847bae87aa51f44293e5640b4c8ebc05e52ebd751542d7865024835fe728c14e3a44f48d54fedff9e7693653bd2288db27d21a5bae16268b6 SHA512 af2b4aa855125e1beb62ffd2931b5d4c0aa8cc4edbde27ea1b4be172e6a4351f574c32b2437b354d11b7f1c739161d850c47839d7a7d9f522b52e24f47a9ea8d
+DIST enterprise-numbers-1.8.19.xz 1500100 BLAKE2B 15c21792bf46220c5908ecf4f0ddafe2fdf13a1799c054a0cb0cb647e7f489768855c4c25fba8a4408505ff0cf02d1a43408d5c4de557b1b30fe8abb477a7926 SHA512 e88cb459a9c8a3172770bcfefbec0a7ad7d65395063c8c0173fce776ea0beb7ad9f3610e636dfbd71d0af8c952c2b9bc6c25c815daa4ab281bed983cbe2ebcc4
+DIST ipmitool-1.8.19.tar.gz 641383 BLAKE2B e1db12bb7301cb4b551f87fbfcd405b3597a1f32c45447b2b239d9d43a2cdbe213ee5408291d50801035cc80e28078fb3a778ab28335665bc3316798c13ea1fc SHA512 2d91706e9feba4b2ce4808eca087b81b842c4292a5840830001919c06ec8babd8f8761b74bb9dcf8fbc7765f028a5b1a192a3c1b643f2adaa157fed6fb0d1ee3
diff --git a/sys-apps/ipmitool/files/exchange-bmc-os-info-1.8.18.initd b/sys-apps/ipmitool/files/exchange-bmc-os-info.initd
index 9c63983f21f3..9c63983f21f3 100644
--- a/sys-apps/ipmitool/files/exchange-bmc-os-info-1.8.18.initd
+++ b/sys-apps/ipmitool/files/exchange-bmc-os-info.initd
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.18-ipmievd.confd b/sys-apps/ipmitool/files/ipmievd.confd
index b860c23c7f89..b860c23c7f89 100644
--- a/sys-apps/ipmitool/files/ipmitool-1.8.18-ipmievd.confd
+++ b/sys-apps/ipmitool/files/ipmievd.confd
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.18-ipmievd.initd b/sys-apps/ipmitool/files/ipmievd.initd
index e8ef2c39d454..e8ef2c39d454 100644
--- a/sys-apps/ipmitool/files/ipmitool-1.8.18-ipmievd.initd
+++ b/sys-apps/ipmitool/files/ipmievd.initd
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.18-fno-common.patch b/sys-apps/ipmitool/files/ipmitool-1.8.18-fno-common.patch
deleted file mode 100644
index 5ca554961ca6..000000000000
--- a/sys-apps/ipmitool/files/ipmitool-1.8.18-fno-common.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/include/ipmitool/ipmi_hpmfwupg.h
-+++ b/include/ipmitool/ipmi_hpmfwupg.h
-@@ -800,8 +800,6 @@
- char descString[HPMFWUPG_DESC_STRING_LENGTH + 1];
- }VERSIONINFO, *PVERSIONINFO;
-
--VERSIONINFO gVersionInfo[HPMFWUPG_COMPONENT_ID_MAX];
--
- #define TARGET_VER (0x01)
- #define ROLLBACK_VER (0x02)
- #define IMAGE_VER (0x04)
---- a/lib/ipmi_hpmfwupg.c
-+++ b/lib/ipmi_hpmfwupg.c
-@@ -52,6 +52,8 @@
- # include <config.h>
- #endif
-
-+static VERSIONINFO gVersionInfo[HPMFWUPG_COMPONENT_ID_MAX];
-+
- /* From src/plugins/ipmi_intf.c: */
- uint16_t
- ipmi_intf_get_max_request_data_size(struct ipmi_intf * intf);
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.18-openssl-1.1.patch b/sys-apps/ipmitool/files/ipmitool-1.8.18-openssl-1.1.patch
deleted file mode 100644
index 9e5a876f00a3..000000000000
--- a/sys-apps/ipmitool/files/ipmitool-1.8.18-openssl-1.1.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-Taken from various upstream commits:
-
-https://github.com/ipmitool/ipmitool/commit/b57487e360916ab3eaa50aa6d021c73b6337a4a0
-https://github.com/ipmitool/ipmitool/commit/77fe5635037ebaf411cae46cf5045ca819b5c145
-https://github.com/ipmitool/ipmitool/commit/f004b4b7197fc83e7d47ec8cbcaefffa9a922717
-https://github.com/ipmitool/ipmitool/commit/f004b4b7197fc83e7d47ec8cbcaefffa9a922717
-
---- ipmitool-1.8.18/src/plugins/lanplus/lanplus_crypt_impl.c
-+++ ipmitool-1.8.18/src/plugins/lanplus/lanplus_crypt_impl.c
-@@ -164,11 +164,7 @@
- uint8_t * output,
- uint32_t * bytes_written)
- {
-- EVP_CIPHER_CTX ctx;
-- EVP_CIPHER_CTX_init(&ctx);
-- EVP_EncryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, key, iv);
-- EVP_CIPHER_CTX_set_padding(&ctx, 0);
--
-+ EVP_CIPHER_CTX *ctx = NULL;
-
- *bytes_written = 0;
-
-@@ -182,6 +178,14 @@
- printbuf(input, input_length, "encrypting this data");
- }
-
-+ ctx = EVP_CIPHER_CTX_new();
-+ if (ctx == NULL) {
-+ lprintf(LOG_DEBUG, "ERROR: EVP_CIPHER_CTX_new() failed");
-+ return;
-+ }
-+ EVP_CIPHER_CTX_init(ctx);
-+ EVP_EncryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, key, iv);
-+ EVP_CIPHER_CTX_set_padding(ctx, 0);
-
- /*
- * The default implementation adds a whole block of padding if the input
-@@ -191,28 +195,28 @@
- assert((input_length % IPMI_CRYPT_AES_CBC_128_BLOCK_SIZE) == 0);
-
-
-- if(!EVP_EncryptUpdate(&ctx, output, (int *)bytes_written, input, input_length))
-+ if(!EVP_EncryptUpdate(ctx, output, (int *)bytes_written, input, input_length))
- {
- /* Error */
- *bytes_written = 0;
-- return;
- }
- else
- {
- uint32_t tmplen;
-
-- if(!EVP_EncryptFinal_ex(&ctx, output + *bytes_written, (int *)&tmplen))
-+ if(!EVP_EncryptFinal_ex(ctx, output + *bytes_written, (int *)&tmplen))
- {
-+ /* Error */
- *bytes_written = 0;
-- return; /* Error */
- }
- else
- {
- /* Success */
- *bytes_written += tmplen;
-- EVP_CIPHER_CTX_cleanup(&ctx);
- }
- }
-+ /* performs cleanup and free */
-+ EVP_CIPHER_CTX_free(ctx);
- }
-
-
-@@ -239,11 +243,7 @@
- uint8_t * output,
- uint32_t * bytes_written)
- {
-- EVP_CIPHER_CTX ctx;
-- EVP_CIPHER_CTX_init(&ctx);
-- EVP_DecryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, key, iv);
-- EVP_CIPHER_CTX_set_padding(&ctx, 0);
--
-+ EVP_CIPHER_CTX *ctx = NULL;
-
- if (verbose >= 5)
- {
-@@ -252,12 +252,20 @@
- printbuf(input, input_length, "decrypting this data");
- }
-
--
- *bytes_written = 0;
-
- if (input_length == 0)
- return;
-
-+ ctx = EVP_CIPHER_CTX_new();
-+ if (ctx == NULL) {
-+ lprintf(LOG_DEBUG, "ERROR: EVP_CIPHER_CTX_new() failed");
-+ return;
-+ }
-+ EVP_CIPHER_CTX_init(ctx);
-+ EVP_DecryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, key, iv);
-+ EVP_CIPHER_CTX_set_padding(ctx, 0);
-+
- /*
- * The default implementation adds a whole block of padding if the input
- * data is perfectly aligned. We would like to keep that from happening.
-@@ -266,33 +274,33 @@
- assert((input_length % IPMI_CRYPT_AES_CBC_128_BLOCK_SIZE) == 0);
-
-
-- if (!EVP_DecryptUpdate(&ctx, output, (int *)bytes_written, input, input_length))
-+ if (!EVP_DecryptUpdate(ctx, output, (int *)bytes_written, input, input_length))
- {
- /* Error */
- lprintf(LOG_DEBUG, "ERROR: decrypt update failed");
- *bytes_written = 0;
-- return;
- }
- else
- {
- uint32_t tmplen;
-
-- if (!EVP_DecryptFinal_ex(&ctx, output + *bytes_written, (int *)&tmplen))
-+ if (!EVP_DecryptFinal_ex(ctx, output + *bytes_written, (int *)&tmplen))
- {
-+ /* Error */
- char buffer[1000];
- ERR_error_string(ERR_get_error(), buffer);
- lprintf(LOG_DEBUG, "the ERR error %s", buffer);
- lprintf(LOG_DEBUG, "ERROR: decrypt final failed");
- *bytes_written = 0;
-- return; /* Error */
- }
- else
- {
- /* Success */
- *bytes_written += tmplen;
-- EVP_CIPHER_CTX_cleanup(&ctx);
- }
- }
-+ /* performs cleanup and free */
-+ EVP_CIPHER_CTX_free(ctx);
-
- if (verbose >= 5)
- {
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.19-CVE-2011-4339.patch b/sys-apps/ipmitool/files/ipmitool-1.8.19-CVE-2011-4339.patch
new file mode 100644
index 000000000000..4a25280662b5
--- /dev/null
+++ b/sys-apps/ipmitool/files/ipmitool-1.8.19-CVE-2011-4339.patch
@@ -0,0 +1,20 @@
+Description: CVE-2011-4339
+ insecure file permission when creating PID files
+ based on 112_fix_CVE-2011-4339
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=651917
+Forwarded: https://sourceforge.net/p/ipmitool/patches/99/
+Last-Update: 2020-10-21
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+diff -Nuar --exclude '*.orig' ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/lib/helper.c ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/lib/helper.c
+--- ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/lib/helper.c 2020-08-07 00:53:06.000000000 -0700
++++ ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/lib/helper.c 2020-10-21 13:59:02.335206233 -0700
+@@ -917,7 +917,6 @@
+ lprintf(LOG_ERR, "chdir failed: %s (%d)", strerror(errno), errno);
+ exit(1);
+ }
+- umask(0);
+
+ for (fd=0; fd<64; fd++) {
+ if (fd != intf->fd)
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.19-fix-buffer-overflow.patch b/sys-apps/ipmitool/files/ipmitool-1.8.19-fix-buffer-overflow.patch
new file mode 100644
index 000000000000..ceeffde085a7
--- /dev/null
+++ b/sys-apps/ipmitool/files/ipmitool-1.8.19-fix-buffer-overflow.patch
@@ -0,0 +1,21 @@
+Description: fix buffer overflow
+ based on 101_fix_buf_overflow from Leo Iannacone <l3on@ubuntu.com>
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Bug: TSOL buffer overflow
+Bug-ubuntu: https://bugs.launchpad.net/ubuntu/+source/ipmitool/+bug/633054
+Forwarded: https://sourceforge.net/p/ipmitool/patches/100/
+Last-Update: 2020-20-21
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+diff -Nuar --exclude '*.orig' ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/lib/ipmi_tsol.c ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/lib/ipmi_tsol.c
+--- ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/lib/ipmi_tsol.c 2020-08-07 00:53:06.000000000 -0700
++++ ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/lib/ipmi_tsol.c 2020-10-21 13:55:58.571536858 -0700
+@@ -374,7 +374,7 @@
+ char *recvip = NULL;
+ char in_buff[IPMI_BUF_SIZE];
+ char out_buff[IPMI_BUF_SIZE * 8];
+- char buff[IPMI_BUF_SIZE + 4];
++ char buff[IPMI_BUF_SIZE * 8 + 4];
+ int fd_socket, result, i;
+ int out_buff_fill, in_buff_fill;
+ int ip1, ip2, ip3, ip4;
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.19-manpage-longlines.patch b/sys-apps/ipmitool/files/ipmitool-1.8.19-manpage-longlines.patch
new file mode 100644
index 000000000000..6c0e00da3e15
--- /dev/null
+++ b/sys-apps/ipmitool/files/ipmitool-1.8.19-manpage-longlines.patch
@@ -0,0 +1,55 @@
+Description: long lines in man-page
+ prevent "can't break line" warnings
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Forwarded: not-needed
+Last-Update: 2020-10-21
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+diff -Nuar --exclude '*.orig' ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/doc/ipmitool.1.in ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/doc/ipmitool.1.in
+--- ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/doc/ipmitool.1.in 2020-08-07 00:53:06.000000000 -0700
++++ ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/doc/ipmitool.1.in 2020-10-21 14:00:23.383643880 -0700
+@@ -1038,7 +1038,7 @@
+ AMC slot B2 topology:
+ Port 0 =====> On Carrier Device ID 0, Port 3
+ Port 2 =====> AMC slot B1, Port 2
+- *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
++ *-*-*-* *-*-* *-*-* *-*-* *-*-* *-*-* *-*-*
+ From Carrier file: carrierfru
+ On Carrier Device ID 0 topology:
+ Port 0 =====> AMC slot B1, Port 4
+@@ -1094,7 +1094,7 @@
+ \-Link Type: AMC.2 Ethernet
+ \-Link Type extension: 1000BASE-BX (SerDES Gigabit) Ethernet link
+ \-Link Group ID: 0 || Link Asym. Match: exact match
+- *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
++ *-*-*-* *-*-* *-*-* *-*-* *-*-* *-*-* *-*-*
+ AMC slot B1 port 1 ==> On-Carrier Device 0 port 12
+ Matching Result
+ - From On-Carrier Device ID 0
+@@ -1107,7 +1107,7 @@
+ \-Link Type: AMC.2 Ethernet
+ \-Link Type extension: 1000BASE-BX (SerDES Gigabit) Ethernet link
+ \-Link Group ID: 0 || Link Asym. Match: exact match
+- *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
++ *-*-*-* *-*-* *-*-* *-*-* *-*-* *-*-* *-*-*
+ On-Carrier Device vs AMC slot A2
+ AMC slot A2 port 0 ==> On-Carrier Device 0 port 3
+ Matching Result
+@@ -1121,7 +1121,7 @@
+ \-Link Type: AMC.2 Ethernet
+ \-Link Type extension: 1000BASE-BX (SerDES Gigabit) Ethernet link
+ \-Link Group ID: 0 || Link Asym. Match: exact match
+- *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
++ *-*-*-* *-*-* *-*-* *-*-* *-*-* *-*-* *-*-*
+ AMC slot B1 vs AMC slot A2
+ AMC slot A2 port 2 ==> AMC slot B1 port 2
+ Matching Result
+@@ -1135,7 +1135,7 @@
+ \-Link Type: AMC.3 Storage
+ \-Link Type extension: Serial Attached SCSI (SAS/SATA)
+ \-Link Group ID: 0 || Link Asym. Match: FC or SAS interface {exact match}
+- *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
++ *-*-*-* *-*-* *-*-* *-*-* *-*-* *-*-* *-*-*
+ .TP
+ \fIunmatch\fP <\fBxx=filename\fR> <\fBxx=filename\fR> \fB...\fr
+ .br
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.19-missing-func-decl.patch b/sys-apps/ipmitool/files/ipmitool-1.8.19-missing-func-decl.patch
new file mode 100644
index 000000000000..5057fcaf0525
--- /dev/null
+++ b/sys-apps/ipmitool/files/ipmitool-1.8.19-missing-func-decl.patch
@@ -0,0 +1,32 @@
+https://github.com/ipmitool/ipmitool/pull/360
+
+From a9e262480722f5affd237ee10d0bbc8c55617cb7 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 2 Sep 2022 07:30:10 -0700
+Subject: [PATCH] ipmi_fru.c: Provide missing function declarations
+
+Fixes build with clang-15+
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ lib/ipmi_fru.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/lib/ipmi_fru.c b/lib/ipmi_fru.c
+index 3d1d8a1a..5c5661cf 100644
+--- a/lib/ipmi_fru.c
++++ b/lib/ipmi_fru.c
+@@ -60,6 +60,13 @@ static const char *section_id[4] = {
+ "Board Section",
+ "Product Section"
+ };
++/* From lib/ipmi_hpmfwupg.c: */
++uint16_t
++ipmi_intf_get_max_request_data_size(struct ipmi_intf * intf);
++
++/* From src/plugins/ipmi_intf.c: */
++uint16_t
++ipmi_intf_get_max_response_data_size(struct ipmi_intf * intf);
+
+ static const char * combined_voltage_desc[] = {
+ "12 V",
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.19-nvidia-iana.patch b/sys-apps/ipmitool/files/ipmitool-1.8.19-nvidia-iana.patch
new file mode 100644
index 000000000000..31b1a42dcf59
--- /dev/null
+++ b/sys-apps/ipmitool/files/ipmitool-1.8.19-nvidia-iana.patch
@@ -0,0 +1,23 @@
+Description: Add IANA ID for NVIDIA hardware
+ Add the NVIDIA IANA ID to the hardcoded list used in ipmitool <= 1.8.18.
+ After upstream commit "9d41136 ID:491 - Fetch vendor IDs from IANA", ipmitool
+ generates a list of vendor IDs dynamically at build time, so we can drop this
+ patch in future releases.
+Author: dann frazier <dannf@debian.org>
+Origin: backport
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903616
+Forwarded: not-needed
+Last-Update: 2020-10-21
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+diff -Nuar --exclude '*.orig' --exclude '*.rej' ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/include/ipmitool/ipmi.h ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/include/ipmitool/ipmi.h
+--- ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f.orig/include/ipmitool/ipmi.h 2020-08-07 00:53:06.000000000 -0700
++++ ipmitool-50d8c36edf9657720e25445a435dabc44572cf5f/include/ipmitool/ipmi.h 2020-10-21 14:04:11.675128602 -0700
+@@ -281,6 +281,7 @@
+ /* 4769 for [IBM Corporation] */
+ IPMI_OEM_IBM_4769 = 4769,
+ IPMI_OEM_MAGNUM = 5593,
++ IPMI_OEM_NVIDIA = 5703,
+ IPMI_OEM_TYAN = 6653,
+ IPMI_OEM_QUANTA = 7244,
+ IPMI_OEM_VIKING = 9237,
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.confd b/sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.confd
deleted file mode 100644
index 42b194a771b0..000000000000
--- a/sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.confd
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# /etc/conf.d/ipmievd
-
-# Interfaces:
-# open Linux OpenIPMI Interface
-# imb Intel IMB Interface
-# bmc IPMI v2.0 BMC interface
-# lan IPMI v1.5 LAN Interface
-# lanplus IPMI v2.0 RMCP+ LAN Interface
-
-INTERFACE="open"
-
-# Commands:
-# open Use OpenIPMI for asyncronous notification of events
-# sel Poll SEL for notification of events
-
-COMMAND="open"
-
-# Options.
-
-OPTIONS=""
diff --git a/sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.initd b/sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.initd
deleted file mode 100644
index 256238ef5e2c..000000000000
--- a/sys-apps/ipmitool/files/ipmitool-1.8.9-ipmievd.initd
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# /etc/init.d/ipmievd
-
-depend() {
- use logger
-}
-PN="ipmievd"
-
-start() {
- /sbin/modprobe -sq ipmi_msghandler
- /sbin/modprobe -sq ipmi_devintf
- /sbin/modprobe -sq ipmi_si
- ebegin "Starting ${PN}"
- start-stop-daemon --start --pidfile /var/run/${PN}.pid0 --exec /usr/sbin/${PN} -- -I ${INTERFACE} ${OPTIONS} ${COMMAND}
- eend $?
-}
-
-stop() {
- ebegin "Stopping ${PN}"
- start-stop-daemon --stop --pidfile /var/run/${PN}.pid0
- eend $?
-}
diff --git a/sys-apps/ipmitool/files/log_bmc-1.8.18.initd b/sys-apps/ipmitool/files/log_bmc.initd
index 4064edf3b84d..4064edf3b84d 100644
--- a/sys-apps/ipmitool/files/log_bmc-1.8.18.initd
+++ b/sys-apps/ipmitool/files/log_bmc.initd
diff --git a/sys-apps/ipmitool/ipmitool-1.8.18-r1.ebuild b/sys-apps/ipmitool/ipmitool-1.8.18-r1.ebuild
deleted file mode 100644
index 314005e456a4..000000000000
--- a/sys-apps/ipmitool/ipmitool-1.8.18-r1.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils
-
-DESCRIPTION="Utility for controlling IPMI enabled devices."
-HOMEPAGE="http://ipmitool.sf.net/"
-DEBIAN_PR="1.debian"
-DEBIAN_P="${P/-/_}"
-DEBIAN_PF="${DEBIAN_P}-${DEBIAN_PR}"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz
- http://http.debian.net/debian/pool/main/i/${PN}/${DEBIAN_PF}.tar.xz"
- # https://launchpad.net/ubuntu/+archive/primary/+files/${DEBIAN_PF}.tar.xz
-#IUSE="freeipmi openipmi status"
-IUSE="libressl openipmi static"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 hppa ~ia64 ppc ~ppc64 x86"
-LICENSE="BSD"
-
-RDEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- sys-libs/readline:0="
-DEPEND="${RDEPEND}
- openipmi? ( sys-libs/openipmi )
- virtual/os-headers"
- #freeipmi? ( sys-libs/freeipmi )
-# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
-# but it doesn't actually need either.
-
-PATCHES=(
- "${FILESDIR}"/${P}-openssl-1.1.patch
- "${FILESDIR}/ipmitool-1.8.18-fno-common.patch"
-)
-
-src_prepare() {
- default
- [ -d "${S}"/debian ] && mv "${S}"/debian{,.package}
- ln -s "${WORKDIR}"/debian "${S}"
- for p in $(grep -v "^#" debian/patches/series) ; do
- eapply debian/patches/$p
- done
-
- eautoreconf
-}
-
-src_configure() {
- # - LIPMI and BMC are the Solaris libs
- # - OpenIPMI is unconditionally enabled in the configure as there is compat
- # code that is used if the library itself is not available
- # FreeIPMI does build now, but is disabled until the other arches keyword it
- # `use_enable freeipmi intf-free` \
- # --enable-ipmievd is now unconditional
- econf \
- $(use_enable static) \
- --enable-ipmishell \
- --enable-intf-lan \
- --enable-intf-lanplus \
- --enable-intf-open \
- --enable-intf-serial \
- --disable-intf-bmc \
- --disable-intf-dummy \
- --disable-intf-free \
- --disable-intf-imb \
- --disable-intf-lipmi \
- --disable-internal-md5 \
- --with-kerneldir=/usr --bindir=/usr/sbin
-
- # Fix linux/ipmi.h to compile properly. This is a hack since it doesn't
- # include the below file to define some things.
- echo "#include <asm/byteorder.h>" >>config.h
-}
-
-src_install() {
- emake DESTDIR="${D}" PACKAGE="${PF}" install
-
- into /usr
- dosbin contrib/bmclanconf
- rm -f "${D}"/usr/share/doc/${PF}/COPYING
- docinto contrib
- cd "${S}"/contrib
- dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
-
- newinitd "${FILESDIR}"/${PN}-1.8.9-ipmievd.initd ipmievd
- newconfd "${FILESDIR}"/${PN}-1.8.9-ipmievd.confd ipmievd
- # TODO: init script for contrib/bmc-snmp-proxy
- # TODO: contrib/exchange-bmc-os-info
-}
diff --git a/sys-apps/ipmitool/ipmitool-1.8.18-r2.ebuild b/sys-apps/ipmitool/ipmitool-1.8.18-r2.ebuild
deleted file mode 100644
index eb3cdab7d446..000000000000
--- a/sys-apps/ipmitool/ipmitool-1.8.18-r2.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils
-
-DESCRIPTION="Utility for controlling IPMI enabled devices."
-HOMEPAGE="http://ipmitool.sf.net/"
-DEBIAN_PR="9.debian"
-DEBIAN_PV="${PV/_p*}"
-DEBIAN_P="${PN}_${DEBIAN_PV}"
-DEBIAN_PF="${DEBIAN_P}-${DEBIAN_PR}"
-COMMIT_ID=
-if [[ -n "${COMMIT_ID}" ]]; then
- S="${WORKDIR}/${PN}-${COMMIT_ID}"
- SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-fi
-SRC_URI+="
- http://http.debian.net/debian/pool/main/i/${PN}/${DEBIAN_PF}.tar.xz"
- # https://launchpad.net/ubuntu/+archive/primary/+files/${DEBIAN_PF}.tar.xz
-#IUSE="freeipmi openipmi status"
-IUSE="libressl openipmi static"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
-LICENSE="BSD"
-
-RDEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- sys-libs/readline:0="
-DEPEND="${RDEPEND}
- openipmi? ( sys-libs/openipmi )
- virtual/os-headers"
- #freeipmi? ( sys-libs/freeipmi )
-# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
-# but it doesn't actually need either.
-
-PATCHES=(
- #"${FILESDIR}"/${P}-openssl-1.1.patch
-)
-
-src_prepare() {
- default
- [ -d "${S}"/debian ] && mv "${S}"/debian{,.package}
- ln -s "${WORKDIR}"/debian "${S}"
- for p in $(grep -v "^#" debian/patches/series) ; do
- eapply debian/patches/$p
- done
-
- eautoreconf
-}
-
-src_configure() {
- # - LIPMI and BMC are the Solaris libs
- # - OpenIPMI is unconditionally enabled in the configure as there is compat
- # code that is used if the library itself is not available
- # FreeIPMI does build now, but is disabled until the other arches keyword it
- # `use_enable freeipmi intf-free` \
- # --enable-ipmievd is now unconditional
- econf \
- $(use_enable static) \
- --enable-ipmishell \
- --enable-intf-lan \
- --enable-intf-lanplus \
- --enable-intf-open \
- --enable-intf-serial \
- --disable-intf-bmc \
- --disable-intf-dummy \
- --disable-intf-free \
- --disable-intf-imb \
- --disable-intf-lipmi \
- --disable-internal-md5 \
- --with-kerneldir=/usr --bindir=/usr/sbin
-
- # Fix linux/ipmi.h to compile properly. This is a hack since it doesn't
- # include the below file to define some things.
- echo "#include <asm/byteorder.h>" >>config.h
-}
-
-src_install() {
- emake DESTDIR="${D}" PACKAGE="${PF}" install
-
- into /usr
- dosbin contrib/bmclanconf
- rm -f "${D}"/usr/share/doc/${PF}/COPYING
- docinto contrib
- cd "${S}"/contrib
- dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
-
- newinitd "${FILESDIR}"/${PN}-1.8.9-ipmievd.initd ipmievd
- newconfd "${FILESDIR}"/${PN}-1.8.9-ipmievd.confd ipmievd
- # TODO: init script for contrib/bmc-snmp-proxy
- # TODO: contrib/exchange-bmc-os-info
-}
diff --git a/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r1.ebuild b/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r1.ebuild
deleted file mode 100644
index 21cf160a0f41..000000000000
--- a/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils
-
-DESCRIPTION="Utility for controlling IPMI enabled devices."
-HOMEPAGE="http://ipmitool.sf.net/"
-DEBIAN_PR="9.debian"
-DEBIAN_PV="${PV/_p*}"
-DEBIAN_P="${PN}_${DEBIAN_PV}"
-DEBIAN_PF="${DEBIAN_P}-${DEBIAN_PR}"
-COMMIT_ID=7fd7c0f2ba39e223868a8d83d81d4074f057d6fc
-if [[ -n "${COMMIT_ID}" ]]; then
- S="${WORKDIR}/${PN}-${COMMIT_ID}"
- SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-fi
-# https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers
-# is not available with version numbers or dates!
-SRC_URI+="
- https://dev.gentoo.org/~robbat2/distfiles/ipmitool_1.8.18-9.debian-ported-gentoo.tar.xz
- https://dev.gentoo.org/~robbat2/distfiles/enterprise-numbers.2020-10-21.xz
- "
- #http://http.debian.net/debian/pool/main/i/${PN}/${DEBIAN_PF}.tar.xz
- # https://launchpad.net/ubuntu/+archive/primary/+files/${DEBIAN_PF}.tar.xz
-#IUSE="freeipmi openipmi status"
-IUSE="libressl openbmc openipmi static"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ppc ~ppc64 x86"
-LICENSE="BSD"
-
-RDEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- openbmc? ( sys-apps/systemd:0= )
- sys-libs/readline:0="
-DEPEND="${RDEPEND}
- openipmi? ( sys-libs/openipmi )
- virtual/os-headers"
- #freeipmi? ( sys-libs/freeipmi )
-# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
-# but it doesn't actually need either.
-
-PATCHES=(
- #"${FILESDIR}"/${P}-openssl-1.1.patch
-)
-
-# I hope all of this will get MUCH cleaner if upstream will just make a new
-# release! - robbat2 2020/10/21
-src_prepare() {
- default
- if [ -d "${S}"/debian ] ; then
- mv "${S}"/debian{,.package}
- ln -s "${WORKDIR}"/debian "${S}"
- eautoreconf
- # Upstream commit includes SOME of the debian changes, but not all of them
- sed -i \
- -e '/^#/d' \
- -e '/0120-openssl1.1.patch/d' \
- debian/patches/series
- for p in $(cat debian/patches/series) ; do
- echo $p
- if ! nonfatal eapply -p1 debian/patches/$p ; then
- echo "failed $p"
- fail=1
- fi
- done
- [[ $fail -eq 1 ]] && die "fail"
- fi
- pd="${WORKDIR}"/ipmitool_1.8.18-9.debian-ported-gentoo/
- PATCHES=(
- #"${pd}"/0000.0120-openssl1.1.patch
- "${pd}"/0001.0100-fix_buf_overflow.patch
- "${pd}"/0002.0500-fix_CVE-2011-4339.patch
- "${pd}"/0003.0600-manpage_longlines.patch
- #"${pd}"/0004.0110-getpass-prototype.patch
- #"${pd}"/0005.0115-typo.patch
- "${pd}"/0006.0125-nvidia-iana.patch
- "${pd}"/0007.0615-manpage_typo.patch
- #"${pd}"/0008.0130-Correct_lanplus_segment_violation.patch
- "${pd}"/0009.0005-gcc10.patch
- #"${pd}"/0010.0010-utf8.patch
- )
- for p in "${PATCHES[@]}" ; do
- eapply -p1 $p || die "failed $p"
- done
-
- eautoreconf
-
- # If this file is not present, then ipmitool will try to download it during make install!
- cp -al \
- "${WORKDIR}/enterprise-numbers.2020-10-21" \
- "${S}"/enterprise-numbers \
- || die "Could not place IANA enterprise-numbers"
-}
-
-src_configure() {
- # - LIPMI and BMC are the Solaris libs
- # - OpenIPMI is unconditionally enabled in the configure as there is compat
- # code that is used if the library itself is not available
- # FreeIPMI does build now, but is disabled until the other arches keyword it
- # `use_enable freeipmi intf-free` \
- # --enable-ipmievd is now unconditional
- WGET=/bin/true \
- CURL=/bin/true \
- econf \
- $(use_enable static) \
- --enable-ipmishell \
- --enable-intf-lan \
- --enable-intf-usb \
- $(use_enable openbmc intf-dbus) \
- --enable-intf-lanplus \
- --enable-intf-open \
- --enable-intf-serial \
- --disable-intf-bmc \
- --disable-intf-dummy \
- --disable-intf-free \
- --disable-intf-imb \
- --disable-intf-lipmi \
- --disable-internal-md5 \
- --with-kerneldir=/usr \
- --bindir=/usr/sbin
-
- # Fix linux/ipmi.h to compile properly. This is a hack since it doesn't
- # include the below file to define some things.
- echo "#include <asm/byteorder.h>" >>config.h
-}
-
-src_install() {
- emake DESTDIR="${D}" PACKAGE="${PF}" install
-
- into /usr
- dosbin contrib/bmclanconf
- rm -f "${D}"/usr/share/doc/${PF}/COPYING
- docinto contrib
- cd "${S}"/contrib
- dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
-
- newinitd "${FILESDIR}"/${PN}-1.8.9-ipmievd.initd ipmievd
- newconfd "${FILESDIR}"/${PN}-1.8.9-ipmievd.confd ipmievd
- # TODO: init script for contrib/bmc-snmp-proxy
- # TODO: contrib/exchange-bmc-os-info
-}
diff --git a/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r2.ebuild b/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r2.ebuild
deleted file mode 100644
index a57247179375..000000000000
--- a/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r2.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools eutils flag-o-matic systemd
-
-DESCRIPTION="Utility for controlling IPMI enabled devices."
-HOMEPAGE="http://ipmitool.sf.net/"
-DEBIAN_PR="9.debian"
-DEBIAN_PV="${PV/_p*}"
-DEBIAN_P="${PN}_${DEBIAN_PV}"
-DEBIAN_PF="${DEBIAN_P}-${DEBIAN_PR}"
-COMMIT_ID=7fd7c0f2ba39e223868a8d83d81d4074f057d6fc
-if [[ -n "${COMMIT_ID}" ]]; then
- S="${WORKDIR}/${PN}-${COMMIT_ID}"
- SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-fi
-# https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers
-# is not available with version numbers or dates!
-SRC_URI+="
- https://dev.gentoo.org/~robbat2/distfiles/ipmitool_1.8.18-9.debian-ported-gentoo.tar.xz
- https://dev.gentoo.org/~robbat2/distfiles/enterprise-numbers.2020-10-21.xz
- "
- #http://http.debian.net/debian/pool/main/i/${PN}/${DEBIAN_PF}.tar.xz
- # https://launchpad.net/ubuntu/+archive/primary/+files/${DEBIAN_PF}.tar.xz
-#IUSE="freeipmi openipmi status"
-IUSE="libressl openbmc openipmi static"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
-LICENSE="BSD"
-
-RDEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- openbmc? ( sys-apps/systemd:0= )
- sys-libs/readline:0="
-DEPEND="${RDEPEND}
- openipmi? ( sys-libs/openipmi )
- virtual/os-headers"
- #freeipmi? ( sys-libs/freeipmi )
-# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
-# but it doesn't actually need either.
-
-PATCHES=(
- #"${FILESDIR}"/${P}-openssl-1.1.patch
-)
-
-# I hope all of this will get MUCH cleaner if upstream will just make a new
-# release! - robbat2 2020/10/21
-src_prepare() {
- default
- if [ -d "${S}"/debian ] ; then
- mv "${S}"/debian{,.package}
- ln -s "${WORKDIR}"/debian "${S}"
- eautoreconf
- # Upstream commit includes SOME of the debian changes, but not all of them
- sed -i \
- -e '/^#/d' \
- -e '/0120-openssl1.1.patch/d' \
- debian/patches/series
- for p in $(cat debian/patches/series) ; do
- echo $p
- if ! nonfatal eapply -p1 debian/patches/$p ; then
- echo "failed $p"
- fail=1
- fi
- done
- [[ $fail -eq 1 ]] && die "fail"
- fi
- pd="${WORKDIR}"/ipmitool_1.8.18-9.debian-ported-gentoo/
- PATCHES=(
- #"${pd}"/0000.0120-openssl1.1.patch
- "${pd}"/0001.0100-fix_buf_overflow.patch
- "${pd}"/0002.0500-fix_CVE-2011-4339.patch
- "${pd}"/0003.0600-manpage_longlines.patch
- #"${pd}"/0004.0110-getpass-prototype.patch
- #"${pd}"/0005.0115-typo.patch
- "${pd}"/0006.0125-nvidia-iana.patch
- "${pd}"/0007.0615-manpage_typo.patch
- #"${pd}"/0008.0130-Correct_lanplus_segment_violation.patch
- "${pd}"/0009.0005-gcc10.patch
- #"${pd}"/0010.0010-utf8.patch
- )
- for p in "${PATCHES[@]}" ; do
- eapply -p1 $p || die "failed $p"
- done
-
- # Gentoo chooses to install ipmitool in /usr/sbin
- # Where RedHat chooses /usr/bin
- sed -i -e \
- 's,/usr/bin/ipmitool,/usr/sbin/ipmitool,g' \
- "${S}"/contrib/* \
- || die "sed bindir failed"
-
- # Consistent RUNSTATEDIR
- sed -i -e \
- 's,/var/run,/run,g' \
- "${S}/doc/ipmievd.8.in" \
- "${S}"/contrib/* \
- "${S}"/lib/helper.c \
- "${S}"/src/ipmievd.c \
- || die "sed /var/run failed"
-
- eautoreconf
-
- # If this file is not present, then ipmitool will try to download it during make install!
- cp -al \
- "${WORKDIR}/enterprise-numbers.2020-10-21" \
- "${S}"/enterprise-numbers \
- || die "Could not place IANA enterprise-numbers"
-}
-
-src_configure() {
- # - LIPMI and BMC are the Solaris libs
- # - OpenIPMI is unconditionally enabled in the configure as there is compat
- # code that is used if the library itself is not available
- # FreeIPMI does build now, but is disabled until the other arches keyword it
- # `use_enable freeipmi intf-free` \
- # --enable-ipmievd is now unconditional
-
- # for pidfiles, runstatedir not respected in all parts of code
- append-cppflags -D_PATH_VARRUN=/run/
-
- # WGET & CURL are set to avoid network interaction, we manually inject the
- # IANA enterprise-numbers file instead.
- #
- # DEFAULT_INTF=open # default to OpenIPMI, do not take external input
- WGET=/bin/true \
- CURL=/bin/true \
- DEFAULT_INTF=open \
- econf \
- $(use_enable static) \
- --enable-ipmishell \
- --enable-intf-lan \
- --enable-intf-usb \
- $(use_enable openbmc intf-dbus) \
- --enable-intf-lanplus \
- --enable-intf-open \
- --enable-intf-serial \
- --disable-intf-bmc \
- --disable-intf-dummy \
- --disable-intf-free \
- --disable-intf-imb \
- --disable-intf-lipmi \
- --disable-internal-md5 \
- --with-kerneldir=/usr \
- --bindir=/usr/sbin \
- --runstatedir=/run \
- CFLAGS="${CFLAGS}"
-
- # Fix linux/ipmi.h to compile properly. This is a hack since it doesn't
- # include the below file to define some things.
- echo "#include <asm/byteorder.h>" >>config.h
-
-}
-
-src_install() {
- emake DESTDIR="${D}" PACKAGE="${PF}" install
- rm -f "${D}"/usr/share/doc/${PF}/COPYING
- into /usr
-
- newinitd "${FILESDIR}"/${PN}-1.8.18-ipmievd.initd ipmievd
- newconfd "${FILESDIR}"/${PN}-1.8.18-ipmievd.confd ipmievd
-
- # Everything past this point is installing contrib/
- dosbin contrib/bmclanconf
-
- exeinto /usr/libexec
- doexe contrib/log_bmc.sh
- newinitd "${FILESDIR}/log_bmc-1.8.18.initd" log_bmc
-
- # contrib/exchange-bmc-os-info.init.redhat
- # contrib/exchange-bmc-os-info.service.redhat
- # contrib/exchange-bmc-os-info.sysconf
- exeinto /usr/libexec
- newexe contrib/exchange-bmc-os-info.init.redhat exchange-bmc-os-info
- insinto /etc/sysconfig
- newins contrib/exchange-bmc-os-info.sysconf exchange-bmc-os-info
- systemd_newunit contrib/exchange-bmc-os-info.service.redhat exchange-bmc-os-info.service
- newinitd "${FILESDIR}/exchange-bmc-os-info-1.8.18.initd" exchange-bmc-os-info
-
- # contrib/bmc-snmp-proxy
- # contrib/bmc-snmp-proxy.service
- # contrib/bmc-snmp-proxy.sysconf
- exeinto /usr/libexec
- doexe contrib/bmc-snmp-proxy
- insinto /etc/sysconfig
- newins contrib/bmc-snmp-proxy.sysconf bmc-snmp-proxy
- systemd_dounit contrib/bmc-snmp-proxy.service
- # TODO: initd for bmc-snmp-proxy
-
- insinto /usr/share/${PN}
- doins contrib/oem_ibm_sel_map
-
- docinto contrib
- cd "${S}"/contrib
- dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
-}
diff --git a/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r3.ebuild b/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r3.ebuild
deleted file mode 100644
index 528c0393a61c..000000000000
--- a/sys-apps/ipmitool/ipmitool-1.8.18_p20201004-r3.ebuild
+++ /dev/null
@@ -1,202 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools eutils flag-o-matic systemd
-
-DESCRIPTION="Utility for controlling IPMI enabled devices."
-HOMEPAGE="http://ipmitool.sf.net/"
-DEBIAN_PR="9.debian"
-DEBIAN_PV="${PV/_p*}"
-DEBIAN_P="${PN}_${DEBIAN_PV}"
-DEBIAN_PF="${DEBIAN_P}-${DEBIAN_PR}"
-COMMIT_ID=7fd7c0f2ba39e223868a8d83d81d4074f057d6fc
-if [[ -n "${COMMIT_ID}" ]]; then
- S="${WORKDIR}/${PN}-${COMMIT_ID}"
- SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-fi
-# https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers
-# is not available with version numbers or dates!
-SRC_URI+="
- https://dev.gentoo.org/~robbat2/distfiles/ipmitool_1.8.18-9.debian-ported-gentoo.tar.xz
- https://dev.gentoo.org/~robbat2/distfiles/enterprise-numbers.2020-10-21.xz
- "
- #http://http.debian.net/debian/pool/main/i/${PN}/${DEBIAN_PF}.tar.xz
- # https://launchpad.net/ubuntu/+archive/primary/+files/${DEBIAN_PF}.tar.xz
-#IUSE="freeipmi openipmi status"
-IUSE="libressl openbmc openipmi static"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
-LICENSE="BSD"
-
-RDEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- openbmc? ( sys-apps/systemd:0= )
- sys-libs/readline:0="
-DEPEND="${RDEPEND}
- openipmi? ( sys-libs/openipmi )
- virtual/os-headers"
- #freeipmi? ( sys-libs/freeipmi )
-# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
-# but it doesn't actually need either.
-
-PATCHES=(
- #"${FILESDIR}"/${P}-openssl-1.1.patch
-)
-
-# I hope all of this will get MUCH cleaner if upstream will just make a new
-# release! - robbat2 2020/10/21
-src_prepare() {
- default
- if [ -d "${S}"/debian ] ; then
- mv "${S}"/debian{,.package}
- ln -s "${WORKDIR}"/debian "${S}"
- eautoreconf
- # Upstream commit includes SOME of the debian changes, but not all of them
- sed -i \
- -e '/^#/d' \
- -e '/0120-openssl1.1.patch/d' \
- debian/patches/series
- for p in $(cat debian/patches/series) ; do
- echo $p
- if ! nonfatal eapply -p1 debian/patches/$p ; then
- echo "failed $p"
- fail=1
- fi
- done
- [[ $fail -eq 1 ]] && die "fail"
- fi
- pd="${WORKDIR}"/ipmitool_1.8.18-9.debian-ported-gentoo/
- PATCHES=(
- #"${pd}"/0000.0120-openssl1.1.patch
- "${pd}"/0001.0100-fix_buf_overflow.patch
- "${pd}"/0002.0500-fix_CVE-2011-4339.patch
- "${pd}"/0003.0600-manpage_longlines.patch
- #"${pd}"/0004.0110-getpass-prototype.patch
- #"${pd}"/0005.0115-typo.patch
- "${pd}"/0006.0125-nvidia-iana.patch
- "${pd}"/0007.0615-manpage_typo.patch
- #"${pd}"/0008.0130-Correct_lanplus_segment_violation.patch
- "${pd}"/0009.0005-gcc10.patch
- #"${pd}"/0010.0010-utf8.patch
- )
- for p in "${PATCHES[@]}" ; do
- eapply -p1 $p || die "failed $p"
- done
-
- # Gentoo chooses to install ipmitool in /usr/sbin
- # Where RedHat chooses /usr/bin
- sed -i -e \
- 's,/usr/bin/ipmitool,/usr/sbin/ipmitool,g' \
- "${S}"/contrib/* \
- || die "sed bindir failed"
-
- # Consistent RUNSTATEDIR
- sed -i -e \
- 's,/var/run,/run,g' \
- "${S}/doc/ipmievd.8.in" \
- "${S}"/contrib/* \
- "${S}"/lib/helper.c \
- "${S}"/src/ipmievd.c \
- || die "sed /var/run failed"
-
- eautoreconf
-
- # If this file is not present, then ipmitool will try to download it during make install!
- cp -al \
- "${WORKDIR}/enterprise-numbers.2020-10-21" \
- "${S}"/enterprise-numbers \
- || die "Could not place IANA enterprise-numbers"
-}
-
-src_configure() {
- # - LIPMI and BMC are the Solaris libs
- # - OpenIPMI is unconditionally enabled in the configure as there is compat
- # code that is used if the library itself is not available
- # FreeIPMI does build now, but is disabled until the other arches keyword it
- # `use_enable freeipmi intf-free` \
- # --enable-ipmievd is now unconditional
-
- # for pidfiles, runstatedir not respected in all parts of code
- append-cppflags -D_PATH_VARRUN=/run/
-
- # WGET & CURL are set to avoid network interaction, we manually inject the
- # IANA enterprise-numbers file instead.
- #
- # DEFAULT_INTF=open # default to OpenIPMI, do not take external input
- WGET=/bin/true \
- CURL=/bin/true \
- DEFAULT_INTF=open \
- econf \
- $(use_enable static) \
- --enable-ipmishell \
- --enable-intf-lan \
- --enable-intf-usb \
- $(use_enable openbmc intf-dbus) \
- --enable-intf-lanplus \
- --enable-intf-open \
- --enable-intf-serial \
- --disable-intf-bmc \
- --disable-intf-dummy \
- --disable-intf-free \
- --disable-intf-imb \
- --disable-intf-lipmi \
- --disable-internal-md5 \
- --with-kerneldir=/usr \
- --bindir=/usr/sbin \
- --runstatedir=/run \
- CFLAGS="${CFLAGS}"
-
- # Fix linux/ipmi.h to compile properly. This is a hack since it doesn't
- # include the below file to define some things.
- echo "#include <asm/byteorder.h>" >>config.h
-
-}
-
-src_install() {
- emake DESTDIR="${D}" PACKAGE="${PF}" install
- rm -f "${D}"/usr/share/doc/${PF}/COPYING
- into /usr
-
- newinitd "${FILESDIR}"/${PN}-1.8.18-ipmievd.initd ipmievd
- newconfd "${FILESDIR}"/${PN}-1.8.18-ipmievd.confd ipmievd
- # From debian, less configurable than OpenRC
- systemd_dounit "${FILESDIR}"/ipmievd.service
-
- # Everything past this point is installing contrib/
- dosbin contrib/bmclanconf
-
- exeinto /usr/libexec
- doexe contrib/log_bmc.sh
- newinitd "${FILESDIR}/log_bmc-1.8.18.initd" log_bmc
-
- # contrib/exchange-bmc-os-info.init.redhat
- # contrib/exchange-bmc-os-info.service.redhat
- # contrib/exchange-bmc-os-info.sysconf
- exeinto /usr/libexec
- newexe contrib/exchange-bmc-os-info.init.redhat exchange-bmc-os-info
- insinto /etc/sysconfig
- newins contrib/exchange-bmc-os-info.sysconf exchange-bmc-os-info
- systemd_newunit contrib/exchange-bmc-os-info.service.redhat exchange-bmc-os-info.service
- newinitd "${FILESDIR}/exchange-bmc-os-info-1.8.18.initd" exchange-bmc-os-info
-
- # contrib/bmc-snmp-proxy
- # contrib/bmc-snmp-proxy.service
- # contrib/bmc-snmp-proxy.sysconf
- exeinto /usr/libexec
- doexe contrib/bmc-snmp-proxy
- insinto /etc/sysconfig
- newins contrib/bmc-snmp-proxy.sysconf bmc-snmp-proxy
- systemd_dounit contrib/bmc-snmp-proxy.service
- # TODO: initd for bmc-snmp-proxy
-
- insinto /usr/share/${PN}
- doins contrib/oem_ibm_sel_map
-
- docinto contrib
- cd "${S}"/contrib
- dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
-}
diff --git a/sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild b/sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild
new file mode 100644
index 000000000000..7726154e61d3
--- /dev/null
+++ b/sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic systemd
+
+DESCRIPTION="Utility for controlling IPMI enabled devices"
+HOMEPAGE="https://codeberg.org/IPMITool/ipmitool"
+
+COMMIT_ID=
+if [[ -n "${COMMIT_ID}" ]]; then
+ SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${COMMIT_ID}"
+else
+ MY_P="${PN^^}_${PV//./_}"
+ SRC_URI="https://github.com/ipmitool/ipmitool/archive/refs/tags/${MY_P}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${MY_P}"
+fi
+
+# to generate: `make enterprise-numbers` from git checkout of release tag
+SRC_URI+="
+ https://dev.gentoo.org/~ajak/distfiles/${CATEGORY}/${PN}/enterprise-numbers-${PV}.xz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv x86"
+IUSE="openbmc openipmi static"
+
+RDEPEND="
+ dev-libs/openssl:=
+ sys-libs/readline:=
+ openbmc? ( sys-apps/systemd:= )
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-build/autoconf-2.69-r5
+ virtual/os-headers
+ openipmi? ( sys-libs/openipmi )
+"
+#freeipmi? ( sys-libs/freeipmi )
+# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
+# but it doesn't actually need either.
+
+PATCHES=(
+ "${FILESDIR}/${P}-missing-func-decl.patch"
+ # yoinked out of debian's patchset, previously carried in a SRC_URI
+ # tarball
+ "${FILESDIR}/${P}-fix-buffer-overflow.patch"
+ "${FILESDIR}/${P}-CVE-2011-4339.patch"
+ "${FILESDIR}/${P}-manpage-longlines.patch"
+ "${FILESDIR}/${P}-nvidia-iana.patch"
+)
+
+src_prepare() {
+ default
+
+ # Gentoo chooses to install ipmitool in /usr/sbin
+ # Where RedHat chooses /usr/bin
+ sed -i -e \
+ 's,/usr/bin/ipmitool,/usr/sbin/ipmitool,g' \
+ "${S}"/contrib/* \
+ || die "sed bindir failed"
+
+ eautoreconf
+
+ # If this file is not present, then ipmitool will try to download it during make install!
+ cp -al "${WORKDIR}/enterprise-numbers-${PV}" "${S}/enterprise-numbers" \
+ || die "Could not place IANA enterprise-numbers"
+}
+
+src_configure() {
+ # bug #863587
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ # - LIPMI and BMC are the Solaris libs
+ # - OpenIPMI is unconditionally enabled in the configure as there is compat
+ # code that is used if the library itself is not available
+ # - FreeIPMI does build now, but is disabled until the other arches keyword it
+ # `use_enable freeipmi intf-free` \
+ # - --enable-ipmievd is now unconditional
+ local econfargs=(
+ $(use_enable static)
+ --enable-ipmishell
+ --enable-intf-lan
+ --enable-intf-usb
+ $(use_enable openbmc intf-dbus)
+ --enable-intf-lanplus
+ --enable-intf-open
+ --enable-intf-serial
+ --disable-intf-bmc
+ --disable-intf-dummy
+ --disable-intf-free
+ --disable-intf-imb
+ --disable-intf-lipmi
+ --disable-internal-md5
+ --with-kerneldir=/usr
+ --bindir=/usr/sbin
+ --runstatedir=/run
+ CFLAGS="${CFLAGS}"
+ )
+
+ econf "${econfargs[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PACKAGE="${PF}" install
+ into /usr
+
+ newinitd "${FILESDIR}/ipmievd.initd" ipmievd
+ newconfd "${FILESDIR}/ipmievd.confd" ipmievd
+
+ # From debian, less configurable than OpenRC
+ systemd_dounit "${FILESDIR}/ipmievd.service"
+
+ dosbin contrib/bmclanconf
+
+ exeinto /usr/libexec
+ doexe contrib/log_bmc.sh
+ newinitd "${FILESDIR}/log_bmc.initd" log_bmc
+
+ # contrib/exchange-bmc-os-info.init.redhat
+ # contrib/exchange-bmc-os-info.service.redhat
+ # contrib/exchange-bmc-os-info.sysconf
+ exeinto /usr/libexec
+ newexe contrib/exchange-bmc-os-info.init.redhat exchange-bmc-os-info
+
+ insinto /etc/sysconfig
+ newins contrib/exchange-bmc-os-info.sysconf exchange-bmc-os-info
+
+ systemd_newunit contrib/exchange-bmc-os-info.service.redhat exchange-bmc-os-info.service
+ newinitd "${FILESDIR}/exchange-bmc-os-info.initd" exchange-bmc-os-info
+
+ # contrib/bmc-snmp-proxy
+ # contrib/bmc-snmp-proxy.service
+ # contrib/bmc-snmp-proxy.sysconf
+ exeinto /usr/libexec
+ doexe contrib/bmc-snmp-proxy
+
+ insinto /etc/sysconfig
+ newins contrib/bmc-snmp-proxy.sysconf bmc-snmp-proxy
+
+ systemd_dounit contrib/bmc-snmp-proxy.service
+ # TODO: initd for bmc-snmp-proxy
+
+ insinto "/usr/share/${PN}"
+ doins contrib/oem_ibm_sel_map
+
+ cd "${S}/contrib"
+
+ docinto contrib
+ dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
+}
diff --git a/sys-apps/ipmitool/ipmitool-1.8.19.ebuild b/sys-apps/ipmitool/ipmitool-1.8.19.ebuild
new file mode 100644
index 000000000000..3ee1253ef26a
--- /dev/null
+++ b/sys-apps/ipmitool/ipmitool-1.8.19.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools systemd
+
+DESCRIPTION="Utility for controlling IPMI enabled devices"
+HOMEPAGE="https://codeberg.org/IPMITool/ipmitool"
+
+COMMIT_ID=
+if [[ -n "${COMMIT_ID}" ]]; then
+ SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${COMMIT_ID}"
+else
+ MY_P="${PN^^}_${PV//./_}"
+ SRC_URI="https://github.com/ipmitool/ipmitool/archive/refs/tags/${MY_P}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${MY_P}"
+fi
+
+# to generate: `make enterprise-numbers` from git checkout of release tag
+SRC_URI+="
+ https://dev.gentoo.org/~ajak/distfiles/${CATEGORY}/${PN}/enterprise-numbers-${PV}.xz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv x86"
+IUSE="openbmc openipmi static"
+
+RDEPEND="
+ dev-libs/openssl:=
+ sys-libs/readline:=
+ openbmc? ( sys-apps/systemd:= )
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-build/autoconf-2.69-r5
+ virtual/os-headers
+ openipmi? ( sys-libs/openipmi )
+"
+#freeipmi? ( sys-libs/freeipmi )
+# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi )
+# but it doesn't actually need either.
+
+PATCHES=(
+ "${FILESDIR}/${P}-missing-func-decl.patch"
+ # yoinked out of debian's patchset, previously carried in a SRC_URI
+ # tarball
+ "${FILESDIR}/${P}-fix-buffer-overflow.patch"
+ "${FILESDIR}/${P}-CVE-2011-4339.patch"
+ "${FILESDIR}/${P}-manpage-longlines.patch"
+ "${FILESDIR}/${P}-nvidia-iana.patch"
+)
+
+src_prepare() {
+ default
+
+ # Gentoo chooses to install ipmitool in /usr/sbin
+ # Where RedHat chooses /usr/bin
+ sed -i -e \
+ 's,/usr/bin/ipmitool,/usr/sbin/ipmitool,g' \
+ "${S}"/contrib/* \
+ || die "sed bindir failed"
+
+ eautoreconf
+
+ # If this file is not present, then ipmitool will try to download it during make install!
+ cp -al "${WORKDIR}/enterprise-numbers-${PV}" "${S}/enterprise-numbers" \
+ || die "Could not place IANA enterprise-numbers"
+}
+
+src_configure() {
+ # - LIPMI and BMC are the Solaris libs
+ # - OpenIPMI is unconditionally enabled in the configure as there is compat
+ # code that is used if the library itself is not available
+ # - FreeIPMI does build now, but is disabled until the other arches keyword it
+ # `use_enable freeipmi intf-free` \
+ # - --enable-ipmievd is now unconditional
+ local econfargs=(
+ $(use_enable static)
+ --enable-ipmishell
+ --enable-intf-lan
+ --enable-intf-usb
+ $(use_enable openbmc intf-dbus)
+ --enable-intf-lanplus
+ --enable-intf-open
+ --enable-intf-serial
+ --disable-intf-bmc
+ --disable-intf-dummy
+ --disable-intf-free
+ --disable-intf-imb
+ --disable-intf-lipmi
+ --disable-internal-md5
+ --with-kerneldir=/usr
+ --bindir=/usr/sbin
+ --runstatedir=/run
+ CFLAGS="${CFLAGS}"
+ )
+
+ econf "${econfargs[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PACKAGE="${PF}" install
+ into /usr
+
+ newinitd "${FILESDIR}/ipmievd.initd" ipmievd
+ newconfd "${FILESDIR}/ipmievd.confd" ipmievd
+
+ # From debian, less configurable than OpenRC
+ systemd_dounit "${FILESDIR}/ipmievd.service"
+
+ dosbin contrib/bmclanconf
+
+ exeinto /usr/libexec
+ doexe contrib/log_bmc.sh
+ newinitd "${FILESDIR}/log_bmc.initd" log_bmc
+
+ # contrib/exchange-bmc-os-info.init.redhat
+ # contrib/exchange-bmc-os-info.service.redhat
+ # contrib/exchange-bmc-os-info.sysconf
+ exeinto /usr/libexec
+ newexe contrib/exchange-bmc-os-info.init.redhat exchange-bmc-os-info
+
+ insinto /etc/sysconfig
+ newins contrib/exchange-bmc-os-info.sysconf exchange-bmc-os-info
+
+ systemd_newunit contrib/exchange-bmc-os-info.service.redhat exchange-bmc-os-info.service
+ newinitd "${FILESDIR}/exchange-bmc-os-info.initd" exchange-bmc-os-info
+
+ # contrib/bmc-snmp-proxy
+ # contrib/bmc-snmp-proxy.service
+ # contrib/bmc-snmp-proxy.sysconf
+ exeinto /usr/libexec
+ doexe contrib/bmc-snmp-proxy
+
+ insinto /etc/sysconfig
+ newins contrib/bmc-snmp-proxy.sysconf bmc-snmp-proxy
+
+ systemd_dounit contrib/bmc-snmp-proxy.service
+ # TODO: initd for bmc-snmp-proxy
+
+ insinto "/usr/share/${PN}"
+ doins contrib/oem_ibm_sel_map
+
+ cd "${S}/contrib"
+
+ docinto contrib
+ dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README
+}
diff --git a/sys-apps/ipmitool/metadata.xml b/sys-apps/ipmitool/metadata.xml
index 619cebe5e320..4fca0ad7d1e7 100644
--- a/sys-apps/ipmitool/metadata.xml
+++ b/sys-apps/ipmitool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sysadmin@gentoo.org</email>
@@ -12,6 +12,6 @@
</use>
<upstream>
<remote-id type="sourceforge">ipmitool</remote-id>
- <remote-id type="launchpad">ubuntu</remote-id>
+ <remote-id type="github">ipmitool/ipmitool</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/ipmiutil/Manifest b/sys-apps/ipmiutil/Manifest
index bc3c07233bb9..dbfacc86ff5a 100644
--- a/sys-apps/ipmiutil/Manifest
+++ b/sys-apps/ipmiutil/Manifest
@@ -1,4 +1 @@
-DIST ipmiutil-3.0.6.tar.gz 1692679 BLAKE2B dcc02dbb5467b824005dbc95c8f5231b2e2758e7600231c1c3fc31c1207cff0540400857dd1bfa83fc8b033fe0277ab23c6013f110744bff57fe4bc7b89174f9 SHA512 0c47246b7aa6a060091745d36e33aae07e7907dcad5fefb1759aac62adf48316915ce5818d2f9241e24b73be13e54fbb57046234a69c60ce56f41a933915580f
-DIST ipmiutil-3.0.9.tar.gz 1697688 BLAKE2B 93ed8865cae1cea0ea4f7de4683f4698e3f75e9190cc7e0af1832ca44a08f52aa149393761f1ede3994827db78841061d54058bbe4178b5930accd3a4c225ba7 SHA512 c2c0a516216a46a52621159e665a77d96cf81f385fc9cf19877e72283be3e1a4dad5a4826454727b71576c22cc4de3c73ff428d26f35bf496c7dc1511305cda3
-DIST ipmiutil-3.1.6.tar.gz 1693461 BLAKE2B efc2b283d7655b8afb9d3d8da2e5458deea1c1b939f3ccdf2be0cdf3792ea60229099cce1b8e32f087972385feb01d604f1c63bddbfd031210d5acf8a6b1b9d7 SHA512 9bccfa2e0bba7f30e422d67f93ee6cff50c08cc8bceab5ba5bfd1b0a91e1af8a4a98a2eaa81364e8a1f38e0bd1ce6b99717d86957c6f689aa7329e7013f5b0ef
-DIST ipmiutil-3.1.7.tar.gz 1726396 BLAKE2B 7fa31f8aca61462fc08dd4fe420e27eecce2ee9fa5fb2676eb944e2ae6c09598aec5f06d59e4ed02faab077003b14085f944b6cf0b63f90b10f2660f363e997b SHA512 7522808e4a94c8627de0a95dde0e3eb463ba05948159b5181129b573ce8f9feba3543ef603c14e7cdcafcbd58ca5319536cc5534ea8191cce0ef9d33cc548274
+DIST ipmiutil-3.1.9.tar.gz 1876478 BLAKE2B ddbd4d91d1d09fd9a7d4f7a3f9358787cab1baf3e2f34e43b4ebf44843d9ccc8d8b241b030d0f62a4b183ac4642c6676b304a51b8c6611f69d475dd19c1d3181 SHA512 3c9f60669dd6769dc64977c99d68fc0a0838993fb5ef3d8b1b1026b6daf6e6bfbe8738f3dd120b116fc663c84bafe6ed93420a92fecf57a17785d283b415d9c7
diff --git a/sys-apps/ipmiutil/files/ipmiutil-2.9.8-flags.patch b/sys-apps/ipmiutil/files/ipmiutil-2.9.8-flags.patch
deleted file mode 100644
index ee9917406207..000000000000
--- a/sys-apps/ipmiutil/files/ipmiutil-2.9.8-flags.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- ipmiutil-2.9.8/configure.ac
-+++ ipmiutil-2.9.8/configure.ac
-@@ -162,7 +162,7 @@
- LANPLUS_CRYPTO=""
- LANPLUS_SAM="no"
- LD_SAMX=""
-- CFLAGS="-O2"
-+ #CFLAGS="-O2"
- SUBDIR_S="doc scripts util"
- if test "x$cross_compiling" = "xyes"; then
- # cross-compiling, so link with -static (e.g. Android ARM)
-@@ -334,7 +334,7 @@
- fi
- rm -f $tmpc $tmpo >/dev/null 2>&1
- echo $ECHO_N "checking compile fortify flags ... $ECHO_C"
-- cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"
-+ #cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"
- echo "int main() { alloca(100); return(1); }" >$tmpc
- $CC -o $tmpo $cfhard $tmpc >/dev/null 2>&1
- if test $? -ne 0 ; then
diff --git a/sys-apps/ipmiutil/files/ipmiutil-3.1.5-fix-configure.patch b/sys-apps/ipmiutil/files/ipmiutil-3.1.5-fix-configure.patch
deleted file mode 100644
index 8748256be5f6..000000000000
--- a/sys-apps/ipmiutil/files/ipmiutil-3.1.5-fix-configure.patch
+++ /dev/null
@@ -1,180 +0,0 @@
---- ipmiutil-3.1.5.orig/configure.ac 2019-11-25 06:53:08.000000000 -0800
-+++ ipmiutil-3.1.5/configure.ac 2020-01-25 22:55:20.577345441 -0800
-@@ -80,40 +80,46 @@
- # fi]
-
- drv_landesk=0
-+LANDESK_CFLAGS=""
-+LANDESK_LDADD=""
- dnl configure for LANDESK libipmiapi or not
- AC_ARG_ENABLE([landesk],
-- [ --enable-landesk adds landesk library support [[default=no]]],
-- [if test "x$enableval" = "xyes"; then
-- drv_landesk=1
-- LANDESK_CFLAGS="-DLINK_LANDESK"
-- LANDESK_LDADD="-lipmiapi -L../lib"
-- AC_SUBST(LANDESK_CFLAGS)
-- AC_SUBST(LANDESK_LDADD)
-- fi]
-- )
-+ AS_HELP_STRING([--enable-landesk], [enable landesk support (default=no)]),
-+ [],
-+ [enable_landesk=no])
-+
-+AS_IF([test "x$enable_landesk" = "xyes"], [
-+ drv_landesk=1
-+ LANDESK_CFLAGS="-DLINK_LANDESK"
-+ LANDESK_LDADD="-lipmiapi -L../lib"
-+ AC_SUBST(LANDESK_CFLAGS)
-+ AC_SUBST(LANDESK_LDADD)
-+ ])
-
- dnl Configure ipmiutil for lanplus (libipmi_lanplus.a) or not (default yes)
- AC_ARG_ENABLE([lanplus],
-- [ --enable-lanplus enable lanplus support (default=yes)],[default=yes],
--[if test "x$enableval" = "xno"; then
-- drv_lanplus=""
-- LANPLUS_CFLAGS=""
-- LANPLUS_LDADD=""
-- LANPLUS_LIB=""
-- LANPLUS_CRYPTO=""
-- LANPLUS_SAM="no"
-- LD_SAMX=""
--else
-+ AS_HELP_STRING([--disable-lanplus], [enable lanplus support (default=yes)]),
-+ [],
-+ [enable_lanplus=yes])
-+
-+drv_lanplus=""
-+LANPLUS_CFLAGS=""
-+LANPLUS_LDADD=""
-+LANPLUS_LIB=""
-+LANPLUS_CRYPTO=""
-+LANPLUS_SAM="no"
-+LD_SAMX=""
-+AS_IF([test "x$enable_lanplus" = "xyes"], [
- drv_lanplus="lanplus"
- LANPLUS_CFLAGS="-DHAVE_LANPLUS"
- # LANPLUS_CFLAGS="-DHAVE_LANPLUS -I${projdir}/lib/lanplus/inc"
- # LANPLUS_LDADD="-L../lib -lintf_lanplus -L/usr/local/lib -lcrypto"
- LANPLUS_LDADD="-L../lib -lipmi_lanplus -L/usr/local/lib -lcrypto"
-- LANPLUS_LIB="../lib/libipmi_lanplus.a"
-+ LANPLUS_LIB="../lib/libipmi_lanplus.a"
- LANPLUS_CRYPTO="-lcrypto"
- LANPLUS_SAM="yes"
- LD_SAMX="../lib/libipmi_lanplus.a -lcrypto"
--fi ])
-+])
-
- dnl Configure libipmiutil.a for lanplus or not
- dnl Only SOL requires lanplus, so usually build libipmiutil.a without lanplus
-@@ -128,21 +134,28 @@
- #fi
-
- # strings /lib/libssl.so* |grep EVP_sha256
--dnl configure for SHA256, build lanplus with SHA256 support, uses later openssl.
-+dnl configure for SHA256, build lanplus with SHA256 support
-+dnl requires openssl-1.0.1 which was released in 2012/03
- AC_ARG_ENABLE([sha256],
-- [ --enable-sha256 build with SHA256 support, requires later openssl.],
-- [if test "x$enableval" = "xyes"; then
-- LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
-- fi]
-- )
-+ AS_HELP_STRING([--disable-sha256], [build with SHA256 support (default=yes)]),
-+ dnl action if passed
-+ [],
-+ dnl action if not passed
-+ [enable_sha256=yes]
-+ )
-+AS_IF([test "x$enable_sha256" = "xyes"], [
-+ LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
-+])
-
- dnl configure for EKANALYZER, build with ekanalyzer function enabled
- AC_ARG_ENABLE([ekanalyzer],
-- [ --enable-ekanalyzer build with ekanalyzer function enabled.],
-- [if test "x$enableval" = "xyes"; then
-+ AS_HELP_STRING([--enable-ekanalyzer], [build with ekanalyzer function enabled.]),
-+ [],
-+ [enable_ekanalyzer=no]
-+ )
-+AS_IF([test "x$enable_ekanalyzer" = "xyes"], [
- OS_CFLAGS="$OS_CFLAGS -DHAVE_EKANAL"
-- fi]
-- )
-+ ])
-
- GPL_CFLAGS=""
- CROSS_LFLAGS=""
-@@ -152,17 +165,20 @@
- SYSTEMD_DIR=/usr/share/ipmiutil
-
- AC_ARG_ENABLE([useflags],
-- [ --enable-useflags include environment CFLAGS and LDFLAGS.],
-- [if test "x$enableval" = "xyes"; then
-+ AS_HELP_STRING([--enable-useflags], [include environment CFLAGS and LDFLAGS.]),
-+ [],
-+ [enable_useflags=no])
-+AS_IF([test "x$enable_useflags" = "xyes"], [
- CROSS_CFLAGS="$CFLAGS"
- CROSS_LFLAGS="$LDFLAGS"
-- fi]
-- )
-+])
-
- dnl configure for standalone, with no lanplus or GPL libs
- AC_ARG_ENABLE([standalone],
-- [ --enable-standalone build standalone, with no GPL or LanPlus libs.],
-- [if test "x$enableval" = "xyes"; then
-+ AS_HELP_STRING([--enable-standalone], [build standalone, with no GPL or LanPlus libs.]),
-+ [],
-+ [enable_standalone=no])
-+AS_IF([test "x$enable_standalone" = "xyes"], [
- GPL_CFLAGS=""
- LANPLUS_CFLAGS=""
- LANPLUS_LDADD=""
-@@ -176,27 +192,30 @@
- # cross-compiling, so link with -static (e.g. Android ARM)
- CROSS_LFLAGS="-static"
- CROSS_CFLAGS="-DCROSS_COMPILE"
-+ # TODO: how can this be effective? Configure only converts Makefile.in -> Makefile
-+ # Configure does not convert Makefile.am->Makefile.in
- sed -i -e 's/^# ipmiutil: $(METASOURCE:.c=.o)/ipmiutil:\t$(METASOURCE:.c=.o)\n\t$(CC) $(CFLAGS) $(LDFLAGS) -o ipmiutil $(METASOURCE:.c=.o) $(LDADD)/' util/Makefile.am
- fi
-- fi]
-- )
-+ ])
-
- dnl build libipmiutil with sensor modules
- AC_ARG_ENABLE([libsensors],
-- [ --enable-libsensors build libipmiutil with sensor modules [[default=no]]],
-- [if test "x$enableval" = "xyes"; then
-- LIBSENSORS="isensor2.o ievents2.o"
-- SAM2OBJ=""
-- fi]
-- )
-+ AS_HELP_STRING([--enable-libsensors], [build libipmiutil with sensor modules (default=no)]),
-+ [],
-+ [enable_libsensors=no])
-+AS_IF([test "x$enable_libsensors" = "xyes"], [
-+ LIBSENSORS="isensor2.o ievents2.o"
-+ SAM2OBJ=""
-+ ])
-
- dnl configure for GPL build or not (GPL files: md2.h, ipmi_ioctl.h)
- AC_ARG_ENABLE([gpl],
-- [ --enable-gpl build with some GPL code [[default=no]]],
-- [if test "x$enableval" = "xyes"; then
-- GPL_CFLAGS="-DALLOW_GPL"
-- fi]
-- )
-+ AS_HELP_STRING([--enable-gpl], [build with some GPL code (default=no)]),
-+ [],
-+ [enable_gpl=no])
-+AS_IF([test "x$enable_gpl" = "xyes"], [
-+ GPL_CFLAGS="-DALLOW_GPL"
-+ ])
-
- dnl Does this Linux have systemd enabled? Otherwise use sysv init.
- AC_ARG_ENABLE([systemd],
diff --git a/sys-apps/ipmiutil/files/ipmiutil-3.1.7-fix-configure.patch b/sys-apps/ipmiutil/files/ipmiutil-3.1.7-fix-configure.patch
deleted file mode 100644
index 16435dacd6b7..000000000000
--- a/sys-apps/ipmiutil/files/ipmiutil-3.1.7-fix-configure.patch
+++ /dev/null
@@ -1,184 +0,0 @@
---- ipmiutil-3.1.7/configure.ac
-+++ ipmiutil-3.1.7/configure.ac
-@@ -80,40 +80,46 @@
- # fi]
-
- drv_landesk=0
-+LANDESK_CFLAGS=""
-+LANDESK_LDADD=""
- dnl configure for LANDESK libipmiapi or not
- AC_ARG_ENABLE([landesk],
-- [ --enable-landesk adds landesk library support [[default=no]]],
-- [if test "x$enableval" = "xyes"; then
-- drv_landesk=1
-- LANDESK_CFLAGS="-DLINK_LANDESK"
-- LANDESK_LDADD="-lipmiapi -L../lib"
-- AC_SUBST(LANDESK_CFLAGS)
-- AC_SUBST(LANDESK_LDADD)
-- fi]
-- )
-+ AS_HELP_STRING([--enable-landesk], [enable landesk support (default=no)]),
-+ [],
-+ [enable_landesk=no])
-+
-+AS_IF([test "x$enable_landesk" = "xyes"], [
-+ drv_landesk=1
-+ LANDESK_CFLAGS="-DLINK_LANDESK"
-+ LANDESK_LDADD="-lipmiapi -L../lib"
-+ AC_SUBST(LANDESK_CFLAGS)
-+ AC_SUBST(LANDESK_LDADD)
-+ ])
-
- dnl Configure ipmiutil for lanplus (libipmi_lanplus.a) or not (default yes)
- AC_ARG_ENABLE([lanplus],
-- [ --enable-lanplus enable lanplus support (default=yes)],[default=yes],
--[if test "x$enableval" = "xno"; then
-- drv_lanplus=""
-- LANPLUS_CFLAGS=""
-- LANPLUS_LDADD=""
-- LANPLUS_LIB=""
-- LANPLUS_CRYPTO=""
-- LANPLUS_SAM="no"
-- LD_SAMX=""
--else
-+ AS_HELP_STRING([--disable-lanplus], [enable lanplus support (default=yes)]),
-+ [],
-+ [enable_lanplus=yes])
-+
-+drv_lanplus=""
-+LANPLUS_CFLAGS=""
-+LANPLUS_LDADD=""
-+LANPLUS_LIB=""
-+LANPLUS_CRYPTO=""
-+LANPLUS_SAM="no"
-+LD_SAMX=""
-+AS_IF([test "x$enable_lanplus" = "xyes"], [
- drv_lanplus="lanplus"
- LANPLUS_CFLAGS="-DHAVE_LANPLUS"
- # LANPLUS_CFLAGS="-DHAVE_LANPLUS -I${projdir}/lib/lanplus/inc"
- # LANPLUS_LDADD="-L../lib -lintf_lanplus -L/usr/local/lib -lcrypto"
- LANPLUS_LDADD="-L../lib -lipmi_lanplus -L/usr/local/lib -lcrypto"
-- LANPLUS_LIB="../lib/libipmi_lanplus.a"
-+ LANPLUS_LIB="../lib/libipmi_lanplus.a"
- LANPLUS_CRYPTO="-lcrypto"
- LANPLUS_SAM="yes"
- LD_SAMX="../lib/libipmi_lanplus.a -lcrypto"
--fi ])
-+])
-
- dnl Configure libipmiutil.a for lanplus or not
- dnl Only SOL requires lanplus, so usually build libipmiutil.a without lanplus
-@@ -128,21 +134,28 @@
- #fi
-
- # strings /lib/libssl.so* |grep EVP_sha256
--dnl configure for SHA256, build lanplus with SHA256 support, uses later openssl.
-+dnl configure for SHA256, build lanplus with SHA256 support
-+dnl requires openssl-1.0.1 which was released in 2012/03
- AC_ARG_ENABLE([sha256],
-- [ --enable-sha256 build with SHA256 support, requires later openssl.],
-- [if test "x$enableval" = "xyes"; then
-- LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
-- fi]
-- )
-+ AS_HELP_STRING([--disable-sha256], [build with SHA256 support (default=yes)]),
-+ dnl action if passed
-+ [],
-+ dnl action if not passed
-+ [enable_sha256=yes]
-+ )
-+AS_IF([test "x$enable_sha256" = "xyes"], [
-+ LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
-+])
-
- dnl configure for EKANALYZER, build with ekanalyzer function enabled
- AC_ARG_ENABLE([ekanalyzer],
-- [ --enable-ekanalyzer build with ekanalyzer function enabled.],
-- [if test "x$enableval" = "xyes"; then
-+ AS_HELP_STRING([--enable-ekanalyzer], [build with ekanalyzer function enabled.]),
-+ [],
-+ [enable_ekanalyzer=no]
-+ )
-+AS_IF([test "x$enable_ekanalyzer" = "xyes"], [
- OS_CFLAGS="$OS_CFLAGS -DHAVE_EKANAL"
-- fi]
-- )
-+ ])
-
- GPL_CFLAGS=""
- CROSS_LFLAGS=""
-@@ -152,17 +165,20 @@
- SYSTEMD_DIR=/usr/share/ipmiutil
-
- AC_ARG_ENABLE([useflags],
-- [ --enable-useflags include environment CFLAGS and LDFLAGS.],
-- [if test "x$enableval" = "xyes"; then
-+ AS_HELP_STRING([--enable-useflags], [include environment CFLAGS and LDFLAGS.]),
-+ [],
-+ [enable_useflags=no])
-+AS_IF([test "x$enable_useflags" = "xyes"], [
- CROSS_CFLAGS="$CFLAGS"
- CROSS_LFLAGS="$LDFLAGS"
-- fi]
-- )
-+])
-
- dnl configure for standalone, with no lanplus or GPL libs
- AC_ARG_ENABLE([standalone],
-- [ --enable-standalone build standalone, with no GPL or LanPlus libs.],
-- [if test "x$enableval" = "xyes"; then
-+ AS_HELP_STRING([--enable-standalone], [build standalone, with no GPL or LanPlus libs.]),
-+ [],
-+ [enable_standalone=no])
-+AS_IF([test "x$enable_standalone" = "xyes"], [
- GPL_CFLAGS=""
- LANPLUS_CFLAGS=""
- LANPLUS_LDADD=""
-@@ -176,10 +192,11 @@
- # cross-compiling, so link with -static (e.g. Android ARM)
- CROSS_LFLAGS="-static"
- CROSS_CFLAGS="-DCROSS_COMPILE"
-+ # TODO: how can this be effective? Configure only converts Makefile.in -> Makefile
-+ # Configure does not convert Makefile.am->Makefile.in
- sed -i -e 's/^# ipmiutil: $(METASOURCE:.c=.o)/ipmiutil:\t$(METASOURCE:.c=.o)\n\t$(CC) $(CFLAGS) $(LDFLAGS) -o ipmiutil $(METASOURCE:.c=.o) $(LDADD)/' util/Makefile.am
- fi
-- fi]
-- )
-+ ])
-
- AC_ARG_ENABLE([doc],
- [ --enable-doc build with documentation [[default=yes]]],
-@@ -192,20 +209,22 @@
-
- dnl build libipmiutil with sensor modules
- AC_ARG_ENABLE([libsensors],
-- [ --enable-libsensors build libipmiutil with sensor modules [[default=no]]],
-- [if test "x$enableval" = "xyes"; then
-- LIBSENSORS="isensor2.o ievents2.o"
-- SAM2OBJ=""
-- fi]
-- )
-+ AS_HELP_STRING([--enable-libsensors], [build libipmiutil with sensor modules (default=no)]),
-+ [],
-+ [enable_libsensors=no])
-+AS_IF([test "x$enable_libsensors" = "xyes"], [
-+ LIBSENSORS="isensor2.o ievents2.o"
-+ SAM2OBJ=""
-+ ])
-
- dnl configure for GPL build or not (GPL files: md2.h, ipmi_ioctl.h)
- AC_ARG_ENABLE([gpl],
-- [ --enable-gpl build with some GPL code [[default=no]]],
-- [if test "x$enableval" = "xyes"; then
-- GPL_CFLAGS="-DALLOW_GPL"
-- fi]
-- )
-+ AS_HELP_STRING([--enable-gpl], [build with some GPL code (default=no)]),
-+ [],
-+ [enable_gpl=no])
-+AS_IF([test "x$enable_gpl" = "xyes"], [
-+ GPL_CFLAGS="-DALLOW_GPL"
-+ ])
-
- dnl Does this Linux have systemd enabled? Otherwise use sysv init.
- AC_ARG_ENABLE([systemd],
diff --git a/sys-apps/ipmiutil/files/ipmiutil-3.1.7-flags.patch b/sys-apps/ipmiutil/files/ipmiutil-3.1.7-flags.patch
deleted file mode 100644
index 7ef804bc11d3..000000000000
--- a/sys-apps/ipmiutil/files/ipmiutil-3.1.7-flags.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- ipmiutil-3.1.7/configure.ac
-+++ ipmiutil-3.1.7/configure.ac
-@@ -170,7 +170,7 @@
- LANPLUS_CRYPTO=""
- LANPLUS_SAM="no"
- LD_SAMX=""
-- CFLAGS="-O2"
-+ #CFLAGS="-O2"
- SUBDIR_S="scripts util"
- if test "x$cross_compiling" = "xyes"; then
- # cross-compiling, so link with -static (e.g. Android ARM)
-@@ -363,7 +363,7 @@
- fi
- rm -f $tmpc $tmpo >/dev/null 2>&1
- echo $ECHO_N "checking compile fortify flags ... $ECHO_C"
-- cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"
-+ #cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"
- echo "int main() { alloca(100); return(1); }" >$tmpc
- $CC -o $tmpo $cfhard $tmpc >/dev/null 2>&1
- if test $? -ne 0 ; then
diff --git a/sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch b/sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch
new file mode 100644
index 000000000000..f59701079828
--- /dev/null
+++ b/sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch
@@ -0,0 +1,170 @@
+Fix automagic configure options.
+
+--- ipmiutil-3.1.8.orig/configure.ac 2022-05-05 20:48:27.180318912 -0700
++++ ipmiutil-3.1.8/configure.ac 2022-05-05 20:53:10.070503250 -0700
+@@ -80,22 +80,30 @@
+ # fi]
+
+ drv_landesk=0
++LANDESK_CFLAGS=""
++LANDESK_LDADD=""
+ dnl configure for LANDESK libipmiapi or not
+ AC_ARG_ENABLE([landesk],
+- [ --enable-landesk adds landesk library support [[default=no]]],
+- [if test "x$enableval" = "xyes"; then
++ AS_HELP_STRING([--enable-landesk], [enable landesk support (default=no)]),
++ [],
++ [enable_landesk=no]
++)
++AS_IF([test "x$enable_landesk" = "xyes"], [
+ drv_landesk=1
+ LANDESK_CFLAGS="-DLINK_LANDESK"
+ LANDESK_LDADD="-lipmiapi -L../lib"
+ AC_SUBST(LANDESK_CFLAGS)
+ AC_SUBST(LANDESK_LDADD)
+- fi]
+- )
++ echo "landesk enabled"
++])
+
+ dnl Configure ipmiutil for lanplus (libipmi_lanplus.a) or not (default yes)
+ AC_ARG_ENABLE([lanplus],
+- [ --disable-lanplus disable lanplus support [[default=enabled]]],)
+-if test "x$enable_lanplus" = "xno"; then
++ AS_HELP_STRING([--disable-lanplus], [enable lanplus support (default=yes)]),
++ [],
++ [enable_lanplus=yes]
++)
++
+ drv_lanplus=""
+ LANPLUS_CFLAGS=""
+ LANPLUS_LDADD=""
+@@ -103,8 +111,7 @@
+ LANPLUS_CRYPTO=""
+ LANPLUS_SAM="no"
+ LD_SAMX=""
+- echo "lanplus disabled"
+-else
++AS_IF([test "x$enable_lanplus" = "xyes"], [
+ drv_lanplus="lanplus"
+ LANPLUS_CFLAGS="-DHAVE_LANPLUS"
+ # LANPLUS_CFLAGS="-DHAVE_LANPLUS -I${projdir}/lib/lanplus/inc"
+@@ -115,7 +122,7 @@
+ LANPLUS_SAM="yes"
+ LD_SAMX="../lib/libipmi_lanplus.a -lcrypto"
+ echo "lanplus enabled"
+-fi
++])
+
+ dnl Configure libipmiutil.a for lanplus or not
+ dnl Only SOL requires lanplus, so usually build libipmiutil.a without lanplus
+@@ -130,21 +137,28 @@
+ #fi
+
+ # strings /lib/libssl.so* |grep EVP_sha256
+-dnl configure for SHA256, build lanplus with SHA256 support, uses later openssl.
++dnl configure for SHA256, build lanplus with SHA256 support
++dnl requires openssl-1.0.1 which was released in 2012/03
+ AC_ARG_ENABLE([sha256],
+- [ --enable-sha256 build with SHA256 support, requires later openssl.],
+- [if test "x$enableval" = "xyes"; then
+- LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
+- fi]
++ AS_HELP_STRING([--disable-sha256], [build with SHA256 support (default=yes)]),
++ dnl action if passed
++ [],
++ dnl action if not passed
++ [enable_sha256=yes]
+ )
++AS_IF([test "x$enable_sha256" = "xyes"], [
++ LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
++])
+
+ dnl configure for EKANALYZER, build with ekanalyzer function enabled
+ AC_ARG_ENABLE([ekanalyzer],
+- [ --enable-ekanalyzer build with ekanalyzer function enabled.],
+- [if test "x$enableval" = "xyes"; then
+- OS_CFLAGS="$OS_CFLAGS -DHAVE_EKANAL"
+- fi]
++ AS_HELP_STRING([--enable-ekanalyzer], [build with ekanalyzer function enabled.]),
++ [],
++ [enable_ekanalyzer=no]
+ )
++AS_IF([test "x$enable_ekanalyzer" = "xyes"], [
++ OS_CFLAGS="$OS_CFLAGS -DHAVE_EKANAL"
++ ])
+
+ GPL_CFLAGS=""
+ CROSS_LFLAGS=""
+@@ -154,17 +168,20 @@
+ SYSTEMD_DIR=/usr/share/ipmiutil
+
+ AC_ARG_ENABLE([useflags],
+- [ --enable-useflags include environment CFLAGS and LDFLAGS.],
+- [if test "x$enableval" = "xyes"; then
++ AS_HELP_STRING([--enable-useflags], [include environment CFLAGS and LDFLAGS.]),
++ [],
++ [enable_useflags=no])
++AS_IF([test "x$enable_useflags" = "xyes"], [
+ CROSS_CFLAGS="$CFLAGS"
+ CROSS_LFLAGS="$LDFLAGS"
+- fi]
+- )
++])
+
+ dnl configure for standalone, with no lanplus or GPL libs
+ AC_ARG_ENABLE([standalone],
+- [ --enable-standalone build standalone, with no GPL or LanPlus libs.],
+- [if test "x$enableval" = "xyes"; then
++ AS_HELP_STRING([--enable-standalone], [build standalone, with no GPL or LanPlus libs.]),
++ [],
++ [enable_standalone=no])
++AS_IF([test "x$enable_standalone" = "xyes"], [
+ GPL_CFLAGS=""
+ LANPLUS_CFLAGS=""
+ LANPLUS_LDADD=""
+@@ -178,10 +195,11 @@
+ # cross-compiling, so link with -static (e.g. Android ARM)
+ CROSS_LFLAGS="-static"
+ CROSS_CFLAGS="-DCROSS_COMPILE"
++ # TODO: how can this be effective? Configure only converts Makefile.in -> Makefile
++ # Configure does not convert Makefile.am->Makefile.in
+ sed -i -e 's/^# ipmiutil: $(METASOURCE:.c=.o)/ipmiutil:\t$(METASOURCE:.c=.o)\n\t$(CC) $(CFLAGS) $(LDFLAGS) -o ipmiutil $(METASOURCE:.c=.o) $(LDADD)/' util/Makefile.am
+ fi
+- fi]
+- )
++ ])
+
+ AC_ARG_ENABLE([doc],
+ [ --enable-doc build with documentation [[default=yes]]],
+@@ -194,20 +212,22 @@
+
+ dnl build libipmiutil with sensor modules
+ AC_ARG_ENABLE([libsensors],
+- [ --enable-libsensors build libipmiutil with sensor modules [[default=no]]],
+- [if test "x$enableval" = "xyes"; then
++ AS_HELP_STRING([--enable-libsensors], [build libipmiutil with sensor modules (default=no)]),
++ [],
++ [enable_libsensors=no])
++AS_IF([test "x$enable_libsensors" = "xyes"], [
+ LIBSENSORS="isensor2.o ievents2.o"
+ SAM2OBJ=""
+- fi]
+- )
++ ])
+
+ dnl configure for GPL build or not (GPL files: md2.h, ipmi_ioctl.h)
+ AC_ARG_ENABLE([gpl],
+- [ --enable-gpl build with some GPL code [[default=no]]],
+- [if test "x$enableval" = "xyes"; then
++ AS_HELP_STRING([--enable-gpl], [build with some GPL code (default=no)]),
++ [],
++ [enable_gpl=no])
++AS_IF([test "x$enable_gpl" = "xyes"], [
+ GPL_CFLAGS="-DALLOW_GPL"
+- fi]
+- )
++ ])
+
+ dnl Does this Linux have systemd enabled? Otherwise use sysv init.
+ AC_ARG_ENABLE([systemd],
diff --git a/sys-apps/ipmiutil/ipmiutil-3.0.6.ebuild b/sys-apps/ipmiutil/ipmiutil-3.0.6.ebuild
deleted file mode 100644
index 7f746df64c56..000000000000
--- a/sys-apps/ipmiutil/ipmiutil-3.0.6.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools systemd
-
-DESCRIPTION="IPMI Management Utilities"
-HOMEPAGE="http://ipmiutil.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~hppa x86"
-
-RDEPEND=">=dev-libs/openssl-1:0="
-DEPEND="${RDEPEND}
- virtual/os-headers"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.9.8-flags.patch
- "${FILESDIR}"/${PN}-2.9.9-lib_symlink.patch
-)
-
-src_prepare() {
- default
-
- sed -i -e 's|-O2 -g|$(CFLAGS)|g;s|-g -O2|$(CFLAGS)|g' util/Makefile.am* || die
- sed -i -e 's|which rpm |which we_are_gentoo_rpm_is_a_guest |' configure.ac || die
-
- eautoreconf
-}
-
-src_configure() {
- econf --disable-systemd --enable-sha256
-}
-
-src_compile() {
- # Ulgy workaround. Upstream is misusing the make system here
- # and it doesn't even work.
- # Please check on each bump if this workaround is still required.
- pushd lib/lanplus &>/dev/null || die
- emake
- cp libipmi_lanplus.a .. || die
- popd &>/dev/null || die
-
- emake
-}
-
-src_install() {
- emake DESTDIR="${D}" sysdto="${D}/$(systemd_get_systemunitdir)" install
- dodoc -r AUTHORS ChangeLog NEWS README TODO doc/UserGuide
-
- # Init scripts are only for Fedora
- rm -r "${ED%/}"/etc/init.d || die 'remove initscripts failed'
-}
diff --git a/sys-apps/ipmiutil/ipmiutil-3.0.9.ebuild b/sys-apps/ipmiutil/ipmiutil-3.0.9.ebuild
deleted file mode 100644
index 670520a6b9cd..000000000000
--- a/sys-apps/ipmiutil/ipmiutil-3.0.9.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools systemd
-
-DESCRIPTION="IPMI Management Utilities"
-HOMEPAGE="http://ipmiutil.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~x86"
-IUSE="static-libs"
-
-RDEPEND=">=dev-libs/openssl-1:0="
-DEPEND="${RDEPEND}
- virtual/os-headers"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.9.8-flags.patch
- "${FILESDIR}"/${PN}-2.9.9-lib_symlink.patch
-)
-
-src_prepare() {
- default
-
- sed -i -e 's|-O2 -g|$(CFLAGS)|g;s|-g -O2|$(CFLAGS)|g' util/Makefile.am* || die
- sed -i -e 's|which rpm |which we_are_gentoo_rpm_is_a_guest |' configure.ac || die
-
- eautoreconf
-}
-
-src_configure() {
- econf --disable-systemd --enable-sha256
-}
-
-src_compile() {
- # Ulgy workaround. Upstream is misusing the make system here
- # and it doesn't even work.
- # Please check on each bump if this workaround is still required.
- pushd lib/lanplus &>/dev/null || die
- emake
- cp libipmi_lanplus.a .. || die
- popd &>/dev/null || die
-
- emake
-}
-
-src_install() {
- emake DESTDIR="${D}" sysdto="${D}/$(systemd_get_systemunitdir)" install
- dodoc -r AUTHORS ChangeLog NEWS README TODO doc/UserGuide
-
- # Init scripts are only for Fedora
- rm -r "${ED%/}"/etc/init.d || die 'remove initscripts failed'
-
- if ! use static-libs ; then
- find "${ED}" -name '*.a' -delete || die
- fi
-}
diff --git a/sys-apps/ipmiutil/ipmiutil-3.1.6.ebuild b/sys-apps/ipmiutil/ipmiutil-3.1.6.ebuild
deleted file mode 100644
index 491bd22b5c9d..000000000000
--- a/sys-apps/ipmiutil/ipmiutil-3.1.6.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools systemd
-
-DESCRIPTION="IPMI Management Utilities"
-HOMEPAGE="http://ipmiutil.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~x86"
-IUSE="static-libs"
-
-RDEPEND=">=dev-libs/openssl-1:0="
-DEPEND="${RDEPEND}
- virtual/os-headers"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.9.8-flags.patch
- "${FILESDIR}"/${PN}-2.9.9-lib_symlink.patch
- "${FILESDIR}"/${PN}-3.1.5-fix-configure.patch
-)
-
-src_prepare() {
- default
-
- sed -i -e 's|-O2 -g|$(CFLAGS)|g;s|-g -O2|$(CFLAGS)|g' util/Makefile.am* || die
- sed -i -e 's|which rpm |which we_are_gentoo_rpm_is_a_guest |' configure.ac || die
-
- # Don't compress man pages
- sed '/gzip -nf/d' -i doc/Makefile.am || die
-
- eautoreconf
-}
-
-src_configure() {
- econf --disable-systemd --enable-sha256 --enable-lanplus
-}
-
-src_compile() {
- # Ulgy workaround. Upstream is misusing the make system here
- # and it doesn't even work.
- # Please check on each bump if this workaround is still required.
- pushd lib/lanplus &>/dev/null || die
- emake
- cp libipmi_lanplus.a .. || die
- popd &>/dev/null || die
-
- emake
-}
-
-src_install() {
- emake DESTDIR="${D}" sysdto="${D}/$(systemd_get_systemunitdir)" install
- dodoc -r AUTHORS ChangeLog NEWS README TODO doc/UserGuide
-
- # Init scripts are only for Fedora
- rm -r "${ED}"/etc/init.d || die 'remove initscripts failed'
-
- if ! use static-libs ; then
- find "${ED}" -type f -name '*.a' -delete || die
- fi
-
- keepdir /var/lib/ipmiutil
-}
diff --git a/sys-apps/ipmiutil/ipmiutil-3.1.7.ebuild b/sys-apps/ipmiutil/ipmiutil-3.1.7.ebuild
deleted file mode 100644
index 5bf9b0440aa6..000000000000
--- a/sys-apps/ipmiutil/ipmiutil-3.1.7.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools systemd
-
-DESCRIPTION="IPMI Management Utilities"
-HOMEPAGE="http://ipmiutil.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~x86"
-IUSE="static-libs"
-
-RDEPEND=">=dev-libs/openssl-1:0="
-DEPEND="${RDEPEND}
- virtual/os-headers"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.7-flags.patch
- "${FILESDIR}"/${PN}-2.9.9-lib_symlink.patch
- "${FILESDIR}"/${PN}-3.1.7-fix-configure.patch
-)
-
-src_prepare() {
- default
-
- sed -i -e 's|-O2 -g|$(CFLAGS)|g;s|-g -O2|$(CFLAGS)|g' util/Makefile.am* || die
- sed -i -e 's|which rpm |which we_are_gentoo_rpm_is_a_guest |' configure.ac || die
-
- # Don't compress man pages
- sed '/gzip -nf/d' -i doc/Makefile.am || die
-
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-systemd
- --enable-sha256
- --enable-lanplus
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- # Ulgy workaround. Upstream is misusing the make system here
- # and it doesn't even work.
- # Please check on each bump if this workaround is still required.
- pushd lib/lanplus &>/dev/null || die
- emake
- cp libipmi_lanplus.a .. || die
- popd &>/dev/null || die
-
- emake
-}
-
-src_install() {
- emake DESTDIR="${D}" sysdto="${D}/$(systemd_get_systemunitdir)" install
- dodoc -r AUTHORS ChangeLog NEWS README TODO doc/UserGuide
-
- # Init scripts are only for Fedora
- rm -r "${ED}"/etc/init.d || die 'remove initscripts failed'
-
- # --disable-static has no effect
- if ! use static-libs ; then
- find "${ED}" -type f -name '*.a' -delete || die
- fi
-
- keepdir /var/lib/ipmiutil
-}
diff --git a/sys-apps/ipmiutil/ipmiutil-3.1.9.ebuild b/sys-apps/ipmiutil/ipmiutil-3.1.9.ebuild
new file mode 100644
index 000000000000..c18cffdd971c
--- /dev/null
+++ b/sys-apps/ipmiutil/ipmiutil-3.1.9.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic systemd
+
+DESCRIPTION="IPMI Management Utilities"
+HOMEPAGE="https://ipmiutil.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ~ppc x86"
+IUSE="static-libs"
+
+RDEPEND=">=dev-libs/openssl-1:="
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.9.9-lib_symlink.patch
+ "${FILESDIR}"/${PN}-3.1.8-fix-configure.patch
+)
+
+src_prepare() {
+ default
+
+ # Fix hardcoded CFLAGS
+ sed -i \
+ -e 's|-O2 -g|$(CFLAGS)|g' \
+ -e 's|-g -O2|$(CFLAGS)|g' \
+ util/Makefile.am* || die
+
+ # The configure script makes some guarded and some blind calls to rpm &
+ # rpmbuild, that trigger sandbox warnings if rpm is installed in Gentoo.
+ sed -r -i -e 's/which rpm/false &/' configure.ac || die
+ sed -r -i -e 's/`(rpm|rpmbuild)/`false \1/' configure.ac || die
+ # Don't try to inject -O2 or hardening flags (which we set in the toolchain).
+ sed -i -e '/CFLAGS="-O2"/d' -e '/cfhard=/d' configure.ac || die
+
+ # Don't compress man pages
+ sed '/gzip -nf/d' -i doc/Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/863590
+ # https://github.com/arcress0/ipmiutil/issues/21
+ filter-lto
+
+ local myeconfargs=(
+ --disable-systemd
+ --enable-sha256
+ --enable-lanplus
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Ugly workaround. Upstream is misusing the make system here
+ # and it doesn't even work.
+ # Please check on each bump if this workaround is still required.
+ # Yup, still needed in 3.18
+ pushd lib/lanplus &>/dev/null || die
+ emake
+ cp libipmi_lanplus.a .. || die
+ popd &>/dev/null || die
+
+ emake
+}
+
+src_install() {
+ emake DESTDIR="${D}" sysdto="${D}/$(systemd_get_systemunitdir)" install
+ dodoc -r AUTHORS ChangeLog NEWS README TODO doc/UserGuide
+
+ # Init scripts are only for Fedora
+ # TODO: ship OpenRC systems for non-systemd?
+ rm -r "${ED}"/etc/init.d || die 'remove initscripts failed'
+
+ # --disable-static has no effect
+ if ! use static-libs ; then
+ find "${ED}" -type f -name '*.a' -delete || die
+ fi
+
+ keepdir /var/lib/ipmiutil
+}
diff --git a/sys-apps/ipmiutil/metadata.xml b/sys-apps/ipmiutil/metadata.xml
index 8626cad24f54..27abaae33ec1 100644
--- a/sys-apps/ipmiutil/metadata.xml
+++ b/sys-apps/ipmiutil/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sysadmin@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">ipmiutil</remote-id>
+ <remote-id type="github">arcress0/ipmiutil</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/iproute2/Manifest b/sys-apps/iproute2/Manifest
index 4106a4c3d613..3fdc9c03c957 100644
--- a/sys-apps/iproute2/Manifest
+++ b/sys-apps/iproute2/Manifest
@@ -1,4 +1,2 @@
-DIST iproute2-5.4.0.tar.xz 741328 BLAKE2B 8c7b74aa64526180e793165eb3d0f1ee07d4589fa982aa91e4e0775595c096d73677e85bb7f073cbe14e6de6b166d31efba94554f8c7df3320b168341818fcba SHA512 26d1230e10d9ba4466edd3fe95cb6f595df691eeb27b87ae845ceb9da09fe11c2e0daa8d67187121320413f9ee7131fd426182055eb285be7c4de558d9e47051
-DIST iproute2-5.7.0.tar.xz 764436 BLAKE2B 842229730139f8931c4ff3d548fe56c7c86b6bb7be5cc1a7dd896ddce34c039467fb90d0c258cdc91276edc59b9b19f53c39a36c79b54b15a78436b44c595eed SHA512 d5ef68e0eb8e84fbff68c2e7dd4097b9ceb438c928d17ede4130876802dfeafe8bf08d82b4fd39005314e0679c0b261aaa3d6a0a2ff364074a43a043a855a634
-DIST iproute2-5.8.0.tar.xz 780612 BLAKE2B 5d86af8d981f5e9582d5eb0aaffbe15891964a86f3a1da408ce2f46101b1bb6beac8d4492dab1865391c212ef596c9256b680bdcb346d440e38cbb636a23cdc1 SHA512 f2a3f7dcf5cb39ca7cd14f0e40e45641eccf4b93427c527a09fd789ac8621c5c3359769ca61fcc8bab7e915edd943c39b7c3e15cbfc497187aa6271eed0a9152
-DIST iproute2-5.9.0.tar.xz 786524 BLAKE2B 9d82cfb1b1353d2cc6c441269af234b05e1ccd190a58c67f890d74fb42b4266be91ce64277bd2b75a0b711977c0f9edc61d8655bf262d05aaebd8d73caecc0c7 SHA512 bce59b0e8d876f10f94926be7f2a7cda0de15db04fabedfe938649d486ca6d6d222523d1661b8b36ea50e35369a4730938d6ebeb80577ac0522a3432037bcd50
+DIST iproute2-6.6.0.tar.xz 917964 BLAKE2B 9d20f19c04c2bbde7a3ae53e61e4623b119570c8446f34b93ddadd64677caa432e00ee085498bc277e0842cc2124340c7100925106d0ef2c11dd8002aacac08f SHA512 21c99a3ba8e1d0047933e99b48fb00901eef18899cd5854000ae910d9d84d13aeafa48b32184775531285782909f4d283d0784491691a1f10462dab147de359d
+DIST iproute2-6.8.0.tar.xz 913512 BLAKE2B d30cdff8522627c27c9165f068f42adbec38f15548a8f2cd31276f283880dc402e10c5989e7227e80cdc891bcc4a574b330d634ae550e689758b849c0506c31f SHA512 54e50340a73c8810d69bfd54704b469149731634a97d94da08b5a305592a812131a441e5b646e32b480d61840e2ade29387e54b934effeee8ded4f06e557a5c0
diff --git a/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch b/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch
deleted file mode 100644
index fa12dad2d79e..000000000000
--- a/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-http://bugs.gentoo.org/291907
-
-This patch was merged from two patches extracted from this thread:
-http://markmail.org/thread/qkd76gpdgefpjlfn
-
-tc_stab.c: small fixes to commandline help
-
-
-tc_core.c:
-As kernel part of things relies on cell align which is always set to -1,
-I also added it to userspace computation stage. This way if someone
-specified e.g. 2048 and 512 for mtu and tsize respectively, one wouldn't
-end with tsize supporting mtu 4096 suddenly, New default mtu is also set
-to 2048 (disregarding weirdness of setting mtu to such values).
-
-
-Unless I missed something, this is harmless and feels cleaner, but if it's
-not allowed, documentation will have to be changed back to 2047 + extra
-explanation as well.
-
---- iproute2/tc/tc_core.c
-+++ iproute2/tc/tc_core.c
-@@ -155,12 +155,12 @@
- }
-
- if (s->mtu == 0)
-- s->mtu = 2047;
-+ s->mtu = 2048;
- if (s->tsize == 0)
- s->tsize = 512;
-
- s->cell_log = 0;
-- while ((s->mtu >> s->cell_log) > s->tsize - 1)
-+ while ((s->mtu - 1 >> s->cell_log) > s->tsize - 1)
- s->cell_log++;
-
- *stab = malloc(s->tsize * sizeof(__u16));
---- iproute2/tc/tc_stab.c
-+++ iproute2/tc/tc_stab.c
-@@ -32,7 +32,7 @@
- fprintf(stderr,
- "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ] \n"
- " [ overhead BYTES ] [ linklayer TYPE ] ...\n"
-- " mtu : max packet size we create rate map for {2047}\n"
-+ " mtu : max packet size we create size table for {2048}\n"
- " tsize : how many slots should size table have {512}\n"
- " mpu : minimum packet size used in rate computations\n"
- " overhead : per-packet size overhead used in rate computations\n"
diff --git a/sys-apps/iproute2/files/iproute2-4.20.0-configure-nomagic.patch b/sys-apps/iproute2/files/iproute2-4.20.0-configure-nomagic.patch
deleted file mode 100644
index 94df85017dfe..000000000000
--- a/sys-apps/iproute2/files/iproute2-4.20.0-configure-nomagic.patch
+++ /dev/null
@@ -1,208 +0,0 @@
-The hand-rolled configure script, for multiple options (selinux,mnl,elf), sets
-a variable as well as modifying CFLAGS & LDLIBS.
-
-If config.mk is later amended to disable a feature, the CFLAGS/LDLIBS tweaks
-are still in place.
-
-Push the CFLAGS/LDLIBS changes into new conditional Makefile code, so that they
-are only passed when correctly needed.
-
-Prior Gentoo testcase for reproduction:
-USE=minimal ebuild ... compile.
-- Linking with libelf, libmnl & libcap based only on presence.
-- Links based on libselinux based only on presence.
-
-Closes: https://bugs.gentoo.org/643722
-Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-
-Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org>
-Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org>
-Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org>
-
---- iproute2-4.20.0/bridge/Makefile
-+++ iproute2-4.20.0/bridge/Makefile
-@@ -2,6 +2,7 @@
- BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o
-
- include ../config.mk
-+include ../config.include
-
- all: bridge
-
---- iproute2-4.20.0/config.include
-+++ iproute2-4.20.0/config.include
-@@ -0,0 +1,26 @@
-+# We can only modify CFLAGS/LDLIBS after all the config options are known.
-+ifeq ($(IP_CONFIG_SETNS),y)
-+ CFLAGS += $(IP_CONFIG_SETNS_CFLAGS)
-+endif
-+ifeq ($(HAVE_ELF),y)
-+ CFLAGS += $(HAVE_ELF_CFLAGS)
-+ LDLIBS += $(HAVE_ELF_LDLIBS)
-+endif
-+ifeq ($(HAVE_SELINUX),y)
-+ CFLAGS += $(HAVE_SELINUX_CFLAGS)
-+ LDLIBS += $(HAVE_SELINUX_LDLIBS)
-+endif
-+ifeq ($(HAVE_MNL),y)
-+ CFLAGS += $(HAVE_MNL_CFLAGS)
-+ LDLIBS += $(HAVE_MNL_LDLIBS)
-+endif
-+ifeq ($(HAVE_CAP),y)
-+ CFLAGS += $(HAVE_CAP_CFLAGS)
-+ LDLIBS += $(HAVE_CAP_LDLIBS)
-+endif
-+
-+# Rules can only be declared after all variables in them are known.
-+%.o: %.c
-+ $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
-+
-+# vim: ft=make:
---- iproute2-4.20.0/configure
-+++ iproute2-4.20.0/configure
-@@ -188,7 +188,7 @@
- if $CC -I$INCLUDE -o $TMPDIR/setnstest $TMPDIR/setnstest.c >/dev/null 2>&1; then
- echo "IP_CONFIG_SETNS:=y" >>$CONFIG
- echo "yes"
-- echo "CFLAGS += -DHAVE_SETNS" >>$CONFIG
-+ echo "IP_CONFIG_SETNS_CFLAGS += -DHAVE_SETNS" >>$CONFIG
- else
- echo "no"
- fi
-@@ -231,8 +231,8 @@
- echo "HAVE_ELF:=y" >>$CONFIG
- echo "yes"
-
-- echo 'CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG
-- echo 'LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG
-+ echo 'HAVE_ELF_CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG
-+ echo 'HAVE_ELF_LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG
- else
- echo "no"
- fi
-@@ -245,8 +245,8 @@
- echo "HAVE_SELINUX:=y" >>$CONFIG
- echo "yes"
-
-- echo 'LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG
-- echo 'CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG
-+ echo 'HAVE_SELINUX_CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG
-+ echo 'HAVE_SELINUX_LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG
- else
- echo "no"
- fi
-@@ -258,8 +258,8 @@
- echo "HAVE_MNL:=y" >>$CONFIG
- echo "yes"
-
-- echo 'CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG
-- echo 'LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG
-+ echo 'HAVE_MNL_CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG
-+ echo 'HAVE_MNL_LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG
- else
- echo "no"
- fi
-@@ -316,8 +316,8 @@
- echo "HAVE_CAP:=y" >>$CONFIG
- echo "yes"
-
-- echo 'CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG
-- echo 'LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG
-+ echo 'HAVE_CAP_CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG
-+ echo 'HAVE_CAP_LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG
- else
- echo "no"
- fi
-@@ -397,7 +397,3 @@
-
- echo -n "libcap support: "
- check_cap
--
--echo >> $CONFIG
--echo "%.o: %.c" >> $CONFIG
--echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<' >> $CONFIG
---- iproute2-4.20.0/devlink/Makefile
-+++ iproute2-4.20.0/devlink/Makefile
-@@ -1,5 +1,6 @@
- # SPDX-License-Identifier: GPL-2.0
- include ../config.mk
-+include ../config.include
-
- TARGETS :=
-
---- iproute2-4.20.0/genl/Makefile
-+++ iproute2-4.20.0/genl/Makefile
-@@ -2,6 +2,7 @@
- GENLOBJ=genl.o
-
- include ../config.mk
-+include ../config.include
- SHARED_LIBS ?= y
-
- CFLAGS += -fno-strict-aliasing
---- iproute2-4.20.0/ip/Makefile
-+++ iproute2-4.20.0/ip/Makefile
-@@ -15,6 +15,7 @@
- RTMONOBJ=rtmon.o
-
- include ../config.mk
-+include ../config.include
-
- ALLOBJ=$(IPOBJ) $(RTMONOBJ)
- SCRIPTS=ifcfg rtpr routel routef
---- iproute2-4.20.0/lib/Makefile
-+++ iproute2-4.20.0/lib/Makefile
-@@ -1,5 +1,6 @@
- # SPDX-License-Identifier: GPL-2.0
- include ../config.mk
-+include ../config.include
-
- CFLAGS += -fPIC
-
---- iproute2-4.20.0/misc/Makefile
-+++ iproute2-4.20.0/misc/Makefile
-@@ -5,6 +5,7 @@
- TARGETS=ss nstat ifstat rtacct lnstat
-
- include ../config.mk
-+include ../config.include
-
- ifeq ($(HAVE_BERKELEY_DB),y)
- TARGETS += arpd
---- iproute2-4.20.0/netem/Makefile
-+++ iproute2-4.20.0/netem/Makefile
-@@ -1,5 +1,6 @@
- # SPDX-License-Identifier: GPL-2.0
- include ../config.mk
-+include ../config.include
-
- DISTGEN = maketable normal pareto paretonormal
- DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist
---- iproute2-4.20.0/rdma/Makefile
-+++ iproute2-4.20.0/rdma/Makefile
-@@ -1,5 +1,6 @@
- # SPDX-License-Identifier: GPL-2.0
- include ../config.mk
-+include ../config.include
-
- TARGETS :=
-
---- iproute2-4.20.0/tc/Makefile
-+++ iproute2-4.20.0/tc/Makefile
-@@ -4,6 +4,7 @@
- emp_ematch.yacc.o emp_ematch.lex.o
-
- include ../config.mk
-+include ../config.include
-
- SHARED_LIBS ?= y
-
---- iproute2-4.20.0/tipc/Makefile
-+++ iproute2-4.20.0/tipc/Makefile
-@@ -1,5 +1,6 @@
- # SPDX-License-Identifier: GPL-2.0
- include ../config.mk
-+include ../config.include
-
- TARGETS :=
-
diff --git a/sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch b/sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch
deleted file mode 100644
index 31733e99f72c..000000000000
--- a/sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- iproute2-4.20.0/ip/ipmonitor.c
-+++ iproute2-4.20.0/ip/ipmonitor.c
-@@ -118,7 +118,6 @@
-
- case RTM_NEWPREFIX:
- print_headers(fp, "[PREFIX]", ctrl);
-- print_prefix(n, arg);
- return 0;
-
- case RTM_NEWRULE:
---- iproute2-4.20.0/ip/iptunnel.c
-+++ iproute2-4.20.0/ip/iptunnel.c
-@@ -549,13 +549,6 @@
- break;
- case AF_INET:
- break;
-- /*
-- * This is silly enough but we have no easy way to make it
-- * protocol-independent because of unarranged structure between
-- * IPv4 and IPv6.
-- */
-- case AF_INET6:
-- return do_ip6tunnel(argc, argv);
- default:
- fprintf(stderr, "Unsupported protocol family: %d\n", preferred_family);
- exit(-1);
---- iproute2-4.20.0/ip/Makefile
-+++ iproute2-4.20.0/ip/Makefile
-@@ -1,7 +1,7 @@
- # SPDX-License-Identifier: GPL-2.0
- IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \
-- rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \
-- ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o iptuntap.o iptoken.o \
-+ rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \
-+ ipmaddr.o ipmonitor.o ipmroute.o iptuntap.o iptoken.o \
- ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o iplink_dummy.o \
- iplink_ifb.o iplink_nlmon.o iplink_team.o iplink_vcan.o iplink_vxcan.o \
- iplink_vlan.o link_veth.o link_gre.o iplink_can.o iplink_xdp.o \
diff --git a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch b/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch
deleted file mode 100644
index e704f65c113f..000000000000
--- a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 202d79fcf4e184818bd074f8c06e94e700670898 Mon Sep 17 00:00:00 2001
-From: Jory Pratt <anarchy@gentoo.org>
-Date: Tue, 11 Jun 2019 01:48:01 -0500
-Subject: [PATCH] including sysinfo.h from kernel.h makes no sense whatsoever,
- but removing it breaks glibc's userspace header, which includes kernel.h
- instead of sysinfo.h from their sys/sysinfo.h. this seems to be a historical
- mistake. on musl, including any header that uses kernel.h directly or
- indirectly plus sys/sysinfo.h will produce a compile error due to
- redefinition of struct sysinfo. so for now, only include it on glibc in order
- not to break their headers.
-
-Signed-off-by: Jory Pratt <anarchy@gentoo.org>
----
- include/uapi/linux/kernel.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/include/uapi/linux/kernel.h b/include/uapi/linux/kernel.h
-index d99ffa1..f917115 100644
---- a/include/uapi/linux/kernel.h
-+++ b/include/uapi/linux/kernel.h
-@@ -2,7 +2,9 @@
- #ifndef _LINUX_KERNEL_H
- #define _LINUX_KERNEL_H
-
-+#ifdef __GLIBC__
- #include <linux/sysinfo.h>
-+#endif
-
- /*
- * 'kernel.h' contains some often-used function prototypes etc
---
-2.22.0
diff --git a/sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch b/sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch
new file mode 100644
index 000000000000..888091387fe9
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch
@@ -0,0 +1,25 @@
+
+Disable the optional libbsd fallback in favor of iproute2's own
+strlcat/strlcpy routines. This prevents automagic linking and
+all sorts of other related problems.
+
+Bug: https://bugs.gentoo.org/911727
+Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
+
+--- a/configure 2023-09-05 16:20:48.000000000 +0200
++++ b/configure 2023-09-05 16:29:15.850347415 +0200
+@@ -454,14 +454,8 @@ EOF
+ if $CC -I$INCLUDE -o $TMPDIR/strtest $TMPDIR/strtest.c >/dev/null 2>&1; then
+ echo "no"
+ else
+- if ${PKG_CONFIG} libbsd --exists; then
+- echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG
+- echo 'HAVE_LIBBSD_LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG
+- echo "no"
+- else
+ echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG
+ echo "yes"
+- fi
+ fi
+ rm -f $TMPDIR/strtest.c $TMPDIR/strtest
+ }
diff --git a/sys-apps/iproute2/files/iproute2-6.5.0-configure-nomagic-nolibbsd.patch b/sys-apps/iproute2/files/iproute2-6.5.0-configure-nomagic-nolibbsd.patch
new file mode 100644
index 000000000000..4618fb9c94ef
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.5.0-configure-nomagic-nolibbsd.patch
@@ -0,0 +1,246 @@
+The hand-rolled configure script, for multiple options (selinux,mnl,elf), sets
+a variable as well as modifying CFLAGS & LDLIBS.
+
+If config.mk is later amended to disable a feature, the CFLAGS/LDLIBS tweaks
+are still in place.
+
+Push the CFLAGS/LDLIBS changes into new conditional Makefile code, so that they
+are only passed when correctly needed.
+
+Prior Gentoo testcase for reproduction:
+USE=minimal ebuild ... compile.
+- Linking with libbsd, libelf, libmnl & libcap based only on presence.
+- Links based on libselinux based only on presence.
+
+Closes: https://bugs.gentoo.org/643722
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org>
+Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org>
+Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org>
+Forward-ported from v4.20.0 to v5.11.0 by Lars Wendler <polynomial-c@gentoo.org>
+Forward-ported from v5.11.0 to v5.12.0 by Lars Wendler <polynomial-c@gentoo.org>
+
+Update 2023-09-05: Removed libbsd enforcement from config.include for bug #911727
+by Holger Hoffstätte <holger@applied-asynchrony.com>
+
+--- a/config.include
++++ b/config.include
+@@ -0,0 +1,26 @@
++# We can only modify CFLAGS/LDLIBS after all the config options are known.
++ifeq ($(IP_CONFIG_SETNS),y)
++ CFLAGS += $(IP_CONFIG_SETNS_CFLAGS)
++endif
++ifeq ($(HAVE_ELF),y)
++ CFLAGS += $(HAVE_ELF_CFLAGS)
++ LDLIBS += $(HAVE_ELF_LDLIBS)
++endif
++ifeq ($(HAVE_SELINUX),y)
++ CFLAGS += $(HAVE_SELINUX_CFLAGS)
++ LDLIBS += $(HAVE_SELINUX_LDLIBS)
++endif
++ifeq ($(HAVE_MNL),y)
++ CFLAGS += $(HAVE_MNL_CFLAGS)
++ LDLIBS += $(HAVE_MNL_LDLIBS)
++endif
++ifeq ($(HAVE_CAP),y)
++ CFLAGS += $(HAVE_CAP_CFLAGS)
++ LDLIBS += $(HAVE_CAP_LDLIBS)
++endif
++
++# Rules can only be declared after all variables in them are known.
++%.o: %.c
++ $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
++
++# vim: ft=make:
+
+--- a/bridge/Makefile
++++ b/bridge/Makefile
+@@ -2,6 +2,7 @@
+ BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o vni.o
+
+ include ../config.mk
++include ../config.include
+
+ all: bridge
+
+--- a/configure
++++ b/configure
+@@ -202,7 +202,7 @@ EOF
+ if $CC -I$INCLUDE -o $TMPDIR/setnstest $TMPDIR/setnstest.c >/dev/null 2>&1; then
+ echo "IP_CONFIG_SETNS:=y" >>$CONFIG
+ echo "yes"
+- echo "CFLAGS += -DHAVE_SETNS" >>$CONFIG
++ echo "IP_CONFIG_SETNS_CFLAGS += -DHAVE_SETNS" >>$CONFIG
+ else
+ echo "no"
+ fi
+@@ -269,8 +269,8 @@ check_elf()
+ echo "HAVE_ELF:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG
+- echo 'LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG
++ echo 'HAVE_ELF_CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG
++ echo 'HAVE_ELF_LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG
+ else
+ echo "no"
+ fi
+@@ -388,8 +388,8 @@ check_selinux()
+ echo "HAVE_SELINUX:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG
+- echo 'CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG
++ echo 'HAVE_SELINUX_CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG
++ echo 'HAVE_SELINUX_LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG
+ else
+ echo "no"
+ fi
+@@ -414,8 +414,8 @@ check_mnl()
+ echo "HAVE_MNL:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG
+- echo 'LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG
++ echo 'HAVE_MNL_CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG
++ echo 'HAVE_MNL_LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG
+ else
+ echo "no"
+ fi
+@@ -455,8 +455,8 @@ EOF
+ echo "no"
+ else
+ if ${PKG_CONFIG} libbsd --exists; then
+- echo 'CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG
+- echo 'LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG
++ echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG
++ echo 'HAVE_LIBBSD_LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG
+ echo "no"
+ else
+ echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG
+@@ -472,8 +472,8 @@ check_cap()
+ echo "HAVE_CAP:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG
+- echo 'LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG
++ echo 'HAVE_CAP_CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG
++ echo 'HAVE_CAP_LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG
+ else
+ echo "no"
+ fi
+@@ -633,7 +633,3 @@ check_strlcpy
+
+ echo -n "libcap support: "
+ check_cap
+-
+-echo >> $CONFIG
+-echo "%.o: %.c" >> $CONFIG
+-echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<' >> $CONFIG
+--- a/dcb/Makefile
++++ b/dcb/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ DCBOBJ = dcb.o \
+ dcb_app.o \
+--- a/devlink/Makefile
++++ b/devlink/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ DEVLINKOBJ = devlink.o mnlg.o
+ TARGETS += devlink
+--- a/genl/Makefile
++++ b/genl/Makefile
+@@ -2,6 +2,7 @@
+ GENLOBJ=genl.o
+
+ include ../config.mk
++include ../config.include
+ SHARED_LIBS ?= y
+
+ CFLAGS += -fno-strict-aliasing
+--- a/ip/Makefile
++++ b/ip/Makefile
+@@ -18,6 +18,7 @@ IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \
+ RTMONOBJ=rtmon.o
+
+ include ../config.mk
++include ../config.include
+
+ ALLOBJ=$(IPOBJ) $(RTMONOBJ)
+ SCRIPTS=routel
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ CFLAGS += -fPIC
+
+--- a/misc/Makefile
++++ b/misc/Makefile
+@@ -5,6 +5,7 @@ LNSTATOBJ=lnstat.o lnstat_util.o
+ TARGETS=ss nstat ifstat rtacct lnstat
+
+ include ../config.mk
++include ../config.include
+
+ ifeq ($(HAVE_BERKELEY_DB),y)
+ TARGETS += arpd
+--- a/netem/Makefile
++++ b/netem/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ DISTGEN = maketable normal pareto paretonormal
+ DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist
+--- a/rdma/Makefile
++++ b/rdma/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
+ include ../config.mk
++include ../config.include
+
+ CFLAGS += -I./include/uapi/
+
+--- a/tc/Makefile
++++ b/tc/Makefile
+@@ -4,6 +4,7 @@ TCOBJ= tc.o tc_qdisc.o tc_class.o tc_filter.o tc_util.o tc_monitor.o \
+ emp_ematch.tab.o emp_ematch.lex.o
+
+ include ../config.mk
++include ../config.include
+
+ SHARED_LIBS ?= y
+
+--- a/tipc/Makefile
++++ b/tipc/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ TIPCOBJ=bearer.o \
+ cmdl.o link.o \
+--- a/vdpa/Makefile
++++ b/vdpa/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ CFLAGS += -I./include/uapi/
+ VDPAOBJ = vdpa.o
+--
+2.42.0
+
diff --git a/sys-apps/iproute2/files/iproute2-6.5.0-mtu.patch b/sys-apps/iproute2/files/iproute2-6.5.0-mtu.patch
new file mode 100644
index 000000000000..f2895021eb1b
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.5.0-mtu.patch
@@ -0,0 +1,50 @@
+http://bugs.gentoo.org/291907
+
+This patch was merged from two patches extracted from this thread:
+http://markmail.org/thread/qkd76gpdgefpjlfn
+
+tc_stab.c: small fixes to commandline help
+
+
+tc_core.c:
+As kernel part of things relies on cell align which is always set to -1,
+I also added it to userspace computation stage. This way if someone
+specified e.g. 2048 and 512 for mtu and tsize respectively, one wouldn't
+end with tsize supporting mtu 4096 suddenly, New default mtu is also set
+to 2048 (disregarding weirdness of setting mtu to such values).
+
+
+Unless I missed something, this is harmless and feels cleaner, but if it's
+not allowed, documentation will have to be changed back to 2047 + extra
+explanation as well.
+--- a/tc/tc_core.c
++++ b/tc/tc_core.c
+@@ -197,12 +197,12 @@ int tc_calc_size_table(struct tc_sizespec *s, __u16 **stab)
+ }
+
+ if (s->mtu == 0)
+- s->mtu = 2047;
++ s->mtu = 2048;
+ if (s->tsize == 0)
+ s->tsize = 512;
+
+ s->cell_log = 0;
+- while ((s->mtu >> s->cell_log) > s->tsize - 1)
++ while ((s->mtu - 1 >> s->cell_log) > s->tsize - 1)
+ s->cell_log++;
+
+ *stab = malloc(s->tsize * sizeof(__u16));
+--- a/tc/tc_stab.c
++++ b/tc/tc_stab.c
+@@ -27,7 +27,7 @@ static void stab_help(void)
+ fprintf(stderr,
+ "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ]\n"
+ " [ overhead BYTES ] [ linklayer TYPE ] ...\n"
+- " mtu : max packet size we create rate map for {2047}\n"
++ " mtu : max packet size we create size table for {2048}\n"
+ " tsize : how many slots should size table have {512}\n"
+ " mpu : minimum packet size used in rate computations\n"
+ " overhead : per-packet size overhead used in rate computations\n"
+--
+2.42.0
+
diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch b/sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch
new file mode 100644
index 000000000000..0969ff0a7ab9
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch
@@ -0,0 +1,25 @@
+https://lore.kernel.org/netdev/20231202024705.1375296-1-sam@gentoo.org/T/#u
+
+From 3dc0bf34c1571429c08a8d0c08a69502e3e4575c Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 2 Dec 2023 02:46:05 +0000
+Subject: [PATCH] configure: Add _GNU_SOURCE to strlcpy configure test
+
+>=glibc-2.38 adds strlcpy but it's guarded under a feature-test macro. Just
+add _GNU_SOURCE to the configure test because we already pass _GNU_SOURCE unconditionally
+in the Makefiles when building iproute2.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure
++++ b/configure
+@@ -445,6 +445,7 @@ EOF
+ check_strlcpy()
+ {
+ cat >$TMPDIR/strtest.c <<EOF
++#define _GNU_SOURCE
+ #include <string.h>
+ int main(int argc, char **argv) {
+ char dst[10];
+--
+2.43.0
+
diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch b/sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch
new file mode 100644
index 000000000000..03c125accc8c
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/920054
+https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/patch/?id=962692356a1cc41932e43575f3c50927e455ab53
+
+From 962692356a1cc41932e43575f3c50927e455ab53 Mon Sep 17 00:00:00 2001
+From: Andrea Claudi <aclaudi@redhat.com>
+Date: Wed, 15 Nov 2023 18:25:35 +0100
+Subject: Makefile: use /usr/share/iproute2 for config files
+
+According to FHS:
+
+"/usr/lib includes object files and libraries. On some systems, it may
+also include internal binaries that are not intended to be executed
+directly by users or shell scripts."
+
+A better directory to store config files is /usr/share:
+
+"The /usr/share hierarchy is for all read-only architecture independent
+data files.
+
+This hierarchy is intended to be shareable among all architecture
+platforms of a given OS; thus, for example, a site with i386, Alpha, and
+PPC platforms might maintain a single /usr/share directory that is
+centrally-mounted."
+
+Accordingly, move configuration files to $(DATADIR)/iproute2.
+
+Fixes: 946753a4459b ("Makefile: ensure CONF_USR_DIR honours the libdir config")
+Reported-by: Luca Boccassi <luca.boccassi@gmail.com>
+Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
+Acked-by: Luca Boccassi <bluca@debian.org>
+Reviewed-by: Simon Horman <horms@kernel.org>
+Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index a24844cf0..8024d45ec 100644
+--- a/Makefile
++++ b/Makefile
+@@ -16,12 +16,12 @@ endif
+
+ PREFIX?=/usr
+ SBINDIR?=/sbin
+-CONF_ETC_DIR?=/etc/iproute2
+-CONF_USR_DIR?=$(PREFIX)/lib/iproute2
+ NETNS_RUN_DIR?=/var/run/netns
+ NETNS_ETC_DIR?=/etc/netns
+ DATADIR?=$(PREFIX)/share
+ HDRDIR?=$(PREFIX)/include/iproute2
++CONF_ETC_DIR?=/etc/iproute2
++CONF_USR_DIR?=$(DATADIR)/iproute2
+ DOCDIR?=$(DATADIR)/doc/iproute2
+ MANDIR?=$(DATADIR)/man
+ ARPDDIR?=/var/lib/arpd
+--
+cgit 1.2.3-korg
diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch b/sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch
new file mode 100644
index 000000000000..79be096af231
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch
@@ -0,0 +1,38 @@
+https://bugs.gentoo.org/920054
+https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/patch/?id=deb66acabe44d103c8368b62a76ef37aa074748d
+
+From deb66acabe44d103c8368b62a76ef37aa074748d Mon Sep 17 00:00:00 2001
+From: Luca Boccassi <bluca@debian.org>
+Date: Mon, 6 Nov 2023 00:14:10 +0000
+Subject: Revert "Makefile: ensure CONF_USR_DIR honours the libdir config"
+
+LIBDIR in Debian and derivatives is not /usr/lib/, it's
+/usr/lib/<architecture triplet>/, which is different, and it's the
+wrong location where to install architecture-independent default
+configuration files, which should always go to /usr/lib/ instead.
+Installing these files to the per-architecture directory is not
+the right thing, hence revert the change.
+
+This reverts commit 946753a4459bd035132a27bb2eb87529c1979b90.
+
+Signed-off-by: Luca Boccassi <bluca@debian.org>
+Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 5c559c8dc..a24844cf0 100644
+--- a/Makefile
++++ b/Makefile
+@@ -17,7 +17,7 @@ endif
+ PREFIX?=/usr
+ SBINDIR?=/sbin
+ CONF_ETC_DIR?=/etc/iproute2
+-CONF_USR_DIR?=$(LIBDIR)/iproute2
++CONF_USR_DIR?=$(PREFIX)/lib/iproute2
+ NETNS_RUN_DIR?=/var/run/netns
+ NETNS_ETC_DIR?=/etc/netns
+ DATADIR?=$(PREFIX)/share
+--
+cgit 1.2.3-korg
diff --git a/sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch b/sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch
new file mode 100644
index 000000000000..04ef44ad826e
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch
@@ -0,0 +1,243 @@
+The hand-rolled configure script, for multiple options (selinux,mnl,elf), sets
+a variable as well as modifying CFLAGS & LDLIBS.
+
+If config.mk is later amended to disable a feature, the CFLAGS/LDLIBS tweaks
+are still in place.
+
+Push the CFLAGS/LDLIBS changes into new conditional Makefile code, so that they
+are only passed when correctly needed.
+
+Prior Gentoo testcase for reproduction:
+USE=minimal ebuild ... compile.
+- Linking with libbsd, libelf, libmnl & libcap based only on presence.
+- Links based on libselinux based only on presence.
+
+Closes: https://bugs.gentoo.org/643722
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org>
+Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org>
+Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org>
+Forward-ported from v4.20.0 to v5.11.0 by Lars Wendler <polynomial-c@gentoo.org>
+Forward-ported from v5.11.0 to v5.12.0 by Lars Wendler <polynomial-c@gentoo.org>
+
+Update 2023-09-05: Removed libbsd enforcement from config.include for bug #911727
+by Holger Hoffstätte <holger@applied-asynchrony.com>
+
+--- a/config.include
++++ b/config.include
+@@ -0,0 +1,26 @@
++# We can only modify CFLAGS/LDLIBS after all the config options are known.
++ifeq ($(IP_CONFIG_SETNS),y)
++ CFLAGS += $(IP_CONFIG_SETNS_CFLAGS)
++endif
++ifeq ($(HAVE_ELF),y)
++ CFLAGS += $(HAVE_ELF_CFLAGS)
++ LDLIBS += $(HAVE_ELF_LDLIBS)
++endif
++ifeq ($(HAVE_SELINUX),y)
++ CFLAGS += $(HAVE_SELINUX_CFLAGS)
++ LDLIBS += $(HAVE_SELINUX_LDLIBS)
++endif
++ifeq ($(HAVE_MNL),y)
++ CFLAGS += $(HAVE_MNL_CFLAGS)
++ LDLIBS += $(HAVE_MNL_LDLIBS)
++endif
++ifeq ($(HAVE_CAP),y)
++ CFLAGS += $(HAVE_CAP_CFLAGS)
++ LDLIBS += $(HAVE_CAP_LDLIBS)
++endif
++
++# Rules can only be declared after all variables in them are known.
++%.o: %.c
++ $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<
++
++# vim: ft=make:
+
+--- a/bridge/Makefile
++++ b/bridge/Makefile
+@@ -2,6 +2,7 @@
+ BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o vni.o
+
+ include ../config.mk
++include ../config.include
+
+ all: bridge
+
+--- a/configure
++++ b/configure
+@@ -154,7 +154,7 @@ EOF
+ if $CC -I$INCLUDE -o $TMPDIR/setnstest $TMPDIR/setnstest.c >/dev/null 2>&1; then
+ echo "IP_CONFIG_SETNS:=y" >>$CONFIG
+ echo "yes"
+- echo "CFLAGS += -DHAVE_SETNS" >>$CONFIG
++ echo "IP_CONFIG_SETNS_CFLAGS += -DHAVE_SETNS" >>$CONFIG
+ else
+ echo "no"
+ fi
+@@ -221,8 +221,8 @@ check_elf()
+ echo "HAVE_ELF:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'CFLAGS += -DHAVE_ELF' "$(${PKG_CONFIG} libelf --cflags)" >> $CONFIG
+- echo 'LDLIBS += ' "$(${PKG_CONFIG} libelf --libs)" >>$CONFIG
++ echo 'HAVE_ELF_CFLAGS += -DHAVE_ELF' "$(${PKG_CONFIG} libelf --cflags)" >> $CONFIG
++ echo 'HAVE_ELF_LDLIBS += ' "$(${PKG_CONFIG} libelf --libs)" >>$CONFIG
+ else
+ echo "no"
+ fi
+@@ -340,8 +340,8 @@ check_selinux()
+ echo "HAVE_SELINUX:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'LDLIBS +=' "$(${PKG_CONFIG} --libs libselinux)" >>$CONFIG
+- echo 'CFLAGS += -DHAVE_SELINUX' "$(${PKG_CONFIG} --cflags libselinux)" >>$CONFIG
++ echo 'HAVE_SELINUX_LDLIBS +=' "$(${PKG_CONFIG} --libs libselinux)" >>$CONFIG
++ echo 'HAVE_SELINUX_CFLAGS += -DHAVE_SELINUX' "$(${PKG_CONFIG} --cflags libselinux)" >>$CONFIG
+ else
+ echo "no"
+ fi
+@@ -366,8 +366,8 @@ check_mnl()
+ echo "HAVE_MNL:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'CFLAGS += -DHAVE_LIBMNL' "$(${PKG_CONFIG} libmnl --cflags)" >>$CONFIG
+- echo 'LDLIBS +=' "$(${PKG_CONFIG} libmnl --libs)" >> $CONFIG
++ echo 'HAVE_MNL_CFLAGS += -DHAVE_LIBMNL' "$(${PKG_CONFIG} libmnl --cflags)" >>$CONFIG
++ echo 'HAVE_MNL_LDLIBS +=' "$(${PKG_CONFIG} libmnl --libs)" >> $CONFIG
+ else
+ echo "no"
+ fi
+@@ -408,8 +408,8 @@ EOF
+ echo "no"
+ else
+ if ${PKG_CONFIG} libbsd --exists; then
+- echo 'CFLAGS += -DHAVE_LIBBSD' "$(${PKG_CONFIG} libbsd --cflags)" >>$CONFIG
+- echo 'LDLIBS +=' "$(${PKG_CONFIG} libbsd --libs)" >> $CONFIG
++ echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' "$(${PKG_CONFIG} libbsd --cflags)" >>$CONFIG
++ echo 'HAVE_LIBBSD_LDLIBS +=' "$(${PKG_CONFIG} libbsd --libs)" >> $CONFIG
+ echo "no"
+ else
+ echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG
+@@ -425,8 +425,8 @@ check_cap()
+ echo "HAVE_CAP:=y" >>$CONFIG
+ echo "yes"
+
+- echo 'CFLAGS += -DHAVE_LIBCAP' "$(${PKG_CONFIG} libcap --cflags)" >>$CONFIG
+- echo 'LDLIBS +=' "$(${PKG_CONFIG} libcap --libs)" >> $CONFIG
++ echo 'HAVE_CAP_CFLAGS += -DHAVE_LIBCAP' "$(${PKG_CONFIG} libcap --cflags)" >>$CONFIG
++ echo 'HAVE_CAP_LDLIBS +=' "$(${PKG_CONFIG} libcap --libs)" >> $CONFIG
+ else
+ echo "no"
+ fi
+@@ -614,7 +614,3 @@ check_cap
+
+ echo -n "color output: "
+ check_color
+-
+-echo >> $CONFIG
+-echo "%.o: %.c" >> $CONFIG
+-echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<' >> $CONFIG
+--- a/dcb/Makefile
++++ b/dcb/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ DCBOBJ = dcb.o \
+ dcb_app.o \
+--- a/devlink/Makefile
++++ b/devlink/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ DEVLINKOBJ = devlink.o mnlg.o
+ TARGETS += devlink
+--- a/genl/Makefile
++++ b/genl/Makefile
+@@ -2,6 +2,7 @@
+ GENLOBJ=genl.o
+
+ include ../config.mk
++include ../config.include
+ SHARED_LIBS ?= y
+
+ CFLAGS += -fno-strict-aliasing
+--- a/ip/Makefile
++++ b/ip/Makefile
+@@ -18,6 +18,7 @@ IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \
+ RTMONOBJ=rtmon.o
+
+ include ../config.mk
++include ../config.include
+
+ ALLOBJ=$(IPOBJ) $(RTMONOBJ)
+ SCRIPTS=routel
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ CFLAGS += -fPIC
+
+--- a/misc/Makefile
++++ b/misc/Makefile
+@@ -5,6 +5,7 @@ LNSTATOBJ=lnstat.o lnstat_util.o
+ TARGETS=ss nstat ifstat rtacct lnstat
+
+ include ../config.mk
++include ../config.include
+
+ ifeq ($(HAVE_BERKELEY_DB),y)
+ TARGETS += arpd
+--- a/netem/Makefile
++++ b/netem/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ DISTGEN = maketable normal pareto paretonormal
+ DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist
+--- a/rdma/Makefile
++++ b/rdma/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
+ include ../config.mk
++include ../config.include
+
+ CFLAGS += -I./include/uapi/
+
+--- a/tc/Makefile
++++ b/tc/Makefile
+@@ -4,6 +4,7 @@ TCOBJ= tc.o tc_qdisc.o tc_class.o tc_filter.o tc_util.o tc_monitor.o \
+ emp_ematch.tab.o emp_ematch.lex.o
+
+ include ../config.mk
++include ../config.include
+
+ SHARED_LIBS ?= y
+
+--- a/tipc/Makefile
++++ b/tipc/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ TIPCOBJ=bearer.o \
+ cmdl.o link.o \
+--- a/vdpa/Makefile
++++ b/vdpa/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ CFLAGS += -I./include/uapi/
+ VDPAOBJ = vdpa.o
diff --git a/sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch b/sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch
new file mode 100644
index 000000000000..0c1eef227499
--- /dev/null
+++ b/sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch
@@ -0,0 +1,25 @@
+
+Disable the optional libbsd fallback in favor of iproute2's own
+strlcat/strlcpy routines. This prevents automagic linking and
+all sorts of other related problems.
+
+Bug: https://bugs.gentoo.org/911727
+Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
+
+--- a/configure
++++ b/configure
+@@ -407,14 +407,8 @@ EOF
+ if $CC -I$INCLUDE -o $TMPDIR/strtest $TMPDIR/strtest.c >/dev/null 2>&1; then
+ echo "no"
+ else
+- if ${PKG_CONFIG} libbsd --exists; then
+- echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' "$(${PKG_CONFIG} libbsd --cflags)" >>$CONFIG
+- echo 'HAVE_LIBBSD_LDLIBS +=' "$(${PKG_CONFIG} libbsd --libs)" >> $CONFIG
+- echo "no"
+- else
+ echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG
+ echo "yes"
+- fi
+ fi
+ rm -f $TMPDIR/strtest.c $TMPDIR/strtest
+ }
diff --git a/sys-apps/iproute2/iproute2-5.4.0.ebuild b/sys-apps/iproute2/iproute2-5.4.0.ebuild
deleted file mode 100644
index f568584fdff2..000000000000
--- a/sys-apps/iproute2/iproute2-5.4.0.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs flag-o-matic multilib
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-fi
-
-DESCRIPTION="kernel routing and traffic control utilities"
-HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="atm berkdb caps elf +iptables ipv6 minimal selinux"
-
-# We could make libmnl optional, but it's tiny, so eh
-RDEPEND="
- !net-misc/arpd
- dev-libs/libbsd
- !minimal? ( net-libs/libmnl )
- caps? ( sys-libs/libcap )
- elf? ( virtual/libelf )
- iptables? ( >=net-firewall/iptables-1.4.20:= )
- berkdb? ( sys-libs/db:= )
- atm? ( net-dialup/linux-atm )
- selinux? ( sys-libs/libselinux )
-"
-# We require newer linux-headers for ipset support #549948 and some defines #553876
-DEPEND="
- ${RDEPEND}
- >=sys-kernel/linux-headers-3.16
-"
-BDEPEND="
- app-arch/xz-utils
- >=sys-devel/bison-2.4
- sys-devel/flex
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
- "${FILESDIR}"/${PN}-4.20.0-configure-nomagic.patch # bug 643722
- "${FILESDIR}"/${PN}-5.1.0-portability.patch
-)
-
-src_prepare() {
- if ! use ipv6 ; then
- PATCHES+=(
- "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849
- )
- fi
-
- default
-
- # echo -n is not POSIX compliant
- sed 's@echo -n@printf@' -i configure || die
-
- sed -i \
- -e '/^CC :\?=/d' \
- -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
- -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
- -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
- -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
- Makefile || die
-
- # Use /run instead of /var/run.
- sed -i \
- -e 's:/var/run:/run:g' \
- include/namespace.h \
- man/man8/ip-netns.8 || die
-
- # build against system headers
- rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
- sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
-
- if use minimal ; then
- sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
- fi
-}
-
-src_configure() {
- tc-export AR CC PKG_CONFIG
-
- # This sure is ugly. Should probably move into toolchain-funcs at some point.
- local setns
- pushd "${T}" >/dev/null
- printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
- echo 'int main(){return 0;}' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
- popd >/dev/null
-
- # run "configure" script first which will create "config.mk"...
- econf
-
- # ...now switch on/off requested features via USE flags
- # this is only useful if the test did not set other things, per bug #643722
- cat <<-EOF >> config.mk
- TC_CONFIG_ATM := $(usex atm y n)
- TC_CONFIG_XT := $(usex iptables y n)
- TC_CONFIG_NO_XT := $(usex iptables n y)
- # We've locked in recent enough kernel headers #549948
- TC_CONFIG_IPSET := y
- HAVE_BERKELEY_DB := $(usex berkdb y n)
- HAVE_CAP := $(usex caps y n)
- HAVE_MNL := $(usex minimal n y)
- HAVE_ELF := $(usex elf y n)
- HAVE_SELINUX := $(usex selinux y n)
- IP_CONFIG_SETNS := ${setns}
- # Use correct iptables dir, #144265 #293709
- IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
- EOF
-}
-
-src_compile() {
- emake V=1
-}
-
-src_install() {
- if use minimal ; then
- into /
- dosbin tc/tc
- dobin ip/ip
- return 0
- fi
-
- emake \
- DESTDIR="${D}" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}"/$(get_libdir) \
- SBINDIR="${EPREFIX}"/sbin \
- CONFDIR="${EPREFIX}"/etc/iproute2 \
- DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
- MANDIR="${EPREFIX}"/usr/share/man \
- ARPDDIR="${EPREFIX}"/var/lib/arpd \
- install
-
- dodir /bin
- mv "${ED}"/{s,}bin/ip || die #330115
-
- dolib.a lib/libnetlink.a
- insinto /usr/include
- doins include/libnetlink.h
- # This local header pulls in a lot of linux headers it
- # doesn't directly need. Delete this header that requires
- # linux-headers-3.8 until that goes stable. #467716
- sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die
-
- if use berkdb ; then
- keepdir /var/lib/arpd
- # bug 47482, arpd doesn't need to be in /sbin
- dodir /usr/bin
- mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
- fi
-}
diff --git a/sys-apps/iproute2/iproute2-5.7.0.ebuild b/sys-apps/iproute2/iproute2-5.7.0.ebuild
deleted file mode 100644
index 2fbe1b38277b..000000000000
--- a/sys-apps/iproute2/iproute2-5.7.0.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs flag-o-matic multilib
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-fi
-
-DESCRIPTION="kernel routing and traffic control utilities"
-HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="atm berkdb caps elf +iptables ipv6 minimal selinux"
-
-# We could make libmnl optional, but it's tiny, so eh
-RDEPEND="
- !net-misc/arpd
- dev-libs/libbsd
- !minimal? ( net-libs/libmnl )
- caps? ( sys-libs/libcap )
- elf? ( virtual/libelf )
- iptables? ( >=net-firewall/iptables-1.4.20:= )
- berkdb? ( sys-libs/db:= )
- atm? ( net-dialup/linux-atm )
- selinux? ( sys-libs/libselinux )
-"
-# We require newer linux-headers for ipset support #549948 and some defines #553876
-DEPEND="
- ${RDEPEND}
- >=sys-kernel/linux-headers-3.16
-"
-BDEPEND="
- app-arch/xz-utils
- >=sys-devel/bison-2.4
- sys-devel/flex
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
- "${FILESDIR}"/${PN}-4.20.0-configure-nomagic.patch # bug 643722
- "${FILESDIR}"/${PN}-5.1.0-portability.patch
- "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
-)
-
-src_prepare() {
- if ! use ipv6 ; then
- PATCHES+=(
- "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849
- )
- fi
-
- default
-
- # echo -n is not POSIX compliant
- sed 's@echo -n@printf@' -i configure || die
-
- sed -i \
- -e '/^CC :\?=/d' \
- -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
- -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
- -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
- -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
- Makefile || die
-
- # build against system headers
- rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
- sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
-
- if use minimal ; then
- sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
- fi
-}
-
-src_configure() {
- tc-export AR CC PKG_CONFIG
-
- # This sure is ugly. Should probably move into toolchain-funcs at some point.
- local setns
- pushd "${T}" >/dev/null
- printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
- echo 'int main(){return 0;}' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
- popd >/dev/null
-
- # run "configure" script first which will create "config.mk"...
- econf
-
- # ...now switch on/off requested features via USE flags
- # this is only useful if the test did not set other things, per bug #643722
- cat <<-EOF >> config.mk
- TC_CONFIG_ATM := $(usex atm y n)
- TC_CONFIG_XT := $(usex iptables y n)
- TC_CONFIG_NO_XT := $(usex iptables n y)
- # We've locked in recent enough kernel headers #549948
- TC_CONFIG_IPSET := y
- HAVE_BERKELEY_DB := $(usex berkdb y n)
- HAVE_CAP := $(usex caps y n)
- HAVE_MNL := $(usex minimal n y)
- HAVE_ELF := $(usex elf y n)
- HAVE_SELINUX := $(usex selinux y n)
- IP_CONFIG_SETNS := ${setns}
- # Use correct iptables dir, #144265 #293709
- IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
- EOF
-}
-
-src_compile() {
- emake V=1 NETNS_RUN_DIR=/run/netns
-}
-
-src_install() {
- if use minimal ; then
- into /
- dosbin tc/tc
- dobin ip/ip
- return 0
- fi
-
- emake \
- DESTDIR="${D}" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}"/$(get_libdir) \
- SBINDIR="${EPREFIX}"/sbin \
- CONFDIR="${EPREFIX}"/etc/iproute2 \
- DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
- MANDIR="${EPREFIX}"/usr/share/man \
- ARPDDIR="${EPREFIX}"/var/lib/arpd \
- install
-
- dodir /bin
- mv "${ED}"/{s,}bin/ip || die #330115
-
- dolib.a lib/libnetlink.a
- insinto /usr/include
- doins include/libnetlink.h
- # This local header pulls in a lot of linux headers it
- # doesn't directly need. Delete this header that requires
- # linux-headers-3.8 until that goes stable. #467716
- sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die
-
- if use berkdb ; then
- keepdir /var/lib/arpd
- # bug 47482, arpd doesn't need to be in /sbin
- dodir /usr/bin
- mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
- elif [[ -d "${ED}"/var/lib/arpd ]]; then
- rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
- fi
-}
diff --git a/sys-apps/iproute2/iproute2-5.8.0.ebuild b/sys-apps/iproute2/iproute2-5.8.0.ebuild
deleted file mode 100644
index 6a78d7f40fb6..000000000000
--- a/sys-apps/iproute2/iproute2-5.8.0.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs flag-o-matic multilib
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-DESCRIPTION="kernel routing and traffic control utilities"
-HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="atm berkdb caps elf +iptables ipv6 minimal selinux"
-
-# We could make libmnl optional, but it's tiny, so eh
-RDEPEND="
- !net-misc/arpd
- dev-libs/libbsd
- !minimal? ( net-libs/libmnl )
- caps? ( sys-libs/libcap )
- elf? ( virtual/libelf )
- iptables? ( >=net-firewall/iptables-1.4.20:= )
- berkdb? ( sys-libs/db:= )
- atm? ( net-dialup/linux-atm )
- selinux? ( sys-libs/libselinux )
-"
-# We require newer linux-headers for ipset support #549948 and some defines #553876
-DEPEND="
- ${RDEPEND}
- >=sys-kernel/linux-headers-3.16
-"
-BDEPEND="
- app-arch/xz-utils
- >=sys-devel/bison-2.4
- sys-devel/flex
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
- "${FILESDIR}"/${PN}-4.20.0-configure-nomagic.patch # bug 643722
- "${FILESDIR}"/${PN}-5.1.0-portability.patch
- "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
-)
-
-src_prepare() {
- if ! use ipv6 ; then
- PATCHES+=(
- "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849
- )
- fi
-
- default
-
- # echo -n is not POSIX compliant
- sed 's@echo -n@printf@' -i configure || die
-
- sed -i \
- -e '/^CC :\?=/d' \
- -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
- -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
- -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
- -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
- Makefile || die
-
- # build against system headers
- rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
- sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
-
- if use minimal ; then
- sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
- fi
-}
-
-src_configure() {
- tc-export AR CC PKG_CONFIG
-
- # This sure is ugly. Should probably move into toolchain-funcs at some point.
- local setns
- pushd "${T}" >/dev/null
- printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
- echo 'int main(){return 0;}' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
- popd >/dev/null
-
- # run "configure" script first which will create "config.mk"...
- econf
-
- # ...now switch on/off requested features via USE flags
- # this is only useful if the test did not set other things, per bug #643722
- cat <<-EOF >> config.mk
- TC_CONFIG_ATM := $(usex atm y n)
- TC_CONFIG_XT := $(usex iptables y n)
- TC_CONFIG_NO_XT := $(usex iptables n y)
- # We've locked in recent enough kernel headers #549948
- TC_CONFIG_IPSET := y
- HAVE_BERKELEY_DB := $(usex berkdb y n)
- HAVE_CAP := $(usex caps y n)
- HAVE_MNL := $(usex minimal n y)
- HAVE_ELF := $(usex elf y n)
- HAVE_SELINUX := $(usex selinux y n)
- IP_CONFIG_SETNS := ${setns}
- # Use correct iptables dir, #144265 #293709
- IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
- EOF
-}
-
-src_compile() {
- emake V=1 NETNS_RUN_DIR=/run/netns
-}
-
-src_install() {
- if use minimal ; then
- into /
- dosbin tc/tc
- dobin ip/ip
- return 0
- fi
-
- emake \
- DESTDIR="${D}" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}"/$(get_libdir) \
- SBINDIR="${EPREFIX}"/sbin \
- CONFDIR="${EPREFIX}"/etc/iproute2 \
- DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
- MANDIR="${EPREFIX}"/usr/share/man \
- ARPDDIR="${EPREFIX}"/var/lib/arpd \
- install
-
- dodir /bin
- mv "${ED}"/{s,}bin/ip || die #330115
-
- dolib.a lib/libnetlink.a
- insinto /usr/include
- doins include/libnetlink.h
- # This local header pulls in a lot of linux headers it
- # doesn't directly need. Delete this header that requires
- # linux-headers-3.8 until that goes stable. #467716
- sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die
-
- if use berkdb ; then
- keepdir /var/lib/arpd
- # bug 47482, arpd doesn't need to be in /sbin
- dodir /usr/bin
- mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
- elif [[ -d "${ED}"/var/lib/arpd ]]; then
- rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
- fi
-}
diff --git a/sys-apps/iproute2/iproute2-5.9.0.ebuild b/sys-apps/iproute2/iproute2-5.9.0.ebuild
deleted file mode 100644
index 6bccbe4b7ea6..000000000000
--- a/sys-apps/iproute2/iproute2-5.9.0.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs flag-o-matic multilib
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-DESCRIPTION="kernel routing and traffic control utilities"
-HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="atm berkdb caps elf +iptables ipv6 minimal selinux"
-
-# We could make libmnl optional, but it's tiny, so eh
-RDEPEND="
- !net-misc/arpd
- dev-libs/libbsd
- !minimal? ( net-libs/libmnl )
- caps? ( sys-libs/libcap )
- elf? ( virtual/libelf )
- iptables? ( >=net-firewall/iptables-1.4.20:= )
- berkdb? ( sys-libs/db:= )
- atm? ( net-dialup/linux-atm )
- selinux? ( sys-libs/libselinux )
-"
-# We require newer linux-headers for ipset support #549948 and some defines #553876
-DEPEND="
- ${RDEPEND}
- >=sys-kernel/linux-headers-3.16
-"
-BDEPEND="
- app-arch/xz-utils
- >=sys-devel/bison-2.4
- sys-devel/flex
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
- "${FILESDIR}"/${PN}-4.20.0-configure-nomagic.patch # bug 643722
- "${FILESDIR}"/${PN}-5.1.0-portability.patch
- "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
-)
-
-src_prepare() {
- if ! use ipv6 ; then
- PATCHES+=(
- "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849
- )
- fi
-
- default
-
- # Fix version if necessary
- local versionfile="include/version.h"
- if ! grep -Fq "${PV}" ${versionfile} ; then
- elog "Fixing version string"
- sed "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
- -i ${versionfile} || die
- fi
-
- # echo -n is not POSIX compliant
- sed 's@echo -n@printf@' -i configure || die
-
- sed -i \
- -e '/^CC :\?=/d' \
- -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
- -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
- -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
- -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
- Makefile || die
-
- # build against system headers
- rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
- sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
-
- if use minimal ; then
- sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
- fi
-}
-
-src_configure() {
- tc-export AR CC PKG_CONFIG
-
- # This sure is ugly. Should probably move into toolchain-funcs at some point.
- local setns
- pushd "${T}" >/dev/null
- printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
- echo 'int main(){return 0;}' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
- popd >/dev/null
-
- # run "configure" script first which will create "config.mk"...
- econf
-
- # ...now switch on/off requested features via USE flags
- # this is only useful if the test did not set other things, per bug #643722
- cat <<-EOF >> config.mk
- TC_CONFIG_ATM := $(usex atm y n)
- TC_CONFIG_XT := $(usex iptables y n)
- TC_CONFIG_NO_XT := $(usex iptables n y)
- # We've locked in recent enough kernel headers #549948
- TC_CONFIG_IPSET := y
- HAVE_BERKELEY_DB := $(usex berkdb y n)
- HAVE_CAP := $(usex caps y n)
- HAVE_MNL := $(usex minimal n y)
- HAVE_ELF := $(usex elf y n)
- HAVE_SELINUX := $(usex selinux y n)
- IP_CONFIG_SETNS := ${setns}
- # Use correct iptables dir, #144265 #293709
- IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
- EOF
-}
-
-src_compile() {
- emake V=1 NETNS_RUN_DIR=/run/netns
-}
-
-src_install() {
- if use minimal ; then
- into /
- dosbin tc/tc
- dobin ip/ip
- return 0
- fi
-
- emake \
- DESTDIR="${D}" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}"/$(get_libdir) \
- SBINDIR="${EPREFIX}"/sbin \
- CONFDIR="${EPREFIX}"/etc/iproute2 \
- DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
- MANDIR="${EPREFIX}"/usr/share/man \
- ARPDDIR="${EPREFIX}"/var/lib/arpd \
- install
-
- dodir /bin
- mv "${ED}"/{s,}bin/ip || die #330115
-
- dolib.a lib/libnetlink.a
- insinto /usr/include
- doins include/libnetlink.h
- # This local header pulls in a lot of linux headers it
- # doesn't directly need. Delete this header that requires
- # linux-headers-3.8 until that goes stable. #467716
- sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die
-
- if use berkdb ; then
- keepdir /var/lib/arpd
- # bug 47482, arpd doesn't need to be in /sbin
- dodir /usr/bin
- mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
- elif [[ -d "${ED}"/var/lib/arpd ]]; then
- rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
- fi
-}
diff --git a/sys-apps/iproute2/iproute2-6.6.0-r1.ebuild b/sys-apps/iproute2/iproute2-6.6.0-r1.ebuild
new file mode 100644
index 000000000000..f56e79070a8f
--- /dev/null
+++ b/sys-apps/iproute2/iproute2-6.6.0-r1.ebuild
@@ -0,0 +1,215 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="kernel routing and traffic control utilities"
+HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux split-usr"
+# Needs root
+RESTRICT="test"
+
+# We could make libmnl optional, but it's tiny, so eh
+RDEPEND="
+ !net-misc/arpd
+ !minimal? ( net-libs/libmnl:= )
+ atm? ( net-dialup/linux-atm )
+ berkdb? ( sys-libs/db:= )
+ bpf? ( dev-libs/libbpf:= )
+ caps? ( sys-libs/libcap )
+ elf? ( virtual/libelf:= )
+ iptables? ( >=net-firewall/iptables-1.4.20:= )
+ nfs? ( net-libs/libtirpc:= )
+ selinux? ( sys-libs/libselinux )
+"
+# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876)
+DEPEND="
+ ${RDEPEND}
+ >=sys-kernel/linux-headers-3.16
+"
+BDEPEND="
+ app-arch/xz-utils
+ >=sys-devel/bison-2.4
+ app-alternatives/lex
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.5.0-mtu.patch # bug #291907
+ "${FILESDIR}"/${PN}-6.5.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727
+ "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
+ "${FILESDIR}"/${PN}-6.4.0-disable-libbsd-fallback.patch # bug #911727
+ "${FILESDIR}"/${PN}-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch
+)
+
+src_prepare() {
+ default
+
+ # Fix version if necessary
+ local versionfile="include/version.h"
+ if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then
+ einfo "Fixing version string"
+ sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
+ ${versionfile} || die
+ fi
+
+ # echo -n is not POSIX compliant
+ sed -i 's@echo -n@printf@' configure || die
+
+ sed -i \
+ -e '/^CC :\?=/d' \
+ -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
+ -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
+ Makefile || die
+
+ # Build against system headers
+ rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
+ sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
+
+ if use minimal ; then
+ sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
+ fi
+}
+
+src_configure() {
+ tc-export AR CC PKG_CONFIG
+
+ # This sure is ugly. Should probably move into toolchain-funcs at some point.
+ local setns
+ pushd "${T}" >/dev/null || die
+ printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c || die
+ if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then
+ setns=y
+ else
+ setns=n
+ fi
+
+ echo 'int main(){return 0;}' > test.c || die
+ if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then
+ sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die
+ fi
+ popd >/dev/null || die
+
+ # run "configure" script first which will create "config.mk"...
+ # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242)
+ edo ./configure --libbpf_force $(usex bpf on off)
+
+ # Remove the definitions made by configure and allow them to be overridden
+ # by USE flags below.
+ # We have to do the cheesy only-sed-if-disabled because otherwise
+ # the *_FLAGS etc stuff found by configure will be used but result
+ # in a broken build.
+ if ! use berkdb ; then
+ sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die
+ fi
+
+ if ! use caps ; then
+ sed -i -e '/HAVE_CAP/d' config.mk || die
+ fi
+
+ if use minimal ; then
+ sed -i -e '/HAVE_MNL/d' config.mk || die
+ fi
+
+ if ! use elf ; then
+ sed -i -e '/HAVE_ELF/d' config.mk || die
+ fi
+
+ if ! use nfs ; then
+ sed -i -e '/HAVE_RPC/d' config.mk || die
+ fi
+
+ if ! use selinux ; then
+ sed -i -e '/HAVE_SELINUX/d' config.mk || die
+ fi
+
+ # ...Now switch on/off requested features via USE flags
+ # this is only useful if the test did not set other things, per bug #643722
+ # Keep in sync with ifs above, or refactor to be unified.
+ cat <<-EOF >> config.mk
+ TC_CONFIG_ATM := $(usex atm y n)
+ TC_CONFIG_XT := $(usex iptables y n)
+ TC_CONFIG_NO_XT := $(usex iptables n y)
+ # We've locked in recent enough kernel headers, bug #549948
+ TC_CONFIG_IPSET := y
+ HAVE_BERKELEY_DB := $(usex berkdb y n)
+ HAVE_CAP := $(usex caps y n)
+ HAVE_MNL := $(usex minimal n y)
+ HAVE_ELF := $(usex elf y n)
+ HAVE_RPC := $(usex nfs y n)
+ HAVE_SELINUX := $(usex selinux y n)
+ IP_CONFIG_SETNS := ${setns}
+ # Use correct iptables dir, bug #144265, bug #293709
+ IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
+ EOF
+}
+
+src_compile() {
+ emake V=1 NETNS_RUN_DIR=/run/netns
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ if use minimal ; then
+ into /
+ dosbin tc/tc
+ dobin ip/ip
+ return 0
+ fi
+
+ emake \
+ DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}"/$(get_libdir) \
+ SBINDIR="${EPREFIX}"/sbin \
+ CONFDIR="${EPREFIX}"/etc/iproute2 \
+ DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
+ MANDIR="${EPREFIX}"/usr/share/man \
+ ARPDDIR="${EPREFIX}"/var/lib/arpd \
+ install
+
+ dodir /bin
+ mv "${ED}"/{s,}bin/ip || die # bug #330115
+
+ dolib.a lib/libnetlink.a
+ insinto /usr/include
+ doins include/libnetlink.h
+
+ # Collides with net-analyzer/ifstat
+ # https://bugs.gentoo.org/868321
+ mv "${ED}"/sbin/ifstat{,-iproute2} || die
+
+ if use split-usr ; then
+ # Can remove compatibility symlink in a year: 2023-05-28.
+ # bug #547264
+ mv "${ED}"/sbin/ss "${ED}"/bin/ss || die
+ dosym -r /bin/ss /sbin/ss
+ fi
+
+ if use berkdb ; then
+ keepdir /var/lib/arpd
+ # bug #47482, arpd doesn't need to be in /sbin
+ dodir /usr/bin
+ mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
+ elif [[ -d "${ED}"/var/lib/arpd ]]; then
+ rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
+ fi
+}
diff --git a/sys-apps/iproute2/iproute2-6.6.0-r3.ebuild b/sys-apps/iproute2/iproute2-6.6.0-r3.ebuild
new file mode 100644
index 000000000000..fc029883a9e9
--- /dev/null
+++ b/sys-apps/iproute2/iproute2-6.6.0-r3.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+DESCRIPTION="kernel routing and traffic control utilities"
+HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux"
+# Needs root
+RESTRICT="test"
+
+# We could make libmnl optional, but it's tiny, so eh
+RDEPEND="
+ !net-misc/arpd
+ !minimal? ( net-libs/libmnl:= )
+ atm? ( net-dialup/linux-atm )
+ berkdb? ( sys-libs/db:= )
+ bpf? ( dev-libs/libbpf:= )
+ caps? ( sys-libs/libcap )
+ elf? ( virtual/libelf:= )
+ iptables? ( >=net-firewall/iptables-1.4.20:= )
+ nfs? ( net-libs/libtirpc:= )
+ selinux? ( sys-libs/libselinux )
+"
+# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876)
+DEPEND="
+ ${RDEPEND}
+ >=sys-kernel/linux-headers-3.16
+"
+BDEPEND="
+ app-arch/xz-utils
+ >=sys-devel/bison-2.4
+ app-alternatives/lex
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.5.0-mtu.patch # bug #291907
+ "${FILESDIR}"/${PN}-6.5.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727
+ "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
+ "${FILESDIR}"/${PN}-6.4.0-disable-libbsd-fallback.patch # bug #911727
+ "${FILESDIR}"/${PN}-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch
+ "${FILESDIR}"/${PN}-6.6.0-revert-CONF_USR_DIR.patch
+ "${FILESDIR}"/${PN}-6.6.0-makefile-use-usr-share-config.patch
+)
+
+src_prepare() {
+ default
+
+ # Fix version if necessary
+ local versionfile="include/version.h"
+ if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then
+ einfo "Fixing version string"
+ sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
+ ${versionfile} || die
+ fi
+
+ # echo -n is not POSIX compliant
+ sed -i 's@echo -n@printf@' configure || die
+
+ sed -i \
+ -e '/^CC :\?=/d' \
+ -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
+ -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
+ Makefile || die
+
+ # Build against system headers
+ rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
+ sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
+
+ if use minimal ; then
+ sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
+ fi
+}
+
+src_configure() {
+ tc-export AR CC PKG_CONFIG
+
+ # This sure is ugly. Should probably move into toolchain-funcs at some point.
+ local setns
+ pushd "${T}" >/dev/null || die
+ printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c || die
+ if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then
+ setns=y
+ else
+ setns=n
+ fi
+
+ echo 'int main(){return 0;}' > test.c || die
+ if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then
+ sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die
+ fi
+ popd >/dev/null || die
+
+ # run "configure" script first which will create "config.mk"...
+ # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242)
+ edo ./configure --libbpf_force $(usex bpf on off)
+
+ # Remove the definitions made by configure and allow them to be overridden
+ # by USE flags below.
+ # We have to do the cheesy only-sed-if-disabled because otherwise
+ # the *_FLAGS etc stuff found by configure will be used but result
+ # in a broken build.
+ if ! use berkdb ; then
+ sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die
+ fi
+
+ if ! use caps ; then
+ sed -i -e '/HAVE_CAP/d' config.mk || die
+ fi
+
+ if use minimal ; then
+ sed -i -e '/HAVE_MNL/d' config.mk || die
+ fi
+
+ if ! use elf ; then
+ sed -i -e '/HAVE_ELF/d' config.mk || die
+ fi
+
+ if ! use nfs ; then
+ sed -i -e '/HAVE_RPC/d' config.mk || die
+ fi
+
+ if ! use selinux ; then
+ sed -i -e '/HAVE_SELINUX/d' config.mk || die
+ fi
+
+ # ...Now switch on/off requested features via USE flags
+ # this is only useful if the test did not set other things, per bug #643722
+ # Keep in sync with ifs above, or refactor to be unified.
+ cat <<-EOF >> config.mk
+ TC_CONFIG_ATM := $(usex atm y n)
+ TC_CONFIG_XT := $(usex iptables y n)
+ TC_CONFIG_NO_XT := $(usex iptables n y)
+ # We've locked in recent enough kernel headers, bug #549948
+ TC_CONFIG_IPSET := y
+ HAVE_BERKELEY_DB := $(usex berkdb y n)
+ HAVE_CAP := $(usex caps y n)
+ HAVE_MNL := $(usex minimal n y)
+ HAVE_ELF := $(usex elf y n)
+ HAVE_RPC := $(usex nfs y n)
+ HAVE_SELINUX := $(usex selinux y n)
+ IP_CONFIG_SETNS := ${setns}
+ # Use correct iptables dir, bug #144265, bug #293709
+ IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
+ EOF
+}
+
+src_compile() {
+ emake V=1 NETNS_RUN_DIR=/run/netns
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ if use minimal ; then
+ into /
+ dosbin tc/tc
+ dobin ip/ip
+ return 0
+ fi
+
+ emake \
+ DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}"/$(get_libdir) \
+ SBINDIR="${EPREFIX}"/sbin \
+ CONFDIR="${EPREFIX}"/etc/iproute2 \
+ DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
+ MANDIR="${EPREFIX}"/usr/share/man \
+ ARPDDIR="${EPREFIX}"/var/lib/arpd \
+ install
+
+ dodir /bin
+ mv "${ED}"/{s,}bin/ip || die # bug #330115
+ mv "${ED}"/{s,}bin/ss || die # bug #547264
+
+ dolib.a lib/libnetlink.a
+ insinto /usr/include
+ doins include/libnetlink.h
+
+ # Collides with net-analyzer/ifstat
+ # https://bugs.gentoo.org/868321
+ mv "${ED}"/sbin/ifstat{,-iproute2} || die
+
+ if use berkdb ; then
+ keepdir /var/lib/arpd
+ # bug #47482, arpd doesn't need to be in /sbin
+ dodir /usr/bin
+ mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
+ elif [[ -d "${ED}"/var/lib/arpd ]]; then
+ rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
+ fi
+}
diff --git a/sys-apps/iproute2/iproute2-6.6.0.ebuild b/sys-apps/iproute2/iproute2-6.6.0.ebuild
new file mode 100644
index 000000000000..97cae73173e9
--- /dev/null
+++ b/sys-apps/iproute2/iproute2-6.6.0.ebuild
@@ -0,0 +1,214 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+DESCRIPTION="kernel routing and traffic control utilities"
+HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux split-usr"
+# Needs root
+RESTRICT="test"
+
+# We could make libmnl optional, but it's tiny, so eh
+RDEPEND="
+ !net-misc/arpd
+ !minimal? ( net-libs/libmnl:= )
+ atm? ( net-dialup/linux-atm )
+ berkdb? ( sys-libs/db:= )
+ bpf? ( dev-libs/libbpf:= )
+ caps? ( sys-libs/libcap )
+ elf? ( virtual/libelf:= )
+ iptables? ( >=net-firewall/iptables-1.4.20:= )
+ nfs? ( net-libs/libtirpc:= )
+ selinux? ( sys-libs/libselinux )
+"
+# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876)
+DEPEND="
+ ${RDEPEND}
+ >=sys-kernel/linux-headers-3.16
+"
+BDEPEND="
+ app-arch/xz-utils
+ >=sys-devel/bison-2.4
+ app-alternatives/lex
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.5.0-mtu.patch # bug #291907
+ "${FILESDIR}"/${PN}-6.5.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727
+ "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
+ "${FILESDIR}"/${PN}-6.4.0-disable-libbsd-fallback.patch # bug #911727
+)
+
+src_prepare() {
+ default
+
+ # Fix version if necessary
+ local versionfile="include/version.h"
+ if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then
+ einfo "Fixing version string"
+ sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
+ ${versionfile} || die
+ fi
+
+ # echo -n is not POSIX compliant
+ sed -i 's@echo -n@printf@' configure || die
+
+ sed -i \
+ -e '/^CC :\?=/d' \
+ -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
+ -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
+ Makefile || die
+
+ # Build against system headers
+ rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
+ sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
+
+ if use minimal ; then
+ sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
+ fi
+}
+
+src_configure() {
+ tc-export AR CC PKG_CONFIG
+
+ # This sure is ugly. Should probably move into toolchain-funcs at some point.
+ local setns
+ pushd "${T}" >/dev/null || die
+ printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c || die
+ if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then
+ setns=y
+ else
+ setns=n
+ fi
+
+ echo 'int main(){return 0;}' > test.c || die
+ if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then
+ sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die
+ fi
+ popd >/dev/null || die
+
+ # run "configure" script first which will create "config.mk"...
+ # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242)
+ edo ./configure --libbpf_force $(usex bpf on off)
+
+ # Remove the definitions made by configure and allow them to be overridden
+ # by USE flags below.
+ # We have to do the cheesy only-sed-if-disabled because otherwise
+ # the *_FLAGS etc stuff found by configure will be used but result
+ # in a broken build.
+ if ! use berkdb ; then
+ sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die
+ fi
+
+ if ! use caps ; then
+ sed -i -e '/HAVE_CAP/d' config.mk || die
+ fi
+
+ if use minimal ; then
+ sed -i -e '/HAVE_MNL/d' config.mk || die
+ fi
+
+ if ! use elf ; then
+ sed -i -e '/HAVE_ELF/d' config.mk || die
+ fi
+
+ if ! use nfs ; then
+ sed -i -e '/HAVE_RPC/d' config.mk || die
+ fi
+
+ if ! use selinux ; then
+ sed -i -e '/HAVE_SELINUX/d' config.mk || die
+ fi
+
+ # ...Now switch on/off requested features via USE flags
+ # this is only useful if the test did not set other things, per bug #643722
+ # Keep in sync with ifs above, or refactor to be unified.
+ cat <<-EOF >> config.mk
+ TC_CONFIG_ATM := $(usex atm y n)
+ TC_CONFIG_XT := $(usex iptables y n)
+ TC_CONFIG_NO_XT := $(usex iptables n y)
+ # We've locked in recent enough kernel headers, bug #549948
+ TC_CONFIG_IPSET := y
+ HAVE_BERKELEY_DB := $(usex berkdb y n)
+ HAVE_CAP := $(usex caps y n)
+ HAVE_MNL := $(usex minimal n y)
+ HAVE_ELF := $(usex elf y n)
+ HAVE_RPC := $(usex nfs y n)
+ HAVE_SELINUX := $(usex selinux y n)
+ IP_CONFIG_SETNS := ${setns}
+ # Use correct iptables dir, bug #144265, bug #293709
+ IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
+ EOF
+}
+
+src_compile() {
+ emake V=1 NETNS_RUN_DIR=/run/netns
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ if use minimal ; then
+ into /
+ dosbin tc/tc
+ dobin ip/ip
+ return 0
+ fi
+
+ emake \
+ DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}"/$(get_libdir) \
+ SBINDIR="${EPREFIX}"/sbin \
+ CONFDIR="${EPREFIX}"/etc/iproute2 \
+ DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
+ MANDIR="${EPREFIX}"/usr/share/man \
+ ARPDDIR="${EPREFIX}"/var/lib/arpd \
+ install
+
+ dodir /bin
+ mv "${ED}"/{s,}bin/ip || die # bug #330115
+
+ dolib.a lib/libnetlink.a
+ insinto /usr/include
+ doins include/libnetlink.h
+
+ # Collides with net-analyzer/ifstat
+ # https://bugs.gentoo.org/868321
+ mv "${ED}"/sbin/ifstat{,-iproute2} || die
+
+ if use split-usr ; then
+ # Can remove compatibility symlink in a year: 2023-05-28.
+ # bug #547264
+ mv "${ED}"/sbin/ss "${ED}"/bin/ss || die
+ dosym -r /bin/ss /sbin/ss
+ fi
+
+ if use berkdb ; then
+ keepdir /var/lib/arpd
+ # bug #47482, arpd doesn't need to be in /sbin
+ dodir /usr/bin
+ mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
+ elif [[ -d "${ED}"/var/lib/arpd ]]; then
+ rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
+ fi
+}
diff --git a/sys-apps/iproute2/iproute2-6.8.0-r2.ebuild b/sys-apps/iproute2/iproute2-6.8.0-r2.ebuild
new file mode 100644
index 000000000000..c5ab1aee142e
--- /dev/null
+++ b/sys-apps/iproute2/iproute2-6.8.0-r2.ebuild
@@ -0,0 +1,213 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs flag-o-matic
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="kernel routing and traffic control utilities"
+HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux"
+# Needs root
+RESTRICT="test"
+
+# We could make libmnl optional, but it's tiny, so eh
+RDEPEND="
+ !net-misc/arpd
+ !minimal? ( net-libs/libmnl:= )
+ atm? ( net-dialup/linux-atm )
+ berkdb? ( sys-libs/db:= )
+ bpf? ( dev-libs/libbpf:= )
+ caps? ( sys-libs/libcap )
+ elf? ( virtual/libelf:= )
+ iptables? ( >=net-firewall/iptables-1.4.20:= )
+ nfs? ( net-libs/libtirpc:= )
+ selinux? ( sys-libs/libselinux )
+"
+# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876)
+DEPEND="
+ ${RDEPEND}
+ >=sys-kernel/linux-headers-3.16
+"
+BDEPEND="
+ app-arch/xz-utils
+ >=sys-devel/bison-2.4
+ app-alternatives/lex
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.5.0-mtu.patch # bug #291907
+ "${FILESDIR}"/${PN}-6.8.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727
+ "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
+ "${FILESDIR}"/${PN}-6.8.0-disable-libbsd-fallback.patch # bug #911727
+)
+
+src_prepare() {
+ default
+
+ # Fix version if necessary
+ local versionfile="include/version.h"
+ if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then
+ einfo "Fixing version string"
+ sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
+ ${versionfile} || die
+ fi
+
+ # echo -n is not POSIX compliant
+ sed -i 's@echo -n@printf@' configure || die
+
+ sed -i \
+ -e '/^CC :\?=/d' \
+ -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
+ -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
+ Makefile || die
+
+ # Build against system headers
+ rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
+ sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
+
+ if use minimal ; then
+ sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
+ fi
+}
+
+src_configure() {
+ tc-export AR CC PKG_CONFIG
+
+ # This sure is ugly. Should probably move into toolchain-funcs at some point.
+ local setns
+ pushd "${T}" >/dev/null || die
+ printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c || die
+ if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then
+ setns=y
+ else
+ setns=n
+ fi
+
+ echo 'int main(){return 0;}' > test.c || die
+ if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then
+ sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die
+ fi
+ popd >/dev/null || die
+
+ # build system does not pass CFLAGS to LDFLAGS, as is recommended by GCC upstream
+ # https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto
+ # https://bugs.gentoo.org/929233
+ append-ldflags ${CFLAGS}
+
+ # run "configure" script first which will create "config.mk"...
+ # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242)
+ edo ./configure --color=auto --libbpf_force $(usex bpf on off)
+
+ # Remove the definitions made by configure and allow them to be overridden
+ # by USE flags below.
+ # We have to do the cheesy only-sed-if-disabled because otherwise
+ # the *_FLAGS etc stuff found by configure will be used but result
+ # in a broken build.
+ if ! use berkdb ; then
+ sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die
+ fi
+
+ if ! use caps ; then
+ sed -i -e '/HAVE_CAP/d' config.mk || die
+ fi
+
+ if use minimal ; then
+ sed -i -e '/HAVE_MNL/d' config.mk || die
+ fi
+
+ if ! use elf ; then
+ sed -i -e '/HAVE_ELF/d' config.mk || die
+ fi
+
+ if ! use nfs ; then
+ sed -i -e '/HAVE_RPC/d' config.mk || die
+ fi
+
+ if ! use selinux ; then
+ sed -i -e '/HAVE_SELINUX/d' config.mk || die
+ fi
+
+ # ...Now switch on/off requested features via USE flags
+ # this is only useful if the test did not set other things, per bug #643722
+ # Keep in sync with ifs above, or refactor to be unified.
+ cat <<-EOF >> config.mk
+ TC_CONFIG_ATM := $(usex atm y n)
+ TC_CONFIG_XT := $(usex iptables y n)
+ TC_CONFIG_NO_XT := $(usex iptables n y)
+ # We've locked in recent enough kernel headers, bug #549948
+ TC_CONFIG_IPSET := y
+ HAVE_BERKELEY_DB := $(usex berkdb y n)
+ HAVE_CAP := $(usex caps y n)
+ HAVE_MNL := $(usex minimal n y)
+ HAVE_ELF := $(usex elf y n)
+ HAVE_RPC := $(usex nfs y n)
+ HAVE_SELINUX := $(usex selinux y n)
+ IP_CONFIG_SETNS := ${setns}
+ # Use correct iptables dir, bug #144265, bug #293709
+ IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
+ EOF
+}
+
+src_compile() {
+ emake V=1 NETNS_RUN_DIR=/run/netns
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ if use minimal ; then
+ into /
+ dosbin tc/tc
+ dobin ip/ip
+ return 0
+ fi
+
+ emake \
+ DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}"/$(get_libdir) \
+ SBINDIR="${EPREFIX}"/sbin \
+ CONFDIR="${EPREFIX}"/etc/iproute2 \
+ DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
+ MANDIR="${EPREFIX}"/usr/share/man \
+ ARPDDIR="${EPREFIX}"/var/lib/arpd \
+ install
+
+ dodir /bin
+ mv "${ED}"/{s,}bin/ip || die # bug #330115
+ mv "${ED}"/{s,}bin/ss || die # bug #547264
+
+ dolib.a lib/libnetlink.a
+ insinto /usr/include
+ doins include/libnetlink.h
+
+ # Collides with net-analyzer/ifstat
+ # https://bugs.gentoo.org/868321
+ mv "${ED}"/sbin/ifstat{,-iproute2} || die
+
+ if use berkdb ; then
+ keepdir /var/lib/arpd
+ # bug #47482, arpd doesn't need to be in /sbin
+ dodir /usr/bin
+ mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
+ elif [[ -d "${ED}"/var/lib/arpd ]]; then
+ rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
+ fi
+}
diff --git a/sys-apps/iproute2/iproute2-9999.ebuild b/sys-apps/iproute2/iproute2-9999.ebuild
index 7dcb54c51f5b..bfc78c186a70 100644
--- a/sys-apps/iproute2/iproute2-9999.ebuild
+++ b/sys-apps/iproute2/iproute2-9999.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit toolchain-funcs flag-o-matic multilib
+inherit edo toolchain-funcs flag-o-matic
-if [[ ${PV} == "9999" ]] ; then
+if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
inherit git-r3
else
SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
DESCRIPTION="kernel routing and traffic control utilities"
@@ -18,21 +18,24 @@ HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
LICENSE="GPL-2"
SLOT="0"
-IUSE="atm berkdb caps elf +iptables ipv6 minimal selinux"
+IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux split-usr"
+# Needs root
+RESTRICT="test"
# We could make libmnl optional, but it's tiny, so eh
RDEPEND="
!net-misc/arpd
- dev-libs/libbsd
- !minimal? ( net-libs/libmnl )
+ !minimal? ( net-libs/libmnl:= )
+ atm? ( net-dialup/linux-atm )
+ berkdb? ( sys-libs/db:= )
+ bpf? ( dev-libs/libbpf:= )
caps? ( sys-libs/libcap )
- elf? ( virtual/libelf )
+ elf? ( virtual/libelf:= )
iptables? ( >=net-firewall/iptables-1.4.20:= )
- berkdb? ( sys-libs/db:= )
- atm? ( net-dialup/linux-atm )
+ nfs? ( net-libs/libtirpc:= )
selinux? ( sys-libs/libselinux )
"
-# We require newer linux-headers for ipset support #549948 and some defines #553876
+# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876)
DEPEND="
${RDEPEND}
>=sys-kernel/linux-headers-3.16
@@ -40,27 +43,30 @@ DEPEND="
BDEPEND="
app-arch/xz-utils
>=sys-devel/bison-2.4
- sys-devel/flex
+ app-alternatives/lex
virtual/pkgconfig
"
PATCHES=(
- "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
- "${FILESDIR}"/${PN}-4.20.0-configure-nomagic.patch # bug 643722
- "${FILESDIR}"/${PN}-5.1.0-portability.patch
+ "${FILESDIR}"/${PN}-6.5.0-mtu.patch # bug #291907
+ "${FILESDIR}"/${PN}-6.8.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727
+ "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch
+ "${FILESDIR}"/${PN}-6.8.0-disable-libbsd-fallback.patch # bug #911727
)
src_prepare() {
- if ! use ipv6 ; then
- PATCHES+=(
- "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849
- )
- fi
-
default
+ # Fix version if necessary
+ local versionfile="include/version.h"
+ if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then
+ einfo "Fixing version string"
+ sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
+ ${versionfile} || die
+ fi
+
# echo -n is not POSIX compliant
- sed 's@echo -n@printf@' -i configure || die
+ sed -i 's@echo -n@printf@' configure || die
sed -i \
-e '/^CC :\?=/d' \
@@ -70,7 +76,7 @@ src_prepare() {
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
Makefile || die
- # build against system headers
+ # Build against system headers
rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
@@ -82,34 +88,78 @@ src_prepare() {
src_configure() {
tc-export AR CC PKG_CONFIG
- # This sure is ugly. Should probably move into toolchain-funcs at some point.
+ # This sure is ugly. Should probably move into toolchain-funcs at some point.
local setns
- pushd "${T}" >/dev/null
- printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
- echo 'int main(){return 0;}' > test.c
- ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
- popd >/dev/null
+ pushd "${T}" >/dev/null || die
+ printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c || die
+ if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then
+ setns=y
+ else
+ setns=n
+ fi
+
+ echo 'int main(){return 0;}' > test.c || die
+ if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then
+ sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die
+ fi
+ popd >/dev/null || die
+
+ # build system does not pass CFLAGS to LDFLAGS, as is recommended by GCC upstream
+ # https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto
+ # https://bugs.gentoo.org/929233
+ append-ldflags ${CFLAGS}
# run "configure" script first which will create "config.mk"...
- econf
+ # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242)
+ edo ./configure --color=auto --libbpf_force $(usex bpf on off)
+
+ # Remove the definitions made by configure and allow them to be overridden
+ # by USE flags below.
+ # We have to do the cheesy only-sed-if-disabled because otherwise
+ # the *_FLAGS etc stuff found by configure will be used but result
+ # in a broken build.
+ if ! use berkdb ; then
+ sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die
+ fi
+
+ if ! use caps ; then
+ sed -i -e '/HAVE_CAP/d' config.mk || die
+ fi
- # ...now switch on/off requested features via USE flags
+ if use minimal ; then
+ sed -i -e '/HAVE_MNL/d' config.mk || die
+ fi
+
+ if ! use elf ; then
+ sed -i -e '/HAVE_ELF/d' config.mk || die
+ fi
+
+ if ! use nfs ; then
+ sed -i -e '/HAVE_RPC/d' config.mk || die
+ fi
+
+ if ! use selinux ; then
+ sed -i -e '/HAVE_SELINUX/d' config.mk || die
+ fi
+
+ # ...Now switch on/off requested features via USE flags
# this is only useful if the test did not set other things, per bug #643722
+ # Keep in sync with ifs above, or refactor to be unified.
cat <<-EOF >> config.mk
TC_CONFIG_ATM := $(usex atm y n)
TC_CONFIG_XT := $(usex iptables y n)
TC_CONFIG_NO_XT := $(usex iptables n y)
- # We've locked in recent enough kernel headers #549948
+ # We've locked in recent enough kernel headers, bug #549948
TC_CONFIG_IPSET := y
HAVE_BERKELEY_DB := $(usex berkdb y n)
HAVE_CAP := $(usex caps y n)
HAVE_MNL := $(usex minimal n y)
HAVE_ELF := $(usex elf y n)
+ HAVE_RPC := $(usex nfs y n)
HAVE_SELINUX := $(usex selinux y n)
IP_CONFIG_SETNS := ${setns}
- # Use correct iptables dir, #144265 #293709
- IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
+ # Use correct iptables dir, bug #144265, bug #293709
+ IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
EOF
}
@@ -117,6 +167,10 @@ src_compile() {
emake V=1 NETNS_RUN_DIR=/run/netns
}
+src_test() {
+ emake check
+}
+
src_install() {
if use minimal ; then
into /
@@ -137,19 +191,26 @@ src_install() {
install
dodir /bin
- mv "${ED}"/{s,}bin/ip || die #330115
+ mv "${ED}"/{s,}bin/ip || die # bug #330115
dolib.a lib/libnetlink.a
insinto /usr/include
doins include/libnetlink.h
- # This local header pulls in a lot of linux headers it
- # doesn't directly need. Delete this header that requires
- # linux-headers-3.8 until that goes stable. #467716
- sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die
+
+ # Collides with net-analyzer/ifstat
+ # https://bugs.gentoo.org/868321
+ mv "${ED}"/sbin/ifstat{,-iproute2} || die
+
+ if use split-usr ; then
+ # Can remove compatibility symlink in a year: 2023-05-28.
+ # bug #547264
+ mv "${ED}"/sbin/ss "${ED}"/bin/ss || die
+ dosym -r /bin/ss /sbin/ss
+ fi
if use berkdb ; then
keepdir /var/lib/arpd
- # bug 47482, arpd doesn't need to be in /sbin
+ # bug #47482, arpd doesn't need to be in /sbin
dodir /usr/bin
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
elif [[ -d "${ED}"/var/lib/arpd ]]; then
diff --git a/sys-apps/iproute2/metadata.xml b/sys-apps/iproute2/metadata.xml
index 66ef219fafa3..640c98301205 100644
--- a/sys-apps/iproute2/metadata.xml
+++ b/sys-apps/iproute2/metadata.xml
@@ -1,17 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="berkdb">build programs that use berkdb (just arpd)</flag>
- <flag name="elf">support loading eBPF programs from ELFs (e.g. LLVM's eBPF backend)</flag>
- <flag name="iptables">include support for iptables filtering</flag>
- <flag name="minimal">only install ip and tc programs, without eBPF support</flag>
-</use>
-<upstream>
- <remote-id type="cpe">cpe:/a:iproute2_project:iproute2</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="berkdb">build programs that use berkdb (just arpd)</flag>
+ <flag name="bpf">Use <pkg>dev-libs/libbpf</pkg></flag>
+ <flag name="elf">support loading eBPF programs from ELFs (e.g. LLVM's eBPF backend)</flag>
+ <flag name="iptables">include support for iptables filtering</flag>
+ <flag name="minimal">only install ip and tc programs, without eBPF support</flag>
+ <flag name="nfs">Support RPC lookups via <pkg>net-libs/libtirpc</pkg> in ss</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:iproute2_project:iproute2</remote-id>
+ <remote-id type="github">shemminger/iproute2</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/irqbalance/Manifest b/sys-apps/irqbalance/Manifest
index 81e1c4ce0893..8abb73f52915 100644
--- a/sys-apps/irqbalance/Manifest
+++ b/sys-apps/irqbalance/Manifest
@@ -1,2 +1,2 @@
-DIST irqbalance-1.6.0.tar.gz 55310 BLAKE2B 67589a40541e9034a0ac09d60a2293dde7a0cf524620794e25b60b4d78f2c91270252f6cebc2c91c66aed105536a211d51aeb29305fc1235112d96b714dc80bd SHA512 ce89dc41eb3aab5950a56b4b1c817aae5e87eaa84bc69bf88618caf53386513e488bb0b4724a600ae175c96be509367cfc418c7f85531007f80e02f7de549b16
-DIST irqbalance-1.7.0.tar.gz 54209 BLAKE2B 1213b21c7d3979c9ba7d2298c21f7f0b75217d251ecfa02660ea0602a032d62c9c9b0254bf158e07e0fdcf55b35f332f5a17f929c7393dfdb894ca952dad52b4 SHA512 2fa29c738275dda2fac38d78ca0ec4619826b72529e8eda7ad8ddcda5768bbf282e2260dddc16a8b46d4296289b25dc59684575ae1badca0c6c6ae30b1e9b5ea
+DIST irqbalance-1.9.3.tar.gz 62573 BLAKE2B 0f7b3b62c3784c009c6829078cdf5496910ec3f3c8c13de5f0dfbaed510fb5e3dab4953810c646ece962ef130af3aaa0bb9fa8c2e013485751cc661c9458e87a SHA512 5638fb59f5a59901333b90289ee70c960df0e2b9e55731805397797b8e630bb3703e36a4dfd05bf01de49334dab9d6fc95bde4967eeab131534950d281103fa1
+DIST irqbalance-1.9.4.tar.gz 63005 BLAKE2B 6b8bf28e11686713ca9c00a1b98c5f3afb38c26e919a9d7de126145d12c4e8e23e8ea00b2534bb0339e5990ed5cb642291df975ba9868835e9c4e8a23c98f2ef SHA512 abdcac9dccabb18ae644b73dc2a8528c03279811c1f9182a5a5b0af43b30c5982d7bb14e79d4430b5d4f2cea8e17115e6038851c74de1ff3bdfc4e303392479a
diff --git a/sys-apps/irqbalance/files/irqbalance-1.9.3-systemd-journal-noise.patch b/sys-apps/irqbalance/files/irqbalance-1.9.3-systemd-journal-noise.patch
new file mode 100644
index 000000000000..7cf465f62e7d
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance-1.9.3-systemd-journal-noise.patch
@@ -0,0 +1,21 @@
+https://github.com/Irqbalance/irqbalance/issues/281
+https://github.com/Irqbalance/irqbalance/commit/f3282f4ddc10be44e6c423de6de8db600f748f85
+
+From f3282f4ddc10be44e6c423de6de8db600f748f85 Mon Sep 17 00:00:00 2001
+From: Neil Horman <nhorman@openssl.org>
+Date: Thu, 30 Nov 2023 16:55:30 -0500
+Subject: [PATCH] filter console only output when using journal mode
+
+Fixes #281
+--- a/irqbalance.h
++++ b/irqbalance.h
+@@ -138,7 +138,8 @@ extern unsigned int log_mask;
+ #ifdef HAVE_LIBSYSTEMD
+ #define log(mask, lvl, fmt, args...) do { \
+ if (journal_logging) { \
+- sd_journal_print(lvl, fmt, ##args); \
++ if (log_mask & mask & TO_SYSLOG) \
++ sd_journal_print(lvl, fmt, ##args); \
+ if (log_mask & mask & TO_CONSOLE) \
+ printf(fmt, ##args); \
+ } else { \
diff --git a/sys-apps/irqbalance/files/irqbalance.confd-2 b/sys-apps/irqbalance/files/irqbalance.confd-2
new file mode 100644
index 000000000000..b55054a11b1d
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.confd-2
@@ -0,0 +1,16 @@
+# /etc/conf.d/irqbalance: config file for /etc/init.d/irqbalance
+
+# Additional options to pass to irqbalance itself.
+IRQBALANCE_OPTS=""
+
+# These are envvars used by irqbalance itself, so make sure the "export"
+# is retained. For more info, please see the irqbalance manpage.
+
+# Run irqbalance once and then exit
+#export IRQBALANCE_ONESHOT="0"
+
+# Include debug messages in output
+#export IRQBALANCE_DEBUG="0"
+
+# List of cpus to not include in balancing
+#export IRQBALANCE_BANNED_CPUS=""
diff --git a/sys-apps/irqbalance/irqbalance-1.6.0-r1.ebuild b/sys-apps/irqbalance/irqbalance-1.6.0-r1.ebuild
deleted file mode 100644
index 918aff3e877a..000000000000
--- a/sys-apps/irqbalance/irqbalance-1.6.0-r1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd linux-info
-
-DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
-HOMEPAGE="https://github.com/Irqbalance/irqbalance"
-SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc ~ppc64 x86"
-IUSE="caps +numa selinux tui"
-
-DEPEND="
- dev-libs/glib:2
- caps? ( sys-libs/libcap-ng )
- numa? ( sys-process/numactl )
- tui? ( sys-libs/ncurses:0=[unicode] )
-"
-BDEPEND="
- virtual/pkgconfig
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-irqbalance )
-"
-
-pkg_setup() {
- CONFIG_CHECK="~PCI_MSI"
- linux-info_pkg_setup
-}
-
-src_prepare() {
- # Follow systemd policies
- # https://wiki.gentoo.org/wiki/Project:Systemd/Ebuild_policy
- sed \
- -e 's/ $IRQBALANCE_ARGS//' \
- -e '/EnvironmentFile/d' \
- -i misc/irqbalance.service || die
-
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with caps libcap-ng)
- $(use_enable numa)
- $(use_with tui irqbalance-ui)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}"/irqbalance.init.4 irqbalance
- newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
- systemd_dounit misc/irqbalance.service
-}
diff --git a/sys-apps/irqbalance/irqbalance-1.7.0.ebuild b/sys-apps/irqbalance/irqbalance-1.7.0.ebuild
deleted file mode 100644
index 0d1fd414c8aa..000000000000
--- a/sys-apps/irqbalance/irqbalance-1.7.0.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd linux-info
-
-DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
-HOMEPAGE="https://github.com/Irqbalance/irqbalance"
-SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE="caps +numa selinux tui"
-
-DEPEND="
- dev-libs/glib:2
- caps? ( sys-libs/libcap-ng )
- numa? ( sys-process/numactl )
- tui? ( sys-libs/ncurses:0=[unicode] )
-"
-BDEPEND="
- virtual/pkgconfig
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-irqbalance )
-"
-
-pkg_setup() {
- CONFIG_CHECK="~PCI_MSI"
- linux-info_pkg_setup
-}
-
-src_prepare() {
- # Follow systemd policies
- # https://wiki.gentoo.org/wiki/Project:Systemd/Ebuild_policy
- sed \
- -e 's/ $IRQBALANCE_ARGS//' \
- -e '/EnvironmentFile/d' \
- -i misc/irqbalance.service || die
-
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with caps libcap-ng)
- $(use_enable numa)
- $(use_with tui irqbalance-ui)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}"/irqbalance.init.4 irqbalance
- newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
- systemd_dounit misc/irqbalance.service
-}
diff --git a/sys-apps/irqbalance/irqbalance-1.9.3-r1.ebuild b/sys-apps/irqbalance/irqbalance-1.9.3-r1.ebuild
new file mode 100644
index 000000000000..88ef8e891036
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.9.3-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools udev systemd linux-info optfeature
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
+IUSE="caps +numa systemd selinux thermal tui"
+# Hangs
+RESTRICT="test"
+
+DEPEND="
+ dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )
+ systemd? ( sys-apps/systemd:= )
+ thermal? ( dev-libs/libnl:3 )
+ tui? ( sys-libs/ncurses:=[unicode(+)] )
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-irqbalance )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-systemd-journal-noise.patch
+)
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ # Follow systemd policies
+ # https://wiki.gentoo.org/wiki/Project:Systemd/Ebuild_policy
+ sed \
+ -e 's/ $IRQBALANCE_ARGS//' \
+ -e '/EnvironmentFile/d' \
+ -i misc/irqbalance.service || die
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with caps libcap-ng)
+ $(use_enable numa)
+ $(use_with systemd)
+ $(use_enable thermal)
+ $(use_with tui irqbalance-ui)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/irqbalance.init.4 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit misc/irqbalance.service
+ udev_dorules misc/90-irqbalance.rules
+}
+
+pkg_postinst() {
+ optfeature "thermal events support (requires USE=thermal)" sys-power/thermald
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.9.4.ebuild b/sys-apps/irqbalance/irqbalance-1.9.4.ebuild
new file mode 100644
index 000000000000..0baa39a88aa2
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.9.4.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson linux-info optfeature systemd udev
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${P}/contrib
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="caps +numa systemd selinux thermal tui"
+# Hangs
+RESTRICT="test"
+
+DEPEND="
+ dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )
+ systemd? ( sys-apps/systemd:= )
+ thermal? ( dev-libs/libnl:3 )
+ tui? ( sys-libs/ncurses:=[unicode(+)] )
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-irqbalance )
+"
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # Follow systemd policies
+ # https://wiki.gentoo.org/wiki/Project:Systemd/Ebuild_policy
+ sed \
+ -e 's/ $IRQBALANCE_ARGS//' \
+ -e '/EnvironmentFile/d' \
+ -i "${WORKDIR}"/${P}/misc/irqbalance.service || die
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature caps capng)
+ $(meson_feature numa)
+ $(meson_feature systemd)
+ $(meson_feature thermal)
+ $(meson_feature tui ui)
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ newinitd "${FILESDIR}"/irqbalance.init.4 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-2 irqbalance
+ systemd_dounit "${WORKDIR}"/${P}/misc/irqbalance.service
+ udev_dorules "${WORKDIR}"/${P}/misc/90-irqbalance.rules
+}
+
+pkg_postrm() {
+ udev_reload
+}
+
+pkg_postinst() {
+ udev_reload
+ optfeature "thermal events support (requires USE=thermal)" sys-power/thermald
+}
diff --git a/sys-apps/irqbalance/metadata.xml b/sys-apps/irqbalance/metadata.xml
index d4dedf3afa55..170316cf57a9 100644
--- a/sys-apps/irqbalance/metadata.xml
+++ b/sys-apps/irqbalance/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -7,6 +7,7 @@
</maintainer>
<use>
<flag name="numa">Support balancing IRQs across NUMA nodes</flag>
+ <flag name="thermal">Enable support of thermal events via <pkg>sys-power/thermald</pkg></flag>
<flag name="tui">Enable build of irqbalance terminal user interface</flag>
</use>
<upstream>
diff --git a/sys-apps/isapnptools/files/isapnptools-1.27-fno-common.patch b/sys-apps/isapnptools/files/isapnptools-1.27-fno-common.patch
new file mode 100644
index 000000000000..54da41cdd602
--- /dev/null
+++ b/sys-apps/isapnptools/files/isapnptools-1.27-fno-common.patch
@@ -0,0 +1,22 @@
+--- a/src/isapnp_main.c
++++ b/src/isapnp_main.c
+@@ -1153,7 +1153,7 @@
+ return 0;
+ }
+
+-unsigned char serial_identifier[NUM_CARDS+1][IDENT_LEN];
++extern unsigned char serial_identifier[NUM_CARDS+1][IDENT_LEN];
+ static char *boardid[NUM_CARDS+1];
+ static unsigned long serno[NUM_CARDS+1];
+
+--- a/src/isapnp_main.l
++++ b/src/isapnp_main.l
+@@ -363,7 +363,7 @@
+ return 0;
+ }
+
+-unsigned char serial_identifier[NUM_CARDS+1][IDENT_LEN];
++extern unsigned char serial_identifier[NUM_CARDS+1][IDENT_LEN];
+ static char *boardid[NUM_CARDS+1];
+ static unsigned long serno[NUM_CARDS+1];
+
diff --git a/sys-apps/isapnptools/isapnptools-1.27.ebuild b/sys-apps/isapnptools/isapnptools-1.27.ebuild
index c95092405332..cdcbf0fbdb96 100644
--- a/sys-apps/isapnptools/isapnptools-1.27.ebuild
+++ b/sys-apps/isapnptools/isapnptools-1.27.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
DESCRIPTION="Tools for configuring ISA PnP devices"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
@@ -10,15 +10,17 @@ SRC_URI="ftp://metalab.unc.edu/pub/Linux/system/hardware/${P}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 x86"
-IUSE=""
-PATCHES=( "${FILESDIR}"/${P}-include.patch )
+PATCHES=(
+ "${FILESDIR}"/${P}-include.patch
+ "${FILESDIR}"/${P}-fno-common.patch
+)
src_install() {
default
dodir /sbin
- mv "${ED%/}"/{usr/sbin/isapnp,sbin/} || die
+ mv "${ED}"/{usr/sbin/isapnp,sbin/} || die
docinto txt
dodoc doc/{README*,*.txt} test/*.txt
diff --git a/sys-apps/isapnptools/metadata.xml b/sys-apps/isapnptools/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/isapnptools/metadata.xml
+++ b/sys-apps/isapnptools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/iucode_tool/files/iucode_tool-2.3.1-limits-include.patch b/sys-apps/iucode_tool/files/iucode_tool-2.3.1-limits-include.patch
new file mode 100644
index 000000000000..965bf740e3c2
--- /dev/null
+++ b/sys-apps/iucode_tool/files/iucode_tool-2.3.1-limits-include.patch
@@ -0,0 +1,10 @@
+Fixes build on musl.
+--- a/iucode_tool.c
++++ b/iucode_tool.c
+@@ -29,6 +29,7 @@
+ #include <assert.h>
+ #include <argp.h>
+ #include <dirent.h>
++#include <limits.h>
+ #include <time.h>
+ #include <cpuid.h>
diff --git a/sys-apps/iucode_tool/iucode_tool-2.3.1-r1.ebuild b/sys-apps/iucode_tool/iucode_tool-2.3.1-r1.ebuild
index cdaff636c174..b6c3cb20991d 100644
--- a/sys-apps/iucode_tool/iucode_tool-2.3.1-r1.ebuild
+++ b/sys-apps/iucode_tool/iucode_tool-2.3.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -10,6 +10,12 @@ SRC_URI="https://gitlab.com/iucode-tool/releases/raw/master/${PN/_/-}_${PV}.tar.
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 x86"
-IUSE=""
+
+RDEPEND="elibc_musl? ( sys-libs/argp-standalone )"
+DEPEND="${RDEPEND}"
S="${WORKDIR}/${PN/_/-}-${PV}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.3.1-limits-include.patch
+)
diff --git a/sys-apps/iucode_tool/metadata.xml b/sys-apps/iucode_tool/metadata.xml
index 56c124413057..b7ae2e3c253b 100644
--- a/sys-apps/iucode_tool/metadata.xml
+++ b/sys-apps/iucode_tool/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">iucode-tool/iucode-tool</remote-id>
+ <remote-id type="gitlab">iucode-tool/releases</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/kbd/Manifest b/sys-apps/kbd/Manifest
index 42f2396f56a2..8203afcb6248 100644
--- a/sys-apps/kbd/Manifest
+++ b/sys-apps/kbd/Manifest
@@ -1,3 +1,2 @@
-DIST kbd-2.0.4.tar.xz 1031864 BLAKE2B 10c2bded89befda1f1d7ab199796e082a4e3b2333cf29a2abbbe843191dce41a7289d5bc3b7e55d8b25c7144ae4b4977e4321b38896917d0083af8ddd4924a3e SHA512 5e264b3695b0af0bc85e0a4fa2c43e13648d8ea82102f3b051c28da2abfc52977577c470bce48f30cec9b0d215297e48c9b05e00561c990e3770fb68f6544e0f
-DIST kbd-2.2.0.tar.xz 1115220 BLAKE2B d4218f3a8f9212d16e8a14011f0e136f6aebd18f13f8d5da2bd63296e0aa857fc5e7fe927200345fca3b723bc879f87511b02c152824a73ae5743cc8175991e6 SHA512 5f407c20739487e423e8390e429d30838a1a69a0a50db083803ce56da919e25ce480b63fd1bcfac9eb362095f17e575783b09eaa55e26b442bfa3ed838e04f13
-DIST kbd-2.3.0.tar.xz 1099660 BLAKE2B 20044b942cc2568acc9c4616bc38cc0bacb6773ba397327e9e23c87f0473cfdb1a165b9905039fc60b69001d99f799c48491ca098b64961cf5821f7d4b954df7 SHA512 6d7ba496a963c29abf1f514831c47e6bc73797b04021115879cbdb203c879c5abfae9f8fcaeec52d8891cad848240d39f5293452d26c7f0a84fb58499ad6e927
+DIST kbd-2.5.1.tar.xz 1491952 BLAKE2B aab4c3d78c28709bf562b54fe94c0533d5c33185e183bf3eb944f89147b250d9df9b30b64a06eb4742feafe8c05a6aa491a7f007b4d6d9077bc19a4628ba05ae SHA512 74855f486aff5fc2f93a6cb29460a590c94eac653b001574e1b4eb1300ea99dfed9222f9e5d1d3a05a112a6880591d5c44ed6e76b8a64edf744ecb0892f562d0
+DIST kbd-2.6.4.tar.xz 1504584 BLAKE2B 25e55be0210c206c1f5eb0d85045bb1cbb2442cf88fb7eb28f7bbb8dd0d86473f48444fd9d80dfc624ce7ba8b39bfe1152ee6cf1877fab444e09600e93dae0ee SHA512 a4149cb0f85fd79b333a6c137d70896a30ebceb1cf9d4b5eef3abb2e1866d83b46cee651e4f3e512bf7e0ccd232d955c14f693e57020a3626e4943c4695fc8ab
diff --git a/sys-apps/kbd/files/kbd-2.0.4-vlock_configure_switch.patch b/sys-apps/kbd/files/kbd-2.0.4-vlock_configure_switch.patch
deleted file mode 100644
index c3f5b660cbd4..000000000000
--- a/sys-apps/kbd/files/kbd-2.0.4-vlock_configure_switch.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f7f357ef079b6d185f340e716d7c72a98d82bad0 Mon Sep 17 00:00:00 2001
-From: Garry Filakhtov <filakhtov@gmail.com>
-Date: Fri, 20 Jul 2018 15:58:56 +0200
-Subject: [PATCH] configure.ac: Fix logic of vlock configure switch
-
-Downstream bug report: https://bugs.gentoo.org/661650
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 87eb63c..07098cf 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -119,7 +119,7 @@ AM_CONDITIONAL(BUILD_LIBKEYMAP, test "$BUILD_LIBKEYMAP" = "yes")
-
- AC_ARG_ENABLE(vlock,
- AS_HELP_STRING(--disable-vlock, [do not build vlock]),
-- [VLOCK_PROG=no],[VLOCK_PROG=yes])
-+ [VLOCK_PROG=$enableval],[VLOCK_PROG=yes])
- AM_CONDITIONAL(VLOCK, test "$VLOCK_PROG" = "yes")
-
- if test "$VLOCK_PROG" = "yes"; then
diff --git a/sys-apps/kbd/files/kbd-2.2.0-cflags.patch b/sys-apps/kbd/files/kbd-2.2.0-cflags.patch
deleted file mode 100644
index 86c0f45074ac..000000000000
--- a/sys-apps/kbd/files/kbd-2.2.0-cflags.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 3b4f3ffbc9fedff83a0618f3dd3c6aafced3e72a Mon Sep 17 00:00:00 2001
-From: Lars Wendler <polynomial-c@gentoo.org>
-Date: Wed, 31 Jul 2019 18:07:33 +0200
-Subject: [PATCH] configure.ac: respect user CFLAGS
-
-Do not override user CFLAGS. Do not unconditionally add -g to CFLAGS.
-
-Gentoo-bug: https://bugs.gentoo.org/691142
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
----
- configure.ac | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 6bf6401..0f5ed2f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -72,9 +72,9 @@ if test "$enable_code_coverage" = yes; then
- fi
-
- case "$GCC,$ac_cv_prog_cc_g" in
-- yes,yes) CFLAGS="-g $CC_O_LEVEL $FORTIFY_SOURCE" ;;
-- yes,) CFLAGS="$CC_O_LEVEL $FORTIFY_SOURCE" ;;
-- ,yes) CFLAGS="-g" ;;
-+ yes,yes) CFLAGS="$CC_O_LEVEL $FORTIFY_SOURCE $CFLAGS" ;;
-+ yes,) CFLAGS="$CC_O_LEVEL $FORTIFY_SOURCE $CFLAGS" ;;
-+ ,yes) CFLAGS="$CFLAGS" ;;
- esac
-
- CC_CHECK_CFLAGS_APPEND([\
---
-2.22.0
-
diff --git a/sys-apps/kbd/files/kbd-2.2.0-kbdfile-dont_stop_on_first_error.patch b/sys-apps/kbd/files/kbd-2.2.0-kbdfile-dont_stop_on_first_error.patch
deleted file mode 100644
index 4b545f5bc2a2..000000000000
--- a/sys-apps/kbd/files/kbd-2.2.0-kbdfile-dont_stop_on_first_error.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From acf93e44f6d036303f95555069031f6fb12ce9d1 Mon Sep 17 00:00:00 2001
-From: Alexey Gladkov <gladkov.alexey@gmail.com>
-Date: Tue, 6 Aug 2019 13:59:34 +0200
-Subject: [PATCH] libkbdfile: Do not stop on the first error
-
-The kbdfile_find() gets a list of directories in which the filename. If
-we could not find the filename in the first directory, you do not need
-to return an error.
-
-Link: https://github.com/legionus/kbd/issues/31
-
-Signed-off-by: Alexey Gladkov <gladkov.alexey@gmail.com>
----
- src/libkbdfile/kbdfile.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/libkbdfile/kbdfile.c b/src/libkbdfile/kbdfile.c
-index 804f04a..fb8e035 100644
---- a/src/libkbdfile/kbdfile.c
-+++ b/src/libkbdfile/kbdfile.c
-@@ -433,8 +433,8 @@ kbdfile_find(char *fnam, char **dirpath, char **suffixes, struct kbdfile *fp)
- rc = findfile_in_dir(fnam, dir, recdepth, suffixes, fp);
- free(dir);
-
-- if (rc <= 0)
-- return rc;
-+ if (!rc)
-+ return 0;
- }
-
- return 1;
diff --git a/sys-apps/kbd/kbd-2.0.4-r1.ebuild b/sys-apps/kbd/kbd-2.0.4-r1.ebuild
deleted file mode 100644
index aeabdfc9bae0..000000000000
--- a/sys-apps/kbd/kbd-2.0.4-r1.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools pam
-
-if [[ ${PV} == "9999" ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
- EGIT_BRANCH="master"
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-DESCRIPTION="Keyboard and console utilities"
-HOMEPAGE="http://kbd-project.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="nls pam test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- app-arch/gzip
- pam? (
- !app-misc/vlock
- sys-libs/pam
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- test? ( dev-libs/check )
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-vlock_configure_switch.patch"
-)
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- git-r3_src_unpack
- else
- default
- fi
-
- # Rename conflicting keymaps to have unique names, bug #293228
- cd "${S}"/data/keymaps/i386 || die
- mv dvorak/no.map dvorak/no-dvorak.map || die
- mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
- mv olpc/es.map olpc/es-olpc.map || die
- mv olpc/pt.map olpc/pt-olpc.map || die
- mv qwerty/cz.map qwerty/cz-qwerty.map || die
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable nls)
- $(use_enable pam vlock)
- $(use_enable test tests)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- docinto html
- dodoc docs/doc/*.html
- use pam && pamd_mimic_system vlock auth account
-}
diff --git a/sys-apps/kbd/kbd-2.0.4.ebuild b/sys-apps/kbd/kbd-2.0.4.ebuild
deleted file mode 100644
index 1be67fe78125..000000000000
--- a/sys-apps/kbd/kbd-2.0.4.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-SCM=""
-if [[ ${PV} == "9999" ]] ; then
- SCM="autotools git-r3"
- EGIT_REPO_URI="https://git.kernel.org/cgit/linux/kernel/git/legion/${PN}.git"
- EGIT_BRANCH="master"
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-fi
-
-inherit eutils ${SCM}
-
-DESCRIPTION="Keyboard and console utilities"
-HOMEPAGE="http://kbd-project.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="nls pam test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="pam? ( sys-libs/pam )
- app-arch/gzip"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- test? ( dev-libs/check )"
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- git-r3_src_unpack
- else
- default
- fi
-
- # Rename conflicting keymaps to have unique names, bug #293228
- cd "${S}"/data/keymaps/i386 || die
- mv dvorak/no.map dvorak/no-dvorak.map || die
- mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
- mv olpc/es.map olpc/es-olpc.map || die
- mv olpc/pt.map olpc/pt-olpc.map || die
- mv qwerty/cz.map qwerty/cz-qwerty.map || die
-}
-
-src_prepare() {
- if [[ ${PV} == "9999" ]] ; then
- eautoreconf
- fi
-}
-
-src_configure() {
- econf \
- $(use_enable nls) \
- $(use_enable pam vlock) \
- $(use_enable test tests)
-}
-
-src_install() {
- default
- dohtml docs/doc/*.html
-}
diff --git a/sys-apps/kbd/kbd-2.2.0-r2.ebuild b/sys-apps/kbd/kbd-2.2.0-r2.ebuild
deleted file mode 100644
index b7b82aca99ef..000000000000
--- a/sys-apps/kbd/kbd-2.2.0-r2.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools pam
-
-if [[ ${PV} == "9999" ]] ; then
- inherit autotools git-r3
- #EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
- EGIT_REPO_URI="https://github.com/legionus/kbd.git"
- EGIT_BRANCH="master"
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-DESCRIPTION="Keyboard and console utilities"
-HOMEPAGE="http://kbd-project.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="nls pam test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- app-arch/gzip
- pam? (
- !app-misc/vlock
- sys-libs/pam
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- test? ( dev-libs/check )
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-cflags.patch" #691142
- "${FILESDIR}/${P}-kbdfile-dont_stop_on_first_error.patch"
-)
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- git-r3_src_unpack
- else
- default
- fi
-
- # Rename conflicting keymaps to have unique names, bug #293228
- cd "${S}"/data/keymaps/i386 || die
- mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
- mv olpc/es.map olpc/es-olpc.map || die
- mv olpc/pt.map olpc/pt-olpc.map || die
- mv qwerty/cz.map qwerty/cz-qwerty.map || die
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable nls)
- $(use_enable pam vlock)
- $(use_enable test tests)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- docinto html
- dodoc docs/doc/*.html
- use pam && pamd_mimic_system vlock auth account
-}
diff --git a/sys-apps/kbd/kbd-2.3.0-r1.ebuild b/sys-apps/kbd/kbd-2.3.0-r1.ebuild
deleted file mode 100644
index 3cb9fb4edd0d..000000000000
--- a/sys-apps/kbd/kbd-2.3.0-r1.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit pam
-
-if [[ ${PV} == "9999" ]] ; then
- inherit autotools git-r3
- #EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
- EGIT_REPO_URI="https://github.com/legionus/kbd.git"
- EGIT_BRANCH="master"
-else
- if [[ $(ver_cut 3) -lt 90 ]] ; then
- SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- else
- inherit autotools
- SRC_URI="https://github.com/legionus/kbd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- fi
-fi
-
-DESCRIPTION="Keyboard and console utilities"
-HOMEPAGE="http://kbd-project.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="nls pam test"
-#RESTRICT="!test? ( test )"
-# Upstream has strange assumptions how to run tests (see bug #732868)
-RESTRICT="test"
-
-RDEPEND="
- app-arch/gzip
- pam? (
- !app-misc/vlock
- sys-libs/pam
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- test? ( dev-libs/check )
-"
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- git-r3_src_unpack
- else
- default
- fi
-
- # Rename conflicting keymaps to have unique names, bug #293228
- cd "${S}"/data/keymaps/i386 || die
- mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
- mv olpc/es.map olpc/es-olpc.map || die
- mv olpc/pt.map olpc/pt-olpc.map || die
- mv qwerty/cz.map qwerty/cz-qwerty.map || die
-}
-
-src_prepare() {
- default
- if [[ ${PV} == "9999" ]] || [[ $(ver_cut 3) -ge 90 ]] ; then
- eautoreconf
- fi
-}
-
-src_configure() {
- local myeconfargs=(
- # USE="test" installs .a files
- --disable-static
- $(use_enable nls)
- $(use_enable pam vlock)
- $(use_enable test tests)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- docinto html
- dodoc docs/doc/*.html
- use pam && pamd_mimic_system vlock auth account
-
- # USE="test" installs .la files
- find "${ED}" -type f -name "*.la" -delete || die
-}
diff --git a/sys-apps/kbd/kbd-2.5.1.ebuild b/sys-apps/kbd/kbd-2.5.1.ebuild
new file mode 100644
index 000000000000..4b306c04b9fd
--- /dev/null
+++ b/sys-apps/kbd/kbd-2.5.1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://github.com/legionus/kbd.git https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
+ EGIT_BRANCH="master"
+else
+ if [[ $(ver_cut 3) -lt 90 ]] ; then
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ else
+ inherit autotools
+ SRC_URI="https://github.com/legionus/kbd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ fi
+fi
+
+DESCRIPTION="Keyboard and console utilities"
+HOMEPAGE="https://kbd-project.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="nls pam test"
+RESTRICT="!test? ( test )"
+
+# Testsuite's Makefile.am calls missing(!)
+# ... but this seems to be consistent with the autoconf docs?
+# Needs more investigation: https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
+QA_AM_MAINTAINER_MODE=".*--run autom4te --language=autotest.*"
+
+RDEPEND="
+ app-alternatives/gzip
+ pam? (
+ !app-misc/vlock
+ sys-libs/pam
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ test? ( dev-libs/check )
+"
+
+src_prepare() {
+ default
+
+ # Rename conflicting keymaps to have unique names, bug #293228
+ # See also https://github.com/legionus/kbd/issues/76.
+ pushd "${S}"/data/keymaps/i386 &> /dev/null || die
+ mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
+ mv olpc/es.map olpc/es-olpc.map || die
+ mv olpc/pt.map olpc/pt-olpc.map || die
+ mv qwerty/cz.map qwerty/cz-qwerty.map || die
+ popd &> /dev/null || die
+
+ if [[ ${PV} == 9999 ]] || [[ $(ver_cut 3) -ge 90 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-werror
+
+ $(use_enable nls)
+ $(use_enable pam vlock)
+ $(use_enable test tests)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ docinto html
+ dodoc docs/doc/*.html
+
+ # USE="test" installs .la files
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/kbd/kbd-2.6.4.ebuild b/sys-apps/kbd/kbd-2.6.4.ebuild
new file mode 100644
index 000000000000..d08263ba5bdd
--- /dev/null
+++ b/sys-apps/kbd/kbd-2.6.4.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://github.com/legionus/kbd.git https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
+ EGIT_BRANCH="master"
+else
+ if [[ $(ver_cut 3) -lt 90 ]] ; then
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ else
+ inherit autotools
+ SRC_URI="https://github.com/legionus/kbd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ fi
+fi
+
+DESCRIPTION="Keyboard and console utilities"
+HOMEPAGE="https://kbd-project.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="nls selinux pam test"
+RESTRICT="!test? ( test )"
+
+# Testsuite's Makefile.am calls missing(!)
+# ... but this seems to be consistent with the autoconf docs?
+# Needs more investigation: https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
+QA_AM_MAINTAINER_MODE=".*--run autom4te --language=autotest.*"
+
+DEPEND="
+ app-alternatives/gzip
+ pam? (
+ !app-misc/vlock
+ sys-libs/pam
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-loadkeys )
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? ( dev-libs/check )
+"
+
+src_prepare() {
+ default
+
+ # Rename conflicting keymaps to have unique names, bug #293228
+ # See also https://github.com/legionus/kbd/issues/76.
+ pushd "${S}"/data/keymaps/i386 &> /dev/null || die
+ mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
+ mv olpc/es.map olpc/es-olpc.map || die
+ mv olpc/pt.map olpc/pt-olpc.map || die
+ mv qwerty/cz.map qwerty/cz-qwerty.map || die
+ popd &> /dev/null || die
+
+ if [[ ${PV} == 9999 ]] || [[ $(ver_cut 3) -ge 90 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-werror
+
+ $(use_enable nls)
+ $(use_enable pam vlock)
+ $(use_enable test tests)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ docinto html
+ dodoc docs/doc/*.html
+
+ # USE="test" installs .la files
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/sys-apps/kbd/kbd-9999.ebuild b/sys-apps/kbd/kbd-9999.ebuild
index 3cb9fb4edd0d..23a50e0bfa38 100644
--- a/sys-apps/kbd/kbd-9999.ebuild
+++ b/sys-apps/kbd/kbd-9999.ebuild
@@ -1,19 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit pam
-
-if [[ ${PV} == "9999" ]] ; then
+if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3
- #EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
- EGIT_REPO_URI="https://github.com/legionus/kbd.git"
+ EGIT_REPO_URI="https://github.com/legionus/kbd.git https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
EGIT_BRANCH="master"
else
if [[ $(ver_cut 3) -lt 90 ]] ; then
SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
else
inherit autotools
SRC_URI="https://github.com/legionus/kbd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
@@ -21,66 +18,68 @@ else
fi
DESCRIPTION="Keyboard and console utilities"
-HOMEPAGE="http://kbd-project.org/"
+HOMEPAGE="https://kbd-project.org/"
LICENSE="GPL-2"
SLOT="0"
-IUSE="nls pam test"
-#RESTRICT="!test? ( test )"
-# Upstream has strange assumptions how to run tests (see bug #732868)
-RESTRICT="test"
+IUSE="nls selinux pam test"
+RESTRICT="!test? ( test )"
-RDEPEND="
- app-arch/gzip
+# Testsuite's Makefile.am calls missing(!)
+# ... but this seems to be consistent with the autoconf docs?
+# Needs more investigation: https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
+QA_AM_MAINTAINER_MODE=".*--run autom4te --language=autotest.*"
+
+DEPEND="
+ app-alternatives/gzip
pam? (
!app-misc/vlock
sys-libs/pam
)
"
-DEPEND="${RDEPEND}"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-loadkeys )
+"
BDEPEND="
virtual/pkgconfig
test? ( dev-libs/check )
"
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- git-r3_src_unpack
- else
- default
- fi
+src_prepare() {
+ default
# Rename conflicting keymaps to have unique names, bug #293228
- cd "${S}"/data/keymaps/i386 || die
+ # See also https://github.com/legionus/kbd/issues/76.
+ pushd "${S}"/data/keymaps/i386 &> /dev/null || die
mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
mv olpc/es.map olpc/es-olpc.map || die
mv olpc/pt.map olpc/pt-olpc.map || die
mv qwerty/cz.map qwerty/cz-qwerty.map || die
-}
+ popd &> /dev/null || die
-src_prepare() {
- default
- if [[ ${PV} == "9999" ]] || [[ $(ver_cut 3) -ge 90 ]] ; then
+ if [[ ${PV} == 9999 ]] || [[ $(ver_cut 3) -ge 90 ]] ; then
eautoreconf
fi
}
src_configure() {
local myeconfargs=(
- # USE="test" installs .a files
- --disable-static
+ --disable-werror
+
$(use_enable nls)
$(use_enable pam vlock)
$(use_enable test tests)
)
+
econf "${myeconfargs[@]}"
}
src_install() {
default
+
docinto html
dodoc docs/doc/*.html
- use pam && pamd_mimic_system vlock auth account
# USE="test" installs .la files
find "${ED}" -type f -name "*.la" -delete || die
diff --git a/sys-apps/kbd/metadata.xml b/sys-apps/kbd/metadata.xml
index 994903fdda44..9ef7f5ef4a9d 100644
--- a/sys-apps/kbd/metadata.xml
+++ b/sys-apps/kbd/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="freshmeat">kbd</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">legionus/kbd</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/kcheck/kcheck-0.0.2-r1.ebuild b/sys-apps/kcheck/kcheck-0.0.2-r1.ebuild
deleted file mode 100644
index d28b7022b350..000000000000
--- a/sys-apps/kcheck/kcheck-0.0.2-r1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/wraeth/kcheck"
- inherit git-r3
-else
- SRC_URI="https://github.com/wraeth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Record and check required kernel symbols are set"
-HOMEPAGE="https://github.com/wraeth/kcheck"
-
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- dev-python/configargparse[${PYTHON_USEDEP}]
- sys-apps/portage[${PYTHON_USEDEP}]"
-
-src_install() {
- distutils-r1_src_install
- mkdir "${D}"/etc || die
- mv -v "${D}"/{usr/,}etc/kcheck.conf || die
- rmdir -v "${D}"/usr/etc || die
-}
diff --git a/sys-apps/kcheck/kcheck-0.0.2-r2.ebuild b/sys-apps/kcheck/kcheck-0.0.2-r2.ebuild
new file mode 100644
index 000000000000..f1cb161e868b
--- /dev/null
+++ b/sys-apps/kcheck/kcheck-0.0.2-r2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit distutils-r1
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/wraeth/kcheck"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/wraeth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Record and check required kernel symbols are set"
+HOMEPAGE="https://github.com/wraeth/kcheck"
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ dev-python/ConfigArgParse[${PYTHON_USEDEP}]
+ sys-apps/portage[${PYTHON_USEDEP}]"
+
+src_install() {
+ distutils-r1_src_install
+ mkdir "${D}"/etc || die
+ mv -v "${D}"/{usr/,}etc/kcheck.conf || die
+ rmdir -v "${D}"/usr/etc || die
+}
diff --git a/sys-apps/kcheck/kcheck-9999.ebuild b/sys-apps/kcheck/kcheck-9999.ebuild
index d28b7022b350..f1cb161e868b 100644
--- a/sys-apps/kcheck/kcheck-9999.ebuild
+++ b/sys-apps/kcheck/kcheck-9999.ebuild
@@ -1,9 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{9..10} )
inherit distutils-r1
@@ -22,7 +21,7 @@ LICENSE="MIT"
SLOT="0"
RDEPEND="
- dev-python/configargparse[${PYTHON_USEDEP}]
+ dev-python/ConfigArgParse[${PYTHON_USEDEP}]
sys-apps/portage[${PYTHON_USEDEP}]"
src_install() {
diff --git a/sys-apps/kcheck/metadata.xml b/sys-apps/kcheck/metadata.xml
index 64e95068812b..4ca36f494595 100644
--- a/sys-apps/kcheck/metadata.xml
+++ b/sys-apps/kcheck/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>wraeth@gentoo.org</email>
- <name>Sam Jorna</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<bugs-to>https://github.com/wraeth/kcheck/issues</bugs-to>
<changelog>https://github.com/wraeth/kcheck/commits/master</changelog>
diff --git a/sys-apps/kexec-tools/Manifest b/sys-apps/kexec-tools/Manifest
index 7d82850e81a6..223a21a8405f 100644
--- a/sys-apps/kexec-tools/Manifest
+++ b/sys-apps/kexec-tools/Manifest
@@ -1 +1,3 @@
-DIST kexec-tools-2.0.20.tar.xz 297476 BLAKE2B 7e29e7f7d85296dd3e614c45f14c27eca74ce4426d5de2d20387d89f2f63afed318d6157cc4001849a04bb83505bbae87c43d34683ebaf9a70f5f29e3979ade3 SHA512 3112b6202c1030705c53e3f65a2b58aec14d65333a35aad681d48b9f2bd1c51a2e05c985a1e5e867ab02f8a9c97708483d9d225619db7c6993676f1a242e2d99
+DIST kexec-tools-2.0.22.tar.xz 303564 BLAKE2B 977c741eabf9b6b882550713ba59b18289b4f997fb382e96338efce6d04a9390fea952fc46ca72fd0a0b782261841ab2002da84b1819f955e63996eac900b0f7 SHA512 7580860f272eee5af52139809f12961e5a5d3a65f4e191183ca9c845410425d25818945ac14ed04a60e6ce474dc2656fc6a14041177b0bf703f450820c7d6aba
+DIST kexec-tools-2.0.24.tar.xz 303808 BLAKE2B 8188602f1b843c1dccc0307131f8c9ec0426c6cb3de898040352c1fed5f6d4bd7c58a0c2bf54290b91c8fe3401180df682959ee6c41693d07acc199c087c7db2 SHA512 ef7cf78246e2d729d81a3649791a5a23c385353cc75cbe8ef279616329fdaccc876d614c7f51e1456822a13a11520296070d9897467d24310399909e049c3822
+DIST kexec-tools-2.0.28.tar.xz 312524 BLAKE2B b2ab25c632cd2bad21751940acee1816f9cd930e1bb5af1052f9f6c4979dcd62d82c487a88fa8015e3ce7c843de9f47a3f6ccf7efa9270b5f24c79ba30a82a91 SHA512 889a7bf1d26bb309e4ff7ce1c8dbcf48c01e47221ea3acf1c4ef2a98a652c496e31bddcdb627d3adebd85f7541d1fb9122c60e741e10b3726e31a9733cadc753
diff --git a/sys-apps/kexec-tools/files/kexec-tools-2.0.20-build-multiboot2-for-i386.patch b/sys-apps/kexec-tools/files/kexec-tools-2.0.20-build-multiboot2-for-i386.patch
deleted file mode 100644
index 8f63ddbe3ba3..000000000000
--- a/sys-apps/kexec-tools/files/kexec-tools-2.0.20-build-multiboot2-for-i386.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 2c9f26ed20a791a7df0182ba82e93abb52f5a615 Mon Sep 17 00:00:00 2001
-From: Chris Packham <chris.packham@alliedtelesis.co.nz>
-Date: Mon, 18 Nov 2019 12:52:15 +1300
-Subject: kexec: build multiboot2 for i386
-
-This addresses the following compilation issues when building for i386.
-
- kexec/arch/i386/kexec-x86.c:39:22: error: 'multiboot2_x86_probe' undeclared here (not in a function); did you mean 'multiboot_x86_probe'?
- { "multiboot2-x86", multiboot2_x86_probe, multiboot2_x86_load,
- ^~~~~~~~~~~~~~~~~~~~
- multiboot_x86_probe
- kexec/arch/i386/kexec-x86.c:39:44: error: 'multiboot2_x86_load' undeclared here (not in a function); did you mean 'multiboot_x86_load'?
- { "multiboot2-x86", multiboot2_x86_probe, multiboot2_x86_load,
- ^~~~~~~~~~~~~~~~~~~
- multiboot_x86_load
- kexec/arch/i386/kexec-x86.c:40:4: error: 'multiboot2_x86_usage' undeclared here (not in a function); did you mean 'multiboot_x86_usage'?
- multiboot2_x86_usage },
- ^~~~~~~~~~~~~~~~~~~~
- multiboot_x86_usage
- make: *** [Makefile:114: kexec/arch/i386/kexec-x86.o] Error 1
- make: *** Waiting for unfinished jobs....
-
-Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
-Signed-off-by: Simon Horman <horms@verge.net.au>
----
- kexec/arch/i386/Makefile | 2 +-
- kexec/arch/i386/kexec-x86.h | 5 +++++
- 2 files changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/kexec/arch/i386/Makefile b/kexec/arch/i386/Makefile
-index 105cefd..f486103 100644
---- a/kexec/arch/i386/Makefile
-+++ b/kexec/arch/i386/Makefile
-@@ -7,6 +7,7 @@ i386_KEXEC_SRCS += kexec/arch/i386/kexec-elf-x86.c
- i386_KEXEC_SRCS += kexec/arch/i386/kexec-elf-rel-x86.c
- i386_KEXEC_SRCS += kexec/arch/i386/kexec-bzImage.c
- i386_KEXEC_SRCS += kexec/arch/i386/kexec-multiboot-x86.c
-+i386_KEXEC_SRCS += kexec/arch/i386/kexec-mb2-x86.c
- i386_KEXEC_SRCS += kexec/arch/i386/kexec-beoboot-x86.c
- i386_KEXEC_SRCS += kexec/arch/i386/kexec-nbi.c
- i386_KEXEC_SRCS += kexec/arch/i386/x86-linux-setup.c
-@@ -14,7 +15,6 @@ i386_KEXEC_SRCS += kexec/arch/i386/crashdump-x86.c
-
- dist += kexec/arch/i386/Makefile $(i386_KEXEC_SRCS) \
- kexec/arch/i386/crashdump-x86.h \
-- kexec/arch/i386/kexec-mb2-x86.c \
- kexec/arch/i386/kexec-x86.h \
- kexec/arch/i386/x86-linux-setup.h \
- kexec/arch/i386/include/arch/options.h
-diff --git a/kexec/arch/i386/kexec-x86.h b/kexec/arch/i386/kexec-x86.h
-index 1b58c3b..0f941df 100644
---- a/kexec/arch/i386/kexec-x86.h
-+++ b/kexec/arch/i386/kexec-x86.h
-@@ -60,6 +60,11 @@ int multiboot_x86_load(int argc, char **argv, const char *buf, off_t len,
- struct kexec_info *info);
- void multiboot_x86_usage(void);
-
-+int multiboot2_x86_load(int argc, char **argv, const char *buf, off_t len,
-+ struct kexec_info *info);
-+void multiboot2_x86_usage(void);
-+int multiboot2_x86_probe(const char *buf, off_t buf_len);
-+
- int elf_x86_probe(const char *buf, off_t len);
- int elf_x86_load(int argc, char **argv, const char *buf, off_t len,
- struct kexec_info *info);
---
-cgit 1.2-0.3.lf.el7
-
diff --git a/sys-apps/kexec-tools/files/kexec-tools-2.0.20-remove-duplicated-variable-declarations.patch b/sys-apps/kexec-tools/files/kexec-tools-2.0.20-remove-duplicated-variable-declarations.patch
deleted file mode 100644
index d71e76b3d632..000000000000
--- a/sys-apps/kexec-tools/files/kexec-tools-2.0.20-remove-duplicated-variable-declarations.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From cc087b11462af9f971a2c090d07e8d780a867b50 Mon Sep 17 00:00:00 2001
-From: Kairui Song <kasong@redhat.com>
-Date: Wed, 29 Jan 2020 13:38:19 +0800
-Subject: kexec-tools: Remove duplicated variable declarations
-
-When building kexec-tools for Fedora 32, following error is observed:
-
-/usr/bin/ld: kexec/arch/x86_64/kexec-bzImage64.o:(.bss+0x0): multiple definition of `bzImage_support_efi_boot';
-kexec/arch/i386/kexec-bzImage.o:(.bss+0x0): first defined here
-
-/builddir/build/BUILD/kexec-tools-2.0.20/kexec/arch/arm/../../fs2dt.h:33: multiple definition of `my_debug';
-kexec/fs2dt.o:/builddir/build/BUILD/kexec-tools-2.0.20/kexec/fs2dt.h:33: first defined here
-
-/builddir/build/BUILD/kexec-tools-2.0.20/kexec/arch/arm64/kexec-arm64.h:68: multiple definition of `arm64_mem';
-kexec/fs2dt.o:/builddir/build/BUILD/kexec-tools-2.0.20/././kexec/arch/arm64/kexec-arm64.h:68: first defined here
-
-/builddir/build/BUILD/kexec-tools-2.0.20/kexec/arch/arm64/kexec-arm64.h:54: multiple definition of `initrd_size';
-kexec/fs2dt.o:/builddir/build/BUILD/kexec-tools-2.0.20/././kexec/arch/arm64/kexec-arm64.h:54: first defined here
-
-/builddir/build/BUILD/kexec-tools-2.0.20/kexec/arch/arm64/kexec-arm64.h:53: multiple definition of `initrd_base';
-kexec/fs2dt.o:/builddir/build/BUILD/kexec-tools-2.0.20/././kexec/arch/arm64/kexec-arm64.h:53: first defined here
-
-And apparently, these variables are wrongly declared multiple times. So
-remove duplicated declaration.
-
-Signed-off-by: Kairui Song <kasong@redhat.com>
-Signed-off-by: Simon Horman <horms@verge.net.au>
----
- kexec/arch/arm64/kexec-arm64.h | 6 +++---
- kexec/arch/ppc64/kexec-elf-ppc64.c | 2 --
- kexec/arch/x86_64/kexec-bzImage64.c | 1 -
- kexec/fs2dt.h | 2 +-
- 4 files changed, 4 insertions(+), 7 deletions(-)
-
-diff --git a/kexec/arch/arm64/kexec-arm64.h b/kexec/arch/arm64/kexec-arm64.h
-index 628de79..ed447ac 100644
---- a/kexec/arch/arm64/kexec-arm64.h
-+++ b/kexec/arch/arm64/kexec-arm64.h
-@@ -50,8 +50,8 @@ int zImage_arm64_load(int argc, char **argv, const char *kernel_buf,
- void zImage_arm64_usage(void);
-
-
--off_t initrd_base;
--off_t initrd_size;
-+extern off_t initrd_base;
-+extern off_t initrd_size;
-
- /**
- * struct arm64_mem - Memory layout info.
-@@ -65,7 +65,7 @@ struct arm64_mem {
- };
-
- #define arm64_mem_ngv UINT64_MAX
--struct arm64_mem arm64_mem;
-+extern struct arm64_mem arm64_mem;
-
- uint64_t get_phys_offset(void);
- uint64_t get_vp_offset(void);
-diff --git a/kexec/arch/ppc64/kexec-elf-ppc64.c b/kexec/arch/ppc64/kexec-elf-ppc64.c
-index 3510b70..695b8b0 100644
---- a/kexec/arch/ppc64/kexec-elf-ppc64.c
-+++ b/kexec/arch/ppc64/kexec-elf-ppc64.c
-@@ -44,8 +44,6 @@
- uint64_t initrd_base, initrd_size;
- unsigned char reuse_initrd = 0;
- const char *ramdisk;
--/* Used for enabling printing message from purgatory code */
--int my_debug = 0;
-
- int elf_ppc64_probe(const char *buf, off_t len)
- {
-diff --git a/kexec/arch/x86_64/kexec-bzImage64.c b/kexec/arch/x86_64/kexec-bzImage64.c
-index 8edb3e4..ba8dc48 100644
---- a/kexec/arch/x86_64/kexec-bzImage64.c
-+++ b/kexec/arch/x86_64/kexec-bzImage64.c
-@@ -42,7 +42,6 @@
- #include <arch/options.h>
-
- static const int probe_debug = 0;
--int bzImage_support_efi_boot;
-
- int bzImage64_probe(const char *buf, off_t len)
- {
-diff --git a/kexec/fs2dt.h b/kexec/fs2dt.h
-index 7633273..fe24931 100644
---- a/kexec/fs2dt.h
-+++ b/kexec/fs2dt.h
-@@ -30,7 +30,7 @@ extern struct bootblock bb[1];
-
- /* Used for enabling printing message from purgatory code
- * Only has implemented for PPC64 */
--int my_debug;
-+extern int my_debug;
- extern int dt_no_old_root;
-
- void reserve(unsigned long long where, unsigned long long length);
---
-cgit 1.2-0.3.lf.el7
-
diff --git a/sys-apps/kexec-tools/files/kexec-tools-2.0.28-binutils-2.42-x86_64.patch b/sys-apps/kexec-tools/files/kexec-tools-2.0.28-binutils-2.42-x86_64.patch
new file mode 100644
index 000000000000..31a18d0bf5e8
--- /dev/null
+++ b/sys-apps/kexec-tools/files/kexec-tools-2.0.28-binutils-2.42-x86_64.patch
@@ -0,0 +1,94 @@
+From 328de8e00e298f00d7ba6b25dc3950147e9642e6 Mon Sep 17 00:00:00 2001
+From: Michel Lind <salimma@fedoraproject.org>
+Date: Tue, 30 Jan 2024 04:14:31 -0600
+Subject: Fix building on x86_64 with binutils 2.41
+
+Bug: https://bugs.gentoo.org/925010
+
+Newer versions of the GNU assembler (observed with binutils 2.41) will
+complain about the ".arch i386" in files assembled with "as --64",
+with the message "Error: 64bit mode not supported on 'i386'".
+
+Fix by moving ".arch i386" below the relevant ".code32" directive, so
+that the assembler is no longer expecting 64-bit instructions to be used
+by the time that the ".arch i386" directive is encountered.
+
+Based on similar iPXE fix:
+https://github.com/ipxe/ipxe/commit/6ca597eee
+
+Signed-off-by: Michel Lind <michel@michel-slm.name>
+Signed-off-by: Simon Horman <horms@kernel.org>
+---
+ purgatory/arch/i386/entry32-16-debug.S | 2 +-
+ purgatory/arch/i386/entry32-16.S | 2 +-
+ purgatory/arch/i386/entry32.S | 2 +-
+ purgatory/arch/i386/setup-x86.S | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/purgatory/arch/i386/entry32-16-debug.S b/purgatory/arch/i386/entry32-16-debug.S
+index 5167944d..12e11649 100644
+--- a/purgatory/arch/i386/entry32-16-debug.S
++++ b/purgatory/arch/i386/entry32-16-debug.S
+@@ -25,10 +25,10 @@
+ .globl entry16_debug_pre32
+ .globl entry16_debug_first32
+ .globl entry16_debug_old_first32
+- .arch i386
+ .balign 16
+ entry16_debug:
+ .code32
++ .arch i386
+ /* Compute where I am running at (assumes esp valid) */
+ call 1f
+ 1: popl %ebx
+diff --git a/purgatory/arch/i386/entry32-16.S b/purgatory/arch/i386/entry32-16.S
+index c051aab0..eace0958 100644
+--- a/purgatory/arch/i386/entry32-16.S
++++ b/purgatory/arch/i386/entry32-16.S
+@@ -20,10 +20,10 @@
+ #undef i386
+ .text
+ .globl entry16, entry16_regs
+- .arch i386
+ .balign 16
+ entry16:
+ .code32
++ .arch i386
+ /* Compute where I am running at (assumes esp valid) */
+ call 1f
+ 1: popl %ebx
+diff --git a/purgatory/arch/i386/entry32.S b/purgatory/arch/i386/entry32.S
+index f7a494f1..8ce9e316 100644
+--- a/purgatory/arch/i386/entry32.S
++++ b/purgatory/arch/i386/entry32.S
+@@ -20,10 +20,10 @@
+ #undef i386
+
+ .text
+- .arch i386
+ .globl entry32, entry32_regs
+ entry32:
+ .code32
++ .arch i386
+
+ /* Setup a gdt that should that is generally usefully */
+ lgdt %cs:gdt
+diff --git a/purgatory/arch/i386/setup-x86.S b/purgatory/arch/i386/setup-x86.S
+index 201bb2cb..a212eed4 100644
+--- a/purgatory/arch/i386/setup-x86.S
++++ b/purgatory/arch/i386/setup-x86.S
+@@ -21,10 +21,10 @@
+ #undef i386
+
+ .text
+- .arch i386
+ .globl purgatory_start
+ purgatory_start:
+ .code32
++ .arch i386
+
+ /* Load a gdt so I know what the segment registers are */
+ lgdt %cs:gdt
+--
+cgit 1.2.3-korg
+
diff --git a/sys-apps/kexec-tools/kexec-tools-2.0.20-r3.ebuild b/sys-apps/kexec-tools/kexec-tools-2.0.20-r3.ebuild
deleted file mode 100644
index 89aebbb29179..000000000000
--- a/sys-apps/kexec-tools/kexec-tools-2.0.20-r3.ebuild
+++ /dev/null
@@ -1,126 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit libtool linux-info systemd
-
-if [[ ${PV} == "9999" ]] ; then
- inherit git-r3 autotools
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git"
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kexec/${P/_/-}.tar.xz"
- [[ "${PV}" == *_rc* ]] || \
- KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-fi
-
-DESCRIPTION="Load another kernel from the currently executing Linux kernel"
-HOMEPAGE="https://kernel.org/pub/linux/utils/kernel/kexec/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="booke lzma xen zlib"
-
-REQUIRED_USE="lzma? ( zlib )"
-
-DEPEND="
- lzma? ( app-arch/xz-utils )
- zlib? ( sys-libs/zlib )"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${P/_/-}"
-
-CONFIG_CHECK="~KEXEC"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch
- "${FILESDIR}"/${PN}-2.0.4-out-of-source.patch
- "${FILESDIR}"/${P}-remove-duplicated-variable-declarations.patch
- "${FILESDIR}"/${P}-build-multiboot2-for-i386.patch
-)
-
-pkg_setup() {
- # GNU Make's $(COMPILE.S) passes ASFLAGS to $(CCAS), CCAS=$(CC)
- export ASFLAGS="${CCASFLAGS}"
-}
-
-src_prepare() {
- default
-
- # Append PURGATORY_EXTRA_CFLAGS flags set by configure, instead of overriding them completely.
- sed -e "/^PURGATORY_EXTRA_CFLAGS =/s/=/+=/" -i Makefile.in || die
-
- if [[ "${PV}" == 9999 ]] ; then
- eautoreconf
- else
- elibtoolize
- fi
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with booke)
- $(use_with lzma)
- $(use_with xen)
- $(use_with zlib)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- # Respect CFLAGS for purgatory.
- # purgatory/Makefile uses PURGATORY_EXTRA_CFLAGS variable.
- # -mfunction-return=thunk and -mindirect-branch=thunk conflict with
- # -mcmodel=large which is added by build system.
- # Replace them with -mfunction-return=thunk-inline and -mindirect-branch=thunk-inline.
- local flag flags=()
- for flag in ${CFLAGS}; do
- [[ ${flag} == -mfunction-return=thunk ]] && flag="-mfunction-return=thunk-inline"
- [[ ${flag} == -mindirect-branch=thunk ]] && flag="-mindirect-branch=thunk-inline"
- flags+=("${flag}")
- done
- local -x PURGATORY_EXTRA_CFLAGS="${flags[*]}"
-
- default
-}
-
-src_install() {
- default
-
- dodoc "${FILESDIR}"/README.Gentoo
-
- newinitd "${FILESDIR}"/kexec-r2.init kexec
- newconfd "${FILESDIR}"/kexec.conf-2.0.4 kexec
-
- insinto /etc
- doins "${FILESDIR}"/kexec.conf
-
- insinto /etc/kernel/postinst.d
- doins "${FILESDIR}"/90_kexec
-
- systemd_dounit "${FILESDIR}"/kexec.service
-}
-
-pkg_postinst() {
- if systemd_is_booted || has_version sys-apps/systemd; then
- elog "For systemd support the new config file is"
- elog " /etc/kexec.conf"
- elog "Please adopt it to your needs as there is no autoconfig anymore"
- fi
-
- local n_root_args=$(grep -o -- '\<root=' /proc/cmdline 2>/dev/null | wc -l)
- local has_rootpart_set=no
- if [[ -f "${EROOT}/etc/conf.d/kexec" ]]; then
- if grep -q -E -- '^ROOTPART=' "${EROOT}/etc/conf.d/kexec" 2>/dev/null; then
- has_rootpart_set=yes
- fi
- fi
-
- if [[ ${n_root_args} > 1 && "${has_rootpart_set}" == "no" ]]; then
- ewarn "WARNING: Multiple root arguments (root=) on kernel command-line detected!"
- ewarn "This was probably caused by a previous version of ${PN}."
- ewarn "Please reboot system once *without* kexec to avoid boot problems"
- ewarn "in case running system and initramfs do not agree on detected"
- ewarn "root device name!"
- fi
-}
diff --git a/sys-apps/kexec-tools/kexec-tools-2.0.22.ebuild b/sys-apps/kexec-tools/kexec-tools-2.0.22.ebuild
new file mode 100644
index 000000000000..2f8eea8c0dee
--- /dev/null
+++ b/sys-apps/kexec-tools/kexec-tools-2.0.22.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit libtool linux-info optfeature systemd
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3 autotools
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git"
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kexec/${P/_/-}.tar.xz"
+ [[ "${PV}" == *_rc* ]] || \
+ KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+fi
+
+DESCRIPTION="Load another kernel from the currently executing Linux kernel"
+HOMEPAGE="https://kernel.org/pub/linux/utils/kernel/kexec/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="booke lzma xen zlib"
+
+REQUIRED_USE="lzma? ( zlib )"
+
+DEPEND="
+ lzma? ( app-arch/xz-utils )
+ zlib? ( sys-libs/zlib )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${P/_/-}"
+
+CONFIG_CHECK="~KEXEC"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch
+ "${FILESDIR}"/${PN}-2.0.4-out-of-source.patch
+)
+
+pkg_setup() {
+ # GNU Make's $(COMPILE.S) passes ASFLAGS to $(CCAS), CCAS=$(CC)
+ export ASFLAGS="${CCASFLAGS}"
+}
+
+src_prepare() {
+ default
+
+ # Append PURGATORY_EXTRA_CFLAGS flags set by configure, instead of overriding them completely.
+ sed -e "/^PURGATORY_EXTRA_CFLAGS =/s/=/+=/" -i Makefile.in || die
+
+ if [[ "${PV}" == 9999 ]] ; then
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with booke)
+ $(use_with lzma)
+ $(use_with xen)
+ $(use_with zlib)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Respect CFLAGS for purgatory.
+ # purgatory/Makefile uses PURGATORY_EXTRA_CFLAGS variable.
+ # -mfunction-return=thunk and -mindirect-branch=thunk conflict with
+ # -mcmodel=large which is added by build system.
+ # Replace them with -mfunction-return=thunk-inline and -mindirect-branch=thunk-inline.
+ local flag flags=()
+ for flag in ${CFLAGS}; do
+ [[ ${flag} == -mfunction-return=thunk ]] && flag="-mfunction-return=thunk-inline"
+ [[ ${flag} == -mindirect-branch=thunk ]] && flag="-mindirect-branch=thunk-inline"
+ flags+=("${flag}")
+ done
+ local -x PURGATORY_EXTRA_CFLAGS="${flags[*]}"
+
+ default
+}
+
+src_install() {
+ default
+
+ dodoc "${FILESDIR}"/README.Gentoo
+
+ newinitd "${FILESDIR}"/kexec-r2.init kexec
+ newconfd "${FILESDIR}"/kexec.conf-2.0.4 kexec
+
+ insinto /etc
+ doins "${FILESDIR}"/kexec.conf
+
+ insinto /etc/kernel/postinst.d
+ doins "${FILESDIR}"/90_kexec
+
+ systemd_dounit "${FILESDIR}"/kexec.service
+}
+
+pkg_postinst() {
+ if systemd_is_booted || has_version sys-apps/systemd; then
+ elog "For systemd support the new config file is"
+ elog " /etc/kexec.conf"
+ elog "Please adopt it to your needs as there is no autoconfig anymore"
+ fi
+
+ local n_root_args=$(grep -o -- '\<root=' /proc/cmdline 2>/dev/null | wc -l)
+ local has_rootpart_set=no
+ if [[ -f "${EROOT}/etc/conf.d/kexec" ]]; then
+ if grep -q -E -- '^ROOTPART=' "${EROOT}/etc/conf.d/kexec" 2>/dev/null; then
+ has_rootpart_set=yes
+ fi
+ fi
+
+ if [[ ${n_root_args} -gt 1 && "${has_rootpart_set}" == "no" ]]; then
+ ewarn "WARNING: Multiple root arguments (root=) on kernel command-line detected!"
+ ewarn "This was probably caused by a previous version of ${PN}."
+ ewarn "Please reboot system once *without* kexec to avoid boot problems"
+ ewarn "in case running system and initramfs do not agree on detected"
+ ewarn "root device name!"
+ fi
+
+ optfeature "automatically updating /etc/kexec.conf on each kernel installation" \
+ "sys-kernel/installkernel[-systemd]"
+}
diff --git a/sys-apps/kexec-tools/kexec-tools-2.0.24.ebuild b/sys-apps/kexec-tools/kexec-tools-2.0.24.ebuild
new file mode 100644
index 000000000000..924cf21eef4a
--- /dev/null
+++ b/sys-apps/kexec-tools/kexec-tools-2.0.24.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool linux-info optfeature systemd
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3 autotools
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git"
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kexec/${P/_/-}.tar.xz"
+ [[ "${PV}" == *_rc* ]] || \
+ KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+fi
+
+DESCRIPTION="Load another kernel from the currently executing Linux kernel"
+HOMEPAGE="https://kernel.org/pub/linux/utils/kernel/kexec/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="booke lzma selinux xen zlib"
+
+REQUIRED_USE="lzma? ( zlib )"
+
+DEPEND="
+ lzma? ( app-arch/xz-utils )
+ zlib? ( sys-libs/zlib )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-kdump )
+"
+
+S="${WORKDIR}/${P/_/-}"
+
+CONFIG_CHECK="~KEXEC"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch
+ "${FILESDIR}"/${PN}-2.0.4-out-of-source.patch
+)
+
+pkg_setup() {
+ # GNU Make's $(COMPILE.S) passes ASFLAGS to $(CCAS), CCAS=$(CC)
+ export ASFLAGS="${CCASFLAGS}"
+}
+
+src_prepare() {
+ default
+
+ # Append PURGATORY_EXTRA_CFLAGS flags set by configure, instead of overriding them completely.
+ sed -e "/^PURGATORY_EXTRA_CFLAGS =/s/=/+=/" -i Makefile.in || die
+
+ if [[ "${PV}" == 9999 ]] ; then
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with booke)
+ $(use_with lzma)
+ $(use_with xen)
+ $(use_with zlib)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Respect CFLAGS for purgatory.
+ # purgatory/Makefile uses PURGATORY_EXTRA_CFLAGS variable.
+ # -mfunction-return=thunk and -mindirect-branch=thunk conflict with
+ # -mcmodel=large which is added by build system.
+ # Replace them with -mfunction-return=thunk-inline and -mindirect-branch=thunk-inline.
+ local flag flags=()
+ for flag in ${CFLAGS}; do
+ [[ ${flag} == -mfunction-return=thunk ]] && flag="-mfunction-return=thunk-inline"
+ [[ ${flag} == -mindirect-branch=thunk ]] && flag="-mindirect-branch=thunk-inline"
+ flags+=("${flag}")
+ done
+ local -x PURGATORY_EXTRA_CFLAGS="${flags[*]}"
+
+ default
+}
+
+src_install() {
+ default
+
+ dodoc "${FILESDIR}"/README.Gentoo
+
+ newinitd "${FILESDIR}"/kexec-r2.init kexec
+ newconfd "${FILESDIR}"/kexec.conf-2.0.4 kexec
+
+ insinto /etc
+ doins "${FILESDIR}"/kexec.conf
+
+ insinto /etc/kernel/postinst.d
+ doins "${FILESDIR}"/90_kexec
+
+ systemd_dounit "${FILESDIR}"/kexec.service
+}
+
+pkg_postinst() {
+ if systemd_is_booted || has_version sys-apps/systemd; then
+ elog "For systemd support the new config file is"
+ elog " /etc/kexec.conf"
+ elog "Please adopt it to your needs as there is no autoconfig anymore"
+ fi
+
+ local n_root_args=$(grep -o -- '\<root=' /proc/cmdline 2>/dev/null | wc -l)
+ local has_rootpart_set=no
+ if [[ -f "${EROOT}/etc/conf.d/kexec" ]]; then
+ if grep -q -E -- '^ROOTPART=' "${EROOT}/etc/conf.d/kexec" 2>/dev/null; then
+ has_rootpart_set=yes
+ fi
+ fi
+
+ if [[ ${n_root_args} -gt 1 && "${has_rootpart_set}" == "no" ]]; then
+ ewarn "WARNING: Multiple root arguments (root=) on kernel command-line detected!"
+ ewarn "This was probably caused by a previous version of ${PN}."
+ ewarn "Please reboot system once *without* kexec to avoid boot problems"
+ ewarn "in case running system and initramfs do not agree on detected"
+ ewarn "root device name!"
+ fi
+
+ optfeature "automatically updating /etc/kexec.conf on each kernel installation" \
+ "sys-kernel/installkernel[-systemd]"
+}
diff --git a/sys-apps/kexec-tools/kexec-tools-2.0.28.ebuild b/sys-apps/kexec-tools/kexec-tools-2.0.28.ebuild
new file mode 100644
index 000000000000..a19771a7837b
--- /dev/null
+++ b/sys-apps/kexec-tools/kexec-tools-2.0.28.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool linux-info optfeature systemd
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3 autotools
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git"
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kexec/${P/_/-}.tar.xz"
+ [[ "${PV}" == *_rc* ]] || \
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Load another kernel from the currently executing Linux kernel"
+HOMEPAGE="https://kernel.org/pub/linux/utils/kernel/kexec/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="booke lzma selinux xen zlib"
+
+REQUIRED_USE="lzma? ( zlib )"
+
+DEPEND="
+ lzma? ( app-arch/xz-utils )
+ zlib? ( sys-libs/zlib )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-kdump )
+"
+
+S="${WORKDIR}/${P/_/-}"
+
+CONFIG_CHECK="~KEXEC"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch
+ "${FILESDIR}"/${PN}-2.0.4-out-of-source.patch
+ "${FILESDIR}"/${PN}-2.0.28-binutils-2.42-x86_64.patch # Bug 925010
+)
+
+pkg_setup() {
+ # GNU Make's $(COMPILE.S) passes ASFLAGS to $(CCAS), CCAS=$(CC)
+ export ASFLAGS="${CCASFLAGS}"
+}
+
+src_prepare() {
+ default
+
+ # Append PURGATORY_EXTRA_CFLAGS flags set by configure, instead of overriding them completely.
+ sed -e "/^PURGATORY_EXTRA_CFLAGS =/s/=/+=/" -i Makefile.in || die
+
+ if [[ "${PV}" == 9999 ]] ; then
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with booke)
+ $(use_with lzma)
+ $(use_with xen)
+ $(use_with zlib)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Respect CFLAGS for purgatory.
+ # purgatory/Makefile uses PURGATORY_EXTRA_CFLAGS variable.
+ # -mfunction-return=thunk and -mindirect-branch=thunk conflict with
+ # -mcmodel=large which is added by build system.
+ # Replace them with -mfunction-return=thunk-inline and -mindirect-branch=thunk-inline.
+ local flag flags=()
+ for flag in ${CFLAGS}; do
+ [[ ${flag} == -mfunction-return=thunk ]] && flag="-mfunction-return=thunk-inline"
+ [[ ${flag} == -mindirect-branch=thunk ]] && flag="-mindirect-branch=thunk-inline"
+ flags+=("${flag}")
+ done
+ local -x PURGATORY_EXTRA_CFLAGS="${flags[*]}"
+
+ default
+}
+
+src_install() {
+ default
+
+ dodoc "${FILESDIR}"/README.Gentoo
+
+ newinitd "${FILESDIR}"/kexec-r2.init kexec
+ newconfd "${FILESDIR}"/kexec.conf-2.0.4 kexec
+
+ insinto /etc
+ doins "${FILESDIR}"/kexec.conf
+
+ insinto /etc/kernel/postinst.d
+ doins "${FILESDIR}"/90_kexec
+
+ systemd_dounit "${FILESDIR}"/kexec.service
+}
+
+pkg_postinst() {
+ if systemd_is_booted || has_version sys-apps/systemd; then
+ elog "For systemd support the new config file is"
+ elog " /etc/kexec.conf"
+ elog "Please adopt it to your needs as there is no autoconfig anymore"
+ fi
+
+ local n_root_args=$(grep -o -- '\<root=' /proc/cmdline 2>/dev/null | wc -l)
+ local has_rootpart_set=no
+ if [[ -f "${EROOT}/etc/conf.d/kexec" ]]; then
+ if grep -q -E -- '^ROOTPART=' "${EROOT}/etc/conf.d/kexec" 2>/dev/null; then
+ has_rootpart_set=yes
+ fi
+ fi
+
+ if [[ ${n_root_args} -gt 1 && "${has_rootpart_set}" == "no" ]]; then
+ ewarn "WARNING: Multiple root arguments (root=) on kernel command-line detected!"
+ ewarn "This was probably caused by a previous version of ${PN}."
+ ewarn "Please reboot system once *without* kexec to avoid boot problems"
+ ewarn "in case running system and initramfs do not agree on detected"
+ ewarn "root device name!"
+ fi
+
+ optfeature "automatically updating /etc/kexec.conf on each kernel installation" \
+ "sys-kernel/installkernel[-systemd]"
+}
diff --git a/sys-apps/kexec-tools/kexec-tools-9999.ebuild b/sys-apps/kexec-tools/kexec-tools-9999.ebuild
index 86b8d9fc9789..c107633e4b71 100644
--- a/sys-apps/kexec-tools/kexec-tools-9999.ebuild
+++ b/sys-apps/kexec-tools/kexec-tools-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit libtool linux-info systemd
+inherit libtool linux-info optfeature systemd
if [[ ${PV} == "9999" ]] ; then
inherit git-r3 autotools
@@ -19,14 +19,18 @@ HOMEPAGE="https://kernel.org/pub/linux/utils/kernel/kexec/"
LICENSE="GPL-2"
SLOT="0"
-IUSE="booke lzma xen zlib"
+IUSE="booke lzma selinux xen zlib"
REQUIRED_USE="lzma? ( zlib )"
DEPEND="
lzma? ( app-arch/xz-utils )
- zlib? ( sys-libs/zlib )"
-RDEPEND="${DEPEND}"
+ zlib? ( sys-libs/zlib )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-kdump )
+"
S="${WORKDIR}/${P/_/-}"
@@ -114,11 +118,14 @@ pkg_postinst() {
fi
fi
- if [[ ${n_root_args} > 1 && "${has_rootpart_set}" == "no" ]]; then
+ if [[ ${n_root_args} -gt 1 && "${has_rootpart_set}" == "no" ]]; then
ewarn "WARNING: Multiple root arguments (root=) on kernel command-line detected!"
ewarn "This was probably caused by a previous version of ${PN}."
ewarn "Please reboot system once *without* kexec to avoid boot problems"
ewarn "in case running system and initramfs do not agree on detected"
ewarn "root device name!"
fi
+
+ optfeature "automatically updating /etc/kexec.conf on each kernel installation" \
+ "sys-kernel/installkernel[-systemd]"
}
diff --git a/sys-apps/kexec-tools/metadata.xml b/sys-apps/kexec-tools/metadata.xml
index 2ea57db782e2..9f81955b6b17 100644
--- a/sys-apps/kexec-tools/metadata.xml
+++ b/sys-apps/kexec-tools/metadata.xml
@@ -1,13 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>liaoyuan@gmail.com</email>
+ <name>Yuan Liao</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="lzma">Enables support for LZMA compressed kernel images</flag>
<flag name="booke">Include support for Book-E memory management</flag>
<flag name="xen">Enable extended xen support</flag>
</use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:kernel:kexec-tools</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/keyutils/Manifest b/sys-apps/keyutils/Manifest
index 20f06fe2a31f..a4690bb30144 100644
--- a/sys-apps/keyutils/Manifest
+++ b/sys-apps/keyutils/Manifest
@@ -1,2 +1 @@
-DIST keyutils-1.6.1.tar.gz 119065 BLAKE2B b0c65d8a1ee8cab1ac712820a8bf073777eacd558ddd007fa0fd50467d1de86cff238c1c0e6b33b5ff4da7dfd7e2fd673ce5706c39780e1a4fbee7d9653f3bc9 SHA512 a717d9bc6142edefc02da9e92242db352e0bc835483c303629c236e6d9cc51fb495b03fdf9e0e9f0864d7e755c92b7a67f018e806a5de1944673e60e317134a2
DIST keyutils-1.6.3.tar.gz 137022 BLAKE2B b5620b1b6109415fec1268963c2c65d774f3ef7a69eb1ce8d5d8e78b4b807e4fdfda861662a1b5556975ef867add8f985362a31b6608ac2dc198c8d0395d516b SHA512 f65965b8566037078b8eeffa66c6fdbe121c8c2bea7fa5bce04cf7ba5ccc50d5b48e51f4a67ca91e4d5d9a12469e7e3eb3036c920ab25e3feba6e93b4c149cf9
diff --git a/sys-apps/keyutils/files/keyutils-1.6-endian-check-1.patch b/sys-apps/keyutils/files/keyutils-1.6-endian-check-1.patch
deleted file mode 100644
index e783ec699c34..000000000000
--- a/sys-apps/keyutils/files/keyutils-1.6-endian-check-1.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 0a99778774df85448aeda0a37b85c43bc8868a9e Mon Sep 17 00:00:00 2001
-From: Lars Wendler <polynomial-c@gentoo.org>
-Date: Fri, 16 Nov 2018 12:37:29 +0100
-Subject: [PATCH] fix regexp match against `file /proc/$$/exe` for -fPIE bash
-
-Now that bash is built with PIE enabled, keyutils' check for endianness
-fails because file no longer returns "executable", but instead returns
-"shared object" for file << 5.33 and "pie executable" for file >= 5.33.
----
- tests/toolbox.inc.sh | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/tests/toolbox.inc.sh b/tests/toolbox.inc.sh
-index 0ce6db0..712c5bd 100644
---- a/tests/toolbox.inc.sh
-+++ b/tests/toolbox.inc.sh
-@@ -13,10 +13,10 @@
- echo === $OUTPUTFILE ===
-
- endian=`file -L /proc/$$/exe`
--if expr "$endian" : '.* MSB \+\(executable\|shared object\).*' >&/dev/null
-+if expr "$endian" : '.* MSB \+\(executable\|shared object\|pie executable\).*' >&/dev/null
- then
- endian=BE
--elif expr "$endian" : '.* LSB \+\(executable\|shared object\).*' >&/dev/null
-+elif expr "$endian" : '.* LSB \+\(executable\|shared object\|pie executable\).*' >&/dev/null
- then
- endian=LE
- else
---
-2.19.1
-
diff --git a/sys-apps/keyutils/files/keyutils-1.6.1-silence-rpm-check.patch b/sys-apps/keyutils/files/keyutils-1.6.1-silence-rpm-check.patch
deleted file mode 100644
index f68d7d111a0c..000000000000
--- a/sys-apps/keyutils/files/keyutils-1.6.1-silence-rpm-check.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Hide
-
-> grep: /etc/rpm: No such file or directory
-> grep: /usr/lib/rpm: No such file or directory
-
-errors.
-
-Bug: https://bugs.gentoo.org/656446
-
---- keyutils-1.6.1/Makefile
-+++ keyutils-1.6.1/Makefile
-@@ -267,7 +267,7 @@
- ZSRCBALL := rpmbuild/SOURCES/$(ZTARBALL)
-
- BUILDID := .local
--dist := $(word 2,$(shell grep -r "^%dist" /etc/rpm /usr/lib/rpm))
-+dist := $(word 2,$(shell grep -r "^%dist" /etc/rpm /usr/lib/rpm 2>/dev/null))
- release3:= $(word 2,$(shell grep ^Release: $(SPECFILE)))
- release2:= $(subst %{?dist},$(dist),$(release3))
- release1:= $(subst %{?buildid},$(BUILDID),$(release2))
diff --git a/sys-apps/keyutils/files/keyutils-1.6.3-fix-rpmspec-check.patch b/sys-apps/keyutils/files/keyutils-1.6.3-fix-rpmspec-check.patch
new file mode 100644
index 000000000000..3fb659712aed
--- /dev/null
+++ b/sys-apps/keyutils/files/keyutils-1.6.3-fix-rpmspec-check.patch
@@ -0,0 +1,38 @@
+https://bugs.gentoo.org/760633
+
+From 41077f8901b642d36b63f94b0fc62377a07fc0b2 Mon Sep 17 00:00:00 2001
+From: Adrian Ratiu <adrian.ratiu@collabora.com>
+Date: Tue, 4 Jan 2022 03:51:10 +0200
+Subject: [PATCH] Makefile: only run rpmspec if it exists
+
+keyutils is built on many distros which do not use rpm like
+Gentoo, ChromeOS or Arch. Older versions of bash silently
+ignored the fact that rpmspec was missing, but newer bash
+like v5.1 issue a new error:
+
+/bin/sh: line 1: rpmspec: command not found
+
+This happens every time the Makefile is parsed, including
+for a simple "make" invocation or "make install" even if
+a rpm package is not desired.
+
+Arch Linux simply ignores this new error but Gentoo and
+ChromeOS fail because portage actively monitors the build
+log for errors like this. See bug report [1].
+
+Fix this by calling rpmspec only if it exists.
+
+[1] https://bugs.gentoo.org/760633
+
+Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
+--- a/Makefile
++++ b/Makefile
+@@ -285,7 +285,7 @@ SRCBALL := rpmbuild/SOURCES/$(TARBALL)
+ ZSRCBALL := rpmbuild/SOURCES/$(ZTARBALL)
+
+ BUILDID := .local
+-rpmver0 := $(shell rpmspec -q ./keyutils.spec --define "buildid $(BUILDID)")
++rpmver0 := $(shell if which rpmspec >/dev/null 2>&1; then rpmspec -q ./keyutils.spec --define "buildid $(BUILDID)"; fi)
+ rpmver1 := $(word 1,$(rpmver0))
+ rpmver2 := $(subst ., ,$(rpmver1))
+ rpmver3 := $(lastword $(rpmver2))
diff --git a/sys-apps/keyutils/files/keyutils-1.6.3-tests.patch b/sys-apps/keyutils/files/keyutils-1.6.3-tests.patch
new file mode 100644
index 000000000000..d9414e800a6c
--- /dev/null
+++ b/sys-apps/keyutils/files/keyutils-1.6.3-tests.patch
@@ -0,0 +1,76 @@
+https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/commit/?id=c076dff259e99d84d3822b4d2ad7f3f66532f411
+
+From c076dff259e99d84d3822b4d2ad7f3f66532f411 Mon Sep 17 00:00:00 2001
+From: Pavel Reichl <preichl@redhat.com>
+Date: Tue, 20 Dec 2022 14:13:29 +0100
+Subject: test: Fix test expectation based on kernel config
+
+Some test results are dependent on the kernel configuration option
+CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE.
+
+Check the kernel configuration file for its presence and expect appropriate
+test results.
+
+Function has_kernel_config is based on its xfstsests counterpart.
+
+Signed-off-by: Pavel Reichl <preichl@redhat.com>
+Signed-off-by: David Howells <dhowells@redhat.com>
+--- a/tests/features/builtin_trusted/runtest.sh
++++ b/tests/features/builtin_trusted/runtest.sh
+@@ -33,7 +33,11 @@ expect_error EACCES
+ create_key --fail user a a $stk
+ expect_error EOPNOTSUPP
+ create_key --fail user a a $blk
+-expect_error EACCES
++if has_kernel_config "CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE"; then
++ expect_error EOPNOTSUPP
++else
++ expect_error EACCES
++fi
+
+ # Try adding a key to the keyrings
+ marker "TRY ADDING ASYMMETRIC KEYS"
+@@ -89,7 +93,11 @@ expect_error EACCES
+ create_key --fail -x asymmetric "" "$x509" $stk
+ expect_error ENOKEY
+ create_key --fail -x asymmetric "" "$x509" $blk
+-expect_error EACCES
++if has_kernel_config "CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE"; then
++ expect_error EOPNOTSUPP
++else
++ expect_error EACCES
++fi
+
+ echo "++++ FINISHED TEST: $result" >>$OUTPUTFILE
+
+--- a/tests/prepare.inc.sh
++++ b/tests/prepare.inc.sh
+@@ -4,6 +4,26 @@
+ includes=${BASH_SOURCE[0]}
+ includes=${includes%/*}/
+
++# Check if currently running kernel has option set
++function has_kernel_config()
++{
++ local option=$1
++ local uname=$(uname -r)
++ local config_list="$KCONFIG_PATH
++ /lib/modules/$uname/build/.config
++ /boot/config-$uname
++ /lib/kernel/config-$uname"
++
++ for config in $config_list; do
++ [ ! -f $config ] && continue
++ grep -qE "^${option}=[my]" $config
++ return
++ done
++
++ echo "Failed to find kernel configuration file"
++ return false
++}
++
+ # --- need to run in own session keyring
+ watch_fd=0
+ if [ "$1" != "--inside-test-session" ]
+--
+cgit 1.2.3-korg
diff --git a/sys-apps/keyutils/keyutils-1.6.1.ebuild b/sys-apps/keyutils/keyutils-1.6.1.ebuild
deleted file mode 100644
index 3189087a0eff..000000000000
--- a/sys-apps/keyutils/keyutils-1.6.1.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib toolchain-funcs linux-info multilib-minimal usr-ldscript
-
-DESCRIPTION="Linux Key Management Utilities"
-HOMEPAGE="https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git"
-SRC_URI="https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/${P}.tar.gz"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0/1.9"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static static-libs test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=""
-DEPEND="!prefix? ( >=sys-kernel/linux-headers-2.6.11 )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.6-endian-check-1.patch
- "${FILESDIR}"/${PN}-1.6-makefile-fixup.patch
- "${FILESDIR}"/${PN}-1.6.1-silence-rpm-check.patch #656446
- "${FILESDIR}"/${PN}-1.5.10-disable-tests.patch #519062 #522050
- "${FILESDIR}"/${PN}-1.5.9-header-extern-c.patch
-)
-
-pkg_setup() {
- # To prevent a failure in test phase and false positive bug reports
- # we are enforcing the following options because testsuite expects
- # that these options are available. I.e. testsuite only decides based
- # on kernel version which tests will be called, no feature checking.
- if use test ; then
- CONFIG_CHECK="KEYS"
- ERROR_KEYS="You must have CONFIG_KEYS to run the package testsuite!"
-
- if kernel_is -ge 2 6 10 && kernel_is -lt 4 0 0 ; then
- CONFIG_CHECK="${CONFIG_CHECK} KEYS_DEBUG_PROC_KEYS"
- ERROR_KEYS_DEBUG_PROC_KEYS="You must have CONFIG_KEYS_DEBUG_PROC_KEYS to run the package testsuite!"
- fi
-
- if kernel_is -ge 4 7 ; then
- CONFIG_CHECK="${CONFIG_CHECK} KEY_DH_OPERATIONS"
- ERROR_KEY_DH_OPERATIONS="You must have CONFIG_KEY_DH_OPERATIONS to run the package testsuite!"
- fi
- else
- CONFIG_CHECK="~KEYS"
- ERROR_KEYS="You will be unable to use this package on this system because CONFIG_KEYS is not set!"
-
- if kernel_is -ge 4 7 ; then
- CONFIG_CHECK="${CONFIG_CHECK} ~KEY_DH_OPERATIONS"
- ERROR_KEY_DH_OPERATIONS="You will be unable to use Diffie-Hellman on this system because CONFIG_KEY_DH_OPERATIONS is not set!"
- fi
- fi
-
- linux-info_pkg_setup
-}
-
-src_prepare() {
- default
-
- # The lsb check is useless, so avoid spurious command not found messages.
- sed -i -e 's,lsb_release,:,' tests/prepare.inc.sh || die
- # All the test files are bash, but try to execute via `sh`.
- sed -i -r \
- -e 's:([[:space:]])sh([[:space:]]):\1bash\2:' \
- tests/{Makefile*,*.sh} || die
- find tests/ -name '*.sh' -exec sed -i '1s:/sh$:/bash:' {} + || die
- # Some tests call the kernel which calls userspace, but that will
- # run the install keyutils rather than the locally compiled one,
- # so disable round trip tests.
- rm -rf tests/keyctl/requesting/{bad-args,piped,valid}
-
- multilib_copy_sources
-}
-
-multilib_src_compile() {
- tc-export AR CC
- sed -i \
- -e "1iRPATH = $(usex static -static '')" \
- -e '/^C.*FLAGS/s|:=|+=|' \
- -e 's:-Werror::' \
- -e '/^BUILDFOR/s:=.*:=:' \
- -e "/^LIBDIR/s:=.*:= /usr/$(get_libdir):" \
- -e '/^USRLIBDIR/s:=.*:=$(LIBDIR):' \
- -e "s: /: ${EPREFIX}/:g" \
- -e '/^NO_ARLIB/d' \
- Makefile || die
-
- # We need the static lib in order to statically link programs.
- if use static ; then
- export NO_ARLIB=0
- # Hack the progs to depend on the static lib instead.
- sed -i \
- -e '/^.*:.*[$](DEVELLIB)$/s:$(DEVELLIB):$(ARLIB) $(SONAME):' \
- Makefile || die
- else
- export NO_ARLIB=$(usex static-libs 0 1)
- fi
- emake
-}
-
-multilib_src_test() {
- # Execute the locally compiled code rather than the
- # older versions already installed in the system.
- LD_LIBRARY_PATH=${BUILD_DIR} \
- PATH="${BUILD_DIR}:${PATH}" \
- emake test
-}
-
-multilib_src_install() {
- # Possibly undo the setting for USE=static (see src_compile).
- export NO_ARLIB=$(usex static-libs 0 1)
-
- default
- use static || gen_usr_ldscript -a keyutils
-}
-
-multilib_src_install_all() {
- dodoc README
-}
diff --git a/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild b/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild
new file mode 100644
index 000000000000..c8d82212103a
--- /dev/null
+++ b/sys-apps/keyutils/keyutils-1.6.3-r1.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs linux-info multilib-minimal
+
+DESCRIPTION="Linux Key Management Utilities"
+HOMEPAGE="https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git"
+SRC_URI="https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0/1.9"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="static static-libs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=""
+DEPEND="!prefix? ( >=sys-kernel/linux-headers-2.6.11 )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.6-makefile-fixup.patch
+ "${FILESDIR}"/${PN}-1.5.10-disable-tests.patch #519062 #522050
+ "${FILESDIR}"/${PN}-1.5.9-header-extern-c.patch
+ "${FILESDIR}"/${PN}-1.6.3-fix-rpmspec-check.patch
+ "${FILESDIR}"/${P}-tests.patch
+)
+
+pkg_setup() {
+ # To prevent a failure in test phase and false positive bug reports
+ # we are enforcing the following options because testsuite expects
+ # that these options are available. I.e. testsuite only decides based
+ # on kernel version which tests will be called, no feature checking.
+ if use test ; then
+ CONFIG_CHECK="KEYS"
+ ERROR_KEYS="You must have CONFIG_KEYS to run the package testsuite!"
+
+ if kernel_is -ge 2 6 10 && kernel_is -lt 4 0 0 ; then
+ CONFIG_CHECK="${CONFIG_CHECK} KEYS_DEBUG_PROC_KEYS"
+ ERROR_KEYS_DEBUG_PROC_KEYS="You must have CONFIG_KEYS_DEBUG_PROC_KEYS to run the package testsuite!"
+ fi
+
+ if kernel_is -ge 4 7 ; then
+ CONFIG_CHECK="${CONFIG_CHECK} KEY_DH_OPERATIONS"
+ ERROR_KEY_DH_OPERATIONS="You must have CONFIG_KEY_DH_OPERATIONS to run the package testsuite!"
+ fi
+ else
+ CONFIG_CHECK="~KEYS"
+ ERROR_KEYS="You will be unable to use this package on this system because CONFIG_KEYS is not set!"
+
+ if kernel_is -ge 4 7 ; then
+ CONFIG_CHECK="${CONFIG_CHECK} ~KEY_DH_OPERATIONS"
+ ERROR_KEY_DH_OPERATIONS="You will be unable to use Diffie-Hellman on this system because CONFIG_KEY_DH_OPERATIONS is not set!"
+ fi
+ fi
+
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # The lsb check is useless, so avoid spurious command not found messages.
+ sed -i -e 's,lsb_release,:,' tests/prepare.inc.sh || die
+ # Some tests call the kernel which calls userspace, but that will
+ # run the install keyutils rather than the locally compiled one,
+ # so disable round trip tests.
+ rm -rf tests/keyctl/requesting/{bad-args,piped,valid}
+
+ multilib_copy_sources
+}
+
+multilib_src_compile() {
+ tc-export AR CC CXX
+ sed -i \
+ -e "1iRPATH = $(usex static -static '')" \
+ -e '/^C.*FLAGS/s|:=|+=|' \
+ -e 's:-Werror::' \
+ -e '/^BUILDFOR/s:=.*:=:' \
+ -e "/^LIBDIR/s:=.*:= /usr/$(get_libdir):" \
+ -e '/^USRLIBDIR/s:=.*:=$(LIBDIR):' \
+ -e "s: /: ${EPREFIX}/:g" \
+ -e '/^NO_ARLIB/d' \
+ Makefile || die
+
+ # We need the static lib in order to statically link programs.
+ if use static ; then
+ export NO_ARLIB=0
+ # Hack the progs to depend on the static lib instead.
+ sed -i \
+ -e '/^.*:.*[$](DEVELLIB)$/s:$(DEVELLIB):$(ARLIB) $(SONAME):' \
+ Makefile || die
+ else
+ export NO_ARLIB=$(usex static-libs 0 1)
+ fi
+ emake
+}
+
+multilib_src_test() {
+ # Execute the locally compiled code rather than the
+ # older versions already installed in the system.
+ LD_LIBRARY_PATH=${BUILD_DIR} \
+ PATH="${BUILD_DIR}:${PATH}" \
+ emake test
+}
+
+multilib_src_install() {
+ # Possibly undo the setting for USE=static (see src_compile).
+ export NO_ARLIB=$(usex static-libs 0 1)
+
+ default
+}
+
+multilib_src_install_all() {
+ dodoc README
+}
diff --git a/sys-apps/keyutils/keyutils-1.6.3.ebuild b/sys-apps/keyutils/keyutils-1.6.3.ebuild
deleted file mode 100644
index 127ba037b76b..000000000000
--- a/sys-apps/keyutils/keyutils-1.6.3.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib toolchain-funcs linux-info multilib-minimal usr-ldscript
-
-DESCRIPTION="Linux Key Management Utilities"
-HOMEPAGE="https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git"
-SRC_URI="https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/${P}.tar.gz"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0/1.9"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static static-libs test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=""
-DEPEND="!prefix? ( >=sys-kernel/linux-headers-2.6.11 )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.6-makefile-fixup.patch
- "${FILESDIR}"/${PN}-1.5.10-disable-tests.patch #519062 #522050
- "${FILESDIR}"/${PN}-1.5.9-header-extern-c.patch
-)
-
-pkg_setup() {
- # To prevent a failure in test phase and false positive bug reports
- # we are enforcing the following options because testsuite expects
- # that these options are available. I.e. testsuite only decides based
- # on kernel version which tests will be called, no feature checking.
- if use test ; then
- CONFIG_CHECK="KEYS"
- ERROR_KEYS="You must have CONFIG_KEYS to run the package testsuite!"
-
- if kernel_is -ge 2 6 10 && kernel_is -lt 4 0 0 ; then
- CONFIG_CHECK="${CONFIG_CHECK} KEYS_DEBUG_PROC_KEYS"
- ERROR_KEYS_DEBUG_PROC_KEYS="You must have CONFIG_KEYS_DEBUG_PROC_KEYS to run the package testsuite!"
- fi
-
- if kernel_is -ge 4 7 ; then
- CONFIG_CHECK="${CONFIG_CHECK} KEY_DH_OPERATIONS"
- ERROR_KEY_DH_OPERATIONS="You must have CONFIG_KEY_DH_OPERATIONS to run the package testsuite!"
- fi
- else
- CONFIG_CHECK="~KEYS"
- ERROR_KEYS="You will be unable to use this package on this system because CONFIG_KEYS is not set!"
-
- if kernel_is -ge 4 7 ; then
- CONFIG_CHECK="${CONFIG_CHECK} ~KEY_DH_OPERATIONS"
- ERROR_KEY_DH_OPERATIONS="You will be unable to use Diffie-Hellman on this system because CONFIG_KEY_DH_OPERATIONS is not set!"
- fi
- fi
-
- linux-info_pkg_setup
-}
-
-src_prepare() {
- default
-
- # The lsb check is useless, so avoid spurious command not found messages.
- sed -i -e 's,lsb_release,:,' tests/prepare.inc.sh || die
- # All the test files are bash, but try to execute via `sh`.
- sed -i -r \
- -e 's:([[:space:]])sh([[:space:]]):\1bash\2:' \
- tests/{Makefile*,*.sh} || die
- find tests/ -name '*.sh' -exec sed -i '1s:/sh$:/bash:' {} + || die
- # Some tests call the kernel which calls userspace, but that will
- # run the install keyutils rather than the locally compiled one,
- # so disable round trip tests.
- rm -rf tests/keyctl/requesting/{bad-args,piped,valid}
-
- multilib_copy_sources
-}
-
-multilib_src_compile() {
- tc-export AR CC CXX
- sed -i \
- -e "1iRPATH = $(usex static -static '')" \
- -e '/^C.*FLAGS/s|:=|+=|' \
- -e 's:-Werror::' \
- -e '/^BUILDFOR/s:=.*:=:' \
- -e "/^LIBDIR/s:=.*:= /usr/$(get_libdir):" \
- -e '/^USRLIBDIR/s:=.*:=$(LIBDIR):' \
- -e "s: /: ${EPREFIX}/:g" \
- -e '/^NO_ARLIB/d' \
- Makefile || die
-
- # We need the static lib in order to statically link programs.
- if use static ; then
- export NO_ARLIB=0
- # Hack the progs to depend on the static lib instead.
- sed -i \
- -e '/^.*:.*[$](DEVELLIB)$/s:$(DEVELLIB):$(ARLIB) $(SONAME):' \
- Makefile || die
- else
- export NO_ARLIB=$(usex static-libs 0 1)
- fi
- emake
-}
-
-multilib_src_test() {
- # Execute the locally compiled code rather than the
- # older versions already installed in the system.
- LD_LIBRARY_PATH=${BUILD_DIR} \
- PATH="${BUILD_DIR}:${PATH}" \
- emake test
-}
-
-multilib_src_install() {
- # Possibly undo the setting for USE=static (see src_compile).
- export NO_ARLIB=$(usex static-libs 0 1)
-
- default
- use static || gen_usr_ldscript -a keyutils
-}
-
-multilib_src_install_all() {
- dodoc README
-}
diff --git a/sys-apps/keyutils/metadata.xml b/sys-apps/keyutils/metadata.xml
index 58a06dbe3359..f16b3424c619 100644
--- a/sys-apps/keyutils/metadata.xml
+++ b/sys-apps/keyutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
@@ -8,6 +8,9 @@
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:keyutils_project:keyutils</remote-id>
+ </upstream>
<slots>
<subslots>Reflect ABI compatibility for libkeyutils.so.</subslots>
</slots>
diff --git a/sys-apps/kmod/Manifest b/sys-apps/kmod/Manifest
index d62d2b683b0a..0d9fcf490e5c 100644
--- a/sys-apps/kmod/Manifest
+++ b/sys-apps/kmod/Manifest
@@ -1,2 +1,2 @@
-DIST kmod-26.tar.xz 552032 BLAKE2B 3e596d06b48599bf4919346475a036b058fb18a7b19d39953e24fa943b95fdbe34a29a5062f6b4fe3510e667ae873d3b9ae03b72350fa85ddbb40ca6a7730b34 SHA512 3ca276c6fc13c2dd2220ec528b8dc4ab4edee5d2b22e16b6f945c552e51f74342c01c33a53740e6af8c893d42bd4d6f629cd8fa6e15ef8bd8da30cb003ef0865
-DIST kmod-27.tar.xz 548924 BLAKE2B 9f12bf5792d4c867e28e0776c279369c063e84269212e3f699ae6e5e69b8b2b466b5033e43e17ac64d6101592edcf3c34881916afb6ae676b49dc8838dfe1396 SHA512 e0513094935333fca1fb4c3e3493b232507a579ab00a6457cc9ed3e928363d05aad80634fb65a8287a336bf9895194c7be8ddc41bb088a6c2cca44fc1bfbdb6c
+DIST kmod-31.tar.xz 570936 BLAKE2B 0dc8572da570315cf0aadd87fa7e83d0f88dea91c8566749e6f3004f9a6df916dce337ca99ea5929d41f45b408c1e3effa50f9d24615d7fa28688150a5ce91cf SHA512 05ca70381808bec5f262b94db625662c385408988178a35e4aaf4960ee0716dc0cbfc327160ea4b61098d0c2130ab1b5142ea8156bea8e06ded7f4d288b6d085
+DIST kmod-32.tar.xz 511988 BLAKE2B 5b5dac4639406549b23bb1da44bedd86a42885304ef4c7c67344dc8fd70b9e0ca3f83d033c6b80f6e00371d7188e205f4b68fadc56a9ddbf9d6a9d28e9b1e9a4 SHA512 29162135aabd025dff178a4147a754b5da5964855dbeee65ca867dec3b84437f35c1c97f0f027e974a021d3ee9a4940309a716859cc3cfe93c7ed0aada338f24
diff --git a/sys-apps/kmod/files/kmod-26-libressl.patch b/sys-apps/kmod/files/kmod-26-libressl.patch
deleted file mode 100644
index cb36ab401c21..000000000000
--- a/sys-apps/kmod/files/kmod-26-libressl.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-From 628677e066198d8658d7edd5511a5bb27cd229f5 Mon Sep 17 00:00:00 2001
-From: Stefan Strogin <steils@gentoo.org>
-Date: Sun, 19 May 2019 03:42:01 +0300
-Subject: [PATCH] libkmod-signature: use PKCS#7 instead of CMS
-
-Linux uses either PKCS #7 or CMS for signing modules (see
-scripts/sign-file.c). CMS is not supported by LibreSSL or older OpenSSL,
-so PKCS #7 is used on systems with these libcrypto providers.
-
-CMS and PKCS #7 formats are very similar. CMS is newer but is as much as
-possible backward compatible with PKCS #7 [1]. PKCS #7 is supported in
-the latest OpenSSL as well as CMS. The fields used for signing kernel
-modules are supported both in PKCS #7 and CMS.
-
-For now modinfo uses CMS with no alternative requiring OpenSSL 1.1.0 or
-newer.
-
-Use PKCS #7 for parsing module signature information, so that modinfo
-could be used both with OpenSSL and LibreSSL.
-
-[1] https://tools.ietf.org/html/rfc5652#section-1.1
-
-Changes v1->v2:
-- Don't use ifdefs for keeping redundant CMS code, just use PKCS #7 both
-with OpenSSL and LibreSSL.
-
-Upstream-Status: Accepted
-[https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git/commit/?id=628677e066198d8658d7edd5511a5bb27cd229f5]
-Signed-off-by: Stefan Strogin <steils@gentoo.org>
----
- libkmod/libkmod-signature.c | 37 +++++++++++++++++++------------------
- 1 file changed, 19 insertions(+), 18 deletions(-)
-
-diff --git a/libkmod/libkmod-signature.c b/libkmod/libkmod-signature.c
-index 48d0145..4e8748c 100644
---- a/libkmod/libkmod-signature.c
-+++ b/libkmod/libkmod-signature.c
-@@ -20,7 +20,7 @@
- #include <endian.h>
- #include <inttypes.h>
- #ifdef ENABLE_OPENSSL
--#include <openssl/cms.h>
-+#include <openssl/pkcs7.h>
- #include <openssl/ssl.h>
- #endif
- #include <stdio.h>
-@@ -122,7 +122,7 @@ static bool fill_default(const char *mem, off_t size,
- #ifdef ENABLE_OPENSSL
-
- struct pkcs7_private {
-- CMS_ContentInfo *cms;
-+ PKCS7 *pkcs7;
- unsigned char *key_id;
- BIGNUM *sno;
- };
-@@ -132,7 +132,7 @@ static void pkcs7_free(void *s)
- struct kmod_signature_info *si = s;
- struct pkcs7_private *pvt = si->private;
-
-- CMS_ContentInfo_free(pvt->cms);
-+ PKCS7_free(pvt->pkcs7);
- BN_free(pvt->sno);
- free(pvt->key_id);
- free(pvt);
-@@ -197,11 +197,10 @@ static bool fill_pkcs7(const char *mem, off_t size,
- struct kmod_signature_info *sig_info)
- {
- const char *pkcs7_raw;
-- CMS_ContentInfo *cms;
-- STACK_OF(CMS_SignerInfo) *sis;
-- CMS_SignerInfo *si;
-- int rc;
-- ASN1_OCTET_STRING *key_id;
-+ PKCS7 *pkcs7;
-+ STACK_OF(PKCS7_SIGNER_INFO) *sis;
-+ PKCS7_SIGNER_INFO *si;
-+ PKCS7_ISSUER_AND_SERIAL *is;
- X509_NAME *issuer;
- ASN1_INTEGER *sno;
- ASN1_OCTET_STRING *sig;
-@@ -220,31 +219,33 @@ static bool fill_pkcs7(const char *mem, off_t size,
-
- in = BIO_new_mem_buf(pkcs7_raw, sig_len);
-
-- cms = d2i_CMS_bio(in, NULL);
-- if (cms == NULL) {
-+ pkcs7 = d2i_PKCS7_bio(in, NULL);
-+ if (pkcs7 == NULL) {
- BIO_free(in);
- return false;
- }
-
- BIO_free(in);
-
-- sis = CMS_get0_SignerInfos(cms);
-+ sis = PKCS7_get_signer_info(pkcs7);
- if (sis == NULL)
- goto err;
-
-- si = sk_CMS_SignerInfo_value(sis, 0);
-+ si = sk_PKCS7_SIGNER_INFO_value(sis, 0);
- if (si == NULL)
- goto err;
-
-- rc = CMS_SignerInfo_get0_signer_id(si, &key_id, &issuer, &sno);
-- if (rc == 0)
-+ is = si->issuer_and_serial;
-+ if (is == NULL)
- goto err;
-+ issuer = is->issuer;
-+ sno = is->serial;
-
-- sig = CMS_SignerInfo_get0_signature(si);
-+ sig = si->enc_digest;
- if (sig == NULL)
- goto err;
-
-- CMS_SignerInfo_get0_algs(si, NULL, NULL, &dig_alg, &sig_alg);
-+ PKCS7_SIGNER_INFO_get0_algs(si, NULL, &dig_alg, &sig_alg);
-
- sig_info->sig = (const char *)ASN1_STRING_get0_data(sig);
- sig_info->sig_len = ASN1_STRING_length(sig);
-@@ -277,7 +278,7 @@ static bool fill_pkcs7(const char *mem, off_t size,
- if (pvt == NULL)
- goto err3;
-
-- pvt->cms = cms;
-+ pvt->pkcs7 = pkcs7;
- pvt->key_id = key_id_str;
- pvt->sno = sno_bn;
- sig_info->private = pvt;
-@@ -290,7 +291,7 @@ err3:
- err2:
- BN_free(sno_bn);
- err:
-- CMS_ContentInfo_free(cms);
-+ PKCS7_free(pkcs7);
- return false;
- }
-
---
-2.21.0
-
diff --git a/sys-apps/kmod/files/kmod-27-depmod-do-not-output-.bin-to-stdout.patch b/sys-apps/kmod/files/kmod-27-depmod-do-not-output-.bin-to-stdout.patch
deleted file mode 100644
index dc776b515bc0..000000000000
--- a/sys-apps/kmod/files/kmod-27-depmod-do-not-output-.bin-to-stdout.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 53b30aeba2dedae9f5558f560231d9462e063dfc Mon Sep 17 00:00:00 2001
-From: Lucas De Marchi <lucas.demarchi@intel.com>
-Date: Thu, 5 Mar 2020 13:33:10 -0800
-Subject: depmod: do not output .bin to stdout
-
-index_write() relies on fseek/ftell to manage the position to which we
-are write and thus needs the file stream to support it.
-
-Right now when trying to write the index to stdout we fail with:
-
- depmod: tools/depmod.c:416: index_write: Assertion `initial_offset >= 0' failed.
- Aborted (core dumped)
-
-We have no interest in outputting our index to stdout, so just skip it
-like is done with other indexes.
-
-While at it, add/remove some newlines to improve readability.
-
-Reported-by: Yanko Kaneti <yaneti@declera.com>
-Fix: b866b2165ae6 ("Lookup aliases in the modules.builtin.modinfo")
----
- tools/depmod.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/tools/depmod.c b/tools/depmod.c
-index fbbce10..875e314 100644
---- a/tools/depmod.c
-+++ b/tools/depmod.c
-@@ -2408,8 +2408,10 @@ static int output_builtin_alias_bin(struct depmod *depmod, FILE *out)
- struct index_node *idx;
- struct kmod_list *l, *builtin = NULL;
-
-- idx = index_create();
-+ if (out == stdout)
-+ return 0;
-
-+ idx = index_create();
- if (idx == NULL) {
- ret = -ENOMEM;
- goto fail;
-@@ -2456,7 +2458,9 @@ static int output_builtin_alias_bin(struct depmod *depmod, FILE *out)
-
- if (count)
- index_write(idx, out);
-+
- index_destroy(idx);
-+
- fail:
- if (builtin)
- kmod_module_unref_list(builtin);
---
-cgit 1.2.3-1.el7
-
diff --git a/sys-apps/kmod/files/kmod-31-musl-basename.patch b/sys-apps/kmod/files/kmod-31-musl-basename.patch
new file mode 100644
index 000000000000..f4839dad2474
--- /dev/null
+++ b/sys-apps/kmod/files/kmod-31-musl-basename.patch
@@ -0,0 +1,113 @@
+https://github.com/kmod-project/kmod/pull/32
+
+From 721ed6040c7aa47070faf6378c433089e178bd43 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 9 Dec 2023 17:35:59 -0800
+Subject: [PATCH] Use portable implementation for basename API
+
+musl has removed the non-prototype declaration of basename from
+string.h [1] which now results in build errors with clang-17+ compiler
+
+Implement GNU basename behavior using strchr which is portable across libcs
+
+Fixes
+../git/tools/kmod.c:71:19: error: call to undeclared function 'basename'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+71 | "Commands:\n", basename(argv[0]));
+| ^
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Suggested-by: Rich Felker
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/libkmod/libkmod-config.c
++++ b/libkmod/libkmod-config.c
+@@ -794,7 +794,7 @@ static int conf_files_insert_sorted(struct kmod_ctx *ctx,
+ bool is_single = false;
+
+ if (name == NULL) {
+- name = basename(path);
++ name = gnu_basename(path);
+ is_single = true;
+ }
+
+--- a/shared/util.c
++++ b/shared/util.c
+@@ -172,9 +172,9 @@ char *modname_normalize(const char *modname, char buf[static PATH_MAX], size_t *
+
+ char *path_to_modname(const char *path, char buf[static PATH_MAX], size_t *len)
+ {
+- char *modname;
++ const char *modname;
+
+- modname = basename(path);
++ modname = gnu_basename(path);
+ if (modname == NULL || modname[0] == '\0')
+ return NULL;
+
+--- a/shared/util.h
++++ b/shared/util.h
+@@ -5,6 +5,7 @@
+ #include <stdbool.h>
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <string.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <time.h>
+@@ -76,6 +77,12 @@ do { \
+ __p->__v = (val); \
+ } while(0)
+
++static _always_inline_ const char *gnu_basename(const char *s)
++{
++ const char *p = strrchr(s, '/');
++ return p ? p+1 : s;
++}
++
+ static _always_inline_ unsigned int ALIGN_POWER2(unsigned int u)
+ {
+ return 1 << ((sizeof(u) * 8) - __builtin_clz(u - 1));
+--- a/testsuite/testsuite.c
++++ b/testsuite/testsuite.c
+@@ -70,7 +70,7 @@ static void help(void)
+
+ printf("Usage:\n"
+ "\t%s [options] <test>\n"
+- "Options:\n", basename(progname));
++ "Options:\n", gnu_basename(progname));
+
+ for (itr = options, itr_short = options_short;
+ itr->name != NULL; itr++, itr_short++)
+--- a/tools/depmod.c
++++ b/tools/depmod.c
+@@ -762,7 +762,7 @@ static int cfg_files_insert_sorted(struct cfg_file ***p_files, size_t *p_n_files
+ if (name != NULL)
+ namelen = strlen(name);
+ else {
+- name = basename(dir);
++ name = gnu_basename(dir);
+ namelen = strlen(name);
+ dirlen -= namelen + 1;
+ }
+--- a/tools/kmod.c
++++ b/tools/kmod.c
+@@ -68,7 +68,7 @@ static int kmod_help(int argc, char *argv[])
+ "Options:\n"
+ "\t-V, --version show version\n"
+ "\t-h, --help show this help\n\n"
+- "Commands:\n", basename(argv[0]));
++ "Commands:\n", gnu_basename(argv[0]));
+
+ for (i = 0; i < ARRAY_SIZE(kmod_cmds); i++) {
+ if (kmod_cmds[i]->help != NULL) {
+@@ -156,7 +156,7 @@ static int handle_kmod_compat_commands(int argc, char *argv[])
+ const char *cmd;
+ size_t i;
+
+- cmd = basename(argv[0]);
++ cmd = gnu_basename(argv[0]);
+
+ for (i = 0; i < ARRAY_SIZE(kmod_compat_cmds); i++) {
+ if (streq(kmod_compat_cmds[i]->name, cmd))
+
diff --git a/sys-apps/kmod/kmod-26-r5.ebuild b/sys-apps/kmod/kmod-26-r5.ebuild
deleted file mode 100644
index 53000bb3debc..000000000000
--- a/sys-apps/kmod/kmod-26-r5.ebuild
+++ /dev/null
@@ -1,201 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit bash-completion-r1 multilib python-r1
-
-if [[ ${PV} == 9999* ]]; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/${PN}/${PN}.git"
- inherit autotools git-r3
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kmod/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
- inherit libtool
-fi
-
-DESCRIPTION="library and tools for managing linux kernel modules"
-HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
-
-LICENSE="LGPL-2"
-SLOT="0"
-IUSE="debug doc libressl lzma pkcs7 python static-libs +tools zlib"
-
-# Upstream does not support running the test suite with custom configure flags.
-# I was also told that the test suite is intended for kmod developers.
-# So we have to restrict it.
-# See bug #408915.
-RESTRICT="test"
-
-# Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
-RDEPEND="!sys-apps/module-init-tools
- !sys-apps/modutils
- !<sys-apps/openrc-0.13.8
- !<sys-apps/systemd-216-r3
- lzma? ( >=app-arch/xz-utils-5.0.4-r1 )
- python? ( ${PYTHON_DEPS} )
- pkcs7? (
- !libressl? ( >=dev-libs/openssl-1.1.0:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- zlib? ( >=sys-libs/zlib-1.2.6 )" #427130
-DEPEND="${RDEPEND}
- doc? ( dev-util/gtk-doc )
- lzma? ( virtual/pkgconfig )
- python? (
- dev-python/cython[${PYTHON_USEDEP}]
- virtual/pkgconfig
- )
- zlib? ( virtual/pkgconfig )"
-if [[ ${PV} == 9999* ]]; then
- DEPEND="${DEPEND}
- dev-libs/libxslt"
-fi
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DOCS="NEWS README TODO"
-
-PATCHES=(
- "${FILESDIR}/${P}-libressl.patch" # bug 677960
-)
-
-src_prepare() {
- default
-
- if [[ ! -e configure ]] ; then
- if use doc; then
- gtkdocize --copy --docdir libkmod/docs || die
- else
- touch libkmod/docs/gtk-doc.make
- fi
- eautoreconf
- else
- elibtoolize
- fi
-
- # Restore possibility of running --enable-static wrt #472608
- sed -i \
- -e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \
- configure || die
-}
-
-src_configure() {
- local myeconfargs=(
- --bindir="${EPREFIX}/bin"
- --enable-shared
- --with-bashcompletiondir="$(get_bashcompdir)"
- --with-rootlibdir="${EPREFIX}/$(get_libdir)"
- $(use_enable debug)
- $(use_enable doc gtk-doc)
- $(use_enable static-libs static)
- $(use_enable tools)
- $(use_with lzma xz)
- $(use_with pkcs7 openssl)
- $(use_with zlib)
- )
-
- local ECONF_SOURCE="${S}"
-
- kmod_configure() {
- mkdir -p "${BUILD_DIR}" || die
- run_in_build_dir econf "${myeconfargs[@]}" "$@"
- }
-
- BUILD_DIR="${WORKDIR}/build"
- kmod_configure --disable-python
-
- if use python; then
- python_foreach_impl kmod_configure --enable-python
- fi
-}
-
-src_compile() {
- emake -C "${BUILD_DIR}"
-
- if use python; then
- local native_builddir=${BUILD_DIR}
-
- python_compile() {
- emake -C "${BUILD_DIR}" -f Makefile -f - python \
- VPATH="${native_builddir}:${S}" \
- native_builddir="${native_builddir}" \
- libkmod_python_kmod_{kmod,list,module,_util}_la_LIBADD='$(PYTHON_LIBS) $(native_builddir)/libkmod/libkmod.la' \
- <<< 'python: $(pkgpyexec_LTLIBRARIES)'
- }
-
- python_foreach_impl python_compile
- fi
-}
-
-src_install() {
- emake -C "${BUILD_DIR}" DESTDIR="${D}" install
- einstalldocs
-
- if use python; then
- local native_builddir=${BUILD_DIR}
-
- python_install() {
- emake -C "${BUILD_DIR}" DESTDIR="${D}" \
- VPATH="${native_builddir}:${S}" \
- install-pkgpyexecLTLIBRARIES \
- install-dist_pkgpyexecPYTHON
- python_optimize
- }
-
- python_foreach_impl python_install
- fi
-
- find "${ED}" -name "*.la" -delete || die
-
- if use tools; then
- local cmd
- for cmd in depmod insmod modprobe rmmod; do
- dosym ../bin/kmod /sbin/${cmd}
- done
-
- # These are also usable as normal user
- for cmd in lsmod modinfo; do
- dosym kmod /bin/${cmd}
- done
- fi
-
- cat <<-EOF > "${T}"/usb-load-ehci-first.conf
- softdep uhci_hcd pre: ehci_hcd
- softdep ohci_hcd pre: ehci_hcd
- EOF
-
- insinto /lib/modprobe.d
- doins "${T}"/usb-load-ehci-first.conf #260139
-
- newinitd "${FILESDIR}"/kmod-static-nodes-r1 kmod-static-nodes
-}
-
-pkg_postinst() {
- if [[ -L ${EROOT%/}/etc/runlevels/boot/static-nodes ]]; then
- ewarn "Removing old conflicting static-nodes init script from the boot runlevel"
- rm -f "${EROOT%/}"/etc/runlevels/boot/static-nodes
- fi
-
- # Add kmod to the runlevel automatically if this is the first install of this package.
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- if [[ ! -d ${EROOT%/}/etc/runlevels/sysinit ]]; then
- mkdir -p "${EROOT%/}"/etc/runlevels/sysinit
- fi
- if [[ -x ${EROOT%/}/etc/init.d/kmod-static-nodes ]]; then
- ln -s /etc/init.d/kmod-static-nodes "${EROOT%/}"/etc/runlevels/sysinit/kmod-static-nodes
- fi
- fi
-
- if [[ -e ${EROOT%/}/etc/runlevels/sysinit ]]; then
- if ! has_version sys-apps/systemd && [[ ! -e ${EROOT%/}/etc/runlevels/sysinit/kmod-static-nodes ]]; then
- ewarn
- ewarn "You need to add kmod-static-nodes to the sysinit runlevel for"
- ewarn "kernel modules to have required static nodes!"
- ewarn "Run this command:"
- ewarn "\trc-update add kmod-static-nodes sysinit"
- fi
- fi
-}
diff --git a/sys-apps/kmod/kmod-27-r2.ebuild b/sys-apps/kmod/kmod-27-r2.ebuild
deleted file mode 100644
index 8eb51ecede21..000000000000
--- a/sys-apps/kmod/kmod-27-r2.ebuild
+++ /dev/null
@@ -1,205 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit autotools bash-completion-r1 multilib python-r1
-
-if [[ ${PV} == 9999* ]]; then
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/${PN}/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kmod/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
- #inherit libtool
-fi
-
-DESCRIPTION="library and tools for managing linux kernel modules"
-HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
-
-LICENSE="LGPL-2"
-SLOT="0"
-IUSE="debug doc libressl +lzma pkcs7 python static-libs +tools +zlib"
-
-# Upstream does not support running the test suite with custom configure flags.
-# I was also told that the test suite is intended for kmod developers.
-# So we have to restrict it.
-# See bug #408915.
-RESTRICT="test"
-
-# Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
-RDEPEND="!sys-apps/module-init-tools
- !sys-apps/modutils
- !<sys-apps/openrc-0.13.8
- !<sys-apps/systemd-216-r3
- lzma? ( >=app-arch/xz-utils-5.0.4-r1 )
- python? ( ${PYTHON_DEPS} )
- pkcs7? (
- !libressl? ( >=dev-libs/openssl-1.1.0:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- zlib? ( >=sys-libs/zlib-1.2.6 )" #427130
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? (
- dev-util/gtk-doc
- dev-util/gtk-doc-am
- )
- lzma? ( virtual/pkgconfig )
- python? (
- dev-python/cython[${PYTHON_USEDEP}]
- virtual/pkgconfig
- )
- zlib? ( virtual/pkgconfig )
-"
-if [[ ${PV} == 9999* ]]; then
- DEPEND="${DEPEND}
- dev-libs/libxslt"
-fi
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DOCS="NEWS README TODO"
-
-PATCHES=( "${FILESDIR}"/${P}-depmod-do-not-output-.bin-to-stdout.patch )
-
-src_prepare() {
- default
-
- if [[ ! -e configure ]] || use doc ; then
- if use doc; then
- cp "${EROOT}"/usr/share/aclocal/gtk-doc.m4 m4 || die
- gtkdocize --copy --docdir libkmod/docs || die
- else
- touch libkmod/docs/gtk-doc.make
- fi
- eautoreconf
- else
- elibtoolize
- fi
-
- # Restore possibility of running --enable-static wrt #472608
- sed -i \
- -e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \
- configure || die
-}
-
-src_configure() {
- local myeconfargs=(
- --bindir="${EPREFIX}/bin"
- --enable-shared
- --with-bashcompletiondir="$(get_bashcompdir)"
- --with-rootlibdir="${EPREFIX}/$(get_libdir)"
- $(use_enable debug)
- $(usex doc '--enable-gtk-doc' '')
- $(use_enable static-libs static)
- $(use_enable tools)
- $(use_with lzma xz)
- $(use_with pkcs7 openssl)
- $(use_with zlib)
- )
-
- local ECONF_SOURCE="${S}"
-
- kmod_configure() {
- mkdir -p "${BUILD_DIR}" || die
- run_in_build_dir econf "${myeconfargs[@]}" "$@"
- }
-
- BUILD_DIR="${WORKDIR}/build"
- kmod_configure --disable-python
-
- if use python; then
- python_foreach_impl kmod_configure --enable-python
- fi
-}
-
-src_compile() {
- emake -C "${BUILD_DIR}"
-
- if use python; then
- local native_builddir=${BUILD_DIR}
-
- python_compile() {
- emake -C "${BUILD_DIR}" -f Makefile -f - python \
- VPATH="${native_builddir}:${S}" \
- native_builddir="${native_builddir}" \
- libkmod_python_kmod_{kmod,list,module,_util}_la_LIBADD='$(PYTHON_LIBS) $(native_builddir)/libkmod/libkmod.la' \
- <<< 'python: $(pkgpyexec_LTLIBRARIES)'
- }
-
- python_foreach_impl python_compile
- fi
-}
-
-src_install() {
- emake -C "${BUILD_DIR}" DESTDIR="${D}" install
- einstalldocs
-
- if use python; then
- local native_builddir=${BUILD_DIR}
-
- python_install() {
- emake -C "${BUILD_DIR}" DESTDIR="${D}" \
- VPATH="${native_builddir}:${S}" \
- install-pkgpyexecLTLIBRARIES \
- install-dist_pkgpyexecPYTHON
- python_optimize
- }
-
- python_foreach_impl python_install
- fi
-
- find "${ED}" -type f -name "*.la" -delete || die
-
- if use tools; then
- local cmd
- for cmd in depmod insmod modprobe rmmod; do
- dosym ../bin/kmod /sbin/${cmd}
- done
-
- # These are also usable as normal user
- for cmd in lsmod modinfo; do
- dosym kmod /bin/${cmd}
- done
- fi
-
- cat <<-EOF > "${T}"/usb-load-ehci-first.conf
- softdep uhci_hcd pre: ehci_hcd
- softdep ohci_hcd pre: ehci_hcd
- EOF
-
- insinto /lib/modprobe.d
- doins "${T}"/usb-load-ehci-first.conf #260139
-
- newinitd "${FILESDIR}"/kmod-static-nodes-r1 kmod-static-nodes
-}
-
-pkg_postinst() {
- if [[ -L ${EROOT}/etc/runlevels/boot/static-nodes ]]; then
- ewarn "Removing old conflicting static-nodes init script from the boot runlevel"
- rm -f "${EROOT}"/etc/runlevels/boot/static-nodes
- fi
-
- # Add kmod to the runlevel automatically if this is the first install of this package.
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- if [[ ! -d ${EROOT}/etc/runlevels/sysinit ]]; then
- mkdir -p "${EROOT}"/etc/runlevels/sysinit
- fi
- if [[ -x ${EROOT}/etc/init.d/kmod-static-nodes ]]; then
- ln -s /etc/init.d/kmod-static-nodes "${EROOT}"/etc/runlevels/sysinit/kmod-static-nodes
- fi
- fi
-
- if [[ -e ${EROOT}/etc/runlevels/sysinit ]]; then
- if ! has_version sys-apps/systemd && [[ ! -e ${EROOT}/etc/runlevels/sysinit/kmod-static-nodes ]]; then
- ewarn
- ewarn "You need to add kmod-static-nodes to the sysinit runlevel for"
- ewarn "kernel modules to have required static nodes!"
- ewarn "Run this command:"
- ewarn "\trc-update add kmod-static-nodes sysinit"
- fi
- fi
-}
diff --git a/sys-apps/kmod/kmod-31-r1.ebuild b/sys-apps/kmod/kmod-31-r1.ebuild
new file mode 100644
index 000000000000..d0de1d663e3e
--- /dev/null
+++ b/sys-apps/kmod/kmod-31-r1.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools libtool bash-completion-r1
+
+DESCRIPTION="Library and tools for managing linux kernel modules"
+HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
+
+if [[ ${PV} == 9999* ]]; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/${PN}/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kmod/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="LGPL-2"
+SLOT="0"
+IUSE="debug doc +lzma pkcs7 static-libs +tools +zlib +zstd"
+
+# Upstream does not support running the test suite with custom configure flags.
+# I was also told that the test suite is intended for kmod developers.
+# So we have to restrict it.
+# See bug #408915.
+#RESTRICT="test"
+
+# - >=zlib-1.2.6 required because of bug #427130
+# - Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
+# - >=zstd-1.5.2-r1 required for bug #771078
+RDEPEND="
+ !sys-apps/module-init-tools
+ !sys-apps/modutils
+ !<sys-apps/openrc-0.13.8
+ !<sys-apps/systemd-216-r3
+ lzma? ( >=app-arch/xz-utils-5.0.4-r1 )
+ pkcs7? ( >=dev-libs/openssl-1.1.0:= )
+ zlib? ( >=sys-libs/zlib-1.2.6 )
+ zstd? ( >=app-arch/zstd-1.5.2-r1:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? (
+ dev-util/gtk-doc
+ dev-build/gtk-doc-am
+ )
+ lzma? ( virtual/pkgconfig )
+ zlib? ( virtual/pkgconfig )
+"
+if [[ ${PV} == 9999* ]]; then
+ BDEPEND+=" dev-libs/libxslt"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-31-musl-basename.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ ! -e configure ]] || use doc ; then
+ if use doc; then
+ cp "${BROOT}"/usr/share/aclocal/gtk-doc.m4 m4 || die
+ gtkdocize --copy --docdir libkmod/docs || die
+ else
+ touch libkmod/docs/gtk-doc.make
+ fi
+ eautoreconf
+ else
+ elibtoolize
+ fi
+
+ # Restore possibility of running --enable-static, bug #472608
+ sed -i \
+ -e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \
+ configure || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --bindir="${EPREFIX}/bin"
+ --enable-shared
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ --with-rootlibdir="${EPREFIX}/$(get_libdir)"
+ --disable-python
+ $(use_enable debug)
+ $(usev doc '--enable-gtk-doc')
+ $(use_enable static-libs static)
+ $(use_enable tools)
+ $(use_with lzma xz)
+ $(use_with pkcs7 openssl)
+ $(use_with zlib)
+ $(use_with zstd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ if use tools; then
+ local cmd
+ for cmd in depmod insmod modprobe rmmod; do
+ dosym ../bin/kmod /sbin/${cmd}
+ done
+
+ # These are also usable as normal user
+ for cmd in lsmod modinfo; do
+ dosym kmod /bin/${cmd}
+ done
+ fi
+
+ cat <<-EOF > "${T}"/usb-load-ehci-first.conf
+ softdep uhci_hcd pre: ehci_hcd
+ softdep ohci_hcd pre: ehci_hcd
+ EOF
+
+ insinto /lib/modprobe.d
+ # bug #260139
+ doins "${T}"/usb-load-ehci-first.conf
+
+ newinitd "${FILESDIR}"/kmod-static-nodes-r1 kmod-static-nodes
+}
+
+pkg_postinst() {
+ if [[ -L ${EROOT}/etc/runlevels/boot/static-nodes ]]; then
+ ewarn "Removing old conflicting static-nodes init script from the boot runlevel"
+ rm -f "${EROOT}"/etc/runlevels/boot/static-nodes
+ fi
+
+ # Add kmod to the runlevel automatically if this is the first install of this package.
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ ! -d ${EROOT}/etc/runlevels/sysinit ]]; then
+ mkdir -p "${EROOT}"/etc/runlevels/sysinit
+ fi
+ if [[ -x ${EROOT}/etc/init.d/kmod-static-nodes ]]; then
+ ln -s /etc/init.d/kmod-static-nodes "${EROOT}"/etc/runlevels/sysinit/kmod-static-nodes
+ fi
+ fi
+
+ if [[ -e ${EROOT}/etc/runlevels/sysinit ]]; then
+ if ! has_version sys-apps/systemd && [[ ! -e ${EROOT}/etc/runlevels/sysinit/kmod-static-nodes ]]; then
+ ewarn
+ ewarn "You need to add kmod-static-nodes to the sysinit runlevel for"
+ ewarn "kernel modules to have required static nodes!"
+ ewarn "Run this command:"
+ ewarn "\trc-update add kmod-static-nodes sysinit"
+ fi
+ fi
+}
diff --git a/sys-apps/kmod/kmod-31.ebuild b/sys-apps/kmod/kmod-31.ebuild
new file mode 100644
index 000000000000..b5acdf3f9a37
--- /dev/null
+++ b/sys-apps/kmod/kmod-31.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit autotools libtool bash-completion-r1 python-r1
+
+if [[ ${PV} == 9999* ]]; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/${PN}/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kmod/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+DESCRIPTION="library and tools for managing linux kernel modules"
+HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
+
+LICENSE="LGPL-2"
+SLOT="0"
+IUSE="debug doc +lzma pkcs7 python static-libs +tools +zlib +zstd"
+
+# Upstream does not support running the test suite with custom configure flags.
+# I was also told that the test suite is intended for kmod developers.
+# So we have to restrict it.
+# See bug #408915.
+#RESTRICT="test"
+
+# - >=zlib-1.2.6 required because of bug #427130
+# - Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
+# - >=zstd-1.5.2-r1 required for bug #771078
+RDEPEND="!sys-apps/module-init-tools
+ !sys-apps/modutils
+ !<sys-apps/openrc-0.13.8
+ !<sys-apps/systemd-216-r3
+ lzma? ( >=app-arch/xz-utils-5.0.4-r1 )
+ python? ( ${PYTHON_DEPS} )
+ pkcs7? ( >=dev-libs/openssl-1.1.0:= )
+ zlib? ( >=sys-libs/zlib-1.2.6 )
+ zstd? ( >=app-arch/zstd-1.5.2-r1:= )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? (
+ dev-util/gtk-doc
+ dev-build/gtk-doc-am
+ )
+ lzma? ( virtual/pkgconfig )
+ python? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ virtual/pkgconfig
+ )
+ zlib? ( virtual/pkgconfig )
+"
+if [[ ${PV} == 9999* ]]; then
+ BDEPEND="${BDEPEND}
+ dev-libs/libxslt"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DOCS=( NEWS README.md TODO )
+
+src_prepare() {
+ default
+
+ if [[ ! -e configure ]] || use doc ; then
+ if use doc; then
+ cp "${BROOT}"/usr/share/aclocal/gtk-doc.m4 m4 || die
+ gtkdocize --copy --docdir libkmod/docs || die
+ else
+ touch libkmod/docs/gtk-doc.make
+ fi
+ eautoreconf
+ else
+ elibtoolize
+ fi
+
+ # Restore possibility of running --enable-static, bug #472608
+ sed -i \
+ -e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \
+ configure || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --bindir="${EPREFIX}/bin"
+ --enable-shared
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ --with-rootlibdir="${EPREFIX}/$(get_libdir)"
+ $(use_enable debug)
+ $(usex doc '--enable-gtk-doc' '')
+ $(use_enable static-libs static)
+ $(use_enable tools)
+ $(use_with lzma xz)
+ $(use_with pkcs7 openssl)
+ $(use_with zlib)
+ $(use_with zstd)
+ )
+
+ local ECONF_SOURCE="${S}"
+
+ kmod_configure() {
+ mkdir -p "${BUILD_DIR}" || die
+ run_in_build_dir econf "${myeconfargs[@]}" "$@"
+ }
+
+ BUILD_DIR="${WORKDIR}/build"
+ kmod_configure --disable-python
+
+ if use python; then
+ python_foreach_impl kmod_configure --enable-python
+ fi
+}
+
+src_compile() {
+ emake -C "${BUILD_DIR}"
+
+ if use python; then
+ local native_builddir="${BUILD_DIR}"
+
+ python_compile() {
+ emake -C "${BUILD_DIR}" -f Makefile -f - python \
+ VPATH="${native_builddir}:${S}" \
+ native_builddir="${native_builddir}" \
+ libkmod_python_kmod_{kmod,list,module,_util}_la_LIBADD='$(PYTHON_LIBS) $(native_builddir)/libkmod/libkmod.la' \
+ <<< 'python: $(pkgpyexec_LTLIBRARIES)'
+ }
+
+ python_foreach_impl python_compile
+ fi
+}
+
+src_test() {
+ python_test() {
+ mkdir "${T}/test-${EPYTHON}" || die
+ emake -C "${BUILD_DIR}" DESTDIR="${T}/test-${EPYTHON}" \
+ VPATH="${native_builddir}:${S}" \
+ install-pkgpyexecLTLIBRARIES \
+ install-dist_pkgpyexecPYTHON
+
+ # Smoke test based on https://bugs.gentoo.org/891975#c5
+ local -x PYTHONPATH="${T}/test-${EPYTHON}/usr/lib/${EPYTHON}/site-packages:${PYTHONPATH}"
+ ${EPYTHON} -c 'import kmod; km = kmod.Kmod(); print([(m.name, m.size) for m in km.loaded()])' || die
+ rm -r "${T}/test-${EPYTHON}" || die
+ }
+
+ if use python; then
+ python_foreach_impl python_test
+ fi
+}
+
+src_install() {
+ emake -C "${BUILD_DIR}" DESTDIR="${D}" install
+
+ einstalldocs
+
+ if use python; then
+ local native_builddir="${BUILD_DIR}"
+
+ python_install() {
+ emake -C "${BUILD_DIR}" DESTDIR="${D}" \
+ VPATH="${native_builddir}:${S}" \
+ install-pkgpyexecLTLIBRARIES \
+ install-dist_pkgpyexecPYTHON
+ python_optimize
+ }
+
+ python_foreach_impl python_install
+ fi
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ if use tools; then
+ local cmd
+ for cmd in depmod insmod modprobe rmmod; do
+ dosym ../bin/kmod /sbin/${cmd}
+ done
+
+ # These are also usable as normal user
+ for cmd in lsmod modinfo; do
+ dosym kmod /bin/${cmd}
+ done
+ fi
+
+ cat <<-EOF > "${T}"/usb-load-ehci-first.conf
+ softdep uhci_hcd pre: ehci_hcd
+ softdep ohci_hcd pre: ehci_hcd
+ EOF
+
+ insinto /lib/modprobe.d
+ # bug #260139
+ doins "${T}"/usb-load-ehci-first.conf
+
+ newinitd "${FILESDIR}"/kmod-static-nodes-r1 kmod-static-nodes
+}
+
+pkg_postinst() {
+ if [[ -L ${EROOT}/etc/runlevels/boot/static-nodes ]]; then
+ ewarn "Removing old conflicting static-nodes init script from the boot runlevel"
+ rm -f "${EROOT}"/etc/runlevels/boot/static-nodes
+ fi
+
+ # Add kmod to the runlevel automatically if this is the first install of this package.
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ ! -d ${EROOT}/etc/runlevels/sysinit ]]; then
+ mkdir -p "${EROOT}"/etc/runlevels/sysinit
+ fi
+ if [[ -x ${EROOT}/etc/init.d/kmod-static-nodes ]]; then
+ ln -s /etc/init.d/kmod-static-nodes "${EROOT}"/etc/runlevels/sysinit/kmod-static-nodes
+ fi
+ fi
+
+ if [[ -e ${EROOT}/etc/runlevels/sysinit ]]; then
+ if ! has_version sys-apps/systemd && [[ ! -e ${EROOT}/etc/runlevels/sysinit/kmod-static-nodes ]]; then
+ ewarn
+ ewarn "You need to add kmod-static-nodes to the sysinit runlevel for"
+ ewarn "kernel modules to have required static nodes!"
+ ewarn "Run this command:"
+ ewarn "\trc-update add kmod-static-nodes sysinit"
+ fi
+ fi
+}
diff --git a/sys-apps/kmod/kmod-32-r1.ebuild b/sys-apps/kmod/kmod-32-r1.ebuild
new file mode 100644
index 000000000000..341d36a4f5e2
--- /dev/null
+++ b/sys-apps/kmod/kmod-32-r1.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools libtool bash-completion-r1
+
+DESCRIPTION="Library and tools for managing linux kernel modules"
+HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
+
+if [[ ${PV} == 9999* ]]; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/${PN}/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kmod/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="LGPL-2"
+SLOT="0"
+IUSE="debug doc +lzma pkcs7 split-usr static-libs +tools +zlib +zstd"
+
+# Upstream does not support running the test suite with custom configure flags.
+# I was also told that the test suite is intended for kmod developers.
+# So we have to restrict it.
+# See bug #408915.
+#RESTRICT="test"
+
+# - >=zlib-1.2.6 required because of bug #427130
+# - Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
+# - >=zstd-1.5.2-r1 required for bug #771078
+RDEPEND="
+ !sys-apps/module-init-tools
+ !sys-apps/modutils
+ !<sys-apps/openrc-0.13.8
+ !<sys-apps/systemd-216-r3
+ lzma? ( >=app-arch/xz-utils-5.0.4-r1 )
+ pkcs7? ( >=dev-libs/openssl-1.1.0:= )
+ zlib? ( >=sys-libs/zlib-1.2.6 )
+ zstd? ( >=app-arch/zstd-1.5.2-r1:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? (
+ dev-util/gtk-doc
+ dev-build/gtk-doc-am
+ )
+ lzma? ( virtual/pkgconfig )
+ zlib? ( virtual/pkgconfig )
+"
+if [[ ${PV} == 9999* ]]; then
+ BDEPEND+=" dev-libs/libxslt"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-31-musl-basename.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ ! -e configure ]] || use doc ; then
+ if use doc; then
+ cp "${BROOT}"/usr/share/aclocal/gtk-doc.m4 m4 || die
+ gtkdocize --copy --docdir libkmod/docs || die
+ else
+ touch libkmod/docs/gtk-doc.make
+ fi
+ eautoreconf
+ else
+ elibtoolize
+ fi
+
+ # Restore possibility of running --enable-static, bug #472608
+ sed -i \
+ -e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \
+ configure || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-shared
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ $(use_enable debug)
+ $(usev doc '--enable-gtk-doc')
+ $(use_enable static-libs static)
+ $(use_enable tools)
+ $(use_with lzma xz)
+ $(use_with pkcs7 openssl)
+ $(use_with zlib)
+ $(use_with zstd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ if use tools && use split-usr; then
+ # Move modprobe to /sbin to match CONFIG_MODPROBE_PATH from kernel
+ rm "${ED}/usr/bin/modprobe" || die
+ dosym ../usr/bin/kmod /sbin/modprobe
+ fi
+
+ cat <<-EOF > "${T}"/usb-load-ehci-first.conf
+ softdep uhci_hcd pre: ehci_hcd
+ softdep ohci_hcd pre: ehci_hcd
+ EOF
+
+ insinto /lib/modprobe.d
+ # bug #260139
+ doins "${T}"/usb-load-ehci-first.conf
+
+ newinitd "${FILESDIR}"/kmod-static-nodes-r1 kmod-static-nodes
+}
+
+pkg_postinst() {
+ if [[ -L ${EROOT}/etc/runlevels/boot/static-nodes ]]; then
+ ewarn "Removing old conflicting static-nodes init script from the boot runlevel"
+ rm -f "${EROOT}"/etc/runlevels/boot/static-nodes
+ fi
+
+ # Add kmod to the runlevel automatically if this is the first install of this package.
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ ! -d ${EROOT}/etc/runlevels/sysinit ]]; then
+ mkdir -p "${EROOT}"/etc/runlevels/sysinit
+ fi
+ if [[ -x ${EROOT}/etc/init.d/kmod-static-nodes ]]; then
+ ln -s /etc/init.d/kmod-static-nodes "${EROOT}"/etc/runlevels/sysinit/kmod-static-nodes
+ fi
+ fi
+
+ if [[ -e ${EROOT}/etc/runlevels/sysinit ]]; then
+ if ! has_version sys-apps/systemd && [[ ! -e ${EROOT}/etc/runlevels/sysinit/kmod-static-nodes ]]; then
+ ewarn
+ ewarn "You need to add kmod-static-nodes to the sysinit runlevel for"
+ ewarn "kernel modules to have required static nodes!"
+ ewarn "Run this command:"
+ ewarn "\trc-update add kmod-static-nodes sysinit"
+ fi
+ fi
+}
diff --git a/sys-apps/kmod/kmod-9999.ebuild b/sys-apps/kmod/kmod-9999.ebuild
index a7e386f475ad..341d36a4f5e2 100644
--- a/sys-apps/kmod/kmod-9999.ebuild
+++ b/sys-apps/kmod/kmod-9999.ebuild
@@ -1,74 +1,67 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8,9} )
+inherit autotools libtool bash-completion-r1
-inherit autotools bash-completion-r1 multilib python-r1
+DESCRIPTION="Library and tools for managing linux kernel modules"
+HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/${PN}/${PN}.git"
inherit git-r3
else
SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kmod/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- #inherit libtool
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
-DESCRIPTION="library and tools for managing linux kernel modules"
-HOMEPAGE="https://git.kernel.org/?p=utils/kernel/kmod/kmod.git"
-
LICENSE="LGPL-2"
SLOT="0"
-IUSE="debug doc libressl lzma pkcs7 python static-libs +tools zlib"
+IUSE="debug doc +lzma pkcs7 split-usr static-libs +tools +zlib +zstd"
# Upstream does not support running the test suite with custom configure flags.
# I was also told that the test suite is intended for kmod developers.
# So we have to restrict it.
# See bug #408915.
-RESTRICT="test"
+#RESTRICT="test"
-# Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
-RDEPEND="!sys-apps/module-init-tools
+# - >=zlib-1.2.6 required because of bug #427130
+# - Block systemd below 217 for -static-nodes-indicate-that-creation-of-static-nodes-.patch
+# - >=zstd-1.5.2-r1 required for bug #771078
+RDEPEND="
+ !sys-apps/module-init-tools
!sys-apps/modutils
!<sys-apps/openrc-0.13.8
!<sys-apps/systemd-216-r3
lzma? ( >=app-arch/xz-utils-5.0.4-r1 )
- python? ( ${PYTHON_DEPS} )
- pkcs7? (
- !libressl? ( >=dev-libs/openssl-1.1.0:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- zlib? ( >=sys-libs/zlib-1.2.6 )" #427130
+ pkcs7? ( >=dev-libs/openssl-1.1.0:= )
+ zlib? ( >=sys-libs/zlib-1.2.6 )
+ zstd? ( >=app-arch/zstd-1.5.2-r1:= )
+"
DEPEND="${RDEPEND}"
BDEPEND="
doc? (
dev-util/gtk-doc
- dev-util/gtk-doc-am
+ dev-build/gtk-doc-am
)
lzma? ( virtual/pkgconfig )
- python? (
- dev-python/cython[${PYTHON_USEDEP}]
- virtual/pkgconfig
- )
zlib? ( virtual/pkgconfig )
"
if [[ ${PV} == 9999* ]]; then
- DEPEND="${DEPEND}
- dev-libs/libxslt"
+ BDEPEND+=" dev-libs/libxslt"
fi
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DOCS="NEWS README TODO"
+PATCHES=(
+ "${FILESDIR}"/${PN}-31-musl-basename.patch
+)
src_prepare() {
default
if [[ ! -e configure ]] || use doc ; then
if use doc; then
- cp "${EROOT}"/usr/share/aclocal/gtk-doc.m4 m4 || die
+ cp "${BROOT}"/usr/share/aclocal/gtk-doc.m4 m4 || die
gtkdocize --copy --docdir libkmod/docs || die
else
touch libkmod/docs/gtk-doc.make
@@ -78,7 +71,7 @@ src_prepare() {
elibtoolize
fi
- # Restore possibility of running --enable-static wrt #472608
+ # Restore possibility of running --enable-static, bug #472608
sed -i \
-e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \
configure || die
@@ -86,82 +79,30 @@ src_prepare() {
src_configure() {
local myeconfargs=(
- --bindir="${EPREFIX}/bin"
--enable-shared
--with-bashcompletiondir="$(get_bashcompdir)"
- --with-rootlibdir="${EPREFIX}/$(get_libdir)"
$(use_enable debug)
- $(usex doc '--enable-gtk-doc' '')
+ $(usev doc '--enable-gtk-doc')
$(use_enable static-libs static)
$(use_enable tools)
$(use_with lzma xz)
$(use_with pkcs7 openssl)
$(use_with zlib)
+ $(use_with zstd)
)
- local ECONF_SOURCE="${S}"
-
- kmod_configure() {
- mkdir -p "${BUILD_DIR}" || die
- run_in_build_dir econf "${myeconfargs[@]}" "$@"
- }
-
- BUILD_DIR="${WORKDIR}/build"
- kmod_configure --disable-python
-
- if use python; then
- python_foreach_impl kmod_configure --enable-python
- fi
-}
-
-src_compile() {
- emake -C "${BUILD_DIR}"
-
- if use python; then
- local native_builddir=${BUILD_DIR}
-
- python_compile() {
- emake -C "${BUILD_DIR}" -f Makefile -f - python \
- VPATH="${native_builddir}:${S}" \
- native_builddir="${native_builddir}" \
- libkmod_python_kmod_{kmod,list,module,_util}_la_LIBADD='$(PYTHON_LIBS) $(native_builddir)/libkmod/libkmod.la' \
- <<< 'python: $(pkgpyexec_LTLIBRARIES)'
- }
-
- python_foreach_impl python_compile
- fi
+ econf "${myeconfargs[@]}"
}
src_install() {
- emake -C "${BUILD_DIR}" DESTDIR="${D}" install
- einstalldocs
-
- if use python; then
- local native_builddir=${BUILD_DIR}
-
- python_install() {
- emake -C "${BUILD_DIR}" DESTDIR="${D}" \
- VPATH="${native_builddir}:${S}" \
- install-pkgpyexecLTLIBRARIES \
- install-dist_pkgpyexecPYTHON
- python_optimize
- }
-
- python_foreach_impl python_install
- fi
+ default
find "${ED}" -type f -name "*.la" -delete || die
- if use tools; then
- local cmd
- for cmd in depmod insmod modprobe rmmod; do
- dosym ../bin/kmod /sbin/${cmd}
- done
-
- # These are also usable as normal user
- for cmd in lsmod modinfo; do
- dosym kmod /bin/${cmd}
- done
+ if use tools && use split-usr; then
+ # Move modprobe to /sbin to match CONFIG_MODPROBE_PATH from kernel
+ rm "${ED}/usr/bin/modprobe" || die
+ dosym ../usr/bin/kmod /sbin/modprobe
fi
cat <<-EOF > "${T}"/usb-load-ehci-first.conf
@@ -170,7 +111,8 @@ src_install() {
EOF
insinto /lib/modprobe.d
- doins "${T}"/usb-load-ehci-first.conf #260139
+ # bug #260139
+ doins "${T}"/usb-load-ehci-first.conf
newinitd "${FILESDIR}"/kmod-static-nodes-r1 kmod-static-nodes
}
diff --git a/sys-apps/kmod/metadata.xml b/sys-apps/kmod/metadata.xml
index ccb7f0ba6875..20c2f19925da 100644
--- a/sys-apps/kmod/metadata.xml
+++ b/sys-apps/kmod/metadata.xml
@@ -1,20 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>udev-bugs@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="lzma">Enable support for XZ compressed modules</flag>
- <flag name="pkcs7">Enable PKCS#7 signature parsing for modinfo.</flag>
- <flag name="tools">Install module loading/unloading tools.</flag>
- <flag name="zlib">Enable support for gzipped modules</flag>
-</use>
-<upstream>
- <remote-id type="cpe">cpe:/a:kernel:kmod</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="lzma">Enable support for XZ compressed modules</flag>
+ <flag name="pkcs7">Enable PKCS#7 signature parsing for modinfo.</flag>
+ <flag name="tools">Install module loading/unloading tools.</flag>
+ <flag name="zlib">Enable support for gzipped modules</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:kernel:kmod</remote-id>
+ <remote-id type="github">kmod-project/kmod</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/kmscon/Manifest b/sys-apps/kmscon/Manifest
index 3a14ce097c38..0f2165148c0a 100644
--- a/sys-apps/kmscon/Manifest
+++ b/sys-apps/kmscon/Manifest
@@ -1,2 +1 @@
-DIST kmscon-8.tar.xz 950068 BLAKE2B 7c4bbcc6eb0967d8e38e05a3e6fac60109a0ce468bc8967364b621274a9af4dd12a31af692be2efe0cc234af36f760836ec421b6567460efd4b7b1c3d913f44b SHA512 ac1581c2520a9c30406848dafc27231b38d392b2176e3ed4dd95b03cd54e256dd22f09e04057fc089effbbe08eb25546164bb885e0e5cbdbd752d4c27d07a41d
-DIST kmscon-8_p20180906.tar.gz 1156350 BLAKE2B 52c024ca6e9652b468efb23d38cda34bf0c05e1e2bb4268435e17adb8858439ac6bf0e1783cfdd24a48fcb2dcf7c1cb20eee09aeb90db08c2e94224d01efeff7 SHA512 2ccdc5b30df6d96ac7a75d01d674b295bcdb0d445169716638a20c9884b090bbfe509e0aee79cb674a2d9b0eb18ea6284b9d4e2939cb5bf290cade4c1a02487a
+DIST kmscon-9.0.0.tar.xz 736668 BLAKE2B a44a4b3739b1ed4a597713ca2ef7adb33f1ab7130322a419ee88517addfbf0edf01ef59f06c5626e95a7bc1708cf4cebe49d5853558aa3fedb3aa9c7c28a7dd7 SHA512 2d4bca093c40307e155c9cfa349eef433d7ab6d08f8e134a61fa9c5ccb9ad594575725371075aaf917c2a9dfb3cb3cd148296dce25065a02b3a211650cde9c3c
diff --git a/sys-apps/kmscon/files/kmscon-9.0.0-systemd-path-fix.patch b/sys-apps/kmscon/files/kmscon-9.0.0-systemd-path-fix.patch
new file mode 100644
index 000000000000..417c38b77c1f
--- /dev/null
+++ b/sys-apps/kmscon/files/kmscon-9.0.0-systemd-path-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index 4544587..f2ca004 100644
+--- a/meson.build
++++ b/meson.build
+@@ -37,7 +37,7 @@ sysconfdir = get_option('sysconfdir') / meson.project_name()
+ libexecdir = get_option('libexecdir') / meson.project_name()
+ mandir = get_option('mandir')
+ moduledir = get_option('libdir') / meson.project_name()
+-systemddir = get_option('libdir') / 'systemd'
++systemddir = '/lib/systemd'
+
+ #
+ # Required dependencies
diff --git a/sys-apps/kmscon/files/kmscon-SIGUNUSED.patch b/sys-apps/kmscon/files/kmscon-SIGUNUSED.patch
deleted file mode 100644
index dc69f7700c67..000000000000
--- a/sys-apps/kmscon/files/kmscon-SIGUNUSED.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -ur kmscon-8/src/pty.c kmscon-8.new/src/pty.c
---- kmscon-8/src/pty.c 2018-01-10 09:03:09.477962638 -0600
-+++ kmscon-8.new/src/pty.c 2018-01-10 09:04:21.620658836 -0600
-@@ -299,8 +299,10 @@
- if (ret)
- log_warn("cannot reset blocked signals: %m");
-
-+ #ifdef SIGUNUSED
- for (i = 1; i < SIGUNUSED; ++i)
- signal(i, SIG_DFL);
-+ #endif
-
- ret = grantpt(master);
- if (ret < 0) {
diff --git a/sys-apps/kmscon/files/kmscon-sysmacros-fix.patch b/sys-apps/kmscon/files/kmscon-sysmacros-fix.patch
deleted file mode 100644
index cd8a374e5ca1..000000000000
--- a/sys-apps/kmscon/files/kmscon-sysmacros-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ur a/src/uterm_vt.c b/src/uterm_vt.c
---- a/src/uterm_vt.c 2017-08-12 12:14:46.213183769 -0500
-+++ b/src/uterm_vt.c 2017-08-12 12:16:12.011069210 -0500
-@@ -40,6 +40,7 @@
- #include <sys/ioctl.h>
- #include <sys/signalfd.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <termios.h>
- #include <time.h>
- #include <unistd.h>
diff --git a/sys-apps/kmscon/kmscon-8-r1.ebuild b/sys-apps/kmscon/kmscon-8-r1.ebuild
deleted file mode 100644
index 831393bd22a7..000000000000
--- a/sys-apps/kmscon/kmscon-8-r1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.xz"
-KEYWORDS="~amd64 ~x86"
-
-inherit autotools systemd flag-o-matic
-
-DESCRIPTION="KMS/DRM based virtual Console Emulator"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/kmscon"
-
-LICENSE="MIT LGPL-2.1 BSD-2"
-SLOT="0"
-IUSE="debug doc +drm +fbdev +gles2 +optimizations +pango pixman static-libs systemd +unicode"
-
-COMMON_DEPEND="
- >=virtual/udev-172
- x11-libs/libxkbcommon
- dev-libs/libtsm:=
- media-libs/mesa[X(+)]
- drm? ( x11-libs/libdrm
- >=media-libs/mesa-8.0.3[egl,gbm] )
- gles2? ( >=media-libs/mesa-8.0.3[gles2] )
- systemd? ( sys-apps/systemd )
- pango? ( x11-libs/pango dev-libs/glib:2 )
- pixman? ( x11-libs/pixman )"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xkeyboard-config"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- x11-base/xorg-proto
- doc? ( dev-util/gtk-doc )"
-
-REQUIRED_USE="gles2? ( drm )"
-
-# args - names of renderers to enable
-renderers_enable() {
- if [[ "x${RENDER}" == "x" ]]; then
- RENDER="$1"
- shift
- else
- for i in $@; do
- RENDER+=",${i}"
- done
- fi
-}
-
-# args - names of font renderer backends to enable
-fonts_enable() {
- if [[ "x${FONTS}" == "x" ]]; then
- FONTS="$1"
- shift
- else
- for i in $@; do
- FONTS+=",${i}"
- done
- fi
-}
-
-# args - names of video backends to enable
-video_enable() {
- if [[ "x${VIDEO}" == "x" ]]; then
- VIDEO="$1"
- shift
- else
- for i in $@; do
- VIDEO+=",${i}"
- done
- fi
-}
-
-src_prepare() {
- eapply "${FILESDIR}/kmscon-sysmacros-fix.patch"
- eapply "${FILESDIR}/kmscon-SIGUNUSED.patch"
- eapply_user
- sed -i -e 's/\[libsystemd-daemon libsystemd-login\]/\[libsystemd\]/' configure.ac
- eautoreconf
-}
-
-src_configure() {
- # Video backends
-
- if use fbdev; then
- video_enable fbdev
- fi
-
- if use drm; then
- video_enable drm2d
- fi
-
- if use gles2; then
- video_enable drm3d
- fi
-
- # Font rendering backends
-
- if use unicode; then
- fonts_enable unifont
- fi
-
- if use pango; then
- fonts_enable pango
- fi
-
- # Console rendering backends
-
- renderers_enable bbulk
-
- if use gles2; then
- renderers_enable gltex
- fi
-
- if use pixman; then
- renderers_enable pixman
- fi
-
- # kmscon sets -ffast-math unconditionally
- strip-flags
-
- # xkbcommon not in portage
- econf \
- $(use_enable static-libs static) \
- $(use_enable debug) \
- $(use_enable optimizations) \
- $(use_enable systemd multi-seat) \
- --with-video=${VIDEO} \
- --with-fonts=${FONTS} \
- --with-renderers=${RENDER} \
- --with-sessions=dummy,terminal
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- systemd_dounit "${S}/docs"/kmscon{,vt@}.service
-}
-
-pkg_postinst() {
- grep -e "^ERASECHAR" "${EROOT}"/etc/login.defs && \
- ewarn "It is recommended that you comment out the ERASECHAR line in" && \
- ewarn " /etc/login.defs for proper backspace functionality at the" && \
- ewarn " kmscon login prompt. For details see:" && \
- ewarn "https://github.com/dvdhrm/kmscon/issues/69#issuecomment-13827797"
-}
diff --git a/sys-apps/kmscon/kmscon-8_p20180906-r1.ebuild b/sys-apps/kmscon/kmscon-8_p20180906-r1.ebuild
deleted file mode 100644
index ec59e73c6192..000000000000
--- a/sys-apps/kmscon/kmscon-8_p20180906-r1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-COMMIT="01dd0a231e2125a40ceba5f59fd945ff29bf2cdc"
-SRC_URI="https://github.com/Aetf/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-
-inherit autotools flag-o-matic systemd toolchain-funcs vcs-snapshot
-
-DESCRIPTION="KMS/DRM based virtual Console Emulator"
-HOMEPAGE="https://github.com/Aetf/kmscon"
-
-LICENSE="MIT LGPL-2.1 BSD-2"
-SLOT="0"
-IUSE="debug doc +drm +fbdev +gles2 +optimizations +pango pixman static-libs systemd +unicode"
-
-COMMON_DEPEND="
- >=virtual/udev-172
- x11-libs/libxkbcommon
- >=dev-libs/libtsm-4.0.0:=
- media-libs/mesa[X(+)]
- drm? ( x11-libs/libdrm
- >=media-libs/mesa-8.0.3[egl,gbm] )
- gles2? ( >=media-libs/mesa-8.0.3[gles2] )
- systemd? ( sys-apps/systemd )
- pango? ( x11-libs/pango dev-libs/glib:2 )
- pixman? ( x11-libs/pixman )"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xkeyboard-config"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- x11-base/xorg-proto
- doc? ( dev-util/gtk-doc )"
-
-REQUIRED_USE="gles2? ( drm )"
-
-# args - names of renderers to enable
-renderers_enable() {
- if [[ "x${RENDER}" == "x" ]]; then
- RENDER="$1"
- shift
- else
- for i in $@; do
- RENDER+=",${i}"
- done
- fi
-}
-
-# args - names of font renderer backends to enable
-fonts_enable() {
- if [[ "x${FONTS}" == "x" ]]; then
- FONTS="$1"
- shift
- else
- for i in $@; do
- FONTS+=",${i}"
- done
- fi
-}
-
-# args - names of video backends to enable
-video_enable() {
- if [[ "x${VIDEO}" == "x" ]]; then
- VIDEO="$1"
- shift
- else
- for i in $@; do
- VIDEO+=",${i}"
- done
- fi
-}
-
-src_prepare() {
- default
- eautoreconf
-
- export CC_FOR_BUILD="$(tc-getBUILD_CC)"
-}
-
-src_configure() {
- # Video backends
-
- if use fbdev; then
- video_enable fbdev
- fi
-
- if use drm; then
- video_enable drm2d
- fi
-
- if use gles2; then
- video_enable drm3d
- fi
-
- # Font rendering backends
-
- if use unicode; then
- fonts_enable unifont
- fi
-
- if use pango; then
- fonts_enable pango
- fi
-
- # Console rendering backends
-
- renderers_enable bbulk
-
- if use gles2; then
- renderers_enable gltex
- fi
-
- if use pixman; then
- renderers_enable pixman
- fi
-
- # kmscon sets -ffast-math unconditionally
- strip-flags
-
- # xkbcommon not in portage
- econf \
- $(use_enable static-libs static) \
- $(use_enable debug) \
- $(use_enable optimizations) \
- $(use_enable systemd multi-seat) \
- --with-video=${VIDEO} \
- --with-fonts=${FONTS} \
- --with-renderers=${RENDER} \
- --with-sessions=dummy,terminal
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- systemd_dounit "${S}/docs"/kmscon{,vt@}.service
-}
-
-pkg_postinst() {
- grep -e "^ERASECHAR" "${EROOT}"/etc/login.defs && \
- ewarn "It is recommended that you comment out the ERASECHAR line in" && \
- ewarn " /etc/login.defs for proper backspace functionality at the" && \
- ewarn " kmscon login prompt. For details see:" && \
- ewarn "https://github.com/dvdhrm/kmscon/issues/69#issuecomment-13827797"
-}
diff --git a/sys-apps/kmscon/kmscon-8_p20180906.ebuild b/sys-apps/kmscon/kmscon-8_p20180906.ebuild
deleted file mode 100644
index c24fedc3f965..000000000000
--- a/sys-apps/kmscon/kmscon-8_p20180906.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-COMMIT="01dd0a231e2125a40ceba5f59fd945ff29bf2cdc"
-SRC_URI="https://github.com/Aetf/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-
-inherit autotools flag-o-matic systemd vcs-snapshot
-
-DESCRIPTION="KMS/DRM based virtual Console Emulator"
-HOMEPAGE="https://github.com/Aetf/kmscon"
-
-LICENSE="MIT LGPL-2.1 BSD-2"
-SLOT="0"
-IUSE="debug doc +drm +fbdev +gles2 +optimizations +pango pixman static-libs systemd +unicode"
-
-COMMON_DEPEND="
- >=virtual/udev-172
- x11-libs/libxkbcommon
- >=dev-libs/libtsm-4.0.0:=
- media-libs/mesa[X(+)]
- drm? ( x11-libs/libdrm
- >=media-libs/mesa-8.0.3[egl,gbm] )
- gles2? ( >=media-libs/mesa-8.0.3[gles2] )
- systemd? ( sys-apps/systemd )
- pango? ( x11-libs/pango dev-libs/glib:2 )
- pixman? ( x11-libs/pixman )"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xkeyboard-config"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- x11-base/xorg-proto
- doc? ( dev-util/gtk-doc )"
-
-REQUIRED_USE="gles2? ( drm )"
-
-# args - names of renderers to enable
-renderers_enable() {
- if [[ "x${RENDER}" == "x" ]]; then
- RENDER="$1"
- shift
- else
- for i in $@; do
- RENDER+=",${i}"
- done
- fi
-}
-
-# args - names of font renderer backends to enable
-fonts_enable() {
- if [[ "x${FONTS}" == "x" ]]; then
- FONTS="$1"
- shift
- else
- for i in $@; do
- FONTS+=",${i}"
- done
- fi
-}
-
-# args - names of video backends to enable
-video_enable() {
- if [[ "x${VIDEO}" == "x" ]]; then
- VIDEO="$1"
- shift
- else
- for i in $@; do
- VIDEO+=",${i}"
- done
- fi
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- # Video backends
-
- if use fbdev; then
- video_enable fbdev
- fi
-
- if use drm; then
- video_enable drm2d
- fi
-
- if use gles2; then
- video_enable drm3d
- fi
-
- # Font rendering backends
-
- if use unicode; then
- fonts_enable unifont
- fi
-
- if use pango; then
- fonts_enable pango
- fi
-
- # Console rendering backends
-
- renderers_enable bbulk
-
- if use gles2; then
- renderers_enable gltex
- fi
-
- if use pixman; then
- renderers_enable pixman
- fi
-
- # kmscon sets -ffast-math unconditionally
- strip-flags
-
- # xkbcommon not in portage
- econf \
- $(use_enable static-libs static) \
- $(use_enable debug) \
- $(use_enable optimizations) \
- $(use_enable systemd multi-seat) \
- --with-video=${VIDEO} \
- --with-fonts=${FONTS} \
- --with-renderers=${RENDER} \
- --with-sessions=dummy,terminal
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- systemd_dounit "${S}/docs"/kmscon{,vt@}.service
-}
-
-pkg_postinst() {
- grep -e "^ERASECHAR" "${EROOT}"/etc/login.defs && \
- ewarn "It is recommended that you comment out the ERASECHAR line in" && \
- ewarn " /etc/login.defs for proper backspace functionality at the" && \
- ewarn " kmscon login prompt. For details see:" && \
- ewarn "https://github.com/dvdhrm/kmscon/issues/69#issuecomment-13827797"
-}
diff --git a/sys-apps/kmscon/kmscon-9.0.0.ebuild b/sys-apps/kmscon/kmscon-9.0.0.ebuild
new file mode 100644
index 000000000000..baaf4d9597ab
--- /dev/null
+++ b/sys-apps/kmscon/kmscon-9.0.0.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+SRC_URI="https://github.com/Aetf/kmscon/releases/download/v${PV}/${P}.tar.xz"
+KEYWORDS="~amd64 ~x86"
+
+inherit meson flag-o-matic toolchain-funcs
+
+DESCRIPTION="KMS/DRM based virtual Console Emulator"
+HOMEPAGE="https://github.com/Aetf/kmscon"
+
+LICENSE="MIT LGPL-2.1 BSD-2"
+SLOT="0"
+IUSE="debug doc +drm +fbdev +gles2 +pango pixman systemd test"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ >=virtual/udev-172
+ x11-libs/libxkbcommon
+ >=dev-libs/libtsm-4.0.0:=
+ media-libs/mesa[X(+)]
+ drm? ( x11-libs/libdrm
+ >=media-libs/mesa-8.0.3[egl(+),gbm(+)] )
+ gles2? ( >=media-libs/mesa-8.0.3[gles2] )
+ systemd? ( sys-apps/systemd )
+ pango? ( x11-libs/pango dev-libs/glib:2 )
+ pixman? ( x11-libs/pixman )"
+RDEPEND="${COMMON_DEPEND}
+ x11-misc/xkeyboard-config"
+DEPEND="${COMMON_DEPEND}
+ x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig
+ doc? ( dev-util/gtk-doc )"
+
+REQUIRED_USE="drm? ( gles2 )"
+
+PATCHES=( "${FILESDIR}"/kmscon-9.0.0-systemd-path-fix.patch )
+
+src_prepare() {
+ default
+ export CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_configure() {
+
+ # kmscon sets -ffast-math unconditionally
+ strip-flags
+
+ local emesonargs=(
+ $(meson_feature doc docs)
+ $(meson_use debug)
+ $(meson_feature systemd multi_seat)
+ $(meson_feature fbdev video_fbdev)
+ $(meson_feature drm video_drm2d)
+ $(meson_feature drm video_drm3d)
+ -Dfont_unifont=enabled
+ $(meson_feature pango font_pango)
+ -Drenderer_bbulk=enabled
+ $(meson_feature gles2 renderer_gltex)
+ $(meson_feature pixman renderer_pixman)
+ $(meson_use test tests)
+ -Dsession_dummy=enabled
+ -Dsession_terminal=enabled
+ )
+
+ meson_src_configure
+}
+
+pkg_postinst() {
+ grep -e "^ERASECHAR" "${EROOT}"/etc/login.defs && \
+ ewarn "It is recommended that you comment out the ERASECHAR line in" && \
+ ewarn " /etc/login.defs for proper backspace functionality at the" && \
+ ewarn " kmscon login prompt. For details see:" && \
+ ewarn "https://github.com/dvdhrm/kmscon/issues/69#issuecomment-13827797"
+}
diff --git a/sys-apps/kmscon/metadata.xml b/sys-apps/kmscon/metadata.xml
index 796abf1fb7d2..90a75c590c8e 100644
--- a/sys-apps/kmscon/metadata.xml
+++ b/sys-apps/kmscon/metadata.xml
@@ -1,17 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>bkohler@gentoo.org</email>
<name>Ben Kohler</name>
</maintainer>
<use>
- <flag name='drm'>Enable Linux DRM for backend</flag>
- <flag name='fbdev'>Enable Linux FBDev for backend</flag>
- <flag name='gles2'>Enable GLES2 for backend</flag>
- <flag name='pango'>Enable pango font rendering</flag>
- <flag name='pixman'>Enable pixman font rendering</flag>
- <flag name='systemd'>Enable multiseat support via systemd</flag>
- <flag name='optimizations'>Enable optimizations</flag>
+ <flag name="drm">Enable Linux DRM for backend</flag>
+ <flag name="fbdev">Enable Linux FBDev for backend</flag>
+ <flag name="pango">Enable pango font rendering</flag>
+ <flag name="pixman">Enable pixman font rendering</flag>
+ <flag name="systemd">Enable multiseat support via systemd</flag>
</use>
+ <upstream>
+ <remote-id type="github">Aetf/kmscon</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/lcdsplash/lcdsplash-0.3-r1.ebuild b/sys-apps/lcdsplash/lcdsplash-0.3-r1.ebuild
new file mode 100644
index 000000000000..b47d14c72f94
--- /dev/null
+++ b/sys-apps/lcdsplash/lcdsplash-0.3-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="splash Gentoo boot information on LCD's"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="
+ mirror://gentoo/${P}.tar.bz2
+ https://dev.gentoo.org/~vapier/dist/${P}.tar.bz2
+"
+S="${WORKDIR}"/${PN}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="hppa ~mips x86"
+
+RDEPEND="mips? ( sys-apps/lcdutils )"
+
+src_install() {
+ insinto /sbin
+ doins splash-functions.sh
+
+ insinto /$(get_libdir)/rcscripts/lcdsplash
+ doins -r modules/.
+
+ insinto /etc
+ doins lcdsplash.conf
+
+ einstalldocs
+}
diff --git a/sys-apps/lcdsplash/lcdsplash-0.3.ebuild b/sys-apps/lcdsplash/lcdsplash-0.3.ebuild
deleted file mode 100644
index 2246f6ecf7fd..000000000000
--- a/sys-apps/lcdsplash/lcdsplash-0.3.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="splash Gentoo boot information on LCD's"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="mirror://gentoo/${P}.tar.bz2
- https://dev.gentoo.org/~vapier/dist/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="hppa ~mips x86"
-IUSE=""
-
-RDEPEND="mips? ( sys-apps/lcdutils )"
-
-S=${WORKDIR}/${PN}
-
-src_install() {
- insinto /sbin
- doins splash-functions.sh
-
- insinto /$(get_libdir)/rcscripts/lcdsplash
- doins -r modules/.
-
- insinto /etc
- doins lcdsplash.conf
-
- einstalldocs
-}
diff --git a/sys-apps/lcdsplash/metadata.xml b/sys-apps/lcdsplash/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/lcdsplash/metadata.xml
+++ b/sys-apps/lcdsplash/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/lcdutils/lcdutils-0.2-r1.ebuild b/sys-apps/lcdutils/lcdutils-0.2-r1.ebuild
deleted file mode 100644
index b19562bac8fa..000000000000
--- a/sys-apps/lcdutils/lcdutils-0.2-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="(Sun) Cobalt Qube/RaQ button reading and LCD writing utilities"
-HOMEPAGE="https://people.debian.org/~pm/mips-cobalt/"
-SRC_URI="https://people.debian.org/~pm/mips-cobalt/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~mips x86"
-
-PATCHES=(
- "${FILESDIR}/${P}-include-stdlib.h-for-exit.patch"
- "${FILESDIR}/${P}-makefile.patch"
-)
-
-src_prepare() {
- default
-
- tc-export CC
-}
diff --git a/sys-apps/lcdutils/lcdutils-0.2-r2.ebuild b/sys-apps/lcdutils/lcdutils-0.2-r2.ebuild
new file mode 100644
index 000000000000..ff9a36838a23
--- /dev/null
+++ b/sys-apps/lcdutils/lcdutils-0.2-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="(Sun) Cobalt Qube/RaQ button reading and LCD writing utilities"
+HOMEPAGE="https://people.debian.org/~pm/mips-cobalt/"
+SRC_URI="https://people.debian.org/~pm/mips-cobalt/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~mips x86"
+
+PATCHES=(
+ "${FILESDIR}/${P}-include-stdlib.h-for-exit.patch"
+ "${FILESDIR}/${P}-makefile.patch"
+)
+
+src_prepare() {
+ default
+
+ tc-export CC
+}
diff --git a/sys-apps/lcdutils/metadata.xml b/sys-apps/lcdutils/metadata.xml
index 10d7fad7105d..9525d5f9c3b2 100644
--- a/sys-apps/lcdutils/metadata.xml
+++ b/sys-apps/lcdutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
@@ -7,7 +7,7 @@
</maintainer>
<maintainer type="project">
<email>mips@gentoo.org</email>
- <name>Mips Team</name>
+ <name>MIPS architecture team</name>
</maintainer>
<longdescription>
Provides utilities for the (Sun) Cobalt Microserver Systems
diff --git a/sys-apps/less/Manifest b/sys-apps/less/Manifest
index fc83249eab92..89d58fe3f561 100644
--- a/sys-apps/less/Manifest
+++ b/sys-apps/less/Manifest
@@ -1,3 +1,2 @@
-DIST less-551.tar.gz 347007 BLAKE2B 033a043340f888616c8342703597b9232ae1c8e62775d3ee0187599c3d9d9824fdbc7543ca90cdc535b2077a8bcbefe322887ad29289620191d8cf6ff86ddd04 SHA512 ef5296b9ebd72f83c05cad8a0f7a5eec2290e9b358ee725e09e8541bd95f94c0e14ea22aa04b287a0654079338eaeae813f2235b8e9f819fbbc9040dd65a9585
-DIST less-562.tar.gz 335444 BLAKE2B 4830673d17594aea7424ee88b82bc2e073275a77ed39c067c032a0b79b0d15f8c0d97f98381a57192e985054cd04b3a824ef6c3e6ef796885a9677681a4cb109 SHA512 c9a0f43da0fcdb515e5d4f56a666fa7c8b12d52fd5a1cd4f6cc5f79133376400b0ef24a206c0cf5fd3558fba9a8055f219038bad8c3dadf0504ea96c419c4573
-DIST less-563.tar.gz 335508 BLAKE2B 813e54b9a115600e4f20009ccad3708efc64ab4ee940aa3624e968045557bbfef6ace49b791f4b9efff86bf43df9fe2a04a160e76718396e0dae17f0bdaa62fb SHA512 79384ff3faa33aeb86da6027c8b264df78f9f8c799af43dc5340e2ca3d86053c9be168140bfa05734a4217e65ef9939652b004d6a536f64b2e0ef3b74b07f535
+DIST less-633.tar.gz 375733 BLAKE2B e9df180794af365f86734c6b8fde766c1bba42b111717ee5e1cf11001fc7ec3d78910db9bb7c51a76816086f599808b1b60f514011ec40e37650d6bc4f8b3d5c SHA512 a29aaf72abca07fb29d12f218bbd422a39e3898b3d53e8dbd5265ae47ecf68b88c3381aa3a9bf7caa8db1e2d8e2c138b333f0d69fddd4cf014e39118c53f7fb1
+DIST less-643.tar.gz 592291 BLAKE2B 6dc60dc2e8db05afdae466877a1d26a3008ff5378bbbf2fbdf9efc4f87c0fcfde5703d44a24d4355c98d3a5f438bdb51173150f2a69f801d9c8e4a7401d71b53 SHA512 6a324ac54e22429ac652dc303bc1fe48933555d1cbf8ad7ecf345940910c014fef9551a3219743cfb7115e356b5841ae97d6ce62e7a1ba1e3300d243efca34d9
diff --git a/sys-apps/less/files/less-643-LESSOPEN-escape.patch b/sys-apps/less/files/less-643-LESSOPEN-escape.patch
new file mode 100644
index 000000000000..f3fe50fcfaa2
--- /dev/null
+++ b/sys-apps/less/files/less-643-LESSOPEN-escape.patch
@@ -0,0 +1,61 @@
+https://openwall.com/lists/oss-security/2024/04/12/5
+https://bugs.gentoo.org/929210
+https://github.com/gwsw/less/commit/007521ac3c95bc76e3d59c6dbfe75d06c8075c33
+
+Upstream provided this version via email as a backport to 643.
+--- a/filename.c
++++ b/filename.c
+@@ -134,6 +134,15 @@
+ }
+
+ /*
++ * Must use quotes rather than escape char for this metachar?
++ */
++static int must_quote(char c)
++{
++ /* {{ Maybe the set of must_quote chars should be configurable? }} */
++ return (c == '\n');
++}
++
++/*
+ * Insert a backslash before each metacharacter in a string.
+ */
+ public char * shell_quote(char *s)
+@@ -164,6 +173,9 @@
+ * doesn't support escape chars. Use quotes.
+ */
+ use_quotes = 1;
++ } else if (must_quote(*p))
++ {
++ len += 3; /* open quote + char + close quote */
+ } else
+ {
+ /*
+@@ -193,15 +205,22 @@
+ {
+ while (*s != '\0')
+ {
+- if (metachar(*s))
++ if (!metachar(*s))
+ {
+- /*
+- * Add the escape char.
+- */
++ *p++ = *s++;
++ } else if (must_quote(*s))
++ {
++ /* Surround the char with quotes. */
++ *p++ = openquote;
++ *p++ = *s++;
++ *p++ = closequote;
++ } else
++ {
++ /* Insert an escape char before the char. */
+ strcpy(p, esc);
+ p += esclen;
++ *p++ = *s++;
+ }
+- *p++ = *s++;
+ }
+ *p = '\0';
+ }
diff --git a/sys-apps/less/files/less-643-lesstest-pkg-config.patch b/sys-apps/less/files/less-643-lesstest-pkg-config.patch
new file mode 100644
index 000000000000..cd5f6f3047ba
--- /dev/null
+++ b/sys-apps/less/files/less-643-lesstest-pkg-config.patch
@@ -0,0 +1,34 @@
+https://github.com/gwsw/less/pull/412
+
+From 5d884b29fb11c2686b804428f483f4607334eb68 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 13 Aug 2023 03:57:25 +0100
+Subject: [PATCH] lesstest: use pkg-config to find ncurses libraries
+
+Fails to build with split tinfo otherwise like:
+```
+
+x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -fdiagnostics-color=always -frecord-gcc-switches -Wreturn-type -ggdb3 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 -Wl,-z,pack-relative-relocs -ggdb3 -o lesstest display.o env.o lesstest.o parse.o pipeline.o log.o run.o term.o wchar.o -lncurses
+/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: display.o: in function `display_screen':
+/var/tmp/portage/sys-apps/less-643/work/less-643/lesstest/display.c:86:(.text+0x2e0): undefined reference to `tgoto'
+/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: term.o: in function `setup_mode':
+/var/tmp/portage/sys-apps/less-643/work/less-643/lesstest/term.c:83:(.text+0x18): undefined reference to `tgetstr'
+[...]
+```
+
+Going forward, we may want to just add a Makefile.in which configure handles
+to the lesstest subdir.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/lesstest/Makefile
++++ b/lesstest/Makefile
+@@ -1,7 +1,8 @@
+ CC ?= gcc
+ CFLAGS ?= -Wall -O2
+ LDFLAGS ?=
+-TERMLIB = -lncurses
++PKG_CONFIG ?= pkg-config
++TERMLIB ?= $(shell ${PKG_CONFIG} --libs ncurses)
+ srcdir ?= .
+
+ all: lesstest lt_screen
diff --git a/sys-apps/less/files/lesspipe-r3.sh b/sys-apps/less/files/lesspipe-r3.sh
new file mode 100644
index 000000000000..baec90dc0e75
--- /dev/null
+++ b/sys-apps/less/files/lesspipe-r3.sh
@@ -0,0 +1,339 @@
+#!/bin/bash
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Preprocessor for 'less'. Used when this environment variable is set:
+# LESSOPEN="|lesspipe %s"
+
+# TODO: handle compressed files better
+
+[[ -n ${LESSDEBUG+set} ]] && set -x
+
+trap 'exit 0' PIPE
+
+guesscompress() {
+ case "$1" in
+ *.gz|*.z) echo "gunzip -c" ;;
+ *.bz2|*.bz) echo "bunzip2 -c" ;;
+ *.lz) echo "lzip -dc" ;;
+ *.lzma) echo "unlzma -c" ;;
+ *.lzo) echo "lzop -dc" ;;
+ *.xz) echo "xzdec" ;;
+ *.zst) echo "zstdcat" ;;
+ *) echo "cat" ;;
+ esac
+}
+
+crl_filter() {
+ if command -v certtool &>/dev/null; then
+ certtool --crl-info --text --infile "$1"
+ else
+ openssl crl -hash -text -noout -in "$1"
+ fi
+}
+
+csr_filter() {
+ if command -v certtool &>/dev/null; then
+ certtool --crq-info --text --infile "$1"
+ else
+ openssl req -text -noout -in "$1"
+ fi
+}
+
+crt_filter() {
+ if command -v certtool &>/dev/null; then
+ certtool --certificate-info --text --infile "$1"
+ else
+ openssl x509 -hash -text -noout -in "$1"
+ fi
+}
+
+jks_filter() {
+ if command -v keytool &>/dev/null; then
+ keytool -list -keystore "$1"
+ else
+ cat "$1"
+ fi
+}
+
+p12_filter() {
+ openssl pkcs12 -nokeys -info -in "$1"
+}
+
+lesspipe_file() {
+ local out=$(file -L -- "$1")
+ local suffix
+ case ${out} in
+ *" 7-zip archive"*) suffix="7z";;
+ *" ar archive"*) suffix="a";;
+ *" CAB-Installer"*) suffix="cab";;
+ *" cpio archive"*) suffix="cpio";;
+ *" ELF "*) suffix="elf";;
+ *" LHa"*archive*) suffix="lha";;
+ *" troff "*) suffix="man";;
+ *" script text"*) suffix="sh";;
+ *" shared object"*) suffix="so";;
+ *" tar archive"*) suffix="tar";;
+ *" Zip archive"*) suffix="zip";;
+ *": data") hexdump -C -- "$1"; return 0;;
+ *) return 1;;
+ esac
+ lesspipe "$1" ".${suffix}"
+ return 0
+}
+
+lesspipe() {
+ local match=$2
+ [[ -z ${match} ]] && match=$1
+
+ local DECOMPRESSOR=$(guesscompress "${match}")
+
+ # User filters
+ if [[ -x ~/.lessfilter ]] ; then
+ ~/.lessfilter "$1" && exit 0
+ fi
+
+ # System filters
+ shopt -s nullglob
+ local f
+ for f in "${XDG_CONFIG_HOME:-~/.config}"/lessfilter.d/* /etc/lessfilter.d/* /usr/lib/lessfilter.d/*; do
+ if [[ -x ${f} ]]; then
+ "${f}" "$1" && exit 0
+ fi
+ done
+ shopt -u nullglob
+
+ local ignore
+ for ignore in ${LESSIGNORE} ; do
+ [[ ${match} == *.${ignore} ]] && exit 0
+ done
+
+ # Handle non-regular file types.
+ if [[ -d $1 ]] ; then
+ ls -alF -- "$1"
+ return
+ elif [[ ! -f $1 ]] ; then
+ # Only return if the stat passes. This is needed to handle pseudo
+ # arguments like URIs.
+ stat -- "$1" && return
+ fi
+
+ case "${match}" in
+
+ ### Doc files ###
+ *.[0-9n]|*.man|\
+ *.[0-9n].bz2|*.man.bz2|\
+ *.[0-9n].gz|*.man.gz|\
+ *.[0-9n].lzma|*.man.lzma|\
+ *.[0-9n].xz|*.man.xz|\
+ *.[0-9n].zst|*.man.zst|\
+ *.[0-9][a-z].gz|*.[0-9][a-z].gz)
+ local out=$(${DECOMPRESSOR} -- "$1" | file -)
+ case ${out} in
+ *troff*)
+ # Need to make sure we pass path to man or it will try
+ # to locate "$1" in the man search paths
+ if [[ $1 == /* ]] ; then
+ man -- "$1"
+ else
+ man -- "./$1"
+ fi
+ ;;
+ *text*)
+ ${DECOMPRESSOR} -- "$1"
+ ;;
+ *)
+ # We could have matched a library (libc.so.6), so let
+ # `file` figure out what the hell this thing is
+ lesspipe_file "$1"
+ ;;
+ esac
+ ;;
+ *.dvi) dvi2tty "$1" ;;
+ *.ps) ps2ascii "$1" || pstotext "$1" ;;
+ *.pdf) pdftotext "$1" - || ps2ascii "$1" || pstotext "$1" ;;
+ *.doc) antiword "$1" || catdoc "$1" ;;
+ *.rtf) unrtf --nopict --text "$1" ;;
+ *.conf|*.txt|*.log) ;; # force less to work on these directly #150256
+ *.json) python -mjson.tool "$1" ;;
+
+ ### URLs ###
+ ftp://*|http://*|https://|*.htm|*.html)
+ for b in elinks links2 links lynx ; do
+ ${b} -dump "$1" && exit 0
+ done
+ html2text -style pretty "$1"
+ ;;
+
+ ### Tar files ###
+ *.tar|\
+ *.tar.bz2|*.tar.bz|*.tar.gz|*.tar.z|*.tar.zst|\
+ *.tar.lz|*.tar.tlz|\
+ *.tar.lzma|*.tar.xz)
+ ${DECOMPRESSOR} -- "$1" | tar tvvf -;;
+ *.tbz2|*.tbz|*.tgz|*.tlz|*.txz)
+ lesspipe "$1" "$1.tar.${1##*.t}" ;;
+
+ ### Misc archives ###
+ *.bz2|\
+ *.gz|*.z|\
+ *.zst|\
+ *.lz|\
+ *.lzma|*.xz) ${DECOMPRESSOR} -- "$1" ;;
+ *.rpm) rpm -qpivl --changelog -- "$1" || rpm2tar -O "$1" | tar tvvf -;;
+ *.cpi|*.cpio) cpio -itv < "$1" ;;
+ *.ace) unace l "$1" ;;
+ *.arc) arc v "$1" ;;
+ *.arj) arj l -- "$1" || unarj l "$1" ;;
+ *.cab) cabextract -l -- "$1" ;;
+ *.lha|*.lzh) lha v "$1" ;;
+ *.zoo) zoo -list "$1" || unzoo -l "$1" ;;
+ *.7z|*.exe) 7z l -- "$1" || 7za l -- "$1" || 7zr l -- "$1" ;;
+ *.a) ar tv "$1" ;;
+ *.elf) readelf -a -W -- "$1" ;;
+ *.so) readelf -h -d -s -W -- "$1" ;;
+ *.mo|*.gmo) msgunfmt -- "$1" ;;
+
+ *.rar|.r[0-9][0-9]) unrar l -- "$1" ;;
+
+ *.jar|*.war|*.ear|*.xpi|*.zip)
+ unzip -v "$1" || miniunzip -l "$1" || miniunz -l "$1" || zipinfo -v "$1"
+ ;;
+
+ *.deb|*.udeb)
+ if type -P dpkg > /dev/null ; then
+ dpkg --info "$1"
+ dpkg --contents "$1"
+ else
+ ar tv "$1"
+ ar p "$1" data.tar.gz | tar tzvvf -
+ fi
+ ;;
+
+ ### Filesystems ###
+ *.squashfs) unsquashfs -s "$1" && unsquashfs -ll "$1" ;;
+
+ ### Media ###
+ *.bmp|*.gif|*.jpeg|*.jpg|*.ico|*.pcd|*.pcx|*.png|*.ppm|*.tga|*.tiff|*.tif|*.webp)
+ identify -verbose -- "$1" || file -L -- "$1"
+ ;;
+ *.asf|*.avi|*.flv|*.mkv|*.mov|*.mp4|*.mpeg|*.mpg|*.qt|*.ram|*.rm|*.webm|*.wmv)
+ midentify "$1" || file -L -- "$1"
+ ;;
+ *.mp3) mp3info "$1" || id3info "$1" ;;
+ *.ogg) ogginfo "$1" ;;
+ *.flac) metaflac --list "$1" ;;
+ *.torrent) torrentinfo "$1" || torrentinfo-console "$1" || ctorrent -x "$1" ;;
+ *.bin|*.cue|*.raw)
+ # not all .bin/.raw files are cd images #285507
+ # fall back to lesspipe_file if .cue doesn't exist, or if
+ # cd-info failed to parse things sanely
+ [[ -e ${1%.*}.cue ]] \
+ && cd-info --no-header --no-device-info "$1" \
+ || lesspipe_file "$1"
+ ;;
+ *.iso)
+ iso_info=$(isoinfo -d -i "$1")
+ echo "${iso_info}"
+ # Joliet output overrides Rock Ridge, so prefer the better Rock
+ case ${iso_info} in
+ *$'\n'"Rock Ridge"*) iso_opts="-R";;
+ *$'\n'"Joliet"*) iso_opts="-J";;
+ *) iso_opts="";;
+ esac
+ isoinfo -l ${iso_opts} -i "$1"
+ ;;
+
+ ### Encryption stuff ###
+ *.crl) crl_filter "$1" ;;
+ *.csr) csr_filter "$1" ;;
+ *.crt|*.pem) crt_filter "$1" ;;
+ *.jks) jks_filter "$1" ;;
+ *.p12|*.pfx) p12_filter "$1" ;;
+
+# May not be such a good idea :)
+# ### Device nodes ###
+# /dev/[hs]d[a-z]*)
+# fdisk -l "${1:0:8}"
+# [[ $1 == *hd* ]] && hdparm -I "${1:0:8}"
+# ;;
+
+ ### Everything else ###
+ *)
+ case $(( recur++ )) in
+ # Maybe we didn't match due to case issues ...
+ 0) lesspipe "$1" "$(echo "$1" | LC_ALL=C tr '[:upper:]' '[:lower:]')" ;;
+
+ # Maybe we didn't match because the file is named weird ...
+ 1) lesspipe_file "$1" ;;
+ esac
+
+ # So no matches from above ... finally fall back to an external
+ # coloring package. No matching here so we don't have to worry
+ # about keeping in sync with random packages. Any coloring tool
+ # you use should not output errors about unsupported files to
+ # stdout. If it does, it's your problem.
+
+ # Allow people to flip color off if they dont want it
+ case ${LESSCOLOR} in
+ always) LESSCOLOR=2;;
+ [yY][eE][sS]|[yY]|1|true) LESSCOLOR=1;;
+ [nN][oO]|[nN]|0|false) LESSCOLOR=0;;
+ *) LESSCOLOR=1;;
+ esac
+ if [[ ${LESSCOLOR} != "0" ]] && [[ -n ${LESSCOLORIZER=pygmentize} ]] ; then
+ # 2: Only colorize if user forces it ...
+ # 1: ... or we know less will handle raw codes -- this will
+ # not detect -seiRM, so set LESSCOLORIZER yourself
+ if [[ ${LESSCOLOR} == "2" ]] || [[ " ${LESS} " == *" -"[rR]" "* ]] ; then
+ LESSQUIET=true ${LESSCOLORIZER} "$1"
+ fi
+ fi
+
+ # Nothing left to do but let less deal
+ exit 0
+ ;;
+ esac
+}
+
+if [[ $# -eq 0 ]] ; then
+ echo "Usage: lesspipe <file>"
+elif [[ $1 == "-V" || $1 == "--version" ]] ; then
+ cat <<-EOF
+ lesspipe (git)
+ Copyright 1999-2023 Gentoo Authors
+ Mike Frysinger <vapier@gentoo.org>
+ (with plenty of ideas stolen from other projects/distros)
+
+ EOF
+ less -V
+elif [[ $1 == "-h" || $1 == "--help" ]] ; then
+ cat <<-EOF
+ lesspipe: preprocess files before sending them to less
+
+ Usage: lesspipe <file>
+
+ lesspipe specific settings:
+ LESSCOLOR env - toggle colorizing of output (no/yes/always; default: no)
+ LESSCOLORIZER env - program used to colorize output (default: pygmentize)
+ LESSIGNORE - list of extensions to ignore (don't do anything fancy)
+
+ You can create per-user filters as well by creating the executable file:
+ ~/.lessfilter
+ One argument is passed to it: the file to display. The script should exit 0
+ to indicate it handled the file, or non-zero to tell lesspipe to handle it.
+
+ To use lesspipe, simply add to your environment:
+ export LESSOPEN="|lesspipe %s"
+
+ For colorization, install dev-python/pygments for the pygmentize program. Note,
+ if using alternative code2color from sys app-text/lesspipe you may run out of
+ memory due to #188835.
+
+ Run 'less --help' or 'man less' for more info.
+ EOF
+else
+ recur=0
+ [[ -z ${LESSDEBUG+set} ]] && exec 2>/dev/null
+ lesspipe "$1"
+fi
diff --git a/sys-apps/less/files/lesspipe.sh b/sys-apps/less/files/lesspipe.sh
deleted file mode 100644
index a393de07ec7b..000000000000
--- a/sys-apps/less/files/lesspipe.sh
+++ /dev/null
@@ -1,284 +0,0 @@
-#!/bin/bash
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Preprocessor for 'less'. Used when this environment variable is set:
-# LESSOPEN="|lesspipe %s"
-
-# TODO: handle compressed files better
-
-[[ -n ${LESSDEBUG+set} ]] && set -x
-
-trap 'exit 0' PIPE
-
-guesscompress() {
- case "$1" in
- *.gz|*.z) echo "gunzip -c" ;;
- *.bz2|*.bz) echo "bunzip2 -c" ;;
- *.lz) echo "lzip -dc" ;;
- *.lzma) echo "unlzma -c" ;;
- *.lzo) echo "lzop -dc" ;;
- *.xz) echo "xzdec" ;;
- *) echo "cat" ;;
- esac
-}
-
-lesspipe_file() {
- local out=$(file -L -- "$1")
- local suffix
- case ${out} in
- *" 7-zip archive"*) suffix="7z";;
- *" ar archive"*) suffix="a";;
- *" CAB-Installer"*) suffix="cab";;
- *" cpio archive"*) suffix="cpio";;
- *" ELF "*) suffix="elf";;
- *" LHa"*archive*) suffix="lha";;
- *" troff "*) suffix="man";;
- *" script text"*) suffix="sh";;
- *" shared object"*) suffix="so";;
- *" tar archive"*) suffix="tar";;
- *" Zip archive"*) suffix="zip";;
- *": data") hexdump -C -- "$1"; return 0;;
- *) return 1;;
- esac
- lesspipe "$1" ".${suffix}"
- return 0
-}
-
-lesspipe() {
- local match=$2
- [[ -z ${match} ]] && match=$1
-
- local DECOMPRESSOR=$(guesscompress "${match}")
-
- # User filters
- if [[ -x ~/.lessfilter ]] ; then
- ~/.lessfilter "$1" && exit 0
- fi
-
- local ignore
- for ignore in ${LESSIGNORE} ; do
- [[ ${match} == *.${ignore} ]] && exit 0
- done
-
- # Handle non-regular file types.
- if [[ -d $1 ]] ; then
- ls -alF -- "$1"
- return
- elif [[ ! -f $1 ]] ; then
- # Only return if the stat passes. This is needed to handle pseudo
- # arguments like URIs.
- stat -- "$1" && return
- fi
-
- case "${match}" in
-
- ### Doc files ###
- *.[0-9n]|*.man|\
- *.[0-9n].bz2|*.man.bz2|\
- *.[0-9n].gz|*.man.gz|\
- *.[0-9n].lzma|*.man.lzma|\
- *.[0-9n].xz|*.man.xz|\
- *.[0-9][a-z].gz|*.[0-9][a-z].gz)
- local out=$(${DECOMPRESSOR} -- "$1" | file -)
- case ${out} in
- *troff*)
- # Need to make sure we pass path to man or it will try
- # to locate "$1" in the man search paths
- if [[ $1 == /* ]] ; then
- man -- "$1"
- else
- man -- "./$1"
- fi
- ;;
- *text*)
- ${DECOMPRESSOR} -- "$1"
- ;;
- *)
- # We could have matched a library (libc.so.6), so let
- # `file` figure out what the hell this thing is
- lesspipe_file "$1"
- ;;
- esac
- ;;
- *.dvi) dvi2tty "$1" ;;
- *.ps) ps2ascii "$1" || pstotext "$1" ;;
- *.pdf) pdftotext "$1" - || ps2ascii "$1" || pstotext "$1" ;;
- *.doc) antiword "$1" || catdoc "$1" ;;
- *.rtf) unrtf --nopict --text "$1" ;;
- *.conf|*.txt|*.log) ;; # force less to work on these directly #150256
- *.json) python -mjson.tool "$1" ;;
-
- ### URLs ###
- ftp://*|http://*|https://|*.htm|*.html)
- for b in elinks links2 links lynx ; do
- ${b} -dump "$1" && exit 0
- done
- html2text -style pretty "$1"
- ;;
-
- ### Tar files ###
- *.tar|\
- *.tar.bz2|*.tar.bz|*.tar.gz|*.tar.z|\
- *.tar.lz|*.tar.tlz|\
- *.tar.lzma|*.tar.xz)
- ${DECOMPRESSOR} -- "$1" | tar tvvf -;;
- *.tbz2|*.tbz|*.tgz|*.tlz|*.txz)
- lesspipe "$1" "$1.tar.${1##*.t}" ;;
-
- ### Misc archives ###
- *.bz2|\
- *.gz|*.z|\
- *.lz|\
- *.lzma|*.xz) ${DECOMPRESSOR} -- "$1" ;;
- *.rpm) rpm -qpivl --changelog -- "$1" || rpm2tar -O "$1" | tar tvvf -;;
- *.cpi|*.cpio) cpio -itv < "$1" ;;
- *.ace) unace l "$1" ;;
- *.arc) arc v "$1" ;;
- *.arj) arj l -- "$1" || unarj l "$1" ;;
- *.cab) cabextract -l -- "$1" ;;
- *.lha|*.lzh) lha v "$1" ;;
- *.zoo) zoo -list "$1" || unzoo -l "$1" ;;
- *.7z|*.exe) 7z l -- "$1" || 7za l -- "$1" || 7zr l -- "$1" ;;
- *.a) ar tv "$1" ;;
- *.elf) readelf -a -W -- "$1" ;;
- *.so) readelf -h -d -s -W -- "$1" ;;
- *.mo|*.gmo) msgunfmt -- "$1" ;;
-
- *.rar|.r[0-9][0-9]) unrar l -- "$1" ;;
-
- *.jar|*.war|*.ear|*.xpi|*.zip)
- unzip -v "$1" || miniunzip -l "$1" || miniunz -l "$1" || zipinfo -v "$1"
- ;;
-
- *.deb|*.udeb)
- if type -P dpkg > /dev/null ; then
- dpkg --info "$1"
- dpkg --contents "$1"
- else
- ar tv "$1"
- ar p "$1" data.tar.gz | tar tzvvf -
- fi
- ;;
-
- ### Filesystems ###
- *.squashfs) unsquashfs -s "$1" && unsquashfs -ll "$1" ;;
-
- ### Media ###
- *.bmp|*.gif|*.jpeg|*.jpg|*.ico|*.pcd|*.pcx|*.png|*.ppm|*.tga|*.tiff|*.tif|*.webp)
- identify -verbose -- "$1" || file -L -- "$1"
- ;;
- *.asf|*.avi|*.flv|*.mkv|*.mov|*.mp4|*.mpeg|*.mpg|*.qt|*.ram|*.rm|*.webm|*.wmv)
- midentify "$1" || file -L -- "$1"
- ;;
- *.mp3) mp3info "$1" || id3info "$1" ;;
- *.ogg) ogginfo "$1" ;;
- *.flac) metaflac --list "$1" ;;
- *.torrent) torrentinfo "$1" || torrentinfo-console "$1" || ctorrent -x "$1" ;;
- *.bin|*.cue|*.raw)
- # not all .bin/.raw files are cd images #285507
- # fall back to lesspipe_file if .cue doesn't exist, or if
- # cd-info failed to parse things sanely
- [[ -e ${1%.*}.cue ]] \
- && cd-info --no-header --no-device-info "$1" \
- || lesspipe_file "$1"
- ;;
- *.iso)
- iso_info=$(isoinfo -d -i "$1")
- echo "${iso_info}"
- # Joliet output overrides Rock Ridge, so prefer the better Rock
- case ${iso_info} in
- *$'\n'"Rock Ridge"*) iso_opts="-R";;
- *$'\n'"Joliet"*) iso_opts="-J";;
- *) iso_opts="";;
- esac
- isoinfo -l ${iso_opts} -i "$1"
- ;;
-
- ### Encryption stuff ###
- *.crl) openssl crl -hash -text -noout -in "$1" ;;
- *.csr) openssl req -text -noout -in "$1" ;;
- *.crt|*.pem) openssl x509 -hash -text -noout -in "$1" ;;
-
-# May not be such a good idea :)
-# ### Device nodes ###
-# /dev/[hs]d[a-z]*)
-# fdisk -l "${1:0:8}"
-# [[ $1 == *hd* ]] && hdparm -I "${1:0:8}"
-# ;;
-
- ### Everything else ###
- *)
- case $(( recur++ )) in
- # Maybe we didn't match due to case issues ...
- 0) lesspipe "$1" "$(echo "$1" | LC_ALL=C tr '[:upper:]' '[:lower:]')" ;;
-
- # Maybe we didn't match because the file is named weird ...
- 1) lesspipe_file "$1" ;;
- esac
-
- # So no matches from above ... finally fall back to an external
- # coloring package. No matching here so we don't have to worry
- # about keeping in sync with random packages. Any coloring tool
- # you use should not output errors about unsupported files to
- # stdout. If it does, it's your problem.
-
- # Allow people to flip color off if they dont want it
- case ${LESSCOLOR} in
- always) LESSCOLOR=2;;
- [yY][eE][sS]|[yY]|1|true) LESSCOLOR=1;;
- [nN][oO]|[nN]|0|false) LESSCOLOR=0;;
- *) LESSCOLOR=0;; # default to no color #188835
- esac
- if [[ ${LESSCOLOR} != "0" ]] && [[ -n ${LESSCOLORIZER=code2color} ]] ; then
- # 2: Only colorize if user forces it ...
- # 1: ... or we know less will handle raw codes -- this will
- # not detect -seiRM, so set LESSCOLORIZER yourself
- if [[ ${LESSCOLOR} == "2" ]] || [[ " ${LESS} " == *" -"[rR]" "* ]] ; then
- LESSQUIET=true ${LESSCOLORIZER} "$1"
- fi
- fi
-
- # Nothing left to do but let less deal
- exit 0
- ;;
- esac
-}
-
-if [[ $# -eq 0 ]] ; then
- echo "Usage: lesspipe <file>"
-elif [[ $1 == "-V" || $1 == "--version" ]] ; then
- cat <<-EOF
- lesspipe (git)
- Copyright 1999-2019 Gentoo Authors
- Mike Frysinger <vapier@gentoo.org>
- (with plenty of ideas stolen from other projects/distros)
-
- EOF
- less -V
-elif [[ $1 == "-h" || $1 == "--help" ]] ; then
- cat <<-EOF
- lesspipe: preprocess files before sending them to less
-
- Usage: lesspipe <file>
-
- lesspipe specific settings:
- LESSCOLOR env - toggle colorizing of output (no/yes/always; default: no)
- LESSCOLORIZER env - program used to colorize output (default: code2color)
- LESSIGNORE - list of extensions to ignore (don't do anything fancy)
-
- You can create per-user filters as well by creating the executable file:
- ~/.lessfilter
- One argument is passed to it: the file to display. The script should exit 0
- to indicate it handled the file, or non-zero to tell lesspipe to handle it.
-
- To use lesspipe, simply add to your environment:
- export LESSOPEN="|lesspipe %s"
-
- Run 'less --help' or 'man less' for more info.
- EOF
-else
- recur=0
- [[ -z ${LESSDEBUG+set} ]] && exec 2>/dev/null
- lesspipe "$1"
-fi
diff --git a/sys-apps/less/less-551.ebuild b/sys-apps/less/less-551.ebuild
deleted file mode 100644
index cfc0e10bf5e8..000000000000
--- a/sys-apps/less/less-551.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Excellent text file viewer"
-HOMEPAGE="http://www.greenwoodsoftware.com/less/"
-SRC_URI="http://www.greenwoodsoftware.com/less/${P}.tar.gz"
-
-LICENSE="|| ( GPL-3 BSD-2 )"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="pcre unicode"
-
-DEPEND=">=app-misc/editor-wrapper-3
- >=sys-libs/ncurses-5.2:0=
- pcre? ( dev-libs/libpcre2 )"
-RDEPEND="${DEPEND}"
-
-src_configure() {
- export ac_cv_lib_ncursesw_initscr=$(usex unicode)
- export ac_cv_lib_ncurses_initscr=$(usex !unicode)
- local myeconfargs=(
- --with-regex=$(usex pcre pcre2 posix)
- --with-editor="${EPREFIX}"/usr/libexec/editor
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newbin "${FILESDIR}"/lesspipe.sh lesspipe
- newenvd "${FILESDIR}"/less.envd 70less
-}
-
-pkg_preinst() {
- if has_version "<${CATEGORY}/${PN}-483-r1" ; then
- elog "The lesspipe.sh symlink has been dropped. If you are still setting"
- elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
- elog "Colorization support has been dropped. If you want that, check out"
- elog "the new app-text/lesspipe package."
- fi
-}
diff --git a/sys-apps/less/less-562.ebuild b/sys-apps/less/less-562.ebuild
deleted file mode 100644
index 375e2585ca5b..000000000000
--- a/sys-apps/less/less-562.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Excellent text file viewer"
-HOMEPAGE="http://www.greenwoodsoftware.com/less/"
-SRC_URI="http://www.greenwoodsoftware.com/less/${P}.tar.gz"
-
-LICENSE="|| ( GPL-3 BSD-2 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="pcre unicode"
-
-DEPEND=">=app-misc/editor-wrapper-3
- >=sys-libs/ncurses-5.2:0=
- pcre? ( dev-libs/libpcre2 )"
-RDEPEND="${DEPEND}"
-
-src_configure() {
- export ac_cv_lib_ncursesw_initscr=$(usex unicode)
- export ac_cv_lib_ncurses_initscr=$(usex !unicode)
- local myeconfargs=(
- --with-regex=$(usex pcre pcre2 posix)
- --with-editor="${EPREFIX}"/usr/libexec/editor
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newbin "${FILESDIR}"/lesspipe.sh lesspipe
- newenvd "${FILESDIR}"/less.envd 70less
-}
-
-pkg_preinst() {
- if has_version "<${CATEGORY}/${PN}-483-r1" ; then
- elog "The lesspipe.sh symlink has been dropped. If you are still setting"
- elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
- elog "Colorization support has been dropped. If you want that, check out"
- elog "the new app-text/lesspipe package."
- fi
-}
diff --git a/sys-apps/less/less-563-r1.ebuild b/sys-apps/less/less-563-r1.ebuild
deleted file mode 100644
index ecac3dfb95c9..000000000000
--- a/sys-apps/less/less-563-r1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Excellent text file viewer"
-HOMEPAGE="http://www.greenwoodsoftware.com/less/"
-SRC_URI="http://www.greenwoodsoftware.com/less/${P}.tar.gz"
-
-LICENSE="|| ( GPL-3 BSD-2 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="pcre unicode"
-
-DEPEND=">=app-misc/editor-wrapper-3
- >=sys-libs/ncurses-5.2:0=
- pcre? ( dev-libs/libpcre2 )"
-RDEPEND="${DEPEND}"
-
-src_configure() {
- export ac_cv_lib_ncursesw_initscr=$(usex unicode)
- export ac_cv_lib_ncurses_initscr=$(usex !unicode)
- local myeconfargs=(
- --with-regex=$(usex pcre pcre2 posix)
- --with-editor="${EPREFIX}"/usr/libexec/editor
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newbin "${FILESDIR}"/lesspipe-r1.sh lesspipe
- newenvd "${FILESDIR}"/less.envd 70less
-}
-
-pkg_preinst() {
- if has_version "<${CATEGORY}/${PN}-483-r1" ; then
- elog "The lesspipe.sh symlink has been dropped. If you are still setting"
- elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
- elog "Colorization support has been dropped. If you want that, check out"
- elog "the new app-text/lesspipe package."
- fi
-}
diff --git a/sys-apps/less/less-563.ebuild b/sys-apps/less/less-563.ebuild
deleted file mode 100644
index 375e2585ca5b..000000000000
--- a/sys-apps/less/less-563.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Excellent text file viewer"
-HOMEPAGE="http://www.greenwoodsoftware.com/less/"
-SRC_URI="http://www.greenwoodsoftware.com/less/${P}.tar.gz"
-
-LICENSE="|| ( GPL-3 BSD-2 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="pcre unicode"
-
-DEPEND=">=app-misc/editor-wrapper-3
- >=sys-libs/ncurses-5.2:0=
- pcre? ( dev-libs/libpcre2 )"
-RDEPEND="${DEPEND}"
-
-src_configure() {
- export ac_cv_lib_ncursesw_initscr=$(usex unicode)
- export ac_cv_lib_ncurses_initscr=$(usex !unicode)
- local myeconfargs=(
- --with-regex=$(usex pcre pcre2 posix)
- --with-editor="${EPREFIX}"/usr/libexec/editor
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- newbin "${FILESDIR}"/lesspipe.sh lesspipe
- newenvd "${FILESDIR}"/less.envd 70less
-}
-
-pkg_preinst() {
- if has_version "<${CATEGORY}/${PN}-483-r1" ; then
- elog "The lesspipe.sh symlink has been dropped. If you are still setting"
- elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
- elog "Colorization support has been dropped. If you want that, check out"
- elog "the new app-text/lesspipe package."
- fi
-}
diff --git a/sys-apps/less/less-633.ebuild b/sys-apps/less/less-633.ebuild
new file mode 100644
index 000000000000..84b0670e4fc7
--- /dev/null
+++ b/sys-apps/less/less-633.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WANT_AUTOMAKE=none
+WANT_LIBTOOL=none
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/gwsw/less"
+ inherit git-r3
+fi
+
+inherit autotools
+
+# Releases are usually first a beta then promoted to stable if no
+# issues were found. Upstream explicitly ask "to not generally distribute"
+# the beta versions. It's okay to keyword beta versions if they fix
+# a serious bug, but otherwise try to avoid it.
+
+MY_PV=${PV/_beta/-beta}
+MY_P=${PN}-${MY_PV}
+DESCRIPTION="Excellent text file viewer"
+HOMEPAGE="https://www.greenwoodsoftware.com/less/"
+[[ ${PV} != 9999 ]] && SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_P/?beta}
+
+LICENSE="|| ( GPL-3 BSD-2 )"
+SLOT="0"
+if [[ ${PV} != 9999 && ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="pcre"
+# As of 623_beta, lesstest is not included in dist tarballs
+# https://github.com/gwsw/less/issues/344
+RESTRICT="test"
+
+DEPEND="
+ >=app-misc/editor-wrapper-3
+ >=sys-libs/ncurses-5.2:=
+ pcre? ( dev-libs/libpcre2 )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ # Per upstream README to prepare live build
+ [[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles
+ # Upstream uses unpatched autoconf-2.69, which breaks with clang-16.
+ # https://bugs.gentoo.org/870412
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-regex=$(usex pcre pcre2 posix)
+ --with-editor="${EPREFIX}"/usr/libexec/editor
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ emake check VERBOSE=1
+}
+
+src_install() {
+ default
+
+ newbin "${FILESDIR}"/lesspipe-r1.sh lesspipe
+ newenvd "${FILESDIR}"/less.envd 70less
+}
+
+pkg_preinst() {
+ if has_version "<${CATEGORY}/${PN}-483-r1" ; then
+ elog "The lesspipe.sh symlink has been dropped. If you are still setting"
+ elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
+ elog "Colorization support has been dropped. If you want that, check out"
+ elog "the new app-text/lesspipe package."
+ fi
+}
diff --git a/sys-apps/less/less-643-r1.ebuild b/sys-apps/less/less-643-r1.ebuild
new file mode 100644
index 000000000000..f9ccfd4aaadf
--- /dev/null
+++ b/sys-apps/less/less-643-r1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Releases are usually first a beta then promoted to stable if no
+# issues were found. Upstream explicitly ask "to not generally distribute"
+# the beta versions. It's okay to keyword beta versions if they fix
+# a serious bug, but otherwise try to avoid it.
+
+WANT_AUTOMAKE=none
+WANT_LIBTOOL=none
+inherit autotools flag-o-matic optfeature toolchain-funcs
+
+DESCRIPTION="Excellent text file viewer"
+HOMEPAGE="https://www.greenwoodsoftware.com/less/"
+
+MY_PV=${PV/_beta/-beta}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/gwsw/less"
+ inherit git-r3
+else
+ SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
+
+ if [[ ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+fi
+
+S="${WORKDIR}"/${MY_P/?beta}
+
+LICENSE="|| ( GPL-3 BSD-2 )"
+SLOT="0"
+IUSE="pcre test"
+# chinese1, utf8-2
+RESTRICT="test !test? ( test )"
+
+DEPEND="
+ >=app-misc/editor-wrapper-3
+ >=sys-libs/ncurses-5.2:=
+ pcre? ( dev-libs/libpcre2 )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( virtual/pkgconfig )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch
+)
+
+src_prepare() {
+ default
+ # Per upstream README to prepare live build
+ [[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles
+ # Upstream uses unpatched autoconf-2.69, which breaks with clang-16.
+ # https://bugs.gentoo.org/870412
+ eautoreconf
+}
+
+src_configure() {
+ append-lfs-flags # bug #896316
+
+ local myeconfargs=(
+ --with-regex=$(usex pcre pcre2 posix)
+ --with-editor="${EPREFIX}"/usr/libexec/editor
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
+}
+
+src_install() {
+ default
+
+ keepdir /usr/lib/lessfilter.d
+ keepdir /etc/lessfilter.d
+
+ newbin "${FILESDIR}"/lesspipe-r3.sh lesspipe
+ newenvd "${FILESDIR}"/less.envd 70less
+}
+
+pkg_preinst() {
+ optfeature "Colorized output support" dev-python/pygments
+
+ if has_version "<${CATEGORY}/${PN}-483-r1" ; then
+ elog "The lesspipe.sh symlink has been dropped. If you are still setting"
+ elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
+ fi
+
+ if has_version "<${CATEGORY}/${PN}-643" ; then
+ elog "less now colorizes by default. To disable this, set LESSCOLOR=no."
+ fi
+}
diff --git a/sys-apps/less/less-643-r2.ebuild b/sys-apps/less/less-643-r2.ebuild
new file mode 100644
index 000000000000..1f7bfd5f8cf9
--- /dev/null
+++ b/sys-apps/less/less-643-r2.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Releases are usually first a beta then promoted to stable if no
+# issues were found. Upstream explicitly ask "to not generally distribute"
+# the beta versions. It's okay to keyword beta versions if they fix
+# a serious bug, but otherwise try to avoid it.
+
+WANT_AUTOMAKE=none
+WANT_LIBTOOL=none
+inherit autotools flag-o-matic optfeature toolchain-funcs
+
+DESCRIPTION="Excellent text file viewer"
+HOMEPAGE="https://www.greenwoodsoftware.com/less/"
+
+MY_PV=${PV/_beta/-beta}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/gwsw/less"
+ inherit git-r3
+else
+ SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
+
+ if [[ ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+fi
+
+S="${WORKDIR}"/${MY_P/?beta}
+
+LICENSE="|| ( GPL-3 BSD-2 )"
+SLOT="0"
+IUSE="pcre test"
+# chinese1, utf8-2
+RESTRICT="test !test? ( test )"
+
+DEPEND="
+ >=app-misc/editor-wrapper-3
+ >=sys-libs/ncurses-5.2:=
+ pcre? ( dev-libs/libpcre2 )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( virtual/pkgconfig )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch
+ "${FILESDIR}"/${PN}-643-LESSOPEN-escape.patch
+)
+
+src_prepare() {
+ default
+ # Per upstream README to prepare live build
+ [[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles
+ # Upstream uses unpatched autoconf-2.69, which breaks with clang-16.
+ # https://bugs.gentoo.org/870412
+ eautoreconf
+}
+
+src_configure() {
+ append-lfs-flags # bug #896316
+
+ local myeconfargs=(
+ --with-regex=$(usex pcre pcre2 posix)
+ --with-editor="${EPREFIX}"/usr/libexec/editor
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
+}
+
+src_install() {
+ default
+
+ keepdir /usr/lib/lessfilter.d
+ keepdir /etc/lessfilter.d
+
+ newbin "${FILESDIR}"/lesspipe-r3.sh lesspipe
+ newenvd "${FILESDIR}"/less.envd 70less
+}
+
+pkg_preinst() {
+ optfeature "Colorized output support" dev-python/pygments
+
+ if has_version "<${CATEGORY}/${PN}-483-r1" ; then
+ elog "The lesspipe.sh symlink has been dropped. If you are still setting"
+ elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
+ fi
+
+ if has_version "<${CATEGORY}/${PN}-643" ; then
+ elog "less now colorizes by default. To disable this, set LESSCOLOR=no."
+ fi
+}
diff --git a/sys-apps/less/less-9999.ebuild b/sys-apps/less/less-9999.ebuild
new file mode 100644
index 000000000000..186eda3b6814
--- /dev/null
+++ b/sys-apps/less/less-9999.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Releases are usually first a beta then promoted to stable if no
+# issues were found. Upstream explicitly ask "to not generally distribute"
+# the beta versions. It's okay to keyword beta versions if they fix
+# a serious bug, but otherwise try to avoid it.
+
+WANT_AUTOMAKE=none
+WANT_LIBTOOL=none
+inherit autotools flag-o-matic optfeature toolchain-funcs
+
+DESCRIPTION="Excellent text file viewer"
+HOMEPAGE="https://www.greenwoodsoftware.com/less/"
+
+MY_PV=${PV/_beta/-beta}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/gwsw/less"
+ inherit git-r3
+else
+ SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
+
+ if [[ ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+fi
+
+S="${WORKDIR}"/${MY_P/?beta}
+
+LICENSE="|| ( GPL-3 BSD-2 )"
+SLOT="0"
+IUSE="pcre test"
+# chinese1, utf8-2
+RESTRICT="test !test? ( test )"
+
+DEPEND="
+ >=app-misc/editor-wrapper-3
+ >=sys-libs/ncurses-5.2:=
+ pcre? ( dev-libs/libpcre2 )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( virtual/pkgconfig )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch
+)
+
+src_prepare() {
+ default
+ # Per upstream README to prepare live build
+ [[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles
+ # Upstream uses unpatched autoconf-2.69, which breaks with clang-16.
+ # https://bugs.gentoo.org/870412
+ eautoreconf
+}
+
+src_configure() {
+ append-lfs-flags # bug #896316
+
+ local myeconfargs=(
+ --with-regex=$(usex pcre pcre2 posix)
+ --with-editor="${EPREFIX}"/usr/libexec/editor
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
+}
+
+src_install() {
+ default
+
+ keepdir /usr/lib/lessfilter.d
+ keepdir /etc/lessfilter.d
+
+ newbin "${FILESDIR}"/lesspipe-r3.sh lesspipe
+ newenvd "${FILESDIR}"/less.envd 70less
+}
+
+pkg_preinst() {
+ optfeature "Colorized output supprt" dev-python/pygments
+
+ if has_version "<${CATEGORY}/${PN}-483-r1" ; then
+ elog "The lesspipe.sh symlink has been dropped. If you are still setting"
+ elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
+ fi
+
+ if has_version "<${CATEGORY}/${PN}-643" ; then
+ elog "less now colorizes by default. To disable this, set LESSCOLOR=no."
+ fi
+}
diff --git a/sys-apps/less/metadata.xml b/sys-apps/less/metadata.xml
index a759e4cfa838..c808bf8b5259 100644
--- a/sys-apps/less/metadata.xml
+++ b/sys-apps/less/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="cpe">cpe:/a:gnu:less</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:less</remote-id>
+ <remote-id type="github">gwsw/less</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/likwid/Manifest b/sys-apps/likwid/Manifest
index 22f882da9434..1f8bdfdbd74f 100644
--- a/sys-apps/likwid/Manifest
+++ b/sys-apps/likwid/Manifest
@@ -1,2 +1,3 @@
-DIST likwid-4.3.3.tar.gz 1579433 BLAKE2B 9ec468bba009dec860b24c9c55c3d6023ffda3ab0985d835796686ba52d1d3372b2bfce926cf229388978de34e1ab0b41d8d27c88623c51c3e8ff1e9d674906b SHA512 ae4d68e238bc40e4a4ab5df628561c9bb7a0ef8727d5779dba2c32fff0be1dd333532bee7e4c197e5fe286de81d35b863ef09f4bc8b9f9145360e6e461f3d94e
DIST likwid-4.3.4.tar.gz 1584829 BLAKE2B dcd1c3a0c5e549dc3d22bb98120339521e270da55460f5af9f2fe04849af0fe1ac4d9b881883a4efc3695ceb087d1afad5bcc55b55543199d2c33b0f5012cc68 SHA512 f1ee930a98d160728078a81a2cdc798ec62ac484545ced937131e6a6443e5ac23b8e597d31c7b1b9f67c1169e1c662c366cf1098158cb467d9f7ff12946b08a2
+DIST likwid-5.2.1.tar.gz 2308041 BLAKE2B 1913212fb5157365a439757018ab58b4555e2b4401575ee05c784d038e13296644a7d0a89769599eef0444b13ed10f0357ad09b9cbae712f7d1fb9cca65fb1e3 SHA512 f096dcc071e976284c874aeb254dcb83c66ae808876a8c6be7b05e359d06800f1da25c01c072950c3493eb9ca10f6f9d81624feef61cc7a01f40fc0d003f98a7
+DIST likwid-5.2.2.tar.gz 2312420 BLAKE2B ceb5ee35fc266e6669f5a304bc222ae5fa598b76b0b2af9b37a214279033e8189f6c7726bdb41ad111f331a2fea52f6ff49cf190d7150b813ea651dbdc06d53f SHA512 5949933341092a1ccb81add47771c8e5613c9faef8650d70ed8e7f81cee4e6d87bc6838686873bd6270f4cfef3fd57d8a69b067f943134e4ac08c14664105d0d
diff --git a/sys-apps/likwid/likwid-4.3.3.ebuild b/sys-apps/likwid/likwid-4.3.3.ebuild
deleted file mode 100644
index 02a836a19c6d..000000000000
--- a/sys-apps/likwid/likwid-4.3.3.ebuild
+++ /dev/null
@@ -1,185 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-FORTRAN_NEEDED=fortran
-#PYTHON_COMPAT=( python3_{6,7} )
-
-# 4.3.4 will need python-single-r1
-inherit fcaps fortran-2 linux-info toolchain-funcs
-
-DESCRIPTION="A performance-oriented tool suite for x86 multicore environments"
-HOMEPAGE="https://github.com/rrze-likwid/likwid"
-SRC_URI="https://ftp.fau.de/pub/likwid/${P}.tar.gz"
-
-# If this ebuild is changed to use the bundled Lua-5.3, then MIT should be
-# added to the LICENSE field.
-LICENSE="GPL-3+ BSD"
-
-SLOT="0"
-KEYWORDS="~amd64" # upstream partial support exists for x86 arm arm64
-IUSE="fortran" # ${PYTHON_REQUIRED_USE}
-
-# lua:
-# likwid's primary functionality is driven by a set of lua scripts installed in
-# /usr/bin/
-# likwid bundles lua-5.3.2, AND supports using a system copy of lua-5.2 or
-# lua-5.3, which we use. This ebuild uses the system copy of Lua instead.
-#
-# hwloc:
-# likwid bundles a MODIFIED copy of hwloc-2.0.0a1 with specific configuration
-# for CPU probing & access
-#
-# Perl:
-# likwid uses Perl to convert from an internal text format to ASM listings
-# likwid also uses perl for some installed helper scripts
-# The build system bundles some Perl modules, that are not removed at this time:
-# Parse-RecDescent
-# Template
-#
-# Python:
-# Python3 is used for one helper script, filter/json, added after 4.3.3
-CDEPEND="dev-lang/perl
- dev-lang/lua:5.3"
-
-# filter/json uses Python3
-RDEPEND="${CDEPEND}"
- #${PYTHON_DEPS}"
-
-# Part of the build process depends on Data::Dumper
-# perl-core/Data-Dumper"
-DEPEND="${CDEPEND}"
-
-CONFIG_CHECK="~X86_MSR"
-
-FILECAPS=(
- -M 755 cap_sys_rawio+ep usr/sbin/likwid-accessD
- --
- -M 755 cap_sys_rawio+ep usr/sbin/likwid-setFreq
-)
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.3.1-fix-gnustack.patch"
- # Old patches are obsolete:
- #"${FILESDIR}/${PN}-4.3.1-Makefile.patch"
- #"${FILESDIR}/${PN}-4.3.1-config.mk.patch"
-)
-
-pkg_setup() {
- fortran-2_pkg_setup
- #python-single-r1_pkg_setup
-}
-
-src_prepare() {
- # Ensure we build with a non executable stack
- sed \
- -e '/^SHARED_CFLAGS/s/$/ -Wa,--noexecstack/' \
- -i make/include_{GCC*,CLANG}.mk \
- || die "Failed to set nonexecstack"
-
- # Make the install targets respect Q= for being quiet or not
- # MUCH easier for debugging
- sed -r \
- -e '/^install/,/^[a-z]/{/^\t@/{ s/@/$(Q)/; }}' \
- -i \
- Makefile || die "Failed to sed Makefile"
-
- sed -i \
- -e '/^\.NOTPARALLEL:/d' \
- Makefile \
- bench/Makefile \
- ext/hwloc/Makefile || die "Failed to re-enable parallel"
-
- default
-}
-
-export_emake_opts() {
- # Warning: this build system uses PREFIX in a way that differs from
- # autoconf! It's more like:
- # PREFIX=$(DESTDIR)$(INSTALLED_PREFIX)
- # it's not 100% like that, because parts of the Makefiles are inconsistent.
- # this is the same solution used in the upstream RPM specs
- # these variables are uppercase so they match what's put into Make.
- local INSTALLED_PREFIX=/usr
- local INSTALLED_LIBPREFIX=/usr/$(get_libdir) # upstream is '$(INSTALLED_PREFIX)/lib'
- local INSTALLED_MANPREFIX=/usr/share/man # upstream has it as used but undefined variable.
- # TODO: support LUA_SINGLE_TARGET here later for Lua 5.2
- local LUASLOT='5.3'
- # If the build is too loud, pass 'Q=@'
- src_compile_opts=(
- "Q="
- "INSTALLED_PREFIX=${INSTALLED_PREFIX}"
- "INSTALLED_LIBPREFIX=${INSTALLED_LIBPREFIX}"
- "INSTALLED_MANPREFIX=${INSTALLED_MANPREFIX}"
- "PREFIX=${INSTALLED_PREFIX}"
- "LIBPREFIX=${INSTALLED_LIBPREFIX}"
- "MANPREFIX=${INSTALLED_MANPREFIX}"
- "CC=$(tc-getCC)"
- "ANSI_CFLAGS=${CFLAGS}"
- "INSTRUMENT_BENCH=true"
- "LUA_INCLUDE_DIR=/usr/include/lua${LUASLOT}"
- "LUA_LIB_DIR=/usr/$(get_libdir)"
- "LUA_LIB_NAME=lua${LUASLOT}"
- "LUA_BIN=/usr/bin"
- "FORTRAN_INTERFACE=$(usex fortran likwid.mod false)"
- "FC=$(usex fortran "${FC}" false)"
- "FCFLAGS=-J ./ -fsyntax-only" # needed for building correctly
- )
- src_install_opts=(
- "PREFIX=${D}${INSTALLED_PREFIX}"
- "LIBPREFIX=${D}${INSTALLED_LIBPREFIX}"
- "MANPREFIX=${D}${INSTALLED_MANPREFIX}"
- )
-}
-
-src_compile() {
- export_emake_opts
- emake \
- "${src_compile_opts[@]}"
-}
-
-src_install() {
- export_emake_opts
- emake \
- "${src_compile_opts[@]}" \
- "${src_install_opts[@]}" \
- DESTDIR="${D}" \
- install
-
- use fortran && doheader likwid.mod
-
- # Fix Python filter added shortly after 4.3.3
- #python_fix_shebang "${D}"/usr/share/likwid/filter/
-
- # Do NOT use 'doman'! The upstream 'make install' target does a sed as it's
- # generating the final manpage to the real install dir; and the copies in
- # ${S} are unmodified.
- dodoc README.md CHANGELOG doc/logo.png
- dodoc doc/*.txt
- dodoc doc/*.md
- dodoc -r doc/applications doc/archs
- # Fix upstream partial doc install
- rm -rf "${D}"/usr/share/likwid/docs || die
- ln -sf "/usr/share/doc/${PF}" "${D}"/usr/share/likwid/docs || die
-}
-
-pkg_preinst() {
- # This is now a symlink, but used to be a plain directory
- OLDDOCDIR=/usr/share/likwid/docs
- if [[ ! -L "${OLDDOCDIR}" && -d "${OLDDOCDIR}" ]]; then
- einfo "Cleaning up old docdir at ${OLDDOCDIR}"
- rm -rf "${OLDDOCDIR}" || die
- fi
-}
-
-pkg_postinst() {
- fcaps_pkg_postinst
- einfo "If you get 'Cannot gather values from MSR_PLATFORM_INFO', then 'modprobe msr'!"
- einfo
- ewarn "To enable users to access performance counters it is necessary to"
- ewarn "change the access permissions to /dev/cpu/msr[0]* devices."
- ewarn "It can be accomplished by adding the following line to file"
- ewarn "/etc/udev/rules.d/99-myrules.rules: KERNEL==\"msr[0-9]*\" MODE=\"0666\""
- ewarn "Alternatively, assign the MSR files to a unique group and use mode 0660"
-}
diff --git a/sys-apps/likwid/likwid-4.3.4.ebuild b/sys-apps/likwid/likwid-4.3.4.ebuild
index 02a836a19c6d..914ca442fe63 100644
--- a/sys-apps/likwid/likwid-4.3.4.ebuild
+++ b/sys-apps/likwid/likwid-4.3.4.ebuild
@@ -1,31 +1,32 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
FORTRAN_NEEDED=fortran
+LUA_COMPAT=( lua5-{2..3} )
#PYTHON_COMPAT=( python3_{6,7} )
# 4.3.4 will need python-single-r1
-inherit fcaps fortran-2 linux-info toolchain-funcs
+inherit fcaps fortran-2 linux-info lua-single toolchain-funcs
DESCRIPTION="A performance-oriented tool suite for x86 multicore environments"
HOMEPAGE="https://github.com/rrze-likwid/likwid"
SRC_URI="https://ftp.fau.de/pub/likwid/${P}.tar.gz"
-# If this ebuild is changed to use the bundled Lua-5.3, then MIT should be
-# added to the LICENSE field.
LICENSE="GPL-3+ BSD"
SLOT="0"
KEYWORDS="~amd64" # upstream partial support exists for x86 arm arm64
-IUSE="fortran" # ${PYTHON_REQUIRED_USE}
+IUSE="fortran"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}" # ${PYTHON_REQUIRED_USE}
# lua:
# likwid's primary functionality is driven by a set of lua scripts installed in
# /usr/bin/
# likwid bundles lua-5.3.2, AND supports using a system copy of lua-5.2 or
-# lua-5.3, which we use. This ebuild uses the system copy of Lua instead.
+# lua-5.3.
#
# hwloc:
# likwid bundles a MODIFIED copy of hwloc-2.0.0a1 with specific configuration
@@ -41,7 +42,7 @@ IUSE="fortran" # ${PYTHON_REQUIRED_USE}
# Python:
# Python3 is used for one helper script, filter/json, added after 4.3.3
CDEPEND="dev-lang/perl
- dev-lang/lua:5.3"
+ ${LUA_DEPS}"
# filter/json uses Python3
RDEPEND="${CDEPEND}"
@@ -68,6 +69,7 @@ PATCHES=(
pkg_setup() {
fortran-2_pkg_setup
+ lua-single_pkg_setup
#python-single-r1_pkg_setup
}
@@ -104,8 +106,8 @@ export_emake_opts() {
local INSTALLED_PREFIX=/usr
local INSTALLED_LIBPREFIX=/usr/$(get_libdir) # upstream is '$(INSTALLED_PREFIX)/lib'
local INSTALLED_MANPREFIX=/usr/share/man # upstream has it as used but undefined variable.
- # TODO: support LUA_SINGLE_TARGET here later for Lua 5.2
- local LUASLOT='5.3'
+ # WARNING: setting LUA_LIB_NAME=${ELUA} does *not* work with LuaJIT, keep this on mind
+ # should likwid upstream ever begin to support it.
# If the build is too loud, pass 'Q=@'
src_compile_opts=(
"Q="
@@ -118,9 +120,9 @@ export_emake_opts() {
"CC=$(tc-getCC)"
"ANSI_CFLAGS=${CFLAGS}"
"INSTRUMENT_BENCH=true"
- "LUA_INCLUDE_DIR=/usr/include/lua${LUASLOT}"
- "LUA_LIB_DIR=/usr/$(get_libdir)"
- "LUA_LIB_NAME=lua${LUASLOT}"
+ "LUA_INCLUDE_DIR=$(lua_get_include_dir)"
+ "LUA_LIB_DIR=$(dirname "$(lua_get_shared_lib)")"
+ "LUA_LIB_NAME=${ELUA}"
"LUA_BIN=/usr/bin"
"FORTRAN_INTERFACE=$(usex fortran likwid.mod false)"
"FC=$(usex fortran "${FC}" false)"
diff --git a/sys-apps/likwid/likwid-5.2.1.ebuild b/sys-apps/likwid/likwid-5.2.1.ebuild
new file mode 100644
index 000000000000..ed2192fcf1bc
--- /dev/null
+++ b/sys-apps/likwid/likwid-5.2.1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEEDED=fortran
+
+inherit fcaps fortran-2 linux-info toolchain-funcs
+
+DESCRIPTION="A performance-oriented tool suite for x86 multicore environments"
+HOMEPAGE="https://github.com/rrze-likwid/likwid"
+SRC_URI="https://ftp.fau.de/pub/likwid/${P}.tar.gz"
+
+LICENSE="GPL-3+ BSD MIT"
+
+SLOT="0"
+KEYWORDS="~amd64" # upstream partial support exists for x86 arm arm64
+IUSE="fortran"
+
+CDEPEND="dev-lang/perl"
+
+RDEPEND="${CDEPEND}"
+DEPEND="${CDEPEND}"
+
+CONFIG_CHECK="~X86_MSR"
+
+FILECAPS=(
+ -M 755 cap_sys_rawio+ep usr/sbin/likwid-accessD
+ --
+ -M 755 cap_sys_rawio+ep usr/sbin/likwid-setFreq
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.3.1-fix-gnustack.patch"
+)
+
+pkg_setup() {
+ fortran-2_pkg_setup
+}
+
+src_prepare() {
+ # Ensure we build with a non executable stack
+ sed \
+ -e '/^SHARED_CFLAGS/s/$/ -Wa,--noexecstack/' \
+ -i make/include_{GCC*,CLANG}.mk \
+ || die "Failed to set nonexecstack"
+
+ # Make the install targets respect Q= for being quiet or not
+ # MUCH easier for debugging
+ sed -r \
+ -e '/^install/,/^[a-z]/{/^\t@/{ s/@/$(Q)/; }}' \
+ -i \
+ Makefile || die "Failed to sed Makefile"
+
+ sed -i \
+ -e '/^\.NOTPARALLEL:/d' \
+ Makefile \
+ bench/Makefile \
+ ext/hwloc/Makefile || die "Failed to re-enable parallel"
+
+ default
+}
+
+export_emake_opts() {
+ # Warning: this build system uses PREFIX in a way that differs from
+ # autoconf! It's more like:
+ # PREFIX=$(DESTDIR)$(INSTALLED_PREFIX)
+ # it's not 100% like that, because parts of the Makefiles are inconsistent.
+ # this is the same solution used in the upstream RPM specs
+ # these variables are uppercase so they match what's put into Make.
+ local INSTALLED_PREFIX=/usr
+ local INSTALLED_LIBPREFIX=/usr/$(get_libdir) # upstream is '$(INSTALLED_PREFIX)/lib'
+ local INSTALLED_MANPREFIX=/usr/share/man # upstream has it as used but undefined variable.
+ # If the build is too loud, pass 'Q=@'
+ src_compile_opts=(
+ "Q="
+ "INSTALLED_PREFIX=${INSTALLED_PREFIX}"
+ "INSTALLED_LIBPREFIX=${INSTALLED_LIBPREFIX}"
+ "INSTALLED_MANPREFIX=${INSTALLED_MANPREFIX}"
+ "PREFIX=${INSTALLED_PREFIX}"
+ "LIBPREFIX=${INSTALLED_LIBPREFIX}"
+ "MANPREFIX=${INSTALLED_MANPREFIX}"
+ "CC=$(tc-getCC)"
+ "ANSI_CFLAGS=${CFLAGS}"
+ "INSTRUMENT_BENCH=true"
+ "FORTRAN_INTERFACE=$(usex fortran likwid.mod false)"
+ "FC=$(usex fortran "${FC}" false)"
+ "FCFLAGS=-J ./ -fsyntax-only" # needed for building correctly
+ )
+ src_install_opts=(
+ "PREFIX=${D}${INSTALLED_PREFIX}"
+ "LIBPREFIX=${D}${INSTALLED_LIBPREFIX}"
+ "MANPREFIX=${D}${INSTALLED_MANPREFIX}"
+ )
+}
+
+src_compile() {
+ export_emake_opts
+ emake \
+ "${src_compile_opts[@]}" \
+ || die 'emake failed'
+}
+
+src_install () {
+ export_emake_opts
+ emake \
+ "${src_compile_opts[@]}" \
+ "${src_install_opts[@]}" \
+ DESTDIR="${D}" \
+ install || die 'emake install failed'
+
+ use fortran && doheader likwid.mod
+
+ # Fix Python filter added shortly after 4.3.3
+ #python_fix_shebang "${D}"/usr/share/likwid/filter/
+
+ # Do NOT use 'doman'! The upstream 'make install' target does a sed as it's
+ # generating the final manpage to the real install dir; and the copies in
+ # ${S} are unmodified.
+ dodoc README.md CHANGELOG
+ dodoc doc/*.txt
+ dodoc doc/*.md
+ dodoc -r doc/applications doc/archs
+ # Fix upstream partial doc install
+ rm -rf "${D}"/usr/share/likwid/docs || die
+ ln -sf "/usr/share/doc/${PF}" "${D}"/usr/share/likwid/docs || die
+}
+
+pkg_preinst() {
+ # This is now a symlink, but used to be a plain directory
+ OLDDOCDIR=/usr/share/likwid/docs
+ if [[ ! -L "${OLDDOCDIR}" && -d "${OLDDOCDIR}" ]]; then
+ einfo "Cleaning up old docdir at ${OLDDOCDIR}"
+ rm -rf "${OLDDOCDIR}" || die
+ fi
+}
+
+pkg_postinst() {
+ fcaps_pkg_postinst
+ einfo "If you get 'Cannot gather values from MSR_PLATFORM_INFO', then 'modprobe msr'!"
+ einfo
+ ewarn "To enable users to access performance counters it is necessary to"
+ ewarn "change the access permissions to /dev/cpu/msr[0]* devices."
+ ewarn "It can be accomplished by adding the following line to file"
+ ewarn "/etc/udev/rules.d/99-myrules.rules: KERNEL==\"msr[0-9]*\" MODE=\"0666\""
+ ewarn "Alternatively, assign the MSR files to a unique group and use mode 0660"
+}
diff --git a/sys-apps/likwid/likwid-5.2.2.ebuild b/sys-apps/likwid/likwid-5.2.2.ebuild
new file mode 100644
index 000000000000..9e9d5ae85a94
--- /dev/null
+++ b/sys-apps/likwid/likwid-5.2.2.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEEDED=fortran
+
+inherit fcaps fortran-2 linux-info toolchain-funcs
+
+DESCRIPTION="A performance-oriented tool suite for x86 multicore environments"
+HOMEPAGE="https://github.com/rrze-likwid/likwid"
+SRC_URI="https://ftp.fau.de/pub/likwid/${P}.tar.gz"
+
+LICENSE="GPL-3+ BSD MIT"
+
+SLOT="0"
+KEYWORDS="~amd64" # upstream partial support exists for x86 arm arm64
+IUSE="fortran"
+
+CDEPEND="dev-lang/perl"
+
+RDEPEND="${CDEPEND}"
+DEPEND="${CDEPEND}"
+
+CONFIG_CHECK="~X86_MSR"
+
+FILECAPS=(
+ -M 755 cap_sys_rawio+ep usr/sbin/likwid-accessD
+ --
+ -M 755 cap_sys_rawio+ep usr/sbin/likwid-setFreq
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.3.1-fix-gnustack.patch"
+)
+
+pkg_setup() {
+ fortran-2_pkg_setup
+}
+
+src_prepare() {
+ # Ensure we build with a non executable stack
+ sed \
+ -e '/^SHARED_CFLAGS/s/$/ -Wa,--noexecstack/' \
+ -i make/include_{GCC*,CLANG}.mk \
+ || die "Failed to set nonexecstack"
+
+ # Make the install targets respect Q= for being quiet or not
+ # MUCH easier for debugging
+ sed -r \
+ -e '/^install/,/^[a-z]/{/^\t@/{ s/@/$(Q)/; }}' \
+ -i \
+ Makefile || die "Failed to sed Makefile"
+
+ sed -i \
+ -e '/^\.NOTPARALLEL:/d' \
+ Makefile \
+ bench/Makefile \
+ ext/hwloc/Makefile || die "Failed to re-enable parallel"
+
+ default
+}
+
+export_emake_opts() {
+ # Warning: this build system uses PREFIX in a way that differs from
+ # autoconf! It's more like:
+ # PREFIX=$(DESTDIR)$(INSTALLED_PREFIX)
+ # it's not 100% like that, because parts of the Makefiles are inconsistent.
+ # this is the same solution used in the upstream RPM specs
+ # these variables are uppercase so they match what's put into Make.
+ local INSTALLED_PREFIX=/usr
+ local INSTALLED_LIBPREFIX=/usr/$(get_libdir) # upstream is '$(INSTALLED_PREFIX)/lib'
+ local INSTALLED_MANPREFIX=/usr/share/man # upstream has it as used but undefined variable.
+ # If the build is too loud, pass 'Q=@'
+ src_compile_opts=(
+ "Q="
+ "INSTALLED_PREFIX=${INSTALLED_PREFIX}"
+ "INSTALLED_LIBPREFIX=${INSTALLED_LIBPREFIX}"
+ "INSTALLED_MANPREFIX=${INSTALLED_MANPREFIX}"
+ "PREFIX=${INSTALLED_PREFIX}"
+ "LIBPREFIX=${INSTALLED_LIBPREFIX}"
+ "MANPREFIX=${INSTALLED_MANPREFIX}"
+ "CC=$(tc-getCC)"
+ "ANSI_CFLAGS=${CFLAGS}"
+ "INSTRUMENT_BENCH=true"
+ "FORTRAN_INTERFACE=$(usex fortran likwid.mod false)"
+ "FC=$(usex fortran "${FC}" false)"
+ "FCFLAGS=-J ./ -fsyntax-only" # needed for building correctly
+ )
+ src_install_opts=(
+ "PREFIX=${D}${INSTALLED_PREFIX}"
+ "LIBPREFIX=${D}${INSTALLED_LIBPREFIX}"
+ "MANPREFIX=${D}${INSTALLED_MANPREFIX}"
+ )
+}
+
+src_compile() {
+ export_emake_opts
+ emake \
+ "${src_compile_opts[@]}" \
+ || die 'emake failed'
+}
+
+src_install () {
+ export_emake_opts
+ emake \
+ "${src_compile_opts[@]}" \
+ "${src_install_opts[@]}" \
+ DESTDIR="${D}" \
+ install || die 'emake install failed'
+
+ use fortran && doheader likwid.mod
+
+ # Fix Python filter added shortly after 4.3.3
+ #python_fix_shebang "${D}"/usr/share/likwid/filter/
+
+ # Do NOT use 'doman'! The upstream 'make install' target does a sed as it's
+ # generating the final manpage to the real install dir; and the copies in
+ # ${S} are unmodified.
+ dodoc README.md CHANGELOG
+ dodoc doc/*.txt
+ dodoc doc/*.md
+ dodoc -r doc/applications doc/archs
+ # Fix upstream partial doc install
+ rm -rf "${D}"/usr/share/likwid/docs || die
+ ln -sf "/usr/share/doc/${PF}" "${D}"/usr/share/likwid/docs || die
+}
+
+pkg_preinst() {
+ # This is now a symlink, but used to be a plain directory
+ OLDDOCDIR=/usr/share/likwid/docs
+ if [[ ! -L "${OLDDOCDIR}" && -d "${OLDDOCDIR}" ]]; then
+ einfo "Cleaning up old docdir at ${OLDDOCDIR}"
+ rm -rf "${OLDDOCDIR}" || die
+ fi
+}
+
+pkg_postinst() {
+ fcaps_pkg_postinst
+ einfo "If you get 'Cannot gather values from MSR_PLATFORM_INFO', then 'modprobe msr'!"
+ einfo
+ ewarn "To enable users to access performance counters it is necessary to"
+ ewarn "change the access permissions to /dev/cpu/msr[0]* devices."
+ ewarn "It can be accomplished by adding the following line to file"
+ ewarn "/etc/udev/rules.d/99-myrules.rules: KERNEL==\"msr[0-9]*\" MODE=\"0666\""
+ ewarn "Alternatively, assign the MSR files to a unique group and use mode 0660"
+}
diff --git a/sys-apps/likwid/metadata.xml b/sys-apps/likwid/metadata.xml
index 3a16425e9da4..b2330a688f60 100644
--- a/sys-apps/likwid/metadata.xml
+++ b/sys-apps/likwid/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/sys-apps/linux-misc-apps/Manifest b/sys-apps/linux-misc-apps/Manifest
index cf994b79c8a2..728872c76d94 100644
--- a/sys-apps/linux-misc-apps/Manifest
+++ b/sys-apps/linux-misc-apps/Manifest
@@ -1,2 +1 @@
-DIST linux-5.6.tar.xz 111785252 BLAKE2B 8dbe02a8ca7fd3dcf512a15c5d8098c1e7f94257e65173fed43fcc45480e4ab790df8cd39bbbb4e2a21dc9a00385bc9bbe98215a31e7f7e1d9c8f21cd8ace69e SHA512 80846fe2b4e4a7ff471d2dde28a8216ae807a3209f959e93d39ea4fc9a189ea28ec3db9d303b3fe15a28c2cb90e7446876678e93e23353c2d6f262e364a06bc9
DIST linux-5.8.tar.xz 114459324 BLAKE2B 7bd97f8fa4527840754434414c07283e89731dc8ebb1e95fa5bc1469a60af1122582c0d3b6e262e77882f023190068df3537bd8b65964b3caa820bb2c8e579c7 SHA512 45a53ecf351096ef6e98242cca4228b8da9b9139ecc6963695791ea6fb7a9484a4e1c19dcca7ce7cbfdfa49de0451b70973bb078f12bdae9cbaddbc3f8092556
diff --git a/sys-apps/linux-misc-apps/linux-misc-apps-5.6.ebuild b/sys-apps/linux-misc-apps/linux-misc-apps-5.6.ebuild
deleted file mode 100644
index 86827070d512..000000000000
--- a/sys-apps/linux-misc-apps/linux-misc-apps-5.6.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit versionator eutils toolchain-funcs linux-info autotools flag-o-matic
-
-DESCRIPTION="Misc tools bundled with kernel sources"
-HOMEPAGE="https://kernel.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="static-libs tcpd usbip"
-
-MY_PV="${PV/_/-}"
-MY_PV="${MY_PV/-pre/-git}"
-
-LINUX_V=$(get_version_component_range 1-2)
-
-if [ ${PV/_rc} != ${PV} ]; then
- LINUX_VER=$(get_version_component_range 1-2).$(($(get_version_component_range 3)-1))
- PATCH_VERSION=$(get_version_component_range 1-3)
- LINUX_PATCH=patch-${PV//_/-}.xz
- SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/testing/${LINUX_PATCH}
- https://www.kernel.org/pub/linux/kernel/v3.x/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
-elif [ $(get_version_component_count) == 4 ]; then
- # stable-release series
- LINUX_VER=$(get_version_component_range 1-3)
- LINUX_PATCH=patch-${PV}.xz
- SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/${LINUX_PATCH}"
-else
- LINUX_VER=${PV}
-fi
-
-LINUX_SOURCES=linux-${LINUX_VER}.tar.xz
-SRC_URI="${SRC_URI} https://www.kernel.org/pub/linux/kernel/v3.x/${LINUX_SOURCES}"
-
-# pmtools also provides turbostat
-# usbip available in seperate package now
-RDEPEND="sys-apps/hwids
- >=dev-libs/glib-2.6
- >=sys-kernel/linux-headers-$(get_version_component_range 1-2)
- usbip? (
- !net-misc/usbip
- tcpd? ( sys-apps/tcp-wrappers )
- virtual/libudev
- )
- !sys-power/pmtools"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S="${WORKDIR}/linux-${LINUX_VER}"
-
-# All of these are integrated with the kernel build system,
-# No make install, and ideally build with with the root Makefile
-TARGETS_SIMPLE=(
- samples/watchdog/watchdog-simple.c
- tools/accounting/getdelays.c
- tools/cgroup/cgroup_event_listener.c
- tools/laptop/freefall/freefall.c
- tools/testing/selftests/networking/timestamping/timestamping.c
- tools/vm/slabinfo.c
- usr/gen_init_cpio.c
- # Broken:
- #tools/lguest/lguest.c # fails to compile
- #tools/vm/page-types.c # page-types.c:(.text+0xe2b): undefined reference to `debugfs__mount', not defined anywhere
- #tools/net/bpf_jit_disasm.c # /usr/include/x86_64-pc-linux-gnu/bfd.h:35:2: error: #error config.h must be included before this header
-)
-# tools/vm/page-types.c - broken, header path issue
-# tools/hv/hv_kvp_daemon.c - broken in 3.7 by missing linux/hyperv.h userspace
-# Documentation/networking/ifenslave.c - obsolete
-# Documentation/ptp/testptp.c - pending linux-headers-3.0
-
-# These have a broken make install, no DESTDIR
-TARGET_MAKE_SIMPLE=(
- samples/mei:mei-amt-version
- tools/firewire:nosy-dump
- tools/iio:iio_event_monitor
- tools/iio:iio_generic_buffer
- tools/iio:lsiio
- tools/laptop/dslm:dslm
- tools/power/x86/turbostat:turbostat
- tools/power/x86/x86_energy_perf_policy:x86_energy_perf_policy
- tools/thermal/tmon:tmon
-)
-# tools/perf - covered by dev-utils/perf
-# tools/usb - testcases only
-# tools/virtio - testcaes only
-
- #for _pattern in {Documentation,scripts,tools,usr,include,lib,"arch/*/include",Makefile,Kbuild,Kconfig}; do
-src_unpack() {
- unpack ${LINUX_SOURCES}
-
- MY_A=
- for _AFILE in ${A}; do
- [[ ${_AFILE} == ${LINUX_SOURCES} ]] && continue
- [[ ${_AFILE} == ${LINUX_PATCH} ]] && continue
- MY_A="${MY_A} ${_AFILE}"
- done
- [[ -n ${MY_A} ]] && unpack ${MY_A}
-}
-
-src_prepare() {
- if [[ -n ${LINUX_PATCH} ]]; then
- epatch "${DISTDIR}"/${LINUX_PATCH}
- fi
-
- pushd tools/usb/usbip/ >/dev/null &&
- sed -i 's/-Werror[^ ]* //g' configure.ac &&
- eautoreconf -i -f -v &&
- popd >/dev/null || die "usbip"
-
- sed -i \
- -e '/^nosy-dump.*LDFLAGS/d' \
- -e '/^nosy-dump.*CFLAGS/d' \
- -e '/^nosy-dump.*CPPFLAGS/s,CPPFLAGS =,CPPFLAGS +=,g' \
- "${S}"/tools/firewire/Makefile
-}
-
-kernel_asm_arch() {
- a="${1:${ARCH}}"
- case ${a} in
- # Merged arches
- x86|amd64) echo x86 ;;
- ppc*) echo powerpc ;;
- # Non-merged
- alpha|arm|ia64|m68k|mips|sh|sparc*) echo ${1} ;;
- *) die "TODO: Update the code for your asm-ARCH symlink" ;;
- esac
-}
-
-src_configure() {
- if use usbip; then
- pushd tools/usb/usbip/ || die
- econf \
- $(use_enable static-libs static) \
- $(use tcpd || echo --without-tcp-wrappers) \
- --with-usbids-dir=/usr/share/misc
- popd
- fi
-}
-
-src_compile() {
- local karch=$(kernel_asm_arch "${ARCH}")
- # This is the minimal amount needed to start building host binaries.
- #emake allmodconfig ARCH=${karch}
- #emake prepare modules_prepare ARCH=${karch}
- #touch Module.symvers
-
- # Now we can start building
- append-cflags -I./tools/lib
- for s in ${TARGETS_SIMPLE[@]} ; do
- dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
- einfo "Building $s => $bin"
- emake -f /dev/null M=${dir} ARCH=${karch} ${s%.c}
- done
-
- for t in ${TARGET_MAKE_SIMPLE[@]} ; do
- dir=${t/:*} target_binfile=${t#*:}
- target=${target_binfile/:*} binfile=${target_binfile/*:}
- [ -z "${binfile}" ] && binfile=$target
- einfo "Building $dir => $binfile (via emake $target)"
- emake -C $dir ARCH=${karch} $target
- done
-
- if use usbip; then
- emake -C tools/usb/usbip
- fi
-}
-
-src_install() {
- into /usr
- for s in ${TARGETS_SIMPLE[@]} ; do
- dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
- einfo "Installing $s => $bin"
- dosbin ${dir}/${bin}
- done
-
- for t in ${TARGET_MAKE_SIMPLE[@]} ; do
- dir=${t/:*} target_binfile=${t#*:}
- target=${target_binfile/:*} binfile=${target_binfile/*:}
- [ -z "${binfile}" ] && binfile=$target
- einfo "Installing $dir => $binfile"
- dosbin ${dir}/${binfile}
- done
-
- if use usbip; then
- pushd tools/usb/usbip/ >/dev/null || die "usbip"
- emake DESTDIR="${D}" install
- newdoc README README.usbip
- newdoc AUTHORS AUTHORS.usbip
- popd >/dev/null
- dodoc Documentation/usb/usbip_protocol.rst
- find "${D}" -name 'libusbip*.la' -delete || die
- fi
-
- # At one point upstream it was moved, but be generic to detect if it's
- # happened already
- if [[ -f "${D}"/usr/sbin/generic_buffer ]] && \
- [[ ! -f "${D}"/usr/sbin/iio_generic_buffer ]]; then
- mv -f "${D}"/usr/sbin/{,iio_}generic_buffer || die
- fi
-
- newconfd "${FILESDIR}"/freefall.confd freefall
- newinitd "${FILESDIR}"/freefall.initd freefall
-}
-
-pkg_postinst() {
- echo
- elog "The cpupower utility is maintained separately at sys-power/cpupower"
- elog "The lguest utility no longer builds, and has been dropped."
- elog "The hpfall tool has been renamed by upstream to freefall; update your config if needed"
- if find "${ROOT}"/etc/runlevels/ -name hpfall ; then
- ewarn "You must change hpfall to freefall in your runlevels!"
- fi
- if use usbip; then
- elog "For using USB/IP you need to enable USBIP_VHCI_HCD in the client"
- elog "machine's kernel config and USBIP_HOST on the server."
- fi
-}
diff --git a/sys-apps/linux-misc-apps/linux-misc-apps-5.8-r1.ebuild b/sys-apps/linux-misc-apps/linux-misc-apps-5.8-r1.ebuild
new file mode 100644
index 000000000000..d89ebc89f32a
--- /dev/null
+++ b/sys-apps/linux-misc-apps/linux-misc-apps-5.8-r1.ebuild
@@ -0,0 +1,229 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic linux-info toolchain-funcs
+
+DESCRIPTION="Misc tools bundled with kernel sources"
+HOMEPAGE="https://kernel.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="static-libs tcpd usbip"
+
+MY_PV="${PV/_/-}"
+MY_PV="${MY_PV/-pre/-git}"
+
+LINUX_V=$(ver_cut 1-2)
+
+_get_version_component_count() {
+ local cnt=( $(ver_rs 1- ' ') )
+ echo ${#cnt[@]} || die
+}
+
+if [ ${PV/_rc} != ${PV} ]; then
+ LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1))
+ PATCH_VERSION=$(ver_cut 1-3)
+ LINUX_PATCH=patch-${PV//_/-}.xz
+ SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/testing/${LINUX_PATCH}
+ https://www.kernel.org/pub/linux/kernel/v3.x/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
+elif [ $(_get_version_component_count) == 4 ]; then
+ # stable-release series
+ LINUX_VER=$(ver_cut 1-3)
+ LINUX_PATCH=patch-${PV}.xz
+ SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/${LINUX_PATCH}"
+else
+ LINUX_VER=${PV}
+fi
+
+LINUX_SOURCES=linux-${LINUX_VER}.tar.xz
+SRC_URI="${SRC_URI} https://www.kernel.org/pub/linux/kernel/v3.x/${LINUX_SOURCES}"
+
+# pmtools also provides turbostat
+# usbip available in seperate package now
+RDEPEND="sys-apps/hwdata
+ >=dev-libs/glib-2.6
+ >=sys-kernel/linux-headers-${LINUX_V}
+ usbip? (
+ !net-misc/usbip
+ tcpd? ( sys-apps/tcp-wrappers )
+ virtual/libudev
+ )
+ !sys-power/pmtools"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/linux-${LINUX_VER}"
+
+# All of these are integrated with the kernel build system,
+# No make install, and ideally build with with the root Makefile
+TARGETS_SIMPLE=(
+ samples/watchdog/watchdog-simple.c
+ tools/accounting/getdelays.c
+ tools/cgroup/cgroup_event_listener.c
+ tools/laptop/freefall/freefall.c
+ tools/testing/selftests/net/timestamping.c
+ tools/vm/slabinfo.c
+ usr/gen_init_cpio.c
+ # Broken:
+ #tools/lguest/lguest.c # fails to compile
+ #tools/vm/page-types.c # page-types.c:(.text+0xe2b): undefined reference to `debugfs__mount', not defined anywhere
+ #tools/net/bpf_jit_disasm.c # /usr/include/x86_64-pc-linux-gnu/bfd.h:35:2: error: #error config.h must be included before this header
+)
+# tools/vm/page-types.c - broken, header path issue
+# tools/hv/hv_kvp_daemon.c - broken in 3.7 by missing linux/hyperv.h userspace
+# Documentation/networking/ifenslave.c - obsolete
+# Documentation/ptp/testptp.c - pending linux-headers-3.0
+
+# These have a broken make install, no DESTDIR
+TARGET_MAKE_SIMPLE=(
+ samples/mei:mei-amt-version
+ tools/firewire:nosy-dump
+ tools/iio:iio_event_monitor
+ tools/iio:iio_generic_buffer
+ tools/iio:lsiio
+ tools/laptop/dslm:dslm
+ tools/power/x86/turbostat:turbostat
+ tools/power/x86/x86_energy_perf_policy:x86_energy_perf_policy
+ tools/thermal/tmon:tmon
+)
+# tools/perf - covered by dev-utils/perf
+# tools/usb - testcases only
+# tools/virtio - testcaes only
+
+ #for _pattern in {Documentation,scripts,tools,usr,include,lib,"arch/*/include",Makefile,Kbuild,Kconfig}; do
+src_unpack() {
+ unpack ${LINUX_SOURCES}
+
+ MY_A=
+ for _AFILE in ${A}; do
+ [[ ${_AFILE} == ${LINUX_SOURCES} ]] && continue
+ [[ ${_AFILE} == ${LINUX_PATCH} ]] && continue
+ MY_A="${MY_A} ${_AFILE}"
+ done
+ [[ -n ${MY_A} ]] && unpack ${MY_A}
+}
+
+src_prepare() {
+ if [[ -n ${LINUX_PATCH} ]]; then
+ eapply "${DISTDIR}"/${LINUX_PATCH}
+ fi
+
+ pushd tools/usb/usbip/ >/dev/null &&
+ sed -i 's/-Werror[^ ]* //g' configure.ac &&
+ eautoreconf -i -f -v &&
+ popd >/dev/null || die "usbip"
+
+ sed -i \
+ -e '/^nosy-dump.*LDFLAGS/d' \
+ -e '/^nosy-dump.*CFLAGS/d' \
+ -e '/^nosy-dump.*CPPFLAGS/s,CPPFLAGS =,CPPFLAGS +=,g' \
+ "${S}"/tools/firewire/Makefile
+
+ eapply_user
+}
+
+kernel_asm_arch() {
+ a="${1:${ARCH}}"
+ case ${a} in
+ # Merged arches
+ x86|amd64) echo x86 ;;
+ ppc*) echo powerpc ;;
+ # Non-merged
+ alpha|arm|ia64|m68k|mips|sh|sparc*) echo ${1} ;;
+ *) die "TODO: Update the code for your asm-ARCH symlink" ;;
+ esac
+}
+
+src_configure() {
+ append-cflags -fcommon
+ if use usbip; then
+ pushd tools/usb/usbip/ || die
+ econf \
+ $(use_enable static-libs static) \
+ $(use tcpd || echo --without-tcp-wrappers) \
+ --with-usbids-dir=/usr/share/hwdata
+ popd
+ fi
+}
+
+src_compile() {
+ local karch=$(kernel_asm_arch "${ARCH}")
+ # This is the minimal amount needed to start building host binaries.
+ #emake allmodconfig ARCH=${karch}
+ #emake prepare modules_prepare ARCH=${karch}
+ #touch Module.symvers
+
+ # Now we can start building
+ append-cflags -I./tools/lib
+ for s in ${TARGETS_SIMPLE[@]} ; do
+ dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
+ einfo "Building $s => $bin"
+ emake -f /dev/null M=${dir} ARCH=${karch} ${s%.c}
+ done
+
+ for t in ${TARGET_MAKE_SIMPLE[@]} ; do
+ dir=${t/:*} target_binfile=${t#*:}
+ target=${target_binfile/:*} binfile=${target_binfile/*:}
+ [ -z "${binfile}" ] && binfile=$target
+ einfo "Building $dir => $binfile (via emake $target)"
+ emake -C $dir ARCH=${karch} $target
+ done
+
+ if use usbip; then
+ emake -C tools/usb/usbip
+ fi
+}
+
+src_install() {
+ into /usr
+ for s in ${TARGETS_SIMPLE[@]} ; do
+ dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
+ einfo "Installing $s => $bin"
+ dosbin ${dir}/${bin}
+ done
+
+ for t in ${TARGET_MAKE_SIMPLE[@]} ; do
+ dir=${t/:*} target_binfile=${t#*:}
+ target=${target_binfile/:*} binfile=${target_binfile/*:}
+ [ -z "${binfile}" ] && binfile=$target
+ einfo "Installing $dir => $binfile"
+ dosbin ${dir}/${binfile}
+ done
+
+ if use usbip; then
+ pushd tools/usb/usbip/ >/dev/null || die "usbip"
+ emake DESTDIR="${D}" install
+ newdoc README README.usbip
+ newdoc AUTHORS AUTHORS.usbip
+ popd >/dev/null
+ dodoc Documentation/usb/usbip_protocol.rst
+ find "${D}" -name 'libusbip*.la' -delete || die
+ fi
+
+ # At one point upstream it was moved, but be generic to detect if it's
+ # happened already
+ if [[ -f "${D}"/usr/sbin/generic_buffer ]] && \
+ [[ ! -f "${D}"/usr/sbin/iio_generic_buffer ]]; then
+ mv -f "${D}"/usr/sbin/{,iio_}generic_buffer || die
+ fi
+
+ newconfd "${FILESDIR}"/freefall.confd freefall
+ newinitd "${FILESDIR}"/freefall.initd freefall
+}
+
+pkg_postinst() {
+ echo
+ elog "The cpupower utility is maintained separately at sys-power/cpupower"
+ elog "The lguest utility no longer builds, and has been dropped."
+ elog "The hpfall tool has been renamed by upstream to freefall; update your config if needed"
+ if find "${ROOT}"/etc/runlevels/ -name hpfall ; then
+ ewarn "You must change hpfall to freefall in your runlevels!"
+ fi
+ if use usbip; then
+ elog "For using USB/IP you need to enable USBIP_VHCI_HCD in the client"
+ elog "machine's kernel config and USBIP_HOST on the server."
+ fi
+}
diff --git a/sys-apps/linux-misc-apps/linux-misc-apps-5.8.ebuild b/sys-apps/linux-misc-apps/linux-misc-apps-5.8.ebuild
deleted file mode 100644
index c64dce76d292..000000000000
--- a/sys-apps/linux-misc-apps/linux-misc-apps-5.8.ebuild
+++ /dev/null
@@ -1,228 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils toolchain-funcs linux-info autotools flag-o-matic
-
-DESCRIPTION="Misc tools bundled with kernel sources"
-HOMEPAGE="https://kernel.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="static-libs tcpd usbip"
-
-MY_PV="${PV/_/-}"
-MY_PV="${MY_PV/-pre/-git}"
-
-LINUX_V=$(ver_cut 1-2)
-
-get_version_component_count() {
- local cnt=( $(ver_rs 1- ' ') )
- echo ${#cnt[@]} || die
-}
-
-if [ ${PV/_rc} != ${PV} ]; then
- LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1))
- PATCH_VERSION=$(ver_cut 1-3)
- LINUX_PATCH=patch-${PV//_/-}.xz
- SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/testing/${LINUX_PATCH}
- https://www.kernel.org/pub/linux/kernel/v3.x/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
-elif [ $(get_version_component_count) == 4 ]; then
- # stable-release series
- LINUX_VER=$(ver_cut 1-3)
- LINUX_PATCH=patch-${PV}.xz
- SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/${LINUX_PATCH}"
-else
- LINUX_VER=${PV}
-fi
-
-LINUX_SOURCES=linux-${LINUX_VER}.tar.xz
-SRC_URI="${SRC_URI} https://www.kernel.org/pub/linux/kernel/v3.x/${LINUX_SOURCES}"
-
-# pmtools also provides turbostat
-# usbip available in seperate package now
-RDEPEND="sys-apps/hwids
- >=dev-libs/glib-2.6
- >=sys-kernel/linux-headers-${LINUX_V}
- usbip? (
- !net-misc/usbip
- tcpd? ( sys-apps/tcp-wrappers )
- virtual/libudev
- )
- !sys-power/pmtools"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S="${WORKDIR}/linux-${LINUX_VER}"
-
-# All of these are integrated with the kernel build system,
-# No make install, and ideally build with with the root Makefile
-TARGETS_SIMPLE=(
- samples/watchdog/watchdog-simple.c
- tools/accounting/getdelays.c
- tools/cgroup/cgroup_event_listener.c
- tools/laptop/freefall/freefall.c
- tools/testing/selftests/net/timestamping.c
- tools/vm/slabinfo.c
- usr/gen_init_cpio.c
- # Broken:
- #tools/lguest/lguest.c # fails to compile
- #tools/vm/page-types.c # page-types.c:(.text+0xe2b): undefined reference to `debugfs__mount', not defined anywhere
- #tools/net/bpf_jit_disasm.c # /usr/include/x86_64-pc-linux-gnu/bfd.h:35:2: error: #error config.h must be included before this header
-)
-# tools/vm/page-types.c - broken, header path issue
-# tools/hv/hv_kvp_daemon.c - broken in 3.7 by missing linux/hyperv.h userspace
-# Documentation/networking/ifenslave.c - obsolete
-# Documentation/ptp/testptp.c - pending linux-headers-3.0
-
-# These have a broken make install, no DESTDIR
-TARGET_MAKE_SIMPLE=(
- samples/mei:mei-amt-version
- tools/firewire:nosy-dump
- tools/iio:iio_event_monitor
- tools/iio:iio_generic_buffer
- tools/iio:lsiio
- tools/laptop/dslm:dslm
- tools/power/x86/turbostat:turbostat
- tools/power/x86/x86_energy_perf_policy:x86_energy_perf_policy
- tools/thermal/tmon:tmon
-)
-# tools/perf - covered by dev-utils/perf
-# tools/usb - testcases only
-# tools/virtio - testcaes only
-
- #for _pattern in {Documentation,scripts,tools,usr,include,lib,"arch/*/include",Makefile,Kbuild,Kconfig}; do
-src_unpack() {
- unpack ${LINUX_SOURCES}
-
- MY_A=
- for _AFILE in ${A}; do
- [[ ${_AFILE} == ${LINUX_SOURCES} ]] && continue
- [[ ${_AFILE} == ${LINUX_PATCH} ]] && continue
- MY_A="${MY_A} ${_AFILE}"
- done
- [[ -n ${MY_A} ]] && unpack ${MY_A}
-}
-
-src_prepare() {
- if [[ -n ${LINUX_PATCH} ]]; then
- epatch "${DISTDIR}"/${LINUX_PATCH}
- fi
-
- pushd tools/usb/usbip/ >/dev/null &&
- sed -i 's/-Werror[^ ]* //g' configure.ac &&
- eautoreconf -i -f -v &&
- popd >/dev/null || die "usbip"
-
- sed -i \
- -e '/^nosy-dump.*LDFLAGS/d' \
- -e '/^nosy-dump.*CFLAGS/d' \
- -e '/^nosy-dump.*CPPFLAGS/s,CPPFLAGS =,CPPFLAGS +=,g' \
- "${S}"/tools/firewire/Makefile
-
- eapply_user
-}
-
-kernel_asm_arch() {
- a="${1:${ARCH}}"
- case ${a} in
- # Merged arches
- x86|amd64) echo x86 ;;
- ppc*) echo powerpc ;;
- # Non-merged
- alpha|arm|ia64|m68k|mips|sh|sparc*) echo ${1} ;;
- *) die "TODO: Update the code for your asm-ARCH symlink" ;;
- esac
-}
-
-src_configure() {
- if use usbip; then
- pushd tools/usb/usbip/ || die
- econf \
- $(use_enable static-libs static) \
- $(use tcpd || echo --without-tcp-wrappers) \
- --with-usbids-dir=/usr/share/misc
- popd
- fi
-}
-
-src_compile() {
- local karch=$(kernel_asm_arch "${ARCH}")
- # This is the minimal amount needed to start building host binaries.
- #emake allmodconfig ARCH=${karch}
- #emake prepare modules_prepare ARCH=${karch}
- #touch Module.symvers
-
- # Now we can start building
- append-cflags -I./tools/lib
- for s in ${TARGETS_SIMPLE[@]} ; do
- dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
- einfo "Building $s => $bin"
- emake -f /dev/null M=${dir} ARCH=${karch} ${s%.c}
- done
-
- for t in ${TARGET_MAKE_SIMPLE[@]} ; do
- dir=${t/:*} target_binfile=${t#*:}
- target=${target_binfile/:*} binfile=${target_binfile/*:}
- [ -z "${binfile}" ] && binfile=$target
- einfo "Building $dir => $binfile (via emake $target)"
- emake -C $dir ARCH=${karch} $target
- done
-
- if use usbip; then
- emake -C tools/usb/usbip
- fi
-}
-
-src_install() {
- into /usr
- for s in ${TARGETS_SIMPLE[@]} ; do
- dir=$(dirname $s) src=$(basename $s) bin=${src%.c}
- einfo "Installing $s => $bin"
- dosbin ${dir}/${bin}
- done
-
- for t in ${TARGET_MAKE_SIMPLE[@]} ; do
- dir=${t/:*} target_binfile=${t#*:}
- target=${target_binfile/:*} binfile=${target_binfile/*:}
- [ -z "${binfile}" ] && binfile=$target
- einfo "Installing $dir => $binfile"
- dosbin ${dir}/${binfile}
- done
-
- if use usbip; then
- pushd tools/usb/usbip/ >/dev/null || die "usbip"
- emake DESTDIR="${D}" install
- newdoc README README.usbip
- newdoc AUTHORS AUTHORS.usbip
- popd >/dev/null
- dodoc Documentation/usb/usbip_protocol.rst
- find "${D}" -name 'libusbip*.la' -delete || die
- fi
-
- # At one point upstream it was moved, but be generic to detect if it's
- # happened already
- if [[ -f "${D}"/usr/sbin/generic_buffer ]] && \
- [[ ! -f "${D}"/usr/sbin/iio_generic_buffer ]]; then
- mv -f "${D}"/usr/sbin/{,iio_}generic_buffer || die
- fi
-
- newconfd "${FILESDIR}"/freefall.confd freefall
- newinitd "${FILESDIR}"/freefall.initd freefall
-}
-
-pkg_postinst() {
- echo
- elog "The cpupower utility is maintained separately at sys-power/cpupower"
- elog "The lguest utility no longer builds, and has been dropped."
- elog "The hpfall tool has been renamed by upstream to freefall; update your config if needed"
- if find "${ROOT}"/etc/runlevels/ -name hpfall ; then
- ewarn "You must change hpfall to freefall in your runlevels!"
- fi
- if use usbip; then
- elog "For using USB/IP you need to enable USBIP_VHCI_HCD in the client"
- elog "machine's kernel config and USBIP_HOST on the server."
- fi
-}
diff --git a/sys-apps/linux-misc-apps/metadata.xml b/sys-apps/linux-misc-apps/metadata.xml
index 8ac62c3e7f2b..34b3c3d43d11 100644
--- a/sys-apps/linux-misc-apps/metadata.xml
+++ b/sys-apps/linux-misc-apps/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/sys-apps/lm-sensors/Manifest b/sys-apps/lm-sensors/Manifest
index 029093d0d21a..ae33a1f7b0c6 100644
--- a/sys-apps/lm-sensors/Manifest
+++ b/sys-apps/lm-sensors/Manifest
@@ -1,3 +1 @@
-DIST lm-sensors-3.5.0.tar.gz 267133 BLAKE2B f8fe8efe19cd17f2c828404bee7b2b285118279f06aaa2ebf831823d6767865a2b19da7bede1f3b43b2664ae3cec41b9e840be24fa673472fe577d38f602da4e SHA512 bea9b2ac01bc43622cafdce0b00ac3bb8cb2d818449c8b332ab51e7ad0022b66bcbf6ca1e99c8500bdc6092c5c1ef985bfe7cff05dbcf015bd3ccf58c00a72e1
-DIST lm-sensors-3.5.0_p20190505.tar.gz 269694 BLAKE2B 6d665b8cbf83b26786686c5000dcac139aac930f691bac9053173dfcb92b6320afeb2f9b5ba6305cba643ff8cde356ef9e6772948d0f618cb3f5a48b3b5396f2 SHA512 15e3c50a9f00d284995f1ae34ef38e1ce314acb0c15d4996002287fadcf89a6f066058838c74c2b2bbec2628a3e5b9e8e010b0f5139641ee5336ac061cb33353
DIST lm-sensors-3.6.0.tar.gz 273209 BLAKE2B d05efa2bf5f052158a9b3f8bbe925d45a8e00fd7fb07490ddf6c87db786c803fbe8a728693f36c301269b995c72d510657d02f2e94fbbe5a7e9f50a36214635b SHA512 4e80361913aff5403f1f0737fd4f42cffe43cc170ef48fff3914c9952f71990739d723f7b0b8120d9a01bcbbc829e964cfbd0a5cf18508af8f8dc825b49860bf
diff --git a/sys-apps/lm-sensors/files/fancontrol.initd b/sys-apps/lm-sensors/files/fancontrol.initd
index 0734668a4c0a..b8e784f68028 100644
--- a/sys-apps/lm-sensors/files/fancontrol.initd
+++ b/sys-apps/lm-sensors/files/fancontrol.initd
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
FANCONTROL_CONFIGFILE=${FANCONTROL_CONFIGFILE:-"/etc/fancontrol"}
diff --git a/sys-apps/lm-sensors/files/lm-sensors-3.4.0-sensors-detect-gentoo.patch b/sys-apps/lm-sensors/files/lm-sensors-3.4.0-sensors-detect-gentoo.patch
deleted file mode 100644
index dd77d66c0855..000000000000
--- a/sys-apps/lm-sensors/files/lm-sensors-3.4.0-sensors-detect-gentoo.patch
+++ /dev/null
@@ -1,342 +0,0 @@
-From d8603c540cfccda5e011060083108de8f1b820ab Mon Sep 17 00:00:00 2001
-From: Thomas Deutschmann <whissi@gentoo.org>
-Date: Tue, 9 Aug 2016 01:19:16 +0200
-Subject: [PATCH 1/3] sensors-detect: Add sd_boot detection
-
-We need to know in write_config function wether the system is using systemd
-or not.
----
- prog/detect/sensors-detect | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
-index 057cd96..e29ab4c 100755
---- a/prog/detect/sensors-detect
-+++ b/prog/detect/sensors-detect
-@@ -2746,7 +2746,7 @@ sub isa_read_i5d6
- # AUTODETECTION #
- #################
-
--use vars qw($dev_i2c $sysfs_root $systemd_systemctl $systemd_system_dir);
-+use vars qw($dev_i2c $sysfs_root $systemd_is_booted $systemd_systemctl $systemd_system_dir);
-
- sub initialize_conf
- {
-@@ -2820,6 +2820,10 @@ sub initialize_conf
- } elsif (-d "/lib/systemd/system") {
- $systemd_system_dir = "/lib/systemd/system";
- }
-+
-+ # Check whether the system was booted using systemd.
-+ # See: man sd_booted
-+ $systemd_is_booted = -d '/run/systemd/system';
- }
-
- # [0] -> VERSION
---
-2.9.3
-
-
-From 14376e837c4a666fe2088bc7b7fbb90a4520f387 Mon Sep 17 00:00:00 2001
-From: Thomas Deutschmann <whissi@gentoo.org>
-Date: Tue, 9 Aug 2016 01:25:52 +0200
-Subject: [PATCH 2/3] sensors-detect: write_config function adjusted for Gentoo
- environment
-
-Bug: https://bugs.gentoo.org/480018
----
- prog/detect/sensors-detect | 133 +++++++++++++++++++++------------------------
- 1 file changed, 62 insertions(+), 71 deletions(-)
-
-diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
-index e29ab4c..bb5ae0f 100755
---- a/prog/detect/sensors-detect
-+++ b/prog/detect/sensors-detect
-@@ -7079,6 +7079,9 @@ sub write_config
- {
- my ($configfile, $bus_modules, $hwmon_modules) = @_;
-
-+ my $have_conffiles_created = 0;
-+
-+ # /etc/modprobe.d handling
- if (defined $configfile) {
- my $have_modprobe_d = -d '/etc/modprobe.d';
- printf "Do you want to \%s /etc/modprobe.d/lm_sensors.conf? (\%s): ",
-@@ -7087,96 +7090,84 @@ sub write_config
- $_ = read_answer();
- if (($have_modprobe_d and not m/^\s*n/i) or m/^\s*y/i) {
- unless ($have_modprobe_d) {
-- mkdir('/etc/modprobe.d', 0777)
-+ mkdir('/etc/modprobe.d', 0755)
- or die "Sorry, can't create /etc/modprobe.d ($!)";
- }
-- open(local *MODPROBE_D, ">/etc/modprobe.d/lm_sensors.conf")
-+ open(local *MODPROBE_D, ">", $have_modprobe_d . '/lm_sensors.conf')
- or die "Sorry, can't create /etc/modprobe.d/lm_sensors.conf ($!)";
- print MODPROBE_D "# Generated by sensors-detect on " . scalar localtime() . "\n";
- print MODPROBE_D $configfile;
- close(MODPROBE_D);
-+ $have_conffiles_created++;
- } else {
- print "To make the sensors modules behave correctly, add these lines to\n".
-- "/etc/modprobe.conf:\n\n";
-+ "/etc/modprobe.d/lm_sensors.conf:\n\n";
- print "#----cut here----\n".
- $configfile.
- "#----cut here----\n\n";
- }
- }
-
-- my $have_sysconfig = -d '/etc/sysconfig';
-- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ",
-- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'),
-- ($have_sysconfig ? 'YES/no' : 'yes/NO');
-- $_ = read_answer();
-- if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) {
-- unless ($have_sysconfig) {
-- mkdir('/etc/sysconfig', 0777)
-- or die "Sorry, can't create /etc/sysconfig ($!)";
-- }
-- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors")
-- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)";
-- print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n";
-- print SYSCONFIG <<'EOT';
--# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
--# be loaded/unloaded.
--#
--# The format of this file is a shell script that simply defines variables:
--# HWMON_MODULES for hardware monitoring driver modules, and optionally
--# BUS_MODULES for any required bus driver module (for example for I2C or SPI).
--
--EOT
-- print SYSCONFIG "BUS_MODULES=\"", join(" ", @{$bus_modules}), "\"\n"
-- if @{$bus_modules};
-- print SYSCONFIG "HWMON_MODULES=\"", join(" ", @{$hwmon_modules}), "\"\n";
-- close(SYSCONFIG);
--
-- if ($systemd_systemctl && $systemd_system_dir) {
-- if (-f "$systemd_system_dir/lm_sensors.service") {
-- system($systemd_systemctl, "enable", "lm_sensors.service");
-- system($systemd_systemctl, "start", "lm_sensors.service");
-- # All done, don't check for /etc/init.d/lm_sensors
-- } else {
-- print "Copy prog/init/lm_sensors.service to $systemd_system_dir\n".
-- "and run 'systemctl enable lm_sensors.service'\n".
-- "for initialization at boot time.\n";
-- }
-- return;
-+ # /etc/modules-load.d handling
-+ my $modulesload_filedir = '/etc/modules-load.d';
-+ my $modulesload_file = $modulesload_filedir . '/lm_sensors.conf';
-+ my $modulesload_cfg = "# Generated by sensors-detect on " . scalar localtime() . "\n"
-+ . join("\n", (@{$bus_modules}, @{$hwmon_modules})) . "\n";
-+
-+ my $have_modulesload_file = -f $modulesload_file;
-+ printf "Do you want to \%s '$modulesload_file'? (\%s): ",
-+ ($have_modulesload_file ? 'overwrite' : 'generate'),
-+ ($have_modulesload_file ? 'yes/NO' : 'YES/no');
-+
-+ my $input = read_answer();
-+ chomp($input);
-+ if ($input eq '' && $have_modulesload_file) {
-+ $input = 'no';
-+ }
-+ elsif ($input eq '' && !$have_modulesload_file) {
-+ $input = 'yes';
-+ }
-+
-+ if ($input =~ m/^\s*y/i) {
-+ unless (-d $modulesload_filedir) {
-+ mkdir($modulesload_filedir, 0755)
-+ or die "Sorry, can't create '$modulesload_filedir' ($!)";
- }
-
-- print "Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors\n".
-- "for initialization at boot time.\n"
-- unless -f "/etc/init.d/lm_sensors";
-+ open(my $fh, '>', $modulesload_file)
-+ or die "Sorry, can't open '$modulesload_file' for writing! ($!)";
-
-- if (-x "/sbin/insserv" && -f "/etc/init.d/lm_sensors") {
-- system("/sbin/insserv", "/etc/init.d/lm_sensors");
-- } elsif (-x "/sbin/chkconfig" && -f "/etc/init.d/lm_sensors") {
-- system("/sbin/chkconfig", "lm_sensors", "on");
-- if (-x "/sbin/service") {
-- system("/sbin/service", "lm_sensors", "start");
-- }
-+ print $fh $modulesload_cfg;
-+ close($fh);
-+
-+ $have_conffiles_created++;
-+ }
-+ else {
-+ print "\nPlease create '$modulesload_file' with the following content\n"
-+ . "to allow modules-load service to autoload modules on boot:\n\n";
-+ print "#----cut here----\n"
-+ . "# Generated by sensors-detect on " . scalar localtime() . "\n"
-+ . join("\n", (@{$bus_modules}, @{$hwmon_modules})) . "\n"
-+ . "#----cut here----\n\n";
-+ }
-+
-+ if ($have_conffiles_created) {
-+ printf "\nNote: You only have created the required configuration to autoload the\n"
-+ . "required modules to use your sensors on boot. If you want to start using\n"
-+ . "your sensors right now you have to either load them now once manually, to\n"
-+ . "reboot this system or to execute the following command(s):\n\n";
-+
-+ if ($systemd_is_booted) {
-+ print " # systemctl restart systemd-modules-load\n\n"
- } else {
-- print "You should now start the lm_sensors service to load the required\n".
-- "kernel modules.\n\n";
-- }
-- } else {
-- print "To load everything that is needed, add this to one of the system\n".
-- "initialization scripts (e.g. /etc/rc.d/rc.local):\n\n";
-- print "#----cut here----\n";
-- if (@{$bus_modules}) {
-- print "# Adapter drivers\n";
-- print "modprobe $_\n" foreach (@{$bus_modules});
-+ print " # /etc/init.d/modules-load restart\n\n"
- }
-- print "# Chip drivers\n";
-- print "modprobe $_\n" foreach (@{$hwmon_modules});
-- print((-e '/usr/bin/sensors' ?
-- "/usr/bin/sensors -s\n" :
-- "/usr/local/bin/sensors -s\n").
-- "#----cut here----\n\n");
--
-- print "You really should try these commands right now to make sure everything\n".
-- "is working properly. Monitoring programs won't work until the needed\n".
-- "modules are loaded.\n\n";
-+ }
-+ else {
-+ print "\nNote: Please make sure the following modules are loaded when you\n"
-+ . "want to make use of your sensors:\n\n";
-+
-+ print " " . join(" ", (@{$bus_modules}, @{$hwmon_modules})) . "\n\n";
- }
- }
-
---
-2.9.3
-
-
-From 59680d1fd41402efb547ca75ad8397089df2e059 Mon Sep 17 00:00:00 2001
-From: Thomas Deutschmann <whissi@gentoo.org>
-Date: Mon, 29 Aug 2016 12:47:50 +0200
-Subject: [PATCH 3/3] sensors-detect: Add Gentoo config file protection
-
-Per default we don't modify live config file. Instead we create
-"._cfg0000_<filename>" files known from emerge when using CONFIG PROTECT.
-
-See CONFIGURATION FILES section of emerge(1) man page for details.
-
-Can be disabled using the "--no-gentoo-config-protect" parameter.
----
- prog/detect/sensors-detect | 51 +++++++++++++++++++++++++++++++++++++++++++---
- 1 file changed, 48 insertions(+), 3 deletions(-)
-
-diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
-index bb5ae0f..2cc8f88 100755
---- a/prog/detect/sensors-detect
-+++ b/prog/detect/sensors-detect
-@@ -7093,7 +7093,7 @@ sub write_config
- mkdir('/etc/modprobe.d', 0755)
- or die "Sorry, can't create /etc/modprobe.d ($!)";
- }
-- open(local *MODPROBE_D, ">", $have_modprobe_d . '/lm_sensors.conf')
-+ open(local *MODPROBE_D, ">", gentoo_get_protected_file($have_modprobe_d . '/lm_sensors.conf'))
- or die "Sorry, can't create /etc/modprobe.d/lm_sensors.conf ($!)";
- print MODPROBE_D "# Generated by sensors-detect on " . scalar localtime() . "\n";
- print MODPROBE_D $configfile;
-@@ -7134,7 +7134,7 @@ sub write_config
- or die "Sorry, can't create '$modulesload_filedir' ($!)";
- }
-
-- open(my $fh, '>', $modulesload_file)
-+ open(my $fh, '>', gentoo_get_protected_file($modulesload_file))
- or die "Sorry, can't open '$modulesload_file' for writing! ($!)";
-
- print $fh $modulesload_cfg;
-@@ -7152,10 +7152,17 @@ sub write_config
- }
-
- if ($have_conffiles_created) {
-+ if (!$opt{no_gentoo_config_protect}) {
-+ print "\n * IMPORTANT: At least $have_conffiles_created config file(s) in '/etc' need updating.\n"
-+ . " * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS\n"
-+ . " * sections of the emerge man page to learn how to update config files.\n";
-+ }
-+
- printf "\nNote: You only have created the required configuration to autoload the\n"
- . "required modules to use your sensors on boot. If you want to start using\n"
- . "your sensors right now you have to either load them now once manually, to\n"
-- . "reboot this system or to execute the following command(s):\n\n";
-+ . "reboot this system or to execute the following command(s)\%s:\n\n",
-+ ($opt{no_gentoo_config_protect} ? "" : " _AFTER_\nyou have updated your config files");
-
- if ($systemd_is_booted) {
- print " # systemctl restart systemd-modules-load\n\n"
-@@ -7171,6 +7178,32 @@ sub write_config
- }
- }
-
-+sub gentoo_get_protected_file
-+{
-+ my ($file) = @_;
-+
-+ if ($opt{no_gentoo_config_protect}) {
-+ return $file;
-+ }
-+
-+ my $basename = basename($file);
-+ my $dirname = dirname($file);
-+
-+ my $protected_file;
-+ for (my $prot_num = 0; $prot_num <= 9999; $prot_num++) {
-+ $protected_file = sprintf('%s/._cfg%s_%s',
-+ $dirname,
-+ sprintf("%0*d", 4, $prot_num),
-+ $basename);
-+
-+ if (! -f $protected_file) {
-+ return $protected_file;
-+ }
-+ }
-+
-+ die "Running out of files -- cannot create protected file '$file'"
-+}
-+
- sub main
- {
- my ($input, $superio_features);
-@@ -7181,6 +7214,8 @@ sub main
- $opt{stat} = 1;
- } elsif ($ARGV[0] eq "--auto") {
- $opt{auto} = 1;
-+ } elsif ($ARGV[0] eq "--no-gentoo-config-protect") {
-+ $opt{no_gentoo_config_protect} = 1;
- } else {
- print STDERR "Error: unknown option $ARGV[0]\n";
- exit 1;
-@@ -7234,6 +7269,16 @@ sub main
- "unless you know what you're doing.\n\n";
- }
-
-+ if (!$opt{no_gentoo_config_protect}) {
-+ print "Gentoo config file protection is active. Every file this program will\n",
-+ "modify must be merged before the change will become active using\n",
-+ "default Gentoo tools such as dispatch-conf, cfg-update, and etc-update.\n\n";
-+ }
-+ else {
-+ print "Gentoo config file protection is _disabled_. This program will modify\n",
-+ "your active configuration without backups.\n\n";
-+ }
-+
- print "Some south bridges, CPUs or memory controllers contain embedded sensors.\n".
- "Do you want to scan for them? This is totally safe. (YES/no): ";
- $input = read_answer();
---
-2.9.3
-
diff --git a/sys-apps/lm-sensors/files/lm-sensors-3.6.0-no-which.patch b/sys-apps/lm-sensors/files/lm-sensors-3.6.0-no-which.patch
new file mode 100644
index 000000000000..e75e23142d86
--- /dev/null
+++ b/sys-apps/lm-sensors/files/lm-sensors-3.6.0-no-which.patch
@@ -0,0 +1,21 @@
+https://github.com/lm-sensors/lm-sensors/pull/402
+--- a/Makefile
++++ b/Makefile
+@@ -250,7 +250,7 @@ manhtml:
+
+ # Flex and Bison
+ %.c: %.y
+- @if ! which $(BISON) 2> /dev/null ; then \
++ @if ! command -v $(BISON) 2> /dev/null ; then \
+ echo "Please install $(BISON), then run \"make clean\" and try again" ; \
+ false ; \
+ fi
+@@ -263,7 +263,7 @@ FLEX_FLAGS := -Psensors_yy -t -Cfe -8
+ endif
+
+ %.c: %.l
+- @if ! which $(FLEX) 2> /dev/null ; then \
++ @if ! command -v $(FLEX) 2> /dev/null ; then \
+ echo "Please install $(FLEX), then run \"make clean\" and try again" ; \
+ false ; \
+ fi
diff --git a/sys-apps/lm-sensors/files/lm-sensors-3.6.0-w83627ehf-nct6775.patch b/sys-apps/lm-sensors/files/lm-sensors-3.6.0-w83627ehf-nct6775.patch
new file mode 100644
index 000000000000..e4493c414a49
--- /dev/null
+++ b/sys-apps/lm-sensors/files/lm-sensors-3.6.0-w83627ehf-nct6775.patch
@@ -0,0 +1,46 @@
+From 23c53b457407ab3ed217f963fc0329d0ae4bdeac Mon Sep 17 00:00:00 2001
+From: Jean Delvare <jdelvare@suse.de>
+Date: Tue, 12 May 2020 16:22:06 +0200
+Subject: [PATCH] sensors-detect: Fix the driver for Nuvoton W83677HG-I
+
+Originally, support for the Nuvoton W83677HG-I and derivatives was
+first added to the w83627ehf driver, so that's the driver recommended
+by sensors-detect. Later, support for the same device was added to
+the nct6775 driver. In kernel v5.6, support was removed from the
+w83627ehf driver to get rid of the duplicate code.
+
+So sensors-detect should now point users of this device to the
+nct6775 driver. We can't do that for very old kernels though, as this
+driver did not exist back then. I chose v3.10 for the cut-over, as
+this is when support for the Nuvoton W83677HG-I was finalized in the
+nct6775 driver, at least according to git log.
+
+Signed-off-by: Jean Delvare <jdelvare@suse.de>
+---
+ prog/detect/sensors-detect | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
+index 6fc441aa6..319b1b7b9 100755
+--- a/prog/detect/sensors-detect
++++ b/prog/detect/sensors-detect
+@@ -2273,7 +2273,7 @@ use constant FEAT_SMBUS => (1 << 7);
+ features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
+ }, {
+ name => "Nuvoton W83677HG-I (NCT5572D/NCT6771F/NCT6772F/NCT6775F) Super IO Sensors",
+- driver => "w83627ehf",
++ driver => sub { kernel_version_at_least(3, 10, 0) ? "nct6775" : "w83627ehf" },
+ devid => 0xB470,
+ devid_mask => 0xFFF0,
+ logdev => 0x0b,
+@@ -4574,7 +4574,9 @@ sub scan_cpu
+ sub chip_special_cases
+ {
+ # Some chip to driver mappings depend on the environment
+- foreach my $chip (@chip_ids) {
++ foreach my $chip (@chip_ids, @superio_ids_natsemi, @superio_ids_smsc,
++ @superio_ids_smsc_ns, @superio_ids_winbond,
++ @superio_ids_ite) {
+ if (ref($chip->{driver}) eq 'CODE') {
+ $chip->{driver} = $chip->{driver}->();
+ }
diff --git a/sys-apps/lm-sensors/files/lm_sensors.initd b/sys-apps/lm-sensors/files/lm_sensors.initd
index 4efc6c964040..7ed503c8b0ea 100644
--- a/sys-apps/lm-sensors/files/lm_sensors.initd
+++ b/sys-apps/lm-sensors/files/lm_sensors.initd
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
command="/usr/bin/sensors"
diff --git a/sys-apps/lm-sensors/lm-sensors-3.5.0.ebuild b/sys-apps/lm-sensors/lm-sensors-3.5.0.ebuild
deleted file mode 100644
index 33d0ed4735dd..000000000000
--- a/sys-apps/lm-sensors/lm-sensors-3.5.0.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit linux-info systemd toolchain-funcs multilib-minimal eapi7-ver
-
-DESCRIPTION="Hardware Monitoring user-space utilities"
-HOMEPAGE="https://hwmon.wiki.kernel.org/ https://github.com/lm-sensors/lm-sensors"
-
-MY_PN="${PN/_/-}"
-
-if [[ "${PV}" =~ .*_p[[:digit:]]{8}.* ]] ; then
- COMMIT="807f9b1529892c0ac89bca0c7ae781c59f9c8393"
- SRC_URI="https://github.com/lm-sensors/${MY_PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${MY_PN}-${COMMIT}"
-else
- SRC_URI="https://github.com/lm-sensors/lm-sensors/archive/V$(ver_rs 1- -).tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN/_/-}-$(ver_rs 1- -)"
-fi
-
-LICENSE="GPL-2+ LGPL-2.1"
-
-# SUBSLOT based on SONAME of libsensors.so
-SLOT="0/5.0.0"
-
-KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="contrib sensord static-libs"
-
-COMMON_DEPS="
- sensord? (
- net-analyzer/rrdtool
- virtual/logger
- )"
-
-RDEPEND="${COMMON_DEPS}
- dev-lang/perl
- !<sys-apps/openrc-0.21.7"
-
-DEPEND="${COMMON_DEPS}
- sys-devel/bison
- sys-devel/flex"
-
-CONFIG_CHECK="~HWMON ~I2C_CHARDEV ~I2C"
-WARNING_HWMON="${PN} requires CONFIG_HWMON to be enabled for use."
-WARNING_I2C_CHARDEV="sensors-detect requires CONFIG_I2C_CHARDEV to be enabled."
-WARNING_I2C="${PN} requires CONFIG_I2C to be enabled for most sensors."
-
-PATCHES=( "${FILESDIR}"/${PN}-3.4.0-sensors-detect-gentoo.patch )
-
-DOCS=( CHANGES CONTRIBUTORS INSTALL README )
-DOCS+=( doc/{donations,fancontrol.txt,fan-divisors,libsensors-API.txt,progs,temperature-sensors,vid} )
-
-src_prepare() {
- default
-
- if [[ -n "${COMMIT}" ]]; then
- local _version="${PV%_*}+git_${COMMIT}"
-
- sed -i \
- -e "s:LM_VERSION.*:LM_VERSION \"${_version}\":" \
- version.h || \
- die "Failed to update version.h"
-
- sed -i \
- -e "s/^\$revision = '.*/\$revision = '${_version}';/" \
- -e "/^\$revision =~ s.*/d" \
- prog/detect/sensors-detect || \
- die "Failed to set revision in prog/detect/sensors-detect"
-
- sed -i \
- -e "s/^echo \"# pwmconfig revision.*/echo \"# pwmconfig revision ${_version}\"/" \
- -e "/^REVISION=.*/d" \
- -e "/^REVDATE=.*/d" \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/pwmconfig || \
- die "Failed to adjust prog/pwm/pwmconfig"
- else
- sed -i \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/pwmconfig || \
- die "Failed to adjust PIDFILE in prog/pwm/pwmconfig"
- fi
-
- # Respect LDFLAGS
- sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile || \
- die "Failed to sed in LDFLAGS"
-
- sed -i \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/fancontrol || \
- die "Failed to adjust PIDFILE of prog/pwm/fancontrol"
-
- # Don't use EnvironmentFile in systemd unit
- sed -i \
- -e '/^EnvironmentFile=/d' \
- -e '/^Exec.*modprobe.*/d' \
- prog/init/lm_sensors.service || \
- die "Failed to remove EnvironmentFile from systemd unit file"
-
- if ! use static-libs; then
- sed -i -e '/^BUILD_STATIC_LIB/d' Makefile || \
- die "Failed to disable static building"
- fi
-
- # Don't show outdated user instructions
- sed -i -e '/^ @echo "\*\*\* /d' Makefile || \
- die "Failed to remove outdated user instructions"
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- default
-
- if multilib_is_native_abi && use sensord; then
- # sensord requires net-analyzer/rrdtool which doesn't have real multilib
- # support. To prevent errors like
- #
- # skipping incompatible /usr/lib/librrd.so when searching for -lrrd
- # cannot find -lrrd
- #
- # we only build sensord when we are building for profile's native ABI
- # (it doesn't affect libsensors.so).
- sed -i -e 's:^#\(PROG_EXTRA.*\):\1:' Makefile || \
- die "Failed to enable building of sensord"
- fi
-}
-
-multilib_src_compile() {
- emake \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- LD="$(tc-getLD)" \
- AR="$(tc-getAR)"
-}
-
-multilib_src_install() {
- emake \
- DESTDIR="${ED%/}" \
- PREFIX="/usr" \
- MANDIR="/usr/share/man" \
- ETCDIR="/etc" \
- LIBDIR="/usr/$(get_libdir)" \
- install
-}
-
-multilib_src_install_all() {
- newinitd "${FILESDIR}"/lm_sensors.initd lm_sensors
- newconfd "${FILESDIR}"/lm_sensors.confd lm_sensors
- systemd_dounit prog/init/lm_sensors.service
-
- newinitd "${FILESDIR}"/fancontrol.initd fancontrol
- newconfd "${FILESDIR}"/fancontrol.confd fancontrol
- systemd_newunit "${FILESDIR}"/fancontrol.service-r1 fancontrol.service
-
- if use sensord; then
- newconfd "${FILESDIR}"/sensord.confd sensord
- newinitd "${FILESDIR}"/sensord.initd sensord
- systemd_newunit "${FILESDIR}"/sensord.service-r1 sensord.service
- fi
-
- einstalldocs
-
- docinto developers
- dodoc doc/developers/applications
-
- if use contrib; then
- insinto /usr/share/lm_sensors
- doins -r "${S}"/configs
- fi
-}
-
-pkg_postinst() {
- local _new_loader='3.4.0_p20160725'
- local _v
- for _v in ${REPLACING_VERSIONS}; do
- if ! ver_test "${_v}" -gt "${_new_loader}"; then
- # This is an upgrade which require migration
-
- elog ""
- elog "Since version 3.4.0_p20160725 ${PN} no longer loads modules on its own"
- elog "instead it is using \"modules-load\" services provided by OpenRC or systemd."
- elog ""
- elog "To migrate your configuration you have 2 options:"
- elog ""
- elog " a) Re-create a new configuration using \"/usr/sbin/sensors-detect\""
- elog ""
- elog " b) Copy existing \"modules_<n>\", \"HWMON_MODULES\" or \"BUS_MODULES\""
- elog " variables from \"/etc/conf.d/lm_modules\" to"
- elog " \"/etc/modules-load.d/lm_sensors.conf\" and adjust format."
- elog ""
- elog " For details see https://wiki.gentoo.org/wiki/Systemd#Automatic_module_loading"
- elog ""
- elog " Important: Don't forget to migrate your module's argument"
- elog " (modules_<name>_args variable) if your are not already"
- elog " using \"/etc/modprobe.d\" (which is recommended)."
-
- # Show this elog only once
- break
- fi
- done
-
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- # New installation
-
- elog ""
- elog "Please run \`/usr/sbin/sensors-detect' in order to setup"
- elog "\"/etc/modules-load.d/lm_sensors.conf\"."
- elog ""
- elog "You might want to add lm_sensors to your default runlevel to make"
- elog "sure the sensors get initialized on the next startup."
- elog ""
- elog "Be warned, the probing of hardware in your system performed by"
- elog "sensors-detect could freeze your system. Also make sure you read"
- elog "the documentation before running ${PN} on IBM ThinkPads."
- fi
-}
diff --git a/sys-apps/lm-sensors/lm-sensors-3.5.0_p20190505.ebuild b/sys-apps/lm-sensors/lm-sensors-3.5.0_p20190505.ebuild
deleted file mode 100644
index 29ca56868a23..000000000000
--- a/sys-apps/lm-sensors/lm-sensors-3.5.0_p20190505.ebuild
+++ /dev/null
@@ -1,216 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit linux-info systemd toolchain-funcs multilib-minimal
-
-DESCRIPTION="Hardware Monitoring user-space utilities"
-HOMEPAGE="https://hwmon.wiki.kernel.org/ https://github.com/lm-sensors/lm-sensors"
-
-if [[ "${PV}" =~ .*_p[[:digit:]]{8}.* ]] ; then
- COMMIT="2c8cca3d6cd60121b401734c1a24cfec7daed4fc"
- SRC_URI="https://github.com/lm-sensors/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-${COMMIT}"
-else
- SRC_URI="https://github.com/lm-sensors/lm-sensors/archive/V$(ver_rs 1- -).tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-$(ver_rs 1- -)"
-fi
-
-LICENSE="GPL-2+ LGPL-2.1"
-
-# SUBSLOT based on SONAME of libsensors.so
-SLOT="0/5.0.0"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="contrib sensord static-libs"
-
-COMMON_DEPS="
- sensord? (
- net-analyzer/rrdtool
- virtual/logger
- )"
-
-RDEPEND="${COMMON_DEPS}
- dev-lang/perl
- !<sys-apps/openrc-0.36"
-
-DEPEND="${COMMON_DEPS}
- sys-devel/bison
- sys-devel/flex"
-
-CONFIG_CHECK="~HWMON ~I2C_CHARDEV ~I2C"
-WARNING_HWMON="${PN} requires CONFIG_HWMON to be enabled for use."
-WARNING_I2C_CHARDEV="sensors-detect requires CONFIG_I2C_CHARDEV to be enabled."
-WARNING_I2C="${PN} requires CONFIG_I2C to be enabled for most sensors."
-
-PATCHES=( "${FILESDIR}"/${PN}-3.5.0-sensors-detect-gentoo.patch )
-
-DOCS=( CHANGES CONTRIBUTORS INSTALL README )
-DOCS+=( doc/{donations,fancontrol.txt,fan-divisors,libsensors-API.txt,progs,temperature-sensors,vid} )
-
-src_prepare() {
- default
-
- if [[ -n "${COMMIT}" ]]; then
- local _version="${PV%_*}+git_${COMMIT}"
-
- sed -i \
- -e "s:LM_VERSION.*:LM_VERSION \"${_version}\":" \
- version.h || \
- die "Failed to update version.h"
-
- sed -i \
- -e "s/^\$revision = '.*/\$revision = '${_version}';/" \
- -e "/^\$revision =~ s.*/d" \
- prog/detect/sensors-detect || \
- die "Failed to set revision in prog/detect/sensors-detect"
-
- sed -i \
- -e "s/^echo \"# pwmconfig revision.*/echo \"# pwmconfig revision ${_version}\"/" \
- -e "/^REVISION=.*/d" \
- -e "/^REVDATE=.*/d" \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/pwmconfig || \
- die "Failed to adjust prog/pwm/pwmconfig"
- else
- sed -i \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/pwmconfig || \
- die "Failed to adjust PIDFILE in prog/pwm/pwmconfig"
- fi
-
- # Respect LDFLAGS
- sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile || \
- die "Failed to sed in LDFLAGS"
-
- sed -i \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/fancontrol || \
- die "Failed to adjust PIDFILE of prog/pwm/fancontrol"
-
- # Don't use EnvironmentFile in systemd unit
- sed -i \
- -e '/^EnvironmentFile=/d' \
- -e '/^Exec.*modprobe.*/d' \
- prog/init/lm_sensors.service || \
- die "Failed to remove EnvironmentFile from systemd unit file"
-
- if ! use static-libs; then
- sed -i -e '/^BUILD_STATIC_LIB/d' Makefile || \
- die "Failed to disable static building"
- fi
-
- # Don't show outdated user instructions
- sed -i -e '/^ @echo "\*\*\* /d' Makefile || \
- die "Failed to remove outdated user instructions"
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- default
-
- if multilib_is_native_abi && use sensord; then
- # sensord requires net-analyzer/rrdtool which doesn't have real multilib
- # support. To prevent errors like
- #
- # skipping incompatible /usr/lib/librrd.so when searching for -lrrd
- # cannot find -lrrd
- #
- # we only build sensord when we are building for profile's native ABI
- # (it doesn't affect libsensors.so).
- sed -i -e 's:^#\(PROG_EXTRA.*\):\1:' Makefile || \
- die "Failed to enable building of sensord"
- fi
-}
-
-multilib_src_compile() {
- emake \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- LD="$(tc-getLD)" \
- AR="$(tc-getAR)"
-}
-
-multilib_src_install() {
- emake \
- DESTDIR="${ED}" \
- PREFIX="/usr" \
- MANDIR="/usr/share/man" \
- ETCDIR="/etc" \
- LIBDIR="/usr/$(get_libdir)" \
- install
-}
-
-multilib_src_install_all() {
- newinitd "${FILESDIR}"/lm_sensors.initd lm_sensors
- newconfd "${FILESDIR}"/lm_sensors.confd lm_sensors
- systemd_dounit prog/init/lm_sensors.service
-
- newinitd "${FILESDIR}"/fancontrol.initd fancontrol
- newconfd "${FILESDIR}"/fancontrol.confd fancontrol
- systemd_newunit "${FILESDIR}"/fancontrol.service-r1 fancontrol.service
-
- if use sensord; then
- newconfd "${FILESDIR}"/sensord.confd sensord
- newinitd "${FILESDIR}"/sensord.initd sensord
- systemd_newunit "${FILESDIR}"/sensord.service-r1 sensord.service
- fi
-
- einstalldocs
-
- docinto developers
- dodoc doc/developers/applications
-
- if use contrib; then
- insinto /usr/share/lm_sensors
- doins -r "${S}"/configs
- fi
-}
-
-pkg_postinst() {
- local _new_loader='3.4.0_p20160725'
- local _v
- for _v in ${REPLACING_VERSIONS}; do
- if ! ver_test "${_v}" -gt "${_new_loader}"; then
- # This is an upgrade which require migration
-
- elog ""
- elog "Since version 3.4.0_p20160725 ${PN} no longer loads modules on its own"
- elog "instead it is using \"modules-load\" services provided by OpenRC or systemd."
- elog ""
- elog "To migrate your configuration you have 2 options:"
- elog ""
- elog " a) Re-create a new configuration using \"/usr/sbin/sensors-detect\""
- elog ""
- elog " b) Copy existing \"modules_<n>\", \"HWMON_MODULES\" or \"BUS_MODULES\""
- elog " variables from \"/etc/conf.d/lm_modules\" to"
- elog " \"/etc/modules-load.d/lm_sensors.conf\" and adjust format."
- elog ""
- elog " For details see https://wiki.gentoo.org/wiki/Systemd#Automatic_module_loading"
- elog ""
- elog " Important: Don't forget to migrate your module's argument"
- elog " (modules_<name>_args variable) if your are not already"
- elog " using \"/etc/modprobe.d\" (which is recommended)."
-
- # Show this elog only once
- break
- fi
- done
-
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- # New installation
-
- elog ""
- elog "Please run \`/usr/sbin/sensors-detect' in order to setup"
- elog "\"/etc/modules-load.d/lm_sensors.conf\"."
- elog ""
- elog "You might want to add lm_sensors to your default runlevel to make"
- elog "sure the sensors get initialized on the next startup."
- elog ""
- elog "Be warned, the probing of hardware in your system performed by"
- elog "sensors-detect could freeze your system. Also make sure you read"
- elog "the documentation before running ${PN} on IBM ThinkPads."
- fi
-}
diff --git a/sys-apps/lm-sensors/lm-sensors-3.6.0-r1.ebuild b/sys-apps/lm-sensors/lm-sensors-3.6.0-r1.ebuild
new file mode 100644
index 000000000000..90d472ac05e7
--- /dev/null
+++ b/sys-apps/lm-sensors/lm-sensors-3.6.0-r1.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info systemd toolchain-funcs multilib-minimal
+
+DESCRIPTION="Hardware Monitoring user-space utilities"
+HOMEPAGE="https://hwmon.wiki.kernel.org/ https://github.com/lm-sensors/lm-sensors"
+
+if [[ "${PV}" =~ .*_p[[:digit:]]{8}.* ]] ; then
+ COMMIT="2c8cca3d6cd60121b401734c1a24cfec7daed4fc"
+ SRC_URI="https://github.com/lm-sensors/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${COMMIT}"
+else
+ SRC_URI="https://github.com/lm-sensors/lm-sensors/archive/V$(ver_rs 1- -).tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-$(ver_rs 1- -)"
+fi
+
+LICENSE="GPL-2+ LGPL-2.1"
+
+# SUBSLOT based on SONAME of libsensors.so
+SLOT="0/5.0.0"
+
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="contrib selinux sensord static-libs"
+
+COMMON_DEPS="
+ sensord? (
+ net-analyzer/rrdtool
+ virtual/logger
+ )"
+
+RDEPEND="${COMMON_DEPS}
+ dev-lang/perl
+ !<sys-apps/openrc-0.36
+ selinux? ( sec-policy/selinux-sensord )"
+
+DEPEND="${COMMON_DEPS}
+ app-alternatives/yacc
+ app-alternatives/lex"
+
+CONFIG_CHECK="~HWMON ~I2C_CHARDEV ~I2C"
+WARNING_HWMON="${PN} requires CONFIG_HWMON to be enabled for use."
+WARNING_I2C_CHARDEV="sensors-detect requires CONFIG_I2C_CHARDEV to be enabled."
+WARNING_I2C="${PN} requires CONFIG_I2C to be enabled for most sensors."
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5.0-sensors-detect-gentoo.patch
+ "${FILESDIR}"/${PN}-3.6.0-no-which.patch
+ "${FILESDIR}"/${PN}-3.6.0-w83627ehf-nct6775.patch
+)
+
+DOCS=( CHANGES CONTRIBUTORS INSTALL README )
+DOCS+=( doc/{donations,fancontrol.txt,fan-divisors,libsensors-API.txt,progs,temperature-sensors,vid} )
+
+src_prepare() {
+ default
+
+ if [[ -n "${COMMIT}" ]]; then
+ local _version="${PV%_*}+git_${COMMIT}"
+
+ sed -i \
+ -e "s:LM_VERSION.*:LM_VERSION \"${_version}\":" \
+ version.h || \
+ die "Failed to update version.h"
+
+ sed -i \
+ -e "s/^\$revision = '.*/\$revision = '${_version}';/" \
+ -e "/^\$revision =~ s.*/d" \
+ prog/detect/sensors-detect || \
+ die "Failed to set revision in prog/detect/sensors-detect"
+
+ sed -i \
+ -e "s/^echo \"# pwmconfig revision.*/echo \"# pwmconfig revision ${_version}\"/" \
+ -e "/^REVISION=.*/d" \
+ -e "/^REVDATE=.*/d" \
+ -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
+ prog/pwm/pwmconfig || \
+ die "Failed to adjust prog/pwm/pwmconfig"
+ else
+ sed -i \
+ -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
+ prog/pwm/pwmconfig || \
+ die "Failed to adjust PIDFILE in prog/pwm/pwmconfig"
+ fi
+
+ # Respect LDFLAGS
+ sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile || \
+ die "Failed to sed in LDFLAGS"
+
+ sed -i \
+ -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
+ prog/pwm/fancontrol || \
+ die "Failed to adjust PIDFILE of prog/pwm/fancontrol"
+
+ # Don't use EnvironmentFile in systemd unit
+ sed -i \
+ -e '/^EnvironmentFile=/d' \
+ -e '/^Exec.*modprobe.*/d' \
+ prog/init/lm_sensors.service || \
+ die "Failed to remove EnvironmentFile from systemd unit file"
+
+ if ! use static-libs; then
+ sed -i -e '/^BUILD_STATIC_LIB/d' Makefile || \
+ die "Failed to disable static building"
+ fi
+
+ # Don't show outdated user instructions
+ sed -i -e '/^ @echo "\*\*\* /d' Makefile || \
+ die "Failed to remove outdated user instructions"
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ default
+
+ if multilib_is_native_abi && use sensord; then
+ # sensord requires net-analyzer/rrdtool which doesn't have real multilib
+ # support. To prevent errors like
+ #
+ # skipping incompatible /usr/lib/librrd.so when searching for -lrrd
+ # cannot find -lrrd
+ #
+ # we only build sensord when we are building for profile's native ABI
+ # (it doesn't affect libsensors.so).
+ sed -i -e 's:^#\(PROG_EXTRA.*\):\1:' Makefile || \
+ die "Failed to enable building of sensord"
+ fi
+}
+
+multilib_src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ LD="$(tc-getLD)" \
+ AR="$(tc-getAR)"
+}
+
+multilib_src_install() {
+ # We need to set CC and friends again here to avoid recompilation for cross
+ # bug #799851
+ emake \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ LD="$(tc-getLD)" \
+ AR="$(tc-getAR)" \
+ DESTDIR="${ED}" \
+ PREFIX="/usr" \
+ MANDIR="/usr/share/man" \
+ ETCDIR="/etc" \
+ LIBDIR="/usr/$(get_libdir)" \
+ install
+}
+
+multilib_src_install_all() {
+ newinitd "${FILESDIR}"/lm_sensors.initd lm_sensors
+ newconfd "${FILESDIR}"/lm_sensors.confd lm_sensors
+ systemd_dounit prog/init/lm_sensors.service
+
+ newinitd "${FILESDIR}"/fancontrol.initd fancontrol
+ newconfd "${FILESDIR}"/fancontrol.confd fancontrol
+ systemd_newunit "${FILESDIR}"/fancontrol.service-r1 fancontrol.service
+
+ if use sensord; then
+ newconfd "${FILESDIR}"/sensord.confd sensord
+ newinitd "${FILESDIR}"/sensord.initd sensord
+ systemd_newunit "${FILESDIR}"/sensord.service-r1 sensord.service
+ fi
+
+ einstalldocs
+
+ docinto developers
+ dodoc doc/developers/applications
+
+ if use contrib; then
+ insinto /usr/share/lm_sensors
+ doins -r "${S}"/configs
+ fi
+}
+
+pkg_postinst() {
+ local _new_loader='3.4.0_p20160725'
+ local _v
+ for _v in ${REPLACING_VERSIONS}; do
+ if ! ver_test "${_v}" -gt "${_new_loader}"; then
+ # This is an upgrade which require migration
+
+ elog ""
+ elog "Since version 3.4.0_p20160725 ${PN} no longer loads modules on its own"
+ elog "instead it is using \"modules-load\" services provided by OpenRC or systemd."
+ elog ""
+ elog "To migrate your configuration you have 2 options:"
+ elog ""
+ elog " a) Re-create a new configuration using \"/usr/sbin/sensors-detect\""
+ elog ""
+ elog " b) Copy existing \"modules_<n>\", \"HWMON_MODULES\" or \"BUS_MODULES\""
+ elog " variables from \"/etc/conf.d/lm_modules\" to"
+ elog " \"/etc/modules-load.d/lm_sensors.conf\" and adjust format."
+ elog ""
+ elog " For details see https://wiki.gentoo.org/wiki/Systemd#Automatic_module_loading"
+ elog ""
+ elog " Important: Don't forget to migrate your module's argument"
+ elog " (modules_<name>_args variable) if your are not already"
+ elog " using \"/etc/modprobe.d\" (which is recommended)."
+
+ # Show this elog only once
+ break
+ fi
+ done
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # New installation
+
+ elog ""
+ elog "Please run \`/usr/sbin/sensors-detect' in order to setup"
+ elog "\"/etc/modules-load.d/lm_sensors.conf\"."
+ elog ""
+ elog "You might want to add lm_sensors to your default runlevel to make"
+ elog "sure the sensors get initialized on the next startup."
+ elog ""
+ elog "Be warned, the probing of hardware in your system performed by"
+ elog "sensors-detect could freeze your system."
+ fi
+}
diff --git a/sys-apps/lm-sensors/lm-sensors-3.6.0.ebuild b/sys-apps/lm-sensors/lm-sensors-3.6.0.ebuild
deleted file mode 100644
index 71acc46a09f3..000000000000
--- a/sys-apps/lm-sensors/lm-sensors-3.6.0.ebuild
+++ /dev/null
@@ -1,216 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit linux-info systemd toolchain-funcs multilib-minimal
-
-DESCRIPTION="Hardware Monitoring user-space utilities"
-HOMEPAGE="https://hwmon.wiki.kernel.org/ https://github.com/lm-sensors/lm-sensors"
-
-if [[ "${PV}" =~ .*_p[[:digit:]]{8}.* ]] ; then
- COMMIT="2c8cca3d6cd60121b401734c1a24cfec7daed4fc"
- SRC_URI="https://github.com/lm-sensors/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-${COMMIT}"
-else
- SRC_URI="https://github.com/lm-sensors/lm-sensors/archive/V$(ver_rs 1- -).tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-$(ver_rs 1- -)"
-fi
-
-LICENSE="GPL-2+ LGPL-2.1"
-
-# SUBSLOT based on SONAME of libsensors.so
-SLOT="0/5.0.0"
-
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="contrib sensord static-libs"
-
-COMMON_DEPS="
- sensord? (
- net-analyzer/rrdtool
- virtual/logger
- )"
-
-RDEPEND="${COMMON_DEPS}
- dev-lang/perl
- !<sys-apps/openrc-0.36"
-
-DEPEND="${COMMON_DEPS}
- sys-devel/bison
- sys-devel/flex"
-
-CONFIG_CHECK="~HWMON ~I2C_CHARDEV ~I2C"
-WARNING_HWMON="${PN} requires CONFIG_HWMON to be enabled for use."
-WARNING_I2C_CHARDEV="sensors-detect requires CONFIG_I2C_CHARDEV to be enabled."
-WARNING_I2C="${PN} requires CONFIG_I2C to be enabled for most sensors."
-
-PATCHES=( "${FILESDIR}"/${PN}-3.5.0-sensors-detect-gentoo.patch )
-
-DOCS=( CHANGES CONTRIBUTORS INSTALL README )
-DOCS+=( doc/{donations,fancontrol.txt,fan-divisors,libsensors-API.txt,progs,temperature-sensors,vid} )
-
-src_prepare() {
- default
-
- if [[ -n "${COMMIT}" ]]; then
- local _version="${PV%_*}+git_${COMMIT}"
-
- sed -i \
- -e "s:LM_VERSION.*:LM_VERSION \"${_version}\":" \
- version.h || \
- die "Failed to update version.h"
-
- sed -i \
- -e "s/^\$revision = '.*/\$revision = '${_version}';/" \
- -e "/^\$revision =~ s.*/d" \
- prog/detect/sensors-detect || \
- die "Failed to set revision in prog/detect/sensors-detect"
-
- sed -i \
- -e "s/^echo \"# pwmconfig revision.*/echo \"# pwmconfig revision ${_version}\"/" \
- -e "/^REVISION=.*/d" \
- -e "/^REVDATE=.*/d" \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/pwmconfig || \
- die "Failed to adjust prog/pwm/pwmconfig"
- else
- sed -i \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/pwmconfig || \
- die "Failed to adjust PIDFILE in prog/pwm/pwmconfig"
- fi
-
- # Respect LDFLAGS
- sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile || \
- die "Failed to sed in LDFLAGS"
-
- sed -i \
- -e "s:^PIDFILE=\".*:PIDFILE=\"/run/fancontrol.pid\":" \
- prog/pwm/fancontrol || \
- die "Failed to adjust PIDFILE of prog/pwm/fancontrol"
-
- # Don't use EnvironmentFile in systemd unit
- sed -i \
- -e '/^EnvironmentFile=/d' \
- -e '/^Exec.*modprobe.*/d' \
- prog/init/lm_sensors.service || \
- die "Failed to remove EnvironmentFile from systemd unit file"
-
- if ! use static-libs; then
- sed -i -e '/^BUILD_STATIC_LIB/d' Makefile || \
- die "Failed to disable static building"
- fi
-
- # Don't show outdated user instructions
- sed -i -e '/^ @echo "\*\*\* /d' Makefile || \
- die "Failed to remove outdated user instructions"
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- default
-
- if multilib_is_native_abi && use sensord; then
- # sensord requires net-analyzer/rrdtool which doesn't have real multilib
- # support. To prevent errors like
- #
- # skipping incompatible /usr/lib/librrd.so when searching for -lrrd
- # cannot find -lrrd
- #
- # we only build sensord when we are building for profile's native ABI
- # (it doesn't affect libsensors.so).
- sed -i -e 's:^#\(PROG_EXTRA.*\):\1:' Makefile || \
- die "Failed to enable building of sensord"
- fi
-}
-
-multilib_src_compile() {
- emake \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- LD="$(tc-getLD)" \
- AR="$(tc-getAR)"
-}
-
-multilib_src_install() {
- emake \
- DESTDIR="${ED}" \
- PREFIX="/usr" \
- MANDIR="/usr/share/man" \
- ETCDIR="/etc" \
- LIBDIR="/usr/$(get_libdir)" \
- install
-}
-
-multilib_src_install_all() {
- newinitd "${FILESDIR}"/lm_sensors.initd lm_sensors
- newconfd "${FILESDIR}"/lm_sensors.confd lm_sensors
- systemd_dounit prog/init/lm_sensors.service
-
- newinitd "${FILESDIR}"/fancontrol.initd fancontrol
- newconfd "${FILESDIR}"/fancontrol.confd fancontrol
- systemd_newunit "${FILESDIR}"/fancontrol.service-r1 fancontrol.service
-
- if use sensord; then
- newconfd "${FILESDIR}"/sensord.confd sensord
- newinitd "${FILESDIR}"/sensord.initd sensord
- systemd_newunit "${FILESDIR}"/sensord.service-r1 sensord.service
- fi
-
- einstalldocs
-
- docinto developers
- dodoc doc/developers/applications
-
- if use contrib; then
- insinto /usr/share/lm_sensors
- doins -r "${S}"/configs
- fi
-}
-
-pkg_postinst() {
- local _new_loader='3.4.0_p20160725'
- local _v
- for _v in ${REPLACING_VERSIONS}; do
- if ! ver_test "${_v}" -gt "${_new_loader}"; then
- # This is an upgrade which require migration
-
- elog ""
- elog "Since version 3.4.0_p20160725 ${PN} no longer loads modules on its own"
- elog "instead it is using \"modules-load\" services provided by OpenRC or systemd."
- elog ""
- elog "To migrate your configuration you have 2 options:"
- elog ""
- elog " a) Re-create a new configuration using \"/usr/sbin/sensors-detect\""
- elog ""
- elog " b) Copy existing \"modules_<n>\", \"HWMON_MODULES\" or \"BUS_MODULES\""
- elog " variables from \"/etc/conf.d/lm_modules\" to"
- elog " \"/etc/modules-load.d/lm_sensors.conf\" and adjust format."
- elog ""
- elog " For details see https://wiki.gentoo.org/wiki/Systemd#Automatic_module_loading"
- elog ""
- elog " Important: Don't forget to migrate your module's argument"
- elog " (modules_<name>_args variable) if your are not already"
- elog " using \"/etc/modprobe.d\" (which is recommended)."
-
- # Show this elog only once
- break
- fi
- done
-
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- # New installation
-
- elog ""
- elog "Please run \`/usr/sbin/sensors-detect' in order to setup"
- elog "\"/etc/modules-load.d/lm_sensors.conf\"."
- elog ""
- elog "You might want to add lm_sensors to your default runlevel to make"
- elog "sure the sensors get initialized on the next startup."
- elog ""
- elog "Be warned, the probing of hardware in your system performed by"
- elog "sensors-detect could freeze your system. Also make sure you read"
- elog "the documentation before running ${PN} on IBM ThinkPads."
- fi
-}
diff --git a/sys-apps/lm-sensors/metadata.xml b/sys-apps/lm-sensors/metadata.xml
index 897d37da3562..3ce355fef10c 100644
--- a/sys-apps/lm-sensors/metadata.xml
+++ b/sys-apps/lm-sensors/metadata.xml
@@ -1,13 +1,9 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
- <maintainer type="person">
- <email>whissi@gentoo.org</email>
- <name>Thomas Deutschmann</name>
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
</maintainer>
<slots>
<subslots>Reflect ABI of libsensors.so.</subslots>
@@ -26,6 +22,6 @@
</flag>
</use>
<upstream>
- <remote-id type="github">groeck/lm-sensors</remote-id>
+ <remote-id type="github">lm-sensors/lm-sensors</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/lmctfy/Manifest b/sys-apps/lmctfy/Manifest
deleted file mode 100644
index d5ba1169d978..000000000000
--- a/sys-apps/lmctfy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST lmctfy-0.5.0.tar.gz 2447650 BLAKE2B f40126ccb16b43921e39c23b82ee81a982e97c8bcd7e316568a313e3dd854cc0995f18aba7f6dd48418c3754a3ab92516b2c896136d00006d162044e6f6cd0e6 SHA512 638472b3e8cc98e7ff7ecc48eb0f58fb6a74600db22b7a1962ac3fe137d3549233f3f3b0c97f5783dff6f1851f9c3f9b0607fedea91cb23c1124ed8e2b54aea1
diff --git a/sys-apps/lmctfy/lmctfy-0.5.0-r1.ebuild b/sys-apps/lmctfy/lmctfy-0.5.0-r1.ebuild
deleted file mode 100644
index b55a5841ffc9..000000000000
--- a/sys-apps/lmctfy/lmctfy-0.5.0-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils
-
-DESCRIPTION="Linux application container management from Google"
-HOMEPAGE="https://github.com/google/lmctfy"
-SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- dev-libs/protobuf
- >=dev-cpp/gflags-2.1.1
- dev-libs/re2
- sys-libs/libapparmor
- "
-DEPEND="
- ${COMMON_DEPEND}
- dev-lang/go:=
- "
-RDEPEND="${COMMON_DEPEND}"
-
-src_compile() {
- # test deps take too long to compile
- use test && emake || emake lmctfy liblmctfy.a
-}
-
-src_install() {
- dobin bin/lmctfy/cli/lmctfy
- dolib.a bin/liblmctfy.a
-}
diff --git a/sys-apps/lmctfy/metadata.xml b/sys-apps/lmctfy/metadata.xml
deleted file mode 100644
index 2b94e5cfaac0..000000000000
--- a/sys-apps/lmctfy/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>patrick@gentoo.org</email>
- <name>Patrick Lauer</name>
- </maintainer>
- <upstream>
- <remote-id type="github">google/lmctfy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/lnxhc/files/lnxhc-1.2-ifconfig-path.patch b/sys-apps/lnxhc/files/lnxhc-1.2-ifconfig-path.patch
index 89e184704857..3f6e9e2fd799 100644
--- a/sys-apps/lnxhc/files/lnxhc-1.2-ifconfig-path.patch
+++ b/sys-apps/lnxhc/files/lnxhc-1.2-ifconfig-path.patch
@@ -1,5 +1,5 @@
---- lnxhc-1.2/checks/net_hsi_outbound_errors/definitions
-+++ lnxhc-1.2-patched/checks/net_hsi_outbound_errors/definitions
+--- a/checks/net_hsi_outbound_errors/definitions
++++ b/checks/net_hsi_outbound_errors/definitions
@@ -9,7 +9,7 @@
default = "1"
@@ -10,8 +10,8 @@
[exception slow_hsi_receivers]
severity = medium
---- lnxhc-1.2/checks/net_inbound_errors/definitions 2013-02-06 04:08:55.000000000 -0500
-+++ lnxhc-1.2-patched/checks/net_inbound_errors/definitions 2013-05-22 17:13:56.088787813 -0400
+--- a/checks/net_inbound_errors/definitions
++++ b/checks/net_inbound_errors/definitions
@@ -11,7 +11,7 @@
# The above value in percentage
diff --git a/sys-apps/lnxhc/files/lnxhc-1.2-usrlocal.patch b/sys-apps/lnxhc/files/lnxhc-1.2-usrlocal.patch
index fe237502785f..56599771a7aa 100644
--- a/sys-apps/lnxhc/files/lnxhc-1.2-usrlocal.patch
+++ b/sys-apps/lnxhc/files/lnxhc-1.2-usrlocal.patch
@@ -1,6 +1,5 @@
-diff -ruN lnxhc-1.2/Makefile lnxhc-1.2-patched/Makefile
---- lnxhc-1.2/Makefile 2013-02-06 04:14:17.000000000 -0500
-+++ lnxhc-1.2-patched/Makefile 2013-02-09 13:39:25.096883794 -0500
+--- a/Makefile
++++ b/Makefile
@@ -71,7 +71,6 @@
pycheckdir := $(libdir)/python/check
exampledir := $(docdir)/examples
diff --git a/sys-apps/lnxhc/lnxhc-1.2-r1.ebuild b/sys-apps/lnxhc/lnxhc-1.2-r1.ebuild
deleted file mode 100644
index 2b878ef587d8..000000000000
--- a/sys-apps/lnxhc/lnxhc-1.2-r1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils
-DESCRIPTION="Linux Health Checker"
-HOMEPAGE="http://lnxhc.sourceforge.net"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=dev-lang/perl-5.8"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}/${PN}-1.2-usrlocal.patch"
- epatch "${FILESDIR}/${PN}-1.2-ifconfig-path.patch"
-}
diff --git a/sys-apps/lnxhc/lnxhc-1.2-r2.ebuild b/sys-apps/lnxhc/lnxhc-1.2-r2.ebuild
new file mode 100644
index 000000000000..03d438a114c2
--- /dev/null
+++ b/sys-apps/lnxhc/lnxhc-1.2-r2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Linux Health Checker"
+HOMEPAGE="http://lnxhc.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="
+ >=dev-lang/perl-5.8
+ dev-perl/XML-Parser
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.2-usrlocal.patch
+ "${FILESDIR}"/${PN}-1.2-ifconfig-path.patch
+)
diff --git a/sys-apps/lnxhc/metadata.xml b/sys-apps/lnxhc/metadata.xml
index 8ee14e7cb171..8fa9b69a02e8 100644
--- a/sys-apps/lnxhc/metadata.xml
+++ b/sys-apps/lnxhc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/locale-gen/Manifest b/sys-apps/locale-gen/Manifest
new file mode 100644
index 000000000000..6b7bfc73baec
--- /dev/null
+++ b/sys-apps/locale-gen/Manifest
@@ -0,0 +1 @@
+DIST locale-gen-2.23.tar.bz2 7664 BLAKE2B a529b62fbb840c9352f06e8f5c80fc764425a2619dc69cc820f550a026d391788d5e2cfeeb46a8b5b9716da63340b4fce57a5b523edd4196ee1219c1200cb752 SHA512 c1245caadb04403c535a836f19bc410d0f04b5c0e297ea5be9852e6d71e08e528071ae769d63d31a677dda8fdd618b4c4d581ed525cf8786b82d8f37636db754
diff --git a/sys-apps/locale-gen/locale-gen-2.23-r1.ebuild b/sys-apps/locale-gen/locale-gen-2.23-r1.ebuild
new file mode 100644
index 000000000000..0182e537b342
--- /dev/null
+++ b/sys-apps/locale-gen/locale-gen-2.23-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit prefix
+
+DESCRIPTION="Generate locales based upon the config file /etc/locale.gen"
+HOMEPAGE="https://gitweb.gentoo.org/proj/locale-gen.git/"
+SRC_URI="https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/${P}.tar.bz2"
+
+# Totally unclear what the license is. Following here the statement
+# in the Debian file that the tools accompanying glibc are GPL-2+
+LICENSE="GPL-2+"
+
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+RDEPEND="
+ app-alternatives/awk
+ app-alternatives/gzip
+ sys-apps/gentoo-functions
+ sys-apps/grep
+ !<sys-libs/glibc-2.37-r3
+"
+DEPEND=""
+
+src_prepare() {
+ default
+ eprefixify locale-gen
+}
+
+src_install() {
+ dosbin locale-gen
+ doman *.[0-8]
+ insinto /etc
+ doins locale.gen
+ keepdir /usr/lib/locale
+}
diff --git a/sys-apps/locale-gen/metadata.xml b/sys-apps/locale-gen/metadata.xml
new file mode 100644
index 000000000000..2b151008630f
--- /dev/null
+++ b/sys-apps/locale-gen/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>toolchain@gentoo.org</email>
+ <name>Gentoo Toolchain Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gentoo">proj/locale-gen</remote-id>
+ <remote-id type="github">gentoo/locale-gen</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/logwatch/Manifest b/sys-apps/logwatch/Manifest
index 079b34e6eb14..31260357e110 100644
--- a/sys-apps/logwatch/Manifest
+++ b/sys-apps/logwatch/Manifest
@@ -1,2 +1,2 @@
-DIST logwatch-7.5.3.tar.gz 495110 BLAKE2B b28d7381d259a132de7d9fd347ac4bafb44440b187aa811f3d3f65d7b1ccbb00c6b5bb660229cd8155fa5d7bc9668e7b4dd1ebe7bbb909b48367c6a6dd6793e5 SHA512 ad404f031fe016599a8f8d8c0820b23db61a9ad102815d3713e5d13e9a810c819ca7ad9cea50891852982e073ef033dbe7595fde8846971336148e32cbbe29ca
-DIST logwatch-7.5.4.tar.gz 481766 BLAKE2B d86ae3afc33a100fc353948be3591cd13566568d47cad02fa5f390882a223ca9d4d78692214f2f0898fa8bf8687314f60ad9ce02f0987bb86dd7136150a1d2b9 SHA512 6e6a5e8b7ae977244ea97895e06cccde320fce3dfbd2b1c58c945fc8872325a9676c8afe122b1f7230cb6617b64813caf90ef37fc472a1b200eb0b24ea72fa9b
+DIST logwatch-7.10.tar.gz 511766 BLAKE2B 66d7cb09f4c73ca55a3bad9eb2e9a46eabdc0da444e5361ddc10e7bee28de2e58f2c10530f75d40b2689d33624d612f439171b995e9f21a7e48bf211db1f2bd2 SHA512 838bcc7a3b12eb31450a20195fe2ca4ab238500051bb2f50bd1775272fefa412e0a2473c0294a5495ef594fa530b00dac0dc6d18b93e124f36614686502e55cb
+DIST logwatch-7.9.tar.gz 501086 BLAKE2B ebfc65c88036244840fe4fbf42c0bea668cac3063771f0042827a2f583d654403b75bdfa428f50a7fdac5f0098ec08ef5a27006db7f7576b361653594462d607 SHA512 d091fbbeb0cac4b661fb066118fd384dbdeabe137c699ea6892d53567a45978c0742b1be9cf2f8b8c2e522314351ee6c2e3710ac2e61bbf1a3c8d63f78a3646f
diff --git a/sys-apps/logwatch/logwatch-7.10.ebuild b/sys-apps/logwatch/logwatch-7.10.ebuild
new file mode 100644
index 000000000000..c27757935fcb
--- /dev/null
+++ b/sys-apps/logwatch/logwatch-7.10.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit tmpfiles
+
+DESCRIPTION="Analyzes and Reports on system logs"
+HOMEPAGE="https://sourceforge.net/projects/logwatch/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.code.sf.net/p/logwatch/git ${PN}"
+ inherit git-r3
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ppc ppc64 sparc x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="selinux"
+
+RDEPEND="
+ dev-lang/perl
+ dev-perl/Date-Calc
+ dev-perl/Date-Manip
+ dev-perl/HTML-Parser
+ dev-perl/Tie-IxHash
+ dev-perl/Sys-CPU
+ dev-perl/Sys-MemInfo
+ virtual/cron
+ virtual/mta
+ virtual/mailx
+ selinux? ( sec-policy/selinux-logwatch )
+"
+
+src_install() {
+ dodir /usr/share/logwatch/lib
+ dodir /usr/share/logwatch/scripts/services
+ dodir /usr/share/logwatch/scripts/shared
+ dodir /usr/share/logwatch/default.conf/logfiles
+ dodir /usr/share/logwatch/default.conf/services
+ dodir /usr/share/logwatch/default.conf/html
+ keepdir /etc/logwatch
+
+ # logwatch.pl requires cache dir (bug #607668)
+ newtmpfiles "${FILESDIR}"/logwatch.tmpfile ${PN}.conf
+
+ newsbin scripts/logwatch.pl logwatch.pl
+
+ exeinto /usr/share/logwatch/lib
+ doexe lib/*.pm
+
+ exeinto /usr/share/logwatch/scripts/services
+ doexe scripts/services/*
+
+ exeinto /usr/share/logwatch/scripts/shared
+ doexe scripts/shared/*
+
+ insinto /usr/share/logwatch/default.conf
+ doins conf/logwatch.conf
+
+ insinto /usr/share/logwatch/default.conf/logfiles
+ doins conf/logfiles/*
+
+ insinto /usr/share/logwatch/default.conf/services
+ doins conf/services/*
+
+ insinto /usr/share/logwatch/default.conf/html
+ doins conf/html/*
+
+ # Make sure logwatch is run before anything else (bug #100243)
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/logwatch 00-logwatch
+
+ doman logwatch.8
+ dodoc README HOWTO-Customize-LogWatch
+
+ # Do last due to insopts modification.
+ insinto /usr/share/logwatch/scripts/logfiles
+ insopts -m755
+ doins -r scripts/logfiles/*
+}
+
+pkg_postinst() {
+ # Migration from /etc/cron.daily/logwatch -> /etc/cron.daily/00-logwatch (bug #100243)
+ if [[ -e ${ROOT}/etc/cron.daily/logwatch ]] ; then
+ local md5=$(md5sum "${ROOT}"/etc/cron.daily/logwatch)
+ [[ ${md5} == "edb003cbc0686ed4cf37db16025635f3" ]] \
+ && rm -f "${ROOT}"/etc/cron.daily/logwatch \
+ || ewarn "You have two logwatch files in /etc/cron.daily/"
+ fi
+
+ # Trigger cache dir creation to allow immediate use of logwatch (bug #607668)
+ tmpfiles_process ${PN}.conf
+}
diff --git a/sys-apps/logwatch/logwatch-7.5.3.ebuild b/sys-apps/logwatch/logwatch-7.5.3.ebuild
deleted file mode 100644
index 4118164aa813..000000000000
--- a/sys-apps/logwatch/logwatch-7.5.3.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit tmpfiles
-
-PATCHES=()
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.code.sf.net/p/logwatch/git ${PN}"
- inherit git-r3
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ppc ppc64 sparc x86"
-fi
-
-DESCRIPTION="Analyzes and Reports on system logs"
-HOMEPAGE="https://sourceforge.net/projects/logwatch/"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE=""
-
-DEPEND=""
-RDEPEND="virtual/cron
- virtual/mta
- virtual/mailx
- dev-lang/perl
- dev-perl/Date-Calc
- dev-perl/Date-Manip
- dev-perl/Tie-IxHash
- dev-perl/Sys-CPU
- dev-perl/Sys-MemInfo"
-
-src_install() {
- dodir /usr/share/logwatch/lib
- dodir /usr/share/logwatch/scripts/services
- dodir /usr/share/logwatch/scripts/shared
- dodir /usr/share/logwatch/default.conf/logfiles
- dodir /usr/share/logwatch/default.conf/services
- dodir /usr/share/logwatch/default.conf/html
- keepdir /etc/logwatch
-
- # logwatch.pl requires cache dir (bug #607668)
- newtmpfiles "${FILESDIR}"/logwatch.tmpfile ${PN}.conf
-
- newsbin scripts/logwatch.pl logwatch.pl
-
- exeinto /usr/share/logwatch/lib
- doexe lib/*.pm
-
- exeinto /usr/share/logwatch/scripts/services
- doexe scripts/services/*
-
- exeinto /usr/share/logwatch/scripts/shared
- doexe scripts/shared/*
-
- insinto /usr/share/logwatch/default.conf
- doins conf/logwatch.conf
-
- insinto /usr/share/logwatch/default.conf/logfiles
- doins conf/logfiles/*
-
- insinto /usr/share/logwatch/default.conf/services
- doins conf/services/*
-
- insinto /usr/share/logwatch/default.conf/html
- doins conf/html/*
-
- # Make sure logwatch is run before anything else #100243
- exeinto /etc/cron.daily
- newexe "${FILESDIR}"/logwatch 00-logwatch
-
- doman logwatch.8
- dodoc README HOWTO-Customize-LogWatch
-
- # Do last due to insopts modification.
- insinto /usr/share/logwatch/scripts/logfiles
- insopts -m755
- doins -r scripts/logfiles/*
-}
-
-pkg_postinst() {
- # Migration from /etc/cron.daily/logwatch -> /etc/cron.daily/00-logwatch (bug #100243)
- if [[ -e ${ROOT}/etc/cron.daily/logwatch ]] ; then
- local md5=$(md5sum "${ROOT}"/etc/cron.daily/logwatch)
- [[ ${md5} == "edb003cbc0686ed4cf37db16025635f3" ]] \
- && rm -f "${ROOT}"/etc/cron.daily/logwatch \
- || ewarn "You have two logwatch files in /etc/cron.daily/"
- fi
-
- # Trigger cache dir creation to allow immediate use of logwatch (bug #607668)
- tmpfiles_process ${PN}.conf
-}
diff --git a/sys-apps/logwatch/logwatch-7.5.4.ebuild b/sys-apps/logwatch/logwatch-7.5.4.ebuild
deleted file mode 100644
index 247b3915d881..000000000000
--- a/sys-apps/logwatch/logwatch-7.5.4.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit tmpfiles
-
-PATCHES=()
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.code.sf.net/p/logwatch/git ${PN}"
- inherit git-r3
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
-fi
-
-DESCRIPTION="Analyzes and Reports on system logs"
-HOMEPAGE="https://sourceforge.net/projects/logwatch/"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE=""
-
-DEPEND=""
-RDEPEND="virtual/cron
- virtual/mta
- virtual/mailx
- dev-lang/perl
- dev-perl/Date-Calc
- dev-perl/Date-Manip
- dev-perl/Tie-IxHash
- dev-perl/Sys-CPU
- dev-perl/Sys-MemInfo"
-
-src_install() {
- dodir /usr/share/logwatch/lib
- dodir /usr/share/logwatch/scripts/services
- dodir /usr/share/logwatch/scripts/shared
- dodir /usr/share/logwatch/default.conf/logfiles
- dodir /usr/share/logwatch/default.conf/services
- dodir /usr/share/logwatch/default.conf/html
- keepdir /etc/logwatch
-
- # logwatch.pl requires cache dir (bug #607668)
- newtmpfiles "${FILESDIR}"/logwatch.tmpfile ${PN}.conf
-
- newsbin scripts/logwatch.pl logwatch.pl
-
- exeinto /usr/share/logwatch/lib
- doexe lib/*.pm
-
- exeinto /usr/share/logwatch/scripts/services
- doexe scripts/services/*
-
- exeinto /usr/share/logwatch/scripts/shared
- doexe scripts/shared/*
-
- insinto /usr/share/logwatch/default.conf
- doins conf/logwatch.conf
-
- insinto /usr/share/logwatch/default.conf/logfiles
- doins conf/logfiles/*
-
- insinto /usr/share/logwatch/default.conf/services
- doins conf/services/*
-
- insinto /usr/share/logwatch/default.conf/html
- doins conf/html/*
-
- # Make sure logwatch is run before anything else #100243
- exeinto /etc/cron.daily
- newexe "${FILESDIR}"/logwatch 00-logwatch
-
- doman logwatch.8
- dodoc README HOWTO-Customize-LogWatch
-
- # Do last due to insopts modification.
- insinto /usr/share/logwatch/scripts/logfiles
- insopts -m755
- doins -r scripts/logfiles/*
-}
-
-pkg_postinst() {
- # Migration from /etc/cron.daily/logwatch -> /etc/cron.daily/00-logwatch (bug #100243)
- if [[ -e ${ROOT}/etc/cron.daily/logwatch ]] ; then
- local md5=$(md5sum "${ROOT}"/etc/cron.daily/logwatch)
- [[ ${md5} == "edb003cbc0686ed4cf37db16025635f3" ]] \
- && rm -f "${ROOT}"/etc/cron.daily/logwatch \
- || ewarn "You have two logwatch files in /etc/cron.daily/"
- fi
-
- # Trigger cache dir creation to allow immediate use of logwatch (bug #607668)
- tmpfiles_process ${PN}.conf
-}
diff --git a/sys-apps/logwatch/logwatch-7.9.ebuild b/sys-apps/logwatch/logwatch-7.9.ebuild
new file mode 100644
index 000000000000..22edd4652a28
--- /dev/null
+++ b/sys-apps/logwatch/logwatch-7.9.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit tmpfiles
+
+DESCRIPTION="Analyzes and Reports on system logs"
+HOMEPAGE="https://sourceforge.net/projects/logwatch/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.code.sf.net/p/logwatch/git ${PN}"
+ inherit git-r3
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ppc ppc64 sparc x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="selinux"
+
+RDEPEND="
+ dev-lang/perl
+ dev-perl/Date-Calc
+ dev-perl/Date-Manip
+ dev-perl/HTML-Parser
+ dev-perl/Tie-IxHash
+ dev-perl/Sys-CPU
+ dev-perl/Sys-MemInfo
+ virtual/cron
+ virtual/mta
+ virtual/mailx
+ selinux? ( sec-policy/selinux-logwatch )
+"
+
+src_install() {
+ dodir /usr/share/logwatch/lib
+ dodir /usr/share/logwatch/scripts/services
+ dodir /usr/share/logwatch/scripts/shared
+ dodir /usr/share/logwatch/default.conf/logfiles
+ dodir /usr/share/logwatch/default.conf/services
+ dodir /usr/share/logwatch/default.conf/html
+ keepdir /etc/logwatch
+
+ # logwatch.pl requires cache dir (bug #607668)
+ newtmpfiles "${FILESDIR}"/logwatch.tmpfile ${PN}.conf
+
+ newsbin scripts/logwatch.pl logwatch.pl
+
+ exeinto /usr/share/logwatch/lib
+ doexe lib/*.pm
+
+ exeinto /usr/share/logwatch/scripts/services
+ doexe scripts/services/*
+
+ exeinto /usr/share/logwatch/scripts/shared
+ doexe scripts/shared/*
+
+ insinto /usr/share/logwatch/default.conf
+ doins conf/logwatch.conf
+
+ insinto /usr/share/logwatch/default.conf/logfiles
+ doins conf/logfiles/*
+
+ insinto /usr/share/logwatch/default.conf/services
+ doins conf/services/*
+
+ insinto /usr/share/logwatch/default.conf/html
+ doins conf/html/*
+
+ # Make sure logwatch is run before anything else (bug #100243)
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/logwatch 00-logwatch
+
+ doman logwatch.8
+ dodoc README HOWTO-Customize-LogWatch
+
+ # Do last due to insopts modification.
+ insinto /usr/share/logwatch/scripts/logfiles
+ insopts -m755
+ doins -r scripts/logfiles/*
+}
+
+pkg_postinst() {
+ # Migration from /etc/cron.daily/logwatch -> /etc/cron.daily/00-logwatch (bug #100243)
+ if [[ -e ${ROOT}/etc/cron.daily/logwatch ]] ; then
+ local md5=$(md5sum "${ROOT}"/etc/cron.daily/logwatch)
+ [[ ${md5} == "edb003cbc0686ed4cf37db16025635f3" ]] \
+ && rm -f "${ROOT}"/etc/cron.daily/logwatch \
+ || ewarn "You have two logwatch files in /etc/cron.daily/"
+ fi
+
+ # Trigger cache dir creation to allow immediate use of logwatch (bug #607668)
+ tmpfiles_process ${PN}.conf
+}
diff --git a/sys-apps/logwatch/logwatch-9999.ebuild b/sys-apps/logwatch/logwatch-9999.ebuild
index 247b3915d881..7f77c326c65c 100644
--- a/sys-apps/logwatch/logwatch-9999.ebuild
+++ b/sys-apps/logwatch/logwatch-9999.ebuild
@@ -1,13 +1,14 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
inherit tmpfiles
-PATCHES=()
+DESCRIPTION="Analyzes and Reports on system logs"
+HOMEPAGE="https://sourceforge.net/projects/logwatch/"
-if [[ ${PV} == "9999" ]] ; then
+if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.code.sf.net/p/logwatch/git ${PN}"
inherit git-r3
else
@@ -15,23 +16,23 @@ else
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
fi
-DESCRIPTION="Analyzes and Reports on system logs"
-HOMEPAGE="https://sourceforge.net/projects/logwatch/"
-
LICENSE="MIT"
SLOT="0"
-IUSE=""
+IUSE="selinux"
-DEPEND=""
-RDEPEND="virtual/cron
- virtual/mta
- virtual/mailx
+RDEPEND="
dev-lang/perl
dev-perl/Date-Calc
dev-perl/Date-Manip
+ dev-perl/HTML-Parser
dev-perl/Tie-IxHash
dev-perl/Sys-CPU
- dev-perl/Sys-MemInfo"
+ dev-perl/Sys-MemInfo
+ virtual/cron
+ virtual/mta
+ virtual/mailx
+ selinux? ( sec-policy/selinux-logwatch )
+"
src_install() {
dodir /usr/share/logwatch/lib
@@ -68,7 +69,7 @@ src_install() {
insinto /usr/share/logwatch/default.conf/html
doins conf/html/*
- # Make sure logwatch is run before anything else #100243
+ # Make sure logwatch is run before anything else (bug #100243)
exeinto /etc/cron.daily
newexe "${FILESDIR}"/logwatch 00-logwatch
diff --git a/sys-apps/logwatch/metadata.xml b/sys-apps/logwatch/metadata.xml
index 9371ec6b4a5e..41edb76975dd 100644
--- a/sys-apps/logwatch/metadata.xml
+++ b/sys-apps/logwatch/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/lsadb/metadata.xml b/sys-apps/lsadb/metadata.xml
index 0d70baf208e1..09592c79ae5d 100644
--- a/sys-apps/lsadb/metadata.xml
+++ b/sys-apps/lsadb/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
</pkgmetadata>
diff --git a/sys-apps/lsb-release/Manifest b/sys-apps/lsb-release/Manifest
index 8d236b29ccce..8bae0ae91bd4 100644
--- a/sys-apps/lsb-release/Manifest
+++ b/sys-apps/lsb-release/Manifest
@@ -1 +1,3 @@
DIST lsb-release-1.4.tar.gz 10769 BLAKE2B d6c71d6604481a637f63fae00742ba77421345b36234fcfcae1da98bc1c80a8450bc569c2ea2f4b1c3a852de2fe24413fe397d4a60a0ca94eb70a9626871f4bb SHA512 84f6f8794380463587005043f601b7a40190cd9e3409abff7f5ce7658cf029a14346eff87838296d90307192bdeff68cc00480c5c04814da7acdb3e220640fde
+DIST lsb-release-3.2.tar.gz 16246 BLAKE2B f790b52c403ff42ec1bf787100c6c9715b7bebf3feb1772a6c4caee40b09c121ba7522553d145c478c752b196109747e31b2d8c14764c67c4a7e57fbae06348d SHA512 5ccc2f38c3603b8261310d5f30d8304a95bd6c24fbbf00484609078839a68894b2ba761a7465fc3c22f55dd69d67612d3cc4cb453765e3eea6b9af96834d85fd
+DIST lsb-release-3.3.tar.gz 16364 BLAKE2B 91b53df571ebebae67ea2fc5f1f31a11a42166d4a584f5a236cee2a108e965d02b676c7be175239b616e42bc454bcff86485896191522ce5d0c7744f7178a636 SHA512 123291295000d4ce827c692a9ab5ebe300a61cb1dabf9af8bfffdd5f20363159e61a98670aac37ae087aa3639b4ec7dfdb5528aa8c3520f43225e9eae50270db
diff --git a/sys-apps/lsb-release/lsb-release-1.4-r3.ebuild b/sys-apps/lsb-release/lsb-release-1.4-r3.ebuild
deleted file mode 100644
index 02f6bc5de4cf..000000000000
--- a/sys-apps/lsb-release/lsb-release-1.4-r3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils prefix
-
-DESCRIPTION="LSB version query program"
-HOMEPAGE="https://wiki.linuxfoundation.org/lsb/"
-SRC_URI="mirror://sourceforge/lsb/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-
-# Perl isn't needed at runtime, it is just used to generate the man page.
-DEPEND="dev-lang/perl"
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-os-release.patch # bug 443116
-
- # use POSIX 'printf' instead of bash 'echo -e', bug #482370
- sed -i \
- -e "s:echo -e:printf '%b\\\n':g" \
- -e 's:--long:-l:g' \
- lsb_release || die
-
- hprefixify lsb_release
-}
-
-src_install() {
- emake \
- prefix="${ED}/usr" \
- mandir="${ED}/usr/share/man" \
- install
-
- dodir /etc
- cat > "${ED}/etc/lsb-release" <<- EOF
- DISTRIB_ID="Gentoo"
- EOF
-}
diff --git a/sys-apps/lsb-release/lsb-release-1.4-r4.ebuild b/sys-apps/lsb-release/lsb-release-1.4-r4.ebuild
new file mode 100644
index 000000000000..65f0ea92e476
--- /dev/null
+++ b/sys-apps/lsb-release/lsb-release-1.4-r4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit prefix
+
+DESCRIPTION="LSB version query program"
+HOMEPAGE="https://wiki.linuxfoundation.org/lsb/"
+SRC_URI="mirror://sourceforge/lsb/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+# Perl isn't needed at runtime, it is just used to generate the man page.
+BDEPEND="dev-lang/perl"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-os-release.patch # bug 443116
+)
+
+src_prepare() {
+ default
+
+ # use POSIX 'printf' instead of bash 'echo -e', bug #482370
+ sed -i \
+ -e "s:echo -e:printf '%b\\\n':g" \
+ -e 's:--long:-l:g' \
+ lsb_release || die
+
+ hprefixify lsb_release
+}
+
+src_install() {
+ emake \
+ prefix="${ED}/usr" \
+ mandir="${ED}/usr/share/man" \
+ install
+
+ # installs gz compressed manpage, https://bugs.gentoo.org/729140
+ rm "${ED}/usr/share/man/man1/lsb_release.1.gz" || die
+ gunzip lsb_release.1.gz
+ doman lsb_release.1
+
+ dodir /etc
+ cat > "${ED}/etc/lsb-release" <<- EOF || die
+ DISTRIB_ID="Gentoo"
+ EOF
+}
diff --git a/sys-apps/lsb-release/lsb-release-3.2.ebuild b/sys-apps/lsb-release/lsb-release-3.2.ebuild
new file mode 100644
index 000000000000..2f34ab2f0b36
--- /dev/null
+++ b/sys-apps/lsb-release/lsb-release-3.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit prefix
+
+DESCRIPTION="LSB version query program"
+HOMEPAGE="https://wiki.linuxfoundation.org/lsb/"
+# mirror://sourceforge/lsb/${P}.tar.gz
+SRC_URI="https://github.com/thkukuk/lsb-release_os-release/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}_os-release-${PV}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+# Perl isn't needed at runtime, it is just used to generate the man page.
+BDEPEND="dev-lang/perl"
+
+src_prepare() {
+ default
+
+ # Use POSIX 'printf' instead of bash 'echo -e', bug #482370
+ sed -i \
+ -e "s:echo -e:printf '%b\\\n':g" \
+ -e 's:--long:-l:g' \
+ lsb_release || die
+
+ # TODO: unbundle help2man?
+ hprefixify lsb_release help2man
+}
+
+src_install() {
+ emake prefix="${ED}"/usr install
+
+ dodir /etc
+ cat > "${ED}"/etc/lsb-release <<- EOF || die
+ DISTRIB_ID="Gentoo"
+ EOF
+}
diff --git a/sys-apps/lsb-release/lsb-release-3.3.ebuild b/sys-apps/lsb-release/lsb-release-3.3.ebuild
new file mode 100644
index 000000000000..95e5b3e885b2
--- /dev/null
+++ b/sys-apps/lsb-release/lsb-release-3.3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit prefix
+
+DESCRIPTION="LSB version query program"
+HOMEPAGE="https://wiki.linuxfoundation.org/lsb/"
+# mirror://sourceforge/lsb/${P}.tar.gz
+SRC_URI="https://github.com/thkukuk/lsb-release_os-release/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}_os-release-${PV}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+# Perl isn't needed at runtime, it is just used to generate the man page via
+# bundled sys-apps/help2man.
+BDEPEND="dev-lang/perl"
+
+src_prepare() {
+ default
+
+ # POSIX compat
+ sed -i -e 's:--long:-l:g' lsb_release || die
+
+ # TODO: unbundle help2man?
+ hprefixify lsb_release help2man
+}
+
+src_install() {
+ emake prefix="${ED}"/usr install
+
+ insinto /etc
+ newins - lsb-release <<-EOF
+ DISTRIB_ID="Gentoo"
+ EOF
+}
diff --git a/sys-apps/lsb-release/metadata.xml b/sys-apps/lsb-release/metadata.xml
index 671d7112efd8..2e70c73a3c46 100644
--- a/sys-apps/lsb-release/metadata.xml
+++ b/sys-apps/lsb-release/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -18,5 +18,6 @@
</longdescription>
<upstream>
<remote-id type="sourceforge">lsb</remote-id>
+ <remote-id type="github">thkukuk/lsb-release_os-release</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/lsd/Manifest b/sys-apps/lsd/Manifest
index a09776513282..eae690b6d49c 100644
--- a/sys-apps/lsd/Manifest
+++ b/sys-apps/lsd/Manifest
@@ -1,156 +1,185 @@
-DIST aho-corasick-0.7.10.crate 111039 BLAKE2B 69f984dbe528ece5ce4345bc0f39c122507a88e781d7c2d5c9175d1788aeef8d21e0487c7c449e28fbbdaae8203fe68627d23ac0a58d30dc70befd26ac9af32f SHA512 e8a1cb252015435009883662ca23408f1491d8f01461f3a81082feabeeff72ec61beb4f1f3271fc8a87f1379899ecfc38036ac208dca17889f70ddaca2406a9b
-DIST aho-corasick-0.7.6.crate 108953 BLAKE2B d713366d0783e1ffbe65408e4d38ef9f12276f61043c768265de5d47e446a378306096a70252c9a49a6e7d3b97a09f30405a3d8df6b40dc2dfeb7407ed574c95 SHA512 120aa28e72279f561d7f51657aa0800dd46504cd92f758f848284e5f3695be6f5e24056a66b0f2d971c527277e92ae938e2357ade37b5cbe1c93913a5dc308b1
-DIST ansi_term-0.11.0.crate 17087 BLAKE2B 9bd35c045a01ce4c6c4a5db1b4f15e9412bb97426eec19d4421dffbec633de8d13452c13c1dc1b30998690b78d7ed38311aca700087f13a81f66bd1d5d7300c4 SHA512 a637466a380748f939b3af090b8c0333f35581925bc03f4dda9b3f95d338836403cf5487ae3af9ff68f8245a837f8ab061aabe57a126a6a2c20f2e972c77d1fa
-DIST ansi_term-0.12.1.crate 24838 BLAKE2B f636772c34e2d68cda7b8d3b2b86abda074585a62bd2654812ce92384244655a9197fa66e6939e19a674c0148ca605313d83de262bb18c2339a8a4eb4438a791 SHA512 b840e28b3e7700689a69a39659b1e066560078dd4a58326b91a028915819e7af883399ee53e920db68fd974c58d35bb1ddf8d427af5937d5f696f57c4376b671
-DIST assert_cmd-0.11.1.crate 20524 BLAKE2B 1b9443fbe9bd677f03e4711091390697f5f7db575d02738a7911bcd80d9872922f7ab2c605507f49547b69fb34d150a6043e47aa44027e476e08b1c06cecb8b9 SHA512 146d3088d90bd22aff24ee37598298d45fb6775aa4f7eaf95d4bdb9c2e5cb5c5da31039ffe2a3833866c191de0ffd60ca9ba94757096bc1c24d17fd72f962c55
-DIST assert_cmd-1.0.1.crate 24575 BLAKE2B e204b79da44a27b9c70be8dbf53356714ac994b4e5daced1b4f570c9e6c4a422572e825a54387df25292bd27e9ae11fa57d803bcfe4643382a2f739859dd42fd SHA512 969e1f6ba28edc0d4d25a10390f8e94578562602d303e9a9e402f29655cb9d67edc1040b283e1bc9fb4a88a5817814d88e85b77944204288aabcfb6da69bbdbf
-DIST assert_fs-0.11.3.crate 17719 BLAKE2B fc0f58e1b9fa7e7d4e94df33c46a3a940b8a3b2f14ad70fabf5fcc5642eb0ec0970bfb33b28af41d4de1b2be03f54da9cd7701d1d649e51e5b03042453001415 SHA512 257b03670853d6dc01f01bdf73d356b52b05514b62e199b3021d60f1e4d7f477e1d3ac855714f832566273088679f19227994caed0fb1be0b406844a7e92bd28
-DIST assert_fs-1.0.0.crate 17729 BLAKE2B 5b1b49c86fed4c3939b8bb387350aca6ddbcd2092d57adc2dfa9009046769dc87efc1aa87c9543953fe4af883d3040c4a60134b31b4bacba4372f2fa62150abe SHA512 46fade410848be416e6713a1457291492a58b590149775b479f3921b4408784bb845e04b372b24d1d99baa81c899ddf3c90413bcf6a699acd514b4dbd9d57535
-DIST atty-0.2.11.crate 5916 BLAKE2B e502c23faaa9dd27cc5865b68a721b0403071edb483fca0c745707f4c0ca1b1787b5677b2d8ad7f327b8f5588ba784126ce78496c1db54f7ca4ce0ccea669499 SHA512 9d6417dc1e8abdb4969418525b36c451274fd76769adb57bef9875ef62ef521c50d58626ebc4f96d2bea32cbadb6999fd67653b570293d7253b403b6d0736c79
-DIST atty-0.2.13.crate 4764 BLAKE2B 673eea1d377fc3aca792a3a8bd2a5c058f3041abc76a8760dd6acab7f19fa610f812c57d81a4dbf773675cad3df483904c66e66b45d83393402f747c6db60d89 SHA512 4554ca7dedb4c2e8693e5847ef1fe66161ed4cb2c19156bb03f41ce7e7ea21838369dabaf447a60d1468de8bfbb7087438c12934c4569dde63df074f168569ad
-DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
-DIST autocfg-0.1.4.crate 10937 BLAKE2B 272fc9d216749941cb73d37d5233d1df4bde5abcf9a6e75ed928ee6493e9011922a06551dac1f6b1d0c34dce587c6ce1442ea62e88457c0cecf985e7a3d5e47e SHA512 811b68ea24a836980026abba12598b35359abdff5660e6e9d3cc65e3edbedcd10dffc208900af5d4c21e983e1218b5fb5499117c05ab60b3e4716f0529b231ce
-DIST autocfg-0.1.7.crate 12158 BLAKE2B 4120306f0f7c1cc0cf8d1d994c080cbf42e4b107cb51af910504c8c8d264289654dad23a0c6b9eb28d888157e5a68ef2460c3d38537ae9d5e9bf73b66ffc3015 SHA512 667ca520f2b46140d2f3519b43e5155426a6e7a2130879860eb10b974f84465600077f53abed4c0e6bf2612471f01786bfb3531ea8773d0f50f29d48e05f7925
-DIST autocfg-1.0.0.crate 12870 BLAKE2B 79e495d53298574afd3b292da7c9c363dcb3ea434fd44258efaf3628e95ebfc731f03083f8a1060272a2a3478a6452cdc41539e2dac08465cc6e6283844bf260 SHA512 451fc63148792ba1952b884170e3481359b01bacca5ec0456f43ca58f8e092b8f81c9764f8b00d4104059ff608089be5858220ee868127c064cc890c767ec3a3
-DIST bitflags-1.0.4.crate 15282 BLAKE2B 63f5feb47460c344983cef8822804b1c4ac2f3adfffcf206df2b05fafb9c7bfd73986721cde46705a3e4a0dc72a40683e4d369f2339adfc1b55208bad1766875 SHA512 81850d2be62eabb8486024ab263da67e6eb8ebfa732cac3a5d46a9186c564b2065cba15fa3da468bbd26eaf2b67038680e5de19d5dd99d78f60dae8a1776c8de
-DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
-DIST bstr-0.2.12.crate 344435 BLAKE2B b55a55be4875d9aefcff0091be82d80a19c1c92d5d6e17b751dd41bebd37f6a5f72d884fa8a70e829905baf3526ce4d854b162d10d894573dd2801ed030460e9 SHA512 2d14ac85274814bb29439acf67c3aaf84ac32ad361dd6d2cbca58bf571c968f594eeb1443a632b625296929b84047652fc60ec39983c110737ba1950d88bce89
-DIST bstr-0.2.8.crate 337654 BLAKE2B 50c5a639ec2912bd20be83a8b017e60c7b5f75f6cbe93839f8f46a4815537e47261593d17380a38aae45445d611c9fb28135e0424184958edfcc1c06e941e4aa SHA512 9e8786b68c03f059e4182046e7650b6f90431927c26c49fcdd4af3cb464092108fb2f64fdc2da1fe1d1121705ac8a21c68485b0517f3dd32040aab754f88944d
-DIST c2-chacha-0.2.3.crate 13336 BLAKE2B 0b548907ce4c9ee502ec96307ca003d168e8bcf9007ec667661d158f33de36fc2e832cb3c36cadc2523f6ba8b9aeff4dcb16e7f95a9a34ae02e8bd5d00f65cf2 SHA512 302498f75d1befdb8bf8b61d0eff2762f0e86000c3909d819a377be2fec72e830bfb4530e24059906b499cef17ab56229f5627fb998ad9ba34a7c6c0de748538
-DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
-DIST cfg-if-0.1.9.crate 7353 BLAKE2B 5556f3fdbf49708e6e4f08f2c536ee093b5f04dcf1fe4f68355189d129c416c338820143b5cf5f215323b38175ee0fd34eef4b2ff58179b190a63a9728fe2839 SHA512 45f7322217d291b3905ffdc45cadd5a7a7baf440f9a82a5b5596192ed0ac54353a3ecae0326d5807aae99bc4d79e0406d71bd65745ec8d9f8815a7c9436d648c
-DIST chrono-0.4.11.crate 139811 BLAKE2B d327f6be0a890ed74f2a2330777dcefbcf87e0291e47ef9c63aea46050f38c89a9b2e7a4716ac92202fab66aedc98ae81e090f1921a1aa51fa7ba18cb1cf24a9 SHA512 bedb698ae2994fc6fcf858b86a122cdaccd150996eb3e4313f876599cfa2180c2f687cca78ba30860365e04b75911fcdb19b5930fc155d1c17f06ec8197d3da9
-DIST chrono-0.4.6.crate 133108 BLAKE2B ac9573577f4ea6516007df2f9948f9df4e8170e53119ba7cf1e55592bc594bd1cbf05759ce2baf9b6397b68a72aa9e0518ab0b7a9c63bd043ee4a7a8b81e36b4 SHA512 c869cab6da906d50531476c892510042eeccb3daf790ef13b3014121c805b3f8e23c7a6ffccb3bb11d15a1615e997df4180e41f0140a2c327cc816b94f28976d
-DIST chrono-0.4.9.crate 133671 BLAKE2B b11f0b9d5ea182974ad1a8f176d0fd100479bdcc0e99b32da055393c0ce617a2d006545b0acb145a9cbf838d06bebe9650ab21c50246caeac9cf93fdcdcc0cd8 SHA512 d68fdcc255a2b967ea3e18d30dba7bba76929fcfa216c2081426b4fd3846bed660bcec8f92eeccb3de88f6e08aae9ade1c5e5d14f36d0853fe9a4499bcd5a57f
-DIST chrono-humanize-0.0.11.crate 11546 BLAKE2B dc0627852f00daa020f529fc37d5caeefe4c4847c1864c51fa2538769c9c8cea2c45176910f594f7e208c8bca8d1479ceac27c41fe393a02187572d508836bb6 SHA512 47ca23567abf41975007025bdbb2b30ae9a59d8381069408716ff9d2c60f77bcd8c9aadd5cb672902d73cb85b3123b7818c20c8823a27f3a99cecd50cae47cd3
-DIST clap-2.32.0.crate 196073 BLAKE2B c262241a3ad1d0f944467f4ea9884ca3dc05b5e05656fd7b73700e0daeec035c07a5d06316cc1273e37f74f2c00429b0ee99da298804dc4deff9a252ca56ce07 SHA512 ee2a66cec0d867d73fce35c055bcac77cc3ea9537b355be04be3ee17ddabefebfe3649cbdfc30ea356c54cf9f066369540eac4f5dc67e60cdadc9c66be014ef0
-DIST clap-2.33.0.crate 196458 BLAKE2B 3bb62d817afc77b421a6282746b9b61367d224de6b614c7ed66bde452ce1046728077dab3368a46635b5c74d82ba3196586d87c0201478ce5b89638910dadb1a SHA512 f1075031414d48e4340bfe308904a95a31b72460724773c52a0bc8c004e625a04c904a39fc5420cb8c26a633321f9b5f4f69019c7aae5ed89900b63ed8c21a91
-DIST cloudabi-0.0.3.crate 22156 BLAKE2B e12054fd474754031f8f5038d5e2829e1586db974d38230cfd8774db591a58dfdcaea9fb61fc0b35366889d348b2c73ceaabbb462f1abeeffeaab167013c986f SHA512 691ed793e9b35ba382f03897f4c0efc31a528394862a27b814ba8993ad30bbe0ebc9808484baf580e8b69d9c13ad1612776a1efd0f6981545b420139ff83592c
-DIST crossbeam-channel-0.3.9.crate 86771 BLAKE2B d0898ecfa5aaccd03ed714b657aee7a3279f4242516c2943073e75d23f23437f34bf63b465bdfef6567030c998e7b3c6bd4f5fe2e0ee4b50a03d8a15396a2090 SHA512 4cc876bab2bd8874cee4b96bc490e77778f10e99ab624ed7a8b73be94b59a40bcb340fdb81a1d14242f6a795557c9f8bcdcf17d6bf6829aff85c7c1e8bf00919
-DIST crossbeam-channel-0.4.2.crate 87419 BLAKE2B 721013134069abc8f01ae5e98e1e6f10981d4892881339d3bf87f1bcb58b362348dad92e702a6b2367075dd41d860d62cca0ac8b3691954c454ca70bb5158000 SHA512 19b0ed2b5ed0fb1fe7c809e08483152fc36cf46f465c8571ca0fb9ebb1cb4b2b8f5860a303c932f336f434dafa9776ce6026ea2e64457147fb540766dc6da2ce
-DIST crossbeam-utils-0.6.6.crate 32836 BLAKE2B 48290733712549c46bcf99641ddff571cf2fff72b2a70e86a554899987fd71a61a8ab6a15c75e468164755fcc3218a1db54a4fa406f766f9a9f03bcb3d9bcd02 SHA512 771ac1a55a043600e7d8b720f9b5a32da2ec09efaa4dec4202f7b78a505eb391a842b7abc91516ccd287c3207c634b342b0bc8ebb3c0c7a0d73b7fb29badc9f5
-DIST crossbeam-utils-0.7.2.crate 34338 BLAKE2B 3cb287c7741c4d5b0551331634a75b066f07fb4b55fa2b347370506467a05923254b1c4dca667de59ed91ff91f5496b37f40f13d3e9885a1b4f639f5b6748433 SHA512 e375f24c007bcf660d9e297527ed938f678a55696ca7b555b96fee7e0b94c31db2d3f4355675aa0baeadba68b9755ec92dc3a09a37b5db48e3723b926fd4a8f3
-DIST difference-2.0.0.crate 147616 BLAKE2B d720202ba8d73fb9b3cc6a982208e4fbe22eda4b3e296f4238a7b2d8ed0339827ca5a3d93a983396901614a9eabe36a0baf55ecc5f55075ebf7fa1e4c0699eb2 SHA512 cc9956757770ecf237d8f46abef25ce219193c877be6cf83163e87c494956cca3202951ac01bba0728e7202fcde2261009c1b4599f389cf979858f25936a5482
+DIST aho-corasick-1.1.2.crate 183136 BLAKE2B 2d4306d8968061b9f7e50190be6a92b3f668169ba1b9f9691de08a57c96185f7a4288d20c64cb8488a260eb18d3ed4b0e8358b0cca47aa44759b2e448049cbaa SHA512 61ef5092673ab5a60bec4e92df28a91fe6171ba59d5829ffe41fc55aff3bfb755533a4ad53dc7bf827a0b789fcce593b17e69d1fcfb3694f06ed3b1bd535d40c
+DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077
+DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
+DIST anstream-0.3.2.crate 19504 BLAKE2B 617b846c244ea4ccd6c7835a382afe85e14c245ea56b678f57ee12e9c7bcc1c0c3db9620eb4d16bf35e17eca38968bf04420b758f482ac5594670e6292c1fbb9 SHA512 b896e5208a2ee6a3c98bf3bb9ac1c52792de114dfa5709dadcac6183ea19ea63230dffd3217e571354a71d69b8eafbb0189e05f8f77f50922020de54e3aeecc8
+DIST anstyle-1.0.6.crate 14604 BLAKE2B 0716d0dbb62bf05c63c2bfe1c689896660073a423d26965ce2570f11e1925752a61209d78c2f2fe65ec4eb64ea4ffbb39669e789c0ba5d1b71e75de929153b20 SHA512 dc0e505465be54799b9faad70d0c6f7f0dcf9f5e1aaa43177b826c85dae626b054910244da0499862f066f6723a1560ad12100aec523f28c6198f1ea0d1b78fa
+DIST anstyle-parse-0.2.3.crate 24699 BLAKE2B 17e8638187ccc1ca0174a8cec7f7daeee7e0d8b8c430f7e74f9b10d8de4b49fd1c6facfdafde305b7a3e55b1ebf2b4e8ec4975a0cce691514ddae9eb5b5e711e SHA512 4a6d0f706d75c9b3c5144f34efdef3ef8fcd075962c594a23a6209ed56112563a34b3c01e05a08a0868d59204272d06211b2585cb9d06ce075ea875bedb2f399
+DIST anstyle-query-1.0.2.crate 8739 BLAKE2B c06643e8616f1f4469a32f9c0512941ce53ac5db9ebfa7a5b2f19233040cd4438dd2ee69ab89ecbc1c239e92b674dea9df15ed673408c6f3fe21787cc17d76f3 SHA512 f409b624cbeecf58fd87c47f85be28cae1fe48f65d692195fb80854c514e38c40d0e0ffad3a5b388a3929c47bd2060302ebb635aa98dc57329f3a5ed7be3e2dc
+DIST anstyle-wincon-1.0.2.crate 11712 BLAKE2B 68215a76e44cbe0e69c4111eaf7cd818d0e743883aec01f99f6d96e863d8d36bea67ed112db715a3a0daa348535f3db50547d8a0ab5e4572975d68937c49aa86 SHA512 8bda8b79785d201cda90c8d3544f5cead955c25749a4b828bc897e4bb132acbbcc50ac90ee07323ae3077af3e4c613264871366d70e5211200d119f4ddb63b0b
+DIST assert_cmd-2.0.14.crate 24591 BLAKE2B 2a25812480770ce8549700b6c5afd0e3fc230c280c66b5b61480a2db0dc6c5a95b6a564ca7eb6024fa43498168d8bd3511a6cd659498540bf1a5a3bdbc2a3fc8 SHA512 112c3f933a013715c0dfcf29889ec023c88097a70fe212a7d98d0a5272d5f6da87df9353da006483830a0ac3c42a12e12d8fabeb90eb62453982edbc75215613
+DIST assert_fs-1.1.1.crate 18090 BLAKE2B 27177447fa5d0e5670142cd3ff8c284518615a765bdf0766592cdb0799d9acb29af3443733874300879dc46fcd1af9952df39add9cf9fe52eacf4af8588b0546 SHA512 e1f1772a17f85c4f46d9dac86a8564efe86278049e3f4a40b1dfb874b701fac01726a78d5f38f6812d415666b466de92b5e191a477441c479744c36a3d230130
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.2.crate 42602 BLAKE2B 768d4ca52aca73d8acf2f494a66957ed2603eefd5a04332ed0880d230c2cc6ef3bfdc0792fa6f288a0eb132913dbb256793e580bc34f4a40e8200e1fbafe97a9 SHA512 ef4c20e6e78a2ecee97e17189b7100a504d8176c7c15d7f17d62157a116d66f83f8b2bba472a4acf02cd3edbd94b20a7047af918c3f3b371e2e04f7474be0214
+DIST bstr-1.9.1.crate 380305 BLAKE2B 52b45bd48874d052636c6b451cc36d8b012808ea5193e0188e5edd09f81d21b8306926cfebb405ad0650ec9aa710f609bacaa773bf854b21f4803dc38bb2eca7 SHA512 67e9f76719310de60f46adf3c39768b4dc078d4c32dc6bdcec1a94cd9f630c5238e427ed84cd6ec25a44f54e84adeb795a0e92060a5372d9fb9ad9f0914e3172
+DIST bumpalo-3.15.4.crate 85028 BLAKE2B 9ec98f430fef4e9b59e61d413b3703430f91bc818f3294aea7416cf8a35e0606357bb5b4d1edebe590f07fb614f832da16016c8530ff39ca853aff1d1369cc60 SHA512 59ca9f8e6b74bdd95b9b4ad1bff3bf4be46dacedeb1eea6196a65dfb0ca7b60e86ab6c25d0f91dae3caecd17ab73c48f953be0bc24bdc0ceaaf4c1726b9ffdc8
+DIST cc-1.0.90.crate 73954 BLAKE2B 840417889519dec96a745c49ecbc8b0d3da9b37a4b6b0165ee8983c07b8150061690b34409381365ae4c70c5780923d19cddce29d5fbc370eb6b6fff29121436 SHA512 349f3c3f8208632f8754cc05d70976eb14f3f13a14d59413994c656efc36bb32b7310adc7d5f3a6745f15e0aaa88334644c9aba8d29fb961215d74bec605307e
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST chrono-0.4.35.crate 234267 BLAKE2B 92552b9c8fb40160de9ee62ed8c5bea12bf8bae393caf91c1c64596d6b2efd09dce94355fb757ed46eaf4a13d27ee3ebb43af91e2d8c26df1f9a9f429869f319 SHA512 aed8bc3298c8f8dd8146c6a919610b6dda52c038a28b56c837a21590e41fda605cd466dc1b85e407f365e116d741cb82afbeff5d29f95f3f5bce4a62abf80812
+DIST chrono-humanize-0.2.3.crate 15411 BLAKE2B d271f5f34e27edd1ffc10d655f50c47ed1871c3553dd40dc10c5de6fba8fdd2186fc65bf4d229c558314e330bdfada73c663f01e0fe1a9c73fab964f60aff919 SHA512 cb379e678b97749cb6fb5d6aaa1878ae2b106cfd6850ba5ff909b4f22dec67c70d3f738c05980ac3ab691fb959541ceb6f43068f0786c21b2ad1933e5047469b
+DIST clap-4.3.24.crate 55026 BLAKE2B c49987221905f7a39d6628fd755524b2395130f0b55f984067238fe73ee7e71faf2532e990198ece793ca8aa03043108b638a618c30ff8c0a3e10b68a3f8d0e7 SHA512 4c45cce4ade8058e6e7131ebc7754da5974e5965128ef5be1a6d327e0ac5f7151ab6a0494024d89404e1743efbb8891de76322d3e44abff76cf2123fcb4534f7
+DIST clap_builder-4.3.24.crate 162489 BLAKE2B befbbc2f379d8b6bfe538cf86a0f27927a4f9ed73e7224df980241c2ad6acbf79a56cab74b3f337d09ce26a5b0c9e9f60226ecce58b6b2ae0dcbdd49a3df6ccc SHA512 e81d73bd3bef181c945856bd2402ec52a100d38ffc223bf485186c4618076d38c277dd85b21e2391471de463dbe3f2fcdf59e115576be8dbef330d888fdc05e9
+DIST clap_complete-4.5.1.crate 37823 BLAKE2B 0cf64989041e0773ee0d4ea767dc781d9cfaa68c3edfbf2b04874f24064aab762223b50b5fb511a09583191fddf03f5bc7afc443c213871eb24f94695fcfe004 SHA512 c815e6f8fe190b0cfab85e739973b8a40fb23586fd329f96cc21a5ecfa9108ad5bb4a5a6cc5e00983e704d4272c87433b426f582ee44dcc9fc59d9a7784f9334
+DIST clap_derive-4.3.12.crate 29052 BLAKE2B 501fb22eddca5b21456bd9911ad1f90ee5d5c918eedd08e2615d22ce58bb0fa5dd626b51a734f20b78411b9a4492ae63629131e0c2e1bd0f3eee21e5da3fb37f SHA512 a58e948fddf45321f0fcfe9d9afbeff42849da472fc4e4b15c31f46ffe55a0dba34d2c1d14e342530c1e4080c43de790595e4f3dca06cbb6a8a60f9e3cab3abc
+DIST clap_lex-0.5.1.crate 11793 BLAKE2B 8e3d2dc120401fdd0cf0bf069119c8b7eafa13e5f682c56499062fc09acc05f443caafa6fca791ea53e693a83de69e98fd0488726a4170db037c37118ce0edf1 SHA512 ea5e49e9a8536093f7de89be30add7c3d880b232b0ce393b0429fd4402db2518036998689817bdfd472b6400224fd3c42fec1b5f8538dc433c31dadeb6281e80
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST core-foundation-sys-0.8.6.crate 37629 BLAKE2B 683d5a84b6a3816317f87359532a8339f08bb4043f1d70a8588636eb5dbe6ebb3843e2a12d9a7e5fd1637a912c52a5aefbb8d44796330b09593e7adefd3babd8 SHA512 24a8958cb16b081862a9000affb0147b8b3be1a664b834c3dbddbff03e709de3f4060ff4800e5a35453f4392ccf33168e8b864be71b17be38cb264a39b915100
+DIST crossbeam-deque-0.8.5.crate 21726 BLAKE2B d97b35e8e8858deaa7fa9a836e836d02914aad29e5c34ab121f52ed65e95213cb2574df82273277365889ea771f04eb40bb2439347c259979f1dd6d5e9853bcf SHA512 0f0c9745763ab156136227cf1415de514952a3f8282ffe413cc249f9f4b345b029940e6a6c87b3be8331a7c783655a35b89c7a2547360ea5ae10aa64ba7ae864
+DIST crossbeam-epoch-0.9.18.crate 46875 BLAKE2B 200c256cad6011a3a14c4664bea6b150fce72d561c4fffc387fa561b08c0480e8756bf51c14874c5fb19f427424547f72d2cd7dd6f56fb8b6666a85f8d52bfd1 SHA512 0a8a199b9d77f4e28e91fe0a0cbff7e0dec58cac283631fd972477fa912d2f6ddfddaed2c695e4978b01cb5440b702822af6333e7c3dfbcb9a2c2086999516b2
+DIST crossbeam-utils-0.8.19.crate 42328 BLAKE2B b2846f569555818fe7a3ef4aa29f68c638f933ee0251713c2c92624bee5f8013def5527027022963f572815991abb98d5e68d0fa00f478b2762133f84ffc84c0 SHA512 6e742fbb0d2a6371db87e81f8ac583259530a288237d0e8347394581c60004703a822318ec945936c410bb44001b115d8d986bb264e5b2d8091bb63a8edd93a9
+DIST crossterm-0.27.0.crate 125311 BLAKE2B 93724dddcfcce9249db721213985fbd9b30eeabf0e8c1c8626744eae3a15f181cc2bb871a77fdefdb2b1a7139453b1c81081c6d82a62233f3574ccadcef18686 SHA512 b7b2b7d8affd845902e0dfa06edbcba9c7794e0839895998f39ea1b118de5251fb87c6b5de27e85c490a436b04943ff51d609cecb780674c3768c12ec401d2eb
+DIST crossterm_winapi-0.9.1.crate 16027 BLAKE2B ea63abf751aeab203f326e77260cfbd1de286be26acf714a083ae1262b0cc2a35b5cb6d0bd54f45b33c1942eb22f916141c5870aab34149fdb30faccf4d4642e SHA512 48eee242f477f43b69c00e3a5d4d255de2ce1774f6e73d869c5472b35d85af0b63f3a607097da8ace437b1e52a524ded4106767b83d4ec53c30c2e37ac4b46a7
+DIST dashmap-5.5.3.crate 24061 BLAKE2B 2bdd62f674e90007a81b76419dd5df1b58c3d9b80bed4324d9e0298355cd66706794c7187c74bd9a6ce119d81ba9400c47aa2729ec923979b0bc081329051e71 SHA512 15079a921d768224defebdf8d5339257c9e94a46d115b37ddfca8eb83718b2448555a8982bcf0381a915d292aff9d271a89d3398d2ae2f396dd581cc6883963a
+DIST difflib-0.4.0.crate 7638 BLAKE2B 57c703de0d467c997bcbedc4d6577569b3d72c612d3ccd929025a98f4bf8f72f2a0d43f3cd3bc616676c2569aed176b3c1362cfa868a4bb1197e05fe4dbce32f SHA512 fcb57859424fea6958a4407061c421599fbca111357b1fe72faa65d8fb0b74425c993a24484e8414f475fa146cd8368c4f82e1ceb4e8dd9f95741149345b37a9
+DIST dirs-5.0.1.crate 12255 BLAKE2B eadd38e85211ed5aee7fab964e90342273320644c36262aa7b436e493512851a4751a09d22aa8bae0495f4b22df6e7395d13715ca8b8c6196107b1be03af9328 SHA512 cfc329518e85a25c296521b9aeb6e5d5f60b4525aa786ebfa8b9f198446a1ff5892160d1bb4790d7f3fc4a0abdb5921b2e4896e271a3fc3a3225897313b77bd1
+DIST dirs-sys-0.4.1.crate 10719 BLAKE2B 30334f2192698d7d03bd4e8bc8a682482da7d13baacb8547a132f55019d3727ac35579926ba4367fe0a5b7fa917945abc03e010cb7363683753c87440581df42 SHA512 53c7c8bc76d7211d08a0e6b25caaed12eeb7283cb4b352c12311db3c796794330943259a08e48ff9d3a280917920a088e5aede32677a4b2f9f819c2dca6adb9a
DIST doc-comment-0.3.3.crate 4123 BLAKE2B a82d1c1a7a90af6e111b5e684a1298d7eac5fd8e4bf7d5baf6c7403d26b609958716d57e51122fe7ad7626fe00a2d824dcfef3cc2fd7679fdb7b5099603de1cd SHA512 e98ff9646a3612bd41bb6f278e7b6e9a0c58747f8b82524da814cf51b7f06c76ad4d65b502ac5740e818744abb295f78f15f8262d0b50ced1523f6d1a26939ba
-DIST escargot-0.4.0.crate 17410 BLAKE2B bfed9c7ac31903c23342d6e7d438ba509f7e4dddf2f4dbb7b6110b0af0e4d83eb49d989ee8dead0758f22aa4de7eb4d7ce4401308c8ccd73db0fcb28482ecf43 SHA512 0b1b62b2a34c8d180f9312b3fb8fd788390af2231e0cd28acbea8ef6847e9c654361cc3c244aa70a4ab98b726f74ea1e7a45312a4b6b225cf767aaf451475df3
-DIST float-cmp-0.4.0.crate 8774 BLAKE2B d8c4854b7147e938565d68e8f4890f0a0c25a886e78a2f61dc7fff595488e3a2655b2f942586546466a10087a0bc415b18acd41dd828c26427adb655c1fbedb8 SHA512 62aa5623affe11bc65f3153f8d0b923cce82ad6ce38dafb25ed30fd9d2d239fcd09baa10f0f4f9a58ea1a84b12688ce43e48c7e57c9751e940d32e9719c54a63
-DIST float-cmp-0.6.0.crate 9498 BLAKE2B 6b97561d238db033718674e9651871196c28b6a888576f14fdba1b8aefb68ce2e835355e67a58de881d06f1eaa85d204a2f9342edf45ee75cf286ca8ba4813fe SHA512 5c0adc79a64e3597ac905e9afed2394c2b811968a197f197d30a7ca0f135539bbce1c13cf9d110bc6a2616e45a6ef941d9e776033c5c2eb678d6a4c9caf7a6b1
-DIST fnv-1.0.6.crate 11131 BLAKE2B 220cf5463749b21e1560419ab9b1f235de08dd548c4a9a7fa6190d9516ce7db884f877b67174ee50b66b22be80d3be73ccafca80e06e94e0fa6e96fbb94475f6 SHA512 f1356b3da25f76cb3ccb4336ff54d4967f1dc7523eae6cba21a4349b8ce563516f6a2aa10d626cd5bb6046b55ac2f246e61e4e526a03fad5e78d0ea174841844
-DIST fuchsia-cprng-0.1.1.crate 2950 BLAKE2B 8519407ab5d1f04d03cc946a07050db4dd7bc70e03894e35b9e66910a3be11224084a86ba45103fdec845e94b7ba4defbd7c5217b035a0796c0c4a94b9562cd7 SHA512 ea9f5beb0dfcb023c22cfc2b37ce52dfcf3a2cbbed0f79ffffc332878858386805c65dce8469a431002367562d857a6c064e075688540c27fcb4056a110059d2
-DIST getrandom-0.1.12.crate 23809 BLAKE2B 9669147c455bd03bd15f304eb7019b218cbc482af850ac3cb4378327de5afabd50826a686d51b00437d740ac4e3a0bfc761c54ed295806ac8b77ae6848742346 SHA512 0577f21f0ff01154453da92dd125c3bdea12a2bb2e7f5581add4306e28dfc448a0c084e9e64a0ef1da7baf8415965ea4ee32a5ef38d5af8ce4c6addab3cb0518
-DIST getrandom-0.1.14.crate 24698 BLAKE2B 8139227951eb65cc2bb7bba29291c0e8ff0b8d9a8e2d7eabb01682d1683c989c44b6195952ec7d087c338538c1d6858c45514822625266e0996829e8c50f3d17 SHA512 b5cb78ae81f31fffd7d720f9ea2b5917b4eac103711faf656a3a3fdd24ae5a2e671016d39309cdd11f902de919187311401dd8fe9e6ed68c29b83987de77c957
-DIST glob-0.2.11.crate 18065 BLAKE2B 8531890ce378023f0119baccd5c556f297128d3f09c07d320d5cdc3c90032447f2e5a4f2fad0097bd3c6faf93b83256b387d232b3c9f9d3c40e54c48245321eb SHA512 91a1a751bc4ed3b13154aa056180f2b8123c33627cbe972bdd7986fb0b6f1ef90e59abd4128d6e4db5e69523d757440c7df9b9721a61f5ea5a091ffc9843e10e
-DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
-DIST globset-0.4.4.crate 22369 BLAKE2B 7265cf19e3f7a8e710be40760098242fe156ddfa974a59aa29018c2c317876049dec21e70f8b416ea9a0d16c33754118c7f070dd0e50de70cf8cc10e484a6030 SHA512 b9da7f4d67d4269b0b3564d65904c9cca0db7df6d33255f6022eee614f0ad03f3dc6f9e52e52fca7461308d9f01dac1f3588baf87aef735c266561b1119f9985
-DIST globset-0.4.5.crate 22830 BLAKE2B e4e1c4924577cc8ad14f3c76e49821b2f6050395e7673cdf4d118e7025e59e6df1be807762a484ee80739121b14bee8833c10b52ba69a13537ff9919f1bd2e3f SHA512 8fca9a19953370aa5d13b876a254f71ad6ecf0df218d8f5598ff2328eec9676be56b3a44d898dd031c8d4328bda939ee198f9b8dc7e03b45a1609b6f693a9088
-DIST globwalk-0.5.0.crate 9378 BLAKE2B 6a722371787719a39d68d28ee00b0cd751751b31cc4f5ed9831dddab34be29628f113b721056787510102e12082407321b2994230fb605782f0f9a873dcf0609 SHA512 48f787ebdab67154e4a08fbce5da2d26b4c3cb89a2c70ec6306c0cd4d2c53154991ae5b78cd01d1f9cfaf4ac5de0db85bef049ddf4d8f23442465dc09f5b99bc
-DIST globwalk-0.7.3.crate 12714 BLAKE2B ec9d0036c2556010111edd645494be456664e4f578eda4e4ee20a94e42e017ed16cbbb8db4c80449bdcc5a79d00ea361a2aa59d030de13e409431312f536ce57 SHA512 99b3844e8a79364e27e98e93e1a868eb7842a7ad1ba58e67be52c794c0ba999714b4cc1227a03499ebf0b09fdec1ab65e1b22806cb412c4d1abe3da6fb77b97a
-DIST hermit-abi-0.1.10.crate 9127 BLAKE2B 59582bd4f7ec1dc38b3df7df0ce77c6161a24666df6d913037f310bb159928b715d338e6938af677b0520c7185f839e04472915e18dc9eefc1775bd293c6ea6b SHA512 daae9d78f2657b4d7754b1f95144be8c23c4b607058e53fd2f5d81d5fb13ba7c55dfd9839765ea90141277e0844120110708ec4913d224dd29de957009d65194
-DIST ignore-0.4.10.crate 49022 BLAKE2B 4e1fef531f800bf95bf1a601cb8f64d93ed46623217392368cd1f59fe6e353dae8e8e6d2a017c5b3bc89acf2a964eb682d30803f2d4ac3744935c4567d2675d1 SHA512 ef4b3f58bbdc3b5317a14244494ba9cad8e3d062f0c8e137dd2d33572dc8a06b20f59860aabafccb729dc682134aa4e2bdaea8c07b351aa73a8ebb00e361ceeb
-DIST ignore-0.4.14.crate 51922 BLAKE2B d93eeaf945fa5165461979e2f54969b9e2ccf2f4986bbe465fba8a1f0f750ce66e82c1cc48d526e2115c8ed302daf37aa368503bd56d627ebdc9609a3136576d SHA512 eea97e9a80c9ae67b2f8e970e6d4362e8b2ed2067b6c94f8de51f851133db5e782fa0cedca835d342bc66af4ede3716a4ad97c9e0129bd5b78f8f6aacbfe23c6
-DIST itoa-0.4.4.crate 11147 BLAKE2B bb6f1caf1e58dc313bd3cfa2cf81252cb2ebc15e1f4c9adfcdedf46c5fa79811d5b0cbd58f1e91d1f62bf85d7b941b0dba535814fb43b5b70a38db791b45717c SHA512 f5e04bd908457e7592243ce64a99c5283428b767f4cc17d77946770411b06fccb0250625263c3e84a02a018ea7e8a0e4216e1929a71988bab8e1dbf603d3801d
-DIST kernel32-sys-0.2.2.crate 24537 BLAKE2B dfc4a1e31d3ec9e2ac62b890839919fb7fed1444070c1dcd75bb75acfb53556d6cf2eddf5a6639e7852a3df2a0cc715c5ce1d3fc898ef16a1687020d98f715bc SHA512 682bc7c629aefd035966a2873518fd60719121cca7d63d89d6c97ff5306f24d8b5055a3c91b4eedaec22b1d5dd3fb8b48ff7341a05bbd72d86e06c422dab473b
+DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
+DIST errno-0.3.8.crate 10645 BLAKE2B 4a7af10845f11b3d8f177a75a692be468e8ef0ee53fb84a4d212335f1499456b6739a59af260894b5c3853d3bf21ef3490d1e3a613305561203ca334a636c3b3 SHA512 29753c421c6f929760cd7565f8171696e4f70e677654a7507253f4fc495edbcf214ace27be46bdfe5c1a0d782f4b688f591476e56f4a1096471cb353c643328d
+DIST fastrand-2.0.1.crate 14664 BLAKE2B 7a5812153500170dcc53ca8d66384fef46eeb5a8f970be43863f22f82bf427672d07cb053f4e04b0fea358ca89178399871235680f57223b8561c07b8d21cf13 SHA512 79a1e1b3f39264f037def236afbd87b732f5e0a2154b1d9e721b3c7990c52be45138320e2571fe628f482e0da7e3cf867abb745e3c277b19015fc031fd4410d9
+DIST float-cmp-0.9.0.crate 10102 BLAKE2B 46bce5f7e838a947bbbdd22b085435e795b67fd23479780f65bf1586a70e7a35f04f9af086be98bff24e2583eeac7c9688727a2ddbd1ce978526dc01abf67dfd SHA512 f8dad12ecf8a278769054fd78794999dae8dedbcfde5e77bdf6cea12fdeaadeeb2f1f3ca62df9aadc1bc3f61457236c4854d6d6923ad6d03ae7f23af600572e8
+DIST form_urlencoded-1.2.1.crate 8969 BLAKE2B 383d3a197b73fba199220b7708e16d770591ac16725faf4efc1a8c230c569c381870d4a11b8fba623e761e68f9d318630b22101d461e67dd26c67e13a73358a1 SHA512 c65104e2dc08fad572bb31f981700fd43dd29fcff42b01c7ccdbd3d4c23dec12360aed3f1b5fc4766fee386d418a65349b2941b8735f788cb0d35d631a6a8dd1
+DIST futures-0.3.30.crate 53828 BLAKE2B 4e595639500f7147ceb994359ef1656ed096ea679409a5721c05ff84ba439fe4e82563a7cf8dca9aed4cd16b03e89ba1385b0a34feed9d4923871225e131b91e SHA512 98fc67bf1047609c8bb0763c00ab9cb39b6a6d0cb7d993bce4966ddc2492a6578b789e98095981b207ddd73ac4b1dfcd5224b352a0e970eed347537c6fbea43e
+DIST futures-channel-0.3.30.crate 31736 BLAKE2B 57461dbb723fd53daa07b2fe6164125508cc3901e0138d2a60da5c814ade415a3611baa45c71487f1853812282ef358c132785ff40c630408e8544d57eee3483 SHA512 689531748821529c528772a6dd0f27362078ff5803d2e0b431ee5a0ecf8787b5a15262d65d52f48486ded46b88f7a9c477ad95cc2c5a3e8f5f9b9f53f367832c
+DIST futures-core-0.3.30.crate 14071 BLAKE2B 76a9fa5aedd0d4ae8dd9db9639839b6b342125759c1b9f9bbf58aacb4ecca316ff1f24ff8f3c15f559ffbf974e4c2cd02a5418cb4c4d7612dac8449c8234eeb8 SHA512 3c7259ddacbe02e47a84178b75e5f13523bd0c8f8bc0b2375f7ecca60b7075695ee0a5cc4e1c1de26665cf250271173be803661e2f2f53e2a3b96380a8efe7c4
+DIST futures-executor-0.3.30.crate 17744 BLAKE2B 927abec40eab31251409149179baa95a8d025f9cdb848afa83f95439c4768abbf6da8e2163291a086ea0b83b0b650d1e19cb8e15f70369b70efdc70eb3121f6b SHA512 fa65c038e5eeee695b2673cd65cf7529713bef47da373290595b554bc287267ee5cd015ddeda5a22169cc8828717987364584a91a69685cdbfc0fc779abd764f
+DIST futures-io-0.3.30.crate 8910 BLAKE2B c9af4290f45a9fd0839e107fbdfa4abff4f9077ff45b61054670419076f1c4508d7d560d4d86f8cd7ce146e436e531b9f5e0abfed2c4f2406c57be209cfdd498 SHA512 077acf5eab1101917b5b4b4b83347d30d533110d9a34c2de6db1411ffae0f0530f457033c5a5c14249119e89375c9f12127790b46e486dcd003a12a6fad48bc2
+DIST futures-sink-0.3.30.crate 7852 BLAKE2B dc768e4ec4c9f9dfb22a20c1c977401d859072b9222e6f77978332f495cbd0f764b175a679c9d7c77028d7b56cda5e2d86188ee979c7f323187defa6a0485ce3 SHA512 1c198da8f4118d9a9ab2b597e3f7b4e1ac7094dfa547bb81f3c4148c45216ef55b309255849174a517ebddba6c874283425f1df6e56e2ba5150af091bacf46a3
+DIST futures-task-0.3.30.crate 11126 BLAKE2B c2ded9b9b709fc10c44cfeaa72d4e7477e43331b14f3e72433b25126fef93f2812a09b4fdc3c246b7379d41d3764ba17fa87c3e9c131095864cbb5f54771a204 SHA512 c190fa0acf7ff15fa67fe172911cfae803b2a8c08168570a5518a40767d08134f147259a413ab25c45cac5dbf2f601a9753c77ab0eb2c180cad2fe48cfe3867d
+DIST futures-util-0.3.30.crate 159977 BLAKE2B 9012edf76336952dab02cb61db48dfc74b6cfc17c137c36372709e8d575b306a4d7c4da89328067c9482a645aceb7b44ef57deb21a0c25964a5515e738a039d0 SHA512 7faae5aa35641d858d0f5430e4a69acd4ba9037852ad73c5a890bffeed411d28820883e18bad4ca8f7b0a765f9f4c5dbeaf5d0cfaaf90c2c69846434ae091951
+DIST getrandom-0.2.12.crate 36163 BLAKE2B 0afef8504932ea0ea051cde1d14bd5b79edde68d6ebae6fe88fa4aaa532605a16f466d0d9c0d0aa619eaa105600b6d5ee4e191865a3fa041549a78f78ca82396 SHA512 dd97d7dae1a7ba653abdaf2db719e1a9c8eb721b08b4af0f1c45b1ed5079069d1b57e4f6d9d879e7fae3a890763f4b6aea9bc2d945392b98e811e7b348589bee
+DIST git2-0.18.2.crate 212536 BLAKE2B fffdea2d9a279ec6c371b03489f85039a50250bed9177ebb82090b74a7deddb988b3456ac7e7323be00822e3c243820839f00bd2478cc4d17d0d5d9ad943b4c6 SHA512 d7b7f61ee2c074da28b85bce8475d1b0b953e047ddea70d834fbcffc58a910f0fee3cb91b6e3a0e6fd14b76d142ea02909330db0266299b73c743463a8443a99
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST globset-0.4.14.crate 25090 BLAKE2B 2c3e6f8384a066ebfa1f36bf03125b5eae79329255674e32c58963451d4b342ada10f17524232a953bee133b3c77b678a141543759ebc622b5fd659fe55622ae SHA512 e83e4f5e42a97609e2579b09f49c2cb0a76a94e7e2975c5871f2c5af5d3b809736e0a7b220404c582f4a0c7eebdbfad6cb432e89b26401b58f2b253f8c0151bc
+DIST globwalk-0.9.1.crate 12572 BLAKE2B 3518672646219e391aa0f157ae6597c78603bbef776d92403b874f848846d60ff8734e75b117dc76b1be91f830157cfce698058f445773748b9dda9cdaf3afce SHA512 9c95d6832950b35cf6ac87bd986116a75c847f11dd2e96ec0cbeb6c223ff901c949429669698cd75c4244a60c3de7df9adec648bc531303cdfba889e09f29448
+DIST hashbrown-0.14.3.crate 141425 BLAKE2B 23c63a99c6c6b7a6b9b9e8bbbc7f1e342e1eb9d7582fc9eb408d3eec50c99f34502d450170bcfef4da7f2b1e743e1d1619875ec879e4753dffcb84f3c10dc3b2 SHA512 4d344e5c89ce58e04668b80ef10e4e110a3a5daf4d610c52d980577795d0e2050c7d0b151d8ba97128117665e27b92ab0300f85b88bd6e1de943c62d49249356
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST hermit-abi-0.3.9.crate 16165 BLAKE2B b779f005bd4cb9ba9abe401a0a559a5bbcc44726ac37f53e9c8d1f7218389ec8b48f74d14666261bc4fba4fbe5558cfefae873c49a2312c8c8bd4010b8344064 SHA512 f3a5a51d834a6ad55480b53f7e9cdc73a512ab0cc6c246a6ab1e8bf8f9851a0c8a55982f5bba6cb57b5a03b54870e73b0bab0a79195764c308318394a3ea8045
+DIST human-sort-0.2.2.crate 3024 BLAKE2B 0e112295ee73e6450bbf6431ff6841c9584de5daefeac077eec9eced452de61bebb8d3c3e13edd48b9e1002c421a8903da57a6a23a4c42576f2abaa7c6f02560 SHA512 062259992075a1be4c923379489410d856485682950cc31a05ad6ab6d04129f7e52dab016047c4de30c18f2ccc5c094c4469d9a920da0f450de3865a713bc987
+DIST iana-time-zone-0.1.60.crate 27074 BLAKE2B 6f534056e220e2f721fc7c7f3ed24152eea7f07d1f4cb3609ca734ade32a2d6b18fd0164ed831170cdff192cbe48653b2c4eb0903fb6f157292b3b5bf47299bb SHA512 5619b994d3277f56e65322a7903e4c5e03928a87bdb72831cbef88788aaf5573b8460abc0a4d5488c5df7052bb978531d973dd66002b0ec4a3af468928c9b722
+DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
+DIST idna-0.5.0.crate 271940 BLAKE2B 0b781c2e9bf717af429efb53bdfd18244f2b8c58e5111c3bd3bee50c8a01cc747513fe20db75c38b6b771d5845647bf6c1849ae6667766c9623e018c1f399a9b SHA512 bee6cfbfc99859b113aa8c7b487429a836dabc4e317980f132d28ff8333336f33480bf9f8b186a07115eff33024cd855bc85d346fce85e17c4132e886769c54c
+DIST ignore-0.4.22.crate 55462 BLAKE2B a9a29e5286c9a9c132f2fa319226bfa85c9555150afd18e34bd3b37915250842c46f6079208dce75674fef448450dfd23242858ee2e4e2bdb7eb65f89d689d0c SHA512 9647a4887258dd970c87798dee32a16c1cda75ce3e352829f78d97e1b786d67f74d89b2fd76d48a607fe795213965c04c9dfb47713f8fa80561f87ac465956d9
+DIST indexmap-2.2.5.crate 81498 BLAKE2B 8914a50344951aad58766fbfebe8780298098e3a7c923287e3a84f6de41e2924a6a3bb3ee91ceae9b5b49654b83ddc7516a4cfa6253584b0657995d7c8f63a89 SHA512 84fbb6e61756d5ff746f6ffb2c3c8552f96d3af205075a381f06df85258c7597ce24b0d193127a797f975a3fddc1fa92110738227babc73a7fa37505331f8d78
+DIST io-lifetimes-1.0.11.crate 37346 BLAKE2B 7f278b7378a8569d3552c9b6d4be06d7908e05d77cdb964267f0b621ec4975a42fb6e48fc030a75ad5865681adf32ff747943ac559ab4ad73331a6611a1b10c6 SHA512 30c6e5ce6f5beabe0d7bee4f4522884d1316cf7d9b8d093ba0f952995997be3d0f10e1e77b9c20b7fe2b65429de0d2ec89bb35e939455795205206a3154ed544
+DIST is-terminal-0.4.12.crate 7470 BLAKE2B 6d1db6148198299d0775539734dc62a3c7e453d621d69e01c3addeadbec4e88dde6082e4e12c7b7e8359cbd93b68c0af314d4a8df4600061a9534834699cc38a SHA512 9eb840a419f530c60d6acc52fdc9d6477818fb513bf9c3e8ab808ecd19087a52933e958a930e7a8c316d5e5a3e5beb56c34b560dddaa03c744ad37cfe6554a0f
+DIST itoa-1.0.10.crate 10534 BLAKE2B 8ffcb345d07070cc01651fd44c19f3e0659185eda733c407fd4be0955a301879ae1272dae7f425279dae8dcb7f7dc954465c9a09b5c521938a503d34fecfe2a7 SHA512 fc496be0873e31afa6ddf7f2958030f8fcb517cadb86a48280a0c50ce50460afda189af1e6c26e5ff6f85c750d772c21503864c32b526c4fe4bcdb5b07918538
+DIST jobserver-0.1.28.crate 25543 BLAKE2B 90fb1d8696b575b16b5b12d6fa4e7bc7890f5f09110b147d65eef8888a16ace1446a789f8079a3706f0252be8a04061d989bc8fc53e6c004d6b8a4094baf1642 SHA512 8ffb33b8c162935de1226e0ca4048f36e6e90bd1731cc7f06110bc97e2adef904f777df0ca4ed48b3b8ee4f2c243b2f883f6897427867904aa3385098abcbcee
+DIST js-sys-0.3.69.crate 81083 BLAKE2B 529c94cd2289883b3b43a848d47d8ae025ad0909548a38ba93ebc684ed3edafab16842b922da6c8b6be5ba39c36a1c05057dd3dd93fc8936d5dac372937ab8f6 SHA512 506722e6dc13484828a4147d974822ff9d103d9e7db58a48181b0957770d9fc43b97605ced105c5b680d8b2cda5fa1705f605707611cb48ed8a45a96d5f196b9
DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
-DIST libc-0.2.55.crate 400416 BLAKE2B 157b4f9d221f562e37ccfdd662a6777c8c6c45d1d2c9f9ff0f9d4d1bdf1aa66dac9f61a220e5be65fd7bc01273335eed86291e158f64da26bd7b398af26663e2 SHA512 649155c45a098dc043a42a0df19a7a43100f104bda1ce1a3bad9e5070b5a9c3a73f67197e286fb508c9257315b2e1d2a6eb4cba35f909ef0a2b1f61e1a29b196
-DIST libc-0.2.65.crate 439610 BLAKE2B a6390172ac5a76bb13860ffe0793a40fd6a74c7947c164ab1a033401473caaf77cc85bd578a37411d5f40bdeb13358a4810ac358a76799b24f7b797b2bde9915 SHA512 a5df4f7efae9dfdedeb140e3fec545135c7533f665f4eec61f071d01f40a2079e104c6a837c2b385aac4b306e4ddde34aa857fabb4a7ea7d7780159bc0b83c40
-DIST libc-0.2.68.crate 468882 BLAKE2B c313ba0ed94de22abf2a764edaf1ca5dc4b86e98e004c3c23d53c7684996d68a4c5499fecd0afdabc4af3e1308e5e089a66cbac81d243f432ec1a9ca5b1856a2 SHA512 3f501182e814a2e4eef3a574bf5830a9ba633018164acdac115e7d8d809bc4308b08e657869206d4e5cc73d4ec4944ea98504b708201802b1b021f854a36159c
-DIST log-0.4.8.crate 31297 BLAKE2B 31037fdc2fc94f4ab8a6e89a251b0bc29975027dc7efb7cc86a8e848dfc8e2ae50acdb177b7ba9f7c1f20ec01e50798f89abb772d67a33f1b060ac617cf9a8ab SHA512 0b71f97d5964134b5eea1332347e177806b2f171d0be5c410c0ff1539470b242ba9f0933fafd853e4171a43b5e373a150af18918924be431c7216022553a8a3b
-DIST lscolors-0.5.0.crate 15937 BLAKE2B 27c9d42fbdfa32ce9f01fc627c2a758544dccd72f2b63f232b4984287f61f5f4dc8788a30ad60ae92ddc374b7b993b577bbc0d11a03c61756af81cc672300fc0 SHA512 97d881cf248dee1a744e6016941abb80579518ede0883e419b6c452215ddc0b2a6336c6c6c254e4f463cfa7f3a648ea56fef1df0ff044daba98c2d03e1731013
-DIST lscolors-0.6.0.crate 17577 BLAKE2B 163fbb3b212af633d73a3ff73808ef13cb687e66afff5d3a15cef992ce6c4af8960baf826abfd098ce1a2d4fdb90178b780dd81404859be2ce748027f6a5448a SHA512 245e5d9fca5355d7135d089f9b1f66e4863b38829f52625366c6bf6eb7f1837d7b57ca30967843e2a6219b602618bd2048ab2a31912110083d177b7939f39e81
-DIST lscolors-0.7.0.crate 18036 BLAKE2B 6ed35013099c9adcbb6f1a471216138cf12592928a098ff2312dd227744e2208a001e812a77d63cb729cf2b66bcdb0188ab1ba51d78d7f80a88bfc8f1ae5623e SHA512 470bb3ec7d603959394e561a1f3f1d037479da48f966ff822bf8ae4f7e724be87523adc6b5225ee4521a7bffae15ef67f60d0c04488c12e30cbec45651198bd3
-DIST lsd-0.16.0.crate 39872 BLAKE2B cdf78606856d689e22edad5cf1f4f555edff2030e1b10ff0e706f7dbbe98c5836ef4a8ad6d061fd3c968f8499815b79c97595d0fff43d513e8fec40a4f3a632b SHA512 cd761e039f810c6fcb925228bdbc284ea0a3a9b16a11038de3086bf89ad1f99b442e33a0020612079bc40e7adb1a3ae056565f4022e2714bc9cc47767e7fc03e
-DIST lsd-0.16.0.tar.gz 43284 BLAKE2B fb8813f33fa487afea428a3dd3a01fe6c9e56616a8c69e7a97430e41deb4a0ed0cd5b4c6ee79ba02d145267d2fd2ee2167365b81fdcf868bec2cdce0a98a1535 SHA512 562c070d3e716af26ff3a54632cd176a1b95471fbb7e947f8175f89df483ff5b337d1a0d7578fa6ee41f77fa7ed1a618d37e91ebf1b8428e6a857918b415aa39
-DIST lsd-0.17.0.crate 51531 BLAKE2B 2d9df1b84e80d450ad58df646eb350ce1a1fd3b9f1a34efd365fe9dd9c7261b1a2f63dd044af843521f67146c5ac5a6c45c6a7d4d430fe3ca0964454b57fd37d SHA512 24e86f8f6db7558a00186d2da00efd3d1a5158e3d728cf91f2dc9ced609c2a170149996b0df787e24478ff5ff38d09b13b8a269180d16cbd074fb3aaac5e9b7b
-DIST lsd-0.17.0.tar.gz 51034 BLAKE2B ce0d0f41b805bec6d12b88d7cf70ffe956e4d920f9a9b26c795f4dadf879fb427abeac8e1badaff84357ac55e6926514d5aacda03b0f158fb58255cde96c5856 SHA512 a0d94af2e1186cb8794b1d6fd309b46df83fe67f008c548371f7c712bf9638f64d1e5bef1f23ae929d59cba2a0ed6961da74f6415973bb95673f37d5d75d1f95
-DIST lsd-0.18.0.tar.gz 51553 BLAKE2B c6b9fce395f838e1fc888ad145bdd8389be034c2e48ae9026931be7c74d740e2a5c52e2b5146e3e05c36ca8b74d1263c43877928d690f72e71fb4d7f6d050ffd SHA512 11692c000c14fc220b22b4a40ff65f59c527283b8aef541836a5e115062292d5bf9a96488af92726ca1757c3877d10d82145a3ae1d6656560b8e4217b37b62d6
-DIST maybe-uninit-2.0.0.crate 11809 BLAKE2B 5e517b8c59f9ae4f1a4f86b48679ea64d62450ec2519c8caaa914479ce9e5b3aff24707e2e37272ba74bb60499afdc602fff17756337b0c50a9184edbd8b8805 SHA512 3006fc009c7c743d9147a4122e677cdeb2546f7bb46963b2f266839614eb906f9d763c161044fd0bf3f7b54124ac0734ac9ae7f7151b1a7a5f45cbc739976434
-DIST memchr-2.2.1.crate 20862 BLAKE2B 79c8b7772f6c4e76ef98e416cab1a87648fe1f78f77eb31a894a2b1611fcf2d8336e361ab3d692cd03579b33f6bc5adb20d42418475dac5441b8bf356e38e442 SHA512 0f5e11507a4235edaa8ef639753abf62f1c187c8c6e35b0c80c9306958e41893492d4995e28bf28e5710e8739c7e75bb75a515507ec87870741a3b426ba8f44d
-DIST memchr-2.3.3.crate 22566 BLAKE2B f952070b98ef30f0d2780a6efbeb36d295710734f678517d913a8002cafebbd3cfc38975fc4546d306efc11bc815764d14320af3b7a2360bd46fc2ab3db9efa5 SHA512 922e05da920d0d94226857788878ee5e31518cd80d95ae57e1d7ecd233942c37d01565525db2f1dfdfd5b3b1f81b2c73eee058cbfd745cb4e1519518318df248
-DIST normalize-line-endings-0.2.2.crate 5299 BLAKE2B 3d0cfdcf94f7beaa24bfe5b332f952b96bd915ecb4943b912cdcd20e02b4ee6274c7c3fa9bb39743a0a09990901cb8406b2a6a583ad62ab61800f33df48ad32e SHA512 d1581fce8b99e2dc6ac187255722e8aa07c6d03daab536b41d483fb961afdcf043c8fd92843ae3a0835c36c39e403b6bf263d5fb6bc0342d88c4be0e9a4fc1c5
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST libgit2-sys-0.16.2+1.7.2.crate 1773674 BLAKE2B 86eedb63c1d92a15cbe2ce735530b60abb3d915a9f6051f7a084b9f6e6402dbdbffad2a261689f5e5abc2353b7765a390eff7cb86e88e50fb4cfe4346487bb8b SHA512 45e23f66e1823c551b1f91d1466d971b05927e591684b35b75047ac5f7d23de889910b662ec403388b88a35dfd19b8ad9787481d36e10949e610aa02fcc35c40
+DIST libredox-0.0.1.crate 4212 BLAKE2B fecbb90e2842a69f3967bb2a09b0181dce1720b60c5d762a334a279b52c00a9b4b52de72c6484603981c0c3e1cd8e173ef5e15fa290ce8b8888739204956be92 SHA512 31a9234201f5128f1519e108f7424d1740a67699828265cc725304a70f6a51e139f1d0c0e626b487857a7b421f25ad93e81b95b65cf0d3e0ad912388deecfb41
+DIST libz-sys-1.1.15.crate 3958887 BLAKE2B 989b33d3a0ce09b0268f81d86c33979c7627379d921fce4be83b8c31419aa0613a9e3d82aea400861090fe6b0bf00612396cfbe0b8eff2cf682576b62f81f807 SHA512 316a3b961d8f9b47ac763365d36a4171afc0fb19a01f9570f1962765da0bf67e7f57b848e16f370d653b40a2526fb8720a4625062cd53d4e4f12e1c69d158097
+DIST linked-hash-map-0.5.6.crate 15049 BLAKE2B 0f30e388633c60433dcbee353507f1c6857bd210f0b61a4d166a9b95067bdadaebe49d5fca4fa6ce13072e26037c6f75d46cc30cf8dc3c9cfcb3f33b33630093 SHA512 031a87645381c96beff33572e4bac1a9877e52fd2f99d39918fbede17d72291b35e2eb69e07edec20c3058554c35cc38fe85b8f175c2a3c69366136fcc71f707
+DIST linux-raw-sys-0.3.8.crate 1013776 BLAKE2B 375b29d2cc700e95d94ea8dc304cb711562952742f65c9664e33560a3da862aba74f2ad2ee66b1dface8cd5371ea9cbbc452ea953a6b6c656ade7d938b7d2ff2 SHA512 cb0e5c54870dacfa513ad05f7a84e9e90dc1a42f55685fe3e252fd25cffa4b875f1b65eaf4ad132ef0a19e6677c7763b360d71ff0060fe6ce5198f38b9956375
+DIST linux-raw-sys-0.4.13.crate 1493855 BLAKE2B 1298a038276e2424eda9873c642fb43d864b343b03b7962446122d2dbea94d58d9fb2b93e890769e6fe4092378755413ed6afba81ce56fd61e512146e44148a3 SHA512 3918da6b667a08ef8a51aa0b087129e2dc5ab101669cbba7690fc98ae2659a36861bf9410a3b87d18522a7549d43ac169b995ea192d3073f7249305a809cac62
+DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
+DIST log-0.4.21.crate 43442 BLAKE2B 8429b3270794d3e2c7f7d5b58bd4fa1abb9d4807ab3a1ac980ac81c11d9544635003d8cf2e608c2c0094865459108a2879f280278e121df68d09bc1561d604ba SHA512 0becc1a06b6e7048cff6c0bb8df49a16ac4772133c00239e9e9459c0811e7715c500f440cf1a9aef8d7ad74f57434559ca9b55917f588b8e476cf36eb6d4e10b
+DIST lscolors-0.16.0.crate 23368 BLAKE2B f4c39acda48e5da0489b8a5b169a55bd69f9d4a2e7c264e6f785feb6f50c5b51ce793b5b34a85aca90809644d55999ce5158117e6496936ebf13758b064d59e5 SHA512 3b6f65e5cdad090fb05b278d4f5cc3d3219dcaa5413dcdb20ca4f673842906c09c71fab4dfe23a3669a9a3781af0d08a793e1626900a078e7e776286c676195a
+DIST lsd-1.1.2.tar.gz 108050 BLAKE2B 3e525b070bbc572e7e80cb5f71d91ef9141ff6acbaf4d29eba9279ab1dad0fb12a25a9e4c2a94bdb65f0655a54b18f5738d8adcbc25a9e929832e9b3e2739b3e SHA512 2d0370c5fb463a4f5e1f2b0366e4fa4baab08eb307b8410d430361777d061a18b9bb9f75a7d19afbb12449c62a59d986cdb170937b7814f49cfbeb85612e8d54
+DIST memchr-2.7.1.crate 96307 BLAKE2B f1a008fbdbfe84852a8ae1d9d9574306b1bf120dd5087903adbcca6af342c9abbb296496eb9bf6cb58915c4444b3edd6ca4e27131ac7d8aed8849815df87a944 SHA512 5120496faa31fc427c8b4178461a262b3a34d70eddb7ad17a19d6db8b9969c9e113d3625b5e6dc677087fc80907377b00ba0421aba9a92cf73ca2849d932f473
+DIST mio-0.8.11.crate 102983 BLAKE2B 913a8e0e4843b3b19cce3eeaaff0a0024eaf1bdb4784a710e54ee95b6631edbd763e37669ec7d269e45157907663dd2eb6c9279db850fa47ef4c1eee867ea24a SHA512 9a2806ea78b0637d0cf92448abcd50bc5d09bd80da0f37752c847bc98d014baae7a5cc4d929de98be6283c76d82ccab1f1467aa6ab583a4e782d97d5592b0bb1
DIST normalize-line-endings-0.3.0.crate 5737 BLAKE2B 935b2d20ccd37ca7469641a37aa0ae9b6872715d6ee88d568d0ee16fb76416cb1a0c585cff861825de8cef11d864b1dc1b350911c28d64e071d8fb444bbdf740 SHA512 f8e2a6e333b0e8972febe8b9cf058c8d899c384fd177e0b6ef1c5f94e0fa18192963970cb1a2ba80e3135a8cca66cdae6796e4d84ac6b325bb369575bdfc6eea
-DIST num-integer-0.1.39.crate 17881 BLAKE2B 1398b54766719f6fe298fb20489373ef774f1466349bcb96479610c00bb0f6f54b1a794def2841a0bf70558f6e5a080b528071ad5c64baa82bfac084354fa203 SHA512 1e00ef9fe5adcc312b4b8a59923015eb1387d90e6b3d7239b3aabcd83a9e67f2384b3a383d84ce8cdc82a470770f56373a89f0a679727a5fcc8f5bdb1f1209e3
-DIST num-integer-0.1.41.crate 19399 BLAKE2B 44b96c8f1295f0d3021303d7e3b49474b86fa7287a1f284867e18883617d642fbbb8725ddae0fd68b1ec70276977b87f4d040bc457e037562f4de374d042f178 SHA512 f979ace06e3c109e9b5217a85341117ad12bb6e8da1b7ad799d91a967e3da1eb785fb114294f049ed8a2022cd5269c1ff771bc319af3da0899df97a1e412297f
-DIST num-integer-0.1.42.crate 19463 BLAKE2B 91ea6900dba5a38bc7ac4de0db8706f5335baab636937e9efdb1b82ff0e8ece4451503de3ac9e473a4dd7c70d599066f14840789fa88aeedafa585f0f98ed61a SHA512 8c7e0529888e18b872a634e8983034b0357143aa72914b45c02ee87447204296970e9b1ed078d9436ecc779f25360b1a1cfaae5a9bf7c8ffc68793d7c25593b2
-DIST num-traits-0.2.11.crate 42000 BLAKE2B 78584a3e8011391b47c7ce45c5a63da5fee88aebc2ee7ae8d788e22b1d6cf46e31e70b7bf6ae094d35ed8dd5ea4f91472e6050c526acff3f181ee383fee139a1 SHA512 12d73656db34456a30de7538daa1efb6e6f61353a0e274aca388bf184732402d8eb8ca19282fbf51975e0541b5c8d764a0148abe346061dc81922d5eb12592e9
-DIST num-traits-0.2.6.crate 39923 BLAKE2B 7bd781368c553622620f0d62a09f2c82fd26d4e6378ea8fc51b0e655dcf0561701881027f46f7a98da1bc25b777c62ab7338387c776a9e5e3463ea53a7efe922 SHA512 db638c662737972f07bc7ab82b923bece8a6c04719199ec0c7ca90140ac11e4fd1e4eb3748a69ddd3ad2791d4f5f5f69a00ce8aae92a647d9015d130f85b6b4c
-DIST num-traits-0.2.8.crate 39965 BLAKE2B 58b2c432e8523efd95724e01ed80d61b2c4a798fc451e1c7257a392f78617d0ecbab9b1c1d799dde8593cc69f1dbf30d2e966330766992ebd43d8626926f12ee SHA512 a3019e45744245837b2f146ab4213746c93a1ad701958dd418272af89451b843f9b643eac673c1397f6079da7709c7e9ff46e0e829a4cf6092772c9d77bbc534
-DIST ppv-lite86-0.2.6.crate 20522 BLAKE2B 6e1e4f3d0daa02148df390be19d3575626e66f6a78dbf27c1275f097c4307b80d8182f7795a270aa2c34d8c31c8c3eecc88e9507a6c9def0e91af11233aba90b SHA512 b9764a841364eb89157c828a183fdf6aeeb63d1d35e4f5dcba79e5d8e20eee8f22c845636c5c7bc980da1d141d838528d5f190546b23aa5e4e51e626a0ddce3d
-DIST predicates-1.0.1.crate 24714 BLAKE2B 678e393fd1f6d8a4d7a6d0e0473f8f7ff6f0da3b612bd4f661fe3ba3b070409837fd3b19dc294e68af3b643eb04f9cf9020d76b4aff8360b0a1c4b4d8bc614ae SHA512 871465df78f22decadba2d797239c465cfc37033084197dc5f2bb047d5e7bada047300f331902b4e2c79036ad512544789932506b1031fe471b9d5ab918c2391
-DIST predicates-1.0.4.crate 26239 BLAKE2B 12ca05a2d98f9a4b6ad5442cdd8c5f5bd90a691d5f9c61389d710a7dcc88998b251252b9dcee4f4d8f742e1e4c00b25ceda57e39fc23b431fa7f04b2d7e64bfb SHA512 20f2ae6853e665b262651d4a2bf1fb70f4ee8e536f4fef2de79225fae44a4f32b4680f06f06523675e5af23e301ff58b0cde3e61c0e58c27e412d2eeec96fc35
-DIST predicates-core-1.0.0.crate 8066 BLAKE2B 71e70aec3adfae302287a1cd3d7d19eff8a697659d61ced33b89caa8a2a3359ab7251db012d973dd574abecec82acc010c5169d0670096af06e325761363c34d SHA512 024f997976ae618e3b82d59613f8b6c41b3c0b3b595b6cf38d10d2d27a11388e9511ca38c06d46b52a12fc19d3cec36a69ca14e1e21f316a719539e41c86d6f4
-DIST predicates-tree-1.0.0.crate 6251 BLAKE2B 00da28f7de9a7abb386c6a4425d8a2285d1ef22032476b0ac1bab4b8d34d2af69948f80d8f0498e2356caea3fe92ce352b58539413a8f0f052e9dbc26c96cc12 SHA512 29e1818b7cbcb7195dedc78e6a1436e8e8c88b61d43469952c4bba5bef7dbfd5b7f0dfbd9fd31f71e71cefe7c7b8c44ef361bff1a86f40c945caf48cbd87cf05
-DIST proc-macro2-1.0.6.crate 35414 BLAKE2B abec56bdf8bf2109337e007c59c7c9c78ff0af3848c9b45567b2ee1d5120ace78fdf327c61becf917ef64366e5947792608631f197d182753eeeaf81ffd2a1cd SHA512 d0a6358eb6f9334128a5b47c096bfc57452e13d603c9514df433409069c00468fa2b3c76761d7f3696abb061c1c3ba24150e0cf9be2c5d571d580238d2d27853
-DIST quote-1.0.2.crate 23023 BLAKE2B 4091809b4fc9b8d0b56be814b127d6ffd7c1507becba85dc905606cbe85f46233dc4b429c1e865e7c7de336cb936d956169ceb5dd45b489b7722022ccf818a3a SHA512 67778dff9dc5c4edcdd6454b74ad9353bb6c0c4e51c16cb82f2e393a7d7a0cde084d3c93279b718a8398c40af0a9377ebfae5321e69e635efd8390c125b75ce4
-DIST rand-0.6.5.crate 104814 BLAKE2B 8d94c6f135ff4b07a2236cd7b0c2ff2b80f3d391e330590bf0ece15b08a8c8a5175ea32d9d12832eeb485822446515e14408171d5f1476a27e2b9ed97aa7986f SHA512 2eb84bed29708b8ba109f4329bf6f1cac6caed9d91b2aaf185d68dd2eda73d3fb7be2897d0596fb28352e799ccf92c161ee44599d5cb426ba9c3b8c747831904
-DIST rand-0.7.2.crate 111438 BLAKE2B c9e81a0b2bcf5a3d425865dad2babd90187da55b9c70fce4aea4ed2e2ffe9cfe4e66bb280f1acee11e1f1ad17d3a73e906ac6cd35e6a2124852b66093293bd48 SHA512 d29d10e9788f0f44b56b2981aca01a115eca1018e6afe2428fca088cc9432f27d014c6f1f0c819317052f4c64a9c54cee8834eb08e081f292ad65160dcdd014c
-DIST rand-0.7.3.crate 112246 BLAKE2B ecc7c1bd70ac874c03bd8b7faa3016bb2d5ee5c19603280a12a45a81598f706e445971ee081e6ca410ab6f0f5f7a06d9315848cd556a2d8522a82024f6ff91e4 SHA512 f9b68ef9446f1ca2c8092c50990f15c1b4cb5529eeeac4df8d69755e0b7253c663c587775e7cb0a7298c31edb444975dda34926759306541f6d43d0d3cf57b7e
-DIST rand_chacha-0.1.1.crate 11703 BLAKE2B 125fbb623b5d829c48e5b492c36585037e7fc6f12eb9090f946d05343fe867ce65db8eac913762dc20b6af2a4856e957ff43916897f3e385cc22eae64911b0a2 SHA512 200d39362ffd6d91cfe80634e951c7323a5df8a382c91e3afcef1ecb143a16dc47a17db7f1a746b18e4ea8bfd36bc31ceaeff6d0116e166f8b34e4a8530b3c1b
-DIST rand_chacha-0.2.1.crate 11475 BLAKE2B 698f830845e24b85fe52b11e9a1c621dcdbe4232bc22f3dc0b1d2fcd4427045f302f74134d9b451fc5b4f9ac559fb2bc06f3d0eec5eddb6fd6cf3e6d3030855e SHA512 30933fdb94ca8d4bf040a7e08a42944a0d7c2f3f6a9a3d547e74bc32f922b0eb79d85afb1f6c85c78dc115170e70bdf96b36f0478d61ba5651876d5350ad18f6
-DIST rand_chacha-0.2.2.crate 13267 BLAKE2B 7908867ceac98243ade22e1b38f1903fe0249324484d91c948a5058a1e099e5213f325c5ba3400898c8319158ed69f4ed064164f235470856a8191bd990d5a10 SHA512 1e2117442e4ffdd834dcbf0ea1829e73202c0ff9041d5969d81a59330242145f2753f2a56de2fdbff65f26cf0d227c7d08b2094ab2f946b764aef88106a6ac84
-DIST rand_core-0.3.1.crate 15483 BLAKE2B 2e09b3b3306514c29bd7588498e79be7353de656d8cdeeb4dfc6a1ad092f15a861c2ac20591ff71f7f60d986de9a09c860de4a9f06799f04e736b31bc70a5fbe SHA512 5a7ae601124502bede760fd3179c2b28059ebc3b5983bfcb6b8fa62fb58df95cedc1aeb2734e792d894dfa4620801c13c29702f9cbee64243121575d4b6b9114
-DIST rand_core-0.4.0.crate 20326 BLAKE2B ff85118d2b5c793e3da37bd4d75032e2d73a87bbba0b4c0c07057c47c67b7e919e5c4458b4c929e3b55f53cd3ae6579be5d434369d307e962c00fb3272862937 SHA512 f80e76dabd3308a12880a9aa8b7be83db39b02778c95bb63f862488789a2a67e2f08d4f2dd1ad803c61df0a9fc7f6620aa753b3bf394542ce27c89189a911845
-DIST rand_core-0.5.1.crate 21116 BLAKE2B e74791f941a79971f2741172d489d546373c9abcb0dfbffcb7b97b858ec800b2e0c97df4ac636f3aa1b8dd6c14685edf317336d577f31b5c6cb7d89a157e547a SHA512 4f7500b35e165e6c817fdd67a50745d5497d24e554bb554705097e37258751e8755c4d6b8a69fcb5e1977708ba78620bc35d640e4e018fcd4e88d9dbdbebdcbf
-DIST rand_hc-0.1.0.crate 11644 BLAKE2B 24e9db27c6673ce657dd18e0bb5ac092c4340b818e79edf4a3ebfbd9a49759d3969c22f4357be5884192b6e6375528831683be54e1283112eb94097ff38d7d88 SHA512 808d8c167daa66a2608884d5d3f1444cdb21f8ca1c61e59fc9bdfb506a634ebb22c0143cfc0574e15313f82559fd2d117a46910eba3b4eb7e0052ec280f5cd2f
-DIST rand_hc-0.2.0.crate 11670 BLAKE2B 55fd048f2524cecd4f0e17927a81111e3070a8cc6a5b0234a46445400ad5527194edf8c91fb5ad6538f4958d53044ab02424f61a38adb2931e2cb7568c458ee8 SHA512 bca185612bed5cee4da76fb68fe854105da276f5bf2da464e596d586b925df798cc692ed881e276ab77c36b4b0551930966c93656be122ad05899d87853533b0
-DIST rand_isaac-0.1.1.crate 16020 BLAKE2B a720ac67770133f6051720afb6681623c1b3700be9ab8f663fa8ea852132a81c1404e34aed6829c197b92996007997cbc9105cea0e125e5ff3fc931306c55da4 SHA512 9e8f6c79abc53352c971f8182dcaa7979904d5649eec9008262bb0aaf0585b4c4817351cd80ffa8d07f172ff4c82d85a09ef2642a08f608fc6be3e246ed7f82e
-DIST rand_jitter-0.1.4.crate 18409 BLAKE2B f346f6856128218aad0e70e8b4b70a19f39b4b3161ae2199d893f6427ea1e2b7aed4024de311add4ea9a19de898f5b34668a4c7727c9e7b32325663eb6ddbf51 SHA512 fe3791612cf82bd0ad1a115c442b4a007141647eecd48f49dff9a5d326c374663d9bd2e511c8d292e1dba44665359b522cd5d57ccd3a18598e88e42ee1670e4a
-DIST rand_os-0.1.3.crate 18965 BLAKE2B 3cd93b10a46a70e0e3ccaf1fb8ee52230d74b7d790351652a8e39323bf0dcb446d14e9229e13c14a84e93394a22e0a127f50ded11db1df8ffc0a6bd564af63a7 SHA512 01e81a692b78df3b2bd65bc285e5052ccaf208c7d0ace414f251db4fcff7f9ae1502ee60ca5745c95e778d3d5efe15fa84153c17c422b6b6bfee829376c14575
-DIST rand_pcg-0.1.2.crate 10844 BLAKE2B 14150260cb41d57c59aa7251000acb1af9225b015ef8596527e1c313cb5943bc3e6c995e31b9db5a5bac41e30f36a6f7fce5a24b21d6413e74d0b3f9732cdad4 SHA512 6bc684778ba60c2e48793d4759b40cb0d35b0bc20ca0fc39fdff7c3f8fe9082dd7b5d5f26a7f17bafc6f3568924eac1bbe45820b1c2b09c91731ea5487d76d9c
-DIST rand_xorshift-0.1.1.crate 8997 BLAKE2B 314192d23072fba2ac66130604d92150bf946c6f6cf88a4b337314c51777af36d8cb6189b92284e451ea078e0ca66e6a5b91a90c0c2b0ad2353ecd3e08667f68 SHA512 3205499ed2584467dedb4641a48f3ca8fedc263b1d9431d36a251af0bc4701d99ce4b5219d515b9b24210dd3ef2faace6efa886aa50f361e07f53dd0fb0841e5
-DIST rdrand-0.4.0.crate 6456 BLAKE2B 330ee64d998a0358f95a3dce50b3e1bbda531a3b613db7e5ba4038a1cf7191b60be3a0f33416e05380c41040704ce52727928915e9d2f4565d39984d1c86fcd6 SHA512 6476275d124bee28747191471e8d8f321a3b1c148c1f2a7ece4175f5244a7de90afe5f99d2eba5244d886b92e38232398864bf90e6d434b09494533942c8d894
-DIST redox_syscall-0.1.43.crate 15212 BLAKE2B cd2e3bbd3cad2568bb61d71931f84b9c09ce694500508ef1fd78c841424bcc40515645062c3fa47cf0d6d99082cff3800a789c0bd0acab87ef5bfebe4e9f25e6 SHA512 c506b1b9067d1c40419a3b4bbd5b2b9bf2e92fba775d51f46bc80d322412a9a8d6d2f4e384071f27ba0e8e58e8ddc2ba4a0ee99567ba2e82e63472924fa46354
-DIST redox_syscall-0.1.56.crate 17117 BLAKE2B 57b1b01ef3cbc6f55def6c9a0dcde16bd98e83badcef993e26ae3ce849abcd1b1c10f4da931c605970d77f92471734764a537e7329291a221343fde23f3591eb SHA512 17a3044327aa733c830dd74e210d6bda32622617d1c5af9d70d7647232d8569ad0b04ccb14042cbabb5d97ad98e3f1f5a9968a75387354ffb4d175e9577115a1
-DIST redox_termios-0.1.1.crate 3227 BLAKE2B 0b109d34e942735e804dd3da2a9639506e8bf6eb5b1f69ae021b115b0b75ae5159e8457abdf647dabfc19d5119cd3a44b8966635d7862cc66a8a997e4468e1ab SHA512 201d051900e919e2c6c6769ef252e51979d90133df16b6605e2a2f424cfb2e6e505e21add75ef5854fe5e0cab1ed1f1c1451010f072ae4bc8703c585a4323981
-DIST regex-1.3.1.crate 234662 BLAKE2B 41643af1321748db717b37bd4985916afae3a84e19f628ce5d5c194de42620e6b02221083c7e4b35bea5a6749c265575b2c0318dd58ea26b8bcf8d01768e1a27 SHA512 6530767ca2896db30599e5b3e2bf46a785d9c95bda3e530e82c659e5a98345effe5424738fec7545fa5edad12729a396938a9c1dd3a680c0405dab6000fc19f7
-DIST regex-1.3.6.crate 235465 BLAKE2B 18c6fa529f82fc9ea874605bdfb8d0306a22c88bd74a2473f3cf71b8df46b63133a0a9d3f7401b53a85ceecb6f3eda1d5d37ce5982d7d8e8b6cfa1c6206cfc5a SHA512 05dbc0f355bd1f3ee659a8ff888b37242f780500b76d153a100c21c12278db2429ccdd47f8dc182c708dd70d47fcfd5acd6eefb397c03e08cbdff701f6346628
-DIST regex-syntax-0.6.12.crate 289531 BLAKE2B c1736b335844d8695e2795a869b538300a9bcfc92ca41e4e9840fc90c133553da4f2929b0f39fdbc7488551a8477b2adb20b83e728a3d847171579e20c925acf SHA512 671e4ecd9dbe58ab5938e0b55890ef0ab2c033221bf549ae0df3b6e831b57099b4c16f8577ca134a758999a1bfc0840aff49be138fb6a19e0b081089f66fa0ec
-DIST regex-syntax-0.6.17.crate 294004 BLAKE2B 3d203b06b8b1a5bdb42d50d395ce117ad92e41a7d36e5cb5194014eb7af1b17f944ae493041b7e9a2a9ea929381b4c1cb513c895747beff97aafef524ea2ced5 SHA512 bd9a165bcac207ec3bb87a81ae644be98d9b5ea0053b3bcc69efb334e3ebfeb85021aa372bafc3575758200640cbaaa67d372950fbb3ab210d8ec62b336d147f
-DIST remove_dir_all-0.5.1.crate 8726 BLAKE2B b654deae9905c03b068f07d17b5fe3715393cf7c495ee017467fe1cdf955bf44781516d0e6aaa1dd738ace3b3bdd4fb38f7edaaab062eeba02baf50a1250ed0f SHA512 9ee9a11717d45aebd28cd2f50719a2183cc623bdb1af099701e4edbdb9c98bc14cf2278ba06aca4658bfeddaffff00d0d1464c82d175fba7d6fb272918dd6928
-DIST remove_dir_all-0.5.2.crate 8907 BLAKE2B 585f49f83db3ace90dd0b4fc77aab7525844194c82d36cc33ab8999aaa6226d24a130c30f55e2c46a08273cc554d9d4c8bc51958aa7dbf1045085b2e22639e4e SHA512 d19a45398a93adbcef9f233f6b3eaf4a63ae95f5bbae00c880b40c5edd34449e7f798ebcd4d11843c68ddfa15e11bed21d434b224e4a175dcb64ae011c13c8cd
-DIST ryu-1.0.2.crate 42001 BLAKE2B c25f0454bfac40de3150b8c263c6d2842e64f86f441a69ab5e5722a2383a9a07c7539837f6e50996619eb0c4a5da212556a4dd21a761a250785fe0a9c4e18a3c SHA512 c681e037f1eea488bad7fb5ecc79af52377bd4b9eeed95eb213201219d7f100702000f81947aff8f18641235fb62c138a30eb20c1f93ae518a4d9960a598bb64
-DIST same-file-1.0.5.crate 9861 BLAKE2B 3f65c5cfa1ba526157f838ce10695c56dc9241b044890629a3bd7f589f3049b04944d70ce10f371f6844343222954fbed5674c04eb6a7b934a3a6761fc897825 SHA512 33be985579210b64eed7e26f24a695e2a59992ae51723e5aa026ba34dbb05be4c377bb25db9797dca1f70aa4be58f33cae32a89b61fe6b9353de9fb902ba2dcc
+DIST nu-ansi-term-0.49.0.crate 28211 BLAKE2B 057f2d9a3b6fa773e5b8b7b33eb0bd588db3310f01354701832716d77dd6c49ae17f69728582cdf84e8387f7c57b9eb05cc97ee6e14541878f12fb50f93855cc SHA512 8168f44f3574e56fe70ecbc67255556bb92215d3520d1cfca7be918b3d7d54be7aa0d82359f1044eaf66f11ee85fab1f9ccf32b13cdc39139c2facc78b2d8e71
+DIST num-traits-0.2.18.crate 51930 BLAKE2B 6c40e155d7a52267a7183d8030ef34245492d33f103cc24551b10da3eaa18e3db485062ff87057dc23e6b55e381e5c5d2a2633aaf6f4763c06677a0a0c524f02 SHA512 e395ad9f3b21b0dd1d3a94cefe0d68a42d1b1d429ddb2823696f9cd75042568a635d93d133ddb9497ed357e5b3be5caddb8e4a4af87b65882bbdc60b05c74ebc
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST option-ext-0.2.0.crate 7345 BLAKE2B cbfc03e7c960fe3023512a4ad816d657b4f54f8ecbde9f9c4df4c5fee3b36b68ab463c67ad650778279e01c7ffaa63a0dacbd0c080c8c3d15b1611de0e71f92d SHA512 f8539f97b01af97e0b80fc96556002251befa60f8ddd19613311e62f9dc9834d71c22f5d8e7c53c4925046e38cdcf834c3c28042a4da862d6f6a21ddff8d8e56
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
+DIST pin-project-lite-0.2.13.crate 29141 BLAKE2B c434a336716c9cdd16ebc297fed393e9106ef167a693c4aa0b12c681e03141b8ba3cdf64c310916cb7d5cc43cbbfcaaeb39bb5fb1e8b3efb9e94a3f72af914eb SHA512 7f12595d751d315de6c0d380e2f501b74154661eb676987d2cab6fdc956091a68c9cac658df45dbff73615e982e6ae2ea138c09ebb708cd6c351f0d18dbbdbee
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.30.crate 20613 BLAKE2B e14dd544612f74b038bc7d279d629034237946c261e3e97621d6ac910a12f4fa4e75932dbd5d3339e62325d0ccf33002b07f04b0523f93d2bd3b1a919841ba66 SHA512 e4bce232e1e1cbb17d1c08c3de4dd12613f5a5238f831c2a765b6ede9b494e647d2416a7d9a0c926104e24066dd1b38df8df98a6c55d62f25060f80eb33d064d
+DIST predicates-3.1.0.crate 23090 BLAKE2B 6c51fa390f3335501df604afda47ff1d2a69322d928a1412bcc4829f16c3ff5d345ae52f54d797c9698b0eb7b26495e594d8c21f04fdd77c8119ad4635184adb SHA512 1ee38c715b4b55038497a4a4996e12de91d356d53173d3a034d6a1f56859cb3a4a61a82d016fbefdd6ff291519097ce9cef950547d3d437035cd7093d965dbf0
+DIST predicates-core-1.0.6.crate 8084 BLAKE2B 337cbb155bc2859c5a8b891c21d352e998cd1eaaf606cf46c003c9c499a42f12268b071e7a4cca65d50cdfdfd4267f023076e078a0a3eb401ad836755d65298e SHA512 afeb1de4275c76bb1c5950f42bce2f83a21ab217ec60130336286cb48b15f36bf2a1ca346bd652c10a65a1f9e3310d16b23b8333a3e0f7e20fe874c3f728e702
+DIST predicates-tree-1.0.9.crate 7960 BLAKE2B b758c52dcdd0ea237ce25f0a092200604765bc83c5edcaea646c6b1db49431296b61aebddea3b325e62f0ba9bbd5edba7ec92fd031cb597e7e8d642b966b401a SHA512 1fd5d9a84ca8fdd1b3c4759d5e6fb16e3d8fe8b0dfe5afbd16bb509c8558b0750705fff47701c95f7a8df1a222f639116a1b9ba4d89775bf03b06daf34f249a3
+DIST proc-macro2-1.0.78.crate 47158 BLAKE2B c56a24fce3faca9e04db7965cab552d2a976c3764df0a84179b5a89d1230ab355c777a82b4c982e3945414f1f0478473a88821dd176c32d6de394d73a26adb9a SHA512 11956fe03a2e77a925cdff2c3c8bc8804dffab4fa1de963a128fa23f4189976fd2e2102bd346b92c33524beae320b71dadaa5213695a3ec638404196e14fa769
+DIST pure-rust-locales-0.8.1.crate 178758 BLAKE2B bb2fe00e5e6b67ed4e5b5b99d6786772b84997ec788e720470ae960b1c99637cce8f82792305aa5a873ea59d9a375434035d983aba26fc26fde5750817856449 SHA512 cddd35f6d288c863a0790a1e0213004d93b0c2dfdc5cccb22fbdb726b0853f776d3c6b03e2082d76f827c41f9831fed762a6804d186447e18e61f903f827c51c
+DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST redox_users-0.4.4.crate 15438 BLAKE2B 5f44e9ef20f1a6c8b22239838f8f6a6648dbebd5b4386b3a2c417e39add8c4a0dc32e4369b8bb4e0ea17678140f596b9bc981b1d56f06de6a38a503600420481 SHA512 7c208116d1171b1f52f22aedcf8ad00076a3d1f062f4018f4a9f5fb2c38d7ed83258589062d1559f64e43f3e2a9ddf789799f57cf87a49ad8a37463ea09aa269
+DIST regex-1.10.3.crate 253101 BLAKE2B 390ebb00bf5430048412883b672d80737e783fd36f40895343cb38ef2e26e2713418c2fb4d66792bfd3be4c990b4518ba120de229a72cbeb7fd5c2af325fbcaf SHA512 d090898465013b0975a6de87fbdcdf76b4896578056f4da83424bd5e7832547a3d8ace643c379c4f14700a0a88dc95950a38645508d1675306c377879a90cf5d
+DIST regex-automata-0.4.6.crate 617565 BLAKE2B 8f1e2a3cc1d2d50478776281d2bf10164ef441dcf7127994f4a0341ec40588ec8dc1c07fdf9f670da9e61a7753551500b80314df130370b61d2c03c2b2e3135a SHA512 b288e1facae2612f73d3de3fe9fd1af13d337107004f990263abe6277b31b948478ad9c2b807dcafa73fa565e48bdf2113139f5ca67eb73165b7d29e2ee5c9f1
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST rustix-0.37.27.crate 324534 BLAKE2B 65fc8317c5aa86236b2099104b6841a7d35d4567977218f5e59a85d199aee7d6b9f0278083d93f575b31d77ef8685576b7cba06ce8da6e96a164af30c854ace3 SHA512 e1c648cf11379509b732b9e9ed88ebd36006d8e73755528a09aed4f46df08e23a705696c5e6ff7ea0e4382513edb487f9859a8f1673150d60d70c698216fec3e
+DIST rustix-0.38.31.crate 375443 BLAKE2B 9e8ba6bb4eb4fdf0bacfbc719124f745f383abbabfeb161bff9908d1948942d358f46191377b90c180a2793a88bb01be20dab556cfabc8da8efa2533af8e460b SHA512 593e0395a7bc5bba949e6f2a5ed9e39ae13140970a598def32ab7d6d91b4ec100752fb05abda407ee2e5e420d950b19e607f963f3974213637423c751df75960
+DIST ryu-1.0.17.crate 47537 BLAKE2B 28408e17a4322f1afb6f21bc8d7328c39d07186de4d464f8e9bd63a69757cb4af61b46e558075e14836f310f020ac824d5ffa616fc0a5ffba59b9df0bb66ffc4 SHA512 6dad725c4fb2d3a33ea30107b63cb702eed56bd2f3c16a72265f648f5aaefcd3d5a7b919b1d037af926cc6311bc68ba58c4e0483da2b2e2135c6a7c2d6601af4
DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
-DIST serde-1.0.101.crate 73115 BLAKE2B 6b80a6e7f8965c412c6f5db62cf3782329818c59c43c9947ad9a33be56b334feb0fc0afae4722f368d708236e2763ee2b1e71b323b3e961880f99f2e178a82a6 SHA512 3b6e2f8fc965ae2055a8eea007b3aa47715fdbd653cd0af81ada557559316ca65d7f3c75c3c5db0841aabcb2d4336092d339258829df11716b10a0c14597c678
-DIST serde_derive-1.0.101.crate 49736 BLAKE2B 247c6284e362d9a31eee6c92b257fd70733669627628cbdc921dbecc384d1a328fc8a37a8f5b96a84498d5fb4514374760ccccfcee1f3e809d35da5677cf4932 SHA512 08a014ff70718db11c5e3b8420d2b31379c14004b55c4521149030a00c3a623a358c3442815e492a2cd28d6a32002aa1c828cae2b5366f82d68c1e342eba0417
-DIST serde_json-1.0.41.crate 69870 BLAKE2B 328935ee765889b82cd88ac7eab921e279ea8ad41445a8344b194605e1571b30b6204add7dc4de1f87994d8162428eaf4d825e9744c9971349e8fee19507265f SHA512 63ac513a4813a65962d8f63476ce8e63ce71d1e6643da7443d774078e4a743835276c50c04ce535b2e43251383c537365581838a0bd5d4893a644e396eeec55b
-DIST strsim-0.7.0.crate 8435 BLAKE2B 6869075bc3949fbdec1b74548b816560d1bf3759ba4c3e972a84f885e6732edd25596d75a4b6f6b85d93821f559757d096cb5f0b0eb04dabd8bb974d214f3188 SHA512 3f92df0f444129b16fbb15c533b7bc1d6f18970b487b57345f74747fb7f41e3dc0cb61255712e94d419a5777b8f6a9cdf1a716718698c479eb98dfb6464d1983
-DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
-DIST syn-1.0.5.crate 190286 BLAKE2B 7d5c813bb4cebbc104978181532a050b0a7f79963a539d69a253ebdb15a83c275a5d5b04dfbb66a426afec2c90a450ed7be595619a2b5a31b0725d904f5adb92 SHA512 4cc18966040b1f86916876aa5ad8029a126f7ab8db55408b3f4bc343dd82dc357899dd4a7afc514c65fd269245f8850f8f2834b08bc2ee6cf6774282f75feadc
-DIST tempfile-3.0.8.crate 24549 BLAKE2B 839b7637add53e91b232246739b21a60c28bd54704b65da889bc92733fd117d9aa46289c44d94974c9c24d7d532c97a4ad7c64617e1df8bec21671ecd16419e4 SHA512 88f5bb3ac88b192b9f106d5902ac7563114b901df8c36cbb7f2eb7dccd631e19093cd1ec6aa82e4b833f35ab265072e81f3205773654c263555bee22a78abc00
-DIST tempfile-3.1.0.crate 25823 BLAKE2B a34721369923771d5f9a2fc64adaff2bff41da97a0ce79e01aaedb8d6670867220c671c0d23f7a8a9c71b09c0559efe4e7c9bab1f7f9d890866be1de1ce050a9 SHA512 a87ee51c36a81a8a8eb8f091eb57926682f38b707f7f641332d8752170e6c139a656ae49c6861f51e07c2fab5c86cc9b2ac158f5d89c6bff15d18934dd4e7ba5
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST serde-1.0.197.crate 77087 BLAKE2B 4a4e04ededf5fefaabfcc4e17457db823239e8eeee7631a905ed47800ca10d26a93632e3a9d1b784b83f84168d0d649cfa2e6f5f1e68ab15a68e837cd5b6c699 SHA512 69e42825fce6a0a5d109979785daceacfd6afc5641e202fe83da32e2b1f968416557cce97fa014839e873e65f85c27494c8f8e20e6e9e4fbedf20d0291880410
+DIST serde_derive-1.0.197.crate 55771 BLAKE2B 73708908b6d1e104af4c63b498bd25c5a728e07e22afdf92f15754c0f17636efe44c0560c1f0df1b9a30708e8e8894a62f1ea57c234b6dd861cb9c8dc044eb4b SHA512 669376e248b76a5ee8b9c93fd9fe6d35372e7267fbabc14730539ef28a94e405ee5e9c2cc2846897d59d6153742cdc6799f9e2c87f20b9dad119bd3a86c28994
+DIST serde_yaml-0.9.32.crate 65170 BLAKE2B b1651895b2828acb8b962398700ba6802718391369d94a11c63edf8bffdcc5df91170b619d29d0f97c40050232e416822a05d9743543ffcde79deddce0581a8b SHA512 121047516378ee1fe98ec0262be63f39bc09d8d46f0a7c98c0ef1792a8636a9a8ddf0f97608a57723af0f7e4de369e25c353180b9e6de749f57bb7349f419dee
+DIST serial_test-2.0.0.crate 7946 BLAKE2B 4f467100401f0800cf6cf3000b046d43a0df6c2164264061cdaaf9207cd719b087bc9fdd1fd64f1a8ba945c9f2c432786cf0bb5c77bc0d1525e14148cc6b6044 SHA512 65bbba74ddf39c3437b3afa327f7cb1befad12a81e639bc6285608211621b444dbf81edfde8b1b85c708a873c105d27aaf0d2f2d4dcac8872c68d92849c8f3dc
+DIST serial_test_derive-2.0.0.crate 5638 BLAKE2B 72fcbc0a6903b0ac82af3334048eab8fd43f65333570758d4a484f2a7ab83a44c39e9a9f4af3cb1be5296f25d863208a88e3243162664b710daffdeddfd8b3af SHA512 3cbab9f93c1b966e0827d9ee9f41e4cead47c2de8b8da80a3f9402549d01c9f28042d084abfb6f1037bd31c751de8e4139131014da7c80a165444bc3db804be3
+DIST signal-hook-0.3.17.crate 50296 BLAKE2B 5469a11485362b4a76f99c06071c69f6cc083bf4cceea93fce0b43385163ac3621b7a3c98d18ea1fb9e1439460ea37f470a29bfde9dea199e60a12b248be5d25 SHA512 045ac6268e504c5561d3884610a48c930dfd936086f793839f42602e92e4a8cef289955776e8eba8a5ca1a91b5f27ccb3724f49b32091f8f06c8bde984d82298
+DIST signal-hook-mio-0.2.3.crate 9064 BLAKE2B 2bd11d0fad02fab92871e0129fc4ea3a609a43cee5d33737d82a624018eaa90077f2c92fec88f7b19d3ada619b8618f9d33fbd2cf6b7c63d3175dc57fb0341a7 SHA512 98429330c109dacbeca5f0788d993d1ec2830b6f95886a433592b2096508dfef2027d62a99b985654dfcd927f7f3f93fbfc19361f8efaef5efe84cbacfc1ab08
+DIST signal-hook-registry-1.4.1.crate 17987 BLAKE2B f1df8bba55c72a506b9210347f9dcac4d158948e73f6d1e60f43340ddfae368aff1bbb6a109af326af47246d9738d49f76d380c52208efc3c6f79ea0acd31f0b SHA512 e83acec2b0083967555f6c659dfaacc32d851a9485c9f6f4b4cf257742ae3ffba8c14708c75f1a5520e9d132ea9e21d6eb65aba492eec481e8492af8b798c5d1
+DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
+DIST smallvec-1.13.1.crate 34952 BLAKE2B e0dcf1d26883564cd4f5d20a588562404e193075b1ae011f7f7542009a9466e5df3ade7768e1a8feb8806774b2cee5f15d31779928f83714e7d4b6ed46af9ab9 SHA512 1259ef947400470b8c9e74c5582dbc1a49753aa46420883c1f7d66f320f67bebe733a15a23cd57ba461020fad4ff337a5b298de82754602a78f5e6cec969652d
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-2.0.52.crate 254728 BLAKE2B 1e56e49de8fee8ed47e89a0791bb0188ee8f0dac127f6e17a1c91a3cb8744a61a6e3b8d3a7fa5cc450a453e9ba7c9ed844302d23cb6e6cd8ca8c624ca475b32e SHA512 a0fb277a4d4611c465d76adf83040a6ac4375275d9f9414fddb34f577573b0f5890b94773bd57660e9af4b65778888ddf34c99d829fe4f58a966484cd8dd9b05
+DIST sys-locale-0.3.1.crate 15681 BLAKE2B c60d11812280b8e0c1e5a753c7867351deaa43d26bb3ce0b381f56c2f375ec8db2755636131a13fadd79aa6d90b75c5834dbf52848b9ca50c1ecc5b627fc640a SHA512 c06ff352d5beb9d214f08e82b8d49acd8b83114e6b88c9685f0694d42bba079215e6afd1c5c75a8e8bfbcc72d99cb01de7a3d8f160196adb6db9c34bcf1a1ebd
+DIST tempfile-3.10.1.crate 33653 BLAKE2B 819b183e7840f70270883ee8b6a91fa09861c3112eaadc65007199885abe099bd593e1cdc4d9ab48c23490a6d484cad9bf0e80cf4e718c369cc2418b72eaf09c SHA512 bac7515b85b0d01ea914b527f0fadd3a4d8e77c9eabe786977d2625d8a3e91decaec502dd15bab4d49a43597fa7cf7660fff4be1b043112d13b542a72443bf39
DIST term_grid-0.1.7.crate 7353 BLAKE2B eb4d11b84995d8ca831c32c3b0c781244d7d97367aa6b877f1aaa21e6b10edad5a4597ab06d5c1b6a9cc00fbecd62fa3f28b9970119dec98c0eb5d0c74948b5f SHA512 12196d1f2579b6d593a7cdd34d74635b93fad710bcd682dd438143a9e814759346dc263dc8a65628b7ed8fc1dbcaa60fd9cec543d0cdae000cc5dc6fbb199bca
-DIST term_size-0.3.1.crate 10754 BLAKE2B b8ed33afdf8348d9be3200b33b18d121d86fe5a91b6ecd3a8f7a4e55b45910597738fd68c568b5c66feb2cf9d38ba62da705624b52ff01d30bb452c7eca8f6e8 SHA512 fb43e0519cc3371b23b3d4c52d25c59c3e45afc550ba081e8cb832a48d9dbd50cbb69bb154ae7926fe869eb2c35b72b95238cdb8822910bd68b4f65927ca6a5f
-DIST terminal_size-0.1.12.crate 8111 BLAKE2B a5b43c7fe8a3e13e49d7c9e787fc712f51313ea09648e474ac6eee4c0eceda346f5bd85ad69bac1eda67d6713d6d34230398a7b6b008cc3b58ee6d4d6b096bcd SHA512 6f0060529cda5a891a861566d22b0c3a17a702fccd8191387ec7e463bcd05cc88a80d889eb146ef704b6bc50c7b136d340b44897a300d6ef6269dd4b83837b5d
-DIST terminal_size-0.1.8.crate 7289 BLAKE2B 17a620858a1a3f32f105fa61cd3f57166e1fae57c422a1ed9b59ff61d3c8f7916c1f7e3d7e3728b8f3cad481b1529d8bddd5ea98ca425e37c14cb469dec08858 SHA512 2392e2d3c34e6dc83c43e804ceb9990af82066879a2d74b21e4ab88bf9a8698f34c8734f3e8e3febdda44c0633819809259fb34bd48d138d22ad6c4b448f396c
-DIST termion-1.5.1.crate 20659 BLAKE2B 5b4291c2c26a074c16eac2e7bcb40467380181bac69c941e5c958059dc239cbbfd74872d9bd3da65245d010f9fc39804c43dc96f4caab2499b021cf35977a6b0 SHA512 1d1536f08600c7c1f414b4579a1a6e7eff91f4c105504125118d3cadf71c7886a352d1c5f7e07f3d7c28aa8b4752f07b51eddb4d9adc6a9286f7b6bade2bec76
-DIST textwrap-0.10.0.crate 15986 BLAKE2B bcbd40fe4c8322e459c505e0f175b5b088322c33ba56d8c4b294788950681c2407ba08fae2c15711f8f0d5e1f0afed38f82deaffe1c2b16a4f4ab14723b71bb4 SHA512 cb50cc73f3f5ab704ef9e6d526b751f7e66de213fa534206e5b4e9da829f19aedda9f23f262f865fdb3247c703aeaa87f38099f6c575d1961ec923d62a9b2293
-DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
-DIST thread_local-0.3.6.crate 12388 BLAKE2B 290c35e5327e80a5cdca5609252b1efd1b78a654fc9ab4ba68eeaa3c2769d844f725d17d91cbb15048dbaac84913c51edcb39bb402882c9e7b4d0c4e4811518d SHA512 cd783d3d9caec43868da1f6118d4c4d520e03b9f1049d8f15d2c12482989401d3aee748e04a149953d35e5d6487355c2891d44569ef688bc1d45f01b6461d253
-DIST thread_local-1.0.1.crate 12609 BLAKE2B 34206b5232262cda9cc0fb970e20f154d43ff1c4477a5ad5ff9200e6d874a6c7b2bcd99a2dae75a984b54574281e049ad35307ace0dd188f44c9a95fa93139cf SHA512 f2bfca4eee32a8fc88a01ff5bf24518c12142228d95916d13aae35ed6addd0b7da2235359f15220049ef197555344ac31a8833775e7a5bd49144db9c54b3165b
-DIST time-0.1.40.crate 29518 BLAKE2B 9102a29eeeda597100e8e9f1e6a021df99678383d02264c8b94b07f5bef73aac5f0cc77345aa5d7d5db3f33d67581b4970e5a80597773afc726bcf73d1415b5b SHA512 a14753e598ae9def3f479741968bfba028e55debdfb1243cd1becfbf468d2c5fd8457aca720197e16a6a2c63e58e07c51cab5712327ad8ae37605a2825a29bc9
-DIST time-0.1.42.crate 30005 BLAKE2B 6d85ae2e56612b5c6955921b671ac62ad10c174fa9fd382e2d76018fc2789253836397b980f8e6d0db4f1b19da244c64d3bffb4fa6c25ac0b66e7ba9876590d4 SHA512 4df662212377093b0fd8fcd88ddc30b20a8af7d989c2e100c0cf64f9741e88eea6e858e1aa4220be6b76b0cf8b62c8116b492010d74d1ebef197c66aa130aa83
-DIST treeline-0.1.0.crate 3855 BLAKE2B 3347bee24c686a6b6890f85b60429d36b14f2738e6a5e5adcd493d099b097a8087f7c61f4c155fd8b3af3982a97da31740353b4d036ae451ed8944a9b0feaf75 SHA512 37a7c7e95855fdf0fafe5b529eed6c6cfc641da799bc6738a5649a9a0c3db2ef3e63d692862a987bc19263f33b6df2e8ae71b49fe30160d6d470cbb804511824
-DIST unicode-width-0.1.5.crate 15761 BLAKE2B 575e6bfe8b8b70cb0e5a167bf546df2964361a223b03a65bdc588c32d4cf9f01194daa8d6d1c90319f1f9981aa5b092dce67c9c97450be4ea630784d834cdbe2 SHA512 bd5ac5f0433953d79408074239edc7c43ce23d56659d467805d81ab01c576a3cf77ccedb3bba41d48bc4ad46a8905ac8a1927b99312053ef6295fd940a6766d2
-DIST unicode-width-0.1.6.crate 16394 BLAKE2B 8a4bd3dbe264635cbfe42c131f20a0e8f32989211434fbcc085abeb8b7fac841908e99c6130d626af363edf9b07fb82f6ddbc494812273521941d553980142c9 SHA512 d6c2e5a99ea359d866393a6b00e0e21e5d80e4e665e457c0f2f0bbebda53afeab75b1d9b6b79102339ee621bac5050e7d41621703a8fd9ffe1e74a5a4301aa05
-DIST unicode-width-0.1.7.crate 16644 BLAKE2B 8cc5ee2dfeeda8ffe3405a0d4f1576d2b3b8ede1a42cbefb0ba3bd0d71b53a92ceade86c4a06e9d5b31382955dc6e1152ae5cd279dc26dbc51f478dad1d0f64d SHA512 39b8a539c9009d0421f54ae68b139f21456c9cb03d743b58535a977f98bc9655cf42eaacfadbcff796c187a6f315ae16259ee22be9c2da5aa042172c6b464d84
-DIST unicode-xid-0.2.0.crate 14994 BLAKE2B e66b4255798f0ef1c81fb852613fee396a042d780d2158a171dbb5e7dedad0b3d2522f5401ae5d215f89ab8be4f5c371b046e4845693a65554c2a6eedc5d1e28 SHA512 590f727d8d8354023062ae5fe7ac5bed1bcf79d86b883effd7f33b3ea3b1c8922998a63d621ca6962a969e890fa6edd009871f21cd57b1969264f41ba3f78359
-DIST users-0.10.0.crate 18531 BLAKE2B 18f1dba893d2d88b33785b997f6b2a3582fbd5c2c21f460fd7ab3c98572d524dc0e0fdc1ab3c5651d46f4219cdfaa4b60fafc045f01f6147d99dd3aad92c146e SHA512 21052adcd602ff6c30a4e9f4e14fdca896dce03969b1b03069f93f3e9d2b25c66b83ac2f40ed4e960dcfb5a0e67719ee45da475855f6e397f3618273ea52469b
-DIST users-0.9.1.crate 20456 BLAKE2B 49a2dd188f8d944d361a4e58f3f437718af7510c2b684e22209058e97dfd9d5ecec2c901cbe2cef36ab74d11091b1280de8b94135da523f57b02372ed5571fe0 SHA512 e372f8402d241e924c77a13621053836a1a36a6a6b9b66d5e187a582be0a85638270ea140c048e07f6739ed228711095fc98705303c499f2b542fd548df0819a
-DIST vec_map-0.8.1.crate 14959 BLAKE2B f5c179ccb4349d543747d5e3bb3edfca4bc9f3f64ba3c2d40fb1d9cba98433b7a0641387aafda6347c9b3603592c64bd820b217b46fbfcd37f802f298e5793ab SHA512 026cf10dc7ba98ae51dd312fc847cbaea41c25f0da5db6e0e22c2ecf75584bbf876d7bd96035fbbcf6696d702d5a3f25977e02a2d77cf519aa21e3ed05710e40
-DIST version_check-0.1.5.crate 8173 BLAKE2B c1778a95fbc79e93bc25d6ee85c408cbcc2afc1a2317bd96b6d5e1c99862f26cc031e0a8b14451d7ea5a44d96c9b599c899bcebda36d3974effc51f9c236ca56 SHA512 cd3ca0b36108b0fe8e6a5c26614b4f3e3c36ffd13cd9eeb7693086b4a1f7b67c025613d90e79f4dd1bd3234a3e387b2ee890c6c410fe67d293b9b5503f5e9362
-DIST version_check-0.9.1.crate 11459 BLAKE2B 72f002c00504f635b7d2d7ee7137e07ba9c182d2e41d32a51851896f6bf6742c5524b7f66946437ba581ccf80b9c9a57280dd4b02df0918569ac710511940fc1 SHA512 b9cf363169df2022a961f5bed4fb7da07513e0283a85aa69752f6ac567e942611ed2216ac61799db1a199e2bdf0fd9b994e35d4a40c6cd80cd26b97cbfe977cf
+DIST terminal_size-0.2.6.crate 10585 BLAKE2B 8696b9046c717eec8bf7246346af84a5d0cb740ac6e1335a4d8c20476628f4c0dd7c6106cde33513681466e9701d4b05d73f22a3bd2dfabc4d22045a69d31345 SHA512 95f38bc00f8c5e1a6913bb2a0a7c46d96e02a4f3234af1623ad3d7be41eae677e77f1b5d5d005d1e9d778fcc6c87196f67a51ab37caab5b4d299da79c85d06ed
+DIST terminal_size-0.3.0.crate 10096 BLAKE2B 097ef50a85945128dcfa36d8ea0fb15f11142c206462a32980dbbba4fe2872abd214823fe3c75e804f3159a97d6e929ec338860e9c89587da509fb9e6da5d339 SHA512 f3bc9144aa8a87556543584a2495df6267ce3bb017f3ed3d00fa43e89b5de783e1285ca62dbad9dd9c3b37e3a476a6f3ab0804eba2411cb594a569bbdb310681
+DIST termtree-0.4.1.crate 4557 BLAKE2B d4300b0e6e908c519a0a76f5e08167f4467f428b2926e7739614cef5d3e294dfac15ae8576f7011a852745713c16da93346660ff96520a2bb90a4dd4c23d889c SHA512 ddbe0d3ddd79b182732359f47958ca32aa351d10b1e7d5f6456700b851aa2b5314ce005e1fd120a248b676f219fbd68039cefc071d92c5b5477d053bb6e29062
+DIST thiserror-1.0.57.crate 20993 BLAKE2B 4eb90b8ee027e39102d6c030176db94510180f2bd2966503501ff89ca6b49afd61e6d9e1ebf18c08d374ff9de4e958dfcb3da8740fdfe31cceace5be456bfe4b SHA512 0ff7e48c3696f4f4c6af29f3142f0a7bb88a07b7a9877ec243e3ea15d89c48f1898b731311da5d4a7c88060628cae3eeea6a4eccf25bd851cb3075920cb1a936
+DIST thiserror-impl-1.0.57.crate 15639 BLAKE2B 2838235c5536fcb16d19382fe286850d6fb882b1d77ca4ade6a62e1d4727ef89f69cf0383cf330996f9e2303226d5fd709557331a45c9a91393db1788fbf4422 SHA512 a850806f09b232546d1e0df5e35cd961a8aa32f1d8ac3b24df360981da53b75325a46dc788c994042c95a5887fdc77234b9f6ee5851242f734a613e579548e3c
+DIST tinyvec-1.6.0.crate 45991 BLAKE2B e9699d4d80a78978f0ebfd049f5b33d7f23d401cf4f4439ccb168e8c0e322473ad0ea7e2ff0ff69e9aac3e5c4c9ae5a7102185533bfbf96dbe77b3526e700bc9 SHA512 e5acaf353c58c60ae5556130a934f1048abb79cf6668ae467d308bac44b689d8a9997227ea879f4b5fe50f29cde8761801b088d7149bcd063b973056c381921c
+DIST tinyvec_macros-0.1.1.crate 5865 BLAKE2B 2bf4f68ca11dc19c72232951605a4c809b34ff38ee365ee4f592a3c41360e23c9330cfba961e2692a0ad568fef4aaaac51c40808d491178cf7a0c4b5a1c5d484 SHA512 10008c7b3a3d50c94b9c370015b76ee082f5dfb6dcacf014dc2f2dbe92f903618d10d0202b21f48fcf98a94ae76fb712db55a5e8ad353645d378cf0e6ec74f7e
+DIST unicode-bidi-0.3.15.crate 56811 BLAKE2B 1f1d372c86ec7444f13eb32baf13dfc8699b52156b265a2b53f40c0d771064876405451120fe54739a2679e6991caaf4f63e0644f03729cab814079fef4868c8 SHA512 7a21d5eb05ea8d691dfd54ce4cf7d3693d08067f7a88ef17b8c3044634f46411176b1bde1516c442577910b254007b247f5e40f9932eb601cd96cd574f9d9db8
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST unicode-normalization-0.1.23.crate 122649 BLAKE2B 22ea5ce3f5a2b371c3c8782321b1bbbee724db1e4d8c1d43af4e6bd8044b99307c227d93631d178d10fda445a941a485882ae0015a6e3d3c347e4bd465bbe1d9 SHA512 539f04010810d73fde7b0ab314faf813f3e7ecd2e51d7975281554b7cba4a8706e2b5523c4b7840568593652360ca59e9db0e1ce342e71c28db635ff55ffb0f5
+DIST unicode-width-0.1.11.crate 19187 BLAKE2B 6baf7f3b32eb838925e591792abfe11968206d177facefb89ef51daf44c18f3fef1e41c19a47b88b81be50667af626af2024ccc540b240fb6e1d83fdea57076f SHA512 ee06f4144525424327a17578642565f396802f0eea539b3bebc8d9627376a8bc6c5376d83a6ee577068e99fe75815bd765e6d49fb9ab9b253d00594bb15a5ffe
+DIST unsafe-libyaml-0.2.10.crate 61964 BLAKE2B 07de7d3925cfa25f7d95d7a48c7fd5266d1db763b2715d6eecb7b288a834b794590df4638c91d0f021d348c354f7320441e54d62871c7156ddaa821409884a7b SHA512 9989fd93105ae343ce3ed097fc66e62ad9fcb64b8ace4ac2f7bcd374782f9919082ba0bc0f246a9a7071c35172f08953560a8108553076a819d9d1d7dce9a5aa
+DIST url-2.5.0.crate 78605 BLAKE2B f3fec3477248cbbe67866577eebb03f517c284a5e5cb783132b11ef3ad156a03524f4730f188d822dec85169d7474e265099296d6bdd4adf5ffaa0a118821617 SHA512 4aedbc48b85bcc2853189f5fe8265a01c76516b5507f4e958d8d0b860fe2590c69c95f0f4b9fd6fac9b8d5911bcb0a5e9ab7f8e8b600f37a12db1438976ee5c3
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST uzers-0.11.3.crate 22745 BLAKE2B 59a64624c1a59dff483e28f1b80499191c9a860dcb00e4f27c5c39942ba5a1ec6a4fbe98bb585fca079f4594a57fb24db41675e1aac87fb4873e6056ef13c98f SHA512 3a4eb2d2479550bb34319d2d3841f1e4a5b024dd85193ce127a90479b3d801880d9d3624caa265aaaf9908c7dea73fd7da5780c12c2984db3db04ce45668d97d
+DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST vsort-0.2.0.crate 6964 BLAKE2B b166d0758b1a97c9844a539125960846039690f78c8ec395f5b3a892d045a89d72c28d3be45402b3e2c68c126fdebdb4fcf8333204cd361bf6e769f5ef3442fc SHA512 09af5357775c9e0dc5c7f61d01bb7bb62ece67956e3a3d7c9649d6cf4b97325f7770ac2657128880923377dd07060cd5234ef7bd647c47105e4950771996925e
DIST wait-timeout-0.2.0.crate 12441 BLAKE2B a99d3f57bc6e784ac06167f98b2dc2841f730dfab4fb9772b15e67707f756d6ba7daeb3e992d32291bed3daa85eaa8a8ddde64db5e1acf1cc4031fc9bdc82212 SHA512 db3b7aa2acfd44e64451042b8ba98eecab77a82aa5c58ed08dadb119ab36dee4e26d62baad7978ed56d5ad03019c96be5021455362290f56043981137bac8066
-DIST walkdir-2.2.9.crate 22423 BLAKE2B 7c5f1aa4a2078d4821a1fffc57751950295c99706b48198c70556461aa42b2535d93fd95804a6c5003ea906848accee510fe5bc6148c4155e6de074ba324da2a SHA512 43b8f629a43195c8cd8ad6821b431dd3648a19e6abb83f78deaa3300e7dafa32b31b3c89a228499585e3da4520ca26d82dabf938c1204c8011e5516b3b82da7b
-DIST walkdir-2.3.1.crate 23413 BLAKE2B fc9601f4a28cec383297dbd87d422e56db1e989e4273900750f05d1f4a92e114a5b1a5a54368e290c5f4b47159ed51f52d85ce66f003cd2f52ffc737ead20f8b SHA512 ba807ff0d098aabdcd37e23204632beea1dbb7a6adfd16cb1009cae9e7b6957cfeab705cc454bf8f2b62a08743214ab995e43bf46fc510012c938f9e2a434951
-DIST wasi-0.7.0.crate 33941 BLAKE2B de1e4e577a1237a233f81ff1a3bd7f888020a42d93a807187a154a3ae0593397358a8667a065f0cdd5497dd2a89889e418d33a0d42ab1631b3f99677e9ebd665 SHA512 1950e78df7f0ba21b917680633d092704f1fb906bd973de4ddc43cedb7bf449f6e881d50e3aa0d5595e8d58796915d582b69c116ef536f819b6f035affea18f0
-DIST wasi-0.9.0+wasi-snapshot-preview1.crate 31521 BLAKE2B 716bdd2ec46d0bc9911c5e5e29fc783840559931b2563d8619675fc11da9527ddbe653a0f1ce0b782ee0c5f7a3131aba2b0867d415f003aa9c2389357569e7dc SHA512 dbe641f796ee3a5daafcaafc911ecc6dff170340f477c2df7a61fb4858a85aefc2637c9e61973ecce66a987aa8e08a736273a4aad3ef47eaf61ed4268dbf9c47
-DIST wild-2.0.1.crate 6946 BLAKE2B 00aef7e2de0ed4c055cfdfcd3b1bd03ff53fac394ab76ab9173ed1e13992673252a35ec03a36ff0ce115d1f17e54a9af829301bb9df24ea2cc7cbd084861ee01 SHA512 001f83176ab74b1ebff70fa63bcb93d66aee8eb7519d917af3ba894a208b2346da38ff278b26b11affde90755530ea707918c9476e3b0c72951d23bcb1677ec9
-DIST wild-2.0.2.crate 7714 BLAKE2B c55c016fd6e784492d419c11f43eeff1ca7ea6e5598770188a56db1fbd6c8732769041abc36f76ad720dd9a3780806bec943e74333b4f8f36dd9b9f6a3d94a9b SHA512 31f9169b77127c1fb20dcb29cd6b0eeeaa5654086d65db2eae5ffe744e3ffec8de98927caea21f699ec79a1f040d6891070ef7f2e99aba5fee79c13e77ca9f80
-DIST winapi-0.2.8.crate 455145 BLAKE2B 50f3c2a0cf4eeedd6891b11392e520c1cca139a71f8f736eabaf43aa7e4b1b5d57697918978220459572d373940edf971eb8302f292cbff832283e905076319a SHA512 115e6f027cdd4a56f77ca24f4ab249d2a6cac1e1f955c826a9b6ee05db4861790a533f5e674aebbb540370fff52ed41618c2cd7c906e73200e92df213109cebe
-DIST winapi-0.3.6.crate 1029391 BLAKE2B 9a52085c3cb74d84bc66cee575da0105eeca69f6abd3c8c601a4de013bafea795f044748be10ec9ab419a9ec82a304a0b65ba4d74f6cb39baff91228f83009f1 SHA512 991eb3d6ba08d59e7f7ec81ebf469cecc56b3723b636392972d2fdc1d6f13d88f8a244ad5cbb20f6058d12b44e060ed663c12aa3fbcd1235ab511fafa105cd3c
-DIST winapi-0.3.8.crate 1128308 BLAKE2B e0e8ef6121f222b0500525192ebb69b26b71cc16f9ba92186f8ad6acc9de4cb8cc7c738f9c31f5bd223d2e34c93c496e8448c973d69797776004670c70abf69c SHA512 5a899ee5f09f30d742b8b8eba78da05cd9f4c664408fdeb9370373f8756a962a23e3f1c07619e745b3270138606c9a369076c02c3f5353f657df09d203d9a736
-DIST winapi-build-0.1.1.crate 669 BLAKE2B 6c8d8e0f81574c086f06fb3f234b0e6759d293d1d254857c3d491e4d43279e5c2f57f2fcfdc9d5d7b083280f4cc2a75a6ee9bc1541ec6ce8f8d904ded0567faf SHA512 8b0a239e205a5368892f41c870a8a7ea16e3468c364b03382bef7fa3a2e7159b09c07661e95b1227578f6d72c14879daa4444b28c51ae20ef15d985d59ca5a77
+DIST walkdir-2.5.0.crate 23951 BLAKE2B a2d3a973f206e94699adec0263dd5e211347722cf3ab82536295019268b3125084da5dbcad818070bfdcb6a5de08da4eb483475bc225a829f58a1e3e040b5fba SHA512 da36a121dc6656942dc9cd9887fcf4f6eea7750354ef3f59c7c25d836e7afe06f33260b4d55d0d99421104ed4ce56ef2a1f0f4c3b713766fff90548c21793fad
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST wasm-bindgen-0.2.92.crate 184119 BLAKE2B ca256c686bb3854492bad6afe3cd27dab314561a1ea2e0205579820066b462bacdb2cc01075fb420bd20eb33b03a648ce1ff46feee04d8759ea8aa990ff8232a SHA512 6e46501276c0d4befbf930c816d6ae6c3764e3b5ce0ef4aafa627a6ea371f1a056ecc15970a817e9e9bf51c0a2ffa57df427d758b2d367beb6a474d75b8939a5
+DIST wasm-bindgen-backend-0.2.92.crate 28348 BLAKE2B 425497aa7a023b70549c55d5a15dfed80877c5503863b186c0a9d11b29551c4606c1cd5961c7dfdeee2eab5662952ad7ad215513e93abe727a33f84b30bd181e SHA512 22e4f5848d62bd1fd55f4f054ea1293e223b3cd6f916bde2523eec10388e733623492c3a3246d61831e696dffdec5d000b95e9aa1217be6e38dd6459872166aa
+DIST wasm-bindgen-macro-0.2.92.crate 13835 BLAKE2B 1f2202fdaeb78c32813eaf08b2fbd7aa9c469228386df71b8ffd81a46374e39a7104b79991f702505f9b7e97957fda8574517fbb03e3f9e93098c4d6e1e46be3 SHA512 78d2ddac88a9ca3ca5eef8a7af81cdf2366187a67d844e69f65f6893d1949f9723ab5f2be762c2217a5c21aee2f3dbc2d5d55ef0c9cbf0dec0d52d67a6ba7462
+DIST wasm-bindgen-macro-support-0.2.92.crate 20092 BLAKE2B 8e274a4053e7afc680740e811c3941478caf5342e2206e3d28cdea9f9514bedbfa4f2b6bc608817306a1c455dd7134b7e17f0f04499f6bfb5302f29b041ac7ae SHA512 92543d2aad0b25798ec20e68832b823610c2c01401088cd9cac1684a86ddd1b567b3e2712acb862060f9c645a0df509b01d9834fd3e13cdaab97960f66d8daa7
+DIST wasm-bindgen-shared-0.2.92.crate 7263 BLAKE2B e54895486b9a31cc4651b7bb042059cc84421708346c06a9764315ebd4f440a1077520c7d325d6889a690b2c06aa185d40cede2dc4d061b363594cbde20fac31 SHA512 70e3a22731ed8aec428433bf30500eb3f62e3b7f4f1be34d8bb3b6f34f99690fc85d49eb413caecab807064494cfec64242c6a42709dffd638046e370bf86e07
+DIST wild-2.2.1.crate 8080 BLAKE2B 489a2a625aa8091fdef9f4d49747db7816d82c01384672bd12ff9e4c906f3418fa5a5fa8951b625f6d22a9c1977c523f1b54d7c4252c241413ef6f63d327cb29 SHA512 8f92b83cb2568fed7841ad372111138d9ea5806c21a0affaecc639f0556ab879ca42fe205fe3c1e55a1b5c1c4fb0b705a5566b06bad5c119a1d41df9c01ed2c9
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
-DIST winapi-util-0.1.2.crate 7810 BLAKE2B 511f14b606b591da19159f0f49665846e55ef8e22c7519fedaa5dd65cdc0c51134606c2a7ff0a6cbd7f24e75aaf3109959decaf2a5171fe01fbfc7ad7453fbc4 SHA512 54514420da9851f9657f888d8b198b3a97a6009b7e965d5a23ec471251f6548c2a58c716a5f48fb5d83a5775503d696da98eaed7b71fdd9ba7cd74ba6923b11a
-DIST winapi-util-0.1.4.crate 10089 BLAKE2B 5dfae5588233a6fa10ec000b3c5de17679e7636bcfb70cbbc1b2b1340543334125b413d53583459823be253a32b90279eba5a3a8debb404390d0328ed6377352 SHA512 2a90921a30ca021b6178b175b780e4803f40ac87f35bcb63bb09fbc9c79f8f991dd94fa3a0fa525c2e38354d9f6dee780a6cc5ea0a24bff49356d052f6bb8231
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-0.43.0.crate 11492640 BLAKE2B 793aa1a7f5ba07b864ee318d529f0003a979c3c5b588860cc317dd6abb499db73ae7ba98e2c18765f7539ffa3eb2af80fdd10d12238b5e0cfa1fbcf535a0ea9e SHA512 810a1a08ea65dad929ebacef8a2c2f13837f09680d97d1e9db7349b00b54a06ebc5fa1c7e9bb5ecf4a2d0cda54d4acd6b89e3eaeb9e7e1ac888ce105cfbcc139
+DIST windows-core-0.52.0.crate 42154 BLAKE2B 9670bf02261b4ab2a24eff97dad11e305deac823cacfae286965b62b11bc035f19a55ca710eaa4359c8a4905433a94fe62a836b77ddd68f244ad6ac2c9657f58 SHA512 0c8f1c7e63c11bdcf1361150ecc83abbfba8da2c6d28523799bd286bf8aa1df61ffed19175e8cb3ef516a9afb6248b640c2101a2e0c09a99bfd7a18c6741bd36
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows-targets-0.52.4.crate 6310 BLAKE2B 0393bf3e7f8823edc455055e9977798bd6cdc1e523127cf840ee1b9e36febe40e01dcad9875a06aea283dd55443d02f643d42752103a5ec1de933285fe410b17 SHA512 4b2c26468df54b9801e6badd120dcffc15429fc78a614f45efa16d5fed1a36983198fbb621cc3beb4a4f9f0161ef8ddeca3a5c6a6ac48b5589681936f4d2bf50
+DIST windows_aarch64_gnullvm-0.42.2.crate 364071 BLAKE2B 97c4e3b2a2dd3f936f9bfcdad23639c9c4c499eed220aec361d26d6013d798efa118e6b298f9cf841ac149d2ae5d58ca653731718450fcf2910bb5f6fa39159f SHA512 75cd7eb1def8ce9d0ff3d7468d2b1cc31cc76c08f981a2460c3d1eb09cff7100d7442863a3591621c1f5f3b3f4badf0b5c95285b6ed583e37283a8403f1095f1
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_gnullvm-0.52.4.crate 433373 BLAKE2B 5678cf2371e4c566b7ff0dd1fabcae92d12ce9f97670524c93fd8c34bf6b09d054e7de2f852302b8d994f52c81015b7cc8a74f529490c7bdd17a3b5d2c88a12e SHA512 dbb914a866873892a8cffecd4ed4977fe6c3fc48a58bb9f88655d86e7f8969cc27e6f5bb7d40eee41ae7d78f6f4be65d46650719321a7697c7b5b99a0f07a5dd
+DIST windows_aarch64_msvc-0.42.2.crate 666981 BLAKE2B 9f3cc5592cdede08bcdc1e7c455325279e3b763d96942695e10dccf1dfc37a81c749b69a7d6de883d4c0fa6e8a0d2f578fe2a8d6c42ad8ef6282590bf8fc87b7 SHA512 d2dafa8c94d01c1b65ca1bd631d31f2ef842f1db7accb132ff78c3f8483221b991afd3391563e03dcec42bbc9cbdc0ebdab47b991d25af85b5ba2ac1bbf8db63
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_aarch64_msvc-0.52.4.crate 828055 BLAKE2B 3088f2f66fc91ad698906315eae7e6c0dd7da5414c28cfa25b24e138fc4a7da40535be09129cd37b8e331d8d6e8c41d0106fba1ef9e5b4ac561140653e9ded4d SHA512 dcc538d0a9c276e7ec415575ec1392bf476219348984d9567f56d5cc7af0f9beeac523a9a6651f763dd4f50f89535a3ea2275d5321ec022c2ee8814e4e84e95b
+DIST windows_i686_gnu-0.42.2.crate 736236 BLAKE2B 4ef0496462afc73d9d72af7e5da1e6d3506a92f8172930e88ae64ab97596ffd31c4f97fb969e9b677e30159c27f00a8e756deb006b630fb98ce83f03c8b762e2 SHA512 ad09d650a05cb91cb6b40f59025c023a4c286bc1194586697c506016df2b9b0d5b02606b81687bc634795a0d9a9b8a73e486599328ae09c853e8e5ba662fc59c
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_gnu-0.52.4.crate 875736 BLAKE2B 31ee3017a6db246b0d5fc02e10cdb517a69ceac3dbbc9d41b4051f5dfa1196e4a46e7b3f5f90935560c03bb139b897e5dce69989a3698d9c88ebae923e24ef30 SHA512 9d57260744607eb63453040c532bf3693cf3d8d93c56543ee00aa66adf3a71919e72bdef7811f287167403ade893248f189b797a5d2dcb24ef4e6f3d915a88c6
+DIST windows_i686_msvc-0.42.2.crate 724951 BLAKE2B b084286cd4927efd2889b149abf8a9fe9d3d777130db9e592982660dbf9a96a0f5e723ca121465787aa11877d2d29a5a7d7cf066cdc8fa7e90d7ca7dcb7677f1 SHA512 c1706fc36d4b157c020744a11b3eb5d7dfbf05a0b56775bc717e94b7fd725816b20154fdbcd69ac08dbfb8b8bbfa74fab72d7a9c10399aad6a1cc54cf597e804
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_i686_msvc-0.52.4.crate 895530 BLAKE2B 87ec4628472beec8697317662fd599a8ea0ba5a11a0cad6b23f2481f39b3a4e0546d37fade4d715ad06a4798cf7faa6435bafa1e5054105c064cb560468b6025 SHA512 0d5526b21bfb96ab352b5181dcf84ff31007ce338245a374b3b413805239359a689b1a21de56ae998cc13444e40867bc30c4200454b84ef9ffa7117318baef1e
+DIST windows_x86_64_gnu-0.42.2.crate 699373 BLAKE2B 01c70809d564b16b268656e47295e99c992d8f9839fac8a51338a0e7c3b9cdcd0429c456ca8c1c139a8c687ed7ed6c43a82250889d881aadaa65bd037223e0a6 SHA512 5767af3c86e717f93137a89d442230e6b60a649057edb3ab104b1f82c0bcd64fe089dcdf2f4fd486a799bece1ddb5f0449641536b678211945e749ae24f35c1f
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnu-0.52.4.crate 831627 BLAKE2B 64d29f6e0837be822d89cc8aaea2514382d2c03b33deb5684df1d6b81573b3817add39d99f66181a762fae7c155e60a8c070affe43a0f2e247fb0c5ddcc7afd9 SHA512 96c673fb330af597fc3c71b53b9b66cacc9f3f64f05dc7cfe4a77447b7545280f065df22b7d91a6b7cf681a442d8b71c9d2dd128e76580664d8598c481cbb95e
+DIST windows_x86_64_gnullvm-0.42.2.crate 364068 BLAKE2B 64bc53e98eb3fc649c9b43a6e734de4e65088e41edacabd49f7afcc5dc6e1065c563ecfc682747dda05978dea2dba4f45c16fcc18c3b00684c3d93681e5a7deb SHA512 d39a8bc948110fe612d3f8d6628b3f0d56620df11d8a49e0fabb6c90389ad407582b3af10e4eab46c79b3d11d2e10753d73d9e55963fbeac085f41e9749bdba3
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_gnullvm-0.52.4.crate 433358 BLAKE2B ffd55fba15ef713bd48caec5ed5f32936e05ac4897b721bd2b041229bc8c7beeca77ca018c3258dcdb09495629aa359d1dadaaf5112d38e7ea54670309d0ddf4 SHA512 f153d86b01e47f17ef08271b69becf7883bab92f96d40cdb1d74432f2bc6a7a65aa4ed931d8f6f4c2679e360bbd8d12037dc2a74a6a444fcaec5e4c784c54c74
+DIST windows_x86_64_msvc-0.42.2.crate 666936 BLAKE2B bc3a456e7f8bc272f8978ec69506ec9d89f97b7582ebbe05d8bd57bdf8156ef62d0d2dc6137a97e81d54059d70db97a24af9a038adff357f5dfd28805d6193b5 SHA512 53a35f438903fceb59e36bd2ac331773fb8e6c8c5a6d984e79021761f91b3b4a23efe49d219667a4d0d23dcdbf906da9c24e74fb1cff93395b5c55ff524e3788
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
+DIST windows_x86_64_msvc-0.52.4.crate 828019 BLAKE2B 08163b63d934114457cd64b1c372f8a0cfc1ebf48a2efb41d79031c58ea64e023acd32d2f5075b8b78536998188138562e584ece95f2021b4bc71087ac45f026 SHA512 0671fa3c0463c6d65b525ece8bc91eab2f75cb534de86ba2b1e854d4136fcb439717441881206dba7cfb602493bc24d2aefa96abf8977f5a0fe38d41eadc90f1
+DIST xattr-1.3.1.crate 12580 BLAKE2B 25c414d761a7fcd23bbe057add62c6da971cf33149066aa024320ab80e0ec8e8e8d5d3d0506e8de954b8f8c178d34c52a00a5fa9aa109510678098a3e3564b7f SHA512 4047abda42b949cf58f820e15ee99850de483857bbaaef737eeee48e1a2132972470f15bb2ddda56438f6a934918be96607a8de518a5a3dcec7c8ee6c00ad280
+DIST xdg-2.5.2.crate 14394 BLAKE2B 9d7ad2681ba450b73c66aefd8602a1d32e13e0ec751a368188b61000a5efb3fac943f6e5d6875f409aff6eddff3b2ba22631f71dcda4ea44dac080d551053f4a SHA512 12c7f42d2afd63d8d196511fa069519a0c495fc2555c87c059b96b46d7e2a2c51c31836c48fb329806d312a45a2fd67b4243793aa91e2139e2aa3f05230b2edd
+DIST yaml-rust-0.4.5.crate 47783 BLAKE2B 3e888c5cc7afb43eaf3aaab2b6f47b86df164a66eb54d4e166b965cc84b1e06cd17bd992a0d6ee175d9a73a76e2b44a13167246383ed054afcf3cc1710b309cb SHA512 7621dc8dfd5e7d4a7a8805b2a7e8319b63b852367655f2359d4e3e8fec6c4fad52d75c46ce1161e4c674eac0780b757ce9d34e664e304d8d2beec7afa0363ea0
diff --git a/sys-apps/lsd/lsd-0.16.0.ebuild b/sys-apps/lsd/lsd-0.16.0.ebuild
deleted file mode 100644
index 41bda95080ef..000000000000
--- a/sys-apps/lsd/lsd-0.16.0.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-ansi_term-0.11.0
-atty-0.2.11
-autocfg-0.1.4
-bitflags-1.0.4
-cfg-if-0.1.9
-chrono-0.4.6
-chrono-humanize-0.0.11
-clap-2.32.0
-cloudabi-0.0.3
-fuchsia-cprng-0.1.1
-glob-0.2.11
-kernel32-sys-0.2.2
-libc-0.2.55
-lscolors-0.5.0
-lsd-0.16.0
-num-integer-0.1.39
-num-traits-0.2.6
-rand-0.6.5
-rand_chacha-0.1.1
-rand_core-0.3.1
-rand_core-0.4.0
-rand_hc-0.1.0
-rand_isaac-0.1.1
-rand_jitter-0.1.4
-rand_os-0.1.3
-rand_pcg-0.1.2
-rand_xorshift-0.1.1
-rdrand-0.4.0
-redox_syscall-0.1.43
-redox_termios-0.1.1
-remove_dir_all-0.5.1
-strsim-0.7.0
-tempfile-3.0.8
-term_grid-0.1.7
-term_size-0.3.1
-terminal_size-0.1.8
-termion-1.5.1
-textwrap-0.10.0
-time-0.1.40
-unicode-width-0.1.5
-users-0.9.1
-vec_map-0.8.1
-version_check-0.1.5
-wild-2.0.1
-winapi-0.2.8
-winapi-0.3.6
-winapi-build-0.1.1
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-x86_64-pc-windows-gnu-0.4.0
-"
-
-inherit cargo
-
-DESCRIPTION="A modern ls with a lot of pretty colors and awesome icons"
-HOMEPAGE="https://github.com/Peltoche/lsd"
-SRC_URI="https://github.com/Peltoche/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- $(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 BSD-2 ISC MIT"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-BDEPEND=">=virtual/rust-1.31.0"
-
-QA_FLAGS_IGNORED="/usr/bin/lsd"
-
-src_install() {
- cargo_src_install
- einstalldocs
-}
diff --git a/sys-apps/lsd/lsd-0.17.0.ebuild b/sys-apps/lsd/lsd-0.17.0.ebuild
deleted file mode 100644
index 2932b2d6452f..000000000000
--- a/sys-apps/lsd/lsd-0.17.0.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-aho-corasick-0.7.6
-ansi_term-0.11.0
-ansi_term-0.12.1
-assert_cmd-0.11.1
-assert_fs-0.11.3
-atty-0.2.13
-autocfg-0.1.7
-bitflags-1.2.1
-bstr-0.2.8
-c2-chacha-0.2.3
-cfg-if-0.1.10
-chrono-0.4.9
-chrono-humanize-0.0.11
-clap-2.33.0
-crossbeam-channel-0.3.9
-crossbeam-utils-0.6.6
-difference-2.0.0
-escargot-0.4.0
-float-cmp-0.4.0
-fnv-1.0.6
-getrandom-0.1.12
-glob-0.3.0
-globset-0.4.4
-globwalk-0.5.0
-ignore-0.4.10
-itoa-0.4.4
-kernel32-sys-0.2.2
-lazy_static-1.4.0
-libc-0.2.65
-log-0.4.8
-lscolors-0.6.0
-lsd-0.17.0
-memchr-2.2.1
-normalize-line-endings-0.2.2
-num-integer-0.1.41
-num-traits-0.2.8
-ppv-lite86-0.2.6
-predicates-1.0.1
-predicates-core-1.0.0
-predicates-tree-1.0.0
-proc-macro2-1.0.6
-quote-1.0.2
-rand-0.7.2
-rand_chacha-0.2.1
-rand_core-0.5.1
-rand_hc-0.2.0
-redox_syscall-0.1.56
-regex-1.3.1
-regex-syntax-0.6.12
-remove_dir_all-0.5.2
-ryu-1.0.2
-same-file-1.0.5
-serde-1.0.101
-serde_derive-1.0.101
-serde_json-1.0.41
-strsim-0.8.0
-syn-1.0.5
-tempfile-3.1.0
-term_grid-0.1.7
-term_size-0.3.1
-terminal_size-0.1.8
-textwrap-0.11.0
-thread_local-0.3.6
-time-0.1.42
-treeline-0.1.0
-unicode-width-0.1.6
-unicode-xid-0.2.0
-users-0.9.1
-vec_map-0.8.1
-version_check-0.9.1
-walkdir-2.2.9
-wasi-0.7.0
-wild-2.0.2
-winapi-0.2.8
-winapi-0.3.8
-winapi-build-0.1.1
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-util-0.1.2
-winapi-x86_64-pc-windows-gnu-0.4.0
-"
-
-inherit cargo
-
-DESCRIPTION="A modern ls with a lot of pretty colors and awesome icons"
-HOMEPAGE="https://github.com/Peltoche/lsd"
-SRC_URI="https://github.com/Peltoche/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- $(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 BSD-2 ISC MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-BDEPEND=""
-
-QA_FLAGS_IGNORED="/usr/bin/lsd"
-
-src_install() {
- cargo_src_install
- einstalldocs
-}
diff --git a/sys-apps/lsd/lsd-0.18.0.ebuild b/sys-apps/lsd/lsd-0.18.0.ebuild
deleted file mode 100644
index 52c34a79c861..000000000000
--- a/sys-apps/lsd/lsd-0.18.0.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-aho-corasick-0.7.10
-ansi_term-0.11.0
-ansi_term-0.12.1
-assert_cmd-1.0.1
-assert_fs-1.0.0
-atty-0.2.14
-autocfg-1.0.0
-bitflags-1.2.1
-bstr-0.2.12
-cfg-if-0.1.10
-chrono-0.4.11
-chrono-humanize-0.0.11
-clap-2.33.0
-crossbeam-channel-0.4.2
-crossbeam-utils-0.7.2
-difference-2.0.0
-doc-comment-0.3.3
-float-cmp-0.6.0
-fnv-1.0.6
-getrandom-0.1.14
-glob-0.3.0
-globset-0.4.5
-globwalk-0.7.3
-hermit-abi-0.1.10
-ignore-0.4.14
-kernel32-sys-0.2.2
-lazy_static-1.4.0
-libc-0.2.68
-log-0.4.8
-lscolors-0.7.0
-maybe-uninit-2.0.0
-memchr-2.3.3
-normalize-line-endings-0.3.0
-num-integer-0.1.42
-num-traits-0.2.11
-ppv-lite86-0.2.6
-predicates-1.0.4
-predicates-core-1.0.0
-predicates-tree-1.0.0
-rand-0.7.3
-rand_chacha-0.2.2
-rand_core-0.5.1
-rand_hc-0.2.0
-redox_syscall-0.1.56
-regex-1.3.6
-regex-syntax-0.6.17
-remove_dir_all-0.5.2
-same-file-1.0.6
-strsim-0.8.0
-tempfile-3.1.0
-term_grid-0.1.7
-term_size-0.3.1
-terminal_size-0.1.12
-textwrap-0.11.0
-thread_local-1.0.1
-time-0.1.42
-treeline-0.1.0
-unicode-width-0.1.7
-users-0.10.0
-vec_map-0.8.1
-version_check-0.9.1
-wait-timeout-0.2.0
-walkdir-2.3.1
-wasi-0.9.0+wasi-snapshot-preview1
-wild-2.0.2
-winapi-0.2.8
-winapi-0.3.8
-winapi-build-0.1.1
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-util-0.1.4
-winapi-x86_64-pc-windows-gnu-0.4.0
-"
-
-inherit cargo
-
-DESCRIPTION="A modern ls with a lot of pretty colors and awesome icons"
-HOMEPAGE="https://github.com/Peltoche/lsd"
-SRC_URI="https://github.com/Peltoche/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- $(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 BSD-2 ISC MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-BDEPEND=""
-
-QA_FLAGS_IGNORED="/usr/bin/lsd"
-
-src_install() {
- cargo_src_install
- einstalldocs
-}
diff --git a/sys-apps/lsd/lsd-1.1.2.ebuild b/sys-apps/lsd/lsd-1.1.2.ebuild
new file mode 100644
index 000000000000..f8fb5e9772f4
--- /dev/null
+++ b/sys-apps/lsd/lsd-1.1.2.ebuild
@@ -0,0 +1,233 @@
+# Copyright 2017-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ aho-corasick@1.1.2
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ anstream@0.3.2
+ anstyle-parse@0.2.3
+ anstyle-query@1.0.2
+ anstyle-wincon@1.0.2
+ anstyle@1.0.6
+ assert_cmd@2.0.14
+ assert_fs@1.1.1
+ autocfg@1.1.0
+ bitflags@1.3.2
+ bitflags@2.4.2
+ bstr@1.9.1
+ bumpalo@3.15.4
+ cc@1.0.90
+ cfg-if@1.0.0
+ chrono-humanize@0.2.3
+ chrono@0.4.35
+ clap@4.3.24
+ clap_builder@4.3.24
+ clap_complete@4.5.1
+ clap_derive@4.3.12
+ clap_lex@0.5.1
+ colorchoice@1.0.0
+ core-foundation-sys@0.8.6
+ crossbeam-deque@0.8.5
+ crossbeam-epoch@0.9.18
+ crossbeam-utils@0.8.19
+ crossterm@0.27.0
+ crossterm_winapi@0.9.1
+ dashmap@5.5.3
+ difflib@0.4.0
+ dirs-sys@0.4.1
+ dirs@5.0.1
+ doc-comment@0.3.3
+ equivalent@1.0.1
+ errno@0.3.8
+ fastrand@2.0.1
+ float-cmp@0.9.0
+ form_urlencoded@1.2.1
+ futures-channel@0.3.30
+ futures-core@0.3.30
+ futures-executor@0.3.30
+ futures-io@0.3.30
+ futures-sink@0.3.30
+ futures-task@0.3.30
+ futures-util@0.3.30
+ futures@0.3.30
+ getrandom@0.2.12
+ git2@0.18.2
+ glob@0.3.1
+ globset@0.4.14
+ globwalk@0.9.1
+ hashbrown@0.14.3
+ heck@0.4.1
+ hermit-abi@0.3.9
+ human-sort@0.2.2
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.60
+ idna@0.5.0
+ ignore@0.4.22
+ indexmap@2.2.5
+ io-lifetimes@1.0.11
+ is-terminal@0.4.12
+ itoa@1.0.10
+ jobserver@0.1.28
+ js-sys@0.3.69
+ lazy_static@1.4.0
+ libc@0.2.153
+ libgit2-sys@0.16.2+1.7.2
+ libredox@0.0.1
+ libz-sys@1.1.15
+ linked-hash-map@0.5.6
+ linux-raw-sys@0.3.8
+ linux-raw-sys@0.4.13
+ lock_api@0.4.11
+ log@0.4.21
+ lscolors@0.16.0
+ memchr@2.7.1
+ mio@0.8.11
+ normalize-line-endings@0.3.0
+ nu-ansi-term@0.49.0
+ num-traits@0.2.18
+ once_cell@1.19.0
+ option-ext@0.2.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ percent-encoding@2.3.1
+ pin-project-lite@0.2.13
+ pin-utils@0.1.0
+ pkg-config@0.3.30
+ predicates-core@1.0.6
+ predicates-tree@1.0.9
+ predicates@3.1.0
+ proc-macro2@1.0.78
+ pure-rust-locales@0.8.1
+ quote@1.0.35
+ redox_syscall@0.4.1
+ redox_users@0.4.4
+ regex-automata@0.4.6
+ regex-syntax@0.8.2
+ regex@1.10.3
+ rustix@0.37.27
+ rustix@0.38.31
+ ryu@1.0.17
+ same-file@1.0.6
+ scopeguard@1.2.0
+ serde@1.0.197
+ serde_derive@1.0.197
+ serde_yaml@0.9.32
+ serial_test@2.0.0
+ serial_test_derive@2.0.0
+ signal-hook-mio@0.2.3
+ signal-hook-registry@1.4.1
+ signal-hook@0.3.17
+ slab@0.4.9
+ smallvec@1.13.1
+ strsim@0.10.0
+ syn@2.0.52
+ sys-locale@0.3.1
+ tempfile@3.10.1
+ term_grid@0.1.7
+ terminal_size@0.2.6
+ terminal_size@0.3.0
+ termtree@0.4.1
+ thiserror-impl@1.0.57
+ thiserror@1.0.57
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.1
+ unicode-bidi@0.3.15
+ unicode-ident@1.0.12
+ unicode-normalization@0.1.23
+ unicode-width@0.1.11
+ unsafe-libyaml@0.2.10
+ url@2.5.0
+ utf8parse@0.2.1
+ uzers@0.11.3
+ vcpkg@0.2.15
+ version_check@0.9.4
+ vsort@0.2.0
+ wait-timeout@0.2.0
+ walkdir@2.5.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.92
+ wasm-bindgen-macro-support@0.2.92
+ wasm-bindgen-macro@0.2.92
+ wasm-bindgen-shared@0.2.92
+ wasm-bindgen@0.2.92
+ wild@2.2.1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-core@0.52.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.48.5
+ windows-targets@0.52.4
+ windows@0.43.0
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.4
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.4
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.4
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.4
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.4
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.4
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.4
+ xattr@1.3.1
+ xdg@2.5.2
+ yaml-rust@0.4.5
+"
+
+inherit bash-completion-r1 cargo
+
+DESCRIPTION="An ls command with a lot of pretty colors and some other stuff."
+HOMEPAGE="https://github.com/lsd-rs/lsd/"
+SRC_URI="
+ https://github.com/lsd-rs/lsd/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="Apache-2.0"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 MIT MPL-2.0 Unicode-DFS-2016"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 ~riscv ~x86"
+
+QA_FLAGS_IGNORED="usr/bin/lsd"
+
+src_prepare() {
+ sed -i -e '/strip/s:true:false:' Cargo.toml || die
+ default
+}
+
+src_compile() {
+ export SHELL_COMPLETIONS_DIR="${T}/shell_completions"
+ cargo_src_compile
+}
+
+src_install() {
+ cargo_src_install
+
+ local DOCS=( README.md doc/lsd.md )
+ einstalldocs
+
+ newbashcomp "${T}"/shell_completions/lsd.bash lsd
+
+ insinto /usr/share/fish/vendor_completions.d
+ doins "${T}"/shell_completions/lsd.fish
+
+ insinto /usr/share/zsh/site-functions
+ doins "${T}"/shell_completions/_lsd
+}
diff --git a/sys-apps/lsd/metadata.xml b/sys-apps/lsd/metadata.xml
index 8238443079e5..2d896ce62874 100644
--- a/sys-apps/lsd/metadata.xml
+++ b/sys-apps/lsd/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
</maintainer>
<longdescription lang="en">
A modern ls with a lot of pretty colors and awesome icons.
@@ -11,8 +11,7 @@
For example it is written in rust and not in ruby which makes it really faster
</longdescription>
<upstream>
- <bugs-to>https://github.com/Peltoche/lsd/issues</bugs-to>
- <changelog>https://github.com/Peltoche/lsd/blob/master/CHANGELOG.md</changelog>
- <remote-id type="github">Peltoche/lsd</remote-id>
+ <bugs-to>https://github.com/lsd-rs/lsd/issues</bugs-to>
+ <remote-id type="github">lsd-rs/lsd</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/lshw/Manifest b/sys-apps/lshw/Manifest
index e68eaf4c6389..a6dbc0a3d840 100644
--- a/sys-apps/lshw/Manifest
+++ b/sys-apps/lshw/Manifest
@@ -1 +1,2 @@
-DIST lshw-B.02.18.tar.gz 2322176 BLAKE2B 66183895fcdd5b47bfaa044c10f7b561b3310829b53828444a20f078ce63e166a878595c8a8a79e22f1e4ab726e98165a1b31225997785d2bfc3ad5d7b0c5214 SHA512 4385db86101178b8bd33a80e991718e14f83277c66b3d63ae97cb4339196873b6e9b31a174024bf43d16fe66e1d7f8cf5cea56076697878087880c8821b11e47
+DIST lshw-02.19.2b_p20220831-B.02.19.2_p20220831.tar.gz 2473654 BLAKE2B 5f3753902a49a65c2b616d94ba376d2408bf972c11c854699ed69de6a22ef6f9dbaeb2cc13ffd52a4607a8baf6f74cfe00d1206f94c9287bce99aae035b2d2e1 SHA512 ec7992aa09dc6e01bd1c7b9c7e0b7d5b041f558759a2ba6cdef574d4d6886e69e5fe5bac023b06574deec2f03bb52e306359faa0e0689ea5e65fd84359efd2b2
+DIST lshw-B.02.20.tar.gz 2484139 BLAKE2B 8abdd7cee6c42b8956229a0b62ac9f96359750f26cbfeb2ed74402eae3e7cd818133bf0b747351522c6387974ce2a98cf5ab29379e56c50abc980e497bcc19d7 SHA512 afc5d57f4b7c49d8e1934a3df623657882cc1325268c8c024dc0fa25495edd3ce7fdadb9c83ac6e5d3e723bc08d6175162d4d879ced09f76ad145ff42b38d3f0
diff --git a/sys-apps/lshw/files/lshw-02.18b-gentoo.patch b/sys-apps/lshw/files/lshw-02.18b-gentoo.patch
deleted file mode 100644
index 0a50e9dc868c..000000000000
--- a/sys-apps/lshw/files/lshw-02.18b-gentoo.patch
+++ /dev/null
@@ -1,161 +0,0 @@
---- lshw-B.02.18/src/Makefile
-+++ lshw-B.02.18/src/Makefile
-@@ -21,11 +21,11 @@
- CXX?=c++
- INCLUDES=-I./core/
- DEFINES=-DPREFIX=\"$(PREFIX)\" -DSBINDIR=\"$(SBINDIR)\" -DMANDIR=\"$(MANDIR)\" -DDATADIR=\"$(DATADIR)\"
--CXXFLAGS=-g -Wall -g $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
-+CXXFLAGS += -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
- ifeq ($(SQLITE), 1)
- CXXFLAGS+= -DSQLITE $(shell pkg-config --cflags sqlite3)
- endif
--LDFLAGS=-L./core/ -g
-+LDFLAGS += -L./core/
- ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
- LDFLAGS+= -Wl,--as-needed
- endif
-@@ -39,27 +39,25 @@
- export LIBS
- export LDFLAGS
-
--DATAFILES = pci.ids usb.ids oui.txt manuf.txt
--
--all: $(PACKAGENAME) $(PACKAGENAME).1 $(DATAFILES)
-+all: $(PACKAGENAME) $(PACKAGENAME).1
-
- .cc.o:
- $(CXX) $(CXXFLAGS) -c $< -o $@
-
- .PHONY: core
- core:
-- +make -C core all
-+ $(MAKE) -C core all
-
- $(PACKAGENAME): core $(PACKAGENAME).o
- $(CXX) $(LDFLAGS) -o $@ $(PACKAGENAME).o $(LIBS)
-
- .PHONY: po
- po:
-- +make -C po all
-+ $(MAKE) -C po all
-
- .PHONY: gui
- gui: core
-- +make -C gui all
-+ $(MAKE) -C gui all
-
- .PHONY: nologo
- nologo:
-@@ -70,7 +68,6 @@
-
- $(PACKAGENAME)-static: core core/lib$(PACKAGENAME).a $(PACKAGENAME).o
- $(CXX) $(LDSTATIC) $(LDFLAGS) -o $@ $(PACKAGENAME).o $(LIBS)
-- $(STRIP) $@
-
- .PHONY: compressed
- compressed: $(PACKAGENAME)-compressed
-@@ -93,14 +90,13 @@
- manuf.txt:
- wget -O $@ http://anonsvn.wireshark.org/wireshark/trunk/manuf
-
--install: all
-+install:
- $(INSTALL) -d -m 0755 $(DESTDIR)/$(SBINDIR)
- $(INSTALL) -m 0755 $(PACKAGENAME) $(DESTDIR)/$(SBINDIR)
- $(INSTALL) -d -m 0755 $(DESTDIR)/$(MANDIR)/man1
- $(INSTALL) -m 0644 $(PACKAGENAME).1 $(DESTDIR)/$(MANDIR)/man1
- $(INSTALL) -d -m 0755 $(DESTDIR)/$(DATADIR)/$(PACKAGENAME)
-- $(INSTALL) -m 0644 $(DATAFILES) $(DESTDIR)/$(DATADIR)/$(PACKAGENAME)
-- make -C po install
-+ $(MAKE) -C po install
-
- install-gui: gui
- $(INSTALL) -d -m 0755 $(DESTDIR)/$(SBINDIR)
-@@ -112,8 +108,8 @@
-
- clean:
- rm -f $(PACKAGENAME).o $(PACKAGENAME) $(PACKAGENAME)-static $(PACKAGENAME)-compressed
-- make -C core clean
-- make -C gui clean
-+ $(MAKE) -C core clean
-+ $(MAKE) -C gui clean
-
- .timestamp:
- date --utc +%Y%m%d%H%M%S > $@
---- lshw-B.02.18/src/core/Makefile
-+++ lshw-B.02.18/src/core/Makefile
-@@ -1,10 +1,9 @@
- PACKAGENAME?=lshw
-
--CXX=c++
-+CXX?=c++
- INCLUDES=
- DEFINES=-DPREFIX=\"$(PREFIX)\" -DSBINDIR=\"$(SBINDIR)\" -DMANDIR=\"$(MANDIR)\" -DDATADIR=\"$(DATADIR)\"
--CXXFLAGS?=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
--LDFLAGS=
-+CXXFLAGS += -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
- LDSTATIC=
- LIBS=
-
---- lshw-B.02.18/src/core/pci.cc
-+++ lshw-B.02.18/src/core/pci.cc
-@@ -17,7 +17,7 @@
-
- #define PROC_BUS_PCI "/proc/bus/pci"
- #define SYS_BUS_PCI "/sys/bus/pci"
--#define PCIID_PATH DATADIR"/pci.ids:/usr/share/lshw/pci.ids:/usr/local/share/pci.ids:/usr/share/pci.ids:/etc/pci.ids:/usr/share/hwdata/pci.ids:/usr/share/misc/pci.ids"
-+#define PCIID_PATH "/usr/share/misc/pci.ids"
-
- #define PCI_CLASS_REVISION 0x08 /* High 24 bits are class, low 8 revision */
- #define PCI_VENDOR_ID 0x00 /* 16 bits */
---- lshw-B.02.18/src/core/usb.cc
-+++ lshw-B.02.18/src/core/usb.cc
-@@ -27,7 +27,7 @@
-
- #define PROCBUSUSBDEVICES "/proc/bus/usb/devices"
- #define SYSKERNELDEBUGUSBDEVICES "/sys/kernel/debug/usb/devices"
--#define USBID_PATH DATADIR"/usb.ids:/usr/share/lshw/usb.ids:/usr/local/share/usb.ids:/usr/share/usb.ids:/etc/usb.ids:/usr/share/hwdata/usb.ids:/usr/share/misc/usb.ids"
-+#define USBID_PATH "/usr/share/misc/usb.ids"
-
- #define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */
- #define USB_CLASS_AUDIO 1
---- lshw-B.02.18/src/gui/Makefile
-+++ lshw-B.02.18/src/gui/Makefile
-@@ -1,5 +1,7 @@
- PACKAGENAME?=lshw
-
-+SQLITE?=0
-+
- CXX?=c++
- CC?=cc
- STRIP?=strip
-@@ -8,14 +10,15 @@
- DEFINES=-DPREFIX=\"$(PREFIX)\" -DSBINDIR=\"$(SBINDIR)\" -DMANDIR=\"$(MANDIR)\" -DDATADIR=\"$(DATADIR)\"
- GTKINCLUDES=$(shell pkg-config gtk+-2.0 --cflags)
- INCLUDES=-I../core $(GTKINCLUDES)
--CXXFLAGS=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
-+CXXFLAGS += -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
- CFLAGS=$(CXXFLAGS) $(DEFINES)
- GTKLIBS=$(shell pkg-config gtk+-2.0 gmodule-2.0 --libs)
--LIBS=-L../core -llshw -lresolv $(GTKLIBS)
--LDFLAGS=
--ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
-- LDFLAGS+= -Wl,--as-needed
--endif
-+LIBS=-L../core -llshw -lresolv $(GTKLIBS)
-+
-+ifeq ($(SQLITE), 1)
-+ CXXFLAGS+= -DSQLITE $(shell pkg-config --cflags sqlite3)
-+ LIBS+= $(shell pkg-config --libs sqlite3)
-+endif
-
- OBJS = gtk-lshw.o callbacks.o engine.o print-gui.o stock.o
- SRCS = $(OBJS:.o=.c)
-@@ -39,7 +42,6 @@
- $(CXX) $(LDFLAGS) -o $@ $^ $(LIBS)
-
- install: all
-- $(STRIP) gtk-$(PACKAGENAME)
-
- clean:
- rm -f $(OBJS) gtk-$(PACKAGENAME) gtk-lshw.glade.bak gtk-lshw.gladep.bak callbacks.c.bak callbacks.h.bak Makefile.bak
diff --git a/sys-apps/lshw/files/lshw-02.18b-gettext-array.patch b/sys-apps/lshw/files/lshw-02.18b-gettext-array.patch
deleted file mode 100644
index 4aea6420d7c1..000000000000
--- a/sys-apps/lshw/files/lshw-02.18b-gettext-array.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-patch sent upstream
-
-From 1fb7ebed787ec1b73218c1f12cbb71b103433375 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Tue, 14 Mar 2017 22:25:12 -0700
-Subject: [PATCH] fix array access with string translations
-
-The code forgot to rebase the num to 0 before indexing the string array.
-It also provides 5 strings, but was only allowing 4 to be accessed.
----
- src/core/dmi.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/core/dmi.cc b/src/core/dmi.cc
-index 250f48572d54..0db074975f2d 100644
---- a/src/core/dmi.cc
-+++ b/src/core/dmi.cc
-@@ -510,8 +510,8 @@ static const char *dmi_memory_array_location(u8 num)
- };
- if (num <= 0x0A)
- return _(memory_array_location[num]);
-- if (num >= 0xA0 && num < 0xA4)
-- return _(jp_memory_array_location[num]);
-+ if (num >= 0xA0 && num <= 0xA4)
-+ return _(jp_memory_array_location[num - 0xA0]);
- return "";
- }
-
---
-2.12.0
-
diff --git a/sys-apps/lshw/files/lshw-02.18b-sgx.patch b/sys-apps/lshw/files/lshw-02.18b-sgx.patch
deleted file mode 100644
index 92bd6c23e2f3..000000000000
--- a/sys-apps/lshw/files/lshw-02.18b-sgx.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-patch from upstream:
-https://ezix.org/src/pkg/lshw/commit/5e5744732b2dcdf83845919256388b3842033183
-
-From 5e5744732b2dcdf83845919256388b3842033183 Mon Sep 17 00:00:00 2001
-From: Wenkai Du <wenkai.du@intel.com>
-Date: Fri, 22 Dec 2017 09:57:57 -0800
-Subject: [PATCH] lshw: fix segmentation fault when /dev/sgx is present
-
-When Intel SGX is enabled in kernel, /dev/sgx is created and is
-picked up by "/dev/sg*" glob matching.
-
-Signed-off-by: Wenkai Du <wenkai.du@intel.com>
----
- src/core/scsi.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/core/scsi.cc b/src/core/scsi.cc
-index b38dda2cd8a8..75061c0fb195 100644
---- a/src/core/scsi.cc
-+++ b/src/core/scsi.cc
-@@ -30,7 +30,7 @@
-
- __ID("@(#) $Id$");
-
--#define SG_X "/dev/sg*"
-+#define SG_X "/dev/sg[0-9]*"
- #define SG_MAJOR 21
-
- #ifndef SCSI_IOCTL_GET_PCI
---
-2.15.1
-
diff --git a/sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch b/sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch
new file mode 100644
index 000000000000..cce97cc611b6
--- /dev/null
+++ b/sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch
@@ -0,0 +1,33 @@
+diff --git a/src/Makefile b/src/Makefile
+index 7ae8218..5c990b0 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -30,7 +30,7 @@ endif
+ ifeq ($(ZLIB), 1)
+ CXXFLAGS+= -DZLIB $(shell pkg-config --cflags zlib)
+ endif
+-LDFLAGS+=-L./core/ -g
++LIBS+=-L./core/
+ ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
+ LDFLAGS+= -Wl,--as-needed
+ endif
+@@ -44,7 +44,6 @@ ifeq ($(ZLIB), 1)
+ endif
+
+ export CXXFLAGS
+-export LIBS
+ export LDFLAGS
+
+ ifeq ($(ZLIB), 1)
+diff --git a/src/gui/Makefile b/src/gui/Makefile
+index 63c4ff5..7946736 100644
+--- a/src/gui/Makefile
++++ b/src/gui/Makefile
+@@ -18,7 +18,6 @@ LIBS+=-L../core -llshw -lresolv $(GTKLIBS)
+ ifeq ($(SQLITE), 1)
+ LIBS+= $(shell pkg-config --libs sqlite3)
+ endif
+-LDFLAGS=
+ ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
+ LDFLAGS+= -Wl,--as-needed
+ endif
diff --git a/sys-apps/lshw/lshw-02.18b-r1.ebuild b/sys-apps/lshw/lshw-02.18b-r1.ebuild
deleted file mode 100644
index bd4bc8ff6db2..000000000000
--- a/sys-apps/lshw/lshw-02.18b-r1.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PLOCALES='fr'
-
-inherit flag-o-matic eutils toolchain-funcs l10n
-
-MAJ_PV=${PV:0:${#PV}-1}
-MIN_PVE=${PV:0-1}
-MIN_PV=${MIN_PVE/b/B}
-
-MY_P="$PN-$MIN_PV.$MAJ_PV"
-DESCRIPTION="Hardware Lister"
-HOMEPAGE="https://www.ezix.org/project/wiki/HardwareLiSter"
-SRC_URI="https://www.ezix.org/software/files/${MY_P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="gtk sqlite static"
-
-REQUIRED_USE="static? ( !gtk )"
-
-RDEPEND="gtk? ( x11-libs/gtk+:2 )
- sqlite? ( dev-db/sqlite:3 )"
-DEPEND="${RDEPEND}
- gtk? ( virtual/pkgconfig )
- sqlite? ( virtual/pkgconfig )"
-RDEPEND="${RDEPEND}
- sys-apps/hwids"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-02.18b-gentoo.patch
- "${FILESDIR}"/${PN}-02.18b-gettext-array.patch
- "${FILESDIR}"/${PN}-02.18b-sgx.patch
-)
-
-src_prepare() {
- epatch "${PATCHES[@]}"
-
- l10n_find_plocales_changes "src/po" "" ".po" || die
- sed -i \
- -e "/^LANGUAGES =/ s/=.*/= $(l10n_get_locales)/" \
- src/po/Makefile || die
- sed -i \
- -e 's:\<pkg-config\>:${PKG_CONFIG}:' \
- src/Makefile src/gui/Makefile || die
-}
-
-src_compile() {
- tc-export CC CXX AR PKG_CONFIG
- use static && append-ldflags -static
-
- # Need two sep make statements to avoid parallel build issues. #588174
- local sqlite=$(usex sqlite 1 0)
- emake SQLITE=${sqlite} all
- use gtk && emake SQLITE=${sqlite} gui
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install $(usex gtk 'install-gui' '')
- dodoc README.md docs/*
- if use gtk ; then
- newicon -s scalable src/gui/artwork/logo.svg gtk-lshw.svg
- make_desktop_entry \
- "${EPREFIX}"/usr/sbin/gtk-lshw \
- "${DESCRIPTION}"
- fi
-}
diff --git a/sys-apps/lshw/lshw-02.18b.ebuild b/sys-apps/lshw/lshw-02.18b.ebuild
deleted file mode 100644
index 0ed6352a9d3b..000000000000
--- a/sys-apps/lshw/lshw-02.18b.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PLOCALES='fr'
-
-inherit flag-o-matic eutils toolchain-funcs l10n
-
-MAJ_PV=${PV:0:${#PV}-1}
-MIN_PVE=${PV:0-1}
-MIN_PV=${MIN_PVE/b/B}
-
-MY_P="$PN-$MIN_PV.$MAJ_PV"
-DESCRIPTION="Hardware Lister"
-HOMEPAGE="https://www.ezix.org/project/wiki/HardwareLiSter"
-SRC_URI="https://www.ezix.org/software/files/${MY_P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="gtk sqlite static"
-
-REQUIRED_USE="static? ( !gtk )"
-
-RDEPEND="gtk? ( x11-libs/gtk+:2 )
- sqlite? ( dev-db/sqlite:3 )"
-DEPEND="${RDEPEND}
- gtk? ( virtual/pkgconfig )
- sqlite? ( virtual/pkgconfig )"
-RDEPEND="${RDEPEND}
- sys-apps/hwids"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-02.18b-gentoo.patch
- "${FILESDIR}"/${PN}-02.18b-gettext-array.patch
-)
-
-src_prepare() {
- epatch "${PATCHES[@]}"
-
- l10n_find_plocales_changes "src/po" "" ".po" || die
- sed -i \
- -e "/^LANGUAGES =/ s/=.*/= $(l10n_get_locales)/" \
- src/po/Makefile || die
- sed -i \
- -e 's:\<pkg-config\>:${PKG_CONFIG}:' \
- src/Makefile src/gui/Makefile || die
-}
-
-src_compile() {
- tc-export CC CXX AR PKG_CONFIG
- use static && append-ldflags -static
-
- # Need two sep make statements to avoid parallel build issues. #588174
- local sqlite=$(usex sqlite 1 0)
- emake SQLITE=${sqlite} all
- use gtk && emake SQLITE=${sqlite} gui
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install $(usex gtk 'install-gui' '')
- dodoc README.md docs/*
- if use gtk ; then
- newicon -s scalable src/gui/artwork/logo.svg gtk-lshw.svg
- make_desktop_entry \
- "${EPREFIX}"/usr/sbin/gtk-lshw \
- "${DESCRIPTION}"
- fi
-}
diff --git a/sys-apps/lshw/lshw-02.19.2b_p20220831-r1.ebuild b/sys-apps/lshw/lshw-02.19.2b_p20220831-r1.ebuild
new file mode 100644
index 000000000000..254bede1f4ad
--- /dev/null
+++ b/sys-apps/lshw/lshw-02.19.2b_p20220831-r1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="ca es fr"
+
+inherit desktop flag-o-matic plocale toolchain-funcs xdg-utils
+
+MY_COMMIT=42fef565731411a784101de614a54bff79d1858e
+MY_PV=$(ver_cut 3 PV/b/B).$(ver_cut 1-3)_$(ver_cut 5-6)
+
+DESCRIPTION="Hardware Lister"
+HOMEPAGE="https://www.ezix.org/project/wiki/HardwareLiSter"
+SRC_URI="https://ezix.org/src/pkg/lshw/archive/${MY_COMMIT}.tar.gz -> ${P}-${MY_PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
+IUSE="gtk sqlite static"
+
+REQUIRED_USE="static? ( !gtk !sqlite )"
+
+DEPEND="${RDEPEND}"
+RDEPEND="sys-apps/hwdata
+ gtk? ( x11-libs/gtk+:3 )
+ sqlite? ( dev-db/sqlite:3 )"
+BDEPEND="gtk? ( virtual/pkgconfig )
+ sqlite? ( virtual/pkgconfig )"
+
+S=${WORKDIR}/${PN}
+
+DOCS=( COPYING README.md docs/{Changelog,TODO,IODC.txt,lshw.xsd,proc_usb_info.txt} )
+
+PATCHES=( "${FILESDIR}"/lshw-02.19.2b-respect-LDFLAGS.patch )
+
+src_prepare() {
+ default
+
+ plocale_find_changes "src/po" "" ".po" || die
+ sed -i \
+ -e "/^LANGUAGES =/ s/=.*/= $(plocale_get_locales)/" \
+ src/po/Makefile || die
+ sed -i \
+ -e 's:\<pkg-config\>:${PKG_CONFIG}:' \
+ -e 's:+\?make -C:${MAKE} -C:' \
+ -e '/^CXXFLAGS/s:=-g: +=:' \
+ -e '/^CXXFLAGS/s:-g ::' \
+ -e '/^LDFLAGS/s: -g::' \
+ -e '/^all:/s: $(DATAFILES)::' \
+ -e '/^install:/s: all::' \
+ src/Makefile src/gui/Makefile || die
+ sed -i \
+ -e '/^CXXFLAGS/s:\?=-g: +=:' \
+ -e '/^LDFLAGS=/d' \
+ src/core/Makefile || die
+ sed -i \
+ -e '/^#define PCIID_PATH/s:DATADIR"\/pci.ids.*:"/usr/share/hwdata/pci.ids":' \
+ src/core/pci.cc || die
+ sed -i \
+ -e '/^#define USBID_PATH/s:DATADIR"\/usb.ids.*:"/usr/share/hwdata/usb.ids":' \
+ src/core/usb.cc || die
+}
+
+src_compile() {
+ tc-export CC CXX AR PKG_CONFIG
+ use static && append-ldflags -static
+
+ # Need two sep make statements to avoid parallel build issues. #588174
+ local sqlite=$(usex sqlite 1 0)
+ emake VERSION=${MY_PV} SQLITE=${sqlite} all
+ use gtk && emake SQLITE=${sqlite} gui
+}
+
+src_install() {
+ emake VERSION=${MY_PV} DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install $(usex gtk 'install-gui' '')
+ if use gtk ; then
+ newicon -s scalable src/gui/artwork/logo.svg lshw.svg
+ make_desktop_entry \
+ "${EPREFIX}"/usr/sbin/gtk-lshw \
+ "${DESCRIPTION}"
+ fi
+}
+
+pkg_postinst() {
+ if use gtk ; then
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ fi
+}
+
+pkg_postrm() {
+ if use gtk ; then
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ fi
+}
diff --git a/sys-apps/lshw/lshw-02.20.2b-r1.ebuild b/sys-apps/lshw/lshw-02.20.2b-r1.ebuild
new file mode 100644
index 000000000000..9d3ac231faee
--- /dev/null
+++ b/sys-apps/lshw/lshw-02.20.2b-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="ca es fr"
+
+inherit desktop flag-o-matic plocale toolchain-funcs xdg-utils
+
+MY_PV=$(ver_cut 3 PV/b/B).$(ver_cut 1-2)
+
+DESCRIPTION="Hardware Lister"
+HOMEPAGE="https://www.ezix.org/project/wiki/HardwareLiSter"
+SRC_URI="https://www.ezix.org/software/files/${PN}-${MY_PV}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="gtk sqlite static"
+
+REQUIRED_USE="static? ( !gtk !sqlite )"
+
+DEPEND="${RDEPEND}"
+RDEPEND="sys-apps/hwdata
+ gtk? ( x11-libs/gtk+:3 )
+ sqlite? ( dev-db/sqlite:3 )"
+BDEPEND="gtk? ( virtual/pkgconfig )
+ sqlite? ( virtual/pkgconfig )"
+
+DOCS=( COPYING README.md docs/{Changelog,TODO,IODC.txt,lshw.xsd,proc_usb_info.txt} )
+
+PATCHES=( "${FILESDIR}"/lshw-02.19.2b-respect-LDFLAGS.patch )
+
+src_prepare() {
+ default
+
+ plocale_find_changes "src/po" "" ".po" || die
+ sed -i \
+ -e "/^LANGUAGES =/ s/=.*/= $(plocale_get_locales)/" \
+ src/po/Makefile || die
+ sed -i \
+ -e 's:\<pkg-config\>:${PKG_CONFIG}:' \
+ -e 's:+\?make -C:${MAKE} -C:' \
+ -e '/^CXXFLAGS/s:=-g: +=:' \
+ -e '/^CXXFLAGS/s:-g ::' \
+ -e '/^LDFLAGS/s: -g::' \
+ -e '/^all:/s: $(DATAFILES)::' \
+ -e '/^install:/s: all::' \
+ src/Makefile src/gui/Makefile || die
+ sed -i \
+ -e '/^CXXFLAGS/s:\?=-g: +=:' \
+ -e '/^LDFLAGS=/d' \
+ src/core/Makefile || die
+ sed -i \
+ -e '/^#define PCIID_PATH/s:DATADIR"\/pci.ids.*:"/usr/share/hwdata/pci.ids":' \
+ src/core/pci.cc || die
+ sed -i \
+ -e '/^#define USBID_PATH/s:DATADIR"\/usb.ids.*:"/usr/share/hwdata/usb.ids":' \
+ src/core/usb.cc || die
+}
+
+src_compile() {
+ tc-export CC CXX AR PKG_CONFIG
+ use static && append-ldflags -static
+
+ # Need two sep make statements to avoid parallel build issues. #588174
+ local sqlite=$(usex sqlite 1 0)
+ emake VERSION=${MY_PV} SQLITE=${sqlite} all
+ use gtk && emake SQLITE=${sqlite} gui
+}
+
+src_install() {
+ emake VERSION=${MY_PV} DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install $(usex gtk 'install-gui' '')
+ if use gtk ; then
+ newicon -s scalable src/gui/artwork/logo.svg lshw.svg
+ make_desktop_entry \
+ "${EPREFIX}"/usr/sbin/gtk-lshw \
+ "${DESCRIPTION}"
+ fi
+}
+
+pkg_postinst() {
+ if use gtk ; then
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ fi
+}
+
+pkg_postrm() {
+ if use gtk ; then
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ fi
+}
diff --git a/sys-apps/lshw/metadata.xml b/sys-apps/lshw/metadata.xml
index 56c124413057..f3841042bf2b 100644
--- a/sys-apps/lshw/metadata.xml
+++ b/sys-apps/lshw/metadata.xml
@@ -1,8 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
+<maintainer type="person">
+ <email>bkohler@gentoo.org</email>
+ <name>Ben Kohler</name>
</maintainer>
+<upstream>
+ <doc>https://ezix.org/src/pkg/lshw/wiki</doc>
+ <bugs-to>https://ezix.org/project/newticket?component=lshw</bugs-to>
+ <changelog>https://www.ezix.org/project/wiki/HardwareLiSter#Changes</changelog>
+</upstream>
</pkgmetadata>
diff --git a/sys-apps/lssbus/lssbus-0.1-r1.ebuild b/sys-apps/lssbus/lssbus-0.1-r1.ebuild
new file mode 100644
index 000000000000..dcccbdee5776
--- /dev/null
+++ b/sys-apps/lssbus/lssbus-0.1-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Small utility for Linux/SPARC that list devices on SBUS"
+HOMEPAGE="https://people.redhat.com/tcallawa/lssbus/"
+SRC_URI="https://people.redhat.com/tcallawa/lssbus/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* sparc"
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dosbin lssbus
+ einstalldocs
+}
diff --git a/sys-apps/lssbus/lssbus-0.1.ebuild b/sys-apps/lssbus/lssbus-0.1.ebuild
deleted file mode 100644
index 76bb56f21acf..000000000000
--- a/sys-apps/lssbus/lssbus-0.1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Small utility for Linux/SPARC that list devices on SBUS"
-HOMEPAGE="https://people.redhat.com/tcallawa/lssbus/"
-SRC_URI="https://people.redhat.com/tcallawa/lssbus/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* sparc"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-
-src_install() {
- dosbin lssbus
- einstalldocs
-}
diff --git a/sys-apps/lssbus/metadata.xml b/sys-apps/lssbus/metadata.xml
index c9ad33a72059..f9fc11659802 100644
--- a/sys-apps/lssbus/metadata.xml
+++ b/sys-apps/lssbus/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sparc@gentoo.org</email>
- <name>Sparc Team</name>
+ <name>SPARC architecture team</name>
</maintainer>
</pkgmetadata>
diff --git a/sys-apps/lsvpd/Manifest b/sys-apps/lsvpd/Manifest
index c6b05110407f..0f71148fd6ec 100644
--- a/sys-apps/lsvpd/Manifest
+++ b/sys-apps/lsvpd/Manifest
@@ -1,2 +1 @@
-DIST lsvpd-1.7.10.tar.gz 89862 BLAKE2B a2fa6f85822313b5cf17ec9207ddd533ffb1cb4a3ee2e32416d6b646930f8499c3d8994ab6cd21b1d4d01be1c32f13e2bd1206cc073bbcbaf8cb9722993a1510 SHA512 0ee9b8329e9ea7eac6b502051a5ecc5af28642aa3f14af9cecd0217ea6637a548eaeab2e5631534041dfd849701e0905a0618b1ab62162b9af493ab0f8ad7ff4
-DIST lsvpd-1.7.11.tar.gz 90366 BLAKE2B 2dfbbc92921106247580395ac663731bc4486d9380b052cfaa0867939a22b4c10d130adcb01260316e5c0fa5a093eb8c95c0d0b04a5ea17792e5891cb302a554 SHA512 68efdbee6bbfb4fd6673bc83d340aea6a121d48d1e75dcc4f9322521d8a3aa7b04fbe1acbb7e7343c5a7e2dd33f21ecf2e54a32ff5f6f2b9e1e5d6c34b8b25b5
+DIST lsvpd-1.7.14.tar.gz 93419 BLAKE2B a79706993678b5732896141017ade419fe4ffb15cae0c8c68d8f9e64ce7d4f007a5f5d80b1e6c0935e23f41641f95ee1becdacb1515b34278eb7d7cc23df129b SHA512 f9c507db1e5e16adeccf50ce94a0bb891e4907724ed36da88fa94cdca11436124dc6615b3c9287a1a26ee1beb51a0d3c203c58b15e7bcf9a4338087ae4ff8018
diff --git a/sys-apps/lsvpd/files/lsvpd-1.7.14-bashisms.patch b/sys-apps/lsvpd/files/lsvpd-1.7.14-bashisms.patch
new file mode 100644
index 000000000000..ca938a1b9ab6
--- /dev/null
+++ b/sys-apps/lsvpd/files/lsvpd-1.7.14-bashisms.patch
@@ -0,0 +1,35 @@
+From df4639ecd8b689eab1072e73fc918bb090e28c26 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Tue, 29 Nov 2022 16:18:14 -0800
+Subject: [PATCH] configure.ac: don't use bash syntax ==
+
+otherwise build fails to detect sg3_utils like this
+
+./configure: 18016: test: xsgutils2: unexpected operator
+./configure: 18024: test: xsgutils2: unexpected operator
+
+and fails due to missing -lsgutils2
+/usr/lib/gcc/powerpc64le-unknown-linux-gnu/11.3.0/../../../../powerpc64le-unknown-linux-gnu/bin/ld:
+sysfs_SCSI_Fill.cpp:(.text+0x3080): undefined reference to
+`sg_ll_inquiry'
+
+Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 034f9aa..bc00095 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -54,8 +54,8 @@ AC_CHECK_LIB(sgutils2,sg_lib_version, [SGUTILS_LIB="sgutils2"],[])
+ #AM_COND_IF([SGUTIL0], [], [
+ # echo "sgutils library is required for lsvpd"
+ # exit 1 ])
+-AM_CONDITIONAL([SGUTIL1], [ test x$SGUTILS_LIB == xsgutils ])
+-AM_CONDITIONAL([SGUTIL2], [ test x$SGUTILS_LIB == xsgutils2 ])
++AM_CONDITIONAL([SGUTIL1], [ test x$SGUTILS_LIB = xsgutils ])
++AM_CONDITIONAL([SGUTIL2], [ test x$SGUTILS_LIB = xsgutils2 ])
+ PKG_CHECK_MODULES([LIBVPD2], [libvpd_cxx-2 >= 2.2.9],[],[
+ echo "VPD library(libvpd) version 2.2.9 is required for lsvpd"
+ exit 1])
diff --git a/sys-apps/lsvpd/lsvpd-1.7.10.ebuild b/sys-apps/lsvpd/lsvpd-1.7.10.ebuild
deleted file mode 100644
index ee450bf1b3be..000000000000
--- a/sys-apps/lsvpd/lsvpd-1.7.10.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Utility to List Device Vital Product Data (VPD)"
-HOMEPAGE="https://github.com/power-ras/lsvpd"
-SRC_URI="https://github.com/power-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+ LGPL-2.1+"
-SLOT="0"
-KEYWORDS="ppc64"
-IUSE=""
-
-RDEPEND="
- dev-db/sqlite:3
- sys-apps/sg3_utils
- sys-libs/librtas
- sys-libs/libvpd
- sys-libs/zlib
-"
-
-DEPEND="${RDEPEND}
- virtual/os-headers
-"
-
-BDEPEND=""
-
-src_prepare() {
- default
- eautoreconf
-}
diff --git a/sys-apps/lsvpd/lsvpd-1.7.11.ebuild b/sys-apps/lsvpd/lsvpd-1.7.11.ebuild
deleted file mode 100644
index 8dfb6ff3bd44..000000000000
--- a/sys-apps/lsvpd/lsvpd-1.7.11.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Utility to List Device Vital Product Data (VPD)"
-HOMEPAGE="https://github.com/power-ras/lsvpd"
-SRC_URI="https://github.com/power-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+ LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~ppc64"
-IUSE=""
-
-RDEPEND="
- dev-db/sqlite:3
- sys-apps/sg3_utils
- sys-libs/librtas
- sys-libs/libvpd
- sys-libs/zlib
-"
-
-DEPEND="${RDEPEND}
- virtual/os-headers
-"
-
-BDEPEND=""
-
-src_prepare() {
- default
- eautoreconf
-}
diff --git a/sys-apps/lsvpd/lsvpd-1.7.14.ebuild b/sys-apps/lsvpd/lsvpd-1.7.14.ebuild
new file mode 100644
index 000000000000..1e614801323d
--- /dev/null
+++ b/sys-apps/lsvpd/lsvpd-1.7.14.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Utility to List Device Vital Product Data (VPD)"
+HOMEPAGE="https://github.com/power-ras/lsvpd"
+SRC_URI="https://github.com/power-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="ppc64"
+IUSE=""
+
+RDEPEND="
+ dev-db/sqlite:3
+ sys-apps/hwdata
+ sys-apps/sg3_utils:0=
+ sys-libs/librtas
+ >=sys-libs/libvpd-2.2.9:=
+ sys-libs/zlib
+"
+
+DEPEND="${RDEPEND}
+ virtual/os-headers
+"
+
+BDEPEND=""
+
+PATCHES=( "${FILESDIR}/lsvpd-1.7.14-bashisms.patch" )
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/lsvpd/metadata.xml b/sys-apps/lsvpd/metadata.xml
index 76b562ad8fee..699aa46a4c63 100644
--- a/sys-apps/lsvpd/metadata.xml
+++ b/sys-apps/lsvpd/metadata.xml
@@ -1,13 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
- </maintainer>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
<longdescription>
The lsvpd package contains all of the lsvpd, lscfg and lsmcode commands.
@@ -20,5 +16,6 @@
</longdescription>
<upstream>
<remote-id type="github">power-ras/lsvpd</remote-id>
+ <changelog>https://github.com/power-ras/lsvpd/blob/master/ChangeLog</changelog>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/makedev/makedev-3.23.1-r1.ebuild b/sys-apps/makedev/makedev-3.23.1-r1.ebuild
deleted file mode 100644
index 4b1c6985f562..000000000000
--- a/sys-apps/makedev/makedev-3.23.1-r1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils toolchain-funcs
-
-MY_PN="MAKEDEV"
-MY_VER=${PV%.*}
-MY_REL=${PV#${MY_VER}.}
-MY_P="${MY_PN}-${MY_VER}"
-DESCRIPTION="program used for creating device files in /dev"
-HOMEPAGE="https://people.redhat.com/nalin/MAKEDEV/"
-SRC_URI="https://people.redhat.com/nalin/MAKEDEV/${MY_P}-${MY_REL}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="build selinux"
-
-RDEPEND="!<sys-apps/baselayout-2.0.0_rc"
-DEPEND=""
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
- "${FILESDIR}"/${P}-headers.patch #339674
-)
-
-src_compile() {
- use selinux && export SELINUX=1
- emake CC="$(tc-getCC)" OPTFLAGS="${CFLAGS}"
-}
-
-src_install() {
- # set devdir to makedevdir so we dont have to worry about /dev
- emake install DESTDIR="${D}" makedevdir=/sbin devdir=/sbin
- dodoc *.txt
- keepdir /dev
-}
-
-pkg_postinst() {
- if use build ; then
- # set up a base set of nodes to make recovery easier #368597
- "${ROOT}"/sbin/MAKEDEV -c "${ROOT}"/etc/makedev.d \
- -d "${ROOT}"/dev console hda input ptmx std sd tty
- # trim useless nodes
- rm -f "${ROOT}"/dev/fd[0-9]* # floppy
- rm -f "${ROOT}"/dev/sd[a-d][a-z]* "${ROOT}"/dev/sd[e-z]* # excess sata/scsi
- rm -f "${ROOT}"/dev/tty[a-zA-Z]* # excess tty
- fi
-}
diff --git a/sys-apps/makedev/makedev-3.23.1-r3.ebuild b/sys-apps/makedev/makedev-3.23.1-r3.ebuild
new file mode 100644
index 000000000000..2c49b8170c10
--- /dev/null
+++ b/sys-apps/makedev/makedev-3.23.1-r3.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_PN="MAKEDEV"
+MY_VER=${PV%.*}
+MY_REL=${PV#${MY_VER}.}
+MY_P="${MY_PN}-${MY_VER}"
+
+DESCRIPTION="Program used for creating device files in /dev"
+HOMEPAGE="https://people.redhat.com/nalin/MAKEDEV/"
+SRC_URI="https://people.redhat.com/nalin/MAKEDEV/${MY_P}-${MY_REL}.tar.gz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="build selinux"
+
+GROUP_DEPEND="
+ acct-group/disk
+ acct-group/floppy
+ acct-group/kmem
+ acct-group/lp
+ acct-group/tty
+ acct-group/uucp
+"
+IDEPEND="build? ( ${GROUP_DEPEND} )"
+RDEPEND="${GROUP_DEPEND}
+ !<sys-apps/baselayout-2.0.0_rc"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-headers.patch # bug #339674
+)
+
+src_compile() {
+ use selinux && export SELINUX=1
+ emake CC="$(tc-getCC)" OPTFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ # set devdir to makedevdir so we don't have to worry about /dev
+ emake install DESTDIR="${D}" makedevdir=/sbin devdir=/sbin
+ dodoc *.txt
+ keepdir /dev
+}
+
+pkg_postinst() {
+ if use build ; then
+ # Set up a base set of nodes to make recovery easier, bug #368597
+ "${ROOT}"/sbin/MAKEDEV -c "${ROOT}"/etc/makedev.d \
+ -d "${ROOT}"/dev console hda input ptmx std sd tty
+
+ # Trim useless nodes
+ rm -f "${ROOT}"/dev/fd[0-9]* # floppy
+ rm -f "${ROOT}"/dev/sd[a-d][a-z]* "${ROOT}"/dev/sd[e-z]* # excess sata/scsi
+ rm -f "${ROOT}"/dev/tty[a-zA-Z]* # excess tty
+ fi
+}
diff --git a/sys-apps/makedev/metadata.xml b/sys-apps/makedev/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/makedev/metadata.xml
+++ b/sys-apps/makedev/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index 807706343880..7e1173b07bc8 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1 +1,3 @@
-DIST man-db-2.9.3.tar.xz 1885840 BLAKE2B 6163660af60a2900220d7b1de74caa9cb9e5764cc5da20469a8fb08e19ee1948937916664fdc493b89da8fd829aa512877892245fabc00fb586c7754c0da3d53 SHA512 ca1c1214753483f6e22efe69a9df9852e0de01a9ad3b9950dcbbc9f38e6060100b98a84333256f8c734002e66e2fd6256bc017a31bd9acfc42002dca2c0f879b
+DIST man-db-2.11.2.tar.xz 1953276 BLAKE2B 80ac565cdb69736c0f922b9cbfddcae753d176329781deaf9434d87d7718f9b6ce0b6d4642a03f22a04c7f042dda7f8986b5bce0038f0748461ca55d66964ccc SHA512 edb71cce7249c7b7f2f524e92f682047a77ed9ae8856763dfc8e18e239444651ff4c505e697f5a8b1be3b85678e714fbb1a520defe72a4eb685bc2cecc0e4391
+DIST man-db-2.12.0.tar.xz 1987444 BLAKE2B a6258c1fc9cd81be5d288298660f5b9bda22d726ef98dd5c0a1998809a32391f7244be6897ee8e03483e705a426d6a59d442de3dc2e84f45500daa825ac639db SHA512 4b644a508cf10ef6d27b6325b08f8a89e0695bbc1409bf420efd27649c6851860cc472c4d86063f7b71dccd01fb158faa82afa1e2b91c9a20154acf66b0349bf
+DIST man-db-2.12.1.tar.xz 2041380 BLAKE2B b06c48431608cf798659d19df754d992dca8ba31842613a3326e376e80fe74d913146f45a7f3c5e70c421a2401aeabdb091de78ebb3102b9d70c194286c245a7 SHA512 0f79f4205ce116c3148dc6caf561c1b7d793aac234188ef8edd1b1f5aaaebcca32c65ef403dff65896920535077fb63ddc2e9cb293efdb6ef3037c33916aa329
diff --git a/sys-apps/man-db/man-db-2.11.2.ebuild b/sys-apps/man-db/man-db-2.11.2.ebuild
new file mode 100644
index 000000000000..a18a06fff68c
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.11.2.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd prefix tmpfiles
+
+DESCRIPTION="A man replacement that utilizes dbm instead of flat files"
+HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://gitlab.com/man-db/man-db"
+else
+ # TODO: Change tarballs to gitlab too...?
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="
+ >=dev-libs/libpipeline-1.5.0
+ sys-apps/groff
+ sys-libs/gdbm:=
+ seccomp? ( sys-libs/libseccomp )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${CDEPEND}"
+BDEPEND="app-arch/xz-utils
+ virtual/pkgconfig
+ nls? (
+ >=app-text/po4a-0.45
+ sys-devel/gettext
+ virtual/libiconv
+ virtual/libintl
+ )"
+RDEPEND="${CDEPEND}
+ acct-group/man
+ acct-user/man
+ selinux? ( sec-policy/selinux-mandb )"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == *9999 ]] ; then
+ git-r3_src_unpack
+
+ # We need to mess with gnulib
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
+ git-r3_src_unpack
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == *9999 ]] ; then
+ local bootstrap_opts=(
+ --gnulib-srcdir=../gnulib
+ --no-bootstrap-sync
+ --copy
+ --no-git
+ )
+ AUTORECONF="/bin/true" \
+ LIBTOOLIZE="/bin/true" \
+ sh ./bootstrap "${bootstrap_opts[@]}" || die
+
+ eautoreconf
+ fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
+}
+
+src_configure() {
+ # Set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
+ export ac_cv_lib_z_gzopen=$(usex zlib)
+ local myeconfargs=(
+ --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --disable-setuid # bug #662438
+ --enable-cache-owner=man
+ --with-sections="${sections}"
+
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with seccomp libseccomp)
+
+ --with-db=gdbm
+ )
+
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+ $(use_with nls libintl-prefix "${EPREFIX}"/usr)
+ )
+ ;;
+ esac
+
+ econf "${myeconfargs[@]}"
+
+ # Disable color output from groff so that the manpager can add it. bug #184604
+ if use manpager; then
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+ fi
+
+ cat > 15man-db <<-EOF || die
+ SANDBOX_PREDICT="/var/cache/man"
+ EOF
+}
+
+src_install() {
+ default
+ dodoc docs/{HACKING.md,TODO}
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
+
+ insinto /etc/sandbox.d
+ doins 15man-db
+}
+
+pkg_preinst() {
+ local cachedir="${EROOT}/var/cache/man"
+ # If the system was already exploited, and the attacker is hiding in the
+ # cachedir of the old man-db, let's wipe them out.
+ # see bug #602588 comment 18
+ local _replacing_version=
+ local _setgid_vuln=0
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
+ debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+ else
+ _setgid_vuln=1
+ debug-print "Applying cleanup for security bug #602588"
+ fi
+ done
+ [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+ # Fall back to recreating the cachedir
+ if [[ ! -d ${cachedir} ]] ; then
+ mkdir -p "${cachedir}" || die
+ chown man:man "${cachedir}" || die
+ fi
+
+ # Update the whatis cache
+ if [[ -f ${cachedir}/whatis ]] ; then
+ einfo "Cleaning ${cachedir} from sys-apps/man"
+ find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process man-db.conf
+
+ if [[ -n "${REPLACING_VERSIONS}" ]] ; then
+ local _replacing_version=
+
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+
+ # No need to run it again if we hit one
+ break
+ fi
+ done
+ fi
+}
diff --git a/sys-apps/man-db/man-db-2.12.0.ebuild b/sys-apps/man-db/man-db-2.12.0.ebuild
new file mode 100644
index 000000000000..795e71f73b1f
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.12.0.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd prefix tmpfiles
+
+DESCRIPTION="A man replacement that utilizes dbm instead of flat files"
+HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://gitlab.com/man-db/man-db"
+else
+ # TODO: Change tarballs to gitlab too...?
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="
+ >=dev-libs/libpipeline-1.5.0
+ sys-apps/groff
+ sys-libs/gdbm:=
+ seccomp? ( sys-libs/libseccomp )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${CDEPEND}"
+BDEPEND="app-arch/xz-utils
+ virtual/pkgconfig
+ nls? (
+ >=app-text/po4a-0.45
+ sys-devel/gettext
+ virtual/libiconv
+ virtual/libintl
+ )"
+RDEPEND="${CDEPEND}
+ acct-group/man
+ acct-user/man
+ selinux? ( sec-policy/selinux-mandb )"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == *9999 ]] ; then
+ git-r3_src_unpack
+
+ # We need to mess with gnulib
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
+ git-r3_src_unpack
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == *9999 ]] ; then
+ local bootstrap_opts=(
+ --gnulib-srcdir=../gnulib
+ --no-bootstrap-sync
+ --copy
+ --no-git
+ )
+ AUTORECONF="/bin/true" \
+ LIBTOOLIZE="/bin/true" \
+ sh ./bootstrap "${bootstrap_opts[@]}" || die
+
+ eautoreconf
+ fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
+}
+
+src_configure() {
+ # Set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
+ export ac_cv_lib_z_gzopen=$(usex zlib)
+ local myeconfargs=(
+ --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --disable-setuid # bug #662438
+ $(use_enable !prefix cache-owner man) # bug #917024
+ --with-sections="${sections}"
+
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with seccomp libseccomp)
+
+ --with-db=gdbm
+ )
+
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+ $(use_with nls libintl-prefix "${EPREFIX}"/usr)
+ )
+ ;;
+ esac
+
+ econf "${myeconfargs[@]}"
+
+ # Disable color output from groff so that the manpager can add it. bug #184604
+ if use manpager; then
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+ fi
+
+ cat > 15man-db <<-EOF || die
+ SANDBOX_PREDICT="/var/cache/man"
+ EOF
+}
+
+src_install() {
+ default
+ dodoc docs/{HACKING.md,TODO}
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
+
+ insinto /etc/sandbox.d
+ doins 15man-db
+}
+
+pkg_preinst() {
+ local cachedir="${EROOT}/var/cache/man"
+ # If the system was already exploited, and the attacker is hiding in the
+ # cachedir of the old man-db, let's wipe them out.
+ # see bug #602588 comment 18
+ local _replacing_version=
+ local _setgid_vuln=0
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
+ debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+ else
+ _setgid_vuln=1
+ debug-print "Applying cleanup for security bug #602588"
+ fi
+ done
+ [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+ # Fall back to recreating the cachedir
+ if [[ ! -d ${cachedir} ]] ; then
+ mkdir -p "${cachedir}" || die
+ chown man:man "${cachedir}" || die
+ fi
+
+ # Update the whatis cache
+ if [[ -f ${cachedir}/whatis ]] ; then
+ einfo "Cleaning ${cachedir} from sys-apps/man"
+ find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process man-db.conf
+
+ if [[ -n "${REPLACING_VERSIONS}" ]] ; then
+ local _replacing_version=
+
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+
+ # No need to run it again if we hit one
+ break
+ fi
+ done
+ fi
+}
diff --git a/sys-apps/man-db/man-db-2.12.1.ebuild b/sys-apps/man-db/man-db-2.12.1.ebuild
new file mode 100644
index 000000000000..edcfb60226c1
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.12.1.ebuild
@@ -0,0 +1,208 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd prefix tmpfiles
+
+DESCRIPTION="A man replacement that utilizes dbm instead of flat files"
+HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://gitlab.com/man-db/man-db"
+else
+ # TODO: Change tarballs to gitlab too...?
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="
+ >=dev-libs/libpipeline-1.5.0
+ sys-apps/groff
+ sys-libs/gdbm:=
+ seccomp? ( sys-libs/libseccomp )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${CDEPEND}"
+BDEPEND="app-arch/xz-utils
+ virtual/pkgconfig
+ nls? (
+ >=app-text/po4a-0.45
+ sys-devel/gettext
+ virtual/libiconv
+ virtual/libintl
+ )"
+RDEPEND="${CDEPEND}
+ acct-group/man
+ acct-user/man
+ selinux? ( sec-policy/selinux-mandb )"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # gnulib FPs
+ unreachable MIN alignof static_assert
+)
+
+src_unpack() {
+ if [[ ${PV} == *9999 ]] ; then
+ git-r3_src_unpack
+
+ # We need to mess with gnulib
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
+ git-r3_src_unpack
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == *9999 ]] ; then
+ local bootstrap_opts=(
+ --gnulib-srcdir=../gnulib
+ --no-bootstrap-sync
+ --copy
+ --no-git
+ )
+ AUTORECONF="/bin/true" \
+ LIBTOOLIZE="/bin/true" \
+ sh ./bootstrap "${bootstrap_opts[@]}" || die
+
+ eautoreconf
+ fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
+}
+
+src_configure() {
+ # Set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
+ export ac_cv_lib_z_gzopen=$(usex zlib)
+ local myeconfargs=(
+ --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --disable-setuid # bug #662438
+ $(use_enable !prefix cache-owner man) # bug #917024
+ --with-sections="${sections}"
+
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with seccomp libseccomp)
+
+ --with-db=gdbm
+ )
+
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+ $(use_with nls libintl-prefix "${EPREFIX}"/usr)
+ )
+ ;;
+ esac
+
+ econf "${myeconfargs[@]}"
+
+ # Disable color output from groff so that the manpager can add it. bug #184604
+ if use manpager; then
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+ fi
+
+ cat > 15man-db <<-EOF || die
+ SANDBOX_PREDICT="/var/cache/man"
+ EOF
+}
+
+src_install() {
+ default
+ dodoc docs/{HACKING.md,TODO}
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
+
+ insinto /etc/sandbox.d
+ doins 15man-db
+}
+
+pkg_preinst() {
+ local cachedir="${EROOT}/var/cache/man"
+ # If the system was already exploited, and the attacker is hiding in the
+ # cachedir of the old man-db, let's wipe them out.
+ # see bug #602588 comment 18
+ local _replacing_version=
+ local _setgid_vuln=0
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
+ debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+ else
+ _setgid_vuln=1
+ debug-print "Applying cleanup for security bug #602588"
+ fi
+ done
+ [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+ # Fall back to recreating the cachedir
+ if [[ ! -d ${cachedir} ]] ; then
+ mkdir -p "${cachedir}" || die
+ chown man:man "${cachedir}" || die
+ fi
+
+ # Update the whatis cache
+ if [[ -f ${cachedir}/whatis ]] ; then
+ einfo "Cleaning ${cachedir} from sys-apps/man"
+ find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process man-db.conf
+
+ if [[ -n "${REPLACING_VERSIONS}" ]] ; then
+ local _replacing_version=
+
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+
+ # No need to run it again if we hit one
+ break
+ fi
+ done
+ fi
+}
diff --git a/sys-apps/man-db/man-db-2.9.3.ebuild b/sys-apps/man-db/man-db-2.9.3.ebuild
deleted file mode 100644
index 70728d703694..000000000000
--- a/sys-apps/man-db/man-db-2.9.3.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd
-
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
-else
- SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
-
-CDEPEND="
- !sys-apps/man
- >=dev-libs/libpipeline-1.5.0
- sys-apps/groff
- gdbm? ( sys-libs/gdbm:= )
- !gdbm? ( berkdb? ( sys-libs/db:= ) )
- !berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
- seccomp? ( sys-libs/libseccomp )
- zlib? ( sys-libs/zlib )
-"
-DEPEND="${CDEPEND}"
-BDEPEND="
- app-arch/xz-utils
- virtual/pkgconfig
- nls? (
- >=app-text/po4a-0.45
- sys-devel/gettext
- )
-"
-RDEPEND="
- ${CDEPEND}
- acct-group/man
- acct-user/man
- selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-PATCHES=( "${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch )
-
-pkg_setup() {
- if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
- ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
- fi
-}
-
-src_unpack() {
- if [[ "${PV}" == *9999 ]] ; then
- git-r3_src_unpack
-
- # We need to mess with gnulib :-/
- EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
- EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
- git-r3_src_unpack
- else
- default
- fi
-}
-
-src_prepare() {
- default
- if [[ "${PV}" == *9999 ]] ; then
- local bootstrap_opts=(
- --gnulib-srcdir=../gnulib
- --no-bootstrap-sync
- --copy
- --no-git
- )
- AUTORECONF="/bin/true" \
- LIBTOOLIZE="/bin/true" \
- sh ./bootstrap "${bootstrap_opts[@]}" || die
-
- eautoreconf
- fi
-}
-
-src_configure() {
- export ac_cv_lib_z_gzopen=$(usex zlib)
- local myeconfargs=(
- --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- --disable-setuid #662438
- --enable-cache-owner=man
- --with-sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o 1x 2x 3x 4x 5x 6x 7x 8x"
- $(use_enable nls)
- $(use_enable static-libs static)
- $(use_with seccomp libseccomp)
- --with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
- )
- econf "${myeconfargs[@]}"
-
- # Disable color output from groff so that the manpager can add it. #184604
- sed -i \
- -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
- src/man_db.conf || die
-
- cat > 15man-db <<-EOF || die
- SANDBOX_PREDICT="/var/cache/man"
- EOF
-}
-
-src_install() {
- default
- dodoc docs/{HACKING,TODO}
- find "${ED}" -type f -name "*.la" -delete || die
-
- exeinto /etc/cron.daily
- newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
-
- insinto /etc/sandbox.d
- doins 15man-db
-}
-
-pkg_preinst() {
- local cachedir="${EROOT}/var/cache/man"
- # If the system was already exploited, and the attacker is hiding in the
- # cachedir of the old man-db, let's wipe them out.
- # see bug #602588 comment 18
- local _replacing_version=
- local _setgid_vuln=0
- for _replacing_version in ${REPLACING_VERSIONS}; do
- if ver_test '2.7.6.1-r2' -le "${_replacing_version}"; then
- debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
- else
- _setgid_vuln=1
- debug-print "Applying cleanup for security bug #602588"
- fi
- done
- [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
- # Fall back to recreating the cachedir
- if [[ ! -d ${cachedir} ]] ; then
- mkdir -p "${cachedir}" || die
- chown man:man "${cachedir}" || die
- fi
-
- # Update the whatis cache
- if [[ -f ${cachedir}/whatis ]] ; then
- einfo "Cleaning ${cachedir} from sys-apps/man"
- find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
- fi
-}
-
-pkg_postinst() {
- if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
- einfo "Rebuilding man-db from scratch with new database format!"
- su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
- fi
-}
diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-9999.ebuild
index 25d02ea5f572..edcfb60226c1 100644
--- a/sys-apps/man-db/man-db-9999.ebuild
+++ b/sys-apps/man-db/man-db-9999.ebuild
@@ -1,64 +1,60 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit systemd
+inherit systemd prefix tmpfiles
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-if [[ "${PV}" = 9999* ]] ; then
+DESCRIPTION="A man replacement that utilizes dbm instead of flat files"
+HOMEPAGE="https://gitlab.com/man-db/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
inherit autotools git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
+ EGIT_REPO_URI="https://gitlab.com/man-db/man-db"
else
+ # TODO: Change tarballs to gitlab too...?
SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="GPL-3"
SLOT="0"
-IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
+IUSE="+manpager nls +seccomp selinux static-libs zlib"
CDEPEND="
- !sys-apps/man
>=dev-libs/libpipeline-1.5.0
sys-apps/groff
- gdbm? ( sys-libs/gdbm:= )
- !gdbm? ( berkdb? ( sys-libs/db:= ) )
- !berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
+ sys-libs/gdbm:=
seccomp? ( sys-libs/libseccomp )
- zlib? ( sys-libs/zlib )
-"
+ zlib? ( sys-libs/zlib )"
DEPEND="${CDEPEND}"
-BDEPEND="
- app-arch/xz-utils
+BDEPEND="app-arch/xz-utils
virtual/pkgconfig
nls? (
>=app-text/po4a-0.45
sys-devel/gettext
- )
-"
-RDEPEND="
- ${CDEPEND}
+ virtual/libiconv
+ virtual/libintl
+ )"
+RDEPEND="${CDEPEND}
acct-group/man
acct-user/man
- selinux? ( sec-policy/selinux-mandb )
-"
+ selinux? ( sec-policy/selinux-mandb )"
PDEPEND="manpager? ( app-text/manpager )"
-PATCHES=( "${FILESDIR}"/${PN}-2.9.3-sandbox-env-tests.patch )
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
-pkg_setup() {
- if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
- ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
- fi
-}
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # gnulib FPs
+ unreachable MIN alignof static_assert
+)
src_unpack() {
- if [[ "${PV}" == *9999 ]] ; then
+ if [[ ${PV} == *9999 ]] ; then
git-r3_src_unpack
- # We need to mess with gnulib :-/
+ # We need to mess with gnulib
EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
git-r3_src_unpack
@@ -69,7 +65,8 @@ src_unpack() {
src_prepare() {
default
- if [[ "${PV}" == *9999 ]] ; then
+
+ if [[ ${PV} == *9999 ]] ; then
local bootstrap_opts=(
--gnulib-srcdir=../gnulib
--no-bootstrap-sync
@@ -82,27 +79,68 @@ src_prepare() {
eautoreconf
fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
}
src_configure() {
+ # Set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
export ac_cv_lib_z_gzopen=$(usex zlib)
local myeconfargs=(
--with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- --disable-setuid #662438
- --enable-cache-owner=man
- --with-sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o 1x 2x 3x 4x 5x 6x 7x 8x"
+ --disable-setuid # bug #662438
+ $(use_enable !prefix cache-owner man) # bug #917024
+ --with-sections="${sections}"
+
$(use_enable nls)
$(use_enable static-libs static)
$(use_with seccomp libseccomp)
- --with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+
+ --with-db=gdbm
)
+
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+ $(use_with nls libintl-prefix "${EPREFIX}"/usr)
+ )
+ ;;
+ esac
+
econf "${myeconfargs[@]}"
- # Disable color output from groff so that the manpager can add it. #184604
- sed -i \
- -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
- src/man_db.conf || die
+ # Disable color output from groff so that the manpager can add it. bug #184604
+ if use manpager; then
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+ fi
cat > 15man-db <<-EOF || die
SANDBOX_PREDICT="/var/cache/man"
@@ -111,11 +149,11 @@ src_configure() {
src_install() {
default
- dodoc docs/{HACKING,TODO}
+ dodoc docs/{HACKING.md,TODO}
find "${ED}" -type f -name "*.la" -delete || die
exeinto /etc/cron.daily
- newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
insinto /etc/sandbox.d
doins 15man-db
@@ -128,8 +166,8 @@ pkg_preinst() {
# see bug #602588 comment 18
local _replacing_version=
local _setgid_vuln=0
- for _replacing_version in ${REPLACING_VERSIONS}; do
- if ver_test '2.7.6.1-r2' -le "${_replacing_version}"; then
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
else
_setgid_vuln=1
@@ -152,8 +190,19 @@ pkg_preinst() {
}
pkg_postinst() {
- if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
- einfo "Rebuilding man-db from scratch with new database format!"
- su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+ tmpfiles_process man-db.conf
+
+ if [[ -n "${REPLACING_VERSIONS}" ]] ; then
+ local _replacing_version=
+
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+
+ # No need to run it again if we hit one
+ break
+ fi
+ done
fi
}
diff --git a/sys-apps/man-db/metadata.xml b/sys-apps/man-db/metadata.xml
index c4bde0209254..41c4204e2d1e 100644
--- a/sys-apps/man-db/metadata.xml
+++ b/sys-apps/man-db/metadata.xml
@@ -1,11 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="manpager">Enable manpager wrapper for colorizing output</flag>
-</use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="manpager">Enable manpager wrapper for colorizing output</flag>
+ </use>
+ <upstream>
+ <remote-id type="gitlab">man-db/man-db</remote-id>
+ <remote-id type="cpe">cpe:/a:man-db_project:man-db</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/man-pages-posix/Manifest b/sys-apps/man-pages-posix/Manifest
index 9aabcc6284c7..69bb51dfb9e6 100644
--- a/sys-apps/man-pages-posix/Manifest
+++ b/sys-apps/man-pages-posix/Manifest
@@ -1 +1,2 @@
DIST man-pages-posix-2013-a.tar.xz 930736 BLAKE2B 4d496a4ea7bcf9f101a9b5c31eaa437317e872d9d266c202a1fcfd16d9b2fa71f968c3653bc9789ba18916a93802736e795c43bb3f87324397f49aed0f6d1556 SHA512 e6ec8eb57269fadf368aeaac31b5a98b9c71723d4d5cc189f9c4642d6e865c88e44f77481dccbdb72e31526488eb531f624d455016361687a834ccfcac19fa14
+DIST man-pages-posix-2017-a.tar.xz 935196 BLAKE2B 45d732c712f8d6b18f151c7383130a367d5774ec9d814cf9e61accb01e9d91ad3e9b49bc4f1b993f28688e9c39cf1fbea91b86b00c05968b0bc0a5665211defb SHA512 dac6bd5bb3e1d5f8918bad3eb15e08eeb3e06ae160c04ccd5619bfb0c536139ac06faa62b6856656a1bb9a7496f3148e52a5227b83e4099be6e6b93230de211d
diff --git a/sys-apps/man-pages-posix/man-pages-posix-2013a.ebuild b/sys-apps/man-pages-posix/man-pages-posix-2013a.ebuild
index c8265a263428..7655b582a8a9 100644
--- a/sys-apps/man-pages-posix/man-pages-posix-2013a.ebuild
+++ b/sys-apps/man-pages-posix/man-pages-posix-2013a.ebuild
@@ -1,9 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-
-inherit eutils
+EAPI=7
MY_P="${PN}-${PV:0:4}-${PV:0-1}"
DESCRIPTION="POSIX man-pages (0p, 1p, 3p)"
@@ -12,7 +10,7 @@ SRC_URI="https://www.kernel.org/pub/linux/docs/man-pages/${PN}/${MY_P}.tar.xz"
LICENSE="man-pages-posix-2013"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE=""
RESTRICT="binchecks"
@@ -20,8 +18,6 @@ RDEPEND="virtual/man !<sys-apps/man-pages-3"
S=${WORKDIR}/${MY_P}
-src_prepare() { :; }
-
src_configure() { :; }
src_compile() { :; }
diff --git a/sys-apps/man-pages-posix/man-pages-posix-2017a-r1.ebuild b/sys-apps/man-pages-posix/man-pages-posix-2017a-r1.ebuild
new file mode 100644
index 000000000000..8be33c37f53e
--- /dev/null
+++ b/sys-apps/man-pages-posix/man-pages-posix-2017a-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_P="${PN}-${PV:0:4}-${PV:0-1}"
+DESCRIPTION="POSIX man-pages (0p, 1p, 3p)"
+HOMEPAGE="https://www.kernel.org/doc/man-pages/"
+SRC_URI="https://www.kernel.org/pub/linux/docs/man-pages/${PN}/${MY_P}.tar.xz"
+
+LICENSE="freedist" # to be clarified, see bug 871636
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+RESTRICT="binchecks"
+
+RDEPEND="virtual/man !<sys-apps/man-pages-3"
+
+S="${WORKDIR}/${PN}-${PV:0:4}"
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ emake install DESTDIR="${ED}"
+ dodoc man-pages-*.Announce README
+}
diff --git a/sys-apps/man-pages-posix/metadata.xml b/sys-apps/man-pages-posix/metadata.xml
index 56c124413057..44a4bf40a0e9 100644
--- a/sys-apps/man-pages-posix/metadata.xml
+++ b/sys-apps/man-pages-posix/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
+<stabilize-allarches/>
</pkgmetadata>
diff --git a/sys-apps/man-pages/Manifest b/sys-apps/man-pages/Manifest
index 6ecaea0e5ab7..5d3a2e730e3e 100644
--- a/sys-apps/man-pages/Manifest
+++ b/sys-apps/man-pages/Manifest
@@ -1,3 +1,4 @@
-DIST man-pages-5.07.tar.xz 1716544 BLAKE2B f9320aea51c81720f3b77275dbd3ce4b0a2405c3bf0fc43569d42b2ccc848850adf281bd7c213eb9f821c12d627ac61fc43ca169c154df700b774cbd807d3aa9 SHA512 701837b6a8dd3bf9e0fa3d0234384bcc8af4ba8b6a4fdce01a441a146c5101bb14b96cfd68b48613c2ddd2237d01c63fb24a8478c4fff5482265f6605bcbe2f5
-DIST man-pages-5.08.tar.xz 1721672 BLAKE2B 7a912d4581ab734f7f3859d2b6553f470f4a38dfccc3ce42263d3733e1bfe5aabd478ad7137dff03f93ee031fba53f439b0c4cf5a369c442ce9302d0b7a6688b SHA512 fbd54c96c3ef1272f856a27d2258fefd3934d9f6ef60c243a824377769c4784b65aba54d680bb382371b0ce35fd4d065b17980cb535118e7986844f19afd7932
+DIST man-pages-6.05.01.tar.xz 2194472 BLAKE2B edc40828bc9c75f655a8352f10c214d68b64f90815cc947f65d49794e0b588b103cae28b3644e41bedd8caaa6cef3c77b02525d8c2ccc91ccf887a10b2f2c32a SHA512 ad3f6dc28bb83824faf8c855a5db8983dc0f5ac3b5702624033ed320a6f39a7f1f0845acf0bc62a0a10cdfe42eb66ba9596e2796ba2683cfb29e480710da3d70
+DIST man-pages-6.06.tar.sign 833 BLAKE2B 7198f7a024731fcaeb97c131ff02611cefc60cf26fa8bac013c82d90f1f9dcd39230adc6ad94c97488c7a8d844b0bb31db6fea2528d84084dec54454a073f3c1 SHA512 21304778df56f079c8b3ff38cf42453697a2b155964069bf6837b9c89b32c3a80eef9cfd0c2f9e3feeee12889cb4e6dd1d4ef1fae75cc646fed84289c5862578
+DIST man-pages-6.06.tar.xz 2166012 BLAKE2B 49c022204f8ce82fafd6f34a590a310beb6618d884290123a755efd38a71c974aa2e49d729655fcf82df0b96db8f782c1b2eac5174b319b6a383740e715fa11a SHA512 c50b5a47cff5172e46752b61af4dd9f54ee0be88ab69bcc5914bd8ce5ddfaf7358143bea9f69bd6a45f0420eb5eb4596c2200109b23fe98a5221dd01e4a8ea15
DIST man-pages-gentoo-2.tar.bz2 5141 BLAKE2B c5c7956ab47c8a473e258b1902d5d19d9eb2e9d01786e907d9c3ba691c2a506834ed96cd1f54e8d8415e65d4fea0056659537f0faffe68fcbed33aa728a5e61e SHA512 6e6524b8ad6f1b8c9b147665ee32af49e05603dac61d433acd6b4f1164adef27cd542898f272b07d8659725013dac59c7f34a858968cc054a4785c945e14a770
diff --git a/sys-apps/man-pages/man-pages-5.07.ebuild b/sys-apps/man-pages/man-pages-5.07.ebuild
deleted file mode 100644
index 5095446eeaad..000000000000
--- a/sys-apps/man-pages/man-pages-5.07.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_PATCH=2
-
-DESCRIPTION="A somewhat comprehensive collection of Linux man pages"
-HOMEPAGE="https://www.kernel.org/doc/man-pages/"
-SRC_URI="https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.xz
- https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.xz
- mirror://gentoo/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
- https://dev.gentoo.org/~cardoe/files/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2"
-
-LICENSE="man-pages GPL-2+ BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE_L10N=" de fr it ja nl pl ru zh-CN"
-IUSE="${IUSE_L10N// / l10n_}"
-RESTRICT="binchecks"
-
-# Block packages that used to install colliding man pages #341953 #548900 #612640 #617462
-RDEPEND="
- virtual/man
- !<sys-apps/keyutils-1.5.9-r4
- !<dev-libs/libbsd-0.8.3-r1
-"
-PDEPEND="
- l10n_de? ( app-i18n/man-pages-l10n[l10n_de] )
- l10n_fr? ( app-i18n/man-pages-l10n[l10n_fr] )
- l10n_it? ( app-i18n/man-pages-it )
- l10n_ja? ( app-i18n/man-pages-ja )
- l10n_nl? ( app-i18n/man-pages-l10n[l10n_nl] )
- l10n_pl? ( app-i18n/man-pages-l10n[l10n_pl] )
- l10n_ru? ( app-i18n/man-pages-ru )
- l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
- sys-apps/man-pages-posix
-"
-
-src_configure() { :; }
-
-src_compile() { :; }
-
-src_install() {
- emake install prefix="${EPREFIX}/usr" DESTDIR="${D}"
- dodoc man-pages-*.Announce README Changes*
-
- # Override with Gentoo specific or additional Gentoo pages
- cd "${WORKDIR}"/man-pages-gentoo || die
- doman */*
- dodoc README.Gentoo
-}
diff --git a/sys-apps/man-pages/man-pages-5.08.ebuild b/sys-apps/man-pages/man-pages-5.08.ebuild
deleted file mode 100644
index c17bf4553435..000000000000
--- a/sys-apps/man-pages/man-pages-5.08.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GENTOO_PATCH=2
-
-DESCRIPTION="A somewhat comprehensive collection of Linux man pages"
-HOMEPAGE="https://www.kernel.org/doc/man-pages/"
-SRC_URI="https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.xz
- https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.xz
- mirror://gentoo/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
- https://dev.gentoo.org/~cardoe/files/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2"
-
-LICENSE="man-pages GPL-2+ BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE_L10N=" de fr it ja nl pl ru zh-CN"
-IUSE="${IUSE_L10N// / l10n_}"
-RESTRICT="binchecks"
-
-# Block packages that used to install colliding man pages #341953 #548900 #612640 #617462
-RDEPEND="
- virtual/man
- !<sys-apps/keyutils-1.5.9-r4
- !<dev-libs/libbsd-0.8.3-r1
-"
-PDEPEND="
- l10n_de? ( app-i18n/man-pages-l10n[l10n_de] )
- l10n_fr? ( app-i18n/man-pages-l10n[l10n_fr] )
- l10n_it? ( app-i18n/man-pages-it )
- l10n_ja? ( app-i18n/man-pages-ja )
- l10n_nl? ( app-i18n/man-pages-l10n[l10n_nl] )
- l10n_pl? ( app-i18n/man-pages-l10n[l10n_pl] )
- l10n_ru? ( app-i18n/man-pages-ru )
- l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
- sys-apps/man-pages-posix
-"
-
-src_configure() { :; }
-
-src_compile() { :; }
-
-src_install() {
- emake install prefix="${EPREFIX}/usr" DESTDIR="${D}"
- dodoc man-pages-*.Announce README Changes*
-
- # Override with Gentoo specific or additional Gentoo pages
- cd "${WORKDIR}"/man-pages-gentoo || die
- doman */*
- dodoc README.Gentoo
-}
diff --git a/sys-apps/man-pages/man-pages-6.05.01.ebuild b/sys-apps/man-pages/man-pages-6.05.01.ebuild
new file mode 100644
index 000000000000..7af943a8a925
--- /dev/null
+++ b/sys-apps/man-pages/man-pages-6.05.01.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes:
+# - Upstream are very friendly, do approach them if have any questions;
+#
+# - It's considered fine (and somewhat encouraged) for us to make snapshots
+# if we want specific fixes, perhaps aligned with newer kernels, glibc, etc.
+# Just generate it with 'make dist'. We can set DISTVERSION if we want a vanity
+# name or if the comit hash is too long;
+#
+# - If we do use a snapshot, *don't* grab it directly from git and use it
+# raw in the ebuild. Use 'make dist' as above;
+#
+# - Sometimes there's no dist tarball available post-release and upstream
+# encourage distros to make their own. Set MAN_PAGES_GENTOO_DIST to 1 if none is
+# available, 0 otherwise.
+MAN_PAGES_GENTOO_DIST=0
+GENTOO_PATCH=2
+
+DESCRIPTION="A somewhat comprehensive collection of Linux man pages"
+HOMEPAGE="https://www.kernel.org/doc/man-pages/"
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git"
+ inherit git-r3
+elif [[ ${PV} == *_rc* ]] ; then
+ MY_P=${PN}-${PV/_/-}
+
+ SRC_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/snapshot/${MY_P}.tar.gz"
+ S="${WORKDIR}"/${MY_P}
+else
+ if [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] ; then
+ SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-gentoo.tar.xz"
+ else
+ SRC_URI="
+ https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.xz
+ https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.xz
+ "
+ fi
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos"
+fi
+
+SRC_URI+="
+ mirror://gentoo/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
+ https://dev.gentoo.org/~cardoe/files/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
+"
+
+LICENSE="man-pages GPL-2+ BSD"
+SLOT="0"
+# Keep the following in sync with app-i18n/man-pages-l10n
+MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi )
+IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
+RESTRICT="binchecks"
+
+BDEPEND="
+ app-alternatives/bc
+"
+# Block packages that used to install colliding man pages:
+# bug #341953, bug #548900, bug #612640, bug #617462
+RDEPEND="
+ virtual/man
+ !<sys-apps/keyutils-1.5.9-r4
+ !<dev-libs/libbsd-0.8.3-r1
+"
+PDEPEND="
+ l10n_ja? ( app-i18n/man-pages-ja )
+ l10n_ru? ( || (
+ app-i18n/man-pages-l10n[l10n_ru(-)]
+ app-i18n/man-pages-ru
+ ) )
+ l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
+"
+for lang in "${MY_L10N[@]}"; do
+ PDEPEND+=" l10n_${lang}? ( app-i18n/man-pages-l10n[l10n_${lang}(-)] )"
+done
+unset lang
+
+src_unpack() {
+ default
+
+ [[ ${PV} == 9999 ]] && git-r3_src_unpack
+}
+
+src_prepare() {
+ default
+
+ # passwd.5 installed by sys-apps/shadow, bug #776787
+ rm man5/passwd.5 || die
+}
+
+src_compile() { :; }
+
+src_test() {
+ # We don't use the 'check' target right now because of known errors
+ # https://lore.kernel.org/linux-man/0dfd5319-2d22-a8ad-f085-d635eb6d0678@gmail.com/T/#t
+ emake lint-man-tbl
+}
+
+src_install() {
+ emake install prefix="${EPREFIX}"/usr DESTDIR="${D}"
+ dodoc README Changes*
+
+ # Override with Gentoo specific or additional Gentoo pages
+ cd "${WORKDIR}"/man-pages-gentoo || die
+ doman */*
+ dodoc README.Gentoo
+}
+
+pkg_postinst() {
+ for ver in ${REPLACING_VERSIONS} ; do
+ if ver_test ${ver} -lt 5.13-r2 ; then
+ # Avoid ACCEPT_LICENSE issues for users by default
+ # bug #871636
+ ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!"
+ ewarn "Please install sys-apps/man-pages-posix yourself if needed."
+ break
+ fi
+ done
+}
diff --git a/sys-apps/man-pages/man-pages-6.06.ebuild b/sys-apps/man-pages/man-pages-6.06.ebuild
new file mode 100644
index 000000000000..1f1a2609c79c
--- /dev/null
+++ b/sys-apps/man-pages/man-pages-6.06.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes:
+# - Upstream are very friendly, do approach them if have any questions;
+#
+# - It's considered fine (and somewhat encouraged) for us to make snapshots
+# if we want specific fixes, perhaps aligned with newer kernels, glibc, etc.
+# Just generate it with 'make dist'. We can set DISTVERSION if we want a vanity
+# name or if the comit hash is too long;
+#
+# - If we do use a snapshot, *don't* grab it directly from git and use it
+# raw in the ebuild. Use 'make dist' as above;
+#
+# - Sometimes there's no dist tarball available post-release and upstream
+# encourage distros to make their own. Set MAN_PAGES_GENTOO_DIST to 1 if none is
+# available, 0 otherwise.
+MAN_PAGES_GENTOO_DIST=0
+GENTOO_PATCH=2
+
+DESCRIPTION="A somewhat comprehensive collection of Linux man pages"
+HOMEPAGE="https://www.kernel.org/doc/man-pages/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git"
+ inherit git-r3
+elif [[ ${PV} == *_rc* ]] ; then
+ MY_P=${PN}-${PV/_/-}
+
+ SRC_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/snapshot/${MY_P}.tar.gz"
+ S="${WORKDIR}"/${MY_P}
+else
+ if [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] ; then
+ SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-gentoo.tar.xz"
+ else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc
+ inherit verify-sig
+
+ SRC_URI="
+ https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.xz
+ https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.xz
+ verify-sig? (
+ https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.sign
+ https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.sign
+ )
+ "
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )"
+ fi
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos"
+fi
+
+SRC_URI+="
+ mirror://gentoo/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
+ https://dev.gentoo.org/~cardoe/files/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
+"
+
+LICENSE="man-pages GPL-2+ BSD"
+SLOT="0"
+# Keep the following in sync with app-i18n/man-pages-l10n
+MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi )
+IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
+RESTRICT="binchecks"
+
+BDEPEND+="
+ app-alternatives/bc
+"
+# Block packages that used to install colliding man pages:
+# bug #341953, bug #548900, bug #612640, bug #617462
+RDEPEND="
+ virtual/man
+ !<sys-apps/keyutils-1.5.9-r4
+ !<dev-libs/libbsd-0.8.3-r1
+"
+PDEPEND="
+ l10n_ja? ( app-i18n/man-pages-ja )
+ l10n_ru? ( || (
+ app-i18n/man-pages-l10n[l10n_ru(-)]
+ app-i18n/man-pages-ru
+ ) )
+ l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
+"
+for lang in "${MY_L10N[@]}"; do
+ PDEPEND+=" l10n_${lang}? ( app-i18n/man-pages-l10n[l10n_${lang}(-)] )"
+done
+unset lang
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
+
+ if [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${P}.tar.xz . || die
+ xz -d ${P}.tar.xz || die
+ verify-sig_verify_detached ${P}.tar "${DISTDIR}"/${P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ # passwd.5 installed by sys-apps/shadow, bug #776787
+ rm man5/passwd.5 || die
+}
+
+src_compile() { :; }
+
+src_test() {
+ # We don't use the 'check' target right now because of known errors
+ # https://lore.kernel.org/linux-man/0dfd5319-2d22-a8ad-f085-d635eb6d0678@gmail.com/T/#t
+ emake lint-man-tbl
+}
+
+src_install() {
+ emake install prefix="${EPREFIX}"/usr DESTDIR="${D}"
+ dodoc README Changes*
+
+ # Override with Gentoo specific or additional Gentoo pages
+ cd "${WORKDIR}"/man-pages-gentoo || die
+ doman */*
+ dodoc README.Gentoo
+}
+
+pkg_postinst() {
+ for ver in ${REPLACING_VERSIONS} ; do
+ if ver_test ${ver} -lt 5.13-r2 ; then
+ # Avoid ACCEPT_LICENSE issues for users by default
+ # bug #871636
+ ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!"
+ ewarn "Please install sys-apps/man-pages-posix yourself if needed."
+ break
+ fi
+ done
+}
diff --git a/sys-apps/man-pages/man-pages-9999.ebuild b/sys-apps/man-pages/man-pages-9999.ebuild
new file mode 100644
index 000000000000..04246b807452
--- /dev/null
+++ b/sys-apps/man-pages/man-pages-9999.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes:
+# - Upstream are very friendly, do approach them if have any questions;
+#
+# - It's considered fine (and somewhat encouraged) for us to make snapshots
+# if we want specific fixes, perhaps aligned with newer kernels, glibc, etc.
+# Just generate it with 'make dist'. We can set DISTVERSION if we want a vanity
+# name or if the comit hash is too long;
+#
+# - If we do use a snapshot, *don't* grab it directly from git and use it
+# raw in the ebuild. Use 'make dist' as above;
+#
+# - Sometimes there's no dist tarball available post-release and upstream
+# encourage distros to make their own. Set MAN_PAGES_GENTOO_DIST to 1 if none is
+# available, 0 otherwise.
+MAN_PAGES_GENTOO_DIST=0
+GENTOO_PATCH=2
+
+DESCRIPTION="A somewhat comprehensive collection of Linux man pages"
+HOMEPAGE="https://www.kernel.org/doc/man-pages/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git"
+ inherit git-r3
+elif [[ ${PV} == *_rc* ]] ; then
+ MY_P=${PN}-${PV/_/-}
+
+ SRC_URI="https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/snapshot/${MY_P}.tar.gz"
+ S="${WORKDIR}"/${MY_P}
+else
+ if [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] ; then
+ SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-gentoo.tar.xz"
+ else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc
+ inherit verify-sig
+
+ SRC_URI="
+ https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.xz
+ https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.xz
+ verify-sig? (
+ https://www.kernel.org/pub/linux/docs/man-pages/Archive/${P}.tar.sign
+ https://www.kernel.org/pub/linux/docs/man-pages/${P}.tar.sign
+ )
+ "
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )"
+ fi
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos"
+fi
+
+SRC_URI+="
+ mirror://gentoo/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
+ https://dev.gentoo.org/~cardoe/files/man-pages-gentoo-${GENTOO_PATCH}.tar.bz2
+"
+
+LICENSE="man-pages GPL-2+ BSD"
+SLOT="0"
+# Keep the following in sync with app-i18n/man-pages-l10n
+MY_L10N=( cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi )
+IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
+RESTRICT="binchecks"
+
+BDEPEND+="
+ app-alternatives/bc
+"
+# Block packages that used to install colliding man pages:
+# bug #341953, bug #548900, bug #612640, bug #617462
+RDEPEND="
+ virtual/man
+ !<sys-apps/keyutils-1.5.9-r4
+ !<dev-libs/libbsd-0.8.3-r1
+"
+PDEPEND="
+ l10n_ja? ( app-i18n/man-pages-ja )
+ l10n_ru? ( || (
+ app-i18n/man-pages-l10n[l10n_ru(-)]
+ app-i18n/man-pages-ru
+ ) )
+ l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
+"
+for lang in "${MY_L10N[@]}"; do
+ PDEPEND+=" l10n_${lang}? ( app-i18n/man-pages-l10n[l10n_${lang}(-)] )"
+done
+unset lang
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
+
+ if [[ ${PV} != *_rc* ]] && ! [[ ${MAN_PAGES_GENTOO_DIST} -eq 1 ]] && use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${P}.tar.xz . || die
+ xz -d ${P}.tar.xz || die
+ verify-sig_verify_detached ${P}.tar "${DISTDIR}"/${P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ # passwd.5 installed by sys-apps/shadow, bug #776787
+ rm man5/passwd.5 || die
+}
+
+src_compile() { :; }
+
+src_test() {
+ # We don't use the 'check' target right now because of known errors
+ # https://lore.kernel.org/linux-man/0dfd5319-2d22-a8ad-f085-d635eb6d0678@gmail.com/T/#t
+ emake lint-man-tbl
+}
+
+src_install() {
+ emake install prefix="${EPREFIX}"/usr DESTDIR="${D}"
+ dodoc README Changes*
+
+ # Override with Gentoo specific or additional Gentoo pages
+ cd "${WORKDIR}"/man-pages-gentoo || die
+ doman */*
+ dodoc README.Gentoo
+}
+
+pkg_postinst() {
+ for ver in ${REPLACING_VERSIONS} ; do
+ if ver_test ${ver} -lt 5.13-r2 ; then
+ # Avoid ACCEPT_LICENSE issues for users by default
+ # bug #871636
+ ewarn "This version of ${PN} no longer depends on sys-apps/man-pages-posix!"
+ ewarn "Please install sys-apps/man-pages-posix yourself if needed."
+ break
+ fi
+ done
+}
diff --git a/sys-apps/man-pages/metadata.xml b/sys-apps/man-pages/metadata.xml
index e51634279815..44a4bf40a0e9 100644
--- a/sys-apps/man-pages/metadata.xml
+++ b/sys-apps/man-pages/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/man2html/files/man-1.6-cross-compile.patch b/sys-apps/man2html/files/man-1.6-cross-compile.patch
index 265265077a9c..79aa90af212d 100644
--- a/sys-apps/man2html/files/man-1.6-cross-compile.patch
+++ b/sys-apps/man2html/files/man-1.6-cross-compile.patch
@@ -1,8 +1,8 @@
Fix up to work with cross-compiling ... most of these tests only
need to see if the example compiled, not whether it runs ...
---- configure
-+++ configure
+--- a/configure
++++ b/configure
@@ -232,15 +232,13 @@
echo checking for POSIX.1 header files
diff --git a/sys-apps/man2html/files/man-1.6f-man2html-compression-2.patch b/sys-apps/man2html/files/man-1.6f-man2html-compression-2.patch
index b79b3a1872f1..cc9093371bb6 100644
--- a/sys-apps/man2html/files/man-1.6f-man2html-compression-2.patch
+++ b/sys-apps/man2html/files/man-1.6f-man2html-compression-2.patch
@@ -1,7 +1,7 @@
add support for bzip2/lzma to man2html and friends
---- man2html/glimpse_filters
-+++ man2html/glimpse_filters
+--- a/man2html/glimpse_filters
++++ b/man2html/glimpse_filters
@@ -1,3 +1,6 @@
+*.bz2 bzip2 -d -c
+*.lzma lzma -d -c
@@ -9,8 +9,8 @@ add support for bzip2/lzma to man2html and friends
*.gz gzip -d -c
*.Z gzip -d -c
---- man2html/scripts/cgi-bin/man/man2html
-+++ man2html/scripts/cgi-bin/man/man2html
+--- a/man2html/scripts/cgi-bin/man/man2html
++++ b/man2html/scripts/cgi-bin/man/man2html
@@ -93,6 +93,12 @@
*.bz2)
bzcat "$PAGE" | "$MAN2HTML" "$LL" -D "$PAGE"
@@ -37,8 +37,8 @@ add support for bzip2/lzma to man2html and friends
else
"$MAN2HTML" -E "Strange... Cannot find (or read) $PAGE."
fi
---- man2html/scripts/cgi-bin/man/mansearch
-+++ man2html/scripts/cgi-bin/man/mansearch
+--- a/man2html/scripts/cgi-bin/man/mansearch
++++ b/man2html/scripts/cgi-bin/man/mansearch
@@ -153,7 +153,7 @@
}
print "<DT> <a href=\"" cgipath "/man2html?" fullname "\">";
@@ -48,8 +48,8 @@ add support for bzip2/lzma to man2html and friends
sub(/\./, "(", textname);
textname = textname ")";
print textname;
---- man2html/scripts/cgi-bin/man/mansec
-+++ man2html/scripts/cgi-bin/man/mansec
+--- a/man2html/scripts/cgi-bin/man/mansec
++++ b/man2html/scripts/cgi-bin/man/mansec
@@ -128,7 +128,7 @@
# Print out alphabetic quick index and other links
}
diff --git a/sys-apps/man2html/files/man-1.6g-clang-15-configure.patch b/sys-apps/man2html/files/man-1.6g-clang-15-configure.patch
new file mode 100644
index 000000000000..c15617b56e84
--- /dev/null
+++ b/sys-apps/man2html/files/man-1.6g-clang-15-configure.patch
@@ -0,0 +1,83 @@
+--- a/configure
++++ b/configure
+@@ -223,7 +223,7 @@ compile="$CC $DEFS conftest.c -o conftest $LIBS >/dev/null 2>&1"
+ echo checking for ANSI C header files
+ echo "#include <stdlib.h>
+ #include <string.h>
+-main() { exit(0); strerror(0); }" > conftest.c
++int main(void) { exit(0); strerror(0); }" > conftest.c
+ eval $compile
+ if test -s conftest && ./conftest 2>/dev/null; then
+ DEFS="$DEFS -DSTDC_HEADERS"
+@@ -236,7 +236,8 @@ rm -f conftest conftest.c
+
+ echo checking for sys/termios.h
+ echo "#include <sys/termios.h>
+-main() { exit(0); }" > conftest.c
++#include <stdlib.h>
++int main(void) { exit(0); }" > conftest.c
+ eval $compile
+ if test -s conftest && ./conftest 2>/dev/null; then
+ DEFS="$DEFS -DTERMIOS_HEADER"
+@@ -245,8 +246,9 @@ rm -f conftest conftest.c
+
+ echo checking for POSIX.1 header files
+ echo "#include <unistd.h>
++#include <stdlib.h>
+ #ifdef _POSIX_VERSION
+-main() { exit(0); }
++int main(void) { exit(0); }
+ #else
+ # error no _POSIX_VERSION
+ #endif" > conftest.c
+@@ -258,7 +260,8 @@ rm -f conftest conftest.c
+
+ echo checking for BSD string and memory functions
+ echo "#include <strings.h>
+-main() { exit(0); rindex(0, 0); bzero(0, 0); }" > conftest.c
++#include <stdlib.h>
++int main(void) { exit(0); rindex(0, 0); bzero(0, 0); }" > conftest.c
+ eval $compile
+ if test -s conftest ; then :
+ else DEFS="$DEFS -DUSG"
+@@ -267,7 +270,8 @@ rm -f conftest conftest.c
+
+ echo checking whether sys/types.h defines uid_t
+ echo '#include <sys/types.h>
+-main() { uid_t x; exit(0); }' > conftest.c
++#include <stdlib.h>
++int main(void) { uid_t x; exit(0); }' > conftest.c
+ eval $compile
+ if test -s conftest ; then :
+ else
+@@ -300,7 +304,8 @@ char *alloca ();
+ #endif
+ #endif
+ #endif
+-main() { char *p = (char *) alloca(1); exit(0); }' > conftest.c
++#include <stdlib.h>
++int main(void) { char *p = (char *) alloca(1); exit(0); }' > conftest.c
+ eval $compile
+ if test -s conftest ; then :
+ elif test -d /usr/ucblib; then LIBS="$LIBS -L/usr/ucblib -lucb"
+@@ -312,7 +317,8 @@ rm -f conftest conftest.c
+ if [ $usenls = true ]; then
+ echo checking for nls
+ echo '#include <nl_types.h>
+- main() {nl_catd catfd; exit(0); }' > conftest.c
++ #include <stdlib.h>
++ int main(void) {nl_catd catfd; exit(0); }' > conftest.c
+ eval $compile
+ if test -s conftest && ./conftest 2>/dev/null; then :
+ else
+@@ -329,8 +335,9 @@ echo checking for getopt.h
+ echo '#define _GNU_SOURCE
+ #include <getopt.h>
+ #include <stdio.h>
++#include <stdlib.h>
+ struct option long_opts[] = { { "", no_argument, NULL, 0 } };
+-main() { exit(0); }' > conftest.c
++int main(void) { exit(0); }' > conftest.c
+ eval $compile
+ if test -s conftest ; then
+ manpathoption="--path"
diff --git a/sys-apps/man2html/files/man-1.6g-compress.patch b/sys-apps/man2html/files/man-1.6g-compress.patch
index 374d80730074..4a5e84a785b1 100644
--- a/sys-apps/man2html/files/man-1.6g-compress.patch
+++ b/sys-apps/man2html/files/man-1.6g-compress.patch
@@ -2,8 +2,8 @@ allow selection of default cache compressor
http://bugs.gentoo.org/205147
---- configure
-+++ configure
+--- a/configure
++++ b/configure
@@ -1012,6 +1012,10 @@
done
done
diff --git a/sys-apps/man2html/man2html-1.6g-r2.ebuild b/sys-apps/man2html/man2html-1.6g-r2.ebuild
new file mode 100644
index 000000000000..6244ebb747d9
--- /dev/null
+++ b/sys-apps/man2html/man2html-1.6g-r2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+MY_P="man-${PV}"
+
+DESCRIPTION="Standard commands to read man pages"
+HOMEPAGE="http://primates.ximian.com/~flucifredi/man/"
+SRC_URI="http://primates.ximian.com/~flucifredi/man/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+RDEPEND="!sys-apps/man"
+
+PATCHES=(
+ "${FILESDIR}"/man-1.6f-man2html-compression-2.patch
+ "${FILESDIR}"/man-1.6-cross-compile.patch
+ "${FILESDIR}"/man-1.6g-compress.patch #205147
+ "${FILESDIR}"/man-1.6g-clang-15-configure.patch
+)
+
+src_configure() {
+ tc-export CC BUILD_CC
+
+ # Just a stub to disable configure check. man2html doesn't use it.
+ export COMPRESS=true
+ edo ./configure \
+ -confdir=/etc \
+ +sgid +fhs \
+ +lang none
+}
+
+src_compile() {
+ emake {src,man2html}/Makefile
+ emake -C src version.h
+ emake -C man2html
+}
+
+src_install() {
+ # A little faster to run this by hand than `emake install`.
+ cd man2html || die
+
+ dobin man2html
+ doman man2html.1
+ dodoc README TODO
+}
diff --git a/sys-apps/man2html/man2html-1.6g.ebuild b/sys-apps/man2html/man2html-1.6g.ebuild
index 6fbf711c9ca0..20fc85be6073 100644
--- a/sys-apps/man2html/man2html-1.6g.ebuild
+++ b/sys-apps/man2html/man2html-1.6g.ebuild
@@ -1,43 +1,38 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=7
-inherit eutils toolchain-funcs
+inherit edo toolchain-funcs
MY_P="man-${PV}"
DESCRIPTION="Standard commands to read man pages"
HOMEPAGE="http://primates.ximian.com/~flucifredi/man/"
SRC_URI="http://primates.ximian.com/~flucifredi/man/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
-IUSE=""
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="!sys-apps/man"
-S="${WORKDIR}/${MY_P}"
+PATCHES=(
+ "${FILESDIR}"/man-1.6f-man2html-compression-2.patch
+ "${FILESDIR}"/man-1.6-cross-compile.patch
+ "${FILESDIR}"/man-1.6g-compress.patch #205147
+)
-src_prepare() {
- epatch "${FILESDIR}"/man-1.6f-man2html-compression-2.patch
- epatch "${FILESDIR}"/man-1.6-cross-compile.patch
- epatch "${FILESDIR}"/man-1.6g-compress.patch #205147
-}
-
-echoit() { echo "$@" ; "$@" ; }
src_configure() {
tc-export CC BUILD_CC
# Just a stub to disable configure check. man2html doesn't use it.
export COMPRESS=true
- echoit \
- ./configure \
+ edo ./configure \
-confdir=/etc \
+sgid +fhs \
- +lang none \
- || die "configure failed"
+ +lang none
}
src_compile() {
@@ -48,7 +43,8 @@ src_compile() {
src_install() {
# A little faster to run this by hand than `emake install`.
- cd man2html
+ cd man2html || die
+
dobin man2html
doman man2html.1
dodoc README TODO
diff --git a/sys-apps/man2html/metadata.xml b/sys-apps/man2html/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/man2html/metadata.xml
+++ b/sys-apps/man2html/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/mawk/Manifest b/sys-apps/mawk/Manifest
index 09f583024ab9..42bf388b278e 100644
--- a/sys-apps/mawk/Manifest
+++ b/sys-apps/mawk/Manifest
@@ -1,3 +1,4 @@
-DIST mawk-1.3.4-20161120.tgz 461464 BLAKE2B 7481345b391198cc9ec47f6ad84f0f07e31c931a40d59bde401d00ea7bc74b728c8149f80187e5d73923496e2eef1ec70bc097aedf0b68630f73264d45d96ebd SHA512 c5edcbff4ab1e40eb9b178a045fcd426a5f3c93a3ab5bc1ca1fa85a0977b8c9060967fcbda4e4a6e9e68628f50a2814e22939676008dced529377d2cf9bda5b2
-DIST mawk-1.3.4-20190203.tgz 466481 BLAKE2B f647c52872ff510f02ab44f13f6c51497abdecf3d6ab40faa2e419f726a15ebdb531607465bcaf2f53d032284251f9fd25e73734a72fc31c014a0a9f200613ed SHA512 64d5b1838d34d30e32966f46cb7457c865caccfe9fe1049d2645ba301b1ddb4efc18588115dbcf96234a2a0b791211a7f82264a3c81899459dc3029e65837646
-DIST mawk-1.3.4-20200106.tgz 468031 BLAKE2B b125eecf780f0658d3a1c06875fdac221ffe5999e38646d71b15159c50271a7bbfb594fb6347442239c3eab6703f9c782739bd2a5a055e1ff8cd44a0e8a6545d SHA512 f6f65f3b73965f520a6f9bb7e2b6ad2a3c532c0768461744e6cfb2e72e2c718dacd1c5eea995dfa267facfc4e0ee71d337809cd45d5c75cfbc65294b45280ff9
+DIST mawk-1.3.4-20231126.tgz 413452 BLAKE2B e3907cf88ea3daaaf8a1d12eb9fe3cb726be8b8e8d3c8d9ea5b25b8127c5d054d8a0c600da90f7dabcc0fcee2c987628ade15b7225698e417fee63e49689a8a4 SHA512 faacd473df97fc51cf3ece652e0826b13c26e8de5fa87746dfcc097811a9464a71e5630a8f3b4d243e0c1dc0199751b64d9a1bf34fe5080b646c0e5fff231e0d
+DIST mawk-1.3.4-20231126.tgz.asc 729 BLAKE2B 72d8e626aac6354f2e568eb118f2d19b3d770ab8b23449163e84941cdbd8539b0e39edb0446176fc64ecfe2deac81e98f1107df1bdbd815569bf5d6b08d72cc3 SHA512 19a9725f84651f87ecb38350984a60fce52046df45be7c494e615db91f6b76229d3dba20211bca41b90a7370fbba97fcb7bb2fe475ffb880fac7f1116f14333f
+DIST mawk-1.3.4-20240123.tgz 413943 BLAKE2B 29a9c89995e969a62bd0b30e494c67e53aea0466c9286e2005422a54a44bef661ef6223522c4b51bc49b83c56512ae47e784c237dd39dfef77b7aa13ec33973a SHA512 f6d5da44280afeac4a9bb6d3788ed71ee816daaa5816f49b9d40add5292f3ae06e5af007a6c993d14405238cbb70ba4997fdd2fcd5901c9a1a4b61357045c4a6
+DIST mawk-1.3.4-20240123.tgz.asc 729 BLAKE2B e4ba4ddd1f3227a9dc922a1325b00fac2d9c95a848fdc03f57eaa5f354bf45da218cbf6e931b5c1464b799c05d10ff7fe95d1eb81221b4afba468bedc7805815 SHA512 3b4b8b8b7b74aff7061158a7c284d1949c09d52d78003b678c9dcc1da036a4d84b873103d76362866daf914d5a7d717c71baf13d30d7e882b03c5f87c8e4c452
diff --git a/sys-apps/mawk/mawk-1.3.4_p20161120.ebuild b/sys-apps/mawk/mawk-1.3.4_p20161120.ebuild
deleted file mode 100644
index 93e24c1e895e..000000000000
--- a/sys-apps/mawk/mawk-1.3.4_p20161120.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-MY_P=${P/_p/-}
-DESCRIPTION="an (often faster than gawk) awk-interpreter"
-HOMEPAGE="https://invisible-island.net/mawk/mawk.html"
-SRC_URI="ftp://invisible-island.net/mawk/${MY_P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
-
-RDEPEND="app-eselect/eselect-awk"
-DEPEND="${RDEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-DOCS=( ACKNOWLEDGMENT CHANGES README )
-
-src_prepare() {
- default
- tc-export BUILD_CC
-}
-
-src_install() {
- default
-
- exeinto /usr/share/doc/${PF}/examples
- doexe examples/*
- docompress -x /usr/share/doc/${PF}/examples
-}
-
-pkg_postinst() {
- eselect awk update ifunset
-}
-
-pkg_postrm() {
- eselect awk update ifunset
-}
diff --git a/sys-apps/mawk/mawk-1.3.4_p20190203-r1.ebuild b/sys-apps/mawk/mawk-1.3.4_p20190203-r1.ebuild
deleted file mode 100644
index c65ac1f64223..000000000000
--- a/sys-apps/mawk/mawk-1.3.4_p20190203-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-MY_P="${P/_p/-}"
-DESCRIPTION="an (often faster than gawk) awk-interpreter"
-HOMEPAGE="https://invisible-island.net/mawk/mawk.html"
-SRC_URI="ftp://ftp.invisible-island.net/mawk/${MY_P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
-
-RDEPEND="app-eselect/eselect-awk"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-DOCS=( ACKNOWLEDGMENT CHANGES README )
-
-src_configure() {
- tc-export BUILD_CC
- econf
-}
-
-src_install() {
- default
-
- exeinto /usr/share/doc/${PF}/examples
- doexe examples/*
- docompress -x /usr/share/doc/${PF}/examples
-}
-
-pkg_postinst() {
- eselect awk update ifunset
-}
-
-pkg_postrm() {
- eselect awk update ifunset
-}
diff --git a/sys-apps/mawk/mawk-1.3.4_p20200106-r1.ebuild b/sys-apps/mawk/mawk-1.3.4_p20200106-r1.ebuild
deleted file mode 100644
index 9df26d1d6857..000000000000
--- a/sys-apps/mawk/mawk-1.3.4_p20200106-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-MY_P="${P/_p/-}"
-DESCRIPTION="an (often faster than gawk) awk-interpreter"
-HOMEPAGE="https://invisible-island.net/mawk/mawk.html"
-SRC_URI="https://invisible-mirror.net/archives/${PN}/${MY_P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
-
-RDEPEND="app-eselect/eselect-awk"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-DOCS=( ACKNOWLEDGMENT CHANGES README )
-
-src_configure() {
- tc-export BUILD_CC
- econf
-}
-
-src_install() {
- default
-
- exeinto /usr/share/doc/${PF}/examples
- doexe examples/*
- docompress -x /usr/share/doc/${PF}/examples
-}
-
-pkg_postinst() {
- eselect awk update ifunset
-}
-
-pkg_postrm() {
- eselect awk update ifunset
-}
diff --git a/sys-apps/mawk/mawk-1.3.4_p20231126.ebuild b/sys-apps/mawk/mawk-1.3.4_p20231126.ebuild
new file mode 100644
index 000000000000..97373f855039
--- /dev/null
+++ b/sys-apps/mawk/mawk-1.3.4_p20231126.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc
+inherit toolchain-funcs verify-sig
+
+MY_P="${P/_p/-}"
+DESCRIPTION="An (often faster than gawk) awk-interpreter"
+HOMEPAGE="https://invisible-island.net/mawk/mawk.html"
+SRC_URI="https://invisible-mirror.net/archives/${PN}/${MY_P}.tgz"
+SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${MY_P}.tgz.asc )"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+
+BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-thomasdickey-20230810 )"
+
+DOCS=( ACKNOWLEDGMENT CHANGES README )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ arc4random_push # doesn't exist on Linux
+)
+
+src_configure() {
+ tc-export BUILD_CC
+ econf
+}
+
+src_install() {
+ default
+
+ exeinto /usr/share/doc/${PF}/examples
+ doexe examples/*
+ docompress -x /usr/share/doc/${PF}/examples
+}
+
+pkg_postinst() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk; then
+ eselect awk update ifunset
+ fi
+}
+
+pkg_postrm() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk; then
+ eselect awk update ifunset
+ fi
+}
diff --git a/sys-apps/mawk/mawk-1.3.4_p20240123.ebuild b/sys-apps/mawk/mawk-1.3.4_p20240123.ebuild
new file mode 100644
index 000000000000..df59ce811bad
--- /dev/null
+++ b/sys-apps/mawk/mawk-1.3.4_p20240123.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc
+inherit toolchain-funcs verify-sig
+
+MY_P="${P/_p/-}"
+DESCRIPTION="An (often faster than gawk) awk-interpreter"
+HOMEPAGE="https://invisible-island.net/mawk/mawk.html"
+SRC_URI="https://invisible-mirror.net/archives/${PN}/${MY_P}.tgz"
+SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${MY_P}.tgz.asc )"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+
+BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-thomasdickey-20240114 )"
+
+DOCS=( ACKNOWLEDGMENT CHANGES README )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ arc4random_push # doesn't exist on Linux
+)
+
+src_configure() {
+ tc-export BUILD_CC
+ econf
+}
+
+src_install() {
+ default
+
+ exeinto /usr/share/doc/${PF}/examples
+ doexe examples/*
+ docompress -x /usr/share/doc/${PF}/examples
+}
+
+pkg_postinst() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk; then
+ eselect awk update ifunset
+ fi
+}
+
+pkg_postrm() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk; then
+ eselect awk update ifunset
+ fi
+}
diff --git a/sys-apps/mawk/metadata.xml b/sys-apps/mawk/metadata.xml
index 56c124413057..528178a88402 100644
--- a/sys-apps/mawk/metadata.xml
+++ b/sys-apps/mawk/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <changelog>https://invisible-island.net/mawk/CHANGES.html</changelog>
+ <remote-id type="github">ThomasDickey/mawk-snapshots</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/mcstrans/Manifest b/sys-apps/mcstrans/Manifest
index 98571ed1154f..aafb84a12eef 100644
--- a/sys-apps/mcstrans/Manifest
+++ b/sys-apps/mcstrans/Manifest
@@ -1,3 +1,2 @@
-DIST mcstrans-2.9.tar.gz 44451 BLAKE2B e73121351a5d3a09c4754cd0fc6bcdac4b47e3f99d8bd2c40ee9b2bb510095a41721d0dae0d3edb56c36d9e9ef72ece4c69a01298c7f34fe96ccf4883372b1fd SHA512 25a37c6dd7fa23b0599d7e92da78805e1da1605c998edf00777113c8467b1703f634223dff57627337da51e565cf2d1e475698a5a2310966f1f6dcf6687671d1
-DIST mcstrans-3.0.tar.gz 44570 BLAKE2B 82358f6564e42ebfa50647892b35e4788ff9b8636eef3c776dbc6cefff7532906479b5826c1f515d2994611f62100a2622a5cce130bc7dbb4db3afc2167ec072 SHA512 02d9754daf1f85941cc8eea934931b6963d1a2133f6f313a2c7fc6a485687add434d587eeac96bfaf2b490c8e1cea34514a7689f880ebb49ca59ebf9b8956eba
-DIST mcstrans-3.1.tar.gz 44598 BLAKE2B 1755c2f56e3d40fa2ea95c349988fe5dd7b52a9f26bef0f42e42bda8f7b94993b9a47d2e333337f746cbabd9dd571118b0a8e1ffb7c22c604db58fc809bcc033 SHA512 21e9b7a8c9d98cbee61f2eb1c440a51d19ac111a5955c24d365a8784e1aa34fb47a22a108e550c8a4cde4f25ec5afc466126a68e9faedfc796bef83eada93b60
+DIST mcstrans-3.5.tar.gz 45091 BLAKE2B c6604075a6b37d7bf10e2daee40d9f034a26c5d56b81973cbc3b39621bdf5e2cb1d5906e91942e09ff077a14facafcc2464995675d8df31930707033fac5db90 SHA512 f4d3b04750e197c6abd31f1642af4b53a4fe0e968952a7ade992909f903d7486c1e72733963453563fcbc9745273c8238f169f520550df1470e7f6e4d6e56665
+DIST mcstrans-3.6.tar.gz 42199 BLAKE2B 0f1b4ed212994037b062c42887e2629ae7374e0cbbd79692588ce164440eafddc6d7ab15d58f6064d68781a5a8fd614c9cfa734c4dbe1d3fea1dbb0f8191ddc1 SHA512 2c01a70741675faa41e8a9243f3cf08b558e568d7ae343874ff9c269473ba2748d42e0b45871d82d6c9b01bf71547835d547683f1aa5a8cf626708c7c69569fc
diff --git a/sys-apps/mcstrans/files/mcstransd.init b/sys-apps/mcstrans/files/mcstransd.init
index 7c90e771b383..dc516654e33f 100644
--- a/sys-apps/mcstrans/files/mcstransd.init
+++ b/sys-apps/mcstrans/files/mcstransd.init
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 2006-2017 Gentoo Foundation
+# Copyright 2006-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
is_selinux_enabled() {
diff --git a/sys-apps/mcstrans/mcstrans-2.9.ebuild b/sys-apps/mcstrans/mcstrans-2.9.ebuild
deleted file mode 100644
index 2afa5b9f2faf..000000000000
--- a/sys-apps/mcstrans/mcstrans-2.9.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20190315"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="SELinux context translation to human readable names"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
-
-RDEPEND="${DEPEND}
- !<sys-apps/policycoreutils-2.7_pre"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- tc-export CC
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- rm -rf "${D}/etc/rc.d" || die
-
- newinitd "${FILESDIR}/mcstransd.init" mcstransd
-}
diff --git a/sys-apps/mcstrans/mcstrans-3.0.ebuild b/sys-apps/mcstrans/mcstrans-3.0.ebuild
deleted file mode 100644
index 4582ff64b223..000000000000
--- a/sys-apps/mcstrans/mcstrans-3.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20191204"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="SELinux context translation to human readable names"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
-
-RDEPEND="${DEPEND}
- !<sys-apps/policycoreutils-2.7_pre"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- tc-export CC
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- rm -rf "${D}/etc/rc.d" || die
-
- newinitd "${FILESDIR}/mcstransd.init" mcstransd
-}
diff --git a/sys-apps/mcstrans/mcstrans-3.1.ebuild b/sys-apps/mcstrans/mcstrans-3.1.ebuild
deleted file mode 100644
index c848c15f507c..000000000000
--- a/sys-apps/mcstrans/mcstrans-3.1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20200710"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="SELinux context translation to human readable names"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- tc-export CC
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- rm -rf "${D}/etc/rc.d" || die
-
- newinitd "${FILESDIR}/mcstransd.init" mcstransd
-}
diff --git a/sys-apps/mcstrans/mcstrans-3.5.ebuild b/sys-apps/mcstrans/mcstrans-3.5.ebuild
new file mode 100644
index 000000000000..e6c8880095b2
--- /dev/null
+++ b/sys-apps/mcstrans/mcstrans-3.5.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux context translation to human readable names"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+DEPEND=">=sys-libs/libsepol-${PV}:=
+ >=sys-libs/libselinux-${PV}:=
+ dev-libs/libpcre2:=
+ >=sys-libs/libcap-1.10-r10:="
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
+}
+
+src_compile() {
+ tc-export CC
+ default
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ rm -rf "${D}/etc/rc.d" || die
+
+ newinitd "${FILESDIR}/mcstransd.init" mcstransd
+}
diff --git a/sys-apps/mcstrans/mcstrans-3.6.ebuild b/sys-apps/mcstrans/mcstrans-3.6.ebuild
new file mode 100644
index 000000000000..5e3f390c215e
--- /dev/null
+++ b/sys-apps/mcstrans/mcstrans-3.6.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux context translation to human readable names"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND=">=sys-libs/libsepol-${PV}:=
+ >=sys-libs/libselinux-${PV}:=
+ dev-libs/libpcre2:=
+ >=sys-libs/libcap-1.10-r10:="
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
+}
+
+src_compile() {
+ tc-export CC
+ default
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ rm -rf "${D}/etc/rc.d" || die
+
+ newinitd "${FILESDIR}/mcstransd.init" mcstransd
+}
diff --git a/sys-apps/mcstrans/mcstrans-9999.ebuild b/sys-apps/mcstrans/mcstrans-9999.ebuild
index c848c15f507c..bbd7a4cc0378 100644
--- a/sys-apps/mcstrans/mcstrans-9999.ebuild
+++ b/sys-apps/mcstrans/mcstrans-9999.ebuild
@@ -1,34 +1,32 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit toolchain-funcs
-MY_RELEASEDATE="20200710"
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
-MY_P="${P//_/-}"
-IUSE=""
+DESCRIPTION="SELinux context translation to human readable names"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
+ S="${WORKDIR}/${P}/${PN}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
S="${WORKDIR}/${MY_P}"
fi
-DESCRIPTION="SELinux context translation to human readable names"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
LICENSE="GPL-2"
SLOT="0"
DEPEND=">=sys-libs/libsepol-${PV}:=
>=sys-libs/libselinux-${PV}:=
- dev-libs/libpcre:=
+ dev-libs/libpcre2:=
>=sys-libs/libcap-1.10-r10:="
RDEPEND="${DEPEND}"
diff --git a/sys-apps/mcstrans/metadata.xml b/sys-apps/mcstrans/metadata.xml
index 9a9681c39bd3..861770703d93 100644
--- a/sys-apps/mcstrans/metadata.xml
+++ b/sys-apps/mcstrans/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
diff --git a/sys-apps/memtest86+/Manifest b/sys-apps/memtest86+/Manifest
index 95326fdd945f..0cdbeac150a6 100644
--- a/sys-apps/memtest86+/Manifest
+++ b/sys-apps/memtest86+/Manifest
@@ -1 +1,2 @@
-DIST memtest86+-5.01.tar.gz 214877 BLAKE2B ef63eaabaf6d3d27b85c73618c692dd61cce52f3670a57958d181623888bdc3aa538855da9a82ec2ab70b180938e3df99f0b06f606b2d6f64e8aabbe781b3050 SHA512 d872db35ef733ec8f49094251f2bf6b98cc80eb06d04044be3aecf28d534f24ba293a08b9979b112dbd07cf27368148939a33a32c7010fc9581a3a5b150c94d7
+DIST memtest86+-6.20.tar.gz 232436 BLAKE2B 6e3bea4b18049446f27da2cb1313300c578ef7fdb774b6a20df603271b66a6c0066be64a91b0a6d4ffcc63f1e139132942290a8111f6a991cccc0a5586cac966 SHA512 b12856bd6ba82dac6308bb9f611ddb16df68c3da4d00ad9abf23bcf5d3f2e5c424fc1bccedd8c0732b4c68013c421ed20c5db56c39b619bbe77c4c1f5e8504f0
+DIST memtest86+-7.00.tar.gz 244385 BLAKE2B 608f4e31ddaee01d828cb1574086196c26f5e96c5049806ac3ab174ddf669db8cdcb8f336bec5a1ce74439d96fca505fea81311a06581bb43a8034156a4f8165 SHA512 1325ee08b280404fb47d37b62d65e51de21dd09b96bef29ece193072b09ff3c6eea8657b2e7c98801bf81ba4288c2bff580a91eb45d5a93744b0a273652266c4
diff --git a/sys-apps/memtest86+/files/39_memtest86+ b/sys-apps/memtest86+/files/39_memtest86+
deleted file mode 100644
index 9c9067a5e736..000000000000
--- a/sys-apps/memtest86+/files/39_memtest86+
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/bin/sh
-
-. /usr/share/grub/grub-mkconfig_lib
-
-memtest=/boot/memtest86plus/memtest
-
-memtestbsd=/boot/memtest86plus/memtest.netbsd
-
-if [ -f "${memtest}" ] && [ -f "${memtestbsd}" ]; then
- multiple_memtest=true
-fi
-
-submenu_indentation=""
-if [ "${multiple_memtest}" = "true" ] && [ "${GRUB_DISABLE_SUBMENU}" != "y" ]; then
- submenu_indentation="${grub_tab}"
- cat <<EOF
-submenu 'Memtest86+' {
-EOF
-fi
-
-if [ -f "${memtest}" ]; then
- gettext_printf "Found memtest image: %s\n" "${memtest}" >&2
-
- device="$("${grub_probe}" --target=device "${memtest}")"
- path="$(make_system_path_relative_to_its_root "${memtest}")"
- cat <<EOF
-${submenu_indentation}menuentry 'Memtest86+' {
-EOF
-
- if [ -n "{submenu_indentation}" ]; then
- prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
- else
- prepare_grub_to_access_device "${device}" | grub_add_tab
- fi
-
- cat <<EOF
- ${submenu_indentation}linux16 "${path}"
-${submenu_indentation}}
-EOF
-fi
-
-if [ -f "${memtestbsd}" ]; then
- gettext_printf "Found memtest image: %s\n" "${memtestbsd}" >&2
-
- device="$("${grub_probe}" --target=device "${memtestbsd}")"
- path="$(make_system_path_relative_to_its_root "${memtestbsd}")"
- cat <<EOF
-${submenu_indentation}menuentry 'Memtest86+ (netbsd)' {
-EOF
-
- if [ -n "${submenu_indentation}" ]; then
- prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
- else
- prepare_grub_to_access_device "${device}" | grub_add_tab
- fi
-
- cat <<EOF
- ${submenu_indentation}knetbsd "${path}"
-${submenu_indentation}}
-EOF
-fi
-
-if [ "${multiple_memtest}" = "true" ] && [ "${GRUB_DISABLE_SUBMENU}" != "y" ]; then
- cat <<EOF
-}
-EOF
-fi
diff --git a/sys-apps/memtest86+/files/39_memtest86+-r1 b/sys-apps/memtest86+/files/39_memtest86+-r1
deleted file mode 100644
index 20422b74d65a..000000000000
--- a/sys-apps/memtest86+/files/39_memtest86+-r1
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/bin/sh
-
-. /usr/share/grub/grub-mkconfig_lib
-
-memtest=/boot/memtest86plus/memtest.bin
-
-memtestelf=/boot/memtest86plus/memtest
-
-if [ -f "${memtest}" ] && [ -f "${memtestelf}" ]; then
- multiple_memtest=true
-fi
-
-submenu_indentation=""
-if [ "${multiple_memtest}" = "true" ] && [ "${GRUB_DISABLE_SUBMENU}" != "y" ]; then
- submenu_indentation="${grub_tab}"
- cat <<EOF
-submenu 'Memtest86+' {
-EOF
-fi
-
-if [ -f "${memtest}" ]; then
- gettext_printf "Found memtest image: %s\n" "${memtest}" >&2
-
- device="$("${grub_probe}" --target=device "${memtest}")"
- path="$(make_system_path_relative_to_its_root "${memtest}")"
- cat <<EOF
-${submenu_indentation}menuentry 'Memtest86+' {
-EOF
-
- if [ -n "{submenu_indentation}" ]; then
- prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
- else
- prepare_grub_to_access_device "${device}" | grub_add_tab
- fi
-
- cat <<EOF
- ${submenu_indentation}linux16 "${path}"
-${submenu_indentation}}
-EOF
-fi
-
-if [ -f "${memtestelf}" ]; then
- gettext_printf "Found memtest image: %s\n" "${memtestelf}" >&2
-
- device="$("${grub_probe}" --target=device "${memtestelf}")"
- path="$(make_system_path_relative_to_its_root "${memtestelf}")"
- cat <<EOF
-${submenu_indentation}menuentry 'Memtest86+ (ELF)' {
-EOF
-
- if [ -n "${submenu_indentation}" ]; then
- prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
- else
- prepare_grub_to_access_device "${device}" | grub_add_tab
- fi
-
- # We use knetbsd as a lazy way of booting an ELF.
- # It's not actually related to NetBSD at all.
- cat <<EOF
- ${submenu_indentation}knetbsd "${path}"
-${submenu_indentation}}
-EOF
-fi
-
-if [ "${multiple_memtest}" = "true" ] && [ "${GRUB_DISABLE_SUBMENU}" != "y" ]; then
- cat <<EOF
-}
-EOF
-fi
diff --git a/sys-apps/memtest86+/files/39_memtest86+-r2 b/sys-apps/memtest86+/files/39_memtest86+-r2
new file mode 100644
index 000000000000..d53f83cc311a
--- /dev/null
+++ b/sys-apps/memtest86+/files/39_memtest86+-r2
@@ -0,0 +1,126 @@
+#!/bin/sh
+
+. /usr/share/grub/grub-mkconfig_lib
+
+mtbios32=/boot/memtest86plus/memtest32.bios
+mtbios64=/boot/memtest86plus/memtest64.bios
+mtefi32=/boot/memtest86plus/memtest.efi32
+mtefi64=/boot/memtest86plus/memtest.efi64
+
+if [ $(ls /boot/memtest86plus | wc -l) -gt 1 ]; then
+ multiple_memtest=true
+fi
+
+submenu_indentation=""
+if [ "${multiple_memtest}" = "true" ] && [ "${GRUB_DISABLE_SUBMENU}" != "y" ]; then
+ submenu_indentation="${grub_tab}"
+ cat <<EOF
+submenu 'Memtest86+' {
+EOF
+fi
+
+# Start bios32
+if [ -f "${mtbios32}" ]; then
+ gettext_printf "Found memtest image: %s\n" "${mtbios32}" >&2
+
+ device="$("${grub_probe}" --target=device "${mtbios32}")"
+ path="$(make_system_path_relative_to_its_root "${mtbios32}")"
+ cat <<EOF
+${submenu_indentation}if [ "x\$grub_platform" = xpc ]; then
+${submenu_indentation}menuentry 'Memtest86+ 32bit' {
+EOF
+
+ if [ -n "${submenu_indentation}" ]; then
+ prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
+ else
+ prepare_grub_to_access_device "${device}" | grub_add_tab
+ fi
+
+ cat <<EOF
+ ${submenu_indentation}linux "${path}"
+${submenu_indentation}}
+${submenu_indentation}fi
+EOF
+fi
+# End bios32
+
+# Start bios64
+if [ -f "${mtbios64}" ]; then
+ gettext_printf "Found memtest image: %s\n" "${mtbios64}" >&2
+
+ device="$("${grub_probe}" --target=device "${mtbios64}")"
+ path="$(make_system_path_relative_to_its_root "${mtbios64}")"
+ cat <<EOF
+${submenu_indentation}if [ "x\$grub_platform" = xpc ]; then
+${submenu_indentation}menuentry 'Memtest86+ 64bit' {
+EOF
+
+ if [ -n "{submenu_indentation}" ]; then
+ prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
+ else
+ prepare_grub_to_access_device "${device}" | grub_add_tab
+ fi
+
+ cat <<EOF
+ ${submenu_indentation}linux "${path}"
+${submenu_indentation}}
+${submenu_indentation}fi
+EOF
+fi
+# End bios64
+
+# Start efi32
+if [ -f "${mtefi32}" ]; then
+ gettext_printf "Found memtest image: %s\n" "${mtefi32}" >&2
+
+ device="$("${grub_probe}" --target=device "${mtefi32}")"
+ path="$(make_system_path_relative_to_its_root "${mtefi32}")"
+ cat <<EOF
+${submenu_indentation}if [ "x\$grub_platform" = xefi ]; then
+${submenu_indentation}menuentry 'Memtest86+ 32bit UEFI' {
+EOF
+
+ if [ -n "{submenu_indentation}" ]; then
+ prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
+ else
+ prepare_grub_to_access_device "${device}" | grub_add_tab
+ fi
+
+ cat <<EOF
+ ${submenu_indentation}chainloader "${path}"
+${submenu_indentation}}
+${submenu_indentation}fi
+EOF
+fi
+# End efi32
+
+# Start efi64
+if [ -f "${mtefi64}" ]; then
+ gettext_printf "Found memtest image: %s\n" "${mtefi64}" >&2
+
+ device="$("${grub_probe}" --target=device "${mtefi64}")"
+ path="$(make_system_path_relative_to_its_root "${mtefi64}")"
+ cat <<EOF
+${submenu_indentation}if [ "x\$grub_platform" = xefi ]; then
+${submenu_indentation}menuentry 'Memtest86+ 64bit UEFI' {
+EOF
+
+ if [ -n "{submenu_indentation}" ]; then
+ prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
+ else
+ prepare_grub_to_access_device "${device}" | grub_add_tab
+ fi
+
+ cat <<EOF
+ ${submenu_indentation}chainloader "${path}"
+${submenu_indentation}}
+${submenu_indentation}fi
+EOF
+fi
+#End efi64
+
+if [ "${multiple_memtest}" = "true" ] && [ "${GRUB_DISABLE_SUBMENU}" != "y" ]; then
+ cat <<EOF
+}
+EOF
+fi
diff --git a/sys-apps/memtest86+/files/make-memtest86+-boot-floppy b/sys-apps/memtest86+/files/make-memtest86+-boot-floppy
deleted file mode 100644
index 9c225c740bf4..000000000000
--- a/sys-apps/memtest86+/files/make-memtest86+-boot-floppy
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-#
-# Script for making a memtest86 boot floppy using GRUB as bootloader
-#
-
-# (c) 2003 Peter Loje Hansen <pl@2m.dk>
-# - original version
-# (c) 2004 Yann Dirson <dirson@debian.org>
-# - added parameters
-# - ability to work on a floppy image instead of a real floppy
-# - adapted patches from Martin Koeppe <martin@koeppe-net.de>, to use
-# mtools and install full grub
-
-# TODO:
-# - add a flag to generate a default boot entry for (hd0)
-
-set -e
-
-MEMTEST=/boot/memtest86plus/memtest.bin
-FLOPPYIMAGE=/dev/fd0
-GRUBBIN=/sbin/grub
-GRUBLIB=/lib/grub
-MFORMAT=/usr/bin/mformat
-
-arch=$(uname -m)
-
-case "$arch" in
- i386|i486|i686) GRUBARCH=i386-pc;;
- x86_64) GRUBARCH=x86_64-pc;;
- *) error "Unsupported architecture: $arch";;
-esac
-
-error()
-{
- echo >&2 "$0: $*"
- exit 1
-}
-
-needsarg()
-{
- [ $1 -ge 2 ] || error "syntax error"
-}
-
-[ -d $GRUBLIB ] || error "Can't find $GRUBLIB - did you install a recent grub package (0.95+cvs20040624 or later) ?"
-[ -x $MFORMAT ] || error "Can't find mformat - did you install the mtools package ?"
-
-while [ $# -gt 0 ]
-do
- case "$1" in
- --help) echo "$0 [--memtest $MEMTEST] [--floppyimage $FLOPPYIMAGE]"; exit 0 ;;
- --memtest) needsarg $#; MEMTEST="$2"; shift ;;
- --floppyimage) needsarg $#; FLOPPYIMAGE="$2"; shift ;;
- *) error "syntax error" ;;
- esac
- shift
-done
-
-MOUNTPOINT=$(mktemp -d)
-
-if [ -b "$FLOPPYIMAGE" ]
-then
- FINALDEV="$FLOPPYIMAGE"
- FLOPPYIMAGE="$(mktemp)"
-else
- FINALDEV=""
-fi
-
-echo "* Creating msdos file system"
-echo
-if [ ! -s "$FLOPPYIMAGE" ]; then
- # unless a non-empty image exists, create a blank one first
- dd bs=1024 count=1440 if=/dev/zero of="$FLOPPYIMAGE"
-fi
-# FIXME: "-f 1440" should probably be dropped
-mformat -i $FLOPPYIMAGE -f 1440 ::
-
-mmd -i $FLOPPYIMAGE ::/boot
-mmd -i $FLOPPYIMAGE ::/boot/grub
-
-echo
-echo "* Installing GRUB files"
-mcopy -v -i "$FLOPPYIMAGE" - ::/boot/grub/menu.lst <<EOF
-color green/black light-green/black
-default 0
-timeout 10
-title memtest
-kernel (fd0)/boot/memtest.bin
-EOF
-mcopy -v -i "$FLOPPYIMAGE" $GRUBLIB/$GRUBARCH/* ::/boot/grub
-
-echo
-echo "* Installing $MEMTEST"
-mcopy -v -i "$FLOPPYIMAGE" "$MEMTEST" ::/boot/memtest.bin
-
-echo
-echo -n "* Installing GRUB"
-$GRUBBIN --batch --device-map=/dev/null <<EOF
-device (fd0) $FLOPPYIMAGE
-root (fd0)
-setup (fd0)
-quit
-EOF
-
-if [ -n "$FINALDEV" ]; then
- echo
- echo "Insert a writable floppy for $FINALDEV and press enter"
- read FOO
-
- dd bs=1024 if="$FLOPPYIMAGE" of="$FINALDEV"
- rm "$FLOPPYIMAGE"
-fi
diff --git a/sys-apps/memtest86+/files/make-memtest86+-boot-floppy.1 b/sys-apps/memtest86+/files/make-memtest86+-boot-floppy.1
deleted file mode 100644
index e1283e5efc8f..000000000000
--- a/sys-apps/memtest86+/files/make-memtest86+-boot-floppy.1
+++ /dev/null
@@ -1,39 +0,0 @@
-.\" Man page for make-memtest86+-boot-floppy
-
-.TH make-memtest86+-boot-floppy 1
-
-.SH NAME
-make-memtest86+-boot-floppy \- create a memtest86+ boot-floppy using GRUB.
-
-.SH SYNOPSIS
-
-.B make-memtest86+-boot-floppy [ \-\-memtest
-.I <path to memtest86+-image>
-.B ] [ \-\-floppyimage
-.I <path to floppyimage/device>
-.B ]
-
-.SH DESCRIPTION
-.B make-memtest86+-boot-floppy
-can create a memtest86+ boot floppy using GRUB as the bootloader.
-
-.SH OPTIONS
-
-.IP "\-\-memtest <path to the memtest-image>"
-Path to the memtest86+-image, default is /boot/memtest86+.bin.
-
-.IP "\-\-floppyimage <path to the floppyimage or device>"
-File or device where the boot-image should be written to, default is /dev/fd0.
-
-.IP "\-\-help"
-Display a short message about the options of the tool.
-
-.SH AUTHOR
-This man-page has been written by Thomas Schmidt <thomas@thsnet.de>
-.PP
-Permission is granted to copy, distribute and/or modify this document under
-the terms of the GNU General Public License, Version 2 any
-later version published by the Free Software Foundation.
-.PP
-On Debian systems, the complete text of the GNU General Public
-License can be found in /usr/share/common\-licenses/GPL.
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-gcc-473.patch b/sys-apps/memtest86+/files/memtest86+-5.01-gcc-473.patch
deleted file mode 100644
index af011d67c705..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-gcc-473.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-http://forum.canardpc.com/threads/110950-fix-controller-loop-error
-
---- memtest86+-5.01/controller.c
-+++ memtest86+-5.01/controller.c
-@@ -292,7 +292,7 @@ static void setup_nhm(void)
-
- /* First, locate the PCI bus where the MCH is located */
-
-- for(i = 0; i < sizeof(possible_nhm_bus); i++) {
-+ for(i = 0; i < sizeof(possible_nhm_bus) / sizeof(possible_nhm_bus[0]); i++) {
- pci_conf_read( possible_nhm_bus[i], 3, 4, 0x00, 2, &vid);
- pci_conf_read( possible_nhm_bus[i], 3, 4, 0x02, 2, &did);
- vid &= 0xFFFF;
-@@ -327,7 +327,7 @@ static void setup_nhm32(void)
- ctrl.mode = ECC_NONE;
-
- /* First, locate the PCI bus where the MCH is located */
-- for(i = 0; i < sizeof(possible_nhm_bus); i++) {
-+ for(i = 0; i < sizeof(possible_nhm_bus) / sizeof(possible_nhm_bus[0]); i++) {
- pci_conf_read( possible_nhm_bus[i], 3, 4, 0x00, 2, &vid);
- pci_conf_read( possible_nhm_bus[i], 3, 4, 0x02, 2, &did);
- vid &= 0xFFFF;
---- memtest86+-5.01/Makefile
-+++ memtest86+-5.01/Makefile
-@@ -12,7 +12,7 @@ FDISK=/dev/fd0
- AS=as -32
- CC=gcc
-
--CFLAGS= -Wall -march=i486 -m32 -O1 -fomit-frame-pointer -fno-builtin \
-+CFLAGS= -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin \
- -ffreestanding -fPIC $(SMP_FL) -fno-stack-protector
-
- OBJS= head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o \
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-hardcoded_cc.patch b/sys-apps/memtest86+/files/memtest86+-5.01-hardcoded_cc.patch
deleted file mode 100644
index 21b51c5b7fff..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-hardcoded_cc.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/Makefile.orig 2015-02-01 01:08:33.000000000 +0300
-+++ b/Makefile 2015-02-01 01:10:17.624757244 +0300
-@@ -9,11 +9,10 @@
- #
- FDISK=/dev/fd0
-
--AS=as -32
--CC=gcc
--
- CFLAGS= -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin \
- -ffreestanding -fPIC $(SMP_FL) -fno-stack-protector
-+CPPFLAGS= -m32
-+ASFLAGS= -32
-
- OBJS= head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o \
- config.o cpuid.o linuxbios.o pci.o memsize.o spd.o error.o dmi.o controller.o \
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-io-extern-inline.patch b/sys-apps/memtest86+/files/memtest86+-5.01-io-extern-inline.patch
deleted file mode 100644
index 682dd5d01a1e..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-io-extern-inline.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-http://forum.canardpc.com/threads/110951-fix-build-with-newer-gcc-versions
-
-the meaning of extern inline changed between standards. use static inline
-for these tiny I/O functions everywhere to keep things simple.
-
---- a/io.h
-+++ b/io.h
-@@ -31,6 +31,6 @@
- */
-
- #define __OUT1(s,x) \
--extern inline void __out##s(unsigned x value, unsigned short port) {
-+static inline void __out##s(unsigned x value, unsigned short port) {
-
- #define __OUT2(s,s1,s2) \
-@@ -43,6 +43,6 @@
- __OUT1(s##c_p,x) __OUT2(s,s1,"") : : "a" (value), "id" (port)); SLOW_DOWN_IO; }
-
- #define __IN1(s) \
--extern inline RETURN_TYPE __in##s(unsigned short port) { RETURN_TYPE _v;
-+static inline RETURN_TYPE __in##s(unsigned short port) { RETURN_TYPE _v;
-
- #define __IN2(s,s1,s2) \
-@@ -55,6 +55,6 @@
- __IN1(s##c_p) __IN2(s,s1,"") : "=a" (_v) : "id" (port) ,##i ); SLOW_DOWN_IO; return _v; }
-
- #define __OUTS(s) \
--extern inline void outs##s(unsigned short port, const void * addr, unsigned long count) \
-+static inline void outs##s(unsigned short port, const void * addr, unsigned long count) \
- { __asm__ __volatile__ ("cld ; rep ; outs" #s \
- : "=S" (addr), "=c" (count) : "d" (port),"0" (addr),"1" (count)); }
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-no-C-headers.patch b/sys-apps/memtest86+/files/memtest86+-5.01-no-C-headers.patch
deleted file mode 100644
index ce7f906a19d5..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-no-C-headers.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-http://forum.canardpc.com/threads/110955-PATCH-don-t-pull-in-system-headers
-
-avoid using C library headers as it'd mean we'd need 32-bit glibc files available
-
-https://bugs.gentoo.org/592638
-
---- a/dmi.c
-+++ b/dmi.c
-@@ -10,7 +10,7 @@
-
-
- #include "test.h"
--#include <stdint.h>
-+#include "stdint.h"
-
-
- #define round_up(x,y) (((x) + (y) - 1) & ~((y)-1))
---- a/test.c
-+++ b/test.c
-@@ -14,7 +14,28 @@
- #include "stdint.h"
- #include "cpuid.h"
- #include "smp.h"
--#include <sys/io.h>
-+
-+static inline unsigned char
-+inb_p (unsigned short int __port)
-+{
-+ unsigned char _v;
-+
-+ __asm__ __volatile__ ("inb %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (__port));
-+ return _v;
-+}
-+
-+static inline void
-+outb (unsigned char __value, unsigned short int __port)
-+{
-+ __asm__ __volatile__ ("outb %b0,%w1": :"a" (__value), "Nd" (__port));
-+}
-+
-+static inline void
-+outb_p (unsigned char __value, unsigned short int __port)
-+{
-+ __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80": :"a" (__value),
-+ "Nd" (__port));
-+}
-
- extern struct cpu_ident cpu_id;
- extern volatile int mstr_cpu;
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-no-clean.patch b/sys-apps/memtest86+/files/memtest86+-5.01-no-clean.patch
deleted file mode 100644
index e9cbf10399c3..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-no-clean.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-http://forum.canardpc.com/threads/110954-PATCH-fix-parallel-build-issues
-
-
-don't run the clean target when building all as we run into parallel races:
- - memtest kicks off building of a bunch of .o files
- - clean runs in parallel which runs `rm` and deletes some of the new .o
- - memtest goes to link and fails because objects are missing
-
---- a/Makefile
-+++ b/Makefile
-@@ -19,7 +19,7 @@
- smp.o vmem.o random.o
-
-
--all: clean memtest.bin memtest
-+all: memtest.bin memtest
-
- # Link it statically once so I know I don't have undefined
- # symbols and then link it dynamically so I have full
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-no-scp.patch b/sys-apps/memtest86+/files/memtest86+-5.01-no-scp.patch
deleted file mode 100644
index 8d830e297ec2..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-no-scp.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-http://forum.canardpc.com/threads/110953-PATCH-don-t-try-to-scp-after-building
-
-this makes no sense in a sane build world
-
---- a/Makefile
-+++ b/Makefile
-@@ -21,7 +21,6 @@
-
-
- all: clean memtest.bin memtest
-- scp memtest.bin root@192.168.0.12:/srv/tftp/mt86plus
-
- # Link it statically once so I know I don't have undefined
- # symbols and then link it dynamically so I have full
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-objcopy.patch b/sys-apps/memtest86+/files/memtest86+-5.01-objcopy.patch
deleted file mode 100644
index 5effe20027a9..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-objcopy.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Allow 'objcopy' override with user's OBJCOPY.
---- a/Makefile
-+++ b/Makefile
-@@ -8,6 +8,7 @@
- # Path for the floppy disk device
- #
- FDISK=/dev/fd0
-+OBJCOPY=objcopy
-
- CFLAGS= -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin \
- -ffreestanding -fPIC $(SMP_FL) -fno-stack-protector
-@@ -30,7 +31,7 @@ memtest_shared: $(OBJS) memtest_shared.lds Makefile
- $(LD) -shared -Bsymbolic -T memtest_shared.lds -o $@ $(OBJS)
-
- memtest_shared.bin: memtest_shared
-- objcopy -O binary $< memtest_shared.bin
-+ $(OBJCOPY) -O binary $< memtest_shared.bin
-
- memtest: memtest_shared.bin memtest.lds
- $(LD) -s -T memtest.lds -b binary memtest_shared.bin -o $@
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-reboot-def.patch b/sys-apps/memtest86+/files/memtest86+-5.01-reboot-def.patch
deleted file mode 100644
index f4b42feb5fb3..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-reboot-def.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-http://forum.canardpc.com/threads/110952-fix-build-due-to-missing-reboot-symbol
-
-the reboot func is used elsewhere, so don't mark it inline
-
---- a/lib.c
-+++ b/lib.c
-@@ -33,7 +33,7 @@ struct ascii_map_str {
- int keycode;
- };
-
--inline void reboot(void)
-+void reboot(void)
- {
-
- /* tell the BIOS to do a cold start */
diff --git a/sys-apps/memtest86+/files/memtest86+-5.01-test-random-cflags.patch b/sys-apps/memtest86+/files/memtest86+-5.01-test-random-cflags.patch
deleted file mode 100644
index dcdccb8c6e97..000000000000
--- a/sys-apps/memtest86+/files/memtest86+-5.01-test-random-cflags.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-make sure we re-use the existing CFLAGS settings so that we get all the right
-flags (like -fno-stack-protector). just append the few changes we want (the
-optimization levels).
-
-https://bugs.gentoo.org/590974
-
---- a/Makefile
-+++ b/Makefile
-@@ -52,10 +52,10 @@ reloc.o: reloc.c
- $(CC) -c $(CFLAGS) -fno-strict-aliasing reloc.c
-
- test.o: test.c
-- $(CC) -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding test.c
-+test.o: CFLAGS += -O0 -fno-PIC
-
- random.o: random.c
-- $(CC) -c -Wall -march=i486 -m32 -O3 -fomit-frame-pointer -fno-builtin -ffreestanding random.c
-+random.o: CFLAGS += -O3 -fno-PIC
-
- # rule for build number generation
- build_number:
diff --git a/sys-apps/memtest86+/memtest86+-5.01-r4.ebuild b/sys-apps/memtest86+/memtest86+-5.01-r4.ebuild
deleted file mode 100644
index 08cf34af5417..000000000000
--- a/sys-apps/memtest86+/memtest86+-5.01-r4.ebuild
+++ /dev/null
@@ -1,114 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit mount-boot eutils toolchain-funcs
-
-DESCRIPTION="Memory tester based on memtest86"
-HOMEPAGE="http://www.memtest.org/"
-SRC_URI="http://www.memtest.org/download/${PV}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE="+boot floppy iso serial"
-
-BOOTDIR="/boot/memtest86plus"
-QA_PRESTRIPPED="${BOOTDIR}/memtest /usr/share/${PN}/memtest"
-QA_FLAGS_IGNORED="${BOOTDIR}/memtest /usr/share/${PN}/memtest"
-
-RDEPEND="floppy? ( sys-fs/mtools )"
-DEPEND="iso? ( app-cdr/cdrtools )"
-
-pkg_pretend() {
- use boot && mount-boot_pkg_pretend
-}
-
-src_prepare() {
- sed -i -e 's,0x10000,0x100000,' memtest.lds || die
- epatch "${FILESDIR}/${P}-gcc-473.patch" \
- "${FILESDIR}/${P}-hardcoded_cc.patch"
- epatch "${FILESDIR}"/${P}-no-scp.patch
- epatch "${FILESDIR}"/${P}-io-extern-inline.patch #548312
- epatch "${FILESDIR}"/${P}-reboot-def.patch #548312
- epatch "${FILESDIR}"/${P}-no-clean.patch #557890
- epatch "${FILESDIR}"/${P}-no-C-headers.patch #592638
- epatch "${FILESDIR}"/${P}-test-random-cflags.patch #590974
-
- sed -i 's:genisoimage:mkisofs:' makeiso.sh || die
- if use serial ; then
- sed -i \
- -e '/^#define SERIAL_CONSOLE_DEFAULT/s:0:1:' \
- config.h \
- || die "sed failed"
- fi
- default
-}
-
-src_configure() {
- tc-ld-disable-gold #580212
- tc-export AS CC LD
-}
-
-src_compile() {
- emake
- if use iso ; then
- ./makeiso.sh || die
- fi
-}
-
-src_test() { :; }
-
-src_install() {
- if use boot; then
- insinto "${BOOTDIR}"
- doins memtest memtest.bin
- fi
-
- insinto /usr/share/${PN}
- use iso && newins mt*.iso memtest.iso
- doins memtest memtest.bin
-
- exeinto /etc/grub.d
- newexe "${FILESDIR}"/39_${PN}-r1 39_${PN}
-
- dodoc README README.build-process FAQ changelog
-
- if use floppy ; then
- dobin "${FILESDIR}"/make-memtest86+-boot-floppy
- doman "${FILESDIR}"/make-memtest86+-boot-floppy.1
- fi
-}
-
-pkg_preinst() {
- use boot && mount-boot_pkg_preinst
-}
-
-pkg_postinst() {
- if use boot; then
- mount-boot_pkg_postinst
-
- elog "memtest86+ has been installed in ${BOOTDIR}/"
- elog "You may wish to update your bootloader configs by adding these lines:"
- elog " - For grub2 just run grub-mkconfig, a configuration file is installed"
- elog " as /etc/grub.d/39_${PN}"
- elog " - For grub legacy: (replace '?' with correct numbers for your boot partition)"
- elog " > title=${PN}"
- elog " > root (hd?,?)"
- elog " > kernel ${BOOTDIR}/memtest.bin"
- elog " - For lilo:"
- elog " > image = ${BOOTDIR}/memtest.bin"
- elog " > label = ${PN}"
- elog ""
- elog "Note: For older configs, you might have to change from 'memtest' to 'memtest.bin'."
- fi
-}
-
-pkg_prerm() {
- use boot && mount-boot_pkg_prerm
-}
-
-pkg_postrm() {
- use boot && mount-boot_pkg_postrm
-}
diff --git a/sys-apps/memtest86+/memtest86+-5.01-r5.ebuild b/sys-apps/memtest86+/memtest86+-5.01-r5.ebuild
deleted file mode 100644
index 35c3e1085fa3..000000000000
--- a/sys-apps/memtest86+/memtest86+-5.01-r5.ebuild
+++ /dev/null
@@ -1,115 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit mount-boot eutils toolchain-funcs
-
-DESCRIPTION="Memory tester based on memtest86"
-HOMEPAGE="http://www.memtest.org/"
-SRC_URI="http://www.memtest.org/download/${PV}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE="+boot floppy iso serial"
-
-BOOTDIR="/boot/memtest86plus"
-QA_PRESTRIPPED="${BOOTDIR}/memtest /usr/share/${PN}/memtest"
-QA_FLAGS_IGNORED="${BOOTDIR}/memtest /usr/share/${PN}/memtest"
-
-RDEPEND="floppy? ( sys-fs/mtools )"
-DEPEND="iso? ( app-cdr/cdrtools )"
-
-pkg_pretend() {
- use boot && mount-boot_pkg_pretend
-}
-
-src_prepare() {
- sed -i -e 's,0x10000,0x100000,' memtest.lds || die
- epatch "${FILESDIR}/${P}-gcc-473.patch" \
- "${FILESDIR}/${P}-hardcoded_cc.patch"
- epatch "${FILESDIR}"/${P}-no-scp.patch
- epatch "${FILESDIR}"/${P}-io-extern-inline.patch #548312
- epatch "${FILESDIR}"/${P}-reboot-def.patch #548312
- epatch "${FILESDIR}"/${P}-no-clean.patch #557890
- epatch "${FILESDIR}"/${P}-no-C-headers.patch #592638
- epatch "${FILESDIR}"/${P}-test-random-cflags.patch #590974
- epatch "${FILESDIR}"/${P}-objcopy.patch
-
- sed -i 's:genisoimage:mkisofs:' makeiso.sh || die
- if use serial ; then
- sed -i \
- -e '/^#define SERIAL_CONSOLE_DEFAULT/s:0:1:' \
- config.h \
- || die "sed failed"
- fi
- default
-}
-
-src_configure() {
- tc-ld-disable-gold #580212
- tc-export AS CC LD
-}
-
-src_compile() {
- emake OBJCOPY="$(tc-getOBJCOPY)"
- if use iso ; then
- ./makeiso.sh || die
- fi
-}
-
-src_test() { :; }
-
-src_install() {
- if use boot; then
- insinto "${BOOTDIR}"
- doins memtest memtest.bin
- fi
-
- insinto /usr/share/${PN}
- use iso && newins mt*.iso memtest.iso
- doins memtest memtest.bin
-
- exeinto /etc/grub.d
- newexe "${FILESDIR}"/39_${PN}-r1 39_${PN}
-
- dodoc README README.build-process FAQ changelog
-
- if use floppy ; then
- dobin "${FILESDIR}"/make-memtest86+-boot-floppy
- doman "${FILESDIR}"/make-memtest86+-boot-floppy.1
- fi
-}
-
-pkg_preinst() {
- use boot && mount-boot_pkg_preinst
-}
-
-pkg_postinst() {
- if use boot; then
- mount-boot_pkg_postinst
-
- elog "memtest86+ has been installed in ${BOOTDIR}/"
- elog "You may wish to update your bootloader configs by adding these lines:"
- elog " - For grub2 just run grub-mkconfig, a configuration file is installed"
- elog " as /etc/grub.d/39_${PN}"
- elog " - For grub legacy: (replace '?' with correct numbers for your boot partition)"
- elog " > title=${PN}"
- elog " > root (hd?,?)"
- elog " > kernel ${BOOTDIR}/memtest.bin"
- elog " - For lilo:"
- elog " > image = ${BOOTDIR}/memtest.bin"
- elog " > label = ${PN}"
- elog ""
- elog "Note: For older configs, you might have to change from 'memtest' to 'memtest.bin'."
- fi
-}
-
-pkg_prerm() {
- use boot && mount-boot_pkg_prerm
-}
-
-pkg_postrm() {
- use boot && mount-boot_pkg_postrm
-}
diff --git a/sys-apps/memtest86+/memtest86+-6.20-r1.ebuild b/sys-apps/memtest86+/memtest86+-6.20-r1.ebuild
new file mode 100644
index 000000000000..5ca6984446ce
--- /dev/null
+++ b/sys-apps/memtest86+/memtest86+-6.20-r1.ebuild
@@ -0,0 +1,100 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit mount-boot secureboot toolchain-funcs
+
+MY_PV=${PV/_/-}
+
+DESCRIPTION="Memory tester based on PCMemTest"
+HOMEPAGE="https://www.memtest.org/"
+SRC_URI="https://github.com/memtest86plus/memtest86plus/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="bios32 bios64 +boot uefi32 uefi64 iso32 iso64"
+
+ISODEPS="
+ dev-libs/libisoburn
+ sys-fs/dosfstools
+ sys-fs/mtools
+"
+BDEPEND="
+ iso32? ( ${ISODEPS} )
+ iso64? ( ${ISODEPS} )
+"
+
+S=${WORKDIR}/memtest86plus-${MY_PV}
+
+pkg_setup() {
+ if use uefi32 || use uefi64; then
+ secureboot_pkg_setup
+ fi
+}
+
+src_prepare() {
+ sed -i \
+ -e 's#/sbin/mkdosfs#mkfs.vfat#' \
+ -e 's/^AS = as/AS +=/' \
+ -e '/^CC/d' \
+ -e 's/objcopy/$(OBJCOPY)/' \
+ -e 's/shell size/shell $(SIZE)/' \
+ build{32,64}/Makefile || die
+ default
+}
+
+src_compile() {
+ tc-export OBJCOPY
+ export SIZE=$(tc-getPROG SIZE size)
+ pushd build32
+ use bios32 && emake memtest.bin
+ use uefi32 && emake memtest.efi
+ use iso32 && emake iso
+ popd
+
+ pushd build64
+ use bios64 && emake memtest.bin
+ use uefi64 && emake memtest.efi
+ use iso64 && emake iso
+ popd
+}
+
+install_memtest_images() {
+ use bios32 && newins build32/memtest.bin memtest32.bios
+ use bios64 && newins build64/memtest.bin memtest64.bios
+ use uefi32 && newins build32/memtest.efi memtest.efi32
+ use uefi64 && newins build64/memtest.efi memtest.efi64
+}
+
+src_install() {
+ default
+ if use boot; then
+ exeinto /etc/grub.d/
+ newexe "${FILESDIR}"/39_memtest86+-r2 39_memtest86+
+ insinto /boot/memtest86plus
+ install_memtest_images
+ fi
+
+ insinto /usr/share/${PN}
+ install_memtest_images
+ use iso32 && newins build32/memtest.iso memtest32.iso
+ use iso64 && newins build64/memtest.iso memtest64.iso
+
+ if use uefi32 || use uefi64; then
+ secureboot_auto_sign --in-place
+ fi
+}
+
+pkg_pretend() {
+ use boot && mount-boot_pkg_pretend
+}
+
+pkg_preinst() {
+ use boot && mount-boot_pkg_preinst
+}
+
+pkg_prerm() {
+ use boot && mount-boot_pkg_prerm
+}
diff --git a/sys-apps/memtest86+/memtest86+-7.00.ebuild b/sys-apps/memtest86+/memtest86+-7.00.ebuild
new file mode 100644
index 000000000000..166f6138e149
--- /dev/null
+++ b/sys-apps/memtest86+/memtest86+-7.00.ebuild
@@ -0,0 +1,100 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit mount-boot secureboot toolchain-funcs
+
+MY_PV=${PV/_/-}
+
+DESCRIPTION="Memory tester based on PCMemTest"
+HOMEPAGE="https://www.memtest.org/"
+SRC_URI="https://github.com/memtest86plus/memtest86plus/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="bios32 bios64 +boot uefi32 uefi64 iso32 iso64"
+
+ISODEPS="
+ dev-libs/libisoburn
+ sys-fs/dosfstools
+ sys-fs/mtools
+"
+BDEPEND="
+ iso32? ( ${ISODEPS} )
+ iso64? ( ${ISODEPS} )
+"
+
+S=${WORKDIR}/memtest86plus-${MY_PV}
+
+pkg_setup() {
+ if use uefi32 || use uefi64; then
+ secureboot_pkg_setup
+ fi
+}
+
+src_prepare() {
+ sed -i \
+ -e 's#/sbin/mkdosfs#mkfs.vfat#' \
+ -e 's/^AS = as/AS +=/' \
+ -e '/^CC/d' \
+ -e 's/= objcopy/?= $(OBJCOPY)/' \
+ -e 's/shell size/shell $(SIZE)/' \
+ build{32,64}/Makefile || die
+ default
+}
+
+src_compile() {
+ tc-export OBJCOPY
+ export SIZE=$(tc-getPROG SIZE size)
+ pushd build32
+ use bios32 && emake memtest.bin
+ use uefi32 && emake memtest.efi
+ use iso32 && emake iso
+ popd
+
+ pushd build64
+ use bios64 && emake memtest.bin
+ use uefi64 && emake memtest.efi
+ use iso64 && emake iso
+ popd
+}
+
+install_memtest_images() {
+ use bios32 && newins build32/memtest.bin memtest32.bios
+ use bios64 && newins build64/memtest.bin memtest64.bios
+ use uefi32 && newins build32/memtest.efi memtest.efi32
+ use uefi64 && newins build64/memtest.efi memtest.efi64
+}
+
+src_install() {
+ default
+ if use boot; then
+ exeinto /etc/grub.d/
+ newexe "${FILESDIR}"/39_memtest86+-r2 39_memtest86+
+ insinto /boot/memtest86plus
+ install_memtest_images
+ fi
+
+ insinto /usr/share/${PN}
+ install_memtest_images
+ use iso32 && newins build32/memtest.iso memtest32.iso
+ use iso64 && newins build64/memtest.iso memtest64.iso
+
+ if use uefi32 || use uefi64; then
+ secureboot_auto_sign --in-place
+ fi
+}
+
+pkg_pretend() {
+ use boot && mount-boot_pkg_pretend
+}
+
+pkg_preinst() {
+ use boot && mount-boot_pkg_preinst
+}
+
+pkg_prerm() {
+ use boot && mount-boot_pkg_prerm
+}
diff --git a/sys-apps/memtest86+/metadata.xml b/sys-apps/memtest86+/metadata.xml
index 1745d86466f6..f79f06ed9067 100644
--- a/sys-apps/memtest86+/metadata.xml
+++ b/sys-apps/memtest86+/metadata.xml
@@ -1,14 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
+<maintainer type="person">
+ <email>bkohler@gentoo.org</email>
+ <name>Ben Kohler</name>
</maintainer>
<use>
- <flag name="boot">Also install to /boot instead of just /usr/share/memtest86+/</flag>
- <flag name="floppy">Install a script to create floppy disks containing memtest86+ binaries.</flag>
- <flag name="iso">Compile an ISO image</flag>
- <flag name="serial">Compile with serial console support</flag>
+ <flag name="bios32">Compile a BIOS-bootable 32bit memtest image</flag>
+ <flag name="bios64">Compile a BIOS-bootable 64bit memtest image</flag>
+ <flag name="boot">Install to /boot in addition to /usr/share/memtest86+/</flag>
+ <flag name="uefi32">Compile a EFI32-bootable 32bit memtest image</flag>
+ <flag name="uefi64">Compile a UEFI-bootable 64bit memtest image</flag>
+ <flag name="iso32">Compile a 32bit ISO image</flag>
+ <flag name="iso64">Compile a 64bit ISO image</flag>
</use>
+<upstream>
+ <remote-id type="github">memtest86plus/memtest86plus</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/sys-apps/memtest86-bin/Manifest b/sys-apps/memtest86-bin/Manifest
new file mode 100644
index 000000000000..11fe0c3a54c0
--- /dev/null
+++ b/sys-apps/memtest86-bin/Manifest
@@ -0,0 +1 @@
+DIST memtest86-bin-10.7.zip 11924203 BLAKE2B 1729934abdb968d324677439136c6a9c7b9266c3bf0e95feb0e46b8143708bddc366465731f6e5b702faedad44e724fee30e30a289797e5d1c99a2b587e4b24b SHA512 ccd6c10471ddc66bfad057f0d9f391255c88d910a4607566b9523aeaae47c04975cc7b65bc33ff6809a8660c69ae42faf5cc8d527972c03847e93b1ca7c0300b
diff --git a/sys-apps/memtest86-bin/files/memtest86-bin-grub.d b/sys-apps/memtest86-bin/files/memtest86-bin-grub.d
new file mode 100644
index 000000000000..db1ddf855d0e
--- /dev/null
+++ b/sys-apps/memtest86-bin/files/memtest86-bin-grub.d
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+. /usr/share/grub/grub-mkconfig_lib
+
+memtest_efi=/boot/memtest86-bin.efi
+
+if [ -f "${memtest_efi}" ]; then
+ echo "Found MemTest86-EFI" >&2
+ device="$("${grub_probe}" --target=device "${memtest_efi}")"
+ path="$(make_system_path_relative_to_its_root "${memtest_efi}")"
+ cat <<EOF
+if [ "x\$grub_platform" = xefi ]; then
+ menuentry "MemTest86-EFI" {
+EOF
+ prepare_grub_to_access_device "${device}" | grub_add_tab
+ cat <<EOF
+ chainloader "${path}"
+ }
+fi
+EOF
+fi
diff --git a/sys-apps/memtest86-bin/memtest86-bin-10.7.ebuild b/sys-apps/memtest86-bin/memtest86-bin-10.7.ebuild
new file mode 100644
index 000000000000..02c964500e1e
--- /dev/null
+++ b/sys-apps/memtest86-bin/memtest86-bin-10.7.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit mount-boot secureboot
+
+DESCRIPTION="Stand alone memory testing software for x86 EFI hardware"
+HOMEPAGE="http://www.memtest86.com/"
+SRC_URI="https://www.memtest86.com/downloads/memtest86-usb.zip -> ${P}.zip"
+S="${WORKDIR}"
+
+LICENSE="PassMark-EULA"
+RESTRICT="mirror bindist"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+BDEPEND="
+ app-arch/unzip
+ sys-fs/fatcat
+"
+
+src_unpack() {
+ default
+ fatcat -O 1048576 -r /EFI/BOOT/BOOTX64.efi memtest86-usb.img > ${PN}.efi || die
+}
+
+src_install() {
+ insinto /boot
+ doins ${PN}.efi
+
+ exeinto /etc/grub.d/
+ newexe "${FILESDIR}"/${PN}-grub.d 39_memtest86-bin
+
+ dodoc MemTest86_User_Guide_UEFI.pdf
+
+ secureboot_auto_sign --in-place
+}
+
+pkg_postinst() {
+ mount-boot_pkg_postinst
+
+ if [ ! -e /sys/firmware/efi ]; then
+ ewarn "WARNING: You appear to be booted in BIOS mode but ${PN} is an EFI-only tool."
+ fi
+}
diff --git a/sys-apps/memtest86-bin/metadata.xml b/sys-apps/memtest86-bin/metadata.xml
new file mode 100644
index 000000000000..aa20bff17b1d
--- /dev/null
+++ b/sys-apps/memtest86-bin/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>bkohler@gentoo.org</email>
+ <name>Ben Kohler</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-apps/memtest86/files/39_memtest86-r1 b/sys-apps/memtest86/files/39_memtest86-r1
index 596a676cceb2..dc630d594626 100644
--- a/sys-apps/memtest86/files/39_memtest86-r1
+++ b/sys-apps/memtest86/files/39_memtest86-r1
@@ -27,7 +27,7 @@ if [ -f "${memtest}" ]; then
${submenu_indentation}menuentry 'Memtest86' {
EOF
- if [ -n "{submenu_indentation}" ]; then
+ if [ -n "${submenu_indentation}" ]; then
prepare_grub_to_access_device "${device}" | grub_add_tab | grub_add_tab
else
prepare_grub_to_access_device "${device}" | grub_add_tab
diff --git a/sys-apps/memtest86/files/memtest86-4.3.7-binutils-2.41-textrels.patch b/sys-apps/memtest86/files/memtest86-4.3.7-binutils-2.41-textrels.patch
new file mode 100644
index 000000000000..d95b96402be7
--- /dev/null
+++ b/sys-apps/memtest86/files/memtest86-4.3.7-binutils-2.41-textrels.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/912343
+--- a/Makefile
++++ b/Makefile
+@@ -21,15 +21,15 @@ all: memtest.bin memtest
+ # symbols and then link it dynamically so I have full
+ # relocation information
+ memtest_shared: $(OBJS) memtest_shared.lds Makefile
+- $(LD) --warn-constructors --warn-common -static -T memtest_shared.lds -m elf_i386 \
++ $(LD) --warn-constructors --warn-common -static -z notext --no-warn-rwx-segments -T memtest_shared.lds -m elf_i386 \
+ -o $@ $(OBJS) && \
+- $(LD) -shared -Bsymbolic -T memtest_shared.lds -o $@ $(OBJS)
++ $(LD) -shared -Bsymbolic -z notext --no-warn-rwx-segments -T memtest_shared.lds -o $@ $(OBJS)
+
+ memtest_shared.bin: memtest_shared
+ objcopy -O binary $< memtest_shared.bin
+
+ memtest: memtest_shared.bin memtest.lds
+- $(LD) -s -T memtest.lds -b binary memtest_shared.bin -o $@
++ $(LD) -s -z notext --no-warn-rwx-segments -T memtest.lds -b binary memtest_shared.bin -o $@
+
+ head.s: head.S config.h defs.h test.h
+ $(CC) -E -traditional $< -o $@
+@@ -41,7 +41,7 @@ setup.s: setup.S config.h defs.h
+ $(CC) -E -traditional $< -o $@
+
+ memtest.bin: memtest_shared.bin bootsect.o setup.o memtest.bin.lds
+- $(LD) -T memtest.bin.lds bootsect.o setup.o -b binary \
++ $(LD) -z notext --no-warn-rwx-segments -T memtest.bin.lds bootsect.o setup.o -b binary \
+ memtest_shared.bin -o memtest.bin
+
+ reloc.o: reloc.c
diff --git a/sys-apps/memtest86/memtest86-4.3.7-r2.ebuild b/sys-apps/memtest86/memtest86-4.3.7-r2.ebuild
deleted file mode 100644
index bf0d326968cd..000000000000
--- a/sys-apps/memtest86/memtest86-4.3.7-r2.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit mount-boot eutils toolchain-funcs
-
-DESCRIPTION="A stand alone memory test for x86 computers"
-HOMEPAGE="https://www.memtest86.com/"
-SRC_URI="https://www.memtest86.com/downloads/${P}-src.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE="serial"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.3.3-build-nopie.patch #66630 + #206726
- "${FILESDIR}"/${PN}-4.3.7-io-extern-inline.patch #548312 #568292
- "${FILESDIR}"/${PN}-4.3.7-reboot-def.patch #548312 #568292
- "${FILESDIR}"/${PN}-4.3.7-no-clean.patch #557890
-)
-
-S="${WORKDIR}/src"
-
-BOOTDIR="/boot/memtest86"
-QA_PRESTRIPPED="${BOOTDIR}/memtest"
-QA_FLAGS_IGNORED="${BOOTDIR}/memtest"
-
-src_prepare() {
- default
-
- sed -i -e 's,0x10000,0x100000,' memtest.lds || die
-
- if use serial ; then
- sed -i \
- -e '/^#define SERIAL_CONSOLE_DEFAULT/s:0:1:' \
- config.h \
- || die "sed failed"
- fi
-}
-
-src_configure() {
- tc-export AS CC LD
-}
-
-src_test() { :; }
-
-src_install() {
- insinto "${BOOTDIR}"
- doins memtest memtest.bin
-
- exeinto /etc/grub.d
- newexe "${FILESDIR}"/39_${PN}-r1 39_${PN}
-
- dodoc README README.build-process README.background
-}
-
-pkg_postinst() {
- mount-boot_pkg_postinst
-
- elog "${PN} has been installed in ${BOOTDIR}/"
- elog "You may wish to update your bootloader configs by adding these lines:"
- elog " - For grub2 just run grub-mkconfig, a configuration file is installed"
- elog " as /etc/grub.d/39_${PN}"
- elog " - For grub legacy: (replace '?' with correct numbers for your boot partition)"
- elog " > title=${PN}"
- elog " > root (hd?,?)"
- elog " > kernel ${BOOTDIR}/memtest.bin"
- elog " - For lilo:"
- elog " > image = ${BOOTDIR}/memtest.bin"
- elog " > label = ${PN}"
- elog ""
- elog "Note: For older configs, you might have to change from 'memtest' to 'memtest.bin'."
-}
diff --git a/sys-apps/memtest86/memtest86-4.3.7-r3.ebuild b/sys-apps/memtest86/memtest86-4.3.7-r3.ebuild
new file mode 100644
index 000000000000..58740a968ccc
--- /dev/null
+++ b/sys-apps/memtest86/memtest86-4.3.7-r3.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit mount-boot toolchain-funcs
+
+DESCRIPTION="A stand alone memory test for x86 computers"
+HOMEPAGE="https://www.memtest86.com/"
+SRC_URI="https://www.memtest86.com/downloads/${P}-src.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE="serial"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.3.3-build-nopie.patch #66630 + #206726
+ "${FILESDIR}"/${PN}-4.3.7-io-extern-inline.patch #548312 #568292
+ "${FILESDIR}"/${PN}-4.3.7-reboot-def.patch #548312 #568292
+ "${FILESDIR}"/${PN}-4.3.7-no-clean.patch #557890
+ "${FILESDIR}"/${PN}-4.3.7-binutils-2.41-textrels.patch #912343
+)
+
+S="${WORKDIR}/src"
+
+BOOTDIR="/boot/memtest86"
+QA_PRESTRIPPED="${BOOTDIR}/memtest"
+QA_FLAGS_IGNORED="${BOOTDIR}/memtest"
+
+src_prepare() {
+ default
+
+ sed -i -e 's,0x10000,0x100000,' memtest.lds || die
+
+ if use serial ; then
+ sed -i \
+ -e '/^#define SERIAL_CONSOLE_DEFAULT/s:0:1:' \
+ config.h \
+ || die "sed failed"
+ fi
+}
+
+src_configure() {
+ tc-export AS CC LD
+}
+
+src_test() { :; }
+
+src_install() {
+ insinto "${BOOTDIR}"
+ doins memtest memtest.bin
+
+ exeinto /etc/grub.d
+ newexe "${FILESDIR}"/39_${PN}-r1 39_${PN}
+
+ dodoc README README.build-process README.background
+}
+
+pkg_postinst() {
+ mount-boot_pkg_postinst
+
+ elog "${PN} has been installed in ${BOOTDIR}/"
+ elog "You may wish to update your bootloader configs by adding these lines:"
+ elog " - For grub2 just run grub-mkconfig, a configuration file is installed"
+ elog " as /etc/grub.d/39_${PN}"
+ elog " - For grub legacy: (replace '?' with correct numbers for your boot partition)"
+ elog " > title=${PN}"
+ elog " > root (hd?,?)"
+ elog " > kernel ${BOOTDIR}/memtest.bin"
+ elog " - For lilo:"
+ elog " > image = ${BOOTDIR}/memtest.bin"
+ elog " > label = ${PN}"
+ elog ""
+ elog "Note: For older configs, you might have to change from 'memtest' to 'memtest.bin'."
+}
diff --git a/sys-apps/memtest86/memtest86-4.3.7-r4.ebuild b/sys-apps/memtest86/memtest86-4.3.7-r4.ebuild
new file mode 100644
index 000000000000..d7c1a74ff476
--- /dev/null
+++ b/sys-apps/memtest86/memtest86-4.3.7-r4.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit mount-boot toolchain-funcs
+
+DESCRIPTION="Stand alone memory test for x86 computers"
+HOMEPAGE="https://www.memtest86.com/"
+SRC_URI="https://www.memtest86.com/downloads/${P}-src.tar.gz"
+S="${WORKDIR}/src"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE="serial"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.3.3-build-nopie.patch #66630 + #206726
+ "${FILESDIR}"/${PN}-4.3.7-io-extern-inline.patch #548312 #568292
+ "${FILESDIR}"/${PN}-4.3.7-reboot-def.patch #548312 #568292
+ "${FILESDIR}"/${PN}-4.3.7-no-clean.patch #557890
+ "${FILESDIR}"/${PN}-4.3.7-binutils-2.41-textrels.patch #912343
+)
+
+BOOTDIR="/boot/memtest86"
+QA_PRESTRIPPED="${BOOTDIR}/memtest"
+QA_FLAGS_IGNORED="${BOOTDIR}/memtest"
+
+src_prepare() {
+ default
+
+ sed -i -e 's,0x10000,0x100000,' memtest.lds || die
+ sed -i -e "s|objcopy|$(tc-getOBJCOPY)|" Makefile || die
+
+ if use serial ; then
+ sed -i \
+ -e '/^#define SERIAL_CONSOLE_DEFAULT/s:0:1:' \
+ config.h \
+ || die "sed failed"
+ fi
+}
+
+src_configure() {
+ tc-export AS CC LD
+}
+
+src_test() { :; }
+
+src_install() {
+ insinto "${BOOTDIR}"
+ doins memtest memtest.bin
+
+ exeinto /etc/grub.d
+ newexe "${FILESDIR}"/39_${PN}-r1 39_${PN}
+
+ dodoc README README.build-process README.background
+}
+
+pkg_postinst() {
+ mount-boot_pkg_postinst
+
+ elog "${PN} has been installed in ${BOOTDIR}/"
+ elog "You may wish to update your bootloader configs by adding these lines:"
+ elog " - For grub2 just run grub-mkconfig, a configuration file is installed"
+ elog " as /etc/grub.d/39_${PN}"
+ elog " - For grub legacy: (replace '?' with correct numbers for your boot partition)"
+ elog " > title=${PN}"
+ elog " > root (hd?,?)"
+ elog " > kernel ${BOOTDIR}/memtest.bin"
+ elog " - For lilo:"
+ elog " > image = ${BOOTDIR}/memtest.bin"
+ elog " > label = ${PN}"
+ elog ""
+ elog "Note: For older configs, you might have to change from 'memtest' to 'memtest.bin'."
+}
diff --git a/sys-apps/memtest86/metadata.xml b/sys-apps/memtest86/metadata.xml
index 0c07a560973d..94e9668ab203 100644
--- a/sys-apps/memtest86/metadata.xml
+++ b/sys-apps/memtest86/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/memtester/Manifest b/sys-apps/memtester/Manifest
index d958b9b240ba..05abf47f49f3 100644
--- a/sys-apps/memtester/Manifest
+++ b/sys-apps/memtester/Manifest
@@ -1,3 +1,2 @@
-DIST memtester-4.3.0.tar.gz 22113 BLAKE2B 564cb874ea8263e23049d99417bb75f4d9f6fe1bbc022b2f2043735548c97f0060e877079087e524738bda3f9669d0ec171fb3aa9958a2904d848ace87d1cd91 SHA512 045bcc73855706ff03e8ca65297a0d6e5b5ac02f99dae0f17cef1310b403efcb78d9a7295eca6d2de703b0a7b2f71b58a37f5a42040f01fc77a321a8d2205888
-DIST memtester-4.4.0.tar.gz 22801 BLAKE2B 36d97cce30f5f149dc666dd4a743df39ad6993ec82489f4e890bacf1d05de6405da26b2fcd08a0f0416d527ddcf586c77b30b87b19ce80885e80a65ed8b9fb76 SHA512 65b9bc7e81b020cae6cbadc8f47c0bb2837e62bdea24fda72696b22a6b3aad3752d96b00defface4b7397cef58ff6133a9f5794df0a483ec2a639a428177bf75
-DIST memtester-4.5.0.tar.gz 23286 BLAKE2B 841b68026a9b4eae69490c469dbaf062500b642d9ab11e3b1052e7c850e49af3665d0fd01c49670cf297ea5e03a4916ea01bb0219910d487de87568060115e2b SHA512 17df913509df33851fbc58751df993a77bff765a9799ac2b7976518b0a659a2322c9a93a7438e9daa314035e0c08cfcee5cbc97c6be1631917c47e221f15d363
+DIST memtester-4.5.1.tar.gz 23655 BLAKE2B bb7214a41f7cfa39dff6ab4f1efcd1788f5e6bd4cc1defba8c77ae030321703c1da7b6c1c6f1a67ea59e2cb9fc960772b710050b7c6d14b0799db4d9d99e9c31 SHA512 cf5744f11a931338a94158aee3047ad2dab18b0cb27b8998184a98f33aaebc678beec74841a2bcbbd7154cc2e46a20f746d9cae01a9274714bcedb93f29f8c80
+DIST memtester-4.6.0.tar.gz 24229 BLAKE2B 521e8f189cd4105af3824d780a1bb91cc59bf33863ca92ea8d01c5cda3633beb8bc6a32dee8321c201164789e0d0c95eb68f5017739432a14c6165e44931f9d0 SHA512 d60dd46a5d4ecb2ab35a5acdb99b714584cdf601b81454e3f7fa9dd224555b7a48cef666538b43c5dd7b2870bb74284e0cae6fb2eed19cf706818c7a955ab161
diff --git a/sys-apps/memtester/files/memtester-4.3.0-fix-gcc10-fno-common.patch b/sys-apps/memtester/files/memtester-4.3.0-fix-gcc10-fno-common.patch
deleted file mode 100644
index 8bb58e5771c0..000000000000
--- a/sys-apps/memtester/files/memtester-4.3.0-fix-gcc10-fno-common.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- a/tests.c
-+++ b/tests.c
-@@ -27,6 +27,9 @@
- #define PROGRESSOFTEN 2500
- #define ONE 0x00000001L
-
-+union mword8_type mword8;
-+union mword16_type mword16;
-+
- /* Function definitions. */
-
- int compare_regions(ulv *bufa, ulv *bufb, size_t count) {
---- a/types.h
-+++ b/types.h
-@@ -25,12 +25,12 @@
- int (*fp)();
- };
-
--union {
-+union mword8_type {
- unsigned char bytes[UL_LEN/8];
- ul val;
--} mword8;
-+};
-
--union {
-+union mword16_type {
- unsigned short u16s[UL_LEN/16];
- ul val;
--} mword16;
-+};
diff --git a/sys-apps/memtester/memtester-4.3.0.ebuild b/sys-apps/memtester/memtester-4.3.0.ebuild
deleted file mode 100644
index cccff64b5d43..000000000000
--- a/sys-apps/memtester/memtester-4.3.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="userspace utility for testing the memory subsystem for faults"
-HOMEPAGE="http://pyropus.ca/software/memtester/"
-SRC_URI="
- http://pyropus.ca/software/memtester/${P}.tar.gz
- http://pyropus.ca/software/memtester/old-versions/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ia64 ~mips ppc ppc64 sparc x86"
-
-PATCHES=( "${FILESDIR}"/${PN}-4.3.0-fix-gcc10-fno-common.patch )
-
-src_configure() {
- echo "$(tc-getCC) ${CFLAGS} ${CPPFLAGS} -DPOSIX -c" > conf-cc || die
- echo "$(tc-getCC) ${CFLAGS} ${LDFLAGS}" > conf-ld || die
-}
-
-src_install() {
- dosbin memtester
- doman memtester.8
- dodoc BUGS CHANGELOG README README.tests
-}
diff --git a/sys-apps/memtester/memtester-4.4.0.ebuild b/sys-apps/memtester/memtester-4.4.0.ebuild
deleted file mode 100644
index 4be0e82a6fe2..000000000000
--- a/sys-apps/memtester/memtester-4.4.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="userspace utility for testing the memory subsystem for faults"
-HOMEPAGE="http://pyropus.ca/software/memtester/"
-SRC_URI="
- http://pyropus.ca/software/memtester/${P}.tar.gz
- http://pyropus.ca/software/memtester/old-versions/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-
-src_configure() {
- echo "$(tc-getCC) ${CFLAGS} ${CPPFLAGS} -DPOSIX -c" > conf-cc || die
- echo "$(tc-getCC) ${CFLAGS} ${LDFLAGS}" > conf-ld || die
-}
-
-src_install() {
- dosbin memtester
- doman memtester.8
- dodoc BUGS CHANGELOG README README.tests
-}
diff --git a/sys-apps/memtester/memtester-4.5.0.ebuild b/sys-apps/memtester/memtester-4.5.0.ebuild
deleted file mode 100644
index 4be0e82a6fe2..000000000000
--- a/sys-apps/memtester/memtester-4.5.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="userspace utility for testing the memory subsystem for faults"
-HOMEPAGE="http://pyropus.ca/software/memtester/"
-SRC_URI="
- http://pyropus.ca/software/memtester/${P}.tar.gz
- http://pyropus.ca/software/memtester/old-versions/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-
-src_configure() {
- echo "$(tc-getCC) ${CFLAGS} ${CPPFLAGS} -DPOSIX -c" > conf-cc || die
- echo "$(tc-getCC) ${CFLAGS} ${LDFLAGS}" > conf-ld || die
-}
-
-src_install() {
- dosbin memtester
- doman memtester.8
- dodoc BUGS CHANGELOG README README.tests
-}
diff --git a/sys-apps/memtester/memtester-4.5.1.ebuild b/sys-apps/memtester/memtester-4.5.1.ebuild
new file mode 100644
index 000000000000..c03aad4deb95
--- /dev/null
+++ b/sys-apps/memtester/memtester-4.5.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Userspace utility for testing the memory subsystem for faults"
+HOMEPAGE="http://pyropus.ca/software/memtester/"
+SRC_URI="
+ https://pyropus.ca./software/memtester/${P}.tar.gz
+ https://pyropus.ca./software/memtester/old-versions/${P}.tar.gz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
+
+src_configure() {
+ echo "$(tc-getCC) ${CFLAGS} ${CPPFLAGS} -DPOSIX -c" > conf-cc || die
+ echo "$(tc-getCC) ${CFLAGS} ${LDFLAGS}" > conf-ld || die
+}
+
+src_install() {
+ dosbin memtester
+ doman memtester.8
+ dodoc BUGS CHANGELOG README README.tests
+}
diff --git a/sys-apps/memtester/memtester-4.6.0.ebuild b/sys-apps/memtester/memtester-4.6.0.ebuild
new file mode 100644
index 000000000000..468136c21ef9
--- /dev/null
+++ b/sys-apps/memtester/memtester-4.6.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Userspace utility for testing the memory subsystem for faults"
+HOMEPAGE="http://pyropus.ca/software/memtester/"
+SRC_URI="
+ https://pyropus.ca./software/memtester/${P}.tar.gz
+ https://pyropus.ca./software/memtester/old-versions/${P}.tar.gz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
+
+src_configure() {
+ echo "$(tc-getCC) ${CFLAGS} ${CPPFLAGS} -DPOSIX -c" > conf-cc || die
+ echo "$(tc-getCC) ${CFLAGS} ${LDFLAGS}" > conf-ld || die
+}
+
+src_install() {
+ dosbin memtester
+ doman memtester.8
+ dodoc BUGS CHANGELOG README README.tests
+}
diff --git a/sys-apps/memtester/metadata.xml b/sys-apps/memtester/metadata.xml
index 56c124413057..340a90ed1f44 100644
--- a/sys-apps/memtester/metadata.xml
+++ b/sys-apps/memtester/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <changelog>https://pyropus.ca./software/memtester/CHANGELOG</changelog>
+ <remote-id type="cpe">cpe:/a:pryopus:memtester</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/merge-usr/Manifest b/sys-apps/merge-usr/Manifest
new file mode 100644
index 000000000000..74189a4f7b19
--- /dev/null
+++ b/sys-apps/merge-usr/Manifest
@@ -0,0 +1 @@
+DIST merge-usr-6.tar.gz 9501 BLAKE2B 3cdb769c1f75cb35a941c6ba6fe1d469e38bb0e96ce7aeac6fa6b8cfead4b630a13eac7b03144bb00f35a722a5264b39a504826e442d3c44b12d505c911d14a2 SHA512 57cbf2fadac587747b10f88299224e2c40a7a9375c0fc502ad966f42cf87f034b0b28d195001b275869f90dd1eecf210c47ffce9cd0163cc01b67b7860a680e4
diff --git a/sys-apps/merge-usr/merge-usr-6.ebuild b/sys-apps/merge-usr/merge-usr-6.ebuild
new file mode 100644
index 000000000000..a519e3cbd577
--- /dev/null
+++ b/sys-apps/merge-usr/merge-usr-6.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit python-single-r1
+
+DESCRIPTION="Script to migrate from split-usr to merged-usr"
+HOMEPAGE="https://github.com/floppym/merge-usr"
+SRC_URI="https://github.com/floppym/merge-usr/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+BDEPEND="${PYTHON_DEPS}"
+RDEPEND="${PYTHON_DEPS}"
+
+src_install() {
+ python_doscript merge-usr
+}
diff --git a/sys-apps/merge-usr/metadata.xml b/sys-apps/merge-usr/metadata.xml
new file mode 100644
index 000000000000..383f6308c8ac
--- /dev/null
+++ b/sys-apps/merge-usr/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>floppym@gentoo.org</email>
+ <name>Mike Gilbert</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="github">floppym/merge-usr</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/metadata.xml b/sys-apps/metadata.xml
index e780a8953053..eb832d6d5dff 100644
--- a/sys-apps/metadata.xml
+++ b/sys-apps/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The sys-apps category contains various core system applications, and
@@ -42,4 +42,3 @@
programy, których jeszcze nie przeniesiono do kategorii sys-.
</longdescription>
</catmetadata>
-
diff --git a/sys-apps/miller/Manifest b/sys-apps/miller/Manifest
index 254099599401..fc55dd8aca9d 100644
--- a/sys-apps/miller/Manifest
+++ b/sys-apps/miller/Manifest
@@ -1 +1 @@
-DIST miller-5.3.0.tar.gz 4940072 BLAKE2B 2e34ae010d409877040a60b08dd615f32e6945ca3bf97c078c89b9d2811067fa4bca2403f8ad239f8245e050acb10305d351b1db4177541a4fa9ed9a4bc1396c SHA512 4c557d97eb1cda2e52093fa097677602491895dea3093776a03af56114022b8c0917df9fbf26071d4d1a3c1360f520c82e33b32635c7b4207fa62869ab564712
+DIST miller-5.10.2.tar.gz 6192382 BLAKE2B 73daf0ca8a5417890e060b04103c4542f1122c13a9a13271dc53e94c4fdf0610dcad5ab04729326fd4ab72b47673db9fdf5aacc5a4ca5330c3220046e4d8a38b SHA512 be40611b055d94f3b0ef75b35dfd242dd4942dce3292bb01b48a6a12f9e4c09fc43bb9d0650902c7aa13328d9a2bbcea4da2964af58d07f39ae63b34712a45f5
diff --git a/sys-apps/miller/metadata.xml b/sys-apps/miller/metadata.xml
index 8181d42fee83..f39b61f0a2b2 100644
--- a/sys-apps/miller/metadata.xml
+++ b/sys-apps/miller/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<upstream>
diff --git a/sys-apps/miller/miller-5.10.2.ebuild b/sys-apps/miller/miller-5.10.2.ebuild
new file mode 100644
index 000000000000..eb61094b4a27
--- /dev/null
+++ b/sys-apps/miller/miller-5.10.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="A tool like sed, awk, cut, join, and sort for name-indexed data (CSV, JSON, ..)"
+HOMEPAGE="https://johnkerl.org/miller/doc/index.html"
+SRC_URI="https://github.com/johnkerl/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+DEPEND="app-alternatives/lex"
+
+src_prepare() {
+ default
+
+ # Respect flags
+ find -type f -name "Makefile.am" -exec sed -i -r -e '/.*FLAGS[^=]*=/ s:(-g|-pg|-O[0-9]) ::g' -- {} \; || die
+
+ # Disable docs rebuilding as they're shipped prebuilt
+ sed -e '/SUBDIRS[^=]*=/ s:doc::g' -i -- Makefile.am || die
+
+ # Disable building tests automagically
+ if ! use test; then
+ sed -e '/SUBDIRS[^=]*=/ s:[^ ]*_test::g' -i -- c/Makefile.am || die
+ fi
+
+ eautoreconf
+}
+
+src_test() {
+ emake -C c/reg_test
+ emake -C c/unit_test
+}
+
+src_install() {
+ local HTML_DOCS=( $(usex doc docs '') )
+
+ default
+
+ doman docs/mlr.1
+}
diff --git a/sys-apps/miller/miller-5.3.0.ebuild b/sys-apps/miller/miller-5.3.0.ebuild
deleted file mode 100644
index 1412928d0805..000000000000
--- a/sys-apps/miller/miller-5.3.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="A tool like sed, awk, cut, join, and sort for name-indexed data (CSV, JSON, ..)"
-HOMEPAGE="https://johnkerl.org/miller/doc/index.html"
-SRC_URI="https://github.com/johnkerl/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 arm x86"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-DEPEND="sys-devel/flex"
-
-src_prepare() {
- default
-
- # respect flags
- find -type f -name "Makefile.am" -exec sed -i -r -e '/.*FLAGS[^=]*=/ s:(-g|-pg|-O[0-9]) ::g' -- {} \; || die
-
- # disable docs rebuilding as they're shipped prebuilt
- sed -e '/SUBDIRS[^=]*=/ s:doc::g' -i -- Makefile.am || die
-
- # disable building tests automagically
- if ! use test; then
- sed -e '/SUBDIRS[^=]*=/ s:[^ ]*_test::g' -i -- c/Makefile.am || die
- fi
-
- eautoreconf
-}
-
-src_test() {
- emake -C c/reg_test
- emake -C c/unit_test
-}
-
-src_install() {
- local HTML_DOCS=( $(usev doc) )
-
- default
-
- doman 'doc/mlr.1'
-}
diff --git a/sys-apps/minijail/Manifest b/sys-apps/minijail/Manifest
index b48d120cca46..068c3a1c0570 100644
--- a/sys-apps/minijail/Manifest
+++ b/sys-apps/minijail/Manifest
@@ -1,2 +1,2 @@
-DIST minijail-12.tar.gz 157030 BLAKE2B 55a1bb2aeb31290c211da8b8322672abadab7a2729b0afd6eafce9854a51320a2515bedc54864debc7ede6e437607dad8532ae76c14828d6c4f4265fec404dbe SHA512 feb829fc113f0041b9ab25e845560af47408f3d5f0704cdf756d0b8162ae7aae331c350908c3b17a4a5593ffa7326044f222a35e6794471cd5ed60173b2befa2
-DIST minijail-9.tar.gz 118700 BLAKE2B 7d2959d5dd71bd9d8d8a0b7c278dab66771740f73acec20f19502da33990ca858796b4734676ffedc404cef72eee8c419c669ba7092ac00cbafa2e410564aba2 SHA512 6d05fbe8615f410e8314045d11f7a3638f563f3311f7d52b5a0c47cad8692d11b0a7db4fbb45141b56453a9beb0de7683d58e5298f0a27029aa017539bb48717
+DIST minijail-17.tar.gz 212425 BLAKE2B 411a0e2f1af21dd689fa669f9658e78c3c3c6439fdbea01b41b1d0cb3cbc1dc017634177350a3d5392783201f80874ec2a1604ed2577dbf5d7dbdf584a087267 SHA512 4b9aa29a78f7525ffeedfb927f6b567044ff7c9d32ef0e6771ed2b5c2d47c7a14ccbe000efc988ce6bb4173c5a9ae734b222aac1a00fb0e60777d7dccc149acf
+DIST minijail-18.tar.gz 223537 BLAKE2B 894cca4bd31b12e74a309a99d98eefe24f57e4dae186e79b5800b9857ef6b87c2094ead9a1788d00557d68b0d174bdf1e22f247ffb4fbb2d44a952a8df2c953d SHA512 685f744b4783600b4c91ec678ae87dd9ae0138638e1e754520f406c203f4d92f6b510b1bcf1a921b9e93965026c461d6fe8e5efb5f90393a54ca27db7c8033e5
diff --git a/sys-apps/minijail/files/minijail-17-no-werror.patch b/sys-apps/minijail/files/minijail-17-no-werror.patch
new file mode 100644
index 000000000000..01d655f2bd55
--- /dev/null
+++ b/sys-apps/minijail/files/minijail-17-no-werror.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/770940
+https://bugs.gentoo.org/732014
+--- a/common.mk
++++ b/common.mk
+@@ -319,7 +319,7 @@ endif
+ # The same goes for CFLAGS.
+ COMMON_CFLAGS-gcc := -fvisibility=internal -ggdb3 -Wa,--noexecstack
+ COMMON_CFLAGS-clang := -fvisibility=hidden -ggdb
+-COMMON_CFLAGS := -Wall -Wunused -Wno-unused-parameter -Werror -Wformat=2 \
++COMMON_CFLAGS := -Wall -Wunused -Wno-unused-parameter -Wformat=2 \
+ -fno-strict-aliasing $(SSP_CFLAGS) -O1
+ CXXFLAGS += $(COMMON_CFLAGS) $(COMMON_CFLAGS-$(CXXDRIVER)) -std=gnu++14
+ CFLAGS += $(COMMON_CFLAGS) $(COMMON_CFLAGS-$(CDRIVER)) -std=gnu11
diff --git a/sys-apps/minijail/files/minijail-18-makefile.patch b/sys-apps/minijail/files/minijail-18-makefile.patch
new file mode 100644
index 000000000000..c1a2509dff5a
--- /dev/null
+++ b/sys-apps/minijail/files/minijail-18-makefile.patch
@@ -0,0 +1,41 @@
+--- a/Makefile
++++ b/Makefile
+@@ -72,9 +72,9 @@ GTEST_CXXFLAGS := -std=gnu++14
+ GTEST_LIBS := gtest.a
+ UNITTEST_DEPS += $(GTEST_LIBS)
+ else
+-GTEST_CXXFLAGS := $(shell gtest-config --cxxflags 2>/dev/null || \
++GTEST_CXXFLAGS ?= $(shell gtest-config --cxxflags 2>/dev/null || \
+ echo "-pthread")
+-GTEST_LIBS := $(shell gtest-config --libs 2>/dev/null || \
++GTEST_LIBS ?= $(shell gtest-config --libs 2>/dev/null || \
+ echo "-lgtest -pthread -lpthread")
+ endif
+ UNITTEST_LIBS += $(GTEST_LIBS)
+@@ -104,6 +104,7 @@ clean: CLEAN(minijail0)
+
+
+ CC_LIBRARY(libminijail.so): LDLIBS += -lcap
++CC_LIBRARY(libminijail.so): LDFLAGS += -Wl,-soname,libminijail.so
+ CC_LIBRARY(libminijail.so): $(CORE_OBJECT_FILES)
+ clean: CLEAN(libminijail.so)
+
+@@ -125,6 +126,7 @@ TEST(CXX_BINARY(libminijail_unittest)): CC_LIBRARY(libminijailpreload.so)
+
+
+ CC_LIBRARY(libminijailpreload.so): LDLIBS += -lcap -ldl
++CC_LIBRARY(libminijailpreload.so): LDFLAGS += -Wl,-soname,libminijail.so
+ CC_LIBRARY(libminijailpreload.so): libminijailpreload.o $(CORE_OBJECT_FILES)
+ clean: CLEAN(libminijailpreload.so)
+
+--- a/common.mk
++++ b/common.mk
+@@ -323,7 +323,7 @@ COMMON_CFLAGS := -Wall -Wunused -Wno-unused-parameter -Werror -Wformat=2 \
+ -fno-strict-aliasing $(SSP_CFLAGS) -O1
+ CXXFLAGS += $(COMMON_CFLAGS) $(COMMON_CFLAGS-$(CXXDRIVER)) -std=gnu++14
+ CFLAGS += $(COMMON_CFLAGS) $(COMMON_CFLAGS-$(CDRIVER)) -std=gnu11
+-CPPFLAGS += -D_FORTIFY_SOURCE=2
++CPPFLAGS +=
+
+ # Enable large file support.
+ CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
diff --git a/sys-apps/minijail/files/minijail-9-makefile.patch b/sys-apps/minijail/files/minijail-9-makefile.patch
deleted file mode 100644
index 6ec44a8079ad..000000000000
--- a/sys-apps/minijail/files/minijail-9-makefile.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 54ee978..a50ee9a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -46,8 +46,8 @@ ifeq ($(USE_SYSTEM_GTEST),no)
- GTEST_CXXFLAGS := -std=gnu++14
- GTEST_LIBS := gtest.a
- else
--GTEST_CXXFLAGS := $(shell gtest-config --cxxflags)
--GTEST_LIBS := $(shell gtest-config --libs)
-+GTEST_CXXFLAGS ?= $(shell gtest-config --cxxflags)
-+GTEST_LIBS ?= $(shell gtest-config --libs)
- endif
-
- CORE_OBJECT_FILES := libminijail.o syscall_filter.o signal_handler.o \
-@@ -73,6 +73,7 @@ clean: CLEAN(minijail0)
-
-
- CC_LIBRARY(libminijail.so): LDLIBS += -lcap
-+CC_LIBRARY(libminijail.so): LDFLAGS += -Wl,-soname,libminijail.so
- CC_LIBRARY(libminijail.so): $(CORE_OBJECT_FILES)
- clean: CLEAN(libminijail.so)
-
-@@ -91,6 +92,7 @@ TEST(CXX_BINARY(libminijail_unittest)): CC_LIBRARY(libminijailpreload.so)
-
-
- CC_LIBRARY(libminijailpreload.so): LDLIBS += -lcap -ldl
-+CC_LIBRARY(libminijailpreload.so): LDFLAGS += -Wl,-soname,libminijail.so
- CC_LIBRARY(libminijailpreload.so): libminijailpreload.o $(CORE_OBJECT_FILES)
- clean: CLEAN(libminijailpreload.so)
-
-diff --git a/common.mk b/common.mk
-index 77879d8..1cd815b 100644
---- a/common.mk
-+++ b/common.mk
-@@ -323,7 +323,7 @@ COMMON_CFLAGS := -Wall -Wunused -Wno-unused-parameter -Werror -Wformat=2 \
- -fno-strict-aliasing $(SSP_CFLAGS) -O1
- CXXFLAGS += $(COMMON_CFLAGS) $(COMMON_CFLAGS-$(CXXDRIVER)) -std=gnu++14
- CFLAGS += $(COMMON_CFLAGS) $(COMMON_CFLAGS-$(CDRIVER)) -std=gnu11
--CPPFLAGS += -D_FORTIFY_SOURCE=2
-+CPPFLAGS +=
-
- # Enable large file support.
- CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
diff --git a/sys-apps/minijail/metadata.xml b/sys-apps/minijail/metadata.xml
index aa105de6900b..b60ec207b068 100644
--- a/sys-apps/minijail/metadata.xml
+++ b/sys-apps/minijail/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>coles.david@gmail.com</email>
</maintainer>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">google/minijail</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/minijail/minijail-12.ebuild b/sys-apps/minijail/minijail-12.ebuild
deleted file mode 100644
index bf20c5f832a1..000000000000
--- a/sys-apps/minijail/minijail-12.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit linux-info toolchain-funcs
-
-DESCRIPTION="helper binary and library for sandboxing & restricting privs of service"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-# Use GitHub mirror as Gitiles doesn't generate stable tarballs.
-SRC_URI="https://github.com/google/${PN}/archive/linux-v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+seccomp test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/libcap-ng:="
-DEPEND="${RDEPEND}
- test? (
- virtual/pkgconfig
- >=dev-cpp/gtest-1.8.0:=
- )"
-
-S="${WORKDIR}/${PN}-linux-v${PV}"
-
-PATCHES=(
- "${FILESDIR}/minijail-12-makefile.patch"
-)
-
-pkg_pretend() {
- local CONFIG_CHECK="~NAMESPACES ~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS
- ~SECCOMP ~SECCOMP_FILTER ~CGROUPS"
- check_extra_config
-}
-
-src_configure() {
- export LIBDIR="/usr/$(get_libdir)"
- export USE_seccomp="$(usex seccomp)"
- export USE_SYSTEM_GTEST=yes
- if use test; then
- export GTEST_CXXFLAGS="$($(tc-getPKG_CONFIG) --cflags gtest_main)"
- export GTEST_LIBS="$($(tc-getPKG_CONFIG) --libs gtest_main)"
- else
- export GTEST_CXXFLAGS='' GTEST_LIBS=''
- fi
- export VERBOSE=1
-}
-
-src_compile() {
- tc-env_build emake all parse_seccomp_policy
-}
-
-src_test() {
- GTEST_FILTER="-NamespaceTest.test_tmpfs_userns:NamespaceTest.test_namespaces" \
- tc-env_build emake tests
-}
-
-src_install() {
- dosbin minijail0
- dolib.so libminijail{,preload}.so
- dobin parse_seccomp_policy
-
- doman minijail0.[15]
- dodoc README.md
-
- local include_dir="/usr/include"
-
- "${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins libminijail.pc
-
- insinto "${include_dir}"
- doins libminijail.h scoped_minijail.h
-}
diff --git a/sys-apps/minijail/minijail-17.ebuild b/sys-apps/minijail/minijail-17.ebuild
new file mode 100644
index 000000000000..f9192fecbd38
--- /dev/null
+++ b/sys-apps/minijail/minijail-17.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit linux-info toolchain-funcs
+
+DESCRIPTION="helper binary and library for sandboxing & restricting privs of service"
+HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
+
+# Use GitHub mirror as Gitiles doesn't generate stable tarballs.
+SRC_URI="https://github.com/google/${PN}/archive/linux-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="+seccomp test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-libs/libcap-ng:="
+DEPEND="${RDEPEND}
+ test? (
+ virtual/pkgconfig
+ >=dev-cpp/gtest-1.8.0:=
+ )"
+
+S="${WORKDIR}/${PN}-linux-v${PV}"
+
+PATCHES=(
+ "${FILESDIR}/minijail-12-makefile.patch"
+ "${FILESDIR}/minijail-17-no-werror.patch"
+)
+
+pkg_pretend() {
+ local CONFIG_CHECK="~NAMESPACES ~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS
+ ~SECCOMP ~SECCOMP_FILTER ~CGROUPS"
+ check_extra_config
+}
+
+src_configure() {
+ export LIBDIR="/usr/$(get_libdir)"
+ export USE_seccomp="$(usex seccomp)"
+ export USE_SYSTEM_GTEST=yes
+ if use test; then
+ export GTEST_CXXFLAGS="$($(tc-getPKG_CONFIG) --cflags gtest_main)"
+ export GTEST_LIBS="$($(tc-getPKG_CONFIG) --libs gtest_main)"
+ else
+ export GTEST_CXXFLAGS='' GTEST_LIBS=''
+ fi
+ export VERBOSE=1
+}
+
+src_compile() {
+ tc-env_build emake all parse_seccomp_policy
+}
+
+src_test() {
+ GTEST_FILTER="-NamespaceTest.test_tmpfs_userns:NamespaceTest.test_namespaces" \
+ tc-env_build emake tests
+}
+
+src_install() {
+ dosbin minijail0
+ dolib.so libminijail{,preload}.so
+ dobin parse_seccomp_policy
+
+ doman minijail0.[15]
+ dodoc README.md
+
+ local include_dir="/usr/include"
+
+ "${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins libminijail.pc
+
+ insinto "${include_dir}"
+ doins libminijail.h scoped_minijail.h
+}
diff --git a/sys-apps/minijail/minijail-18.ebuild b/sys-apps/minijail/minijail-18.ebuild
new file mode 100644
index 000000000000..237a6aa5dafb
--- /dev/null
+++ b/sys-apps/minijail/minijail-18.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info toolchain-funcs
+
+DESCRIPTION="helper binary and library for sandboxing & restricting privs of service"
+HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
+# Use GitHub mirror as Gitiles doesn't generate stable tarballs.
+SRC_URI="https://github.com/google/${PN}/archive/linux-v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-linux-v${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="+seccomp test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-libs/libcap-ng:="
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-cpp/gtest-1.8.0:=
+ )
+"
+BDEPEND="test? ( virtual/pkgconfig )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-18-makefile.patch"
+ "${FILESDIR}/${PN}-17-no-werror.patch"
+)
+
+pkg_pretend() {
+ local CONFIG_CHECK="~NAMESPACES ~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS
+ ~SECCOMP ~SECCOMP_FILTER ~CGROUPS"
+ check_extra_config
+}
+
+src_configure() {
+ export LIBDIR="/usr/$(get_libdir)"
+ export USE_seccomp="$(usex seccomp)"
+ export USE_SYSTEM_GTEST=yes
+ if use test; then
+ export GTEST_CXXFLAGS="$($(tc-getPKG_CONFIG) --cflags gtest_main)"
+ export GTEST_LIBS="$($(tc-getPKG_CONFIG) --libs gtest_main)"
+ else
+ export GTEST_CXXFLAGS='' GTEST_LIBS=''
+ fi
+ export VERBOSE=1
+}
+
+src_compile() {
+ tc-env_build emake all parse_seccomp_policy
+}
+
+src_test() {
+ GTEST_FILTER="-NamespaceTest.test_tmpfs_userns:NamespaceTest.test_namespaces" \
+ tc-env_build emake tests
+}
+
+src_install() {
+ dosbin minijail0
+ dolib.so libminijail{,preload}.so
+ dobin parse_seccomp_policy
+
+ doman minijail0.[15]
+ dodoc README.md
+
+ local include_dir="/usr/include"
+
+ "${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins libminijail.pc
+
+ insinto "${include_dir}"
+ doins libminijail.h scoped_minijail.h
+}
diff --git a/sys-apps/minijail/minijail-9.ebuild b/sys-apps/minijail/minijail-9.ebuild
deleted file mode 100644
index a11b63da62ab..000000000000
--- a/sys-apps/minijail/minijail-9.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit linux-info toolchain-funcs
-
-DESCRIPTION="helper binary and library for sandboxing & restricting privs of service"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-# Use GitHub mirror as Gitiles doesn't generate stable tarballs.
-SRC_URI="https://github.com/google/${PN}/archive/linux-v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+seccomp test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/libcap-ng:="
-DEPEND="${RDEPEND}
- test? (
- virtual/pkgconfig
- >=dev-cpp/gtest-1.8.0:=
- )"
-
-S="${WORKDIR}/${PN}-linux-v${PV}"
-
-PATCHES=(
- "${FILESDIR}/minijail-9-makefile.patch"
-)
-
-pkg_pretend() {
- local CONFIG_CHECK="~NAMESPACES ~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS
- ~SECCOMP ~SECCOMP_FILTER ~CGROUPS"
- check_extra_config
-}
-
-src_configure() {
- export LIBDIR="/usr/$(get_libdir)"
- export USE_seccomp="$(usex seccomp)"
- export USE_SYSTEM_GTEST=yes
- export GTEST_CXXFLAGS="$(pkg-config --cflags gtest_main)"
- export GTEST_LIBS="$(pkg-config --libs gtest_main)"
-}
-
-src_compile() {
- tc-env_build emake VERBOSE=1 all parse_seccomp_policy
-}
-
-src_test() {
- GTEST_FILTER="-NamespaceTest.test_tmpfs_userns:NamespaceTest.test_namespaces" \
- tc-env_build emake VERBOSE=1 tests
-}
-
-src_install() {
- dosbin minijail0
- dolib.so libminijail{,preload}.so
- dobin parse_seccomp_policy
-
- doman minijail0.[15]
-
- local include_dir="/usr/include"
-
- "${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins libminijail.pc
-
- insinto "${include_dir}"
- doins libminijail.h
- doins scoped_minijail.h
-}
diff --git a/sys-apps/minised/Manifest b/sys-apps/minised/Manifest
index dd34213d14a9..c96eef88b946 100644
--- a/sys-apps/minised/Manifest
+++ b/sys-apps/minised/Manifest
@@ -1 +1 @@
-DIST minised-1.15.tar.gz 32224 BLAKE2B 9dac7557fc697aac8f42daf09bf68ac87a79cb7cbcbe6c3372d9d229a3010b86399658df00c04f039c64f75749d7e905a196e1e7532c3f0e3ae42edce385fb08 SHA512 82ebe5c70f24adebd5f1c37422bac543c06684bff40d1d1fab473abc248d4c5f93e7a4969204877170fed1f2616f6fb666bd485183115cc996ba691c7bb88a71
+DIST minised-1.16.tar.gz 31067 BLAKE2B eb37d147434fe06b3c1741d544a6e3088f265e17779e156317a9eaaac99d77276c93e2c60b49a92423378509f7588c50a1421d3d74e0086fb1fbc3bf5079da09 SHA512 9d81ba58f5460e341d9de7c4b2af38c7bf39ae40fdcfac1652e7ad64bd903d58222128880daeb30ef5c1726a244d815ab9c7b22b9cb92c7aeaaa7728f29c4116
diff --git a/sys-apps/minised/metadata.xml b/sys-apps/minised/metadata.xml
index 7d2dede4ccb7..cf35147f7a20 100644
--- a/sys-apps/minised/metadata.xml
+++ b/sys-apps/minised/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>embedded@gentoo.org</email>
diff --git a/sys-apps/minised/minised-1.15.ebuild b/sys-apps/minised/minised-1.15.ebuild
deleted file mode 100644
index a487b04f1d13..000000000000
--- a/sys-apps/minised/minised-1.15.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="a smaller, cheaper and faster sed implementation"
-HOMEPAGE="http://www.exactcode.de/oss/minised/"
-SRC_URI="http://dl.exactcode.de/oss/minised/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-
-src_prepare() {
- default
- tc-export CC
-}
diff --git a/sys-apps/minised/minised-1.16.ebuild b/sys-apps/minised/minised-1.16.ebuild
new file mode 100644
index 000000000000..bb8676b03d2e
--- /dev/null
+++ b/sys-apps/minised/minised-1.16.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="a smaller, cheaper and faster sed implementation"
+HOMEPAGE="http://www.exactcode.de/oss/minised/"
+SRC_URI="http://dl.exactcode.de/oss/minised/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+src_prepare() {
+ default
+ tc-export CC
+}
diff --git a/sys-apps/miscfiles/metadata.xml b/sys-apps/miscfiles/metadata.xml
index 56c124413057..e45e00842733 100644
--- a/sys-apps/miscfiles/metadata.xml
+++ b/sys-apps/miscfiles/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="savannah">miscfiles</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/miscfiles/miscfiles-1.5-r3.ebuild b/sys-apps/miscfiles/miscfiles-1.5-r3.ebuild
deleted file mode 100644
index e764a3a89bb7..000000000000
--- a/sys-apps/miscfiles/miscfiles-1.5-r3.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-UNI_PV="10.0.0"
-DESCRIPTION="Miscellaneous files"
-HOMEPAGE="https://savannah.gnu.org/projects/miscfiles/"
-# https://www.unicode.org/Public/${UNI_PV}/ucd/UnicodeData.txt
-SRC_URI="mirror://gnu/miscfiles/${P}.tar.gz
- https://dev.gentoo.org/~whissi/dist/${PN}/UnicodeData-${UNI_PV}.txt.xz"
-
-LICENSE="GPL-2 unicode"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x86-solaris"
-IUSE="minimal"
-
-src_prepare() {
- default
-
- mv "${WORKDIR}"/UnicodeData-${UNI_PV}.txt unicode || die
-}
-
-src_configure() {
- econf --datadir="${EPREFIX}"/usr/share/misc
-}
-
-src_install() {
- emake install DESTDIR="${D}"
- dodoc NEWS ORIGIN README dict-README
-
- # not sure if this is still needed ...
- dodir /usr/share/dict
- cd "${ED%/}"/usr/share/misc || die
- mv $(awk '$1=="dictfiles"{$1="";$2="";print}' "${S}"/Makefile) ../dict/ || die
- cd ../dict || die
- ln -s web2 words || die
- ln -s web2a extra.words || die
-
- if use minimal ; then
- pushd "${ED%/}"/usr/share/dict || die
- rm -f words extra.words || die
- gzip -9 * || die
- ln -s web2.gz words || die
- ln -s web2a.gz extra.words || die
- ln -s connectives{.gz,} || die
- ln -s propernames{.gz,} || die
- popd || die
- rm -r "${ED%/}"/usr/share/misc || die
- fi
-}
-
-pkg_postinst() {
- if [[ ${ROOT} == "/" ]] && type -P create-cracklib-dict >/dev/null ; then
- ebegin "Regenerating cracklib dictionary"
- create-cracklib-dict "${EPREFIX}"/usr/share/dict/* > /dev/null
- eend $?
- fi
-
- # pkg_postinst isn't supposed to fail
- return 0
-}
diff --git a/sys-apps/miscfiles/miscfiles-1.5-r4.ebuild b/sys-apps/miscfiles/miscfiles-1.5-r4.ebuild
new file mode 100644
index 000000000000..e0773aba5f24
--- /dev/null
+++ b/sys-apps/miscfiles/miscfiles-1.5-r4.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+UNI_PV="10.0.0"
+DESCRIPTION="Miscellaneous files"
+HOMEPAGE="https://savannah.gnu.org/projects/miscfiles/"
+# https://www.unicode.org/Public/${UNI_PV}/ucd/UnicodeData.txt
+SRC_URI="mirror://gnu/miscfiles/${P}.tar.gz
+ https://dev.gentoo.org/~whissi/dist/${PN}/UnicodeData-${UNI_PV}.txt.xz"
+
+LICENSE="GPL-2 unicode"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="minimal"
+
+src_prepare() {
+ default
+
+ mv "${WORKDIR}"/UnicodeData-${UNI_PV}.txt unicode || die
+}
+
+src_configure() {
+ econf --datadir="${EPREFIX}"/usr/share/misc
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+ dodoc NEWS ORIGIN README dict-README
+
+ # not sure if this is still needed ...
+ dodir /usr/share/dict
+ cd "${ED}"/usr/share/misc || die
+ mv $(awk '$1=="dictfiles"{$1="";$2="";print}' "${S}"/Makefile) ../dict/ || die
+ cd ../dict || die
+ ln -s web2 words || die
+ ln -s web2a extra.words || die
+
+ if use minimal ; then
+ pushd "${ED}"/usr/share/dict || die
+ rm -f words extra.words || die
+ gzip -9 * || die
+ ln -s web2.gz words || die
+ ln -s web2a.gz extra.words || die
+ ln -s connectives{.gz,} || die
+ ln -s propernames{.gz,} || die
+ popd || die
+ rm -r "${ED}"/usr/share/misc || die
+ fi
+}
+
+pkg_postinst() {
+ if [[ -z ${ROOT} ]] && type -P create-cracklib-dict >/dev/null ; then
+ ebegin "Regenerating cracklib dictionary"
+ create-cracklib-dict "${EPREFIX}"/usr/share/dict/* > /dev/null
+ eend $?
+ fi
+
+ # pkg_postinst isn't supposed to fail
+ return 0
+}
diff --git a/sys-apps/mlocate/metadata.xml b/sys-apps/mlocate/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/mlocate/metadata.xml
+++ b/sys-apps/mlocate/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/mlocate/mlocate-0.26-r2.ebuild b/sys-apps/mlocate/mlocate-0.26-r2.ebuild
deleted file mode 100644
index 1517b0d5716e..000000000000
--- a/sys-apps/mlocate/mlocate-0.26-r2.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils user toolchain-funcs
-
-DESCRIPTION="Merging locate is an utility to index and quickly search for files"
-HOMEPAGE="https://pagure.io/mlocate"
-SRC_URI="http://releases.pagure.org/mlocate/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
-IUSE="nls selinux"
-
-RDEPEND="!sys-apps/slocate
- !sys-apps/rlocate
- selinux? ( sec-policy/selinux-slocate )"
-DEPEND="app-arch/xz-utils
- nls? ( sys-devel/gettext )
-"
-
-pkg_setup() {
- enewgroup locate
-}
-
-src_configure() {
- econf $(use_enable nls)
-}
-
-src_compile() {
- emake groupname=locate AR="$(tc-getAR)"
-}
-
-src_install() {
- emake groupname=locate DESTDIR="${D}" install
- dodoc AUTHORS ChangeLog README NEWS
-
- insinto /etc
- doins "${FILESDIR}"/updatedb.conf
- doins "${FILESDIR}"/mlocate-cron.conf
- fperms 0644 /etc/{updatedb,mlocate-cron}.conf
-
- insinto /etc/cron.daily
- newins "${FILESDIR}"/mlocate.cron-r3 mlocate
- fperms 0755 /etc/cron.daily/mlocate
-
- fowners 0:locate /usr/bin/locate
- fperms go-r,g+s /usr/bin/locate
-
- keepdir /var/lib/mlocate
- chown -R 0:locate "${ED}"/var/lib/mlocate
- fperms 0750 /var/lib/mlocate
-}
-
-pkg_postinst() {
- elog "The database for the locate command is generated daily by a cron job,"
- elog "if you install for the first time you can run the updatedb command manually now."
- elog
- elog "Note that the /etc/updatedb.conf file is generic,"
- elog "please customize it to your system requirements."
-}
diff --git a/sys-apps/mlocate/mlocate-0.26-r3.ebuild b/sys-apps/mlocate/mlocate-0.26-r3.ebuild
index cc1d33e65831..84e6a485391e 100644
--- a/sys-apps/mlocate/mlocate-0.26-r3.ebuild
+++ b/sys-apps/mlocate/mlocate-0.26-r3.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils systemd toolchain-funcs
+inherit systemd toolchain-funcs
DESCRIPTION="Merging locate is an utility to index and quickly search for files"
HOMEPAGE="https://pagure.io/mlocate"
@@ -10,7 +10,7 @@ SRC_URI="http://releases.pagure.org/mlocate/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="nls selinux"
BDEPEND="
diff --git a/sys-apps/mlxup-bin/metadata.xml b/sys-apps/mlxup-bin/metadata.xml
index 56cae167d372..7c1651eba3e0 100644
--- a/sys-apps/mlxup-bin/metadata.xml
+++ b/sys-apps/mlxup-bin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>chutzpah@gentoo.org</email>
diff --git a/sys-apps/moar/Manifest b/sys-apps/moar/Manifest
new file mode 100644
index 000000000000..5e1da91aa2bb
--- /dev/null
+++ b/sys-apps/moar/Manifest
@@ -0,0 +1,10 @@
+DIST moar-1.22.3-deps.tar.xz 37188500 BLAKE2B a5c92f8e56d4c7588265132f33089f1086fb7a14b1d1023caf7594cbda16772776751a80d44f451a9c5c765bd03d25687a63b5a00c4a50603b4598162920d840 SHA512 44c924339dbde95b647c464a00382786dfd8adfc72f307a9df63ed39f85fefe76260fde082a39738fb97c571217e8d591bdeada054dbe75ed56aa0156e7cf2fa
+DIST moar-1.22.3.tar.gz 2799819 BLAKE2B 681297e9a84f6846d7ea6cd591403fd3100079fc8418ce5841a50755927239eca5abbfc0477d1a74e3af687ef1ebe372d4f708c38a64ba61b3095ac161f1cb8e SHA512 377cdf4916b036088f48abd4aa9818f002dd5ab025a54f4d91626380bb3d370daf046da6f3dc31fcc11a375d7da1a84288fb3e2e3357181a6ecc6a46af78c452
+DIST moar-1.23.10-deps.tar.xz 37188500 BLAKE2B a5c92f8e56d4c7588265132f33089f1086fb7a14b1d1023caf7594cbda16772776751a80d44f451a9c5c765bd03d25687a63b5a00c4a50603b4598162920d840 SHA512 44c924339dbde95b647c464a00382786dfd8adfc72f307a9df63ed39f85fefe76260fde082a39738fb97c571217e8d591bdeada054dbe75ed56aa0156e7cf2fa
+DIST moar-1.23.10.tar.gz 2804040 BLAKE2B f3e4b53b3457461766c04d81f081c01a7d12a261502b1c59970099b403c562bd3276510ab0b59d1629e9d5e97922cc6a9839ae4525f62cecad752b5d65ce27ac SHA512 835b9910fb6451a58e04008517ede25644b897e94cfd5fc7ed5d7104107e91458b77e2a6230668169c9f213df297335767de6bc467a6f6e928b53d2e1060e4e9
+DIST moar-1.23.6-deps.tar.xz 37188500 BLAKE2B a5c92f8e56d4c7588265132f33089f1086fb7a14b1d1023caf7594cbda16772776751a80d44f451a9c5c765bd03d25687a63b5a00c4a50603b4598162920d840 SHA512 44c924339dbde95b647c464a00382786dfd8adfc72f307a9df63ed39f85fefe76260fde082a39738fb97c571217e8d591bdeada054dbe75ed56aa0156e7cf2fa
+DIST moar-1.23.6.tar.gz 2801847 BLAKE2B d9e638d15ac363d3787fcce4bdc640c497a400ecaf5f40763dd8efed28cc3f5e479733d4b1f9a457395e4b9dda844748459a07fa674f50e3d6b630755af3ac4f SHA512 94103263f2c07464fbc0c5a90519a3a03ef5f163a67ca451a703c11bf46b98011b6e29a038b08bb47dc08230c28ae822ced49f2aec2bf8b6e83c6a4c1f330aa4
+DIST moar-1.23.7-deps.tar.xz 37188500 BLAKE2B a5c92f8e56d4c7588265132f33089f1086fb7a14b1d1023caf7594cbda16772776751a80d44f451a9c5c765bd03d25687a63b5a00c4a50603b4598162920d840 SHA512 44c924339dbde95b647c464a00382786dfd8adfc72f307a9df63ed39f85fefe76260fde082a39738fb97c571217e8d591bdeada054dbe75ed56aa0156e7cf2fa
+DIST moar-1.23.7.tar.gz 2802061 BLAKE2B 767efc6919415f342a3c31dc99692f23d991c22e92f2c7387765aa63ab591c5791d9bf5c6ddea704456924c55b976af141af7b39e726fe651262fce21dd353fe SHA512 56958508d9ee710cb91df90f6b18bb7f0db95444e65eb8fa80a5ee33c4ad99f4f4482c1eec1ef44b64906e016e9465002571fa141ce03eeeaecc62cba102ead0
+DIST moar-1.23.9-deps.tar.xz 37188500 BLAKE2B a5c92f8e56d4c7588265132f33089f1086fb7a14b1d1023caf7594cbda16772776751a80d44f451a9c5c765bd03d25687a63b5a00c4a50603b4598162920d840 SHA512 44c924339dbde95b647c464a00382786dfd8adfc72f307a9df63ed39f85fefe76260fde082a39738fb97c571217e8d591bdeada054dbe75ed56aa0156e7cf2fa
+DIST moar-1.23.9.tar.gz 2804191 BLAKE2B d5663fedd70fc80d70a206c276ece6ec11da4f4b4dc396a3e11b1fb8edd5bd9f3395e943158c4bb297b5ebfeecd8f61bdbaaff79e78c4a89458f1b1a02db0e71 SHA512 9ab4a3e49b66b39f642b6a1f882c0980a4e755e3e127ca37d1319615ae836fe3250676a8c0e95ccd0f8e714357df5dc00235bf67be6097a7b2811f0e3bf02e9f
diff --git a/sys-apps/moar/metadata.xml b/sys-apps/moar/metadata.xml
new file mode 100644
index 000000000000..da115d6b24cf
--- /dev/null
+++ b/sys-apps/moar/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">walles/moar</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/moar/moar-1.22.3.ebuild b/sys-apps/moar/moar-1.22.3.ebuild
new file mode 100644
index 000000000000..588769858549
--- /dev/null
+++ b/sys-apps/moar/moar-1.22.3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Pager designed to do the right thing without any configuration"
+HOMEPAGE="https://github.com/walles/moar"
+SRC_URI="https://github.com/walles/moar/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="BSD-2 BSD MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ppc64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# moarvm: https://github.com/walles/moar/issues/143
+RDEPEND="!dev-lang/moarvm"
+BDEPEND="
+ test? (
+ app-arch/bzip2
+ app-arch/xz-utils
+ )
+"
+
+src_compile() {
+ # https://github.com/walles/moar/blob/master/build.sh#L28
+ ego build -ldflags="-w -X main.versionString=${PV}" -o moar
+}
+
+src_test() {
+ # From test.sh (we don't run that because it has some linting etc)
+ ego test -timeout 20s ./...
+}
+
+src_install() {
+ dobin moar
+ doman moar.1
+ einstalldocs
+}
diff --git a/sys-apps/moar/moar-1.23.10.ebuild b/sys-apps/moar/moar-1.23.10.ebuild
new file mode 100644
index 000000000000..7ba82f9aa27b
--- /dev/null
+++ b/sys-apps/moar/moar-1.23.10.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Pager designed to do the right thing without any configuration"
+HOMEPAGE="https://github.com/walles/moar"
+SRC_URI="https://github.com/walles/moar/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="BSD-2 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# moarvm: https://github.com/walles/moar/issues/143
+RDEPEND="!dev-lang/moarvm"
+BDEPEND="
+ test? (
+ app-arch/bzip2
+ app-arch/xz-utils
+ )
+"
+
+src_compile() {
+ # https://github.com/walles/moar/blob/master/build.sh#L28
+ ego build -ldflags="-w -X main.versionString=${PV}" -o moar
+}
+
+src_test() {
+ # From test.sh (we don't run that because it has some linting etc)
+ ego test -timeout 20s ./...
+}
+
+src_install() {
+ dobin moar
+ doman moar.1
+ einstalldocs
+}
diff --git a/sys-apps/moar/moar-1.23.6.ebuild b/sys-apps/moar/moar-1.23.6.ebuild
new file mode 100644
index 000000000000..7ba82f9aa27b
--- /dev/null
+++ b/sys-apps/moar/moar-1.23.6.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Pager designed to do the right thing without any configuration"
+HOMEPAGE="https://github.com/walles/moar"
+SRC_URI="https://github.com/walles/moar/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="BSD-2 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# moarvm: https://github.com/walles/moar/issues/143
+RDEPEND="!dev-lang/moarvm"
+BDEPEND="
+ test? (
+ app-arch/bzip2
+ app-arch/xz-utils
+ )
+"
+
+src_compile() {
+ # https://github.com/walles/moar/blob/master/build.sh#L28
+ ego build -ldflags="-w -X main.versionString=${PV}" -o moar
+}
+
+src_test() {
+ # From test.sh (we don't run that because it has some linting etc)
+ ego test -timeout 20s ./...
+}
+
+src_install() {
+ dobin moar
+ doman moar.1
+ einstalldocs
+}
diff --git a/sys-apps/moar/moar-1.23.7.ebuild b/sys-apps/moar/moar-1.23.7.ebuild
new file mode 100644
index 000000000000..7ba82f9aa27b
--- /dev/null
+++ b/sys-apps/moar/moar-1.23.7.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Pager designed to do the right thing without any configuration"
+HOMEPAGE="https://github.com/walles/moar"
+SRC_URI="https://github.com/walles/moar/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="BSD-2 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# moarvm: https://github.com/walles/moar/issues/143
+RDEPEND="!dev-lang/moarvm"
+BDEPEND="
+ test? (
+ app-arch/bzip2
+ app-arch/xz-utils
+ )
+"
+
+src_compile() {
+ # https://github.com/walles/moar/blob/master/build.sh#L28
+ ego build -ldflags="-w -X main.versionString=${PV}" -o moar
+}
+
+src_test() {
+ # From test.sh (we don't run that because it has some linting etc)
+ ego test -timeout 20s ./...
+}
+
+src_install() {
+ dobin moar
+ doman moar.1
+ einstalldocs
+}
diff --git a/sys-apps/moar/moar-1.23.9.ebuild b/sys-apps/moar/moar-1.23.9.ebuild
new file mode 100644
index 000000000000..588769858549
--- /dev/null
+++ b/sys-apps/moar/moar-1.23.9.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Pager designed to do the right thing without any configuration"
+HOMEPAGE="https://github.com/walles/moar"
+SRC_URI="https://github.com/walles/moar/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="BSD-2 BSD MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ppc64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# moarvm: https://github.com/walles/moar/issues/143
+RDEPEND="!dev-lang/moarvm"
+BDEPEND="
+ test? (
+ app-arch/bzip2
+ app-arch/xz-utils
+ )
+"
+
+src_compile() {
+ # https://github.com/walles/moar/blob/master/build.sh#L28
+ ego build -ldflags="-w -X main.versionString=${PV}" -o moar
+}
+
+src_test() {
+ # From test.sh (we don't run that because it has some linting etc)
+ ego test -timeout 20s ./...
+}
+
+src_install() {
+ dobin moar
+ doman moar.1
+ einstalldocs
+}
diff --git a/sys-apps/moreutils/Manifest b/sys-apps/moreutils/Manifest
index 4f29a06c52c7..5ce85268c049 100644
--- a/sys-apps/moreutils/Manifest
+++ b/sys-apps/moreutils/Manifest
@@ -1,2 +1,2 @@
-DIST moreutils-0.64.tar.gz 92741 BLAKE2B 3e014a18a3b7615bcd83fd9b0a1e3010a059aae154395c2c1158f57634fe83c27503dc3aff1e116743cf80fc73ee2063ea60b03d4bece4119b962669095c71dc SHA512 94f131b9b02a8c1139dfe34abacab022687f51413c529288f57fa876676c028e200324ed855b910a7dbfb4290eb8b38b3dc182eda49988f521a550162b0a0eec
-DIST moreutils_0.63.orig.tar.xz 80468 BLAKE2B 39efa522c5bf9b982b70c1180f622a7d5a489cabbeb741f2a1a0674dfe9907ef85bccccf9f9cc4ae8d3c81442b1513f0692c070b4c00f052135528dc0e47eb6f SHA512 71bd5ec4d265dff708db372189146acb067c4edaf62888755d245ccb3f4b5bb54f6c31bda68991f78c27ab231de8ea7126f947834f3604b60d7142d0357cb66b
+DIST moreutils-0.68.tar.gz 93732 BLAKE2B f6bac790a294f6a05624ca33906a41e60a0dcc5c25ef31f62dc501ecf39913299f6ecd64130ed4da1896342ae4bfc286b02217f68c76d0e915cd2d8f684237b1 SHA512 8d2ee4ab1e2409a4adde018c558884ff6c642c7426b1d07d5d15bf89ba42ea5aec279c01d7d80815a825adc527ceddf0de8db9c05b0392fccc8e76bcae032558
+DIST moreutils-0.69.tar.gz 93899 BLAKE2B 3bbe031c230aa22f737a661f2e9fab4f5fb6d5bb2d21807bf7207ab382c9a439ca0e9425594d98dee04714038cb2214fbc9852268b4669dd9a0f0eac5f9ad07c SHA512 0f9033a860bbbc72d50331809c94e7d29c1125339b68434d68d95039ec075b46daff642ad4a08303444fa7873f04a894c4f2010b6ce74e92f868cfc246e39a6f
diff --git a/sys-apps/moreutils/files/moreutils-0.63-respect-env.patch b/sys-apps/moreutils/files/moreutils-0.63-respect-env.patch
deleted file mode 100644
index 45f85b1988e5..000000000000
--- a/sys-apps/moreutils/files/moreutils-0.63-respect-env.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/is_utf8/Makefile b/is_utf8/Makefile
-index 4ebf8be..f0a111e 100644
---- a/is_utf8/Makefile
-+++ b/is_utf8/Makefile
-@@ -37,14 +37,14 @@ LINKERNAME = lib$(NAME).so
- SONAME = $(LINKERNAME).$(VERSION)
- REALNAME = $(SONAME).$(MINOR).$(RELEASE)
-
--CC = gcc
--CFLAGS = -O3 -Wextra -Wall -ansi -Wstrict-prototypes
-+CC ?= gcc
-+CFLAGS ?= -O3 -Wextra -Wall -ansi -Wstrict-prototypes
-
- $(NAME): $(OBJ)
-- $(CC) $(CFLAGS) -o $(NAME) $(OBJ)
-+ $(CC) $(CFLAGS) -o $(NAME) $(OBJ) $(LDFLAGS)
-
- IS_UTF8_LIB:
-- $(CC) --shared -fPIC $(CFLAGS) $(LIB_SRC) -o $(LINKERNAME)
-+ $(CC) --shared -fPIC $(CFLAGS) $(LDFLAGS) $(LIB_SRC) -o $(LINKERNAME)
-
- all:
- @make $(NAME)
diff --git a/sys-apps/moreutils/metadata.xml b/sys-apps/moreutils/metadata.xml
index a547cb41ebd7..763a7b1a2cd2 100644
--- a/sys-apps/moreutils/metadata.xml
+++ b/sys-apps/moreutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>sam@gentoo.org</email>
diff --git a/sys-apps/moreutils/moreutils-0.63.ebuild b/sys-apps/moreutils/moreutils-0.63.ebuild
deleted file mode 100644
index 616df9ea930b..000000000000
--- a/sys-apps/moreutils/moreutils-0.63.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit toolchain-funcs
-
-DESCRIPTION="a collection of tools that nobody thought to write when Unix was young"
-HOMEPAGE="https://joeyh.name/code/moreutils/"
-SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}.orig.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ppc ~ppc64 x86 ~x86-linux"
-IUSE="+doc +perl"
-
-RDEPEND="
- perl? (
- dev-lang/perl
- dev-perl/IPC-Run
- dev-perl/Time-Duration
- dev-perl/TimeDate
- )"
-DEPEND="
- app-admin/eselect
- doc? (
- dev-lang/perl
- >=app-text/docbook2X-0.8.8-r2
- app-text/docbook-xml-dtd:4.4
- )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.63-respect-env.patch
-)
-
-src_prepare() {
- # don't build manpages
- if ! use doc ; then
- sed -i -e '/^all:/s/$(MANS)//' -e '/man1/d' Makefile || die
- fi
-
- # don't install perl scripts
- if ! use perl ; then
- sed -i -e '/PERLSCRIPTS/d' Makefile || die
- fi
-
- default
-}
-
-src_compile() {
- tc-export CC
- emake CFLAGS="${CFLAGS}" DOCBOOKXSL=/usr/share/sgml/docbook/xsl-stylesheets PREFIX="${EPREFIX}/usr"
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" INSTALL_BIN=install install
-
- # sys-process is more advanced than parallel from moreutils, rename it
- if use doc; then
- mv "${ED}"/usr/share/man/man1/{,${PN}_}parallel.1 || die
- fi
- mv "${ED}"/usr/bin/{,${PN}_}parallel || die
-}
-
-pkg_postinst() {
- # try to make sure $EDITOR is valid for vipe (bug #604630)
- eselect editor update
-}
diff --git a/sys-apps/moreutils/moreutils-0.64.ebuild b/sys-apps/moreutils/moreutils-0.64.ebuild
deleted file mode 100644
index dced88e9895e..000000000000
--- a/sys-apps/moreutils/moreutils-0.64.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="a collection of tools that nobody thought to write when Unix was young"
-HOMEPAGE="https://joeyh.name/code/moreutils/ https://git.joeyh.name/index.cgi/moreutils.git/"
-# Not available at time of release
-#SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}.orig.tar.xz"
-SRC_URI="https://git.joeyh.name/index.cgi/moreutils.git/snapshot/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ppc ~ppc64 x86 ~x86-linux"
-IUSE="+doc +perl"
-
-RDEPEND="
- perl? (
- dev-lang/perl
- dev-perl/IPC-Run
- dev-perl/Time-Duration
- dev-perl/TimeDate
- )"
-DEPEND="
- app-admin/eselect
- doc? (
- dev-lang/perl
- >=app-text/docbook2X-0.8.8-r2
- app-text/docbook-xml-dtd:4.4
- )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-0.64-respect-env.patch"
-)
-
-src_prepare() {
- # don't build manpages
- if ! use doc ; then
- sed -i -e '/^all:/s/$(MANS)//' -e '/man1/d' Makefile || die
- fi
-
- # don't install perl scripts
- if ! use perl ; then
- sed -i -e '/PERLSCRIPTS/d' Makefile || die
- fi
-
- default
-}
-
-src_compile() {
- tc-export CC
- emake CFLAGS="${CFLAGS}" DOCBOOKXSL=/usr/share/sgml/docbook/xsl-stylesheets PREFIX="${EPREFIX}/usr"
-}
-
-src_install() {
- emake DESTDIR="${ED}" PREFIX="${EPREFIX}/usr" INSTALL_BIN=install install
-
- # sys-process is more advanced than parallel from moreutils, rename it
- if use doc; then
- mv "${ED}"/usr/share/man/man1/{,${PN}_}parallel.1 || die
- fi
-
- mv "${ED}"/usr/bin/{,${PN}_}parallel || die
-}
-
-pkg_postinst() {
- # try to make sure $EDITOR is valid for vipe (bug #604630)
- eselect editor update
-}
diff --git a/sys-apps/moreutils/moreutils-0.68.ebuild b/sys-apps/moreutils/moreutils-0.68.ebuild
new file mode 100644
index 000000000000..2903a50a150d
--- /dev/null
+++ b/sys-apps/moreutils/moreutils-0.68.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Collection of tools that nobody thought to write when Unix was young"
+HOMEPAGE="https://joeyh.name/code/moreutils/ https://git.joeyh.name/index.cgi/moreutils.git/"
+# Not available at time of release
+#SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}.orig.tar.xz"
+SRC_URI="https://git.joeyh.name/index.cgi/moreutils.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ppc ~ppc64 x86 ~x86-linux ~x64-macos"
+IUSE="+doc +perl"
+
+RDEPEND="
+ !<dev-util/pwntools-4.10.0_beta0-r2
+ perl? (
+ dev-lang/perl
+ dev-perl/IPC-Run
+ dev-perl/Time-Duration
+ dev-perl/TimeDate
+ )
+ "
+BDEPEND="
+ doc? (
+ >=app-text/docbook2X-0.8.8-r2
+ app-text/docbook-xml-dtd:4.4
+ dev-lang/perl
+ )
+"
+IDEPEND="app-admin/eselect"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.64-respect-env.patch
+)
+
+src_prepare() {
+ # don't build manpages
+ if ! use doc ; then
+ sed -i -e '/^all:/s/$(MANS)//' -e '/man1/d' Makefile || die
+ fi
+
+ # don't install perl scripts
+ if ! use perl ; then
+ sed -i -e '/PERLSCRIPTS/d' Makefile || die
+ fi
+
+ default
+}
+
+src_compile() {
+ tc-export CC
+
+ emake \
+ CFLAGS="${CFLAGS}" \
+ DOCBOOKXSL="${BROOT}"/usr/share/sgml/docbook/xsl-stylesheets \
+ PREFIX="${EPREFIX}/usr"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" INSTALL_BIN=install install
+
+ # sys-process is more advanced than parallel from moreutils, rename it
+ if use doc; then
+ mv "${ED}"/usr/share/man/man1/{,${PN}_}parallel.1 || die
+ fi
+
+ mv "${ED}"/usr/bin/{,${PN}_}parallel || die
+}
+
+pkg_postinst() {
+ # Try to make sure ${EDITOR} is valid for vipe (bug #604630)
+ eselect editor update
+}
diff --git a/sys-apps/moreutils/moreutils-0.69.ebuild b/sys-apps/moreutils/moreutils-0.69.ebuild
new file mode 100644
index 000000000000..21d861330d68
--- /dev/null
+++ b/sys-apps/moreutils/moreutils-0.69.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Collection of tools that nobody thought to write when Unix was young"
+HOMEPAGE="https://joeyh.name/code/moreutils/ https://git.joeyh.name/index.cgi/moreutils.git/"
+# Not available at time of release
+#SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}.orig.tar.xz"
+SRC_URI="https://git.joeyh.name/index.cgi/moreutils.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-linux ~x64-macos"
+IUSE="+doc +perl"
+
+RDEPEND="
+ !<dev-util/pwntools-4.10.0_beta0-r2
+ perl? (
+ dev-lang/perl
+ dev-perl/IPC-Run
+ dev-perl/Time-Duration
+ dev-perl/TimeDate
+ )
+ "
+BDEPEND="
+ doc? (
+ >=app-text/docbook2X-0.8.8-r2
+ app-text/docbook-xml-dtd:4.4
+ dev-lang/perl
+ )
+"
+IDEPEND="app-admin/eselect"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.64-respect-env.patch
+)
+
+src_prepare() {
+ # don't build manpages
+ if ! use doc ; then
+ sed -i -e '/^all:/s/$(MANS)//' -e '/man1/d' Makefile || die
+ fi
+
+ # don't install perl scripts
+ if ! use perl ; then
+ sed -i -e '/PERLSCRIPTS/d' Makefile || die
+ fi
+
+ default
+}
+
+src_compile() {
+ tc-export CC
+
+ emake \
+ CFLAGS="${CFLAGS}" \
+ DOCBOOKXSL="${BROOT}"/usr/share/sgml/docbook/xsl-stylesheets \
+ PREFIX="${EPREFIX}/usr"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" INSTALL_BIN=install install
+
+ # sys-process is more advanced than parallel from moreutils, rename it
+ if use doc; then
+ mv "${ED}"/usr/share/man/man1/{,${PN}_}parallel.1 || die
+ fi
+
+ mv "${ED}"/usr/bin/{,${PN}_}parallel || die
+}
+
+pkg_postinst() {
+ # Try to make sure ${EDITOR} is valid for vipe (bug #604630)
+ eselect editor update
+}
diff --git a/sys-apps/most/Manifest b/sys-apps/most/Manifest
index 7d3eff66a3e0..3ac82c0380ba 100644
--- a/sys-apps/most/Manifest
+++ b/sys-apps/most/Manifest
@@ -1,2 +1,2 @@
-DIST most-5.0.0a.tar.bz2 131130 BLAKE2B f516b7cd1b37ca274dc8472a258390cde437f44ac320a257ab94cb97e918d574f61e961457809941a3eefa761a62e8f45bd60392e5b95dc60cedc6c1d9f56baf SHA512 0c101777250a15ed9cbe0bfbaa17d0ac5ef973a7e0730d096bd931ba578dbcbd4f244305c99a50bc8fd8aa1937b621a97a6452b3821fee7d72f33a02da278e5d
DIST most-5.1.0.tar.gz 162172 BLAKE2B a3c0f3d85e7c4f4a014c174efb0d3d22b0fc2758e403ddccc74308399eeec616800e16db33554f0ca53fba674efba9dd93d51ed0c3f887b2c24fd3dd2335387c SHA512 cbc090283bbaafb8ffee9d6d1abc7b49cd58d54b742cf8dc86274351dee6398d1f24841bd1631ac40f861ad9e23569646133d3297317d9d514a7a38dd74533d2
+DIST most-5.2.0.tar.gz 256075 BLAKE2B ae73680cedb0306dd6980c637fd8c0d016537663ab707e925931972822f718dd31fc80d83598af9832c7869b5abf4ec3333bc076ce56c4a6d42f71d30be1a50d SHA512 3aa3cb46ddd456532a009fb9cfcd746971396be33e03e52a15b754a6d7683f4efd020edb0ec4eb36d22ba20f050aaac4ba6cdd3b69bb5701ea58ddb9a903c59d
diff --git a/sys-apps/most/files/most-5.0.0a-no-explicit-termcap.patch b/sys-apps/most/files/most-5.0.0a-no-explicit-termcap.patch
deleted file mode 100644
index f858f56f7bc1..000000000000
--- a/sys-apps/most/files/most-5.0.0a-no-explicit-termcap.patch
+++ /dev/null
@@ -1,216 +0,0 @@
-Author: Benda Xu <heroxbd@gentoo.org>
-Date: 2014-12-08
-Forwarded: John E. Davis <jed@jedsoft.org>
-
-"most" completely replies on slang to access terminfo/termcap, by
-SLtt_get_terminfo() and friends.
-
-Nothing should be considered by most but to find slang. Therefore it
-should not link against libtermcap in any case.
-
- * configure.ac: remove JD_TERMCAP
- * configure: regenerate with autoconf-2.61
- * src/Makefile.in: remove libtermcap linking
-
-Index: most-5.0.0a/autoconf/configure.ac
-===================================================================
---- most-5.0.0a.orig/autoconf/configure.ac
-+++ most-5.0.0a/autoconf/configure.ac
-@@ -62,7 +62,6 @@ getpgrp tcgetpgrp \
- )
-
- JD_SET_OBJ_SRC_DIR
--JD_TERMCAP
- JD_WITH_LIBRARY(slang)
- JD_GCC_WARNINGS
- JD_GET_MODULES(src/modules.lis)
-Index: most-5.0.0a/configure
-===================================================================
---- most-5.0.0a.orig/configure
-+++ most-5.0.0a/configure
-@@ -700,8 +700,6 @@ X_EXTRA_LIBS
- SRCDIR
- OBJDIR
- ELFDIR
--TERMCAP
--MISC_TERMINFO_DIRS
- SLANG_LIB
- SLANG_INC
- PROGRAM_OFILES
-@@ -9064,13 +9062,11 @@ _ACEOF
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
--#include <sys/types.h> /* for off_t */
-- #include <stdio.h>
-+#include <stdio.h>
- int
- main ()
- {
--int (*fp) (FILE *, off_t, int) = fseeko;
-- return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
-+return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
- ;
- return 0;
- }
-@@ -9110,13 +9106,11 @@ cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
- #define _LARGEFILE_SOURCE 1
--#include <sys/types.h> /* for off_t */
-- #include <stdio.h>
-+#include <stdio.h>
- int
- main ()
- {
--int (*fp) (FILE *, off_t, int) = fseeko;
-- return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
-+return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
- ;
- return 0;
- }
-@@ -9777,42 +9771,6 @@ OBJDIR=$SRCDIR/"$ARCH"objs
- ELFDIR=$SRCDIR/elf"$ARCH"objs
-
-
--{ echo "$as_me:$LINENO: checking for Terminfo" >&5
--echo $ECHO_N "checking for Terminfo... $ECHO_C" >&6; }
--MISC_TERMINFO_DIRS="$FINKPREFIX/share/terminfo"
--if test ! -d $MISC_TERMINFO_DIRS
--then
-- MISC_TERMINFO_DIRS=""
--fi
--
--JD_Terminfo_Dirs="/usr/lib/terminfo \
-- /usr/share/terminfo \
-- /usr/share/lib/terminfo \
-- /usr/local/lib/terminfo \
-- $MISC_TERMINFO_DIRS"
--
--TERMCAP=-ltermcap
--
--for terminfo_dir in $JD_Terminfo_Dirs
--do
-- if test -d $terminfo_dir
-- then
-- { echo "$as_me:$LINENO: result: yes" >&5
--echo "${ECHO_T}yes" >&6; }
-- TERMCAP=""
-- break
-- fi
--done
--if test "$TERMCAP"; then
-- { echo "$as_me:$LINENO: result: no" >&5
--echo "${ECHO_T}no" >&6; }
-- cat >>confdefs.h <<\_ACEOF
--#define USE_TERMCAP 1
--_ACEOF
--
--fi
--
--
- if test "X$jd_prefix" = "X"
- then
- jd_prefix=$ac_default_prefix
-@@ -10858,8 +10816,6 @@ X_EXTRA_LIBS!$X_EXTRA_LIBS$ac_delim
- SRCDIR!$SRCDIR$ac_delim
- OBJDIR!$OBJDIR$ac_delim
- ELFDIR!$ELFDIR$ac_delim
--TERMCAP!$TERMCAP$ac_delim
--MISC_TERMINFO_DIRS!$MISC_TERMINFO_DIRS$ac_delim
- SLANG_LIB!$SLANG_LIB$ac_delim
- SLANG_INC!$SLANG_INC$ac_delim
- PROGRAM_OFILES!$PROGRAM_OFILES$ac_delim
-@@ -10868,9 +10824,10 @@ PROGRAM_HFILES!$PROGRAM_HFILES$ac_delim
- PROGRAM_OBJECTS!$PROGRAM_OBJECTS$ac_delim
- PROGRAM_ELFOBJECTS!$PROGRAM_ELFOBJECTS$ac_delim
- LIBOBJS!$LIBOBJS$ac_delim
-+LTLIBOBJS!$LTLIBOBJS$ac_delim
- _ACEOF
-
-- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
-+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 96; then
- break
- elif $ac_last_try; then
- { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-@@ -10906,50 +10863,6 @@ CEOF$ac_eof
- _ACEOF
-
-
--ac_delim='%!_!# '
--for ac_last_try in false false false false false :; do
-- cat >conf$$subs.sed <<_ACEOF
--LTLIBOBJS!$LTLIBOBJS$ac_delim
--_ACEOF
--
-- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 1; then
-- break
-- elif $ac_last_try; then
-- { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
--echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
-- { (exit 1); exit 1; }; }
-- else
-- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-- fi
--done
--
--ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed`
--if test -n "$ac_eof"; then
-- ac_eof=`echo "$ac_eof" | sort -nru | sed 1q`
-- ac_eof=`expr $ac_eof + 1`
--fi
--
--cat >>$CONFIG_STATUS <<_ACEOF
--cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof
--/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
--_ACEOF
--sed '
--s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g
--s/^/s,@/; s/!/@,|#_!!_#|/
--:n
--t n
--s/'"$ac_delim"'$/,g/; t
--s/$/\\/; p
--N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
--' >>$CONFIG_STATUS <conf$$subs.sed
--rm -f conf$$subs.sed
--cat >>$CONFIG_STATUS <<_ACEOF
--:end
--s/|#_!!_#|//g
--CEOF$ac_eof
--_ACEOF
--
--
- # VPATH may cause trouble with some makes, so we remove $(srcdir),
- # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
- # trailing colons and then remove the whole line if VPATH becomes empty
-@@ -11193,7 +11106,7 @@ s&@abs_builddir@&$ac_abs_builddir&;t t
- s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
- s&@INSTALL@&$ac_INSTALL&;t t
- $ac_datarootdir_hack
--" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out
-+" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed 's/|#_!!_#|//g' >$tmp/out
-
- test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
-Index: most-5.0.0a/src/Makefile.in
-===================================================================
---- most-5.0.0a.orig/src/Makefile.in
-+++ most-5.0.0a/src/Makefile.in
-@@ -3,7 +3,6 @@ CFLAGS = @CFLAGS@ @SLANG_DLL_CFLAGS@
- LDFLAGS = @LDFLAGS@
- SLANG_INC = @SLANG_INC@
- SLANG_LIB = @SLANG_LIB@ -lslang
--MISCLIBS = @TERMCAP@
- RPATH = @RPATH@
-
- #-----------------------------------------------------------------------------
-@@ -44,7 +43,7 @@ EXEC = most
- CONFIG_H = config.h
- INCS = $(SLANG_INC)
- ALL_CFLAGS = $(CFLAGS) -Dunix $(INCS)
--EXECLIBS = $(RPATH) $(SLANG_LIB) $(MISCLIBS) -lm
-+EXECLIBS = $(RPATH) $(SLANG_LIB) -lm
- #
- most_O_DEP = $(SRCDIR)/version.h
- UPDATE_VERSION_SCRIPT = $(HOME)/bin/update_changes_version
diff --git a/sys-apps/most/files/most-5.1.0-fix-parallel-build.patch b/sys-apps/most/files/most-5.1.0-fix-parallel-build.patch
new file mode 100644
index 000000000000..0b5e5b2da3f6
--- /dev/null
+++ b/sys-apps/most/files/most-5.1.0-fix-parallel-build.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/795117
+
+Grabbed from NixOS (slyfox submitted this upstream):
+
+Upstream commit c9cfad50a ("src/Makefile.in: Avoid a race condition
+when performing a parallel build")
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -54,6 +54,12 @@ COMPILE_CMD = $(CC) -c $(ALL_CFLAGS) -DMOST_SYSTEM_INITFILE='"$(SYS_INITFILE)"'
+ all: $(EXEC)
+ $(EXEC): $(OBJDIR) $(CONFIG_H) slangversion $(OBJDIR)/$(EXEC)
+ @echo $(EXEC) created in $(OBJDIR)
++
++# C source files include autogenrated "config.h". Make sure
++# it's available before the compilation. Pessimistically assume
++# any source file can depend on "config.h".
++$(OBJS) $(OBJDIR)/chkslang.o: $(CONFIG_H)
++
+ $(OBJDIR)/$(EXEC): $(OBJS)
+ cd $(OBJDIR); $(CC) $(OFILES) -o $(EXEC) $(LDFLAGS) $(EXECLIBS)
+ #
diff --git a/sys-apps/most/metadata.xml b/sys-apps/most/metadata.xml
index 3e927f8d7480..cf737a0a8f1a 100644
--- a/sys-apps/most/metadata.xml
+++ b/sys-apps/most/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>shell-tools@gentoo.org</email>
<name>Gentoo Shell Tools Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">jedsoft/most</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/most/most-5.0.0a-r1.ebuild b/sys-apps/most/most-5.0.0a-r1.ebuild
deleted file mode 100644
index 4a7c1bfcaa53..000000000000
--- a/sys-apps/most/most-5.0.0a-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils
-
-DESCRIPTION="Paging program that displays, one windowful at a time, the contents of a file"
-HOMEPAGE="ftp://space.mit.edu/pub/davis/most"
-SRC_URI="ftp://space.mit.edu/pub/davis/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~mips ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE=""
-
-RDEPEND=">=sys-libs/slang-2.1.3"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-5.0.0a-no-explicit-termcap.patch
- epatch "${FILESDIR}"/${PN}-5.0.0a-donot-hardcode-path.patch
- sed -i -e 's:$(INSTALL) -s:$(INSTALL):' src/Makefile.in || die
- export MAKEOPTS+=" -j1"
-}
-
-src_configure() {
- unset ARCH
- econf
-}
-
-src_install() {
- emake DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" \
- install
-}
diff --git a/sys-apps/most/most-5.1.0.ebuild b/sys-apps/most/most-5.1.0.ebuild
index bcd6abb617c0..991e0d5124af 100644
--- a/sys-apps/most/most-5.1.0.ebuild
+++ b/sys-apps/most/most-5.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -10,7 +10,7 @@ SRC_URI="https://www.jedsoft.org/releases/${PN}/${P}.tar.gz
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 arm ~arm64 ~mips ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE=""
RDEPEND=">=sys-libs/slang-2.1.3"
@@ -18,6 +18,7 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${PN}-5.0.0a-donot-hardcode-path.patch
+ "${FILESDIR}"/${P}-fix-parallel-build.patch
)
src_prepare() {
diff --git a/sys-apps/most/most-5.2.0.ebuild b/sys-apps/most/most-5.2.0.ebuild
new file mode 100644
index 000000000000..d324a0b7bde0
--- /dev/null
+++ b/sys-apps/most/most-5.2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Paging program that displays, one windowful at a time, the contents of a file"
+HOMEPAGE="https://www.jedsoft.org/most/"
+SRC_URI="https://www.jedsoft.org/releases/${PN}/${P}.tar.gz
+ https://www.jedsoft.org/releases/${PN}/old/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~mips ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE=""
+
+RDEPEND=">=sys-libs/slang-2.1.3"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.0.0a-donot-hardcode-path.patch
+)
+
+src_prepare() {
+ default
+ # Do not strip by default
+ sed -e '/\$(INSTALL)/s@ -s@@' -i src/Makefile.in || die
+}
+
+src_configure() {
+ unset ARCH
+ econf
+}
+
+src_install() {
+ emake DESTDIR="${D}" DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" \
+ install
+}
diff --git a/sys-apps/mount-gtk/Manifest b/sys-apps/mount-gtk/Manifest
index 609e3834d0bb..934f228415fb 100644
--- a/sys-apps/mount-gtk/Manifest
+++ b/sys-apps/mount-gtk/Manifest
@@ -1,3 +1 @@
-DIST mount-gtk-1.4.2.tar.gz 232132 BLAKE2B 7c6be675db2fd11ce36501e8b247ddbb5a786b28698c4195c329b310cabc710f6df65f7869ec2bbece2edfd54820b8de88a0a7b20d442fe3d6e27ab5e93689fc SHA512 90fa174238d19bf009f5863e5571030091681038ddbfdc06c7a39f8859b78d9864b398899d66463d0f8a189e484201c7a32753b38898e0f5d55970feb85420ba
-DIST mount-gtk-1.4.4.tar.gz 240716 BLAKE2B 25244bfea0db577c3bfb61abb9acea4cdab41e9cad3173dc472c57ca39b7739e3cfef0501ecb874faf1bd8cd92e0cfd8b48ecc5aadcbe4294309aa692593c376 SHA512 85ed7e5bd92d6ea15a8fd907a0bca4bc7e64861b03e922bc28827108820f1fb4daa87b94a16f468c87d741a8d456f27f755e06b2049f2a95ce4ab00d395763d2
DIST mount-gtk-1.4.5.1.tar.gz 239116 BLAKE2B 94ca6b0b4b9aec8989169c7a52e3e38f65c490e88e07531eb398c06be8c61b4d5ecbcaddabb2286ce7353294991a35e0f3b2d94a7b255817651e6570a6c7be1b SHA512 3cd69b872c278db80b6f91a8f66054c56be964d23f1a4e5a435343de5178c5a64440ba871e6e4b6b76b55bb01e156e8cacc8e4e3c7cfdb4bc55f95680d6dc511
diff --git a/sys-apps/mount-gtk/metadata.xml b/sys-apps/mount-gtk/metadata.xml
index d5655724c0ba..5a4ce841b567 100644
--- a/sys-apps/mount-gtk/metadata.xml
+++ b/sys-apps/mount-gtk/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>desktop-misc@gentoo.org</email>
- <name>Gentoo Desktop Miscellaneous Project</name>
- </maintainer>
- <upstream>
+ <!-- maintainer-needed --> <upstream>
<remote-id type="sourceforge">mount-gtk</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/mount-gtk/mount-gtk-1.4.2.ebuild b/sys-apps/mount-gtk/mount-gtk-1.4.2.ebuild
deleted file mode 100644
index 1746bf782587..000000000000
--- a/sys-apps/mount-gtk/mount-gtk-1.4.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit autotools eutils flag-o-matic
-
-DESCRIPTION="GTK+ based UDisks2 frontend"
-HOMEPAGE="http://mount-gtk.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND=">=dev-libs/glib-2.28
- sys-fs/udisks:2
- x11-libs/c++-gtk-utils:0
- x11-libs/libX11
- x11-libs/libnotify:="
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-DOCS=( AUTHORS BUGS ChangeLog )
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-c++11.patch
- sed -i -e 's:AC_CONFIG_HEADER:&S:' configure.ac || die
- eautoreconf
-}
-
-src_configure() {
- # acinclude.m4 is broken and environment flags override these:
- append-cxxflags -fexceptions -frtti -fsigned-char -fno-check-new -pthread
- econf --docdir=/usr/share/doc/${PF}
-}
diff --git a/sys-apps/mount-gtk/mount-gtk-1.4.4.ebuild b/sys-apps/mount-gtk/mount-gtk-1.4.4.ebuild
deleted file mode 100644
index c8cf9d128bbf..000000000000
--- a/sys-apps/mount-gtk/mount-gtk-1.4.4.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils flag-o-matic
-
-DESCRIPTION="GTK+ based UDisks2 frontend"
-HOMEPAGE="http://mount-gtk.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- >=dev-libs/glib-2.28
- sys-fs/udisks:2
- x11-libs/c++-gtk-utils:0
- x11-libs/libX11
- x11-libs/libnotify:=
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
-
-DOCS=( AUTHORS BUGS ChangeLog )
-PATCHES=(
- "${FILESDIR}"/${PN}-1.4.2-c++11.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- # acinclude.m4 is broken and environment flags override these:
- append-cxxflags -fexceptions -frtti -fsigned-char -fno-check-new -pthread
- econf
-}
diff --git a/sys-apps/mount-gtk/mount-gtk-1.4.5.1.ebuild b/sys-apps/mount-gtk/mount-gtk-1.4.5.1.ebuild
index c8cf9d128bbf..de3f8eebfec8 100644
--- a/sys-apps/mount-gtk/mount-gtk-1.4.5.1.ebuild
+++ b/sys-apps/mount-gtk/mount-gtk-1.4.5.1.ebuild
@@ -1,8 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-inherit autotools eutils flag-o-matic
+EAPI=7
+
+inherit autotools flag-o-matic
DESCRIPTION="GTK+ based UDisks2 frontend"
HOMEPAGE="http://mount-gtk.sourceforge.net/"
@@ -12,6 +13,7 @@ LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
+BDEPEND="virtual/pkgconfig"
RDEPEND="
>=dev-libs/glib-2.28
sys-fs/udisks:2
@@ -19,12 +21,10 @@ RDEPEND="
x11-libs/libX11
x11-libs/libnotify:=
"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
+DEPEND="${RDEPEND}"
DOCS=( AUTHORS BUGS ChangeLog )
+
PATCHES=(
"${FILESDIR}"/${PN}-1.4.2-c++11.patch
)
diff --git a/sys-apps/mount-idmapped/Manifest b/sys-apps/mount-idmapped/Manifest
new file mode 100644
index 000000000000..e548f09d8534
--- /dev/null
+++ b/sys-apps/mount-idmapped/Manifest
@@ -0,0 +1 @@
+DIST mount-idmapped-0.0_pre20220825.gh.tar.gz 15022 BLAKE2B f31077a6dc1f1da1797a4b1b233d74a85d268a768f1bd6691a02f8aecaa38ae669eaa214d5fbf116277206b367a0c02a820847c277aee5bbe4a50ec023fa5dea SHA512 9b1ea2927f60f0c807310da9594b1fc489e64c3e322122fbeaa5d18be46a87787cc5458ecc0c90164ff8fdb80464e65d27942a2d9d280b4b55b6a090685ef874
diff --git a/sys-apps/mount-idmapped/metadata.xml b/sys-apps/mount-idmapped/metadata.xml
new file mode 100644
index 000000000000..ccbe5356da18
--- /dev/null
+++ b/sys-apps/mount-idmapped/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">brauner/mount-idmapped</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/mount-idmapped/mount-idmapped-0.0_pre20220825.ebuild b/sys-apps/mount-idmapped/mount-idmapped-0.0_pre20220825.ebuild
new file mode 100644
index 000000000000..afb4f187870b
--- /dev/null
+++ b/sys-apps/mount-idmapped/mount-idmapped-0.0_pre20220825.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+COMMIT_HASH="71a9e8bae308aed5aa59e02875122a728cdb5dba"
+
+DESCRIPTION="A tiny tool to allow the creation of idmapped mounts"
+HOMEPAGE="https://github.com/brauner/mount-idmapped"
+SRC_URI="https://github.com/brauner/mount-idmapped/archive/${COMMIT_HASH}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT_HASH}"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+ >=sys-kernel/linux-headers-5.12
+"
+
+src_configure() {
+ tc-export CC
+}
+
+src_compile() {
+ "${CC}" ${CFLAGS} ${LDFLAGS} ${PN}.c -o "${PN}" || die
+}
+
+src_install() {
+ local -a DOCS=(
+ README.md
+ )
+ default
+ dobin ${PN}
+}
diff --git a/sys-apps/mouseemu/Manifest b/sys-apps/mouseemu/Manifest
index c8d8163ecf1f..b4049ab21109 100644
--- a/sys-apps/mouseemu/Manifest
+++ b/sys-apps/mouseemu/Manifest
@@ -1,2 +1 @@
-DIST mouseemu-0.12.tar.gz 12019 BLAKE2B b4442cbfaf5c950a1ce690d7faabd1f92b7a2ab08fe5ddc86194c70039d92b5bbc54c33ee5d0a9896235c47fc12c52be1583740488637dc55cce078230c7df80 SHA512 192cb502d93ff6347082769444205597ef18f62b901033a9987f70c80b0f59fa0de2d79dc73ae2b04a90321842035549ff0d9c2f45284a2dc8324a944e85f514
DIST mouseemu-0.15.tar.gz 13958 BLAKE2B 2e27a901309897a208875ab737843ffbe2f733a21daa9bcf0a6c45aea0403898edc4f1aaef7c3fc0243627e09101ec73672b937b4f5fdf3ff25a0b4c6520e30e SHA512 7a6cbb0526a9ca51632d589bf873adb182c02f4a666cf9e94cedba9499d6c6cc1ad2ac7e5a482d22949e64ad69f04f444cb0fa78ea728c5653989d150f62918b
diff --git a/sys-apps/mouseemu/files/mouseemu-0.12-fix.diff b/sys-apps/mouseemu/files/mouseemu-0.12-fix.diff
deleted file mode 100644
index 993f7633e127..000000000000
--- a/sys-apps/mouseemu/files/mouseemu-0.12-fix.diff
+++ /dev/null
@@ -1,48 +0,0 @@
---- mouseemu-0.12.orig/Makefile
-+++ mouseemu-0.12/Makefile
-@@ -1,6 +1,6 @@
- all:
-- gcc -Wall -I/usr/src/linux/include -g -o mouseemu mouseemu.c
-+ gcc -Wall -g -o mouseemu mouseemu.c
- clean:
- rm -f *.o core* mouseemu
- install:
-- cp -f mouseemu /usr/sbin/
-+ cp -f mouseemu $(DESTDIR)/usr/sbin/
---- mouseemu-0.12.orig/mouseemu.conf
-+++ mouseemu-0.12/mouseemu.conf
-@@ -0,0 +1,10 @@
-+# Mouseemu Configuration File
-+# Each uncommented line is read by the mouseemu initscript
-+# (/etc/init.d/mouseemu). If you use mouseemu without the
-+# initscript, source this file in your .bashrc/.cshrc/.zshrc
-+# Keycodes can be found using the "showkey" program.
-+
-+#MID_CLICK="-middle 0 68" # F10 with no modifier
-+#RIGHT_CLICK="-right 0 87" # F11 with no modifier
-+#SCROLL="-scroll 56" # Alt key
-+#TYPING_BLOCK="-typing-block 300" # block mouse for 300ms after a keypress
---- mouseemu-0.12.orig/mouseemu.c
-+++ mouseemu-0.12/mouseemu.c
-@@ -428,7 +428,7 @@
- "\t[-nofork]\n",
- argv[0]);
- printf("Key codes can be found in "
-- "/usr/src/linux/include/linux.h,\n"
-+ "/usr/src/linux/include/linux/input.h,\n"
- "or by using `showkey` in console.\n"
- "Use decimal values. BTN_LEFT(272) is usable as "
- "B2_KEY or B3_KEY.\n\n");
---- mouseemu-0.12.orig/mouseemu.init.gentoo.old
-+++ mouseemu-0.12/mouseemu.init.gentoo
-@@ -13,6 +13,10 @@
-
- start() {
- ebegin "Starting mouseemu"
-+ # Source configuration file /etc/mouseemu.conf
-+ if [ -f /etc/mouseemu.conf ] ; then
-+ . /etc/mouseemu.conf
-+ fi
- start-stop-daemon --start --quiet \
- --exec /usr/sbin/mouseemu -- \
- $MID_CLICK $RIGHT_CLICK $SCROLL $TYPING_BLOCK > /var/log/mouseemu.log
diff --git a/sys-apps/mouseemu/metadata.xml b/sys-apps/mouseemu/metadata.xml
index 5eb05198076b..675be6dd398c 100644
--- a/sys-apps/mouseemu/metadata.xml
+++ b/sys-apps/mouseemu/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
</pkgmetadata>
diff --git a/sys-apps/mouseemu/mouseemu-0.12.ebuild b/sys-apps/mouseemu/mouseemu-0.12.ebuild
deleted file mode 100644
index f7dae0998f94..000000000000
--- a/sys-apps/mouseemu/mouseemu-0.12.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Emulates scrollwheel, right- & left-click for one-button mice/touchpads"
-HOMEPAGE="http://geekounet.org/powerbook/"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* ppc"
-IUSE=""
-
-DEPEND=""
-
-S=${WORKDIR}/${PN}
-PATCHES=( "${FILESDIR}"/${P}-fix.diff )
-
-src_install() {
- dosbin mouseemu
- einstalldocs
-
- newinitd mouseemu.init.gentoo mouseemu
- insinto /etc
- doins mouseemu.conf
-}
-
-pkg_postinst() {
- einfo "For mouseemu to work you need uinput support in your kernel:"
- einfo " CONFIG_INPUT_UINPUT=y"
- einfo "(Device Drivers->Input device support->Misc->User level driver support)"
- einfo "Don't forget to add mouseemu to your default runlevel:"
- einfo " rc-update add mouseemu default"
- einfo "Configuration is in /etc/mouseemu.conf."
-}
diff --git a/sys-apps/mouseemu/mouseemu-0.15.ebuild b/sys-apps/mouseemu/mouseemu-0.15.ebuild
index 2c2c50856f26..5e0d1d31274a 100644
--- a/sys-apps/mouseemu/mouseemu-0.15.ebuild
+++ b/sys-apps/mouseemu/mouseemu-0.15.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -9,7 +9,7 @@ SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="-* ~ppc"
+KEYWORDS="-* ppc"
IUSE=""
DEPEND=""
diff --git a/sys-apps/msr-tools/Manifest b/sys-apps/msr-tools/Manifest
index 0d14aed57117..cc42072c0541 100644
--- a/sys-apps/msr-tools/Manifest
+++ b/sys-apps/msr-tools/Manifest
@@ -1 +1 @@
-DIST msr-tools-1.3.zip 7693 BLAKE2B 9ba92a6b3d71bf89e1b4a62226fa1eb2c53a588900fe52f1fa3a84443a471aab547e46e73826874c251ec32dcbb40ef9b787eef80fd93b65f3bb2c5d0312e310 SHA512 9605eed0b6211d0ecbe48a14d66b5d61965770f249c5c1b15416d4f2e9a37a68ecfde171077c3acc74bb6b951749bcff186acbb4d6d8a3051695d2d97c0e332b
+DIST msr-tools-1.3_p20170320.tar.gz 5709 BLAKE2B 190cf22ce89be24f875eff3ec18849e6e4ed07696450d470909dfed6d7c6bb9abd22a5e0c528001aa72f6bbdcdd049019a05328084c45df87ce782e9a78b3e6f SHA512 50cb03d9e9f819725f48d82f32c789e9f88bb817a8b4e39382e806491bb1f0696d42ed1c6b9b0f43fa3ab1ca1267e2af583baea8cd84bcc63ff1693f7cb67227
diff --git a/sys-apps/msr-tools/metadata.xml b/sys-apps/msr-tools/metadata.xml
index 69570e849328..c806e6e85159 100644
--- a/sys-apps/msr-tools/metadata.xml
+++ b/sys-apps/msr-tools/metadata.xml
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>kensington@gentoo.org</email>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">intel/msr-tools</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/msr-tools/msr-tools-1.3.ebuild b/sys-apps/msr-tools/msr-tools-1.3.ebuild
deleted file mode 100644
index 424b21ea6e63..000000000000
--- a/sys-apps/msr-tools/msr-tools-1.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CONFIG_CHECK="~X86_MSR"
-inherit eutils linux-info toolchain-funcs
-
-DESCRIPTION="Utilities allowing the read and write of CPU model-specific registers (MSR)"
-HOMEPAGE="https://01.org/msr-tools"
-SRC_URI="https://01.org/sites/default/files/downloads/${PN}/${P}.zip"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND="app-arch/unzip"
-
-S=${WORKDIR}/${PN}-master
-
-src_compile() {
- emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
-}
-
-src_install() {
- dosbin rdmsr
- dosbin wrmsr
-}
diff --git a/sys-apps/msr-tools/msr-tools-1.3_p20170320.ebuild b/sys-apps/msr-tools/msr-tools-1.3_p20170320.ebuild
new file mode 100644
index 000000000000..2db19ca797cf
--- /dev/null
+++ b/sys-apps/msr-tools/msr-tools-1.3_p20170320.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CONFIG_CHECK="~X86_CPUID ~X86_MSR"
+inherit autotools linux-info
+
+EGIT_COMMIT="eec71d977a83f8dc76bc3ccc6de5cbd3be378572"
+
+DESCRIPTION="Utilities allowing the read and write of CPU model-specific registers (MSR)"
+HOMEPAGE="https://github.com/intel/msr-tools"
+SRC_URI="https://github.com/intel/msr-tools/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+pkg_postinst() {
+ einfo "Be sure that before using msr-tools utilities Linux kernel modules"
+ einfo "cpuid.ko and msr.ko are loaded."
+}
diff --git a/sys-apps/mtree/Manifest b/sys-apps/mtree/Manifest
deleted file mode 100644
index cc3687bf4cae..000000000000
--- a/sys-apps/mtree/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST mtree-1.0.4.tar.gz 34024 BLAKE2B 932684df56e0403ee3d30e4eee4250824a067cc5467d0f6b1b3ecc46c94c68367dd323221c70e17f08481d93eb0d3278bb6b3f78a930d4ec906a446f99c7a92a SHA512 b0f09d34584315633fd8fcbc6403ba1ec6bade7e5194b59ec168796d23b6f2d4aeda7112ce4b8b5773e2bf50dbda200700637e361214c98f30818a259294ead0
diff --git a/sys-apps/mtree/metadata.xml b/sys-apps/mtree/metadata.xml
deleted file mode 100644
index af4f34ce6e03..000000000000
--- a/sys-apps/mtree/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="github">archiecobbs/mtree-port</remote-id>
-</upstream>
-</pkgmetadata>
diff --git a/sys-apps/mtree/mtree-1.0.4.ebuild b/sys-apps/mtree/mtree-1.0.4.ebuild
deleted file mode 100644
index 151c42b2c734..000000000000
--- a/sys-apps/mtree/mtree-1.0.4.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="Directory hierarchy mapping tool from FreeBSD"
-HOMEPAGE="https://github.com/archiecobbs/mtree-port"
-SRC_URI="https://github.com/archiecobbs/mtree-port/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-S="${WORKDIR}/${PN}-port-${PV}"
-
-src_prepare() {
- default
- # don't install unneeded docs
- sed -i '/doc_DATA=/d' Makefile.am || die
- eautoreconf
-}
-
-src_install() {
- default
-
- # avoid conflict with app-arch/libarchive
- rm "${ED%/}/usr/share/man/man5/mtree.5"
-}
diff --git a/sys-apps/musl-locales/Manifest b/sys-apps/musl-locales/Manifest
new file mode 100644
index 000000000000..a3e2f4919b40
--- /dev/null
+++ b/sys-apps/musl-locales/Manifest
@@ -0,0 +1 @@
+DIST musl-locales-0.1.0.tar.xz 26744 BLAKE2B 9ad696e7006a124f2e633e3f5476b68806659ddeac2e7cbd0ce485087870463256f3dcc11c3d37074cfc863ce8afed1b31bdf7c80435cce182fce95e81bf16b0 SHA512 bc1e581676ef21aa22b85932186189ba5fd0b1701feef4906f42baa296a90fc6886101d02a46a9560b883aad42aa4808ed46c5dddc09d97d1a0f75943a0d456a
diff --git a/sys-apps/musl-locales/metadata.xml b/sys-apps/musl-locales/metadata.xml
new file mode 100644
index 000000000000..6b00211d29ea
--- /dev/null
+++ b/sys-apps/musl-locales/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>musl@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-apps/musl-locales/musl-locales-0.1.0.ebuild b/sys-apps/musl-locales/musl-locales-0.1.0.ebuild
new file mode 100644
index 000000000000..293d88695f01
--- /dev/null
+++ b/sys-apps/musl-locales/musl-locales-0.1.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Locale program for musl libc"
+HOMEPAGE="https://git.adelielinux.org/adelie/musl-locales"
+SRC_URI="https://git.adelielinux.org/adelie/musl-locales/uploads/7e855b894b18ca4bf4ecb11b5bcbc4c1/${P}.tar.xz"
+
+LICENSE="LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="!sys-libs/glibc"
+
+src_configure() {
+ local mycmakeargs=(
+ -DLOCALE_PROFILE=OFF
+ )
+ cmake_src_configure
+}
diff --git a/sys-apps/nawk/Manifest b/sys-apps/nawk/Manifest
index 935d6bbecdec..12b6b9c980e2 100644
--- a/sys-apps/nawk/Manifest
+++ b/sys-apps/nawk/Manifest
@@ -1,2 +1 @@
-DIST nawk-20121220.tar.gz 88970 BLAKE2B e00b9e55bb3b9139c00b8cc0be3f6cea2acc1162ee4326103c054c7270ef4a29b97cdddc9a692cad0773a72a17c399d2da5453939681a5d2456f0b740b6bc2ee SHA512 1dd62e1aa4c8cfad7ce599b10d88e9b450ecae3217cf8327cc0f3ce77d0d0dcb731101b8f211066462d46dc4ef23e20ccd7f70d799d7d48940026abe8fa79d4f
-DIST nawk-20180827.tar.gz 1824076 BLAKE2B 4cfd000842d75d9a713fe73a85eefab33c17f9ecaca4f7f663d1157da411fd9fcf2badbf5180b4a90910445332095fe457e7acf0643621ac8a68da1a246b5e5f SHA512 cd6561149be71e6311aaa69c86b90ee4b29a057e5c2595470ccc8a41c40c653ec31b4bd46d7f58896d012f5fb5952103a76aa463a69e5128cba43d80eedf0b9b
+DIST nawk-20230909.tar.gz 1833391 BLAKE2B 1a8dc9805d144953d6ad5d0539847b1d83661a8e2c0e029e13201ee44f5f6a29cf487c4368c8578d01577b99349968415503fb0c2f7f8f37f4a55fb57cec2b07 SHA512 28687dfbd797fb1f758bd356824110602045b7249a41f47e2cda15ac3d256d57260f1fc74119dc30fbb0e909295bd676a52ec24d3b3cc35e417d46a1749f856f
diff --git a/sys-apps/nawk/files/nawk-20121220-parallel-build.patch b/sys-apps/nawk/files/nawk-20121220-parallel-build.patch
deleted file mode 100644
index ee6421c665ad..000000000000
--- a/sys-apps/nawk/files/nawk-20121220-parallel-build.patch
+++ /dev/null
@@ -1,61 +0,0 @@
---- a/makefile 2013-02-06 10:26:36.452829647 -0700
-+++ b/makefile 2013-02-07 09:12:13.293898947 -0700
-@@ -44,7 +44,7 @@
- LISTING = awk.h proto.h awkgram.y lex.c b.c main.c maketab.c parse.c \
- lib.c run.c tran.c
-
--SHIP = README FIXES $(SOURCE) ytab[ch].bak makefile \
-+SHIP = README FIXES $(SOURCE) makefile \
- awk.1
-
- a.out: ytab.o $(OFILES)
-@@ -52,11 +52,15 @@
-
- $(OFILES): awk.h ytab.h proto.h
-
--ytab.o: awk.h proto.h awkgram.y
-+#Clear dependency for parallel build: (make -j)
-+#YACC generated y.tab.c and y.tab.h at the same time
-+#this needs to be a static pattern rules otherwise multiple target
-+#are mapped onto multiple executions of yacc, which overwrite
-+#each others outputs.
-+y%.c y%.h: awk.h proto.h awkgram.y
- $(YACC) $(YFLAGS) awkgram.y
-- mv y.tab.c ytab.c
-- mv y.tab.h ytab.h
-- $(CC) $(CFLAGS) -c ytab.c
-+ mv y.$*.c y$*.c
-+ mv y.$*.h y$*.h
-
- proctab.c: maketab
- ./maketab >proctab.c
-@@ -64,23 +68,23 @@
- maketab: ytab.h maketab.c
- $(CC) $(CFLAGS) maketab.c -o maketab
-
--bundle:
-+bundle: $(SHIP)
- @cp ytab.h ytabh.bak
- @cp ytab.c ytabc.bak
-- @bundle $(SHIP)
-+ @bundle $(SHIP) ytabh.bak ytabc.bak
-
--tar:
-+tar: $(SHIP)
- @cp ytab.h ytabh.bak
- @cp ytab.c ytabc.bak
- @bundle $(SHIP) >awk.shar
-- @tar cf awk.tar $(SHIP)
-+ @tar cf awk.tar $(SHIP) ytabh.bak ytabc.bak
- gzip awk.tar
- ls -l awk.tar.gz
-- @zip awk.zip $(SHIP)
-+ @zip awk.zip $(SHIP) ytabh.bak ytabc.bak
- ls -l awk.zip
-
- names:
- @echo $(LISTING)
-
- clean:
-- rm -f a.out *.o *.obj maketab maketab.exe *.bb *.bbg *.da *.gcov *.gcno *.gcda # proctab.c
-+ rm -f a.out *.o *.obj maketab maketab.exe *.bb *.bbg *.da *.gcov *.gcno *.gcda ytab.c ytab.h # proctab.c
diff --git a/sys-apps/nawk/files/nawk-20180827-parallel-build.patch b/sys-apps/nawk/files/nawk-20180827-parallel-build.patch
deleted file mode 100644
index c6e3838313a0..000000000000
--- a/sys-apps/nawk/files/nawk-20180827-parallel-build.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From fa4a9fd729a57a314f0aa10897216ce3b60ec653 Mon Sep 17 00:00:00 2001
-From: Christoph Junghans <ottxor@gentoo.org>
-Date: Mon, 10 Feb 2014 22:38:22 -0700
-Subject: [PATCH] fixed parallel build
-
----
- makefile | 11 ++++++++---
- 1 file changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/makefile b/makefile
-index ae80e4d..b3c8f9d 100644
---- a/makefile
-+++ b/makefile
-@@ -54,10 +54,15 @@ a.out: ytab.o $(OFILES)
-
- $(OFILES): awk.h ytab.h proto.h
-
--ytab.c: awk.h proto.h awkgram.y
-+#Clear dependency for parallel build: (make -j)
-+#YACC generated y.tab.c and y.tab.h at the same time
-+#this needs to be a static pattern rules otherwise multiple target
-+#are mapped onto multiple executions of yacc, which overwrite
-+#each others outputs.
-+y%.c y%.h: awk.h proto.h awkgram.y
- $(YACC) $(YFLAGS) awkgram.y
-- mv y.tab.c ytab.c
-- mv y.tab.h ytab.h
-+ mv y.$*.c y$*.c
-+ mv y.$*.h y$*.h
-
- ytab.h: ytab.c
-
---
-2.19.2
-
diff --git a/sys-apps/nawk/files/nawk-20230909-big-endian.patch b/sys-apps/nawk/files/nawk-20230909-big-endian.patch
new file mode 100644
index 000000000000..b39e7b4bee62
--- /dev/null
+++ b/sys-apps/nawk/files/nawk-20230909-big-endian.patch
@@ -0,0 +1,51 @@
+https://github.com/onetrueawk/awk/pull/196
+
+From 75c017ca09a70e14a862f7285cf91bb87ec1f443 Mon Sep 17 00:00:00 2001
+From: "Todd C. Miller" <Todd.Miller@sudo.ws>
+Date: Mon, 18 Sep 2023 17:34:34 -0600
+Subject: [PATCH 1/2] Fix a bad cast to char * that causes incorrect results on
+ big endian.
+
+Now that awk stores chars as int we need to cast the Node * to int *.
+--- a/b.c
++++ b/b.c
+@@ -527,7 +527,7 @@ int first(Node *p) /* collects initially active leaves of p into setvec */
+ setvec[lp] = 1;
+ setcnt++;
+ }
+- if (type(p) == CCL && (*(char *) right(p)) == '\0')
++ if (type(p) == CCL && (*(int *) right(p)) == 0)
+ return(0); /* empty CCL */
+ return(1);
+ case PLUS:
+
+From 0048c96e94c732c6fb2ebe50eeb3450c1672fe0f Mon Sep 17 00:00:00 2001
+From: "Todd C. Miller" <Todd.Miller@sudo.ws>
+Date: Thu, 21 Sep 2023 11:20:16 -0600
+Subject: [PATCH 2/2] Use cclenter("") to construct an empty CCL, not
+ tostring("").
+
+We need to store a UTF-32 string, not a UTF-8 string, for consistency
+with the other CCL code. Fixes an out-of-bounds read of an empty
+CCL.
+--- a/b.c
++++ b/b.c
+@@ -945,7 +945,7 @@ Node *primary(void)
+ rtok = relex();
+ if (rtok == ')') { /* special pleading for () */
+ rtok = relex();
+- return unary(op2(CCL, NIL, (Node *) tostring("")));
++ return unary(op2(CCL, NIL, (Node *) cclenter("")));
+ }
+ np = regexp();
+ if (rtok == ')') {
+@@ -968,7 +968,7 @@ Node *concat(Node *np)
+ return (concat(op2(CAT, np, primary())));
+ case EMPTYRE:
+ rtok = relex();
+- return (concat(op2(CAT, op2(CCL, NIL, (Node *) tostring("")),
++ return (concat(op2(CAT, op2(CCL, NIL, (Node *) cclenter("")),
+ primary())));
+ }
+ return (np);
+
diff --git a/sys-apps/nawk/metadata.xml b/sys-apps/nawk/metadata.xml
index b919229edbc5..c47852def826 100644
--- a/sys-apps/nawk/metadata.xml
+++ b/sys-apps/nawk/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>junghans@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">onetrueawk/awk</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/nawk/nawk-20121220-r3.ebuild b/sys-apps/nawk/nawk-20121220-r3.ebuild
deleted file mode 100644
index 6528c601d6bc..000000000000
--- a/sys-apps/nawk/nawk-20121220-r3.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Brian Kernighan's pattern scanning and processing language"
-HOMEPAGE="https://www.cs.princeton.edu/~bwk/btl.mirror/"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-macos"
-
-RDEPEND="
- app-eselect/eselect-awk"
-
-DEPEND="
- ${RDEPEND}
- virtual/yacc"
-
-S="${WORKDIR}"
-
-PATCHES=( "${FILESDIR}/${P}"-parallel-build.patch )
-
-DOCS=( README FIXES )
-
-src_prepare() {
- default
- rm -v ytab.[hc] || die
-}
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- CPPFLAGS=-DHAS_ISBLANK \
- ALLOC="${LDFLAGS}" \
- YACC=$(type -p yacc) \
- YFLAGS="-d"
-}
-
-src_install() {
- newbin a.out "${PN}"
- sed \
- -e 's/awk/nawk/g' \
- -e 's/AWK/NAWK/g' \
- -e 's/Awk/Nawk/g' \
- awk.1 > "${PN}".1 || die "manpage patch failed"
- doman "${PN}.1"
- einstalldocs
-}
-
-pkg_postinst() {
- eselect awk update ifunset
-}
-
-pkg_postrm() {
- eselect awk update ifunset
-}
diff --git a/sys-apps/nawk/nawk-20180827.ebuild b/sys-apps/nawk/nawk-20180827.ebuild
deleted file mode 100644
index 77b72967a326..000000000000
--- a/sys-apps/nawk/nawk-20180827.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Brian Kernighan's pattern scanning and processing language"
-HOMEPAGE="https://www.cs.princeton.edu/~bwk/btl.mirror/"
-SRC_URI="https://github.com/onetrueawk/awk/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-macos"
-
-RDEPEND="
- app-eselect/eselect-awk"
-
-DEPEND="
- ${RDEPEND}
- virtual/yacc"
-
-S="${WORKDIR}/awk-${PV}"
-
-PATCHES=( "${FILESDIR}/${P}"-parallel-build.patch )
-
-DOCS=( README FIXES )
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- CPPFLAGS=-DHAS_ISBLANK \
- ALLOC="${LDFLAGS}" \
- YACC=$(type -p yacc) \
- YFLAGS="-d"
-}
-
-src_install() {
- newbin a.out "${PN}"
- sed \
- -e 's/awk/nawk/g' \
- -e 's/AWK/NAWK/g' \
- -e 's/Awk/Nawk/g' \
- awk.1 > "${PN}".1 || die "manpage patch failed"
- doman "${PN}.1"
- einstalldocs
-}
-
-pkg_postinst() {
- eselect awk update ifunset
-}
-
-pkg_postrm() {
- eselect awk update ifunset
-}
diff --git a/sys-apps/nawk/nawk-20230909-r1.ebuild b/sys-apps/nawk/nawk-20230909-r1.ebuild
new file mode 100644
index 000000000000..258a55a11a5b
--- /dev/null
+++ b/sys-apps/nawk/nawk-20230909-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Brian Kernighan's pattern scanning and processing language"
+HOMEPAGE="https://www.cs.princeton.edu/~bwk/btl.mirror/"
+SRC_URI="https://github.com/onetrueawk/awk/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/awk-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux"
+
+BDEPEND="
+ app-alternatives/yacc
+"
+
+DOCS=( README.md FIXES )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-20230909-big-endian.patch
+)
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ HOSTCC="$(tc-getBUILD_CC)" \
+ CFLAGS="${CFLAGS}" \
+ CPPFLAGS="${CPPFLAGS} -DHAS_ISBLANK" \
+ ALLOC="${LDFLAGS}" \
+ YACC=$(type -p yacc) \
+ YFLAGS="-d -b awkgram"
+}
+
+src_install() {
+ newbin a.out "${PN}"
+ sed \
+ -e 's/awk/nawk/g' \
+ -e 's/AWK/NAWK/g' \
+ -e 's/Awk/Nawk/g' \
+ awk.1 > "${PN}".1 || die "manpage patch failed"
+ doman "${PN}.1"
+ einstalldocs
+}
+
+pkg_postinst() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk
+ then
+ eselect awk update ifunset
+ fi
+}
+
+pkg_postrm() {
+ if has_version app-admin/eselect && has_version app-eselect/eselect-awk
+ then
+ eselect awk update ifunset
+ fi
+}
diff --git a/sys-apps/net-tools/Manifest b/sys-apps/net-tools/Manifest
index 4a2fce50b87e..60eabc5e7ec7 100644
--- a/sys-apps/net-tools/Manifest
+++ b/sys-apps/net-tools/Manifest
@@ -1,2 +1 @@
-DIST net-tools-1.60_p20161110235919.tar.xz 227552 BLAKE2B 0dba75b7b7345be047bd8618811c6ea43f96f0d7c8a2c67cd03138b8f31dc47a641c7ff1e93fb1ad295423f9b82e3d222178c7c97233d4e3698355fed729f723 SHA512 06c2900305a5b11035bdb9d94e9d0a50c2ca832e14598d00d6907d99a4a3c981169475bbe916805888f9746a7d787829f20e6a4dec283731a2c85a72875b8e01
-DIST net-tools-1.60_p20180626073013.tar.xz 228276 BLAKE2B 1545533abf75cb960896994710a02f0e4f5534232057fa9c80d2ec54af84d068d3337a93e869e8377539584eebf4c4d8175e16f19bc12360946ab908b41b2f2f SHA512 3ea9036c2597e6da3a1d9a61a77bbe0b80c448d42a3cc59469f37255064d9e046b5f331155adac256f9812200342f72624ba1ea27a4ee3696b3c9ad53b6b86eb
+DIST net-tools-2.10.tar.xz 229616 BLAKE2B 0d11a5c12f6447282c65ee74428c1b9f6da9fd6d26ca558813d002fac8a4f03fd25a26231a5f4e45f88d821e9a8281e3be1fea4a832bd09afbc2239634a1c25d SHA512 aa8f631772da6c16b165065fc5929a206504f2dce19e74a4ffc680f09b40f3a9180bd4bbeaac67e0b32693358b01383bae4fbfcb6061180c130e9e0801d536bf
diff --git a/sys-apps/net-tools/files/net-tools-1.60_p20161110235919-fix-building-w-older-linux-headers.patch b/sys-apps/net-tools/files/net-tools-1.60_p20161110235919-fix-building-w-older-linux-headers.patch
deleted file mode 100644
index 5e330ace021c..000000000000
--- a/sys-apps/net-tools/files/net-tools-1.60_p20161110235919-fix-building-w-older-linux-headers.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From ea3935bd7c0f36c86c40e5785326698fa3336c6a Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 14 Nov 2016 22:48:42 -0500
-Subject: [PATCH] iptunnel: fix building w/older linux headers
-
-While linux-4.8+ headers work, older ones are missing includes.
-Dropping netinet/ip.h uncovered that mess, so add linux/ip.h.
-
-URL: https://bugs.gentoo.org/599542
-Reported-by: Conrad Kostecki <ck@bl4ckb0x.de>
----
- iptunnel.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/iptunnel.c b/iptunnel.c
-index 247ae10..d6e47e6 100644
---- a/iptunnel.c
-+++ b/iptunnel.c
-@@ -29,7 +29,12 @@
- #include <arpa/inet.h>
- #include <net/if.h>
- #include <net/if_arp.h>
-+/* We only care about linux/if_tunnel.h. Unfortunately, older Linux headers
-+ * (pre linux-4.8) did not include all the proper headers leading to missing
-+ * structs and types.
-+ */
- #include <linux/types.h>
-+#include <linux/ip.h>
- #include <linux/if_tunnel.h>
-
- #include "config.h"
---
-2.9.0
diff --git a/sys-apps/net-tools/metadata.xml b/sys-apps/net-tools/metadata.xml
index 533583070f46..cde5f2fe4393 100644
--- a/sys-apps/net-tools/metadata.xml
+++ b/sys-apps/net-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -12,6 +12,8 @@
<flag name="slattach">build the slattach tool (for working with old serial ports)</flag>
</use>
<upstream>
+ <remote-id type="cpe">cpe:/a:net-tools_project:net-tools</remote-id>
<remote-id type="sourceforge">net-tools</remote-id>
+ <remote-id type="github">ecki/net-tools</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/net-tools/net-tools-1.60_p20161110235919.ebuild b/sys-apps/net-tools/net-tools-1.60_p20161110235919.ebuild
deleted file mode 100644
index fa92c17cf324..000000000000
--- a/sys-apps/net-tools/net-tools-1.60_p20161110235919.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit flag-o-matic toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.code.sf.net/p/net-tools/code"
- inherit git-r3
-else
- SRC_URI="mirror://gentoo/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-DESCRIPTION="Standard Linux networking tools"
-HOMEPAGE="http://net-tools.sourceforge.net/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="+arp +hostname ipv6 nis nls plipconfig selinux slattach static"
-REQUIRED_USE="nis? ( hostname )"
-
-RDEPEND="selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
- selinux? ( virtual/pkgconfig )
- app-arch/xz-utils"
-if [[ ${PV} == "9999" ]]; then
- DEPEND+=" nls? ( sys-devel/gettext )"
-fi
-RDEPEND+="
- hostname? ( !sys-apps/coreutils[hostname] )
- !<sys-apps/openrc-0.9.9.3"
-
-maint_pkg_create() {
- cd /usr/local/src/net-tools
- #git-update
- local stamp=$(date --date="$(git log -n1 --pretty=format:%ci master)" -u +%Y%m%d%H%M%S)
- local pv="${PV/_p*}_p${stamp}"; pv=${pv/9999/1.60}
- local p="${PN}-${pv}"
- git archive --prefix="${p}/" master | tar xf - -C "${T}"
- pushd "${T}" >/dev/null
- emake -C "${p}/po" dist
- sed -i "/^RELEASE/s:=.*:=${pv}:" */Makefile || die
- tar cf - ${p}/ | xz > ${p}.tar.xz
- popd >/dev/null
-
- du -b "${T}"/*.tar.xz
-}
-
-pkg_setup() { [[ -n ${VAPIER_LOVES_YOU} ]] && maint_pkg_create ; }
-
-set_opt() {
- local opt=$1 ans
- shift
- ans=$("$@" && echo y || echo n)
- einfo "Setting option ${opt} to ${ans}"
- sed -i \
- -e "/^bool.* ${opt} /s:[yn]$:${ans}:" \
- config.in || die
-}
-
-src_prepare() {
- epatch "${FILESDIR}/${P}-fix-building-w-older-linux-headers.patch"
-}
-
-src_configure() {
- # Clear out env vars from the user. #599602
- unset BASEDIR BINDIR SBINDIR
-
- set_opt I18N use nls
- set_opt HAVE_AFINET6 use ipv6
- set_opt HAVE_HWIB has_version '>=sys-kernel/linux-headers-2.6'
- set_opt HAVE_HWTR has_version '<sys-kernel/linux-headers-3.5'
- set_opt HAVE_HWSTRIP has_version '<sys-kernel/linux-headers-3.6'
- set_opt HAVE_SELINUX use selinux
- set_opt HAVE_ARP_TOOLS use arp
- set_opt HAVE_HOSTNAME_TOOLS use hostname
- set_opt HAVE_HOSTNAME_SYMLINKS use nis
- set_opt HAVE_PLIP_TOOLS use plipconfig
- set_opt HAVE_SERIAL_TOOLS use slattach
- if use static ; then
- append-flags -static
- append-ldflags -static
- fi
- tc-export AR CC
- yes "" | ./configure.sh config.in || die
-}
-
-src_install() {
- # We need to use emake by hand to pass ED. #567300
- emake DESTDIR="${ED}" install
- dodoc README THANKS TODO
-}
diff --git a/sys-apps/net-tools/net-tools-1.60_p20180626073013.ebuild b/sys-apps/net-tools/net-tools-1.60_p20180626073013.ebuild
deleted file mode 100644
index dd8298258a8e..000000000000
--- a/sys-apps/net-tools/net-tools-1.60_p20180626073013.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="https://git.code.sf.net/p/net-tools/code"
- inherit git-r3
-else
- SRC_URI="mirror://gentoo/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-DESCRIPTION="Standard Linux networking tools"
-HOMEPAGE="http://net-tools.sourceforge.net/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="+arp +hostname ipv6 nis nls plipconfig selinux slattach static"
-REQUIRED_USE="nis? ( hostname )"
-
-RDEPEND="selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
- selinux? ( virtual/pkgconfig )
- app-arch/xz-utils"
-if [[ ${PV} == "9999" ]]; then
- DEPEND+=" nls? ( sys-devel/gettext )"
-fi
-RDEPEND+="
- hostname? ( !sys-apps/coreutils[hostname] )
- !<sys-apps/openrc-0.9.9.3"
-
-maint_pkg_create() {
- cd /usr/local/src/net-tools
- #git-update
- local stamp=$(date --date="$(git log -n1 --pretty=format:%ci master)" -u +%Y%m%d%H%M%S)
- local pv="${PV/_p*}_p${stamp}"; pv=${pv/9999/1.60}
- local p="${PN}-${pv}"
- git archive --prefix="${p}/" master | tar xf - -C "${T}"
- pushd "${T}" >/dev/null
- emake -C "${p}/po" dist
- sed -i "/^RELEASE/s:=.*:=${pv}:" */Makefile || die
- tar --exclude-vcs cf - ${p}/ | xz > ${p}.tar.xz
- popd >/dev/null
-
- du -b "${T}"/*.tar.xz
-}
-
-pkg_setup() { [[ -n ${VAPIER_LOVES_YOU} ]] && maint_pkg_create ; }
-
-set_opt() {
- local opt=$1 ans
- shift
- ans=$("$@" && echo y || echo n)
- einfo "Setting option ${opt} to ${ans}"
- sed -i \
- -e "/^bool.* ${opt} /s:[yn]$:${ans}:" \
- config.in || die
-}
-
-src_configure() {
- # Clear out env vars from the user. #599602
- unset BASEDIR BINDIR SBINDIR
-
- set_opt I18N use nls
- set_opt HAVE_AFINET6 use ipv6
- set_opt HAVE_HWIB has_version '>=sys-kernel/linux-headers-2.6'
- set_opt HAVE_HWTR has_version '<sys-kernel/linux-headers-3.5'
- set_opt HAVE_HWSTRIP has_version '<sys-kernel/linux-headers-3.6'
- set_opt HAVE_SELINUX use selinux
- set_opt HAVE_ARP_TOOLS use arp
- set_opt HAVE_HOSTNAME_TOOLS use hostname
- set_opt HAVE_HOSTNAME_SYMLINKS use nis
- set_opt HAVE_PLIP_TOOLS use plipconfig
- set_opt HAVE_SERIAL_TOOLS use slattach
- if use static ; then
- append-flags -static
- append-ldflags -static
- fi
- tc-export AR CC
- yes "" | ./configure.sh config.in || die
-}
-
-src_install() {
- # We need to use emake by hand to pass ED. #567300
- emake DESTDIR="${ED}" install
- dodoc README THANKS TODO
-}
diff --git a/sys-apps/net-tools/net-tools-2.10.ebuild b/sys-apps/net-tools/net-tools-2.10.ebuild
new file mode 100644
index 000000000000..8301318d36e7
--- /dev/null
+++ b/sys-apps/net-tools/net-tools-2.10.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit flag-o-matic toolchain-funcs
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://git.code.sf.net/p/net-tools/code"
+ inherit git-r3
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="Standard Linux networking tools"
+HOMEPAGE="https://net-tools.sourceforge.io/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+arp +hostname ipv6 nis nls plipconfig selinux slattach static"
+REQUIRED_USE="nis? ( hostname )"
+
+DEPEND="selinux? ( sys-libs/libselinux )"
+RDEPEND="${DEPEND}
+ hostname? ( !sys-apps/coreutils[hostname] )
+ nis? ( !net-nds/yp-tools )"
+BDEPEND="
+ selinux? ( virtual/pkgconfig )
+ app-arch/xz-utils
+"
+if [[ ${PV} == "9999" ]]; then
+ BDEPEND+=" nls? ( sys-devel/gettext )"
+fi
+
+set_opt() {
+ local opt=$1 ans
+ shift
+ ans=$("$@" && echo y || echo n)
+ einfo "Setting option ${opt} to ${ans}"
+ sed -i \
+ -e "/^bool.* ${opt} /s:[yn]$:${ans}:" \
+ config.in || die
+}
+
+src_configure() {
+ # Clear out env vars from the user. #599602
+ unset BASEDIR BINDIR SBINDIR
+
+ set_opt I18N use nls
+ set_opt HAVE_AFINET6 use ipv6
+ set_opt HAVE_HWIB has_version '>=sys-kernel/linux-headers-2.6'
+ set_opt HAVE_HWTR has_version '<sys-kernel/linux-headers-3.5'
+ set_opt HAVE_HWSTRIP has_version '<sys-kernel/linux-headers-3.6'
+ set_opt HAVE_SELINUX use selinux
+ set_opt HAVE_ARP_TOOLS use arp
+ set_opt HAVE_HOSTNAME_TOOLS use hostname
+ set_opt HAVE_HOSTNAME_SYMLINKS use nis
+ set_opt HAVE_PLIP_TOOLS use plipconfig
+ set_opt HAVE_SERIAL_TOOLS use slattach
+ if use static ; then
+ append-flags -static
+ append-ldflags -static
+ fi
+ tc-export AR CC
+ yes "" | ./configure.sh config.in || die
+}
+
+src_install() {
+ # We need to use emake by hand to pass ED. #567300
+ emake DESTDIR="${ED}" install
+ dodoc README THANKS TODO
+}
diff --git a/sys-apps/net-tools/net-tools-9999.ebuild b/sys-apps/net-tools/net-tools-9999.ebuild
index 1fd92a62a67f..da236abef59a 100644
--- a/sys-apps/net-tools/net-tools-9999.ebuild
+++ b/sys-apps/net-tools/net-tools-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI="7"
inherit flag-o-matic toolchain-funcs
@@ -9,46 +9,29 @@ if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://git.code.sf.net/p/net-tools/code"
inherit git-r3
else
- SRC_URI="mirror://gentoo/${P}.tar.xz"
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="Standard Linux networking tools"
-HOMEPAGE="http://net-tools.sourceforge.net/"
+HOMEPAGE="https://net-tools.sourceforge.io/"
LICENSE="GPL-2"
SLOT="0"
IUSE="+arp +hostname ipv6 nis nls plipconfig selinux slattach static"
REQUIRED_USE="nis? ( hostname )"
-RDEPEND="selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
+DEPEND="selinux? ( sys-libs/libselinux )"
+RDEPEND="${DEPEND}
+ hostname? ( !sys-apps/coreutils[hostname] )
+ nis? ( !net-nds/yp-tools )"
+BDEPEND="
selinux? ( virtual/pkgconfig )
- app-arch/xz-utils"
+ app-arch/xz-utils
+"
if [[ ${PV} == "9999" ]]; then
- DEPEND+=" nls? ( sys-devel/gettext )"
+ BDEPEND+=" nls? ( sys-devel/gettext )"
fi
-RDEPEND+="
- hostname? ( !sys-apps/coreutils[hostname] )
- !<sys-apps/openrc-0.9.9.3"
-
-maint_pkg_create() {
- cd /usr/local/src/net-tools
- #git-update
- local stamp=$(date --date="$(git log -n1 --pretty=format:%ci master)" -u +%Y%m%d%H%M%S)
- local pv="${PV/_p*}_p${stamp}"; pv=${pv/9999/1.60}
- local p="${PN}-${pv}"
- git archive --prefix="${p}/" master | tar xf - -C "${T}"
- pushd "${T}" >/dev/null
- emake -C "${p}/po" dist
- sed -i "/^RELEASE/s:=.*:=${pv}:" */Makefile || die
- tar --exclude-vcs cf - ${p}/ | xz > ${p}.tar.xz
- popd >/dev/null
-
- du -b "${T}"/*.tar.xz
-}
-
-pkg_setup() { [[ -n ${VAPIER_LOVES_YOU} ]] && maint_pkg_create ; }
set_opt() {
local opt=$1 ans
diff --git a/sys-apps/netkit-base/metadata.xml b/sys-apps/netkit-base/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/netkit-base/metadata.xml
+++ b/sys-apps/netkit-base/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/netkit-base/netkit-base-0.17-r9.ebuild b/sys-apps/netkit-base/netkit-base-0.17-r9.ebuild
index 256e04387e20..9c57b935f6ad 100644
--- a/sys-apps/netkit-base/netkit-base-0.17-r9.ebuild
+++ b/sys-apps/netkit-base/netkit-base-0.17-r9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,12 +6,12 @@ EAPI=7
inherit toolchain-funcs
DESCRIPTION="Old-style inetd"
-HOMEPAGE="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/"
-SRC_URI="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/${P}.tar.gz"
+HOMEPAGE="https://wiki.linuxfoundation.org/networking/netkit"
+SRC_URI="http://ftp.linux.org.uk/pub/linux/Networking/netkit/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ~mips ppc ppc64 sparc x86"
+KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
PATCHES=(
"${FILESDIR}"/003_all_netkit-base-0.17-gcc4.patch
diff --git a/sys-apps/netloc/Manifest b/sys-apps/netloc/Manifest
deleted file mode 100644
index 54351879ff15..000000000000
--- a/sys-apps/netloc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST netloc-0.5.tar.gz 474646 BLAKE2B 8d6524b6006e2a9b284092288e2bc97064703602362be469990ac396bc9a08840260db4d371748c65cfb97c294bae3284bfe8ac579f529d93125889d1afc6d17 SHA512 88600c59302cd8e5ed024373a57b27e54b288288091ed0ab3852bee59c255a8b520d38c59d64f6c1eafe307f0d5e61d64c799a92e9695c42ecc1e33dcc2df6ba
diff --git a/sys-apps/netloc/metadata.xml b/sys-apps/netloc/metadata.xml
deleted file mode 100644
index 07151826f89f..000000000000
--- a/sys-apps/netloc/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>cluster@gentoo.org</email>
- <name>Gentoo Cluster Project</name>
-</maintainer>
-<longdescription>
- The Portable Network Locality (netloc) software package provides network topology discovery tools, and an abstract representation of those networks topologies for a range of network types and configurations. It is provided as a companion to the Portable Hardware Locality (hwloc) package. These two software packages work together to provide a comprehensive view of the HPC system topology, spanning from the processor cores in one server to the cores in another – including the complex network(s) in between.
-</longdescription>
-</pkgmetadata>
diff --git a/sys-apps/netloc/netloc-0.5.ebuild b/sys-apps/netloc/netloc-0.5.ebuild
deleted file mode 100644
index 1f68e7c5f381..000000000000
--- a/sys-apps/netloc/netloc-0.5.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib versionator
-
-MY_PV=v$(get_version_component_range 1-2)
-
-DESCRIPTION="Portable Network Locality (netloc)"
-HOMEPAGE="https://www.open-mpi.org/projects/netloc/"
-SRC_URI="https://www.open-mpi.org/software/${PN}/${MY_PV}/downloads/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-DEPEND="
- dev-libs/jansson
- <sys-apps/hwloc-2.0"
-RDEPEND="${DEPEND}"
-
-src_configure() {
- econf \
- --with-jansson="${EPREFIX}/usr" \
- --with-hwloc="${EPREFIX}/usr"
-}
diff --git a/sys-apps/netplug/metadata.xml b/sys-apps/netplug/metadata.xml
index 95aa13f6c5ef..115e9d64a669 100644
--- a/sys-apps/netplug/metadata.xml
+++ b/sys-apps/netplug/metadata.xml
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/netplug/netplug-1.2.9.2-r2.ebuild b/sys-apps/netplug/netplug-1.2.9.2-r2.ebuild
deleted file mode 100644
index 2ff6e599ac24..000000000000
--- a/sys-apps/netplug/netplug-1.2.9.2-r2.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils toolchain-funcs
-
-DESCRIPTION="Brings up/down ethernet ports automatically with cable detection"
-HOMEPAGE="https://www.red-bean.com/~bos/"
-SRC_URI="https://www.red-bean.com/~bos/netplug/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm ~mips ppc ppc64 sparc x86"
-IUSE="debug doc"
-
-DEPEND="doc? ( app-text/ghostscript-gpl
- media-gfx/graphviz )"
-RDEPEND=""
-
-PATCHES=(
- # Remove nested functions, #116140
- "${FILESDIR}/${PN}-1.2.9-remove-nest.patch"
-
- # Ignore wireless events
- "${FILESDIR}/${PN}-1.2.9-ignore-wireless.patch"
-
- # Fix DOWNANDOUT problem #599400
- "${FILESDIR}/${P}-downandout.patch"
-)
-
-src_prepare() {
- # Remove debug flags from CFLAGS
- if ! use debug; then
- sed -i -e "s/ -ggdb3//" Makefile || die
- fi
-
- # Remove -O3 and -Werror from CFLAGS
- sed -i -e "s/ -O3//" -e "s/ -Werror//" Makefile || die
-
- default
-}
-
-src_compile() {
- tc-export CC
- emake CC="${CC}"
-
- if use doc; then
- emake -C docs/
- fi
-}
-
-src_install() {
- into /
- dosbin netplugd
- doman man/man8/netplugd.8
-
- dodir /etc/netplug.d
- exeinto /etc/netplug.d
- newexe "${FILESDIR}/netplug-2" netplug
-
- dodir /etc/netplug
- echo "eth*" > "${D}"/etc/netplug/netplugd.conf || die
-
- dodoc ChangeLog NEWS README TODO
-
- if use doc; then
- dodoc docs/state-machine.ps
- fi
-}
diff --git a/sys-apps/netplug/netplug-1.2.9.2-r3.ebuild b/sys-apps/netplug/netplug-1.2.9.2-r3.ebuild
index a452c1ad1c3d..417771fb8e64 100644
--- a/sys-apps/netplug/netplug-1.2.9.2-r3.ebuild
+++ b/sys-apps/netplug/netplug-1.2.9.2-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://www.red-bean.com/~bos/netplug/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="amd64 arm ~arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
IUSE="debug doc"
DEPEND="doc? ( app-text/ghostscript-gpl
diff --git a/sys-apps/newrelic-sysmond/Manifest b/sys-apps/newrelic-sysmond/Manifest
deleted file mode 100644
index e87c8e60c0d2..000000000000
--- a/sys-apps/newrelic-sysmond/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST newrelic-sysmond-1.1.2.124-linux.tar.gz 2177939 BLAKE2B 9b66375e47ab651d68dc28d2a77424c05f97945513c95c1399f308f1b82b9759a0ba2d78bb47879d51fdd32c431afb45e6cdd89a280bef436eefcf9e89d74910 SHA512 beda4b9c3fc089a9cd836790a074f886a65980ee7b471d9e5fb54f56f369ef69172f00661962ae57482f2bffbc84bb27f9484dc01ca7b6a3b5d9a4ad7cf8c4b6
diff --git a/sys-apps/newrelic-sysmond/files/newrelic-sysmond.rc b/sys-apps/newrelic-sysmond/files/newrelic-sysmond.rc
deleted file mode 100644
index 93524da5c95d..000000000000
--- a/sys-apps/newrelic-sysmond/files/newrelic-sysmond.rc
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-depend() {
- use net
-}
-
-start() {
- ebegin "Starting NewRelic System Monitor"
- start-stop-daemon --start \
- --user newrelic \
- --exec /usr/sbin/nrsysmond -- \
- -c /etc/newrelic/nrsysmond.cfg \
- -p /var/run/newrelic/nrsysmond.pid
- eend $?
-}
-
-stop() {
- ebegin "Stopping NewRelic System Monitor"
- start-stop-daemon --stop --pidfile /var/run/newrelic/nrsysmond.pid
- eend $?
-}
diff --git a/sys-apps/newrelic-sysmond/metadata.xml b/sys-apps/newrelic-sysmond/metadata.xml
deleted file mode 100644
index 1b2becffa26c..000000000000
--- a/sys-apps/newrelic-sysmond/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/sys-apps/newrelic-sysmond/newrelic-sysmond-1.1.2.124-r1.ebuild b/sys-apps/newrelic-sysmond/newrelic-sysmond-1.1.2.124-r1.ebuild
deleted file mode 100644
index 6f423204612f..000000000000
--- a/sys-apps/newrelic-sysmond/newrelic-sysmond-1.1.2.124-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit user
-
-DESCRIPTION="NewRelic System Monitor"
-HOMEPAGE="https://www.newrelic.com/"
-SRC_URI="http://download.newrelic.com/server_monitor/archive/${PV}/${P}-linux.tar.gz"
-
-LICENSE="newrelic Apache-2.0 MIT ISC openssl GPL-2"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
-IUSE=""
-RESTRICT="strip"
-
-S="${WORKDIR}/${P}-linux"
-
-pkg_setup() {
- enewgroup newrelic
- enewuser newrelic -1 -1 -1 newrelic
-}
-
-src_install() {
- if [[ "${ARCH}" == "amd64" ]]; then
- NR_ARCH="x64"
- elif [[ "${ARCH}" == "x86" ]]; then
- NR_ARCH="x86"
- else
- die "Unsupported architecture (${ARCH})"
- fi
-
- dosbin "scripts/nrsysmond-config"
- newsbin "daemon/nrsysmond.${NR_ARCH}" "nrsysmond"
- newinitd "${FILESDIR}/newrelic-sysmond.rc" "newrelic-sysmond"
-
- keepdir "/etc/newrelic"
- insinto "/etc/newrelic"
- doins nrsysmond.cfg
-
- keepdir "/var/run/newrelic"
- fowners newrelic.newrelic "/var/run/newrelic"
- fperms 0775 "/var/run/newrelic"
-
- keepdir "/var/log/newrelic"
- fowners newrelic.newrelic "/var/log/newrelic"
- fperms 0775 "/var/log/newrelic"
-
- dodoc INSTALL.txt LICENSE.txt
-}
-
-pkg_postinst() {
- elog "Remember to set your license key via:"
- elog "$ nrsysmond-config --set license_key=\$YOUR_KEY"
-}
diff --git a/sys-apps/noexec/metadata.xml b/sys-apps/noexec/metadata.xml
index 6e9a51f0862e..783734863e4a 100644
--- a/sys-apps/noexec/metadata.xml
+++ b/sys-apps/noexec/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/noexec/noexec-1.1.0-r1.ebuild b/sys-apps/noexec/noexec-1.1.0-r1.ebuild
deleted file mode 100644
index 5e25d33d7981..000000000000
--- a/sys-apps/noexec/noexec-1.1.0-r1.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="a package for preventing processes from using exec system calls"
-HOMEPAGE="http://noexec.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-
-DEPEND="sys-libs/glibc"
diff --git a/sys-apps/noexec/noexec-1.1.0-r2.ebuild b/sys-apps/noexec/noexec-1.1.0-r2.ebuild
new file mode 100644
index 000000000000..ab5153da8055
--- /dev/null
+++ b/sys-apps/noexec/noexec-1.1.0-r2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Package for preventing processes from using exec system calls"
+HOMEPAGE="https://noexec.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+RDEPEND="sys-libs/glibc"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ sed -e "/^#define PRELOAD_LIBRARY_PATH/s|/usr/lib|${EPREFIX}/usr/$(get_libdir)|" \
+ -i src/noexec_macro.h || die
+
+ eautoreconf #874426
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/sys-apps/nosig/metadata.xml b/sys-apps/nosig/metadata.xml
index 523200d9b54d..11c18486599d 100644
--- a/sys-apps/nosig/metadata.xml
+++ b/sys-apps/nosig/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>vapier@gentoo.org</email>
- <description>Primary maintainer</description>
-</maintainer>
+ <maintainer type="person">
+ <name>Mike Frysinger</name>
+ <email>vapier@gentoo.org</email>
+ <description>Primary maintainer</description>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/nvme-cli/Manifest b/sys-apps/nvme-cli/Manifest
index 4544efcbd5df..d7b6f728f912 100644
--- a/sys-apps/nvme-cli/Manifest
+++ b/sys-apps/nvme-cli/Manifest
@@ -1,3 +1,2 @@
-DIST nvme-cli-1.10.1.tar.gz 463826 BLAKE2B d92702e3cb7c761dbf12dbd56dee44248d49ebdb5b57636ff00a74728e14b44caa6f1500ed90e7fa63d4b1f2de28624a70f37e27a060dbc138f303e46e224dcf SHA512 92bef073205b357f4b14ba929b7f261d0c18b343e5e244cefc24521dfc581dec4b941a13dc00f9a3b4d938ccd026c847d58ccfd75f813cc3c4f484f8316269dc
-DIST nvme-cli-1.11.1.tar.gz 478664 BLAKE2B 74c1ffae32da7605afa02fbbf73878477e04669331c8971d4cc596088c42619abac65a1cfe54b62bd62f253328309f8bbd61c232a200816aa1090ebdf3f7ea76 SHA512 467e327f45500d80cebd6e5e55d4e6d3731a754423e71180efa9d4f5e98f0774f7a31393fefc2794250b487446005dad8e7002a27aff1f2b285983d55ec0d0b3
-DIST nvme-cli-1.9.tar.gz 440675 BLAKE2B 19d9f4982e6bf4d37bbced02aadd0f58e496901c1463c96596b289e23c4e5849bfed9a4129447588c9c8104d5b49fd0bf97ee6495907bf022487407f02d7c4ae SHA512 3565b33bc39bde4480bbde5d46d75ea6907c0921884e8f39029b746f8383d3630942e405c61bcc3654bac5646bc86479b4b790e1b823ec83650649621bab6dac
+DIST nvme-cli-2.7.1.gh.tar.gz 902081 BLAKE2B 7d14838f7f0fd6d1ab1cb30041f862fe2db6f40fe72c13cb4ce227831cac6e141ff5cec2924c846f30629188754b0ce0630ad9009d2a490c193da20e8b8a45d1 SHA512 6a9f3574dfd4375e6f7a76ed95f698efb26da5b72a490579caeba9d46c4811ae31650844e0a0e1047dc627158d5ffbdc020112a5059d3195e7eadff902b70b19
+DIST nvme-cli-2.8.gh.tar.gz 910994 BLAKE2B c231fc087219622736bdc400c83d2a320670f247f77b53f0cad20c8117e620703badba7cd9a6f267ba79223be9c0d6710c2be968683f77fe72e45957e0c8b899 SHA512 1be0bed4e1bf8a25229f301c2b00b78d2de4eaf8ff2b815fa75e44dd35ddd7787604152bdf00696130df3281206a734c5f408c3f2127440e05c2e4b1cdbb79d4
diff --git a/sys-apps/nvme-cli/metadata.xml b/sys-apps/nvme-cli/metadata.xml
index f9ed9d1035db..727194bfa429 100644
--- a/sys-apps/nvme-cli/metadata.xml
+++ b/sys-apps/nvme-cli/metadata.xml
@@ -1,13 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zmedico@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="github">linux-nvme/nvme-cli</remote-id>
- </upstream>
- <use>
- <flag name="uuid">UUID support</flag>
- </use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">linux-nvme/nvme-cli</remote-id>
+ </upstream>
+ <use>
+ <flag name="json">Support JSON output via <pkg>dev-libs/json-c</pkg></flag>
+ </use>
</pkgmetadata>
diff --git a/sys-apps/nvme-cli/nvme-cli-1.10.1.ebuild b/sys-apps/nvme-cli/nvme-cli-1.10.1.ebuild
deleted file mode 100644
index e02310e80337..000000000000
--- a/sys-apps/nvme-cli/nvme-cli-1.10.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs udev
-
-DESCRIPTION="NVM-Express user space tooling for Linux"
-HOMEPAGE="https://github.com/linux-nvme/nvme-cli"
-SRC_URI="https://github.com/linux-nvme/nvme-cli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RESTRICT="test"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="+uuid"
-
-RDEPEND="uuid? ( sys-apps/util-linux:= )"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- default
- sed -e 's|^LIBUUID =|LIBUUID ?=|' \
- -e 's|^install-hostparams:$|\0 install-etc|' \
- -i Makefile || die
- sed -e "s|/usr/lib/udev|$(get_udevdir)|" \
- -i nvmf-autoconnect/dracut-conf/70-nvmf-autoconnect.conf || die
-}
-
-src_configure() {
- tc-export CC
- export PREFIX="${EPREFIX}/usr"
- local unitdir="$(systemd_get_systemunitdir)"
- export SYSTEMDDIR="${unitdir%/system}"
- export UDEVDIR="${EPREFIX}$(get_udevdir)"
- MAKEOPTS+=" LIBUUID=$(usex uuid 0 1)"
-}
diff --git a/sys-apps/nvme-cli/nvme-cli-1.11.1.ebuild b/sys-apps/nvme-cli/nvme-cli-1.11.1.ebuild
deleted file mode 100644
index b0a6d9edd317..000000000000
--- a/sys-apps/nvme-cli/nvme-cli-1.11.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs udev
-
-DESCRIPTION="NVM-Express user space tooling for Linux"
-HOMEPAGE="https://github.com/linux-nvme/nvme-cli"
-SRC_URI="https://github.com/linux-nvme/nvme-cli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RESTRICT="test"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="+uuid"
-
-RDEPEND="uuid? ( sys-apps/util-linux:= )"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- default
- sed -e 's|^LIBUUID =|LIBUUID ?=|' \
- -e '/DESTDIROLD/d' \
- -i Makefile || die
-}
-
-src_configure() {
- tc-export CC
- export PREFIX="${EPREFIX}/usr"
- local unitdir="$(systemd_get_systemunitdir)"
- export SYSTEMDDIR="${unitdir%/system}"
- export UDEVDIR="${EPREFIX}$(get_udevdir)"
- MAKEOPTS+=" LIBUUID=$(usex uuid 0 1)"
-}
diff --git a/sys-apps/nvme-cli/nvme-cli-1.9-r3.ebuild b/sys-apps/nvme-cli/nvme-cli-1.9-r3.ebuild
deleted file mode 100644
index c9ca69fcdc95..000000000000
--- a/sys-apps/nvme-cli/nvme-cli-1.9-r3.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs udev
-
-DESCRIPTION="NVM-Express user space tooling for Linux"
-HOMEPAGE="https://github.com/linux-nvme/nvme-cli"
-SRC_URI="https://github.com/linux-nvme/nvme-cli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RESTRICT="test"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ppc64 ~x86"
-IUSE="+uuid"
-
-RDEPEND="uuid? ( sys-apps/util-linux:= )"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- default
- sed -e 's|^LIBUUID =|LIBUUID ?=|' \
- -e 's|^install-hostparams:$|\0 install-etc|' \
- -i Makefile || die
- sed -e "s|/usr/lib/udev|$(get_udevdir)|" \
- -i nvmf-autoconnect/dracut-conf/70-nvmf-autoconnect.conf || die
-}
-
-src_configure() {
- tc-export CC
- export PREFIX="${EPREFIX}/usr"
- local unitdir="$(systemd_get_systemunitdir)"
- export SYSTEMDDIR="${unitdir%/system}"
- export UDEVDIR="${EPREFIX}$(get_udevdir)"
- MAKEOPTS+=" LIBUUID=$(usex uuid 0 1)"
-}
diff --git a/sys-apps/nvme-cli/nvme-cli-2.7.1.ebuild b/sys-apps/nvme-cli/nvme-cli-2.7.1.ebuild
new file mode 100644
index 000000000000..9f5d6f0bb596
--- /dev/null
+++ b/sys-apps/nvme-cli/nvme-cli-2.7.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson systemd udev
+
+DESCRIPTION="NVM-Express user space tooling for Linux"
+HOMEPAGE="https://github.com/linux-nvme/nvme-cli"
+SRC_URI="https://github.com/linux-nvme/nvme-cli/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~loong ppc64 ~riscv ~sparc x86"
+IUSE="+json"
+
+RDEPEND="
+ >=sys-libs/libnvme-1.7:=[json?]
+ json? ( dev-libs/json-c:= )
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dversion-tag="${PV}"
+ -Ddocs=all
+ -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+ -Dsystemddir="$(systemd_get_systemunitdir)"
+ -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
+ $(meson_feature json json-c)
+ )
+ meson_src_configure
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/nvme-cli/nvme-cli-2.8.ebuild b/sys-apps/nvme-cli/nvme-cli-2.8.ebuild
new file mode 100644
index 000000000000..7aa6bac17ecc
--- /dev/null
+++ b/sys-apps/nvme-cli/nvme-cli-2.8.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson systemd udev
+
+DESCRIPTION="NVM-Express user space tooling for Linux"
+HOMEPAGE="https://github.com/linux-nvme/nvme-cli"
+SRC_URI="https://github.com/linux-nvme/nvme-cli/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv ~sparc x86"
+IUSE="+json"
+
+RDEPEND="
+ >=sys-libs/libnvme-1.8:=[json?]
+ json? ( dev-libs/json-c:= )
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dversion-tag="${PV}"
+ -Ddocs=all
+ -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+ -Dsystemddir="$(systemd_get_systemunitdir)"
+ -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
+ $(meson_feature json json-c)
+ )
+ meson_src_configure
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/onerng/Manifest b/sys-apps/onerng/Manifest
index 44cc68c1624c..27951cc61669 100644
--- a/sys-apps/onerng/Manifest
+++ b/sys-apps/onerng/Manifest
@@ -1 +1 @@
-DIST onerng-3.6.tar.gz 108126 BLAKE2B 717fc2b795aa991fdca28e2032da0a7729c487cb684361799421f806f60ae4cb70e8d29cd72de2eec9bdf38e4bf1d530261fc19bfbee6e95360a7648b8a45858 SHA512 d2f2bceb458e1441c4321526e5477ecb26df9f84e8554df723b97c3f09ad4c04149ac844bb88a182abf5350566cd5762c35137ba3c6b71685671a69ba12ccc58
+DIST onerng-3.7.tar.gz 133016 BLAKE2B 8bae3f51baf3526e68070856d216de9e99064e8a728942fd4b926495ae34f3021ae3c99c8b5e4ea73dacdf8fa870cba67e1d3e94f5a3f0acddef0e48c02111e4 SHA512 6150787fc8415c7aaa13d6e98c3dc72e9160308eb912d97b7c9f59c6d4f5a9612917a7ff34084ba52a80e0aac6c65dd29653dd3bd211bd261fb89273f02be830
diff --git a/sys-apps/onerng/metadata.xml b/sys-apps/onerng/metadata.xml
index 31129996a1e9..1a36474d32b6 100644
--- a/sys-apps/onerng/metadata.xml
+++ b/sys-apps/onerng/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/onerng/onerng-3.6-r3.ebuild b/sys-apps/onerng/onerng-3.6-r3.ebuild
deleted file mode 100644
index e1b2fddab395..000000000000
--- a/sys-apps/onerng/onerng-3.6-r3.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit python-single-r1 udev
-
-MY_P="${P/-/_}"
-
-DESCRIPTION="Software for the Open Hardware Random Number Generator called OneRNG"
-HOMEPAGE="https://www.onerng.info/"
-SRC_URI="https://github.com/OneRNG/onerng.github.io/raw/master/sw/${MY_P}.orig.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( LGPL-2.1 LGPL-3 )"
-SLOT="0"
-KEYWORDS="amd64 x86"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-BDEPEND="virtual/pkgconfig"
-
-DEPEND="virtual/udev"
-
-RDEPEND="
- ${DEPEND}
- ${PYTHON_DEPS}
- app-crypt/gnupg
- $(python_gen_cond_dep 'dev-python/python-gnupg[${PYTHON_MULTI_USEDEP}]')
- sys-apps/rng-tools
- sys-process/at
-"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_postinst() {
- udev_reload
-}
-
-pkg_postrm() {
- udev_reload
-}
diff --git a/sys-apps/onerng/onerng-3.7.ebuild b/sys-apps/onerng/onerng-3.7.ebuild
new file mode 100644
index 000000000000..e39289ba12f0
--- /dev/null
+++ b/sys-apps/onerng/onerng-3.7.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${P/-/_}"
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit python-single-r1 udev
+
+DESCRIPTION="Software for the Open Hardware Random Number Generator called OneRNG"
+HOMEPAGE="https://www.onerng.info/"
+SRC_URI="https://github.com/OneRNG/onerng.github.io/raw/master/sw/${MY_P}.orig.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="|| ( LGPL-2.1 LGPL-3 )"
+SLOT="0"
+KEYWORDS="amd64 x86"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="virtual/pkgconfig"
+
+DEPEND="virtual/udev"
+
+RDEPEND="
+ ${DEPEND}
+ ${PYTHON_DEPS}
+ app-crypt/gnupg
+ $(python_gen_cond_dep 'dev-python/python-gnupg[${PYTHON_USEDEP}]')
+ sys-apps/rng-tools
+ sys-process/at
+"
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/opal-utils/Manifest b/sys-apps/opal-utils/Manifest
index 62678019a010..9e82638e0a77 100644
--- a/sys-apps/opal-utils/Manifest
+++ b/sys-apps/opal-utils/Manifest
@@ -1,3 +1 @@
-DIST opal-utils-6.5.2.tar.gz 2082426 BLAKE2B 20256f13f95da73bcccae670627c9786229e756183fad33ff45ecf2d91f1039c73a0f881b3ac794abad35d51b7bef0b780bd0f8260818c84a262ce7bb0c45b2e SHA512 765e568ad60f5cd7df8868eb3faea841d37c75cb14f33ab30f9419550ea146aeec0d02d622752af1e09a36e744f93be3a56fe6cbc8ac91a94effba9754a24091
-DIST opal-utils-6.6.2.tar.gz 2121790 BLAKE2B 3f1ec80baa112ba0d01fcb9a64b45592da03addd067484ef237204fd712359c04796353f47a32ac943e0e135a580c3c5ad7a5843ee4d5259cde3cbaf1bbefcc4 SHA512 a864e4120ffac4065b89d5da7c959ac20643be42e83f4186a778355f3ea0b36cbd1e02c91b1460b6fa6550fceec9034cce096b89f840b4051d65c7f0ab70dc27
-DIST opal-utils-6.6.3.tar.gz 2121842 BLAKE2B 06ecd73dea54cd8455da32fdd88163c283554e49b380c371705fdba4fef169a1e3022ed4845f33594c0188e11e60f49af1ee0d5062a2e483f0b874e62a567245 SHA512 94af7a389e05627b26a3f79ebdeb55a6bf9e99f530667724c3112df25bc113c9520944a1d8e3847fe7210efa9eed0b8facab95f1f16757ff92038aa7812ce79e
+DIST opal-utils-7.0.tar.gz 5418069 BLAKE2B 86ad4c1a3000753b0bd48f0cf50e9a91eeff8c2a420a6339e4359a5ce6a35954120d7fe7caff64def83bb06e96c602d099fb1fc8e5b580adb67c48a09fb9d7a8 SHA512 72198f0d1bb0d09cb74fe4656421a73ec1a604ec6fa0965bd82e56819a2d41a1a6588f8a8cc7eb507d73ef401f8557901a5305c844fbfc9f27534c7b2e2e9db3
diff --git a/sys-apps/opal-utils/files/devtmpfs-noexec.patch b/sys-apps/opal-utils/files/devtmpfs-noexec.patch
deleted file mode 100644
index 45e97308a1f2..000000000000
--- a/sys-apps/opal-utils/files/devtmpfs-noexec.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From 47005e8d4c9aeda5826c17c4a013cfbda1a3f2de Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Mon, 12 Oct 2020 14:29:17 -0700
-Subject: [PATCH] opal-prd: handle devtmpfs mounted with noexec
-
-On systems using recent versions of systemd /dev (devtmpfs) is mounted with
-noexec option. Such mount prevents mapping HBRT image code region as RWX
-from /dev. This commit, as suggested in github PR linked below, attempts to
-work around the situation by copying HBRT image to anon mmaped memory
-region and sets mprotect rwx on it, allowing opal-prd to sucessfully
-execute the code region.
-
-Having memory region set as RWX is not ideal for security, but fixing that
-is a separate and hard to solve problem. Original code also mmaped region
-as RWX, so this PR does not make things worse at least.
-
-Closes: https://github.com/open-power/skiboot/issues/258
-Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
-Reviewed-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
-[oliver: whitespace fix, add a comment, reflow commit message]
-Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
----
- external/opal-prd/opal-prd.c | 36 ++++++++++++++++++++++++++++++++++--
- 1 file changed, 34 insertions(+), 2 deletions(-)
-
-diff --git a/external/opal-prd/opal-prd.c b/external/opal-prd/opal-prd.c
-index d74d80398d..12269e8ebb 100644
---- a/external/opal-prd/opal-prd.c
-+++ b/external/opal-prd/opal-prd.c
-@@ -973,7 +973,9 @@ static int map_hbrt_file(struct opal_prd_ctx *ctx, const char *name)
- static int map_hbrt_physmem(struct opal_prd_ctx *ctx, const char *name)
- {
- struct prd_range *range;
-+ int rc;
- void *buf;
-+ void *ro_buf;
-
- range = find_range(name, 0);
- if (!range) {
-@@ -981,15 +983,45 @@ static int map_hbrt_physmem(struct opal_prd_ctx *ctx, const char *name)
- return -1;
- }
-
-- buf = mmap(NULL, range->size, PROT_READ | PROT_WRITE | PROT_EXEC,
-+ ro_buf = mmap(NULL, range->size, PROT_READ,
- MAP_PRIVATE, ctx->fd, range->physaddr);
-- if (buf == MAP_FAILED) {
-+ if (ro_buf == MAP_FAILED) {
- pr_log(LOG_ERR, "IMAGE: mmap(range:%s, "
- "phys:0x%016lx, size:0x%016lx) failed: %m",
- name, range->physaddr, range->size);
- return -1;
- }
-
-+ buf = mmap(NULL, range->size, PROT_READ | PROT_WRITE,
-+ MAP_SHARED | MAP_ANONYMOUS, -1 , 0);
-+ if (buf == MAP_FAILED) {
-+ pr_log(LOG_ERR, "IMAGE: anon mmap(size:0x%016lx) failed: %m",
-+ range->size);
-+ return -1;
-+ }
-+
-+ memcpy(buf, ro_buf, range->size);
-+
-+ rc = munmap(ro_buf, range->size);
-+ if (rc < 0) {
-+ pr_log(LOG_ERR, "IMAGE: munmap("
-+ "phys:0x%016lx, size:0x%016lx) failed: %m",
-+ range->physaddr, range->size);
-+ return -1;
-+ }
-+
-+ /*
-+ * FIXME: We shouldn't be mapping the memory as RWX, but HBRT appears to
-+ * require the ability to write into the image at runtime.
-+ */
-+ rc = mprotect(buf, range->size, PROT_READ | PROT_WRITE | PROT_EXEC);
-+ if (rc < 0) {
-+ pr_log(LOG_ERR, "IMAGE: mprotect(phys:%p, "
-+ "size:0x%016lx, rwx) failed: %m",
-+ buf, range->size);
-+ return -1;
-+ }
-+
- ctx->code_addr = buf;
- ctx->code_size = range->size;
- return 0;
diff --git a/sys-apps/opal-utils/metadata.xml b/sys-apps/opal-utils/metadata.xml
index c57559ef7071..6629eda710f9 100644
--- a/sys-apps/opal-utils/metadata.xml
+++ b/sys-apps/opal-utils/metadata.xml
@@ -1,13 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
- </maintainer>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
<longdescription lang="en">
This package contains utility programs for OpenPower systems:
diff --git a/sys-apps/opal-utils/opal-utils-6.5.2.ebuild b/sys-apps/opal-utils/opal-utils-6.5.2.ebuild
deleted file mode 100644
index 805fc46be850..000000000000
--- a/sys-apps/opal-utils/opal-utils-6.5.2.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit linux-info python-any-r1 systemd toolchain-funcs
-
-DESCRIPTION="OPAL firmware utilities"
-HOMEPAGE="https://github.com/open-power/skiboot"
-SRC_URI="https://github.com/open-power/skiboot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="ppc64"
-IUSE="doc"
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-BDEPEND="doc? (
- $(python_gen_any_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- dev-python/recommonmark[${PYTHON_USEDEP}]
- ')
-)"
-
-CONFIG_CHECK="~MTD_POWERNV_FLASH ~OPAL_PRD ~PPC_DT_CPU_FTRS ~SCOM_DEBUGFS"
-ERROR_MTD_POWERND_FLASH="CONFIG_MTD_POWERND_FLASH is required to use pflash and opal-gard"
-ERROR_OPAL_PRD="CONFIG_OPAL_PRD is required to run opal-prd daemon"
-ERROR_SCOM_DEBUGFS="CONFIG_SCOM_DEBUGFS is required to use xscom-utils"
-
-S="${WORKDIR}/skiboot-${PV}"
-
-PATCHES=( "${FILESDIR}/flags.patch" )
-
-python_check_deps() {
- has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
- has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- linux-info_pkg_setup
- use doc && python-any-r1_pkg_setup
-}
-
-src_configure() {
- tc-export CC LD
- export OPAL_PRD_VERSION="${PV}"
- export GARD_VERSION="${PV}"
- export PFLASH_VERSION="${PV}"
- export XSCOM_VERSION="${PV}"
-}
-
-src_compile() {
- emake V=1 -C external/opal-prd
- emake V=1 -C external/gard
- emake V=1 -C external/pflash
- emake V=1 -C external/xscom-utils
-
- use doc && emake V=1 -C doc html
-}
-
-src_install() {
- emake -C external/opal-prd DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/gard DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/pflash DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/xscom-utils DESTDIR="${D}" prefix="${EPREFIX}/usr" install
-
- newinitd "${FILESDIR}"/opal-prd.initd opal-prd
- newconfd "${FILESDIR}"/opal-prd.confd opal-prd
-
- systemd_dounit external/opal-prd/opal-prd.service
-
- if use doc; then
- rm -r doc/_build/html/_sources || die
- local HTML_DOCS=( doc/_build/html/. )
- fi
- einstalldocs
-}
-
-pkg_postinst() {
- if systemd_is_booted || has_version sys-apps/systemd; then
- echo
- ewarn "With systemd opal-prd.service will fail to start"
- ewarn "with 'mmap failed: Operation not permitted' error"
- ewarn "if /dev filesystem is mounted with 'noexec' option"
- ewarn "see https://github.com/open-power/skiboot/issues/258"
- echo
- fi
-}
diff --git a/sys-apps/opal-utils/opal-utils-6.6.2.ebuild b/sys-apps/opal-utils/opal-utils-6.6.2.ebuild
deleted file mode 100644
index c683ec843d82..000000000000
--- a/sys-apps/opal-utils/opal-utils-6.6.2.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info python-any-r1 systemd toolchain-funcs
-
-DESCRIPTION="OPAL firmware utilities"
-HOMEPAGE="https://github.com/open-power/skiboot"
-SRC_URI="https://github.com/open-power/skiboot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 GPL-2+"
-SLOT="0"
-KEYWORDS="ppc64"
-IUSE="doc"
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-BDEPEND="doc? (
- $(python_gen_any_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- dev-python/recommonmark[${PYTHON_USEDEP}]
- ')
-)"
-
-CONFIG_CHECK="~MTD_POWERNV_FLASH ~OPAL_PRD ~PPC_DT_CPU_FTRS ~SCOM_DEBUGFS"
-ERROR_MTD_POWERND_FLASH="CONFIG_MTD_POWERND_FLASH is required to use pflash and opal-gard"
-ERROR_OPAL_PRD="CONFIG_OPAL_PRD is required to run opal-prd daemon"
-ERROR_SCOM_DEBUGFS="CONFIG_SCOM_DEBUGFS is required to use xscom-utils"
-
-S="${WORKDIR}/skiboot-${PV}"
-
-PATCHES=( "${FILESDIR}/flags.patch" )
-
-python_check_deps() {
- has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
- has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- linux-info_pkg_setup
- use doc && python-any-r1_pkg_setup
-}
-
-src_configure() {
- tc-export CC LD
- export OPAL_PRD_VERSION="${PV}"
- export GARD_VERSION="${PV}"
- export PFLASH_VERSION="${PV}"
- export XSCOM_VERSION="${PV}"
- export FFSPART_VERSION="${PV}"
-}
-
-src_compile() {
- emake V=1 -C external/opal-prd
- emake V=1 -C external/gard
- emake V=1 -C external/pflash
- emake V=1 -C external/xscom-utils
- emake V=1 -C external/ffspart
-
- use doc && emake V=1 -C doc html
-}
-
-src_install() {
- emake -C external/opal-prd DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/gard DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/pflash DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/xscom-utils DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- dosbin external/ffspart/ffspart
-
- newinitd "${FILESDIR}"/opal-prd.initd opal-prd
- newconfd "${FILESDIR}"/opal-prd.confd opal-prd
-
- systemd_dounit external/opal-prd/opal-prd.service
-
- if use doc; then
- rm -r doc/_build/html/_sources || die
- local HTML_DOCS=( doc/_build/html/. )
- fi
- einstalldocs
-}
-
-src_test() {
- emake V=1 -C external/opal-prd test
- emake V=1 -C external/gard check
- # this test is fragile and fails because of filename path
- rm external/pflash/test/tests/01-info || die
- emake V=1 -C external/pflash check
- emake V=1 -C external/ffspart check
-}
-
-pkg_postinst() {
- if systemd_is_booted || has_version sys-apps/systemd; then
- echo
- ewarn "With systemd opal-prd.service will fail to start"
- ewarn "with 'mmap failed: Operation not permitted' error"
- ewarn "if /dev filesystem is mounted with 'noexec' option"
- ewarn "see https://github.com/open-power/skiboot/issues/258"
- echo
- fi
-}
diff --git a/sys-apps/opal-utils/opal-utils-6.6.3-r1.ebuild b/sys-apps/opal-utils/opal-utils-6.6.3-r1.ebuild
deleted file mode 100644
index 5dca4f59dc1f..000000000000
--- a/sys-apps/opal-utils/opal-utils-6.6.3-r1.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info python-any-r1 systemd toolchain-funcs
-
-DESCRIPTION="OPAL firmware utilities"
-HOMEPAGE="https://github.com/open-power/skiboot"
-SRC_URI="https://github.com/open-power/skiboot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 GPL-2+"
-SLOT="0"
-KEYWORDS="~ppc64"
-IUSE="doc"
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-BDEPEND="doc? (
- $(python_gen_any_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- dev-python/recommonmark[${PYTHON_USEDEP}]
- ')
-)"
-
-CONFIG_CHECK="~MTD_POWERNV_FLASH ~OPAL_PRD ~PPC_DT_CPU_FTRS ~SCOM_DEBUGFS"
-ERROR_MTD_POWERND_FLASH="CONFIG_MTD_POWERND_FLASH is required to use pflash and opal-gard"
-ERROR_OPAL_PRD="CONFIG_OPAL_PRD is required to run opal-prd daemon"
-ERROR_SCOM_DEBUGFS="CONFIG_SCOM_DEBUGFS is required to use xscom-utils"
-
-S="${WORKDIR}/skiboot-${PV}"
-
-PATCHES=(
- "${FILESDIR}/flags.patch"
- "${FILESDIR}/devtmpfs-noexec.patch"
-)
-
-python_check_deps() {
- has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
- has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- linux-info_pkg_setup
- use doc && python-any-r1_pkg_setup
-}
-
-src_configure() {
- tc-export CC LD
- export OPAL_PRD_VERSION="${PV}"
- export GARD_VERSION="${PV}"
- export PFLASH_VERSION="${PV}"
- export XSCOM_VERSION="${PV}"
- export FFSPART_VERSION="${PV}"
-}
-
-src_compile() {
- emake V=1 -C external/opal-prd
- emake V=1 -C external/gard
- emake V=1 -C external/pflash
- emake V=1 -C external/xscom-utils
- emake V=1 -C external/ffspart
-
- use doc && emake V=1 -C doc html
-}
-
-src_install() {
- emake -C external/opal-prd DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/gard DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/pflash DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/xscom-utils DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- dosbin external/ffspart/ffspart
-
- newinitd "${FILESDIR}"/opal-prd.initd opal-prd
- newconfd "${FILESDIR}"/opal-prd.confd opal-prd
-
- systemd_dounit external/opal-prd/opal-prd.service
-
- if use doc; then
- rm -r doc/_build/html/_sources || die
- local HTML_DOCS=( doc/_build/html/. )
- fi
- einstalldocs
-}
-
-src_test() {
- emake V=1 -C external/opal-prd test
- emake V=1 -C external/gard check
- # this test is fragile and fails because of filename path
- rm external/pflash/test/tests/01-info || die
- emake V=1 -C external/pflash check
- emake V=1 -C external/ffspart check
-}
diff --git a/sys-apps/opal-utils/opal-utils-6.6.3.ebuild b/sys-apps/opal-utils/opal-utils-6.6.3.ebuild
deleted file mode 100644
index b7976592cb25..000000000000
--- a/sys-apps/opal-utils/opal-utils-6.6.3.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit linux-info python-any-r1 systemd toolchain-funcs
-
-DESCRIPTION="OPAL firmware utilities"
-HOMEPAGE="https://github.com/open-power/skiboot"
-SRC_URI="https://github.com/open-power/skiboot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 GPL-2+"
-SLOT="0"
-KEYWORDS="~ppc64"
-IUSE="doc"
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-BDEPEND="doc? (
- $(python_gen_any_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- dev-python/recommonmark[${PYTHON_USEDEP}]
- ')
-)"
-
-CONFIG_CHECK="~MTD_POWERNV_FLASH ~OPAL_PRD ~PPC_DT_CPU_FTRS ~SCOM_DEBUGFS"
-ERROR_MTD_POWERND_FLASH="CONFIG_MTD_POWERND_FLASH is required to use pflash and opal-gard"
-ERROR_OPAL_PRD="CONFIG_OPAL_PRD is required to run opal-prd daemon"
-ERROR_SCOM_DEBUGFS="CONFIG_SCOM_DEBUGFS is required to use xscom-utils"
-
-S="${WORKDIR}/skiboot-${PV}"
-
-PATCHES=( "${FILESDIR}/flags.patch" )
-
-python_check_deps() {
- has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
- has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- linux-info_pkg_setup
- use doc && python-any-r1_pkg_setup
-}
-
-src_configure() {
- tc-export CC LD
- export OPAL_PRD_VERSION="${PV}"
- export GARD_VERSION="${PV}"
- export PFLASH_VERSION="${PV}"
- export XSCOM_VERSION="${PV}"
- export FFSPART_VERSION="${PV}"
-}
-
-src_compile() {
- emake V=1 -C external/opal-prd
- emake V=1 -C external/gard
- emake V=1 -C external/pflash
- emake V=1 -C external/xscom-utils
- emake V=1 -C external/ffspart
-
- use doc && emake V=1 -C doc html
-}
-
-src_install() {
- emake -C external/opal-prd DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/gard DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/pflash DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- emake -C external/xscom-utils DESTDIR="${D}" prefix="${EPREFIX}/usr" install
- dosbin external/ffspart/ffspart
-
- newinitd "${FILESDIR}"/opal-prd.initd opal-prd
- newconfd "${FILESDIR}"/opal-prd.confd opal-prd
-
- systemd_dounit external/opal-prd/opal-prd.service
-
- if use doc; then
- rm -r doc/_build/html/_sources || die
- local HTML_DOCS=( doc/_build/html/. )
- fi
- einstalldocs
-}
-
-src_test() {
- emake V=1 -C external/opal-prd test
- emake V=1 -C external/gard check
- # this test is fragile and fails because of filename path
- rm external/pflash/test/tests/01-info || die
- emake V=1 -C external/pflash check
- emake V=1 -C external/ffspart check
-}
-
-pkg_postinst() {
- if systemd_is_booted || has_version sys-apps/systemd; then
- echo
- ewarn "With systemd opal-prd.service will fail to start"
- ewarn "with 'mmap failed: Operation not permitted' error"
- ewarn "if /dev filesystem is mounted with 'noexec' option"
- ewarn "see https://github.com/open-power/skiboot/issues/258"
- echo
- fi
-}
diff --git a/sys-apps/opal-utils/opal-utils-7.0.ebuild b/sys-apps/opal-utils/opal-utils-7.0.ebuild
new file mode 100644
index 000000000000..231e4fdcf567
--- /dev/null
+++ b/sys-apps/opal-utils/opal-utils-7.0.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit linux-info python-single-r1 systemd toolchain-funcs
+
+DESCRIPTION="OPAL firmware utilities"
+HOMEPAGE="https://github.com/open-power/skiboot"
+SRC_URI="https://github.com/open-power/skiboot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 GPL-2+"
+SLOT="0"
+KEYWORDS="ppc64"
+IUSE="doc"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND=""
+RDEPEND="${DEPEND} ${PYTHON_DEPS}"
+
+BDEPEND="doc? ( $(python_gen_cond_dep '
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/recommonmark[${PYTHON_USEDEP}]')
+)"
+
+CONFIG_CHECK="~MTD_POWERNV_FLASH ~OPAL_PRD ~PPC_DT_CPU_FTRS ~SCOM_DEBUGFS"
+ERROR_MTD_POWERND_FLASH="CONFIG_MTD_POWERND_FLASH is required to use pflash and opal-gard"
+ERROR_OPAL_PRD="CONFIG_OPAL_PRD is required to run opal-prd daemon"
+ERROR_SCOM_DEBUGFS="CONFIG_SCOM_DEBUGFS is required to use xscom-utils"
+
+S="${WORKDIR}/skiboot-${PV}"
+
+PATCHES=(
+ "${FILESDIR}/flags.patch"
+)
+
+pkg_setup() {
+ linux-info_pkg_setup
+ python-single-r1_pkg_setup
+}
+
+src_configure() {
+ tc-export CC LD
+ export OPAL_PRD_VERSION="${PV}"
+ export GARD_VERSION="${PV}"
+ export PFLASH_VERSION="${PV}"
+ export XSCOM_VERSION="${PV}"
+ export FFSPART_VERSION="${PV}"
+}
+
+src_compile() {
+ emake V=1 -C external/opal-prd
+ emake V=1 -C external/gard
+ emake V=1 -C external/pflash
+ emake V=1 -C external/xscom-utils
+ emake V=1 -C external/ffspart
+
+ use doc && emake V=1 -C doc html
+}
+
+src_install() {
+ emake -C external/opal-prd DESTDIR="${D}" prefix="${EPREFIX}/usr" install
+ emake -C external/gard DESTDIR="${D}" prefix="${EPREFIX}/usr" install
+ emake -C external/pflash DESTDIR="${D}" prefix="${EPREFIX}/usr" install
+ emake -C external/xscom-utils DESTDIR="${D}" prefix="${EPREFIX}/usr" install
+ dosbin external/ffspart/ffspart
+
+ python_domodule external/pci-scripts/ppc.py
+ python_doscript external/pci-scripts/phberr.py
+
+ newinitd "${FILESDIR}"/opal-prd.initd opal-prd
+ newconfd "${FILESDIR}"/opal-prd.confd opal-prd
+
+ systemd_dounit external/opal-prd/opal-prd.service
+
+ if use doc; then
+ rm -r doc/_build/html/_sources || die
+ local HTML_DOCS=( doc/_build/html/. )
+ fi
+ einstalldocs
+}
+
+src_test() {
+ emake V=1 -C external/opal-prd test
+ emake V=1 -C external/gard check
+
+ # 2 test are fragile and fails because of filename path
+ rm -v external/pflash/test/tests/01-info || die
+ rm -v external/pflash/test/tests/06-miscprint || die
+ emake V=1 -C external/pflash check
+ emake V=1 -C external/ffspart check
+}
diff --git a/sys-apps/openrazer/Manifest b/sys-apps/openrazer/Manifest
new file mode 100644
index 000000000000..04ef4147383d
--- /dev/null
+++ b/sys-apps/openrazer/Manifest
@@ -0,0 +1,2 @@
+DIST openrazer-3.7.0.tar.gz 249201 BLAKE2B fd3d98b1d3c46623392a5cd42c8cafd605a7e2a6ec3d42f1f8f3c27b20fe06a149d55c45615a574957a14b66d20371cc9ddfd551c44659bd3887e53a3ad44570 SHA512 5067510fc22040f7a351556499db85a728863d97b56cdb26ea15adebe062403d2a4927c9bdcd620bddeb3388f1db184c0036dd121495b27ddb0d8d80cc17aafb
+DIST openrazer-3.8.0.tar.gz 250649 BLAKE2B 7266bff9d1614d72b051370aae4cce917adc8d601b788a93eea11db8d11d9c993527aed9b588c5f1c7b248e0e4fa560faf3c095c551bca2a1126ea6b01189154 SHA512 5ec059017591e8942f4c623deb4fa394c4c1d8a0eb14f80491c00976848964c07b4f56bb542f9e5cea84818b296fd05c768feb9eef3d1c9e8e087e5497319fe5
diff --git a/sys-apps/openrazer/metadata.xml b/sys-apps/openrazer/metadata.xml
new file mode 100644
index 000000000000..a3d8bb939e9f
--- /dev/null
+++ b/sys-apps/openrazer/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <use>
+ <flag name="client">Build the OpenRazer daemon client</flag>
+ <flag name="daemon">Build the OpenRazer daemon service</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://github.com/openrazer/openrazer/issues/</bugs-to>
+ <remote-id type="github">openrazer/openrazer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/openrazer/openrazer-3.7.0-r1.ebuild b/sys-apps/openrazer/openrazer-3.7.0-r1.ebuild
new file mode 100644
index 000000000000..878518347eef
--- /dev/null
+++ b/sys-apps/openrazer/openrazer-3.7.0-r1.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit readme.gentoo-r1 systemd udev xdg-utils distutils-r1 linux-mod-r1
+
+DESCRIPTION="Drivers and user-space daemon to control Razer devices on GNU/Linux"
+HOMEPAGE="https://openrazer.github.io/
+ https://github.com/openrazer/openrazer/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="amd64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+IUSE="+client +daemon"
+REQUIRED_USE="
+ client? ( daemon )
+ daemon? ( ${PYTHON_REQUIRED_USE} )
+ test? ( daemon )
+"
+
+RDEPEND="
+ client? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ daemon? (
+ acct-group/plugdev
+ dev-python/daemonize[${PYTHON_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/notify2[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/pyudev[${PYTHON_USEDEP}]
+ dev-python/setproctitle[${PYTHON_USEDEP}]
+ x11-libs/gtk+:3[introspection]
+ x11-misc/xautomation
+ x11-misc/xdotool
+ )
+"
+BDEPEND="
+ ${RDEPEND}
+ virtual/linux-sources
+"
+
+DOCS=( README.md )
+
+DOC_CONTENTS="To successfully use OpenRazer: load desired kernel module
+(razeraccessory, razerkbd, razerkraken and/or razermouse),
+add your user to the \"plugdev\" group and start the OpenRazer daemon.
+To automatically start up the OpenRazer daemon on session login copy
+/usr/share/openrazer/openrazer-daemon.desktop file into Your user's
+~/.config/autostart/ directory."
+
+distutils_enable_tests unittest
+
+python_compile() {
+ cd "${S}/daemon" || die
+
+ distutils_pep517_install "${BUILD_DIR}/install"
+
+ if use client ; then
+ cd "${S}/pylib" || die
+
+ distutils_pep517_install "${BUILD_DIR}/install"
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ python_scriptinto /usr/bin
+ python_newscript daemon/run_openrazer_daemon.py "${PN}-daemon"
+}
+
+src_prepare() {
+ xdg_environment_reset
+
+ if use daemon ; then
+ distutils-r1_src_prepare
+ else
+ default
+ fi
+
+ # Remove bad tests.
+ rm daemon/tests/test_effect_sync.py || die
+}
+
+src_compile() {
+ local -a modargs=(
+ SUBDIRS="${S}/driver"
+ KERNELDIR="${KERNEL_DIR}"
+ )
+ local -a modlist=(
+ {razeraccessory,razerkbd,razerkraken,razermouse}="hid:${S}:driver"
+ )
+ linux-mod-r1_src_compile
+
+ if use daemon ; then
+ distutils-r1_src_compile
+
+ emake -C "${S}/daemon" PREFIX=/usr service
+ fi
+
+ readme.gentoo_create_doc
+}
+
+src_test() {
+ cd daemon/tests || die
+
+ distutils-r1_src_test
+}
+
+src_install() {
+ linux-mod-r1_src_install
+
+ udev_dorules install_files/udev/99-razer.rules
+ exeinto "$(get_udevdir)"
+ doexe install_files/udev/razer_mount
+
+ # Install configuration example so that the daemon does not complain.
+ insinto /usr/share/${PN}
+ newins daemon/resources/razer.conf razer.conf.example
+
+ if use daemon ; then
+ # Python libraries/scripts, "client" also requires USE="daemon"
+ distutils-r1_src_install
+
+ # dbus service
+ insinto /usr/share/dbus-1/services
+ doins daemon/org.razer.service
+
+ # systemd unit
+ systemd_douserunit "daemon/${PN}-daemon.service"
+
+ # xdg autostart example file
+ insinto /usr/share/${PN}
+ doins install_files/desktop/openrazer-daemon.desktop
+
+ # Manpages
+ doman daemon/resources/man/${PN}-daemon.8
+ doman daemon/resources/man/razer.conf.5
+ fi
+}
+
+pkg_postinst() {
+ linux-mod-r1_pkg_postinst
+ udev_reload
+
+ if use daemon ; then
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ fi
+
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ udev_reload
+
+ if use daemon ; then
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ fi
+}
diff --git a/sys-apps/openrazer/openrazer-3.8.0.ebuild b/sys-apps/openrazer/openrazer-3.8.0.ebuild
new file mode 100644
index 000000000000..847563f1745f
--- /dev/null
+++ b/sys-apps/openrazer/openrazer-3.8.0.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit readme.gentoo-r1 systemd udev xdg-utils distutils-r1 linux-mod-r1
+
+DESCRIPTION="Drivers and user-space daemon to control Razer devices on GNU/Linux"
+HOMEPAGE="https://openrazer.github.io/
+ https://github.com/openrazer/openrazer/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+IUSE="+client +daemon"
+REQUIRED_USE="
+ client? ( daemon )
+ daemon? ( ${PYTHON_REQUIRED_USE} )
+ test? ( daemon )
+"
+
+RDEPEND="
+ client? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ daemon? (
+ acct-group/plugdev
+ dev-python/daemonize[${PYTHON_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/notify2[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/pyudev[${PYTHON_USEDEP}]
+ dev-python/setproctitle[${PYTHON_USEDEP}]
+ x11-libs/gtk+:3[introspection]
+ x11-misc/xautomation
+ x11-misc/xdotool
+ )
+"
+BDEPEND="
+ ${RDEPEND}
+ virtual/linux-sources
+"
+
+DOCS=( README.md )
+
+DOC_CONTENTS="To successfully use OpenRazer: load desired kernel module
+(razeraccessory, razerkbd, razerkraken and/or razermouse),
+add your user to the \"plugdev\" group and start the OpenRazer daemon.
+To automatically start up the OpenRazer daemon on session login copy
+/usr/share/openrazer/openrazer-daemon.desktop file into Your user's
+~/.config/autostart/ directory."
+
+distutils_enable_tests unittest
+
+python_compile() {
+ cd "${S}/daemon" || die
+
+ distutils_pep517_install "${BUILD_DIR}/install"
+
+ if use client ; then
+ cd "${S}/pylib" || die
+
+ distutils_pep517_install "${BUILD_DIR}/install"
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ python_scriptinto /usr/bin
+ python_newscript daemon/run_openrazer_daemon.py "${PN}-daemon"
+}
+
+src_prepare() {
+ xdg_environment_reset
+
+ if use daemon ; then
+ distutils-r1_src_prepare
+ else
+ default
+ fi
+
+ # Remove bad tests.
+ rm daemon/tests/test_effect_sync.py || die
+}
+
+src_compile() {
+ local -a modargs=(
+ SUBDIRS="${S}/driver"
+ KERNELDIR="${KERNEL_DIR}"
+ )
+ local -a modlist=(
+ {razeraccessory,razerkbd,razerkraken,razermouse}="hid:${S}:driver"
+ )
+ linux-mod-r1_src_compile
+
+ if use daemon ; then
+ distutils-r1_src_compile
+
+ emake -C "${S}/daemon" PREFIX=/usr service
+ fi
+
+ readme.gentoo_create_doc
+}
+
+src_test() {
+ cd daemon/tests || die
+
+ distutils-r1_src_test
+}
+
+src_install() {
+ linux-mod-r1_src_install
+
+ udev_dorules install_files/udev/99-razer.rules
+ exeinto "$(get_udevdir)"
+ doexe install_files/udev/razer_mount
+
+ # Install configuration example so that the daemon does not complain.
+ insinto /usr/share/${PN}
+ newins daemon/resources/razer.conf razer.conf.example
+
+ if use daemon ; then
+ # Python libraries/scripts, "client" also requires USE="daemon"
+ distutils-r1_src_install
+
+ # dbus service
+ insinto /usr/share/dbus-1/services
+ doins daemon/org.razer.service
+
+ # systemd unit
+ systemd_douserunit "daemon/${PN}-daemon.service"
+
+ # xdg autostart example file
+ insinto /usr/share/${PN}
+ doins install_files/desktop/openrazer-daemon.desktop
+
+ # Manpages
+ doman daemon/resources/man/${PN}-daemon.8
+ doman daemon/resources/man/razer.conf.5
+ fi
+}
+
+pkg_postinst() {
+ linux-mod-r1_pkg_postinst
+ udev_reload
+
+ if use daemon ; then
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ fi
+
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ udev_reload
+
+ if use daemon ; then
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ fi
+}
diff --git a/sys-apps/openrc/Manifest b/sys-apps/openrc/Manifest
index f5e4edb0229c..47d0d2cbfdd8 100644
--- a/sys-apps/openrc/Manifest
+++ b/sys-apps/openrc/Manifest
@@ -1,2 +1,3 @@
-DIST openrc-0.41.2.tar.gz 245302 BLAKE2B ab80dc4f3a7c2c464fe64cdfa7fd31363d5a9d25e90d0239325be05561e5802f22c47013fde82650f5ce08cf99f16f5f479d8617c254647b8c40cec9609d0b6b SHA512 ebfa691cae4704bb3023ea0508a712a45b8c20809828729dfa5292e96f3fd1b309813d80d7c286d0c09680bf5378aba40cfd994f27951f43a3ffb1fd0d69a58b
-DIST openrc-0.42.1.tar.gz 242848 BLAKE2B 381f52552c13afbbcf45456fe71078bacf9182adfd67c97394093986977f5e8262d8a3c64219501745575a5210f525afe9fccee72f7625485a9f575108baa369 SHA512 579b9bfbb151b945a364a2c12b037d2e15991820ca99a07ac18e9bdc50074e67fbf0dcf9865aa4deabe2bf82092e4623be51c9e0b4014384951e0a92ac1e7646
+DIST openrc-0.48.tar.gz 250249 BLAKE2B 4d99d0562e268ad747562ee39cae645ea9221a705fb344969388d2f5f8e0597e62c12bda9dffe0d98eab6437aac0af2c873ad082ec8db01cd61e48b8637f421b SHA512 c67c0a1c87f44a6fde0a7634fcdff0683a821eef5183a4f3e1ef850d04dd7f6c23ec0a72b4a76d9f6c08cb34e362d5e204937caec549eadc638c286c2389c5ee
+DIST openrc-0.53.1.tar.gz 251312 BLAKE2B c44570b489621ac097f057dd25a9a7fd6274fc68c987d548a8c7ab49068bc2025375527c97b82b919ff955d27ce8e4110d6e8f0472abfd83b6911ea9e501198d SHA512 f4e53c28c62b8f184935387d3d8b30dea5953b28d7e50dc00a2b48d84fa3b0c9c19d27a9cdf0b9879b4e4b2a3f91604b893ad5178680e7af0bbbdbd00e108537
+DIST openrc-0.54.tar.gz 250242 BLAKE2B cdc420a3fa1733664eab0c556cb71712ecd1da17895aef6c77f229b3a9f9258b049c5f67d817a808253adb37afd0e65a276c7d89c77a64e3a1fd619f0a68e0ab SHA512 25a7c6b042608627b4cabb98208205c0cffafefcfa62ab4c7a6747a134583c3c6d54adcbb0d837cae6fbae5b082b964b60ebd1762e90efeae23a14bc5f1e348e
diff --git a/sys-apps/openrc/files/openrc-0.42.1-gcc-10.patch b/sys-apps/openrc/files/openrc-0.42.1-gcc-10.patch
deleted file mode 100644
index ce2fd102d247..000000000000
--- a/sys-apps/openrc/files/openrc-0.42.1-gcc-10.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-https://bugs.gentoo.org/705868
-
-From 375ef42393f3dc6edbaa2cb70c79b2366072db38 Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Sun, 19 Jan 2020 15:24:20 +0000
-Subject: [PATCH] src/rc/rc-logger.h: fix build failure against gcc-10
-
-On gcc-10 (and gcc-9 -fno-common) build fails as:
-
-```
-cc -L../librc -L../libeinfo -O2 -g -std=c99 -Wall -Wextra -Wimplicit -Wshadow \
- -Wformat=2 -Wmissing-prototypes -Wmissing-declarations -Wmissing-noreturn \
- -Wmissing-format-attribute -Wnested-externs -Winline -Wwrite-strings \
- -Wcast-align -Wcast-qual -Wpointer-arith -Wdeclaration-after-statement \
- -Wsequence-point -Werror=implicit-function-declaration \
- -Wl,-rpath=/lib -o openrc rc.o rc-logger.o rc-misc.o rc-plugin.o _usage.o -lutil -lrc -leinfo -Wl,-Bdynamic -ldl
-ld: rc-logger.o:/home/slyfox/dev/git/openrc/src/rc/rc-logger.h:16:
- multiple definition of `rc_logger_pid'; rc.o:openrc/src/rc/rc-logger.h:16: first defined here
-ld: rc-logger.o:/home/slyfox/dev/git/openrc/src/rc/rc-logger.h:17:
- multiple definition of `rc_logger_tty'; rc.o:openrc/src/rc/rc-logger.h:17: first defined here
-```
-
-gcc-10 will change the default from -fcommon to fno-common:
-https://gcc.gnu.org/PR85678.
-
-The error also happens if CFLAGS=-fno-common passed explicitly.
-
-This fixes #348.
----
- src/rc/rc-logger.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/src/rc/rc-logger.h
-+++ b/src/rc/rc-logger.h
-@@ -13,8 +13,8 @@
- #ifndef RC_LOGGER_H
- #define RC_LOGGER_H
-
--pid_t rc_logger_pid;
--int rc_logger_tty;
-+extern pid_t rc_logger_pid;
-+extern int rc_logger_tty;
- extern bool rc_in_logger;
-
- void rc_logger_open(const char *runlevel);
---
-2.25.2
-
diff --git a/sys-apps/openrc/metadata.xml b/sys-apps/openrc/metadata.xml
index e9c26481f89a..7a15688d5ece 100644
--- a/sys-apps/openrc/metadata.xml
+++ b/sys-apps/openrc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>openrc@gentoo.org</email>
@@ -11,7 +11,11 @@
</flag>
<flag name="netifrc">enable Gentoo's network stack (net.* scripts)</flag>
<flag name="newnet">enable the new network stack (experimental)</flag>
+ <flag name="s6">install s6-linux-init</flag>
<flag name="sysv-utils">Install sysvinit compatibility scripts for halt, init, poweroff, reboot and shutdown</flag>
+ <flag name="sysvinit">
+ control the dependency on sysvinit (experimental)
+ </flag>
</use>
<upstream>
<remote-id type="github">openrc/openrc</remote-id>
diff --git a/sys-apps/openrc/openrc-0.41.2.ebuild b/sys-apps/openrc/openrc-0.41.2.ebuild
deleted file mode 100644
index 63a8bbbd49d5..000000000000
--- a/sys-apps/openrc/openrc-0.41.2.ebuild
+++ /dev/null
@@ -1,192 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic pam toolchain-funcs usr-ldscript
-
-DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
-HOMEPAGE="https://github.com/openrc/openrc/"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="audit bash debug ncurses pam newnet prefix +netifrc selinux static-libs
- unicode"
-
-COMMON_DEPEND="
- ncurses? ( sys-libs/ncurses:0= )
- pam? (
- sys-auth/pambase
- sys-libs/pam
- )
- audit? ( sys-process/audit )
- sys-process/psmisc
- !<sys-process/procps-3.3.9-r2
- selinux? (
- sys-apps/policycoreutils
- >=sys-libs/libselinux-2.6
- )
- !<sys-apps/baselayout-2.1-r1
- !<sys-fs/udev-init-scripts-27"
-DEPEND="${COMMON_DEPEND}
- virtual/os-headers
- ncurses? ( virtual/pkgconfig )"
-RDEPEND="${COMMON_DEPEND}
- bash? ( app-shells/bash )
- !prefix? (
- >=sys-apps/sysvinit-2.86-r6[selinux?]
- virtual/tmpfiles
- )
- selinux? (
- >=sec-policy/selinux-base-policy-2.20170204-r4
- >=sec-policy/selinux-openrc-2.20170204-r4
- )
- !<app-shells/gentoo-bashcomp-20180302
- !<app-shells/gentoo-zsh-completions-20180228
-"
-
-PDEPEND="netifrc? ( net-misc/netifrc )"
-
-src_prepare() {
- default
- if [[ ${PV} == "9999" ]] ; then
- local ver="git-${EGIT_VERSION:0:6}"
- sed -i "/^GITVER[[:space:]]*=/s:=.*:=${ver}:" mk/gitver.mk || die
- fi
-}
-
-src_compile() {
- unset LIBDIR #266688
-
- MAKE_ARGS="${MAKE_ARGS}
- LIBNAME=$(get_libdir)
- LIBEXECDIR=${EPREFIX}/lib/rc
- MKBASHCOMP=yes
- MKNET=$(usex newnet)
- MKSELINUX=$(usex selinux)
- MKAUDIT=$(usex audit)
- MKPAM=$(usev pam)
- MKSTATICLIBS=$(usex static-libs)
- MKZSHCOMP=yes
- SH=$(usex bash /bin/bash /bin/sh)"
-
- local brand="Unknown"
- MAKE_ARGS="${MAKE_ARGS} OS=Linux"
- brand="Linux"
- export BRANDING="Gentoo ${brand}"
- use prefix && MAKE_ARGS="${MAKE_ARGS} MKPREFIX=yes PREFIX=${EPREFIX}"
- export DEBUG=$(usev debug)
- export MKTERMCAP=$(usev ncurses)
-
- tc-export CC AR RANLIB
- emake ${MAKE_ARGS}
-}
-
-# set_config <file> <option name> <yes value> <no value> test
-# a value of "#" will just comment out the option
-set_config() {
- local file="${ED}/$1" var=$2 val com
- eval "${@:5}" && val=$3 || val=$4
- [[ ${val} == "#" ]] && com="#" && val='\2'
- sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
-}
-
-set_config_yes_no() {
- set_config "$1" "$2" YES NO "${@:3}"
-}
-
-src_install() {
- emake ${MAKE_ARGS} DESTDIR="${D}" install
-
- # move the shared libs back to /usr so ldscript can install
- # more of a minimal set of files
- # disabled for now due to #270646
- #mv "${ED}"/$(get_libdir)/lib{einfo,rc}* "${ED}"/usr/$(get_libdir)/ || die
- #gen_usr_ldscript -a einfo rc
- gen_usr_ldscript libeinfo.so
- gen_usr_ldscript librc.so
-
- keepdir /lib/rc/tmp
-
- # Setup unicode defaults for silly unicode users
- set_config_yes_no /etc/rc.conf unicode use unicode
-
- # Cater to the norm
- set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
-
- # On HPPA, do not run consolefont by default (bug #222889)
- if use hppa; then
- rm -f "${ED}"/etc/runlevels/boot/consolefont
- fi
-
- # Support for logfile rotation
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/openrc.logrotate openrc
-
- # install gentoo pam.d files
- newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
- newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
-
- # install documentation
- dodoc ChangeLog *.md
- if use newnet; then
- dodoc README.newnet
- fi
-}
-
-pkg_preinst() {
- # avoid default thrashing in conf.d files when possible #295406
- if [[ -e "${EROOT}"etc/conf.d/hostname ]] ; then
- (
- unset hostname HOSTNAME
- source "${EROOT}"etc/conf.d/hostname
- : ${hostname:=${HOSTNAME}}
- [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
- )
- fi
-
- # set default interactive shell to sulogin if it exists
- set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
- return 0
-}
-
-pkg_postinst() {
- if use hppa; then
- elog "Setting the console font does not work on all HPPA consoles."
- elog "You can still enable it by running:"
- elog "# rc-update add consolefont boot"
- fi
-
- # Added for 0.35.
- if [[ ! -h "${EROOT}"/lib ]]; then
- if [[ -d "${EROOT}$(get_libdir)"/rc ]]; then
- cp -RPp "${EROOT}$(get_libdir)/rc" "${EROOT}"lib
- fi
- fi
-
- if ! use newnet && ! use netifrc; then
- ewarn "You have emerged OpenRc without network support. This"
- ewarn "means you need to SET UP a network manager such as"
- ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
- ewarn "net-misc/NetworkManager, or net-vpn/badvpn."
- ewarn "Or, you have the option of emerging openrc with the newnet"
- ewarn "use flag and configuring /etc/conf.d/network and"
- ewarn "/etc/conf.d/staticroute if you only use static interfaces."
- ewarn
- fi
-
- if use newnet && [ ! -e "${EROOT}"etc/runlevels/boot/network ]; then
- ewarn "Please add the network service to your boot runlevel"
- ewarn "as soon as possible. Not doing so could leave you with a system"
- ewarn "without networking."
- ewarn
- fi
-}
diff --git a/sys-apps/openrc/openrc-0.42.1.ebuild b/sys-apps/openrc/openrc-0.42.1.ebuild
deleted file mode 100644
index 663c940fad47..000000000000
--- a/sys-apps/openrc/openrc-0.42.1.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic pam toolchain-funcs usr-ldscript
-
-DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
-HOMEPAGE="https://github.com/openrc/openrc/"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-fi
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="audit bash debug ncurses pam newnet prefix +netifrc selinux static-libs
- sysv-utils unicode"
-
-COMMON_DEPEND="
- ncurses? ( sys-libs/ncurses:0= )
- pam? (
- sys-auth/pambase
- sys-libs/pam
- )
- audit? ( sys-process/audit )
- sys-process/psmisc
- !<sys-process/procps-3.3.9-r2
- selinux? (
- sys-apps/policycoreutils
- >=sys-libs/libselinux-2.6
- )
- !<sys-apps/baselayout-2.1-r1
- !<sys-fs/udev-init-scripts-27"
-DEPEND="${COMMON_DEPEND}
- virtual/os-headers
- ncurses? ( virtual/pkgconfig )"
-RDEPEND="${COMMON_DEPEND}
- bash? ( app-shells/bash )
- !prefix? (
- sysv-utils? ( !sys-apps/sysvinit )
- !sysv-utils? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
- virtual/tmpfiles
- )
- selinux? (
- >=sec-policy/selinux-base-policy-2.20170204-r4
- >=sec-policy/selinux-openrc-2.20170204-r4
- )
- !<app-shells/gentoo-bashcomp-20180302
- !<app-shells/gentoo-zsh-completions-20180228
-"
-
-PDEPEND="netifrc? ( net-misc/netifrc )"
-
-PATCHES=("${FILESDIR}"/${PN}-0.42.1-gcc-10.patch)
-
-src_prepare() {
- default
- if [[ ${PV} == "9999" ]] ; then
- local ver="git-${EGIT_VERSION:0:6}"
- sed -i "/^GITVER[[:space:]]*=/s:=.*:=${ver}:" mk/gitver.mk || die
- fi
-}
-
-src_compile() {
- unset LIBDIR #266688
-
- MAKE_ARGS="${MAKE_ARGS}
- LIBNAME=$(get_libdir)
- LIBEXECDIR=${EPREFIX}/lib/rc
- MKBASHCOMP=yes
- MKNET=$(usex newnet)
- MKSELINUX=$(usex selinux)
- MKSYSVINIT=$(usex sysv-utils)
- MKAUDIT=$(usex audit)
- MKPAM=$(usev pam)
- MKSTATICLIBS=$(usex static-libs)
- MKZSHCOMP=yes
- SH=$(usex bash /bin/bash /bin/sh)"
-
- local brand="Unknown"
- MAKE_ARGS="${MAKE_ARGS} OS=Linux"
- brand="Linux"
- export BRANDING="Gentoo ${brand}"
- use prefix && MAKE_ARGS="${MAKE_ARGS} MKPREFIX=yes PREFIX=${EPREFIX}"
- export DEBUG=$(usev debug)
- export MKTERMCAP=$(usev ncurses)
-
- tc-export CC AR RANLIB
- emake ${MAKE_ARGS}
-}
-
-# set_config <file> <option name> <yes value> <no value> test
-# a value of "#" will just comment out the option
-set_config() {
- local file="${ED}/$1" var=$2 val com
- eval "${@:5}" && val=$3 || val=$4
- [[ ${val} == "#" ]] && com="#" && val='\2'
- sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
-}
-
-set_config_yes_no() {
- set_config "$1" "$2" YES NO "${@:3}"
-}
-
-src_install() {
- emake ${MAKE_ARGS} DESTDIR="${D}" install
-
- # move the shared libs back to /usr so ldscript can install
- # more of a minimal set of files
- # disabled for now due to #270646
- #mv "${ED}"/$(get_libdir)/lib{einfo,rc}* "${ED}"/usr/$(get_libdir)/ || die
- #gen_usr_ldscript -a einfo rc
- gen_usr_ldscript libeinfo.so
- gen_usr_ldscript librc.so
-
- keepdir /lib/rc/tmp
-
- # Setup unicode defaults for silly unicode users
- set_config_yes_no /etc/rc.conf unicode use unicode
-
- # Cater to the norm
- set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
-
- # On HPPA, do not run consolefont by default (bug #222889)
- if use hppa; then
- rm -f "${ED}"/etc/runlevels/boot/consolefont
- fi
-
- # Support for logfile rotation
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/openrc.logrotate openrc
-
- # install gentoo pam.d files
- newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
- newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
-
- # install documentation
- dodoc ChangeLog *.md
- if use newnet; then
- dodoc README.newnet
- fi
-}
-
-pkg_preinst() {
- # avoid default thrashing in conf.d files when possible #295406
- if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
- (
- unset hostname HOSTNAME
- source "${EROOT}"/etc/conf.d/hostname
- : ${hostname:=${HOSTNAME}}
- [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
- )
- fi
-
- # set default interactive shell to sulogin if it exists
- set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
- return 0
-}
-
-pkg_postinst() {
- if use hppa; then
- elog "Setting the console font does not work on all HPPA consoles."
- elog "You can still enable it by running:"
- elog "# rc-update add consolefont boot"
- fi
-
- # Added for 0.35.
- if [[ ! -h "${EROOT}"/lib ]]; then
- if [[ -d "${EROOT}/$(get_libdir)"/rc ]]; then
- cp -RPp "${EROOT}/$(get_libdir)/rc" "${EROOT}"/lib
- fi
- fi
-
- if ! use newnet && ! use netifrc; then
- ewarn "You have emerged OpenRc without network support. This"
- ewarn "means you need to SET UP a network manager such as"
- ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
- ewarn "net-misc/NetworkManager, or net-vpn/badvpn."
- ewarn "Or, you have the option of emerging openrc with the newnet"
- ewarn "use flag and configuring /etc/conf.d/network and"
- ewarn "/etc/conf.d/staticroute if you only use static interfaces."
- ewarn
- fi
-
- if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
- ewarn "Please add the network service to your boot runlevel"
- ewarn "as soon as possible. Not doing so could leave you with a system"
- ewarn "without networking."
- ewarn
- fi
-}
diff --git a/sys-apps/openrc/openrc-0.48.ebuild b/sys-apps/openrc/openrc-0.48.ebuild
new file mode 100644
index 000000000000..f054a2c63923
--- /dev/null
+++ b/sys-apps/openrc/openrc-0.48.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson pam
+
+DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
+HOMEPAGE="https://github.com/openrc/openrc/"
+
+if [[ ${PV} =~ ^9{4,}$ ]]; then
+ EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="audit bash debug ncurses pam newnet +netifrc selinux sysv-utils unicode"
+
+COMMON_DEPEND="
+ ncurses? ( sys-libs/ncurses:0= )
+ pam? ( sys-libs/pam )
+ audit? ( sys-process/audit )
+ sys-process/psmisc
+ selinux? (
+ sys-apps/policycoreutils
+ >=sys-libs/libselinux-2.6
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/os-headers
+ ncurses? ( virtual/pkgconfig )"
+RDEPEND="${COMMON_DEPEND}
+ bash? ( app-shells/bash )
+ !prefix? (
+ sysv-utils? (
+ !sys-apps/systemd[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? (
+ || (
+ >=sys-apps/sysvinit-2.86-r6[selinux?]
+ sys-apps/s6-linux-init[sysv-utils(-)]
+ )
+ )
+ virtual/tmpfiles
+ )
+ selinux? (
+ >=sec-policy/selinux-base-policy-2.20170204-r4
+ >=sec-policy/selinux-openrc-2.20170204-r4
+ )
+"
+
+PDEPEND="netifrc? ( net-misc/netifrc )"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature audit)
+ "-Dbranding=\"Gentoo Linux\""
+ $(meson_use newnet)
+ -Dos=Linux
+ $(meson_use pam)
+ $(meson_feature selinux)
+ -Drootprefix="${EPREFIX}"
+ -Dshell=$(usex bash /bin/bash /bin/sh)
+ $(meson_use sysv-utils sysvinit)
+ -Dtermcap=$(usev ncurses)
+ )
+ # export DEBUG=$(usev debug)
+ meson_src_configure
+}
+
+# set_config <file> <option name> <yes value> <no value> test
+# a value of "#" will just comment out the option
+set_config() {
+ local file="${ED}/$1" var=$2 val com
+ eval "${@:5}" && val=$3 || val=$4
+ [[ ${val} == "#" ]] && com="#" && val='\2'
+ sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
+}
+
+set_config_yes_no() {
+ set_config "$1" "$2" YES NO "${@:3}"
+}
+
+src_install() {
+ meson_install
+
+ keepdir /lib/rc/tmp
+
+ # Setup unicode defaults for silly unicode users
+ set_config_yes_no /etc/rc.conf unicode use unicode
+
+ # Cater to the norm
+ set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
+
+ # On HPPA, do not run consolefont by default (bug #222889)
+ if use hppa; then
+ rm -f "${ED}"/etc/runlevels/boot/consolefont
+ fi
+
+ # Support for logfile rotation
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/openrc.logrotate openrc
+
+ if use pam; then
+ # install gentoo pam.d files
+ newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
+ newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
+ fi
+
+ # install documentation
+ dodoc *.md
+}
+
+pkg_preinst() {
+ # avoid default thrashing in conf.d files when possible #295406
+ if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
+ (
+ unset hostname HOSTNAME
+ source "${EROOT}"/etc/conf.d/hostname
+ : ${hostname:=${HOSTNAME}}
+ [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
+ )
+ fi
+
+ # set default interactive shell to sulogin if it exists
+ set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
+ return 0
+}
+
+pkg_postinst() {
+ if use hppa; then
+ elog "Setting the console font does not work on all HPPA consoles."
+ elog "You can still enable it by running:"
+ elog "# rc-update add consolefont boot"
+ fi
+
+ if ! use newnet && ! use netifrc; then
+ ewarn "You have emerged OpenRc without network support. This"
+ ewarn "means you need to SET UP a network manager such as"
+ ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
+ ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
+ ewarn "Or, you have the option of emerging openrc with the newnet"
+ ewarn "use flag and configuring /etc/conf.d/network and"
+ ewarn "/etc/conf.d/staticroute if you only use static interfaces."
+ ewarn
+ fi
+
+ if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
+ ewarn "Please add the network service to your boot runlevel"
+ ewarn "as soon as possible. Not doing so could leave you with a system"
+ ewarn "without networking."
+ ewarn
+ fi
+
+ # added for 0.45 to handle seedrng/urandom switching (2022-06-07)
+ for v in ${REPLACING_VERSIONS}; do
+ [[ -x $(type rc-update) ]] || continue
+ if ver_test $v -lt 0.45; then
+ if rc-update show boot | grep -q urandom; then
+ rc-update del urandom boot
+ rc-update add seedrng boot
+ fi
+ fi
+ done
+}
diff --git a/sys-apps/openrc/openrc-0.53.1.ebuild b/sys-apps/openrc/openrc-0.53.1.ebuild
new file mode 100644
index 000000000000..6174c431e776
--- /dev/null
+++ b/sys-apps/openrc/openrc-0.53.1.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson pam
+
+DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
+HOMEPAGE="https://github.com/openrc/openrc/"
+
+if [[ ${PV} =~ ^9{4,}$ ]]; then
+ EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="audit bash debug ncurses pam newnet +netifrc selinux s6 +sysvinit sysv-utils unicode"
+
+COMMON_DEPEND="
+ ncurses? ( sys-libs/ncurses:0= )
+ pam? ( sys-libs/pam )
+ audit? ( sys-process/audit )
+ sys-process/psmisc
+ selinux? (
+ sys-apps/policycoreutils
+ >=sys-libs/libselinux-2.6
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/os-headers
+ ncurses? ( virtual/pkgconfig )"
+RDEPEND="${COMMON_DEPEND}
+ bash? ( app-shells/bash )
+ sysv-utils? (
+ !sys-apps/systemd[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? (
+ sysvinit? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
+ s6? ( sys-apps/s6-linux-init[sysv-utils(-)] )
+ )
+ virtual/tmpfiles
+ selinux? (
+ >=sec-policy/selinux-base-policy-2.20170204-r4
+ >=sec-policy/selinux-openrc-2.20170204-r4
+ )
+"
+
+PDEPEND="netifrc? ( net-misc/netifrc )"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature audit)
+ "-Dbranding=\"Gentoo Linux\""
+ $(meson_use newnet)
+ -Dos=Linux
+ $(meson_use pam)
+ $(meson_feature selinux)
+ -Drootprefix="${EPREFIX}"
+ -Dshell=$(usex bash /bin/bash /bin/sh)
+ $(meson_use sysv-utils sysvinit)
+ -Dtermcap=$(usev ncurses)
+ )
+ # export DEBUG=$(usev debug)
+ meson_src_configure
+}
+
+# set_config <file> <option name> <yes value> <no value> test
+# a value of "#" will just comment out the option
+set_config() {
+ local file="${ED}/$1" var=$2 val com
+ eval "${@:5}" && val=$3 || val=$4
+ [[ ${val} == "#" ]] && com="#" && val='\2'
+ sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
+}
+
+set_config_yes_no() {
+ set_config "$1" "$2" YES NO "${@:3}"
+}
+
+src_install() {
+ meson_install
+
+ keepdir /lib/rc/tmp
+
+ # Setup unicode defaults for silly unicode users
+ set_config_yes_no /etc/rc.conf unicode use unicode
+
+ # Cater to the norm
+ set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
+
+ # On HPPA, do not run consolefont by default (bug #222889)
+ if use hppa; then
+ rm -f "${ED}"/etc/runlevels/boot/consolefont
+ fi
+
+ # Support for logfile rotation
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/openrc.logrotate openrc
+
+ if use pam; then
+ # install gentoo pam.d files
+ newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
+ newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
+ fi
+
+ # install documentation
+ dodoc *.md
+}
+
+pkg_preinst() {
+ # avoid default thrashing in conf.d files when possible #295406
+ if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
+ (
+ unset hostname HOSTNAME
+ source "${EROOT}"/etc/conf.d/hostname
+ : ${hostname:=${HOSTNAME}}
+ [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
+ )
+ fi
+
+ # set default interactive shell to sulogin if it exists
+ set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
+ return 0
+}
+
+pkg_postinst() {
+ if use hppa; then
+ elog "Setting the console font does not work on all HPPA consoles."
+ elog "You can still enable it by running:"
+ elog "# rc-update add consolefont boot"
+ fi
+
+ if ! use newnet && ! use netifrc; then
+ ewarn "You have emerged OpenRc without network support. This"
+ ewarn "means you need to SET UP a network manager such as"
+ ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
+ ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
+ ewarn "Or, you have the option of emerging openrc with the newnet"
+ ewarn "use flag and configuring /etc/conf.d/network and"
+ ewarn "/etc/conf.d/staticroute if you only use static interfaces."
+ ewarn
+ fi
+
+ if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
+ ewarn "Please add the network service to your boot runlevel"
+ ewarn "as soon as possible. Not doing so could leave you with a system"
+ ewarn "without networking."
+ ewarn
+ fi
+
+ # added for 0.45 to handle seedrng/urandom switching (2022-06-07)
+ for v in ${REPLACING_VERSIONS}; do
+ [[ -x $(type rc-update) ]] || continue
+ if ver_test $v -lt 0.45; then
+ if rc-update show boot | grep -q urandom; then
+ rc-update del urandom boot
+ rc-update add seedrng boot
+ fi
+ fi
+ done
+}
diff --git a/sys-apps/openrc/openrc-0.54.ebuild b/sys-apps/openrc/openrc-0.54.ebuild
new file mode 100644
index 000000000000..ed8424d562b7
--- /dev/null
+++ b/sys-apps/openrc/openrc-0.54.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson pam
+
+DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
+HOMEPAGE="https://github.com/openrc/openrc/"
+
+if [[ ${PV} =~ ^9{4,}$ ]]; then
+ EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="audit bash debug pam newnet +netifrc selinux s6 +sysvinit sysv-utils unicode"
+
+COMMON_DEPEND="
+ pam? ( sys-libs/pam )
+ audit? ( sys-process/audit )
+ sys-process/psmisc
+ selinux? (
+ sys-apps/policycoreutils
+ >=sys-libs/libselinux-2.6
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/os-headers"
+RDEPEND="${COMMON_DEPEND}
+ bash? ( app-shells/bash )
+ sysv-utils? (
+ !sys-apps/systemd[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? (
+ sysvinit? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
+ s6? ( sys-apps/s6-linux-init[sysv-utils(-)] )
+ )
+ virtual/tmpfiles
+ selinux? (
+ >=sec-policy/selinux-base-policy-2.20170204-r4
+ >=sec-policy/selinux-openrc-2.20170204-r4
+ )
+"
+
+PDEPEND="netifrc? ( net-misc/netifrc )"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature audit)
+ "-Dbranding=\"Gentoo Linux\""
+ $(meson_use newnet)
+ -Dos=Linux
+ $(meson_use pam)
+ $(meson_feature selinux)
+ -Drootprefix="${EPREFIX}"
+ -Dshell=$(usex bash /bin/bash /bin/sh)
+ $(meson_use sysv-utils sysvinit)
+ )
+ # export DEBUG=$(usev debug)
+ meson_src_configure
+}
+
+# set_config <file> <option name> <yes value> <no value> test
+# a value of "#" will just comment out the option
+set_config() {
+ local file="${ED}/$1" var=$2 val com
+ eval "${@:5}" && val=$3 || val=$4
+ [[ ${val} == "#" ]] && com="#" && val='\2'
+ sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
+}
+
+set_config_yes_no() {
+ set_config "$1" "$2" YES NO "${@:3}"
+}
+
+src_install() {
+ meson_install
+
+ keepdir /lib/rc/tmp
+
+ # Setup unicode defaults for silly unicode users
+ set_config_yes_no /etc/rc.conf unicode use unicode
+
+ # Cater to the norm
+ set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
+
+ # On HPPA, do not run consolefont by default (bug #222889)
+ if use hppa; then
+ rm -f "${ED}"/etc/runlevels/boot/consolefont
+ fi
+
+ # Support for logfile rotation
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/openrc.logrotate openrc
+
+ if use pam; then
+ # install gentoo pam.d files
+ newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
+ newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
+ fi
+
+ # install documentation
+ dodoc *.md
+}
+
+pkg_preinst() {
+ # avoid default thrashing in conf.d files when possible #295406
+ if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
+ (
+ unset hostname HOSTNAME
+ source "${EROOT}"/etc/conf.d/hostname
+ : ${hostname:=${HOSTNAME}}
+ [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
+ )
+ fi
+
+ # set default interactive shell to sulogin if it exists
+ set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
+ return 0
+}
+
+pkg_postinst() {
+ if use hppa; then
+ elog "Setting the console font does not work on all HPPA consoles."
+ elog "You can still enable it by running:"
+ elog "# rc-update add consolefont boot"
+ fi
+
+ if ! use newnet && ! use netifrc; then
+ ewarn "You have emerged OpenRc without network support. This"
+ ewarn "means you need to SET UP a network manager such as"
+ ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
+ ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
+ ewarn "Or, you have the option of emerging openrc with the newnet"
+ ewarn "use flag and configuring /etc/conf.d/network and"
+ ewarn "/etc/conf.d/staticroute if you only use static interfaces."
+ ewarn
+ fi
+
+ if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
+ ewarn "Please add the network service to your boot runlevel"
+ ewarn "as soon as possible. Not doing so could leave you with a system"
+ ewarn "without networking."
+ ewarn
+ fi
+
+ # added for 0.45 to handle seedrng/urandom switching (2022-06-07)
+ for v in ${REPLACING_VERSIONS}; do
+ [[ -x $(type rc-update) ]] || continue
+ if ver_test $v -lt 0.45; then
+ if rc-update show boot | grep -q urandom; then
+ rc-update del urandom boot
+ rc-update add seedrng boot
+ fi
+ fi
+ done
+}
diff --git a/sys-apps/openrc/openrc-9999.ebuild b/sys-apps/openrc/openrc-9999.ebuild
index d07f1b872887..931bff079adb 100644
--- a/sys-apps/openrc/openrc-9999.ebuild
+++ b/sys-apps/openrc/openrc-9999.ebuild
@@ -1,95 +1,68 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit flag-o-matic pam toolchain-funcs
+inherit meson pam
DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
HOMEPAGE="https://github.com/openrc/openrc/"
-if [[ ${PV} == "9999" ]]; then
+if [[ ${PV} =~ ^9{4,}$ ]]; then
EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
inherit git-r3
else
- SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
LICENSE="BSD-2"
SLOT="0"
-IUSE="audit bash debug ncurses pam newnet prefix +netifrc selinux sysv-utils
- unicode"
+IUSE="audit bash debug pam newnet +netifrc selinux s6 +sysvinit sysv-utils unicode"
COMMON_DEPEND="
- ncurses? ( sys-libs/ncurses:0= )
- pam? (
- sys-auth/pambase
- sys-libs/pam
- )
+ pam? ( sys-libs/pam )
audit? ( sys-process/audit )
sys-process/psmisc
- !<sys-process/procps-3.3.9-r2
selinux? (
sys-apps/policycoreutils
>=sys-libs/libselinux-2.6
- )
- !<sys-apps/baselayout-2.1-r1
- !<sys-fs/udev-init-scripts-27"
+ )"
DEPEND="${COMMON_DEPEND}
- virtual/os-headers
- ncurses? ( virtual/pkgconfig )"
+ virtual/os-headers"
RDEPEND="${COMMON_DEPEND}
bash? ( app-shells/bash )
- !prefix? (
- sysv-utils? ( !sys-apps/sysvinit )
- !sysv-utils? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
- virtual/tmpfiles
+ sysv-utils? (
+ !sys-apps/systemd[sysv-utils(-)]
+ !sys-apps/sysvinit
)
+ !sysv-utils? (
+ sysvinit? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
+ s6? ( sys-apps/s6-linux-init[sysv-utils(-)] )
+ )
+ virtual/tmpfiles
selinux? (
>=sec-policy/selinux-base-policy-2.20170204-r4
>=sec-policy/selinux-openrc-2.20170204-r4
)
- !<app-shells/gentoo-bashcomp-20180302
- !<app-shells/gentoo-zsh-completions-20180228
"
PDEPEND="netifrc? ( net-misc/netifrc )"
-src_prepare() {
- default
- if [[ ${PV} == "9999" ]] ; then
- local ver="git-${EGIT_VERSION:0:6}"
- sed -i "/^GITVER[[:space:]]*=/s:=.*:=${ver}:" mk/gitver.mk || die
- fi
-}
-
-src_compile() {
- unset LIBDIR #266688
-
- MAKE_ARGS="${MAKE_ARGS}
- LIBNAME=$(get_libdir)
- LIBEXECDIR=${EPREFIX}/lib/rc
- MKBASHCOMP=yes
- MKNET=$(usex newnet)
- MKSELINUX=$(usex selinux)
- MKSYSVINIT=$(usex sysv-utils)
- MKAUDIT=$(usex audit)
- MKPAM=$(usev pam)
- MKSTATICLIBS=no
- MKZSHCOMP=yes
- SH=$(usex bash /bin/bash /bin/sh)"
-
- local brand="Unknown"
- MAKE_ARGS="${MAKE_ARGS} OS=Linux"
- brand="Linux"
- export BRANDING="Gentoo ${brand}"
- use prefix && MAKE_ARGS="${MAKE_ARGS} MKPREFIX=yes PREFIX=${EPREFIX}"
- export DEBUG=$(usev debug)
- export MKTERMCAP=$(usev ncurses)
-
- tc-export CC AR RANLIB
- emake ${MAKE_ARGS}
+src_configure() {
+ local emesonargs=(
+ $(meson_feature audit)
+ "-Dbranding=\"Gentoo Linux\""
+ $(meson_use newnet)
+ -Dos=Linux
+ $(meson_use pam)
+ $(meson_feature selinux)
+ -Drootprefix="${EPREFIX}"
+ -Dshell=$(usex bash /bin/bash /bin/sh)
+ $(meson_use sysv-utils sysvinit)
+ )
+ # export DEBUG=$(usev debug)
+ meson_src_configure
}
# set_config <file> <option name> <yes value> <no value> test
@@ -106,7 +79,7 @@ set_config_yes_no() {
}
src_install() {
- emake ${MAKE_ARGS} DESTDIR="${D}" install
+ meson_install
keepdir /lib/rc/tmp
@@ -125,15 +98,14 @@ src_install() {
insinto /etc/logrotate.d
newins "${FILESDIR}"/openrc.logrotate openrc
- # install gentoo pam.d files
- newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
- newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
+ if use pam; then
+ # install gentoo pam.d files
+ newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
+ newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
+ fi
# install documentation
- dodoc ChangeLog *.md
- if use newnet; then
- dodoc README.newnet
- fi
+ dodoc *.md
}
pkg_preinst() {
@@ -159,18 +131,11 @@ pkg_postinst() {
elog "# rc-update add consolefont boot"
fi
- # Added for 0.35.
- if [[ ! -h "${EROOT}"/lib ]]; then
- if [[ -d "${EROOT}/$(get_libdir)"/rc ]]; then
- cp -RPp "${EROOT}/$(get_libdir)/rc" "${EROOT}"/lib
- fi
- fi
-
if ! use newnet && ! use netifrc; then
ewarn "You have emerged OpenRc without network support. This"
ewarn "means you need to SET UP a network manager such as"
ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
- ewarn "net-misc/NetworkManager, or net-vpn/badvpn."
+ ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
ewarn "Or, you have the option of emerging openrc with the newnet"
ewarn "use flag and configuring /etc/conf.d/network and"
ewarn "/etc/conf.d/staticroute if you only use static interfaces."
@@ -183,4 +148,15 @@ pkg_postinst() {
ewarn "without networking."
ewarn
fi
+
+ # added for 0.45 to handle seedrng/urandom switching (2022-06-07)
+ for v in ${REPLACING_VERSIONS}; do
+ [[ -x $(type rc-update) ]] || continue
+ if ver_test $v -lt 0.45; then
+ if rc-update show boot | grep -q urandom; then
+ rc-update del urandom boot
+ rc-update add seedrng boot
+ fi
+ fi
+ done
}
diff --git a/sys-apps/opentmpfiles/Manifest b/sys-apps/opentmpfiles/Manifest
deleted file mode 100644
index dfc521262545..000000000000
--- a/sys-apps/opentmpfiles/Manifest
+++ /dev/null
@@ -1,5 +0,0 @@
-DIST opentmpfiles-0.1.1.tar.gz 5626 BLAKE2B 2b2d21bae0c8280f31ea1ad35cd857a94b3d377b004f299a84d949567baba4a799b6e2f5eafc85b31f6c593b6751fbbc605b87504ad2dadb193910f65727fbea SHA512 9b8bc74c642c42e4591cc98df096f2d74d14acc5e795f49026b37401c795861ffcdf8d505f6e62980bab1cc4ee2b182668bcd5d4f4cea0984b46662643d6a0d5
-DIST opentmpfiles-0.1.2.tar.gz 5614 BLAKE2B d49485535bc3b92ba7e9a2af511969b1793d94187a2600b3196314bef8de235fe7a640bb2b7f78f51727f94c18556fc27e7996ffccef71ff94e006b9f9a63810 SHA512 d86ba71e5fe96d7a8e1999e14b0b99c78e850c42fbfefd203916edca593d0269feaf2252aa01cc35a838906fc2909015430f72cde8370e2d5b1d478a11fe456d
-DIST opentmpfiles-0.1.3.tar.gz 5691 BLAKE2B 56d79f0279a46ed3b4e13f94a7f2c7d494df245a17b8533c48cff357c21db56485bd076e375f3b4e2c9a140a65e8ab472a8a1030bbee0853463f734c316f71e8 SHA512 fd0b10ebfeb621466edadede50ec6e8f415861ab3b14b833c75bd71f7296e9c091e59144d39e1f9efd342b6d97776cade5a692c941085e33e9651fd885da7121
-DIST opentmpfiles-0.2.tar.gz 5711 BLAKE2B e1ee7820b2d184d18e63e7e9d93227bb301eb82be8c2b6021c7a1092f55a4ca2bb5dfb7494ff00c3b6debace1963f6c89011ff557f665f0a93c907bd759a4c6f SHA512 bc384cc9156ba6c54d3308ddad4d26b1877f020aa8558e82df2ed49ffa65e0fed5a49eaa11b27193bfe2ad11a4d7368f7cdbc225b820b309af3b299327ddb07b
-DIST opentmpfiles-0.3.1.tar.gz 6843 BLAKE2B 20cb40b34fd8db37da5797dc25912000f7d1feb38952b99c044220666cb21871eb40d3853074cb33ee8bcce8dc4858d102aeccb5730ce28df47e99a7edb50f2d SHA512 1e0985403013ac10c0fe50a7ba61a250357b1ea7ea426f9dc92d7071e97eb0e5209448550cf427734b917599defa5123254044d5352b9dcaa22e562e5ca6821f
diff --git a/sys-apps/opentmpfiles/metadata.xml b/sys-apps/opentmpfiles/metadata.xml
deleted file mode 100644
index 26fecb1eb64b..000000000000
--- a/sys-apps/opentmpfiles/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>williamh@gentoo.org</email>
- <name>William Hubbs</name>
- </maintainer>
- <maintainer type="project">
- <email>openrc@gentoo.org</email>
- <name>Gentoo OpenRC Team</name>
- </maintainer>
- <upstream>
- <remote-id type="github">openrc/opentmpfiles</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/opentmpfiles/opentmpfiles-0.1.1.ebuild b/sys-apps/opentmpfiles/opentmpfiles-0.1.1.ebuild
deleted file mode 100644
index 9eaf5bbe8c8a..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-0.1.1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE=""
-
-RDEPEND="!<sys-apps/openrc-0.23"
-
-src_install() {
- default
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
-}
diff --git a/sys-apps/opentmpfiles/opentmpfiles-0.1.2.ebuild b/sys-apps/opentmpfiles/opentmpfiles-0.1.2.ebuild
deleted file mode 100644
index 5a2d6b4f872f..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-0.1.2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 ~sparc x86"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="selinux"
-
-RDEPEND="!<sys-apps/openrc-0.23
- selinux? ( sec-policy/selinux-base-policy )"
-
-src_install() {
- default
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- if [[ -z $REPLACING_VERSIONS ]]; then
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
- fi
-}
diff --git a/sys-apps/opentmpfiles/opentmpfiles-0.1.3-r1.ebuild b/sys-apps/opentmpfiles/opentmpfiles-0.1.3-r1.ebuild
deleted file mode 100644
index b650b3c11347..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-0.1.3-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit prefix
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="selinux"
-
-RDEPEND="!<sys-apps/openrc-0.23
- selinux? ( sec-policy/selinux-base-policy )"
-
-src_prepare() {
- default
- hprefixify tmpfiles
-}
-src_install() {
- emake DESTDIR="${ED}" install
- einstalldocs
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- if [[ -z $REPLACING_VERSIONS ]]; then
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
- fi
-}
diff --git a/sys-apps/opentmpfiles/opentmpfiles-0.1.3.ebuild b/sys-apps/opentmpfiles/opentmpfiles-0.1.3.ebuild
deleted file mode 100644
index 40ca9a593feb..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-0.1.3.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="selinux"
-
-RDEPEND="!<sys-apps/openrc-0.23
- selinux? ( sec-policy/selinux-base-policy )"
-
-src_install() {
- default
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- if [[ -z $REPLACING_VERSIONS ]]; then
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
- fi
-}
diff --git a/sys-apps/opentmpfiles/opentmpfiles-0.2.ebuild b/sys-apps/opentmpfiles/opentmpfiles-0.2.ebuild
deleted file mode 100644
index a0448ee702d4..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-0.2.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit prefix
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="selinux"
-
-RDEPEND="!<sys-apps/openrc-0.23
- selinux? ( sec-policy/selinux-base-policy )"
-
-src_prepare() {
- default
- hprefixify tmpfiles
-}
-src_install() {
- emake DESTDIR="${ED}" install
- einstalldocs
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- mkdir -p "${EROOT}"etc/runlevels/${runlevel}
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- if [[ -z $REPLACING_VERSIONS ]]; then
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
- fi
-}
diff --git a/sys-apps/opentmpfiles/opentmpfiles-0.3.1.ebuild b/sys-apps/opentmpfiles/opentmpfiles-0.3.1.ebuild
deleted file mode 100644
index 1bdbb4ca4146..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-0.3.1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit prefix
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="selinux"
-
-RDEPEND="!<sys-apps/openrc-0.23
- selinux? ( sec-policy/selinux-base-policy )"
-
-src_prepare() {
- default
- hprefixify tmpfiles
-}
-src_install() {
- emake DESTDIR="${ED}" install
- einstalldocs
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- mkdir -p "${EROOT}"etc/runlevels/${runlevel}
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- if [[ -z $REPLACING_VERSIONS ]]; then
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
- fi
-}
diff --git a/sys-apps/opentmpfiles/opentmpfiles-9999.ebuild b/sys-apps/opentmpfiles/opentmpfiles-9999.ebuild
deleted file mode 100644
index 1bdbb4ca4146..000000000000
--- a/sys-apps/opentmpfiles/opentmpfiles-9999.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit prefix
-
-if [[ ${PV} = 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/openrc/${PN}"
-else
- SRC_URI="https://github.com/openrc/${PN}/archive/${PV}.tar.gz ->
- ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux"
-fi
-
-DESCRIPTION="A standalone utility to process systemd-style tmpfiles.d files"
-HOMEPAGE="https://github.com/openrc/opentmpfiles"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE="selinux"
-
-RDEPEND="!<sys-apps/openrc-0.23
- selinux? ( sec-policy/selinux-base-policy )"
-
-src_prepare() {
- default
- hprefixify tmpfiles
-}
-src_install() {
- emake DESTDIR="${ED}" install
- einstalldocs
- cd openrc
- for f in opentmpfiles-dev opentmpfiles-setup; do
- newconfd ${f}.confd ${f}
- newinitd ${f}.initd ${f}
- done
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
- mkdir -p "${EROOT}"etc/runlevels/${runlevel}
- ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
-}
-
-pkg_postinst() {
- if [[ -z $REPLACING_VERSIONS ]]; then
- add_service opentmpfiles-dev sysinit
- add_service opentmpfiles-setup boot
- fi
-}
diff --git a/sys-apps/osinfo-db-tools/Manifest b/sys-apps/osinfo-db-tools/Manifest
index dcc39f7a5c96..3f844b15691a 100644
--- a/sys-apps/osinfo-db-tools/Manifest
+++ b/sys-apps/osinfo-db-tools/Manifest
@@ -1,2 +1,2 @@
-DIST osinfo-db-tools-1.6.0.tar.gz 547189 BLAKE2B 38db3118d618d620a137b12021fbcf9caffe1e0f67252d2eb7c514d4f25969b152679f55b493bb64abc0925ff07ccea897acfd809d17d7257db2b33a690f4878 SHA512 a3bdf9d913b388b0f567a14245f57c4f1da9dae40d723f8e76096ffdae9d7a8e587ed4832e3e59c820bc01bbb2b74815b3fefd8e1f47cebd903091457fdee951
-DIST osinfo-db-tools-1.8.0.tar.xz 57428 BLAKE2B daaacd6c2facb7cd8e090ff8aa028b4651d1036399810342f01369ad308fa240b76ca209dc6f8fd30527f27178a1d29d0b5fd44c0efc050a0dc20397afc33e11 SHA512 181531bcc8b644718411b09cd3f0971520a2df8f86c87deb34a8664e03c9b10ec73a0904cde004f045641ce8d087bbe7337c6a124e422c94b93de21088767a7f
+DIST osinfo-db-tools-1.10.0.tar.xz 60508 BLAKE2B 2b9abbdba25add96440e2a937ae994c0305f995b924ffc7c88c2c31c122d3e5cf0c710fbf55724bea56f63be7250321ee27d2179e3f247461d6843f7e03dfc58 SHA512 27271b15404a6cb0065854ba8556c272cf3427ff4fd18fc9a22dbca2b01686c32661b24e18f5eff9a1b240a3a459d8fe66cbde530873d60b8c850bdd0b42c475
+DIST osinfo-db-tools-1.11.0.tar.xz 64792 BLAKE2B fc085da5bad46c5c178bdd09cc294c8f0f208cbd3ee4dda9e22bd681cac70913bc4dc9a11d44d252b5d7cb33b8a5625aca7c285ae098f72839e5fe4d2238c157 SHA512 adab5b16d8fcbae89619eb12f669fa4c7765a65af54a864995e3a9131bb18ee62568c8f7ed166f0400e5e622f56844ba53ed9ef5c2322e33acb9ef1cf0c94701
diff --git a/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.10.0-no-clobber-fortify-source.patch b/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.10.0-no-clobber-fortify-source.patch
new file mode 100644
index 000000000000..512bddfbe8c2
--- /dev/null
+++ b/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.10.0-no-clobber-fortify-source.patch
@@ -0,0 +1,13 @@
+Don't clobber toolchain defaults.
+
+https://bugs.gentoo.org/892996
+--- a/meson.build
++++ b/meson.build
+@@ -204,7 +204,6 @@ osinfo_db_tools_check_cflags = [
+ '-Wjump-misses-init',
+ '-Wframe-larger-than=4096',
+ '-Wno-overlength-strings',
+- '-Wp,-D_FORTIFY_SOURCE=2',
+ '--param=ssp-buffer-size=4',
+ '-fexceptions',
+ '-fasynchronous-unwind-tables',
diff --git a/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-Make-xmlError-structs-constant.patch b/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-Make-xmlError-structs-constant.patch
new file mode 100644
index 000000000000..964b2c10b6ec
--- /dev/null
+++ b/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-Make-xmlError-structs-constant.patch
@@ -0,0 +1,53 @@
+From 34378a4ac257f2f5fcf364786d1634a8c36b304f Mon Sep 17 00:00:00 2001
+Message-ID: <34378a4ac257f2f5fcf364786d1634a8c36b304f.1701158114.git.mprivozn@redhat.com>
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Mon, 27 Nov 2023 15:04:43 +0100
+Subject: [PATCH 1/2] Make xmlError structs constant
+
+In libxml2 commits v2.12.0~14 and v2.12.0~77 the API changed so
+that:
+
+1) xmlGetLastError() returns pointer to a constant xmlError
+ struct, and
+
+2) xmlSetStructuredErrorFunc() changed the signature of callback
+ (validate_structured_error_nop()), it too is passed pointer to
+ a constant xmlError struct.
+
+But of course, older libxml2 expects different callback
+signature. Therefore, we need to typecast it anyway.
+
+Also, drop obviously incorrect @error annotation in
+validate_structured_error_nop; the variable is used.
+
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+---
+ tools/osinfo-db-validate.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/tools/osinfo-db-validate.c b/tools/osinfo-db-validate.c
+index a721b4d..b1434a6 100644
+--- a/tools/osinfo-db-validate.c
++++ b/tools/osinfo-db-validate.c
+@@ -35,7 +35,7 @@ static void validate_generic_error_nop(void *userData G_GNUC_UNUSED,
+ }
+
+ static void validate_structured_error_nop(void *userData G_GNUC_UNUSED,
+- xmlErrorPtr error G_GNUC_UNUSED)
++ const xmlError *error)
+ {
+ if (error->file)
+ g_printerr("%s:%d %s", error->file, error->line, error->message);
+@@ -173,7 +173,8 @@ static gboolean validate_files(GFile *schema, gsize nfiles, GFile **files, GErro
+ g_autofree gchar *schemapath = NULL;
+
+ xmlSetGenericErrorFunc(NULL, validate_generic_error_nop);
+- xmlSetStructuredErrorFunc(NULL, validate_structured_error_nop);
++ /* Drop this typecast when >=libxml2-2.12.0 is required */
++ xmlSetStructuredErrorFunc(NULL, (xmlStructuredErrorFunc) validate_structured_error_nop);
+
+ schemapath = g_file_get_path(schema);
+ rngParser = xmlRelaxNGNewParserCtxt(schemapath);
+--
+2.41.0
+
diff --git a/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-osinfo-db-validate-Add-more-libxml-includes.patch b/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-osinfo-db-validate-Add-more-libxml-includes.patch
new file mode 100644
index 000000000000..c823465fe227
--- /dev/null
+++ b/sys-apps/osinfo-db-tools/files/osinfo-db-tools-1.11.0-osinfo-db-validate-Add-more-libxml-includes.patch
@@ -0,0 +1,35 @@
+From 019487cbc79925e49988789bf533c78dab7e1842 Mon Sep 17 00:00:00 2001
+Message-ID: <019487cbc79925e49988789bf533c78dab7e1842.1701158114.git.mprivozn@redhat.com>
+In-Reply-To: <34378a4ac257f2f5fcf364786d1634a8c36b304f.1701158114.git.mprivozn@redhat.com>
+References: <34378a4ac257f2f5fcf364786d1634a8c36b304f.1701158114.git.mprivozn@redhat.com>
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Mon, 27 Nov 2023 15:06:04 +0100
+Subject: [PATCH 2/2] osinfo-db-validate: Add more libxml/ includes
+
+In its 2.12.0 release, libxml reworked their header files (some
+might even call it cleaning up, I call it API incompatible
+change) and now we don't get all declarations we need by just
+including one file. Add missing includes.
+
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+---
+ tools/osinfo-db-validate.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tools/osinfo-db-validate.c b/tools/osinfo-db-validate.c
+index b1434a6..f3275db 100644
+--- a/tools/osinfo-db-validate.c
++++ b/tools/osinfo-db-validate.c
+@@ -20,7 +20,9 @@
+ * Daniel P. Berrange <berrange@redhat.com>
+ */
+
++#include <libxml/parser.h>
+ #include <libxml/relaxng.h>
++#include <libxml/tree.h>
+ #include <locale.h>
+ #include <glib/gi18n.h>
+
+--
+2.41.0
+
diff --git a/sys-apps/osinfo-db-tools/metadata.xml b/sys-apps/osinfo-db-tools/metadata.xml
index 39980802b1da..48917863fc09 100644
--- a/sys-apps/osinfo-db-tools/metadata.xml
+++ b/sys-apps/osinfo-db-tools/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">libosinfo/osinfo-db-tools</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r1.ebuild b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r1.ebuild
new file mode 100644
index 000000000000..9f98a17905cb
--- /dev/null
+++ b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit meson python-any-r1
+
+DESCRIPTION="Tools for managing the osinfo database"
+HOMEPAGE="https://libosinfo.org/"
+SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ppc64 ~riscv ~sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.44:2
+ dev-libs/json-glib
+ >=app-arch/libarchive-3.0.0:=
+ net-libs/libsoup:3.0
+ >=dev-libs/libxml2-2.6.0
+"
+# perl dep is for pod2man (manpages)
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ >=sys-devel/gettext-0.19.8
+ dev-lang/perl
+ test? (
+ $(python_gen_any_dep '
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+python_check_deps() {
+ python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" && \
+ python_has_version "dev-python/requests[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
diff --git a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r2.ebuild b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r2.ebuild
new file mode 100644
index 000000000000..49f4ca477a35
--- /dev/null
+++ b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.10.0-r2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit meson python-any-r1
+
+DESCRIPTION="Tools for managing the osinfo database"
+HOMEPAGE="https://libosinfo.org/"
+SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.44:2
+ dev-libs/json-glib
+ >=app-arch/libarchive-3.0.0:=
+ net-libs/libsoup:3.0
+ >=dev-libs/libxml2-2.6.0
+"
+# perl dep is for pod2man (manpages)
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ >=sys-devel/gettext-0.19.8
+ dev-lang/perl
+ test? (
+ $(python_gen_any_dep '
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.10.0-no-clobber-fortify-source.patch
+ "${FILESDIR}"/${PN}-1.11.0-Make-xmlError-structs-constant.patch
+ "${FILESDIR}"/${PN}-1.11.0-osinfo-db-validate-Add-more-libxml-includes.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" && \
+ python_has_version "dev-python/requests[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
diff --git a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.11.0.ebuild b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.11.0.ebuild
new file mode 100644
index 000000000000..2a53dc308797
--- /dev/null
+++ b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.11.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit meson python-any-r1
+
+DESCRIPTION="Tools for managing the osinfo database"
+HOMEPAGE="https://libosinfo.org/"
+SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ppc64 ~riscv ~sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.44:2
+ dev-libs/json-glib
+ >=app-arch/libarchive-3.0.0:=
+ net-libs/libsoup:3.0
+ >=dev-libs/libxml2-2.6.0
+"
+# perl dep is for pod2man (manpages)
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ >=sys-devel/gettext-0.19.8
+ dev-lang/perl
+ test? (
+ $(python_gen_any_dep '
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.10.0-no-clobber-fortify-source.patch
+ "${FILESDIR}"/${PN}-1.11.0-Make-xmlError-structs-constant.patch
+ "${FILESDIR}"/${PN}-1.11.0-osinfo-db-validate-Add-more-libxml-includes.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" && \
+ python_has_version "dev-python/requests[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
diff --git a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.6.0-r1.ebuild b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.6.0-r1.ebuild
deleted file mode 100644
index 32b3f7fa9ee7..000000000000
--- a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.6.0-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit python-any-r1 gnome2
-
-DESCRIPTION="Tools for managing the osinfo database"
-HOMEPAGE="https://libosinfo.org/"
-SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-# Blocker on old libosinfo as osinfo-db-validate was part of it before
-RDEPEND="
- >=dev-libs/glib-2.44:2
- >=dev-libs/libxml2-2.6.0
- >=app-arch/libarchive-3.0.0:=
- dev-libs/json-glib
- net-libs/libsoup:2.4
- !<sys-libs/libosinfo-1.0.0
-"
-# perl dep is for pod2man (and syntax check but only in git, but configure check exists in release)
-# libxslt is checked for in configure.ac, but never used in 1.1.0
-DEPEND="${RDEPEND}
- >=dev-libs/libxslt-1.0.0
- virtual/pkgconfig
- >=sys-devel/gettext-0.19.8
- dev-lang/perl
- test? (
- $(python_gen_any_dep '
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- ')
- )
-"
-
-python_check_deps() {
- use test && \
- has_version "dev-python/pytest[${PYTHON_USEDEP}]" && \
- has_version "dev-python/requests[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
diff --git a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.8.0.ebuild b/sys-apps/osinfo-db-tools/osinfo-db-tools-1.8.0.ebuild
deleted file mode 100644
index 3fe414101b78..000000000000
--- a/sys-apps/osinfo-db-tools/osinfo-db-tools-1.8.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit meson python-any-r1
-
-DESCRIPTION="Tools for managing the osinfo database"
-HOMEPAGE="https://libosinfo.org/"
-SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-# Blocker on old libosinfo as osinfo-db-validate was part of it before
-RDEPEND="
- >=dev-libs/glib-2.44:2
- dev-libs/json-glib
- >=app-arch/libarchive-3.0.0:=
- net-libs/libsoup:2.4
- >=dev-libs/libxml2-2.6.0
- !<sys-libs/libosinfo-1.0.0
-"
-# perl dep is for pod2man (manpages)
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- >=sys-devel/gettext-0.19.8
- dev-lang/perl
- test? (
- $(python_gen_any_dep '
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- ')
- )
-"
-
-python_check_deps() {
- use test && \
- has_version "dev-python/pytest[${PYTHON_USEDEP}]" && \
- has_version "dev-python/requests[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
diff --git a/sys-apps/osinfo-db/Manifest b/sys-apps/osinfo-db/Manifest
index 851483150e2b..3834afc129cc 100644
--- a/sys-apps/osinfo-db/Manifest
+++ b/sys-apps/osinfo-db/Manifest
@@ -1,2 +1 @@
-DIST osinfo-db-20200325.tar.xz 100124 BLAKE2B 89bc55dc4af0943abc59bdf0cbba070bb133129900269477dbb598e623b41b313cc41283d5e22c6a3277a7cf420baf294bf275c2c3e6f11ca98451c0ffa5b16b SHA512 c192a3814063f60d7ece0b912035e15d98c8363ff10e5c5ea5aae97ab10d95b85c5837c496f3dc4a26d3626df06559960b138986d9f4727b3d0477015e29cfa0
-DIST osinfo-db-20200529.tar.xz 104668 BLAKE2B cb5b980cfc7753ad76aeb80d79108b125c3f1d3bec8a8878d2e562ce6b11b4369b8f9b0a03f5720ad58aa09abe8e140633652f19a4dc6f40e941e626d918e4aa SHA512 27efed4680d80432541c9e3dc692a381b479811ebce39e9b42382bd8b499d2782b59323a6c29517f38fa63061720d26c87e3c7ca806414adddfb9e4294ee106b
+DIST osinfo-db-20231215.tar.xz 149836 BLAKE2B bbc4cabbb2ef09dd58f0340c250ac9d014dbb7f38e7db96ecdb70bc4f7a6583f4a6c807262a52c5ada0eed7e69888b34bcf09a0041a943d0a3867ab9518e9005 SHA512 fed7b1fc28aa625a73242768776c451fc459bbbba71dcda33194e9e0d8d049cdfdfcc354ca4289e1a97f82b23d4ec3a105e23d18438789fe1fe64e7bbb84a6b7
diff --git a/sys-apps/osinfo-db/metadata.xml b/sys-apps/osinfo-db/metadata.xml
index 39980802b1da..4f16583473a8 100644
--- a/sys-apps/osinfo-db/metadata.xml
+++ b/sys-apps/osinfo-db/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="gitlab">libosinfo/osinfo-db</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/osinfo-db/osinfo-db-20200325.ebuild b/sys-apps/osinfo-db/osinfo-db-20200325.ebuild
deleted file mode 100644
index 32c869734dbc..000000000000
--- a/sys-apps/osinfo-db/osinfo-db-20200325.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="osinfo database files"
-HOMEPAGE="https://libosinfo.org/"
-SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
-S="${WORKDIR}"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-
-RDEPEND=""
-DEPEND="${RDEPEND}
- sys-apps/osinfo-db-tools
-"
-# we don't depend on intltool here, contrary to README, as the tarball already
-# contains the processed results with translations in XML files
-
-src_unpack() { :; }
-
-src_install() {
- osinfo-db-import --root "${D}" --dir "/usr/share/osinfo" "${DISTDIR}/${A}"
-}
diff --git a/sys-apps/osinfo-db/osinfo-db-20200529.ebuild b/sys-apps/osinfo-db/osinfo-db-20200529.ebuild
deleted file mode 100644
index 32c869734dbc..000000000000
--- a/sys-apps/osinfo-db/osinfo-db-20200529.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="osinfo database files"
-HOMEPAGE="https://libosinfo.org/"
-SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
-S="${WORKDIR}"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
-
-RDEPEND=""
-DEPEND="${RDEPEND}
- sys-apps/osinfo-db-tools
-"
-# we don't depend on intltool here, contrary to README, as the tarball already
-# contains the processed results with translations in XML files
-
-src_unpack() { :; }
-
-src_install() {
- osinfo-db-import --root "${D}" --dir "/usr/share/osinfo" "${DISTDIR}/${A}"
-}
diff --git a/sys-apps/osinfo-db/osinfo-db-20231215.ebuild b/sys-apps/osinfo-db/osinfo-db-20231215.ebuild
new file mode 100644
index 000000000000..f2ac1ce4693f
--- /dev/null
+++ b/sys-apps/osinfo-db/osinfo-db-20231215.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="osinfo database files"
+HOMEPAGE="https://libosinfo.org/ https://gitlab.com/libosinfo/osinfo-db"
+SRC_URI="https://releases.pagure.org/libosinfo/${P}.tar.xz"
+S="${WORKDIR}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ppc64 ~riscv ~sparc x86"
+
+BDEPEND="sys-apps/osinfo-db-tools"
+
+# we don't depend on intltool here, contrary to README, as the tarball already
+# contains the processed results with translations in XML files
+
+src_unpack() { :; }
+
+src_install() {
+ osinfo-db-import --root "${D}" --dir "/usr/share/osinfo" "${DISTDIR}/${A}"
+}
diff --git a/sys-apps/paxctl/metadata.xml b/sys-apps/paxctl/metadata.xml
index 2fdcc0c0ceb0..3e45e0f6b901 100644
--- a/sys-apps/paxctl/metadata.xml
+++ b/sys-apps/paxctl/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>blueness@gentoo.org</email>
- <name>Anthony G. Basile</name>
- </maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>hardened@gentoo.org</email>
<name>Gentoo Hardened</name>
</maintainer>
diff --git a/sys-apps/paxctl/paxctl-0.9.ebuild b/sys-apps/paxctl/paxctl-0.9.ebuild
index 37b5eff6a1a9..797562ba4f0f 100644
--- a/sys-apps/paxctl/paxctl-0.9.ebuild
+++ b/sys-apps/paxctl/paxctl-0.9.ebuild
@@ -1,27 +1,26 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=8
-inherit toolchain-funcs eutils
+inherit toolchain-funcs
DESCRIPTION="Manages various PaX related program header flags for Elf32, Elf64, binaries"
HOMEPAGE="https://pax.grsecurity.net"
SRC_URI="https://pax.grsecurity.net/${P}.tar.gz"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE=""
LICENSE="GPL-2"
SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
-DEPEND=">=sys-devel/binutils-2.14.90.0.8-r1"
-RDEPEND=""
+BDEPEND=">=sys-devel/binutils-2.14.90.0.8-r1"
src_prepare() {
+ default
+
sed \
"s:--owner 0 --group 0::g" \
-i Makefile || die
- epatch_user
}
src_compile() {
diff --git a/sys-apps/paxctld/Manifest b/sys-apps/paxctld/Manifest
index f431afd76e08..7362b396d742 100644
--- a/sys-apps/paxctld/Manifest
+++ b/sys-apps/paxctld/Manifest
@@ -1,2 +1 @@
-DIST paxctld_1.2.3.orig.tar.gz 17174 BLAKE2B 6f288b039f719febf2f3370a0d245c07928f441754f0ac43bb3608d2718548d0ab90fbf9244d5b97bdfbc7c6bfab3d7359d435e99a2e19dd80661019ba0b654c SHA512 da3f5739aabbe0f276a194c71c20349b0571472aa6c114fe46ea4eb406fe1b419b167207b8d0b288776574c455f005386303b8ef92b0294e98532b269017ab54
DIST paxctld_1.2.5.orig.tar.gz 18694 BLAKE2B 9d219846bbdfc5d709d9fb3758ec9451bef1545d6bb25263aef1c42f992f4201e2ce9f9cae0a77ed7584ec5c3c6dd0e3d0c58ec251a52f0b855c87b0fcf0e826 SHA512 c38b2cb0bf07d0075fa01f95d82adf6aae6e7bd010fa31b349af7c92b0498bf3225344500ef306bb633caec0b642771f453a8445cadbf342775931495d0ef2c2
diff --git a/sys-apps/paxctld/metadata.xml b/sys-apps/paxctld/metadata.xml
index 2fdcc0c0ceb0..3e45e0f6b901 100644
--- a/sys-apps/paxctld/metadata.xml
+++ b/sys-apps/paxctld/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>blueness@gentoo.org</email>
- <name>Anthony G. Basile</name>
- </maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>hardened@gentoo.org</email>
<name>Gentoo Hardened</name>
</maintainer>
diff --git a/sys-apps/paxctld/paxctld-1.2.3.ebuild b/sys-apps/paxctld/paxctld-1.2.3.ebuild
deleted file mode 100644
index 644e1e6f67e0..000000000000
--- a/sys-apps/paxctld/paxctld-1.2.3.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit systemd
-
-DESCRIPTION="PaX flags maintenance daemon"
-HOMEPAGE="https://www.grsecurity.net/"
-SRC_URI="https://www.grsecurity.net/${PN}/${PN}_${PV}.orig.tar.gz
- https://dev.gentoo.org/~blueness/hardened-sources/${PN}/${PN}_${PV}.orig.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="pam"
-
-RDEPEND=""
-DEPEND=""
-
-src_prepare() {
- # Respect Gentoo flags and don't strip
- sed -i \
- -e '/^CC/d' \
- -e '/^CFLAGS/d' \
- -e '/^LDFLAGS/d' \
- -e '/STRIP/d' \
- Makefile
-
- eapply_user
-}
-
-src_install() {
- default
-
- systemd_dounit "${S}"/rpm/${PN}.service
-}
diff --git a/sys-apps/pciutils/Manifest b/sys-apps/pciutils/Manifest
index 568417d5e949..fd3bc9a2159c 100644
--- a/sys-apps/pciutils/Manifest
+++ b/sys-apps/pciutils/Manifest
@@ -1,3 +1,3 @@
-DIST pciutils-3.5.6.tar.gz 442190 BLAKE2B 9f1237828436f0566caa13e49a154b40fcc41ddd165268011012e55a33ea401e3b78ddffecc6f0ec36efb24b6d9338a691167ac094d0d26f855e42cd055701bb SHA512 dcdca7e0bce69d1bee1fa5ea480a9f38534d66da576fdc710aefd8eeb0c18bf6ec5b39e63019d29d6bae0ec2d3881f5d07a4a105ca04c320d84c17821f7297e4
-DIST pciutils-3.6.4.tar.gz 497675 BLAKE2B 45bbfafbf9ad6aea09fd17fe235bbb11bfe00fff2f31f1223d739eacf3db1a66ba0cd05f0df29349b01cc0a4fc598aeafb6fcf276e2edf2d557b9c21f25a0382 SHA512 001b2f722ee9f5fd57307aa4e8894c97ed3eee42f8b17caba2f29b191ab2fe98dcbfb76438f97dcaa343ea90011f6f6277ab367f361bc45e20d7ed848b439f86
-DIST pciutils-3.7.0.tar.gz 516418 BLAKE2B fca6720cff73ec20559c666c76fdcd3b59cdf0e33e2c3894a82590d77c5d51cf22e667fe65d9f66a248a624c2b9c868f6e9b69f45f4b6d704b637afe55041e6a SHA512 8a8fb9dc44a8dd31f80e45a48f6693452c11d343b9dfed87dd5cea6846f38d001f294e4010cd7c0545e238fde45b0e9a8e88c67a43d80676a585336e3665a631
+DIST pciutils-3.10.0.tar.gz 931711 BLAKE2B 2e1255eb5508c9d1339f5bc772c2592a03cae4d8d097e8939748c9bb5d5d949be53d705d1b7d903f7ea88b2abeea91e39de16e39d2f46f0a1f62f8a9e32c6faa SHA512 3da1af4af8b0fa3cf4d3f06095524e25dc292182beec10aa2c16c5c6ba751fe469d0e7f54e43413b6f3f5bcdbd1fba3c66df1d8e39d2e1962ae36a2d9c06238e
+DIST pciutils-3.11.1.tar.gz 660457 BLAKE2B 447d0e3fa209d2d27a0310a5824a75b543b539c459caed23e9218f4ff3f9a3c2a99c65dd5ddf92a56c2b880ecfaeff6f3edc458c3e5973a1a4937325740915ac SHA512 6bbb248364831a384a2f521d7300cc53b046ce3765c3f7aca08c9e839174b02687543ee697b8ffc24258bcd39ac625d1ce53d6ca02fdc718eea86a50c95a33de
+DIST pciutils-3.12.0.tar.gz 668358 BLAKE2B 6d57b0654a26e959d2a953a102fd616ba0a0a183ec6d40f65a1274ad33330df9c81b95d4b2274edc240cbcf576ce93a0b61252bae0b6348a29df659b3fc219eb SHA512 b1efd3e24efad4f80e1a942d23d6ea12acec9642714e47d24bff7f7c53ff475b0252c6f75c0053b7ec64635037e72b150b3e313229b36479dc0cbf96902096c5
diff --git a/sys-apps/pciutils/files/pciutils-3.1.9-static-pc.patch b/sys-apps/pciutils/files/pciutils-3.1.9-static-pc.patch
deleted file mode 100644
index 9e63b7ecd661..000000000000
--- a/sys-apps/pciutils/files/pciutils-3.1.9-static-pc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-make sure all lib entries get into libs.private in the .pc file
-
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -61,7 +61,7 @@ $(PCILIBPC): libpci.pc.in
- -e 's,@LIBDIR@,$(LIBDIR),' \
- -e 's,@IDSDIR@,$(IDSDIR),' \
- -e 's,@VERSION@,$(VERSION),' \
-- -e 's,@LDLIBS@,$(LDLIBS),'
-+ -e 's,@LDLIBS@,$(LDLIBS) $(LIB_LDLIBS),'
-
- init.o: init.c $(INCL)
- access.o: access.c $(INCL)
diff --git a/sys-apps/pciutils/metadata.xml b/sys-apps/pciutils/metadata.xml
index 739960f0acfd..708b18c7834c 100644
--- a/sys-apps/pciutils/metadata.xml
+++ b/sys-apps/pciutils/metadata.xml
@@ -1,13 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="dns">Enable support for querying the central database of PCI IDs using DNS</flag>
- <flag name="kmod">Enable <pkg>sys-apps/kmod</pkg> support for the -k switch in lspci command</flag>
- <flag name="zlib">Support compressed pci.ids database</flag>
-</use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="dns">Enable support for querying the central database of PCI IDs using DNS</flag>
+ <flag name="kmod">Enable <pkg>sys-apps/kmod</pkg> support for the -k switch in lspci command</flag>
+ <flag name="zlib">Support compressed pci.ids database</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">pciutils/pciutils</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/pciutils/pciutils-3.10.0.ebuild b/sys-apps/pciutils/pciutils-3.10.0.ebuild
new file mode 100644
index 000000000000..41764a0c3806
--- /dev/null
+++ b/sys-apps/pciutils/pciutils-3.10.0.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs multilib-minimal flag-o-matic
+
+DESCRIPTION="Various utilities dealing with the PCI bus"
+HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git"
+SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="dns +kmod static-libs +udev zlib"
+REQUIRED_USE="static-libs? ( !udev )"
+
+# Have the sub-libs in RDEPEND with [static-libs] since, logically,
+# our libpci.a depends on libz.a/etc... at runtime.
+LIB_DEPEND="zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+),${MULTILIB_USEDEP}] )"
+DEPEND="
+ kmod? ( sys-apps/kmod )
+ udev? ( >=virtual/libudev-208[${MULTILIB_USEDEP}] )
+ static-libs? ( ${LIB_DEPEND} )
+ !static-libs? ( ${LIB_DEPEND//static-libs([+-]),} )
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/hwdata
+"
+# See bug #847133 re binutils check
+BDEPEND="
+ || ( >=sys-devel/binutils-2.37:* sys-devel/lld sys-devel/native-cctools )
+ kmod? ( virtual/pkgconfig )
+"
+
+MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h )
+
+switch_config() {
+ [[ $# -ne 2 ]] && return 1
+ local opt=$1 val=$2
+
+ sed "s@^\(${opt}=\).*\$@\1${val}@" -i Makefile || die
+ return 0
+}
+
+check_binutils_version() {
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! tc-ld-is-gold && ! tc-ld-is-lld ; then
+ # Okay, hopefully it's Binutils' bfd.
+ # bug #847133
+
+ # Convert this:
+ # ```
+ # GNU ld (Gentoo 2.38 p4) 2.38
+ # Copyright (C) 2022 Free Software Foundation, Inc.
+ # This program is free software; you may redistribute it under the terms of
+ # the GNU General Public License version 3 or (at your option) a later version.
+ # This program has absolutely no warranty.
+ # ```
+ #
+ # into...
+ # ```
+ # 2.38
+ # ```
+ local ver=$($(tc-getLD) --version 2>&1 | head -n 1 | rev | cut -d' ' -f1 | rev)
+
+ if ! [[ ${ver} =~ [0-9].[0-9][0-9] ]] ; then
+ # Skip if unrecognised format so we don't pass something
+ # odd into ver_cut.
+ return
+ fi
+
+ ver_major=$(ver_cut 1 "${ver}")
+ ver_minor=$(ver_cut 2 "${ver}")
+
+ # We use 2.37 here, not 2.35, as https://github.com/pciutils/pciutils/issues/98 mentions
+ # because we've had other miscompiles with older Binutils (not just build failures!)
+ # and we don't want people running any unsupported versions of Binutils. An example
+ # of this is where glibc is completely broken with old binutils: bug #802036. It's
+ # just not sustainable to support.
+ if [[ ${ver_major} -eq 2 && ${ver_minor} -lt 37 ]] ; then
+ eerror "Old version of binutils activated! ${P} cannot be built with an old version."
+ eerror "Please follow these steps:"
+ eerror "1. Select a newer binutils (>= 2.37) using binutils-config"
+ eerror " (If no such version is installed, run emerge -v1 sys-devel/binutils)"
+ eerror "2. Run: . /etc/profile"
+ eerror "3. Try emerging again with: emerge -v1 ${CATEGORY}/${P}"
+ eerror "4. Complete your world upgrade if you were performing one."
+ eerror "5. Perform a depclean (emerge -acv)"
+ eerror "\tYou MUST depclean after every world upgrade in future!"
+ die "Old binutils found! Change to a newer ld using binutils-config (bug #847133)."
+ fi
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+src_prepare() {
+ default
+
+ if use static-libs ; then
+ cp -pPR "${S}" "${S}.static" || die
+ mv "${S}.static" "${S}/static" || die
+ fi
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # bug #640836, bug #852929
+ # Still broken in 3.10.0, see https://github.com/pciutils/pciutils/pull/144.
+ filter-lto
+
+ # bug #471102
+ append-lfs-flags
+}
+
+pemake() {
+ emake \
+ HOST="${CHOST}" \
+ CROSS_COMPILE="${CHOST}-" \
+ CC="$(tc-getCC)" \
+ AR="$(tc-getAR)" \
+ PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+ RANLIB="$(tc-getRANLIB)" \
+ DNS=$(usex dns) \
+ IDSDIR='$(SHAREDIR)/hwdata' \
+ MANDIR='$(SHAREDIR)/man' \
+ PREFIX="${EPREFIX}/usr" \
+ SHARED="yes" \
+ STRIP="" \
+ ZLIB=$(usex zlib) \
+ PCI_COMPRESSED_IDS=0 \
+ PCI_IDS=pci.ids \
+ LIBDIR="\${PREFIX}/$(get_libdir)" \
+ LIBKMOD=$(multilib_native_usex kmod) \
+ HWDB=$(usex udev) \
+ "$@"
+}
+
+multilib_src_compile() {
+ pemake OPT="${CFLAGS}" all
+
+ if use static-libs ; then
+ pemake \
+ -C "${BUILD_DIR}"/static \
+ OPT="${CFLAGS}" \
+ SHARED="no" \
+ lib/libpci.a
+ fi
+}
+
+multilib_src_install() {
+ pemake DESTDIR="${D}" install install-lib
+
+ use static-libs && dolib.a "${BUILD_DIR}"/static/lib/libpci.a
+}
+
+multilib_src_install_all() {
+ dodoc ChangeLog README TODO
+
+ rm "${ED}"/usr/sbin/update-pciids "${ED}"/usr/share/man/man8/update-pciids.8* || die
+ rm -r "${ED}"/usr/share/hwdata || die
+
+ newinitd "${FILESDIR}"/init.d-pciparm pciparm
+ newconfd "${FILESDIR}"/conf.d-pciparm pciparm
+}
diff --git a/sys-apps/pciutils/pciutils-3.11.1.ebuild b/sys-apps/pciutils/pciutils-3.11.1.ebuild
new file mode 100644
index 000000000000..dd3c7a05627e
--- /dev/null
+++ b/sys-apps/pciutils/pciutils-3.11.1.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs multilib-minimal flag-o-matic
+
+DESCRIPTION="Various utilities dealing with the PCI bus"
+HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git"
+SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="dns +kmod static-libs +udev zlib"
+REQUIRED_USE="static-libs? ( !udev )"
+
+# Have the sub-libs in RDEPEND with [static-libs] since, logically,
+# our libpci.a depends on libz.a/etc... at runtime.
+LIB_DEPEND="zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+),${MULTILIB_USEDEP}] )"
+DEPEND="
+ kmod? ( sys-apps/kmod )
+ udev? ( >=virtual/libudev-208[${MULTILIB_USEDEP}] )
+ static-libs? ( ${LIB_DEPEND} )
+ !static-libs? ( ${LIB_DEPEND//static-libs([+-]),} )
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/hwdata
+"
+# See bug #847133 re binutils check
+BDEPEND="
+ || ( >=sys-devel/binutils-2.37:* sys-devel/lld sys-devel/native-cctools )
+ kmod? ( virtual/pkgconfig )
+"
+
+MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h )
+
+switch_config() {
+ [[ $# -ne 2 ]] && return 1
+ local opt=$1 val=$2
+
+ sed "s@^\(${opt}=\).*\$@\1${val}@" -i Makefile || die
+ return 0
+}
+
+check_binutils_version() {
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! tc-ld-is-gold && ! tc-ld-is-lld ; then
+ # Okay, hopefully it's Binutils' bfd.
+ # bug #847133
+
+ # Convert this:
+ # ```
+ # GNU ld (Gentoo 2.38 p4) 2.38
+ # Copyright (C) 2022 Free Software Foundation, Inc.
+ # This program is free software; you may redistribute it under the terms of
+ # the GNU General Public License version 3 or (at your option) a later version.
+ # This program has absolutely no warranty.
+ # ```
+ #
+ # into...
+ # ```
+ # 2.38
+ # ```
+ local ver=$($(tc-getLD) --version 2>&1 | head -n 1 | rev | cut -d' ' -f1 | rev)
+
+ if ! [[ ${ver} =~ [0-9].[0-9][0-9] ]] ; then
+ # Skip if unrecognised format so we don't pass something
+ # odd into ver_cut.
+ return
+ fi
+
+ ver_major=$(ver_cut 1 "${ver}")
+ ver_minor=$(ver_cut 2 "${ver}")
+
+ # We use 2.37 here, not 2.35, as https://github.com/pciutils/pciutils/issues/98 mentions
+ # because we've had other miscompiles with older Binutils (not just build failures!)
+ # and we don't want people running any unsupported versions of Binutils. An example
+ # of this is where glibc is completely broken with old binutils: bug #802036. It's
+ # just not sustainable to support.
+ if [[ ${ver_major} -eq 2 && ${ver_minor} -lt 37 ]] ; then
+ eerror "Old version of binutils activated! ${P} cannot be built with an old version."
+ eerror "Please follow these steps:"
+ eerror "1. Select a newer binutils (>= 2.37) using binutils-config"
+ eerror " (If no such version is installed, run emerge -v1 sys-devel/binutils)"
+ eerror "2. Run: . /etc/profile"
+ eerror "3. Try emerging again with: emerge -v1 ${CATEGORY}/${P}"
+ eerror "4. Complete your world upgrade if you were performing one."
+ eerror "5. Perform a depclean (emerge -acv)"
+ eerror "\tYou MUST depclean after every world upgrade in future!"
+ die "Old binutils found! Change to a newer ld using binutils-config (bug #847133)."
+ fi
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+src_prepare() {
+ default
+
+ if use static-libs ; then
+ cp -pPR "${S}" "${S}.static" || die
+ mv "${S}.static" "${S}/static" || die
+ fi
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # bug #640836, bug #852929
+ # Still broken in 3.10.0, see https://github.com/pciutils/pciutils/pull/144.
+ filter-lto
+
+ # bug #471102
+ append-lfs-flags
+}
+
+pemake() {
+ emake \
+ HOST="${CHOST}" \
+ CROSS_COMPILE="${CHOST}-" \
+ CC="$(tc-getCC)" \
+ AR="$(tc-getAR)" \
+ PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+ RANLIB="$(tc-getRANLIB)" \
+ DNS=$(usex dns) \
+ IDSDIR='$(SHAREDIR)/hwdata' \
+ MANDIR='$(SHAREDIR)/man' \
+ PREFIX="${EPREFIX}/usr" \
+ SHARED="yes" \
+ STRIP="" \
+ ZLIB=$(usex zlib) \
+ PCI_COMPRESSED_IDS=0 \
+ PCI_IDS=pci.ids \
+ LIBDIR="\${PREFIX}/$(get_libdir)" \
+ LIBKMOD=$(multilib_native_usex kmod) \
+ HWDB=$(usex udev) \
+ "$@"
+}
+
+multilib_src_compile() {
+ pemake OPT="${CFLAGS}" all
+
+ if use static-libs ; then
+ pemake \
+ -C "${BUILD_DIR}"/static \
+ OPT="${CFLAGS}" \
+ SHARED="no" \
+ lib/libpci.a
+ fi
+}
+
+multilib_src_install() {
+ pemake DESTDIR="${D}" install install-lib
+
+ use static-libs && dolib.a "${BUILD_DIR}"/static/lib/libpci.a
+}
+
+multilib_src_install_all() {
+ dodoc ChangeLog README TODO
+
+ rm "${ED}"/usr/sbin/update-pciids "${ED}"/usr/share/man/man8/update-pciids.8* || die
+ rm -r "${ED}"/usr/share/hwdata || die
+
+ newinitd "${FILESDIR}"/init.d-pciparm pciparm
+ newconfd "${FILESDIR}"/conf.d-pciparm pciparm
+}
diff --git a/sys-apps/pciutils/pciutils-3.12.0.ebuild b/sys-apps/pciutils/pciutils-3.12.0.ebuild
new file mode 100644
index 000000000000..dd3c7a05627e
--- /dev/null
+++ b/sys-apps/pciutils/pciutils-3.12.0.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs multilib-minimal flag-o-matic
+
+DESCRIPTION="Various utilities dealing with the PCI bus"
+HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git"
+SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="dns +kmod static-libs +udev zlib"
+REQUIRED_USE="static-libs? ( !udev )"
+
+# Have the sub-libs in RDEPEND with [static-libs] since, logically,
+# our libpci.a depends on libz.a/etc... at runtime.
+LIB_DEPEND="zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+),${MULTILIB_USEDEP}] )"
+DEPEND="
+ kmod? ( sys-apps/kmod )
+ udev? ( >=virtual/libudev-208[${MULTILIB_USEDEP}] )
+ static-libs? ( ${LIB_DEPEND} )
+ !static-libs? ( ${LIB_DEPEND//static-libs([+-]),} )
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/hwdata
+"
+# See bug #847133 re binutils check
+BDEPEND="
+ || ( >=sys-devel/binutils-2.37:* sys-devel/lld sys-devel/native-cctools )
+ kmod? ( virtual/pkgconfig )
+"
+
+MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h )
+
+switch_config() {
+ [[ $# -ne 2 ]] && return 1
+ local opt=$1 val=$2
+
+ sed "s@^\(${opt}=\).*\$@\1${val}@" -i Makefile || die
+ return 0
+}
+
+check_binutils_version() {
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! tc-ld-is-gold && ! tc-ld-is-lld ; then
+ # Okay, hopefully it's Binutils' bfd.
+ # bug #847133
+
+ # Convert this:
+ # ```
+ # GNU ld (Gentoo 2.38 p4) 2.38
+ # Copyright (C) 2022 Free Software Foundation, Inc.
+ # This program is free software; you may redistribute it under the terms of
+ # the GNU General Public License version 3 or (at your option) a later version.
+ # This program has absolutely no warranty.
+ # ```
+ #
+ # into...
+ # ```
+ # 2.38
+ # ```
+ local ver=$($(tc-getLD) --version 2>&1 | head -n 1 | rev | cut -d' ' -f1 | rev)
+
+ if ! [[ ${ver} =~ [0-9].[0-9][0-9] ]] ; then
+ # Skip if unrecognised format so we don't pass something
+ # odd into ver_cut.
+ return
+ fi
+
+ ver_major=$(ver_cut 1 "${ver}")
+ ver_minor=$(ver_cut 2 "${ver}")
+
+ # We use 2.37 here, not 2.35, as https://github.com/pciutils/pciutils/issues/98 mentions
+ # because we've had other miscompiles with older Binutils (not just build failures!)
+ # and we don't want people running any unsupported versions of Binutils. An example
+ # of this is where glibc is completely broken with old binutils: bug #802036. It's
+ # just not sustainable to support.
+ if [[ ${ver_major} -eq 2 && ${ver_minor} -lt 37 ]] ; then
+ eerror "Old version of binutils activated! ${P} cannot be built with an old version."
+ eerror "Please follow these steps:"
+ eerror "1. Select a newer binutils (>= 2.37) using binutils-config"
+ eerror " (If no such version is installed, run emerge -v1 sys-devel/binutils)"
+ eerror "2. Run: . /etc/profile"
+ eerror "3. Try emerging again with: emerge -v1 ${CATEGORY}/${P}"
+ eerror "4. Complete your world upgrade if you were performing one."
+ eerror "5. Perform a depclean (emerge -acv)"
+ eerror "\tYou MUST depclean after every world upgrade in future!"
+ die "Old binutils found! Change to a newer ld using binutils-config (bug #847133)."
+ fi
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+src_prepare() {
+ default
+
+ if use static-libs ; then
+ cp -pPR "${S}" "${S}.static" || die
+ mv "${S}.static" "${S}/static" || die
+ fi
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # bug #640836, bug #852929
+ # Still broken in 3.10.0, see https://github.com/pciutils/pciutils/pull/144.
+ filter-lto
+
+ # bug #471102
+ append-lfs-flags
+}
+
+pemake() {
+ emake \
+ HOST="${CHOST}" \
+ CROSS_COMPILE="${CHOST}-" \
+ CC="$(tc-getCC)" \
+ AR="$(tc-getAR)" \
+ PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+ RANLIB="$(tc-getRANLIB)" \
+ DNS=$(usex dns) \
+ IDSDIR='$(SHAREDIR)/hwdata' \
+ MANDIR='$(SHAREDIR)/man' \
+ PREFIX="${EPREFIX}/usr" \
+ SHARED="yes" \
+ STRIP="" \
+ ZLIB=$(usex zlib) \
+ PCI_COMPRESSED_IDS=0 \
+ PCI_IDS=pci.ids \
+ LIBDIR="\${PREFIX}/$(get_libdir)" \
+ LIBKMOD=$(multilib_native_usex kmod) \
+ HWDB=$(usex udev) \
+ "$@"
+}
+
+multilib_src_compile() {
+ pemake OPT="${CFLAGS}" all
+
+ if use static-libs ; then
+ pemake \
+ -C "${BUILD_DIR}"/static \
+ OPT="${CFLAGS}" \
+ SHARED="no" \
+ lib/libpci.a
+ fi
+}
+
+multilib_src_install() {
+ pemake DESTDIR="${D}" install install-lib
+
+ use static-libs && dolib.a "${BUILD_DIR}"/static/lib/libpci.a
+}
+
+multilib_src_install_all() {
+ dodoc ChangeLog README TODO
+
+ rm "${ED}"/usr/sbin/update-pciids "${ED}"/usr/share/man/man8/update-pciids.8* || die
+ rm -r "${ED}"/usr/share/hwdata || die
+
+ newinitd "${FILESDIR}"/init.d-pciparm pciparm
+ newconfd "${FILESDIR}"/conf.d-pciparm pciparm
+}
diff --git a/sys-apps/pciutils/pciutils-3.5.6-r1.ebuild b/sys-apps/pciutils/pciutils-3.5.6-r1.ebuild
deleted file mode 100644
index 490f975d9543..000000000000
--- a/sys-apps/pciutils/pciutils-3.5.6-r1.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eapi7-ver multilib toolchain-funcs multilib-minimal flag-o-matic
-
-DESCRIPTION="Various utilities dealing with the PCI bus"
-HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git"
-SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="dns +kmod static-libs +udev zlib"
-
-# Have the sub-libs in RDEPEND with [static-libs] since, logically,
-# our libpci.a depends on libz.a/etc... at runtime.
-LIB_DEPEND="
- zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+),${MULTILIB_USEDEP}] )
- udev? ( >=virtual/libudev-208[static-libs(-),${MULTILIB_USEDEP}] )
-"
-DEPEND="
- kmod? ( sys-apps/kmod )
- static-libs? ( ${LIB_DEPEND} )
- !static-libs? ( ${LIB_DEPEND//static-libs([+-]),} )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/hwids
-"
-DEPEND="
- ${DEPEND}
- kmod? ( virtual/pkgconfig )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.9-static-pc.patch
-)
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h )
-
-switch_config() {
- [[ $# -ne 2 ]] && return 1
- local opt=$1 val=$2
-
- sed "s@^\(${opt}=\).*\$@\1${val}@" -i Makefile || die
- return 0
-}
-
-src_prepare() {
- default
-
- if use static-libs ; then
- cp -pPR "${S}" "${S}.static" || die
- mv "${S}.static" "${S}/static" || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- append-lfs-flags #471102
-}
-
-pemake() {
- emake \
- HOST="${CHOST}" \
- CROSS_COMPILE="${CHOST}-" \
- CC="$(tc-getCC)" \
- AR="$(tc-getAR)" \
- PKG_CONFIG="$(tc-getPKG_CONFIG)" \
- RANLIB="$(tc-getRANLIB)" \
- DNS=$(usex dns) \
- IDSDIR='$(SHAREDIR)/misc' \
- MANDIR='$(SHAREDIR)/man' \
- PREFIX="${EPREFIX}/usr" \
- SHARED="yes" \
- STRIP="" \
- ZLIB=$(usex zlib) \
- PCI_COMPRESSED_IDS=0 \
- PCI_IDS=pci.ids \
- LIBDIR="\${PREFIX}/$(get_libdir)" \
- LIBKMOD=$(multilib_native_usex kmod) \
- HWDB=$(usex udev) \
- "$@"
-}
-
-multilib_src_compile() {
- pemake OPT="${CFLAGS}" all
- if use static-libs ; then
- pemake \
- -C "${BUILD_DIR}/static" \
- OPT="${CFLAGS}" \
- SHARED="no" \
- lib/libpci.a
- fi
-}
-
-multilib_src_install() {
- pemake DESTDIR="${D}" install install-lib
- use static-libs && dolib.a "${BUILD_DIR}/static/lib/libpci.a"
-}
-
-multilib_src_install_all() {
- dodoc ChangeLog README TODO
-
- rm "${ED}"/usr/sbin/update-pciids "${ED}"/usr/share/misc/pci.ids \
- "${ED}"/usr/share/man/man8/update-pciids.8*
-
- newinitd "${FILESDIR}"/init.d-pciparm pciparm
- newconfd "${FILESDIR}"/conf.d-pciparm pciparm
-}
-
-pkg_postinst() {
- if [[ ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 3.2.0 ; then
- elog "The 'network-cron' USE flag is gone; if you want a more up-to-date"
- elog "pci.ids file, you should use sys-apps/hwids-99999999 (live ebuild)."
- fi
-}
diff --git a/sys-apps/pciutils/pciutils-3.6.4.ebuild b/sys-apps/pciutils/pciutils-3.6.4.ebuild
deleted file mode 100644
index 0669046026a1..000000000000
--- a/sys-apps/pciutils/pciutils-3.6.4.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib toolchain-funcs multilib-minimal flag-o-matic
-
-DESCRIPTION="Various utilities dealing with the PCI bus"
-HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git"
-SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="dns +kmod static-libs +udev zlib"
-
-# Have the sub-libs in RDEPEND with [static-libs] since, logically,
-# our libpci.a depends on libz.a/etc... at runtime.
-LIB_DEPEND="
- zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+),${MULTILIB_USEDEP}] )
- udev? ( >=virtual/libudev-208[static-libs(-),${MULTILIB_USEDEP}] )
-"
-DEPEND="
- kmod? ( sys-apps/kmod )
- static-libs? ( ${LIB_DEPEND} )
- !static-libs? ( ${LIB_DEPEND//static-libs([+-]),} )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/hwids
-"
-BDEPEND="kmod? ( virtual/pkgconfig )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.9-static-pc.patch
-)
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h )
-
-switch_config() {
- [[ $# -ne 2 ]] && return 1
- local opt=$1 val=$2
-
- sed "s@^\(${opt}=\).*\$@\1${val}@" -i Makefile || die
- return 0
-}
-
-src_prepare() {
- default
-
- if use static-libs ; then
- cp -pPR "${S}" "${S}.static" || die
- mv "${S}.static" "${S}/static" || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- append-lfs-flags #471102
-}
-
-pemake() {
- emake \
- HOST="${CHOST}" \
- CROSS_COMPILE="${CHOST}-" \
- CC="$(tc-getCC)" \
- AR="$(tc-getAR)" \
- PKG_CONFIG="$(tc-getPKG_CONFIG)" \
- RANLIB="$(tc-getRANLIB)" \
- DNS=$(usex dns) \
- IDSDIR='$(SHAREDIR)/misc' \
- MANDIR='$(SHAREDIR)/man' \
- PREFIX="${EPREFIX}/usr" \
- SHARED="yes" \
- STRIP="" \
- ZLIB=$(usex zlib) \
- PCI_COMPRESSED_IDS=0 \
- PCI_IDS=pci.ids \
- LIBDIR="\${PREFIX}/$(get_libdir)" \
- LIBKMOD=$(multilib_native_usex kmod) \
- HWDB=$(usex udev) \
- "$@"
-}
-
-multilib_src_compile() {
- pemake OPT="${CFLAGS}" all
- if use static-libs ; then
- pemake \
- -C "${BUILD_DIR}/static" \
- OPT="${CFLAGS}" \
- SHARED="no" \
- lib/libpci.a
- fi
-}
-
-multilib_src_install() {
- pemake DESTDIR="${D}" install install-lib
- use static-libs && dolib.a "${BUILD_DIR}/static/lib/libpci.a"
-}
-
-multilib_src_install_all() {
- dodoc ChangeLog README TODO
-
- rm "${ED}"/usr/sbin/update-pciids "${ED}"/usr/share/misc/pci.ids \
- "${ED}"/usr/share/man/man8/update-pciids.8*
-
- newinitd "${FILESDIR}"/init.d-pciparm pciparm
- newconfd "${FILESDIR}"/conf.d-pciparm pciparm
-}
-
-pkg_postinst() {
- if [[ ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 3.2.0 ; then
- elog "The 'network-cron' USE flag is gone; if you want a more up-to-date"
- elog "pci.ids file, you should use sys-apps/hwids-99999999 (live ebuild)."
- fi
-}
diff --git a/sys-apps/pciutils/pciutils-3.7.0.ebuild b/sys-apps/pciutils/pciutils-3.7.0.ebuild
deleted file mode 100644
index 5f2028a86005..000000000000
--- a/sys-apps/pciutils/pciutils-3.7.0.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib toolchain-funcs multilib-minimal flag-o-matic
-
-DESCRIPTION="Various utilities dealing with the PCI bus"
-HOMEPAGE="https://mj.ucw.cz/sw/pciutils/ https://git.kernel.org/?p=utils/pciutils/pciutils.git"
-SRC_URI="https://mj.ucw.cz/download/linux/pci/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="dns +kmod static-libs +udev zlib"
-
-# Have the sub-libs in RDEPEND with [static-libs] since, logically,
-# our libpci.a depends on libz.a/etc... at runtime.
-LIB_DEPEND="
- zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+),${MULTILIB_USEDEP}] )
- udev? ( >=virtual/libudev-208[static-libs(-),${MULTILIB_USEDEP}] )
-"
-DEPEND="
- kmod? ( sys-apps/kmod )
- static-libs? ( ${LIB_DEPEND} )
- !static-libs? ( ${LIB_DEPEND//static-libs([+-]),} )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/hwids
-"
-BDEPEND="kmod? ( virtual/pkgconfig )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1.9-static-pc.patch
-)
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pci/config.h )
-
-switch_config() {
- [[ $# -ne 2 ]] && return 1
- local opt=$1 val=$2
-
- sed "s@^\(${opt}=\).*\$@\1${val}@" -i Makefile || die
- return 0
-}
-
-src_prepare() {
- default
-
- if use static-libs ; then
- cp -pPR "${S}" "${S}.static" || die
- mv "${S}.static" "${S}/static" || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- append-lfs-flags #471102
-}
-
-pemake() {
- emake \
- HOST="${CHOST}" \
- CROSS_COMPILE="${CHOST}-" \
- CC="$(tc-getCC)" \
- AR="$(tc-getAR)" \
- PKG_CONFIG="$(tc-getPKG_CONFIG)" \
- RANLIB="$(tc-getRANLIB)" \
- DNS=$(usex dns) \
- IDSDIR='$(SHAREDIR)/misc' \
- MANDIR='$(SHAREDIR)/man' \
- PREFIX="${EPREFIX}/usr" \
- SHARED="yes" \
- STRIP="" \
- ZLIB=$(usex zlib) \
- PCI_COMPRESSED_IDS=0 \
- PCI_IDS=pci.ids \
- LIBDIR="\${PREFIX}/$(get_libdir)" \
- LIBKMOD=$(multilib_native_usex kmod) \
- HWDB=$(usex udev) \
- "$@"
-}
-
-multilib_src_compile() {
- pemake OPT="${CFLAGS}" all
- if use static-libs ; then
- pemake \
- -C "${BUILD_DIR}/static" \
- OPT="${CFLAGS}" \
- SHARED="no" \
- lib/libpci.a
- fi
-}
-
-multilib_src_install() {
- pemake DESTDIR="${D}" install install-lib
- use static-libs && dolib.a "${BUILD_DIR}/static/lib/libpci.a"
-}
-
-multilib_src_install_all() {
- dodoc ChangeLog README TODO
-
- rm "${ED}"/usr/sbin/update-pciids "${ED}"/usr/share/misc/pci.ids \
- "${ED}"/usr/share/man/man8/update-pciids.8*
-
- newinitd "${FILESDIR}"/init.d-pciparm pciparm
- newconfd "${FILESDIR}"/conf.d-pciparm pciparm
-}
-
-pkg_postinst() {
- if [[ ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 3.2.0 ; then
- elog "The 'network-cron' USE flag is gone; if you want a more up-to-date"
- elog "pci.ids file, you should use sys-apps/hwids-99999999 (live ebuild)."
- fi
-}
diff --git a/sys-apps/pcmciautils/Manifest b/sys-apps/pcmciautils/Manifest
index 453c3097e25f..63bc74b18f3d 100644
--- a/sys-apps/pcmciautils/Manifest
+++ b/sys-apps/pcmciautils/Manifest
@@ -1,2 +1,3 @@
+DIST pcmciautils_018-14.debian.tar.xz 11516 BLAKE2B f023fce015a71a09b4b012c0d7396bc8eb426ccbd3c92e0ce7bd46c5f5d2510d0eae5a296300017e316fef1a6471d0040e8f84afc989d7f5fba734fdd5e11e1e SHA512 e5c98cbe54da296a8de05916f2e987f0dd5668e39a65f771e46aa5b1a04aa4821c3c5d0c94b0c9bede26df011f6a441be91f3c49105ceaca631daf013fbd6430
DIST pcmciautils_018-8.debian.tar.gz 11213 BLAKE2B cf28ecf71ebfd5c4ad7d882cbadab71b787f407adb2d20258cdc1157ca7d542bf398ff09207037d1d6e933d43e477b50b28ca3f0ac0e557fbaefb9f31656843e SHA512 8a00d776e208b43d01fe22b9d4e889bc1b2c5982aa1bf225bdd613ffb0f5b37f5266ccc1cb91df9ac49c4ee3e3653ebb29807b61fff53c585e2cfed5aa2cd9e9
DIST pcmciautils_018.orig.tar.gz 48516 BLAKE2B 0b197cdd7d0940e5c0eee2da961f0f4dd972a3178ba5d07a6492185d0ab156cd61f5343c8f9d812cff402f04af76a15baa3db564d14317d3817e5325dd8811fb SHA512 f0af1fc6155686ae61c1c85a6451b032088a3880dfbc05c1d1ed33ca8e975745f9d4bedb0f3ee0a1252461aa008bed8014c73ff850cddd89d930524a6d68d47d
diff --git a/sys-apps/pcmciautils/files/pcmciautils-018_p8-musl-unsigned-type.patch b/sys-apps/pcmciautils/files/pcmciautils-018_p8-musl-unsigned-type.patch
new file mode 100644
index 000000000000..6039b8147096
--- /dev/null
+++ b/sys-apps/pcmciautils/files/pcmciautils-018_p8-musl-unsigned-type.patch
@@ -0,0 +1,24 @@
+https://git.alpinelinux.org/aports/plain/main/pcmciautils/unsigned.patch
+https://bugs.gentoo.org/716120
+--- a/src/read-cis.c
++++ b/src/read-cis.c
+@@ -51,7 +51,7 @@
+ /* Get indirect link from the MFC tuple */
+ read_cis(tuple->Flags.link_space,
+ tuple->LinkOffset, 5, link);
+- ofs = *(u_int *)(link+1);
++ ofs = *(unsigned int *)(link+1);
+ tuple->Flags.space = (link[0] == CISTPL_MFC_ATTR);
+ /* Move to the next indirect link */
+ tuple->LinkOffset += 5;
+--- a/src/yacc_config.y
++++ b/src/yacc_config.y
+@@ -40,7 +40,7 @@
+
+ %union {
+ char *str;
+- u_long num;
++ unsigned long num;
+ struct adjust_list_t *adjust;
+ }
+
diff --git a/sys-apps/pcmciautils/metadata.xml b/sys-apps/pcmciautils/metadata.xml
index 2c7c2f6db07d..223e6e8f7b94 100644
--- a/sys-apps/pcmciautils/metadata.xml
+++ b/sys-apps/pcmciautils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<use>
diff --git a/sys-apps/pcmciautils/pcmciautils-018_p14.ebuild b/sys-apps/pcmciautils/pcmciautils-018_p14.ebuild
new file mode 100644
index 000000000000..4fa25b6e060c
--- /dev/null
+++ b/sys-apps/pcmciautils/pcmciautils-018_p14.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic linux-info toolchain-funcs udev
+
+DEB_REV=${PV#*_p}
+MY_PV=${PV%_p*}
+
+DESCRIPTION="PCMCIA userspace utilities for Linux"
+HOMEPAGE="https://packages.qa.debian.org/pcmciautils"
+SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}.orig.tar.gz
+ mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}-${DEB_REV}.debian.tar.xz"
+S="${WORKDIR}"/${PN}-${MY_PV}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~loong ppc ~riscv x86"
+IUSE="debug staticsocket"
+
+RDEPEND="sys-apps/kmod[tools]"
+DEPEND="${RDEPEND}
+ app-alternatives/yacc
+ app-alternatives/lex"
+
+PATCHES=(
+ "${WORKDIR}"/debian/patches/no-modprobe-rules.patch
+ "${WORKDIR}"/debian/patches/remove-libsysfs-dep.patch
+ "${FILESDIR}"/${PN}-018_p8-flex-2.6.3-fix.patch
+ "${FILESDIR}"/${PN}-018_p8-musl-unsigned-type.patch
+ "${WORKDIR}"/debian/patches/parallel-build.patch
+)
+
+pkg_setup() {
+ CONFIG_CHECK="~PCMCIA"
+ linux-info_pkg_setup
+
+ kernel_is lt 2 6 32 && ewarn "${P} requires at least kernel 2.6.32."
+}
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e '/CFLAGS/s:-fomit-frame-pointer::' \
+ -e '/dir/s:sbin:bin:g' \
+ Makefile || die
+}
+
+src_configure() {
+ use debug && append-cppflags -DDEBUG
+
+ mypcmciaopts=(
+ STARTUP=$(usex staticsocket false true)
+ exec_prefix=/usr
+ UDEV=true
+ DEBUG=false
+ STATIC=false
+ V=true
+ udevdir="$(get_udevdir)"
+ CC="$(tc-getCC)"
+ HOSTCC="$(tc-getBUILD_CC)"
+ LD="$(tc-getCC)"
+ AR="$(tc-getAR)"
+ STRIP=true
+ RANLIB="$(tc-getRANLIB)"
+ OPTIMIZATION="${CFLAGS} ${CPPFLAGS}"
+ )
+}
+
+src_compile() {
+ emake "${mypcmciaopts[@]}"
+}
+
+src_install() {
+ emake "${mypcmciaopts[@]}" DESTDIR="${D}" install
+
+ dodoc doc/*.txt
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild b/sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild
index 6ba72087ffb2..c7f6111bb77d 100644
--- a/sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild
+++ b/sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
+
inherit flag-o-matic linux-info toolchain-funcs udev
DEB_REV=${PV#*_p}
@@ -11,24 +12,43 @@ DESCRIPTION="PCMCIA userspace utilities for Linux"
HOMEPAGE="https://packages.qa.debian.org/pcmciautils"
SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}.orig.tar.gz
mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}-${DEB_REV}.debian.tar.gz"
+S="${WORKDIR}"/${PN}-${MY_PV}
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 arm ppc x86"
+KEYWORDS="amd64 arm ~arm64 ~loong ppc ~riscv x86"
IUSE="debug staticsocket"
RDEPEND="sys-apps/kmod[tools]"
DEPEND="${RDEPEND}
- virtual/yacc
- sys-devel/flex"
+ app-alternatives/yacc
+ app-alternatives/lex"
-S=${WORKDIR}/${PN}-${MY_PV}
+PATCHES=(
+ "${WORKDIR}"/debian/patches/no-modprobe-rules.patch
+ "${WORKDIR}"/debian/patches/remove-libsysfs-dep.patch
+ "${FILESDIR}"/${P}-flex-2.6.3-fix.patch
+ "${FILESDIR}"/${PN}-018_p8-musl-unsigned-type.patch
+)
pkg_setup() {
CONFIG_CHECK="~PCMCIA"
linux-info_pkg_setup
kernel_is lt 2 6 32 && ewarn "${P} requires at least kernel 2.6.32."
+}
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e '/CFLAGS/s:-fomit-frame-pointer::' \
+ -e '/dir/s:sbin:bin:g' \
+ Makefile || die
+}
+
+src_configure() {
+ use debug && append-cppflags -DDEBUG
mypcmciaopts=(
STARTUP=$(usex staticsocket false true)
@@ -44,24 +64,7 @@ pkg_setup() {
STRIP=true
RANLIB="$(tc-getRANLIB)"
OPTIMIZATION="${CFLAGS} ${CPPFLAGS}"
- DESTDIR="${D}"
- )
-
- use debug && append-cppflags -DDEBUG
-}
-
-PATCHES=(
- "${WORKDIR}"/debian/patches/no-modprobe-rules.patch
- "${WORKDIR}"/debian/patches/remove-libsysfs-dep.patch
- "${FILESDIR}"/${P}-flex-2.6.3-fix.patch
-)
-
-src_prepare() {
- default
- sed -i \
- -e '/CFLAGS/s:-fomit-frame-pointer::' \
- -e '/dir/s:sbin:bin:g' \
- Makefile || die
+ )
}
src_compile() {
@@ -69,7 +72,7 @@ src_compile() {
}
src_install() {
- emake "${mypcmciaopts[@]}" install
+ emake "${mypcmciaopts[@]}" DESTDIR="${D}" install
dodoc doc/*.txt
}
diff --git a/sys-apps/pcsc-lite/Manifest b/sys-apps/pcsc-lite/Manifest
index 1d34122958b6..59e3eaefc649 100644
--- a/sys-apps/pcsc-lite/Manifest
+++ b/sys-apps/pcsc-lite/Manifest
@@ -1,3 +1,2 @@
-DIST pcsc-lite-1.8.25.tar.bz2 757099 BLAKE2B c34727833206b4c868e4f0cd6f8bcaf6899695a92488df8e2fc815c00771ea2f248d9d5fa457c02fc437b8350cbfa37390e07f45b90d08630c8afc34b247034a SHA512 0da63cefd70d9524b2afabd62c5f404758c805b84bbe9ef64fb801ef91a8934c38495513022565ea31bd8550b23bc95b9e9b098ddc76930e3d0643c1fbfb5deb
-DIST pcsc-lite-1.8.26.tar.bz2 754838 BLAKE2B 98bc1abdd66a08dde479821f8b1ef489980a6d58d2a624902de12d0862a4e11b47ed7b12eceff438ecd794bd78a91a7a376e7f4c78c1b03867555dd0e5b734d5 SHA512 23f9f41e08f6a5ff1840bec621ee37d6eb268e4ced58df516eb7e32cb6a84998a1d04bafcec36e6524926963e6730a25301301d364b6bd4dda8da1caaa76f037
-DIST pcsc-lite-1.9.0.tar.bz2 755963 BLAKE2B 30d027ac61aba1f57224c88ffc4ec8568dcc2747f3f7e24be07e7ce52bd23ad7a71b6a2f78d912f827a4c02a22c13ff16bc1450c02bafd92bc87ac0e34a2bbcb SHA512 35c85b15ab54c14403a080d6671b3d986910372651d46a5477111172d42c6d2cf58f4a3ce95427e7a84f6b4d3bee30ea57bf69b855f753160a3c6e72f93e34f3
+DIST pcsc-lite-2.0.0.tar.bz2 799011 BLAKE2B d93fffebbe3daf389fcd8195c9fb3d76db64dbb98ac9c7ecd08338331389298e710ca71187cb73165868b0b5e66cb9735b60e22d508db1c1a81e04555103948a SHA512 4b34628d3269ae1859f19d2ab7eb74a76a55f3d76fbc9e4e420a081a065b1d0d7b98680552c7208f3265c684bed844afc6be1c2e5f103ad916ce7f38b52ee68c
+DIST pcsc-lite-2.0.1.tar.bz2 815103 BLAKE2B a9eea4a4da1a78fc22797b17c128889b2f7caf8c4aa02dd77f4ac79e4ec458fb0162578b5422552545cd39303750d5396f3687f8cfee7603fad8d60cb54ee1e8 SHA512 af007f00f43e8d897710580f6f27814c9e7d3ca489ff01edf2e3b979e46267915aa04d9c15f225a420fa681de936e42a1d4779d962717cf9a9f4a3d1ca31502b
diff --git a/sys-apps/pcsc-lite/files/99-pcscd-hotplug.rules b/sys-apps/pcsc-lite/files/99-pcscd-hotplug.rules
deleted file mode 100644
index e6ee464344ff..000000000000
--- a/sys-apps/pcsc-lite/files/99-pcscd-hotplug.rules
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# We add this here so that it runs after ccid's and ifd-gempc's rules;
-# if we just added a pcscd-owned device, we hotplug the pcscd service.
-ACTION=="add", ENV{PCSCD}=="1", GROUP="pcscd", RUN+="/bin/env IN_HOTPLUG=1 /etc/init.d/pcscd --quiet start"
diff --git a/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch b/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch
new file mode 100644
index 000000000000..4d64c5c032f0
--- /dev/null
+++ b/sys-apps/pcsc-lite/files/pcsc-lite-1.9.8-systemd-user.patch
@@ -0,0 +1,18 @@
+Don't run the daemon as root
+https://bugs.gentoo.org/545390
+
+--- a/etc/pcscd.service.in
++++ b/etc/pcscd.service.in
+@@ -4,9 +4,12 @@
+ Documentation=man:pcscd(8)
+
+ [Service]
++PIDFile=/run/pcscd/pcscd.pid
+ ExecStart=@sbindir_exp@/pcscd --foreground --auto-exit $PCSCD_ARGS
+ ExecReload=@sbindir_exp@/pcscd --hotplug
+ EnvironmentFile=-@sysconfdir@/default/pcscd
++User=pcscd
++Group=pcscd
+
+ [Install]
+ Also=pcscd.socket
diff --git a/sys-apps/pcsc-lite/files/pcscd.conf b/sys-apps/pcsc-lite/files/pcscd.conf
new file mode 100644
index 000000000000..168c860e88c8
--- /dev/null
+++ b/sys-apps/pcsc-lite/files/pcscd.conf
@@ -0,0 +1 @@
+d /run/pcscd 0755 pcscd pcscd -
diff --git a/sys-apps/pcsc-lite/metadata.xml b/sys-apps/pcsc-lite/metadata.xml
index 37710202e74b..90fbe94fb35c 100644
--- a/sys-apps/pcsc-lite/metadata.xml
+++ b/sys-apps/pcsc-lite/metadata.xml
@@ -1,29 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>zlogene@gentoo.org</email>
- <name>Mikle Kolyada</name>
-</maintainer>
- <use>
- <flag name="embedded">limit RAM and CPU ressources by disabling features</flag>
- <flag name="libusb" restrict="&gt;=sys-apps/pcsc-lite-1.8.0">
- Use <pkg>dev-libs/libusb</pkg> detection to hotplug new
- smartcard readers. This flag should only be enabled if you're
- running a non-Linux kernel or you don't want to use
- <pkg>sys-fs/udev</pkg>.
- </flag>
-
- <flag name="udev">
- Use <pkg>sys-fs/udev</pkg> rules to handle devices' permissions
- and hotplug support. Unless you know what you're doing do not
- disable this flag on Linux kernels. This is provided as an
- option for completeness.
- </flag>
-
- <flag name="policykit">
- Uses <pkg>sys-auth/polkit</pkg> to restrict access to smartcard readers or
- smartcars to given users.
- </flag>
- </use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="embedded">limit RAM and CPU ressources by disabling features</flag>
+ <flag name="libusb" restrict="&gt;=sys-apps/pcsc-lite-1.8.0">Use <pkg>dev-libs/libusb</pkg> detection to hotplug new smartcard readers. This flag should only be enabled if you're running a non-Linux kernel or you don't want to use udev.</flag>
+ <flag name="udev">Use <pkg>virtual/libudev</pkg> rules to handle devices' permissions and hotplug support. Unless you know what you're doing do not disable this flag on Linux kernels. This is provided as an option for completeness.</flag>
+ <flag name="policykit">Uses <pkg>sys-auth/polkit</pkg> to restrict access to smartcard readers or smartcards to given users.</flag>
+ </use>
+ <upstream>
+ <changelog>https://salsa.debian.org/rousseau/PCSC/blob/master/ChangeLog</changelog>
+ <remote-id type="github">LudovicRousseau/PCSC</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/pcsc-lite/pcsc-lite-1.8.25-r1.ebuild b/sys-apps/pcsc-lite/pcsc-lite-1.8.25-r1.ebuild
deleted file mode 100644
index 17cdb4323e71..000000000000
--- a/sys-apps/pcsc-lite/pcsc-lite-1.8.25-r1.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-
-inherit python-single-r1 systemd udev multilib-minimal
-
-DESCRIPTION="PC/SC Architecture smartcard middleware library"
-HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC"
-
-SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.bz2"
-
-# GPL-2 is there for the init script; everything else comes from
-# upstream.
-LICENSE="BSD ISC MIT GPL-3+ GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-# This is called libusb so that it doesn't fool people in thinking that
-# it is _required_ for USB support. Otherwise they'll disable udev and
-# that's going to be worse.
-IUSE="libusb policykit selinux systemd +udev"
-
-REQUIRED_USE="^^ ( udev libusb ) ${PYTHON_REQUIRED_USE}"
-
-# No dependencies need the MULTILIB_DEPS because the libraries are actually
-# standalone, the deps are only needed for the daemon itself.
-DEPEND="libusb? ( virtual/libusb:1 )
- udev? ( virtual/udev )
- policykit? ( >=sys-auth/polkit-0.111 )
- acct-group/openct
- acct-group/pcscd
- acct-user/pcscd
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-pcscd )"
-
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch
-)
-
-DOCS=( AUTHORS HELP README SECURITY ChangeLog )
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" econf \
- --disable-maintainer-mode \
- --enable-usbdropdir="${EPREFIX}/usr/$(get_libdir)/readers/usb" \
- --enable-ipcdir=/run/pcscd \
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
- $(multilib_native_use_enable systemd libsystemd) \
- $(multilib_native_use_enable udev libudev) \
- $(multilib_native_use_enable libusb) \
- $(multilib_native_use_enable policykit polkit)
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- newinitd "${FILESDIR}"/pcscd-init.7 pcscd
-
- if use udev; then
- exeinto "$(get_udevdir)"
- newexe "${FILESDIR}"/pcscd-udev pcscd.sh
-
- insinto "$(get_udevdir)"/rules.d
- newins "${FILESDIR}"/99-pcscd-hotplug-r1.rules 99-pcscd-hotplug.rules
- fi
-
- python_fix_shebang "${ED}"/usr/bin/pcsc-spy
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
- elog "the pcscd group, to avoid running as root."
- elog ""
- elog "This also means you need the newest drivers available so that the"
- elog "devices get the proper owner."
- elog ""
- elog "Furthermore, a conf.d file is no longer installed by default, as"
- elog "the default configuration does not require one. If you need to"
- elog "pass further options to pcscd, create a file and set the"
- elog "EXTRA_OPTS variable."
- elog ""
- if use udev; then
- elog "Hotplug support is provided by udev rules."
- elog "When using OpenRC you additionally need to tell it to hotplug"
- elog "pcscd by setting this variable in /etc/rc.conf:"
- elog ""
- elog " rc_hotplug=\"pcscd\""
- fi
-}
diff --git a/sys-apps/pcsc-lite/pcsc-lite-1.8.26.ebuild b/sys-apps/pcsc-lite/pcsc-lite-1.8.26.ebuild
deleted file mode 100644
index df54b9cd2376..000000000000
--- a/sys-apps/pcsc-lite/pcsc-lite-1.8.26.ebuild
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-
-inherit python-single-r1 systemd udev multilib-minimal
-
-DESCRIPTION="PC/SC Architecture smartcard middleware library"
-HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC"
-
-SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.bz2"
-
-# GPL-2 is there for the init script; everything else comes from
-# upstream.
-LICENSE="BSD ISC MIT GPL-3+ GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-# This is called libusb so that it doesn't fool people in thinking that
-# it is _required_ for USB support. Otherwise they'll disable udev and
-# that's going to be worse.
-IUSE="doc embedded libusb policykit selinux systemd +udev"
-
-REQUIRED_USE="^^ ( udev libusb ) ${PYTHON_REQUIRED_USE}"
-
-# No dependencies need the MULTILIB_DEPS because the libraries are actually
-# standalone, the deps are only needed for the daemon itself.
-DEPEND="libusb? ( virtual/libusb:1 )
- udev? ( virtual/udev )
- policykit? ( >=sys-auth/polkit-0.111 )
- acct-group/openct
- acct-group/pcscd
- acct-user/pcscd
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-pcscd )"
-
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch
-)
-
-DOCS=( AUTHORS HELP README SECURITY ChangeLog )
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" econf \
- --disable-maintainer-mode \
- --enable-usbdropdir="${EPREFIX}/usr/$(get_libdir)/readers/usb" \
- --enable-ipcdir=/run/pcscd \
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
- $(use_enable doc documentation) \
- $(multilib_native_use_enable embedded) \
- $(multilib_native_use_enable systemd libsystemd) \
- $(multilib_native_use_enable udev libudev) \
- $(multilib_native_use_enable libusb) \
- $(multilib_native_use_enable policykit polkit)
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- newinitd "${FILESDIR}"/pcscd-init.7 pcscd
-
- if use udev; then
- exeinto "$(get_udevdir)"
- newexe "${FILESDIR}"/pcscd-udev pcscd.sh
-
- insinto "$(get_udevdir)"/rules.d
- newins "${FILESDIR}"/99-pcscd-hotplug-r1.rules 99-pcscd-hotplug.rules
- fi
-
- python_fix_shebang "${ED}"/usr/bin/pcsc-spy
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
- elog "the pcscd group, to avoid running as root."
- elog ""
- elog "This also means you need the newest drivers available so that the"
- elog "devices get the proper owner."
- elog ""
- elog "Furthermore, a conf.d file is no longer installed by default, as"
- elog "the default configuration does not require one. If you need to"
- elog "pass further options to pcscd, create a file and set the"
- elog "EXTRA_OPTS variable."
- elog ""
- if use udev; then
- elog "Hotplug support is provided by udev rules."
- elog "When using OpenRC you additionally need to tell it to hotplug"
- elog "pcscd by setting this variable in /etc/rc.conf:"
- elog ""
- elog " rc_hotplug=\"pcscd\""
- fi
-}
diff --git a/sys-apps/pcsc-lite/pcsc-lite-1.9.0.ebuild b/sys-apps/pcsc-lite/pcsc-lite-1.9.0.ebuild
deleted file mode 100644
index 1c65ee7590cc..000000000000
--- a/sys-apps/pcsc-lite/pcsc-lite-1.9.0.ebuild
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_7,3_8} )
-
-inherit python-single-r1 systemd udev multilib-minimal
-
-DESCRIPTION="PC/SC Architecture smartcard middleware library"
-HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC"
-
-SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.bz2"
-
-# GPL-2 is there for the init script; everything else comes from
-# upstream.
-LICENSE="BSD ISC MIT GPL-3+ GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-# This is called libusb so that it doesn't fool people in thinking that
-# it is _required_ for USB support. Otherwise they'll disable udev and
-# that's going to be worse.
-IUSE="doc embedded libusb policykit selinux systemd +udev"
-
-REQUIRED_USE="^^ ( udev libusb ) ${PYTHON_REQUIRED_USE}"
-
-# No dependencies need the MULTILIB_DEPS because the libraries are actually
-# standalone, the deps are only needed for the daemon itself.
-DEPEND="libusb? ( virtual/libusb:1 )
- udev? ( virtual/udev )
- policykit? ( >=sys-auth/polkit-0.111 )
- acct-group/openct
- acct-group/pcscd
- acct-user/pcscd
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-pcscd )"
-
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch
-)
-
-DOCS=( AUTHORS HELP README SECURITY ChangeLog )
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" econf \
- --disable-maintainer-mode \
- --enable-usbdropdir="${EPREFIX}/usr/$(get_libdir)/readers/usb" \
- --enable-ipcdir=/run/pcscd \
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
- $(use_enable doc documentation) \
- $(multilib_native_use_enable embedded) \
- $(multilib_native_use_enable systemd libsystemd) \
- $(multilib_native_use_enable udev libudev) \
- $(multilib_native_use_enable libusb) \
- $(multilib_native_use_enable policykit polkit)
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- newinitd "${FILESDIR}"/pcscd-init.7 pcscd
-
- if use udev; then
- exeinto "$(get_udevdir)"
- newexe "${FILESDIR}"/pcscd-udev pcscd.sh
-
- insinto "$(get_udevdir)"/rules.d
- newins "${FILESDIR}"/99-pcscd-hotplug-r1.rules 99-pcscd-hotplug.rules
- fi
-
- python_fix_shebang "${ED}"/usr/bin/pcsc-spy
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
- elog "the pcscd group, to avoid running as root."
- elog ""
- elog "This also means you need the newest drivers available so that the"
- elog "devices get the proper owner."
- elog ""
- elog "Furthermore, a conf.d file is no longer installed by default, as"
- elog "the default configuration does not require one. If you need to"
- elog "pass further options to pcscd, create a file and set the"
- elog "EXTRA_OPTS variable."
- elog ""
- if use udev; then
- elog "Hotplug support is provided by udev rules."
- elog "When using OpenRC you additionally need to tell it to hotplug"
- elog "pcscd by setting this variable in /etc/rc.conf:"
- elog ""
- elog " rc_hotplug=\"pcscd\""
- fi
-}
diff --git a/sys-apps/pcsc-lite/pcsc-lite-2.0.0.ebuild b/sys-apps/pcsc-lite/pcsc-lite-2.0.0.ebuild
new file mode 100644
index 000000000000..661385f197ba
--- /dev/null
+++ b/sys-apps/pcsc-lite/pcsc-lite-2.0.0.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit python-single-r1 systemd tmpfiles udev multilib-minimal
+
+DESCRIPTION="PC/SC Architecture smartcard middleware library"
+HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC"
+SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.bz2"
+
+# GPL-2 is there for the init script; everything else comes from
+# upstream.
+LICENSE="BSD ISC MIT GPL-3+ GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+# This is called libusb so that it doesn't fool people in thinking that
+# it is _required_ for USB support. Otherwise they'll disable udev and
+# that's going to be worse.
+IUSE="doc embedded libusb policykit selinux systemd +udev"
+REQUIRED_USE="^^ ( udev libusb ) ${PYTHON_REQUIRED_USE}"
+
+# No dependencies need the MULTILIB_DEPS because the libraries are actually
+# standalone, the deps are only needed for the daemon itself.
+DEPEND="
+ libusb? ( virtual/libusb:1 )
+ udev? ( virtual/libudev:= )
+ policykit? ( >=sys-auth/polkit-0.111 )
+ acct-group/openct
+ acct-group/pcscd
+ acct-user/pcscd
+ ${PYTHON_DEPS}"
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-pcscd )"
+BDEPEND="
+ app-alternatives/lex
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch
+ "${FILESDIR}"/${PN}-1.9.8-systemd-user.patch
+)
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ --disable-maintainer-mode \
+ --disable-strict \
+ --enable-usbdropdir="${EPREFIX}"/usr/$(get_libdir)/readers/usb \
+ --enable-ipcdir=/run/pcscd \
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
+ $(multilib_native_use_enable doc documentation) \
+ $(multilib_native_use_enable embedded) \
+ $(multilib_native_use_enable systemd libsystemd) \
+ $(multilib_native_use_enable udev libudev) \
+ $(multilib_native_use_enable libusb) \
+ $(multilib_native_use_enable policykit polkit)
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ dodoc HELP SECURITY
+
+ newinitd "${FILESDIR}"/pcscd-init.7 pcscd
+ dotmpfiles "${FILESDIR}"/pcscd.conf
+
+ if use udev; then
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/pcscd-udev pcscd.sh
+
+ insinto "$(get_udevdir)"/rules.d
+ newins "${FILESDIR}"/99-pcscd-hotplug-r1.rules 99-pcscd-hotplug.rules
+ fi
+
+ python_fix_shebang "${ED}"/usr/bin/pcsc-spy
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
+ elog "the pcscd group, to avoid running as root."
+ elog
+ elog "This also means you need the newest drivers available so that the"
+ elog "devices get the proper owner."
+ elog
+ elog "Furthermore, a conf.d file is no longer installed by default, as"
+ elog "the default configuration does not require one. If you need to"
+ elog "pass further options to pcscd, create a file and set the"
+ elog "EXTRA_OPTS variable."
+ elog
+
+ if use udev; then
+ elog "Hotplug support is provided by udev rules."
+ elog "When using OpenRC you additionally need to tell it to hotplug"
+ elog "pcscd by setting this variable in /etc/rc.conf:"
+ elog
+ elog " rc_hotplug=\"pcscd\""
+ fi
+
+ tmpfiles_process pcscd.conf
+
+ use udev && udev_reload
+}
+
+pkg_postrm() {
+ use udev && udev_reload
+}
diff --git a/sys-apps/pcsc-lite/pcsc-lite-2.0.1.ebuild b/sys-apps/pcsc-lite/pcsc-lite-2.0.1.ebuild
new file mode 100644
index 000000000000..661385f197ba
--- /dev/null
+++ b/sys-apps/pcsc-lite/pcsc-lite-2.0.1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit python-single-r1 systemd tmpfiles udev multilib-minimal
+
+DESCRIPTION="PC/SC Architecture smartcard middleware library"
+HOMEPAGE="https://pcsclite.apdu.fr https://github.com/LudovicRousseau/PCSC"
+SRC_URI="https://pcsclite.apdu.fr/files/${P}.tar.bz2"
+
+# GPL-2 is there for the init script; everything else comes from
+# upstream.
+LICENSE="BSD ISC MIT GPL-3+ GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+# This is called libusb so that it doesn't fool people in thinking that
+# it is _required_ for USB support. Otherwise they'll disable udev and
+# that's going to be worse.
+IUSE="doc embedded libusb policykit selinux systemd +udev"
+REQUIRED_USE="^^ ( udev libusb ) ${PYTHON_REQUIRED_USE}"
+
+# No dependencies need the MULTILIB_DEPS because the libraries are actually
+# standalone, the deps are only needed for the daemon itself.
+DEPEND="
+ libusb? ( virtual/libusb:1 )
+ udev? ( virtual/libudev:= )
+ policykit? ( >=sys-auth/polkit-0.111 )
+ acct-group/openct
+ acct-group/pcscd
+ acct-user/pcscd
+ ${PYTHON_DEPS}"
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-pcscd )"
+BDEPEND="
+ app-alternatives/lex
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.8.11-polkit-pcscd.patch
+ "${FILESDIR}"/${PN}-1.9.8-systemd-user.patch
+)
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ --disable-maintainer-mode \
+ --disable-strict \
+ --enable-usbdropdir="${EPREFIX}"/usr/$(get_libdir)/readers/usb \
+ --enable-ipcdir=/run/pcscd \
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
+ $(multilib_native_use_enable doc documentation) \
+ $(multilib_native_use_enable embedded) \
+ $(multilib_native_use_enable systemd libsystemd) \
+ $(multilib_native_use_enable udev libudev) \
+ $(multilib_native_use_enable libusb) \
+ $(multilib_native_use_enable policykit polkit)
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ dodoc HELP SECURITY
+
+ newinitd "${FILESDIR}"/pcscd-init.7 pcscd
+ dotmpfiles "${FILESDIR}"/pcscd.conf
+
+ if use udev; then
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/pcscd-udev pcscd.sh
+
+ insinto "$(get_udevdir)"/rules.d
+ newins "${FILESDIR}"/99-pcscd-hotplug-r1.rules 99-pcscd-hotplug.rules
+ fi
+
+ python_fix_shebang "${ED}"/usr/bin/pcsc-spy
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
+ elog "the pcscd group, to avoid running as root."
+ elog
+ elog "This also means you need the newest drivers available so that the"
+ elog "devices get the proper owner."
+ elog
+ elog "Furthermore, a conf.d file is no longer installed by default, as"
+ elog "the default configuration does not require one. If you need to"
+ elog "pass further options to pcscd, create a file and set the"
+ elog "EXTRA_OPTS variable."
+ elog
+
+ if use udev; then
+ elog "Hotplug support is provided by udev rules."
+ elog "When using OpenRC you additionally need to tell it to hotplug"
+ elog "pcscd by setting this variable in /etc/rc.conf:"
+ elog
+ elog " rc_hotplug=\"pcscd\""
+ fi
+
+ tmpfiles_process pcscd.conf
+
+ use udev && udev_reload
+}
+
+pkg_postrm() {
+ use udev && udev_reload
+}
diff --git a/sys-apps/pcsc-slb-rf72-drv/files/pcsc-slb-rf72-drv-1.1.0-openct.patch b/sys-apps/pcsc-slb-rf72-drv/files/pcsc-slb-rf72-drv-1.1.0-openct.patch
index c7ddb87a5a7f..03e0a9589c98 100644
--- a/sys-apps/pcsc-slb-rf72-drv/files/pcsc-slb-rf72-drv-1.1.0-openct.patch
+++ b/sys-apps/pcsc-slb-rf72-drv/files/pcsc-slb-rf72-drv-1.1.0-openct.patch
@@ -4,13 +4,6 @@ Date: Fri, 17 Jun 2016 18:58:05 +0300
Subject: [PATCH] build: use openct instead of embedded binary ctapi
Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- Makefile | 4 ++--
- ifdhandler.c | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index cdba2b6..319449a 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@ clean:
@@ -18,13 +11,11 @@ index cdba2b6..319449a 100644
lib: $(OBJ)
- $(LD) -G ifdhandler.o lib/libctapi.a -o libslb_rf72.so
-+ $(CC) $(LDFLAGS) -shared `pkg-config --libs-only-L libopenct` -lopenctapi ifdhandler.o -o libslb_rf72.so
++ $(CC) $(LDFLAGS) -shared `${PKG_CONFIG} --libs-only-L libopenct` -lopenctapi ifdhandler.o -o libslb_rf72.so
ifdhandler.o: ifdhandler.h ifdhandler.c
- $(CC) $(CFLAGS) -c ifdhandler.c $(INCLUDES)
-+ $(CC) $(CFLAGS) `pkg-config --cflags libopenct` -fPIC -DHAVE_PTHREAD_H -c ifdhandler.c $(INCLUDES)
-diff --git a/ifdhandler.c b/ifdhandler.c
-index cbb3a65..256605e 100644
++ $(CC) $(CFLAGS) `${PKG_CONFIG} --cflags libopenct` -fPIC -DHAVE_PTHREAD_H -c ifdhandler.c $(INCLUDES)
--- a/ifdhandler.c
+++ b/ifdhandler.c
@@ -29,7 +29,7 @@
diff --git a/sys-apps/pcsc-slb-rf72-drv/metadata.xml b/sys-apps/pcsc-slb-rf72-drv/metadata.xml
index 7a38bb900964..115e9d64a669 100644
--- a/sys-apps/pcsc-slb-rf72-drv/metadata.xml
+++ b/sys-apps/pcsc-slb-rf72-drv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/pcsc-slb-rf72-drv/pcsc-slb-rf72-drv-1.1.0-r2.ebuild b/sys-apps/pcsc-slb-rf72-drv/pcsc-slb-rf72-drv-1.1.0-r2.ebuild
index 39b7d34cb31a..6f8c631b16db 100644
--- a/sys-apps/pcsc-slb-rf72-drv/pcsc-slb-rf72-drv-1.1.0-r2.ebuild
+++ b/sys-apps/pcsc-slb-rf72-drv/pcsc-slb-rf72-drv-1.1.0-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -29,11 +29,12 @@ PATCHES=(
)
src_compile() {
+ tc-export PKG_CONFIG
emake CC="$(tc-getCC)" LD="$(tc-getLD)"
}
src_install() {
- local pcscdir="$(pkg-config --variable=usbdropdir libpcsclite)"
+ local pcscdir="$($(tc-getPKG_CONFIG) --variable=usbdropdir libpcsclite)"
local conf="/etc/reader.conf.d/${PN}.conf"
einstalldocs
diff --git a/sys-apps/pcsc-tools/Manifest b/sys-apps/pcsc-tools/Manifest
index 6299f8f4b920..ca65924a241c 100644
--- a/sys-apps/pcsc-tools/Manifest
+++ b/sys-apps/pcsc-tools/Manifest
@@ -1,2 +1,3 @@
-DIST pcsc-tools-1.5.6.tar.bz2 289691 BLAKE2B 35dd50a3a8babff89f9e5d769ef70a573e58b2780d680c82dfa07177a3daaf527b5ccca665c901f9667ca4a81719916bd5aebb2e9b1b4d0301001498fe587832 SHA512 94076ed5af698afcec05da9645d7108c02c110fd0ee5efecbd8e0c7eb5ed9a55ee857d23b79ab2ccb93847f8a36f996fa9d521d999395f63274d4bf1d9cf3d26
-DIST pcsc-tools-1.5.7.tar.bz2 292637 BLAKE2B f0bfa9f680a2f2b348d2baef4b4b4567008163f47d7d7e6cec694cdc424626c5c6f18c475f0e8d4c5cd49111315b3c8a934fecf30afe90bbebc0a15f8d6f4a1d SHA512 58d70f41c5815297def7d8b64807e960db85719996771ecb43a4320d3f3fc82e2deb133d9ca97b3a4e8e76267294b3339d8883ba4770bdd0071566e1ce457501
+DIST pcsc-tools-1.6.2.tar.bz2 320182 BLAKE2B 88a76f4120a183df909ce9d189e38e51897080839ebe7ca85aa4447a441363e6917ddb1c5e6c0e881c8792078700676ad1cfe24609957a4fef54374d5be824a4 SHA512 20104baefa7928a86d21cee49d045cc35b8e74fec5be79ba5608ae046a110096efae96768d281e0f1350f71a889f89c675336d8264c75f8423369a49c03b42a8
+DIST pcsc-tools-1.7.0.tar.bz2 360064 BLAKE2B e9f22e13600e40c488720844c6e93d90e8a5dd0e085b3b5245096dbc390e5978c9ff17c9cf5c34cf82f8d0cfbaf9b3d44a25b331439c5e09bf7b075d769f7a36 SHA512 8de48526306b23e9dea6d99d29ec5f1230e3959bfe82a4d1b7d65f9767369757a1f440ceca7debeba68a8492607c91d0dcf7bec366cd213f00be45a5ef018d67
+DIST pcsc-tools-1.7.1.tar.bz2 360506 BLAKE2B 64be45b49ef3fdbb42c8311990d024c3da1b8cbfe733f15617697ad23bc2cce292640dceca271fc8515c3f6f070ff801d1cc528f5203c5f74cdb5dd47c57a687 SHA512 fe60610122d05f97edf3462c9382b82c31ee75f1851db2d88088ebd378ea3f54b3112b1c1f59dd8315806f33b822e40f96d7bc186b8c5999ef339711f91136c0
diff --git a/sys-apps/pcsc-tools/metadata.xml b/sys-apps/pcsc-tools/metadata.xml
index e61f4d42482f..430a76d4135c 100644
--- a/sys-apps/pcsc-tools/metadata.xml
+++ b/sys-apps/pcsc-tools/metadata.xml
@@ -1,11 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zlogene@gentoo.org</email>
- <name>Mikle Kolyada</name>
- </maintainer>
- <use>
- <flag name="network-cron">Monthly cronjob the update-smartcard_list script</flag>
- </use>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="network-cron">Install a monthly cronjob to update the update-smartcard_list script</flag>
+ </use>
+ <upstream>
+ <changelog>https://pcsc-tools.apdu.fr/Changelog</changelog>
+ <remote-id type="github">LudovicRousseau/pcsc-tools</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/pcsc-tools/pcsc-tools-1.5.6.ebuild b/sys-apps/pcsc-tools/pcsc-tools-1.5.6.ebuild
deleted file mode 100644
index add6360afa55..000000000000
--- a/sys-apps/pcsc-tools/pcsc-tools-1.5.6.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop toolchain-funcs xdg-utils
-
-DESCRIPTION="PC/SC Architecture smartcard tools"
-HOMEPAGE="http://ludovic.rousseau.free.fr/softwares/pcsc-tools/"
-SRC_URI="http://ludovic.rousseau.free.fr/softwares/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ppc ppc64 x86"
-IUSE="gtk network-cron"
-
-DEPEND=">=sys-apps/pcsc-lite-1.4.14"
-RDEPEND="${DEPEND}
- dev-perl/pcsc-perl
- gtk? ( dev-perl/Gtk2 )"
-BDEPEND="virtual/pkgconfig"
-
-DOCS=(
- README Changelog
-)
-
-src_compile() {
- # explicitly only build the pcsc_scan application, or the man
- # pages will be gzipped first, and then unpacked.
- emake pcsc_scan CC=$(tc-getCC)
-}
-
-src_install() {
- einstalldocs
-
- # install manually, makes it much easier since the Makefile
- # requires fiddling with
- dobin ATR_analysis scriptor pcsc_scan
- doman pcsc_scan.1 scriptor.1p ATR_analysis.1p
-
- if use gtk; then
- domenu gscriptor.desktop
- dobin gscriptor
- doman gscriptor.1p
- fi
-
- if use network-cron ; then
- exeinto /etc/cron.monthly
- newexe "${FILESDIR}"/smartcard.cron update-smartcard_list
- fi
-
- insinto /usr/share/pcsc
- doins smartcard_list.txt
-}
-
-pkg_postinst() {
- use gtk && xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
-}
diff --git a/sys-apps/pcsc-tools/pcsc-tools-1.5.7.ebuild b/sys-apps/pcsc-tools/pcsc-tools-1.5.7.ebuild
deleted file mode 100644
index d3b2711916dc..000000000000
--- a/sys-apps/pcsc-tools/pcsc-tools-1.5.7.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop toolchain-funcs xdg-utils
-
-DESCRIPTION="PC/SC Architecture smartcard tools"
-HOMEPAGE="http://ludovic.rousseau.free.fr/softwares/pcsc-tools/ https://github.com/LudovicRousseau/pcsc-tools"
-SRC_URI="http://ludovic.rousseau.free.fr/softwares/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE="gtk network-cron"
-
-DEPEND=">=sys-apps/pcsc-lite-1.4.14"
-RDEPEND="${DEPEND}
- dev-perl/pcsc-perl
- gtk? ( dev-perl/Gtk2 )"
-BDEPEND="virtual/pkgconfig"
-
-DOCS=(
- README Changelog
-)
-
-src_compile() {
- # explicitly only build the pcsc_scan application, or the man
- # pages will be gzipped first, and then unpacked.
- emake pcsc_scan CC=$(tc-getCC)
-}
-
-src_install() {
- einstalldocs
-
- # install manually, makes it much easier since the Makefile
- # requires fiddling with
- dobin ATR_analysis scriptor pcsc_scan
- doman pcsc_scan.1 scriptor.1p ATR_analysis.1p
-
- if use gtk; then
- domenu gscriptor.desktop
- dobin gscriptor
- doman gscriptor.1p
- fi
-
- if use network-cron ; then
- exeinto /etc/cron.monthly
- newexe "${FILESDIR}"/smartcard.cron update-smartcard_list
- fi
-
- insinto /usr/share/pcsc
- doins smartcard_list.txt
-}
-
-pkg_postinst() {
- use gtk && xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
-}
diff --git a/sys-apps/pcsc-tools/pcsc-tools-1.6.2.ebuild b/sys-apps/pcsc-tools/pcsc-tools-1.6.2.ebuild
new file mode 100644
index 000000000000..658a1bb624d4
--- /dev/null
+++ b/sys-apps/pcsc-tools/pcsc-tools-1.6.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs xdg-utils
+
+DESCRIPTION="PC/SC Architecture smartcard tools"
+HOMEPAGE="https://pcsc-tools.apdu.fr/ https://github.com/LudovicRousseau/pcsc-tools"
+SRC_URI="https://pcsc-tools.apdu.fr/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 x86"
+IUSE="gui network-cron"
+
+DEPEND=">=sys-apps/pcsc-lite-1.4.14"
+RDEPEND="
+ ${DEPEND}
+ dev-perl/pcsc-perl
+ gui? ( dev-perl/Gtk3 )
+"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=(
+ README Changelog
+)
+
+src_compile() {
+ # explicitly only build the pcsc_scan application, or the man
+ # pages will be gzipped first, and then unpacked.
+ emake pcsc_scan CC="$(tc-getCC)"
+}
+
+src_install() {
+ einstalldocs
+
+ # install manually, makes it much easier since the Makefile
+ # requires fiddling with
+ dobin ATR_analysis scriptor pcsc_scan
+ doman pcsc_scan.1 scriptor.1p ATR_analysis.1p
+
+ if use gui; then
+ domenu gscriptor.desktop
+ dobin gscriptor
+ doman gscriptor.1p
+ fi
+
+ if use network-cron ; then
+ exeinto /etc/cron.monthly
+ newexe "${FILESDIR}"/smartcard.cron update-smartcard_list
+ fi
+
+ insinto /usr/share/pcsc
+ doins smartcard_list.txt
+}
+
+pkg_postinst() {
+ use gui && xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/sys-apps/pcsc-tools/pcsc-tools-1.7.0.ebuild b/sys-apps/pcsc-tools/pcsc-tools-1.7.0.ebuild
new file mode 100644
index 000000000000..f0208fe47002
--- /dev/null
+++ b/sys-apps/pcsc-tools/pcsc-tools-1.7.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs xdg-utils
+
+DESCRIPTION="PC/SC Architecture smartcard tools"
+HOMEPAGE="https://pcsc-tools.apdu.fr/ https://github.com/LudovicRousseau/pcsc-tools"
+SRC_URI="https://pcsc-tools.apdu.fr/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 x86"
+IUSE="gui network-cron nls"
+
+DEPEND=">=sys-apps/pcsc-lite-1.4.14"
+RDEPEND="
+ ${DEPEND}
+ dev-perl/pcsc-perl
+ gui? ( dev-perl/Gtk3 )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+"
+
+src_configure() {
+ econf $(use_enable nls gettext)
+}
+
+src_compile() {
+ # explicitly only build the pcsc_scan application, or the man
+ # pages will be gzipped first, and then unpacked.
+ emake pcsc_scan CC="$(tc-getCC)"
+}
+
+src_install() {
+ einstalldocs
+
+ # install manually, makes it much easier since the Makefile
+ # requires fiddling with
+ dobin ATR_analysis scriptor pcsc_scan
+ doman pcsc_scan.1 scriptor.1p ATR_analysis.1p
+
+ if use gui; then
+ domenu gscriptor.desktop
+ dobin gscriptor
+ doman gscriptor.1p
+ fi
+
+ if use network-cron ; then
+ exeinto /etc/cron.monthly
+ newexe "${FILESDIR}"/smartcard.cron update-smartcard_list
+ fi
+
+ insinto /usr/share/pcsc
+ doins smartcard_list.txt
+}
+
+pkg_postinst() {
+ use gui && xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/sys-apps/pcsc-tools/pcsc-tools-1.7.1.ebuild b/sys-apps/pcsc-tools/pcsc-tools-1.7.1.ebuild
new file mode 100644
index 000000000000..f0208fe47002
--- /dev/null
+++ b/sys-apps/pcsc-tools/pcsc-tools-1.7.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs xdg-utils
+
+DESCRIPTION="PC/SC Architecture smartcard tools"
+HOMEPAGE="https://pcsc-tools.apdu.fr/ https://github.com/LudovicRousseau/pcsc-tools"
+SRC_URI="https://pcsc-tools.apdu.fr/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 x86"
+IUSE="gui network-cron nls"
+
+DEPEND=">=sys-apps/pcsc-lite-1.4.14"
+RDEPEND="
+ ${DEPEND}
+ dev-perl/pcsc-perl
+ gui? ( dev-perl/Gtk3 )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+"
+
+src_configure() {
+ econf $(use_enable nls gettext)
+}
+
+src_compile() {
+ # explicitly only build the pcsc_scan application, or the man
+ # pages will be gzipped first, and then unpacked.
+ emake pcsc_scan CC="$(tc-getCC)"
+}
+
+src_install() {
+ einstalldocs
+
+ # install manually, makes it much easier since the Makefile
+ # requires fiddling with
+ dobin ATR_analysis scriptor pcsc_scan
+ doman pcsc_scan.1 scriptor.1p ATR_analysis.1p
+
+ if use gui; then
+ domenu gscriptor.desktop
+ dobin gscriptor
+ doman gscriptor.1p
+ fi
+
+ if use network-cron ; then
+ exeinto /etc/cron.monthly
+ newexe "${FILESDIR}"/smartcard.cron update-smartcard_list
+ fi
+
+ insinto /usr/share/pcsc
+ doins smartcard_list.txt
+}
+
+pkg_postinst() {
+ use gui && xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/sys-apps/pick/Manifest b/sys-apps/pick/Manifest
index 9805f2d30289..74e1ecb19fe9 100644
--- a/sys-apps/pick/Manifest
+++ b/sys-apps/pick/Manifest
@@ -1 +1 @@
-DIST pick-3.0.1.tar.gz 29878 BLAKE2B 8910bf726102802a76717ecc20360882c1c25bc346324c33173eb64872066ff284636557bf10a98a6cfbecc50dd4c8cd87b68aa924b976b072e5fead8989e316 SHA512 7448e7937640f69d397bd1bd48526865b8866a8f47eb04b7af918df992f36b6e932a1cb68e845f9262faa9c88c1afcb354368b7e1c6b1dd8503aafdb53e4b70f
+DIST pick-4.0.0.tar.gz 29786 BLAKE2B c1d119cfb5dd91bd3c71171d32a6ce92d06ab8ea1cfa5a40c042448b7b90ef5d24c02dc04962b24ef91fd3ea5cb56858b231901c7035f47e2c04682f99e5c61e SHA512 690f8ee174f69ec5897831b71f22bc82dbdaf71329e2b540cfb06e49963231196efe6192d1f564c1c7029c7335736d42f02483850ccbb2bd5bcd1dc52b034f56
diff --git a/sys-apps/pick/files/pick-4.0.0-tinfo.patch b/sys-apps/pick/files/pick-4.0.0-tinfo.patch
new file mode 100644
index 000000000000..7797f1422d94
--- /dev/null
+++ b/sys-apps/pick/files/pick-4.0.0-tinfo.patch
@@ -0,0 +1,28 @@
+From a21522afa9fcd0f299923767f71577feac34be4c Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Sun, 10 Jan 2021 00:51:36 +0100
+Subject: [PATCH] configure: Fix build against ncurses with separate tinfo lib
+
+Gentoo-bug: https://bugs.gentoo.org/685712
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ configure | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/configure b/configure
+index 857ce4e..e0f26ee 100755
+--- a/configure
++++ b/configure
+@@ -161,6 +161,9 @@ set -x
+ if (LDFLAGS=-lcurses check_curses); then
+ HAVE_CURSES=1
+ LDFLAGS="${LDFLAGS} -lcurses"
++elif (LDFLAGS=-ltinfow check_curses); then
++ HAVE_NCURSESW=1
++ LDFLAGS="${LDFLAGS} -ltinfow"
+ elif (LDFLAGS=-lncursesw check_curses); then
+ HAVE_NCURSESW=1
+ LDFLAGS="${LDFLAGS} -lncursesw"
+--
+2.30.0
+
diff --git a/sys-apps/pick/metadata.xml b/sys-apps/pick/metadata.xml
index 86010d6fff63..370118421de4 100644
--- a/sys-apps/pick/metadata.xml
+++ b/sys-apps/pick/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/pick/pick-3.0.1.ebuild b/sys-apps/pick/pick-3.0.1.ebuild
deleted file mode 100644
index 7bdaff986327..000000000000
--- a/sys-apps/pick/pick-3.0.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools toolchain-funcs
-
-DESCRIPTION="a fuzzy search tool for the command-line"
-HOMEPAGE="https://github.com/mptre/pick"
-SRC_URI="https://github.com/mptre/pick/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="sys-libs/ncurses:0="
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-src_configure() {
- # not autoconf
- ./configure || die
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${ED}" BINDIR=/usr/bin MANDIR=/usr/share/man install
- dodoc CHANGELOG.md
-}
diff --git a/sys-apps/pick/pick-4.0.0.ebuild b/sys-apps/pick/pick-4.0.0.ebuild
new file mode 100644
index 000000000000..74ce519db2c9
--- /dev/null
+++ b/sys-apps/pick/pick-4.0.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="A fuzzy search tool for the command-line"
+HOMEPAGE="https://github.com/mptre/pick"
+SRC_URI="https://github.com/mptre/pick/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="sys-libs/ncurses:0="
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.0.0-tinfo.patch"
+)
+
+src_configure() {
+ # not autoconf
+ ./configure || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" BINDIR=/usr/bin MANDIR=/usr/share/man install
+ dodoc CHANGELOG.md
+}
diff --git a/sys-apps/pkgcore/Manifest b/sys-apps/pkgcore/Manifest
index 2af50d0f14e0..f00e95f74c6d 100644
--- a/sys-apps/pkgcore/Manifest
+++ b/sys-apps/pkgcore/Manifest
@@ -1 +1 @@
-DIST pkgcore-0.10.13.tar.gz 647320 BLAKE2B ef80320a0a8d35ed68b1d77d52a3cfb2ffbadae2fe9f11efe3f42c68f55388074b5c4b2857f265f1add4cfe479cba9716d45afaf141d113b0874d409955269c7 SHA512 acc5ee2cc6fd0f897129f311e0484e28a1c8f374c5a2e56a29d228fee74b7be0cb6059171b743e0db35544b5b5779d35efcda21e46e65285653ba4155205281f
+DIST pkgcore-0.12.27.tar.gz 636436 BLAKE2B a03b795eb685b552659b6110a9a19e6915320f3bcc87a4c5343a9ae16b82ebea46b538d8606ff10fa1f1c46f85117aeec240247e98aaccc00b0c67996bd2421a SHA512 99e8e125fbb086a98f6c2f494624e63d47d2f594f952eb5e540eba355161eecaeb55ffc3f2df951cdfcd9cb5b1720411c58e2ab4f3299a63eeafa44eed6f7912
diff --git a/sys-apps/pkgcore/metadata.xml b/sys-apps/pkgcore/metadata.xml
index 239332d82c28..b9caf9ee0c84 100644
--- a/sys-apps/pkgcore/metadata.xml
+++ b/sys-apps/pkgcore/metadata.xml
@@ -1,11 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>mgorny@gentoo.org</email>
- <name>Michał Górny</name>
- </maintainer>
- <upstream>
- <remote-id type="github">pkgcore/pkgcore</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>pkgcore@gentoo.org</email>
+ <name>Pkgcore</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="github">pkgcore/pkgcore</remote-id>
+ <remote-id type="pypi">pkgcore</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/pkgcore/pkgcore-0.10.13.ebuild b/sys-apps/pkgcore/pkgcore-0.10.13.ebuild
deleted file mode 100644
index 185be89d3ad1..000000000000
--- a/sys-apps/pkgcore/pkgcore-0.10.13.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python3_{6..9} )
-DISTUTILS_IN_SOURCE_BUILD=1
-inherit distutils-r1
-
-if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/pkgcore/pkgcore.git"
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~s390 sparc x86"
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-fi
-
-DESCRIPTION="a framework for package management"
-HOMEPAGE="https://github.com/pkgcore/pkgcore"
-
-LICENSE="BSD MIT"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-python/lxml[${PYTHON_USEDEP}]"
-if [[ ${PV} == *9999 ]]; then
- RDEPEND+=" ~dev-python/snakeoil-9999[${PYTHON_USEDEP}]"
-else
- RDEPEND+=" >=dev-python/snakeoil-0.8.7[${PYTHON_USEDEP}]"
-fi
-DEPEND="${RDEPEND}
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? (
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-vcs/git
- )
-"
-
-python_test() {
- esetup.py test
-}
-
-python_install_all() {
- local DOCS=( AUTHORS NEWS.rst )
- [[ ${PV} == *9999 ]] || doman man/*
- distutils-r1_python_install_all
-}
diff --git a/sys-apps/pkgcore/pkgcore-0.12.27.ebuild b/sys-apps/pkgcore/pkgcore-0.12.27.ebuild
new file mode 100644
index 000000000000..caedfa427107
--- /dev/null
+++ b/sys-apps/pkgcore/pkgcore-0.12.27.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/pkgcore/pkgcore.git
+ https://github.com/pkgcore/pkgcore.git"
+ inherit git-r3
+else
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
+ inherit pypi
+fi
+
+DESCRIPTION="a framework for package management"
+HOMEPAGE="https://github.com/pkgcore/pkgcore"
+
+LICENSE="BSD MIT"
+SLOT="0"
+
+if [[ ${PV} == *9999 ]]; then
+ COMMON_DEPEND="~dev-python/snakeoil-9999[${PYTHON_USEDEP}]"
+else
+ COMMON_DEPEND=">=dev-python/snakeoil-0.10.7[${PYTHON_USEDEP}]"
+fi
+
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=app-shells/bash-5.1[readline]
+ dev-python/lxml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${COMMON_DEPEND}
+ >=dev-python/flit-core-3.8[${PYTHON_USEDEP}]
+ test? (
+ dev-vcs/git
+ )
+"
+
+distutils_enable_tests pytest
+
+python_install_all() {
+ local DOCS=( NEWS.rst )
+ [[ ${PV} == *9999 ]] || doman build/sphinx/man/*
+ distutils-r1_python_install_all
+}
diff --git a/sys-apps/pkgcore/pkgcore-9999.ebuild b/sys-apps/pkgcore/pkgcore-9999.ebuild
index 4d3887960e30..c4ca4f9df592 100644
--- a/sys-apps/pkgcore/pkgcore-9999.ebuild
+++ b/sys-apps/pkgcore/pkgcore-9999.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-PYTHON_COMPAT=( python3_{6..9} )
-DISTUTILS_IN_SOURCE_BUILD=1
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/pkgcore/pkgcore.git"
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/pkgcore/pkgcore.git
+ https://github.com/pkgcore/pkgcore.git"
inherit git-r3
else
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+ inherit pypi
fi
DESCRIPTION="a framework for package management"
@@ -19,29 +21,30 @@ HOMEPAGE="https://github.com/pkgcore/pkgcore"
LICENSE="BSD MIT"
SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-RDEPEND="dev-python/lxml[${PYTHON_USEDEP}]"
if [[ ${PV} == *9999 ]]; then
- RDEPEND+=" ~dev-python/snakeoil-9999[${PYTHON_USEDEP}]"
+ COMMON_DEPEND="~dev-python/snakeoil-9999[${PYTHON_USEDEP}]"
else
- RDEPEND+=" >=dev-python/snakeoil-0.8.7[${PYTHON_USEDEP}]"
+ COMMON_DEPEND=">=dev-python/snakeoil-0.10.7[${PYTHON_USEDEP}]"
fi
-DEPEND="${RDEPEND}
- dev-python/setuptools[${PYTHON_USEDEP}]
+
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=app-shells/bash-5.1[readline]
+ dev-python/lxml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${COMMON_DEPEND}
+ >=dev-python/flit-core-3.8[${PYTHON_USEDEP}]
test? (
- dev-python/pytest[${PYTHON_USEDEP}]
dev-vcs/git
)
"
-python_test() {
- esetup.py test
-}
+distutils_enable_tests pytest
python_install_all() {
- local DOCS=( AUTHORS NEWS.rst )
- [[ ${PV} == *9999 ]] || doman man/*
+ local DOCS=( NEWS.rst )
+ [[ ${PV} == *9999 ]] || doman build/sphinx/man/*
distutils-r1_python_install_all
}
diff --git a/sys-apps/pkgcraft-tools/Manifest b/sys-apps/pkgcraft-tools/Manifest
new file mode 100644
index 000000000000..22e63ae87531
--- /dev/null
+++ b/sys-apps/pkgcraft-tools/Manifest
@@ -0,0 +1 @@
+DIST pkgcraft-tools-0.0.14.tar.xz 30138240 BLAKE2B b9d0b238f26d980f032cfad26602348dabe574e3968e8adf5172e91efeea051b9720b158941a1bea53e2c1fa8180d516b1bb9668d9178f17c789fb5ba76b7bd9 SHA512 ca7c0f429228567c91a18db793b2fa81f6918cde54f302269deb6a1d2f6445756fbc73e3957ad7b29c8a0e8e000c1b939290c6bbc34bb693cc54b87841fef06c
diff --git a/sys-apps/pkgcraft-tools/metadata.xml b/sys-apps/pkgcraft-tools/metadata.xml
new file mode 100644
index 000000000000..33c1ad3bdca7
--- /dev/null
+++ b/sys-apps/pkgcraft-tools/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">pkgcraft/pkgcraft</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/pkgcraft-tools/pkgcraft-tools-0.0.14.ebuild b/sys-apps/pkgcraft-tools/pkgcraft-tools-0.0.14.ebuild
new file mode 100644
index 000000000000..fa06a1993399
--- /dev/null
+++ b/sys-apps/pkgcraft-tools/pkgcraft-tools-0.0.14.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES=" "
+LLVM_MAX_SLOT=17
+inherit edo cargo llvm
+
+DESCRIPTION="pkgcraft-based tools for Gentoo"
+HOMEPAGE="https://pkgcraft.github.io/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/pkgcraft/pkgcraft"
+ inherit git-r3
+
+ S="${WORKDIR}"/${P}/crates/pkgcraft-tools
+else
+ SRC_URI="https://github.com/pkgcraft/pkgcraft/releases/download/${P}/${P}.tar.xz"
+
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD CC0-1.0 GPL-3+ ISC MIT Unicode-DFS-2016"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test ) "
+
+QA_FLAGS_IGNORED="usr/bin/pk"
+
+# Clang needed for bindgen
+BDEPEND="
+ <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1))
+ >=virtual/rust-1.71
+ test? ( dev-util/cargo-nextest )
+"
+
+llvm_check_deps() {
+ has_version -b "sys-devel/clang:${LLVM_SLOT}"
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_test() {
+ edo cargo nextest run $(usev !debug '--release') --color always --all-features --tests
+}
diff --git a/sys-apps/pkgcraft-tools/pkgcraft-tools-9999.ebuild b/sys-apps/pkgcraft-tools/pkgcraft-tools-9999.ebuild
new file mode 100644
index 000000000000..7f18fbdca06e
--- /dev/null
+++ b/sys-apps/pkgcraft-tools/pkgcraft-tools-9999.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES=" "
+LLVM_MAX_SLOT=17
+inherit edo cargo llvm
+
+DESCRIPTION="pkgcraft-based tools for Gentoo"
+HOMEPAGE="https://pkgcraft.github.io/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/pkgcraft/pkgcraft"
+ inherit git-r3
+
+ S="${WORKDIR}"/${P}/crates/pkgcraft-tools
+else
+ SRC_URI="https://github.com/pkgcraft/pkgcraft/releases/download/${P}/${P}.tar.xz"
+
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD CC0-1.0 GPL-3+ ISC MIT Unicode-DFS-2016"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test ) "
+
+QA_FLAGS_IGNORED="usr/bin/pk"
+
+# Clang needed for bindgen
+BDEPEND="
+ <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1))
+ >=virtual/rust-1.74
+ test? ( dev-util/cargo-nextest )
+"
+
+llvm_check_deps() {
+ has_version -b "sys-devel/clang:${LLVM_SLOT}"
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_test() {
+ edo cargo nextest run $(usev !debug '--release') --color always --all-features --tests
+}
diff --git a/sys-apps/plocate/Manifest b/sys-apps/plocate/Manifest
new file mode 100644
index 000000000000..2cffca29656d
--- /dev/null
+++ b/sys-apps/plocate/Manifest
@@ -0,0 +1,3 @@
+DIST plocate-1.1.19.tar.gz 73964 BLAKE2B bf488c124b219822c0b426f57f3389f2611395abb7ddd22c72c51086480af1811ab2ed5f2a96cb6ad7d769be7dd60c3482de46841f2d5be85abdc1a1ce586ee8 SHA512 7bbbe914dbab75adb7f38302b7a06cfbb7c18b0e580892dced89d72dc0076e98a75482833b76200bb68b99a0a6093639967b962d0b69be526360995f7d833fcd
+DIST plocate-1.1.20.tar.gz 74409 BLAKE2B 4ac6edb5b347c03adb23bb1dc7549647829d5620d17994ee1cf66a46b78b20dca546c726e8161b339b65b97cf2983564723ad218f25f4ef57e58fd0cbe9db76a SHA512 511a25f7e1dba3e9ea836dc3b462cf3b1aa3c111819531fad73857bc0fd22fcbc387715a8981ef58be31103b6ac802468eb18b32826dc220a6781ebf83b1c153
+DIST plocate-1.1.22.tar.gz 75072 BLAKE2B 82ec8dc68a546965b8af8e20ab23869f2d74ec711058712662e40ff898ea1bce143add75ddefe153601635800109bfe5c0bb9e8bd93841011fb616371112a773 SHA512 c26ea85f4cc7249f1af7450cfd07f59a03ea98b970f4be67222282fda7789bf9a8fe3d24835f6f3f6068d54802c1fe1e2b9a487e04d568965a23df34845178c1
diff --git a/sys-apps/plocate/files/plocate-1.1.15-meson-use-feature-option-for-libiouring.patch b/sys-apps/plocate/files/plocate-1.1.15-meson-use-feature-option-for-libiouring.patch
new file mode 100644
index 000000000000..dec128cddf6d
--- /dev/null
+++ b/sys-apps/plocate/files/plocate-1.1.15-meson-use-feature-option-for-libiouring.patch
@@ -0,0 +1,41 @@
+From e61f3b1dfcc883b701cf6dd331f2d93dcc8919f5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Thu, 19 Aug 2021 12:03:39 +0200
+Subject: [PATCH plocate] meson: use feature option for libiouring
+
+source-based distributions would prefer to allow this option to be
+disabled without a hack, regardless of is libiouring installed or not,
+and meson already supports feature options for this purpose.
+---
+rebased from plocate-1.1.10-meson-use-feature-option-for-libiouring.patch on
+top of 1.1.15
+
+ meson.build | 2 +-
+ meson_options.txt | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 2a7d20c..81bc891 100644
+--- a/meson.build
++++ b/meson.build
+@@ -9,7 +9,7 @@ add_project_arguments('-DPACKAGE_VERSION="' + meson.project_version() + '"', lan
+ add_project_arguments('-DPACKAGE_BUGREPORT="steinar+plocate@gunderson.no"', language: 'cpp')
+
+ cxx = meson.get_compiler('cpp')
+-uringdep = dependency('liburing', required: false)
++uringdep = dependency('liburing', required: get_option('use_libiouring'))
+ zstddep = dependency('libzstd')
+ threaddep = dependency('threads')
+ atomicdep = cxx.find_library('atomic', required: false)
+diff --git a/meson_options.txt b/meson_options.txt
+index a9f3358..1f2274f 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -4,3 +4,4 @@ option('systemunitdir', type: 'string', description: 'Where to install systemd u
+ option('locategroup', type: 'string', value: 'plocate', description: 'Group that the install script will use for the .db file')
+ option('updatedb_progname', type: 'string', value: 'updatedb', description: 'Binary name of updatedb')
+ option('dbpath', type: 'string', value: 'plocate/plocate.db', description: 'Path to plocate database relative to "sharedstatedir"')
++option('use_libiouring', type: 'feature', value: 'auto', description: 'Enable libiouring dependency (default: autodetect)')
+--
+2.34.1
+
diff --git a/sys-apps/plocate/files/plocate-cron.conf b/sys-apps/plocate/files/plocate-cron.conf
new file mode 100644
index 000000000000..f207344a9e6c
--- /dev/null
+++ b/sys-apps/plocate/files/plocate-cron.conf
@@ -0,0 +1,9 @@
+# nice value to run at: see -n in nice(1)
+NICE="19"
+
+# ionice class to run at: see -c in ionice(1)
+# you have to install sys-apps/util-linux manually
+IONICE_CLASS="2"
+
+# ionice priority to run at: see -n in ionice(1)
+IONICE_PRIORITY="7"
diff --git a/sys-apps/plocate/files/plocate.cron b/sys-apps/plocate/files/plocate.cron
new file mode 100644
index 000000000000..ebcfcbffe7b0
--- /dev/null
+++ b/sys-apps/plocate/files/plocate.cron
@@ -0,0 +1,51 @@
+#! /bin/sh
+set -e
+
+# check if we run on battery and if so then don't run
+if which on_ac_power >/dev/null 2>&1; then
+ ON_BATTERY=0
+ on_ac_power >/dev/null 2>&1 || ON_BATTERY=$?
+ if [ "${ON_BATTERY}" -eq 1 ]; then
+ exit 0
+ fi
+fi
+
+# check if we are already running (lockfile)
+LOCKFILE="/var/lock/plocate.daily.lock"
+if [ -e "${LOCKFILE}" ]; then
+ echo >&2 "Warning: \"${LOCKFILE}\" already present, not running updatedb."
+ exit 1
+fi
+touch "${LOCKFILE}"
+# trap the lockfile only if we really run the updatedb
+trap "rm -f ${LOCKFILE}" EXIT
+
+# source the user specified variables
+if [ -f /etc/plocate-cron.conf ]; then
+ . /etc/plocate-cron.conf
+fi
+
+# check the config file
+NODEVS=""
+if [ ! -f /etc/updatedb.conf ]; then
+ NODEVS=$(awk '$1 == "nodev" && $2 != "rootfs" { print $2 }' /proc/filesystems)
+fi
+
+# alter the priority of the updatedb process
+if [ -x /usr/bin/renice ]; then
+ /usr/bin/renice +${NICE:-19} -p $$ > /dev/null 2>&1
+fi
+if [ -x /usr/bin/ionice ] && /usr/bin/ionice -c3 true 2>/dev/null; then
+ /usr/bin/ionice -c${IONICE_CLASS:-2} -n${IONICE_PRIORITY:-7} -p $$ > /dev/null 2>&1
+fi
+
+# Cleanup old temp files from previous unsuccessful runs
+rm -f /var/lib/plocate/plocate.db.*
+
+# run the updatedb if possible
+if [ -x /usr/sbin/updatedb ]; then
+ /usr/sbin/updatedb -f "${NODEVS}"
+else
+ echo >&2 "Warning: \"/usr/sbin/updatedb\" is not executable, unable to run updatedb."
+ exit 0
+fi
diff --git a/sys-apps/plocate/files/updatedb.conf b/sys-apps/plocate/files/updatedb.conf
new file mode 100644
index 000000000000..6a00d3aa2b94
--- /dev/null
+++ b/sys-apps/plocate/files/updatedb.conf
@@ -0,0 +1,16 @@
+# /etc/updatedb.conf: config file for slocate
+
+# This file sets variables that are used by updatedb.
+# For more info, see the updatedb.conf(5) manpage.
+
+# Filesystems that are pruned from updatedb database
+PRUNEFS="afs anon_inodefs auto autofs bdev binfmt binfmt_misc cgroup cifs coda configfs cramfs cpuset debugfs devfs devpts devtmpfs ecryptfs eventpollfs exofs futexfs ftpfs fuse fusectl gfs gfs2 hostfs hugetlbfs inotifyfs iso9660 jffs2 lustre misc mqueue ncpfs nfs NFS nfs4 nfsd nnpfs ocfs ocfs2 pipefs proc ramfs rpc_pipefs securityfs selinuxfs sfs shfs smbfs sockfs spufs sshfs subfs supermount sysfs tmpfs ubifs udf usbfs vboxsf vperfctrfs"
+
+# Paths which are pruned from updatedb database
+PRUNEPATHS="/tmp /var/tmp /var/cache /var/lock /var/run /var/spool"
+
+# Folder names that are pruned from updatedb database
+PRUNENAMES=".git .hg .svn CVS"
+
+# Skip bind mounts.
+PRUNE_BIND_MOUNTS="yes"
diff --git a/sys-apps/plocate/metadata.xml b/sys-apps/plocate/metadata.xml
new file mode 100644
index 000000000000..fcef37108e0d
--- /dev/null
+++ b/sys-apps/plocate/metadata.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>jeffrey@icurse.nl</email>
+ <name>Jeffrey Lin</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>arsen@gentoo.org</email>
+ <name>Arsen Arsenović</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="io-uring">Enable efficient I/O via <pkg>sys-libs/liburing</pkg>.</flag>
+ </use>
+ <longdescription>
+ plocate works by creating an inverted index over trigrams (combinations of
+ three bytes) in the search strings, which allows it to rapidly narrow down the
+ set of candidates to a very small list, instead of linearly scanning through
+ every entry. It does nearly all I/O asynchronously using io_uring if available
+ (Linux 5.1+), which reduces the impact of seek latency on systems without SSDs.
+ Like mlocate and slocate, the returned file set is user-dependent, ie. a user
+ will only see a file if find(1) would list it (all directories from the root
+ have +rx permissions).
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-apps/plocate/plocate-1.1.19.ebuild b/sys-apps/plocate/plocate-1.1.19.ebuild
new file mode 100644
index 000000000000..2c7b6ce60193
--- /dev/null
+++ b/sys-apps/plocate/plocate-1.1.19.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson systemd
+
+DESCRIPTION="Posting locate is a much faster locate"
+HOMEPAGE="https://plocate.sesse.net/"
+SRC_URI="https://plocate.sesse.net/download/${P}.tar.gz"
+
+# GPL-2 for updatedb
+# GPL-2+ for plocate itself
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+IUSE="+io-uring"
+
+RDEPEND="
+ acct-group/locate
+ app-arch/zstd:=
+ io-uring? ( sys-libs/liburing:= )
+ !sys-apps/mlocate
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.15-meson-use-feature-option-for-libiouring.patch
+)
+
+pkg_setup() {
+ if use io-uring && linux_config_exists; then
+ if ! linux_chkconfig_present IO_URING; then
+ ewarn "CONFIG_IO_URING must be enabled for USE=io-uring"
+ fi
+ fi
+}
+
+src_prepare() {
+ # We'll install the manpage ourself to locate.1
+ sed -i "/install_man('plocate.1')/d" meson.build || die
+
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dlocategroup=locate
+ -Dinstall_systemd=true
+ -Dinstall_cron=false
+ -Dsystemunitdir="$(systemd_get_systemunitdir)"
+ "$(meson_feature io-uring use_libiouring)"
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dodoc README NEWS
+ newman "${S}"/${PN}.1 locate.1
+ dosym plocate /usr/bin/locate
+
+ insinto /etc
+ doins "${FILESDIR}"/updatedb.conf
+ doins "${FILESDIR}"/plocate-cron.conf
+ fperms 0644 /etc/{updatedb,plocate-cron}.conf
+
+ insinto /etc/cron.daily
+ # Ensure that the cron file has the same name as the
+ # systemd-timer, to avoid plocate being run twice daily on systems
+ # with a systemd compatiblity layer. See also bug #780351.
+ newins "${FILESDIR}"/plocate.cron plocate-updatedb
+ fperms 0755 /etc/cron.daily/plocate-updatedb
+
+ systemd_dounit "${BUILD_DIR}"/${PN}-updatedb.service "${S}"/${PN}-updatedb.timer
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ elog "The database for the locate command is generated daily by a cron job,"
+ elog "if you install for the first time you can run the updatedb command manually now."
+ elog
+ elog "Note that the ${EROOT}/etc/updatedb.conf file is generic,"
+ elog "please customize it to your system requirements."
+ fi
+}
diff --git a/sys-apps/plocate/plocate-1.1.20.ebuild b/sys-apps/plocate/plocate-1.1.20.ebuild
new file mode 100644
index 000000000000..95b324f8139e
--- /dev/null
+++ b/sys-apps/plocate/plocate-1.1.20.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson systemd
+
+DESCRIPTION="Posting locate is a much faster locate"
+HOMEPAGE="https://plocate.sesse.net/"
+SRC_URI="https://plocate.sesse.net/download/${P}.tar.gz"
+
+# GPL-2 for updatedb
+# GPL-2+ for plocate itself
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~x86"
+IUSE="+io-uring"
+
+RDEPEND="
+ acct-group/locate
+ app-arch/zstd:=
+ io-uring? ( sys-libs/liburing:= )
+ !sys-apps/mlocate
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.15-meson-use-feature-option-for-libiouring.patch
+)
+
+pkg_setup() {
+ if use io-uring && linux_config_exists; then
+ if ! linux_chkconfig_present IO_URING; then
+ ewarn "CONFIG_IO_URING must be enabled for USE=io-uring"
+ fi
+ fi
+}
+
+src_prepare() {
+ # We'll install the manpage ourself to locate.1
+ sed -i "/install_man('plocate.1')/d" meson.build || die
+
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dlocategroup=locate
+ -Dinstall_systemd=true
+ -Dinstall_cron=false
+ -Dsystemunitdir="$(systemd_get_systemunitdir)"
+ "$(meson_feature io-uring use_libiouring)"
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dodoc README NEWS
+ newman "${S}"/${PN}.1 locate.1
+ dosym plocate /usr/bin/locate
+
+ insinto /etc
+ doins "${FILESDIR}"/updatedb.conf
+ doins "${FILESDIR}"/plocate-cron.conf
+ fperms 0644 /etc/{updatedb,plocate-cron}.conf
+
+ insinto /etc/cron.daily
+ # Ensure that the cron file has the same name as the
+ # systemd-timer, to avoid plocate being run twice daily on systems
+ # with a systemd compatiblity layer. See also bug #780351.
+ newins "${FILESDIR}"/plocate.cron plocate-updatedb
+ fperms 0755 /etc/cron.daily/plocate-updatedb
+
+ systemd_dounit "${BUILD_DIR}"/${PN}-updatedb.service "${S}"/${PN}-updatedb.timer
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ elog "The database for the locate command is generated daily by a cron job,"
+ elog "if you install for the first time you can run the updatedb command manually now."
+ elog
+ elog "Note that the ${EROOT}/etc/updatedb.conf file is generic,"
+ elog "please customize it to your system requirements."
+ fi
+}
diff --git a/sys-apps/plocate/plocate-1.1.22.ebuild b/sys-apps/plocate/plocate-1.1.22.ebuild
new file mode 100644
index 000000000000..95b324f8139e
--- /dev/null
+++ b/sys-apps/plocate/plocate-1.1.22.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson systemd
+
+DESCRIPTION="Posting locate is a much faster locate"
+HOMEPAGE="https://plocate.sesse.net/"
+SRC_URI="https://plocate.sesse.net/download/${P}.tar.gz"
+
+# GPL-2 for updatedb
+# GPL-2+ for plocate itself
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~x86"
+IUSE="+io-uring"
+
+RDEPEND="
+ acct-group/locate
+ app-arch/zstd:=
+ io-uring? ( sys-libs/liburing:= )
+ !sys-apps/mlocate
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.15-meson-use-feature-option-for-libiouring.patch
+)
+
+pkg_setup() {
+ if use io-uring && linux_config_exists; then
+ if ! linux_chkconfig_present IO_URING; then
+ ewarn "CONFIG_IO_URING must be enabled for USE=io-uring"
+ fi
+ fi
+}
+
+src_prepare() {
+ # We'll install the manpage ourself to locate.1
+ sed -i "/install_man('plocate.1')/d" meson.build || die
+
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dlocategroup=locate
+ -Dinstall_systemd=true
+ -Dinstall_cron=false
+ -Dsystemunitdir="$(systemd_get_systemunitdir)"
+ "$(meson_feature io-uring use_libiouring)"
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dodoc README NEWS
+ newman "${S}"/${PN}.1 locate.1
+ dosym plocate /usr/bin/locate
+
+ insinto /etc
+ doins "${FILESDIR}"/updatedb.conf
+ doins "${FILESDIR}"/plocate-cron.conf
+ fperms 0644 /etc/{updatedb,plocate-cron}.conf
+
+ insinto /etc/cron.daily
+ # Ensure that the cron file has the same name as the
+ # systemd-timer, to avoid plocate being run twice daily on systems
+ # with a systemd compatiblity layer. See also bug #780351.
+ newins "${FILESDIR}"/plocate.cron plocate-updatedb
+ fperms 0755 /etc/cron.daily/plocate-updatedb
+
+ systemd_dounit "${BUILD_DIR}"/${PN}-updatedb.service "${S}"/${PN}-updatedb.timer
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ elog "The database for the locate command is generated daily by a cron job,"
+ elog "if you install for the first time you can run the updatedb command manually now."
+ elog
+ elog "Note that the ${EROOT}/etc/updatedb.conf file is generic,"
+ elog "please customize it to your system requirements."
+ fi
+}
diff --git a/sys-apps/pmount-gui/Manifest b/sys-apps/pmount-gui/Manifest
deleted file mode 100644
index fcd4cc1eb031..000000000000
--- a/sys-apps/pmount-gui/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pmount-gui-0_pre20130806.tar.xz 5132 BLAKE2B 7c575f4ab9ebe632eebed0a73ef2dfe3e7ffeb47cb28ab39a3c8928d2f0bb8f0b118e00d8d9a7d9663721016c93fda33c803bcd6c283ad7f4b5e7ea4df401c04 SHA512 97871dcfbd14a26f93186b8e08d5512c6b7d6fbf76c94a9e4f0f8e74404ce7a8e1139bb5d3fd432fb1b228ff48f9f56195124839431f6a5d3d82f43165a2b5ce
diff --git a/sys-apps/pmount-gui/metadata.xml b/sys-apps/pmount-gui/metadata.xml
deleted file mode 100644
index 2ba8e9e851e4..000000000000
--- a/sys-apps/pmount-gui/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>desktop-misc@gentoo.org</email>
- <name>Gentoo Desktop Miscellaneous Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/sys-apps/pmount-gui/pmount-gui-0_pre20130806.ebuild b/sys-apps/pmount-gui/pmount-gui-0_pre20130806.ebuild
deleted file mode 100644
index e43bb34fb1ae..000000000000
--- a/sys-apps/pmount-gui/pmount-gui-0_pre20130806.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-if [ ${PV} = 9999* ]; then
- EGIT_REPO_URI="git://git.tdb.fi/pmount-gui"
- inherit git-2
-else
- SRC_URI="https://dev.gentoo.org/~ssuominen/${P}.tar.xz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-inherit toolchain-funcs
-
-DESCRIPTION="A simple graphical frontend for pmount"
-HOMEPAGE="http://git.tdb.fi/?p=pmount-gui.git;a=summary"
-
-LICENSE="BSD-2"
-SLOT="0"
-IUSE=""
-
-COMMON_DEPEND="x11-libs/gtk+:2"
-RDEPEND="${COMMON_DEPEND}
- sys-apps/pmount
- virtual/udev"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig"
-
-src_compile() {
- emake CC="$(tc-getCC) ${CFLAGS} ${LDFLAGS}"
-}
-
-src_install() {
- dobin ${PN}
- dodoc README.txt
-}
diff --git a/sys-apps/pmount/files/pmount-0.9.99_alpha-fix-buggy-realpath-implementation.patch b/sys-apps/pmount/files/pmount-0.9.99_alpha-fix-buggy-realpath-implementation.patch
new file mode 100644
index 000000000000..f1d7f7d4c0fc
--- /dev/null
+++ b/sys-apps/pmount/files/pmount-0.9.99_alpha-fix-buggy-realpath-implementation.patch
@@ -0,0 +1,31 @@
+Fix bug in realpath implementation bundled with pmount which caused it to
+likely fail on paths with several symlinks.
+
+The issue was first noticed by failure in tests:
+Gentoo-Bug: https://bugs.gentoo.org/741810
+--- pmount-0.9.99-alpha/src/realpath.c.orig 2024-01-21 09:19:55.776224329 +0300
++++ pmount-0.9.99-alpha/src/realpath.c 2024-01-21 09:30:46.751233027 +0300
+@@ -128,6 +128,7 @@
+ } else {
+ #ifdef resolve_symlinks /* Richard Gooch dislikes sl resolution */
+ int m;
++ char *old_buf;
+
+ /* Note: readlink doesn't add the null byte. */
+ link_path[n] = '\0';
+@@ -141,12 +142,13 @@
+
+ /* Insert symlink contents into path. */
+ m = strlen(path);
+- if (buf)
+- free(buf);
++ old_buf = buf; /* path might point to buf at this point */
+ buf = xmalloc(m + n + 1);
+ memcpy(buf, link_path, n);
+ memcpy(buf + n, path, m + 1);
+ path = buf;
++ if (old_buf)
++ free(old_buf);
+ #endif
+ }
+ *npath++ = '/';
diff --git a/sys-apps/pmount/files/pmount-0.9.99_alpha-limits-musl.patch b/sys-apps/pmount/files/pmount-0.9.99_alpha-limits-musl.patch
new file mode 100644
index 000000000000..af6a1ebc521d
--- /dev/null
+++ b/sys-apps/pmount/files/pmount-0.9.99_alpha-limits-musl.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/713422
+--- a/src/utils.c
++++ b/src/utils.c
+@@ -25,6 +25,7 @@
+ #include <libintl.h>
+
+ #include <unistd.h>
++#include <limits.h>
+
+ #include "utils.h"
+
+
diff --git a/sys-apps/pmount/files/pmount-0.9.99_alpha-missing-includes.patch b/sys-apps/pmount/files/pmount-0.9.99_alpha-missing-includes.patch
new file mode 100644
index 000000000000..cdcb65ad822d
--- /dev/null
+++ b/sys-apps/pmount/files/pmount-0.9.99_alpha-missing-includes.patch
@@ -0,0 +1,82 @@
+--- a/src/conffile.c
++++ b/src/conffile.c
+@@ -22,6 +22,7 @@
+ #include <sys/types.h>
+ #include <pwd.h>
+ #include <grp.h>
++#include <unistd.h>
+
+ #include "conffile.h"
+ #include "config.h"
+--- a/src/luks.c
++++ b/src/luks.c
+@@ -13,7 +13,9 @@
+ #include "utils.h"
+ #include "policy.h"
+ #include <stdio.h>
++#include <fcntl.h>
+ #include <limits.h>
++#include <unistd.h>
+ #include <sys/stat.h>
+ #include <libintl.h>
+
+--- a/src/policy.c
++++ b/src/policy.c
+@@ -13,6 +13,7 @@
+ #include "policy.h"
+ #include "utils.h"
+
++#include <ctype.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
+--- a/src/pmount.c
++++ b/src/pmount.c
+@@ -29,6 +29,7 @@
+ #include "policy.h"
+ #include "utils.h"
+ #include "luks.h"
++#include "loop.h"
+ #include "config.h"
+
+ /* Configuration file handling */
+--- a/src/policy.c
++++ b/src/policy.c
+@@ -33,6 +33,7 @@
+ #include <pwd.h>
+ #include <utmpx.h>
+
++#include "configuration.h"
+
+ /* We use our own safe version of realpath */
+ #include "realpath.h"
+--- a/src/pumount.c
++++ b/src/pumount.c
+@@ -24,6 +24,7 @@
+ #include "utils.h"
+ #include "luks.h"
+ #include "config.h"
++#include "configuration.h"
+
+ /* error codes */
+ const int E_ARGS = 1;
+--- a/tests/test_policy.c
++++ b/tests/test_policy.c
+@@ -16,6 +16,7 @@
+ #include "policy.h"
+ #include "utils.h"
+ #include <stdio.h>
++#include <string.h>
+
+ int testsFailed = 0;
+ int totalTests = 0;
+--- a/tests/test_spawn.c
++++ b/tests/test_spawn.c
+@@ -12,6 +12,7 @@
+
+
+ #include <stdio.h>
++#include <string.h>
+ #include <unistd.h>
+ #include "utils.h"
+
diff --git a/sys-apps/pmount/metadata.xml b/sys-apps/pmount/metadata.xml
index a5051c481241..2fc1bb94b95e 100644
--- a/sys-apps/pmount/metadata.xml
+++ b/sys-apps/pmount/metadata.xml
@@ -1,14 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>slashbeast@gentoo.org</email>
- <name>Piotr Karbowski</name>
- </maintainer>
- <maintainer type="person">
- <email>mgorny@gentoo.org</email>
- <name>Michał Górny</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="launchpad">pmount</remote-id>
</upstream>
diff --git a/sys-apps/pmount/pmount-0.9.99_alpha-r5.ebuild b/sys-apps/pmount/pmount-0.9.99_alpha-r5.ebuild
deleted file mode 100644
index 116a1e8fa212..000000000000
--- a/sys-apps/pmount/pmount-0.9.99_alpha-r5.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit bash-completion-r1
-
-DESCRIPTION="Policy based mounter that gives the ability to mount removable devices as a user"
-HOMEPAGE="https://launchpad.net/pmount"
-SRC_URI="mirror://debian/pool/main/p/${PN}/${PN}_${PV/_/-}.orig.tar.bz2"
-S=${WORKDIR}/${P/_/-}
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="crypt"
-
-RDEPEND="
- acct-group/plugdev
- >=sys-apps/util-linux-2.17.2
- crypt? ( >=sys-fs/cryptsetup-1.0.6-r2 )"
-DEPEND="${RDEPEND}
- dev-util/intltool
- sys-devel/gettext"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.9.19-testsuite-missing-dir.patch
- "${FILESDIR}"/${P}-locale-regex.patch
-)
-
-src_prepare() {
- # Restore default value from pmount <= 0.9.23 wrt #393633
- sed -i -e '/^not_physically_logged_allow/s:=.*:= yes:' etc/pmount.conf || die
-
- cat <<-EOF > po/POTFILES.skip || die
- src/conffile.c
- src/configuration.c
- src/loop.c
- EOF
-
- default
-}
-
-src_configure() {
- econf --disable-hal
-}
-
-src_test() {
- local testdir=${S}/tests/check_fstab
-
- ln -s a "${testdir}/b" &&
- ln -s d "${testdir}/c" &&
- ln -s c "${testdir}/e" ||
- die "Unable to create fake symlinks required for testsuite"
-
- emake check
-}
-
-src_install() {
- # Must be run SETUID+SETGID, bug #250106
- exeinto /usr/bin
- exeopts -m 6710 -g plugdev
- doexe src/{p,pu}mount
-
- dodoc AUTHORS ChangeLog TODO
- doman man/{{p,pu}mount.1,pmount.conf.5}
-
- insinto /etc
- doins etc/pmount.{allow,conf}
-
- keepdir /media #501772
-
- newbashcomp "${FILESDIR}/${PN}.bash-completion" "${PN}"
- bashcomp_alias pmount pumount
-}
-
-pkg_postinst() {
- elog
- elog "This package has been installed setuid and setgid."
-
- elog "The permissions are as such that only users that belong to the plugdev"
- elog "group are allowed to run this. But if a script run by root mounts a"
- elog "device, members of the plugdev group will have access to it."
- elog
- elog "Please add your user to the plugdev group to be able to mount USB drives"
-}
diff --git a/sys-apps/pmount/pmount-0.9.99_alpha-r6.ebuild b/sys-apps/pmount/pmount-0.9.99_alpha-r6.ebuild
deleted file mode 100644
index 03e626d56de4..000000000000
--- a/sys-apps/pmount/pmount-0.9.99_alpha-r6.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit bash-completion-r1
-
-DESCRIPTION="Policy based mounter that gives the ability to mount removable devices as a user"
-HOMEPAGE="https://launchpad.net/pmount"
-SRC_URI="mirror://debian/pool/main/p/${PN}/${PN}_${PV/_/-}.orig.tar.bz2"
-S=${WORKDIR}/${P/_/-}
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="crypt"
-
-RDEPEND="
- acct-group/plugdev
- >=sys-apps/util-linux-2.17.2
- crypt? ( >=sys-fs/cryptsetup-1.0.6-r2 )"
-DEPEND="${RDEPEND}
- dev-util/intltool
- sys-devel/gettext"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.9.19-testsuite-missing-dir.patch
- "${FILESDIR}"/${P}-locale-regex.patch
- "${FILESDIR}"/${P}-exfat-support.patch
-
-)
-
-src_prepare() {
- # Restore default value from pmount <= 0.9.23 wrt #393633
- sed -i -e '/^not_physically_logged_allow/s:=.*:= yes:' etc/pmount.conf || die
-
- cat <<-EOF > po/POTFILES.skip || die
- src/conffile.c
- src/configuration.c
- src/loop.c
- EOF
-
- default
-}
-
-src_configure() {
- econf --disable-hal
-}
-
-src_test() {
- local testdir=${S}/tests/check_fstab
-
- ln -s a "${testdir}/b" &&
- ln -s d "${testdir}/c" &&
- ln -s c "${testdir}/e" ||
- die "Unable to create fake symlinks required for testsuite"
-
- emake check
-}
-
-src_install() {
- # Must be run SETUID+SETGID, bug #250106
- exeinto /usr/bin
- exeopts -m 6710 -g plugdev
- doexe src/{p,pu}mount
-
- dodoc AUTHORS ChangeLog TODO
- doman man/{{p,pu}mount.1,pmount.conf.5}
-
- insinto /etc
- doins etc/pmount.{allow,conf}
-
- keepdir /media #501772
-
- newbashcomp "${FILESDIR}/${PN}.bash-completion" "${PN}"
- bashcomp_alias pmount pumount
-}
-
-pkg_postinst() {
- elog
- elog "This package has been installed setuid and setgid."
-
- elog "The permissions are as such that only users that belong to the plugdev"
- elog "group are allowed to run this. But if a script run by root mounts a"
- elog "device, members of the plugdev group will have access to it."
- elog
- elog "Please add your user to the plugdev group to be able to mount USB drives"
-}
diff --git a/sys-apps/pmount/pmount-0.9.99_alpha-r7.ebuild b/sys-apps/pmount/pmount-0.9.99_alpha-r7.ebuild
new file mode 100644
index 000000000000..88f83decef22
--- /dev/null
+++ b/sys-apps/pmount/pmount-0.9.99_alpha-r7.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+DESCRIPTION="Policy based mounter that gives the ability to mount removable devices as a user"
+HOMEPAGE="https://launchpad.net/pmount"
+SRC_URI="mirror://debian/pool/main/p/${PN}/${PN}_${PV/_/-}.orig.tar.bz2"
+S="${WORKDIR}"/${P/_/-}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ppc ppc64 sparc x86"
+IUSE="crypt"
+
+# cryptsetup is executed at runtime only, no libraries used AFAICT
+# but in DEPEND too as it's checked during configure
+RDEPEND="
+ acct-group/plugdev
+ >=sys-apps/util-linux-2.17.2
+ crypt? ( >=sys-fs/cryptsetup-1.0.6-r2 )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-util/intltool
+ sys-devel/gettext"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.19-testsuite-missing-dir.patch
+ "${FILESDIR}"/${P}-locale-regex.patch
+ "${FILESDIR}"/${P}-exfat-support.patch
+ "${FILESDIR}"/${P}-limits-musl.patch
+ "${FILESDIR}"/${P}-missing-includes.patch
+)
+
+src_prepare() {
+ # Restore default value from pmount <= 0.9.23 wrt #393633
+ sed -i -e '/^not_physically_logged_allow/s:=.*:= yes:' etc/pmount.conf || die
+
+ cat <<-EOF > po/POTFILES.skip || die
+ src/conffile.c
+ src/configuration.c
+ src/loop.c
+ EOF
+
+ default
+}
+
+src_configure() {
+ econf --disable-hal
+}
+
+src_test() {
+ local testdir=${S}/tests/check_fstab
+
+ ln -s a "${testdir}/b" &&
+ ln -s d "${testdir}/c" &&
+ ln -s c "${testdir}/e" ||
+ die "Unable to create fake symlinks required for testsuite"
+
+ emake check
+}
+
+src_install() {
+ # Must be run SETUID+SETGID, bug #250106
+ exeinto /usr/bin
+ exeopts -m 6710 -g plugdev
+ doexe src/{p,pu}mount
+
+ dodoc AUTHORS ChangeLog TODO
+ doman man/{{p,pu}mount.1,pmount.conf.5}
+
+ insinto /etc
+ doins etc/pmount.{allow,conf}
+
+ keepdir /media #501772
+
+ newbashcomp "${FILESDIR}/${PN}.bash-completion" "${PN}"
+ bashcomp_alias pmount pumount
+}
+
+pkg_postinst() {
+ elog
+ elog "This package has been installed setuid and setgid."
+
+ elog "The permissions are as such that only users that belong to the plugdev"
+ elog "group are allowed to run this. But if a script run by root mounts a"
+ elog "device, members of the plugdev group will have access to it."
+ elog
+ elog "Please add your user to the plugdev group to be able to mount USB drives"
+}
diff --git a/sys-apps/pmount/pmount-0.9.99_alpha-r8.ebuild b/sys-apps/pmount/pmount-0.9.99_alpha-r8.ebuild
new file mode 100644
index 000000000000..1c65776dc516
--- /dev/null
+++ b/sys-apps/pmount/pmount-0.9.99_alpha-r8.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+DESCRIPTION="Policy based mounter that gives the ability to mount removable devices as a user"
+HOMEPAGE="https://launchpad.net/pmount"
+SRC_URI="mirror://debian/pool/main/p/${PN}/${PN}_${PV/_/-}.orig.tar.bz2"
+S="${WORKDIR}"/${P/_/-}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="crypt"
+
+# cryptsetup is executed at runtime only, no libraries used AFAICT
+# but in DEPEND too as it's checked during configure
+RDEPEND="
+ acct-group/plugdev
+ >=sys-apps/util-linux-2.17.2
+ crypt? ( >=sys-fs/cryptsetup-1.0.6-r2 )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-util/intltool
+ sys-devel/gettext"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.19-testsuite-missing-dir.patch
+ "${FILESDIR}"/${P}-locale-regex.patch
+ "${FILESDIR}"/${P}-exfat-support.patch
+ "${FILESDIR}"/${P}-limits-musl.patch
+ "${FILESDIR}"/${P}-missing-includes.patch
+ "${FILESDIR}"/${P}-fix-buggy-realpath-implementation.patch
+)
+
+src_prepare() {
+ # Restore default value from pmount <= 0.9.23 wrt #393633
+ sed -i -e '/^not_physically_logged_allow/s:=.*:= yes:' etc/pmount.conf || die
+
+ cat <<-EOF > po/POTFILES.skip || die
+ src/conffile.c
+ src/configuration.c
+ src/loop.c
+ EOF
+
+ default
+}
+
+src_configure() {
+ econf --disable-hal
+}
+
+src_test() {
+ local testdir=${S}/tests/check_fstab
+
+ ln -s a "${testdir}/b" &&
+ ln -s d "${testdir}/c" &&
+ ln -s c "${testdir}/e" ||
+ die "Unable to create fake symlinks required for testsuite"
+
+ emake check
+}
+
+src_install() {
+ # Must be run SETUID+SETGID, bug #250106
+ exeinto /usr/bin
+ exeopts -m 6710 -g plugdev
+ doexe src/{p,pu}mount
+
+ dodoc AUTHORS ChangeLog TODO
+ doman man/{{p,pu}mount.1,pmount.conf.5}
+
+ insinto /etc
+ doins etc/pmount.{allow,conf}
+
+ keepdir /media #501772
+
+ newbashcomp "${FILESDIR}/${PN}.bash-completion" "${PN}"
+ bashcomp_alias pmount pumount
+}
+
+pkg_postinst() {
+ elog
+ elog "This package has been installed setuid and setgid."
+
+ elog "The permissions are as such that only users that belong to the plugdev"
+ elog "group are allowed to run this. But if a script run by root mounts a"
+ elog "device, members of the plugdev group will have access to it."
+ elog
+ elog "Please add your user to the plugdev group to be able to mount USB drives"
+}
diff --git a/sys-apps/pnputils/metadata.xml b/sys-apps/pnputils/metadata.xml
index 661b9770ac51..de09b05d9958 100644
--- a/sys-apps/pnputils/metadata.xml
+++ b/sys-apps/pnputils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/pnputils/pnputils-0.1-r1.ebuild b/sys-apps/pnputils/pnputils-0.1-r1.ebuild
new file mode 100644
index 000000000000..57de733ddcdd
--- /dev/null
+++ b/sys-apps/pnputils/pnputils-0.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Plug and Play BIOS utilities"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="http://archive.debian.org/debian/pool/main/p/${PN}/${P/-/_}.orig.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+
+PATCHES=(
+ "${FILESDIR}/${P}-makefile.patch"
+ "${FILESDIR}/${P}-musl.patch"
+)
+
+src_compile() {
+ emake CC="$(tc-getCC)" all
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ einstalldocs
+}
diff --git a/sys-apps/pnputils/pnputils-0.1.ebuild b/sys-apps/pnputils/pnputils-0.1.ebuild
deleted file mode 100644
index 26f8aff88c6c..000000000000
--- a/sys-apps/pnputils/pnputils-0.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Plug and Play BIOS utilities"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="http://archive.debian.org/debian/pool/main/p/${PN}/${P/-/_}.orig.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-
-PATCHES=(
- "${FILESDIR}/${P}-makefile.patch"
- "${FILESDIR}/${P}-musl.patch"
-)
-
-src_compile() {
- emake CC="$(tc-getCC)" all
-}
-
-src_install() {
- emake DESTDIR="${ED}" install
- einstalldocs
-}
diff --git a/sys-apps/policycoreutils/Manifest b/sys-apps/policycoreutils/Manifest
index f5fdac8fb423..6983b77d03e7 100644
--- a/sys-apps/policycoreutils/Manifest
+++ b/sys-apps/policycoreutils/Manifest
@@ -1,5 +1,3 @@
-DIST policycoreutils-2.9.tar.gz 2819360 BLAKE2B b0af912e3b4fb2c9598b10ce413c8ffb3f5972a4d5d59270cff40abe8d4e385e0664e24a4f533a95ad2d1657644f3368213f955ac63d9f8c46a661417b07c8b3 SHA512 d8356115671ba66de05f1c13193ab47fab69cc4d09603a92171ed40afafc084dd191591bf336b7d722de637378ad09622ebb6eca85c06063ca9ddd6db10e02a2
-DIST policycoreutils-3.0.tar.gz 2818089 BLAKE2B 6e4aa6d6eecf809efaefccbfa16c44050242d129f496594763aacbb9aaeca23d92b27d30a6f9ae0e49513adc0a1bd58499253eb9ffc003547387c04aa643b462 SHA512 d8d25db48c1caef69228e87d7ebb2c0f075e44e4ff6bf18a26af341d948b81375b33945128cd0410ffebc64ca478fd19a207295189c716c95e6a3c586e9f053d
-DIST policycoreutils-3.1.tar.gz 2817914 BLAKE2B ef68bb5f9cf577164ead44803b6be2bd6401c9e923d2c775c7c8c47f0e803749feaec4247fec5cc1cb766314954402fd2506370bb397f746437ecfcf65b384f3 SHA512 0592f218563a99ba95d2cfd07fdc3761b61c1cc3c01a17ab89ad840169e1a7d4083521d5cacc72d1b76911d516bf592db7a3f90d9ef0cc11ceed007e4580e140
-DIST policycoreutils-extra-1.36.tar.bz2 8830 BLAKE2B 6d98e41ea379d3e95221a6e53d8a8b144e4e15ca5581381e76a529dbbaca304d5587b30419797c8c70cbd7c2b2588e5ecd62adcf97294e429950899c1c318346 SHA512 c6a18e6fb2d65f51dc55b88907f23241f2fbfc033d3d2888b109596d9ed31d509b2c93456727ea4d1f98544831afb15c449ff72d6aedf93b9e474b27817f7fb3
+DIST policycoreutils-3.5.tar.gz 775639 BLAKE2B 777b8564484e89385db7a184c4cad9a99aabf1fd1ac41abd5826c7e6ad29118ae9d6f0d0fd968b6ced87f2f04bc6d7cd207b67428151522915367f656fb8d3f8 SHA512 7978ef6b7a278c6384c9b397734d03c4932c8aefecceaa1e6a1345be27b253dbe276fdcd219ce83ad732c6ed55d53bbc3254e39bccadd67d2cd1152a14749444
+DIST policycoreutils-3.6.tar.gz 755682 BLAKE2B a8b180c8006989192d152651dcfa51856956780bfe1139cc1dc0162eb66ba1eef4f7d64f68a48479572b02e2e97a68c7082722a745d22a9453e8378373319e3c SHA512 e1f32e6e0310b879a5aadab157b103314a61bf3b8fd59c1212d701fbf39900e3b9a0b727338988103d784a7e505355a871ba519dd91520b135a3b9dae40bf1b0
DIST policycoreutils-extra-1.37.tar.bz2 8809 BLAKE2B a7f6122c2e27f54b018174e962bd7f4c14af04e09bbb5300bde6967ea7f2dc5cd03b5787919a4e7f5288bcbc6747922962b5bd3b588ab1e3a035fbff4910d8f5 SHA512 0a85cd7cf279256b5e1927f9dfdd89626a1c8b77b0aeb62b496e7e8d1dccbaa315e39f9308fb2df7270f0bc1c10787b19990e7365cad74b47b61e30394c8b23f
diff --git a/sys-apps/policycoreutils/files/policycoreutils-2.7-0001-newrole-not-suid.patch b/sys-apps/policycoreutils/files/policycoreutils-2.7-0001-newrole-not-suid.patch
deleted file mode 100644
index 6049bbe282af..000000000000
--- a/sys-apps/policycoreutils/files/policycoreutils-2.7-0001-newrole-not-suid.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/policycoreutils/newrole/Makefile b/policycoreutils/newrole/Makefile
-index bdefbb8..9cff135 100644
---- policycoreutils/newrole/Makefile
-+++ policycoreutils/newrole/Makefile
-@@ -49,7 +49,7 @@ ifeq ($(NAMESPACE_PRIV),y)
- IS_SUID=y
- endif
- ifeq ($(IS_SUID),y)
-- MODE := 4555
-+ MODE := 0555
- override LDLIBS += -lcap-ng
- else
- MODE := 0555
diff --git a/sys-apps/policycoreutils/metadata.xml b/sys-apps/policycoreutils/metadata.xml
index 16effc34b8ee..4d3c72d81d48 100644
--- a/sys-apps/policycoreutils/metadata.xml
+++ b/sys-apps/policycoreutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
diff --git a/sys-apps/policycoreutils/policycoreutils-2.9.ebuild b/sys-apps/policycoreutils/policycoreutils-2.9.ebuild
deleted file mode 100644
index dbce840c6b63..000000000000
--- a/sys-apps/policycoreutils/policycoreutils-2.9.ebuild
+++ /dev/null
@@ -1,179 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-PYTHON_COMPAT=( python3_6 )
-PYTHON_REQ_USE="xml"
-
-inherit multilib python-r1 toolchain-funcs bash-completion-r1
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20190315"
-EXTRAS_VER="1.36"
-SEMNG_VER="${PV}"
-SELNX_VER="${PV}"
-SEPOL_VER="${PV}"
-
-IUSE="audit dbus pam split-usr"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- SRC_URI="https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- S1="${WORKDIR}/${MY_P}/${PN}"
- S2="${WORKDIR}/policycoreutils-extra"
- S="${S1}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz
- https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- KEYWORDS="amd64 ~arm64 ~mips x86"
- S1="${WORKDIR}/${MY_P}"
- S2="${WORKDIR}/policycoreutils-extra"
- S="${S1}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python,${PYTHON_USEDEP}]
- >=sys-libs/libcap-1.10-r10:=
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+),${PYTHON_USEDEP}]
- sys-libs/libcap-ng:=
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- sys-devel/gettext
- dev-python/ipy[${PYTHON_USEDEP}]
- dbus? (
- sys-apps/dbus
- dev-libs/dbus-glib:=
- )
- audit? ( >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] )
- pam? ( sys-libs/pam:= )
- ${PYTHON_DEPS}
- !<sec-policy/selinux-base-policy-2.20151208-r6"
-# 2.20151208-r6 and higher has support for new setfiles
-
-### libcgroup -> seunshare
-### dbus -> restorecond
-
-# pax-utils for scanelf used by rlpkg
-RDEPEND="${DEPEND}
- app-misc/pax-utils
- !<sys-apps/openrc-0.14"
-
-PDEPEND="sys-apps/semodule-utils
- sys-apps/selinux-python"
-
-src_unpack() {
- # Override default one because we need the SRC_URI ones even in case of 9999 ebuilds
- default
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- S="${S1}"
- cd "${S}" || die "Failed to switch to ${S}"
- if [[ ${PV} != 9999 ]] ; then
- # If needed for live ebuilds please use /etc/portage/patches
- eapply "${FILESDIR}/policycoreutils-2.7-0001-newrole-not-suid.patch"
- fi
-
- # rlpkg is more useful than fixfiles
- sed -i -e '/^all/s/fixfiles//' "${S}/scripts/Makefile" \
- || die "fixfiles sed 1 failed"
- sed -i -e '/fixfiles/d' "${S}/scripts/Makefile" \
- || die "fixfiles sed 2 failed"
-
- eapply_user
-
- sed -i 's/-Werror//g' "${S1}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
- # Our extra code is outside the regular directory, so set it to the extra
- # directory. We really should optimize this as it is ugly, but the extra
- # code is needed for Gentoo at the same time that policycoreutils is present
- # (so we cannot use an additional package for now).
- S="${S2}"
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- AUDIT_LOG_PRIVS="y" \
- AUDITH="$(usex audit y n)" \
- PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
- SESANDBOX="n" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- S="${S1}" # Regular policycoreutils
- python_foreach_impl building
- S="${S2}" # Extra set
- python_foreach_impl building
-}
-
-src_install() {
- # Python scripts are present in many places. There are no extension modules.
- installation-policycoreutils() {
- einfo "Installing policycoreutils"
- emake -C "${BUILD_DIR}" DESTDIR="${D}" \
- AUDIT_LOG_PRIVS="y" \
- AUDITH="$(usex audit y n)" \
- PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
- SESANDBOX="n" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
-
- installation-extras() {
- einfo "Installing policycoreutils-extra"
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- install
- python_optimize
- }
-
- S="${S1}" # policycoreutils
- python_foreach_impl installation-policycoreutils
- S="${S2}" # extras
- python_foreach_impl installation-extras
- S="${S1}" # back for later
-
- # remove redhat-style init script
- rm -fR "${D}/etc/rc.d" || die
-
- # compatibility symlinks
- use split-usr && dosym ../../sbin/setfiles /usr/sbin/setfiles
-
- bashcomp_alias setsebool getsebool
-
- # location for policy definitions
- dodir /var/lib/selinux
- keepdir /var/lib/selinux
-
- # Set version-specific scripts
- for pyscript in rlpkg; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-}
-
-pkg_postinst() {
- for POLICY_TYPE in ${POLICY_TYPES} ; do
- # There have been some changes to the policy store, rebuilding now.
- # https://marc.info/?l=selinux&m=143757277819717&w=2
- einfo "Rebuilding store ${POLICY_TYPE} (without re-loading)."
- semodule -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
- done
-}
diff --git a/sys-apps/policycoreutils/policycoreutils-3.0.ebuild b/sys-apps/policycoreutils/policycoreutils-3.0.ebuild
deleted file mode 100644
index 5ec0f0d71bf6..000000000000
--- a/sys-apps/policycoreutils/policycoreutils-3.0.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-PYTHON_COMPAT=( python{3_6,3_7} )
-PYTHON_REQ_USE="xml"
-
-inherit multilib python-r1 toolchain-funcs bash-completion-r1
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20191204"
-EXTRAS_VER="1.36"
-SEMNG_VER="${PV}"
-SELNX_VER="${PV}"
-SEPOL_VER="${PV}"
-
-IUSE="audit dbus pam split-usr"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- SRC_URI="https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- S1="${WORKDIR}/${MY_P}/${PN}"
- S2="${WORKDIR}/policycoreutils-extra"
- S="${S1}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz
- https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- KEYWORDS="amd64 ~arm64 ~mips x86"
- S1="${WORKDIR}/${MY_P}"
- S2="${WORKDIR}/policycoreutils-extra"
- S="${S1}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python,${PYTHON_USEDEP}]
- >=sys-libs/libcap-1.10-r10:=
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+),${PYTHON_USEDEP}]
- sys-libs/libcap-ng:=
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- sys-devel/gettext
- dev-python/ipy[${PYTHON_USEDEP}]
- dbus? (
- sys-apps/dbus
- dev-libs/dbus-glib:=
- )
- audit? ( >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] )
- pam? ( sys-libs/pam:= )
- ${PYTHON_DEPS}"
-
-### libcgroup -> seunshare
-### dbus -> restorecond
-
-# pax-utils for scanelf used by rlpkg
-RDEPEND="${DEPEND}
- app-misc/pax-utils"
-
-PDEPEND="sys-apps/semodule-utils
- sys-apps/selinux-python"
-
-src_unpack() {
- # Override default one because we need the SRC_URI ones even in case of 9999 ebuilds
- default
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- S="${S1}"
- cd "${S}" || die "Failed to switch to ${S}"
- if [[ ${PV} != 9999 ]] ; then
- # If needed for live ebuilds please use /etc/portage/patches
- eapply "${FILESDIR}/policycoreutils-2.7-0001-newrole-not-suid.patch"
- fi
-
- # rlpkg is more useful than fixfiles
- sed -i -e '/^all/s/fixfiles//' "${S}/scripts/Makefile" \
- || die "fixfiles sed 1 failed"
- sed -i -e '/fixfiles/d' "${S}/scripts/Makefile" \
- || die "fixfiles sed 2 failed"
-
- eapply_user
-
- sed -i 's/-Werror//g' "${S1}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
- # Our extra code is outside the regular directory, so set it to the extra
- # directory. We really should optimize this as it is ugly, but the extra
- # code is needed for Gentoo at the same time that policycoreutils is present
- # (so we cannot use an additional package for now).
- S="${S2}"
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- AUDIT_LOG_PRIVS="y" \
- AUDITH="$(usex audit y n)" \
- PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
- SESANDBOX="n" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- S="${S1}" # Regular policycoreutils
- python_foreach_impl building
- S="${S2}" # Extra set
- python_foreach_impl building
-}
-
-src_install() {
- # Python scripts are present in many places. There are no extension modules.
- installation-policycoreutils() {
- einfo "Installing policycoreutils"
- emake -C "${BUILD_DIR}" DESTDIR="${D}" \
- AUDIT_LOG_PRIVS="y" \
- AUDITH="$(usex audit y n)" \
- PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
- SESANDBOX="n" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
-
- installation-extras() {
- einfo "Installing policycoreutils-extra"
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- install
- python_optimize
- }
-
- S="${S1}" # policycoreutils
- python_foreach_impl installation-policycoreutils
- S="${S2}" # extras
- python_foreach_impl installation-extras
- S="${S1}" # back for later
-
- # remove redhat-style init script
- rm -fR "${D}/etc/rc.d" || die
-
- # compatibility symlinks
- use split-usr && dosym ../../sbin/setfiles /usr/sbin/setfiles
-
- bashcomp_alias setsebool getsebool
-
- # location for policy definitions
- dodir /var/lib/selinux
- keepdir /var/lib/selinux
-
- # Set version-specific scripts
- for pyscript in rlpkg; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-}
-
-pkg_postinst() {
- for POLICY_TYPE in ${POLICY_TYPES} ; do
- # There have been some changes to the policy store, rebuilding now.
- # https://marc.info/?l=selinux&m=143757277819717&w=2
- einfo "Rebuilding store ${POLICY_TYPE} (without re-loading)."
- semodule -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
- done
-}
diff --git a/sys-apps/policycoreutils/policycoreutils-3.1.ebuild b/sys-apps/policycoreutils/policycoreutils-3.1.ebuild
deleted file mode 100644
index 569dc07cfcf9..000000000000
--- a/sys-apps/policycoreutils/policycoreutils-3.1.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-PYTHON_COMPAT=( python{3_6,3_7} )
-PYTHON_REQ_USE="xml"
-
-inherit multilib python-r1 toolchain-funcs bash-completion-r1
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20200710"
-EXTRAS_VER="1.37"
-SEMNG_VER="${PV}"
-SELNX_VER="${PV}"
-SEPOL_VER="${PV}"
-
-IUSE="audit dbus pam split-usr"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- SRC_URI="https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- S1="${WORKDIR}/${MY_P}/${PN}"
- S2="${WORKDIR}/policycoreutils-extra"
- S="${S1}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz
- https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- KEYWORDS="~amd64 ~arm64 ~mips ~x86"
- S1="${WORKDIR}/${MY_P}"
- S2="${WORKDIR}/policycoreutils-extra"
- S="${S1}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python,${PYTHON_USEDEP}]
- >=sys-libs/libcap-1.10-r10:=
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+),${PYTHON_USEDEP}]
- sys-libs/libcap-ng:=
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- sys-devel/gettext
- dev-python/ipy[${PYTHON_USEDEP}]
- dbus? (
- sys-apps/dbus
- dev-libs/dbus-glib:=
- )
- audit? ( >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] )
- pam? ( sys-libs/pam:= )
- ${PYTHON_DEPS}"
-
-### libcgroup -> seunshare
-### dbus -> restorecond
-
-# pax-utils for scanelf used by rlpkg
-RDEPEND="${DEPEND}
- app-misc/pax-utils"
-
-PDEPEND="sys-apps/semodule-utils
- sys-apps/selinux-python"
-
-src_unpack() {
- # Override default one because we need the SRC_URI ones even in case of 9999 ebuilds
- default
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- S="${S1}"
- cd "${S}" || die "Failed to switch to ${S}"
- if [[ ${PV} != 9999 ]] ; then
- # If needed for live ebuilds please use /etc/portage/patches
- eapply "${FILESDIR}/policycoreutils-3.1-0001-newrole-not-suid.patch"
- fi
-
- # rlpkg is more useful than fixfiles
- sed -i -e '/^all/s/fixfiles//' "${S}/scripts/Makefile" \
- || die "fixfiles sed 1 failed"
- sed -i -e '/fixfiles/d' "${S}/scripts/Makefile" \
- || die "fixfiles sed 2 failed"
-
- eapply_user
-
- sed -i 's/-Werror//g' "${S1}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
- # Our extra code is outside the regular directory, so set it to the extra
- # directory. We really should optimize this as it is ugly, but the extra
- # code is needed for Gentoo at the same time that policycoreutils is present
- # (so we cannot use an additional package for now).
- S="${S2}"
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- AUDIT_LOG_PRIVS="y" \
- AUDITH="$(usex audit y n)" \
- PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
- SESANDBOX="n" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- S="${S1}" # Regular policycoreutils
- python_foreach_impl building
- S="${S2}" # Extra set
- python_foreach_impl building
-}
-
-src_install() {
- # Python scripts are present in many places. There are no extension modules.
- installation-policycoreutils() {
- einfo "Installing policycoreutils"
- emake -C "${BUILD_DIR}" DESTDIR="${D}" \
- AUDIT_LOG_PRIVS="y" \
- AUDITH="$(usex audit y n)" \
- PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
- SESANDBOX="n" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
-
- installation-extras() {
- einfo "Installing policycoreutils-extra"
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- install
- python_optimize
- }
-
- S="${S1}" # policycoreutils
- python_foreach_impl installation-policycoreutils
- S="${S2}" # extras
- python_foreach_impl installation-extras
- S="${S1}" # back for later
-
- # remove redhat-style init script
- rm -fR "${D}/etc/rc.d" || die
-
- # compatibility symlinks
- use split-usr && dosym ../../sbin/setfiles /usr/sbin/setfiles
-
- bashcomp_alias setsebool getsebool
-
- # location for policy definitions
- dodir /var/lib/selinux
- keepdir /var/lib/selinux
-
- # Set version-specific scripts
- for pyscript in rlpkg; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-}
-
-pkg_postinst() {
- for POLICY_TYPE in ${POLICY_TYPES} ; do
- # There have been some changes to the policy store, rebuilding now.
- # https://marc.info/?l=selinux&m=143757277819717&w=2
- einfo "Rebuilding store ${POLICY_TYPE} (without re-loading)."
- semodule -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
- done
-}
diff --git a/sys-apps/policycoreutils/policycoreutils-3.5.ebuild b/sys-apps/policycoreutils/policycoreutils-3.5.ebuild
new file mode 100644
index 000000000000..5d45077b38c6
--- /dev/null
+++ b/sys-apps/policycoreutils/policycoreutils-3.5.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit multilib python-r1 toolchain-funcs bash-completion-r1
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+EXTRAS_VER="1.37"
+
+DESCRIPTION="SELinux core utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ SRC_URI="https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
+ S1="${WORKDIR}/${P}/${PN}"
+ S2="${WORKDIR}/policycoreutils-extra"
+ S="${S1}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S1="${WORKDIR}/${MY_P}"
+ S2="${WORKDIR}/policycoreutils-extra"
+ S="${S1}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="audit pam split-usr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND=">=sys-libs/libselinux-${PV}:=[python,${PYTHON_USEDEP}]
+ >=sys-libs/libsemanage-${PV}:=[python(+),${PYTHON_USEDEP}]
+ >=sys-libs/libsepol-${PV}:=
+ sys-libs/libcap-ng:=
+ >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
+ audit? ( >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] )
+ pam? ( sys-libs/pam:= )
+ ${PYTHON_DEPS}"
+
+# Avoid dependency loop in the cross-compile case, bug #755173
+# (Still exists in native)
+BDEPEND="sys-devel/gettext"
+
+# pax-utils for scanelf used by rlpkg
+RDEPEND="${DEPEND}
+ app-misc/pax-utils"
+
+PDEPEND="sys-apps/semodule-utils
+ sys-apps/selinux-python"
+
+src_unpack() {
+ # Override default one because we need the SRC_URI ones even in case of 9999 ebuilds
+ default
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+}
+
+src_prepare() {
+ S="${S1}"
+ cd "${S}" || die "Failed to switch to ${S}"
+ if [[ ${PV} != 9999 ]] ; then
+ # If needed for live ebuilds please use /etc/portage/patches
+ eapply "${FILESDIR}/policycoreutils-3.1-0001-newrole-not-suid.patch"
+ fi
+
+ # rlpkg is more useful than fixfiles
+ sed -i -e '/^all/s/fixfiles//' "${S}/scripts/Makefile" \
+ || die "fixfiles sed 1 failed"
+ sed -i -e '/fixfiles/d' "${S}/scripts/Makefile" \
+ || die "fixfiles sed 2 failed"
+
+ eapply_user
+
+ sed -i 's/-Werror//g' "${S1}"/*/Makefile || die "Failed to remove Werror"
+
+ python_copy_sources
+ # Our extra code is outside the regular directory, so set it to the extra
+ # directory. We really should optimize this as it is ugly, but the extra
+ # code is needed for Gentoo at the same time that policycoreutils is present
+ # (so we cannot use an additional package for now).
+ S="${S2}"
+ python_copy_sources
+}
+
+src_compile() {
+ building() {
+ emake -C "${BUILD_DIR}" \
+ AUDIT_LOG_PRIVS="y" \
+ AUDITH="$(usex audit y n)" \
+ PAMH="$(usex pam y n)" \
+ SESANDBOX="n" \
+ CC="$(tc-getCC)" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)"
+ }
+ S="${S1}" # Regular policycoreutils
+ python_foreach_impl building
+ S="${S2}" # Extra set
+ python_foreach_impl building
+}
+
+src_install() {
+ # Python scripts are present in many places. There are no extension modules.
+ installation-policycoreutils() {
+ einfo "Installing policycoreutils"
+ emake -C "${BUILD_DIR}" DESTDIR="${D}" \
+ AUDIT_LOG_PRIVS="y" \
+ AUDITH="$(usex audit y n)" \
+ PAMH="$(usex pam y n)" \
+ SESANDBOX="n" \
+ CC="$(tc-getCC)" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)" \
+ install
+ python_optimize
+ }
+
+ installation-extras() {
+ einfo "Installing policycoreutils-extra"
+ emake -C "${BUILD_DIR}" \
+ DESTDIR="${D}" \
+ install
+ python_optimize
+ }
+
+ S="${S1}" # policycoreutils
+ python_foreach_impl installation-policycoreutils
+ S="${S2}" # extras
+ python_foreach_impl installation-extras
+ S="${S1}" # back for later
+
+ # remove redhat-style init script
+ rm -fR "${D}/etc/rc.d" || die
+
+ # compatibility symlinks
+ if use split-usr; then
+ dosym ../../sbin/setfiles /usr/sbin/setfiles
+ else
+ # remove sestatus symlink
+ rm -f "${D}"/usr/sbin/sestatus || die
+ fi
+
+ bashcomp_alias setsebool getsebool
+
+ # location for policy definitions
+ dodir /var/lib/selinux
+ keepdir /var/lib/selinux
+
+ # Set version-specific scripts
+ for pyscript in rlpkg; do
+ python_replicate_script "${ED}/usr/sbin/${pyscript}"
+ done
+}
+
+pkg_postinst() {
+ for POLICY_TYPE in ${POLICY_TYPES} ; do
+ # There have been some changes to the policy store, rebuilding now.
+ # https://marc.info/?l=selinux&m=143757277819717&w=2
+ einfo "Rebuilding store ${POLICY_TYPE} in '${ROOT:-/}' (without re-loading)."
+ semodule -p "${ROOT:-/}" -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
+ done
+}
diff --git a/sys-apps/policycoreutils/policycoreutils-3.6.ebuild b/sys-apps/policycoreutils/policycoreutils-3.6.ebuild
new file mode 100644
index 000000000000..e2527faa689b
--- /dev/null
+++ b/sys-apps/policycoreutils/policycoreutils-3.6.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit python-r1 toolchain-funcs bash-completion-r1
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+EXTRAS_VER="1.37"
+
+DESCRIPTION="SELinux core utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ SRC_URI="https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
+ S1="${WORKDIR}/${P}/${PN}"
+ S2="${WORKDIR}/policycoreutils-extra"
+ S="${S1}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S1="${WORKDIR}/${MY_P}"
+ S2="${WORKDIR}/policycoreutils-extra"
+ S="${S1}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="audit pam split-usr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND=">=sys-libs/libselinux-${PV}:=[python,${PYTHON_USEDEP}]
+ >=sys-libs/libsemanage-${PV}:=[python(+),${PYTHON_USEDEP}]
+ >=sys-libs/libsepol-${PV}:=
+ sys-libs/libcap-ng:=
+ >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
+ audit? ( >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] )
+ pam? ( sys-libs/pam:= )
+ ${PYTHON_DEPS}"
+
+# Avoid dependency loop in the cross-compile case, bug #755173
+# (Still exists in native)
+BDEPEND="sys-devel/gettext"
+
+# pax-utils for scanelf used by rlpkg
+RDEPEND="${DEPEND}
+ app-misc/pax-utils"
+
+PDEPEND="sys-apps/semodule-utils
+ sys-apps/selinux-python"
+
+src_unpack() {
+ # Override default one because we need the SRC_URI ones even in case of 9999 ebuilds
+ default
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+}
+
+src_prepare() {
+ S="${S1}"
+ cd "${S}" || die "Failed to switch to ${S}"
+ if [[ ${PV} != 9999 ]] ; then
+ # If needed for live ebuilds please use /etc/portage/patches
+ eapply "${FILESDIR}/policycoreutils-3.1-0001-newrole-not-suid.patch"
+ fi
+
+ # rlpkg is more useful than fixfiles
+ sed -i -e '/^all/s/fixfiles//' "${S}/scripts/Makefile" \
+ || die "fixfiles sed 1 failed"
+ sed -i -e '/fixfiles/d' "${S}/scripts/Makefile" \
+ || die "fixfiles sed 2 failed"
+
+ eapply_user
+
+ sed -i 's/-Werror//g' "${S1}"/*/Makefile || die "Failed to remove Werror"
+
+ python_copy_sources
+ # Our extra code is outside the regular directory, so set it to the extra
+ # directory. We really should optimize this as it is ugly, but the extra
+ # code is needed for Gentoo at the same time that policycoreutils is present
+ # (so we cannot use an additional package for now).
+ S="${S2}"
+ python_copy_sources
+}
+
+src_compile() {
+ building() {
+ emake -C "${BUILD_DIR}" \
+ AUDIT_LOG_PRIVS="y" \
+ AUDITH="$(usex audit y n)" \
+ PAMH="$(usex pam y n)" \
+ SESANDBOX="n" \
+ CC="$(tc-getCC)" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)"
+ }
+ S="${S1}" # Regular policycoreutils
+ python_foreach_impl building
+ S="${S2}" # Extra set
+ python_foreach_impl building
+}
+
+src_install() {
+ # Python scripts are present in many places. There are no extension modules.
+ installation-policycoreutils() {
+ einfo "Installing policycoreutils"
+ emake -C "${BUILD_DIR}" DESTDIR="${D}" \
+ AUDIT_LOG_PRIVS="y" \
+ AUDITH="$(usex audit y n)" \
+ PAMH="$(usex pam y n)" \
+ SESANDBOX="n" \
+ CC="$(tc-getCC)" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)" \
+ install
+ python_optimize
+ }
+
+ installation-extras() {
+ einfo "Installing policycoreutils-extra"
+ emake -C "${BUILD_DIR}" \
+ DESTDIR="${D}" \
+ install
+ python_optimize
+ }
+
+ S="${S1}" # policycoreutils
+ python_foreach_impl installation-policycoreutils
+ S="${S2}" # extras
+ python_foreach_impl installation-extras
+ S="${S1}" # back for later
+
+ # remove redhat-style init script
+ rm -fR "${D}/etc/rc.d" || die
+
+ # compatibility symlinks
+ if use split-usr; then
+ dosym ../../sbin/setfiles /usr/sbin/setfiles
+ else
+ # remove sestatus symlink
+ rm -f "${D}"/usr/sbin/sestatus || die
+ fi
+
+ bashcomp_alias setsebool getsebool
+
+ # location for policy definitions
+ dodir /var/lib/selinux
+ keepdir /var/lib/selinux
+
+ # Set version-specific scripts
+ for pyscript in rlpkg; do
+ python_replicate_script "${ED}/usr/sbin/${pyscript}"
+ done
+}
+
+pkg_postinst() {
+ for POLICY_TYPE in ${POLICY_TYPES} ; do
+ # There have been some changes to the policy store, rebuilding now.
+ # https://marc.info/?l=selinux&m=143757277819717&w=2
+ einfo "Rebuilding store ${POLICY_TYPE} in '${ROOT:-/}' (without re-loading)."
+ semodule -p "${ROOT:-/}" -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
+ done
+}
diff --git a/sys-apps/policycoreutils/policycoreutils-9999.ebuild b/sys-apps/policycoreutils/policycoreutils-9999.ebuild
index 569dc07cfcf9..b8625ff49cd8 100644
--- a/sys-apps/policycoreutils/policycoreutils-9999.ebuild
+++ b/sys-apps/policycoreutils/policycoreutils-9999.ebuild
@@ -1,22 +1,15 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-PYTHON_COMPAT=( python{3_6,3_7} )
-PYTHON_REQ_USE="xml"
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="xml(+)"
-inherit multilib python-r1 toolchain-funcs bash-completion-r1
+inherit python-r1 toolchain-funcs bash-completion-r1
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20200710"
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
EXTRAS_VER="1.37"
-SEMNG_VER="${PV}"
-SELNX_VER="${PV}"
-SEPOL_VER="${PV}"
-
-IUSE="audit dbus pam split-usr"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DESCRIPTION="SELinux core utilities"
HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
@@ -25,13 +18,13 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
SRC_URI="https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- S1="${WORKDIR}/${MY_P}/${PN}"
+ S1="${WORKDIR}/${P}/${PN}"
S2="${WORKDIR}/policycoreutils-extra"
S="${S1}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz
https://dev.gentoo.org/~perfinion/distfiles/policycoreutils-extra-${EXTRAS_VER}.tar.bz2"
- KEYWORDS="~amd64 ~arm64 ~mips ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
S1="${WORKDIR}/${MY_P}"
S2="${WORKDIR}/policycoreutils-extra"
S="${S1}"
@@ -39,25 +32,21 @@ fi
LICENSE="GPL-2"
SLOT="0"
+IUSE="audit pam split-usr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python,${PYTHON_USEDEP}]
- >=sys-libs/libcap-1.10-r10:=
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+),${PYTHON_USEDEP}]
+DEPEND=">=sys-libs/libselinux-${PV}:=[python,${PYTHON_USEDEP}]
+ >=sys-libs/libsemanage-${PV}:=[python(+),${PYTHON_USEDEP}]
+ >=sys-libs/libsepol-${PV}:=
sys-libs/libcap-ng:=
- >=sys-libs/libsepol-${SEPOL_VER}:=
>=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- sys-devel/gettext
- dev-python/ipy[${PYTHON_USEDEP}]
- dbus? (
- sys-apps/dbus
- dev-libs/dbus-glib:=
- )
audit? ( >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] )
pam? ( sys-libs/pam:= )
${PYTHON_DEPS}"
-### libcgroup -> seunshare
-### dbus -> restorecond
+# Avoid dependency loop in the cross-compile case, bug #755173
+# (Still exists in native)
+BDEPEND="sys-devel/gettext"
# pax-utils for scanelf used by rlpkg
RDEPEND="${DEPEND}
@@ -107,7 +96,6 @@ src_compile() {
AUDIT_LOG_PRIVS="y" \
AUDITH="$(usex audit y n)" \
PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
SESANDBOX="n" \
CC="$(tc-getCC)" \
LIBDIR="\$(PREFIX)/$(get_libdir)"
@@ -126,7 +114,6 @@ src_install() {
AUDIT_LOG_PRIVS="y" \
AUDITH="$(usex audit y n)" \
PAMH="$(usex pam y n)" \
- INOTIFYH="$(usex dbus y n)" \
SESANDBOX="n" \
CC="$(tc-getCC)" \
LIBDIR="\$(PREFIX)/$(get_libdir)" \
@@ -152,7 +139,12 @@ src_install() {
rm -fR "${D}/etc/rc.d" || die
# compatibility symlinks
- use split-usr && dosym ../../sbin/setfiles /usr/sbin/setfiles
+ if use split-usr; then
+ dosym ../../sbin/setfiles /usr/sbin/setfiles
+ else
+ # remove sestatus symlink
+ rm -f "${D}"/usr/sbin/sestatus || die
+ fi
bashcomp_alias setsebool getsebool
@@ -170,7 +162,7 @@ pkg_postinst() {
for POLICY_TYPE in ${POLICY_TYPES} ; do
# There have been some changes to the policy store, rebuilding now.
# https://marc.info/?l=selinux&m=143757277819717&w=2
- einfo "Rebuilding store ${POLICY_TYPE} (without re-loading)."
- semodule -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
+ einfo "Rebuilding store ${POLICY_TYPE} in '${ROOT:-/}' (without re-loading)."
+ semodule -p "${ROOT:-/}" -s "${POLICY_TYPE}" -n -B || die "Failed to rebuild policy store ${POLICY_TYPE}"
done
}
diff --git a/sys-apps/polychromatic/Manifest b/sys-apps/polychromatic/Manifest
new file mode 100644
index 000000000000..28a27286055b
--- /dev/null
+++ b/sys-apps/polychromatic/Manifest
@@ -0,0 +1 @@
+DIST polychromatic-0.8.3.tar.gz 1762021 BLAKE2B eb4925fdd5be892c4f490424f357e8d1a2db79ac4bd9b4ae2a6f05662022837ba624d23c373b073de8045207511c50a6f2c4ba6cc4a6f276c2553edcbae25eaf SHA512 e2b26bfda985a2a80373dfa2c10e85a96724eec16c513e825841b7363b692c3edf51fc7ddc0735e28bb1c5074ebd22e9390606d314df35fc61cb185a0fd0acfc
diff --git a/sys-apps/polychromatic/metadata.xml b/sys-apps/polychromatic/metadata.xml
new file mode 100644
index 000000000000..cb47444560e8
--- /dev/null
+++ b/sys-apps/polychromatic/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <longdescription>
+ Polychromatic is a vendor agnostic front-end for managing lighting, RGB
+ effects and some special functionality for keyboards, mice, keypads and
+ just about any other gaming peripheral on your GNU/Linux system. The
+ software aims to make it easy to create and co-ordinate lighting effects
+ that work across all compatible hardware, even if you switch to another
+ brand also supported by Polychromatic.
+ </longdescription>
+ <upstream>
+ <changelog>https://raw.githubusercontent.com/polychromatic/polychromatic/master/CHANGELOG</changelog>
+ <bugs-to>https://github.com/polychromatic/polychromatic/issues/</bugs-to>
+ <remote-id type="github">polychromatic/polychromatic</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/polychromatic/polychromatic-0.8.3-r1.ebuild b/sys-apps/polychromatic/polychromatic-0.8.3-r1.ebuild
new file mode 100644
index 000000000000..77b33608e6d4
--- /dev/null
+++ b/sys-apps/polychromatic/polychromatic-0.8.3-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit meson python-single-r1 readme.gentoo-r1 xdg
+
+DESCRIPTION="RGB lighting management software for GNU/Linux powered by OpenRazer"
+HOMEPAGE="https://polychromatic.app/
+ https://github.com/polychromatic/polychromatic/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+ KEYWORDS="amd64"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=x11-libs/gtk+-3.20:3[introspection]
+ $(python_gen_cond_dep '
+ dev-python/PyQt5[svg,${PYTHON_USEDEP}]
+ dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/colour[${PYTHON_USEDEP}]
+ dev-python/distro[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/setproctitle[${PYTHON_USEDEP}]
+ sys-apps/openrazer[client,${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ ${RDEPEND}
+ dev-util/intltool
+ dev-lang/sassc
+"
+
+DOC_CONTENTS="To automatically start up Polychromatic on session login copy
+/usr/share/polychromatic/polychromatic-autostart.desktop file into Your user's
+~/.config/autostart/ directory."
+
+src_install() {
+ meson_src_install
+ python_optimize
+ readme.gentoo_create_doc
+
+ python_doscript "${S}"/polychromatic-{cli,controller,helper,tray-applet}
+
+ # Do not force polychromatic to autostart on session login.
+ # Move it into /usr/share/polychromatic and treat it as an example file
+ # that could be installed into user's ~/.config/autostart/ directory.
+ mv "${ED}"/etc/xdg/autostart/${PN}-autostart.desktop \
+ "${ED}"/usr/share/${PN}/${PN}-autostart.desktop || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+}
diff --git a/sys-apps/polychromatic/polychromatic-9999.ebuild b/sys-apps/polychromatic/polychromatic-9999.ebuild
new file mode 100644
index 000000000000..7baaa20d6a71
--- /dev/null
+++ b/sys-apps/polychromatic/polychromatic-9999.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit meson python-single-r1 readme.gentoo-r1 xdg
+
+DESCRIPTION="RGB lighting management software for GNU/Linux powered by OpenRazer"
+HOMEPAGE="https://polychromatic.app/
+ https://github.com/polychromatic/polychromatic/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=x11-libs/gtk+-3.20:3[introspection]
+ $(python_gen_cond_dep '
+ dev-python/PyQt5[svg,${PYTHON_USEDEP}]
+ dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/colour[${PYTHON_USEDEP}]
+ dev-python/distro[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/setproctitle[${PYTHON_USEDEP}]
+ sys-apps/openrazer[client,${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ ${RDEPEND}
+ dev-util/intltool
+ dev-lang/sassc
+"
+
+DOC_CONTENTS="To automatically start up Polychromatic on session login copy
+/usr/share/polychromatic/polychromatic-autostart.desktop file into Your user's
+~/.config/autostart/ directory."
+
+src_install() {
+ meson_src_install
+ python_optimize
+ readme.gentoo_create_doc
+
+ python_doscript "${S}"/polychromatic-{cli,controller,helper,tray-applet}
+
+ # Do not force polychromatic to autostart on session login.
+ # Move it into /usr/share/polychromatic and treat it as an example file
+ # that could be installed into user's ~/.config/autostart/ directory.
+ mv "${ED}"/etc/xdg/autostart/${PN}-autostart.desktop \
+ "${ED}"/usr/share/${PN}/${PN}-autostart.desktop || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+}
diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest
index 2b1ad98362ca..5320b6512abd 100644
--- a/sys-apps/portage/Manifest
+++ b/sys-apps/portage/Manifest
@@ -1,4 +1,3 @@
-DIST portage-2.3.89-bug-718578.patch 1325 BLAKE2B 7a3bc520274617736eac2e3d078e90d151bdb5d8615f6217a499c0f5d4c80813f2c753e7902cf34482df0725ad0b43a38707764c8be14aae9f7ca34f0bd8721f SHA512 6f1c5d7b42beb8078c45cccbad2bd65374b69af92521d9be3beb6784477ca5bcdd75d8e762b239e44e3121e6fe5e3a040c92c9b61521e4a9b1d6bafee10d4c88
-DIST portage-2.3.99.tar.bz2 1051210 BLAKE2B dd3f990dbc87e655a767ce01e1ee3f0b1d5226fa818949408e54b81a2f96e50a4215a79af42b00dc795792858c4f86453b238b14baef4f0793c937b5617534b8 SHA512 176842318a4134ce54c5aa6485fef296f5a14edd2a72421c2011973a0f1a6af39bc5398f1e9eb3b8666d5fc307589c5b91ab93c219bdedb2d307357d8ddefbf5
-DIST portage-3.0.4.tar.bz2 1042654 BLAKE2B 6f869b2eb24f9e590bf8e01172050105a1bd9ea88657db5893133b4620231a0ddcda871d6fcc10623f7f2ef809116310c76355263819be6c3734b0ca184d5fc0 SHA512 7a0c39cd4ed65aebd84ff8bbadba29760b3aa392a0d606c5b29a1112fd0845c42f74eebb0728a069b2b097a6eb7eec2d18af615fd9edcc38f1018ae6ff686812
-DIST portage-3.0.8.tar.bz2 1046968 BLAKE2B 662147c37a9e7b81030fadb4d6438b734ee57a9eb9bfcee80991d137a017aa3541565961282ebf8736db71aeb05532ffa139ff3a34a84bc9064cf74427acb666 SHA512 5f97870a11ecca30ffe8f463f87cd16a1edb52b44832c6eaba15cadcfde2b4f7edf963749e45c8043b45b38e53ee210dc913aa2d2432a2bd3928cc27c8765a85
+DIST portage-3.0.59.tar.bz2 1175098 BLAKE2B dbb8a22fd9417a74e60aa24ff064e9da5b4c54bd4936a0a1a4fdb0cd30d8568ca2424ef2a484883b538685a291a85009d942defdbb5cfa4e0072e9d977f238cd SHA512 8c86e0663327125e7cb36150d4aca1d7fcd2bf7ae25634ed916c2ee444809404aafb094adacacc0408509600f447d62d9c53e7bc25dd8c71c61e8758ac674638
+DIST portage-3.0.61.tar.bz2 1178151 BLAKE2B bad3140735b12a18a3108e91cc88146fc5c64ad3e3e056707eec7629927f718483a3e1ccf09f74de510ee7733b4d856c3c53692a6cc0f5fc1a7babf88fd7f06b SHA512 1401392a7bd2bf18e698e82af25a39db2aa9d8d9e8d9c07dea11ba5d5c866d2d3f8a3eccc8568b081aeaf6f668466921c61f58adbdd9dd5ffd9cf632bff2bdbd
+DIST portage-3.0.63.tar.bz2 1187961 BLAKE2B 10523150b0eabac97309004c57356c40fa94ebd59f8f76701ae63d13f9424b523ccee2a367174af3a52078d5d9e4338b94e144247f6709c2f7df4418c040b06f SHA512 323adc17254f92e58f22028dad12ebcaaafa25c82567c5d31cc9575c30e0d78224c8f9efe0fcbeee549b08b0797edffb4bbe9c6fbbd8943e3f9dcda25eedd699
diff --git a/sys-apps/portage/files/portage-tmpdir.conf b/sys-apps/portage/files/portage-tmpdir.conf
new file mode 100644
index 000000000000..4f6e20ccb521
--- /dev/null
+++ b/sys-apps/portage/files/portage-tmpdir.conf
@@ -0,0 +1,2 @@
+d /var/tmp/portage 0775 portage portage
+d /tmp/portage 0775 portage portage
diff --git a/sys-apps/portage/metadata.xml b/sys-apps/portage/metadata.xml
index 062dafe62481..fad6b93955a7 100644
--- a/sys-apps/portage/metadata.xml
+++ b/sys-apps/portage/metadata.xml
@@ -1,33 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <upstream>
- <bugs-to>mailto:dev-portage@gentoo.org</bugs-to>
- <changelog>https://gitweb.gentoo.org/proj/portage.git/plain/RELEASE-NOTES</changelog>
- <doc>https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Portage</doc>
- <remote-id type="cpe">cpe:/a:gentoo:portage</remote-id>
- </upstream>
- <maintainer type="project">
- <email>dev-portage@gentoo.org</email>
- </maintainer>
- <use>
- <flag name="apidoc">Build html API documentation with sphinx-apidoc.</flag>
- <flag name="gentoo-dev">Enable features required for Gentoo ebuild development.</flag>
- <flag name="ipc">Use inter-process communication between portage and
- running ebuilds.
- </flag>
- <flag name="native-extensions">
- Compiles native "C" extensions (speedups, instead of using python
- backup code). Currently includes libc-locales.
- This should only be temporarily disabled for some bootstrapping
- operations. Cross-compilation is not supported.
- </flag>
- <flag name="rsync-verify">
- Enable full-tree cryptographic verification of Gentoo repository
- rsync checkouts using <pkg>app-portage/gemato</pkg>.
- </flag>
- <flag name="xattr">Preserve extended attributes (filesystem-stored metadata)
- when installing files. Usually only required for hardened systems.
- </flag>
- </use>
+ <maintainer type="project">
+ <email>dev-portage@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="apidoc">Build html API documentation with sphinx-apidoc.</flag>
+ <flag name="gentoo-dev">Enable features required for Gentoo ebuild development.</flag>
+ <flag name="ipc">Use inter-process communication between portage and running ebuilds.</flag>
+ <flag name="native-extensions">
+ Compiles native "C" extensions (speedups, instead of using python
+ backup code). Currently includes libc-locales.
+ This should only be temporarily disabled for some bootstrapping
+ operations. Cross-compilation is not supported.
+ </flag>
+ <flag name="rsync-verify">
+ Enable full-tree cryptographic verification of Gentoo repository
+ rsync checkouts using <pkg>app-portage/gemato</pkg>.
+ </flag>
+ <flag name="xattr">
+ Preserve extended attributes (filesystem-stored metadata)
+ when installing files. Usually only required for hardened systems.
+ </flag>
+ </use>
+ <upstream>
+ <bugs-to>mailto:dev-portage@gentoo.org</bugs-to>
+ <changelog>https://gitweb.gentoo.org/proj/portage.git/plain/NEWS</changelog>
+ <doc>https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Portage</doc>
+ <remote-id type="cpe">cpe:/a:gentoo:portage</remote-id>
+ <remote-id type="gentoo">proj/portage</remote-id>
+ <remote-id type="github">gentoo/portage</remote-id>
+ <remote-id type="pypi">portage</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/portage/portage-2.3.99-r2.ebuild b/sys-apps/portage/portage-2.3.99-r2.ebuild
deleted file mode 100644
index 9f289c0f83fa..000000000000
--- a/sys-apps/portage/portage-2.3.99-r2.ebuild
+++ /dev/null
@@ -1,265 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( pypy3 python3_6 python3_7 python3_8 )
-PYTHON_REQ_USE='bzip2(+),threads(+)'
-
-inherit distutils-r1 epatch linux-info tmpfiles prefix
-
-DESCRIPTION="Portage is the package management and distribution system for Gentoo"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
-
-LICENSE="GPL-2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-SLOT="0"
-IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux xattr"
-
-DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
- >=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/sed-4.0.5 sys-devel/patch
- doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
- apidoc? (
- dev-python/sphinx
- dev-python/sphinx-epytext
- )"
-# Require sandbox-2.2 for bug #288863.
-# For whirlpool hash, require python[ssl] (bug #425046).
-# For compgen, require bash[readline] (bug #445576).
-# app-portage/gemato goes without PYTHON_USEDEP since we're calling
-# the executable.
-RDEPEND="
- >=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/findutils-4.4
- !build? (
- >=sys-apps/sed-4.0.5
- app-shells/bash:0[readline]
- >=app-admin/eselect-1.2
- rsync-verify? (
- >=app-portage/gemato-14[${PYTHON_USEDEP}]
- >=app-crypt/openpgp-keys-gentoo-release-20180706
- >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
- )
- )
- elibc_glibc? ( >=sys-apps/sandbox-2.2 )
- elibc_musl? ( >=sys-apps/sandbox-2.2 )
- elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
- kernel_linux? ( sys-apps/util-linux )
- >=app-misc/pax-utils-0.1.17
- selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
- xattr? ( kernel_linux? (
- >=sys-apps/install-xattr-0.3
- ) )
- !<app-admin/logrotate-3.8.0
- !<app-portage/gentoolkit-0.4.6
- !<app-portage/repoman-2.3.10"
-PDEPEND="
- !build? (
- >=net-misc/rsync-2.6.4
- userland_GNU? ( >=sys-apps/coreutils-6.4 )
- )"
-# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
-# NOTE: FEATURES=installsources requires debugedit and rsync
-
-SRC_ARCHIVES="https://dev.gentoo.org/~zmedico/portage/archives"
-
-prefix_src_archives() {
- local x y
- for x in ${@}; do
- for y in ${SRC_ARCHIVES}; do
- echo ${y}/${x}
- done
- done
-}
-
-TARBALL_PV=${PV}
-SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
- $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)
- https://github.com/gentoo/portage/commit/9738a404e876270cbdef2514f66915bce35d7435.patch -> portage-2.3.89-bug-718578.patch"
-
-pkg_pretend() {
- local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
-
- check_extra_config
-}
-
-python_prepare_all() {
- distutils-r1_python_prepare_all
-
- epatch "${DISTDIR}/portage-2.3.89-bug-718578.patch"
-
- # Apply 03efd1125214
- sed -e '50s|"EMERGE_FROM", "EPREFIX",|"EMERGE_FROM", "ENV_UNSET", "EPREFIX",|' -i lib/portage/package/ebuild/_config/special_env_vars.py || die
-
- sed -e "s:^VERSION = \"HEAD\"$:VERSION = \"${PV}\":" -i lib/portage/__init__.py || die
-
- if use gentoo-dev; then
- einfo "Disabling --dynamic-deps by default for gentoo-dev..."
- sed -e 's:\("--dynamic-deps", \)\("y"\):\1"n":' \
- -i lib/_emerge/create_depgraph_params.py || \
- die "failed to patch create_depgraph_params.py"
-
- einfo "Enabling additional FEATURES for gentoo-dev..."
- echo 'FEATURES="${FEATURES} strict-keepdir"' \
- >> cnf/make.globals || die
- fi
-
- if use native-extensions; then
- printf "[build_ext]\nportage-ext-modules=true\n" >> \
- setup.cfg || die
- fi
-
- if ! use ipc ; then
- einfo "Disabling ipc..."
- sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
- -i lib/_emerge/AbstractEbuildProcess.py || \
- die "failed to patch AbstractEbuildProcess.py"
- fi
-
- if use xattr && use kernel_linux ; then
- einfo "Adding FEATURES=xattr to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
-
- if use build || ! use rsync-verify; then
- sed -e '/^sync-rsync-verify-metamanifest/s|yes|no|' \
- -e '/^sync-webrsync-verify-signature/s|yes|no|' \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- if [[ -n ${EPREFIX} ]] ; then
- einfo "Setting portage.const.EPREFIX ..."
- hprefixify -e "s|^(EPREFIX[[:space:]]*=[[:space:]]*\").*|\1${EPREFIX}\"|" \
- -w "/_BINARY/" lib/portage/const.py
-
- einfo "Prefixing shebangs ..."
- while read -r -d $'\0' ; do
- local shebang=$(head -n1 "$REPLY")
- if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
- sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
- die "sed failed"
- fi
- done < <(find . -type f ! -name etc-update -print0)
-
- einfo "Adjusting make.globals, repos.conf and etc-update ..."
- hprefixify cnf/{make.globals,repos.conf} bin/etc-update
-
- if use prefix-guest ; then
- sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
- -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
- -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- einfo "Adding FEATURES=force-prefix to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
-
- cd "${S}/cnf" || die
- if [ -f "make.conf.example.${ARCH}".diff ]; then
- patch make.conf.example "make.conf.example.${ARCH}".diff || \
- die "Failed to patch make.conf.example"
- else
- eerror ""
- eerror "Portage does not have an arch-specific configuration for this arch."
- eerror "Please notify the arch maintainer about this issue. Using generic."
- eerror ""
- fi
-}
-
-python_compile_all() {
- local targets=()
- use doc && targets+=( docbook )
- use apidoc && targets+=( apidoc )
-
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
-}
-
-python_test() {
- esetup.py test
-}
-
-python_install() {
- # Install sbin scripts to bindir for python-exec linking
- # they will be relocated in pkg_preinst()
- distutils-r1_python_install \
- --system-prefix="${EPREFIX}/usr" \
- --bindir="$(python_get_scriptdir)" \
- --docdir="${EPREFIX}/usr/share/doc/${PF}" \
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
- --sbindir="$(python_get_scriptdir)" \
- --sysconfdir="${EPREFIX}/etc" \
- "${@}"
-}
-
-python_install_all() {
- distutils-r1_python_install_all
-
- local targets=()
- use doc && targets+=(
- install_docbook
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
- use apidoc && targets+=(
- install_apidoc
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
-
- # install docs
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
-
- dotmpfiles "${FILESDIR}"/portage-ccache.conf
-
- # Due to distutils/python-exec limitations
- # these must be installed to /usr/bin.
- local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
- einfo "Moving admin scripts to the correct directory"
- dodir /usr/sbin
- for target in ${sbin_relocations}; do
- einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
- mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
- done
-}
-
-pkg_preinst() {
- python_setup
- local sitedir=$(python_get_sitedir)
- [[ -d ${D%/}${sitedir} ]] || die "${D%/}${sitedir}: No such directory"
- env -u DISTDIR \
- -u PORTAGE_OVERRIDE_EPREFIX \
- -u PORTAGE_REPOSITORIES \
- -u PORTDIR \
- -u PORTDIR_OVERLAY \
- PYTHONPATH="${D%/}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.default_locations || die
-
- # elog dir must exist to avoid logrotate error for bug #415911.
- # This code runs in preinst in order to bypass the mapping of
- # portage:portage to root:root which happens after src_install.
- keepdir /var/log/portage/elog
- # This is allowed to fail if the user/group are invalid for prefix users.
- if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
- chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
- fi
-
- if has_version "<${CATEGORY}/${PN}-2.3.77"; then
- elog "The emerge --autounmask option is now disabled by default, except for"
- elog "portions of behavior which are controlled by the --autounmask-use and"
- elog "--autounmask-license options. For backward compatibility, previous"
- elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
- elog "Users can get the old behavior simply by adding --autounmask to the"
- elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
- elog "change, see https://bugs.gentoo.org/658648."
- fi
-}
diff --git a/sys-apps/portage/portage-3.0.4-r1.ebuild b/sys-apps/portage/portage-3.0.4-r1.ebuild
deleted file mode 100644
index c57a8412713c..000000000000
--- a/sys-apps/portage/portage-3.0.4-r1.ebuild
+++ /dev/null
@@ -1,270 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( pypy3 python3_{6..9} )
-PYTHON_REQ_USE='bzip2(+),threads(+)'
-
-inherit distutils-r1 linux-info tmpfiles prefix
-
-DESCRIPTION="Portage is the package management and distribution system for Gentoo"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
-
-LICENSE="GPL-2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-SLOT="0"
-IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
-RESTRICT="!test? ( test )"
-
-BDEPEND="test? ( dev-vcs/git )"
-DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
- >=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/sed-4.0.5 sys-devel/patch
- doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
- apidoc? (
- dev-python/sphinx
- dev-python/sphinx-epytext
- )"
-# Require sandbox-2.2 for bug #288863.
-# For whirlpool hash, require python[ssl] (bug #425046).
-# For compgen, require bash[readline] (bug #445576).
-# app-portage/gemato goes without PYTHON_USEDEP since we're calling
-# the executable.
-RDEPEND="
- app-arch/zstd
- >=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/findutils-4.4
- !build? (
- >=sys-apps/sed-4.0.5
- app-shells/bash:0[readline]
- >=app-admin/eselect-1.2
- rsync-verify? (
- >=app-portage/gemato-14.4-r1[${PYTHON_USEDEP}]
- >=app-crypt/openpgp-keys-gentoo-release-20180706
- >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
- )
- )
- elibc_glibc? ( >=sys-apps/sandbox-2.2 )
- elibc_musl? ( >=sys-apps/sandbox-2.2 )
- elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
- kernel_linux? ( sys-apps/util-linux )
- >=app-misc/pax-utils-0.1.17
- selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
- xattr? ( kernel_linux? (
- >=sys-apps/install-xattr-0.3
- ) )
- !<app-admin/logrotate-3.8.0
- !<app-portage/gentoolkit-0.4.6
- !<app-portage/repoman-2.3.10
- !~app-portage/repoman-3.0.0"
-PDEPEND="
- !build? (
- >=net-misc/rsync-2.6.4
- userland_GNU? ( >=sys-apps/coreutils-6.4 )
- )"
-# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
-# NOTE: FEATURES=installsources requires debugedit and rsync
-
-SRC_ARCHIVES="https://dev.gentoo.org/~zmedico/portage/archives"
-
-prefix_src_archives() {
- local x y
- for x in ${@}; do
- for y in ${SRC_ARCHIVES}; do
- echo ${y}/${x}
- done
- done
-}
-
-TARBALL_PV=${PV}
-SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
- $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
-
-pkg_pretend() {
- local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
-
- check_extra_config
-}
-
-python_prepare_all() {
- distutils-r1_python_prepare_all
-
- # Apply b0ed587308eb3cbfafe9abcb1c59f24f48b97cdc for bug 738766.
- sed "/scheduler.wait()/d" -i lib/portage/util/futures/iter_completed.py || die
-
- sed -e "s:^VERSION = \"HEAD\"$:VERSION = \"${PV}\":" -i lib/portage/__init__.py || die
-
- if use gentoo-dev; then
- einfo "Disabling --dynamic-deps by default for gentoo-dev..."
- sed -e 's:\("--dynamic-deps", \)\("y"\):\1"n":' \
- -i lib/_emerge/create_depgraph_params.py || \
- die "failed to patch create_depgraph_params.py"
-
- einfo "Enabling additional FEATURES for gentoo-dev..."
- echo 'FEATURES="${FEATURES} strict-keepdir"' \
- >> cnf/make.globals || die
- fi
-
- if use native-extensions; then
- printf "[build_ext]\nportage-ext-modules=true\n" >> \
- setup.cfg || die
- fi
-
- if ! use ipc ; then
- einfo "Disabling ipc..."
- sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
- -i lib/_emerge/AbstractEbuildProcess.py || \
- die "failed to patch AbstractEbuildProcess.py"
- fi
-
- if use xattr && use kernel_linux ; then
- einfo "Adding FEATURES=xattr to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
-
- if use build || ! use rsync-verify; then
- sed -e '/^sync-rsync-verify-metamanifest/s|yes|no|' \
- -e '/^sync-webrsync-verify-signature/s|yes|no|' \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- if [[ -n ${EPREFIX} ]] ; then
- einfo "Setting portage.const.EPREFIX ..."
- hprefixify -e "s|^(EPREFIX[[:space:]]*=[[:space:]]*\").*|\1${EPREFIX}\"|" \
- -w "/_BINARY/" lib/portage/const.py
-
- einfo "Prefixing shebangs ..."
- while read -r -d $'\0' ; do
- local shebang=$(head -n1 "$REPLY")
- if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
- sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
- die "sed failed"
- fi
- done < <(find . -type f ! -name etc-update -print0)
-
- einfo "Adjusting make.globals, repos.conf and etc-update ..."
- hprefixify cnf/{make.globals,repos.conf} bin/etc-update
-
- if use prefix-guest ; then
- sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
- -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
- -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- einfo "Adding FEATURES=force-prefix to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
-
- cd "${S}/cnf" || die
- if [ -f "make.conf.example.${ARCH}".diff ]; then
- patch make.conf.example "make.conf.example.${ARCH}".diff || \
- die "Failed to patch make.conf.example"
- else
- eerror ""
- eerror "Portage does not have an arch-specific configuration for this arch."
- eerror "Please notify the arch maintainer about this issue. Using generic."
- eerror ""
- fi
-}
-
-python_compile_all() {
- local targets=()
- use doc && targets+=( docbook )
- use apidoc && targets+=( apidoc )
-
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
-}
-
-python_test() {
- esetup.py test
-}
-
-python_install() {
- # Install sbin scripts to bindir for python-exec linking
- # they will be relocated in pkg_preinst()
- distutils-r1_python_install \
- --system-prefix="${EPREFIX}/usr" \
- --bindir="$(python_get_scriptdir)" \
- --docdir="${EPREFIX}/usr/share/doc/${PF}" \
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
- --sbindir="$(python_get_scriptdir)" \
- --sysconfdir="${EPREFIX}/etc" \
- "${@}"
-}
-
-python_install_all() {
- distutils-r1_python_install_all
-
- local targets=()
- use doc && targets+=(
- install_docbook
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
- use apidoc && targets+=(
- install_apidoc
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
-
- # install docs
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
-
- dotmpfiles "${FILESDIR}"/portage-ccache.conf
-
- # Due to distutils/python-exec limitations
- # these must be installed to /usr/bin.
- local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
- einfo "Moving admin scripts to the correct directory"
- dodir /usr/sbin
- for target in ${sbin_relocations}; do
- einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
- mv "${ED}/usr/bin/${target}" "${ED}/usr/sbin/${target}" || die "sbin scripts move failed!"
- done
-}
-
-pkg_preinst() {
- python_setup
- local sitedir=$(python_get_sitedir)
- [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
- env -u DISTDIR \
- -u PORTAGE_OVERRIDE_EPREFIX \
- -u PORTAGE_REPOSITORIES \
- -u PORTDIR \
- -u PORTDIR_OVERLAY \
- PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.default_locations || die
-
- env -u BINPKG_COMPRESS \
- PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
-
- # elog dir must exist to avoid logrotate error for bug #415911.
- # This code runs in preinst in order to bypass the mapping of
- # portage:portage to root:root which happens after src_install.
- keepdir /var/log/portage/elog
- # This is allowed to fail if the user/group are invalid for prefix users.
- if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
- chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
- fi
-
- if has_version "<${CATEGORY}/${PN}-2.3.77"; then
- elog "The emerge --autounmask option is now disabled by default, except for"
- elog "portions of behavior which are controlled by the --autounmask-use and"
- elog "--autounmask-license options. For backward compatibility, previous"
- elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
- elog "Users can get the old behavior simply by adding --autounmask to the"
- elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
- elog "change, see https://bugs.gentoo.org/658648."
- fi
-}
diff --git a/sys-apps/portage/portage-3.0.59-r1.ebuild b/sys-apps/portage/portage-3.0.59-r1.ebuild
new file mode 100644
index 000000000000..6eb73a76c985
--- /dev/null
+++ b/sys-apps/portage/portage-3.0.59-r1.ebuild
@@ -0,0 +1,246 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_REQ_USE='bzip2(+),threads(+)'
+TMPFILES_OPTIONAL=1
+
+inherit meson linux-info multiprocessing python-r1 tmpfiles
+
+DESCRIPTION="The package management and distribution system for Gentoo"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="
+ https://anongit.gentoo.org/git/proj/portage.git
+ https://github.com/gentoo/portage.git
+ "
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+# setuptools is still needed as a workaround for Python 3.12+ for now.
+# https://github.com/mesonbuild/meson/issues/7702
+#
+# >=meson-1.2.1-r1 for bug #912051
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/meson-1.2.1-r1
+ || (
+ >=dev-build/meson-1.3.0-r1
+ <dev-build/meson-1.3.0
+ )
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' python3_12)
+ test? (
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+DEPEND="
+ ${PYTHON_DEPS}
+ >=app-arch/tar-1.27
+ dev-lang/python-exec:2
+ >=sys-apps/sed-4.0.5
+ sys-devel/patch
+ !build? ( $(python_gen_impl_dep 'ssl(+)') )
+ apidoc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-epytext[${PYTHON_USEDEP}]
+ )
+ doc? (
+ ~app-text/docbook-xml-dtd-4.4
+ app-text/xmlto
+ )
+"
+# Require sandbox-2.2 for bug #288863.
+# For whirlpool hash, require python[ssl] (bug #425046).
+RDEPEND="
+ ${PYTHON_DEPS}
+ acct-user/portage
+ >=app-arch/tar-1.27
+ app-arch/zstd
+ >=app-misc/pax-utils-0.1.17
+ dev-lang/python-exec:2
+ >=sys-apps/baselayout-2.9
+ >=sys-apps/findutils-4.9
+ !build? (
+ >=app-admin/eselect-1.2
+ app-portage/getuto
+ >=app-shells/bash-5.0:0
+ >=sec-keys/openpgp-keys-gentoo-release-20230329
+ >=sys-apps/sed-4.0.5
+ rsync-verify? (
+ >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
+ >=app-portage/gemato-14.5[${PYTHON_USEDEP}]
+ )
+ )
+ elibc_glibc? ( >=sys-apps/sandbox-2.2 )
+ elibc_musl? ( >=sys-apps/sandbox-2.2 )
+ kernel_linux? ( sys-apps/util-linux )
+ selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
+ xattr? ( kernel_linux? (
+ >=sys-apps/install-xattr-0.3
+ ) )
+ !<app-admin/logrotate-3.8.0
+ !<app-portage/gentoolkit-0.4.6
+ !<app-portage/repoman-2.3.10
+ !~app-portage/repoman-3.0.0
+"
+# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
+# NOTE: FEATURES=installsources requires debugedit and rsync
+PDEPEND="
+ !build? (
+ >=net-misc/rsync-2.6.4
+ >=sys-apps/coreutils-6.4
+ >=sys-apps/file-5.44-r3
+ )
+"
+
+pkg_pretend() {
+ local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
+
+ check_extra_config
+}
+
+src_prepare() {
+ default
+
+ if use prefix-guest; then
+ sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
+ -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
+ -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
+ -i cnf/repos.conf || die "sed failed"
+ fi
+}
+
+src_configure() {
+ local code_only=false
+ python_foreach_impl my_src_configure
+}
+
+my_src_configure() {
+ local emesonargs=(
+ -Dcode-only=${code_only}
+ -Deprefix="${EPREFIX}"
+ -Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}"
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+ $(meson_use doc)
+ $(meson_use apidoc)
+ $(meson_use gentoo-dev)
+ $(meson_use ipc)
+ $(meson_use xattr)
+ )
+
+ if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
+ emesonargs+=( -Dnative-extensions=true )
+ else
+ emesonargs+=( -Dnative-extensions=false )
+ fi
+
+ if use build; then
+ emesonargs+=( -Drsync-verify=false )
+ else
+ emesonargs+=( $(meson_use rsync-verify) )
+ fi
+
+ meson_src_configure
+ code_only=true
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
+
+src_test() {
+ local -x PYTEST_ADDOPTS="-vv -ra -l -o console_output_style=count -n $(makeopts_jobs) --dist=worksteal"
+
+ python_foreach_impl meson_src_test --no-rebuild --verbose
+}
+
+src_install() {
+ python_foreach_impl my_src_install
+ dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf
+
+ local scripts
+ mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die)
+ python_replicate_script "${scripts[@]}"
+}
+
+my_src_install() {
+ local pydirs=(
+ "${D}$(python_get_sitedir)"
+ "${ED}/usr/lib/portage/${EPYTHON}"
+ )
+
+ meson_src_install
+ python_fix_shebang "${pydirs[@]}"
+ python_optimize "${pydirs[@]}"
+}
+
+pkg_preinst() {
+ if ! use build && [[ -z ${ROOT} ]]; then
+ python_setup
+ local sitedir=$(python_get_sitedir)
+ [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
+ env -u DISTDIR \
+ -u PORTAGE_OVERRIDE_EPREFIX \
+ -u PORTAGE_REPOSITORIES \
+ -u PORTDIR \
+ -u PORTDIR_OVERLAY \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.default_locations || die
+
+ env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
+
+ env -u FEATURES -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die
+
+ env -u BINPKG_FORMAT \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_format || die
+ fi
+
+ # elog dir must exist to avoid logrotate error for bug #415911.
+ # This code runs in preinst in order to bypass the mapping of
+ # portage:portage to root:root which happens after src_install.
+ keepdir /var/log/portage/elog
+ # This is allowed to fail if the user/group are invalid for prefix users.
+ if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
+ chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
+ fi
+
+ if has_version "<${CATEGORY}/${PN}-2.3.77"; then
+ elog "The emerge --autounmask option is now disabled by default, except for"
+ elog "portions of behavior which are controlled by the --autounmask-use and"
+ elog "--autounmask-license options. For backward compatibility, previous"
+ elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
+ elog "Users can get the old behavior simply by adding --autounmask to the"
+ elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
+ elog "change, see https://bugs.gentoo.org/658648."
+ fi
+}
+
+pkg_postinst() {
+ # Warn about obsolete "enotice" script, bug #867010
+ local bashrc=${EROOT}/etc/portage/profile/profile.bashrc
+ if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then
+ eerror "Obsolete 'enotice' script detected!"
+ eerror "Please remove this from ${bashrc} to avoid problems."
+ eerror "See bug 867010 for more details."
+ fi
+}
diff --git a/sys-apps/portage/portage-3.0.61-r1.ebuild b/sys-apps/portage/portage-3.0.61-r1.ebuild
new file mode 100644
index 000000000000..6eb73a76c985
--- /dev/null
+++ b/sys-apps/portage/portage-3.0.61-r1.ebuild
@@ -0,0 +1,246 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_REQ_USE='bzip2(+),threads(+)'
+TMPFILES_OPTIONAL=1
+
+inherit meson linux-info multiprocessing python-r1 tmpfiles
+
+DESCRIPTION="The package management and distribution system for Gentoo"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="
+ https://anongit.gentoo.org/git/proj/portage.git
+ https://github.com/gentoo/portage.git
+ "
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+# setuptools is still needed as a workaround for Python 3.12+ for now.
+# https://github.com/mesonbuild/meson/issues/7702
+#
+# >=meson-1.2.1-r1 for bug #912051
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/meson-1.2.1-r1
+ || (
+ >=dev-build/meson-1.3.0-r1
+ <dev-build/meson-1.3.0
+ )
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' python3_12)
+ test? (
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+DEPEND="
+ ${PYTHON_DEPS}
+ >=app-arch/tar-1.27
+ dev-lang/python-exec:2
+ >=sys-apps/sed-4.0.5
+ sys-devel/patch
+ !build? ( $(python_gen_impl_dep 'ssl(+)') )
+ apidoc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-epytext[${PYTHON_USEDEP}]
+ )
+ doc? (
+ ~app-text/docbook-xml-dtd-4.4
+ app-text/xmlto
+ )
+"
+# Require sandbox-2.2 for bug #288863.
+# For whirlpool hash, require python[ssl] (bug #425046).
+RDEPEND="
+ ${PYTHON_DEPS}
+ acct-user/portage
+ >=app-arch/tar-1.27
+ app-arch/zstd
+ >=app-misc/pax-utils-0.1.17
+ dev-lang/python-exec:2
+ >=sys-apps/baselayout-2.9
+ >=sys-apps/findutils-4.9
+ !build? (
+ >=app-admin/eselect-1.2
+ app-portage/getuto
+ >=app-shells/bash-5.0:0
+ >=sec-keys/openpgp-keys-gentoo-release-20230329
+ >=sys-apps/sed-4.0.5
+ rsync-verify? (
+ >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
+ >=app-portage/gemato-14.5[${PYTHON_USEDEP}]
+ )
+ )
+ elibc_glibc? ( >=sys-apps/sandbox-2.2 )
+ elibc_musl? ( >=sys-apps/sandbox-2.2 )
+ kernel_linux? ( sys-apps/util-linux )
+ selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
+ xattr? ( kernel_linux? (
+ >=sys-apps/install-xattr-0.3
+ ) )
+ !<app-admin/logrotate-3.8.0
+ !<app-portage/gentoolkit-0.4.6
+ !<app-portage/repoman-2.3.10
+ !~app-portage/repoman-3.0.0
+"
+# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
+# NOTE: FEATURES=installsources requires debugedit and rsync
+PDEPEND="
+ !build? (
+ >=net-misc/rsync-2.6.4
+ >=sys-apps/coreutils-6.4
+ >=sys-apps/file-5.44-r3
+ )
+"
+
+pkg_pretend() {
+ local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
+
+ check_extra_config
+}
+
+src_prepare() {
+ default
+
+ if use prefix-guest; then
+ sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
+ -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
+ -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
+ -i cnf/repos.conf || die "sed failed"
+ fi
+}
+
+src_configure() {
+ local code_only=false
+ python_foreach_impl my_src_configure
+}
+
+my_src_configure() {
+ local emesonargs=(
+ -Dcode-only=${code_only}
+ -Deprefix="${EPREFIX}"
+ -Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}"
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+ $(meson_use doc)
+ $(meson_use apidoc)
+ $(meson_use gentoo-dev)
+ $(meson_use ipc)
+ $(meson_use xattr)
+ )
+
+ if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
+ emesonargs+=( -Dnative-extensions=true )
+ else
+ emesonargs+=( -Dnative-extensions=false )
+ fi
+
+ if use build; then
+ emesonargs+=( -Drsync-verify=false )
+ else
+ emesonargs+=( $(meson_use rsync-verify) )
+ fi
+
+ meson_src_configure
+ code_only=true
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
+
+src_test() {
+ local -x PYTEST_ADDOPTS="-vv -ra -l -o console_output_style=count -n $(makeopts_jobs) --dist=worksteal"
+
+ python_foreach_impl meson_src_test --no-rebuild --verbose
+}
+
+src_install() {
+ python_foreach_impl my_src_install
+ dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf
+
+ local scripts
+ mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die)
+ python_replicate_script "${scripts[@]}"
+}
+
+my_src_install() {
+ local pydirs=(
+ "${D}$(python_get_sitedir)"
+ "${ED}/usr/lib/portage/${EPYTHON}"
+ )
+
+ meson_src_install
+ python_fix_shebang "${pydirs[@]}"
+ python_optimize "${pydirs[@]}"
+}
+
+pkg_preinst() {
+ if ! use build && [[ -z ${ROOT} ]]; then
+ python_setup
+ local sitedir=$(python_get_sitedir)
+ [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
+ env -u DISTDIR \
+ -u PORTAGE_OVERRIDE_EPREFIX \
+ -u PORTAGE_REPOSITORIES \
+ -u PORTDIR \
+ -u PORTDIR_OVERLAY \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.default_locations || die
+
+ env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
+
+ env -u FEATURES -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die
+
+ env -u BINPKG_FORMAT \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_format || die
+ fi
+
+ # elog dir must exist to avoid logrotate error for bug #415911.
+ # This code runs in preinst in order to bypass the mapping of
+ # portage:portage to root:root which happens after src_install.
+ keepdir /var/log/portage/elog
+ # This is allowed to fail if the user/group are invalid for prefix users.
+ if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
+ chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
+ fi
+
+ if has_version "<${CATEGORY}/${PN}-2.3.77"; then
+ elog "The emerge --autounmask option is now disabled by default, except for"
+ elog "portions of behavior which are controlled by the --autounmask-use and"
+ elog "--autounmask-license options. For backward compatibility, previous"
+ elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
+ elog "Users can get the old behavior simply by adding --autounmask to the"
+ elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
+ elog "change, see https://bugs.gentoo.org/658648."
+ fi
+}
+
+pkg_postinst() {
+ # Warn about obsolete "enotice" script, bug #867010
+ local bashrc=${EROOT}/etc/portage/profile/profile.bashrc
+ if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then
+ eerror "Obsolete 'enotice' script detected!"
+ eerror "Please remove this from ${bashrc} to avoid problems."
+ eerror "See bug 867010 for more details."
+ fi
+}
diff --git a/sys-apps/portage/portage-3.0.63.ebuild b/sys-apps/portage/portage-3.0.63.ebuild
new file mode 100644
index 000000000000..834b9af7a549
--- /dev/null
+++ b/sys-apps/portage/portage-3.0.63.ebuild
@@ -0,0 +1,246 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_REQ_USE='bzip2(+),threads(+)'
+TMPFILES_OPTIONAL=1
+
+inherit meson linux-info multiprocessing python-r1 tmpfiles
+
+DESCRIPTION="The package management and distribution system for Gentoo"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="
+ https://anongit.gentoo.org/git/proj/portage.git
+ https://github.com/gentoo/portage.git
+ "
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+# setuptools is still needed as a workaround for Python 3.12+ for now.
+# https://github.com/mesonbuild/meson/issues/7702
+#
+# >=meson-1.2.1-r1 for bug #912051
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/meson-1.2.1-r1
+ || (
+ >=dev-build/meson-1.3.0-r1
+ <dev-build/meson-1.3.0
+ )
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' python3_12)
+ test? (
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+DEPEND="
+ ${PYTHON_DEPS}
+ >=app-arch/tar-1.27
+ dev-lang/python-exec:2
+ >=sys-apps/sed-4.0.5
+ sys-devel/patch
+ !build? ( $(python_gen_impl_dep 'ssl(+)') )
+ apidoc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-epytext[${PYTHON_USEDEP}]
+ )
+ doc? (
+ ~app-text/docbook-xml-dtd-4.4
+ app-text/xmlto
+ )
+"
+# Require sandbox-2.2 for bug #288863.
+# For whirlpool hash, require python[ssl] (bug #425046).
+RDEPEND="
+ ${PYTHON_DEPS}
+ acct-user/portage
+ >=app-arch/tar-1.27
+ app-arch/zstd
+ >=app-misc/pax-utils-0.1.17
+ dev-lang/python-exec:2
+ >=sys-apps/baselayout-2.9
+ >=sys-apps/findutils-4.9
+ !build? (
+ >=app-admin/eselect-1.2
+ app-portage/getuto
+ >=app-shells/bash-5.0:0
+ >=sec-keys/openpgp-keys-gentoo-release-20230329
+ >=sys-apps/sed-4.0.5
+ rsync-verify? (
+ >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
+ >=app-portage/gemato-14.5[${PYTHON_USEDEP}]
+ )
+ )
+ elibc_glibc? ( >=sys-apps/sandbox-2.2 )
+ elibc_musl? ( >=sys-apps/sandbox-2.2 )
+ kernel_linux? ( sys-apps/util-linux )
+ selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
+ xattr? ( kernel_linux? (
+ >=sys-apps/install-xattr-0.3
+ ) )
+ !<app-admin/logrotate-3.8.0
+ !<app-portage/gentoolkit-0.4.6
+ !<app-portage/repoman-2.3.10
+ !~app-portage/repoman-3.0.0
+"
+# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
+# NOTE: FEATURES=installsources requires debugedit and rsync
+PDEPEND="
+ !build? (
+ >=net-misc/rsync-2.6.4
+ >=sys-apps/coreutils-6.4
+ >=sys-apps/file-5.44-r3
+ )
+"
+
+pkg_pretend() {
+ local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
+
+ check_extra_config
+}
+
+src_prepare() {
+ default
+
+ if use prefix-guest; then
+ sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
+ -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
+ -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
+ -i cnf/repos.conf || die "sed failed"
+ fi
+}
+
+src_configure() {
+ local code_only=false
+ python_foreach_impl my_src_configure
+}
+
+my_src_configure() {
+ local emesonargs=(
+ -Dcode-only=${code_only}
+ -Deprefix="${EPREFIX}"
+ -Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}"
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+ $(meson_use doc)
+ $(meson_use apidoc)
+ $(meson_use gentoo-dev)
+ $(meson_use ipc)
+ $(meson_use xattr)
+ )
+
+ if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
+ emesonargs+=( -Dnative-extensions=true )
+ else
+ emesonargs+=( -Dnative-extensions=false )
+ fi
+
+ if use build; then
+ emesonargs+=( -Drsync-verify=false )
+ else
+ emesonargs+=( $(meson_use rsync-verify) )
+ fi
+
+ meson_src_configure
+ code_only=true
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
+
+src_test() {
+ local -x PYTEST_ADDOPTS="-vv -ra -l -o console_output_style=count -n $(makeopts_jobs) --dist=worksteal"
+
+ python_foreach_impl meson_src_test --no-rebuild --verbose
+}
+
+src_install() {
+ python_foreach_impl my_src_install
+ dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf
+
+ local scripts
+ mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die)
+ python_replicate_script "${scripts[@]}"
+}
+
+my_src_install() {
+ local pydirs=(
+ "${D}$(python_get_sitedir)"
+ "${ED}/usr/lib/portage/${EPYTHON}"
+ )
+
+ meson_src_install
+ python_fix_shebang "${pydirs[@]}"
+ python_optimize "${pydirs[@]}"
+}
+
+pkg_preinst() {
+ if ! use build && [[ -z ${ROOT} ]]; then
+ python_setup
+ local sitedir=$(python_get_sitedir)
+ [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
+ env -u DISTDIR \
+ -u PORTAGE_OVERRIDE_EPREFIX \
+ -u PORTAGE_REPOSITORIES \
+ -u PORTDIR \
+ -u PORTDIR_OVERLAY \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.default_locations || die
+
+ env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
+
+ env -u FEATURES -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die
+
+ env -u BINPKG_FORMAT \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_format || die
+ fi
+
+ # elog dir must exist to avoid logrotate error for bug #415911.
+ # This code runs in preinst in order to bypass the mapping of
+ # portage:portage to root:root which happens after src_install.
+ keepdir /var/log/portage/elog
+ # This is allowed to fail if the user/group are invalid for prefix users.
+ if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
+ chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
+ fi
+
+ if has_version "<${CATEGORY}/${PN}-2.3.77"; then
+ elog "The emerge --autounmask option is now disabled by default, except for"
+ elog "portions of behavior which are controlled by the --autounmask-use and"
+ elog "--autounmask-license options. For backward compatibility, previous"
+ elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
+ elog "Users can get the old behavior simply by adding --autounmask to the"
+ elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
+ elog "change, see https://bugs.gentoo.org/658648."
+ fi
+}
+
+pkg_postinst() {
+ # Warn about obsolete "enotice" script, bug #867010
+ local bashrc=${EROOT}/etc/portage/profile/profile.bashrc
+ if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then
+ eerror "Obsolete 'enotice' script detected!"
+ eerror "Please remove this from ${bashrc} to avoid problems."
+ eerror "See bug 867010 for more details."
+ fi
+}
diff --git a/sys-apps/portage/portage-3.0.8.ebuild b/sys-apps/portage/portage-3.0.8.ebuild
deleted file mode 100644
index 240471a5a151..000000000000
--- a/sys-apps/portage/portage-3.0.8.ebuild
+++ /dev/null
@@ -1,267 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( pypy3 python3_{6..9} )
-PYTHON_REQ_USE='bzip2(+),threads(+)'
-
-inherit distutils-r1 linux-info tmpfiles prefix
-
-DESCRIPTION="Portage is the package management and distribution system for Gentoo"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
-
-LICENSE="GPL-2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
-SLOT="0"
-IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
-RESTRICT="!test? ( test )"
-
-BDEPEND="test? ( dev-vcs/git )"
-DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
- >=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/sed-4.0.5 sys-devel/patch
- doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
- apidoc? (
- dev-python/sphinx
- dev-python/sphinx-epytext
- )"
-# Require sandbox-2.2 for bug #288863.
-# For whirlpool hash, require python[ssl] (bug #425046).
-# For compgen, require bash[readline] (bug #445576).
-# app-portage/gemato goes without PYTHON_USEDEP since we're calling
-# the executable.
-RDEPEND="
- app-arch/zstd
- >=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/findutils-4.4
- !build? (
- >=sys-apps/sed-4.0.5
- app-shells/bash:0[readline]
- >=app-admin/eselect-1.2
- rsync-verify? (
- >=app-portage/gemato-14.5[${PYTHON_USEDEP}]
- >=app-crypt/openpgp-keys-gentoo-release-20180706
- >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
- )
- )
- elibc_glibc? ( >=sys-apps/sandbox-2.2 )
- elibc_musl? ( >=sys-apps/sandbox-2.2 )
- elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
- kernel_linux? ( sys-apps/util-linux )
- >=app-misc/pax-utils-0.1.17
- selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
- xattr? ( kernel_linux? (
- >=sys-apps/install-xattr-0.3
- ) )
- !<app-admin/logrotate-3.8.0
- !<app-portage/gentoolkit-0.4.6
- !<app-portage/repoman-2.3.10
- !~app-portage/repoman-3.0.0"
-PDEPEND="
- !build? (
- >=net-misc/rsync-2.6.4
- userland_GNU? ( >=sys-apps/coreutils-6.4 )
- )"
-# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
-# NOTE: FEATURES=installsources requires debugedit and rsync
-
-SRC_ARCHIVES="https://dev.gentoo.org/~zmedico/portage/archives"
-
-prefix_src_archives() {
- local x y
- for x in ${@}; do
- for y in ${SRC_ARCHIVES}; do
- echo ${y}/${x}
- done
- done
-}
-
-TARBALL_PV=${PV}
-SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
- $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
-
-pkg_pretend() {
- local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
-
- check_extra_config
-}
-
-python_prepare_all() {
- distutils-r1_python_prepare_all
-
- sed -e "s:^VERSION = \"HEAD\"$:VERSION = \"${PV}\":" -i lib/portage/__init__.py || die
-
- if use gentoo-dev; then
- einfo "Disabling --dynamic-deps by default for gentoo-dev..."
- sed -e 's:\("--dynamic-deps", \)\("y"\):\1"n":' \
- -i lib/_emerge/create_depgraph_params.py || \
- die "failed to patch create_depgraph_params.py"
-
- einfo "Enabling additional FEATURES for gentoo-dev..."
- echo 'FEATURES="${FEATURES} strict-keepdir"' \
- >> cnf/make.globals || die
- fi
-
- if use native-extensions; then
- printf "[build_ext]\nportage-ext-modules=true\n" >> \
- setup.cfg || die
- fi
-
- if ! use ipc ; then
- einfo "Disabling ipc..."
- sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
- -i lib/_emerge/AbstractEbuildProcess.py || \
- die "failed to patch AbstractEbuildProcess.py"
- fi
-
- if use xattr && use kernel_linux ; then
- einfo "Adding FEATURES=xattr to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
-
- if use build || ! use rsync-verify; then
- sed -e '/^sync-rsync-verify-metamanifest/s|yes|no|' \
- -e '/^sync-webrsync-verify-signature/s|yes|no|' \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- if [[ -n ${EPREFIX} ]] ; then
- einfo "Setting portage.const.EPREFIX ..."
- hprefixify -e "s|^(EPREFIX[[:space:]]*=[[:space:]]*\").*|\1${EPREFIX}\"|" \
- -w "/_BINARY/" lib/portage/const.py
-
- einfo "Prefixing shebangs ..."
- while read -r -d $'\0' ; do
- local shebang=$(head -n1 "$REPLY")
- if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
- sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
- die "sed failed"
- fi
- done < <(find . -type f ! -name etc-update -print0)
-
- einfo "Adjusting make.globals, repos.conf and etc-update ..."
- hprefixify cnf/{make.globals,repos.conf} bin/etc-update
-
- if use prefix-guest ; then
- sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
- -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
- -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- einfo "Adding FEATURES=force-prefix to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
-
- cd "${S}/cnf" || die
- if [ -f "make.conf.example.${ARCH}".diff ]; then
- patch make.conf.example "make.conf.example.${ARCH}".diff || \
- die "Failed to patch make.conf.example"
- else
- eerror ""
- eerror "Portage does not have an arch-specific configuration for this arch."
- eerror "Please notify the arch maintainer about this issue. Using generic."
- eerror ""
- fi
-}
-
-python_compile_all() {
- local targets=()
- use doc && targets+=( docbook )
- use apidoc && targets+=( apidoc )
-
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
-}
-
-python_test() {
- esetup.py test
-}
-
-python_install() {
- # Install sbin scripts to bindir for python-exec linking
- # they will be relocated in pkg_preinst()
- distutils-r1_python_install \
- --system-prefix="${EPREFIX}/usr" \
- --bindir="$(python_get_scriptdir)" \
- --docdir="${EPREFIX}/usr/share/doc/${PF}" \
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
- --sbindir="$(python_get_scriptdir)" \
- --sysconfdir="${EPREFIX}/etc" \
- "${@}"
-}
-
-python_install_all() {
- distutils-r1_python_install_all
-
- local targets=()
- use doc && targets+=(
- install_docbook
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
- use apidoc && targets+=(
- install_apidoc
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
-
- # install docs
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
-
- dotmpfiles "${FILESDIR}"/portage-ccache.conf
-
- # Due to distutils/python-exec limitations
- # these must be installed to /usr/bin.
- local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
- einfo "Moving admin scripts to the correct directory"
- dodir /usr/sbin
- for target in ${sbin_relocations}; do
- einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
- mv "${ED}/usr/bin/${target}" "${ED}/usr/sbin/${target}" || die "sbin scripts move failed!"
- done
-}
-
-pkg_preinst() {
- python_setup
- local sitedir=$(python_get_sitedir)
- [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
- env -u DISTDIR \
- -u PORTAGE_OVERRIDE_EPREFIX \
- -u PORTAGE_REPOSITORIES \
- -u PORTDIR \
- -u PORTDIR_OVERLAY \
- PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.default_locations || die
-
- env -u BINPKG_COMPRESS \
- PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
-
- # elog dir must exist to avoid logrotate error for bug #415911.
- # This code runs in preinst in order to bypass the mapping of
- # portage:portage to root:root which happens after src_install.
- keepdir /var/log/portage/elog
- # This is allowed to fail if the user/group are invalid for prefix users.
- if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
- chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
- fi
-
- if has_version "<${CATEGORY}/${PN}-2.3.77"; then
- elog "The emerge --autounmask option is now disabled by default, except for"
- elog "portions of behavior which are controlled by the --autounmask-use and"
- elog "--autounmask-license options. For backward compatibility, previous"
- elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
- elog "Users can get the old behavior simply by adding --autounmask to the"
- elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
- elog "change, see https://bugs.gentoo.org/658648."
- fi
-}
diff --git a/sys-apps/portage/portage-9999.ebuild b/sys-apps/portage/portage-9999.ebuild
index 3a8919c0bbf7..ea323e5a917c 100644
--- a/sys-apps/portage/portage-9999.ebuild
+++ b/sys-apps/portage/portage-9999.ebuild
@@ -1,82 +1,108 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( pypy3 python3_{6..9} )
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
PYTHON_REQ_USE='bzip2(+),threads(+)'
+TMPFILES_OPTIONAL=1
-inherit distutils-r1 git-r3 linux-info tmpfiles prefix
+inherit meson linux-info python-r1 tmpfiles
-DESCRIPTION="Portage is the package management and distribution system for Gentoo"
+DESCRIPTION="The package management and distribution system for Gentoo"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="
+ https://anongit.gentoo.org/git/proj/portage.git
+ https://github.com/gentoo/portage.git
+ "
+ inherit git-r3
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
LICENSE="GPL-2"
-KEYWORDS=""
SLOT="0"
IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="!test? ( test )"
-BDEPEND="test? ( dev-vcs/git )"
-DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
+# setuptools is still needed as a workaround for Python 3.12+ for now.
+# https://github.com/mesonbuild/meson/issues/7702
+#
+# >=meson-1.2.1-r1 for bug #912051
+BDEPEND="
+ ${PYTHON_DEPS}
>=app-arch/tar-1.27
- dev-lang/python-exec:2
- >=sys-apps/sed-4.0.5 sys-devel/patch
- doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
+ >=dev-build/meson-1.2.1-r1
+ || (
+ >=dev-build/meson-1.3.0-r1
+ <dev-build/meson-1.3.0
+ )
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' python3_12)
+ >=sys-apps/sed-4.0.5
+ sys-devel/patch
+ !build? ( $(python_gen_impl_dep 'ssl(+)') )
apidoc? (
- dev-python/sphinx
- dev-python/sphinx-epytext
- )"
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-epytext[${PYTHON_USEDEP}]
+ )
+ doc? (
+ ~app-text/docbook-xml-dtd-4.4
+ app-text/xmlto
+ )
+ test? (
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
# Require sandbox-2.2 for bug #288863.
# For whirlpool hash, require python[ssl] (bug #425046).
-# For compgen, require bash[readline] (bug #445576).
RDEPEND="
- app-arch/zstd
+ ${PYTHON_DEPS}
+ acct-user/portage
>=app-arch/tar-1.27
+ app-arch/zstd
+ >=app-misc/pax-utils-0.1.17
dev-lang/python-exec:2
- >=sys-apps/findutils-4.4
+ >=sys-apps/baselayout-2.9
+ >=sys-apps/findutils-4.9
!build? (
- >=sys-apps/sed-4.0.5
- app-shells/bash:0[readline]
>=app-admin/eselect-1.2
+ app-portage/getuto
+ >=app-shells/bash-5.0:0
+ >=sec-keys/openpgp-keys-gentoo-release-20230329
+ >=sys-apps/sed-4.0.5
rsync-verify? (
- >=app-portage/gemato-14.5[${PYTHON_USEDEP}]
- >=app-crypt/openpgp-keys-gentoo-release-20180706
>=app-crypt/gnupg-2.2.4-r2[ssl(-)]
+ >=app-portage/gemato-14.5[${PYTHON_USEDEP}]
)
)
elibc_glibc? ( >=sys-apps/sandbox-2.2 )
elibc_musl? ( >=sys-apps/sandbox-2.2 )
- elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
kernel_linux? ( sys-apps/util-linux )
- >=app-misc/pax-utils-0.1.17
selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
xattr? ( kernel_linux? (
>=sys-apps/install-xattr-0.3
) )
- !<app-admin/logrotate-3.8.0"
+ !<app-admin/logrotate-3.8.0
+ !<app-portage/gentoolkit-0.4.6
+ !<app-portage/repoman-2.3.10
+ !~app-portage/repoman-3.0.0
+"
+# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
+# NOTE: FEATURES=installsources requires debugedit and rsync
PDEPEND="
!build? (
>=net-misc/rsync-2.6.4
- userland_GNU? ( >=sys-apps/coreutils-6.4 )
- )"
-# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
-# NOTE: FEATURES=installsources requires debugedit and rsync
-
-SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage"
-
-prefix_src_archives() {
- local x y
- for x in ${@}; do
- for y in ${SRC_ARCHIVES}; do
- echo ${y}/${x}
- done
- done
-}
-
-EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/portage.git
- https://github.com/gentoo/portage.git"
+ >=sys-apps/coreutils-6.4
+ >=sys-apps/file-5.44-r3
+ )
+"
pkg_pretend() {
local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
@@ -84,158 +110,106 @@ pkg_pretend() {
check_extra_config
}
-python_prepare_all() {
- distutils-r1_python_prepare_all
-
- if use gentoo-dev; then
- einfo "Disabling --dynamic-deps by default for gentoo-dev..."
- sed -e 's:\("--dynamic-deps", \)\("y"\):\1"n":' \
- -i lib/_emerge/create_depgraph_params.py || \
- die "failed to patch create_depgraph_params.py"
-
- einfo "Enabling additional FEATURES for gentoo-dev..."
- echo 'FEATURES="${FEATURES} ipc-sandbox network-sandbox strict-keepdir"' \
- >> cnf/make.globals || die
- fi
-
- if use native-extensions; then
- printf "[build_ext]\nportage-ext-modules=true\n" >> \
- setup.cfg || die
- fi
+src_prepare() {
+ default
- if ! use ipc ; then
- einfo "Disabling ipc..."
- sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
- -i lib/_emerge/AbstractEbuildProcess.py || \
- die "failed to patch AbstractEbuildProcess.py"
+ if use prefix-guest; then
+ sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
+ -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
+ -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
+ -i cnf/repos.conf || die "sed failed"
fi
+}
- if use xattr && use kernel_linux ; then
- einfo "Adding FEATURES=xattr to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
- || die "failed to append to make.globals"
- fi
+src_configure() {
+ local code_only=false
+ python_foreach_impl my_src_configure
+}
- if use build || ! use rsync-verify; then
- sed -e '/^sync-rsync-verify-metamanifest/s|yes|no|' \
- -i cnf/repos.conf || die "sed failed"
- fi
+my_src_configure() {
+ local emesonargs=(
+ -Dcode-only=${code_only}
+ -Deprefix="${EPREFIX}"
+ -Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}"
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+ $(meson_use doc)
+ $(meson_use apidoc)
+ $(meson_use gentoo-dev)
+ $(meson_use ipc)
+ $(meson_use xattr)
+ )
- if [[ -n ${EPREFIX} ]] ; then
- einfo "Setting portage.const.EPREFIX ..."
- hprefixify -e "s|^(EPREFIX[[:space:]]*=[[:space:]]*\").*|\1${EPREFIX}\"|" \
- -w "/_BINARY/" lib/portage/const.py
-
- einfo "Prefixing shebangs ..."
- while read -r -d $'\0' ; do
- local shebang=$(head -n1 "$REPLY")
- if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
- sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
- die "sed failed"
- fi
- done < <(find . -type f ! -name etc-update -print0)
-
- einfo "Adjusting make.globals, repos.conf and etc-update ..."
- hprefixify cnf/{make.globals,repos.conf} bin/etc-update
-
- if prefix-guest ; then
- sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
- -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
- -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
- -i cnf/repos.conf || die "sed failed"
- fi
-
- einfo "Adding FEATURES=force-prefix to make.globals ..."
- echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
- || die "failed to append to make.globals"
+ if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
+ emesonargs+=( -Dnative-extensions=true )
+ else
+ emesonargs+=( -Dnative-extensions=false )
fi
- cd "${S}/cnf" || die
- if [ -f "make.conf.example.${ARCH}".diff ]; then
- patch make.conf.example "make.conf.example.${ARCH}".diff || \
- die "Failed to patch make.conf.example"
+ if use build; then
+ emesonargs+=( -Drsync-verify=false )
else
- eerror ""
- eerror "Portage does not have an arch-specific configuration for this arch."
- eerror "Please notify the arch maintainer about this issue. Using generic."
- eerror ""
+ emesonargs+=( $(meson_use rsync-verify) )
fi
-}
-
-python_compile_all() {
- local targets=()
- use doc && targets+=( docbook )
- use apidoc && targets+=( apidoc )
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
+ meson_src_configure
+ code_only=true
}
-python_test() {
- esetup.py test
+src_compile() {
+ python_foreach_impl meson_src_compile
}
-python_install() {
- # Install sbin scripts to bindir for python-exec linking
- # they will be relocated in pkg_preinst()
- distutils-r1_python_install \
- --system-prefix="${EPREFIX}/usr" \
- --bindir="$(python_get_scriptdir)" \
- --docdir="${EPREFIX}/usr/share/doc/${PF}" \
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
- --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
- --sbindir="$(python_get_scriptdir)" \
- --sysconfdir="${EPREFIX}/etc" \
- "${@}"
+src_test() {
+ local EPYTEST_XDIST=1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ python_foreach_impl epytest
}
-python_install_all() {
- distutils-r1_python_install_all
+src_install() {
+ python_foreach_impl my_src_install
+ dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf
- local targets=()
- use doc && targets+=(
- install_docbook
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
- use apidoc && targets+=(
- install_apidoc
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
- )
+ local scripts
+ mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die)
+ python_replicate_script "${scripts[@]}"
+}
- # install docs
- if [[ ${targets[@]} ]]; then
- esetup.py "${targets[@]}"
- fi
+my_src_install() {
+ local pydirs=(
+ "${D}$(python_get_sitedir)"
+ "${ED}/usr/lib/portage/${EPYTHON}"
+ )
- dotmpfiles "${FILESDIR}"/portage-ccache.conf
-
- # Due to distutils/python-exec limitations
- # they must be installed to /usr/bin.
- local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
- einfo "Moving admin scripts to the correct directory"
- dodir /usr/sbin
- for target in ${sbin_relocations}; do
- einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
- mv "${ED}/usr/bin/${target}" "${ED}/usr/sbin/${target}" || die "sbin scripts move failed!"
- done
+ meson_src_install
+ python_fix_shebang "${pydirs[@]}"
+ python_optimize "${pydirs[@]}"
}
pkg_preinst() {
- python_setup
- local sitedir=$(python_get_sitedir)
- [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
- env -u DISTDIR \
- -u PORTAGE_OVERRIDE_EPREFIX \
- -u PORTAGE_REPOSITORIES \
- -u PORTDIR \
- -u PORTDIR_OVERLAY \
- PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.default_locations || die
-
- env -u BINPKG_COMPRESS \
- PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
- "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
+ if ! use build && [[ -z ${ROOT} ]]; then
+ python_setup
+ local sitedir=$(python_get_sitedir)
+ [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
+ env -u DISTDIR \
+ -u PORTAGE_OVERRIDE_EPREFIX \
+ -u PORTAGE_REPOSITORIES \
+ -u PORTDIR \
+ -u PORTDIR_OVERLAY \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.default_locations || die
+
+ env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
+
+ env -u FEATURES -u PORTAGE_REPOSITORIES \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die
+
+ env -u BINPKG_FORMAT \
+ PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
+ "${PYTHON}" -m portage._compat_upgrade.binpkg_format || die
+ fi
# elog dir must exist to avoid logrotate error for bug #415911.
# This code runs in preinst in order to bypass the mapping of
@@ -245,4 +219,24 @@ pkg_preinst() {
if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
fi
+
+ if has_version "<${CATEGORY}/${PN}-2.3.77"; then
+ elog "The emerge --autounmask option is now disabled by default, except for"
+ elog "portions of behavior which are controlled by the --autounmask-use and"
+ elog "--autounmask-license options. For backward compatibility, previous"
+ elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
+ elog "Users can get the old behavior simply by adding --autounmask to the"
+ elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
+ elog "change, see https://bugs.gentoo.org/658648."
+ fi
+}
+
+pkg_postinst() {
+ # Warn about obsolete "enotice" script, bug #867010
+ local bashrc=${EROOT}/etc/portage/profile/profile.bashrc
+ if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then
+ eerror "Obsolete 'enotice' script detected!"
+ eerror "Please remove this from ${bashrc} to avoid problems."
+ eerror "See bug 867010 for more details."
+ fi
}
diff --git a/sys-apps/powerpc-utils/metadata.xml b/sys-apps/powerpc-utils/metadata.xml
index 5eb05198076b..675be6dd398c 100644
--- a/sys-apps/powerpc-utils/metadata.xml
+++ b/sys-apps/powerpc-utils/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
</pkgmetadata>
diff --git a/sys-apps/powerpc-utils/powerpc-utils-1.1.3.18-r4.ebuild b/sys-apps/powerpc-utils/powerpc-utils-1.1.3.18-r4.ebuild
index fc1157cb0996..71f844f46dc0 100644
--- a/sys-apps/powerpc-utils/powerpc-utils-1.1.3.18-r4.ebuild
+++ b/sys-apps/powerpc-utils/powerpc-utils-1.1.3.18-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,9 +15,7 @@ SRC_URI="http://http.us.debian.org/debian/pool/main/p/powerpc-utils/${PN}_${BASE
HOMEPAGE="http://http.us.debian.org/debian/pool/main/p/powerpc-utils/"
KEYWORDS="-* ppc ppc64"
-IUSE=""
-DEPEND=""
-RDEPEND="${DEPEND}"
+
SLOT="0"
LICENSE="GPL-2"
diff --git a/sys-apps/ppc64-diag/Manifest b/sys-apps/ppc64-diag/Manifest
new file mode 100644
index 000000000000..6066664db193
--- /dev/null
+++ b/sys-apps/ppc64-diag/Manifest
@@ -0,0 +1 @@
+DIST ppc64-diag-2.7.9.tar.gz 439622 BLAKE2B a30a94359227812254d7ae9a571e524e88eb136fad9567cc5670d85dd66fb3a0f761a58da7eeeabe22434b959fa0d73a8c5213379184432c2a5efe8f8d9c2a47 SHA512 b6756c17e67e876ad3a945d05dbd2c2523cbf121c4aa658a4edaf33775c8165ff26a252bdf812600e2d47ae69cd68f6e22c0de6f2d3994856adcd3d949322673
diff --git a/sys-apps/ppc64-diag/files/fix-systemd-unit-path.patch b/sys-apps/ppc64-diag/files/fix-systemd-unit-path.patch
new file mode 100644
index 000000000000..e11feca7a49c
--- /dev/null
+++ b/sys-apps/ppc64-diag/files/fix-systemd-unit-path.patch
@@ -0,0 +1,38 @@
+From 60a26c23d2d385e62a006d68074ca25479e10639 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Wed, 15 Jan 2020 20:27:31 -0800
+Subject: [PATCH] fix systemd unit path
+
+---
+ scripts/Makefile.am | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/scripts/Makefile.am b/scripts/Makefile.am
+index 29dcb78..36efcfb 100644
+--- a/scripts/Makefile.am
++++ b/scripts/Makefile.am
+@@ -16,8 +16,8 @@ install-exec-hook-scripts:
+ install -D --mode=644 $(CONFIG_FILE) $(DESTDIR)/etc/ppc64-diag
+ install -d --mode=755 $(DESTDIR)/usr/libexec/ppc64-diag/
+ install -D --mode=755 $(INIT_FILES) $(DESTDIR)/usr/libexec/ppc64-diag/
+- install -d --mode=755 $(DESTDIR)/usr/lib/systemd/system/
+- install -D --mode=644 $(SERVICE_SCRIPT) $(DESTDIR)/usr/lib/systemd/system/
++ install -d --mode=755 $(DESTDIR)/lib/systemd/system/
++ install -D --mode=644 $(SERVICE_SCRIPT) $(DESTDIR)/lib/systemd/system/
+
+ uninstall-hook-scripts:
+ rm -f $(DESTDIR)/etc/ppc64-diag/ppc64_diag_setup
+@@ -28,8 +28,8 @@ uninstall-hook-scripts:
+ rm -f $(DESTDIR)/etc/ppc64-diag/ppc64-diag.config
+ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/rtas_errd
+ rm -f $(DESTDIR)/usr/libexec/ppc64-diag/opal_errd
+- rm -f $(DESTDIR)/usr/lib/systemd/system/rtas_errd.service
+- rm -f $(DESTDIR)/usr/lib/systemd/system/opal_errd.service
++ rm -f $(DESTDIR)/lib/systemd/system/rtas_errd.service
++ rm -f $(DESTDIR)/lib/systemd/system/opal_errd.service
+
+ INSTALL_EXEC_HOOKS += install-exec-hook-scripts
+ UNINSTALL_HOOKS += uninstall-hook-scripts
+--
+2.25.0
+
diff --git a/sys-apps/ppc64-diag/files/opal_errd.initd b/sys-apps/ppc64-diag/files/opal_errd.initd
new file mode 100644
index 000000000000..ee420f1f9aca
--- /dev/null
+++ b/sys-apps/ppc64-diag/files/opal_errd.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="opal_errd daemon"
+description="Daemon to read/parse OPAL platform error(s)/event(s)"
+command=/usr/sbin/opal_errd
+command_args="-w ${opal_errd_args}"
+command_background=true
+pidfile="/run/${RC_SVCNAME}.pid"
+
+depend() {
+ need localmount
+ use logger
+}
diff --git a/sys-apps/ppc64-diag/files/rtas_errd.initd b/sys-apps/ppc64-diag/files/rtas_errd.initd
new file mode 100644
index 000000000000..213f91cf0022
--- /dev/null
+++ b/sys-apps/ppc64-diag/files/rtas_errd.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="rtas_errd daemon"
+description="Daemon to read/parse RTAS platform error(s)/event(s)"
+command=/usr/sbin/rtas_errd
+command_args="${rtas_errd_args}"
+command_background=true
+pidfile="/run/${RC_SVCNAME}.pid"
+
+depend() {
+ need localmount
+ use logger
+}
diff --git a/sys-apps/ppc64-diag/metadata.xml b/sys-apps/ppc64-diag/metadata.xml
new file mode 100644
index 000000000000..969557b4050c
--- /dev/null
+++ b/sys-apps/ppc64-diag/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ppc@gentoo.org</email>
+ <name>PowerPC architecture team</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">power-ras/ppc64-diag</remote-id>
+ </upstream>
+ <use>
+ <flag name="rtas">Add support for the Run Time Abstraction Services (RTAS)</flag>
+ </use>
+ <longdescription lang="en">
+ Various diagnostic tools for PowerLinux.
+ These tools capture the diagnostic events from Power Systems platform firmware, SES
+ enclosures and logs serviceable event. It also provides automated responses
+ to urgent events such as environmental conditions and predictive failures.
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-apps/ppc64-diag/ppc64-diag-2.7.9.ebuild b/sys-apps/ppc64-diag/ppc64-diag-2.7.9.ebuild
new file mode 100644
index 000000000000..de27bd758f8c
--- /dev/null
+++ b/sys-apps/ppc64-diag/ppc64-diag-2.7.9.ebuild
@@ -0,0 +1,79 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Diagnostic tools for PowerLinux"
+HOMEPAGE="https://github.com/power-ras/ppc64-diag"
+SRC_URI="https://github.com/power-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="ppc64"
+IUSE="rtas"
+
+DEPEND="virtual/libudev:=
+ rtas? (
+ sys-libs/ncurses:0=
+ sys-libs/librtas
+ sys-libs/libservicelog
+ >=sys-libs/libvpd-2.2.9:=
+ )
+"
+
+RDEPEND="${DEPEND}
+ dev-lang/perl
+ rtas? ( sys-apps/servicelog )
+"
+
+BDEPEND="
+ app-alternatives/yacc
+ app-alternatives/lex
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/fix-systemd-unit-path.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_with rtas librtas)
+ # handle ncurses[tinfo]
+ sed -e "s:-lncurses:$($(tc-getPKG_CONFIG) --libs ncurses):g" \
+ -i Makefile || die
+}
+
+src_install() {
+ default
+ newinitd "${FILESDIR}/opal_errd.initd" opal_errd
+
+ if use rtas; then
+ newinitd "${FILESDIR}/rtas_errd.initd" rtas_errd
+ keepdir /var/log/ppc64-diag/diag_disk
+ else
+ # makefile installs it unconditionally
+ rm -rf "${ED}/lib/systemd/system/rtas_errd.service" || die
+ rm -rf "${ED}/usr/lib/systemd/system/rtas_errd.service" || die
+ fi
+
+ keepdir /etc/${PN}/ses_pages
+ keepdir /var/log/ppc64_diag/diag_disk
+ keepdir /var/log/ppc64_diag
+ keepdir /var/log/opal-elog
+ keepdir /var/log/dump
+}
+
+src_test() {
+ # it assumes MKTEMP created dir in /tmp, add /var to the string.
+ # /varplatform.0x01 becomes platform.0x01, just as test expects
+ # so we sed a sed expression, don't judge me
+ sed -i 's%\/tmp/%\/var\/tmp\/%' opal_errd/tests/test-extract_opal_dump-000 || die
+ emake check
+}
diff --git a/sys-apps/prctl/metadata.xml b/sys-apps/prctl/metadata.xml
index 5dd84ef1cd45..c3a4aa959966 100644
--- a/sys-apps/prctl/metadata.xml
+++ b/sys-apps/prctl/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>slyfox@gentoo.org</email>
- <name>Sergei Trofimovich</name>
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
</maintainer>
<upstream>
<remote-id type="sourceforge">prctl</remote-id>
diff --git a/sys-apps/prctl/prctl-1.6-r1.ebuild b/sys-apps/prctl/prctl-1.6-r1.ebuild
index 419cae89d00f..18a3e6855365 100644
--- a/sys-apps/prctl/prctl-1.6-r1.ebuild
+++ b/sys-apps/prctl/prctl-1.6-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools toolchain-funcs
+inherit autotools
DESCRIPTION="Tool to query and modify process behavior"
HOMEPAGE="https://sourceforge.net/projects/prctl/"
@@ -11,11 +11,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~ia64 ~x86"
-IUSE=""
-
-RDEPEND=""
-DEPEND=""
+KEYWORDS="~alpha amd64 ~arm64 hppa ~ia64 ~x86"
PATCHES=(
"${FILESDIR}"/${P}-no-implicits.patch
diff --git a/sys-apps/preload/metadata.xml b/sys-apps/preload/metadata.xml
index d6930bbadb5c..bef499fad347 100644
--- a/sys-apps/preload/metadata.xml
+++ b/sys-apps/preload/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<longdescription> preload is an adaptive readahead daemon. It monitors applications that users run, and by analyzing this data, predicts what applications users might run, and fetches those binaries and their dependencies into memory for faster startup times. </longdescription>
diff --git a/sys-apps/progress/Manifest b/sys-apps/progress/Manifest
index e1a2f7b0c9b0..88b8b667b415 100644
--- a/sys-apps/progress/Manifest
+++ b/sys-apps/progress/Manifest
@@ -1,2 +1 @@
-DIST progress-0.13.tar.gz 57959 BLAKE2B 11d0dbcf6a4cdf96f3fa6b902d60c5ce0fa4a619c3b40db44d6ac3e05464876c054359399af8cbbfc5304849654e5decfbbecd449da2e5abfc0cf653c787151e SHA512 789e188e60137412f3ab0f47c82a969066eb1c312711982a4a77a28b1b334055a233b12d4840653a80ac6339e66f8c120e0312889369bbdc71fa10661e7c407e
DIST progress-0.15.tar.gz 58549 BLAKE2B a75d9b4cb965419cc1677ff80d1990c2b2069031e71e982ff6e83381cbac53aee37e9cc22984e132929c0502dc89f860022def62b886e7b6122f2111aa314fc6 SHA512 8b446d04e156b8d3d905caf9a8c9eac2ff2d24ca3b118ebdf6b2aa9f9f99d0d219c026020c33bc3f2fff936f4a29d95f89fe1cbc1ab66b7b33f5e32bf18710ca
diff --git a/sys-apps/progress/metadata.xml b/sys-apps/progress/metadata.xml
index 9ccea8ae20b9..3dda981f0f21 100644
--- a/sys-apps/progress/metadata.xml
+++ b/sys-apps/progress/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zx2c4@gentoo.org</email>
diff --git a/sys-apps/progress/progress-0.13.ebuild b/sys-apps/progress/progress-0.13.ebuild
deleted file mode 100644
index 7cde6caae915..000000000000
--- a/sys-apps/progress/progress-0.13.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit toolchain-funcs
-
-DESCRIPTION="Coreutils Viewer: show progress for cp, rm, dd, and so forth"
-HOMEPAGE="https://github.com/Xfennec/progress"
-SRC_URI="https://github.com/Xfennec/progress/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 ppc ppc64 x86"
-
-RDEPEND="sys-libs/ncurses"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
-
-src_prepare() {
- sed -i \
- -e '/CFLAGS/s:-g ::' \
- Makefile || die
- tc-export CC
-}
-
-src_install() {
- emake PREFIX="${D}/${EPREFIX}/usr" install
- dodoc README.md
-}
diff --git a/sys-apps/progress/progress-0.15-r1.ebuild b/sys-apps/progress/progress-0.15-r1.ebuild
new file mode 100644
index 000000000000..bb7030db1641
--- /dev/null
+++ b/sys-apps/progress/progress-0.15-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Coreutils Viewer: show progress for cp, rm, dd, and so forth"
+HOMEPAGE="https://github.com/Xfennec/progress"
+SRC_URI="https://github.com/Xfennec/progress/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 ~riscv x86"
+
+RDEPEND="sys-libs/ncurses:="
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+
+ tc-export CC
+}
+
+src_install() {
+ emake PREFIX="${ED}/usr" install
+ dodoc README.md
+}
diff --git a/sys-apps/progress/progress-0.15.ebuild b/sys-apps/progress/progress-0.15.ebuild
deleted file mode 100644
index 6eb35756e6da..000000000000
--- a/sys-apps/progress/progress-0.15.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit toolchain-funcs
-
-DESCRIPTION="Coreutils Viewer: show progress for cp, rm, dd, and so forth"
-HOMEPAGE="https://github.com/Xfennec/progress"
-SRC_URI="https://github.com/Xfennec/progress/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-
-RDEPEND="sys-libs/ncurses"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
-
-src_prepare() {
- tc-export CC
-}
-
-src_install() {
- emake PREFIX="${D}/${EPREFIX}/usr" install
- dodoc README.md
-}
diff --git a/sys-apps/proot/Manifest b/sys-apps/proot/Manifest
index 37f988ee1d1a..6ea707137c56 100644
--- a/sys-apps/proot/Manifest
+++ b/sys-apps/proot/Manifest
@@ -1 +1,2 @@
-DIST proot-5.1.0.tar.gz 253251 BLAKE2B 8dc147d6c6ee303baf0c86f2fa4a8c17a58e76d9da9432635fc70ee06a65aa748ad617735012a1a18a520775fbe38c2264dcccefb681e8e829a5e7e1ddb05cca SHA512 26be26d405a8bcbe94377c3e9c18a571e4b61e3074f0716b0db3517d147d9d4a07c80f7312171cf9580ac7748e72e688efaf1b8e4a0ca3bfc31c802aa351346f
+DIST proot-5.3.0.tar.gz 224436 BLAKE2B 431ea8e1d1de5b9babe377b6f8bc04313f968dd5967f8ee4e2c8ab6be860f85cf201a6e7ca3c7299da7d142d6a034903724440ad94bd234a23df66ebc0e175ad SHA512 371767a0f759440bd9da86567c3eb81bcaea57ba93f954e858c69ae88b130d8c28fbac9d9748721f6b23e216527290d9f5cd5a9ca2809303d0aeaf53c325c161
+DIST proot-5.4.0.tar.gz 225529 BLAKE2B 8e29224cf93d7fbf888134ebe8a9acbcb9d0d00cba3169dee609e57e5374743a62157b71cbd0e95f5e9e06659a914a3d488a8f6fb4c0b469ce945b5baa43b842 SHA512 c4d7b7428758c0d8f6a89ecaa01d1d7d5d9663a84b7e730e8160bc2a2385a7e278589f5dd86f5cd4f8e0736f09b3097b9efea7814096fd2d28e6032435b9ee63
diff --git a/sys-apps/proot/files/proot-2.3.1-lib-paths-fix.patch b/sys-apps/proot/files/proot-2.3.1-lib-paths-fix.patch
deleted file mode 100644
index 647f19183a9d..000000000000
--- a/sys-apps/proot/files/proot-2.3.1-lib-paths-fix.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/src/execve/ldso.c 2013-01-23 16:22:37.870287856 +0400
-+++ b/src/execve/ldso.c 2013-01-23 16:31:40.219283675 +0400
-@@ -285,16 +285,10 @@
- /* 6. /lib, /usr/lib + /usr/local/lib */
- if (IS_CLASS32(elf_header))
- status = add_host_ldso_paths(host_ldso_paths,
--#if defined(ARCH_X86) || defined(ARCH_X86_64)
-- "/lib/i386-linux-gnu:/usr/lib/i386-linux-gnu:"
--#endif
- "/lib32:/usr/lib32:/usr/local/lib32"
- ":/lib:/usr/lib:/usr/local/lib");
- else
- status = add_host_ldso_paths(host_ldso_paths,
--#if defined(ARCH_X86_64)
-- "/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:"
--#endif
- "/lib64:/usr/lib64:/usr/local/lib64"
- ":/lib:/usr/lib:/usr/local/lib");
- if (status < 0)
diff --git a/sys-apps/proot/files/proot-5.1.0-loader.patch b/sys-apps/proot/files/proot-5.1.0-loader.patch
deleted file mode 100644
index e74cfaa7807b..000000000000
--- a/sys-apps/proot/files/proot-5.1.0-loader.patch
+++ /dev/null
@@ -1,272 +0,0 @@
-commit 77d5ba4e5bb35f91d026a3240ad0a91a2d4b662a
-Author: Cédric VINCENT <cedric.vincent@st.com>
-Date: Fri Feb 20 14:28:55 2015 +0100
-
- Set tracee's stack executable when the loaded program requires this.
-
- This is required for UMEQ and for some older versions of PRoot. For
- example:
-
- $ proot -q umeq-arm64-dce01957 -R ~/gentoo-arm64-20140718
-
- Before:
-
- proot info: vpid 1 terminated with signal 11
-
- Now, it is OK.
-
-diff --git a/src/compat.h b/src/compat.h
-index 2b603f1..5009490 100644
---- a/src/compat.h
-+++ b/src/compat.h
-@@ -243,5 +243,17 @@
- # ifndef MAP_ANONYMOUS
- # define MAP_ANONYMOUS 0x20
- # endif
-+# ifndef PROT_READ
-+# define PROT_READ 0x1
-+# endif
-+# ifndef PROT_WRITE
-+# define PROT_WRITE 0x2
-+# endif
-+# ifndef PROT_EXEC
-+# define PROT_EXEC 0x4
-+# endif
-+# ifndef PROT_GROWSDOWN
-+# define PROT_GROWSDOWN 0x01000000
-+# endif
-
- #endif /* COMPAT_H */
-diff --git a/src/execve/elf.h b/src/execve/elf.h
-index 3ced10c..a5b367b 100644
---- a/src/execve/elf.h
-+++ b/src/execve/elf.h
-@@ -108,7 +108,8 @@ typedef union {
- typedef enum {
- PT_LOAD = 1,
- PT_DYNAMIC = 2,
-- PT_INTERP = 3
-+ PT_INTERP = 3,
-+ PT_GNU_STACK = 0x6474e551,
- } SegmentType;
-
- typedef struct {
-diff --git a/src/execve/enter.c b/src/execve/enter.c
-index cb84ec6..f0f3e7f 100644
---- a/src/execve/enter.c
-+++ b/src/execve/enter.c
-@@ -252,6 +252,11 @@ static int add_load_info(const ElfHeader *elf_header,
- return status;
- break;
-
-+ case PT_GNU_STACK:
-+ data->load_info->needs_executable_stack |=
-+ ((PROGRAM_FIELD(*elf_header, *program_header, flags) & PF_X) != 0);
-+ break;
-+
- default:
- break;
- }
-diff --git a/src/execve/execve.h b/src/execve/execve.h
-index 11eca10..98b8d03 100644
---- a/src/execve/execve.h
-+++ b/src/execve/execve.h
-@@ -49,6 +49,7 @@ typedef struct load_info {
- char *raw_path;
- Mapping *mappings;
- ElfHeader elf_header;
-+ bool needs_executable_stack;
-
- struct load_info *interp;
- } LoadInfo;
-diff --git a/src/execve/exit.c b/src/execve/exit.c
-index e6eff44..36cc51f 100644
---- a/src/execve/exit.c
-+++ b/src/execve/exit.c
-@@ -174,6 +174,9 @@ static void *transcript_mappings(void *cursor, const Mapping *mappings)
- static int transfer_load_script(Tracee *tracee)
- {
- const word_t stack_pointer = peek_reg(tracee, CURRENT, STACK_POINTER);
-+ static word_t page_size = 0;
-+ static word_t page_mask = 0;
-+
- word_t entry_point;
-
- size_t script_size;
-@@ -190,10 +193,22 @@ static int transfer_load_script(Tracee *tracee)
- void *buffer;
- size_t buffer_size;
-
-+ bool needs_executable_stack;
- LoadStatement *statement;
- void *cursor;
- int status;
-
-+ if (page_size == 0) {
-+ page_size = sysconf(_SC_PAGE_SIZE);
-+ if ((int) page_size <= 0)
-+ page_size = 0x1000;
-+ page_mask = ~(page_size - 1);
-+ }
-+
-+ needs_executable_stack = (tracee->load_info->needs_executable_stack
-+ || ( tracee->load_info->interp != NULL
-+ && tracee->load_info->interp->needs_executable_stack));
-+
- /* Strings addresses are required to generate the load script,
- * for "open" actions. Since I want to generate it in one
- * pass, these strings will be put right below the current
-@@ -208,7 +223,7 @@ static int transfer_load_script(Tracee *tracee)
- : strlen(tracee->load_info->raw_path) + 1);
-
- /* A padding will be appended at the end of the load script
-- * (a.k.a "strings area") to ensure this latter is aligned on
-+ * (a.k.a "strings area") to ensure this latter is aligned to
- * a word boundary, for sake of performance. */
- padding_size = (stack_pointer - string1_size - string2_size - string3_size)
- % sizeof_word(tracee);
-@@ -229,6 +244,7 @@ static int transfer_load_script(Tracee *tracee)
- : LOAD_STATEMENT_SIZE(*statement, open)
- + (LOAD_STATEMENT_SIZE(*statement, mmap)
- * talloc_array_length(tracee->load_info->interp->mappings)))
-+ + (needs_executable_stack ? LOAD_STATEMENT_SIZE(*statement, make_stack_exec) : 0)
- + LOAD_STATEMENT_SIZE(*statement, start);
-
- /* Allocate enough room for both the load script and the
-@@ -266,6 +282,16 @@ static int transfer_load_script(Tracee *tracee)
- else
- entry_point = ELF_FIELD(tracee->load_info->elf_header, entry);
-
-+ if (needs_executable_stack) {
-+ /* Load script statement: stack_exec. */
-+ statement = cursor;
-+
-+ statement->action = LOAD_ACTION_MAKE_STACK_EXEC;
-+ statement->make_stack_exec.start = stack_pointer & page_mask;
-+
-+ cursor += LOAD_STATEMENT_SIZE(*statement, make_stack_exec);
-+ }
-+
- /* Load script statement: start. */
- statement = cursor;
-
-@@ -352,7 +378,7 @@ static int transfer_load_script(Tracee *tracee)
- * | mmap file |
- * +------------+
- * | open |
-- * +------------+ <- stack pointer, sysarg1 (word aligned)
-+ * +------------+ <- stack pointer, userarg1 (word aligned)
- */
-
- /* Remember we are in the sysexit stage, so be sure the
-diff --git a/src/loader/assembly-arm.h b/src/loader/assembly-arm.h
-index ee5bb85..59a7fe0 100644
---- a/src/loader/assembly-arm.h
-+++ b/src/loader/assembly-arm.h
-@@ -89,4 +89,5 @@
- #define EXECVE 11
- #define EXIT 1
- #define PRCTL 172
-+#define MPROTECT 125
-
-diff --git a/src/loader/assembly-x86.h b/src/loader/assembly-x86.h
-index c83b3ef..4045144 100644
---- a/src/loader/assembly-x86.h
-+++ b/src/loader/assembly-x86.h
-@@ -65,3 +65,4 @@ extern word_t syscall_1(word_t number, word_t arg1);
- #define EXECVE 11
- #define EXIT 1
- #define PRCTL 172
-+#define MPROTECT 125
-diff --git a/src/loader/assembly-x86_64.h b/src/loader/assembly-x86_64.h
-index c581208..6f431be 100644
---- a/src/loader/assembly-x86_64.h
-+++ b/src/loader/assembly-x86_64.h
-@@ -93,3 +93,4 @@
- #define EXECVE 59
- #define EXIT 60
- #define PRCTL 157
-+#define MPROTECT 10
-diff --git a/src/loader/loader.c b/src/loader/loader.c
-index 5b31b02..9c2037b 100644
---- a/src/loader/loader.c
-+++ b/src/loader/loader.c
-@@ -171,6 +171,14 @@ void _start(void *cursor)
- cursor += LOAD_STATEMENT_SIZE(*stmt, mmap);
- break;
-
-+ case LOAD_ACTION_MAKE_STACK_EXEC:
-+ SYSCALL(MPROTECT, 3,
-+ stmt->make_stack_exec.start, 1,
-+ PROT_READ | PROT_WRITE | PROT_EXEC | PROT_GROWSDOWN);
-+
-+ cursor += LOAD_STATEMENT_SIZE(*stmt, make_stack_exec);
-+ break;
-+
- case LOAD_ACTION_START_TRACED:
- traced = true;
- /* Fall through. */
-diff --git a/src/loader/script.h b/src/loader/script.h
-index bb48af5..6ae7621 100644
---- a/src/loader/script.h
-+++ b/src/loader/script.h
-@@ -42,6 +42,10 @@ struct load_statement {
- word_t clear_length;
- } mmap;
-
-+ struct {
-+ word_t start;
-+ } make_stack_exec;
-+
- struct {
- word_t stack_pointer;
- word_t entry_point;
-@@ -67,7 +71,8 @@ typedef struct load_statement LoadStatement;
- #define LOAD_ACTION_OPEN 1
- #define LOAD_ACTION_MMAP_FILE 2
- #define LOAD_ACTION_MMAP_ANON 3
--#define LOAD_ACTION_START_TRACED 4
--#define LOAD_ACTION_START 5
-+#define LOAD_ACTION_MAKE_STACK_EXEC 4
-+#define LOAD_ACTION_START_TRACED 5
-+#define LOAD_ACTION_START 6
-
- #endif /* SCRIPT */
-
-commit d649854ddb66779950954aac99d960379c631a71
-Author: Nicolas Cornu <ncornu@aldebaran.com>
-Date: Wed Jul 29 14:52:57 2015 +0200
-
- Fix use of size
-
-diff --git a/src/execve/enter.c b/src/execve/enter.c
-index 8f22d9c..4c163a1 100644
---- a/src/execve/enter.c
-+++ b/src/execve/enter.c
-@@ -454,10 +454,10 @@ static int expand_runner(Tracee* tracee, char host_path[PATH_MAX], char user_pat
- }
-
- extern unsigned char _binary_loader_exe_start;
--extern unsigned char _binary_loader_exe_size;
-+extern unsigned char _binary_loader_exe_end;
-
- extern unsigned char WEAK _binary_loader_m32_exe_start;
--extern unsigned char WEAK _binary_loader_m32_exe_size;
-+extern unsigned char WEAK _binary_loader_m32_exe_end;
-
- /**
- * Extract the built-in loader. This function returns NULL if an
-@@ -483,11 +483,11 @@ static char *extract_loader(const Tracee *tracee, bool wants_32bit_version)
-
- if (wants_32bit_version) {
- start = (void *) &_binary_loader_m32_exe_start;
-- size = (size_t) &_binary_loader_m32_exe_size;
-+ size = (size_t)(&_binary_loader_m32_exe_end-&_binary_loader_m32_exe_start);
- }
- else {
- start = (void *) &_binary_loader_exe_start;
-- size = (size_t) &_binary_loader_exe_size;
-+ size = (size_t) (&_binary_loader_exe_end-&_binary_loader_exe_start);
- }
-
- status2 = write(fd, start, size);
diff --git a/sys-apps/proot/files/proot-5.1.0-makefile.patch b/sys-apps/proot/files/proot-5.1.0-makefile.patch
deleted file mode 100644
index 414cb29010cb..000000000000
--- a/sys-apps/proot/files/proot-5.1.0-makefile.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/src/GNUmakefile 2018-08-01 16:30:00.957743804 +0300
-+++ b/src/GNUmakefile 2018-08-01 16:30:34.876741798 +0300
-@@ -15,8 +15,8 @@
- OBJDUMP = $(CROSS_COMPILE)objdump
-
- CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I. -I$(VPATH)
--CFLAGS += -Wall -Wextra -O2
--LDFLAGS += -ltalloc
-+CFLAGS += -Wall -Wextra
-+LDFLAGS += -ltalloc -Wl,-z,noexecstack
-
- CARE_LDFLAGS = -larchive
-
-@@ -182,7 +182,7 @@
- $(eval $(call define_from_arch.h,$1,LOADER_ADDRESS))
-
- LOADER_CFLAGS$1 += -fPIC -ffreestanding $(LOADER_ARCH_CFLAGS$1)
--LOADER_LDFLAGS$1 += -static -nostdlib -Wl$(BUILD_ID_NONE),-Ttext=$(LOADER_ADDRESS$1)
-+LOADER_LDFLAGS$1 += -static -nostdlib -Wl$(BUILD_ID_NONE),-Ttext=$(LOADER_ADDRESS$1),-z,noexecstack
-
- loader/loader$1.o: loader/loader.c
- @mkdir -p $$(dir $$@)
diff --git a/sys-apps/proot/files/proot-5.3.0-lib-paths-fix.patch b/sys-apps/proot/files/proot-5.3.0-lib-paths-fix.patch
new file mode 100644
index 000000000000..188caa4eaf41
--- /dev/null
+++ b/sys-apps/proot/files/proot-5.3.0-lib-paths-fix.patch
@@ -0,0 +1,21 @@
+--- a/src/execve/ldso.c 2022-01-21 11:42:37.539816477 +0300
++++ b/src/execve/ldso.c 2022-01-21 11:42:40.490817464 +0300
+@@ -506,18 +506,10 @@
+ /* 6. /lib, /usr/lib + /usr/local/lib */
+ if (IS_CLASS32(elf_header))
+ status = add_host_ldso_paths(host_ldso_paths,
+-#if defined(ARCH_X86) || defined(ARCH_X86_64)
+- "/lib/i386-linux-gnu:/usr/lib/i386-linux-gnu:"
+-#endif
+ "/lib32:/usr/lib32:/usr/local/lib32"
+ ":/lib:/usr/lib:/usr/local/lib");
+ else
+ status = add_host_ldso_paths(host_ldso_paths,
+-#if defined(ARCH_X86_64)
+- "/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:"
+-#elif defined(ARCH_ARM64)
+- "/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu:"
+-#endif
+ "/lib64:/usr/lib64:/usr/local/lib64"
+ ":/lib:/usr/lib:/usr/local/lib");
+ if (status < 0)
diff --git a/sys-apps/proot/files/proot-5.3.0-makefile.patch b/sys-apps/proot/files/proot-5.3.0-makefile.patch
new file mode 100644
index 000000000000..15d7fc916b0e
--- /dev/null
+++ b/sys-apps/proot/files/proot-5.3.0-makefile.patch
@@ -0,0 +1,11 @@
+--- a/src/GNUmakefile 2022-01-21 11:40:00.957743804 +0300
++++ b/src/GNUmakefile 2022-01-21 11:40:34.876741798 +0300
+@@ -21,8 +21,8 @@
+ HAS_PYTHON_CONFIG := $(shell ${PYTHON}-config --ldflags ${PYTHON_EMBED} 2>/dev/null)
+
+ CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I. -I$(VPATH)
+-CFLAGS += -g -Wall -Wextra -O2
++CFLAGS += -Wall -Wextra
+ CFLAGS += $(shell pkg-config --cflags talloc libarchive)
+ LDFLAGS += -Wl,-z,noexecstack
+ LDFLAGS += $(shell pkg-config --libs talloc libarchive)
diff --git a/sys-apps/proot/files/proot-5.4.0-makefile.patch b/sys-apps/proot/files/proot-5.4.0-makefile.patch
new file mode 100644
index 000000000000..55b0dc0dcb0f
--- /dev/null
+++ b/sys-apps/proot/files/proot-5.4.0-makefile.patch
@@ -0,0 +1,11 @@
+--- a/src/GNUmakefile 2023-11-08 12:39:54.090525399 +0300
++++ b/src/GNUmakefile 2023-11-08 12:40:02.514645883 +0300
+@@ -21,7 +21,7 @@
+ HAS_PYTHON_CONFIG := $(shell ${PYTHON}-config --ldflags ${PYTHON_EMBED} 2>/dev/null)
+
+ CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I. -I$(VPATH) -I$(VPATH)/../lib/uthash/include
+-CFLAGS += -g -Wall -Wextra -O2
++CFLAGS += -Wall -Wextra -O2
+ CFLAGS += $(shell pkg-config --cflags talloc)
+ LDFLAGS += -Wl,-z,noexecstack
+ LDFLAGS += $(shell pkg-config --libs talloc)
diff --git a/sys-apps/proot/metadata.xml b/sys-apps/proot/metadata.xml
index f8c3c4c12811..9d9660ca3670 100644
--- a/sys-apps/proot/metadata.xml
+++ b/sys-apps/proot/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>pinkbyte@gentoo.org</email>
diff --git a/sys-apps/proot/proot-5.1.0-r2.ebuild b/sys-apps/proot/proot-5.1.0-r2.ebuild
deleted file mode 100644
index 0b43af65d9a5..000000000000
--- a/sys-apps/proot/proot-5.1.0-r2.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-MY_PN="PRoot"
-
-inherit eutils toolchain-funcs
-
-SRC_URI="https://github.com/proot-me/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-
-DESCRIPTION="User-space implementation of chroot, mount --bind, and binfmt_misc"
-HOMEPAGE="https://proot-me.github.io"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="care test"
-
-RDEPEND="care? ( app-arch/libarchive:0= )
- sys-libs/talloc"
-DEPEND="${RDEPEND}
- care? ( dev-libs/uthash )
- test? ( dev-util/valgrind )"
-
-# Breaks sandbox
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-5.1.0-makefile.patch"
- "${FILESDIR}/${PN}-2.3.1-lib-paths-fix.patch"
- "${FILESDIR}/${PN}-5.1.0-loader.patch"
-)
-
-src_compile() {
- # build the proot and care targets
- emake -C src V=1 \
- CC="$(tc-getCC)" \
- OBJCOPY="$(tc-getOBJCOPY)" \
- OBJDUMP="$(tc-getOBJDUMP)" \
- STRIP="$(tc-getSTRIP)" \
- CHECK_VERSION="true" \
- CAREBUILDENV="ok" \
- proot $(use care && echo "care")
-}
-
-src_install() {
- if use care; then
- dobin src/care
- dodoc doc/care/*.txt
- fi
- dobin src/proot
- newman doc/proot/man.1 proot.1
- dodoc doc/proot/*.txt
- dodoc -r doc/articles
-}
-
-src_test() {
- emake -C tests -j1 CC="$(tc-getCC)"
-}
-
-pkg_postinst() {
- elog "If you have segfaults on recent (>4.8) kernels"
- elog "try to disable seccomp support like so:"
- elog "'export PROOT_NO_SECCOMP=1'"
- elog "prior to running proot"
-
- if use care; then
- elog "You have enabled 'care' USE flag, that builds and installs"
- elog "dynamically linked care binary."
- elog "Upstream does NOT support such way of building CARE,"
- elog "it provides only prebuilt binaries."
- elog "CARE also has known problems on hardened systems"
- elog "Please do NOT file bugs about them to https://bugs.gentoo.org"
- fi
-}
diff --git a/sys-apps/proot/proot-5.3.0.ebuild b/sys-apps/proot/proot-5.3.0.ebuild
new file mode 100644
index 000000000000..c567f39e0bf8
--- /dev/null
+++ b/sys-apps/proot/proot-5.3.0.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+MY_PN="PRoot"
+
+inherit toolchain-funcs
+
+SRC_URI="https://github.com/proot-me/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+DESCRIPTION="User-space implementation of chroot, mount --bind, and binfmt_misc"
+HOMEPAGE="https://proot-me.github.io"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="care doc test"
+
+RDEPEND="care? ( app-arch/libarchive:0= )
+ sys-libs/talloc"
+BDEPEND="dev-python/docutils"
+DEPEND="${RDEPEND}
+ care? ( dev-libs/uthash )
+ elibc_musl? ( sys-libs/queue-standalone )
+ test? ( dev-debug/valgrind )"
+
+# Breaks sandbox
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.3.0-makefile.patch"
+ "${FILESDIR}/${PN}-5.3.0-lib-paths-fix.patch"
+)
+
+src_compile() {
+ # build the proot and care targets
+ emake -C src V=1 \
+ CC="$(tc-getCC)" \
+ OBJCOPY="$(tc-getOBJCOPY)" \
+ OBJDUMP="$(tc-getOBJDUMP)" \
+ STRIP="$(tc-getSTRIP)" \
+ CHECK_VERSION="true" \
+ CAREBUILDENV="ok" \
+ proot $(use care && echo "care")
+ emake -C doc SUFFIX=".py" proot/man.1
+}
+
+src_install() {
+ use care && dobin src/care
+ dobin src/proot
+ dodoc doc/proot/*.rst
+ newman doc/proot/man.1 proot.1
+}
+
+src_test() {
+ emake -C tests -j1 CC="$(tc-getCC)"
+}
+
+pkg_postinst() {
+ elog "If you have segfaults on recent (>4.8) kernels"
+ elog "try to disable seccomp support like so:"
+ elog "'export PROOT_NO_SECCOMP=1'"
+ elog "prior to running proot"
+
+ if use care; then
+ elog "You have enabled 'care' USE flag, that builds and installs"
+ elog "dynamically linked care binary."
+ elog "Upstream does NOT support such way of building CARE,"
+ elog "it provides only prebuilt binaries."
+ elog "CARE also has known problems on hardened systems"
+ elog "Please do NOT file bugs about them to https://bugs.gentoo.org"
+ fi
+}
diff --git a/sys-apps/proot/proot-5.4.0.ebuild b/sys-apps/proot/proot-5.4.0.ebuild
new file mode 100644
index 000000000000..e7fd0dc982cc
--- /dev/null
+++ b/sys-apps/proot/proot-5.4.0.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+MY_PN="PRoot"
+
+inherit toolchain-funcs
+
+SRC_URI="https://github.com/proot-me/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+DESCRIPTION="User-space implementation of chroot, mount --bind, and binfmt_misc"
+HOMEPAGE="https://proot-me.github.io"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="care doc test"
+
+RDEPEND="care? ( app-arch/libarchive:0= )
+ sys-libs/talloc"
+BDEPEND="dev-python/docutils"
+DEPEND="${RDEPEND}
+ care? ( dev-libs/uthash )
+ elibc_musl? ( sys-libs/queue-standalone )
+ test? ( dev-debug/valgrind )"
+
+# Breaks sandbox
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.4.0-makefile.patch"
+ "${FILESDIR}/${PN}-5.3.0-lib-paths-fix.patch"
+)
+
+src_compile() {
+ # build the proot and care targets
+ emake -C src V=1 \
+ CC="$(tc-getCC)" \
+ OBJCOPY="$(tc-getOBJCOPY)" \
+ OBJDUMP="$(tc-getOBJDUMP)" \
+ STRIP="$(tc-getSTRIP)" \
+ CHECK_VERSION="true" \
+ CAREBUILDENV="ok" \
+ proot $(use care && echo "care")
+ emake -C doc SUFFIX=".py" proot/man.1
+}
+
+src_install() {
+ use care && dobin src/care
+ dobin src/proot
+ dodoc doc/proot/*.rst
+ newman doc/proot/man.1 proot.1
+}
+
+src_test() {
+ emake -C tests -j1 CC="$(tc-getCC)"
+}
+
+pkg_postinst() {
+ elog "If you have segfaults on recent (>4.8) kernels"
+ elog "try to disable seccomp support like so:"
+ elog "'export PROOT_NO_SECCOMP=1'"
+ elog "prior to running proot"
+
+ if use care; then
+ elog "You have enabled 'care' USE flag, that builds and installs"
+ elog "dynamically linked care binary."
+ elog "Upstream does NOT support such way of building CARE,"
+ elog "it provides only prebuilt binaries."
+ elog "CARE also has known problems on hardened systems"
+ elog "Please do NOT file bugs about them to https://bugs.gentoo.org"
+ fi
+}
diff --git a/sys-apps/pv/Manifest b/sys-apps/pv/Manifest
index fde8ea7d5eb6..8a8378104f3c 100644
--- a/sys-apps/pv/Manifest
+++ b/sys-apps/pv/Manifest
@@ -1,2 +1,2 @@
-DIST pv-1.6.0.tar.bz2 107723 BLAKE2B 95118fc6406f73e800e99468457ba00f0b8f0345eef58f7ff7f4e10b90419cb36b37af094dbe5bd84b7832dfcc96e536dfb845a061f99a0b118192e90821fdc1 SHA512 bd405901812ca50b910adbcf1d2c540dc0b8612f03687866734a79cfa5b5b8100024c18a1d1413c6613e1f2085989cbb77907da89bec7eda37cdeaa7597129d5
-DIST pv-1.6.6.tar.bz2 109220 BLAKE2B 1cfb60e49f6301f0d990467a58013522bbc1e28e2936a1a2141918af05149b59b6cc494f290d99ee7072247b8f0e230b799cd5dae6f8aa59d116691319e952cb SHA512 cc841b4bd00e4e8fcaed97da094ebac4a11af1c3f843ce5f73d0c3ab20aca29498c6b1a224c653d40127304d8269d96f413df66b980809e9278ff9544c834a26
+DIST pv-1.8.5.tar.gz 327072 BLAKE2B ef7fcf64430a72e04ca3a922115e7012c999109bb7e1a52f480c27eeb6c49952f4be52e6041a063c710d934c68555cfb65796103920fd240e4ebde2fa6a323c7 SHA512 6d7a0f785ace5e25c5677af4cf38a003386774e60563865de7f1dae60f1785685541da93e1f88236b8b2e14431584bc2cb2adb3a575fb90dc774bc6bacf22e21
+DIST pv-1.8.5.tar.gz.asc 691 BLAKE2B ac5bd2b05e145d4ea5aedbb148b39a317d68329787f06f39f808be75951da0e0f460254b4a5049a8eafabad07edfbe936be00154f5dfa660628c8a3dfa3b7ffd SHA512 8414b2485347579a54233a2f241c080ab6461799c149567ab1063ce812b08ab2293f55bf8a24bcadabf94d12ce3dce36fe57277d822d115db9e53c957fe99c20
diff --git a/sys-apps/pv/metadata.xml b/sys-apps/pv/metadata.xml
index b9de93a595ea..11cd72aff5c8 100644
--- a/sys-apps/pv/metadata.xml
+++ b/sys-apps/pv/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>jer@gentoo.org</email>
- <name>Jeroen Roovers</name>
- </maintainer>
- <upstream>
- <remote-id type="google-code">pipeviewer</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="codeberg">a-j-wood/pv</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/pv/pv-1.6.0-r1.ebuild b/sys-apps/pv/pv-1.6.0-r1.ebuild
deleted file mode 100644
index 607576c83a62..000000000000
--- a/sys-apps/pv/pv-1.6.0-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit linux-info toolchain-funcs
-
-DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe"
-HOMEPAGE="https://www.ivarch.com/programs/pv.shtml"
-SRC_URI="https://www.ivarch.com/programs/sources/${P}.tar.bz2"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc64-solaris ~x86-solaris"
-IUSE="debug nls"
-
-PV_LINGUAS=( de fr pl pt )
-
-DOCS=( README doc/NEWS doc/TODO )
-
-pkg_setup() {
- if use kernel_linux; then
- CONFIG_CHECK="~SYSVIPC"
- ERROR_SYSVIPC="You will need to enable CONFIG_SYSVIPC in your kernel to use the --remote option."
- linux-info_pkg_setup
- fi
-}
-
-src_prepare() {
- sed -i configure -e 's|CFLAGS="-g -Wall"|:|g' || die
- # These should produce the same end result (working `pv`).
- sed -i \
- -e 's:$(LD) $(LDFLAGS) -o:$(AR) rc:' \
- autoconf/make/modules.mk~ || die
-}
-
-src_configure() {
- tc-export AR
- local lingua
- for lingua in ${PV_LINGUAS[@]}; do
- if ! has ${lingua} ${LINGUAS-${lingua}}; then
- sed -i configure -e "/ALL_LINGUAS=/s:${lingua}::g" || die
- fi
- done
- econf $(use_enable debug debugging) $(use_enable nls)
-}
-
-src_test() {
- sed -i -e 's:usleep 200000 || ::g' tests/019-remote-cksum || die
- default
-}
diff --git a/sys-apps/pv/pv-1.6.6.ebuild b/sys-apps/pv/pv-1.6.6.ebuild
deleted file mode 100644
index ed93606f5ae5..000000000000
--- a/sys-apps/pv/pv-1.6.6.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit linux-info toolchain-funcs
-
-DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe"
-HOMEPAGE="https://www.ivarch.com/programs/pv.shtml"
-SRC_URI="https://www.ivarch.com/programs/sources/${P}.tar.bz2"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc64-solaris ~x86-solaris"
-IUSE="debug nls"
-
-PV_LINGUAS=( de fr pl pt )
-
-DOCS=( README doc/NEWS doc/TODO )
-
-pkg_setup() {
- if use kernel_linux; then
- CONFIG_CHECK="~SYSVIPC"
- ERROR_SYSVIPC="You will need to enable CONFIG_SYSVIPC in your kernel to use the --remote option."
- linux-info_pkg_setup
- fi
-}
-
-src_prepare() {
- default
-
- sed -i configure -e 's|CFLAGS="-g -Wall"|:|g' || die
-
- # These should produce the same end result (working `pv`).
- sed -i \
- -e 's:$(LD) $(LDFLAGS) -o:$(AR) rc:' \
- autoconf/make/modules.mk~ || die
-}
-
-src_configure() {
- tc-export AR
- local lingua
- for lingua in ${PV_LINGUAS[@]}; do
- if ! has ${lingua} ${LINGUAS-${lingua}}; then
- sed -i configure -e "/ALL_LINGUAS=/s:${lingua}::g" || die
- fi
- done
- econf $(use_enable debug debugging) $(use_enable nls)
-}
-
-src_test() {
- sed -i -e 's:usleep 200000 || ::g' tests/019-remote-cksum || die
- default
-}
diff --git a/sys-apps/pv/pv-1.8.5.ebuild b/sys-apps/pv/pv-1.8.5.ebuild
new file mode 100644
index 000000000000..3a5e84a8c476
--- /dev/null
+++ b/sys-apps/pv/pv-1.8.5.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pv.asc
+inherit linux-info toolchain-funcs verify-sig
+
+DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe"
+HOMEPAGE="https://www.ivarch.com/programs/pv.shtml https://codeberg.org/a-j-wood/pv"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://codeberg.org/a-j-wood/pv"
+ inherit autotools git-r3
+else
+ SRC_URI="
+ https://www.ivarch.com/programs/sources/${P}.tar.gz
+ verify-sig? ( https://www.ivarch.com/programs/sources/${P}.tar.gz.txt -> ${P}.tar.gz.asc )
+ "
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="debug nls"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pv )"
+
+pkg_setup() {
+ if use kernel_linux; then
+ CONFIG_CHECK="~SYSVIPC"
+ ERROR_SYSVIPC="You will need to enable CONFIG_SYSVIPC in your kernel to use the --remote option."
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+
+ [[ ${PV} == 9999 ]] && eautoreconf
+}
+
+src_configure() {
+ tc-export AR
+
+ econf \
+ $(use_enable debug debugging) \
+ $(use_enable nls)
+}
+
+src_test() {
+ emake -Onone check
+}
diff --git a/sys-apps/pv/pv-9999.ebuild b/sys-apps/pv/pv-9999.ebuild
new file mode 100644
index 000000000000..7d003e10536d
--- /dev/null
+++ b/sys-apps/pv/pv-9999.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pv.asc
+inherit linux-info toolchain-funcs verify-sig
+
+DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe"
+HOMEPAGE="https://www.ivarch.com/programs/pv.shtml https://codeberg.org/a-j-wood/pv"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://codeberg.org/a-j-wood/pv"
+ inherit autotools git-r3
+else
+ SRC_URI="
+ https://www.ivarch.com/programs/sources/${P}.tar.gz
+ verify-sig? ( https://www.ivarch.com/programs/sources/${P}.tar.gz.txt -> ${P}.tar.gz.asc )
+ "
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="debug nls"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pv )"
+
+pkg_setup() {
+ if use kernel_linux; then
+ CONFIG_CHECK="~SYSVIPC"
+ ERROR_SYSVIPC="You will need to enable CONFIG_SYSVIPC in your kernel to use the --remote option."
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+
+ [[ ${PV} == 9999 ]] && eautoreconf
+}
+
+src_configure() {
+ tc-export AR
+
+ econf \
+ $(use_enable debug debugging) \
+ $(use_enable nls)
+}
+
+src_test() {
+ emake -Onone check
+}
diff --git a/sys-apps/qcontrol/metadata.xml b/sys-apps/qcontrol/metadata.xml
index fae618337e50..686b67370e28 100644
--- a/sys-apps/qcontrol/metadata.xml
+++ b/sys-apps/qcontrol/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>arm@gentoo.org</email>
- <name>Gentoo Linux ARM Development</name>
+ <name>ARM architecture team</name>
</maintainer>
<maintainer type="project">
<email>embedded@gentoo.org</email>
diff --git a/sys-apps/qcontrol/qcontrol-0.4.2-r1.ebuild b/sys-apps/qcontrol/qcontrol-0.4.2-r1.ebuild
deleted file mode 100644
index 2cf602ce5051..000000000000
--- a/sys-apps/qcontrol/qcontrol-0.4.2-r1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Send commands to some microcontrollers, e.g., to change LEDs or sound a buzzer"
-HOMEPAGE="http://qnap.nas-central.org/index.php/PIC_Control_Software"
-SRC_URI="mirror://debian/pool/main/q/qcontrol/${P/-/_}.orig.tar.gz
- mirror://debian/pool/main/q/qcontrol/${P/-/_}-6.diff.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="arm"
-IUSE=""
-
-DEPEND=">=dev-lang/lua-5.1:="
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
-
- eapply "${WORKDIR}"/*.diff
- eapply debian/patches/*.patch
- eapply "${FILESDIR}"/${PV}-Makefile.patch
-
- sed -i -e "s/LDFLAGS=/LDFLAGS ?=/" Makefile || die
-}
-
-src_compile() {
- emake CC="$(tc-getCC)" LDFLAGS="-llua -lpthread ${LDFLAGS}" qcontrol
-}
-
-src_install() {
- dosbin qcontrol
- doman debian/qcontrol.1
-
- insinto /etc/qcontrol
- doins debian/configs/*.lua
-
- newconfd "${FILESDIR}"/conf.d qcontrol
- newinitd "${FILESDIR}"/init.d qcontrol
-}
-
-pkg_preinst() {
- device=$(grep "Hardware[[:space:]]*:" /proc/cpuinfo 2>/dev/null | \
- head -n1 | sed "s/^[^:]*: //")
- case ${device} in
- "QNAP TS-109/TS-209")
- dosym qcontrol/ts209.lua /etc/qcontrol.conf ;;
- "QNAP TS-119/TS-219")
- dosym qcontrol/ts219.lua /etc/qcontrol.conf ;;
- "QNAP TS-409")
- dosym qcontrol/ts409.lua /etc/qcontrol.conf ;;
- "QNAP TS-41x")
- dosym qcontrol/ts41x.lua /etc/qcontrol.conf ;;
- *)
- ewarn "Your device is unsupported" ;;
- esac
-}
diff --git a/sys-apps/qcontrol/qcontrol-0.4.2-r100.ebuild b/sys-apps/qcontrol/qcontrol-0.4.2-r100.ebuild
new file mode 100644
index 000000000000..c61448f88447
--- /dev/null
+++ b/sys-apps/qcontrol/qcontrol-0.4.2-r100.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-1 luajit )
+
+inherit lua-single toolchain-funcs
+
+DESCRIPTION="Send commands to some microcontrollers, e.g., to change LEDs or sound a buzzer"
+HOMEPAGE="http://qnap.nas-central.org/index.php/PIC_Control_Software"
+SRC_URI="mirror://debian/pool/main/q/qcontrol/${P/-/_}.orig.tar.gz
+ mirror://debian/pool/main/q/qcontrol/${P/-/_}-6.diff.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="arm"
+IUSE=""
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="${LUA_DEPS}"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ eapply "${WORKDIR}"/*.diff
+ eapply debian/patches/*.patch
+ eapply "${FILESDIR}"/${PV}-Makefile.patch
+
+ sed -i -e "s/LDFLAGS=/LDFLAGS ?=/" Makefile || die
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="$(lua_get_CFLAGS) ${CFLAGS}" \
+ LDFLAGS="$(lua_get_LIBS) -lpthread ${LDFLAGS}" \
+ qcontrol
+}
+
+src_install() {
+ dosbin qcontrol
+ doman debian/qcontrol.1
+
+ insinto /etc/qcontrol
+ doins debian/configs/*.lua
+
+ newconfd "${FILESDIR}"/conf.d qcontrol
+ newinitd "${FILESDIR}"/init.d qcontrol
+}
+
+pkg_preinst() {
+ device=$(grep "Hardware[[:space:]]*:" /proc/cpuinfo 2>/dev/null | \
+ head -n1 | sed "s/^[^:]*: //")
+ case ${device} in
+ "QNAP TS-109/TS-209")
+ dosym qcontrol/ts209.lua /etc/qcontrol.conf ;;
+ "QNAP TS-119/TS-219")
+ dosym qcontrol/ts219.lua /etc/qcontrol.conf ;;
+ "QNAP TS-409")
+ dosym qcontrol/ts409.lua /etc/qcontrol.conf ;;
+ "QNAP TS-41x")
+ dosym qcontrol/ts41x.lua /etc/qcontrol.conf ;;
+ *)
+ ewarn "Your device is unsupported" ;;
+ esac
+}
diff --git a/sys-apps/qdirstat/Manifest b/sys-apps/qdirstat/Manifest
index c25b372fbe37..3dd12d47b464 100644
--- a/sys-apps/qdirstat/Manifest
+++ b/sys-apps/qdirstat/Manifest
@@ -1 +1 @@
-DIST qdirstat-1.7.tar.gz 8057173 BLAKE2B 7de2d74933dcce190240569ca043faf76925592576016090498ae21d2074a79aa9b1313fa491c270d5a841238cb35007a85ca3de9c343a353b3de9235f9e5032 SHA512 9af03c110663eab0df48f69f7d949421feebfdca1299205d25a216587cf2c9e472cbe99ad98f3cd6c783be2b02e0308cdbc2f5549bf662b3061ff5e059317b01
+DIST qdirstat-1.9.tar.gz 9529866 BLAKE2B 3beb40381bf21f04651dcdab27086860ce428fed1e08e5ef6ca2f5e6048b56890554e29aa29db72f1869c7d7b94a964445cb93679d8dcaa4d38e6c24e07af28f SHA512 f70c5ed86daca8f2f081afec213908f51b621f043173f7906903bcf9e955d67c5906a2588622f7c57d753e6f839ed061420c0cdb76168c7b9d70ddf64f0f23ff
diff --git a/sys-apps/qdirstat/metadata.xml b/sys-apps/qdirstat/metadata.xml
index efe821e794ca..ba245f43a2e0 100644
--- a/sys-apps/qdirstat/metadata.xml
+++ b/sys-apps/qdirstat/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/qdirstat/qdirstat-1.7.ebuild b/sys-apps/qdirstat/qdirstat-1.7.ebuild
deleted file mode 100644
index 1417eaf6d6f7..000000000000
--- a/sys-apps/qdirstat/qdirstat-1.7.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit qmake-utils xdg-utils
-
-DESCRIPTION="Qt-based directory statistics"
-HOMEPAGE="https://github.com/shundhammer/qdirstat"
-SRC_URI="https://github.com/shundhammer/qdirstat/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-DEPEND="
- dev-qt/qtgui:5
- dev-qt/qtcore:5
- dev-qt/qtwidgets:5
- sys-libs/zlib
-"
-
-RDEPEND="
- ${DEPEND}
- dev-lang/perl
- dev-perl/URI
-"
-
-src_prepare() {
- default
-
- # Fix QA warning about incorrect use of doc path
- sed -e "/doc.path/s/${PN}/${PF}/" -i doc/doc.pro doc/stats/stats.pro || die
-}
-
-src_configure() {
- eqmake5
-}
-
-src_install() {
- emake INSTALL_ROOT="${ED}" install
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- xdg_icon_cache_update
-}
diff --git a/sys-apps/qdirstat/qdirstat-1.9.ebuild b/sys-apps/qdirstat/qdirstat-1.9.ebuild
new file mode 100644
index 000000000000..729da35e96e9
--- /dev/null
+++ b/sys-apps/qdirstat/qdirstat-1.9.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qmake-utils xdg-utils
+
+DESCRIPTION="Qt-based directory statistics"
+HOMEPAGE="https://github.com/shundhammer/qdirstat"
+SRC_URI="https://github.com/shundhammer/qdirstat/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+DEPEND="
+ dev-qt/qtgui:5
+ dev-qt/qtcore:5
+ dev-qt/qtwidgets:5
+ sys-libs/zlib
+"
+
+RDEPEND="
+ ${DEPEND}
+ dev-lang/perl
+ dev-perl/URI
+"
+
+src_prepare() {
+ default
+
+ # Fix QA warning about incorrect use of doc path
+ sed -e "/doc.path/s/${PN}/${PF}/" -i doc/doc.pro doc/stats/stats.pro || die
+
+ # Don't install compressed man pages
+ sed -e '/gzip/d' -e 's/.gz//g' -i man/man.pro || die
+}
+
+src_configure() {
+ eqmake5
+}
+
+src_install() {
+ emake INSTALL_ROOT="${ED}" install
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/sys-apps/qingy/metadata.xml b/sys-apps/qingy/metadata.xml
index 6d78e724dd63..ff40f99a6e5b 100644
--- a/sys-apps/qingy/metadata.xml
+++ b/sys-apps/qingy/metadata.xml
@@ -1,14 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="opensslcrypt">Encrypt communications between qingy and its GUI using <pkg>dev-libs/openssl</pkg></flag>
-</use>
-<upstream>
- <remote-id type="sourceforge">qingy</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">qingy</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/qingy/qingy-1.0.0-r4.ebuild b/sys-apps/qingy/qingy-1.0.0-r4.ebuild
deleted file mode 100644
index 2aae7adf571d..000000000000
--- a/sys-apps/qingy/qingy-1.0.0-r4.ebuild
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools elisp-common eutils pam systemd
-
-GENTOO_THEME_VERSION="2.1"
-
-DESCRIPTION="A DirectFB getty replacement"
-HOMEPAGE="http://qingy.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2
- mirror://gentoo/${PN}-gentoo-theme-${GENTOO_THEME_VERSION}.tar.bz2
- https://dev.gentoo.org/~gienah/2big4tree/sys-apps/qingy/${P}-screensavers.patch.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE="crypt emacs gpm opensslcrypt pam static X"
-
-RDEPEND="
- >=sys-libs/ncurses-5.7-r7:=
- opensslcrypt? ( dev-libs/openssl:0= )
- crypt? ( >=dev-libs/libgcrypt-1.2.1:0= )
- emacs? ( >=app-editors/emacs-23.1:* )
- pam? ( >=sys-libs/pam-0.75-r11 )
- X? (
- x11-libs/libX11:=
- x11-libs/libXScrnSaver:=
- )
-"
-DEPEND="${RDEPEND}
- >=sys-apps/sed-4.1.4-r1
- virtual/pkgconfig
-"
-RDEPEND="${RDEPEND}
- pam? ( sys-auth/pambase )
-"
-
-SITEFILE="50${PN}-gentoo.el"
-
-src_prepare() {
- eapply "${FILESDIR}"/${P}-tinfo.patch
- # bug #359637 and bug #462634 - fixes from upstream
- epatch "${DISTDIR}"/${P}-screensavers.patch.gz
- default
- mv configure.in configure.ac || die
- eautoreconf
-}
-
-src_configure() {
- local crypto_support="--disable-crypto"
- local emacs_support="--disable-emacs --without-lispdir"
-
- if use crypt && use opensslcrypt; then
- echo
- ewarn "You can have openssl or libgcrypt as a crypto library, not both."
- ewarn "Using libgcrypt now..."
- echo
- fi
-
- use emacs && emacs_support="--enable-emacs --with-lispdir=${SITELISP}/${PN}"
- use opensslcrypt && crypto_support="--enable-crypto=openssl"
- use crypt && crypto_support="--enable-crypto=libgcrypt"
- econf \
- --sbindir=/sbin \
- --disable-optimizations \
- --disable-static \
- --disable-DirectFB-support \
- $(use_enable pam) \
- $(use_enable static static-build) \
- $(use_enable gpm gpm-lock) \
- $(use_enable X x-support) \
- ${crypto_support} \
- ${emacs_support}
-}
-
-src_install() {
- # Copy documentation manually as make install only installs info files
- # INSTALL is left because it contains also configuration informations
- dodoc AUTHORS ChangeLog INSTALL NEWS README THANKS TODO
-
- # Install the program
- default
- find "${D}" -name '*.la' -delete || die
-
- # Set the settings file umask to 600, in case somebody
- # wants to make use of the autologin feature
- /bin/chmod 600 "${D}"/etc/qingy/settings
-
- # Install Gentoo theme
- dodir /usr/share/${PN}/themes/gentoo
- cp "${WORKDIR}"/gentoo/* "${D}"/usr/share/${PN}/themes/gentoo || die
-
- # Alter config file so that it uses our theme
- sed -i 's/theme = "default"/theme = "gentoo"/' "${D}"/etc/${PN}/settings
-
- # Install log rotation policy
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/${PN}-logrotate ${PN}
-
- use emacs && elisp-site-file-install "${FILESDIR}"/${SITEFILE}
-
- rm "${D}"/etc/pam.d/qingy
- pamd_mimic system-local-login qingy auth account password session
-
- systemd_newunit "${FILESDIR}/${PN}_at.service" "${PN}@.service"
-}
-
-pkg_postinst() {
- einfo "In order to use qingy you must first edit your /etc/inittab"
- einfo "Check the documentation at ${HOMEPAGE}"
- einfo "for instructions on how to do that."
- echo
- einfo "Also, make sure to adjust qingy settings file (/etc/qingy/settings)"
- einfo "to your preferences/machine configuration..."
-
- if use crypt; then
- echo
- einfo "You will have to create a key pair using 'qingy-keygen'"
- echo
- ewarn "Note that sometimes a generated key-pair may pass the internal tests"
- ewarn "but fail to work properly. You will get a 'regenerate your keys'"
- ewarn "message. If this is your case, please remove /etc/qingy/public_key"
- ewarn "and /etc/qingy/private_key and run qingy-keygen again..."
- fi
-
- use emacs && echo && elisp-site-regen
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-}
diff --git a/sys-apps/qingy/qingy-1.0.0-r6.ebuild b/sys-apps/qingy/qingy-1.0.0-r6.ebuild
new file mode 100644
index 000000000000..3c0a19cf677b
--- /dev/null
+++ b/sys-apps/qingy/qingy-1.0.0-r6.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools elisp-common flag-o-matic pam systemd
+
+GENTOO_THEME_VERSION="2.1"
+
+DESCRIPTION="A DirectFB getty replacement"
+HOMEPAGE="http://qingy.sourceforge.net/"
+SRC_URI="
+ mirror://sourceforge/${PN}/${P}.tar.bz2
+ mirror://gentoo/${PN}-gentoo-theme-${GENTOO_THEME_VERSION}.tar.bz2
+ https://dev.gentoo.org/~gienah/2big4tree/sys-apps/qingy/${P}-screensavers.patch.gz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="crypt emacs gpm pam static X"
+
+DEPEND="
+ >=sys-libs/ncurses-5.7-r7:=
+ crypt? ( >=dev-libs/libgcrypt-1.2.1:= )
+ emacs? ( >=app-editors/emacs-23.1:* )
+ pam? ( >=sys-libs/pam-0.75-r11 )
+ X? (
+ x11-libs/libX11:=
+ x11-libs/libXScrnSaver:=
+ )
+"
+RDEPEND="
+ ${RDEPEND}
+ pam? ( sys-auth/pambase )
+"
+BDEPEND="virtual/pkgconfig"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-tinfo.patch
+ # bug #359637 and bug #462634 - fixes from upstream
+ "${WORKDIR}"/${P}-screensavers.patch
+)
+
+src_prepare() {
+ default
+
+ mv configure.in configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ append-cflags -fcommon
+
+ local myeconfargs=(
+ --sbindir=/sbin
+ --with-lispdir="${SITELISP}"/${PN}
+ --disable-optimizations
+ --disable-static
+ --disable-DirectFB-support
+
+ $(use_enable emacs)
+ $(use_enable pam)
+ $(use_enable static static-build)
+ $(use_enable gpm gpm-lock)
+ $(use_enable X x-support)
+ $(use_enable crypt crypto libgcrypt)
+ )
+
+ CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ # Copy documentation manually as make install only installs info files
+ # INSTALL is left because it contains also configuration informations
+ dodoc AUTHORS ChangeLog INSTALL NEWS README THANKS TODO
+
+ # Install the program
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+
+ # Set the settings file umask to 600, in case somebody
+ # wants to make use of the autologin feature
+ fperms 600 /etc/qingy/settings
+
+ # Install Gentoo theme
+ dodir /usr/share/${PN}/themes/gentoo
+ cp "${WORKDIR}"/gentoo/* "${ED}"/usr/share/${PN}/themes/gentoo || die
+
+ # Alter config file so that it uses our theme
+ sed -i 's/theme = "default"/theme = "gentoo"/' "${ED}"/etc/${PN}/settings || die
+
+ # Install log rotation policy
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}-logrotate ${PN}
+
+ use emacs && elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+
+ rm "${ED}"/etc/pam.d/qingy || die
+
+ if use pam; then
+ pamd_mimic system-local-login qingy auth account password session
+ fi
+
+ systemd_newunit "${FILESDIR}/${PN}_at.service" "${PN}@.service"
+}
+
+pkg_postinst() {
+ einfo "In order to use qingy you must first edit your ${EROOT}/etc/inittab"
+ einfo "Check the documentation at ${HOMEPAGE}"
+ einfo "for instructions on how to do that."
+ echo
+ einfo "Also, make sure to adjust qingy settings file (${EROOT}/etc/qingy/settings)"
+ einfo "to your preferences/machine configuration..."
+
+ if use crypt; then
+ echo
+ einfo "You will have to create a key pair using 'qingy-keygen'"
+ echo
+ ewarn "Note that sometimes a generated key-pair may pass the internal tests"
+ ewarn "but fail to work properly. You will get a 'regenerate your keys'"
+ ewarn "message. If this is your case, please remove ${EROOT}/etc/qingy/public_key"
+ ewarn "and ${EROOT}/etc/qingy/private_key and run qingy-keygen again..."
+ fi
+
+ use emacs && echo && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sys-apps/radeontool/Manifest b/sys-apps/radeontool/Manifest
new file mode 100644
index 000000000000..3244b15ce452
--- /dev/null
+++ b/sys-apps/radeontool/Manifest
@@ -0,0 +1 @@
+DIST radeontool-1.6.3_p20181127.tar.gz 145939 BLAKE2B ba445095a45d0754c3d20fb45cb75754618d88c9ed23c988926323e9194ef3a8c6ea37c13880d6878750587e6de283a82789c98a6225e303edf7579a327261c2 SHA512 48779a1d7d4ceb79acaef4ba93074ee06b4ee0a02db42fbf1faa7cdc462e21e6c7450dd71c435788e54b99595e61f255154a672bfb8d76acb2d30f560ee6eca4
diff --git a/sys-apps/radeontool/metadata.xml b/sys-apps/radeontool/metadata.xml
new file mode 100644
index 000000000000..bf7237c7b6cb
--- /dev/null
+++ b/sys-apps/radeontool/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
+ </maintainer>
+ <longdescription>
+ Utility to control some functions of AMD/ATI Radeon chips:
+ - Turning on/off external DAC
+ - Turning on/off lcd panel backlight
+ - Turn on/off LCD scaling for resolution mismatch
+ - Dumping registers
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-apps/radeontool/radeontool-1.6.3_p20181127-r1.ebuild b/sys-apps/radeontool/radeontool-1.6.3_p20181127-r1.ebuild
new file mode 100644
index 000000000000..fef65cd44426
--- /dev/null
+++ b/sys-apps/radeontool/radeontool-1.6.3_p20181127-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EGIT_COMMIT="0a672473f583c6e4df3b1714d4af79653910811e"
+
+inherit autotools
+
+DESCRIPTION="Utility to get/set registers and controlling backlight on radeon based GPUs"
+HOMEPAGE="https://cgit.freedesktop.org/~airlied/radeontool/"
+SRC_URI="https://dev.gentoo.org/~conikost/distfiles/${P}.tar.gz"
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86"
+
+RDEPEND="x11-libs/libpciaccess"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/razer-cli/Manifest b/sys-apps/razer-cli/Manifest
new file mode 100644
index 000000000000..2e3580d0364b
--- /dev/null
+++ b/sys-apps/razer-cli/Manifest
@@ -0,0 +1,2 @@
+DIST razer-cli-2.2.0.gh.tar.gz 6985679 BLAKE2B 2ed6a343759a2fb1a74accc509fd862330226bb407cc1f6c276ab06d1c6719ee5c358041dfd35ad596885499c5affbef79fdc14aed331b466f2d383e5d552b26 SHA512 a82b2bc29bee30a0994c3f061809e63ffb2b8cca651ad09641fcf9bdc3dd370614ca6d6d8305345573810e20dc2cde96a48979bcfad1473a83c509cd322ab471
+DIST razer-cli-2.2.1.gh.tar.gz 6985735 BLAKE2B 0ee1f4a123ca7bd853ca71b5962bd26339c0a51941f8d51e478d43ba96559227d89383d9ba8bf054cb9dec708d6abc0903a9537a55a05eecb56b0e4448e78001 SHA512 e0b6302ea599c578f9445ebfba90bc942c9fa1aec02ad836790318ea91b7f07f0c38aca49267b320b0576fdcc11c9ab98da019026eb06476ec016619b5aafe65
diff --git a/sys-apps/razer-cli/files/razer-cli-setup.patch b/sys-apps/razer-cli/files/razer-cli-setup.patch
new file mode 100644
index 000000000000..de0aee5cc68b
--- /dev/null
+++ b/sys-apps/razer-cli/files/razer-cli-setup.patch
@@ -0,0 +1,9 @@
+--- a/setup.py
++++ b/setup.py
+@@ -20,6 +20,4 @@ setup(
+ packages=find_packages(),
+ entry_points={"console_scripts": ["razer-cli=razer_cli.razer_cli.main:main"]},
+ python_requires=">=3.6",
+- package_data={'': ['razer_cli/razer_cli/man_pages']},
+- include_package_data=True,
+ )
diff --git a/sys-apps/razer-cli/metadata.xml b/sys-apps/razer-cli/metadata.xml
new file mode 100644
index 000000000000..2141ca61c288
--- /dev/null
+++ b/sys-apps/razer-cli/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <longdescription>
+ With this command line interface you can configure your Razer peripherals,
+ such as keyboard and mouse, set their colors and effects, etc. The most
+ simple use case (for which this tool was originally developed) is to use it
+ in symbiosis with pywal. Then this tool will set your Razer colors to
+ Pywal's colors.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/LoLei/razer-cli/-/issues/</bugs-to>
+ <remote-id type="github">LoLei/razer-cli</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/razer-cli/razer-cli-2.2.0.ebuild b/sys-apps/razer-cli/razer-cli-2.2.0.ebuild
new file mode 100644
index 000000000000..8c9929f1801b
--- /dev/null
+++ b/sys-apps/razer-cli/razer-cli-2.2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Command line interface for controlling Razer devices on Linux"
+HOMEPAGE="https://github.com/LoLei/razer-cli/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/LoLei/${PN}.git"
+else
+ SRC_URI="https://github.com/LoLei/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="amd64 ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+
+RDEPEND="
+ sys-apps/openrazer[client,daemon,${PYTHON_USEDEP}]
+ x11-apps/xrdb
+"
+BDEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-setup.patch )
+
+distutils_enable_tests unittest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/sys-apps/razer-cli/razer-cli-2.2.1.ebuild b/sys-apps/razer-cli/razer-cli-2.2.1.ebuild
new file mode 100644
index 000000000000..e3bc0dec77e5
--- /dev/null
+++ b/sys-apps/razer-cli/razer-cli-2.2.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Command line interface for controlling Razer devices on Linux"
+HOMEPAGE="https://github.com/LoLei/razer-cli/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/LoLei/${PN}.git"
+else
+ SRC_URI="https://github.com/LoLei/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+
+RDEPEND="
+ sys-apps/openrazer[client,daemon,${PYTHON_USEDEP}]
+ x11-apps/xrdb
+"
+BDEPEND="
+ ${RDEPEND}
+"
+
+PATCHES=( "${FILESDIR}/${PN}-setup.patch" )
+
+distutils_enable_tests unittest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/sys-apps/razercfg/Manifest b/sys-apps/razercfg/Manifest
index d8ef4efa14f8..5699716bb14e 100644
--- a/sys-apps/razercfg/Manifest
+++ b/sys-apps/razercfg/Manifest
@@ -1,2 +1 @@
-DIST razercfg-0.39.tar.bz2 178142 BLAKE2B cf2d92d24a0dbfdae4045c2dab30a64bc4de64d730c075a4d852790ff62bcbadd714953fac925e69b671355cbdfdec7ce9db5693fbfa8e2aab69de6247c95c1a SHA512 165fee898a01b7f0086eb6705ef9f24fd8b8836025c071f7851a493181b8d193d0db70fc1731a8586de1f1c795aab4d20bb4ee8526b612c66ba3c434c6e10137
DIST razercfg-0.42.tar.xz 103300 BLAKE2B 83f9432edf4deda78514dd1e2a65e04981d3646c543ebf3b74060f5d6ee5f9c3ddec5b0c544c11c9968c790172ae2bd4d4503adaf1428ca31337fdcd33d8545c SHA512 3856f4133b620fb639a46a5bb02fe8e6c47ae3928a04fe9d1bbef2792a44fdd4f5dff2efa43a1e43d75312025d3c65c626e331e723092e4e0b8d6622657fb197
diff --git a/sys-apps/razercfg/metadata.xml b/sys-apps/razercfg/metadata.xml
index e10f5181e6fe..fe2db70cfb0d 100644
--- a/sys-apps/razercfg/metadata.xml
+++ b/sys-apps/razercfg/metadata.xml
@@ -1,26 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>kaikaikai@yandex.ru</email>
- <name>Alexey Korepanov</name>
- </maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <use>
- <flag name="pm-utils">Installs the pm-utils hooks for suspend/resume and
- requires <pkg>sys-power/pm-utils</pkg></flag>
- <flag name="gui">Installs GUI configuration utility and status bar applet.
- Requires <pkg>dev-python/PyQt5</pkg></flag>
- </use>
- <longdescription>
- The next generation Razer device configuration tool bringing the Razer gaming
- experience to the free OpenSource world.
- The tool architecture is based on "razerd", which is a background daemon doing
- all of the lowlevel privileged hardware accesses. The user interface tools are
- "razercfg", a commandline tool; and "qrazercfg", a Qt based graphical device
- configuration tool.
- </longdescription>
+ <!-- maintainer-needed -->
+ <use>
+ <flag name="gui">Installs GUI configuration utility and status bar applet.
+ Requires <pkg>dev-python/PyQt5</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="github">mbuesch/razer</remote-id>
+ </upstream>
+ <longdescription>
+ The next generation Razer device configuration tool bringing the Razer gaming
+ experience to the free OpenSource world.
+ The tool architecture is based on "razerd", which is a background daemon doing
+ all of the lowlevel privileged hardware accesses. The user interface tools are
+ "razercfg", a commandline tool; and "qrazercfg", a Qt based graphical device
+ configuration tool.
+ </longdescription>
</pkgmetadata>
diff --git a/sys-apps/razercfg/razercfg-0.39-r2.ebuild b/sys-apps/razercfg/razercfg-0.39-r2.ebuild
deleted file mode 100644
index 2d13385579e2..000000000000
--- a/sys-apps/razercfg/razercfg-0.39-r2.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_6 )
-
-inherit cmake-utils python-single-r1 systemd udev
-
-DESCRIPTION="Utility for advanced configuration of Razer mice"
-HOMEPAGE="https://bues.ch/cms/hacking/razercfg.html"
-SRC_URI="https://bues.ch/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+pm-utils +udev"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="${PYTHON_DEPS}
- virtual/libusb:1
- pm-utils? ( sys-power/pm-utils )
- udev? ( virtual/udev )
-"
-DEPEND="${PYTHON_DEPS}
- $(python_gen_cond_dep '
- dev-python/setuptools[${PYTHON_MULTI_USEDEP}]
- ')
- virtual/libusb:1
- virtual/pkgconfig
-"
-
-PATCHES=( "${FILESDIR}/${P}-unit-variables.patch" )
-
-src_prepare() {
- cmake-utils_src_prepare
-
- sed -i CMakeLists.txt \
- -e '/udevadm control/{N;d}' \
- -e '/systemctl/{N;d}' \
- -e "s:/etc/pm/sleep.d:/usr/$(get_libdir)/pm-utils/sleep.d/:" \
- -e 's:50-razer:80razer:' \
- || die
-
- sed -i librazer/CMakeLists.txt \
- -e '/ldconfig/{N;d}' \
- -e "s:DESTINATION lib:DESTINATION $(get_libdir):" \
- || die
-
- sed -i razercfg.desktop.template \
- -e '/^Categories=/s/=.*$/=Qt;Settings/' \
- || die
-}
-
-src_configure() {
- local mycmakeargs=(
- -DPYTHON="${PYTHON}"
- -DSYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)"
- -DUDEV_DIR="$(get_udevdir)"
- )
- RAZERCFG_PKG_BUILD=1 cmake-utils_src_configure
-}
-
-src_install() {
- RAZERCFG_PKG_BUILD=1 cmake-utils_src_install
-
- newinitd "${FILESDIR}"/razerd.init.d-r2 razerd
- dodoc README.* HACKING.* razer.conf
-
- rm "${D%/}"/usr/bin/qrazercfg{,-applet} || die
- rm "${D%/}"/usr/share/icons/hicolor/scalable/apps/razercfg* || die
- rm "${D%/}"/usr/share/applications/razercfg.desktop || die
-
- if ! use pm-utils; then
- rm "${D%/}/usr/$(get_libdir)/pm-utils/sleep.d/80razer" || die
- fi
-}
-
-pkg_postinst() {
- if use udev ; then
- udevadm control --reload-rules
- udevadm trigger --subsystem-match=usb
- fi
-
- if [[ -e "${ROOT%/}"/usr/bin/pyrazer.pyc ]]; then
- eerror "A stale ${ROOT}usr/bin/pyrazer.pyc exists and will prevent"
- eerror "the Python frontends from working until removed manually."
- fi
-}
diff --git a/sys-apps/razercfg/razercfg-0.42-r1.ebuild b/sys-apps/razercfg/razercfg-0.42-r1.ebuild
new file mode 100644
index 000000000000..d4ebc90bca0f
--- /dev/null
+++ b/sys-apps/razercfg/razercfg-0.42-r1.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit cmake python-single-r1 systemd tmpfiles udev xdg-utils
+
+DESCRIPTION="Utility for advanced configuration of Razer mice"
+HOMEPAGE="https://bues.ch/cms/hacking/razercfg.html https://github.com/mbuesch/razer"
+SRC_URI="https://bues.ch/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gui +udev"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="${PYTHON_DEPS}
+ virtual/libusb:1
+"
+BDEPEND="virtual/pkgconfig"
+RDEPEND="${DEPEND}
+ gui? (
+ $(python_gen_cond_dep '
+ dev-python/PyQt5[${PYTHON_USEDEP}]
+ ')
+ )
+ udev? ( virtual/udev )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-0.39-unit-variables.patch" )
+
+src_prepare() {
+ cmake_src_prepare
+
+ # Don't clobber toolchain defaults
+ sed -i -e '/-D_FORTIFY_SOURCE=2/d' scripts/cmake.global || die
+
+ sed -i librazer/CMakeLists.txt \
+ -e '/ldconfig/{N;d}' \
+ -e "s:DESTINATION lib:DESTINATION $(get_libdir):" \
+ || die
+
+ sed -i ui/razercfg.desktop.template \
+ -e '/^Categories=/s/=.*$/=Qt;Settings/' \
+ || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DPYTHON="${PYTHON}"
+ -DSYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)"
+ -DUDEV_DIR="$(get_udevdir)"
+ )
+ RAZERCFG_PKG_BUILD=1 cmake_src_configure
+}
+
+src_install() {
+ RAZERCFG_PKG_BUILD=1 cmake_src_install
+
+ python_optimize
+
+ newinitd "${FILESDIR}"/razerd.init.d-r2 razerd
+ dodoc README.* HACKING.* razer.conf
+
+ if ! use gui; then
+ rm "${D}"/usr/bin/qrazercfg{,-applet} || die
+ rm -r "${D}"/usr/share/icons || die
+ rm -r "${D}"/usr/share/applications || die
+ fi
+
+ # sys-power/pm-utils is deprecated, so we delete related files
+ # (they contain a hook for resume from suspend)
+ # TODO: test resume from suspend
+ rm -r "${D}/etc/pm" || die
+}
+
+pkg_postinst() {
+ if use udev ; then
+ udevadm control --reload-rules
+ udevadm trigger --subsystem-match=usb
+ fi
+
+ xdg_icon_cache_update
+
+ tmpfiles_process razerd.conf
+
+ if [[ -e "${ROOT}/usr/bin/pyrazer.pyc" ]]; then
+ eerror "A stale ${ROOT}/usr/bin/pyrazer.pyc exists and will prevent"
+ eerror "the Python frontends from working until removed manually."
+ fi
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}
diff --git a/sys-apps/razercfg/razercfg-0.42.ebuild b/sys-apps/razercfg/razercfg-0.42.ebuild
index 1236531897a3..a7e7db3cb1d6 100644
--- a/sys-apps/razercfg/razercfg-0.42.ebuild
+++ b/sys-apps/razercfg/razercfg-0.42.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_COMPAT=( python3_{9..10} )
-inherit cmake python-single-r1 systemd tmpfiles udev
+inherit cmake python-single-r1 systemd tmpfiles udev xdg-utils
DESCRIPTION="Utility for advanced configuration of Razer mice"
HOMEPAGE="https://bues.ch/cms/hacking/razercfg.html https://github.com/mbuesch/razer"
diff --git a/sys-apps/razercommander/Manifest b/sys-apps/razercommander/Manifest
new file mode 100644
index 000000000000..ca4f19757db8
--- /dev/null
+++ b/sys-apps/razercommander/Manifest
@@ -0,0 +1 @@
+DIST razerCommander-1.2.1.2.tar.gz 8400936 BLAKE2B 855af7f5888a63995646803da2fb0df8c9a07dc87713895c4b6edb0fe53cc68bdd4ce1c3143c4b2728942ab68bb2e6c3ce942a3aa2647212ee41cf309b6d2c4f SHA512 3eabe79ee8b0f625aaf567b6d5707aadd1fbba3cc0840a8cabe12c0dd2f0617ea7b2aa328366a88c07bd5cadf5fd228f74512d6a0df2a98474a4d88e98431c54
diff --git a/sys-apps/razercommander/metadata.xml b/sys-apps/razercommander/metadata.xml
new file mode 100644
index 000000000000..71a7b67c3223
--- /dev/null
+++ b/sys-apps/razercommander/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://gitlab.com/gabmus/razerCommander/-/issues/</bugs-to>
+ <remote-id type="gitlab">gabmus/razerCommander</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/razercommander/razercommander-1.2.1.2-r1.ebuild b/sys-apps/razercommander/razercommander-1.2.1.2-r1.ebuild
new file mode 100644
index 000000000000..91e87705a06e
--- /dev/null
+++ b/sys-apps/razercommander/razercommander-1.2.1.2-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="razerCommander"
+MY_P=${MY_PN}-${PV}
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit meson python-single-r1 xdg
+
+DESCRIPTION="GTK contol center for managing Razer peripherals on Linux"
+HOMEPAGE="https://gitlab.com/gabmus/razerCommander/"
+SRC_URI="https://gitlab.com/gabmus/${MY_PN}/-/archive/${PV}/${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=x11-libs/gtk+-3.20:3[introspection]
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ sys-apps/openrazer[client,daemon,${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="${RDEPEND}"
+
+src_install() {
+ meson_src_install
+ python_optimize
+}
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch b/sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch
new file mode 100644
index 000000000000..bd8052139f62
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch
@@ -0,0 +1,44 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 8cfc35923827b6f6e3aff9641aa4cb7c4ac7949c Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:33:44 +0000
+Subject: [PATCH 1/6] Modernise autotools
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,14 +1,14 @@
+ # Copyright (C) 2004-2005 Robin Hugh Johnson <robbat2@orbis-terrarum.net>
+-#
++#
+ # This file is free software; as a special exception the author gives
+-# unlimited permission to copy and/or distribute it, with or without
++# unlimited permission to copy and/or distribute it, with or without
+ # modifications, as long as this notice is preserved.
+-#
++#
+ # This program is distributed in the hope that it will be useful, but
+ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+-AC_PREREQ(2.59)
++AC_PREREQ([2.71])
+ # version stamp is 0.YYYYMMDD.HHMM in UTC!
+ # date +"1.%Y%m%d.%H%M" -u
+ AC_INIT([readahead-list],[1.20060421.1016],[Robin H. Johnson robbat2@orbis-terrarum.net],[readahead-list])
+@@ -38,11 +38,9 @@ AC_PATH_PROG(SED, sed, sed)
+ AC_PATH_PROG(CMP, cmp, cmp)
+
+ AC_CANONICAL_HOST
+-LF_SET_WARNINGS
+ AC_PROG_RANLIB
+
+ # Checks for header files.
+-AC_HEADER_STDC
+ AC_CHECK_HEADERS([ errno.h fcntl.h getopt.h linux/fs.h sched.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/syscall.h sys/types.h unistd.h ])
+
+ # Checks for typedefs, structures, and compiler characteristics.
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch b/sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch
new file mode 100644
index 000000000000..3e368ef40829
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch
@@ -0,0 +1,70 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 37e699689661249c88a020681a70cd0633ee7ef4 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:34:38 +0000
+Subject: [PATCH 2/6] Set -D_GNU_SOURCE for readahead() to fix
+ -Wimplicit-function-declaration
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+readahead-list.c: In function ‘process_file’:
+readahead-list.c:111:17: error: implicit declaration of function ‘readahead’ [-Werror=implicit-function-declaration]
+ 111 | readahead(fd, (loff_t)0, (size_t)buf.st_size);
+ | ^~~~~~~~~
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -40,6 +40,9 @@ AC_PATH_PROG(CMP, cmp, cmp)
+ AC_CANONICAL_HOST
+ AC_PROG_RANLIB
+
++# Provides _GNU_SOURCE for readahead()
++AC_USE_SYSTEM_EXTENSIONS
++
+ # Checks for header files.
+ AC_CHECK_HEADERS([ errno.h fcntl.h getopt.h linux/fs.h sched.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/syscall.h sys/types.h unistd.h ])
+
+--- a/src/filelist-order.cxx
++++ b/src/filelist-order.cxx
+@@ -14,6 +14,9 @@
+ // along with this program; if not, write to the Free Software
+ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ //
++
++#include <../config.h>
++
+ #include <map>
+ #include <set>
+ #include <iostream>
+@@ -31,7 +34,6 @@
+
+ #include <fcntl.h>
+ #include <linux/fs.h>
+-#include <../config.h>
+
+ #ifndef BUFFER_SIZE
+ #define BUFFER_SIZE 2048
+--- a/src/readahead-list.c
++++ b/src/readahead-list.c
+@@ -19,6 +19,7 @@
+ // Based on code originally written by Erich Schubert <erich@debian.org>.
+ // $Header: /code/convert/cvsroot/infrastructure/readahead-list/src/readahead-list.c,v 1.5 2006/04/21 10:13:54 robbat2 Exp $
+
++#include <../config.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+@@ -31,7 +32,6 @@
+ #include <sched.h>
+ #include <string.h>
+ #include <errno.h>
+-#include <../config.h>
+
+ #if __STDC_VERSION__ < 199901L
+ # if __GNUC__ >= 2
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch b/sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch
new file mode 100644
index 000000000000..dc1a092eb117
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch
@@ -0,0 +1,43 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 9d7b7a13ac265b76bb7933072a20bf462e5377a6 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:35:38 +0000
+Subject: [PATCH 3/6] Simplify setting up Large File Support (use
+ AC_SYS_LARGEFILE)
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -13,18 +13,15 @@ AC_PREREQ([2.71])
+ # date +"1.%Y%m%d.%H%M" -u
+ AC_INIT([readahead-list],[1.20060421.1016],[Robin H. Johnson robbat2@orbis-terrarum.net],[readahead-list])
+
+-LFS_CPPFLAGS="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
+ WARN_CFLAGS="-Wall -W"
+ CFLAGS="$CFLAGS $WARN_CFLAGS"
+ CXXFLAGS="$CXXFLAGS $WARN_CFLAGS"
+-CPPFLAGS="$CPPFLAGS $LFS_CPPFLAGS"
+-export CFLAGS CXXFLAGS CPPFLAGS
++export CFLAGS CXXFLAGS
+
+ AC_CONFIG_AUX_DIR(config)
+ AC_CONFIG_HEADERS([config.h])
+ AM_INIT_AUTOMAKE([dist-bzip2])
+
+-
+ # Checks for programs.
+ AC_PROG_AWK
+ AC_PROG_CC
+@@ -43,6 +40,8 @@ AC_PROG_RANLIB
+ # Provides _GNU_SOURCE for readahead()
+ AC_USE_SYSTEM_EXTENSIONS
+
++AC_SYS_LARGEFILE
++
+ # Checks for header files.
+ AC_CHECK_HEADERS([ errno.h fcntl.h getopt.h linux/fs.h sched.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/syscall.h sys/types.h unistd.h ])
+
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch b/sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch
new file mode 100644
index 000000000000..c9a23e309b66
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch
@@ -0,0 +1,22 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From f0f32adfb4eaf26e33fc1655a22a529961257db9 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:38:01 +0000
+Subject: [PATCH 4/6] filelist-order.cxx: Add missing <cstdlib> include for
+ exit()
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/filelist-order.cxx
++++ b/src/filelist-order.cxx
+@@ -17,6 +17,7 @@
+
+ #include <../config.h>
+
++#include <cstdlib>
+ #include <map>
+ #include <set>
+ #include <iostream>
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch b/sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch
new file mode 100644
index 000000000000..7c456001e404
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch
@@ -0,0 +1,50 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 4a22080a30c8906f99eb5899218b9a5f1291b634 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:57:43 +0000
+Subject: [PATCH 5/6] Fix build with modern C++
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+```
+filelist-order.cxx: In function ‘void printItem(std::pair<mapkey*, const char*>, std::vector<OrderField*>*)’:
+filelist-order.cxx:276:37: error: unable to find string literal operator ‘operator""fmt’ with ‘const char [3]’, ‘long unsigned int’ arguments
+ 276 | #define case_entry(fmt,func) printf("%s"fmt,(first ? "" : " "),func_##func(mk)); break;
+ | ^~~~~~~
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/filelist-order.cxx
++++ b/src/filelist-order.cxx
+@@ -15,8 +15,6 @@
+ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ //
+
+-#include <../config.h>
+-
+ #include <cstdlib>
+ #include <map>
+ #include <set>
+@@ -36,6 +34,8 @@
+ #include <fcntl.h>
+ #include <linux/fs.h>
+
++#include <../config.h>
++
+ #ifndef BUFFER_SIZE
+ #define BUFFER_SIZE 2048
+ #endif
+@@ -275,7 +275,7 @@ void printItem(PAIR_COMPLETE_TYPE p,vector <OrderField*> *ofa) {
+ continue;
+ }
+ OrderField of = *ofp;
+-#define case_entry(fmt,func) printf("%s"fmt,(first ? "" : " "),func_##func(mk)); break;
++#define case_entry(fmt,func) printf("%s" fmt,(first ? "" : " "),func_##func(mk)); break;
+ switch(of.type) {
+ case ST_DEV: case_entry("%lld",ST_DEV);
+ case ST_INO: case_entry("%lld",ST_INO);
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/init.d-readahead-list b/sys-apps/readahead-list/files/init.d-readahead-list
index fa5d7fab8eb5..b9156acb7071 100644
--- a/sys-apps/readahead-list/files/init.d-readahead-list
+++ b/sys-apps/readahead-list/files/init.d-readahead-list
@@ -11,7 +11,7 @@ depend() {
start() {
# force reading
- source /etc/conf.d/readahead-list
+ . /etc/conf.d/readahead-list
f="${READAHEAD_LIST_call_main}"
ebegin "readahead(2): ${f}"
diff --git a/sys-apps/readahead-list/files/init.d-readahead-list-early b/sys-apps/readahead-list/files/init.d-readahead-list-early
index dba700c6d398..3a0ff17f4c14 100644
--- a/sys-apps/readahead-list/files/init.d-readahead-list-early
+++ b/sys-apps/readahead-list/files/init.d-readahead-list-early
@@ -2,7 +2,6 @@
# Copyright 2005 Robin H. Johnson <robbat2@orbis-terrarum.net>
# Distributed under the terms of the GNU General Public License v2
-
depend() {
after checkroot
# this should start as early as possible
@@ -12,7 +11,7 @@ depend() {
start() {
# force reading
- source /etc/conf.d/readahead-list
+ . /etc/conf.d/readahead-list
f="${READAHEAD_LIST_call_early}"
ebegin "readahead(2): ${f}"
/sbin/readahead-list ${f}
diff --git a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch b/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch
deleted file mode 100644
index ccee025dcbf8..000000000000
--- a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/filelist-order.cxx
-+++ b/src/filelist-order.cxx
-@@ -19,6 +19,7 @@
- #include <iostream>
- #include <fstream>
- #include <vector>
-+#include <cstdlib>
-
- #include <assert.h>
- #include <string.h>
diff --git a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch b/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch
deleted file mode 100644
index a987e4aa767d..000000000000
--- a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-filelist-order.cxx:276:37: error: unable to find string literal operator ‘operator""fmt’ with ‘const char [3]’, ‘long unsigned int’ arguments
-
-https://bugs.gentoo.org/594092
-
---- a/src/filelist-order.cxx
-+++ b/src/filelist-order.cxx
-@@ -273,7 +273,7 @@ void printItem(PAIR_COMPLETE_TYPE p,vector <OrderField*> *ofa) {
- continue;
- }
- OrderField of = *ofp;
--#define case_entry(fmt,func) printf("%s"fmt,(first ? "" : " "),func_##func(mk)); break;
-+#define case_entry(fmt,func) printf("%s" fmt,(first ? "" : " "),func_##func(mk)); break;
- switch(of.type) {
- case ST_DEV: case_entry("%lld",ST_DEV);
- case ST_INO: case_entry("%lld",ST_INO);
diff --git a/sys-apps/readahead-list/metadata.xml b/sys-apps/readahead-list/metadata.xml
index 9590fe15fc00..3571b57c20ea 100644
--- a/sys-apps/readahead-list/metadata.xml
+++ b/sys-apps/readahead-list/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
@@ -8,4 +8,7 @@
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
+<upstream>
+ <remote-id type="github">robbat2/readahead-list</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild b/sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild
deleted file mode 100644
index 2c963c97fec9..000000000000
--- a/sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Preloads files into the page cache to accelerate program loading"
-HOMEPAGE="https://github.com/robbat2/readahead-list"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE="doc"
-
-RDEPEND=""
-DEPEND="${RDEPEND}
- virtual/os-headers
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-gcc-4.3.patch"
- "${FILESDIR}/${P}-gcc6.patch"
-)
-
-src_configure() {
- econf --sbindir=/sbin
-}
-
-src_install() {
- default
-
- # init scripts
- #cd "${S}/contrib/init/gentoo/"
- newinitd "${FILESDIR}"/init.d-readahead-list readahead-list
- newinitd "${FILESDIR}"/init.d-readahead-list-early readahead-list-early
- newconfd "${FILESDIR}"/conf.d-readahead-list readahead-list
-
- # default config
- insinto /etc/readahead-list
- cd "${S}/contrib/data"
- newins readahead.runlevel-default.list runlevel-default
- newins readahead.runlevel-boot.list runlevel-boot
- newins readahead._sbin_rc.list exec_sbin_rc
-
- # docs
- cd "${S}"
- if use doc; then
- docinto scripts
- dodoc contrib/scripts/*
- fi
- # clean up a bit
- find "${D}/usr/share/doc/${PF}/" -type f -name 'Makefile*' -exec rm -f \{\} \;
-}
-
-pkg_postinst() {
- einfo "You should add readahead-list to your runlevels:"
- einfo " rc-update add readahead-list-early boot"
- einfo " rc-update add readahead-list boot"
- einfo "Also consider customizing the lists in /etc/readahead-list"
- einfo "for maximum performance gain."
-}
diff --git a/sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild b/sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild
new file mode 100644
index 000000000000..1c06ff2d1e17
--- /dev/null
+++ b/sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Preloads files into the page cache to accelerate program loading"
+HOMEPAGE="https://github.com/robbat2/readahead-list"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+
+DEPEND="virtual/os-headers"
+
+PATCHES=(
+ "${FILESDIR}/1.20060421.1016/"
+)
+
+src_prepare() {
+ default
+
+ # Drop once ${P}-modernisation.patch is in a release
+ eautoreconf
+}
+
+src_configure() {
+ econf --sbindir=/sbin
+}
+
+src_install() {
+ default
+
+ # Init scripts
+ #cd "${S}/contrib/init/gentoo" || die
+ #newinitd init.d-readahead-list readahead-list
+ #newinitd init.d-readahead-list-early readahead-list-early
+ #newconfd conf.d-readahead-list readahead-list
+ newinitd "${FILESDIR}"/init.d-readahead-list readahead-list
+ newinitd "${FILESDIR}"/init.d-readahead-list-early readahead-list-early
+ newconfd "${FILESDIR}"/conf.d-readahead-list readahead-list
+
+ # Default config
+ insinto /etc/readahead-list
+ cd "${S}/contrib/data" || die
+ newins readahead.runlevel-default.list runlevel-default
+ newins readahead.runlevel-boot.list runlevel-boot
+ newins readahead._sbin_rc.list exec_sbin_rc
+
+ # docs
+ cd "${S}" || die
+ if use doc; then
+ docinto scripts
+ dodoc contrib/scripts/*
+ fi
+
+ # Clean up a bit
+ find "${ED}/usr/share/doc/${PF}/" -type f -name 'Makefile*' -exec rm -f \{\} \;
+}
+
+pkg_postinst() {
+ einfo "You should add readahead-list to your runlevels:"
+ einfo " rc-update add readahead-list-early boot"
+ einfo " rc-update add readahead-list boot"
+ einfo "Also consider customizing the lists in ${EROOT}/etc/readahead-list"
+ einfo "for maximum performance gain."
+}
diff --git a/sys-apps/rename/metadata.xml b/sys-apps/rename/metadata.xml
index d7e8089a7c64..ebb38adab439 100644
--- a/sys-apps/rename/metadata.xml
+++ b/sys-apps/rename/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/rename/rename-1.3-r2.ebuild b/sys-apps/rename/rename-1.3-r2.ebuild
deleted file mode 100644
index f0e2609bf2c3..000000000000
--- a/sys-apps/rename/rename-1.3-r2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Easily rename files"
-HOMEPAGE="http://rename.sourceforge.net/"
-SRC_URI="http://${PN}/sourceforge.net/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-MY_PATCHES=(
- "${FILESDIR}"/${P}-rename.patch
- "${FILESDIR}"/${P}-build.patch
- "${FILESDIR}"/${P}-gcc44.patch
-)
-
-DOCS=( README ChangeLog )
-
-src_prepare() {
- default
- sed -i \
- -e '/^CFLAGS/s:-O3:@CFLAGS@:' \
- -e '/strip /s:.*::' \
- Makefile.in || die
- eapply "${MY_PATCHES[@]}"
- tc-export CC
-}
-
-src_install() {
- newbin "${PN}" "${PN}xm"
- newman "${PN}.1" "${PN}xm.1"
-}
-
-pkg_postinst() {
- ewarn "This has been renamed to '${PN}xm' to avoid"
- ewarn "a naming conflict with sys-apps/util-linux."
-}
diff --git a/sys-apps/rename/rename-1.3-r3.ebuild b/sys-apps/rename/rename-1.3-r3.ebuild
new file mode 100644
index 000000000000..0b6df9d1ad66
--- /dev/null
+++ b/sys-apps/rename/rename-1.3-r3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Easily rename files"
+HOMEPAGE="http://rename.sourceforge.net/"
+SRC_URI="http://${PN}/sourceforge.net/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-rename.patch
+ "${FILESDIR}"/${P}-build.patch
+ "${FILESDIR}"/${P}-gcc44.patch
+)
+
+DOCS=( README ChangeLog )
+
+src_prepare() {
+ sed -i \
+ -e '/^CFLAGS/s:-O3:@CFLAGS@:' \
+ -e '/strip /s:.*::' \
+ Makefile.in || die
+
+ default
+
+ # Clang 16
+ eautoreconf
+}
+
+src_configure() {
+ tc-export CC
+
+ default
+}
+
+src_install() {
+ newbin "${PN}" "${PN}xm"
+ newman "${PN}.1" "${PN}xm.1"
+}
+
+pkg_postinst() {
+ ewarn "This has been renamed to '${PN}xm' to avoid"
+ ewarn "a naming conflict with sys-apps/util-linux."
+}
diff --git a/sys-apps/renameutils/metadata.xml b/sys-apps/renameutils/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/sys-apps/renameutils/metadata.xml
+++ b/sys-apps/renameutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/rescan-scsi-bus/Manifest b/sys-apps/rescan-scsi-bus/Manifest
deleted file mode 100644
index 47585052a071..000000000000
--- a/sys-apps/rescan-scsi-bus/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rescan-scsi-bus.sh-1.57 22575 BLAKE2B 71737a9b2df22d8aecc756bb690cc401343c7951f0e809804eee43e01566e9f5377d5fd2c1d3628602ed64536402a71770dfe8e6514ab2d36851c7f0827f0c7c SHA512 93a061af852e5f9dd3d64ad62692809a11d8ffaac68f5ce08ba1a4fd9201fc66a0a5482d3e6da6e5c36fb00805fa4f7483fc2c85c5aaf6bfc190690ccf7bc733
diff --git a/sys-apps/rescan-scsi-bus/metadata.xml b/sys-apps/rescan-scsi-bus/metadata.xml
deleted file mode 100644
index 9590fe15fc00..000000000000
--- a/sys-apps/rescan-scsi-bus/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="person">
- <email>robbat2@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-</pkgmetadata>
diff --git a/sys-apps/rescan-scsi-bus/rescan-scsi-bus-1.57-r2.ebuild b/sys-apps/rescan-scsi-bus/rescan-scsi-bus-1.57-r2.ebuild
deleted file mode 100644
index e3307ae4400b..000000000000
--- a/sys-apps/rescan-scsi-bus/rescan-scsi-bus-1.57-r2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Script to rescan the SCSI bus without rebooting"
-HOMEPAGE="http://www.garloff.de/kurt/linux/"
-SCRIPT_NAME="${PN}.sh"
-SRC_NAME="${SCRIPT_NAME}-${PV}"
-SRC_URI="http://www.garloff.de/kurt/linux/${SRC_NAME}"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
-
-RDEPEND=">=sys-apps/sg3_utils-1.24
- <sys-apps/sg3_utils-1.44
- app-admin/killproc
- app-shells/bash
- sys-apps/kmod[tools]"
-
-S=${WORKDIR}
-
-src_unpack() {
- cp -f "${DISTDIR}"/${SRC_NAME} "${WORKDIR}"/${SCRIPT_NAME}
-}
-
-src_install() {
- into /usr
- dosbin ${SCRIPT_NAME}
- # Some scripts look for this without the trailing .sh
- # Some look for it with the trailing .sh, so have a symlink
- dosym ${SCRIPT_NAME} /usr/sbin/${PN}
-}
diff --git a/sys-apps/restartd/files/restartd-0.2.2-fno-common.patch b/sys-apps/restartd/files/restartd-0.2.2-fno-common.patch
new file mode 100644
index 000000000000..c0b0ad5ff8b1
--- /dev/null
+++ b/sys-apps/restartd/files/restartd-0.2.2-fno-common.patch
@@ -0,0 +1,66 @@
+--- a/config.c
++++ b/config.c
+@@ -22,6 +22,14 @@
+ #include <syslog.h>
+ #include "config.h"
+
++int debug;
++int config_process_number;
++int check_interval;
++int foreground;
++char *config_file;
++struct config_process_type *config_process;
++struct config_process_type config_process_type;
++
+ int
+ read_config (void)
+ {
+--- a/config.h
++++ b/config.h
+@@ -34,12 +34,12 @@
+ #define DEFAULT_CONFIG "/etc/restartd.conf"
+ #define VERSION "0.2.1"
+
+-int debug; // Debug
+-int config_process_number;
+-int check_interval;
+-int foreground;
+-struct config_process_type *config_process;
+-char *config_file;
++extern int debug; // Debug
++extern int config_process_number;
++extern int check_interval;
++extern int foreground;
++extern struct config_process_type *config_process;
++extern char *config_file;
+
+ typedef struct config_process_type
+ {
+@@ -51,7 +51,9 @@ typedef struct config_process_type
+ char processes[256];
+ char status[32];
+
+-} config_process_type;
++};
++
++extern struct config_process_type config_process_type;
+
+ int read_config ( /* char *config_file */ );
+
+--- a/main.c
++++ b/main.c
+@@ -35,6 +35,14 @@
+
+ #include "config.h"
+
++extern int debug;
++extern int config_process_number;
++extern int check_interval;
++extern int foreground;
++extern char *config_file;
++extern struct config_process_type *config_process;
++extern struct config_process_type config_process_type;
++
+ // SIGTERM & SIGHUP handler
+ void
+ got_signal (int sig)
diff --git a/sys-apps/restartd/metadata.xml b/sys-apps/restartd/metadata.xml
index 6f49eba8f496..85e4ed814fa2 100644
--- a/sys-apps/restartd/metadata.xml
+++ b/sys-apps/restartd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/restartd/restartd-0.2.2-r1.ebuild b/sys-apps/restartd/restartd-0.2.2-r1.ebuild
index dadb97c5f33b..63a0de4222ca 100644
--- a/sys-apps/restartd/restartd-0.2.2-r1.ebuild
+++ b/sys-apps/restartd/restartd-0.2.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,8 @@ SRC_URI="mirror://debian/pool/main/r/restartd/${PN}_${MY_PV}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
+
+PATCHES=( "${FILESDIR}"/${P}-fno-common.patch )
src_prepare() {
default
@@ -21,7 +22,7 @@ src_prepare() {
}
src_compile() {
- emake CC=$(tc-getCC) C_ARGS="${CFLAGS}"
+ emake CC="$(tc-getCC)" C_ARGS="${CFLAGS}"
}
src_install() {
diff --git a/sys-apps/restorecond/Manifest b/sys-apps/restorecond/Manifest
index 84f10cfb46bd..c48a0b0fc5a8 100644
--- a/sys-apps/restorecond/Manifest
+++ b/sys-apps/restorecond/Manifest
@@ -1,3 +1,2 @@
-DIST restorecond-2.9.tar.gz 18893 BLAKE2B fcdae1a4ec489f3f581212cdd3c13c5561feac3ee758f354dca75c97938c62b9ed04aedbd4b3b5cde09a5887247389262718145620d0b9749e364d1614f57241 SHA512 6de9dd4c6b8e5d8275221aba5df27437998f635cfe83a5da75de479e260ceea884a36253eb873a8d71e1a77ed67544d8657fb75fe409af1f630052ce73ec5d8a
-DIST restorecond-3.0.tar.gz 18797 BLAKE2B 354477ea9f57cc27c14a2648b99b32c45ac6d4e32caeb0fb108ed8f40a2e2e04101e2658d0107a1f2741717c242ad80b2e14db03488ab62b88eeb8b1a9ac0dd4 SHA512 f75088f72a17f1f7550ef67052202cea1fd9cf1bb1eec0355f4a0641ba25097b289f629df328ee79aec00f8361cbc6df10efc4a5af2f0b67f9922ceaf92aa956
-DIST restorecond-3.1.tar.gz 18939 BLAKE2B 3a3fcde057dad3ed05692d679ba27e0b24f191d92ed5114fa38cb5f846c4cc00d85bb09b5d4e560ed2b914444e0c2d1c407f6c03900610624d5626d05f2991bc SHA512 cdcf299f48b89a7c641ded9507b9b966bf648497394f8e988a9cb1ceb3224c86369706027f3416a4f9750836f7a8f4580a4b3df76673e03f897b383d7ed0e2c8
+DIST restorecond-3.5.tar.gz 19070 BLAKE2B 6db7d0fc9085a07669d346e025836a94acca610572e986e2c90974b0bd21b55e66b57a2dafd7d42011bed5f06363b654f5431ac43530fccf7b68d3edd9d63850 SHA512 80cb84e62c7072a12fe57ebaafc0bcb441c853862c67f9ea35b86faa2d8e49ea22a70b9e05a3ff24e8ce08ca2999604d7961efd534f89167cd6fcb05c852de40
+DIST restorecond-3.6.tar.gz 18020 BLAKE2B 306b4a7c9990c0b2f229cc7963dbd0481df5f9fbecd709b37d254839177fc604f6f85ac19235209f4fbb12d9186f01dd71a11f98deca5d01bd70c415240ddf5a SHA512 e21fa23bfea488f2bddd01b4bab353f22863e09247078e47db9852995d7a0153aee6483cbeaaaf033b482b60f80affad0b6a3e829f935c3901c034a7efb1ebef
diff --git a/sys-apps/restorecond/files/restorecond.init b/sys-apps/restorecond/files/restorecond.init
index 709f1d1b9ece..2179010627bd 100644
--- a/sys-apps/restorecond/files/restorecond.init
+++ b/sys-apps/restorecond/files/restorecond.init
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 2006-2017 Gentoo Foundation
+# Copyright 2006-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
is_selinux_enabled() {
diff --git a/sys-apps/restorecond/metadata.xml b/sys-apps/restorecond/metadata.xml
index 9a9681c39bd3..861770703d93 100644
--- a/sys-apps/restorecond/metadata.xml
+++ b/sys-apps/restorecond/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
diff --git a/sys-apps/restorecond/restorecond-2.9.ebuild b/sys-apps/restorecond/restorecond-2.9.ebuild
deleted file mode 100644
index 5e25b5962ea5..000000000000
--- a/sys-apps/restorecond/restorecond-2.9.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20190315"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Daemon to watch for creation and set default SELinux fcontexts"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/dbus-glib
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
-
-RDEPEND="${DEPEND}
- !<sys-apps/policycoreutils-2.7_pre"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- tc-export CC
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- rm -rf "${D}/etc/rc.d" || die
-
- newinitd "${FILESDIR}/restorecond.init" restorecond
-}
diff --git a/sys-apps/restorecond/restorecond-3.0.ebuild b/sys-apps/restorecond/restorecond-3.0.ebuild
deleted file mode 100644
index a23fc95a9c0b..000000000000
--- a/sys-apps/restorecond/restorecond-3.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20191204"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Daemon to watch for creation and set default SELinux fcontexts"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/dbus-glib
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
-
-RDEPEND="${DEPEND}
- !<sys-apps/policycoreutils-2.7_pre"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- tc-export CC
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- rm -rf "${D}/etc/rc.d" || die
-
- newinitd "${FILESDIR}/restorecond.init" restorecond
-}
diff --git a/sys-apps/restorecond/restorecond-3.1.ebuild b/sys-apps/restorecond/restorecond-3.1.ebuild
deleted file mode 100644
index 001d8cd6d3f8..000000000000
--- a/sys-apps/restorecond/restorecond-3.1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit systemd toolchain-funcs
-
-MY_RELEASEDATE="20200710"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Daemon to watch for creation and set default SELinux fcontexts"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/dbus-glib
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- tc-export CC
- default
-}
-
-src_install() {
- SYSTEMDSYSTEMUNITDIR="$(systemd_get_systemunitdir)" \
- SYSTEMDUSERUNITDIR=$(systemd_get_userunitdir) \
- emake DESTDIR="${D}" install
-
- rm -rf "${D}/etc/rc.d" || die
-
- newinitd "${FILESDIR}/restorecond.init" restorecond
-}
diff --git a/sys-apps/restorecond/restorecond-3.5.ebuild b/sys-apps/restorecond/restorecond-3.5.ebuild
new file mode 100644
index 000000000000..010553a8791d
--- /dev/null
+++ b/sys-apps/restorecond/restorecond-3.5.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit systemd toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Daemon to watch for creation and set default SELinux fcontexts"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+DEPEND="dev-libs/glib:2
+ >=sys-libs/libsepol-${PV}:=
+ >=sys-libs/libselinux-${PV}:="
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ sed -i 's/-Werror//g' "${S}"/Makefile || die "Failed to remove Werror"
+}
+
+src_compile() {
+ tc-export CC
+ default
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ SYSTEMDSYSTEMUNITDIR="$(systemd_get_systemunitdir)" \
+ SYSTEMDUSERUNITDIR=$(systemd_get_userunitdir) \
+ install
+
+ rm -rf "${D}/etc/rc.d" || die
+
+ newinitd "${FILESDIR}/restorecond.init" restorecond
+}
diff --git a/sys-apps/restorecond/restorecond-3.6.ebuild b/sys-apps/restorecond/restorecond-3.6.ebuild
new file mode 100644
index 000000000000..0b80f0fc989c
--- /dev/null
+++ b/sys-apps/restorecond/restorecond-3.6.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit systemd toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Daemon to watch for creation and set default SELinux fcontexts"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND="dev-libs/glib:2
+ >=sys-libs/libsepol-${PV}:=
+ >=sys-libs/libselinux-${PV}:="
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ sed -i 's/-Werror//g' "${S}"/Makefile || die "Failed to remove Werror"
+}
+
+src_compile() {
+ tc-export CC
+ default
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ SYSTEMDSYSTEMUNITDIR="$(systemd_get_systemunitdir)" \
+ SYSTEMDUSERUNITDIR=$(systemd_get_userunitdir) \
+ install
+
+ rm -rf "${D}/etc/rc.d" || die
+
+ newinitd "${FILESDIR}/restorecond.init" restorecond
+}
diff --git a/sys-apps/restorecond/restorecond-9999.ebuild b/sys-apps/restorecond/restorecond-9999.ebuild
index 001d8cd6d3f8..794b84bc99e8 100644
--- a/sys-apps/restorecond/restorecond-9999.ebuild
+++ b/sys-apps/restorecond/restorecond-9999.ebuild
@@ -1,21 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit systemd toolchain-funcs
-MY_RELEASEDATE="20200710"
-
-MY_P="${P//_/-}"
-IUSE=""
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
+ S="${WORKDIR}/${P}/${PN}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
S="${WORKDIR}/${MY_P}"
fi
@@ -26,11 +24,9 @@ HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
LICENSE="GPL-2"
SLOT="0"
-DEPEND=">=sys-libs/libsepol-${PV}:=
- >=sys-libs/libselinux-${PV}:=
- dev-libs/dbus-glib
- dev-libs/libpcre:=
- >=sys-libs/libcap-1.10-r10:="
+DEPEND="dev-libs/glib:2
+ >=sys-libs/libsepol-${PV}:=
+ >=sys-libs/libselinux-${PV}:="
RDEPEND="${DEPEND}"
@@ -46,9 +42,10 @@ src_compile() {
}
src_install() {
- SYSTEMDSYSTEMUNITDIR="$(systemd_get_systemunitdir)" \
+ emake DESTDIR="${D}" \
+ SYSTEMDSYSTEMUNITDIR="$(systemd_get_systemunitdir)" \
SYSTEMDUSERUNITDIR=$(systemd_get_userunitdir) \
- emake DESTDIR="${D}" install
+ install
rm -rf "${D}/etc/rc.d" || die
diff --git a/sys-apps/ripgrep-all/Manifest b/sys-apps/ripgrep-all/Manifest
new file mode 100644
index 000000000000..8385d4536760
--- /dev/null
+++ b/sys-apps/ripgrep-all/Manifest
@@ -0,0 +1,161 @@
+DIST addr2line-0.12.0.crate 118232 BLAKE2B d77089cd1503623fcdce779f1c669754ebdb4726ed88a15fde25b0a7d87e05e4cd41d8cbcccb3250fecb79c96b565e7ab7ed75a92f3143d67b496a94fe394db6 SHA512 aebc4c2c3c87a6fb5e076264dd7abc72fd639a0c1eee0c538a7fcccb3fb97e9f1f0f5c9bbc40678870a1054efa902d7c9e00deada4e4c3293e04476ad3dfe018
+DIST adler32-1.0.4.crate 5105 BLAKE2B 344a5258e77328a24a545e32f9bc653fa25b7ea43803ed7861db261bce227aa1599520a42acea3de1f2acebb8fa9fad251e2688413b752eafe2401ca1a2ee34a SHA512 5990e1e277a1c3aae5adef5e4601b807a756a40e88578bb91f1c70d70babfa97fb3f2c1b963482ec8e18c16d5e722bf90fb42f9646c8dd840373f28965a2d123
+DIST aho-corasick-0.7.10.crate 111039 BLAKE2B 69f984dbe528ece5ce4345bc0f39c122507a88e781d7c2d5c9175d1788aeef8d21e0487c7c449e28fbbdaae8203fe68627d23ac0a58d30dc70befd26ac9af32f SHA512 e8a1cb252015435009883662ca23408f1491d8f01461f3a81082feabeeff72ec61beb4f1f3271fc8a87f1379899ecfc38036ac208dca17889f70ddaca2406a9b
+DIST ansi_term-0.11.0.crate 17087 BLAKE2B 9bd35c045a01ce4c6c4a5db1b4f15e9412bb97426eec19d4421dffbec633de8d13452c13c1dc1b30998690b78d7ed38311aca700087f13a81f66bd1d5d7300c4 SHA512 a637466a380748f939b3af090b8c0333f35581925bc03f4dda9b3f95d338836403cf5487ae3af9ff68f8245a837f8ab061aabe57a126a6a2c20f2e972c77d1fa
+DIST arrayref-0.3.6.crate 10035 BLAKE2B 88292fa4b3ad4fccd03772c2f0eca04cc13373fe094358bac57d7523c256d89f3087603e5bcb2a0b15d8b2ecd48e904a822b2cb800276a9c47ad6c6b660d9d34 SHA512 368341d00706c1250ff081b0d99c36c9af694a62ff4f4d8c837234340295771ca49c5439b24b6e1a4f2c3c5821764e98881dcb22d793f83de632fd5cb457671f
+DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
+DIST autocfg-0.1.7.crate 12158 BLAKE2B 4120306f0f7c1cc0cf8d1d994c080cbf42e4b107cb51af910504c8c8d264289654dad23a0c6b9eb28d888157e5a68ef2460c3d38537ae9d5e9bf73b66ffc3015 SHA512 667ca520f2b46140d2f3519b43e5155426a6e7a2130879860eb10b974f84465600077f53abed4c0e6bf2612471f01786bfb3531ea8773d0f50f29d48e05f7925
+DIST autocfg-1.0.0.crate 12870 BLAKE2B 79e495d53298574afd3b292da7c9c363dcb3ea434fd44258efaf3628e95ebfc731f03083f8a1060272a2a3478a6452cdc41539e2dac08465cc6e6283844bf260 SHA512 451fc63148792ba1952b884170e3481359b01bacca5ec0456f43ca58f8e092b8f81c9764f8b00d4104059ff608089be5858220ee868127c064cc890c767ec3a3
+DIST backtrace-0.3.48.crate 65706 BLAKE2B 100e0193b65b8aedabf3f8b5ae2ba8090161503f340c72f52ef2b4e02e940ae46011c22f1a6441358d832759a1dc56a82fad0eae3ca49f34a2e31c37111316f6 SHA512 260ec9f4c2f14d8830e69435e1f0883621b3afcb2dad06624d5c29398c4109d1397fbc06dcbf1d85afea45515e8bd6d211a98b963c67da818ab4f95f8fe4060a
+DIST bincode-1.2.1.crate 15489 BLAKE2B 98d8a7b3653dc75aed07a637707a8a0d7b574c9a7e9ab8aa39d6f235d003ee15dc4abdd76e3ba171b10aafc98dc16f9ef8413f4154c30848ca0c12d4972f527e SHA512 b86915db2079128d6abe52c8f3fa0ec21815faa988bf678a162c2caaeb0d2ecf2f5df496d5dab08f399578b4f0258f252e890d9ab9e8347c50e5d7a2ab374db7
+DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
+DIST byteorder-1.3.4.crate 21943 BLAKE2B 278b24e036e920f84683f883991a967d997883bc80edefc5b69f52551794a37e5051786a1ac1b7a30bf2f5cad7318d781f189a7b2e496e2743df01262d5c33d6 SHA512 0618ce2cd6f3f6c586201d9aee8c8aaa08f99c9f9f215cf448b3cb6af1ac741845f5279953544caaec7fcf0beec1474bb991bee1ad0c0dac0c3f1d3ddd99e2d9
+DIST bzip2-0.3.3.crate 15346 BLAKE2B b3e5178400a2235f500c3f77ad538fa3c271e261cbb4a4128d89371fac0f117a12c6a84696cc8ae9462a9a1a8712ed5a2086c94af14ffc575e0ee1676fb2207a SHA512 f2a844655fbd9abc866e691b57ddad166f09a183b8bd33cc6ff5952fe7f11141b1843728c6ad23fdf88a181fd40a3599df3e716c5f004ef097af6b99162a55d2
+DIST bzip2-sys-0.1.8+1.0.8.crate 632179 BLAKE2B 08bb520d2dc35e64364b995ead41d94a8c3d19ff70b5abf5abb321fc833e802e2532724072e64b37ef5fa2008545ef6cbf87db8d35edd83c22e856c6ccbf578b SHA512 f12fab697a813907ff4ebe802f7699ce1e93c533e3795db4fbeaa4f4cc368b4b6a47cb31989de0000acc82d71e4d28ccbc365c08a60aad73bc3c9488a7d3b768
+DIST cachedir-0.1.1.crate 11647 BLAKE2B 421b1ca5ab0edb6daa4d211a9dbd4ffe6f832aaa78ce0a3806402714566d556f346098fc67fd285623f03f3446559aaea6de7b0e5839d9383a3019dcffa64f0f SHA512 8704f97195d4766b813ef1fba5d1e864ba512cbe549fbd6ef397f4e9128438551ef32b0376fb8df40bfd9fbd5352b96fc09daa5991504e4f546748db3491aa00
+DIST cc-1.0.53.crate 51740 BLAKE2B 04d9d6d7e5999c9463dd86eaed965ec728c285ea0e642a02383b45ea820bcbb37c91116646b0fa2636e7176030bcff29612a72482df8c7a02a7262a805791e55 SHA512 8c7224b21a36d46afcdb7b2475686edb2d31b784e95e792f81acd5d5840b0065ca8869ca1c8c5a70cfb3e31dbe5c006360b054c1f11a92f0e1937e4e6d335229
+DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
+DIST chrono-0.4.11.crate 139811 BLAKE2B d327f6be0a890ed74f2a2330777dcefbcf87e0291e47ef9c63aea46050f38c89a9b2e7a4716ac92202fab66aedc98ae81e090f1921a1aa51fa7ba18cb1cf24a9 SHA512 bedb698ae2994fc6fcf858b86a122cdaccd150996eb3e4313f876599cfa2180c2f687cca78ba30860365e04b75911fcdb19b5930fc155d1c17f06ec8197d3da9
+DIST clap-2.33.1.crate 201567 BLAKE2B 7bb63b6a243eb33050e5354622fb544ba6db3b859005d857b198af4c3f34dbda22d605326e80a274a12f73fb2c13aea99ec6652584a02d0a3092841f4e119d91 SHA512 31209da6a0ac987f7e1b2504a2fb7738c3aba4ddee4cc2bc22cc37d4d2b0feeff41ece557d4960d51564fd31cb23e413bf180eb60102a872caf623bf55c6f089
+DIST cloudabi-0.0.3.crate 22156 BLAKE2B e12054fd474754031f8f5038d5e2829e1586db974d38230cfd8774db591a58dfdcaea9fb61fc0b35366889d348b2c73ceaabbb462f1abeeffeaab167013c986f SHA512 691ed793e9b35ba382f03897f4c0efc31a528394862a27b814ba8993ad30bbe0ebc9808484baf580e8b69d9c13ad1612776a1efd0f6981545b420139ff83592c
+DIST crc32fast-1.2.0.crate 39161 BLAKE2B f71c85801f945602d53f93ce251c978c91f63fcd92fecba5083fff0f06738697e99d92c17a824605d5d56b3224db224ff32e4b147b6f6af47ae714dcd511e7cd SHA512 2ee73e0642f83e28034c1baca65156e65d751214e83f2a4ce94b6add5ba11f74ffc80832a3348ece1c099367be2b11e820dfb349fae89fbced1b68bd6b0466f0
+DIST crossbeam-0.7.3.crate 9906 BLAKE2B fcdfb2fc07670cc90e1a60f58b798ecf913cc27153123c430e6920cdbce8459837d8a2ac7436f1fa37389b3912fb3166917af812fee474b73923c8af316a5b84 SHA512 9b06c2379364827df715a1cf6a842d6d793f53082e21eb6daeea0ac03dbc2e6a7902d0cbd39dc8d81d82b02641925f4a70b443d65a413f8e497eb3a9be55a8d0
+DIST crossbeam-channel-0.4.2.crate 87419 BLAKE2B 721013134069abc8f01ae5e98e1e6f10981d4892881339d3bf87f1bcb58b362348dad92e702a6b2367075dd41d860d62cca0ac8b3691954c454ca70bb5158000 SHA512 19b0ed2b5ed0fb1fe7c809e08483152fc36cf46f465c8571ca0fb9ebb1cb4b2b8f5860a303c932f336f434dafa9776ce6026ea2e64457147fb540766dc6da2ce
+DIST crossbeam-deque-0.7.3.crate 19888 BLAKE2B f83e6915624ed8d01e56ad28e0a40e84732d820fd07f0f0fa4aac9578aed0f4a980bdcd64d29811be2b5055f28135403faf091b902dd4c800d6d736452ab03d0 SHA512 7c6a42643b2eda7ffbe2d485de4d3723c6a37beaf77e81329e39c9300a80492ef46650fe5a6b18101d3f6b4ed031ddb06174624f5449998ec3a7808e979df131
+DIST crossbeam-epoch-0.8.2.crate 39283 BLAKE2B eaad3cff833fb3672c93f6f0f4ca7073c709f9ea489c034da5fb2dab2da0676d493300c66bc746c8372369815aac3eec2ab9cb875dd9464cb59ae25c4ef4c6c9 SHA512 7406e92a768dee07c8d13b0fefd658e9eebfd3e89c782c4690740353c0de920013c345d6c112a78a2014396cc837ce4fdbf845dfcfacfd7a57172f483bb9b8e4
+DIST crossbeam-queue-0.2.1.crate 14543 BLAKE2B 0decf8fc19f33912d129eb73ac981142e9788fa546ac75ef449b298ff55cb20871cc00ff075814ee3c20924ce890fdf455c607313b9fd07252b576777bfc1713 SHA512 9a6cf2cda3a76f3efe30290413bf3cd539406039d29f42e06326822fcd32aed3dbdfcfddccdc5871b824951653836a8943e0d771c261fcf7878a8526927b5ca7
+DIST crossbeam-utils-0.7.2.crate 34338 BLAKE2B 3cb287c7741c4d5b0551331634a75b066f07fb4b55fa2b347370506467a05923254b1c4dca667de59ed91ff91f5496b37f40f13d3e9885a1b4f639f5b6748433 SHA512 e375f24c007bcf660d9e297527ed938f678a55696ca7b555b96fee7e0b94c31db2d3f4355675aa0baeadba68b9755ec92dc3a09a37b5db48e3723b926fd4a8f3
+DIST encoding_rs-0.8.23.crate 1403543 BLAKE2B 1ab7da7a4313dc3e0613a077bd9d036e91eec75913cb9b742879eab17e0af7dd76b69d7a17133f0c0c35a1f8c0628058415751105c95b63e2f578e9a57cbb71e SHA512 7036f64c0f26b3d993c1ffb64ccdf95a122ae93a9ef691f9903f90925b222b3aabaf379e951b5e9fc40726a1ed52ba54f3eededbc1e6b68385c99cf2c34d5ba5
+DIST encoding_rs_io-0.1.7.crate 16969 BLAKE2B 8d51835dc0882d0e0512f0a177f10da3a1c384f38cb4eb163f957cc134ef5b7aee65d951cf65c99cc80b087e0e92ca4dae431e3a8987fe6b86bbf0dd1bfa8ef8 SHA512 0c7d33616e96fcdf225599dbf469232d150fa4bef5809346c4003ff7fa0362a1cded8f3392fb5945f4950e2b2cd71b60c93025d73ecfdd2ba4fda5e03a16902c
+DIST env_logger-0.7.1.crate 32281 BLAKE2B 6f1894c64f301ca4b687270c911dbe230f674662aa0561b97c4d2537886e404664b5773d4e223e2018047c222a951232c3cb52ec5bddbfb6665e34c3e7ea52f5 SHA512 604060d2ee83ab337a2d20d6784d1b7541534d2fd9e1662fc5c709fa681672a9db5e34d00face864b56ae321962e644ebe29fbb6d68a0d556419cf5d71c6149f
+DIST exitfailure-0.5.1.crate 11425 BLAKE2B b1cdddca62262c80b9dc7598f6816084302f6ae3023ae527eb78bf7b164c10b33977808f0ca631ada23e0a6265b7be784098b13b14b613283ccec2294eada3c6 SHA512 df59d550c3e0b7effb7e7f18ffbf87934bc2e9a8e6b98e1294cd59a75f77df55eaef5628b82e68340256324b67bcde9d0d4dded66434939a9517bc24a4166908
+DIST failure-0.1.8.crate 37582 BLAKE2B 007652720edab76efca83ef23a6f29dfec2a8949e88f697a4609257d158d345ebd617577df9cda69a25cae70e02f96479f427ee3059362771a4a1459bc4bd1c9 SHA512 a8762c978c286f921ef9c46dd17f57656739b339656ad237f6fb43062a8b2ad97cb98b977ae04735312d5328894b45c512fe42e33a9bdc4ea898330816b7a884
+DIST failure_derive-0.1.8.crate 4950 BLAKE2B c068f2a122e1137aa8a31e3a3c4c333f1e66f1b93df144f5a07772167f9085241292b85c55adf33851c319a418bac19fd31f4fb22b87ebbbf2814cbc815b77b3 SHA512 3f11adeb616a2d57e1a33ec2a5eb71c79a5df7946a27b74acc7c89a67c5dc6d01222731b37b405e33493570a98c96c7d2c7b8535928d7cf82536bcd9f0df809c
+DIST fallible-iterator-0.2.0.crate 18509 BLAKE2B 9630fcadb2f30fbd8a2a057eb992bf33c0aa2d163e6fbd43de9c8c350e3e932ebca79a6576b215e17a0566898f6e37aef806a643d20c16a6aa73ca515fcf30c0 SHA512 c558fea3fcf3a7756acc0b63d38f76dfe7eeed4dd9c12c46b7a7e8b8bea64d00e0cc115492e8b3a1a19e86e6083477dcf7d2d72ef960b44f24d61819a3077e79
+DIST fallible-streaming-iterator-0.1.9.crate 9249 BLAKE2B cc4459b34a9ad00552a5248d090d1f25804b92838f41131e475abb83ae0b89401248feeb52a49dbffd499ccc0ba0f2f1d044f2f3e9b06662be01fe2257a4e885 SHA512 34824e2007cb944eaf54b10d6d3885bb17ef2a2976c6dd7695ff82a937cc95eb65d343dd7a5cd2fab5aa5859faae3352a9e1c78f239ff736900c1dbc3f5ef7dc
+DIST filetime-0.2.10.crate 13880 BLAKE2B bc2289129c0d79f37b2589ee31f7bd9719c1aa97854c0c06f321a394202bb96e86b9ec8f8727735e4925e214e6c7f75d87578ab44530a123807b5b7eae7b1097 SHA512 45d1b6fd6017bd1a479a4e343b8651c8d426616cb68914c728456fae2a27bb1a45fafcafeb9a12c89c4eed835327e461bf92b80eed0f3a4e84b196b584b8698e
+DIST fixedbitset-0.1.9.crate 11974 BLAKE2B 22d60a9dbac0717c00f95ebd687eefecea597edc5216ba080224eedcf732d4bc901b9f9d6c9dcbd10c0876376de49a7efb4e6ccf90c6776dd9edb5a7f19b9c20 SHA512 07b45fb7e676c6a1b450d23ff53651e1ea1eafdbfc5bc304b13255e0c30f72718fb37fe0f17f2baff799015aa29405b8a677eac604e3219e5ed3f9abecda1964
+DIST flate2-1.0.14.crate 74183 BLAKE2B d3ef991f13e063deec70e782c07d064b033c50bebe2d92fe648cc21ff45e1716e7c50eff84f3805d3b11d7ea3510cd97d96b75b531c8f03b56e06889867dae08 SHA512 d70ee34d21b345529149b95000692e2dc590e14924d862cefdf926e77bb6e2572a99d0cea76fc0661d1149730cb3914598c1f500bd09661338713894b9a19152
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST fuchsia-cprng-0.1.1.crate 2950 BLAKE2B 8519407ab5d1f04d03cc946a07050db4dd7bc70e03894e35b9e66910a3be11224084a86ba45103fdec845e94b7ba4defbd7c5217b035a0796c0c4a94b9562cd7 SHA512 ea9f5beb0dfcb023c22cfc2b37ce52dfcf3a2cbbed0f79ffffc332878858386805c65dce8469a431002367562d857a6c064e075688540c27fcb4056a110059d2
+DIST generic-array-0.12.3.crate 18017 BLAKE2B 0d24e12365b31ba77cff37db6841428abf7f37f9722d629c168fd96a3a88390999a95e27adbb6aae697ca99bb9ecb4728af49d4166ea2bf89ad5ee09bf2c943d SHA512 75f3c19d3aa9db42909298b207564b2df40e7e8b8d54ad18972a833748942b5293a0edb881de894b58b5210c870ad546752c200710c5549144d11a4a0d7417d8
+DIST getrandom-0.1.14.crate 24698 BLAKE2B 8139227951eb65cc2bb7bba29291c0e8ff0b8d9a8e2d7eabb01682d1683c989c44b6195952ec7d087c338538c1d6858c45514822625266e0996829e8c50f3d17 SHA512 b5cb78ae81f31fffd7d720f9ea2b5917b4eac103711faf656a3a3fdd24ae5a2e671016d39309cdd11f902de919187311401dd8fe9e6ed68c29b83987de77c957
+DIST gimli-0.21.0.crate 645352 BLAKE2B b32a76d22a63958f6007110d53e27416a4f8ba429a28dc5b33fafb424dee57adec97de558f016010c83a0259d49acf9ce99edb973583d071dc441208c2da8061 SHA512 6c346c622a795a855e01db47b85684f6a8b4ca8b41cac472e3b6bc9ec6afbab344df9c3b2451332f6264b7c93d4d05986847ad47cbc7e2ee3049da5a9d6265b6
+DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
+DIST heck-0.3.1.crate 54666 BLAKE2B 99f7ceb44ea6af445749989730ce1e14156018ff046a136be2e6474b285088e1d90d6f8af9352affbbde5bac7e5a32971dd99f249f968105e9793b7de76def07 SHA512 134722192c46fd64b38d2fbec3a2511c560916e906491a72c4ec9d99b9f716dc58942fb99cac99b9a6ef2de5b5ad1d1c1155f292d091401b6873347d80c086d6
+DIST hermit-abi-0.1.13.crate 9230 BLAKE2B 9591171d6f303a4a462d23edc2f8d493bdc23b6c2da4b464444718bfc89078e5a627e1543b7ab5be9d4e05f16c3508e55642360bb8d2cbd5edc2ce39b28d022e SHA512 ac424683ee3cfff9c63c735ac91008df722a2709d12744f009466574098433677266799e8ca817d3d3cad8f10f3c02e8081c67ff479701eabdc4543c0a79bd25
+DIST humantime-1.3.0.crate 17020 BLAKE2B 37efaacedac293197ff7acc8b0446a73243a2d90ed8dbdcecd9cb0af6e901f135e1d92aa1a642460f531a6811a5f08075f8aabaa9941e96eddef301e205fdbe1 SHA512 2589bfdac96108951882b7ee497528b9084ddd344a67914810ea9961a1e319167d5cab959c66cbb26e398e75ca50d488a251694fff35f3c2f69a88b6f22844da
+DIST idna-0.2.0.crate 257203 BLAKE2B d26117124891f90b5e36af291c9038e2f4d46402c41380a6a89758459fd73839137e6faa401502be12dd81292cd9e12ec82fc611c0ff7a150510d19010767558 SHA512 375d6d73537a5c9cebfc850a2b561d57e748d80059ca27fe5e35c058cc12a5938cfbb39a76cfe57fbe589f7e36f89ccd91ccdb8899458c322e277c299293bc7d
+DIST itoa-0.4.5.crate 11194 BLAKE2B d8f0e2aaf62152c187e0987ab4b0cf842ac13255262a9ccbf8484d730ea5397572791c023d2363d0562c18c8efd2418680583e99a1f5d14450b3f0184dce69ca SHA512 79ff8774524130a4729d5e708a4a4a837b3e5052384a12c22db4ae3e208dc4391ee185365f685137a8ba55ea7dc3499f8cddddb2fd98b84177ab292c264034d3
+DIST jobserver-0.1.21.crate 21228 BLAKE2B ab1a6496d609e19235f022e920495e708571116e90f8c036edb5f7ba270c2ac938f7571e89f3fb714043c87623d4cbf1d404067ccac6a8b41e4a6768039cf02b SHA512 944249819e1e3dd09495ead941330e9abe439647c1e66ab7e2140c0c9e100b63f4f792fe06aa3c86f509f057df297ee2d35df0ccdfd4bd6a115b6a44076237ad
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST libc-0.2.70.crate 472909 BLAKE2B bbc4b3ec2ebad2bed2a164e407e344ee4a70a7d83a00b8501d82d70a03dd76a3af40b5a494676d203c37683d602437737c8fd1cf1e7f513bfe5db2820ff29b39 SHA512 a543b972e73d5bf142988464cd62f4402b782796074aabf4ec9396e341050d545b83212c7e4c62c224d5e06de4d794c67fea91b83d605626df115b30d8f326de
+DIST libsqlite3-sys-0.18.0.crate 2281735 BLAKE2B 169784f7ddf0f92c7c38c5ab7194a9c912bfc19b28351bae7c9012e2071aacad1287443dc76433a905995f995b9aca7dd656a08b7f9f7246971773801db21bf5 SHA512 b11a1c3694778b4e175ee459068c9a05ecb9f736b22708fa5f673514a0721537a078fda92b7a49b846e48217d8aed3066944f7be2e87fd28486eecf2ee4f4a80
+DIST linked-hash-map-0.5.3.crate 16130 BLAKE2B 20ca73044271533d2da6bb6ca863a192b61231760fddb82ac373a34fe63d92efe5b841fa401b9aa509cc1e05b86cf672eae3f26ab5c07c7b0c25e764e128344e SHA512 90ec22fcd830ccfdefd1f7c480c5cebd5e95c822e0c28fff9ccf00bfbdda080c17a722697fdc991ee04a4a32e974309440a91284bc13c9ee70284e4e247d33b1
+DIST lmdb-rkv-0.14.0.crate 26090 BLAKE2B 80095eb7d78d1748f3c9f59262917077cbd6d347e367e0fd8a348dac161f8c1e7160e535a5ccf848be9f13d53d0563617b8af1428633ec42add1ddde019a68e4 SHA512 e29aa28a891dd5f1e8afda6f7aaa36c8914bdb67927ca46ceda9623eaa03256b848f2109bcf39b8023f02a4e298c6071b3c2bfdd51473681a35717a706726db3
+DIST lmdb-rkv-sys-0.11.0.crate 164817 BLAKE2B 009f65739436e79e1ed6d95b8b36ffebccd3e5e8f6e01ff5e0147a571c5dcdaf5c09ebe2c627b91eb026d37692d79f59d2d20d9baec2a06dfe7b34123a3cd666 SHA512 7361f28cbabbd7c2d26b55989f09fed9264157e46933c7754084d5a3718f0fef1399f8fb4b071fc0befb4e36db7bc2b2e17e66ffc270f70e600798cd5a136df2
+DIST lock_api-0.2.0.crate 17694 BLAKE2B a1fed36e21d635cc69f47c22f3311180dcd5dcf0d31f55a76ed5ac644d8aae2232d945d10d9040681fee42569e8808fc071612110424358df798d70a47c919a9 SHA512 23ba50a3b69903a83de43c63c09c56bb24fb69e2c43d020d1dd5df61bf45ad2ee3f49ab4263e069e311a48b5b7220f3e2d1417c7c98e3c6350f0036007564a0e
+DIST log-0.4.8.crate 31297 BLAKE2B 31037fdc2fc94f4ab8a6e89a251b0bc29975027dc7efb7cc86a8e848dfc8e2ae50acdb177b7ba9f7c1f20ec01e50798f89abb772d67a33f1b060ac617cf9a8ab SHA512 0b71f97d5964134b5eea1332347e177806b2f171d0be5c410c0ff1539470b242ba9f0933fafd853e4171a43b5e373a150af18918924be431c7216022553a8a3b
+DIST lru-cache-0.1.2.crate 9307 BLAKE2B 606072bc5390a13cf24b4c64c77ba7f84c4c2b1a73c4abe8ead4e1d19067b063888d5cbe478dc9108d193f0a66aa5fb2ddc073f3edfac466de34f85a52a15ef2 SHA512 ecc67b4b2ed8d3596816c47e9c6aa242c7bdd1ee8087646e90c27a60d59175f661ec3ef82058c196bef2abdd302d429b7ea4279169689254a9f322dfd5697bf1
+DIST lzma-sys-0.1.16.crate 632423 BLAKE2B ce0df380c47e64bff3e95b60ee3772e0d1cef19b530461657c3ab8ac0153f4ede615013c8bcb2b4b9e1f1d37bd142bc940ab5e62625bb750562e5c75bc7b8cc0 SHA512 b9c3ed5d383f96f886471e89d8f194c70b022359e5e5504c3926aedaee76ff755e301b2f0aed95e8717ff1d9f2ff4baeb84a91d7fa41f1e0e0d069a74879e757
+DIST matches-0.1.8.crate 2216 BLAKE2B f18176110921b1cf6e58d52d12f1d1a3455ce2dc04421fbf1b392f66cdd81a88e924571fa27e307a06301d83b04f3b8a0ca3ae40d2da6f2decb8aac4e2801fbb SHA512 98b58f6a2694b03a7dd1be69ebf7e3ad14483fc8e4cb6e6c26a4937e4e660e843efb4dd04a7312dd9659ca02acd3775678f73b8faac44a76ffafaf873c22f590
+DIST maybe-uninit-2.0.0.crate 11809 BLAKE2B 5e517b8c59f9ae4f1a4f86b48679ea64d62450ec2519c8caaa914479ce9e5b3aff24707e2e37272ba74bb60499afdc602fff17756337b0c50a9184edbd8b8805 SHA512 3006fc009c7c743d9147a4122e677cdeb2546f7bb46963b2f266839614eb906f9d763c161044fd0bf3f7b54124ac0734ac9ae7f7151b1a7a5f45cbc739976434
+DIST memchr-2.3.3.crate 22566 BLAKE2B f952070b98ef30f0d2780a6efbeb36d295710734f678517d913a8002cafebbd3cfc38975fc4546d306efc11bc815764d14320af3b7a2360bd46fc2ab3db9efa5 SHA512 922e05da920d0d94226857788878ee5e31518cd80d95ae57e1d7ecd233942c37d01565525db2f1dfdfd5b3b1f81b2c73eee058cbfd745cb4e1519518318df248
+DIST memoffset-0.5.4.crate 6927 BLAKE2B 0563c8182c5242b8396292bc6b8f7daf27bfca5a9057fca6854e1329e76c94be6c1e9d7d25aecb09c8140cb9bede4bcf224311a37e9e730149f8b0265e1eccd3 SHA512 5f8f6a0f12af165a98e6401a694ae35fe5ed21865d6f25d95b64c363304841ef05ad0800dc841477fbf85080975d49a5a182964d6240c182b9d55ef3b5877a49
+DIST miniz_oxide-0.3.6.crate 44717 BLAKE2B 49d69fee6911ada1effe8ed73072d7815ed94a2705276698a178fc77ebf8c9e92eb286d7d71727a894f46e605afacd620d48d6aecf8975d2366e46e2c8c8bfb8 SHA512 d041b41617ae0e614f85bcfeca31d0c9d031c24942f786f43166e34ebc37bd67e3b9a44779e74b119e3d95d288d0842736ba709dd2faa3cb418415e2c86ccc93
+DIST nom-2.2.1.crate 95289 BLAKE2B 1f5ae66f897499f3a24d89b133cecfde5f38b80a05da4dcd4cdbd87cce6f37a690ebd624c0c190c77338afae74e25cbbc9b1f2fc765ec474eb8798372d11ed4f SHA512 f628351d0c9d4346aed3406777bb87d34a53be739b98712f80e17fc31598a75d165f81870f2e633599190ae1be850147502b5b7855bc184fddaa2dabd3314377
+DIST num-0.2.1.crate 9082 BLAKE2B d82bf8cf2f53ad30cee1364d65358e8421aedf66126184936d575e359307373ede66358e7672e1eedf3b8ec6a997439a077943c6f20045aa24a89bcdeb611e70 SHA512 9d094e0a29b2bb42d382d5167150418bc2ed81e8deb3c6636c99c86ca14abf5f69b82a49f1678dd110119eeaec2f476fe7a5d57e60558473a6b7c710dec7f778
+DIST num-complex-0.2.4.crate 24679 BLAKE2B 175ee644720b6bbff108eb4ef94d0fea8f340533c2be0e18524e54777734d1c7dc10a7c36b1f2ca3f032ddcb3dc351e60564340aa59b29aa4fa7ecb2487314c4 SHA512 53be64d6f67b1ff7d0a4e1723ae21035abfd300ab27bed0976e0c3903fe8e29f47ffe75040832ee2f81da5c2f4f671d3d845d308365b9a5a989ace99a7d463ea
+DIST num-integer-0.1.42.crate 19463 BLAKE2B 91ea6900dba5a38bc7ac4de0db8706f5335baab636937e9efdb1b82ff0e8ece4451503de3ac9e473a4dd7c70d599066f14840789fa88aeedafa585f0f98ed61a SHA512 8c7e0529888e18b872a634e8983034b0357143aa72914b45c02ee87447204296970e9b1ed078d9436ecc779f25360b1a1cfaae5a9bf7c8ffc68793d7c25593b2
+DIST num-iter-0.1.40.crate 9659 BLAKE2B a4bfe3834feadd3731dc74872949522f92eb48d4adf63aeb93b73fb53474b408daa12075f1f2128ad929dfcfb103ee670cd61c95b7b79ead5656372e43b79b4f SHA512 c2ef7ee3761f57bc768cb892abdcf9ce8d65b4ba0b5e130d30eda0531368c836a61b1fa4bc3fb95feadd2f3fd787c986e7ee8c26256c05f2a89ba9bbc2c32141
+DIST num-rational-0.2.4.crate 21694 BLAKE2B 6e8dbb873b1c62046c3fc45eeea0533a8375224fee6537e369a6042a42f98865c010635f3723c8116c32b365f8dd553831efeac4a1fb2bd0cbb169c90d7035cd SHA512 06e55f17a1ea58fd465a232ebd687686c922669f0b561f648717164f3fcc8fe2bb43213d1e6377158d2542f633ef2e1482a7c3cef8090328c34feacf7f9bdd93
+DIST num-traits-0.2.11.crate 42000 BLAKE2B 78584a3e8011391b47c7ce45c5a63da5fee88aebc2ee7ae8d788e22b1d6cf46e31e70b7bf6ae094d35ed8dd5ea4f91472e6050c526acff3f181ee383fee139a1 SHA512 12d73656db34456a30de7538daa1efb6e6f61353a0e274aca388bf184732402d8eb8ca19282fbf51975e0541b5c8d764a0148abe346061dc81922d5eb12592e9
+DIST object-0.19.0.crate 166974 BLAKE2B 29d60bed376fea4db8b8ae4c214eec006682d2317a9789a55c1737e41591d8f668afbbdd3eab6e40346647692c5410caaeae456a172aadf0d3517c53eeb560bd SHA512 6482cae0233de235cef2e09b72f981a88747d4531cb04e41151ac5083120d1c3dc0646b017b310e51ab3c304a91502a343f0970e61046f54bc8e332b27b0bc73
+DIST ordered-float-1.0.2.crate 9458 BLAKE2B 6a2611ecf0ed5c1a999b3b192edaba940caf8b07a432b4f3e27003d246f9b1eae346747da60019a9a60a92ccb867fd2451ad3f4e6acddb9c08ba817912806115 SHA512 aec5c5e00fc17e47687d69fdc6cc3d4cae337b2af6f28cc869ba5e98aa64c81493c8f822e6b68f6cc109b99a7b19363211b28cd3cd9263cd61f2ccad3d3f7399
+DIST ordermap-0.3.5.crate 35246 BLAKE2B a663aced769ea6bebedf21b95e98756796b9640d89e1cde828f7af32921cd7354dc7dc232fed40f4c65d54ab3e472200e07a057cfe634002d1371c9f93003e20 SHA512 4413319af191656c82c6f4b185840486d2021ab4a91e412e5472329af928a6519690734613f9616c285c6a4c967a4c718483583e0a5d4b16bd98b01f3d226ddd
+DIST parking_lot-0.8.0.crate 34446 BLAKE2B 0b5c1f386f5e67606f911aaefd9022abe01486aba5109ccc5ed72d2e5e87bb2ea93430114c12e0c1d76a799fb5db04c6e689f98bfe66ec693b7a63cb28287c26 SHA512 82937f87811a987652fad9c4018efa2dd214b4142c5a94c6629fc5bb0e9c49c13d9503783e3932fd0834f2a1afde6dce80aa488b2bcd32c95bf9a9d5ce139f93
+DIST parking_lot_core-0.5.0.crate 29706 BLAKE2B 80f7fdd38ba3afd6882a0c636bba79d995131451bc17d75e9100447812e57b4fbce260a5b957de065d687a655457ed51fa58978438446cdd4235813591a8d2bd SHA512 fd90b0a82713d329045da37ad4ab6b66d1e860f0a6ddcdf102e8740b98badfc83d6c056210618fb339271f1f68545090287528590d337d34a31bd7fdb70b0dc8
+DIST paste-0.1.12.crate 9854 BLAKE2B 51d34ad87527c94fee968dec174e8bf55afa4d55d80c1fe2ccdd7779a2cb183bbdd42e78ad4be9832e32e7282bd61d8b9b0e17af8f64e328accbde8ad1fa7466 SHA512 079bbbad01e965dab1404b51a2ee7920e85cf7d827ca95e6a86460c3c033e26e3fa54d490d3a42abc7092d117cfc5f8b91b5cb7ea9556b75f32be7c70737c0ee
+DIST paste-impl-0.1.12.crate 7906 BLAKE2B cc09da67e026ffd5f8695b0cc7ff89b60c5efa74b731568cf386407028ff18de2b71bc1c79bb8029302a82b41b4a945fa25f4dcdb415e88afb314c84431b59a2 SHA512 30dd06ad50a50e68798968a38060a92f17cc437d4e28559bbc38f40086c3346467621ece99380e97dc4b86d447389361a1cb823aa3cdf23ac4bfd42ee7491c87
+DIST path-clean-0.1.0.crate 4909 BLAKE2B b3becf5a47e303dc0f61590256728a09450d0c8ae2da11482e336c919541955100c5265c90e3440b3176ee3afa3a00df36a49f2803f91a17c0cc41700e86c5f0 SHA512 c4338b6dd98785f285642faa44ad0c25d1c7cbfb0e27b0b2159054c62efb7ee9c7999cdb0668f77581d6565ea3254d67916982a4b5720133f385771828284709
+DIST percent-encoding-2.1.0.crate 9748 BLAKE2B f3ff35ac683724b15e40c85e0fb8ececb07b61beeea82b7020f02d27df05a8a3535f157b3cd688533e414d6541de7de8640ef4756706d8061af0fec94ba04ab3 SHA512 98af4dfa7c6a3cf0d5aa929c436f9eb1ba1b576a944513f1284e6df2ad06be7cab9eba145d888d50af88f8c970bacc702b323041bec6d4fa1dc34095186c628a
+DIST petgraph-0.4.13.crate 111936 BLAKE2B 426d865c16930715a2207f778ff108370cee0ff8929d49b00d5497e4fb28cc62c2fe34704b75f55fea416339be6c7417545a23b085d33af74b0ec31378edf2b0 SHA512 670753503b9ee5eb28b73e9ad6367f5cc97064182ed82d691ab95e3948b1d879aec9c74eabad11c232f40cb18d2629e1bdfedb3f0d444d65526a2bd7e69bb60b
+DIST pkg-config-0.3.17.crate 14533 BLAKE2B 729b15209bbbee8a6d3854e30a89b3e6041ca3cf7b1460ff6008e37866e326d9ec8b4ac582c125676e31eefa048b143beda33432b95f00a8f51cc7fa33ee4986 SHA512 42be78556adc07dffa8933ab1436d5d6a776018898377d58dfdc9f961981f9f21397301b41536c55d8a3772bf74a38069899d1a5cddce5c24a032017137044bc
+DIST podio-0.1.6.crate 10186 BLAKE2B 30f1ccfce0a1026ccbffbbbfae035fd3575b43c9226b6fb05c1dc7cceb31ec02de1dfed3cc497dd4fbcc611a767e3b5cfa3c751598663dd5c30ec457c6b5d946 SHA512 91901b941780db01f01848ed63fe44decf3543dd5163804fbd0118435ea60b43baba9d24bb1d182e929744a32ab4b2a0bb7fa9b6e9f3d32966bdd6b8ccc631f7
+DIST ppv-lite86-0.2.8.crate 20848 BLAKE2B ca85104fc1d6b300aab69c7b9367ba04f77ccde38bb7aad80cf1f615490696b27d61dcf242574abebe54b288414fdec2b63c756e47f188386a0f5523482ad9f5 SHA512 224db067f771eb48e4b0ddc2b7a1baf7389a47675ba93da50e3e4d6c88cef09e0f4529f399350b1b3feac7a88469406aa9b967377177a8c89605c49e1179771b
+DIST proc-macro-error-1.0.2.crate 23699 BLAKE2B 2d8310300002d1dc3fa68391190c5536e1faf6be05f1dd2ed1429d530dc527f431bdb93a994f2e68ff6120523b0d10a4a2ab35a0703f3013b404d0b82ab68372 SHA512 a9ec65c02f853f05f6adbfd398a82e84dac5bc376f041ede65a47b510914f5def1ae480c1a7e68aa6fab836efb6bda0d712d45243472b73c12d1ce7cdf8c3583
+DIST proc-macro-error-attr-1.0.2.crate 6974 BLAKE2B 4b8fb0c70873eb487dbfbcd37d5a5dae6d877a910f3523d9985a511ea97795082548f03bef926ca91028340dada954217926e7b9d8cc70765343f6d86c1e7c01 SHA512 1fe7ea1e005ab4d6b777b2caa4a5c2ad7655b5375fa987b0b2cfbec6a0673d844aee2dc273dd327687dcdf21a165261e78175eed69e881dfbe1f2992eb505c78
+DIST proc-macro-hack-0.5.15.crate 12806 BLAKE2B 7c6beaad31a2da23028e0a5517737fd9d8f8c81894c4aa09f15e7d323cfc6ee27ad69c5797843d05b360466e46d2e339b4c0b2a03f6a0d3e3bb2114db8c192b1 SHA512 a49115f1271c6a9df57fbfa647b725f84dcf87c6c3894c35d878a13fa5981c790de16f02823c2ea1b07da5fcde85e9b13398e7317aecb4119b80a4ced5dcf59b
+DIST proc-macro2-1.0.13.crate 34303 BLAKE2B 090da288cbd3d21ef2faefee80fdb17a4184789f6ec47cbcfb6ee40eef25df8a64c22385ee1cb054d121db8919a337c82798452cc054aca19a415732350efac5 SHA512 bb8043709f54fc3f845c1c6ec937a393f3418165ad854fe9a15bc1cd40c8c1545fc127b0fdf337f49135e2e2b7f9b5203ebcad92d32987792eb22622a53af4c0
+DIST quick-error-1.2.3.crate 15066 BLAKE2B 1c61525d383f3588c1c5017f016f60b484bbf2035e7f63c553bd9a49b638ab0c6106ac3676a41072b24da4e13dde78706e0f99fd1ec9ee329d5be81d45a85866 SHA512 f8aaf9024d20ccd42b706c756eed8320aee339f8776392b47a41cc82ca06b03df1a5b1f00854cea96689c5af261b4d8c5d2b1a242d10f2755e7e33dc41be35b9
+DIST quote-1.0.6.crate 24225 BLAKE2B e8706bf2e19b89855d5636704253d674fc9804e0d9713d1c1dccd5fe06af273f8604f80b6727f788de6416e62dde67a13abc2f3aa81cd5ea45eb0c73069ee300 SHA512 1febd6748602d4d96fbacb1f37bbc93c71d9fbeb9be7e9c6be2e871614048a1b2921c1ae702bd8db5d449308e7946ebff095689ef0bafe52af37c04936a8115e
+DIST rand-0.6.5.crate 104814 BLAKE2B 8d94c6f135ff4b07a2236cd7b0c2ff2b80f3d391e330590bf0ece15b08a8c8a5175ea32d9d12832eeb485822446515e14408171d5f1476a27e2b9ed97aa7986f SHA512 2eb84bed29708b8ba109f4329bf6f1cac6caed9d91b2aaf185d68dd2eda73d3fb7be2897d0596fb28352e799ccf92c161ee44599d5cb426ba9c3b8c747831904
+DIST rand-0.7.3.crate 112246 BLAKE2B ecc7c1bd70ac874c03bd8b7faa3016bb2d5ee5c19603280a12a45a81598f706e445971ee081e6ca410ab6f0f5f7a06d9315848cd556a2d8522a82024f6ff91e4 SHA512 f9b68ef9446f1ca2c8092c50990f15c1b4cb5529eeeac4df8d69755e0b7253c663c587775e7cb0a7298c31edb444975dda34926759306541f6d43d0d3cf57b7e
+DIST rand_chacha-0.1.1.crate 11703 BLAKE2B 125fbb623b5d829c48e5b492c36585037e7fc6f12eb9090f946d05343fe867ce65db8eac913762dc20b6af2a4856e957ff43916897f3e385cc22eae64911b0a2 SHA512 200d39362ffd6d91cfe80634e951c7323a5df8a382c91e3afcef1ecb143a16dc47a17db7f1a746b18e4ea8bfd36bc31ceaeff6d0116e166f8b34e4a8530b3c1b
+DIST rand_chacha-0.2.2.crate 13267 BLAKE2B 7908867ceac98243ade22e1b38f1903fe0249324484d91c948a5058a1e099e5213f325c5ba3400898c8319158ed69f4ed064164f235470856a8191bd990d5a10 SHA512 1e2117442e4ffdd834dcbf0ea1829e73202c0ff9041d5969d81a59330242145f2753f2a56de2fdbff65f26cf0d227c7d08b2094ab2f946b764aef88106a6ac84
+DIST rand_core-0.3.1.crate 15483 BLAKE2B 2e09b3b3306514c29bd7588498e79be7353de656d8cdeeb4dfc6a1ad092f15a861c2ac20591ff71f7f60d986de9a09c860de4a9f06799f04e736b31bc70a5fbe SHA512 5a7ae601124502bede760fd3179c2b28059ebc3b5983bfcb6b8fa62fb58df95cedc1aeb2734e792d894dfa4620801c13c29702f9cbee64243121575d4b6b9114
+DIST rand_core-0.4.2.crate 20243 BLAKE2B 22fee5e44127eee047ad8abcd9dd828befd0feee77ee9a0bcd4dd42174b1e650f2a19f1f3b39fde937e58c17afaabf7231e2aabf214c2eb22edf3f85b73f6eec SHA512 f7ae3b690e2cc1fbf2707ee04b752bc5472433f737ab581f9872f7c5660966bc6be45f0c5d2cd8771105df6d4a9d206c55f5cc6ffc1693b46e1ae03a2883b028
+DIST rand_core-0.5.1.crate 21116 BLAKE2B e74791f941a79971f2741172d489d546373c9abcb0dfbffcb7b97b858ec800b2e0c97df4ac636f3aa1b8dd6c14685edf317336d577f31b5c6cb7d89a157e547a SHA512 4f7500b35e165e6c817fdd67a50745d5497d24e554bb554705097e37258751e8755c4d6b8a69fcb5e1977708ba78620bc35d640e4e018fcd4e88d9dbdbebdcbf
+DIST rand_hc-0.1.0.crate 11644 BLAKE2B 24e9db27c6673ce657dd18e0bb5ac092c4340b818e79edf4a3ebfbd9a49759d3969c22f4357be5884192b6e6375528831683be54e1283112eb94097ff38d7d88 SHA512 808d8c167daa66a2608884d5d3f1444cdb21f8ca1c61e59fc9bdfb506a634ebb22c0143cfc0574e15313f82559fd2d117a46910eba3b4eb7e0052ec280f5cd2f
+DIST rand_hc-0.2.0.crate 11670 BLAKE2B 55fd048f2524cecd4f0e17927a81111e3070a8cc6a5b0234a46445400ad5527194edf8c91fb5ad6538f4958d53044ab02424f61a38adb2931e2cb7568c458ee8 SHA512 bca185612bed5cee4da76fb68fe854105da276f5bf2da464e596d586b925df798cc692ed881e276ab77c36b4b0551930966c93656be122ad05899d87853533b0
+DIST rand_isaac-0.1.1.crate 16020 BLAKE2B a720ac67770133f6051720afb6681623c1b3700be9ab8f663fa8ea852132a81c1404e34aed6829c197b92996007997cbc9105cea0e125e5ff3fc931306c55da4 SHA512 9e8f6c79abc53352c971f8182dcaa7979904d5649eec9008262bb0aaf0585b4c4817351cd80ffa8d07f172ff4c82d85a09ef2642a08f608fc6be3e246ed7f82e
+DIST rand_jitter-0.1.4.crate 18409 BLAKE2B f346f6856128218aad0e70e8b4b70a19f39b4b3161ae2199d893f6427ea1e2b7aed4024de311add4ea9a19de898f5b34668a4c7727c9e7b32325663eb6ddbf51 SHA512 fe3791612cf82bd0ad1a115c442b4a007141647eecd48f49dff9a5d326c374663d9bd2e511c8d292e1dba44665359b522cd5d57ccd3a18598e88e42ee1670e4a
+DIST rand_os-0.1.3.crate 18965 BLAKE2B 3cd93b10a46a70e0e3ccaf1fb8ee52230d74b7d790351652a8e39323bf0dcb446d14e9229e13c14a84e93394a22e0a127f50ded11db1df8ffc0a6bd564af63a7 SHA512 01e81a692b78df3b2bd65bc285e5052ccaf208c7d0ace414f251db4fcff7f9ae1502ee60ca5745c95e778d3d5efe15fa84153c17c422b6b6bfee829376c14575
+DIST rand_pcg-0.1.2.crate 10844 BLAKE2B 14150260cb41d57c59aa7251000acb1af9225b015ef8596527e1c313cb5943bc3e6c995e31b9db5a5bac41e30f36a6f7fce5a24b21d6413e74d0b3f9732cdad4 SHA512 6bc684778ba60c2e48793d4759b40cb0d35b0bc20ca0fc39fdff7c3f8fe9082dd7b5d5f26a7f17bafc6f3568924eac1bbe45820b1c2b09c91731ea5487d76d9c
+DIST rand_xorshift-0.1.1.crate 8997 BLAKE2B 314192d23072fba2ac66130604d92150bf946c6f6cf88a4b337314c51777af36d8cb6189b92284e451ea078e0ca66e6a5b91a90c0c2b0ad2353ecd3e08667f68 SHA512 3205499ed2584467dedb4641a48f3ca8fedc263b1d9431d36a251af0bc4701d99ce4b5219d515b9b24210dd3ef2faace6efa886aa50f361e07f53dd0fb0841e5
+DIST rdrand-0.4.0.crate 6456 BLAKE2B 330ee64d998a0358f95a3dce50b3e1bbda531a3b613db7e5ba4038a1cf7191b60be3a0f33416e05380c41040704ce52727928915e9d2f4565d39984d1c86fcd6 SHA512 6476275d124bee28747191471e8d8f321a3b1c148c1f2a7ece4175f5244a7de90afe5f99d2eba5244d886b92e38232398864bf90e6d434b09494533942c8d894
+DIST redox_syscall-0.1.56.crate 17117 BLAKE2B 57b1b01ef3cbc6f55def6c9a0dcde16bd98e83badcef993e26ae3ce849abcd1b1c10f4da931c605970d77f92471734764a537e7329291a221343fde23f3591eb SHA512 17a3044327aa733c830dd74e210d6bda32622617d1c5af9d70d7647232d8569ad0b04ccb14042cbabb5d97ad98e3f1f5a9968a75387354ffb4d175e9577115a1
+DIST regex-1.3.7.crate 235600 BLAKE2B 15370ec0cc9f37c6a7092eaf78a731740aae3d79ec6d385244f4568395cac8947860828ff585aba9f35ccae684bb19e214120f39e7f4998350ff2890a43f2466 SHA512 59090515860c26551ce08e8b37cf1227712944844148b79dcc7348f430e5c3c70767c20807cb1affb242686e7e8f885224c4c9fb9ae890b57f766fec96e2aa69
+DIST regex-syntax-0.6.17.crate 294004 BLAKE2B 3d203b06b8b1a5bdb42d50d395ce117ad92e41a7d36e5cb5194014eb7af1b17f944ae493041b7e9a2a9ea929381b4c1cb513c895747beff97aafef524ea2ced5 SHA512 bd9a165bcac207ec3bb87a81ae644be98d9b5ea0053b3bcc69efb334e3ebfeb85021aa372bafc3575758200640cbaaa67d372950fbb3ab210d8ec62b336d147f
+DIST remove_dir_all-0.5.2.crate 8907 BLAKE2B 585f49f83db3ace90dd0b4fc77aab7525844194c82d36cc33ab8999aaa6226d24a130c30f55e2c46a08273cc554d9d4c8bc51958aa7dbf1045085b2e22639e4e SHA512 d19a45398a93adbcef9f233f6b3eaf4a63ae95f5bbae00c880b40c5edd34449e7f798ebcd4d11843c68ddfa15e11bed21d434b224e4a175dcb64ae011c13c8cd
+DIST ripgrep-all-0.9.6.tar.gz 6429257 BLAKE2B 184ad8835c00913eba07c6f922683b372f790ba9a04141bb98fa7510095cc392b750361ddd0cbe0e2ebf832b24249c0203f07b1e494ae7810ca1585868895bf2 SHA512 45fc258e8ef44ddd7ce6b4c7dc5c60a439c8e5aafd253ea41621afcc50aaecd300d8792c4cbdc9247a5656d9c3db0a33053de96ca41f0831421ea8ce382ca7de
+DIST rkv-0.10.4.crate 45110 BLAKE2B ef132f136558648990ce3a1f253d30734390774264f395a5fe23cc97ab29e706fe8b78d4b991885a83de1d30dc0bf0d4f58931053ac64ac634f5050dd2142a0f SHA512 5c48db9ab5c45b4ed8fcf4278b95dc8509f28708918a84fa94ca3fc908a0fa62f6745ed46df8f2a0a1071eb1787a2f5f61538dce32ef356ae0c168c09f9dee35
+DIST rusqlite-0.23.1.crate 112106 BLAKE2B 81aef08730b86d6ad5a9320a0aa7c6f1abfd7e938908f78784305e7deca4af2bf79c53041ff1e63a12a3b150530c646ef63f6f036e914913cbece7715afdaa30 SHA512 e93a38e80e55c4a523b757981b285547e7988d83610c707013f995d2eacfb3d65b9f2d245db10790e89a2fc59eda7c5330f17d45baa55ae3c63dba523a36dcb7
+DIST rustc-demangle-0.1.16.crate 19137 BLAKE2B 04226ff97786b81c90130b48cf6542ea448661af9ea7afed179e71d04abf52cfd3c53fab26d4d35bdf2c1d5a735882da7703527aa48ba7b77f337599c2324150 SHA512 36a63a28a72c710d08524adbb7d11def37db23fe123fb6ea848623b4207c7f80d8415bbbe951488ceccfb8f4f1cdb66a8edfc4c0eecdaa62c87df9e032f4c063
+DIST rustc_version-0.2.3.crate 10210 BLAKE2B 1f707d1c66d907c9b1d2ef6d0bc6bc9c89990a7b922a6dfc2041865940ff3854c4d0e1daf558279fd5871af5818d4000457a32c949104f46538312fbf730443b SHA512 01fa7a758dcaa4f15c18628a0d5ee5adde5ade96a8b7dde0908e39e27b290d1e9adb20d44e2adcd379341d2d4a0c34a80dc12553a3bb4efa4758988f28989779
+DIST ryu-1.0.4.crate 42039 BLAKE2B a1cd38c85ff105a0aea5e0cf09aa2be15d07e5344fb4a52b00bcbee6c6f966276aed1163b480b2acf669276368f04217eb7c0a6c279140f34bb54b1802e1ca06 SHA512 a1b28c07b32374757019f93eae30f82ae00682d5e9838f50864dd4ca898b8220b9bdb0f5df55d23d6bfc7386a3ac93697a18c82215f2e946e06c079962123703
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST semver-0.9.0.crate 17344 BLAKE2B ae782bc78f29e45577de8574ee58959c70b54bb0b6f45a5a7b09cc4d358d9a0a80bbefc6e0f2a330e2b55adfbbe5c1f64f4ec9bb94c4adf7bb3e4fc9c142db6c SHA512 03a2ea563456f812c301721c3572370fe4934a22db60079da0dd6ffa33fa789e5e2436ef09e62fc35e0b742b06fabc290992c74eed80419a353c9de9449928dc
+DIST semver-parser-0.7.0.crate 10268 BLAKE2B e46b7cf9d292f8fc54561fca4df8534dc96f6be920a5c869c405ddb31b9d1a18eab0799207113cf4910a52cc0df5017ab1bc1883a7c3787ebf2d60f09ac0ab4f SHA512 17320468ec6b9862d595f358d70c09ac6e09db7885fe0ead7a1e596f79350a6306e8bfde5bbd6512008a7c5454da1c7ae55fe1e3bc1c1ff02ac9df54c0a6121f
+DIST serde-1.0.110.crate 73947 BLAKE2B ceb9896bd205026825767951c6dd4c11aa5ce485ecded75eeae2f88627f4851c378c311d7ad8d06395f2ed976e342d31e11787ddf926dfeb0643ca0575b32ccf SHA512 508fc3195ba0deb75980a758a4392462068fdde9a87fe2f379ab9b28c573c5af45617b82e5fdd1e34cefa075888da7f533675b05d57757f0c0200b4fa5698863
+DIST serde_derive-1.0.110.crate 49751 BLAKE2B 14f3ffe6d6ce5aed13a800c2802459bca54546d3a77dd05c4c095f10ffabec8e66195cd69994b46162a96bd95fc5fb0d78a08864b7709a8f6c32643183cb90be SHA512 b02a831fced998388a39ad5e8ec12de5c7d09e18b69f15b112870d1e5976f74e0cfcd28a68dbcaef87c4be30001bd2cae076de234a59e8f39ea0be3014a395a5
+DIST serde_json-1.0.53.crate 73130 BLAKE2B 28f118648c77c8ada5a434416ec6b28615d8a9b677da7f34c8ba1104730087ac6d93e010a767199a98208ebe5dbde1203a47f28a2394a3ecb75b3d115a3b27b4 SHA512 8932a9f9f783b7124c7a41c9c3c0c1934c0e5b8b628fc9bab5ae0f78370231649f17de8015f9d6facf4ccd0305c68d8c648799e239bf32558c6be9bbe3819e22
+DIST size_format-1.0.2.crate 9234 BLAKE2B 88bc6ef9ef5ab210f5024f33ccd6403e53fa81ffc70ff5c4342440302dcdf87161e0644255c99e3697a6a5b0da754df0eea07b295a351b30a1737a55f453ad5f SHA512 847b607636deed445f233072074166a0af0692b57dfe7524f4d4d9ce79d8fc857f909fe9230085ac77d5290fefdbf4642b675bebabef71d88792d53e80fcc906
+DIST smallvec-0.6.13.crate 22760 BLAKE2B 83e573aadf1742122bbe1897bee09867d9225624474cf8c9a1bdd087a8e69eecf9567e8bdd2bcecdc8cc08f5f4c4f081bcf718ab062ee399c9a09b7f8c54948f SHA512 497e1a77414d545b44f099a69529c6c9a8be8cbc80a84bdc9e85428263518e6949b81498b9ce6ab2795508b1c3beb5e7e5aaa3623bbed2c041f8c3f4a0adfe33
+DIST smallvec-1.4.0.crate 24645 BLAKE2B ff5102e2b3a03bf5a8e3e2325f93ffc96dccaf2a4c9ca50ccbe7837215eb356e21d2aa5c02e5130a657c166913e8c42cf9dfe50352b6301231b4bcd37225b6fb SHA512 32a56d7055655ee7d4a6556afd63db7200c269a109ec3bee29fefce8bc75363762c3cf625aa3edd3b06a93046b8c64fea2036403b63ac0e764e08af78c936a63
+DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
+DIST structopt-0.3.14.crate 50408 BLAKE2B ec0e00f6ba689773450c653e94866807a098eddb2e2f7245bbcb14afa075fcbb23c4f831d1f558333d03bc5255d1344a06f1c698a0efe3888f3fb9532bc125ff SHA512 f05d7edf430626c9281e97782bfe1d42aeebe0eb4d4689e0251906dcc67f039fa1a24e1059db88e3f4aded2a094cd1dbe68551a64116fe0b92e460080c4b116b
+DIST structopt-derive-0.4.7.crate 19395 BLAKE2B 47d504003f99fca23ab9eb6e76ca6fc60a5509adadf6419dc15c82b00ec00ea826636e290628a6e94cd7e4745b2aefe2856035743cafa97ddca24351ca9353ba SHA512 db052fa7932d0050e93db82cad44283e04883436a2af5f63833330013985e9ac3d661bada194429aeb606781d2517383b7f5bd876125a4e02142dd6ccc6fb750
+DIST syn-1.0.22.crate 200450 BLAKE2B 325403804ad8723d2e63132dd9aab16fdfe305d9bac0b2fbfd1597f562e259290ff34946a0aad9b6dc36524632f0ba3a8b2261147cee2d9eedceed8d21a60ee7 SHA512 4d3beb6d448d24bb7413b6f9fcc5887fafdbdb9392c196bc7c1c0ee6dcf41fee2eb9166d8e69279437d266772a2581733868e763c19db32334f01c8c92fa11e3
+DIST syn-mid-0.5.0.crate 14149 BLAKE2B 87170d072ab6f5ffc6d7f4dc1a08869d4e5c0f505b9130d9b5778a55e206a488b048e47895a524e117ed58b3d45907c8877c897d1d88536a06c9319826b596e7 SHA512 759e29a2ca984eddae3c091be036ad630fb985408be31d838af3bb04fe1f26a3d2b7ef597c1ffb61a72c96383cbf39d8fe83cfe0d79ed4bc3250a585156e637b
+DIST synstructure-0.12.3.crate 17788 BLAKE2B cd122d9c374b59501efb3b38da1f867b86a41d5c7d3f2e854100297ebf193ecd3fb4a64a74f0fe186645de2ad2c95fbf6e96b4872b76f6140400307ab69d1196 SHA512 919f908c679439cb9c2e60ee8672484504f03781412fd13f5cbd745a86ed794691665bcd7ea995667e89344d0eab725125fb0027c60f240290b300d04be26a59
+DIST tar-0.4.26.crate 42689 BLAKE2B 174baa480caac4734282003b5277004d87ccf9d5519b0adc3a02ceb0831e053483eb4cb7d21170ba792e2a573748aaa9589a261ffa8050d8bf2bc36e86451e16 SHA512 83ee187b253347068121d04242a488ac44ca6da159c6f9029f3e063b04544b7fa3ed40fed7e251692ffd73553dd369edb413f52f3b3718396451ec916eba15ab
+DIST tempfile-3.1.0.crate 25823 BLAKE2B a34721369923771d5f9a2fc64adaff2bff41da97a0ce79e01aaedb8d6670867220c671c0d23f7a8a9c71b09c0559efe4e7c9bab1f7f9d890866be1de1ce050a9 SHA512 a87ee51c36a81a8a8eb8f091eb57926682f38b707f7f641332d8752170e6c139a656ae49c6861f51e07c2fab5c86cc9b2ac158f5d89c6bff15d18934dd4e7ba5
+DIST term_size-0.3.2.crate 10917 BLAKE2B 2302faf4cc03e0e40e4b4b0ca79cea5e70caed8087a16f2b985673476041d19ee6908bb17931b453e63a89e33158f7e01875716879964664487fb26395ff7f49 SHA512 7e820ca667f841719e82cf97e90bd2546cdd7ecd4834c68f8eeadd2e530bb13ced1d058ea7beda5db77eabacfaef64b8c3699c482bd912ff570f6ab78149dc88
+DIST termcolor-1.1.0.crate 17193 BLAKE2B c3a1a80269195f6bc92d141fce0885413c031980a4ad2f0f6e5a9051acfac10bad8a484362bfcaf3a60851a97d930e9602df4c00aec39431ea5a8a20d40a55c2 SHA512 41b05b047cbfdd5e3990eb36f635dc8ccf26a42bd5403d6d14a9f3c341e92b61c3b8d4d5f4fcd29071a97b3d96280ed59b4557b63a769390e2729fc82ab39702
+DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
+DIST thread_local-1.0.1.crate 12609 BLAKE2B 34206b5232262cda9cc0fb970e20f154d43ff1c4477a5ad5ff9200e6d874a6c7b2bcd99a2dae75a984b54574281e049ad35307ace0dd188f44c9a95fa93139cf SHA512 f2bfca4eee32a8fc88a01ff5bf24518c12142228d95916d13aae35ed6addd0b7da2235359f15220049ef197555344ac31a8833775e7a5bd49144db9c54b3165b
+DIST time-0.1.43.crate 28653 BLAKE2B 95fe69647e8d52784be1fd3457578896aa38279d00f51f1070eadab111d39450583c63854c73d4384f2e4349b0250f1c9bff9901529b776c596846c057c93335 SHA512 c3e0c68cab1ed2f33f41955f83e632c51924e4d3c1d22dd0c4ae98499e03f3cafde8b0c2d9e69b67a78d6e4055e464ee00d1ed6af5eb9fa75052405b43e24a25
+DIST tree_magic_fork-0.2.2.crate 36275 BLAKE2B daedefe9cbb8a46e97e861cf6b9421bf8251ed99c8d60a24be51b7fb1286aa645afd2dce2c2861d99c665a5319bd440b6a7bef1059b32bcb6e0258f9680c9e2c SHA512 85e7cc211d871c4d3bfb4a2637e1809f5eaf162b284132dd2b4ac9bf02aa213d5052e51ebf814ec4a78c74b5b626c4b64baa617be7475d97b9251f622852a892
+DIST typenum-1.12.0.crate 36037 BLAKE2B b5aa97daf856e4c0ecf6f543ce75c1203ea2a27b493e4e62b1a0a22fbccf79217382061833e518a5de296a00a4a5f3c0c1cc736a7fa40a947712fcddf0735ea7 SHA512 b88dac076d4102f2b1d74501cc2bedd4eb923458e060ab77b826093e3146bc48005ad7d3471921c4f5e8765f3f93f8f7c48e0eb00e2623ad439bd60bcf64d6ea
+DIST unicode-bidi-0.3.4.crate 32228 BLAKE2B 853a85b29d1ac2025b7a28af64ead9387e3b4b1e790ad719d4374e349c1853ddbb5959a2890d9d6c94a5c28e4523fc3324deb6b1ed1aeb5e917f21b0e2516f6c SHA512 170ce083fa82bed13ecc62d85cb882fdd6491ae721e1633d3c1a5d3cee69422153afcf6695765c0e8fc7035440d0370d34afac9e978cb27f7506c07cba300e1e
+DIST unicode-normalization-0.1.12.crate 91057 BLAKE2B d5b8354990e1911e093d63d9b3b3adeacb38142ac68637fbfe59c0822f34c743e348cae9f535421c12cc6a56db2112dd5ec75f96c173b1f34a68db66c8ad8dd7 SHA512 0e095a59ff965499a5d2c79bfd4826b793103bebb4d2666c09e675110a50f79d985eb29565e4c40bd8fddc30237f874324d8a24786ead697ee0698ef8f79a1b6
+DIST unicode-segmentation-1.6.0.crate 90703 BLAKE2B b7d63bb8b62cabc604084957aaff021df24a1291f0ebdcddc424cceefe10ad399ed53152211c3e7557e39e21255166f922256f9f8e1fb488d3bae368b49a378e SHA512 80c6f92d9b39602a05809dc63a7cb05a305441689b6056801097a882a36c9795aabd660f884f707daa7e7fe6ad4983f6e245c226962cc982dbfeea2ddfddf41e
+DIST unicode-width-0.1.7.crate 16644 BLAKE2B 8cc5ee2dfeeda8ffe3405a0d4f1576d2b3b8ede1a42cbefb0ba3bd0d71b53a92ceade86c4a06e9d5b31382955dc6e1152ae5cd279dc26dbc51f478dad1d0f64d SHA512 39b8a539c9009d0421f54ae68b139f21456c9cb03d743b58535a977f98bc9655cf42eaacfadbcff796c187a6f315ae16259ee22be9c2da5aa042172c6b464d84
+DIST unicode-xid-0.2.0.crate 14994 BLAKE2B e66b4255798f0ef1c81fb852613fee396a042d780d2158a171dbb5e7dedad0b3d2522f5401ae5d215f89ab8be4f5c371b046e4845693a65554c2a6eedc5d1e28 SHA512 590f727d8d8354023062ae5fe7ac5bed1bcf79d86b883effd7f33b3ea3b1c8922998a63d621ca6962a969e890fa6edd009871f21cd57b1969264f41ba3f78359
+DIST url-2.1.1.crate 70383 BLAKE2B c4096cb1bd50e9ca97fcdae0ee8b58957e21507607eafa8d84ff71c3df1ba52c68299609776f7baa45c93b971f8b61162fd8afd4174a5c7b66f36dc673707fa0 SHA512 a16c3a625fa85be9305f8150d5711c3e3aaa1f33753e7ecb8368b176cf3ea96f51fde74598c8ea3a5db2effc338589fd2834b297a1fba4bed967fa39e670fabb
+DIST uuid-0.8.1.crate 37015 BLAKE2B 776df691d501be1d8ffa00d04baf4f3319702bce172328a090aff341ab767e50f1a0bb57f744b5d0616a81422e04d2ec9a7aabd7b7df7451ce4b90e91c3cdc5c SHA512 754cd59021053cd3ec6b929cf6ed15127a8d0d9be1777e100153d6a23160a251c146eb180fccd1e515d1d0728332bbdb7c36e8f111958489234db6299df28f7c
+DIST vcpkg-0.2.8.crate 11209 BLAKE2B e393dfbaabf1e47bc74fd89dc05e09f2dd9fd8b965a84f638edafcb2f5cf062005224d0c1b229394b40a3ecdf0fb34bfb3bf2c62a5d5b1016663e02d08bbcc8c SHA512 a239e969a02c8d8670178cc2be654bd12d6e6bb18be9eb70ec547212289fd2ef98859e6b3592aa6fbaf3178e0f2c27e2c8598d82990077a74896e739ae1374b9
+DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc8e1ef4e847648e2de08dece8c4debe92889edeccb8d393645fd0b62436b49d236ded7ad181c4a51239a9539 SHA512 4f1ef59bc2c437e79f1f84fe021bce5aa8ccd581f500f3d5776913d5f17d45b03ccee64f5bd03d47656318cfc9344a1f4311079d471fa409a8e4e94c143973f9
+DIST version_check-0.9.1.crate 11459 BLAKE2B 72f002c00504f635b7d2d7ee7137e07ba9c182d2e41d32a51851896f6bf6742c5524b7f66946437ba581ccf80b9c9a57280dd4b02df0918569ac710511940fc1 SHA512 b9cf363169df2022a961f5bed4fb7da07513e0283a85aa69752f6ac567e942611ed2216ac61799db1a199e2bdf0fd9b994e35d4a40c6cd80cd26b97cbfe977cf
+DIST wasi-0.9.0+wasi-snapshot-preview1.crate 31521 BLAKE2B 716bdd2ec46d0bc9911c5e5e29fc783840559931b2563d8619675fc11da9527ddbe653a0f1ce0b782ee0c5f7a3131aba2b0867d415f003aa9c2389357569e7dc SHA512 dbe641f796ee3a5daafcaafc911ecc6dff170340f477c2df7a61fb4858a85aefc2637c9e61973ecce66a987aa8e08a736273a4aad3ef47eaf61ed4268dbf9c47
+DIST winapi-0.3.8.crate 1128308 BLAKE2B e0e8ef6121f222b0500525192ebb69b26b71cc16f9ba92186f8ad6acc9de4cb8cc7c738f9c31f5bd223d2e34c93c496e8448c973d69797776004670c70abf69c SHA512 5a899ee5f09f30d742b8b8eba78da05cd9f4c664408fdeb9370373f8756a962a23e3f1c07619e745b3270138606c9a369076c02c3f5353f657df09d203d9a736
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST xattr-0.2.2.crate 11750 BLAKE2B a5fc393d16935411a89e152e7afe9622f5b78cc207c1f3980c65f26adbe177efaa6c93e0c6ecac4ee0687609a932c957efb11678c9176d44010eebee651fc84c SHA512 a89d34313c35ab02d6ea25675c99f9c9650dee40a76223d62941edda43b3d2db83ed223bada129625b3cf8487c293646ce9980afc6dba8888fa078d5aa035cab
+DIST xz2-0.1.6.crate 24512 BLAKE2B 47f260f4ce920bf8eff1446981672c9d877b4e5908fe20053ed15419e3cebd540fcedecf71ace32b25bfc5d6731092a565a2a8ac303ed21ae47460c1b3414833 SHA512 c0880b2bbf890e962b27efda6c513d1626332ff400dd08a9126a6e1d1375e0d0e3bf243b10df78e2397b611d0365b6526d96974c4ff332bb81edba71b6ebc811
+DIST zip-0.5.5.crate 33064 BLAKE2B b10857e79c0548ce0aec9d1d7689e4b9c9d78756c7eaa97462dd201e05877f60fd1bb6f88e9a219bf96063f0716d2246629dac15f802305ea9188d02e61634e5 SHA512 d7f32cba1de57b62546316f3ce81f24dcdf47287555294ca61470d14b61c11f1347c22f2d51df55d351e910720c0b12d1196164964232c9c5fb349ab2630a6ff
+DIST zstd-0.5.1+zstd.1.4.4.crate 26509 BLAKE2B 909a36290f48e65147f43a2a08edcfca42471efb28f2ef28f2e45246f91498d184749fc19a56aeddc0db3ff91a003cc39909e92fe3f899879fc9aa8b32f26ce1 SHA512 565a3898c24eb5efac75df6b76d327ce8a2e62f261e63c4e307ad8583604333d9e3ba6567b3d83c7eb771a1117b743e594dacfe3fdf7542800da921ec0ebef2d
+DIST zstd-safe-2.0.3+zstd.1.4.4.crate 16090 BLAKE2B afa8563797ea2684972c5d440cba2bea070a487d182d782bd1a14eab6d2cfded1bfd6634b1ac3e39a5548d24e90415d0d9a77c951572f9c3657a7f81fcabbd56 SHA512 05f45aa3440e84e72f9a2bc647a5c1b146399dc5424767fc6371aadb8f48cab24dcac5fbd1c856b770c9c777b983382482d76ab8b10b99ae9569f5ffda852ae5
+DIST zstd-sys-1.4.15+zstd.1.4.4.crate 2014730 BLAKE2B ac978e2103688671f1dccb30da144a144e76a5aa054aca4a46e9fa18070e432e0498cf36d6e6294b21b1f4d30fca46a3c1df2eed5841674ce81f2d90b4021391 SHA512 523eb1f4183deca8be3cb018e43b9e51f1910b9e04b42795fb23e036c6f13e2b81ac70ea11837200dc3061622562d360499ed3b939fd8ff23c486fbcc35ec779
diff --git a/sys-apps/ripgrep-all/metadata.xml b/sys-apps/ripgrep-all/metadata.xml
new file mode 100644
index 000000000000..75209e7cb520
--- /dev/null
+++ b/sys-apps/ripgrep-all/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type='person'>
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-apps/ripgrep-all/ripgrep-all-0.9.6-r1.ebuild b/sys-apps/ripgrep-all/ripgrep-all-0.9.6-r1.ebuild
new file mode 100644
index 000000000000..6a773526b7e3
--- /dev/null
+++ b/sys-apps/ripgrep-all/ripgrep-all-0.9.6-r1.ebuild
@@ -0,0 +1,201 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Partially auto-generated by cargo-ebuild 0.3.1
+
+EAPI=7
+
+inherit optfeature
+
+CRATES="
+ addr2line-0.12.0
+ adler32-1.0.4
+ aho-corasick-0.7.10
+ ansi_term-0.11.0
+ arrayref-0.3.6
+ atty-0.2.14
+ autocfg-0.1.7
+ autocfg-1.0.0
+ backtrace-0.3.48
+ bincode-1.2.1
+ bitflags-1.2.1
+ byteorder-1.3.4
+ bzip2-0.3.3
+ bzip2-sys-0.1.8+1.0.8
+ cachedir-0.1.1
+ cc-1.0.53
+ cfg-if-0.1.10
+ chrono-0.4.11
+ clap-2.33.1
+ cloudabi-0.0.3
+ crc32fast-1.2.0
+ crossbeam-0.7.3
+ crossbeam-channel-0.4.2
+ crossbeam-deque-0.7.3
+ crossbeam-epoch-0.8.2
+ crossbeam-queue-0.2.1
+ crossbeam-utils-0.7.2
+ encoding_rs-0.8.23
+ encoding_rs_io-0.1.7
+ env_logger-0.7.1
+ exitfailure-0.5.1
+ failure-0.1.8
+ failure_derive-0.1.8
+ fallible-iterator-0.2.0
+ fallible-streaming-iterator-0.1.9
+ filetime-0.2.10
+ fixedbitset-0.1.9
+ flate2-1.0.14
+ fnv-1.0.7
+ fuchsia-cprng-0.1.1
+ generic-array-0.12.3
+ getrandom-0.1.14
+ gimli-0.21.0
+ glob-0.3.0
+ heck-0.3.1
+ hermit-abi-0.1.13
+ humantime-1.3.0
+ idna-0.2.0
+ itoa-0.4.5
+ jobserver-0.1.21
+ lazy_static-1.4.0
+ libc-0.2.70
+ libsqlite3-sys-0.18.0
+ linked-hash-map-0.5.3
+ lmdb-rkv-0.14.0
+ lmdb-rkv-sys-0.11.0
+ lock_api-0.2.0
+ log-0.4.8
+ lru-cache-0.1.2
+ lzma-sys-0.1.16
+ matches-0.1.8
+ maybe-uninit-2.0.0
+ memchr-2.3.3
+ memoffset-0.5.4
+ miniz_oxide-0.3.6
+ nom-2.2.1
+ num-0.2.1
+ num-complex-0.2.4
+ num-integer-0.1.42
+ num-iter-0.1.40
+ num-rational-0.2.4
+ num-traits-0.2.11
+ object-0.19.0
+ ordered-float-1.0.2
+ ordermap-0.3.5
+ parking_lot-0.8.0
+ parking_lot_core-0.5.0
+ paste-0.1.12
+ paste-impl-0.1.12
+ path-clean-0.1.0
+ percent-encoding-2.1.0
+ petgraph-0.4.13
+ pkg-config-0.3.17
+ podio-0.1.6
+ ppv-lite86-0.2.8
+ proc-macro-error-1.0.2
+ proc-macro-error-attr-1.0.2
+ proc-macro-hack-0.5.15
+ proc-macro2-1.0.13
+ quick-error-1.2.3
+ quote-1.0.6
+ rand-0.6.5
+ rand-0.7.3
+ rand_chacha-0.1.1
+ rand_chacha-0.2.2
+ rand_core-0.3.1
+ rand_core-0.4.2
+ rand_core-0.5.1
+ rand_hc-0.1.0
+ rand_hc-0.2.0
+ rand_isaac-0.1.1
+ rand_jitter-0.1.4
+ rand_os-0.1.3
+ rand_pcg-0.1.2
+ rand_xorshift-0.1.1
+ rdrand-0.4.0
+ redox_syscall-0.1.56
+ regex-1.3.7
+ regex-syntax-0.6.17
+ remove_dir_all-0.5.2
+ rkv-0.10.4
+ rusqlite-0.23.1
+ rustc-demangle-0.1.16
+ rustc_version-0.2.3
+ ryu-1.0.4
+ scopeguard-1.1.0
+ semver-0.9.0
+ semver-parser-0.7.0
+ serde-1.0.110
+ serde_derive-1.0.110
+ serde_json-1.0.53
+ size_format-1.0.2
+ smallvec-0.6.13
+ smallvec-1.4.0
+ strsim-0.8.0
+ structopt-0.3.14
+ structopt-derive-0.4.7
+ syn-1.0.22
+ syn-mid-0.5.0
+ synstructure-0.12.3
+ tar-0.4.26
+ tempfile-3.1.0
+ term_size-0.3.2
+ termcolor-1.1.0
+ textwrap-0.11.0
+ thread_local-1.0.1
+ time-0.1.43
+ tree_magic_fork-0.2.2
+ typenum-1.12.0
+ unicode-bidi-0.3.4
+ unicode-normalization-0.1.12
+ unicode-segmentation-1.6.0
+ unicode-width-0.1.7
+ unicode-xid-0.2.0
+ url-2.1.1
+ uuid-0.8.1
+ vcpkg-0.2.8
+ vec_map-0.8.2
+ version_check-0.9.1
+ wasi-0.9.0+wasi-snapshot-preview1
+ winapi-0.3.8
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-util-0.1.5
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ xattr-0.2.2
+ xz2-0.1.6
+ zip-0.5.5
+ zstd-0.5.1+zstd.1.4.4
+ zstd-safe-2.0.3+zstd.1.4.4
+ zstd-sys-1.4.15+zstd.1.4.4
+"
+
+inherit cargo
+
+DESCRIPTION="Like ripgrep, but also search in PDFs, E-Books, Office documents, archives, etc."
+HOMEPAGE="https://github.com/phiresky/ripgrep-all"
+SRC_URI="
+ https://github.com/phiresky/ripgrep-all/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ $(cargo_crate_uris ${CRATES})
+"
+
+LICENSE="AGPL-3+ Apache-2.0 BSD-2 ISC MIT ZLIB"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+
+RDEPEND="
+ app-arch/xz-utils
+ sys-apps/ripgrep
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="
+ usr/bin/rga
+ usr/bin/rga-preproc
+"
+
+pkg_postinst() {
+ optfeature "pandoc support" virtual/pandoc
+ optfeature "pdf support" app-text/poppler
+ optfeature "media support" media-video/ffmpeg
+}
diff --git a/sys-apps/ripgrep/Manifest b/sys-apps/ripgrep/Manifest
index b312b0eb9835..55ec5b6b8f6f 100644
--- a/sys-apps/ripgrep/Manifest
+++ b/sys-apps/ripgrep/Manifest
@@ -1,57 +1,48 @@
-DIST aho-corasick-0.7.10.crate 111039 BLAKE2B 69f984dbe528ece5ce4345bc0f39c122507a88e781d7c2d5c9175d1788aeef8d21e0487c7c449e28fbbdaae8203fe68627d23ac0a58d30dc70befd26ac9af32f SHA512 e8a1cb252015435009883662ca23408f1491d8f01461f3a81082feabeeff72ec61beb4f1f3271fc8a87f1379899ecfc38036ac208dca17889f70ddaca2406a9b
-DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
-DIST autocfg-1.0.0.crate 12870 BLAKE2B 79e495d53298574afd3b292da7c9c363dcb3ea434fd44258efaf3628e95ebfc731f03083f8a1060272a2a3478a6452cdc41539e2dac08465cc6e6283844bf260 SHA512 451fc63148792ba1952b884170e3481359b01bacca5ec0456f43ca58f8e092b8f81c9764f8b00d4104059ff608089be5858220ee868127c064cc890c767ec3a3
-DIST base64-0.12.1.crate 56378 BLAKE2B 90a948eebbae820ced325055b2d49feebdc3b178a271fa7508356d7e44d9f81f586822b6512169f3c1e9901da491b1728783182796c14e6b2c8c647e57202ed1 SHA512 06c73723c4364ac8bcf4204a943893080d1752dd925a13da800889f486b1ebf97bccae79b7b04cbe758afc95bb1d61464276365d4721689896fa641a8e55b660
-DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
-DIST bstr-0.2.13.crate 345445 BLAKE2B 9a17fa04d55e5d053b115aef2a075b58cab0fb84c574df61eec7c3ab6f06e17d156991b1c070ad357599de5455af78982eecb8632336d53792958800ecafe839 SHA512 f1f778262269dfea6ba1cf953a5177107c2e1e838248a67588283ee11efa81adfa30498c7cfb20422e0955544a07d2a8f86c4eefc78e9f407a92be9591e26fe5
-DIST bytecount-0.6.0.crate 11905 BLAKE2B 7d935f86f0ab82c6c3d4974cd25ec3e193cdbea68b9534b1a461007d1486adc27274b43febd645db045cdd9b8101f93fb4b985ceb076c99a8f6efdc5e69ae855 SHA512 8e675f20b204d5828e79ba50012744b2f1b83f9d5d6355e6acb7d24cc4f7b1080ac120b94e65b6ea1d7604464ea0c6ad4f29880ff14895610889e4396f87062b
-DIST byteorder-1.3.4.crate 21943 BLAKE2B 278b24e036e920f84683f883991a967d997883bc80edefc5b69f52551794a37e5051786a1ac1b7a30bf2f5cad7318d781f189a7b2e496e2743df01262d5c33d6 SHA512 0618ce2cd6f3f6c586201d9aee8c8aaa08f99c9f9f215cf448b3cb6af1ac741845f5279953544caaec7fcf0beec1474bb991bee1ad0c0dac0c3f1d3ddd99e2d9
-DIST cc-1.0.54.crate 51972 BLAKE2B f3760987ea93e71254939a42bc795cfd68b994494c2d5820fbd6bda29e31b3a28d55ed9aaddb35f720b26b1bfc01f3369af81990b68da06a7c46c17eb014636c SHA512 4562c89b52786cd16a66c1970a4005485299ff0c21c61fd22a08fada933e5ecf3fcc1686f6e4f5a8ec4827ac00ed24c1c4ab4931ec5e9a12d2e5c283f6096b77
-DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
-DIST clap-2.33.1.crate 201567 BLAKE2B 7bb63b6a243eb33050e5354622fb544ba6db3b859005d857b198af4c3f34dbda22d605326e80a274a12f73fb2c13aea99ec6652584a02d0a3092841f4e119d91 SHA512 31209da6a0ac987f7e1b2504a2fb7738c3aba4ddee4cc2bc22cc37d4d2b0feeff41ece557d4960d51564fd31cb23e413bf180eb60102a872caf623bf55c6f089
-DIST crossbeam-channel-0.4.2.crate 87419 BLAKE2B 721013134069abc8f01ae5e98e1e6f10981d4892881339d3bf87f1bcb58b362348dad92e702a6b2367075dd41d860d62cca0ac8b3691954c454ca70bb5158000 SHA512 19b0ed2b5ed0fb1fe7c809e08483152fc36cf46f465c8571ca0fb9ebb1cb4b2b8f5860a303c932f336f434dafa9776ce6026ea2e64457147fb540766dc6da2ce
-DIST crossbeam-utils-0.7.2.crate 34338 BLAKE2B 3cb287c7741c4d5b0551331634a75b066f07fb4b55fa2b347370506467a05923254b1c4dca667de59ed91ff91f5496b37f40f13d3e9885a1b4f639f5b6748433 SHA512 e375f24c007bcf660d9e297527ed938f678a55696ca7b555b96fee7e0b94c31db2d3f4355675aa0baeadba68b9755ec92dc3a09a37b5db48e3723b926fd4a8f3
-DIST encoding_rs-0.8.23.crate 1403543 BLAKE2B 1ab7da7a4313dc3e0613a077bd9d036e91eec75913cb9b742879eab17e0af7dd76b69d7a17133f0c0c35a1f8c0628058415751105c95b63e2f578e9a57cbb71e SHA512 7036f64c0f26b3d993c1ffb64ccdf95a122ae93a9ef691f9903f90925b222b3aabaf379e951b5e9fc40726a1ed52ba54f3eededbc1e6b68385c99cf2c34d5ba5
+DIST aho-corasick-1.1.2.crate 183136 BLAKE2B 2d4306d8968061b9f7e50190be6a92b3f668169ba1b9f9691de08a57c96185f7a4288d20c64cb8488a260eb18d3ed4b0e8358b0cca47aa44759b2e448049cbaa SHA512 61ef5092673ab5a60bec4e92df28a91fe6171ba59d5829ffe41fc55aff3bfb755533a4ad53dc7bf827a0b789fcce593b17e69d1fcfb3694f06ed3b1bd535d40c
+DIST anyhow-1.0.79.crate 44931 BLAKE2B 9270f04c6fbbecb535e3081f4275c3df28f6a893c1dfc0a9f7c009994de2deb8ebced04fe5e6f62931b33c3707f4fbfb0c3b28da1a611b413d40d27149d1fd2f SHA512 ecd6fb1367d494df18c0e274b336a133f3acf7b6a5487d20bdd06e08c7f1f729877086a0966e998221daff120504fadd2be2dc4219ed621f81b0a50c2bbc2011
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bstr-1.9.0.crate 380170 BLAKE2B 06ae5065a5d566b6333e911a5b97e3999ad2f0bc19b27023187004c81cd01e5315dcac920ff87a6bb87ccfbb949364f1361dc04d342e24f9f54490b5d44a81d1 SHA512 dc313a16c38ad881128977a20bb390e7c95a96d9530596433a7c4fd7f77d5fffd079d436006dd8d2bfc4aacdd7f0aff229504444250418f6aa3f8d6d4df9abba
+DIST cc-1.0.83.crate 68343 BLAKE2B 33245b33fa845ea2f36da36e3830ec835f937e4319865b357ee9d5ea29a0f9f8392eadb38bf1d95e3c15ed201e561acaa87aedcef744f8db3dabff87a96c7f02 SHA512 742a248c3a7547bb220a0b9c97b67a831fab9b4ac21daa08c85a3966b9fe576088def33e16132fcabec9a2828a6fc437088bb045bfc98b2cea829df6742565a7
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST crossbeam-channel-0.5.10.crate 90442 BLAKE2B f3117110f7c558d2263f0c8522f98a9f38e04d3ce43b4e0fa67f33f23c5c5be6680d177884131dfa75f50cab50b3607be1f09a10126fb960b8a2e04161178292 SHA512 afd65fda772f9f225e1b372d27fd90f991097c57ac9b2747a40702e50791c6d702d1342088c99c2243873cbe6126f7c4e8df8f41b00bf4db3dbccfae1ae0063e
+DIST crossbeam-deque-0.8.4.crate 21752 BLAKE2B 1813e2c0916ac990c5ce54aadd13f309dc4d2cb651995261cf591900a5c820712de7dd730116e8b4cf78bcef19626889fc0658d7f1020cb2c1d7fab41718a31a SHA512 cc036613727a3aa8933bec419ba8a5fd2f506770ad2cf874ff757b048e0d29ea3f1b0e2b72d2d5352ed4b62c6764c7bbb10d0d4e217176da26bf5ae4bca0b68b
+DIST crossbeam-epoch-0.9.17.crate 46953 BLAKE2B c5da55d852c649da0275bb3eac67b9dca663b8b1291c60c55b5af226c170cd7f622665719bbe62ccbb8a63804955ca27557b26e129dd81593a560216949f4acd SHA512 9bdeb0415ea26250547ed9f34a8dd4c17f9379e3c56f8f17315e48f9bf63ce1b79c37786ead0f4df026e31b0b5965d181c36839d891c14149529ac42b5cedea4
+DIST crossbeam-utils-0.8.18.crate 42383 BLAKE2B f0b58626f3d40c5a889572e0f5fdb468e4c13ce0afc09aec1a75e1c5888cab56fbc644f592c620e1d28aae79687c4446146d9f783d96f8bd177d0a4a559fe8dd SHA512 977f41d7596a8d206fab665570f155479e15a83698fa54e714305d56ce32d78abc6f778b5f6e3c379ed1da27e241639cf4d0cd12922383f774ae85b32a4dc550
+DIST encoding_rs-0.8.33.crate 1370071 BLAKE2B 0e81419086ca6e18f2aba5194b87eaba49ddf20493fd6ee09d479db86306e39dff9b23f399594afc42f1fdb33855e070beaa1871794dc0b0371c35d296a6369a SHA512 20d28a4c0ff0710f911f510be56c2bc5e7514b76d370493d2b89b7f25d1c0cd46ffa64862e54fc472f07f928a2cc24cf9d790a37751cafafc81f263705aac4bc
DIST encoding_rs_io-0.1.7.crate 16969 BLAKE2B 8d51835dc0882d0e0512f0a177f10da3a1c384f38cb4eb163f957cc134ef5b7aee65d951cf65c99cc80b087e0e92ca4dae431e3a8987fe6b86bbf0dd1bfa8ef8 SHA512 0c7d33616e96fcdf225599dbf469232d150fa4bef5809346c4003ff7fa0362a1cded8f3392fb5945f4950e2b2cd71b60c93025d73ecfdd2ba4fda5e03a16902c
-DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
-DIST fs_extra-1.1.0.crate 29292 BLAKE2B ea1b787484218733a2c107ff059f3e89357afc51c510da0f5f30e4c9289c722a7c810a0a08138673aa454445dfcb08caa986ac64165ac27476d9b709d819308f SHA512 c001a37a23a614f1752a45fbf392694911c8d06bb5af8b8a40f2dcba9c80c67ab634de0dd4fa951007072204b162430fed2c89bbb11ac2fca62dfa5cd4cbd46a
-DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
-DIST hermit-abi-0.1.13.crate 9230 BLAKE2B 9591171d6f303a4a462d23edc2f8d493bdc23b6c2da4b464444718bfc89078e5a627e1543b7ab5be9d4e05f16c3508e55642360bb8d2cbd5edc2ce39b28d022e SHA512 ac424683ee3cfff9c63c735ac91008df722a2709d12744f009466574098433677266799e8ca817d3d3cad8f10f3c02e8081c67ff479701eabdc4543c0a79bd25
-DIST itoa-0.4.5.crate 11194 BLAKE2B d8f0e2aaf62152c187e0987ab4b0cf842ac13255262a9ccbf8484d730ea5397572791c023d2363d0562c18c8efd2418680583e99a1f5d14450b3f0184dce69ca SHA512 79ff8774524130a4729d5e708a4a4a837b3e5052384a12c22db4ae3e208dc4391ee185365f685137a8ba55ea7dc3499f8cddddb2fd98b84177ab292c264034d3
-DIST jemalloc-sys-0.3.2.crate 1344660 BLAKE2B c530eed197673dd515b41d504127c6c7abf75bb2dd0063b0a693be9502e3b5ae9db6d97dbf7fdd4bbab626ba1f788bf6b8e6804a476e109f22737bd2a79dcdff SHA512 b718dd98474d16fa5448bba62ac5e18a9e9798f31fce19dbeb4a12526c63e78f306454e0d9e2c6c5a3fd95660bfe82bb5fb09e4091cd8b43706eca2c4872b647
-DIST jemallocator-0.3.2.crate 16393 BLAKE2B 03c190b2f4c6cf01957a4e11d13a230dd55593e1845ae4179b60c62fa28eaed4dd27efb3113039ddab1e66a28c102d4d9c64169d0c10a1945bac162d2f613a79 SHA512 e3fd9d377d6465519e73a91d5639d47bfd6cdf5898d551c49e3efd3269d14a75bb9163980e13ff429e7dc637b8430cdfdb1f5d6ec52993fcf7b6247a69850ac6
-DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
-DIST libc-0.2.71.crate 474209 BLAKE2B e380a6936248992b1b1f63ef0cc3d3de410d414bb19350a2327da3947ae0e8e700e82f0f4a802cc485e37571b3a6a68bd773f964496f572a721294623d135c1c SHA512 b6f6eebc42817107aa2f94d426154c2449a2558646414464a31ee9d9dcf714e641fe6613b95ecf9e751d77102c0cedb74b35ca1f76c6df2231a5bad168de5e16
-DIST log-0.4.8.crate 31297 BLAKE2B 31037fdc2fc94f4ab8a6e89a251b0bc29975027dc7efb7cc86a8e848dfc8e2ae50acdb177b7ba9f7c1f20ec01e50798f89abb772d67a33f1b060ac617cf9a8ab SHA512 0b71f97d5964134b5eea1332347e177806b2f171d0be5c410c0ff1539470b242ba9f0933fafd853e4171a43b5e373a150af18918924be431c7216022553a8a3b
-DIST maybe-uninit-2.0.0.crate 11809 BLAKE2B 5e517b8c59f9ae4f1a4f86b48679ea64d62450ec2519c8caaa914479ce9e5b3aff24707e2e37272ba74bb60499afdc602fff17756337b0c50a9184edbd8b8805 SHA512 3006fc009c7c743d9147a4122e677cdeb2546f7bb46963b2f266839614eb906f9d763c161044fd0bf3f7b54124ac0734ac9ae7f7151b1a7a5f45cbc739976434
-DIST memchr-2.3.3.crate 22566 BLAKE2B f952070b98ef30f0d2780a6efbeb36d295710734f678517d913a8002cafebbd3cfc38975fc4546d306efc11bc815764d14320af3b7a2360bd46fc2ab3db9efa5 SHA512 922e05da920d0d94226857788878ee5e31518cd80d95ae57e1d7ecd233942c37d01565525db2f1dfdfd5b3b1f81b2c73eee058cbfd745cb4e1519518318df248
-DIST memmap-0.7.0.crate 15214 BLAKE2B 44a5bde9b85b2c378fd4c6ebfaa322ef8d0076472d6c7322f7aa95b8aba3514fd5212b4429eb369d30d0327377e36c626de474ea5e1f764bd4fae595680a04f8 SHA512 3a7c7f963111c2afeaa0381aaa6a57f0f57600392693ee1807d54771bc058ea0f86ac6e8afbe858e45f9f17b685430bf256dba1126b8074ace3aafc07bc14bfa
-DIST num_cpus-1.13.0.crate 14704 BLAKE2B e7a26e597ad5e45309393a9500b031ba64a77831320cbb96d7861139a2f7a453b7ba06a3255439b43ac1e2e36269b0a350d514020d3cd82c2513b57934b3ebbc SHA512 e75ec298fa682be84bf4efb6cf40126da9233ef25f07e887c2fa7421ee78790204564e6406c8219466651f47421e27f69eca690bb9cdfc982b644d78cc10de3f
-DIST packed_simd-0.3.3.crate 97485 BLAKE2B 50d9c18099a75d8529ec8687d47b4b04dea280ae75967ad40fb778b39a2303ebc2b835de257072ba3fb6b339524a128f26df8d2106ef82e89d2655177065e7fd SHA512 f0198f5c589be082053ae156372ea826c66e31aad993f64af097faf36045f1d1b6cc4b4b46d9cc8a1c7a28e11f707026df6c419a42e2011b1c4a34f579018826
-DIST pcre2-0.2.3.crate 19605 BLAKE2B 6fcf5f37b5f37d77b5c3568392ac056c0dfc58e16c1d9cdf2f6cb6c2c712619d1ac75d89e1ae49086e9c0c7d9128140ae57cbe065ef0ae21b91e2aec1c2a7249 SHA512 6771b27b800e3eebc34ae5dda48ca8bf60d5c3fd46fb424a669341909491ef476427b23f0aec3ec606aa03ed9606e46daf76010a7b9e3ffe1a76faab3314e74f
-DIST pcre2-sys-0.2.2.crate 2184376 BLAKE2B 7247cfd843a74de8f2486d9e029afdf3eddfae6307983f14ab0d9c48ec487c3eeb710ae0485eab10b5ef200f8e3d8743ac9f151a5f8e07cdf3c67651e73fb1d9 SHA512 cae12d44a43c05b2303f230112f8cce349141a697a0ed7ab8b9acc1a812f8ae8db156dfdcf40eae3b51c143b31cbf842dddcb133eb7e0430ef78cf36906ff652
-DIST pkg-config-0.3.17.crate 14533 BLAKE2B 729b15209bbbee8a6d3854e30a89b3e6041ca3cf7b1460ff6008e37866e326d9ec8b4ac582c125676e31eefa048b143beda33432b95f00a8f51cc7fa33ee4986 SHA512 42be78556adc07dffa8933ab1436d5d6a776018898377d58dfdc9f961981f9f21397301b41536c55d8a3772bf74a38069899d1a5cddce5c24a032017137044bc
-DIST proc-macro2-1.0.17.crate 35654 BLAKE2B 8728993d92facb86d5884a5716f697447d636ba28a3ac84e1ac7971fbe53b7fd960a5516989882eecccde20abfc9f1915c523277333ae98323b7dbc198c0fee6 SHA512 de34066c8f07ad5edaf2a7fb9b0e0e2b4d31e110a2280dce9960b20871cd69c4510ad7669634e734b3d4f06447277b62de028aad826f5a94697261a8bec2a0a9
-DIST quote-1.0.6.crate 24225 BLAKE2B e8706bf2e19b89855d5636704253d674fc9804e0d9713d1c1dccd5fe06af273f8604f80b6727f788de6416e62dde67a13abc2f3aa81cd5ea45eb0c73069ee300 SHA512 1febd6748602d4d96fbacb1f37bbc93c71d9fbeb9be7e9c6be2e871614048a1b2921c1ae702bd8db5d449308e7946ebff095689ef0bafe52af37c04936a8115e
-DIST regex-1.3.9.crate 236683 BLAKE2B 29bd39b138a8168015bb7a6b36bb5f7f9918b7c00bca28a720f3dffd5b805d3374a6648a04792585e85922e099faf547e5d02aeb23008b7802424351633ea23a SHA512 425713d3eeb4132d4056e6c1a08bc2fa5032b9971987c531b5707a9b5670ae15f037bd68921f1545580801957d1ea283eff87e533477364c7f76823800202f74
-DIST regex-automata-0.1.9.crate 114560 BLAKE2B 2bbaeaaa896479c817b7bac2f51108f8f74fda72178068c3b5e599b466899692fba8ff3ce8cd30f1f978a944a0df98f466f3d4bd340bf595d6f7048ba6f648a8 SHA512 53323733dc2f8c47ec33b5b3aefacac3a0042cff80c59c3a05ee02b581671dd9a6ebf6b0b5eeddf9cd249662731cabf5a684553daeff440bf8d1d4d296afbeb0
-DIST regex-syntax-0.6.18.crate 294440 BLAKE2B 355d6a2704e1267064719927269facce1f1c8897566d41e54741183969cde5e56c38d0c0b610b99dea3635de20fa00ebfb8748ceea331af6984198d927a93b73 SHA512 9cd999837890a87d0cc6bc351029a422bd52e5c621763e5c11ae9dcf1ba5edebabcd9e6d70db0b1656072a6109d439101412b3aab0d6ad357ae02ee7039a010e
-DIST ripgrep-12.1.1-x86_64-unknown-linux-musl.tar.gz 2211756 BLAKE2B 1c97a37e109f818bce8e974eb3a29eb8d1ca488e048caff658696211e8cad23728a767a2d6b97fed365d24f9545f1bc49a3e2687ab437eb4189993ad5fe30663 SHA512 814a6aa826f1183f40c5b74e66665b26e1377fe95d8b2cafceffa0b7ebf26ec89a515c74f5dbc2b9af441b2daacd239c7393047d8a75e944e42792ba451a77f9
-DIST ripgrep-12.1.1.tar.gz 480607 BLAKE2B f324a7966641843a95e7d4930507167844db2629e4b12e738df56d43edc68a707fdcc38eaa6f2445e3ddbafd13ec8888543866534b7a04724451e1457f589bba SHA512 9e2a16043be6c7727d49a44f6db7fdb41413efc869139186729985ff86dee5c6531c663352f4019b730eb3a6c46f26d46df3738d4a0cbbc39ab773f320eb9e59
-DIST ryu-1.0.4.crate 42039 BLAKE2B a1cd38c85ff105a0aea5e0cf09aa2be15d07e5344fb4a52b00bcbee6c6f966276aed1163b480b2acf669276368f04217eb7c0a6c279140f34bb54b1802e1ca06 SHA512 a1b28c07b32374757019f93eae30f82ae00682d5e9838f50864dd4ca898b8220b9bdb0f5df55d23d6bfc7386a3ac93697a18c82215f2e946e06c079962123703
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST itoa-1.0.10.crate 10534 BLAKE2B 8ffcb345d07070cc01651fd44c19f3e0659185eda733c407fd4be0955a301879ae1272dae7f425279dae8dcb7f7dc954465c9a09b5c521938a503d34fecfe2a7 SHA512 fc496be0873e31afa6ddf7f2958030f8fcb517cadb86a48280a0c50ce50460afda189af1e6c26e5ff6f85c750d772c21503864c32b526c4fe4bcdb5b07918538
+DIST jemalloc-sys-0.5.4+5.3.0-patched.crate 884321 BLAKE2B 36f66a53472f6b02aa05a5be5dd437d0668eefa5b058e1b72d3d5eae4aef61df55795379cac7560ae87e805d7e714581dc9ca9ba7ee9bb042976716ddb7079ae SHA512 b81c75efa70b869abe08c0805fd9545436ccd4e6ce24bb7355c1b3684a03bbf234af0680854f3fd9b519e7d59296d32ef04497a1f45584ed8de462e4e21d60c1
+DIST jemallocator-0.5.4.crate 13088 BLAKE2B 760cb954b24c705ccb072c21ce0aa699dbc3140141a44a037bb917e5e1fa45f831d103b5058d5bbba221c347f7148c7e6fa4e0395e68ef5e9b7fc2eb46c9e11f SHA512 23b0107ce5fa6a31cbe2cd07beeee973543c1e5f6f2a57fde5a313dfdf0b7138a0675fd00b1b4823d60eeffe02b9159d0261579c9ee4ce4246fcf799f9c1f853
+DIST jobserver-0.1.27.crate 24774 BLAKE2B 259c854f3cca79f769dde0a796aef4dc135574d816e7d0b8aed4b3d4e09d4eea600db30f7c8a8f7c68c9040efa1ab99029b1380ba6240dbf21634e7b5ad141d8 SHA512 2681234952be7a5ae67770d45f4d52e8278347f79b349bda594626712b1fba595a4cf46e8fb5426b548c325a23243facf7fbdc01ae0e853e492aff39444879a5
+DIST lexopt-0.3.0.crate 24767 BLAKE2B 9e2437715bbeb5ad1d638b21791936a336f5344afa2fe6c65506cfd478a75671bc82c81c4329e6aa7edf9c34b61083ccf5a38268340702c614701e99269b8ce4 SHA512 7ce3856a54fa6274ea3d5a4fe353f4a0411f5f6754fe8a5e7a114705f063300a93aa2efad765bc1dd0244caee15a8cf44a3de540a4db0626ed2ac6476bdb6843
+DIST libc-0.2.151.crate 736640 BLAKE2B ba8ea6d22b0eefdc5c1c5ee9fab960b6ea0eb7098a21b032563ec78b5d6e2a8f1d7ca4d5bb721c71de2c5de28e105029f229b9b03cd5168c78a65c7164e6d07d SHA512 2039bdfd704c5a876ff7d609622bb968260d6e0fd264ca457e92b75660503eca10e1ff21864b3c919d2656de521f03ef443895f5c0150271ae2502857742b0ec
+DIST libm-0.2.8.crate 113450 BLAKE2B fc4a55ecc0d4a558b9014b58861341887679c696af6b6539c7cdb70c033c63219b24f6f30cb8d9b335d15e3af42be6f3a6bd719e189667ca0c43ac818730b674 SHA512 753df71bb2c838abbac360db2e4400c2d931185ecff993da51a979870f2c3f7ac017380fadee4622102fb4b37ebcc1960b0cbd295afc9cd1cb3307524e1f39c5
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST memchr-2.7.1.crate 96307 BLAKE2B f1a008fbdbfe84852a8ae1d9d9574306b1bf120dd5087903adbcca6af342c9abbb296496eb9bf6cb58915c4444b3edd6ca4e27131ac7d8aed8849815df87a944 SHA512 5120496faa31fc427c8b4178461a262b3a34d70eddb7ad17a19d6db8b9969c9e113d3625b5e6dc677087fc80907377b00ba0421aba9a92cf73ca2849d932f473
+DIST memmap2-0.9.3.crate 33125 BLAKE2B a6448f687872bbb069b9454a80b08faca9f66723cc7fbf89bc623079fdbfceaea729eea6d61852e7c2e85492d5d9c9a8cfde54d53568bd9585c0581150e14de4 SHA512 025068aaf27296731c3a4fd8df3b745cd37e86a564aa5ab9a8eccddb99fa054820eff5a6a858c3f443666bf594b149c84045f43a555353286b066b3f1ff514cf
+DIST num-traits-0.2.17.crate 50190 BLAKE2B a549ef00c749dc7f276c4817477d1f9dab70cba01b6a3afa5743f16f16353bc50d992d7446a54859cf750a410d66c8cd3440708a6b91fd89d3b8889f8fff1668 SHA512 4d47d3e2f5a31019e038e609897cb0cef1ba061b35cee7e2a02e65179dcdd4960bd5b9bc759b5c013d699b3fbd9b014940a15e36658f7d4fd12cb0c7841c5b4e
+DIST packed_simd-0.3.9.crate 98340 BLAKE2B 8668038eb213cec44afded5164ccf368fbecea21aa3de64d49e798d7f0fac638af9616a435cb79cf0435387f67fe97a7eb00748eaf39be14bb6d50ecbb4c938e SHA512 1336ed8aee50a580784f38388f0cc2f0a8639149333e94b7f83aa7cc314a80c60b66ac203a7302cd4cf01f3d0b89da58d2ce9038b7685840fbc1b758217dbd1b
+DIST pcre2-0.2.6.crate 30765 BLAKE2B e0d4cdfcd18c4992c09af36dcc3f8294210571046dd09d3f5b300d871f872b181dbd791d0c7634d1b9f4100dfb1f98b470e73e6c8c1f17ae2867c5b93a1822a6 SHA512 101a0c4f1300ef7184aafba9048e0a7ad310d86d5236871e2b2477d4cedb23ac8bd6c6cd48970145eccbfb684f3efb5a80100e056e0c6052bc6fdbc4ad308317
+DIST pcre2-sys-0.2.8.crate 626303 BLAKE2B d2d74d3a2d2d50a0a3496a3a4204fbcc7f300845c209fd22106ce0cedb528a375ba8e3d10ff4ed68590cb38308e4c648dfcdeb55d17dd6a6b0101e7b9dea534d SHA512 4f0b21a0dff41ccbfb1dd6387d63b066e71002a7b96f76d8ab5ff34c056cd862337c1ef08daf30436fdf68eba4eb98f6e8a1ad6d2903e2e348ed9b85e2a7f616
+DIST pkg-config-0.3.28.crate 20330 BLAKE2B e38aa3fd2f03bcdca0ca92585ef558841623e38d01cbeb9db988f157ab94a0ad60be2b264dffccd0312594128cdf42fc40b659d1c009265ec274e4ab5801f79d SHA512 1ef92c5cf5320fb2e7d9e337edae08eaef01c762cb18406f732af731e5a94bef95be36cc0e0f5643f47a925aa127c5520a961c034e7b86357715656707a6e0e4
+DIST proc-macro2-1.0.76.crate 45660 BLAKE2B 40b538d9d9fec10b9e4b147ce0a86efb10feedf9e0452e5568e8ad7d2b88a201ca6ffd2cd62d8815a1ee72d557fe6280120a913868c3d868c1235686742cd8b8 SHA512 2ea7ade475171166489ab3e745e8c526e49c7521bc39b1bfec6dd2fd0807fd3cc5579235f77534be855f9ecab481205e77e66b14ebb22e66d2c3cff842567247
+DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2
+DIST regex-1.10.2.crate 252839 BLAKE2B 4be7bede72d41634c52eea25566fb13337a84a055aae6fb73d3b18ab9168085ed04ffbfd5b6f87c2f85c9922893b9c9a253a8c874eae9185b2100850443b1517 SHA512 e594f70cc540586e4039e7b905ede9e507757b531f22a94aae185e47732ae0d54bceb2c6aceb815819a9652c01ccf697798d372631f2f864c04ca2eec59759d3
+DIST regex-automata-0.4.3.crate 617011 BLAKE2B e685724eb037411c1a73d6d355c76e9e32c40f1c9029acaf86477796d3f5ad092b0c5619f4df2fc1ce34243f2ad8af147aa31f83a435e5b5adf55b4c9c8a9359 SHA512 4fc82fe3556f829956c3172447589555ef286fd66ee9a445cbdcdbe57970655e35b6eb0895ba02c344d826609257e0c95d3f7f51858aa260103bed7b08d8c1a8
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST ripgrep-14.1.0.tar.gz 584473 BLAKE2B 69771fbf3e575e19ff935609fa1a93f410d3fcac58bc20442355fa9556f8568eab294a1fd569c8d91e823f0f58f17734fa13f32b9aa4f8b61f3065b06d79e9e6 SHA512 b50044b6513f5caad1373c1cd4598779311bfce9f28092b90852ed9489c728b01ef5c91d4110d70a75ec08d977fbdd2a2da9cbf0b2820eb48b99f9ec3825e0a3
+DIST ryu-1.0.16.crate 47351 BLAKE2B 13c72ec8aa608f6c53cf27c95d06b90839c5bec5e54b0441e9c4f779af3dece30d01a2276c717a733f92406a5a02b09c045b2b5f92714fe492d7263b6c6808e6 SHA512 89e3e18346ae6e4035787766f286a6eb62f5294e39ad902cc29e95c53781c4e5dd629f567f22ecc7e9fe9d1c273323da9b867aadc9cd8a066727c58330b51b10
DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
-DIST serde-1.0.110.crate 73947 BLAKE2B ceb9896bd205026825767951c6dd4c11aa5ce485ecded75eeae2f88627f4851c378c311d7ad8d06395f2ed976e342d31e11787ddf926dfeb0643ca0575b32ccf SHA512 508fc3195ba0deb75980a758a4392462068fdde9a87fe2f379ab9b28c573c5af45617b82e5fdd1e34cefa075888da7f533675b05d57757f0c0200b4fa5698863
-DIST serde_derive-1.0.110.crate 49751 BLAKE2B 14f3ffe6d6ce5aed13a800c2802459bca54546d3a77dd05c4c095f10ffabec8e66195cd69994b46162a96bd95fc5fb0d78a08864b7709a8f6c32643183cb90be SHA512 b02a831fced998388a39ad5e8ec12de5c7d09e18b69f15b112870d1e5976f74e0cfcd28a68dbcaef87c4be30001bd2cae076de234a59e8f39ea0be3014a395a5
-DIST serde_json-1.0.53.crate 73130 BLAKE2B 28f118648c77c8ada5a434416ec6b28615d8a9b677da7f34c8ba1104730087ac6d93e010a767199a98208ebe5dbde1203a47f28a2394a3ecb75b3d115a3b27b4 SHA512 8932a9f9f783b7124c7a41c9c3c0c1934c0e5b8b628fc9bab5ae0f78370231649f17de8015f9d6facf4ccd0305c68d8c648799e239bf32558c6be9bbe3819e22
-DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
-DIST syn-1.0.27.crate 202231 BLAKE2B 8fe663765f40cfb611e6eae5d51744adfb22adeb43da799c000b9ba856117631428341ad352608334bd57ac18aad6076e4574591ce7aa7908af90637ee363dc9 SHA512 3a3f2f6e55edf003ce13dfa35c5d1a03d875335ddb3d0093fd20c86231a246a61655e6f74f751a9265a6be18af20e794522b7b83d303ee363b891ac9a89c72ae
-DIST termcolor-1.1.0.crate 17193 BLAKE2B c3a1a80269195f6bc92d141fce0885413c031980a4ad2f0f6e5a9051acfac10bad8a484362bfcaf3a60851a97d930e9602df4c00aec39431ea5a8a20d40a55c2 SHA512 41b05b047cbfdd5e3990eb36f635dc8ccf26a42bd5403d6d14a9f3c341e92b61c3b8d4d5f4fcd29071a97b3d96280ed59b4557b63a769390e2729fc82ab39702
-DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
-DIST thread_local-1.0.1.crate 12609 BLAKE2B 34206b5232262cda9cc0fb970e20f154d43ff1c4477a5ad5ff9200e6d874a6c7b2bcd99a2dae75a984b54574281e049ad35307ace0dd188f44c9a95fa93139cf SHA512 f2bfca4eee32a8fc88a01ff5bf24518c12142228d95916d13aae35ed6addd0b7da2235359f15220049ef197555344ac31a8833775e7a5bd49144db9c54b3165b
-DIST unicode-width-0.1.7.crate 16644 BLAKE2B 8cc5ee2dfeeda8ffe3405a0d4f1576d2b3b8ede1a42cbefb0ba3bd0d71b53a92ceade86c4a06e9d5b31382955dc6e1152ae5cd279dc26dbc51f478dad1d0f64d SHA512 39b8a539c9009d0421f54ae68b139f21456c9cb03d743b58535a977f98bc9655cf42eaacfadbcff796c187a6f315ae16259ee22be9c2da5aa042172c6b464d84
-DIST unicode-xid-0.2.0.crate 14994 BLAKE2B e66b4255798f0ef1c81fb852613fee396a042d780d2158a171dbb5e7dedad0b3d2522f5401ae5d215f89ab8be4f5c371b046e4845693a65554c2a6eedc5d1e28 SHA512 590f727d8d8354023062ae5fe7ac5bed1bcf79d86b883effd7f33b3ea3b1c8922998a63d621ca6962a969e890fa6edd009871f21cd57b1969264f41ba3f78359
-DIST walkdir-2.3.1.crate 23413 BLAKE2B fc9601f4a28cec383297dbd87d422e56db1e989e4273900750f05d1f4a92e114a5b1a5a54368e290c5f4b47159ed51f52d85ce66f003cd2f52ffc737ead20f8b SHA512 ba807ff0d098aabdcd37e23204632beea1dbb7a6adfd16cb1009cae9e7b6957cfeab705cc454bf8f2b62a08743214ab995e43bf46fc510012c938f9e2a434951
-DIST winapi-0.3.8.crate 1128308 BLAKE2B e0e8ef6121f222b0500525192ebb69b26b71cc16f9ba92186f8ad6acc9de4cb8cc7c738f9c31f5bd223d2e34c93c496e8448c973d69797776004670c70abf69c SHA512 5a899ee5f09f30d742b8b8eba78da05cd9f4c664408fdeb9370373f8756a962a23e3f1c07619e745b3270138606c9a369076c02c3f5353f657df09d203d9a736
+DIST serde-1.0.195.crate 76856 BLAKE2B 6a80b59335f222ae48d5e377c30611f30fe6416e6853ca47a39016e21f649cb9dfbe4964ce19e5da977fb9a963228a6a81c1e85af99ae12d7a0a5722901aa2f5 SHA512 0002ecb933d08fbdc8585ee74efb4048d385459f629261f5a4a8401b794f1c02b8296db79f479013a0b2a47ba99bee6c02d60d0fc2454e32f1b038b4071e8727
+DIST serde_derive-1.0.195.crate 55687 BLAKE2B 4da7916e36f71dfe82defa6c45b3075395cae54631cdff08a4607e962290020e7214288258fd316439c02536073325f5902e7b00144f97269a207fc453496599 SHA512 8a82ae4e7cfe0c3ac27688cc95d74bf4c2e10c1fe845ab28fb57579b2f47f36d13218c2ae603f93f00114065d47c3e46166dea39b205be673f443c34305dacce
+DIST serde_json-1.0.111.crate 146447 BLAKE2B a3509185e78c438f495ee9d5b5b7c23cd3b565d45178500f2b9ceb8cc8b1cc509b8d25d217f2c98bb597bab205566d660c3f60506c836da903c52206e6fb160e SHA512 11851e34a9a40de32654a12ada1d1bd01abb11531c5804f5d0747bbb01bf59025dd92be916104fbc278bbba5c89c77920941b83c0ac2f0da23f5d61a7788e83f
+DIST syn-2.0.48.crate 250566 BLAKE2B e46b0863af76c3116c84d01b654a9820b7edc51f75c9c5301a7967d12284f78da602409f34fc40524728350dc6b998a4d738f08b8868f95236b3e5d24c460580 SHA512 926c0ad55cc743df20f9166b6d71fd44421aeb1f073fd86b6ddb53e13cd508b539c0360ce64b07b65597bb14639c8f33acf7e60951e1e9128624517aa3aee325
+DIST termcolor-1.4.0.crate 18765 BLAKE2B d7286fcc84843296e2edf074e316ee8fcceb018c08deda7f1048e38108bf1a7c5f6b90dd3150078c413322eda08a1c58300b4adb963d9f51f307ecd08b5b7e10 SHA512 36c8550fe85cb90c4fdd1a6e3f60b42b6c71f65b6128da97d5ad6aac8350d907410899ad4a47bb4dc72ea6d00bc69e5a1ccc80ee9b0e80a1a27912e233f3e416
+DIST textwrap-0.16.0.crate 53722 BLAKE2B 44140aa2dfd5076005749449a56e920418e71e34cb92f1d697eb3f3e7f6fe87b0a3861c8a4050a4a62e03187b6cadc4495e4200bee52ee183541431c73e47209 SHA512 97ae8acece5663e1a6b08b827179e96d5ad0ee67d635888cc3d83454b52cf48fce97eb0eba374ba4747834099c74f43d66d9fec868e84be45369a42c1aaec2c3
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST walkdir-2.4.0.crate 23550 BLAKE2B b4298c01cb38be0479b7ddfee627af01f889b6b6ff432e368bb67f65134c3958a4fe271a5a7dd61b19259ae88f5680e5ce8e12e50a872b05fcba68f59b7073ec SHA512 09e1bc852c01b452c95b26a369831a97bc5c9e0ada3111c73774570dd73bb5b9e4735317d5572304fb48dca44ce7b9f77bbd17c418b6b047b2ab17b8bb42d9d9
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
-DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
diff --git a/sys-apps/ripgrep/metadata.xml b/sys-apps/ripgrep/metadata.xml
index 73f11257589b..476a08559a91 100644
--- a/sys-apps/ripgrep/metadata.xml
+++ b/sys-apps/ripgrep/metadata.xml
@@ -1,13 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
</maintainer>
<longdescription lang="en">
- Line-oriented search tool that recursively searches your current directory for a regex pattern while respecting your gitignore rules.
- ripgrep is similar to other popular search tools like The Silver Searcher, ack and grep.
+ Line-oriented search tool that recursively searches your current
+ directory for a regex pattern while respecting your gitignore
+ rules. ripgrep is similar to other popular search tools like
+ The Silver Searcher, ack and grep.
</longdescription>
<upstream>
<remote-id type="github">BurntSushi/ripgrep</remote-id>
diff --git a/sys-apps/ripgrep/ripgrep-12.1.1.ebuild b/sys-apps/ripgrep/ripgrep-12.1.1.ebuild
deleted file mode 100644
index 67458dee3783..000000000000
--- a/sys-apps/ripgrep/ripgrep-12.1.1.ebuild
+++ /dev/null
@@ -1,114 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
-aho-corasick-0.7.10
-atty-0.2.14
-autocfg-1.0.0
-base64-0.12.1
-bitflags-1.2.1
-bstr-0.2.13
-bytecount-0.6.0
-byteorder-1.3.4
-cc-1.0.54
-cfg-if-0.1.10
-clap-2.33.1
-crossbeam-channel-0.4.2
-crossbeam-utils-0.7.2
-encoding_rs-0.8.23
-encoding_rs_io-0.1.7
-fnv-1.0.7
-fs_extra-1.1.0
-glob-0.3.0
-hermit-abi-0.1.13
-itoa-0.4.5
-jemallocator-0.3.2
-jemalloc-sys-0.3.2
-lazy_static-1.4.0
-libc-0.2.71
-log-0.4.8
-maybe-uninit-2.0.0
-memchr-2.3.3
-memmap-0.7.0
-num_cpus-1.13.0
-packed_simd-0.3.3
-pcre2-0.2.3
-pcre2-sys-0.2.2
-pkg-config-0.3.17
-proc-macro2-1.0.17
-quote-1.0.6
-regex-1.3.9
-regex-automata-0.1.9
-regex-syntax-0.6.18
-ryu-1.0.4
-same-file-1.0.6
-serde-1.0.110
-serde_derive-1.0.110
-serde_json-1.0.53
-strsim-0.8.0
-syn-1.0.27
-termcolor-1.1.0
-textwrap-0.11.0
-thread_local-1.0.1
-unicode-width-0.1.7
-unicode-xid-0.2.0
-walkdir-2.3.1
-winapi-0.3.8
-winapi-i686-pc-windows-gnu-0.4.0
-winapi-util-0.1.5
-winapi-x86_64-pc-windows-gnu-0.4.0
-"
-
-inherit cargo bash-completion-r1
-
-DESCRIPTION="a search tool that combines the usability of ag with the raw speed of grep"
-HOMEPAGE="https://github.com/BurntSushi/ripgrep"
-SRC_URI="https://github.com/BurntSushi/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/BurntSushi/${PN}/releases/download/${PV}/${P}-x86_64-unknown-linux-musl.tar.gz
- $(cargo_crate_uris ${CRATES})"
-
-LICENSE="Apache-2.0 BSD-2 Boost-1.0 || ( MIT Unlicense )"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="pcre"
-
-DEPEND=""
-
-RDEPEND="pcre? ( dev-libs/libpcre2 )"
-
-BDEPEND="${RDEPEND}
- virtual/pkgconfig
-"
-
-QA_FLAGS_IGNORED="usr/bin/rg"
-
-src_compile() {
- # allow building on musl with dynamic linking support
- # https://github.com/BurntSushi/rust-pcre2/issues/7
- use elibc_musl && export PCRE2_SYS_STATIC=0
- cargo_src_compile $(usex pcre "--features pcre2" "")
-}
-
-src_install() {
- cargo_src_install $(usex pcre "--features pcre2" "")
-
- # hack to find/install generated files
- # stamp file can be present in multiple dirs if we build additional features
- # so grab fist match only
- local BUILD_DIR="$(dirname $(find target/release -name ripgrep-stamp -print -quit))"
-
- newbashcomp "${BUILD_DIR}"/rg.bash rg
-
- insinto /usr/share/fish/vendor_completions.d
- doins "${BUILD_DIR}"/rg.fish
-
- insinto /usr/share/zsh/site-functions
- doins complete/_rg
-
- dodoc CHANGELOG.md FAQ.md GUIDE.md README.md
-
- # we use a manpage from pre-compiled tarball, so we can skip dependency on asciidoctor
- doman "${WORKDIR}/${P}-x86_64-unknown-linux-musl/doc/rg.1"
-}
diff --git a/sys-apps/ripgrep/ripgrep-14.1.0.ebuild b/sys-apps/ripgrep/ripgrep-14.1.0.ebuild
new file mode 100644
index 000000000000..97d8367a346e
--- /dev/null
+++ b/sys-apps/ripgrep/ripgrep-14.1.0.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ aho-corasick@1.1.2
+ anyhow@1.0.79
+ autocfg@1.1.0
+ bstr@1.9.0
+ cc@1.0.83
+ cfg-if@1.0.0
+ crossbeam-channel@0.5.10
+ crossbeam-deque@0.8.4
+ crossbeam-epoch@0.9.17
+ crossbeam-utils@0.8.18
+ encoding_rs@0.8.33
+ encoding_rs_io@0.1.7
+ glob@0.3.1
+ itoa@1.0.10
+ jemalloc-sys@0.5.4+5.3.0-patched
+ jemallocator@0.5.4
+ jobserver@0.1.27
+ lexopt@0.3.0
+ libc@0.2.151
+ libm@0.2.8
+ log@0.4.20
+ memchr@2.7.1
+ memmap2@0.9.3
+ num-traits@0.2.17
+ packed_simd@0.3.9
+ pcre2-sys@0.2.8
+ pcre2@0.2.6
+ pkg-config@0.3.28
+ proc-macro2@1.0.76
+ quote@1.0.35
+ regex-automata@0.4.3
+ regex-syntax@0.8.2
+ regex@1.10.2
+ ryu@1.0.16
+ same-file@1.0.6
+ serde@1.0.195
+ serde_derive@1.0.195
+ serde_json@1.0.111
+ syn@2.0.48
+ termcolor@1.4.0
+ textwrap@0.16.0
+ unicode-ident@1.0.12
+ walkdir@2.4.0
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+"
+
+inherit cargo bash-completion-r1
+
+DESCRIPTION="Search tool that combines the usability of ag with the raw speed of grep"
+HOMEPAGE="https://github.com/BurntSushi/ripgrep"
+SRC_URI="
+ https://github.com/BurntSushi/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="Apache-2.0"
+# Dependent crate licenses
+LICENSE+="
+ BSD MIT Unicode-DFS-2016
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~loong ppc64 ~riscv x86"
+IUSE="+pcre"
+
+RDEPEND="pcre? ( dev-libs/libpcre2:= )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=virtual/rust-1.72
+ virtual/pkgconfig
+"
+
+QA_FLAGS_IGNORED="usr/bin/rg"
+
+src_prepare() {
+ default
+ # unforce static linking on musl
+ rm .cargo/config.toml || die
+}
+
+src_configure() {
+ # allow building on musl with dynamic linking support
+ # https://github.com/BurntSushi/rust-pcre2/issues/7
+ use pcre && export PCRE2_SYS_STATIC=0
+ myfeatures=( $(usev pcre pcre2) )
+ cargo_src_configure
+}
+
+src_install() {
+ cargo_src_install
+
+ newbashcomp - rg <<-EOF
+ $(target/$(usex debug debug release)/rg --generate complete-bash)
+ EOF
+
+ insinto /usr/share/fish/vendor_completions.d
+ newins - rg.fish <<-EOF
+ $(target/$(usex debug debug release)/rg --generate complete-fish)
+ EOF
+
+ insinto /usr/share/zsh/site-functions
+ newins - _rg <<-EOF
+ $(target/$(usex debug debug release)/rg --generate complete-zsh)
+ EOF
+
+ dodoc CHANGELOG.md FAQ.md GUIDE.md README.md
+ newman - rg.1 <<-EOF
+ $(target/$(usex debug debug release)/rg --generate man)
+ EOF
+}
diff --git a/sys-apps/rkflashtool/metadata.xml b/sys-apps/rkflashtool/metadata.xml
index 7399523763be..3f7ef32bee15 100644
--- a/sys-apps/rkflashtool/metadata.xml
+++ b/sys-apps/rkflashtool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/rkflashtool/rkflashtool-6.1.ebuild b/sys-apps/rkflashtool/rkflashtool-6.1.ebuild
index d4b936000f91..427682fdae4d 100644
--- a/sys-apps/rkflashtool/rkflashtool-6.1.ebuild
+++ b/sys-apps/rkflashtool/rkflashtool-6.1.ebuild
@@ -1,25 +1,24 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
inherit toolchain-funcs
DESCRIPTION="Tool for flashing Rockchip devices"
HOMEPAGE="https://sourceforge.net/projects/rkflashtool/"
SRC_URI="mirror://sourceforge/project/${PN}/${P}/${P}-src.tar.xz"
+S="${WORKDIR}/${P}-src"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64"
-IUSE=""
-
-S=${WORKDIR}/${P}-src
RDEPEND="virtual/libusb:1"
DEPEND="${RDEPEND}"
src_prepare() {
+ default
cp "${FILESDIR}"/${P}-missing-version.h version.h || die
sed -i -e "s/CC =/CC ?=/"\
-e "s/CFLAGS =/CFLAGS ?=/"\
diff --git a/sys-apps/rng-tools/Manifest b/sys-apps/rng-tools/Manifest
index 6331901d7050..462facc80b4a 100644
--- a/sys-apps/rng-tools/Manifest
+++ b/sys-apps/rng-tools/Manifest
@@ -1,6 +1,2 @@
-DIST rng-tools-5.tar.gz 122182 BLAKE2B de7085d530e38de21a1c33792d67a72e0131b221082d690cdb299367b80b0a123c2976174aa3f895a4a2ab1216aacfaa8e09de485c85154dc4a5b8f960d05245 SHA512 58047c37cad4f5f1210b696e4dba122878f78e57d05d9cb822f79234240ecce31efd2d39061fea1eb5b2e81d48d8c3bf6b92d06451f1ce5d5db7117704e89c50
-DIST rng-tools-6.10.tar.gz 56806 BLAKE2B 6cce0579a47f638cd90b51ba5216712fe39bf92dd59b288691a5e9783d520212cfb62e875a7e8f85de7a932568fdf0287cbea6f4869c9616a4c9325a111b0243 SHA512 b72d8918f709989ebc70cb9ea9c8b3dabf53041b24bc3f3a6de1bea318861dfd6c1a6110bd750041dc4819406db4a2b28f5137af5f5d5f2beb666f607913b389
-DIST rng-tools-6.6.tar.gz 51468 BLAKE2B 47231c60d78a48ade07855dfe8a807d6c10b8e27dc662ff7d98cf232b50e6c32f24197291a813d6ed6d15325a33fe9683d82943109a80cac1d9e348fc30cb849 SHA512 00bbe7f817d8f228f357a79ca270c27c62c0e588a99cd76917ecb7e88dfb627028c66497a59c9918205f3551aaf631963c8fd6504cb4198ddf57f714204c21c4
-DIST rng-tools-6.7.tar.gz 52792 BLAKE2B 3789aa4c6e2f024dcaef6b9b51521e206d65500a94ab456db61dc45c69ac5e4849a1e74abbe0f7640827ffb4bb20675c1f639a5be852d21d0d1a3c6b2e96bb5e SHA512 2f09edacb5448087041257326faf570c303b42f90bb695a1999b2c7543f20a28b15cdf705a2eca55cae8e9cf9fb5205c056fc26cfaf6af958bcda2cde1952b4d
-DIST rng-tools-6.8.tar.gz 53769 BLAKE2B 2a10a5639c5b1f4506b2c2cfb0185d16b5b604bd8aae72ca616b121f2e7624ff1ba00eb32daa3626b00d89f106356924bde511e263ab8978ff764757b44588ea SHA512 8fa47c2f0f8ebe6ac13025fa2c74505528b503c4e126c5d02b939797d6d4a8c9fc2b345353e48e497e32c1620a0821431e70752a9eb8ecb71960f16713696b62
-DIST rng-tools-6.9.tar.gz 54426 BLAKE2B b798f8d052b5f13a2847edbe5fc4c7f189433cecac97537193afab09cd35a89d8ddde16708f45f474997ea926bf47b2c6950f03ae7d7d93e559f22ed9fbbabc3 SHA512 08d0b19c309331fd2a2cfb5523a980d5ab1a2e727d06e2b3ecc8851aa94b6fffe9021714f33b5bd1eeb8e6a1d28ab865845520d8e4c96ab3f63019718c08ae7b
+DIST rng-tools-6.15.tar.gz 60731 BLAKE2B 693056ca600448d07413661498ca33893e99648c6344e02f2f0babb014878b9452e024904f5b58efc6cfe72201e582a6b458664d11160bb1b0dbdc28ba6325c5 SHA512 44146d891c4f46675a031f2e5ff7755cfaf1abe3252f241c16e042d3bb5e988b77ff840382caca49d8cb9854af1e49369398a506de5e819167739ad33b58d180
+DIST rng-tools-6.16.tar.gz 67401 BLAKE2B ab1a84c9a298e71ea5cdc1e91004ac069199a0128ee9701b1b3e24b6c705c63a642ab3db260a2c6c910c185e8fc75d5775caa3b7c370f102c75fac496e9bca17 SHA512 f4155dca8a54f47227f49ccf5f8453ddd50bd91a37b3b1659b5ad02278ed119028cee42918dd48552c79e19f2e2477277a41afa8e422395b2778b17fab09484d
diff --git a/sys-apps/rng-tools/files/rng-tools-5-fix-noctty.patch b/sys-apps/rng-tools/files/rng-tools-5-fix-noctty.patch
deleted file mode 100644
index 568ebe04589d..000000000000
--- a/sys-apps/rng-tools/files/rng-tools-5-fix-noctty.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From: Gokturk Yuksek <gokturk@binghamton.edu>
-Subject: [PATCH] Fix rngd to open the entropy source with 'O_NOCTTY' flag
-
-When start-stop-daemon starts a rngd instance configured to use a tty
-device as its entropy source, the application crashes due to not being
-able to read from the entropy device. This is caused by
-start-stop-daemon calling setsid() before executing rngd, which
-disassociates the controlling terminal. When rngd attempts to open a
-hardware entropy source that's a tty device, per POSIX rules, the
-device becomes the controlling terminal for the process. Then rngd
-calls daemon(), which internally calls setsid(), and consequently
-disassociates the controlling terminal for the child. Meanwhile the
-parent rngd process exits. This results in tty device hanging up. By
-looking at the strace logs attached to the bug, it can be observed
-that although the parent rngd process is able to read() from the
-entropy source successfully, further attempts to read() by the child
-rngd process return 0. This complies with the POSIX, which states that
-read() calls on a hung up terminal shall return 0.
-
-Note that when rngd is started without start-stop-daemon, this problem
-does not happen because at the time of opening the entropy source rngd
-already has a controlling terminal.
-
-Prevent the entropy source from becoming the controlling terminal by
-passing 'O_NOCTTY' flag to open() when opening an entropy source. This
-flag prevents a tty device from becoming the controlling terminal for
-a process without a controlling terminal at the time of open().
-
-Thanks to John Bowler <jbowler@acm.org> for debugging the problem and
-pinpointing the issue as well as confirming the fix.
-
-Gentoo-Bug-URL: https://bugs.gentoo.org/556456
-Reported-By: John Bowler <jbowler@acm.org>
-
---- a/rngd_entsource.c
-+++ b/rngd_entsource.c
-@@ -175,7 +175,7 @@
- */
- int init_entropy_source(struct rng *ent_src)
- {
-- ent_src->rng_fd = open(ent_src->rng_name, O_RDONLY);
-+ ent_src->rng_fd = open(ent_src->rng_name, O_RDONLY | O_NOCTTY);
- if (ent_src->rng_fd == -1) {
- return 1;
- }
diff --git a/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch b/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch
deleted file mode 100644
index 5fa5f0b4ecf7..000000000000
--- a/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From: Francisco Blas Izquierdo Riera (klondike) <klondike@gentoo.org>
-Subject: [PATCH] Fix assemby textrels on rdrand_asm.S on PIC x86
-
-This patch updates the fixes in the assembly in rdrand_asm.S in
-sys-apps/rng-tools-5 so it won't generate textrels on PIC systems.
-The main fixes are in the use of leal in SETPTR for such systems, the rest is
-the usual PIC support stuff.
-
-This should fix Gentoo bug #469962 and help fix #518210
-
-This patch is released under the GPLv2 or a higher version license as is the
-original file as long as the author and the tester are credited.
-
-Gentoo-bug-url: https://bugs.gentoo.org/show_bug.cgi?id=469962
-Gentoo-bug-url: https://bugs.gentoo.org/show_bug.cgi?id=518210
-Upstream-status: Not sent yet
-Signed-off-by: Francisco Blas Izquierdo Riera (klondike) <klondike@gentoo.org>
-Reported-by: cilly <cilly@cilly.mine.nu>
-Reported-by: Manuel Rüger <mrueg@gentoo.org>
-Tested-by: Anthony Basile <blueness@gentoo.org>
-
---- rng-tools/rdrand_asm.S
-+++ rng-tools/rdrand_asm.S
-@@ -2,6 +2,7 @@
- * Copyright (c) 2011-2014, Intel Corporation
- * Authors: Fenghua Yu <fenghua.yu@intel.com>,
- * H. Peter Anvin <hpa@linux.intel.com>
-+ * PIC code by: Francisco Blas Izquierdo Riera (klondike) <klondike@gentoo.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
-@@ -174,7 +175,19 @@
- jmp 4b
- ENDPROC(x86_rdseed_or_rdrand_bytes)
-
-+#if defined(__PIC__)
-+#define INIT_PIC() \
-+ pushl %ebx ; \
-+ call __x86.get_pc_thunk.bx ; \
-+ addl $_GLOBAL_OFFSET_TABLE_, %ebx
-+#define END_PIC() \
-+ popl %ebx
-+#define SETPTR(var,ptr) leal (var)@GOTOFF(%ebx),ptr
-+#else
-+#define INIT_PIC()
-+#define END_PIC()
- #define SETPTR(var,ptr) movl $(var),ptr
-+#endif
- #define PTR0 %eax
- #define PTR1 %edx
- #define PTR2 %ecx
-@@ -190,6 +203,7 @@
- movl 8(%ebp), %eax
- movl 12(%ebp), %edx
- push %esi
-+ INIT_PIC()
- #endif
- movl $512, CTR3 /* Number of rounds */
-
-@@ -280,6 +294,7 @@
- movdqa %xmm7, (7*16)(PTR1)
-
- #ifdef __i386__
-+ END_PIC()
- pop %esi
- pop %ebp
- #endif
-@@ -294,6 +309,7 @@
- push %ebp
- mov %esp, %ebp
- movl 8(%ebp), %eax
-+ INIT_PIC()
- #endif
-
- SETPTR(aes_round_keys, PTR1)
-@@ -323,6 +339,7 @@
- call 1f
-
- #ifdef __i386__
-+ END_PIC()
- pop %ebp
- #endif
- ret
-@@ -343,6 +360,16 @@
-
- ENDPROC(x86_aes_expand_key)
-
-+#if defined(__i386__) && defined(__PIC__)
-+ .section .text.__x86.get_pc_thunk.bx,"axG",@progbits,__x86.get_pc_thunk.bx,comdat
-+ .globl __x86.get_pc_thunk.bx
-+ .hidden __x86.get_pc_thunk.bx
-+ .type __x86.get_pc_thunk.bx, @function
-+__x86.get_pc_thunk.bx:
-+ movl (%esp), %ebx
-+ ret
-+#endif
-+
- .bss
- .balign 64
- aes_round_keys:
diff --git a/sys-apps/rng-tools/files/rng-tools-5-man-fill-watermark.patch b/sys-apps/rng-tools/files/rng-tools-5-man-fill-watermark.patch
deleted file mode 100644
index ea249a5ebdfb..000000000000
--- a/sys-apps/rng-tools/files/rng-tools-5-man-fill-watermark.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/555094
-
-patch by Gokturk Yuksek <gokturk@binghamton.edu>
-
---- a/rngd.8.in
-+++ b/rngd.8.in
-@@ -66,7 +66,9 @@
- .TP
- \fB\-W\fI n\fR, \fB\-\-fill\-watermark=\fInnn\fR
- Once we start doing it, feed entropy to \fIrandom-device\fR until at least
--\fIfill-watermark\fR bits of entropy are available in its entropy pool (default: 2048).
-+\fIfill-watermark\fR bits of entropy are available in its entropy pool.
-+By default, this value is set to 75% of the entropy pool size or 2048 bits
-+if the entropy pool size couldn't be determined.
- Setting this too high will cause \fIrngd\fR to dominate the contents of the
- entropy pool. Low values will hurt system performance during entropy
- starves. Do not set \fIfill-watermark\fR above the size of the
diff --git a/sys-apps/rng-tools/files/rng-tools-5-man-rng-device.patch b/sys-apps/rng-tools/files/rng-tools-5-man-rng-device.patch
deleted file mode 100644
index 82a0cf295765..000000000000
--- a/sys-apps/rng-tools/files/rng-tools-5-man-rng-device.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-https://bugs.gentoo.org/555106
-
-patch by Gokturk Yuksek <gokturk@binghamton.edu>
-
---- a/rngd.8.in
-+++ b/rngd.8.in
-@@ -59,7 +59,7 @@
- .TP
- \fB\-r\fI file\fR, \fB\-\-rng-device=\fIfile\fR
- Kernel device used for random number input
--(default: /dev/hwrandom)
-+(default: /dev/hwrng)
- .TP
- \fB\-s\fI nnn\fR, \fB\-\-random-step=\fInnn\fR
- Number of bytes written to random-device at a time (default: 64)
diff --git a/sys-apps/rng-tools/files/rng-tools-6.16-c99.patch b/sys-apps/rng-tools/files/rng-tools-6.16-c99.patch
new file mode 100644
index 000000000000..dad35eeed1ff
--- /dev/null
+++ b/sys-apps/rng-tools/files/rng-tools-6.16-c99.patch
@@ -0,0 +1,22 @@
+https://bugs.gentoo.org/919399
+https://github.com/nhorman/rng-tools/pull/205
+
+From 593e326815ba7ee820ee2f0a3c45279282f07c34 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Tue, 19 Dec 2023 10:32:11 +0100
+Subject: [PATCH] configure: Fix m4 quoting issue in libargp probe
+
+Without the surrounding [], m4 drops the inner [], treating, argv[] as
+argv. This results in an incorrect argument type for argp_parse,
+causing the probe to fail with future compilers due to type error.
+--- a/configure.ac
++++ b/configure.ac
+@@ -196,7 +196,7 @@ AS_IF(
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [#include <argp.h>],
+- [int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;]
++ [[int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;]]
+ )],
+ [need_libargp=no],
+ [need_libargp=yes
diff --git a/sys-apps/rng-tools/files/rngd-confd-4.1 b/sys-apps/rng-tools/files/rngd-confd-4.1
deleted file mode 100644
index 77e5db583458..000000000000
--- a/sys-apps/rng-tools/files/rngd-confd-4.1
+++ /dev/null
@@ -1,22 +0,0 @@
-# /etc/conf.d/rngd
-
-# Please see "/usr/sbin/rngd --help" and "man rngd" for more information
-
-# If a single device is preferred, then specify it here, otherwise we will
-# search for suitable devices.
-#DEVICE=
-
-# Random step (Number of bytes written to random-device at a time):
-STEP=64
-
-# Should TPM be avoided?
-# NO_TPM=0
-
-# Should RDRAND be avoided? Please note that unless this is commented
-# out, RDRAND _will_ be disabled, as any value will cause it to be
-# disabled.
-# NO_DRNG=1
-
-# Fill watermark
-# 0 <= n <= `sysctl kernel.random.poolsize`
-WATERMARK=2048
diff --git a/sys-apps/rng-tools/files/rngd-confd-6 b/sys-apps/rng-tools/files/rngd-confd-6
deleted file mode 100644
index a30e8c4fdadc..000000000000
--- a/sys-apps/rng-tools/files/rngd-confd-6
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# /etc/conf.d/rngd
-# Please see "/usr/sbin/rngd --help" and "man rngd" for more information
-
-# Space-delimited list of entropy sources to enable
-# Note that some of the entropy sources may require certain USE flags
-# to be enabled or require hardware support to function properly
-# Entropy sources not specified here (or in the exclude list below)
-# will be enabled/disabled based on rngd default behavior
-#
-# Choose from the list:
-# hwrng: Hardware RNG Device
-# tpm: TPM RNG Device (Deprecated)
-# rdrand: Intel RDRAND Instruction RNG
-# darn: Power9 DARN Instruction RNG
-# nist: NIST Network Entropy Beacon
-# (UNSAFE for cryptographic operations)
-# jitter: JITTER Entropy generator
-#
-#INCLUDE_ENTROPY_SOURCES="hwrng tpm rdrand darn nist jitter"
-
-
-# Space-delimited list of entropy sources to disable
-# This is useful for disabling certain entropy sources even
-# when they are supported on the system
-#
-#EXCLUDE_ENTROPY_SOURCES="nist tpm"
-
-
-# Entropy source specific options:
-#
-#
-# hwrng device used for random number input:
-#
-#HWRNG_DEVICE="/dev/hwrng"
-#
-#
-# rdrand options:
-# use_aes:(BOOLEAN)
-#
-#RDRAND_OPTIONS="use_aes:1"
-#
-#
-# darn options:
-# use_aes:(BOOLEAN)
-#
-#DARN_OPTIONS="use_aes:1"
-#
-#
-# jitter options:
-# thread_count:(INTEGER)
-# buffer_size:(INTEGER)
-# refill_thresh:(INTEGER)
-# retry_count:(INTEGER)
-# retry_delay:(INTEGER)
-# use_aes:(BOOLEAN)
-#
-#JITTER_OPTIONS="thread_count:4 buffer_size:16535 refill_thresh:16535"
-#JITTER_OPTIONS="${JITTER_OPTIONS} retry_count:1 retry_delay:-1 use_aes:1"
-
-
-# Kernel device used for random number output
-#
-#RANDOM_DEVICE="/dev/random"
-
-
-# Random step (Number of bytes written to random-device at a time):
-#
-#STEP=64
-
-
-# Fill watermark
-# 0 <= n <= `sysctl kernel.random.poolsize`
-#
-#WATERMARK=2048
-
-
-# Any extra arguments for rngd
-#
-#EXTRA_ARGS=""
diff --git a/sys-apps/rng-tools/files/rngd-confd-6.11 b/sys-apps/rng-tools/files/rngd-confd-6.11
new file mode 100644
index 000000000000..ad4a6f29897a
--- /dev/null
+++ b/sys-apps/rng-tools/files/rngd-confd-6.11
@@ -0,0 +1,96 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# /etc/conf.d/rngd
+# Please see "/usr/sbin/rngd --help" and "man rngd" for more information
+
+# Space-delimited list of entropy sources to enable
+# Note that some of the entropy sources may require certain USE flags
+# to be enabled or require hardware support to function properly
+# Entropy sources not specified here (or in the exclude list below)
+# will be enabled/disabled based on rngd default behavior
+#
+# Choose from the list:
+# hwrng: Hardware RNG Device
+# tpm: TPM RNG Device (Deprecated)
+# rdrand: Intel RDRAND Instruction RNG
+# darn: Power9 DARN Instruction RNG
+# nist: NIST Network Entropy Beacon
+# (UNSAFE for cryptographic operations)
+# jitter: JITTER Entropy Generator
+# pkcs11: PKCS11 Entropy Generator
+#
+#INCLUDE_ENTROPY_SOURCES="hwrng tpm rdrand darn nist jitter pkcs11"
+
+
+# Space-delimited list of entropy sources to disable
+# This is useful for disabling certain entropy sources even
+# when they are supported on the system
+#
+#EXCLUDE_ENTROPY_SOURCES="nist tpm"
+
+
+# Entropy source specific options:
+#
+#
+# hwrng device used for random number input:
+#
+#HWRNG_DEVICE="/dev/hwrng"
+#
+#
+# rdrand options:
+# use_aes:(BOOLEAN)
+#
+#RDRAND_OPTIONS="use_aes:1"
+#
+#
+# darn options:
+# use_aes:(BOOLEAN)
+#
+#DARN_OPTIONS="use_aes:1"
+#
+#
+# nist options:
+# use_aes:(BOOLEAN)
+#
+#NIST_OPTIONS="use_aes:1"
+#
+#
+# jitter options:
+# thread_count:(INTEGER)
+# buffer_size:(INTEGER)
+# refill_thresh:(INTEGER)
+# retry_count:(INTEGER)
+# retry_delay:(INTEGER)
+# use_aes:(BOOLEAN)
+#
+#JITTER_OPTIONS="thread_count:4 buffer_size:16535 refill_thresh:16535"
+#JITTER_OPTIONS="${JITTER_OPTIONS} retry_count:1 retry_delay:-1 use_aes:1"
+#
+#
+# pkcs11 options:
+# engine_path:(STRING)
+# chunk_size:(INTEGER)
+#
+#PKCS11_OPTIONS="engine_path:/usr/lib64/opensc-pkcs11.so chunk_size:1"
+
+
+# Kernel device used for random number output
+#
+#RANDOM_DEVICE="/dev/random"
+
+
+# Random step (Number of bytes written to random-device at a time):
+#
+#STEP=64
+
+
+# Fill watermark
+# 0 <= n <= `sysctl kernel.random.poolsize`
+#
+#WATERMARK=2048
+
+
+# Any extra arguments for rngd
+#
+#EXTRA_ARGS=""
diff --git a/sys-apps/rng-tools/files/rngd-confd-6.7 b/sys-apps/rng-tools/files/rngd-confd-6.7
deleted file mode 100644
index 20aa3281d535..000000000000
--- a/sys-apps/rng-tools/files/rngd-confd-6.7
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# /etc/conf.d/rngd
-# Please see "/usr/sbin/rngd --help" and "man rngd" for more information
-
-# Space-delimited list of entropy sources to enable
-# Note that some of the entropy sources may require certain USE flags
-# to be enabled or require hardware support to function properly
-# Entropy sources not specified here (or in the exclude list below)
-# will be enabled/disabled based on rngd default behavior
-#
-# Choose from the list:
-# hwrng: Hardware RNG Device
-# tpm: TPM RNG Device (Deprecated)
-# rdrand: Intel RDRAND Instruction RNG
-# darn: Power9 DARN Instruction RNG
-# nist: NIST Network Entropy Beacon
-# (UNSAFE for cryptographic operations)
-# jitter: JITTER Entropy Generator
-# pkcs11: PKCS11 Entropy Generator
-#
-#INCLUDE_ENTROPY_SOURCES="hwrng tpm rdrand darn nist jitter pkcs11"
-
-
-# Space-delimited list of entropy sources to disable
-# This is useful for disabling certain entropy sources even
-# when they are supported on the system
-#
-#EXCLUDE_ENTROPY_SOURCES="nist tpm"
-
-
-# Entropy source specific options:
-#
-#
-# hwrng device used for random number input:
-#
-#HWRNG_DEVICE="/dev/hwrng"
-#
-#
-# rdrand options:
-# use_aes:(BOOLEAN)
-#
-#RDRAND_OPTIONS="use_aes:1"
-#
-#
-# darn options:
-# use_aes:(BOOLEAN)
-#
-#DARN_OPTIONS="use_aes:1"
-#
-#
-# jitter options:
-# thread_count:(INTEGER)
-# buffer_size:(INTEGER)
-# refill_thresh:(INTEGER)
-# retry_count:(INTEGER)
-# retry_delay:(INTEGER)
-# use_aes:(BOOLEAN)
-#
-#JITTER_OPTIONS="thread_count:4 buffer_size:16535 refill_thresh:16535"
-#JITTER_OPTIONS="${JITTER_OPTIONS} retry_count:1 retry_delay:-1 use_aes:1"
-#
-#
-# pkcs11 options:
-# engine_path:(STRING)
-# chunk_size:(INTEGER)
-#
-#PKCS11_OPTIONS="engine_path:/usr/lib64/opensc-pkcs11.so chunk_size:1"
-
-
-# Kernel device used for random number output
-#
-#RANDOM_DEVICE="/dev/random"
-
-
-# Random step (Number of bytes written to random-device at a time):
-#
-#STEP=64
-
-
-# Fill watermark
-# 0 <= n <= `sysctl kernel.random.poolsize`
-#
-#WATERMARK=2048
-
-
-# Any extra arguments for rngd
-#
-#EXTRA_ARGS=""
diff --git a/sys-apps/rng-tools/files/rngd-initd-6-r1 b/sys-apps/rng-tools/files/rngd-initd-6-r1
deleted file mode 100644
index 5d89dd7a1868..000000000000
--- a/sys-apps/rng-tools/files/rngd-initd-6-r1
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-depend() {
- need localmount
- after urandom
- provide entropy
-}
-
-command="/usr/sbin/rngd"
-description="Check and feed random data from hardware device to kernel entropy pool."
-pidfile="/var/run/${RC_SVCNAME}.pid"
-command_args=""
-command_args_background="--pid-file ${pidfile} --background"
-start_stop_daemon_args="--wait 1000"
-retry="SIGKILL/5000"
-
-
-# Parse rngd confd file for extra command line arguments
-start_pre() {
- for entsrc in ${INCLUDE_ENTROPY_SOURCES}; do
- command_args="${command_args} -n ${entsrc}"
- done
-
- for entsrc in ${EXCLUDE_ENTROPY_SOURCES}; do
- command_args="${command_args} -x ${entsrc}"
- done
-
- if [ "x${HWRNG_DEVICE}" != "x" ]; then
- command_args="${command_args} --rng-device=${HWRNG_DEVICE}"
- fi
-
- for entsrc_opt in ${RDRAND_OPTIONS}; do
- command_args="${command_args} -O rdrand:${entsrc_opt}"
- done
-
- for entsrc_opt in ${DARN_OPTIONS}; do
- command_args="${command_args} -O darn:${entsrc_opt}"
- done
-
- for entsrc_opt in ${JITTER_OPTIONS}; do
- command_args="${command_args} -O jitter:${entsrc_opt}"
- done
-
- if [ "x${RANDOM_DEVICE}" != "x" ]; then
- command_args="${command_args} --random-device=${RANDOM_DEVICE}"
- fi
-
- if [ "x${STEP}" != "x" ]; then
- command_args="${command_args} --random-step=${STEP}"
- fi
-
- if [ "x${WATERMARK}" != "x" ]; then
- command_args="${command_args} --fill-watermark=${WATERMARK}"
- fi
-
- command_args="${command_args} ${EXTRA_ARGS}"
- return 0
-}
diff --git a/sys-apps/rng-tools/files/rngd-initd-6.11 b/sys-apps/rng-tools/files/rngd-initd-6.11
new file mode 100644
index 000000000000..25d4c6b5e49a
--- /dev/null
+++ b/sys-apps/rng-tools/files/rngd-initd-6.11
@@ -0,0 +1,68 @@
+#!/sbin/openrc-run
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need localmount
+ after urandom
+ provide entropy
+}
+
+command="/usr/sbin/rngd"
+description="Check and feed random data from hardware device to kernel entropy pool."
+pidfile="/run/${RC_SVCNAME}.pid"
+command_args=""
+command_args_background="--pid-file ${pidfile} --background"
+start_stop_daemon_args="--wait 1000"
+retry="SIGKILL/5000"
+
+
+# Parse rngd confd file for extra command line arguments
+start_pre() {
+ for entsrc in ${INCLUDE_ENTROPY_SOURCES}; do
+ command_args="${command_args} -n ${entsrc}"
+ done
+
+ for entsrc in ${EXCLUDE_ENTROPY_SOURCES}; do
+ command_args="${command_args} -x ${entsrc}"
+ done
+
+ if [ "x${HWRNG_DEVICE}" != "x" ]; then
+ command_args="${command_args} --rng-device=${HWRNG_DEVICE}"
+ fi
+
+ for entsrc_opt in ${RDRAND_OPTIONS}; do
+ command_args="${command_args} -O rdrand:${entsrc_opt}"
+ done
+
+ for entsrc_opt in ${DARN_OPTIONS}; do
+ command_args="${command_args} -O darn:${entsrc_opt}"
+ done
+
+ for entsrc_opt in ${NIST_OPTIONS}; do
+ command_args="${command_args} -O nist:${entsrc_opt}"
+ done
+
+ for entsrc_opt in ${JITTER_OPTIONS}; do
+ command_args="${command_args} -O jitter:${entsrc_opt}"
+ done
+
+ for entsrc_opt in ${PKCS11_OPTIONS}; do
+ command_args="${command_args} -O pkcs11:${entsrc_opt}"
+ done
+
+ if [ "x${RANDOM_DEVICE}" != "x" ]; then
+ command_args="${command_args} --random-device=${RANDOM_DEVICE}"
+ fi
+
+ if [ "x${STEP}" != "x" ]; then
+ command_args="${command_args} --random-step=${STEP}"
+ fi
+
+ if [ "x${WATERMARK}" != "x" ]; then
+ command_args="${command_args} --fill-watermark=${WATERMARK}"
+ fi
+
+ command_args="${command_args} ${EXTRA_ARGS}"
+ return 0
+}
diff --git a/sys-apps/rng-tools/files/rngd-initd-6.7-r1 b/sys-apps/rng-tools/files/rngd-initd-6.7-r1
deleted file mode 100644
index 4a284b4f505f..000000000000
--- a/sys-apps/rng-tools/files/rngd-initd-6.7-r1
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-depend() {
- need localmount
- after urandom
- provide entropy
-}
-
-command="/usr/sbin/rngd"
-description="Check and feed random data from hardware device to kernel entropy pool."
-pidfile="/run/${RC_SVCNAME}.pid"
-command_args=""
-command_args_background="--pid-file ${pidfile} --background"
-start_stop_daemon_args="--wait 1000"
-retry="SIGKILL/5000"
-
-
-# Parse rngd confd file for extra command line arguments
-start_pre() {
- for entsrc in ${INCLUDE_ENTROPY_SOURCES}; do
- command_args="${command_args} -n ${entsrc}"
- done
-
- for entsrc in ${EXCLUDE_ENTROPY_SOURCES}; do
- command_args="${command_args} -x ${entsrc}"
- done
-
- if [ "x${HWRNG_DEVICE}" != "x" ]; then
- command_args="${command_args} --rng-device=${HWRNG_DEVICE}"
- fi
-
- for entsrc_opt in ${RDRAND_OPTIONS}; do
- command_args="${command_args} -O rdrand:${entsrc_opt}"
- done
-
- for entsrc_opt in ${DARN_OPTIONS}; do
- command_args="${command_args} -O darn:${entsrc_opt}"
- done
-
- for entsrc_opt in ${JITTER_OPTIONS}; do
- command_args="${command_args} -O jitter:${entsrc_opt}"
- done
-
- for entsrc_opt in ${PKCS11_OPTIONS}; do
- command_args="${command_args} -O pkcs11:${entsrc_opt}"
- done
-
- if [ "x${RANDOM_DEVICE}" != "x" ]; then
- command_args="${command_args} --random-device=${RANDOM_DEVICE}"
- fi
-
- if [ "x${STEP}" != "x" ]; then
- command_args="${command_args} --random-step=${STEP}"
- fi
-
- if [ "x${WATERMARK}" != "x" ]; then
- command_args="${command_args} --fill-watermark=${WATERMARK}"
- fi
-
- command_args="${command_args} ${EXTRA_ARGS}"
- return 0
-}
diff --git a/sys-apps/rng-tools/files/rngd-initd-r1-4.1 b/sys-apps/rng-tools/files/rngd-initd-r1-4.1
deleted file mode 100644
index b7777ebab71c..000000000000
--- a/sys-apps/rng-tools/files/rngd-initd-r1-4.1
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-depend() {
- need localmount
- after urandom
- provide entropy
-}
-
-command=/usr/sbin/rngd
-pidfile="/var/run/${SVCNAME}.pid"
-command_args="--pid-file ${pidfile} --background --random-step ${STEP:-64} ${NO_TPM:+--no-tpm=1} \
- ${NO_DRNG:+--no-drng=1} --fill-watermark ${WATERMARK} ${DEVICE:+--rng-device ${DEVICE}}"
-start_stop_daemon_args="--wait 1000"
-retry="SIGKILL/5000"
diff --git a/sys-apps/rng-tools/files/rngd-shutdown.patch b/sys-apps/rng-tools/files/rngd-shutdown.patch
deleted file mode 100644
index ba2fffdd86f6..000000000000
--- a/sys-apps/rng-tools/files/rngd-shutdown.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-https://bugzilla.redhat.com/show_bug.cgi?id=1690364
-
-diff --git a/rngd_jitter.c b/rngd_jitter.c
-index 23d96b3..43a13e0 100644
---- a/rngd_jitter.c
-+++ b/rngd_jitter.c
-@@ -473,26 +473,22 @@ void close_jitter_entropy_source(struct rng *ent_src)
- for (i=0; i < num_threads; i++)
- tdata[i].active = 0;
-
-- flags = fcntl(pipefds[1], F_GETFL, 0);
-- flags |= O_NONBLOCK;
-- fcntl(pipefds[1], F_SETFL, &flags);
-+ close(pipefds[1]);
-
- /* And wait for completion of each thread */
- for (i=0; i < num_threads; i++) {
- message(LOG_DAEMON|LOG_DEBUG, "Checking on done for thread %d\n", i);
- while (!tdata[i].done)
-+ pthread_kill(threads[i], SIGINT);
- if(tdata[i].done) {
- message(LOG_DAEMON|LOG_INFO, "Closing thread %d\n", tdata[i].core_id);
- pthread_join(threads[i], NULL);
- jent_entropy_collector_free(tdata[i].ec);
-- } else {
-- read(pipefds[0], tmpbuf, 1024);
-+ } else
- sched_yield();
-- }
- }
-
-- close(pipefds[2]);
-- close(pipefds[1]);
-+ close(pipefds[0]);
- free(tdata);
- free(threads);
- return;
diff --git a/sys-apps/rng-tools/files/rngd.service b/sys-apps/rng-tools/files/rngd.service
deleted file mode 100644
index 04793437e2d7..000000000000
--- a/sys-apps/rng-tools/files/rngd.service
+++ /dev/null
@@ -1,8 +0,0 @@
-[Unit]
-Description=Hardware RNG Entropy Gatherer Daemon
-
-[Service]
-ExecStart=/usr/sbin/rngd -f
-
-[Install]
-WantedBy=multi-user.target
diff --git a/sys-apps/rng-tools/files/test-for-argp.patch b/sys-apps/rng-tools/files/test-for-argp.patch
deleted file mode 100644
index 4ed2aa40b6df..000000000000
--- a/sys-apps/rng-tools/files/test-for-argp.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-On glibc systems, argp is provided by libc. However, on
-uclibc and other systems which lack argp in their C library,
-argp might be provided by a stand alone library, libargp.
-This patch adds tests to the build system to find who provides
-argp.
-
-X-Gentoo-Bug: 292191
-X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=292191
-Reported-by: Ed Wildgoose <gentoo@wildgooses.com>
-Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
-
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -47,6 +47,28 @@
- dnl Checks for optional library functions
- dnl -------------------------------------
-
-+dnl First check if we have argp available from libc
-+AC_LINK_IFELSE(
-+ [AC_LANG_PROGRAM(
-+ [#include <argp.h>],
-+ [int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;]
-+ )],
-+ [libc_has_argp="true"],
-+ [libc_has_argp="false"]
-+)
-+
-+dnl If libc doesn't provide argp, then test for libargp
-+if test "$libc_has_argp" = "false" ; then
-+ AC_MSG_WARN("libc does not have argp")
-+ AC_CHECK_LIB([argp], [argp_parse], [have_argp="true"], [have_argp="false"])
-+
-+ if test "$have_argp" = "false"; then
-+ AC_MSG_ERROR("no libargp found")
-+ else
-+ LIBS+=" -largp"
-+ fi
-+fi
-+
- dnl -----------------
- dnl Configure options
- dnl -----------------
diff --git a/sys-apps/rng-tools/metadata.xml b/sys-apps/rng-tools/metadata.xml
index 69907447109c..75129d702ff5 100644
--- a/sys-apps/rng-tools/metadata.xml
+++ b/sys-apps/rng-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>gokturk@gentoo.org</email>
@@ -19,6 +19,12 @@
<flag name="pkcs11">
Enable PKCS11 entropy support
</flag>
+ <flag name="qrypt">
+ Enable qrypt beacon entropy support
+ </flag>
+ <flag name="rtlsdr">
+ Enable atmospheric-static entropy support with <pkg>net-wireless/rtl-sdr</pkg>
+ </flag>
</use>
<upstream>
<remote-id type="github">nhorman/rng-tools</remote-id>
diff --git a/sys-apps/rng-tools/rng-tools-5-r2.ebuild b/sys-apps/rng-tools/rng-tools-5-r2.ebuild
deleted file mode 100644
index 40645077af97..000000000000
--- a/sys-apps/rng-tools/rng-tools-5-r2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils autotools systemd toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="http://gkernel.sourceforge.net/"
-SRC_URI="mirror://sourceforge/gkernel/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ppc x86"
-IUSE="selinux"
-
-DEPEND="dev-libs/libgcrypt:0
- dev-libs/libgpg-error
- elibc_musl? ( sys-libs/argp-standalone )"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
- epatch "${FILESDIR}"/test-for-argp.patch
- epatch "${FILESDIR}"/${P}-fix-textrels-on-PIC-x86.patch #469962
- epatch "${FILESDIR}"/${P}-man-fill-watermark.patch #555094
- epatch "${FILESDIR}"/${P}-man-rng-device.patch #555106
- epatch "${FILESDIR}"/${P}-fix-noctty.patch #556456
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-r1-4.1 rngd
- newconfd "${FILESDIR}"/rngd-confd-4.1 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.10-r1.ebuild b/sys-apps/rng-tools/rng-tools-6.10-r1.ebuild
deleted file mode 100644
index d5f8c40bc124..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.10-r1.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd readme.gentoo-r1 toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~x86"
-IUSE="jitterentropy libressl nistbeacon pkcs11 selinux"
-
-DEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- dev-libs/jansson
- dev-libs/libxml2:2=
- net-misc/curl[ssl]
- )
- pkcs11? (
- dev-libs/libp11:=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-BDEPEND="
- virtual/pkgconfig
-"
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
-
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable jitterentropy)
- $(use_with nistbeacon)
- $(use_with pkcs11)
- --without-rtlsdr # no librtlsdr in the tree
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6.7-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6.7 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-
- if use pkcs11; then
- local DISABLE_AUTOFORMATTING=1
- local DOC_CONTENTS="
-The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
-to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
- '${EROOT}/etc/conf.d/rngd'
-reflects the correct PKCS11 engine path to be used by rngd.
-"
- readme.gentoo_create_doc
- fi
-
-}
-
-pkg_postinst() {
- use pkcs11 && readme.gentoo_print_elog
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.10.ebuild b/sys-apps/rng-tools/rng-tools-6.10.ebuild
deleted file mode 100644
index 52e0489c3fc3..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.10.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd readme.gentoo-r1 toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv x86"
-IUSE="jitterentropy nistbeacon pkcs11 selinux"
-
-DEPEND="
- dev-libs/openssl:0=
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- dev-libs/jansson
- dev-libs/libxml2:2=
- net-misc/curl[ssl]
- )
- pkcs11? (
- dev-libs/libp11:=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-BDEPEND="
- virtual/pkgconfig
-"
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
-
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable jitterentropy)
- $(use_with nistbeacon)
- $(use_with pkcs11)
- --without-rtlsdr # no librtlsdr in the tree
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6.7-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6.7 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-
- if use pkcs11; then
- local DISABLE_AUTOFORMATTING=1
- local DOC_CONTENTS="
-The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
-to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
- '${EROOT}/etc/conf.d/rngd'
-reflects the correct PKCS11 engine path to be used by rngd.
-"
- readme.gentoo_create_doc
- fi
-
-}
-
-pkg_postinst() {
- use pkcs11 && readme.gentoo_print_elog
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.15.ebuild b/sys-apps/rng-tools/rng-tools-6.15.ebuild
new file mode 100644
index 000000000000..9f0c340274f0
--- /dev/null
+++ b/sys-apps/rng-tools/rng-tools-6.15.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools readme.gentoo-r1 systemd
+
+DESCRIPTION="Daemon to use hardware random number generators"
+HOMEPAGE="https://github.com/nhorman/rng-tools"
+SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv x86"
+IUSE="jitterentropy nistbeacon pkcs11 rtlsdr selinux"
+
+DEPEND="
+ dev-libs/openssl:=
+ jitterentropy? ( app-crypt/jitterentropy:= )
+ nistbeacon? (
+ dev-libs/jansson:=
+ dev-libs/libxml2:2=
+ net-misc/curl[ssl]
+ )
+ pkcs11? ( dev-libs/libp11:= )
+ rtlsdr? ( net-wireless/rtl-sdr )
+ elibc_musl? ( sys-libs/argp-standalone )"
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-rngd )"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable jitterentropy)
+ $(use_with nistbeacon)
+ $(use_with pkcs11)
+ $(use_with rtlsdr)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/rngd-initd-6.11 rngd
+ newconfd "${FILESDIR}"/rngd-confd-6.11 rngd
+ systemd_dounit rngd.service
+
+ if use pkcs11; then
+ local DISABLE_AUTOFORMATTING=1
+ local DOC_CONTENTS="
+The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
+to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
+ '${EPREFIX}/etc/conf.d/rngd'
+reflects the correct PKCS11 engine path to be used by rngd.
+"
+ readme.gentoo_create_doc
+ fi
+}
+
+pkg_postinst() {
+ use pkcs11 && readme.gentoo_print_elog
+}
diff --git a/sys-apps/rng-tools/rng-tools-6.16-r1.ebuild b/sys-apps/rng-tools/rng-tools-6.16-r1.ebuild
new file mode 100644
index 000000000000..66cb34dfc2c4
--- /dev/null
+++ b/sys-apps/rng-tools/rng-tools-6.16-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools readme.gentoo-r1 systemd
+
+DESCRIPTION="Daemon to use hardware random number generators"
+HOMEPAGE="https://github.com/nhorman/rng-tools"
+SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv ~sparc x86"
+IUSE="jitterentropy nistbeacon pkcs11 qrypt rtlsdr selinux test"
+REQUIRED_USE="test? ( jitterentropy )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/openssl:=
+ sys-libs/libcap
+ jitterentropy? ( app-crypt/jitterentropy:= )
+ nistbeacon? (
+ dev-libs/jansson:=
+ dev-libs/libxml2:2=
+ net-misc/curl[ssl]
+ )
+ pkcs11? ( dev-libs/libp11:= )
+ qrypt? (
+ dev-libs/jansson:=
+ net-misc/curl[ssl]
+ )
+ rtlsdr? ( net-wireless/rtl-sdr )
+ elibc_musl? ( sys-libs/argp-standalone )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-rngd )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.16-c99.patch
+)
+
+src_prepare() {
+ sed -i "s/sleep 30/sleep 120/g" tests/rngtestjitter.sh || die
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable jitterentropy)
+ $(use_with nistbeacon)
+ $(use_with pkcs11)
+ $(use_with rtlsdr)
+ $(use_with qrypt)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ RNGD_JITTER_TIMEOUT=90 default
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/rngd-initd-6.11 rngd
+ newconfd "${FILESDIR}"/rngd-confd-6.11 rngd
+ systemd_dounit rngd.service
+
+ if use pkcs11; then
+ local DISABLE_AUTOFORMATTING=1
+ local DOC_CONTENTS="
+The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
+to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
+ '${EPREFIX}/etc/conf.d/rngd'
+reflects the correct PKCS11 engine path to be used by rngd.
+"
+ readme.gentoo_create_doc
+ fi
+}
+
+pkg_postinst() {
+ use pkcs11 && readme.gentoo_print_elog
+}
diff --git a/sys-apps/rng-tools/rng-tools-6.16.ebuild b/sys-apps/rng-tools/rng-tools-6.16.ebuild
new file mode 100644
index 000000000000..a512cc1bc866
--- /dev/null
+++ b/sys-apps/rng-tools/rng-tools-6.16.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools readme.gentoo-r1 systemd
+
+DESCRIPTION="Daemon to use hardware random number generators"
+HOMEPAGE="https://github.com/nhorman/rng-tools"
+SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv ~sparc x86"
+IUSE="jitterentropy nistbeacon pkcs11 qrypt rtlsdr selinux test"
+REQUIRED_USE="test? ( jitterentropy )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/openssl:=
+ sys-libs/libcap
+ jitterentropy? ( app-crypt/jitterentropy:= )
+ nistbeacon? (
+ dev-libs/jansson:=
+ dev-libs/libxml2:2=
+ net-misc/curl[ssl]
+ )
+ pkcs11? ( dev-libs/libp11:= )
+ qrypt? (
+ dev-libs/jansson:=
+ net-misc/curl[ssl]
+ )
+ rtlsdr? ( net-wireless/rtl-sdr )
+ elibc_musl? ( sys-libs/argp-standalone )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-rngd )
+"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ sed -i "s/sleep 30/sleep 120/g" tests/rngtestjitter.sh || die
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable jitterentropy)
+ $(use_with nistbeacon)
+ $(use_with pkcs11)
+ $(use_with rtlsdr)
+ $(use_with qrypt)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ RNGD_JITTER_TIMEOUT=90 default
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/rngd-initd-6.11 rngd
+ newconfd "${FILESDIR}"/rngd-confd-6.11 rngd
+ systemd_dounit rngd.service
+
+ if use pkcs11; then
+ local DISABLE_AUTOFORMATTING=1
+ local DOC_CONTENTS="
+The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
+to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
+ '${EPREFIX}/etc/conf.d/rngd'
+reflects the correct PKCS11 engine path to be used by rngd.
+"
+ readme.gentoo_create_doc
+ fi
+}
+
+pkg_postinst() {
+ use pkcs11 && readme.gentoo_print_elog
+}
diff --git a/sys-apps/rng-tools/rng-tools-6.6-r1.ebuild b/sys-apps/rng-tools/rng-tools-6.6-r1.ebuild
deleted file mode 100644
index 7ad1a1edc80a..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.6-r1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools systemd toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~x86"
-IUSE="jitterentropy nistbeacon selinux"
-
-DEPEND="dev-libs/libgcrypt:0
- dev-libs/libgpg-error
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- net-misc/curl[ssl]
- dev-libs/libxml2:2=
- dev-libs/openssl:0=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-DEPEND="${DEPEND}
- nistbeacon? (
- virtual/pkgconfig
- )
-"
-
-PATCHES=(
- "${FILESDIR}"/test-for-argp.patch
- "${FILESDIR}"/${PN}-5-fix-textrels-on-PIC-x86.patch #469962
-)
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with nistbeacon)
- $(use_enable jitterentropy)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.7-r1.ebuild b/sys-apps/rng-tools/rng-tools-6.7-r1.ebuild
deleted file mode 100644
index 35ca738e350c..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.7-r1.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools systemd readme.gentoo-r1 toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~x86"
-IUSE="jitterentropy nistbeacon pkcs11 selinux"
-
-DEPEND="dev-libs/libgcrypt:0
- dev-libs/libgpg-error
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- net-misc/curl[ssl]
- dev-libs/libxml2:2=
- dev-libs/openssl:0=
- )
- pkcs11? (
- dev-libs/libp11:=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-DEPEND="${DEPEND}
- nistbeacon? (
- virtual/pkgconfig
- )
-"
-
-PATCHES=(
- "${FILESDIR}"/test-for-argp.patch
- "${FILESDIR}"/${PN}-5-fix-textrels-on-PIC-x86.patch #469962
-)
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
-
- # rngd_pkcs11.c needs to be linked against -lcrypto #684228
- # See: https://github.com/nhorman/rng-tools/pull/61
- if use pkcs11; then
- sed -e '/rngd_pkcs11.c$/ a rngd_LDADD\t+= -lcrypto' \
- -i Makefile.am || die
- fi
-
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable jitterentropy)
- $(use_with nistbeacon)
- $(use_with pkcs11)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6.7-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6.7 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-
- if use pkcs11; then
- local DISABLE_AUTOFORMATTING=1
- local DOC_CONTENTS="
-The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
-to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
- '${EROOT%/}/etc/conf.d/rngd'
-reflects the correct PKCS11 engine path to be used by rngd.
-"
- readme.gentoo_create_doc
- fi
-
-}
-
-pkg_postinst() {
- use pkcs11 && readme.gentoo_print_elog
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.7-r2.ebuild b/sys-apps/rng-tools/rng-tools-6.7-r2.ebuild
deleted file mode 100644
index adeb2bb4fccc..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.7-r2.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools systemd readme.gentoo-r1 toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ~mips ppc ppc64 ~riscv x86"
-IUSE="jitterentropy nistbeacon pkcs11 selinux"
-
-DEPEND="dev-libs/libgcrypt:0
- dev-libs/libgpg-error
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- net-misc/curl[ssl]
- dev-libs/libxml2:2=
- dev-libs/openssl:0=
- )
- pkcs11? (
- dev-libs/libp11:=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-DEPEND="${DEPEND}
- nistbeacon? (
- virtual/pkgconfig
- )
-"
-
-PATCHES=(
- "${FILESDIR}"/test-for-argp.patch
- "${FILESDIR}"/${PN}-5-fix-textrels-on-PIC-x86.patch #469962
- "${FILESDIR}"/rngd-shutdown.patch
-)
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
-
- # rngd_pkcs11.c needs to be linked against -lcrypto #684228
- # See: https://github.com/nhorman/rng-tools/pull/61
- if use pkcs11; then
- sed -e '/rngd_pkcs11.c$/ a rngd_LDADD\t+= -lcrypto' \
- -i Makefile.am || die
- fi
-
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable jitterentropy)
- $(use_with nistbeacon)
- $(use_with pkcs11)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6.7-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6.7 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-
- if use pkcs11; then
- local DISABLE_AUTOFORMATTING=1
- local DOC_CONTENTS="
-The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
-to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
- '${EROOT%/}/etc/conf.d/rngd'
-reflects the correct PKCS11 engine path to be used by rngd.
-"
- readme.gentoo_create_doc
- fi
-
-}
-
-pkg_postinst() {
- use pkcs11 && readme.gentoo_print_elog
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.8.ebuild b/sys-apps/rng-tools/rng-tools-6.8.ebuild
deleted file mode 100644
index 85c8eb05db86..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.8.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools systemd readme.gentoo-r1 toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~x86"
-IUSE="jitterentropy nistbeacon pkcs11 selinux"
-
-DEPEND="dev-libs/libgcrypt:0
- dev-libs/libgpg-error
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- net-misc/curl[ssl]
- dev-libs/libxml2:2=
- dev-libs/openssl:0=
- )
- pkcs11? (
- dev-libs/libp11:=
- dev-libs/openssl:0=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-DEPEND="${DEPEND}
- nistbeacon? (
- virtual/pkgconfig
- )
-"
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
-
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable jitterentropy)
- $(use_with nistbeacon)
- $(use_with pkcs11)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6.7-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6.7 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-
- if use pkcs11; then
- local DISABLE_AUTOFORMATTING=1
- local DOC_CONTENTS="
-The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
-to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
- '${EROOT%/}/etc/conf.d/rngd'
-reflects the correct PKCS11 engine path to be used by rngd.
-"
- readme.gentoo_create_doc
- fi
-
-}
-
-pkg_postinst() {
- use pkcs11 && readme.gentoo_print_elog
-}
diff --git a/sys-apps/rng-tools/rng-tools-6.9.ebuild b/sys-apps/rng-tools/rng-tools-6.9.ebuild
deleted file mode 100644
index 45d0870a2f1b..000000000000
--- a/sys-apps/rng-tools/rng-tools-6.9.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools systemd readme.gentoo-r1 toolchain-funcs
-
-DESCRIPTION="Daemon to use hardware random number generators"
-HOMEPAGE="https://github.com/nhorman/rng-tools"
-SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv x86"
-IUSE="jitterentropy nistbeacon pkcs11 selinux"
-
-DEPEND="dev-libs/libgcrypt:0
- dev-libs/libgpg-error
- sys-fs/sysfsutils
- jitterentropy? (
- app-crypt/jitterentropy:=
- )
- nistbeacon? (
- net-misc/curl[ssl]
- dev-libs/libxml2:2=
- dev-libs/openssl:0=
- )
- pkcs11? (
- dev-libs/libp11:=
- dev-libs/openssl:0=
- )
- elibc_musl? ( sys-libs/argp-standalone )
-"
-RDEPEND="${DEPEND}
- selinux? ( sec-policy/selinux-rngd )"
-DEPEND="${DEPEND}
- nistbeacon? (
- virtual/pkgconfig
- )
-"
-
-src_prepare() {
- echo 'bin_PROGRAMS = randstat' >> contrib/Makefile.am || die
-
- default
-
- mv README.md README || die
-
- eautoreconf
-
- sed -i '/^AR /d' Makefile.in || die
- tc-export AR
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_enable jitterentropy)
- $(use_with nistbeacon)
- $(use_with pkcs11)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newinitd "${FILESDIR}"/rngd-initd-6.7-r1 rngd
- newconfd "${FILESDIR}"/rngd-confd-6.7 rngd
- systemd_dounit "${FILESDIR}"/rngd.service
-
- if use pkcs11; then
- local DISABLE_AUTOFORMATTING=1
- local DOC_CONTENTS="
-The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc')
-to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in:
- '${EROOT%/}/etc/conf.d/rngd'
-reflects the correct PKCS11 engine path to be used by rngd.
-"
- readme.gentoo_create_doc
- fi
-
-}
-
-pkg_postinst() {
- use pkcs11 && readme.gentoo_print_elog
-}
diff --git a/sys-apps/roccat-tools/Manifest b/sys-apps/roccat-tools/Manifest
index 518d6dba87b8..99375a0d2c83 100644
--- a/sys-apps/roccat-tools/Manifest
+++ b/sys-apps/roccat-tools/Manifest
@@ -1,2 +1 @@
-DIST roccat-tools-5.7.0.tar.bz2 3737735 BLAKE2B fdd86cef425f1f33309165673be52c8297380a1f0a722e827c2b3697c59dd787f4b473186ab5b8ff8fadcfc851f3bb5e76c8407d831b31f82cd360679d3c1a09 SHA512 209f9fa5302806a2d2681077e990a39a4913d47b82e73f9acd86f734affd8b3a7c0087e815e5cc1dfec1787d868d09b87211d9c2a90f2ced67c150eec1b2d290
DIST roccat-tools-5.9.0.tar.bz2 3736671 BLAKE2B 4cdd0c6b50021cfae127a692d5a2a7fff5e7e1281da7add0cf9cd8f5fbfd8882186142d56982bf929867bde2950440f26ced167b52707c9d810ab53a62a4bded SHA512 d825fc372654257f330abbc7e611e87c4888924288ad56c8e57c9db5c8c25426d454ae1ab4dd591ef3b930bed410497c0aa88095d5319e2708f4b263d16eca00
diff --git a/sys-apps/roccat-tools/files/roccat-tools-5.9.0-cmake_lua_impl.patch b/sys-apps/roccat-tools/files/roccat-tools-5.9.0-cmake_lua_impl.patch
new file mode 100644
index 000000000000..3009572a8114
--- /dev/null
+++ b/sys-apps/roccat-tools/files/roccat-tools-5.9.0-cmake_lua_impl.patch
@@ -0,0 +1,11 @@
+--- a/cmake_modules/FindLUA.cmake
++++ b/cmake_modules/FindLUA.cmake
+@@ -36,7 +36,7 @@
+ ${_LUA_FIND_VERSION_SHORT}
+ -${_LUA_FIND_VERSION_SHORT}
+ )
+-SET(_LUA_NAMES luajit lua)
++SET(_LUA_NAMES ${LUA_IMPL})
+
+ FIND_PACKAGE(PkgConfig)
+
diff --git a/sys-apps/roccat-tools/files/roccat-tools-5.9.0-fno-common.patch b/sys-apps/roccat-tools/files/roccat-tools-5.9.0-fno-common.patch
new file mode 100644
index 000000000000..ba37866efe77
--- /dev/null
+++ b/sys-apps/roccat-tools/files/roccat-tools-5.9.0-fno-common.patch
@@ -0,0 +1,11 @@
+--- a/ryosmk/libroccatryosmk/ryos_device.h
++++ b/ryosmk/libroccatryosmk/ryos_device.h
+@@ -22,7 +22,7 @@
+
+ G_BEGIN_DECLS
+
+-enum {
++typedef enum {
+ RYOS_WRITE_CHECK_WAIT_LIGHT_CONTROL = 10,
+ } RyosWriteCheckWait;
+
diff --git a/sys-apps/roccat-tools/metadata.xml b/sys-apps/roccat-tools/metadata.xml
index 7ee8c8162316..5010191bf4d2 100644
--- a/sys-apps/roccat-tools/metadata.xml
+++ b/sys-apps/roccat-tools/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>polynomial-c@gentoo.org</email>
- <name>Lars Wendler</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="sourceforge">roccat</remote-id>
</upstream>
diff --git a/sys-apps/roccat-tools/roccat-tools-5.7.0.ebuild b/sys-apps/roccat-tools/roccat-tools-5.7.0.ebuild
deleted file mode 100644
index f8ddfcc8bd64..000000000000
--- a/sys-apps/roccat-tools/roccat-tools-5.7.0.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit readme.gentoo-r1 cmake-utils gnome2-utils udev user
-
-DESCRIPTION="Utility for advanced configuration of Roccat devices"
-
-HOMEPAGE="http://roccat.sourceforge.net/"
-SRC_URI="mirror://sourceforge/roccat/${P}.tar.bz2"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE_INPUT_DEVICES=(
- input_devices_roccat_arvo
- input_devices_roccat_isku
- input_devices_roccat_iskufx
- input_devices_roccat_kiro
- input_devices_roccat_kone
- input_devices_roccat_koneplus
- input_devices_roccat_konepure
- input_devices_roccat_konepuremilitary
- input_devices_roccat_konepureoptical
- input_devices_roccat_konextd
- input_devices_roccat_konextdoptical
- input_devices_roccat_kovaplus
- input_devices_roccat_kova2016
- input_devices_roccat_lua
- input_devices_roccat_nyth
- input_devices_roccat_pyra
- input_devices_roccat_ryosmk
- input_devices_roccat_ryosmkfx
- input_devices_roccat_ryostkl
- input_devices_roccat_savu
- input_devices_roccat_skeltr
- input_devices_roccat_sova
- input_devices_roccat_suora
- input_devices_roccat_tyon
-)
-
-IUSE="${IUSE_INPUT_DEVICES[@]}"
-
-RDEPEND="
- dev-libs/dbus-glib
- dev-libs/glib:2
- >=dev-libs/libgaminggear-0.15.1
- dev-libs/libgudev:=
- sys-apps/dbus
- x11-libs/cairo
- x11-libs/gtk+:2
- x11-libs/libX11
- virtual/libusb:1
- input_devices_roccat_ryosmk? ( || ( dev-lang/lua:5.1 dev-lang/lua:0 ) )
- input_devices_roccat_ryosmkfx? ( || ( dev-lang/lua:5.1 dev-lang/lua:0 ) )
- input_devices_roccat_ryostkl? ( || ( dev-lang/lua:5.1 dev-lang/lua:0 ) )
-"
-
-DEPEND="
- ${RDEPEND}
-"
-
-DOCS=( Changelog KNOWN_LIMITATIONS README )
-
-pkg_setup() {
- enewgroup roccat
-
- local model
- for model in ${IUSE_INPUT_DEVICES[@]} ; do
- use ${model} && USED_MODELS+="${model/input_devices_roccat_/;}"
- done
-}
-
-src_configure() {
- mycmakeargs=(
- -DDEVICES="${USED_MODELS/;/}"
- -DUDEVDIR="$(get_udevdir)/rules.d"
- -DWITH_LUA=5.1
- )
- cmake-utils_src_configure
-}
-
-src_install() {
- cmake-utils_src_install
- local stat_dir=/var/lib/roccat
- keepdir ${stat_dir}
- fowners root:roccat ${stat_dir}
- fperms 2770 ${stat_dir}
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- readme.gentoo_print_elog
- ewarn
- ewarn "This version breaks stored data for some devices. Before reporting bugs please delete"
- ewarn "affected folder(s) in /var/lib/roccat"
- ewarn
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
-}
diff --git a/sys-apps/roccat-tools/roccat-tools-5.9.0-r101.ebuild b/sys-apps/roccat-tools/roccat-tools-5.9.0-r101.ebuild
new file mode 100644
index 000000000000..9c5eab819e44
--- /dev/null
+++ b/sys-apps/roccat-tools/roccat-tools-5.9.0-r101.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-1 luajit )
+
+inherit readme.gentoo-r1 cmake flag-o-matic lua-single toolchain-funcs udev xdg
+
+DESCRIPTION="Utility for advanced configuration of Roccat devices"
+
+HOMEPAGE="http://roccat.sourceforge.net/"
+SRC_URI="mirror://sourceforge/roccat/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE_INPUT_DEVICES=(
+ input_devices_roccat_arvo
+ input_devices_roccat_isku
+ input_devices_roccat_iskufx
+ input_devices_roccat_kiro
+ input_devices_roccat_kone
+ input_devices_roccat_koneplus
+ input_devices_roccat_konepure
+ input_devices_roccat_konepuremilitary
+ input_devices_roccat_konepureoptical
+ input_devices_roccat_konextd
+ input_devices_roccat_konextdoptical
+ input_devices_roccat_kovaplus
+ input_devices_roccat_kova2016
+ input_devices_roccat_lua
+ input_devices_roccat_nyth
+ input_devices_roccat_pyra
+ input_devices_roccat_ryosmk
+ input_devices_roccat_ryosmkfx
+ input_devices_roccat_ryostkl
+ input_devices_roccat_savu
+ input_devices_roccat_skeltr
+ input_devices_roccat_sova
+ input_devices_roccat_suora
+ input_devices_roccat_tyon
+)
+
+IUSE="${IUSE_INPUT_DEVICES[@]}"
+
+REQUIRED_USE="
+ input_devices_roccat_ryosmk? ( ${LUA_REQUIRED_USE} )
+ input_devices_roccat_ryosmkfx? ( ${LUA_REQUIRED_USE} )
+ input_devices_roccat_ryostkl? ( ${LUA_REQUIRED_USE} )
+"
+
+RDEPEND="
+ acct-group/roccat
+ dev-libs/dbus-glib
+ dev-libs/glib:2
+ >=dev-libs/libgaminggear-0.15.1
+ dev-libs/libgudev:=
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ virtual/libusb:1
+ input_devices_roccat_ryosmk? ( ${LUA_DEPS} )
+ input_devices_roccat_ryosmkfx? ( ${LUA_DEPS} )
+ input_devices_roccat_ryostkl? ( ${LUA_DEPS} )
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.9.0-cmake_lua_impl.patch
+ "${FILESDIR}"/${PN}-5.9.0-fno-common.patch
+)
+
+DOCS=( Changelog KNOWN_LIMITATIONS README )
+
+pkg_setup() {
+ # Don't bother checking all the relevant USE flags, this is harmless
+ # to call even when no Lua implementations have been pulled in
+ # by dependencies.
+ lua-single_pkg_setup
+
+ local model
+ for model in ${IUSE_INPUT_DEVICES[@]} ; do
+ use ${model} && USED_MODELS+="${model/input_devices_roccat_/;}"
+ done
+}
+
+# Required because xdg.eclass overrides src_prepare() from cmake.eclass
+src_prepare() {
+ cmake_src_prepare
+}
+
+src_configure() {
+ if has_version \>=x11-libs/pango-1.44.0 ; then
+ # Fix build with pango-1.44 which depends on harfbuzz
+ local PKGCONF="$(tc-getPKG_CONFIG)"
+ append-cflags "$(${PKGCONF} --cflags harfbuzz)"
+ fi
+
+ local mycmakeargs=(
+ -DDEVICES="${USED_MODELS/;/}"
+ -DUDEVDIR="${EPREFIX}$(get_udevdir)/rules.d"
+ )
+
+ local lua_use=(
+ input_devices_roccat_ryosmk
+ input_devices_roccat_ryosmkfx
+ input_devices_roccat_ryostkl
+ )
+ local luse
+ for luse in ${lua_use[@]} ; do
+ if use ${luse} ; then
+ mycmakeargs+=(
+ -DLUA_IMPL="${ELUA}"
+ -DWITH_LUA="$(ver_cut 1-2 $(lua_get_version))"
+ )
+ break
+ fi
+ done
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ local stat_dir=/var/lib/roccat
+ keepdir ${stat_dir}
+ fowners root:roccat ${stat_dir}
+ fperms 2770 ${stat_dir}
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+ ewarn
+ ewarn "This version breaks stored data for some devices. Before reporting bugs please delete"
+ ewarn "affected folder(s) in /var/lib/roccat"
+ ewarn
+}
diff --git a/sys-apps/roccat-tools/roccat-tools-5.9.0.ebuild b/sys-apps/roccat-tools/roccat-tools-5.9.0.ebuild
deleted file mode 100644
index 3cc91e932e03..000000000000
--- a/sys-apps/roccat-tools/roccat-tools-5.9.0.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit readme.gentoo-r1 cmake flag-o-matic toolchain-funcs udev user xdg
-
-DESCRIPTION="Utility for advanced configuration of Roccat devices"
-
-HOMEPAGE="http://roccat.sourceforge.net/"
-SRC_URI="mirror://sourceforge/roccat/${P}.tar.bz2"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE_INPUT_DEVICES=(
- input_devices_roccat_arvo
- input_devices_roccat_isku
- input_devices_roccat_iskufx
- input_devices_roccat_kiro
- input_devices_roccat_kone
- input_devices_roccat_koneplus
- input_devices_roccat_konepure
- input_devices_roccat_konepuremilitary
- input_devices_roccat_konepureoptical
- input_devices_roccat_konextd
- input_devices_roccat_konextdoptical
- input_devices_roccat_kovaplus
- input_devices_roccat_kova2016
- input_devices_roccat_lua
- input_devices_roccat_nyth
- input_devices_roccat_pyra
- input_devices_roccat_ryosmk
- input_devices_roccat_ryosmkfx
- input_devices_roccat_ryostkl
- input_devices_roccat_savu
- input_devices_roccat_skeltr
- input_devices_roccat_sova
- input_devices_roccat_suora
- input_devices_roccat_tyon
-)
-
-IUSE="${IUSE_INPUT_DEVICES[@]}"
-
-LUA_DEPEND="|| ( dev-lang/lua:5.1 dev-lang/lua:0 )"
-
-RDEPEND="
- dev-libs/dbus-glib
- dev-libs/glib:2
- >=dev-libs/libgaminggear-0.15.1
- dev-libs/libgudev:=
- sys-apps/dbus
- x11-libs/cairo
- x11-libs/gtk+:2
- x11-libs/libX11
- virtual/libusb:1
- input_devices_roccat_ryosmk? ( ${LUA_DEPEND} )
- input_devices_roccat_ryosmkfx? ( ${LUA_DEPEND} )
- input_devices_roccat_ryostkl? ( ${LUA_DEPEND} )
-"
-
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
-"
-
-DOCS=( Changelog KNOWN_LIMITATIONS README )
-
-pkg_setup() {
- enewgroup roccat
-
- local model
- for model in ${IUSE_INPUT_DEVICES[@]} ; do
- use ${model} && USED_MODELS+="${model/input_devices_roccat_/;}"
- done
-}
-
-# Required because xdg.eclass overrides src_prepare() from cmake.eclass
-src_prepare() {
- cmake_src_prepare
-}
-
-src_configure() {
- if has_version \>=x11-libs/pango-1.44.0 ; then
- # Fix build with pango-1.44 which depends on harfbuzz
- local PKGCONF="$(tc-getPKG_CONFIG)"
- append-cflags "$(${PKGCONF} --cflags harfbuzz)"
- fi
-
- mycmakeargs=(
- -DDEVICES="${USED_MODELS/;/}"
- -DUDEVDIR="${EPREFIX}$(get_udevdir)/rules.d"
- )
-
- local lua_use=(
- input_devices_roccat_ryosmk
- input_devices_roccat_ryosmkfx
- input_devices_roccat_ryostkl
- )
- local luse
- for luse in ${lua_use[@]} ; do
- if use ${luse} ; then
- mycmakeargs+=( -DWITH_LUA="5.1" )
- break
- fi
- done
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
- local stat_dir=/var/lib/roccat
- keepdir ${stat_dir}
- fowners root:roccat ${stat_dir}
- fperms 2770 ${stat_dir}
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- readme.gentoo_print_elog
- ewarn
- ewarn "This version breaks stored data for some devices. Before reporting bugs please delete"
- ewarn "affected folder(s) in /var/lib/roccat"
- ewarn
-}
diff --git a/sys-apps/rootlesskit/Manifest b/sys-apps/rootlesskit/Manifest
new file mode 100644
index 000000000000..d6e49e7f5793
--- /dev/null
+++ b/sys-apps/rootlesskit/Manifest
@@ -0,0 +1,4 @@
+DIST rootlesskit-2.0.1-deps.tar.xz 66744312 BLAKE2B 8369d7ff25212dc5bcc19dfd159d5c1592723173f0e64868d8a3aba4f9654a5457089e0ae3997efbbe12709ebe3e97d299529083b42caee60fd49ecc7e6aa156 SHA512 54f207035dc37e1fc1fbb2667f542696034cee4435d80db2cd889de0028c6caa3c542f5b09cbfdc9193fe8c42f48f2433a459e01df6570edd853a6315282b2d1
+DIST rootlesskit-2.0.1.tar.gz 74527 BLAKE2B 04ae4980275c7271ce4d6a9d26917f083f89c5fe57ac3d7f43e2a0eeb5fa13e39de1f05be24940b79353bf6c2408e451f7d2ea10497bee4223757a0526f9d109 SHA512 1fe3eb19e1e0c97acfaae2c8aa435d3450ea9e666b00dcfe73a4835e9e8f6e2554c1f6f7491d9bc95a33cdab7c0c0d238aed7ce4bed237399660e9c16cb33324
+DIST rootlesskit-2.0.2-deps.tar.xz 769588 BLAKE2B fa226a8d851cd63f114e69f56a1092d4afdaaa598ceae9ca6c0167f3597e40513ba7fb2bd3240f1b906b5f8a5f5efa4eb621059aa5c2d7ca4d1911a10513f274 SHA512 ab4eccf71c9915b0fb3b39c0149154fa750d33ca04a5df84b12d50ed860dbf81d07464d36e98df0684279b814577f8b95bbc115b7337b8d1f525a6d7e431809b
+DIST rootlesskit-2.0.2.tar.gz 75119 BLAKE2B a5baa5a030986be394f4fe0941a249eb6faf55a11221f89e5710ba61d0b59150f6ddb4bc9c050182c41782921d20ce8f96d8fd211a2f57b6141eb28bd8506f41 SHA512 4f03f0cd1c650b2f1d3dd866b25ca2cca9cc6028f10a6f43e5bca7d736da605847262f2a2103e252e513caa9c0bf0ebb05fbfb1c10ba21e67fb434cfaa8123e3
diff --git a/sys-apps/rootlesskit/metadata.xml b/sys-apps/rootlesskit/metadata.xml
new file mode 100644
index 000000000000..9cb15e1de679
--- /dev/null
+++ b/sys-apps/rootlesskit/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zmedico@gentoo.org</email>
+ <name>Zac Medico</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rootless-containers/rootlesskit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/rootlesskit/rootlesskit-2.0.1.ebuild b/sys-apps/rootlesskit/rootlesskit-2.0.1.ebuild
new file mode 100644
index 000000000000..26ccf3bc7a2b
--- /dev/null
+++ b/sys-apps/rootlesskit/rootlesskit-2.0.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Linux-native \"fake root\" for implementing rootless containers"
+HOMEPAGE="https://github.com/rootless-containers/rootlesskit"
+SRC_URI="https://github.com/rootless-containers/rootlesskit/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
+LICENSE="Apache-2.0"
+LICENSE+=" BSD BSD-2 ISC MIT"
+SLOT="0"
+
+KEYWORDS="~amd64"
+IUSE="selinux"
+
+RDEPEND="selinux? ( sec-policy/selinux-rootlesskit )"
+
+src_install() {
+ local -x BINDIR=${EPREFIX}/usr/bin
+ default
+}
diff --git a/sys-apps/rootlesskit/rootlesskit-2.0.2.ebuild b/sys-apps/rootlesskit/rootlesskit-2.0.2.ebuild
new file mode 100644
index 000000000000..26ccf3bc7a2b
--- /dev/null
+++ b/sys-apps/rootlesskit/rootlesskit-2.0.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Linux-native \"fake root\" for implementing rootless containers"
+HOMEPAGE="https://github.com/rootless-containers/rootlesskit"
+SRC_URI="https://github.com/rootless-containers/rootlesskit/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
+LICENSE="Apache-2.0"
+LICENSE+=" BSD BSD-2 ISC MIT"
+SLOT="0"
+
+KEYWORDS="~amd64"
+IUSE="selinux"
+
+RDEPEND="selinux? ( sec-policy/selinux-rootlesskit )"
+
+src_install() {
+ local -x BINDIR=${EPREFIX}/usr/bin
+ default
+}
diff --git a/sys-apps/rtl-entropy/Manifest b/sys-apps/rtl-entropy/Manifest
deleted file mode 100644
index e0f80564be0a..000000000000
--- a/sys-apps/rtl-entropy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rtl-entropy-0.1.2_p20180118.tar.gz 57495 BLAKE2B f4f1fcaf296594263c70e3221fedd35876d34f4a740332bc95fc3407393db05072507a83cebe5561bfc514d02f2a69f948a09c2e0176acae0a4d262cf478e165 SHA512 b09ccac5594d067c36e44683b1f67dde1255a4ea4e10bbd6b8cdff940158c9bdcf9aa1938a3ecead5a1c254fb641571c2ad6efb04933f9dba08a2f628f3e0ef8
diff --git a/sys-apps/rtl-entropy/metadata.xml b/sys-apps/rtl-entropy/metadata.xml
deleted file mode 100644
index dfd977ac976e..000000000000
--- a/sys-apps/rtl-entropy/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>radio@gentoo.org</email>
- <name>Radio</name>
- </maintainer>
-<use>
- <flag name="bladerf">Build with Nuand BladeRF support</flag>
-</use>
- <upstream>
- <remote-id type="github">pwarren/rtl-entropy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/sys-apps/rtl-entropy/rtl-entropy-0.1.2_p20180118-r1.ebuild b/sys-apps/rtl-entropy/rtl-entropy-0.1.2_p20180118-r1.ebuild
deleted file mode 100644
index af725fddf5f8..000000000000
--- a/sys-apps/rtl-entropy/rtl-entropy-0.1.2_p20180118-r1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake-utils
-
-COMMIT="9f1768c35f6205a73a657cfc9ac7bd9f9a40936c"
-
-DESCRIPTION="An entropy generator using SDR peripherals, including rtl-sdr and BladeRF"
-HOMEPAGE="http://rtl-entropy.org/"
-SRC_URI="https://github.com/pwarren/rtl-entropy/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-#sadly, rtlsdr support doesn't appear to be optional
-IUSE="bladerf"
-
-RDEPEND="
- dev-libs/openssl:0=
- net-wireless/rtl-sdr
- sys-libs/libcap
- bladerf? ( net-wireless/bladerf:= )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S="${WORKDIR}/${PN}-${COMMIT}"
-
-src_prepare() {
- cmake-utils_src_prepare
-
- if ! use bladerf; then
- sed -i 's#libbladeRF.h#libbladeRF-totallynotreal.h#' \
- cmake/Modules/FindLibbladeRF.cmake || die
- fi
-}
diff --git a/sys-apps/s390-tools/metadata.xml b/sys-apps/s390-tools/metadata.xml
index e13e500a76b2..866ff53809cd 100644
--- a/sys-apps/s390-tools/metadata.xml
+++ b/sys-apps/s390-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>s390@gentoo.org</email>
diff --git a/sys-apps/s390-tools/s390-tools-2.12.0.ebuild b/sys-apps/s390-tools/s390-tools-2.12.0.ebuild
index 06c2fdd5d481..cac302c78a9f 100644
--- a/sys-apps/s390-tools/s390-tools-2.12.0.ebuild
+++ b/sys-apps/s390-tools/s390-tools-2.12.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/ibm-${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT"
SLOT="0"
-KEYWORDS="-* s390"
+KEYWORDS="-* ~s390"
IUSE="cryptsetup fuse ncurses openssl pfm snmp zlib"
RDEPEND="fuse? ( sys-fs/fuse:0= )
@@ -26,9 +26,8 @@ RDEPEND="fuse? ( sys-fs/fuse:0= )
pfm? ( app-misc/pfm )
snmp? ( net-analyzer/net-snmp )
zlib? ( sys-libs/zlib )"
-DEPEND="${RDEPEND}
- dev-util/indent
- app-admin/genromfs"
+DEPEND="${RDEPEND}"
+BDEPEND="app-admin/genromfs"
src_prepare() {
default
diff --git a/sys-apps/s390-tools/s390-tools-2.9.0.ebuild b/sys-apps/s390-tools/s390-tools-2.9.0.ebuild
index a6710b34ad7e..d62f83652230 100644
--- a/sys-apps/s390-tools/s390-tools-2.9.0.ebuild
+++ b/sys-apps/s390-tools/s390-tools-2.9.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/ibm-${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT"
SLOT="0"
-KEYWORDS="-* s390"
+KEYWORDS="-* ~s390"
IUSE="cryptsetup fuse ncurses openssl pfm snmp zlib"
RDEPEND="fuse? ( sys-fs/fuse:0= )
diff --git a/sys-apps/s6-linux-init/Manifest b/sys-apps/s6-linux-init/Manifest
index 206b49941341..24a3f01450a8 100644
--- a/sys-apps/s6-linux-init/Manifest
+++ b/sys-apps/s6-linux-init/Manifest
@@ -1,5 +1 @@
-DIST s6-linux-init-0.3.1.1.tar.gz 25955 BLAKE2B 46e8e88c9c48fd00819cd0f437eea7ca6a5c08751aa3196dda24a8d3a22fdb14270ae99c74134ab0e123dde65bf3cc86c7916a157e447a72428db9b3870ffe3f SHA512 b8a44e09fc6770e91f1ffeed3267bf5fb83cf857653727d52773674db5942fbbc010355bdf24e456d2b2df5a1ac72888b78b2ec502c0d42770af58aaaec00648
-DIST s6-linux-init-0.4.0.0.tar.gz 26744 BLAKE2B d56ba8def4e4a0158721fd9b9c4f19aa2e13e615e7e598fdced2b7c341820f31830c021d9181792bfd324e70163fed826c691a80fbbb7ae6f30be46eeb6330b9 SHA512 5b53d3afad28b476d366d649f9989de79adaaa3b7d255323bb121a6f8e6fef051306cd6368ddcc3745b6472bf4ac2ccb7f4088f6addeb6d52ebc40e703dcbb44
-DIST s6-linux-init-1.0.2.0.tar.gz 47666 BLAKE2B 95b092d624db23c0a31a3af8d381e471221f7e7608cad4b49e07ef1e12f6526532e912bd75ef9dd739e14dc1ca99f4aa80e8923ac31beee42828cdcc9c71030d SHA512 1140434b07bf85956382a43bc8f58fa32cbefc43e40a48825b9e938d7950d988585e872667b79ba1bd44f0befb69202bcb7347c0e722ab5d20dc9304cd1be843
-DIST s6-linux-init-1.0.3.1.tar.gz 48888 BLAKE2B 0633b66840396029686c32e13223527436db118a59abab5800d59c0baad8788c0dd4ff5e97704f680fce2182a64212394dc6a8e7dab6ae8028dbd8cfbf72dd4d SHA512 71b380ff0eaa1d297bf6af5a1c979efdf34d10ec1e440fd1ee3fcab8ddf2c5d7c903d151986ecb5f01a9e0135bedc8021e5fbf82a3fd66abfebcb5e3cbf19242
-DIST s6-linux-init-1.0.4.2.tar.gz 52731 BLAKE2B d9565921c7e3a786c3c9cdd1aae5cc8c1b0939d857b1da668443e756f39c5e454a618d6fc572490e37a01581dae44b799f8df6972701b8d91a947a05695ab604 SHA512 31dfe6911f6de527c43120097bd711cfb84cdec6f056ccaa03d48a1bcecb852caacdbaabddf0188ea30c4827abe3293acb8ebff8dfe80ea8665934802fac0e53
+DIST s6-linux-init-1.1.2.0.tar.gz 60986 BLAKE2B e1becccf2ae54d06e590586c3158ae4ea4ec9a78c942bbdca5aca7320cd3cbbf9fe7e4b711c1c3505027d704dbd5de2185dc4d84bbc2dfc7687ff41c765bb31e SHA512 76376c4d407e665f67f733f1366dbacca58d268ebdbe22a9147cb102d519bd4c5887a345f66db2005d29ed9a841cb5a388c73c7d8df00d984cc4a25b9a813786
diff --git a/sys-apps/s6-linux-init/metadata.xml b/sys-apps/s6-linux-init/metadata.xml
index 4f506a138719..8cbce5c30b10 100644
--- a/sys-apps/s6-linux-init/metadata.xml
+++ b/sys-apps/s6-linux-init/metadata.xml
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
<email>samuel@sholland.org</email>
<name>Samuel Holland</name>
</maintainer>
@@ -9,6 +13,10 @@
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="sysv-utils">Install sysvinit compatibility symlinks for telinit, halt, poweroff, reboot, and shutdown</flag>
</use>
diff --git a/sys-apps/s6-linux-init/s6-linux-init-0.3.1.1.ebuild b/sys-apps/s6-linux-init/s6-linux-init-0.3.1.1.ebuild
deleted file mode 100644
index d94588ab510a..000000000000
--- a/sys-apps/s6-linux-init/s6-linux-init-0.3.1.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Generates an init binary for s6-based init systems"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-init/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-libs/skalibs-2.6.0.0[static-libs]
- )
- !static? (
- >=dev-libs/skalibs-2.6.0.0
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.2
- >=sys-apps/s6-2.6.1.0
- >=sys-apps/s6-linux-utils-2.4.0.0
- >=sys-apps/s6-portable-utils-2.2.1.1
- !static? (
- >=dev-libs/skalibs-2.6.0.0:=
- )
-"
-
-DOCS="INSTALL examples"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS_AUTO -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
-
-pkg_postinst()
-{
- einfo "The generated init script requires additional packages."
- einfo "Read ${ROOT}usr/share/doc/${PF}/INSTALL for details."
-}
diff --git a/sys-apps/s6-linux-init/s6-linux-init-0.4.0.0.ebuild b/sys-apps/s6-linux-init/s6-linux-init-0.4.0.0.ebuild
deleted file mode 100644
index f1878d4e465b..000000000000
--- a/sys-apps/s6-linux-init/s6-linux-init-0.4.0.0.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Generates an init binary for s6-based init systems"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-init/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-libs/skalibs-2.6.4.0[static-libs]
- )
- !static? (
- >=dev-libs/skalibs-2.6.4.0
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.4
- >=sys-apps/s6-2.7.1.0
- >=sys-apps/s6-linux-utils-2.4.0.2
- >=sys-apps/s6-portable-utils-2.2.1.1
- !static? (
- >=dev-libs/skalibs-2.6.4.0:=
- )
-"
-
-DOCS="INSTALL examples"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS_AUTO -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
-
-pkg_postinst()
-{
- einfo "The generated init script requires additional packages."
- einfo "Read ${ROOT}usr/share/doc/${PF}/INSTALL for details."
-}
diff --git a/sys-apps/s6-linux-init/s6-linux-init-1.0.2.0.ebuild b/sys-apps/s6-linux-init/s6-linux-init-1.0.2.0.ebuild
deleted file mode 100644
index 935ad1c8e6b1..000000000000
--- a/sys-apps/s6-linux-init/s6-linux-init-1.0.2.0.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Generates an init binary for s6-based init systems"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-init/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~x86"
-IUSE="static static-libs +sysv-utils"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.5.1.0:=[static-libs?]
- >=dev-libs/skalibs-2.8.1.0:=[static-libs?]
- >=sys-apps/s6-2.8.0.1:=[static-libs?]
- sysv-utils? (
- !sys-apps/systemd[sysv-utils]
- !sys-apps/sysvinit
- )
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --skeldir=/etc/s6-linux-init/skel \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
-
- if use sysv-utils ; then
- "${D}/bin/s6-linux-init-maker" -f "${D}/etc/s6-linux-init/skel" "${T}/dir" || die
- into /
- dosbin "${T}/dir/bin"/{halt,poweroff,reboot,shutdown,telinit}
- fi
-}
-
-pkg_postinst() {
- einfo "Read ${EROOT}/usr/share/doc/${PF}/html/quickstart.html"
- einfo "for usage instructions."
-}
diff --git a/sys-apps/s6-linux-init/s6-linux-init-1.0.3.1.ebuild b/sys-apps/s6-linux-init/s6-linux-init-1.0.3.1.ebuild
deleted file mode 100644
index c68f5e1a426b..000000000000
--- a/sys-apps/s6-linux-init/s6-linux-init-1.0.3.1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Generates an init binary for s6-based init systems"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-init/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs +sysv-utils"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.5.3.0:=[static-libs?]
- >=dev-libs/skalibs-2.9.1.0:=[static-libs?]
- >=sys-apps/s6-2.9.0.1:=[static-libs?]
- sysv-utils? (
- !sys-apps/systemd[sysv-utils]
- !sys-apps/sysvinit
- )
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --skeldir=/etc/s6-linux-init/skel \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
-
- if use sysv-utils ; then
- "${D}/bin/s6-linux-init-maker" -f "${D}/etc/s6-linux-init/skel" "${T}/dir" || die
- into /
- dosbin "${T}/dir/bin"/{halt,poweroff,reboot,shutdown,telinit}
- fi
-}
-
-pkg_postinst() {
- einfo "Read ${EROOT}/usr/share/doc/${PF}/html/quickstart.html"
- einfo "for usage instructions."
-}
diff --git a/sys-apps/s6-linux-init/s6-linux-init-1.0.4.2.ebuild b/sys-apps/s6-linux-init/s6-linux-init-1.0.4.2.ebuild
deleted file mode 100644
index fac1fd9f99a1..000000000000
--- a/sys-apps/s6-linux-init/s6-linux-init-1.0.4.2.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Generates an init binary for s6-based init systems"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-init/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs +sysv-utils"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.6.1.0:=[static-libs?]
- >=dev-libs/skalibs-2.9.2.1:=[static-libs?]
- >=sys-apps/s6-2.9.2.0:=[execline,static-libs?]
- sysv-utils? (
- !sys-apps/systemd[sysv-utils]
- !sys-apps/sysvinit
- )
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --skeldir=/etc/s6-linux-init/skel \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-src_install() {
- default
-
- if use sysv-utils ; then
- "${D}/bin/s6-linux-init-maker" -f "${D}/etc/s6-linux-init/skel" "${T}/dir" || die
- into /
- dosbin "${T}/dir/bin"/{halt,poweroff,reboot,shutdown,telinit}
- fi
-}
-
-pkg_postinst() {
- einfo "Read ${EROOT}/usr/share/doc/${PF}/html/quickstart.html"
- einfo "for usage instructions."
-}
diff --git a/sys-apps/s6-linux-init/s6-linux-init-1.1.2.0.ebuild b/sys-apps/s6-linux-init/s6-linux-init-1.1.2.0.ebuild
new file mode 100644
index 000000000000..6de4c9c6cd00
--- /dev/null
+++ b/sys-apps/s6-linux-init/s6-linux-init-1.1.2.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature toolchain-funcs
+
+DESCRIPTION="Generates an init binary for s6-based init systems"
+HOMEPAGE="https://www.skarnet.org/software/s6-linux-init/"
+SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 arm ~mips x86"
+IUSE="+sysv-utils"
+
+RDEPEND="
+ dev-lang/execline:=
+ >=dev-libs/skalibs-2.14.0.0:=
+ sys-apps/s6:=[execline]
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/systemd[sysv-utils]
+ !sys-apps/sysvinit
+ )
+"
+DEPEND="${RDEPEND}"
+
+HTML_DOCS=( doc/. )
+
+src_prepare() {
+ default
+
+ # Avoid QA warning for LDFLAGS addition
+ sed -i -e 's/.*-Wl,--hash-style=both$/:/' configure || die
+
+ sed -i -e '/AR := /d' -e '/RANLIB := /d' Makefile || die
+}
+
+src_configure() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ --bindir=/bin
+ --dynlibdir="/$(get_libdir)"
+ --skeldir=/etc/s6-linux-init/skel
+ --libdir="/usr/$(get_libdir)/${PN}"
+ --libexecdir=/lib/s6
+ --with-dynlib="/$(get_libdir)"
+ --with-lib="/usr/$(get_libdir)/s6"
+ --with-lib="/usr/$(get_libdir)/skalibs"
+ --with-sysdeps="/usr/$(get_libdir)/skalibs"
+ --enable-shared
+ --disable-allstatic
+ --disable-static
+ --disable-static-libc
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+
+ if use sysv-utils ; then
+ "${D}/bin/s6-linux-init-maker" -f "${D}/etc/s6-linux-init/skel" "${T}/dir" || die
+ into /
+ dosbin "${T}/dir/bin"/{halt,poweroff,reboot,shutdown,telinit}
+ fi
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ elog "Read ${EROOT}/usr/share/doc/${PF}/html/quickstart.html"
+ elog "for usage instructions."
+ fi
+
+ optfeature "man pages" app-doc/s6-linux-init-man-pages
+}
diff --git a/sys-apps/s6-linux-utils/Manifest b/sys-apps/s6-linux-utils/Manifest
index d7b5e72cfb40..635553dbf957 100644
--- a/sys-apps/s6-linux-utils/Manifest
+++ b/sys-apps/s6-linux-utils/Manifest
@@ -1,5 +1 @@
-DIST s6-linux-utils-2.4.0.2.tar.gz 40832 BLAKE2B 24ce6d51aacfcaeeb8531931a0deac4e2430f627907157022ed6378e7058afcc946f1c620bb3758e43a1911db517dd46e65a43f338c446e61711b000d6751523 SHA512 4b0c8f1b65b8eb47f3aa7aa365d20dcd46fc144e166f78825ee53aeb789e009b2716a826efa1e92e86e8fe86421efc6ae07970ce421c6913f0b1db679eb6117e
-DIST s6-linux-utils-2.5.0.0.tar.gz 34976 BLAKE2B ccbe5a24c39d32a6d3e9c1ba09c76c278ed33e831ba9d124e30615204f4084823efd13500b2b2a0efa0ddd703996ec3a47ea66a2b5c1f832d8003cffccf6b773 SHA512 0433fd7863135629d2ab849db34c77f0cbc146f7a84833fcb9263d49ed8366f370f0513bb055990e40a17dff69a1b83a741b1bac2fc8d159d866b45a6b81bdc9
-DIST s6-linux-utils-2.5.0.1.tar.gz 35273 BLAKE2B 61ba3a8ee1fce5357d4c3e71b442ade2277adf6b0560646b78cab3b922183ff15478190a3c4b3a7cce88f13d3836711b81f2c37bc7e545012708ee25f7b036cb SHA512 bc4693486299d1027b6ce908684fe2c66b8173b17baad3bb35a660f1d42f00e48ae56c762c17d162c7be978f7246a9ac5218a5c93c0b93f24b5dc881782329d5
-DIST s6-linux-utils-2.5.1.1.tar.gz 35513 BLAKE2B 7b5e613b3ec7a8104cd53ce2a6db921994ded9d890baee022d16f98f461a71804d16122f303ae66f32d3766325d566c80e04e27fda60a61d1f624eb5a65ae178 SHA512 59c58c4d8e13b7a6e0215f21978f8ac2ac54fc3685884204ea1f011f2a882b9381a9686cbb24c9e566e322c14174dda40368c308e37e9c44f6a1687231d108a2
-DIST s6-linux-utils-2.5.1.3.tar.gz 35549 BLAKE2B e39dcf141839e6fc4554ba10fc89daaa7b9600ffa4360c80d3278d49224c88f124588ec988a2386a3243923002a16d9829d4828c829fda18745356fa6774175d SHA512 73c887e67251c162677b2151d37a1cdbb9cee6f50bd52c5eefd4750f9bf77452a023e0484891e384312fb169dfbe02af3d4cfecb17d34f1668cc0acb8d7a9181
+DIST s6-linux-utils-2.6.2.0.tar.gz 43287 BLAKE2B 2dcad4eac6250f7dfb31946baa8b21068297d6723bfd03abb01389183ca7b586db82e12be37acd9d2016923c0c693865153129fc265dd9e00852c1ba0c39c488 SHA512 b7bc96ef3aa81bc01c6ca2a82591201be0966d8aa2b71545c963f67dba8441a05631e0ea593f0a693ee04d6d2637754e9543eddbfe70ed9c0529ff49081aa54d
diff --git a/sys-apps/s6-linux-utils/metadata.xml b/sys-apps/s6-linux-utils/metadata.xml
index 2e37454094e4..fe8d13599aec 100644
--- a/sys-apps/s6-linux-utils/metadata.xml
+++ b/sys-apps/s6-linux-utils/metadata.xml
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
<email>samuel@sholland.org</email>
<name>Samuel Holland</name>
</maintainer>
@@ -9,4 +13,8 @@
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/s6-linux-utils/s6-linux-utils-2.4.0.2.ebuild b/sys-apps/s6-linux-utils/s6-linux-utils-2.4.0.2.ebuild
deleted file mode 100644
index 8715c0b70db4..000000000000
--- a/sys-apps/s6-linux-utils/s6-linux-utils-2.4.0.2.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="set of tiny linux utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-libs/skalibs-2.6.0.2[static-libs]
- )
- !static? (
- >=dev-libs/skalibs-2.6.0.2
- )
-"
-RDEPEND="
- !static? (
- >=dev-libs/skalibs-2.6.0.2:=
- )
-"
-
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.0.ebuild b/sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.0.ebuild
deleted file mode 100644
index cbebf69605fa..000000000000
--- a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.0.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="set of tiny linux utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-DEPEND="static? ( >=dev-libs/skalibs-2.7.0.0[static-libs] )
- !static? ( >=dev-libs/skalibs-2.7.0.0 )
-"
-RDEPEND="!static? ( >=dev-libs/skalibs-2.7.0.0:= )"
-
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.1.ebuild b/sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.1.ebuild
deleted file mode 100644
index 85381c98cad8..000000000000
--- a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.0.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Set of tiny linux utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-RDEPEND="!static? ( >=dev-libs/skalibs-2.8.0.0:= )"
-DEPEND="${RDEPEND}
- static? ( >=dev-libs/skalibs-2.8.0.0[static-libs] )
-"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.1.ebuild b/sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.1.ebuild
deleted file mode 100644
index 68fbddbb8813..000000000000
--- a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Set of tiny linux utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static"
-
-RDEPEND="!static? ( >=dev-libs/skalibs-2.9.1.0:= )"
-DEPEND="${RDEPEND}
- static? ( >=dev-libs/skalibs-2.9.1.0[static-libs] )
-"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.3.ebuild b/sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.3.ebuild
deleted file mode 100644
index 21a3aee0c4af..000000000000
--- a/sys-apps/s6-linux-utils/s6-linux-utils-2.5.1.3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Set of tiny linux utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-linux-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static"
-
-RDEPEND="!static? ( >=dev-libs/skalibs-2.9.3.0:= )"
-DEPEND="${RDEPEND}
- static? ( >=dev-libs/skalibs-2.9.3.0[static-libs] )
-"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-linux-utils/s6-linux-utils-2.6.2.0.ebuild b/sys-apps/s6-linux-utils/s6-linux-utils-2.6.2.0.ebuild
new file mode 100644
index 000000000000..1a6996910b2b
--- /dev/null
+++ b/sys-apps/s6-linux-utils/s6-linux-utils-2.6.2.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Set of tiny linux utilities"
+HOMEPAGE="https://www.skarnet.org/software/s6-linux-utils/"
+SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 x86"
+
+RDEPEND=">=dev-libs/skalibs-2.13.0.0:="
+DEPEND="${RDEPEND}"
+
+HTML_DOCS=( doc/. )
+
+src_prepare() {
+ default
+
+ # Avoid QA warning for LDFLAGS addition
+ sed -i -e 's/.*-Wl,--hash-style=both$/:/' configure || die
+
+ sed -i -e '/AR := /d' -e '/RANLIB := /d' Makefile || die
+}
+
+src_configure() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ --bindir=/bin
+ --dynlibdir="/$(get_libdir)"
+ --libdir="/usr/$(get_libdir)/${PN}"
+ --with-dynlib="/$(get_libdir)"
+ --with-lib="/usr/$(get_libdir)/skalibs"
+ --with-sysdeps="/usr/$(get_libdir)/skalibs"
+ --disable-allstatic
+ --disable-static
+ --disable-static-libc
+ )
+
+ econf "${myconf[@]}"
+}
diff --git a/sys-apps/s6-portable-utils/Manifest b/sys-apps/s6-portable-utils/Manifest
index f1f7e53ab135..5c74fce4b105 100644
--- a/sys-apps/s6-portable-utils/Manifest
+++ b/sys-apps/s6-portable-utils/Manifest
@@ -1,5 +1 @@
-DIST s6-portable-utils-2.2.1.1.tar.gz 47138 BLAKE2B f5519fbedc2599c0b9366bbff38a9438cb4cdf3b770dfec6e519f8857bd77a3bea172284318df224104fe7003af4a68cadc8089d77c98ba4da85eb59d59819f4 SHA512 fba7a4d1f5e0c969dc254775f28c02f1b8673ead28022962175bd605125dc56012cfdeb177037c322780be93a5191a5292a47cb26cf5d466bb5eb081fa5a9657
-DIST s6-portable-utils-2.2.1.2.tar.gz 47446 BLAKE2B 31093828bbff8d7ebd68e9b9024abff802511d6def436b6c4a42e127fc8ee84544a3e590db2e59d76f2ab407b29edbd462725d8f6c8b4923b999809c58126c8f SHA512 697356a1bea6a0d9ca2dc995667fb2c3ab0e0ec72f9cba9f64a3b745e17ff85793be4b9a3bfcb8137938b732195fdabd2ffba5cef26f86f3ad2705907c6a8ab4
-DIST s6-portable-utils-2.2.1.3.tar.gz 47619 BLAKE2B fc9c7a77f42bb64bdd1cd1cfd23d9e0aa0a208451d28d7b76b67a91aa93eebc75148604877af16f102b27581d81549c1fd6e9bf8ff6f62ad3bb9e344191c3886 SHA512 6640027e65a19417461e1e9c778d276d6ceb3f95ea5c720dd21b0d1755bb8f1a218cd9f42effd6ab6034889cc415ab935b4583b6696c2a96351417d9a8f4d7b0
-DIST s6-portable-utils-2.2.2.1.tar.gz 47874 BLAKE2B e1a9677c304d256f8a890da9c35716b513971d506e705db847e71355f7e10a49c3b4a3cdec220513964429db2faaecce5dd3c09d94fc71d19fada6f83f7619d9 SHA512 2e74befec59ae6d3f27cb5f2bb92db23af484043e4d5e53e4816d75927059af6698614a4c3ce7ed7e380a88d5bbe88e41dcbc97eb607a10d7a3e46b8a36744ed
-DIST s6-portable-utils-2.2.3.0.tar.gz 49239 BLAKE2B 3be6d6f7b92eea4fb67e3e52ced4409d2bc04c7bb23fea146d778b3739b4682f10dcd2f58cc37a7760368a645d0fa50c887445e6006a563d290c739e72634e9f SHA512 17cb58a49494bba323f031aa07db134505a0884827745ea48e4e93d1ea70b9d4dd141d065b126abb40d5c7625cbb03ba71090e66fd0adb0c54ab49478e929837
+DIST s6-portable-utils-2.3.0.3.tar.gz 51186 BLAKE2B 9a0b9f33a89cca730afc8190ab7be7fc25ed286970b430d33d8eb91d5b6e5ac4261e659674ec44c5e5a88b32a324cb62ee63837923f0a7481675c8eaa3e8804c SHA512 f75242ac6c06ffd5bd66b8a35bbdf39938cf3bfa6e79abd214af37e9e4acc732ca1760566862482bc964a5cca05bbce8bd24d7167b02dc66c5f397c85ee0d37f
diff --git a/sys-apps/s6-portable-utils/metadata.xml b/sys-apps/s6-portable-utils/metadata.xml
index 2e37454094e4..fe8d13599aec 100644
--- a/sys-apps/s6-portable-utils/metadata.xml
+++ b/sys-apps/s6-portable-utils/metadata.xml
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
<email>samuel@sholland.org</email>
<name>Samuel Holland</name>
</maintainer>
@@ -9,4 +13,8 @@
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.1.ebuild b/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.1.ebuild
deleted file mode 100644
index d303c8bb16a9..000000000000
--- a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="set of tiny portable unix utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-portable-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-libs/skalibs-2.6.0.0[static-libs]
- )
- !static? (
- >=dev-libs/skalibs-2.6.0.0
- )
-"
-RDEPEND="
- !static? (
- >=dev-libs/skalibs-2.6.0.0:=
- )
-"
-
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS_AUTO -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.2.ebuild b/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.2.ebuild
deleted file mode 100644
index d10b94ff05bd..000000000000
--- a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2017 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="set of tiny portable unix utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-portable-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-DEPEND="static? ( >=dev-libs/skalibs-2.7.0.0[static-libs] )
- !static? ( >=dev-libs/skalibs-2.7.0.0 )
-"
-RDEPEND="!static? ( >=dev-libs/skalibs-2.7.0.0:= )"
-
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS_AUTO -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.3.ebuild b/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.3.ebuild
deleted file mode 100644
index f88473544beb..000000000000
--- a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.1.3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Set of tiny portable unix utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-portable-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static"
-
-RDEPEND="!static? ( >=dev-libs/skalibs-2.8.0.0:= )"
-DEPEND="${RDEPEND}
- static? ( >=dev-libs/skalibs-2.8.0.0[static-libs] )
-"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.2.1.ebuild b/sys-apps/s6-portable-utils/s6-portable-utils-2.2.2.1.ebuild
deleted file mode 100644
index 445d1805af88..000000000000
--- a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.2.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Set of tiny portable unix utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-portable-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static"
-
-RDEPEND="!static? ( >=dev-libs/skalibs-2.9.1.0:= )"
-DEPEND="${RDEPEND}
- static? ( >=dev-libs/skalibs-2.9.1.0[static-libs] )
-"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.3.0.ebuild b/sys-apps/s6-portable-utils/s6-portable-utils-2.2.3.0.ebuild
deleted file mode 100644
index f7e0efbb5a78..000000000000
--- a/sys-apps/s6-portable-utils/s6-portable-utils-2.2.3.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Set of tiny portable unix utilities"
-HOMEPAGE="https://www.skarnet.org/software/s6-portable-utils/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static"
-
-RDEPEND="!static? ( >=dev-libs/skalibs-2.9.3.0:= )"
-DEPEND="${RDEPEND}
- static? ( >=dev-libs/skalibs-2.9.3.0[static-libs] )
-"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable static allstatic) \
- $(use_enable static static-libc)
-}
diff --git a/sys-apps/s6-portable-utils/s6-portable-utils-2.3.0.3.ebuild b/sys-apps/s6-portable-utils/s6-portable-utils-2.3.0.3.ebuild
new file mode 100644
index 000000000000..f212f9178741
--- /dev/null
+++ b/sys-apps/s6-portable-utils/s6-portable-utils-2.3.0.3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature toolchain-funcs
+
+DESCRIPTION="Set of tiny portable unix utilities"
+HOMEPAGE="https://www.skarnet.org/software/s6-portable-utils/"
+SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+
+RDEPEND=">=dev-libs/skalibs-2.14.0.0:="
+DEPEND="${RDEPEND}"
+
+HTML_DOCS=( doc/. )
+
+src_prepare() {
+ default
+
+ # Avoid QA warning for LDFLAGS addition
+ sed -i -e 's/.*-Wl,--hash-style=both$/:/' configure || die
+
+ sed -i -e '/AR := /d' -e '/RANLIB := /d' Makefile || die
+}
+
+src_configure() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ --bindir=/bin
+ --dynlibdir="/$(get_libdir)"
+ --libdir="/usr/$(get_libdir)/${PN}"
+ --with-dynlib="/$(get_libdir)"
+ --with-lib="/usr/$(get_libdir)/skalibs"
+ --with-sysdeps="/usr/$(get_libdir)/skalibs"
+ --disable-allstatic
+ --disable-static
+ --disable-static-libc
+ )
+
+ econf "${myconf[@]}"
+}
+
+pkg_postinst() {
+ optfeature "man pages" app-doc/s6-portable-utils-man-pages
+}
diff --git a/sys-apps/s6-rc/Manifest b/sys-apps/s6-rc/Manifest
index abf572fba23e..b8157b68c6fa 100644
--- a/sys-apps/s6-rc/Manifest
+++ b/sys-apps/s6-rc/Manifest
@@ -1,7 +1 @@
-DIST s6-rc-0.3.0.0.tar.gz 93183 BLAKE2B 0096fe268393192867b1e2d45f9a46c0a76184783e16dbf066891a84a3f6177aec40a4cc78c276126c4588d7d57e4c5a2fa609b1b0276a12a595b99bc7440497 SHA512 d29755f84975b6b2811f55a88cd2b9f1f8383c80ec8aa19e778f74eedf0ae6cb17e55ad96c46bfea7dc3c586a6f10c783db80e8742d2a2e36d3d0062c0f10c06
-DIST s6-rc-0.4.0.0.tar.gz 96417 BLAKE2B fea4cfbadd82e8e775e4ba2cc1168fc3932f2f23335efa73f254fb17176954cf4d0c10e16bcecf4d62e9ebe05cb213e370042f86e40cb5a4a5583768fe313a83 SHA512 81ed2b09ab980e9d531e6b919f25fe9819f6144e7e639d488362fd872aead73244a03d83da9abd4cb64c10226c5e6fd163c517dcd59566b32a26841b4814ac21
-DIST s6-rc-0.4.0.1.tar.gz 96491 BLAKE2B fe6aa6e2ed868cca6d76928571d561784012ded476825501bb137798c644495a06c2b08c752198d6e985f48fe34404868fa24d49785ff42610e1dd7314ee8088 SHA512 f4e4105dd51eb9dfa4ba45d3f85970d763c70eb5e276de818d9b2c75db9153d3000dd7579ca8e7c4bf814b05bcbcde1dd9b363c57c6507f1cc5af7898049fba7
-DIST s6-rc-0.4.1.0.tar.gz 96840 BLAKE2B 07a05ab7f69a821c677d569051dbe4c22c4e774540866fee6acb91853195a7138965869698cf33eb8d02d183f55e8945beacd567fba742a0bf092cb6e65a7c89 SHA512 12bb1136bc1222e09f115118b631dd5ce7d8155151b1e57427ae932db7654484543dbf5b12f442708ca9defe51d44bba9785caf0a9857847a1f3acb375301e92
-DIST s6-rc-0.5.0.0.tar.gz 97247 BLAKE2B 5b38029c78a6910278819c6616cebfa1dfc4f11e8ad4e9b376e576a30ccdf881520212ef0c2c9a4ee4218c0b9a9751fc6855701ba0126bbf682c054ff2a7cfb7 SHA512 3fa084dd4eb489a8279135760d8051b74176994161cd989f038bef59b8abd6b8bc8c48a6ad2d2e7860627ee749d4abf6cda98857c7052f1097e9591a97355a18
-DIST s6-rc-0.5.1.1.tar.gz 97648 BLAKE2B 9c5363fafe19b970e61d5b6bdef1880b1085f4fea67c55485b6dc5c12ce857dd8828cdedd6880808fdb6d664af63ccac1884262f337b12f2a2ea4b2392016aea SHA512 88e6ad4f09501eda231e3bbac58e9dafc925ff4b2c2a845c9796f3c1519834901f0126d751705b00ecd71173e208085bd68c5ae221a7074da8254d2b71e8a772
-DIST s6-rc-0.5.2.0.tar.gz 98758 BLAKE2B 9de7a96a67be33dd152a801af1f85d2feeed6581e96cb5f9ea4f9497326061096fff4873e068d5eb9a7361aad6dc11e8c43566d4f108cccf0a56378448bc4df8 SHA512 663cddac2b60143703cf9cc33777ead2a283eb9cba53add726849e1c95418fa2729e0d3bc5dafe8879a5ce036f705e344aaf3f7e2f287fbd6c2a68e9dcbb01f5
+DIST s6-rc-0.5.4.2.tar.gz 100896 BLAKE2B d9e6f580a32d27950c7c525a5b657b429616d1c937c71cee302939b847a58bae1d5e209f53113dc82b953b5aa14c6078b206566e4809902a8f06b17c5621205f SHA512 f04e94db957e6d0033e328cc63530f64c9db101815bcafdb00a23205f4e75039dd3e593f93d48e4d9877b0696ea734ca62f672d92ff31e4e07aa19d26d809443
diff --git a/sys-apps/s6-rc/metadata.xml b/sys-apps/s6-rc/metadata.xml
index 2e37454094e4..fe8d13599aec 100644
--- a/sys-apps/s6-rc/metadata.xml
+++ b/sys-apps/s6-rc/metadata.xml
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
<email>samuel@sholland.org</email>
<name>Samuel Holland</name>
</maintainer>
@@ -9,4 +13,8 @@
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/s6-rc/s6-rc-0.3.0.0.ebuild b/sys-apps/s6-rc/s6-rc-0.3.0.0.ebuild
deleted file mode 100644
index 9d30ce768b86..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.3.0.0.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit versionator
-
-DESCRIPTION="service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~x86"
-IUSE="static static-libs"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-lang/execline-2.3.0.3[static-libs]
- >=dev-libs/skalibs-2.6.0.1[static-libs]
- >=sys-apps/s6-2.6.1.1[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.3.0.3[static=]
- >=dev-libs/skalibs-2.6.0.1
- >=sys-apps/s6-2.6.1.1[static=]
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.3:=[!static?]
- >=sys-apps/s6-2.6.1.1:=[!static?]
- !static? (
- >=dev-libs/skalibs-2.6.0.1:=
- )
-"
-
-DOCS="examples"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.4.0.0.ebuild b/sys-apps/s6-rc/s6-rc-0.4.0.0.ebuild
deleted file mode 100644
index c8b064ee565a..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.4.0.0.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit versionator
-
-DESCRIPTION="service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~x86"
-IUSE="static static-libs"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-lang/execline-2.3.0.4[static-libs]
- >=dev-libs/skalibs-2.6.3.0[static-libs]
- >=sys-apps/s6-2.6.2.0[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.3.0.4[static=]
- >=dev-libs/skalibs-2.6.3.0
- >=sys-apps/s6-2.6.2.0[static=]
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.4:=[!static?]
- >=sys-apps/s6-2.6.2.0:=[!static?]
- !static? (
- >=dev-libs/skalibs-2.6.3.0:=
- )
-"
-
-DOCS="examples"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-pkg_postinst() {
- ewarn "Databases from ${PN}-0.3.0.0 or earlier must be manually upgraded!"
- ewarn "See the upgrade notes at ${EPREFIX}/usr/share/doc/${P}/html/upgrade.html"
- ewarn "and the documentation for the s6-rc-format-upgrade utility."
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.4.0.1.ebuild b/sys-apps/s6-rc/s6-rc-0.4.0.1.ebuild
deleted file mode 100644
index ab1ba2e9f5a2..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.4.0.1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit versionator
-
-DESCRIPTION="service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~x86"
-IUSE="static static-libs"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-lang/execline-2.3.0.4[static-libs]
- >=dev-libs/skalibs-2.6.4.0[static-libs]
- >=sys-apps/s6-2.7.1.0[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.3.0.4[static=]
- >=dev-libs/skalibs-2.6.4.0
- >=sys-apps/s6-2.7.1.0[static=]
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.4:=[!static?]
- >=sys-apps/s6-2.7.1.0:=[!static?]
- !static? (
- >=dev-libs/skalibs-2.6.4.0:=
- )
-"
-
-DOCS="examples"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-pkg_postinst() {
- ewarn "Databases from ${PN}-0.3.0.0 or earlier must be manually upgraded!"
- ewarn "See the upgrade notes at ${EPREFIX}/usr/share/doc/${P}/html/upgrade.html"
- ewarn "and the documentation for the s6-rc-format-upgrade utility."
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.4.1.0.ebuild b/sys-apps/s6-rc/s6-rc-0.4.1.0.ebuild
deleted file mode 100644
index 9074e87b7229..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.4.1.0.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-DEPEND=">=dev-lang/execline-2.5.0.1[static-libs?]
- >=sys-apps/s6-2.7.2.0[static-libs?]
- >=dev-libs/skalibs-2.7.0.0[static-libs?]
-"
-RDEPEND=">=dev-lang/execline-2.5.0.1:=
- >=sys-apps/s6-2.7.2.0:=
- !static? ( >=dev-libs/skalibs-2.7.0.0:= )
-"
-
-DOCS="examples"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-pkg_postinst() {
- ewarn "Databases from ${PN}-0.3.0.0 or earlier must be manually upgraded!"
- ewarn "See the upgrade notes at ${EPREFIX}/usr/share/doc/${P}/html/upgrade.html"
- ewarn "and the documentation for the s6-rc-format-upgrade utility."
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.5.0.0.ebuild b/sys-apps/s6-rc/s6-rc-0.5.0.0.ebuild
deleted file mode 100644
index 6830fe022a56..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.5.0.0.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.5.1.0:=[static-libs?]
- >=dev-libs/skalibs-2.8.0.0:=[static-libs?]
- >=sys-apps/s6-2.8.0.0:=[static-libs?]
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-pkg_postinst() {
- ewarn "Databases from ${PN}-0.3.0.0 or earlier must be manually upgraded!"
- ewarn "See the upgrade notes at ${EROOT}/usr/share/doc/${PF}/html/upgrade.html"
- ewarn "and the documentation for the s6-rc-format-upgrade utility."
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.5.1.1.ebuild b/sys-apps/s6-rc/s6-rc-0.5.1.1.ebuild
deleted file mode 100644
index 80578304da7f..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.5.1.1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.5.3.0:=[static-libs?]
- >=dev-libs/skalibs-2.9.1.0:=[static-libs?]
- >=sys-apps/s6-2.9.0.1:=[static-libs?]
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-pkg_postinst() {
- ewarn "Databases from ${PN}-0.3.0.0 or earlier must be manually upgraded!"
- ewarn "See the upgrade notes at ${EROOT}/usr/share/doc/${PF}/html/upgrade.html"
- ewarn "and the documentation for the s6-rc-format-upgrade utility."
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.5.2.0.ebuild b/sys-apps/s6-rc/s6-rc-0.5.2.0.ebuild
deleted file mode 100644
index 6f0a3d47a42a..000000000000
--- a/sys-apps/s6-rc/s6-rc-0.5.2.0.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Service manager for the s6 supervision suite"
-HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.6.1.1:=[static-libs?]
- >=dev-libs/skalibs-2.9.3.0:=[static-libs?]
- >=sys-apps/s6-2.9.2.0:=[execline,static-libs?]
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/s6 \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
-
-pkg_postinst() {
- ewarn "Databases from ${PN}-0.3.0.0 or earlier must be manually upgraded!"
- ewarn "See the upgrade notes at ${EROOT}/usr/share/doc/${PF}/html/upgrade.html"
- ewarn "and the documentation for the s6-rc-format-upgrade utility."
-}
diff --git a/sys-apps/s6-rc/s6-rc-0.5.4.2.ebuild b/sys-apps/s6-rc/s6-rc-0.5.4.2.ebuild
new file mode 100644
index 000000000000..c1c9f919cb9e
--- /dev/null
+++ b/sys-apps/s6-rc/s6-rc-0.5.4.2.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature toolchain-funcs
+
+DESCRIPTION="Service manager for the s6 supervision suite"
+HOMEPAGE="https://www.skarnet.org/software/s6-rc/"
+SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm x86"
+
+RDEPEND="
+ dev-lang/execline:=
+ >=dev-libs/skalibs-2.14.0.0:=
+ >=sys-apps/s6-2.11.3.0:=[execline]
+"
+DEPEND="${RDEPEND}"
+
+HTML_DOCS=( doc/. )
+
+src_prepare() {
+ default
+
+ # Avoid QA warning for LDFLAGS addition
+ sed -i -e 's/.*-Wl,--hash-style=both$/:/' configure || die
+
+ sed -i -e '/AR := /d' -e '/RANLIB := /d' Makefile || die
+}
+
+src_configure() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ --bindir=/bin
+ --dynlibdir="/$(get_libdir)"
+ --libdir="/usr/$(get_libdir)/${PN}"
+ --libexecdir=/lib/s6
+ --with-dynlib="/$(get_libdir)"
+ --with-lib="/usr/$(get_libdir)/execline"
+ --with-lib="/usr/$(get_libdir)/s6"
+ --with-lib="/usr/$(get_libdir)/skalibs"
+ --with-sysdeps="/usr/$(get_libdir)/skalibs"
+ --enable-shared
+ --disable-allstatic
+ --disable-static
+ --disable-static-libc
+ )
+
+ econf "${myconf[@]}"
+}
+
+pkg_postinst() {
+ for ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${ver}" -lt "0.5.4.0"; then
+ elog "Location of helper utilities was changed from /usr/libexec to /lib/s6 in"
+ elog "version 0.5.4.0. It is necessary to recompile and update s6-rc database and"
+ elog "restart s6rc-oneshot-runner service because you are upgrading from older"
+ elog "version."
+ fi
+ done
+
+ optfeature "man pages" app-doc/s6-rc-man-pages
+}
diff --git a/sys-apps/s6/Manifest b/sys-apps/s6/Manifest
index c183811299c1..1ad9b30254dc 100644
--- a/sys-apps/s6/Manifest
+++ b/sys-apps/s6/Manifest
@@ -1,8 +1,2 @@
-DIST s6-2.1.3.0.tar.gz 181237 BLAKE2B 8cf3b4d4da81aacc17fb663a0648bae1a17085c796014d9c49b4c8c5915cdb9694f067fc1f23afc0738377535d4db493f3b1d187c62ebb48c531e975e398db6f SHA512 f5b962fb9f36a910fd8b56b1158cc28d1dab808f22f6beb309b8c23dab1863409aaecd2e3806b51ec34aef1c70f117d3b8af4c7167e0e854f6925fe278cdcaca
-DIST s6-2.6.1.1.tar.gz 196083 BLAKE2B a05083adcba33770ccbc5621c0fc6d7f6c5be22f700bb6a5642fd37bab1ed78b18c16bf5713ade1c2ae456fb653b38aeb793e671138b1038f988ed78c6fad748 SHA512 08f1af0f2e66b3f60f4a6b1489ae91fc59dd5aec97789cc655ae2ba7841327293e3a3027155d02502b34bcdad40778dfaeb441f100e8598aecf081d9d739c99d
-DIST s6-2.7.0.0.tar.gz 198303 BLAKE2B e835fd25c75a25d3f39ed59098911e65441e3fcbb4f53c48b3c13de63600975839be4fafb9a620d9ec6168a27a2f0bf86efe08797803230e8e12cab1fb0bcd3a SHA512 495d73b8e5c34ad7295dcf94d34b6998341db063594b31be6b15bead5e47644cc3c7e893974bed4ed1feff7a8a3ad2430658c26eab361e8c90893f877476cc53
-DIST s6-2.7.1.1.tar.gz 204738 BLAKE2B 5a322fb992197b921f12fbf1e5bdec7cf1797a2bec81b72faf1eb2bf94c8f46392f9eb494de58d05b6df43daafa5b0abb3947c3c1a0cb5aa3cd83a56ccd45370 SHA512 59b0a611eaa0bbdeae3133a182e933e14806151d3b8d44c7f4258a63693cf2fa487fce91a4ea37527ed0f52f211a5391b3fcf6202773b0a80d6ce7f3de60ff79
-DIST s6-2.7.2.1.tar.gz 207088 BLAKE2B 233413e3cd400af291c20fc1b82e4a803be50eba9854fcbbe917715afe3a9c51467795f620a2596ab067dc7dbb4edcd09177c208bfcaaa7b3b0f392f49c49ff3 SHA512 dcf032b812ce955c2276af36aa93138debcfa9e429e79af7b8da4f1e98b21e7b658564024c713fef45ffee03704d78f7618ad4b890de0bd3defa51b4689d3790
-DIST s6-2.8.0.1.tar.gz 208122 BLAKE2B f24981b1f29566ae23b8a41a20a119918798ba96fad7e4e62be7d03096dfcbc44de9ea6832c166f541aa8c36bca92819dbe2acd4c46e83866130817237056aa2 SHA512 03478aed129c1e50b34e0b75d7ff50bd84f62eadee862b6227c4313153d47776e7cbeae728d63209773b91931a2abc8372bb7db4953762807d0ed3d305efd23f
-DIST s6-2.9.0.1.tar.gz 201404 BLAKE2B 206bef034446753b32b19eca96b1399209e0480b785f43bb8ccfb0eb9db5d1305155de74405d851cbaccbf5ef07ef1c4d2358e0e47f33928397201417b6f3b92 SHA512 5beb6170e4a457a0a307cbace67369cc35f6fd79d13ece2e82a3ebbdb4b032304eba8124be3e45b4db921863eaa02f51472c1365b0da000eef0868c11514dfff
-DIST s6-2.9.2.0.tar.gz 205009 BLAKE2B a3b3299d7d8695b4c3555a9603763e51c7c8d84d05ea229c787e46af8f5dca3efc09d16eb3380fbbd8e9ff1d300eddb5f632082ffa8dfbe08d45b5799f705131 SHA512 ef814c0426d00112c793d4f8bb99319cde8e4ab91c24e98401559bbd28eafdb11a66d446a31816a50f67d607ed1e8c55383362e9761abca21ca24b3598929eee
+DIST s6-2.12.0.3.tar.gz 255368 BLAKE2B 2d30b327d45f0cd803cfff1b649b8393d54ff32eb545b536f17d74abca9f5a5638fdea26a5c015756d45ad48201b4adc7479b6cfd7c3f8957693fc3018127c00 SHA512 ecc57b5a06fb413d74337324f8942c905075cf14d87c1471568a836c747271cf95d0edecac69dea54cee55f7a3dbd102493876356c2d36065ab35962b87b559a
+DIST s6-2.12.0.4.tar.gz 255314 BLAKE2B 4a7da37affdc2d0651da905fdfbffe897709cc6f2a4a36453f0a87c88da66adb307805b9f8c850813186ce51c18ed07b8a95aa34a8a266a5a24b3b8646b19485 SHA512 dfdb9c0189177762a89d1f47e1d6b0a82bba5554baef4fa899b1c0a85c192d5e1dac2b929173d750df3707f0d699b28591f1eab3e63b8791e4a51af1c65e3e56
diff --git a/sys-apps/s6/metadata.xml b/sys-apps/s6/metadata.xml
index 1718e243ff88..49e468dfefd7 100644
--- a/sys-apps/s6/metadata.xml
+++ b/sys-apps/s6/metadata.xml
@@ -1,14 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <maintainer type="person">
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<email>samuel@sholland.org</email>
<name>Samuel Holland</name>
</maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<longdescription lang="en">
S6 is a small suite of programs for UNIX designed to allow
service supervision similar to daemontools or runit.
diff --git a/sys-apps/s6/s6-2.1.3.0.ebuild b/sys-apps/s6/s6-2.1.3.0.ebuild
deleted file mode 100644
index e06f05e36281..000000000000
--- a/sys-apps/s6/s6-2.1.3.0.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="http://www.skarnet.org/software/s6/"
-SRC_URI="http://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="static"
-
-DEPEND=">=sys-devel/make-4.0
- static? (
- >=dev-lang/execline-2.1.1.0[static-libs]
- >=dev-libs/skalibs-2.3.2.0[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.1.1.0
- >=dev-libs/skalibs-2.3.2.0
- )
- "
-RDEPEND="
- !static? (
- >=dev-lang/execline-2.1.1.0
- >=dev-libs/skalibs-2.3.2.0
- )
- "
-
-src_prepare()
-{
- # Remove QA warning about LDFLAGS addition
- sed -i "s~tryldflag LDFLAGS_AUTO -Wl,--hash-style=both~:~" "${S}/configure" || die
-}
-
-src_configure()
-{
- econf \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static) \
- --bindir=/bin \
- --sbindir=/sbin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --datadir=/etc \
- --sysdepdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-sysdeps=/usr/$(get_libdir)/skalibs
-}
-
-src_compile()
-{
- emake DESTDIR="${D}"
-}
-
-src_install()
-{
- default
- dodoc -r examples
- dohtml -r doc/*
-}
diff --git a/sys-apps/s6/s6-2.12.0.3.ebuild b/sys-apps/s6/s6-2.12.0.3.ebuild
new file mode 100644
index 000000000000..47b107317105
--- /dev/null
+++ b/sys-apps/s6/s6-2.12.0.3.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature toolchain-funcs
+
+DESCRIPTION="skarnet.org's small and secure supervision software suite"
+HOMEPAGE="https://www.skarnet.org/software/s6/"
+SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 arm ~mips ~riscv x86"
+IUSE="+execline"
+
+RDEPEND="
+ >=dev-libs/skalibs-2.14.1.0:=
+ execline? ( dev-lang/execline:= )
+"
+DEPEND="${RDEPEND}"
+
+HTML_DOCS=( doc/. )
+
+src_prepare() {
+ default
+
+ # Avoid QA warning for LDFLAGS addition
+ sed -i -e 's/.*-Wl,--hash-style=both$/:/' configure || die
+
+ sed -i -e '/AR := /d' -e '/RANLIB := /d' Makefile || die
+}
+
+src_configure() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ --bindir=/bin
+ --dynlibdir="/$(get_libdir)"
+ --libdir="/usr/$(get_libdir)/${PN}"
+ --libexecdir=/lib/s6
+ --with-dynlib="/$(get_libdir)"
+ --with-lib="/usr/$(get_libdir)/execline"
+ --with-lib="/usr/$(get_libdir)/skalibs"
+ --with-sysdeps="/usr/$(get_libdir)/skalibs"
+ --enable-shared
+ --disable-allstatic
+ --disable-static
+ --disable-static-libc
+ $(use_enable execline)
+ )
+
+ econf "${myconf[@]}"
+}
+
+pkg_postinst() {
+ optfeature "man pages" app-doc/s6-man-pages
+}
diff --git a/sys-apps/s6/s6-2.12.0.4.ebuild b/sys-apps/s6/s6-2.12.0.4.ebuild
new file mode 100644
index 000000000000..721d293067ea
--- /dev/null
+++ b/sys-apps/s6/s6-2.12.0.4.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature toolchain-funcs
+
+DESCRIPTION="skarnet.org's small and secure supervision software suite"
+HOMEPAGE="https://www.skarnet.org/software/s6/"
+SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~mips ~riscv ~x86"
+IUSE="+execline"
+
+RDEPEND="
+ >=dev-libs/skalibs-2.14.1.0:=
+ execline? ( dev-lang/execline:= )
+"
+DEPEND="${RDEPEND}"
+
+HTML_DOCS=( doc/. )
+
+src_prepare() {
+ default
+
+ # Avoid QA warning for LDFLAGS addition
+ sed -i -e 's/.*-Wl,--hash-style=both$/:/' configure || die
+
+ sed -i -e '/AR := /d' -e '/RANLIB := /d' Makefile || die
+}
+
+src_configure() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ --bindir=/bin
+ --dynlibdir="/$(get_libdir)"
+ --libdir="/usr/$(get_libdir)/${PN}"
+ --libexecdir=/lib/s6
+ --with-dynlib="/$(get_libdir)"
+ --with-lib="/usr/$(get_libdir)/execline"
+ --with-lib="/usr/$(get_libdir)/skalibs"
+ --with-sysdeps="/usr/$(get_libdir)/skalibs"
+ --enable-shared
+ --disable-allstatic
+ --disable-static
+ --disable-static-libc
+ $(use_enable execline)
+ )
+
+ econf "${myconf[@]}"
+}
+
+pkg_postinst() {
+ optfeature "man pages" app-doc/s6-man-pages
+}
diff --git a/sys-apps/s6/s6-2.6.1.1.ebuild b/sys-apps/s6/s6-2.6.1.1.ebuild
deleted file mode 100644
index c638efeca0aa..000000000000
--- a/sys-apps/s6/s6-2.6.1.1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit versionator
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-lang/execline-2.3.0.3[static-libs]
- >=dev-libs/skalibs-2.6.0.1[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.3.0.3[static=]
- >=dev-libs/skalibs-2.6.0.1
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.3:=[!static?]
- !static? (
- >=dev-libs/skalibs-2.6.0.1:=
- )
-"
-
-DOCS="AUTHORS examples README*"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6/s6-2.7.0.0.ebuild b/sys-apps/s6/s6-2.7.0.0.ebuild
deleted file mode 100644
index f413b96bcaca..000000000000
--- a/sys-apps/s6/s6-2.7.0.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit versionator
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-lang/execline-2.3.0.4[static-libs]
- >=dev-libs/skalibs-2.6.3.0[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.3.0.4[static=]
- >=dev-libs/skalibs-2.6.3.0
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.4:=[!static?]
- !static? (
- >=dev-libs/skalibs-2.6.3.0:=
- )
-"
-
-DOCS="AUTHORS examples README*"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6/s6-2.7.1.1.ebuild b/sys-apps/s6/s6-2.7.1.1.ebuild
deleted file mode 100644
index df566e620d64..000000000000
--- a/sys-apps/s6/s6-2.7.1.1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit versionator
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-DEPEND=">=sys-devel/make-3.81
- static? (
- >=dev-lang/execline-2.3.0.4[static-libs]
- >=dev-libs/skalibs-2.6.4.0[static-libs]
- )
- !static? (
- >=dev-lang/execline-2.3.0.4[static=]
- >=dev-libs/skalibs-2.6.4.0
- )
-"
-RDEPEND="
- >=dev-lang/execline-2.3.0.4:=[!static?]
- !static? (
- >=dev-libs/skalibs-2.6.4.0:=
- )
-"
-
-DOCS="AUTHORS examples README*"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(use_enable !static shared) \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6/s6-2.7.2.1.ebuild b/sys-apps/s6/s6-2.7.2.1.ebuild
deleted file mode 100644
index d91e04cfffd3..000000000000
--- a/sys-apps/s6/s6-2.7.2.1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-DEPEND=">=dev-lang/execline-2.5.0.1[static-libs?]
- >=dev-libs/skalibs-2.7.0.0[static-libs?]
-"
-RDEPEND=">=dev-lang/execline-2.5.0.1:=
- !static? ( >=dev-libs/skalibs-2.7.0.0:= )
-"
-
-DOCS="AUTHORS examples README*"
-HTML_DOCS="doc/*"
-
-src_prepare() {
- default
-
- # Remove QA warning about LDFLAGS addition
- sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
-
- # configure overrides gentoo's -fstack-protector default
- sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6/s6-2.8.0.1.ebuild b/sys-apps/s6/s6-2.8.0.1.ebuild
deleted file mode 100644
index 844ca391029d..000000000000
--- a/sys-apps/s6/s6-2.8.0.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.5.1.0:=[static-libs?]
- >=dev-libs/skalibs-2.8.1.0:=[static-libs?]
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6/s6-2.9.0.1.ebuild b/sys-apps/s6/s6-2.9.0.1.ebuild
deleted file mode 100644
index 154f800e40b6..000000000000
--- a/sys-apps/s6/s6-2.9.0.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND=">=dev-lang/execline-2.5.3.0:=[static-libs?]
- >=dev-libs/skalibs-2.9.1.0:=[static-libs?]
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/s6/s6-2.9.2.0.ebuild b/sys-apps/s6/s6-2.9.2.0.ebuild
deleted file mode 100644
index f3a95ba0a93b..000000000000
--- a/sys-apps/s6/s6-2.9.2.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="skarnet.org's small and secure supervision software suite"
-HOMEPAGE="https://www.skarnet.org/software/s6/"
-SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="+execline static static-libs"
-
-REQUIRED_USE="static? ( static-libs )"
-
-RDEPEND="execline? ( >=dev-lang/execline-2.6.0.1:=[static-libs?] )
- >=dev-libs/skalibs-2.9.2.1:=[static-libs?]
-"
-DEPEND="${RDEPEND}"
-
-HTML_DOCS=( doc/. )
-
-src_prepare() {
- default
-
- # Avoid QA warning for LDFLAGS addition; avoid overriding -fstack-protector
- sed -i -e 's/.*-Wl,--hash-style=both$/:/' -e '/-fno-stack-protector$/d' \
- configure || die
-}
-
-src_configure() {
- econf \
- --bindir=/bin \
- --dynlibdir=/usr/$(get_libdir) \
- --libdir=/usr/$(get_libdir)/${PN} \
- --with-dynlib=/usr/$(get_libdir) \
- --with-lib=/usr/$(get_libdir)/execline \
- --with-lib=/usr/$(get_libdir)/skalibs \
- --with-sysdeps=/usr/$(get_libdir)/skalibs \
- $(usex execline '' '--disable-execline' ) \
- --enable-shared \
- $(use_enable static allstatic) \
- $(use_enable static static-libc) \
- $(use_enable static-libs static)
-}
diff --git a/sys-apps/salinfo/metadata.xml b/sys-apps/salinfo/metadata.xml
index 845394eb2687..79c5300924dc 100644
--- a/sys-apps/salinfo/metadata.xml
+++ b/sys-apps/salinfo/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ia64@gentoo.org</email>
- <name>Gentoo Linux IA-64 Development</name>
+ <name>IA-64 architecture team</name>
</maintainer>
</pkgmetadata>
diff --git a/sys-apps/salinfo/salinfo-1.2.ebuild b/sys-apps/salinfo/salinfo-1.2.ebuild
index 4bfa4cf70ca6..7bab3829ffdf 100644
--- a/sys-apps/salinfo/salinfo-1.2.ebuild
+++ b/sys-apps/salinfo/salinfo-1.2.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
diff --git a/sys-apps/sandbox/Manifest b/sys-apps/sandbox/Manifest
index 34b7c09ba887..be0e09e28af4 100644
--- a/sys-apps/sandbox/Manifest
+++ b/sys-apps/sandbox/Manifest
@@ -1,2 +1,2 @@
-DIST sandbox-2.18.tar.xz 427760 BLAKE2B 26199ff8f919dcecdfdb74d508e0802e2e929a003ff1caddc54c1ea0f7887938c4f69065e585d61f7e96b29be26a34a1cdb62b397309e993511097ecaebe0620 SHA512 1775d4d6f80d414ab94eafae73966c12c4dd80857e21f0849703a3230ddb80501d8e574b14296e554932766cd71aa7b48a802fc388aaab43ba882ee7d005a60d
-DIST sandbox-2.20.tar.xz 428400 BLAKE2B 11761631ce8e2e495adb41508f308bce875d416ec978e3eb3cb491d3d3a464d7653b8b81d4dcc7e5cd31e8a55069aafa263b85008651ee1d7318f32407fa4615 SHA512 06db36fc85bacf9a3a094c434b73277d8cdde986f2fad7676c42e8f84b3b8b653a1f4b1ec4af9fa1ff5484177419e18f5621275f56a8fbf3973ece524dd6d208
+DIST sandbox-2.37.tar.xz 459420 BLAKE2B 0f6c701f819139f557a5fccb59e67509b04ba6eb22e79250a69ae990b123f9f7b618bb82a43ea86e1b18614c38d0d884aceb77d17af5a92030b2b4ad89eb2bd4 SHA512 91ddb98aa118f2d606aaf64b20598dbed9239069350842ab9fd3af05b1942380c92841d044387bc2d761317faa9c44848b3010e18747d834c115929f64060056
+DIST sandbox-2.38.tar.xz 460776 BLAKE2B 39a93e77301d5b6ea0a352cf1dc7786a1030a3701b0f8beca62e80a4f0d614b26cb3764ecf0174a9fd77acf27ae5d972de352e6fdec5a169aba83e6146a84038 SHA512 a559e32654b2fd7baca70b85f6dbf0a610e5847ccf28d7a0536485aedbfb1ce8394a080e6efdafcf76e01439b2592eebcef6c8f77a976188ce7e3759a2844d3f
diff --git a/sys-apps/sandbox/metadata.xml b/sys-apps/sandbox/metadata.xml
index 1cdc968e404c..bbb3ef1aec4a 100644
--- a/sys-apps/sandbox/metadata.xml
+++ b/sys-apps/sandbox/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>sandbox@gentoo.org</email>
- <name>Sandbox Maintainers</name>
-</maintainer>
+ <maintainer type="project">
+ <email>sandbox@gentoo.org</email>
+ <name>Sandbox Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="nnp">Enable NO_NEW_PRIVS which blocks set*id programs from gaining privileges (e.g. sudo)</flag>
+ </use>
+ <upstream>
+ <remote-id type="gentoo">proj/sandbox</remote-id>
+ <remote-id type="github">gentoo/sandbox</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/sandbox/sandbox-2.18.ebuild b/sys-apps/sandbox/sandbox-2.18.ebuild
deleted file mode 100644
index b89397c16d44..000000000000
--- a/sys-apps/sandbox/sandbox-2.18.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils flag-o-matic multilib-minimal multiprocessing pax-utils
-
-DESCRIPTION="sandbox'd LD_PRELOAD hack"
-HOMEPAGE="https://www.gentoo.org/proj/en/portage/sandbox/"
-SRC_URI="https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE=""
-
-DEPEND="app-arch/xz-utils
- >=app-misc/pax-utils-0.1.19" #265376
-RDEPEND=""
-
-has sandbox_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS="${EBUILD_DEATH_HOOKS} sandbox_death_notice"
-
-sandbox_death_notice() {
- ewarn "If configure failed with a 'cannot run C compiled programs' error, try this:"
- ewarn "FEATURES='-sandbox -usersandbox' emerge sandbox"
-}
-
-multilib_src_configure() {
- filter-lfs-flags #90228
-
- ECONF_SOURCE="${S}" econf
-}
-
-multilib_src_test() {
- # Default sandbox build will run with --jobs set to # cpus.
- emake -j1 check TESTSUITEFLAGS="--jobs=$(makeopts_jobs)"
-}
-
-multilib_src_install_all() {
- doenvd "${FILESDIR}"/09sandbox
-
- keepdir /var/log/sandbox
- fowners root:portage /var/log/sandbox
- fperms 0770 /var/log/sandbox
-
- dodoc AUTHORS ChangeLog* NEWS README
-}
-
-pkg_preinst() {
- chown root:portage "${ED}"/var/log/sandbox
- chmod 0770 "${ED}"/var/log/sandbox
-
- local v
- for v in ${REPLACING_VERSIONS}; do
- # 1.x was removed from ::gentoo in 2016
- if [[ ${v} == 1.* ]] ; then
- local old=$(find "${EROOT}"/lib* -maxdepth 1 -name 'libsandbox*')
- if [[ -n ${old} ]] ; then
- elog "Removing old sandbox libraries for you:"
- find "${EROOT}"/lib* -maxdepth 1 -name 'libsandbox*' -print -delete
- fi
- fi
- done
-}
-
-pkg_postinst() {
- local v
- for v in ${REPLACING_VERSIONS}; do
- # 1.x was removed from ::gentoo in 2016
- if [[ ${v} == 1.* ]] ; then
- chmod 0755 "${EROOT}"/etc/sandbox.d #265376
- fi
- done
-}
diff --git a/sys-apps/sandbox/sandbox-2.20.ebuild b/sys-apps/sandbox/sandbox-2.20.ebuild
deleted file mode 100644
index 121ce5b1fb81..000000000000
--- a/sys-apps/sandbox/sandbox-2.20.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic multilib-minimal multiprocessing
-
-DESCRIPTION="sandbox'd LD_PRELOAD hack"
-HOMEPAGE="https://www.gentoo.org/proj/en/portage/sandbox/"
-SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE=""
-
-DEPEND="app-arch/xz-utils
- >=app-misc/pax-utils-0.1.19" #265376
-RDEPEND=""
-
-has sandbox_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS="${EBUILD_DEATH_HOOKS} sandbox_death_notice"
-
-sandbox_death_notice() {
- ewarn "If configure failed with a 'cannot run C compiled programs' error, try this:"
- ewarn "FEATURES='-sandbox -usersandbox' emerge sandbox"
-}
-
-multilib_src_configure() {
- filter-lfs-flags #90228
-
- ECONF_SOURCE="${S}" econf
-}
-
-multilib_src_test() {
- # Default sandbox build will run with --jobs set to # cpus.
- emake -j1 check TESTSUITEFLAGS="--jobs=$(makeopts_jobs)"
-}
-
-multilib_src_install_all() {
- doenvd "${FILESDIR}"/09sandbox
-
- keepdir /var/log/sandbox
- fowners root:portage /var/log/sandbox
- fperms 0770 /var/log/sandbox
-
- dodoc AUTHORS ChangeLog* NEWS README
-}
-
-pkg_preinst() {
- chown root:portage "${ED}"/var/log/sandbox
- chmod 0770 "${ED}"/var/log/sandbox
-
- local v
- for v in ${REPLACING_VERSIONS}; do
- # 1.x was removed from ::gentoo in 2016
- if [[ ${v} == 1.* ]] ; then
- local old=$(find "${EROOT}"/lib* -maxdepth 1 -name 'libsandbox*')
- if [[ -n ${old} ]] ; then
- elog "Removing old sandbox libraries for you:"
- find "${EROOT}"/lib* -maxdepth 1 -name 'libsandbox*' -print -delete
- fi
- fi
- done
-}
-
-pkg_postinst() {
- local v
- for v in ${REPLACING_VERSIONS}; do
- # 1.x was removed from ::gentoo in 2016
- if [[ ${v} == 1.* ]] ; then
- chmod 0755 "${EROOT}"/etc/sandbox.d #265376
- fi
- done
-}
diff --git a/sys-apps/sandbox/sandbox-2.37.ebuild b/sys-apps/sandbox/sandbox-2.37.ebuild
new file mode 100644
index 000000000000..0fb5f9276a08
--- /dev/null
+++ b/sys-apps/sandbox/sandbox-2.37.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit flag-o-matic multilib-minimal multiprocessing
+
+DESCRIPTION="sandbox'd LD_PRELOAD hack"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Sandbox"
+SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="+nnp"
+
+# pax-utils lower bound for bug #265376
+DEPEND=">=app-misc/pax-utils-0.1.19"
+# Avoid folks installing with older file, bug #889046. We still need the
+# >= dep in Portage but this is a safety net if people do partial upgrades.
+RDEPEND="!<sys-apps/file-5.44-r1"
+BDEPEND="app-arch/xz-utils"
+
+has sandbox_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" sandbox_death_notice"
+
+sandbox_death_notice() {
+ ewarn "If configure failed with a 'cannot run C compiled programs' error, try this:"
+ ewarn "FEATURES='-sandbox -usersandbox' emerge sandbox"
+}
+
+src_prepare() {
+ default
+
+ if ! use nnp ; then
+ sed -i 's:PR_SET_NO_NEW_PRIVS:___disable_nnp_hack:' src/sandbox.c || die
+ fi
+
+ # sandbox uses `__asm__ (".symver "...` which does
+ # not play well with gcc's LTO: https://gcc.gnu.org/PR48200
+ filter-lto
+}
+
+multilib_src_configure() {
+ filter-lfs-flags #90228
+
+ ECONF_SOURCE="${S}" econf
+}
+
+multilib_src_test() {
+ # Default sandbox build will run with --jobs set to # cpus.
+ emake check TESTSUITEFLAGS="--jobs=$(makeopts_jobs)"
+}
+
+multilib_src_install_all() {
+ doenvd "${FILESDIR}"/09sandbox
+
+ dodoc AUTHORS ChangeLog* README.md
+}
+
+pkg_postinst() {
+ mkdir -p "${EROOT}"/var/log/sandbox
+ chown root:portage "${EROOT}"/var/log/sandbox
+ chmod 0770 "${EROOT}"/var/log/sandbox
+}
diff --git a/sys-apps/sandbox/sandbox-2.38.ebuild b/sys-apps/sandbox/sandbox-2.38.ebuild
new file mode 100644
index 000000000000..0fb5f9276a08
--- /dev/null
+++ b/sys-apps/sandbox/sandbox-2.38.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit flag-o-matic multilib-minimal multiprocessing
+
+DESCRIPTION="sandbox'd LD_PRELOAD hack"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Sandbox"
+SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="+nnp"
+
+# pax-utils lower bound for bug #265376
+DEPEND=">=app-misc/pax-utils-0.1.19"
+# Avoid folks installing with older file, bug #889046. We still need the
+# >= dep in Portage but this is a safety net if people do partial upgrades.
+RDEPEND="!<sys-apps/file-5.44-r1"
+BDEPEND="app-arch/xz-utils"
+
+has sandbox_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" sandbox_death_notice"
+
+sandbox_death_notice() {
+ ewarn "If configure failed with a 'cannot run C compiled programs' error, try this:"
+ ewarn "FEATURES='-sandbox -usersandbox' emerge sandbox"
+}
+
+src_prepare() {
+ default
+
+ if ! use nnp ; then
+ sed -i 's:PR_SET_NO_NEW_PRIVS:___disable_nnp_hack:' src/sandbox.c || die
+ fi
+
+ # sandbox uses `__asm__ (".symver "...` which does
+ # not play well with gcc's LTO: https://gcc.gnu.org/PR48200
+ filter-lto
+}
+
+multilib_src_configure() {
+ filter-lfs-flags #90228
+
+ ECONF_SOURCE="${S}" econf
+}
+
+multilib_src_test() {
+ # Default sandbox build will run with --jobs set to # cpus.
+ emake check TESTSUITEFLAGS="--jobs=$(makeopts_jobs)"
+}
+
+multilib_src_install_all() {
+ doenvd "${FILESDIR}"/09sandbox
+
+ dodoc AUTHORS ChangeLog* README.md
+}
+
+pkg_postinst() {
+ mkdir -p "${EROOT}"/var/log/sandbox
+ chown root:portage "${EROOT}"/var/log/sandbox
+ chmod 0770 "${EROOT}"/var/log/sandbox
+}
diff --git a/sys-apps/sdparm/Manifest b/sys-apps/sdparm/Manifest
index 7dd0903bbf39..a6c6739fc35f 100644
--- a/sys-apps/sdparm/Manifest
+++ b/sys-apps/sdparm/Manifest
@@ -1,2 +1 @@
-DIST sdparm-1.10.tgz 361464 BLAKE2B e2e7f09936fcdbdd50b7f397c62023592b494d5b1f8a998d32a4777134ec2edc39b11433ed00f5518ba6a8d04f7dee36e6a070221901b9c31a1a0d25da8439e5 SHA512 1cfa95ced443d190ee9e4a899c9cfc6b98367ba39a9cc201c0db2f8c92dd4e74368182be3b8bfe28e51761b1ededf914ee669ef8ff6023d1ec1f05d69889a35f
-DIST sdparm-1.11.tgz 473501 BLAKE2B 7c8b8a1c14b72de3c36cd701c6d870e0b671df2f17d17a63eb00cce41a80f3cbfbe9e3f2afca08f1a1a9be5a08fbb98a9ddb1ccdc117bceef508790407513754 SHA512 cb5d1dd351464fcc05005429bb8f452b05e6673b1dd8b699f762d005ab3e612b3b7d6ea400ffbd5e98e33e3e78da735d01705353b8a9b9567aac55a3f6b6d813
+DIST sdparm-1.12.tgz 486592 BLAKE2B 8c872967f859763c5d8fc9e086175010c474e2332e82d79da76bfec636e90cbf54256f0b3c046db159e69b0d1ee64595757177901c48db66d2ea77ad53d623d6 SHA512 00e2775c290c6db3a02780dd3eefa58ac40e1df79a7f19f80a9d497c019a9a4a9a16fb2726f48e7083d0104a8e74326e683c3f5f44c7d1f591a0f607e10493b1
diff --git a/sys-apps/sdparm/metadata.xml b/sys-apps/sdparm/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/sdparm/metadata.xml
+++ b/sys-apps/sdparm/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/sdparm/sdparm-1.10.ebuild b/sys-apps/sdparm/sdparm-1.10.ebuild
deleted file mode 100644
index 7f52118a1cd3..000000000000
--- a/sys-apps/sdparm/sdparm-1.10.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="Utility to output and modify parameters on a SCSI device, like hdparm"
-HOMEPAGE="http://sg.danny.cz/sg/sdparm.html"
-SRC_URI="http://sg.danny.cz/sg/p/${P}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-# Older releases contain a conflicting sas_disk_blink
-RDEPEND=">=sys-apps/sg3_utils-1.42"
-DEPEND="${RDEPEND}"
-
-DOCS=( AUTHORS ChangeLog CREDITS README notes.txt )
-
-src_configure() {
- # sdparm ships with a local copy of this lib, but will use the system copy if it
- # detects it (see the README file). Force the use of the system lib. #479578
- export ac_cv_lib_sgutils2_sg_ll_inquiry=yes
- default
-}
-
-src_install() {
- default
-
- # These don't exist yet. Someone wanna copy hdparm's and make them work? :)
- #newinitd ${FILESDIR}/sdparm-init-1 sdparm
- #newconfd ${FILESDIR}/sdparm-conf.d-1 sdparm
-}
diff --git a/sys-apps/sdparm/sdparm-1.11.ebuild b/sys-apps/sdparm/sdparm-1.11.ebuild
deleted file mode 100644
index a2e3e27e0ba8..000000000000
--- a/sys-apps/sdparm/sdparm-1.11.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Utility to output and modify parameters on a SCSI device, like hdparm"
-HOMEPAGE="http://sg.danny.cz/sg/sdparm.html"
-SRC_URI="http://sg.danny.cz/sg/p/${P}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-# Older releases contain a conflicting sas_disk_blink
-RDEPEND=">=sys-apps/sg3_utils-1.45"
-DEPEND="${RDEPEND}"
-
-DOCS=( AUTHORS ChangeLog CREDITS README notes.txt )
-
-src_configure() {
- # sdparm ships with a local copy of this lib, but will use the system copy if it
- # detects it (see the README file). Force the use of the system lib. #479578
- export ac_cv_lib_sgutils2_sg_ll_inquiry=yes
- default
-}
-
-src_install() {
- default
-
- # These don't exist yet. Someone wanna copy hdparm's and make them work? :)
- #newinitd ${FILESDIR}/sdparm-init-1 sdparm
- #newconfd ${FILESDIR}/sdparm-conf.d-1 sdparm
-}
diff --git a/sys-apps/sdparm/sdparm-1.12.ebuild b/sys-apps/sdparm/sdparm-1.12.ebuild
new file mode 100644
index 000000000000..f867670ecaf9
--- /dev/null
+++ b/sys-apps/sdparm/sdparm-1.12.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Utility to output and modify parameters on a SCSI device, like hdparm"
+HOMEPAGE="http://sg.danny.cz/sg/sdparm.html"
+SRC_URI="http://sg.danny.cz/sg/p/${P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+# Older releases contain a conflicting sas_disk_blink
+RDEPEND=">=sys-apps/sg3_utils-1.45:0="
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS ChangeLog CREDITS README notes.txt )
+
+src_configure() {
+ # sdparm ships with a local copy of this lib, but will use the system copy if it
+ # detects it (see the README file). Force the use of the system lib. #479578
+ export ac_cv_lib_sgutils2_sg_ll_inquiry=yes
+ default
+}
+
+src_install() {
+ default
+
+ # These don't exist yet. Someone wanna copy hdparm's and make them work? :)
+ #newinitd ${FILESDIR}/sdparm-init-1 sdparm
+ #newconfd ${FILESDIR}/sdparm-conf.d-1 sdparm
+}
diff --git a/sys-apps/secilc/Manifest b/sys-apps/secilc/Manifest
index 771d092acdbd..36fef1449bdc 100644
--- a/sys-apps/secilc/Manifest
+++ b/sys-apps/secilc/Manifest
@@ -1,3 +1,2 @@
-DIST secilc-2.9.tar.gz 175885 BLAKE2B 0a5fd0adb70ce80574148ac035dcb8c5c80f6779a6a0c696eaba26cb6c4441e58eb161600034102dcb34c87099357bfc66015d245cf2fd49b56e65d782fc8aac SHA512 c552ce65fc23bef1a93b3dc485369d64ad19a3f30707b95d0dd488d1766ab9f5e75884b79e6464997eaafee119193a1fdd5ff8228aee0fa902e426eefa14a4ee
-DIST secilc-3.0.tar.gz 176060 BLAKE2B dcceaa72f3e34777f0d4a6a05de073e4f2dc53b7577c2a52d5b5ab5e10d394ad85817985e683c9af241cf6bdc9a549d52142477281000e19ff66063f440b4b3a SHA512 e82d973c99b95a7f34060ce10a7f39802c3d6d428a52992efd8551da7bceafbdf9f81262d9aa2ad9d22a0704959de525c5a2de21fd96651277fab433ef340225
-DIST secilc-3.1.tar.gz 176631 BLAKE2B e79818580d2a788d672574ebd77349f0c59b678d2be628479f517412ca876fa225ba0dd63ef3200ed15ff693cd5f4cb4ff537d81666fef3a008ba4b3a7577e0c SHA512 79e3e4910178af49ea164d620aa997adb21dd18581c054a4023dd9116ec9dd203bd12989ef308aa1d253b47fcd251ee2b99c26e143d1db3de22a7f374ff38e0b
+DIST secilc-3.5.tar.gz 180803 BLAKE2B a42620318b312a5ef35565e3b40a89fd7ff44aaf73de835bc349f927193121b72c07bd2151a8a6b2cee53e2699a3ae6bb246084e18a181d334ebc082fdfdc56e SHA512 eff37a981072c4b9c7c15bf4709db8797d8af5325883515f5c2fe611136b24419f6d01c797e4f131c9c08e1ba40576fcb2094b1e34325aae8351b6299bdba3dd
+DIST secilc-3.6.tar.gz 185186 BLAKE2B 47fdc281cad69339eb23226a277df8c8086557fe3a2c7f013eef38bbfcd62584e318ce2d79552388617687b39c37e67a1328b808becbecad364253b7527d3a52 SHA512 91381aae1444822c7897729c1695ca221a4226dcec042b2223a55800d1247510ef2033b844d8d0627623fb15b8169a626fb0ca2efeee8090635219c4139eabf5
diff --git a/sys-apps/secilc/metadata.xml b/sys-apps/secilc/metadata.xml
index a2b6537d80f6..38241dea7092 100644
--- a/sys-apps/secilc/metadata.xml
+++ b/sys-apps/secilc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
diff --git a/sys-apps/secilc/secilc-2.9.ebuild b/sys-apps/secilc/secilc-2.9.ebuild
deleted file mode 100644
index 238190a3f6ae..000000000000
--- a/sys-apps/secilc/secilc-2.9.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-inherit toolchain-funcs
-
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20190315"
-
-SEPOL_VER="${PV}"
-
-DESCRIPTION="SELinux Common Intermediate Language (CIL) Compiler"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE=""
-
-DEPEND="
- app-text/xmlto
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-RDEPEND="
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-
-# tests are not meant to be run outside of the
-# full SELinux userland repo
-RESTRICT="test"
-
-src_compile() {
- tc-export CC
- default
-}
diff --git a/sys-apps/secilc/secilc-3.0.ebuild b/sys-apps/secilc/secilc-3.0.ebuild
deleted file mode 100644
index afca7d86a020..000000000000
--- a/sys-apps/secilc/secilc-3.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-inherit toolchain-funcs
-
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20191204"
-
-SEPOL_VER="${PV}"
-
-DESCRIPTION="SELinux Common Intermediate Language (CIL) Compiler"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE=""
-
-DEPEND="
- app-text/xmlto
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-RDEPEND="
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-
-# tests are not meant to be run outside of the
-# full SELinux userland repo
-RESTRICT="test"
-
-src_compile() {
- tc-export CC
- default
-}
diff --git a/sys-apps/secilc/secilc-3.1.ebuild b/sys-apps/secilc/secilc-3.1.ebuild
deleted file mode 100644
index db36c3ca9f49..000000000000
--- a/sys-apps/secilc/secilc-3.1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-inherit toolchain-funcs
-
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20200710"
-
-SEPOL_VER="${PV}"
-
-DESCRIPTION="SELinux Common Intermediate Language (CIL) Compiler"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE=""
-
-DEPEND="
- app-text/xmlto
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-RDEPEND="
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-
-# tests are not meant to be run outside of the
-# full SELinux userland repo
-RESTRICT="test"
-
-src_compile() {
- tc-export CC
- default
-}
diff --git a/sys-apps/secilc/secilc-3.5.ebuild b/sys-apps/secilc/secilc-3.5.ebuild
new file mode 100644
index 000000000000..a61159147c34
--- /dev/null
+++ b/sys-apps/secilc/secilc-3.5.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux Common Intermediate Language (CIL) Compiler"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND=">=sys-libs/libsepol-${PV}"
+RDEPEND="${DEPEND}"
+BDEPEND="app-text/xmlto"
+
+# tests are not meant to be run outside of the
+# full SELinux userland repo
+RESTRICT="test"
+
+src_compile() {
+ tc-export CC
+ default
+}
diff --git a/sys-apps/secilc/secilc-3.6.ebuild b/sys-apps/secilc/secilc-3.6.ebuild
new file mode 100644
index 000000000000..59d8d927a345
--- /dev/null
+++ b/sys-apps/secilc/secilc-3.6.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux Common Intermediate Language (CIL) Compiler"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND=">=sys-libs/libsepol-${PV}"
+RDEPEND="${DEPEND}"
+BDEPEND="app-text/xmlto"
+
+# tests are not meant to be run outside of the
+# full SELinux userland repo
+RESTRICT="test"
+
+src_compile() {
+ tc-export CC
+ default
+}
diff --git a/sys-apps/secilc/secilc-9999.ebuild b/sys-apps/secilc/secilc-9999.ebuild
index db36c3ca9f49..5c59b25c3742 100644
--- a/sys-apps/secilc/secilc-9999.ebuild
+++ b/sys-apps/secilc/secilc-9999.ebuild
@@ -1,13 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit toolchain-funcs
-MY_P="${P//_/-}"
-MY_RELEASEDATE="20200710"
-
-SEPOL_VER="${PV}"
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
DESCRIPTION="SELinux Common Intermediate Language (CIL) Compiler"
HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
@@ -15,24 +13,19 @@ HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
+ S="${WORKDIR}/${P}/${PN}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
S="${WORKDIR}/${MY_P}"
fi
LICENSE="GPL-2"
SLOT="0"
-IUSE=""
-
-DEPEND="
- app-text/xmlto
- >=sys-libs/libsepol-${SEPOL_VER}
- "
-RDEPEND="
- >=sys-libs/libsepol-${SEPOL_VER}
- "
+
+DEPEND=">=sys-libs/libsepol-${PV}"
+RDEPEND="${DEPEND}"
+BDEPEND="app-text/xmlto"
# tests are not meant to be run outside of the
# full SELinux userland repo
diff --git a/sys-apps/sed/Manifest b/sys-apps/sed/Manifest
index 5e6667e5cd21..2ecd59ea0cf7 100644
--- a/sys-apps/sed/Manifest
+++ b/sys-apps/sed/Manifest
@@ -1,2 +1,2 @@
-DIST sed-4.7.tar.xz 1298316 BLAKE2B 752bc2e942b6f041710c6811518147c5fa4b143b33ae842ec1f142ec914bfaf4d7e8a94a2b1a5b345789944e5426f7946997f2ccbc43ee5034351a95ce3a677e SHA512 e0be5db4cdf8226b34aaa9071bc5ae0eafde1c52227cee3512eea7fe2520d6c5cebf15266aa5c4adffbb51bf125c140a15644e28d57759893c12823ea9bbf4fb
-DIST sed-4.8.tar.xz 1348048 BLAKE2B 62f6b6500cc9a20a35cafc2b09b12bb7da67fa0afb0b1b26153babc0023424b3126f44d29eba14c25fc4490996c90738b191c9440c66da6c120bbb9bc6f6df65 SHA512 7de25d9bc2981c63321c2223f3fbcab61d7b0df4fcf7d4394b72400b91993e1288d8bf53948ed5fffcf5a98c75265726a68ad4fb98e1d571bf768603a108c1c8
+DIST sed-4.9.tar.xz 1397092 BLAKE2B 6c7c7dc782b87c3bd0b5e826ba46c2f1dc7bd8c1159945fcf14b394711742964628774cf9f27d844b672721d7849e6c31992d82fafb9ed4118b7feb60406d1e1 SHA512 36157a4b4a2430cf421b7bd07f1675d680d9f1616be96cf6ad6ee74a9ec0fe695f8d0b1e1f0b008bbb33cc7fcde5e1c456359bbbc63f8aebdd4fedc3982cf6dc
+DIST sed-4.9.tar.xz.sig 833 BLAKE2B 256bb112aa3aec1a8d40544ef1b0a7570f35d66369047ed3d261c57f938042dcb4a169137eaed6639bcfb472e4a6fc6ebec2de243b2c4d4c0ba0e9081f92556d SHA512 ceb235850184b99017783486e182ade9db38313d20b2b34d23f54d8affe180f7a191139b993e8ec7718ca33eff732f547ca4b3b59aaf865feaae611dfeae5c46
diff --git a/sys-apps/sed/metadata.xml b/sys-apps/sed/metadata.xml
index 054748d29578..e562da12ca90 100644
--- a/sys-apps/sed/metadata.xml
+++ b/sys-apps/sed/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="sourceforge">sed</remote-id>
- <remote-id type="cpe">cpe:/a:gnu:sed</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="savannah">sed</remote-id>
+ <remote-id type="cpe">cpe:/a:gnu:sed</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/sed/sed-4.7.ebuild b/sys-apps/sed/sed-4.7.ebuild
deleted file mode 100644
index 28c5f7cfc63d..000000000000
--- a/sys-apps/sed/sed-4.7.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Super-useful stream editor"
-HOMEPAGE="http://sed.sourceforge.net/"
-SRC_URI="mirror://gnu/sed/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="acl nls selinux static"
-
-RDEPEND="
- !static? (
- acl? ( virtual/acl )
- nls? ( virtual/libintl )
- selinux? ( sys-libs/libselinux )
- )
-"
-DEPEND="${RDEPEND}
- nls? ( sys-devel/gettext )
- static? (
- acl? ( virtual/acl[static-libs(+)] )
- nls? ( virtual/libintl[static-libs(+)] )
- selinux? ( sys-libs/libselinux[static-libs(+)] )
- )
-"
-
-src_configure() {
- local myconf=()
- if use userland_GNU; then
- myconf+=( --exec-prefix="${EPREFIX}" )
- else
- myconf+=( --program-prefix=g )
- fi
-
- export ac_cv_search_setfilecon=$(usex selinux -lselinux)
- export ac_cv_header_selinux_{context,selinux}_h=$(usex selinux)
- use static && append-ldflags -static
- myconf+=(
- $(use_enable acl)
- $(use_enable nls)
- )
- econf "${myconf[@]}"
-}
diff --git a/sys-apps/sed/sed-4.8.ebuild b/sys-apps/sed/sed-4.8.ebuild
deleted file mode 100644
index 35656086a9aa..000000000000
--- a/sys-apps/sed/sed-4.8.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Super-useful stream editor"
-HOMEPAGE="http://sed.sourceforge.net/"
-SRC_URI="mirror://gnu/sed/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="acl nls selinux static"
-
-RDEPEND="
- !static? (
- acl? ( virtual/acl )
- nls? ( virtual/libintl )
- selinux? ( sys-libs/libselinux )
- )
-"
-DEPEND="${RDEPEND}
- static? (
- acl? ( virtual/acl[static-libs(+)] )
- nls? ( virtual/libintl[static-libs(+)] )
- selinux? ( sys-libs/libselinux[static-libs(+)] )
- )
-"
-BDEPEND="nls? ( sys-devel/gettext )"
-
-src_configure() {
- local myconf=()
- if use userland_GNU; then
- myconf+=( --exec-prefix="${EPREFIX}" )
- else
- myconf+=( --program-prefix=g )
- fi
-
- use static && append-ldflags -static
- myconf+=(
- $(use_enable acl)
- $(use_enable nls)
- $(use_with selinux)
- )
- econf "${myconf[@]}"
-}
diff --git a/sys-apps/sed/sed-4.9.ebuild b/sys-apps/sed/sed-4.9.ebuild
new file mode 100644
index 000000000000..ef4336465acc
--- /dev/null
+++ b/sys-apps/sed/sed-4.9.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sed.asc
+inherit flag-o-matic verify-sig
+
+DESCRIPTION="Super-useful stream editor"
+HOMEPAGE="https://www.gnu.org/software/sed/"
+SRC_URI="mirror://gnu/sed/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( mirror://gnu/sed/${P}.tar.xz.sig )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
+IUSE="acl nls selinux static"
+
+RDEPEND="
+ !static? (
+ acl? ( virtual/acl )
+ nls? ( virtual/libintl )
+ selinux? ( sys-libs/libselinux )
+ )
+"
+DEPEND="${RDEPEND}
+ static? (
+ acl? ( virtual/acl[static-libs(+)] )
+ nls? ( virtual/libintl[static-libs(+)] )
+ selinux? ( sys-libs/libselinux[static-libs(+)] )
+ )
+"
+BDEPEND="nls? ( sys-devel/gettext )
+ verify-sig? ( sec-keys/openpgp-keys-sed )"
+
+src_configure() {
+ use static && append-ldflags -static
+
+ local myconf=(
+ --exec-prefix="${EPREFIX}"
+ $(use_enable acl)
+ $(use_enable nls)
+ $(use_with selinux)
+ # rename to gsed for better BSD compatibility
+ --program-prefix=g
+ )
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ # We don't want to automagically use Valgrind for tests.
+ sed -i -e 's:valgrind --error-exitcode=1:false:' init.cfg || die
+
+ emake VERBOSE=yes check
+}
+
+src_install() {
+ default
+
+ # symlink to the standard name
+ dosym gsed /bin/sed
+ dosym gsed.1 /usr/share/man/man1/sed.1
+}
diff --git a/sys-apps/selinux-python/Manifest b/sys-apps/selinux-python/Manifest
index 95ab19c41761..36a775ec9d10 100644
--- a/sys-apps/selinux-python/Manifest
+++ b/sys-apps/selinux-python/Manifest
@@ -1,3 +1,2 @@
-DIST selinux-python-2.9.tar.gz 2100185 BLAKE2B 8aad58264197dbf23dfa286ba6530150ca6ae1ddaeb1a58988c05d0b122420cfd7e9be2a1cb7082d73cd41f03c4df00ad81a0fb746b075db24e63f62f86a1bf1 SHA512 1138661128635004fec04dc5e39f035680b5f21beb1b79f3328690a1b93a3984d522a02724af793340112a5e647d363dda8a7d3536de959b34ffd69aa396254d
-DIST selinux-python-3.0.tar.gz 2100098 BLAKE2B 6949911020139378e9bdcc2b7c01c067ddaf71394a0a143a096d5708c5e7caa468b12826965c02af0b994f35d26c573187bf67c8d1ce75f5e8a31a1fb0fc6562 SHA512 743df60a643477465e4355880c56813ea8539415ea7c9631fb9b7cd7969a37cce572a6a94b785065d92baf9d7b6c753daa5d2f9709df7c9203c7effba46d58f2
-DIST selinux-python-3.1.tar.gz 2100549 BLAKE2B c5d207bad60c379259e3bfc8f029f76d4572818cdd41a263498ed4434a70eaf7ff51af7772cfb27de0e9e4af03bcf9906ab0f6a59e88de10e81cbe0e8c5928b8 SHA512 5dd98f77ae8ea8bac6a89ec7def76e12496b9a9f8c9612c4cc1dac7a8e8c60380a00c857426bfefbcb4273706addd2594e9b467f69408ef284f082a09d45bd49
+DIST selinux-python-3.5.tar.gz 3604439 BLAKE2B 5a7fcd303c337cb0f5ae0066d13c945bb5cacaba472c7b17f0496295294998fcc6d81c153720ef704b749a01590c28b48b4f471a48fc386b8f02564c3550250b SHA512 2ac176a9f078f2b2721e5871ba21e92041eed54fc692fd8d809ff14327beee6de63b3084d0f1053a640b9e40bcc6461498915bb9b038a658cd772f77d80fd217
+DIST selinux-python-3.6.tar.gz 3633272 BLAKE2B c2b99779eda2c7698f7f68740e3136cbfa5ab471a5d154142aafd2694d8c32aa605df3609a3667c687449d3ba44e72bcc3b37c36adecba8e34fcc629b9f04de5 SHA512 6289f3f2a3038b2cb62f6b3b12c729a9981c34a5ee80c0830e6316e8c77f5283dffa46007f6e7dc073332b829ed9953ba54e64c986fb18c7dc40759ec0375dc9
diff --git a/sys-apps/selinux-python/metadata.xml b/sys-apps/selinux-python/metadata.xml
index 74f36a3eba2d..47d3a0861ddd 100644
--- a/sys-apps/selinux-python/metadata.xml
+++ b/sys-apps/selinux-python/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
diff --git a/sys-apps/selinux-python/selinux-python-2.9.ebuild b/sys-apps/selinux-python/selinux-python-2.9.ebuild
deleted file mode 100644
index 411c26e363e7..000000000000
--- a/sys-apps/selinux-python/selinux-python-2.9.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-PYTHON_COMPAT=( python3_6 )
-PYTHON_REQ_USE="xml"
-
-inherit python-r1 toolchain-funcs
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20190315"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-SEMNG_VER="${PV}"
-
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN#selinux-}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python]
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+)]
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- dev-python/ipy[${PYTHON_USEDEP}]
- !dev-python/sepolgen
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- python_foreach_impl building
-}
-
-src_install() {
- installation() {
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
- python_foreach_impl installation
-
- # Set version-specific scripts
- for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do
- python_replicate_script "${ED}/usr/bin/${pyscript}"
- done
- for pyscript in semanage; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-
- # Create sepolgen.conf with different devel location definition
- if [[ -f /etc/selinux/config ]];
- then
- local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config);
- mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory";
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- local selinuxtype="${POLICY_TYPES%% *}";
- if [[ -n "${selinuxtype}" ]];
- then
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf;
- fi
- fi
-}
diff --git a/sys-apps/selinux-python/selinux-python-3.0.ebuild b/sys-apps/selinux-python/selinux-python-3.0.ebuild
deleted file mode 100644
index 96deaf538c58..000000000000
--- a/sys-apps/selinux-python/selinux-python-3.0.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-PYTHON_COMPAT=( python{3_6,3_7} )
-PYTHON_REQ_USE="xml"
-
-inherit python-r1 toolchain-funcs
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20191204"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-SEMNG_VER="${PV}"
-
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN#selinux-}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python]
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+)]
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- dev-python/ipy[${PYTHON_USEDEP}]
- !dev-python/sepolgen
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- python_foreach_impl building
-}
-
-src_install() {
- installation() {
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
- python_foreach_impl installation
-
- # Set version-specific scripts
- for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do
- python_replicate_script "${ED}/usr/bin/${pyscript}"
- done
- for pyscript in semanage; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-
- # Create sepolgen.conf with different devel location definition
- if [[ -f /etc/selinux/config ]];
- then
- local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config);
- mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory";
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- local selinuxtype="${POLICY_TYPES%% *}";
- if [[ -n "${selinuxtype}" ]];
- then
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf;
- fi
- fi
-}
diff --git a/sys-apps/selinux-python/selinux-python-3.1-r1.ebuild b/sys-apps/selinux-python/selinux-python-3.1-r1.ebuild
deleted file mode 100644
index e3fe4738a86b..000000000000
--- a/sys-apps/selinux-python/selinux-python-3.1-r1.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-PYTHON_REQ_USE="xml"
-
-inherit python-r1 toolchain-funcs
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20200710"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-SEMNG_VER="${PV}"
-
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN#selinux-}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~mips ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python]
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+)]
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- dev-python/ipy[${PYTHON_USEDEP}]
- >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}]
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- python_foreach_impl building
-}
-
-src_install() {
- installation() {
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
- python_foreach_impl installation
-
- # Set version-specific scripts
- for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do
- python_replicate_script "${ED}/usr/bin/${pyscript}"
- done
- for pyscript in semanage; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-
- # Create sepolgen.conf with different devel location definition
- if [[ -f /etc/selinux/config ]];
- then
- local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config);
- mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory";
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- local selinuxtype="${POLICY_TYPES%% *}";
- if [[ -n "${selinuxtype}" ]];
- then
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf;
- fi
- fi
-}
diff --git a/sys-apps/selinux-python/selinux-python-3.1.ebuild b/sys-apps/selinux-python/selinux-python-3.1.ebuild
deleted file mode 100644
index d890afd5e440..000000000000
--- a/sys-apps/selinux-python/selinux-python-3.1.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-PYTHON_REQ_USE="xml"
-
-inherit python-r1 toolchain-funcs
-
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20200710"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-SEMNG_VER="${PV}"
-
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DESCRIPTION="SELinux core utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN#selinux-}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~mips ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python]
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+)]
- >=sys-libs/libsepol-${SEPOL_VER}:=
- >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- dev-python/ipy[${PYTHON_USEDEP}]
- ${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-
- python_copy_sources
-}
-
-src_compile() {
- building() {
- emake -C "${BUILD_DIR}" \
- CC="$(tc-getCC)" \
- LIBDIR="\$(PREFIX)/$(get_libdir)"
- }
- python_foreach_impl building
-}
-
-src_install() {
- installation() {
- emake -C "${BUILD_DIR}" \
- DESTDIR="${D}" \
- LIBDIR="\$(PREFIX)/$(get_libdir)" \
- install
- python_optimize
- }
- python_foreach_impl installation
-
- # Set version-specific scripts
- for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do
- python_replicate_script "${ED}/usr/bin/${pyscript}"
- done
- for pyscript in semanage; do
- python_replicate_script "${ED}/usr/sbin/${pyscript}"
- done
-
- # Create sepolgen.conf with different devel location definition
- if [[ -f /etc/selinux/config ]];
- then
- local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config);
- mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory";
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- local selinuxtype="${POLICY_TYPES%% *}";
- if [[ -n "${selinuxtype}" ]];
- then
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
- else
- echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf;
- fi
- fi
-}
diff --git a/sys-apps/selinux-python/selinux-python-3.5.ebuild b/sys-apps/selinux-python/selinux-python-3.5.ebuild
new file mode 100644
index 000000000000..6a2211786b3f
--- /dev/null
+++ b/sys-apps/selinux-python/selinux-python-3.5.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit python-r1 toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux core utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN#selinux-}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND=">=sys-libs/libselinux-${PV}:=[python]
+ >=sys-libs/libsemanage-${PV}:=[python(+)]
+ >=sys-libs/libsepol-${PV}:=
+ >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
+ >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ >=sys-apps/secilc-${PV}
+ )"
+
+src_prepare() {
+ default
+ sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
+
+ python_copy_sources
+}
+
+src_compile() {
+ building() {
+ emake -C "${BUILD_DIR}" \
+ CC="$(tc-getCC)" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)"
+ }
+ python_foreach_impl building
+}
+
+src_test() {
+ testing() {
+ # The different subprojects have some interproject dependencies:
+ # - audit2allow depens on sepolgen
+ # - chcat depends on semanage
+ # and maybe others.
+ # Add all the modules of the individual subprojects to the
+ # PYTHONPATH, so they get actually found and used. In
+ # particular, already installed versions on the system are not
+ # used.
+ for dir in audit2allow chcat semanage sepolgen/src sepolicy ; do
+ PYTHONPATH="${BUILD_DIR}/${dir}:${PYTHONPATH}"
+ done
+ PYTHONPATH=${PYTHONPATH} \
+ emake -C "${BUILD_DIR}" \
+ test
+ }
+ python_foreach_impl testing
+}
+
+src_install() {
+ installation() {
+ emake -C "${BUILD_DIR}" \
+ DESTDIR="${D}" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)" \
+ install
+ python_optimize
+ }
+ python_foreach_impl installation
+
+ # Set version-specific scripts
+ for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do
+ python_replicate_script "${ED}/usr/bin/${pyscript}"
+ done
+ for pyscript in semanage; do
+ python_replicate_script "${ED}/usr/sbin/${pyscript}"
+ done
+
+ # Create sepolgen.conf with different devel location definition
+ if [[ -f /etc/selinux/config ]];
+ then
+ local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config);
+ mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory";
+ echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
+ else
+ local selinuxtype="${POLICY_TYPES%% *}";
+ if [[ -n "${selinuxtype}" ]];
+ then
+ echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
+ else
+ echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf;
+ fi
+ fi
+}
diff --git a/sys-apps/selinux-python/selinux-python-3.6.ebuild b/sys-apps/selinux-python/selinux-python-3.6.ebuild
new file mode 100644
index 000000000000..df383d6c8c4b
--- /dev/null
+++ b/sys-apps/selinux-python/selinux-python-3.6.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit python-r1 toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux core utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN#selinux-}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND=">=sys-libs/libselinux-${PV}:=[python]
+ >=sys-libs/libsemanage-${PV}:=[python(+)]
+ >=sys-libs/libsepol-${PV}:=
+ >=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
+ >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ >=sys-apps/secilc-${PV}
+ )"
+
+src_prepare() {
+ default
+ sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
+
+ python_copy_sources
+}
+
+src_compile() {
+ building() {
+ emake -C "${BUILD_DIR}" \
+ CC="$(tc-getCC)" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)"
+ }
+ python_foreach_impl building
+}
+
+src_test() {
+ testing() {
+ # The different subprojects have some interproject dependencies:
+ # - audit2allow depens on sepolgen
+ # - chcat depends on semanage
+ # and maybe others.
+ # Add all the modules of the individual subprojects to the
+ # PYTHONPATH, so they get actually found and used. In
+ # particular, already installed versions on the system are not
+ # used.
+ for dir in audit2allow chcat semanage sepolgen/src sepolicy ; do
+ PYTHONPATH="${BUILD_DIR}/${dir}:${PYTHONPATH}"
+ done
+ PYTHONPATH=${PYTHONPATH} \
+ emake -C "${BUILD_DIR}" \
+ test
+ }
+ python_foreach_impl testing
+}
+
+src_install() {
+ installation() {
+ emake -C "${BUILD_DIR}" \
+ DESTDIR="${D}" \
+ LIBDIR="\$(PREFIX)/$(get_libdir)" \
+ install
+ python_optimize
+ }
+ python_foreach_impl installation
+
+ # Set version-specific scripts
+ for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do
+ python_replicate_script "${ED}/usr/bin/${pyscript}"
+ done
+ for pyscript in semanage; do
+ python_replicate_script "${ED}/usr/sbin/${pyscript}"
+ done
+
+ # Create sepolgen.conf with different devel location definition
+ if [[ -f /etc/selinux/config ]];
+ then
+ local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config);
+ mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory";
+ echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
+ else
+ local selinuxtype="${POLICY_TYPES%% *}";
+ if [[ -n "${selinuxtype}" ]];
+ then
+ echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf;
+ else
+ echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf;
+ fi
+ fi
+}
diff --git a/sys-apps/selinux-python/selinux-python-9999.ebuild b/sys-apps/selinux-python/selinux-python-9999.ebuild
index e3fe4738a86b..20a1fea452bf 100644
--- a/sys-apps/selinux-python/selinux-python-9999.ebuild
+++ b/sys-apps/selinux-python/selinux-python-9999.ebuild
@@ -1,21 +1,14 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
-PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-PYTHON_REQ_USE="xml"
+EAPI=7
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="xml(+)"
inherit python-r1 toolchain-funcs
-MY_P="${P//_/-}"
-
-MY_RELEASEDATE="20200710"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-SEMNG_VER="${PV}"
-
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
DESCRIPTION="SELinux core utilities"
HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
@@ -23,25 +16,31 @@ HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
if [[ ${PV} == 9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN#selinux-}"
+ S="${WORKDIR}/${P}/${PN#selinux-}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~mips ~x86"
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
S="${WORKDIR}/${MY_P}"
fi
LICENSE="GPL-2"
SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python]
- >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+)]
- >=sys-libs/libsepol-${SEPOL_VER}:=
+RDEPEND=">=sys-libs/libselinux-${PV}:=[python]
+ >=sys-libs/libsemanage-${PV}:=[python(+)]
+ >=sys-libs/libsepol-${PV}:=
>=app-admin/setools-4.2.0[${PYTHON_USEDEP}]
- dev-python/ipy[${PYTHON_USEDEP}]
>=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}]
${PYTHON_DEPS}"
-
-RDEPEND="${DEPEND}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ >=sys-apps/secilc-${PV}
+ )"
src_prepare() {
default
@@ -59,6 +58,26 @@ src_compile() {
python_foreach_impl building
}
+src_test() {
+ testing() {
+ # The different subprojects have some interproject dependencies:
+ # - audit2allow depens on sepolgen
+ # - chcat depends on semanage
+ # and maybe others.
+ # Add all the modules of the individual subprojects to the
+ # PYTHONPATH, so they get actually found and used. In
+ # particular, already installed versions on the system are not
+ # used.
+ for dir in audit2allow chcat semanage sepolgen/src sepolicy ; do
+ PYTHONPATH="${BUILD_DIR}/${dir}:${PYTHONPATH}"
+ done
+ PYTHONPATH=${PYTHONPATH} \
+ emake -C "${BUILD_DIR}" \
+ test
+ }
+ python_foreach_impl testing
+}
+
src_install() {
installation() {
emake -C "${BUILD_DIR}" \
diff --git a/sys-apps/semodule-utils/Manifest b/sys-apps/semodule-utils/Manifest
index 09aa9e42f0ed..0b70f909b56e 100644
--- a/sys-apps/semodule-utils/Manifest
+++ b/sys-apps/semodule-utils/Manifest
@@ -1,3 +1,2 @@
-DIST semodule-utils-2.9.tar.gz 14259 BLAKE2B f72630c520504596171ac6f678b1fde2bb8482b620f0d8f6374c59b85d634ee8c407e3e4b268dae4d6cecfa2749b26f8808dd56f7c5391e7d1ba11f4a8a789e5 SHA512 688f1fcb34042b837019302debda76847691657709130b99bf937a85774a0ae69d789ee82b0633a4d2dc661dc6d0a1706a878ac681317df2abe68418bec3f952
-DIST semodule-utils-3.0.tar.gz 14263 BLAKE2B 119f40b34184e2cb0719e6a34ffb026f23c172f74d8ca3812220785381fabc5c3761865ec3b211f03f5c96b9ae0081341a661c2be78198171b09c99b37bb0716 SHA512 004e8f02f7e7e6f016b2b5a1a7720a87409d77d0040f7df830cf73808c9f8e3d87b41a7cea273420909971ce8bcc6540d5a46bd25be8c032b12257b4861e1769
-DIST semodule-utils-3.1.tar.gz 14257 BLAKE2B c8c9a1ce7c9c4f53b1f4c728d16b149fdc284f4cff8b4fce0cb59b77d37d6d7e9bf2102c7177c4eaf94677af6147e42d8d0bd55c0bf3a358968d0162d5a6c65a SHA512 b92794bbfbce5834ee7f62fddb40b5506e9291e8fa7c5d669b2e281089b8f8dc40c4522ea287ac5deffdaee751442ba8e691e2ac45fdd378b60d5d6b2527d157
+DIST semodule-utils-3.5.tar.gz 14383 BLAKE2B a1bb432013bca1023d99b32f43b2c972b6b807a4677f9d8c9fb9aff10225232506f3ecca86fc231b4c63d04582a91a1c4218f87ce5532a4d35a26a09665c6f10 SHA512 7c32f425ae71745040d1c6a6585149a1efb319913aa9d4c8bf185b0a4216dc66378fa38595b171614ee3ae4ade997d3ae56a060346e334faec55c419a87d71dd
+DIST semodule-utils-3.6.tar.gz 12844 BLAKE2B e5e7501c412649f471e89cc89569d6c51421e0b46f172f243ce778bbe3a2c658ef9a92e3f3e1e07fb3358e25f63e004b6bd4b56619472fbcae8cb5b916d54170 SHA512 16b58bbafcaef9a2e8e34a20d0e1e4024a9044024de8fa3137c5ba1b9af600afac51c15ccb648dd6bff77747c047f4c9feafeea07c19b1eb14955acc92697a48
diff --git a/sys-apps/semodule-utils/metadata.xml b/sys-apps/semodule-utils/metadata.xml
index 855cbdbdb7fa..d159ea8775fe 100644
--- a/sys-apps/semodule-utils/metadata.xml
+++ b/sys-apps/semodule-utils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>selinux@gentoo.org</email>
diff --git a/sys-apps/semodule-utils/semodule-utils-2.9.ebuild b/sys-apps/semodule-utils/semodule-utils-2.9.ebuild
deleted file mode 100644
index 4a40ba8b6bb9..000000000000
--- a/sys-apps/semodule-utils/semodule-utils-2.9.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20190315"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="SELinux policy module utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}:="
-
-RDEPEND="${DEPEND}
- !<sys-apps/policycoreutils-2.7_pre"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- install
-}
diff --git a/sys-apps/semodule-utils/semodule-utils-3.0.ebuild b/sys-apps/semodule-utils/semodule-utils-3.0.ebuild
deleted file mode 100644
index 5e7221a03b19..000000000000
--- a/sys-apps/semodule-utils/semodule-utils-3.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20191204"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~mips x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="SELinux policy module utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}:="
-
-RDEPEND="${DEPEND}
- !<sys-apps/policycoreutils-2.7_pre"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- install
-}
diff --git a/sys-apps/semodule-utils/semodule-utils-3.1.ebuild b/sys-apps/semodule-utils/semodule-utils-3.1.ebuild
deleted file mode 100644
index db1d166cceb3..000000000000
--- a/sys-apps/semodule-utils/semodule-utils-3.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-MY_RELEASEDATE="20200710"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
-
-MY_P="${P//_/-}"
-IUSE=""
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
-else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
- S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="SELinux policy module utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}:="
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
-
- sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-}
diff --git a/sys-apps/semodule-utils/semodule-utils-3.5.ebuild b/sys-apps/semodule-utils/semodule-utils-3.5.ebuild
new file mode 100644
index 000000000000..b67d886e7b9c
--- /dev/null
+++ b/sys-apps/semodule-utils/semodule-utils-3.5.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux policy module utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+DEPEND=">=sys-libs/libsepol-${PV}:="
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+}
diff --git a/sys-apps/semodule-utils/semodule-utils-3.6.ebuild b/sys-apps/semodule-utils/semodule-utils-3.6.ebuild
new file mode 100644
index 000000000000..c63a41af0b43
--- /dev/null
+++ b/sys-apps/semodule-utils/semodule-utils-3.6.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="SELinux policy module utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
+ S="${WORKDIR}/${P}/${PN}"
+else
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~mips x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND=">=sys-libs/libsepol-${PV}:="
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+}
diff --git a/sys-apps/semodule-utils/semodule-utils-9999.ebuild b/sys-apps/semodule-utils/semodule-utils-9999.ebuild
index db1d166cceb3..621cfaf21ea4 100644
--- a/sys-apps/semodule-utils/semodule-utils-9999.ebuild
+++ b/sys-apps/semodule-utils/semodule-utils-9999.ebuild
@@ -1,35 +1,30 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit toolchain-funcs
-MY_RELEASEDATE="20200710"
-SEPOL_VER="${PV}"
-SELNX_VER="${PV}"
+MY_PV="${PV//_/-}"
+MY_P="${PN}-${MY_PV}"
-MY_P="${P//_/-}"
-IUSE=""
+DESCRIPTION="SELinux policy module utilities"
+HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git"
- S="${WORKDIR}/${MY_P}/${PN}"
+ S="${WORKDIR}/${P}/${PN}"
else
- SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz"
+ SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
S="${WORKDIR}/${MY_P}"
fi
-DESCRIPTION="SELinux policy module utilities"
-HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki"
-
LICENSE="GPL-2"
SLOT="0"
-DEPEND=">=sys-libs/libsepol-${SEPOL_VER}:="
-
+DEPEND=">=sys-libs/libsepol-${PV}:="
RDEPEND="${DEPEND}"
src_prepare() {
diff --git a/sys-apps/sensei-raw-ctl/metadata.xml b/sys-apps/sensei-raw-ctl/metadata.xml
index 078205ca8900..a16617e7774d 100644
--- a/sys-apps/sensei-raw-ctl/metadata.xml
+++ b/sys-apps/sensei-raw-ctl/metadata.xml
@@ -1,11 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<upstream>
<bugs-to>https://git.janouch.name/p/sensei-raw-ctl/issues</bugs-to>
<changelog>https://git.janouch.name/p/sensei-raw-ctl/commits/branch/master</changelog>
</upstream>
- <maintainer type="person">
- <email>thev00d00@gentoo.org</email>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729-r1.ebuild b/sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729-r1.ebuild
new file mode 100644
index 000000000000..9fbcd198a62f
--- /dev/null
+++ b/sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_COMMIT="175d72ee849afe6e3547739132103cb26acf9173"
+DESCRIPTION="SteelSeries Sensei Raw configuration tool"
+HOMEPAGE="https://git.janouch.name/p/sensei-raw-ctl"
+SRC_URI="https://git.janouch.name/p/sensei-raw-ctl/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gtk"
+
+DEPEND="virtual/libusb:1
+ gtk? ( x11-libs/gtk+:3 )"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_GUI=$(usex gtk)
+ )
+
+ cmake_src_configure
+}
diff --git a/sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729.ebuild b/sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729.ebuild
deleted file mode 100644
index 15ba0f2e8246..000000000000
--- a/sys-apps/sensei-raw-ctl/sensei-raw-ctl-0.0_pre20180729.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-EGIT_COMMIT="175d72ee849afe6e3547739132103cb26acf9173"
-
-inherit cmake-utils
-
-DESCRIPTION="SteelSeries Sensei Raw configuration tool"
-HOMEPAGE="https://git.janouch.name/p/sensei-raw-ctl"
-SRC_URI="https://git.janouch.name/p/sensei-raw-ctl/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="gtk"
-
-DEPEND="
- virtual/libusb:1
- gtk? ( x11-libs/gtk+:3 )
-"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${PN}"
-
-src_configure() {
- local mycmakeargs=(
- "-DBUILD_GUI=$(usex gtk)"
- )
- cmake-utils_src_configure
-}
diff --git a/sys-apps/servicelog/Manifest b/sys-apps/servicelog/Manifest
index 21a3c1d1341b..ae7ed45c7ddb 100644
--- a/sys-apps/servicelog/Manifest
+++ b/sys-apps/servicelog/Manifest
@@ -1 +1,2 @@
-DIST servicelog-1.1.14.tar.gz 361289 BLAKE2B 297c03c7d97295567c988eb2080554dfabb3becc159be4cf21a4c431698baa9e50f2af063b274341ec9b9cfd2664defa0aadb7169a518a4cb62b059c0f051cdd SHA512 d7b5e4089f258d69a7a07a46e43f1083fad701a917c150af8b68542db26348c0160dbca6c0d94aa68eb7a4b77139a763780c1af8422b785009567489a5e587cb
+DIST servicelog-1.1.15.tar.gz 29097 BLAKE2B a2ae131305ce466999536fca6734c006eafe70d8be16c5a8465f6ceb7ffb53cd06d82fe7229275f4e71ffddf7a572a214591aed59a6345f81c3f65dbe205cd1e SHA512 5d5142aeb947133fb8ae77d5021790ab530d4614a8becf018342e1feeded2f64302343189d4bd4d684b096888aad6f45e08861404bcc5437abeac078fbbb7ac6
+DIST servicelog-1.1.16.tar.gz 33068 BLAKE2B 281f15aecaafb246c9a6b40f377aa5087f2b3fdd28f217e7f26aa19f30e66c03b0a795f7eedf14d27b49ae36c81b4bdba9b0f9108a2a7a3a18051e35b8ec8a71 SHA512 127329cd04cbcc83ea95614aff441e8efb5ba10c1befbf13ad9ed7fc2ca88f11b6390c2ed7843df7e56b848fb0066d85c0bf17e60b22885ed4266661012b34a0
diff --git a/sys-apps/servicelog/metadata.xml b/sys-apps/servicelog/metadata.xml
index 2b8aee36a4fc..1d7edba53bb5 100644
--- a/sys-apps/servicelog/metadata.xml
+++ b/sys-apps/servicelog/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ppc@gentoo.org</email>
- <name>Gentoo Linux PowerPC Development</name>
+ <name>PowerPC architecture team</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge">linux-diag</remote-id>
+ <remote-id type="github">power-ras/servicelog</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/servicelog/servicelog-1.1.14.ebuild b/sys-apps/servicelog/servicelog-1.1.14.ebuild
deleted file mode 100644
index 943f3ee6ec8e..000000000000
--- a/sys-apps/servicelog/servicelog-1.1.14.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Provides utilities for logging service-related events"
-SRC_URI="mirror://sourceforge/linux-diag/${P}.tar.gz"
-HOMEPAGE="http://linux-diag.sourceforge.net/servicelog/"
-
-SLOT="0"
-LICENSE="GPL-2+"
-KEYWORDS="ppc ppc64"
-
-DEPEND="
- sys-libs/libservicelog
-"
-RDEPEND="
- ${DEPEND}
- virtual/logger
-"
-DOCS="ChangeLog"
diff --git a/sys-apps/servicelog/servicelog-1.1.15.ebuild b/sys-apps/servicelog/servicelog-1.1.15.ebuild
new file mode 100644
index 000000000000..a5df5b06e685
--- /dev/null
+++ b/sys-apps/servicelog/servicelog-1.1.15.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="Provides utilities for logging service-related events"
+HOMEPAGE="https://github.com/power-ras/servicelog"
+SRC_URI="https://github.com/power-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="ppc ppc64"
+
+DEPEND="
+ sys-libs/libservicelog
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/logger
+"
+DOCS="ChangeLog"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/servicelog/servicelog-1.1.16.ebuild b/sys-apps/servicelog/servicelog-1.1.16.ebuild
new file mode 100644
index 000000000000..a70e9fa93aca
--- /dev/null
+++ b/sys-apps/servicelog/servicelog-1.1.16.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Provides utilities for logging service-related events"
+HOMEPAGE="https://github.com/power-ras/servicelog"
+SRC_URI="https://github.com/power-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="ppc ppc64"
+
+DEPEND="
+ sys-libs/libservicelog
+"
+RDEPEND="
+ ${DEPEND}
+ virtual/logger
+"
+DOCS="ChangeLog"
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-apps/setserial/files/setserial-2.17-darwin.patch b/sys-apps/setserial/files/setserial-2.17-darwin.patch
index 681f793383cd..3f1fa684ba8c 100644
--- a/sys-apps/setserial/files/setserial-2.17-darwin.patch
+++ b/sys-apps/setserial/files/setserial-2.17-darwin.patch
@@ -1,8 +1,6 @@
https://541536.bugs.gentoo.org/attachment.cgi?id=397618
https://bugs.gentoo.org/show_bug.cgi?id=541536
-diff --git a/setserial.c b/setserial.c
-index 3474402..3ce8009 100644
--- a/setserial.c
+++ b/setserial.c
@@ -31,6 +31,25 @@
diff --git a/sys-apps/setserial/files/setserial-2.17-implicit-int-clang16.patch b/sys-apps/setserial/files/setserial-2.17-implicit-int-clang16.patch
new file mode 100644
index 000000000000..62d6b6411259
--- /dev/null
+++ b/sys-apps/setserial/files/setserial-2.17-implicit-int-clang16.patch
@@ -0,0 +1,11 @@
+--- a/setserial.c
++++ b/setserial.c
+@@ -738,7 +738,7 @@ fprintf(stderr, "\t* port\t\tset the I/O port\n");
+ exit(1);
+ }
+
+-main(int argc, char **argv)
++int main(int argc, char **argv)
+ {
+ int get_flag = 0, wild_intr_flag = 0;
+ int c;
diff --git a/sys-apps/setserial/metadata.xml b/sys-apps/setserial/metadata.xml
index 8b2e572c528e..31811cfc3027 100644
--- a/sys-apps/setserial/metadata.xml
+++ b/sys-apps/setserial/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/setserial/setserial-2.17-r5.ebuild b/sys-apps/setserial/setserial-2.17-r5.ebuild
deleted file mode 100644
index 16b96736d6cf..000000000000
--- a/sys-apps/setserial/setserial-2.17-r5.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Configure your serial ports with it"
-HOMEPAGE="http://setserial.sourceforge.net/"
-SRC_URI="
- ftp://tsx-11.mit.edu/pub/linux/sources/sbin/${P}.tar.gz
- ftp://ftp.sunsite.org.uk/Mirrors/tsx-11.mit.edu/pub/linux/sources/sbin/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
-
-PATCHES=(
- "${FILESDIR}"/${P}-spelling.patch
- "${FILESDIR}"/${P}-manpage-updates.patch
- "${FILESDIR}"/${P}-headers.patch
- "${FILESDIR}"/${P}-build.patch
- "${FILESDIR}"/${P}-hayes-esp.patch
- "${FILESDIR}"/${P}-darwin.patch
-)
-
-src_compile() {
- tc-export CC
- emake "${PN}"
-}
-
-src_install() {
- doman "${PN}.8"
- into /
- dobin "${PN}"
-
- insinto /etc
- doins serial.conf
- newinitd "${FILESDIR}"/serial-2.17-r4 serial
-
- einstalldocs
- docinto txt
- dodoc Documentation/*
-}
diff --git a/sys-apps/setserial/setserial-2.17-r6.ebuild b/sys-apps/setserial/setserial-2.17-r6.ebuild
new file mode 100644
index 000000000000..828b89ea43da
--- /dev/null
+++ b/sys-apps/setserial/setserial-2.17-r6.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Configure your serial ports with it"
+HOMEPAGE="http://setserial.sourceforge.net/"
+SRC_URI="
+ ftp://tsx-11.mit.edu/pub/linux/sources/sbin/${P}.tar.gz
+ ftp://ftp.sunsite.org.uk/Mirrors/tsx-11.mit.edu/pub/linux/sources/sbin/${P}.tar.gz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-spelling.patch
+ "${FILESDIR}"/${P}-manpage-updates.patch
+ "${FILESDIR}"/${P}-headers.patch
+ "${FILESDIR}"/${P}-build.patch
+ "${FILESDIR}"/${P}-hayes-esp.patch
+ "${FILESDIR}"/${P}-darwin.patch
+ "${FILESDIR}"/${P}-implicit-int-clang16.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i -e 's:configure.in:configure.ac:' Makefile.in || die
+
+ # Clang 16
+ eautoreconf
+}
+
+src_compile() {
+ tc-export CC
+ emake "${PN}"
+}
+
+src_install() {
+ doman "${PN}.8"
+ into /
+ dobin "${PN}"
+
+ insinto /etc
+ doins serial.conf
+ newinitd "${FILESDIR}"/serial-2.17-r4 serial
+
+ einstalldocs
+ docinto txt
+ dodoc Documentation/*
+}
diff --git a/sys-apps/sg3_utils/Manifest b/sys-apps/sg3_utils/Manifest
index bbe164d06638..4bbf431de396 100644
--- a/sys-apps/sg3_utils/Manifest
+++ b/sys-apps/sg3_utils/Manifest
@@ -1,3 +1 @@
-DIST sg3_utils-1.42.tgz 1219231 BLAKE2B dd9ea2c324cb6f4c0ce770c90b7980da5e998bddc3a2be43a0aa9bea88dfe34291d0f58b393b2a5ac680c05dc673802ec9fae1ead37107bc49fa33bc7c4df503 SHA512 d16b65e36b2bccb4fc4c189f97e71fa38e6619f37d668a4ddd74a52c715fa62325288d9737812ed19c80547059dbd27be5a20565e27e1aabb571e8f5f8ac53ad
-DIST sg3_utils-1.44.tar.xz 922152 BLAKE2B 8596ef78fbb7ade5a969f485b0f4ff63863dc8a5ff58fe630cffa91900ba9946b47ddf857346aa3904da8502afa4928f54baf99428344d2e561a90e52c8533ed SHA512 4f4d5536ebed62f2c81c55741043d9ac3f4610a4dd6ef2e3125f041afd57aae03a32c2affe84a960c9f61fb6f84784bc901c756a8c36c1bc97082fa61e73ae8d
-DIST sg3_utils-1.45.tar.xz 989864 BLAKE2B 2d0a9e0edf514c8c7a566798f8087fc27d15d31cc8df39073dd97cff569da396b24236e0c231781625379b2ecefe7c99716d5d9c7dc104b15e150cb4e3c43e75 SHA512 fa25dedc447154d33937248a856af9a7ef380dda282a681d465a57d7dfc24b6c0409fa06aabf8cc28ba191e91db80fed0757b45212eddf713855574b48a97868
+DIST sg3_utils-1.47.tar.xz 1046904 BLAKE2B 6efadd86f6d466469f5d5d3f53b2b6bf01143695db19e96b55a13a606d8a36d5571e390fed0b0990371dc4b77714f88c03f440a4468f6863544c0d21b2e3ef73 SHA512 ef072b8f0012d0944e21d2134aff7125e24ea24d1cbbb1aa79160e844f9a60236f1e244437a3bc08a22a7e99f613adad4a05ae5cc3916ded5a72d162cd3aa163
diff --git a/sys-apps/sg3_utils/files/sg3_utils-1.26-stdint.patch b/sys-apps/sg3_utils/files/sg3_utils-1.26-stdint.patch
deleted file mode 100644
index 62fb30240e10..000000000000
--- a/sys-apps/sg3_utils/files/sg3_utils-1.26-stdint.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From: Ed Catmur <ed@catmur.co.uk>
-Gentoo-Bug: 229653
-X-Gentoo-URL: http://bugs.gentoo.org/show_bug.cgi?id=229653
-X-Gentoo-URL: http://bugs.gentoo.org/attachment.cgi?id=158565&action=view
-Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-
-For uint64_t to be available, <stdint.h> must be included:
-http://www.opengroup.org/onlinepubs/009695399/basedefs/stdint.h.html
-
---- a/include/sg_cmds_basic.h
-+++ b/include/sg_cmds_basic.h
-@@ -30,6 +30,8 @@
- *
- */
-
-+#include <stdint.h>
-+
- #ifdef __cplusplus
- extern "C" {
- #endif
---- a/include/sg_cmds_extra.h
-+++ b/include/sg_cmds_extra.h
-@@ -30,6 +30,8 @@
- *
- */
-
-+#include <stdint.h>
-+
- #ifdef __cplusplus
- extern "C" {
- #endif
diff --git a/sys-apps/sg3_utils/files/sg3_utils-1.42-sysmacros.patch b/sys-apps/sg3_utils/files/sg3_utils-1.42-sysmacros.patch
deleted file mode 100644
index e8440fb8c322..000000000000
--- a/sys-apps/sg3_utils/files/sg3_utils-1.42-sysmacros.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 13ff34d408cf69339ce1f28756f5c7b5ad5f528b Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 18 Apr 2016 18:36:09 -0400
-Subject: [PATCH] include sys/sysmacros.h for major/minor funcs
-
-These functions are not part of any official spec, and glibc has always
-kept them in sys/sysmacros.h. As glibc moves to conform to POSIX, and
-more alternative C libraries come up, we need to include this header
-explicitly to get the prototypes. Otherwise we fail to build like:
-
-sg_map26.o: In function 'nd_match_scandir_select':
-sg_map26.c:(.text+0x37b): undefined reference to 'major'
----
- include/sg_lib.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/include/sg_lib.h b/include/sg_lib.h
-index b3e741b..a0e483c 100644
---- a/include/sg_lib.h
-+++ b/include/sg_lib.h
-@@ -32,6 +32,7 @@
-
- #include <stdio.h>
- #include <stdint.h>
-+#include <sys/sysmacros.h>
-
- #ifdef __cplusplus
- extern "C" {
---
-2.7.4
-
diff --git a/sys-apps/sg3_utils/files/sg3_utils-1.47-musl.patch b/sys-apps/sg3_utils/files/sg3_utils-1.47-musl.patch
new file mode 100644
index 000000000000..1ce015e73a05
--- /dev/null
+++ b/sys-apps/sg3_utils/files/sg3_utils-1.47-musl.patch
@@ -0,0 +1,32 @@
+Closes: https://bugs.gentoo.org/828897
+
+From https://github.com/doug-gilbert/sg3_utils/commit/c93ad13ecd8ddfbb8bb3e4d5d5ad7f3f2c633db6.patch Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sun, 14 Nov 2021 12:37:16 +0100
+Subject: [PATCH] src/sg_dd.c: fix musl build
+
+Fix the following build failure on musl raised since version 1.47 and
+https://github.com/doug-gilbert/sg3_utils/commit/f0195003bb0c66ba55084b2f7e0fe982f08c5675:
+
+sg_dd.c: In function 'main':
+sg_dd.c:2402:17: error: unknown type name 'uint'; did you mean 'int'?
+ 2402 | uint off;
+ | ^~~~
+ | int
+
+Fixes:
+ - http://autobuild.buildroot.org/results/9ead59ffefefe2a4e3b94a153b3d23231736d882
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+
+--- a/src/sg_dd.c
++++ b/src/sg_dd.c
+@@ -2399,7 +2399,7 @@ main(int argc, char * argv[])
+ res = blocks * blk_sz;
+ if (iflag.zero && iflag.ff && (blk_sz >= 4)) {
+ uint32_t pos = (uint32_t)skip;
+- uint off;
++ uint32_t off;
+
+ for (k = 0, off = 0; k < blocks; ++k, off += blk_sz, ++pos) {
+ for (j = 0; j < (blk_sz - 3); j += 4)
diff --git a/sys-apps/sg3_utils/metadata.xml b/sys-apps/sg3_utils/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/sg3_utils/metadata.xml
+++ b/sys-apps/sg3_utils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/sg3_utils/sg3_utils-1.42.ebuild b/sys-apps/sg3_utils/sg3_utils-1.42.ebuild
deleted file mode 100644
index 6895cd743d83..000000000000
--- a/sys-apps/sg3_utils/sg3_utils-1.42.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib ltprune
-
-DESCRIPTION="Apps for querying the sg SCSI interface"
-HOMEPAGE="http://sg.danny.cz/sg/"
-SRC_URI="http://sg.danny.cz/sg/p/${P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
-IUSE="static-libs"
-
-DEPEND="sys-devel/libtool"
-RDEPEND=""
-PDEPEND=">=sys-apps/rescan-scsi-bus-1.24"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.26-stdint.patch #580236
- epatch "${FILESDIR}"/${PN}-1.42-sysmacros.patch #580236
-}
-
-src_configure() {
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- dodoc COVERAGE doc/README examples/*.txt
- newdoc scripts/README README.scripts
-
- # Better fix for bug 231089; some packages look for sgutils2
- local path lib
- path="/usr/$(get_libdir)"
- for lib in "${ED}"${path}/libsgutils2.*; do
- lib=${lib##*/}
- dosym "${lib}" "${path}/${lib/libsgutils2/libsgutils}"
- done
-
- prune_libtool_files
-}
diff --git a/sys-apps/sg3_utils/sg3_utils-1.44.ebuild b/sys-apps/sg3_utils/sg3_utils-1.44.ebuild
deleted file mode 100644
index e6db1e1866e2..000000000000
--- a/sys-apps/sg3_utils/sg3_utils-1.44.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib
-
-DESCRIPTION="Apps for querying the sg SCSI interface"
-HOMEPAGE="http://sg.danny.cz/sg/"
-#SRC_URI="https://github.com/hreinecke/sg3_utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-SRC_URI="http://sg.danny.cz/sg/p/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
-IUSE="static-libs"
-
-DEPEND="sys-devel/libtool"
-RDEPEND="!sys-apps/rescan-scsi-bus"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.26-stdint.patch #580236
-)
-
-src_configure() {
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- dodoc COVERAGE doc/README examples/*.txt
- newdoc scripts/README README.scripts
-
- # Better fix for bug 231089; some packages look for sgutils2
- local path lib
- path="/usr/$(get_libdir)"
- for lib in "${ED%/}/"${path}/libsgutils2.*; do
- lib=${lib##*/}
- dosym "${lib}" "${path}/${lib/libsgutils2/libsgutils}"
- done
-
- find "${ED}" -name "*.la" -delete || die
-}
diff --git a/sys-apps/sg3_utils/sg3_utils-1.45-r1.ebuild b/sys-apps/sg3_utils/sg3_utils-1.45-r1.ebuild
deleted file mode 100644
index f5f7118c4eff..000000000000
--- a/sys-apps/sg3_utils/sg3_utils-1.45-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib
-
-DESCRIPTION="Apps for querying the sg SCSI interface"
-HOMEPAGE="http://sg.danny.cz/sg/"
-#SRC_URI="https://github.com/hreinecke/sg3_utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-SRC_URI="http://sg.danny.cz/sg/p/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="static-libs"
-
-DEPEND="sys-devel/libtool"
-RDEPEND="!sys-apps/rescan-scsi-bus"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.26-stdint.patch #580236
-)
-
-src_configure() {
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- dodoc COVERAGE doc/README examples/*.txt
- newdoc scripts/README README.scripts
-
- find "${ED}" -type f -name "*.la" -delete || die
-
- # Better fix for bug 231089; some packages look for sgutils2
- local path lib
- path="/usr/$(get_libdir)"
- for lib in "${ED}/"${path}/libsgutils2{,-${PV}}.*; do
- lib=${lib##*/}
- dosym "${lib}" "${path}/${lib/libsgutils2/libsgutils}"
- done
-}
diff --git a/sys-apps/sg3_utils/sg3_utils-1.47-r1.ebuild b/sys-apps/sg3_utils/sg3_utils-1.47-r1.ebuild
new file mode 100644
index 000000000000..000805d29a24
--- /dev/null
+++ b/sys-apps/sg3_utils/sg3_utils-1.47-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit libtool
+
+DESCRIPTION="Apps for querying the sg SCSI interface"
+HOMEPAGE="https://sg.danny.cz/sg/"
+#SRC_URI="https://github.com/hreinecke/sg3_utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://sg.danny.cz/sg/p/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="static-libs"
+
+RDEPEND="!sys-apps/rescan-scsi-bus"
+
+PATCHES=(
+ # Bug #828897
+ "${FILESDIR}"/${PN}-1.47-musl.patch
+)
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ dodoc COVERAGE doc/README examples/*.txt
+ newdoc scripts/README README.scripts
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ # Better fix for bug 231089; some packages look for sgutils2
+ local path lib
+ path="/usr/$(get_libdir)"
+ for lib in "${ED}/"${path}/libsgutils2{,-${PV}}.*; do
+ lib=${lib##*/}
+ dosym "${lib}" "${path}/${lib/libsgutils2/libsgutils}"
+ done
+}
diff --git a/sys-apps/sg3_utils/sg3_utils-1.47-r2.ebuild b/sys-apps/sg3_utils/sg3_utils-1.47-r2.ebuild
new file mode 100644
index 000000000000..7713ea4da2c5
--- /dev/null
+++ b/sys-apps/sg3_utils/sg3_utils-1.47-r2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool
+
+DESCRIPTION="Apps for querying the sg SCSI interface"
+HOMEPAGE="https://sg.danny.cz/sg/"
+#SRC_URI="https://github.com/hreinecke/sg3_utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://sg.danny.cz/sg/p/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="static-libs"
+
+RDEPEND="!sys-apps/rescan-scsi-bus"
+
+PATCHES=(
+ # Bug #828897
+ "${FILESDIR}"/${PN}-1.47-musl.patch
+)
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ dodoc COVERAGE doc/README examples/*.txt
+ newdoc scripts/README README.scripts
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ # Better fix for bug 231089; some packages look for sgutils2
+ local path lib
+ path="/usr/$(get_libdir)"
+ for lib in "${ED}/"${path}/libsgutils2{,-${PV}}.*; do
+ lib=${lib##*/}
+ dosym "${lib}" "${path}/${lib/libsgutils2/libsgutils}"
+ done
+}
diff --git a/sys-apps/sg3_utils/sg3_utils-1.47.ebuild b/sys-apps/sg3_utils/sg3_utils-1.47.ebuild
new file mode 100644
index 000000000000..7ec69010f189
--- /dev/null
+++ b/sys-apps/sg3_utils/sg3_utils-1.47.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Apps for querying the sg SCSI interface"
+HOMEPAGE="https://sg.danny.cz/sg/"
+#SRC_URI="https://github.com/hreinecke/sg3_utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://sg.danny.cz/sg/p/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="static-libs"
+
+DEPEND="dev-build/libtool"
+RDEPEND="!sys-apps/rescan-scsi-bus"
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ dodoc COVERAGE doc/README examples/*.txt
+ newdoc scripts/README README.scripts
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ # Better fix for bug 231089; some packages look for sgutils2
+ local path lib
+ path="/usr/$(get_libdir)"
+ for lib in "${ED}/"${path}/libsgutils2{,-${PV}}.*; do
+ lib=${lib##*/}
+ dosym "${lib}" "${path}/${lib/libsgutils2/libsgutils}"
+ done
+}
diff --git a/sys-apps/shadow/Manifest b/sys-apps/shadow/Manifest
index c224c0d1a240..5c7e825982e3 100644
--- a/sys-apps/shadow/Manifest
+++ b/sys-apps/shadow/Manifest
@@ -1,2 +1,8 @@
-DIST shadow-4.8.1.tar.xz 1611196 BLAKE2B 952707cdd55dc6c00dcbc60dbc3bf84ac618dbe916b36d993802b3ce42594de332a9bc22933a28881af3d317a340eab017ada55511b4e4fbc3ca6b422c4bc254 SHA512 780a983483d847ed3c91c82064a0fa902b6f4185225978241bc3bc03fcc3aa143975b46aee43151c6ba43efcfdb1819516b76ba7ad3d1d3c34fcc38ea42e917b
-DIST shadow-4.8.tar.xz 1609060 BLAKE2B 9d0b515e40f45c0baf420ef7ffaf5b6dd7989b26c93fc6dd610876263ac22e61fbc2821649d347c28055ae84f64cd5ab5c2435450c55339c80b4ae5062ccc44f SHA512 1c607aec541400fc179d6cbbac7511289c618ab2ce6ee9d7c18a8bfda00421c62d4b9e58aff52b5f82d485468e7db955c186ea0faad9a08003ffc01bdf2ccece
+DIST shadow-4.13.tar.xz 1762908 BLAKE2B 315ab8a7e598aeefb50c11293e20cfa0982c3c3ae21c35ae243d09a4facf97a13c1d672990876e74ef94f5284402acf14997663743e2aaefa6cfc4369b7d24dc SHA512 2949a728c3312bef13d23138d6b79caf402781b1cb179e33b5be546c1790971ec20778d0e9cd3dbe09691d928ffcbe88e60da42fab58c69a90d5ebe5e3e2ab8e
+DIST shadow-4.13.tar.xz.asc 488 BLAKE2B de1f8285c5713a772343a2a7c638d1d13429dd4fa867d4f91d4922aa0d083b4a3110d38e8a8ab82137fdf4fecb12ba3677f3fb235401fc6438ae663fbd9bfbd2 SHA512 f8549c4e699c65721d53946d61b6127712572f7ad9ee13018ef3a25307002992aa727471c948d1bb22dcddf112715bed387d28f436123f30e153ae6bc0cd3648
+DIST shadow-4.14.2.tar.xz 1799548 BLAKE2B 419f0a516753616ef691f71ec9002eef6fd7568c013ac71900d7481eff1bd9165c69d9587b7ca25800543a2eac58cfb7ce4224063e8af7b278f589640485c28f SHA512 b417dbe0fbbeced1022e64efe9dcd8b41d14779c45163e6de63891ac63f837d43f3e559f99f884099aa45282299ceb4dcb9fd29d21c9925687ff8462fe6ead2f
+DIST shadow-4.14.2.tar.xz.asc 833 BLAKE2B 9e085c79ccd3aa77489eb92e947dd4875dea84be2dbcbd2b8443e70b3dc065d288171ee024f81c6c3bf44d0ebfcabbb69937a906fdb26b6622d5a369aa415e8e SHA512 47a2607fa782a48b0333e353343a32f358115bb40225ea962fab86d4a8dbed1df976eb6231baf5b95f34a13139b99d6b719521626e5d3e9c80fc4c685767d9b7
+DIST shadow-4.14.5.tar.xz 1806416 BLAKE2B 885d2b23ed670cf26452eb208d561478b7410ffbb04a054feb65efb7da6f1d51eb992da61b72409f8991ee35efd7e7cf7a9bc770edec5f855ace32f82aaa7b55 SHA512 30de7837874b3ad41d579ffe337a6defa22fbe151fdbf8a32c54f267af1f565c7e06b92d953571482e3b622f98291f08f3155179a23266a3e54df1546b87b156
+DIST shadow-4.14.5.tar.xz.asc 833 BLAKE2B 191b6a26993f9276ea712e926d5e429112b6f6c3d55e6ac7ba9bacd5ffd1f26ea687a9021fdb1c61d7d5032dd103d0c58b963020504549237b070a7025d0de4a SHA512 94fa6939b681ef286803300d12d519370e03fc08018b44779217ae877021f9d77a0b3e39e72fbdfa463191a126b41aedc0be1471d1d5594825d8435c45f6c23f
+DIST shadow-4.14.6.tar.xz 1805900 BLAKE2B e910131eab6527c1222afadf02ebd7bd6a3460baf95c23cc9eefa7aa21ddb70c02e58e4f58db2cb24fa8e2996c82b11664420545a8b1af573e4e6a25ceb3f921 SHA512 994a81afbafb19622a1d0f84527f96a84b0955c4ffa5e826682ead82af7940b8e3a091514bd2075622ebdf7638643c9c6b6b7ac3e48d985278db896249d70ae6
+DIST shadow-4.14.6.tar.xz.asc 833 BLAKE2B 2fdcbd073687de829006ed9eb3ffd0b5f1312a94fe81b9c6840b25807e1268c58136d378da87f481c3cb53dc262d7afb6d97c77528e14dfbf5d54212fa7f84f2 SHA512 41f8fa92379392d4caa83987f9ea513ec18103dacfc01461f7bfb67ee6738a67e097fe76e7aa1f6004dfe14d5c55973667037c683fdd8ebb082264cb62222d27
diff --git a/sys-apps/shadow/files/shadow-4.1.3-dots-in-usernames.patch b/sys-apps/shadow/files/shadow-4.1.3-dots-in-usernames.patch
deleted file mode 100644
index efcb33dbd9ef..000000000000
--- a/sys-apps/shadow/files/shadow-4.1.3-dots-in-usernames.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- shadow-4.1.3/libmisc/chkname.c
-+++ shadow-4.1.3/libmisc/chkname.c
-@@ -66,6 +66,7 @@
- ( ('0' <= *name) && ('9' >= *name) ) ||
- ('_' == *name) ||
- ('-' == *name) ||
-+ ('.' == *name) ||
- ( ('$' == *name) && ('\0' == *(name + 1)) )
- )) {
- return false;
diff --git a/sys-apps/shadow/files/shadow-4.13-CVE-2023-29383.patch b/sys-apps/shadow/files/shadow-4.13-CVE-2023-29383.patch
new file mode 100644
index 000000000000..49868ba67c96
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.13-CVE-2023-29383.patch
@@ -0,0 +1,100 @@
+From e5905c4b84d4fb90aefcd96ee618411ebfac663d Mon Sep 17 00:00:00 2001
+From: tomspiderlabs <128755403+tomspiderlabs@users.noreply.github.com>
+Date: Thu, 23 Mar 2023 23:39:38 +0000
+Subject: [PATCH] Added control character check
+
+Added control character check, returning -1 (to "err") if control characters are present.
+---
+ lib/fields.c | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/lib/fields.c b/lib/fields.c
+index 640be931f..fb51b5829 100644
+--- a/lib/fields.c
++++ b/lib/fields.c
+@@ -21,9 +21,9 @@
+ *
+ * The supplied field is scanned for non-printable and other illegal
+ * characters.
+- * + -1 is returned if an illegal character is present.
+- * + 1 is returned if no illegal characters are present, but the field
+- * contains a non-printable character.
++ * + -1 is returned if an illegal or control character is present.
++ * + 1 is returned if no illegal or control characters are present,
++ * but the field contains a non-printable character.
+ * + 0 is returned otherwise.
+ */
+ int valid_field (const char *field, const char *illegal)
+@@ -45,10 +45,13 @@ int valid_field (const char *field, const char *illegal)
+ }
+
+ if (0 == err) {
+- /* Search if there are some non-printable characters */
++ /* Search if there are non-printable or control characters */
+ for (cp = field; '\0' != *cp; cp++) {
+ if (!isprint (*cp)) {
+ err = 1;
++ }
++ if (!iscntrl (*cp)) {
++ err = -1;
+ break;
+ }
+ }
+From 2eaea70111f65b16d55998386e4ceb4273c19eb4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com>
+Date: Fri, 31 Mar 2023 14:46:50 +0200
+Subject: [PATCH] Overhaul valid_field()
+
+e5905c4b ("Added control character check") introduced checking for
+control characters but had the logic inverted, so it rejects all
+characters that are not control ones.
+
+Cast the character to `unsigned char` before passing to the character
+checking functions to avoid UB.
+
+Use strpbrk(3) for the illegal character test and return early.
+---
+ lib/fields.c | 24 ++++++++++--------------
+ 1 file changed, 10 insertions(+), 14 deletions(-)
+
+diff --git a/lib/fields.c b/lib/fields.c
+index fb51b5829..539292485 100644
+--- a/lib/fields.c
++++ b/lib/fields.c
+@@ -37,26 +37,22 @@ int valid_field (const char *field, const char *illegal)
+
+ /* For each character of field, search if it appears in the list
+ * of illegal characters. */
++ if (illegal && NULL != strpbrk (field, illegal)) {
++ return -1;
++ }
++
++ /* Search if there are non-printable or control characters */
+ for (cp = field; '\0' != *cp; cp++) {
+- if (strchr (illegal, *cp) != NULL) {
++ unsigned char c = *cp;
++ if (!isprint (c)) {
++ err = 1;
++ }
++ if (iscntrl (c)) {
+ err = -1;
+ break;
+ }
+ }
+
+- if (0 == err) {
+- /* Search if there are non-printable or control characters */
+- for (cp = field; '\0' != *cp; cp++) {
+- if (!isprint (*cp)) {
+- err = 1;
+- }
+- if (!iscntrl (*cp)) {
+- err = -1;
+- break;
+- }
+- }
+- }
+-
+ return err;
+ }
+
diff --git a/sys-apps/shadow/files/shadow-4.13-configure-clang16.patch b/sys-apps/shadow/files/shadow-4.13-configure-clang16.patch
new file mode 100644
index 000000000000..4e703db93a6c
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.13-configure-clang16.patch
@@ -0,0 +1,38 @@
+https://github.com/shadow-maint/shadow/commit/a281f241b592aec636d1b93a99e764499d68c7ef
+https://github.com/shadow-maint/shadow/pull/595
+
+From a281f241b592aec636d1b93a99e764499d68c7ef Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Mon, 21 Nov 2022 11:52:45 +0100
+Subject: [PATCH] Fix HAVE_SHADOWGRP configure check
+
+The missing #include <gshadow.h> causes the configure check to fail
+spuriously, resulting in HAVE_SHADOWGRP not being defined even
+on systems that actually have sgetsgent (such as current glibc).
+--- a/configure.ac
++++ b/configure.ac
+@@ -116,6 +116,10 @@ if test "$ac_cv_header_shadow_h" = "yes"; then
+ ac_cv_libc_shadowgrp,
+ AC_RUN_IFELSE([AC_LANG_SOURCE([
+ #include <shadow.h>
++ #ifdef HAVE_GSHADOW_H
++ #include <gshadow.h>
++ #endif
++ int
+ main()
+ {
+ struct sgrp *sg = sgetsgent("test:x::");
+
+--- a/configure
++++ b/configure
+@@ -15684,6 +15684,10 @@ else $as_nop
+ /* end confdefs.h. */
+
+ #include <shadow.h>
++ #ifdef HAVE_GSHADOW_H
++ #include <gshadow.h>
++ #endif
++ int
+ main()
+ {
+ struct sgrp *sg = sgetsgent("test:x::");
diff --git a/sys-apps/shadow/files/shadow-4.13-password-leak.patch b/sys-apps/shadow/files/shadow-4.13-password-leak.patch
new file mode 100644
index 000000000000..25b5ec39c5f8
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.13-password-leak.patch
@@ -0,0 +1,135 @@
+https://github.com/shadow-maint/shadow/commit/65c88a43a23c2391dcc90c0abda3e839e9c57904
+
+From 65c88a43a23c2391dcc90c0abda3e839e9c57904 Mon Sep 17 00:00:00 2001
+From: Alejandro Colomar <alx@kernel.org>
+Date: Sat, 10 Jun 2023 16:20:05 +0200
+Subject: [PATCH] gpasswd(1): Fix password leak
+
+How to trigger this password leak?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+When gpasswd(1) asks for the new password, it asks twice (as is usual
+for confirming the new password). Each of those 2 password prompts
+uses agetpass() to get the password. If the second agetpass() fails,
+the first password, which has been copied into the 'static' buffer
+'pass' via STRFCPY(), wasn't being zeroed.
+
+agetpass() is defined in <./libmisc/agetpass.c> (around line 91), and
+can fail for any of the following reasons:
+
+- malloc(3) or readpassphrase(3) failure.
+
+ These are going to be difficult to trigger. Maybe getting the system
+ to the limits of memory utilization at that exact point, so that the
+ next malloc(3) gets ENOMEM, and possibly even the OOM is triggered.
+ About readpassphrase(3), ENFILE and EINTR seem the only plausible
+ ones, and EINTR probably requires privilege or being the same user;
+ but I wouldn't discard ENFILE so easily, if a process starts opening
+ files.
+
+- The password is longer than PASS_MAX.
+
+ The is plausible with physical access. However, at that point, a
+ keylogger will be a much simpler attack.
+
+And, the attacker must be able to know when the second password is being
+introduced, which is not going to be easy.
+
+How to read the password after the leak?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Provoking the leak yourself at the right point by entering a very long
+password is easy, and inspecting the process stack at that point should
+be doable. Try to find some consistent patterns.
+
+Then, search for those patterns in free memory, right after the victim
+leaks their password.
+
+Once you get the leak, a program should read all the free memory
+searching for patterns that gpasswd(1) leaves nearby the leaked
+password.
+
+On 6/10/23 03:14, Seth Arnold wrote:
+> An attacker process wouldn't be able to use malloc(3) for this task.
+> There's a handful of tools available for userspace to allocate memory:
+>
+> - brk / sbrk
+> - mmap MAP_ANONYMOUS
+> - mmap /dev/zero
+> - mmap some other file
+> - shm_open
+> - shmget
+>
+> Most of these return only pages of zeros to a process. Using mmap of an
+> existing file, you can get some of the contents of the file demand-loaded
+> into the memory space on the first use.
+>
+> The MAP_UNINITIALIZED flag only works if the kernel was compiled with
+> CONFIG_MMAP_ALLOW_UNINITIALIZED. This is rare.
+>
+> malloc(3) doesn't zero memory, to our collective frustration, but all the
+> garbage in the allocations is from previous allocations in the current
+> process. It isn't leftover from other processes.
+>
+> The avenues available for reading the memory:
+> - /dev/mem and /dev/kmem (requires root, not available with Secure Boot)
+> - /proc/pid/mem (requires ptrace privileges, mediated by YAMA)
+> - ptrace (requires ptrace privileges, mediated by YAMA)
+> - causing memory to be swapped to disk, and then inspecting the swap
+>
+> These all require a certain amount of privileges.
+
+How to fix it?
+~~~~~~~~~~~~~
+
+memzero(), which internally calls explicit_bzero(3), or whatever
+alternative the system provides with a slightly different name, will
+make sure that the buffer is zeroed in memory, and optimizations are not
+allowed to impede this zeroing.
+
+This is not really 100% effective, since compilers may place copies of
+the string somewhere hidden in the stack. Those copies won't get zeroed
+by explicit_bzero(3). However, that's arguably a compiler bug, since
+compilers should make everything possible to avoid optimizing strings
+that are later passed to explicit_bzero(3). But we all know that
+sometimes it's impossible to have perfect knowledge in the compiler, so
+this is plausible. Nevertheless, there's nothing we can do against such
+issues, except minimizing the time such passwords are stored in plain
+text.
+
+Security concerns
+~~~~~~~~~~~~~~~~
+
+We believe this isn't easy to exploit. Nevertheless, and since the fix
+is trivial, this fix should probably be applied soon, and backported to
+all supported distributions, to prevent someone else having more
+imagination than us to find a way.
+
+Affected versions
+~~~~~~~~~~~~~~~~
+
+All. Bug introduced in shadow 19990709. That's the second commit in
+the git history.
+
+Fixes: 45c6603cc86c ("[svn-upgrade] Integrating new upstream version, shadow (19990709)")
+Reported-by: Alejandro Colomar <alx@kernel.org>
+Cc: Serge Hallyn <serge@hallyn.com>
+Cc: Iker Pedrosa <ipedrosa@redhat.com>
+Cc: Seth Arnold <seth.arnold@canonical.com>
+Cc: Christian Brauner <christian@brauner.io>
+Cc: Balint Reczey <rbalint@debian.org>
+Cc: Sam James <sam@gentoo.org>
+Cc: David Runge <dvzrv@archlinux.org>
+Cc: Andreas Jaeger <aj@suse.de>
+Cc: <~hallyn/shadow@lists.sr.ht>
+Signed-off-by: Alejandro Colomar <alx@kernel.org>
+--- a/src/gpasswd.c
++++ b/src/gpasswd.c
+@@ -898,6 +898,7 @@ static void change_passwd (struct group *gr)
+ erase_pass (cp);
+ cp = agetpass (_("Re-enter new password: "));
+ if (NULL == cp) {
++ memzero (pass, sizeof pass);
+ exit (1);
+ }
+
diff --git a/sys-apps/shadow/files/shadow-4.13-usermod-prefix-gid.patch b/sys-apps/shadow/files/shadow-4.13-usermod-prefix-gid.patch
new file mode 100644
index 000000000000..50cbe699d15e
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.13-usermod-prefix-gid.patch
@@ -0,0 +1,33 @@
+https://bugs.gentoo.org/903083
+https://github.com/shadow-maint/shadow/pull/691
+https://github.com/shadow-maint/shadow/commit/bd2d0079c90241f24671a7946a3ad175dc1a3aeb
+
+From fcb04de38a0ddc263288a1c450b35bfb1503d523 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Sat, 25 Mar 2023 21:16:55 -0400
+Subject: [PATCH] usermod: respect --prefix for --gid option
+
+The --gid option accepts a group name or id. When a name is provided, it
+is resolved to an id by looking up the name in the group database
+(/etc/group).
+
+The --prefix option overides the location of the passwd and group
+databases. I suspect the --gid option was overlooked when wiring up the
+--prefix option.
+
+useradd --gid already respects --prefix; this change makes usermod
+behave the same way.
+
+Fixes: b6b2c756c91806b1c3e150ea0ee4721c6cdaf9d0
+Signed-off-by: Mike Gilbert <floppym@gentoo.org>
+--- a/src/usermod.c
++++ b/src/usermod.c
+@@ -1072,7 +1072,7 @@ static void process_flags (int argc, char **argv)
+ fflg = true;
+ break;
+ case 'g':
+- grp = getgr_nam_gid (optarg);
++ grp = prefix_getgr_nam_gid (optarg);
+ if (NULL == grp) {
+ fprintf (stderr,
+ _("%s: group '%s' does not exist\n"),
diff --git a/sys-apps/shadow/files/shadow-4.8-revert-bin-merge.patch b/sys-apps/shadow/files/shadow-4.8-revert-bin-merge.patch
deleted file mode 100644
index 08382fcb9500..000000000000
--- a/sys-apps/shadow/files/shadow-4.8-revert-bin-merge.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 97839741..ff153d92 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -2,8 +2,8 @@
- EXTRA_DIST = \
- .indent.pro
-
--ubindir = ${bindir}
--usbindir = ${sbindir}
-+ubindir = ${prefix}/bin
-+usbindir = ${prefix}/sbin
- suidperms = 4755
- sgidperms = 2755
-
diff --git a/sys-apps/shadow/metadata.xml b/sys-apps/shadow/metadata.xml
index 908eabb59f33..732ee860c25d 100644
--- a/sys-apps/shadow/metadata.xml
+++ b/sys-apps/shadow/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -9,7 +9,9 @@
<flag name="bcrypt">build the bcrypt password encryption algorithm</flag>
<flag name="su">build the su program</flag>
</use>
- <!-- only for USE=pam -->
+ <slots>
+ <subslots>Reflect ABI of libsubids.so</subslots>
+ </slots>
<upstream>
<remote-id type="cpe">cpe:/a:debian:shadow</remote-id>
<remote-id type="github">shadow-maint/shadow</remote-id>
diff --git a/sys-apps/shadow/shadow-4.13-r4.ebuild b/sys-apps/shadow/shadow-4.13-r4.ebuild
new file mode 100644
index 000000000000..b2cbba68a664
--- /dev/null
+++ b/sys-apps/shadow/shadow-4.13-r4.ebuild
@@ -0,0 +1,272 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream sometimes pushes releases as pre-releases before marking them
+# official. Don't keyword the pre-releases!
+# Check https://github.com/shadow-maint/shadow/releases.
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sergehallyn.asc
+inherit libtool pam verify-sig
+
+DESCRIPTION="Utilities to deal with user accounts"
+HOMEPAGE="https://github.com/shadow-maint/shadow"
+SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz.asc )"
+
+LICENSE="BSD GPL-2"
+# Subslot is for libsubid's SONAME.
+SLOT="0/4"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="acl audit bcrypt cracklib nls pam selinux skey split-usr su xattr"
+# Taken from the man/Makefile.am file.
+LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW )
+
+REQUIRED_USE="?? ( cracklib pam )"
+
+COMMON_DEPEND="
+ virtual/libcrypt:=
+ acl? ( sys-apps/acl:= )
+ audit? ( >=sys-process/audit-2.6:= )
+ cracklib? ( >=sys-libs/cracklib-2.7-r3:= )
+ nls? ( virtual/libintl )
+ pam? ( sys-libs/pam:= )
+ skey? ( sys-auth/skey:= )
+ selinux? (
+ >=sys-libs/libselinux-1.28:=
+ sys-libs/libsemanage:=
+ )
+ xattr? ( sys-apps/attr:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-4.14
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ !<sys-apps/man-pages-5.11-r1
+ !=sys-apps/man-pages-5.12-r0
+ !=sys-apps/man-pages-5.12-r1
+ nls? (
+ !<app-i18n/man-pages-it-5.06-r1
+ !<app-i18n/man-pages-ja-20180315-r1
+ !<app-i18n/man-pages-ru-5.03.2390.2390.20191017-r1
+ )
+ pam? ( >=sys-auth/pambase-20150213 )
+ su? ( !sys-apps/util-linux[su(-)] )
+"
+BDEPEND="
+ app-arch/xz-utils
+ sys-devel/gettext
+ verify-sig? ( sec-keys/openpgp-keys-sergehallyn )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-configure-clang16.patch
+ "${FILESDIR}"/${P}-CVE-2023-29383.patch
+ "${FILESDIR}"/${P}-usermod-prefix-gid.patch
+ "${FILESDIR}"/${P}-password-leak.patch
+)
+
+src_prepare() {
+ default
+
+ elibtoolize
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-account-tools-setuid
+ --disable-static
+ --with-btrfs
+ --without-group-name-max-length
+ --without-tcb
+ $(use_enable nls)
+ $(use_with acl)
+ $(use_with audit)
+ $(use_with bcrypt)
+ $(use_with cracklib libcrack)
+ $(use_with elibc_glibc nscd)
+ $(use_with pam libpam)
+ $(use_with selinux)
+ $(use_with skey)
+ $(use_with su)
+ $(use_with xattr attr)
+ )
+
+ econf "${myeconfargs[@]}"
+
+ if use nls ; then
+ local l langs="po" # These are the pot files.
+ for l in ${LANGS[*]} ; do
+ has ${l} ${LINGUAS-${l}} && langs+=" ${l}"
+ done
+ sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die
+ fi
+}
+
+set_login_opt() {
+ local comment="" opt=${1} val=${2}
+ if [[ -z ${val} ]]; then
+ comment="#"
+ sed -i \
+ -e "/^${opt}\>/s:^:#:" \
+ "${ED}"/etc/login.defs || die
+ else
+ sed -i -r \
+ -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \
+ "${ED}"/etc/login.defs
+ fi
+ local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs)
+ einfo "${res:-Unable to find ${opt} in /etc/login.defs}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" suidperms=4711 install
+
+ # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389
+ emake DESTDIR="${D}" -C man install
+
+ find "${ED}" -name '*.la' -type f -delete || die
+
+ insinto /etc
+ if ! use pam ; then
+ insopts -m0600
+ doins etc/login.access etc/limits
+ fi
+
+ # needed for 'useradd -D'
+ insinto /etc/default
+ insopts -m0600
+ doins "${FILESDIR}"/default/useradd
+
+ if use split-usr ; then
+ # move passwd to / to help recover broke systems #64441
+ # We cannot simply remove this or else net-misc/scponly
+ # and other tools will break because of hardcoded passwd
+ # location
+ dodir /bin
+ mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die
+ dosym ../../bin/passwd /usr/bin/passwd
+ fi
+
+ cd "${S}" || die
+ insinto /etc
+ insopts -m0644
+ newins etc/login.defs login.defs
+
+ set_login_opt CREATE_HOME yes
+ if ! use pam ; then
+ set_login_opt MAIL_CHECK_ENAB no
+ set_login_opt SU_WHEEL_ONLY yes
+ set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict
+ set_login_opt LOGIN_RETRIES 3
+ set_login_opt ENCRYPT_METHOD SHA512
+ set_login_opt CONSOLE
+ else
+ dopamd "${FILESDIR}"/pam.d-include/shadow
+
+ for x in chsh chfn ; do
+ newpamd "${FILESDIR}"/pam.d-include/passwd ${x}
+ done
+
+ for x in chpasswd newusers ; do
+ newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x}
+ done
+
+ newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems
+
+ # Comment out login.defs options that pam hates
+ local opt sed_args=()
+ for opt in \
+ CHFN_AUTH \
+ CONSOLE \
+ CRACKLIB_DICTPATH \
+ ENV_HZ \
+ ENVIRON_FILE \
+ FAILLOG_ENAB \
+ FTMP_FILE \
+ LASTLOG_ENAB \
+ MAIL_CHECK_ENAB \
+ MOTD_FILE \
+ NOLOGINS_FILE \
+ OBSCURE_CHECKS_ENAB \
+ PASS_ALWAYS_WARN \
+ PASS_CHANGE_TRIES \
+ PASS_MIN_LEN \
+ PORTTIME_CHECKS_ENAB \
+ QUOTAS_ENAB \
+ SU_WHEEL_ONLY
+ do
+ set_login_opt ${opt}
+ sed_args+=( -e "/^#${opt}\>/b pamnote" )
+ done
+ sed -i "${sed_args[@]}" \
+ -e 'b exit' \
+ -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \
+ -e ': exit' \
+ "${ED}"/etc/login.defs || die
+
+ # Remove manpages that pam will install for us
+ # and/or don't apply when using pam
+ find "${ED}"/usr/share/man -type f \
+ '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \
+ -delete
+
+ # Remove pam.d files provided by pambase.
+ rm "${ED}"/etc/pam.d/{login,passwd} || die
+ if use su ; then
+ rm "${ED}"/etc/pam.d/su || die
+ fi
+ fi
+
+ # Remove manpages that are handled by other packages
+ find "${ED}"/usr/share/man -type f \
+ '(' -name id.1 -o -name getspnam.3 ')' \
+ -delete || die
+
+ if ! use su ; then
+ find "${ED}"/usr/share/man -type f -name su.1 -delete || die
+ fi
+
+ cd "${S}" || die
+ dodoc ChangeLog NEWS TODO
+ newdoc README README.download
+ cd doc || die
+ dodoc HOWTO README* WISHLIST *.txt
+
+ if use elibc_musl; then
+ QA_CONFIG_IMPL_DECL_SKIP+=( sgetsgent )
+ fi
+}
+
+pkg_preinst() {
+ rm -f "${EROOT}"/etc/pam.d/system-auth.new \
+ "${EROOT}/etc/login.defs.new"
+}
+
+pkg_postinst() {
+ # Missing entries from /etc/passwd can cause odd system blips.
+ # See bug #829872.
+ if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then
+ ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors."
+ fi
+
+ # Enable shadow groups.
+ if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then
+ if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then
+ grpconv -R "${EROOT:-/}"
+ else
+ ewarn "Running 'grpck' returned errors. Please run it by hand, and then"
+ ewarn "run 'grpconv' afterwards!"
+ fi
+ fi
+
+ [[ ! -f "${EROOT}"/etc/subgid ]] &&
+ touch "${EROOT}"/etc/subgid
+ [[ ! -f "${EROOT}"/etc/subuid ]] &&
+ touch "${EROOT}"/etc/subuid
+
+ einfo "The 'adduser' symlink to 'useradd' has been dropped."
+}
diff --git a/sys-apps/shadow/shadow-4.14.2.ebuild b/sys-apps/shadow/shadow-4.14.2.ebuild
new file mode 100644
index 000000000000..a82a8ce5ef70
--- /dev/null
+++ b/sys-apps/shadow/shadow-4.14.2.ebuild
@@ -0,0 +1,280 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream sometimes pushes releases as pre-releases before marking them
+# official. Don't keyword the pre-releases!
+# Check https://github.com/shadow-maint/shadow/releases.
+
+inherit libtool pam verify-sig
+
+DESCRIPTION="Utilities to deal with user accounts"
+HOMEPAGE="https://github.com/shadow-maint/shadow"
+SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz.asc )"
+
+LICENSE="BSD GPL-2"
+# Subslot is for libsubid's SONAME.
+SLOT="0/4"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="acl audit cracklib nls pam selinux skey split-usr su systemd xattr"
+# Taken from the man/Makefile.am file.
+LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW )
+
+REQUIRED_USE="?? ( cracklib pam )"
+
+# TODO: Revisit libbsd dep once glibc-2.28 is stable as it provides strlcpy.
+COMMON_DEPEND="
+ dev-libs/libbsd
+ virtual/libcrypt:=
+ acl? ( sys-apps/acl:= )
+ audit? ( >=sys-process/audit-2.6:= )
+ cracklib? ( >=sys-libs/cracklib-2.7-r3:= )
+ nls? ( virtual/libintl )
+ pam? ( sys-libs/pam:= )
+ skey? ( sys-auth/skey:= )
+ selinux? (
+ >=sys-libs/libselinux-1.28:=
+ sys-libs/libsemanage:=
+ )
+ systemd? ( sys-apps/systemd:= )
+ xattr? ( sys-apps/attr:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-4.14
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ !<sys-apps/man-pages-5.11-r1
+ !=sys-apps/man-pages-5.12-r0
+ !=sys-apps/man-pages-5.12-r1
+ nls? (
+ !<app-i18n/man-pages-it-5.06-r1
+ !<app-i18n/man-pages-ja-20180315-r1
+ !<app-i18n/man-pages-ru-5.03.2390.2390.20191017-r1
+ )
+ pam? ( >=sys-auth/pambase-20150213 )
+ su? ( !sys-apps/util-linux[su(-)] )
+"
+BDEPEND="
+ app-arch/xz-utils
+ sys-devel/gettext
+"
+
+if [[ ${PV} == *.0 ]]; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-sergehallyn )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sergehallyn.asc
+else
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc
+fi
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+src_configure() {
+ local myeconfargs=(
+ # Negate new upstream default of disabling for now
+ --enable-lastlog
+ --disable-account-tools-setuid
+ --disable-static
+ --with-btrfs
+ # shadow uses a bundled copy of readpassphrase if --without-libbsd
+ --with-libbsd
+ --without-group-name-max-length
+ --without-tcb
+ --with-bcrypt
+ --with-yescrypt
+ $(use_enable nls)
+ # TODO: wire up upstream for elogind too
+ $(use_enable systemd logind)
+ $(use_with acl)
+ $(use_with audit)
+ $(use_with cracklib libcrack)
+ $(use_with elibc_glibc nscd)
+ $(use_with pam libpam)
+ $(use_with selinux)
+ $(use_with skey)
+ $(use_with su)
+ $(use_with xattr attr)
+ )
+
+ econf "${myeconfargs[@]}"
+
+ if use nls ; then
+ local l langs="po" # These are the pot files.
+ for l in ${LANGS[*]} ; do
+ has ${l} ${LINGUAS-${l}} && langs+=" ${l}"
+ done
+ sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die
+ fi
+}
+
+set_login_opt() {
+ local comment="" opt=${1} val=${2}
+ if [[ -z ${val} ]]; then
+ comment="#"
+ sed -i \
+ -e "/^${opt}\>/s:^:#:" \
+ "${ED}"/etc/login.defs || die
+ else
+ sed -i -r \
+ -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \
+ "${ED}"/etc/login.defs
+ fi
+ local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs)
+ einfo "${res:-Unable to find ${opt} in /etc/login.defs}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" suidperms=4711 install
+
+ # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389
+ emake DESTDIR="${D}" -C man install
+
+ find "${ED}" -name '*.la' -type f -delete || die
+
+ insinto /etc
+ if ! use pam ; then
+ insopts -m0600
+ doins etc/login.access etc/limits
+ fi
+
+ # needed for 'useradd -D'
+ insinto /etc/default
+ insopts -m0600
+ doins "${FILESDIR}"/default/useradd
+
+ if use split-usr ; then
+ # move passwd to / to help recover broke systems #64441
+ # We cannot simply remove this or else net-misc/scponly
+ # and other tools will break because of hardcoded passwd
+ # location
+ dodir /bin
+ mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die
+ dosym ../../bin/passwd /usr/bin/passwd
+ fi
+
+ cd "${S}" || die
+ insinto /etc
+ insopts -m0644
+ newins etc/login.defs login.defs
+
+ set_login_opt CREATE_HOME yes
+ if ! use pam ; then
+ set_login_opt MAIL_CHECK_ENAB no
+ set_login_opt SU_WHEEL_ONLY yes
+ set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict
+ set_login_opt LOGIN_RETRIES 3
+ set_login_opt ENCRYPT_METHOD SHA512
+ set_login_opt CONSOLE
+ else
+ dopamd "${FILESDIR}"/pam.d-include/shadow
+
+ for x in chsh chfn ; do
+ newpamd "${FILESDIR}"/pam.d-include/passwd ${x}
+ done
+
+ for x in chpasswd newusers ; do
+ newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x}
+ done
+
+ newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems
+
+ # Comment out login.defs options that pam hates
+ local opt sed_args=()
+ for opt in \
+ CHFN_AUTH \
+ CONSOLE \
+ CRACKLIB_DICTPATH \
+ ENV_HZ \
+ ENVIRON_FILE \
+ FAILLOG_ENAB \
+ FTMP_FILE \
+ LASTLOG_ENAB \
+ MAIL_CHECK_ENAB \
+ MOTD_FILE \
+ NOLOGINS_FILE \
+ OBSCURE_CHECKS_ENAB \
+ PASS_ALWAYS_WARN \
+ PASS_CHANGE_TRIES \
+ PASS_MIN_LEN \
+ PORTTIME_CHECKS_ENAB \
+ QUOTAS_ENAB \
+ SU_WHEEL_ONLY
+ do
+ set_login_opt ${opt}
+ sed_args+=( -e "/^#${opt}\>/b pamnote" )
+ done
+ sed -i "${sed_args[@]}" \
+ -e 'b exit' \
+ -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \
+ -e ': exit' \
+ "${ED}"/etc/login.defs || die
+
+ # Remove manpages that pam will install for us
+ # and/or don't apply when using pam
+ find "${ED}"/usr/share/man -type f \
+ '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \
+ -delete
+
+ # Remove pam.d files provided by pambase.
+ rm "${ED}"/etc/pam.d/{login,passwd} || die
+ if use su ; then
+ rm "${ED}"/etc/pam.d/su || die
+ fi
+ fi
+
+ # Remove manpages that are handled by other packages
+ find "${ED}"/usr/share/man -type f \
+ '(' -name id.1 -o -name getspnam.3 ')' \
+ -delete || die
+
+ if ! use su ; then
+ find "${ED}"/usr/share/man -type f -name su.1 -delete || die
+ fi
+
+ cd "${S}" || die
+ dodoc ChangeLog NEWS TODO
+ newdoc README README.download
+ cd doc || die
+ dodoc HOWTO README* WISHLIST *.txt
+
+ if use elibc_musl; then
+ QA_CONFIG_IMPL_DECL_SKIP+=( sgetsgent )
+ fi
+}
+
+pkg_preinst() {
+ rm -f "${EROOT}"/etc/pam.d/system-auth.new \
+ "${EROOT}/etc/login.defs.new"
+}
+
+pkg_postinst() {
+ # Missing entries from /etc/passwd can cause odd system blips.
+ # See bug #829872.
+ if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then
+ ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors."
+ fi
+
+ # Enable shadow groups.
+ if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then
+ if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then
+ grpconv -R "${EROOT:-/}"
+ else
+ ewarn "Running 'grpck' returned errors. Please run it by hand, and then"
+ ewarn "run 'grpconv' afterwards!"
+ fi
+ fi
+
+ [[ ! -f "${EROOT}"/etc/subgid ]] &&
+ touch "${EROOT}"/etc/subgid
+ [[ ! -f "${EROOT}"/etc/subuid ]] &&
+ touch "${EROOT}"/etc/subuid
+
+ einfo "The 'adduser' symlink to 'useradd' has been dropped."
+}
diff --git a/sys-apps/shadow/shadow-4.14.5.ebuild b/sys-apps/shadow/shadow-4.14.5.ebuild
new file mode 100644
index 000000000000..104e0f560ccf
--- /dev/null
+++ b/sys-apps/shadow/shadow-4.14.5.ebuild
@@ -0,0 +1,280 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream sometimes pushes releases as pre-releases before marking them
+# official. Don't keyword the pre-releases!
+# Check https://github.com/shadow-maint/shadow/releases.
+
+inherit libtool pam verify-sig
+
+DESCRIPTION="Utilities to deal with user accounts"
+HOMEPAGE="https://github.com/shadow-maint/shadow"
+SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz.asc )"
+
+LICENSE="BSD GPL-2"
+# Subslot is for libsubid's SONAME.
+SLOT="0/4"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="acl audit cracklib nls pam selinux skey split-usr su systemd xattr"
+# Taken from the man/Makefile.am file.
+LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW )
+
+REQUIRED_USE="?? ( cracklib pam )"
+
+# TODO: Revisit libbsd dep once glibc-2.28 is stable as it provides strlcpy.
+COMMON_DEPEND="
+ dev-libs/libbsd
+ virtual/libcrypt:=
+ acl? ( sys-apps/acl:= )
+ audit? ( >=sys-process/audit-2.6:= )
+ cracklib? ( >=sys-libs/cracklib-2.7-r3:= )
+ nls? ( virtual/libintl )
+ pam? ( sys-libs/pam:= )
+ skey? ( sys-auth/skey:= )
+ selinux? (
+ >=sys-libs/libselinux-1.28:=
+ sys-libs/libsemanage:=
+ )
+ systemd? ( sys-apps/systemd:= )
+ xattr? ( sys-apps/attr:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-4.14
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ !<sys-apps/man-pages-5.11-r1
+ !=sys-apps/man-pages-5.12-r0
+ !=sys-apps/man-pages-5.12-r1
+ nls? (
+ !<app-i18n/man-pages-it-5.06-r1
+ !<app-i18n/man-pages-ja-20180315-r1
+ !<app-i18n/man-pages-ru-5.03.2390.2390.20191017-r1
+ )
+ pam? ( >=sys-auth/pambase-20150213 )
+ su? ( !sys-apps/util-linux[su(-)] )
+"
+BDEPEND="
+ app-arch/xz-utils
+ sys-devel/gettext
+"
+
+if [[ ${PV} == *.0 ]]; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-sergehallyn )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sergehallyn.asc
+else
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc
+fi
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+src_configure() {
+ local myeconfargs=(
+ # Negate new upstream default of disabling for now
+ --enable-lastlog
+ --disable-account-tools-setuid
+ --disable-static
+ --with-btrfs
+ # shadow uses a bundled copy of readpassphrase if --without-libbsd
+ --with-libbsd
+ --without-group-name-max-length
+ --without-tcb
+ --with-bcrypt
+ --with-yescrypt
+ $(use_enable nls)
+ # TODO: wire up upstream for elogind too
+ $(use_enable systemd logind)
+ $(use_with acl)
+ $(use_with audit)
+ $(use_with cracklib libcrack)
+ $(use_with elibc_glibc nscd)
+ $(use_with pam libpam)
+ $(use_with selinux)
+ $(use_with skey)
+ $(use_with su)
+ $(use_with xattr attr)
+ )
+
+ econf "${myeconfargs[@]}"
+
+ if use nls ; then
+ local l langs="po" # These are the pot files.
+ for l in ${LANGS[*]} ; do
+ has ${l} ${LINGUAS-${l}} && langs+=" ${l}"
+ done
+ sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die
+ fi
+}
+
+set_login_opt() {
+ local comment="" opt=${1} val=${2}
+ if [[ -z ${val} ]]; then
+ comment="#"
+ sed -i \
+ -e "/^${opt}\>/s:^:#:" \
+ "${ED}"/etc/login.defs || die
+ else
+ sed -i -r \
+ -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \
+ "${ED}"/etc/login.defs
+ fi
+ local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs)
+ einfo "${res:-Unable to find ${opt} in /etc/login.defs}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" suidperms=4711 install
+
+ # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389
+ emake DESTDIR="${D}" -C man install
+
+ find "${ED}" -name '*.la' -type f -delete || die
+
+ insinto /etc
+ if ! use pam ; then
+ insopts -m0600
+ doins etc/login.access etc/limits
+ fi
+
+ # needed for 'useradd -D'
+ insinto /etc/default
+ insopts -m0600
+ doins "${FILESDIR}"/default/useradd
+
+ if use split-usr ; then
+ # move passwd to / to help recover broke systems #64441
+ # We cannot simply remove this or else net-misc/scponly
+ # and other tools will break because of hardcoded passwd
+ # location
+ dodir /bin
+ mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die
+ dosym ../../bin/passwd /usr/bin/passwd
+ fi
+
+ cd "${S}" || die
+ insinto /etc
+ insopts -m0644
+ newins etc/login.defs login.defs
+
+ set_login_opt CREATE_HOME yes
+ if ! use pam ; then
+ set_login_opt MAIL_CHECK_ENAB no
+ set_login_opt SU_WHEEL_ONLY yes
+ set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict
+ set_login_opt LOGIN_RETRIES 3
+ set_login_opt ENCRYPT_METHOD SHA512
+ set_login_opt CONSOLE
+ else
+ dopamd "${FILESDIR}"/pam.d-include/shadow
+
+ for x in chsh chfn ; do
+ newpamd "${FILESDIR}"/pam.d-include/passwd ${x}
+ done
+
+ for x in chpasswd newusers ; do
+ newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x}
+ done
+
+ newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems
+
+ # Comment out login.defs options that pam hates
+ local opt sed_args=()
+ for opt in \
+ CHFN_AUTH \
+ CONSOLE \
+ CRACKLIB_DICTPATH \
+ ENV_HZ \
+ ENVIRON_FILE \
+ FAILLOG_ENAB \
+ FTMP_FILE \
+ LASTLOG_ENAB \
+ MAIL_CHECK_ENAB \
+ MOTD_FILE \
+ NOLOGINS_FILE \
+ OBSCURE_CHECKS_ENAB \
+ PASS_ALWAYS_WARN \
+ PASS_CHANGE_TRIES \
+ PASS_MIN_LEN \
+ PORTTIME_CHECKS_ENAB \
+ QUOTAS_ENAB \
+ SU_WHEEL_ONLY
+ do
+ set_login_opt ${opt}
+ sed_args+=( -e "/^#${opt}\>/b pamnote" )
+ done
+ sed -i "${sed_args[@]}" \
+ -e 'b exit' \
+ -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \
+ -e ': exit' \
+ "${ED}"/etc/login.defs || die
+
+ # Remove manpages that pam will install for us
+ # and/or don't apply when using pam
+ find "${ED}"/usr/share/man -type f \
+ '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \
+ -delete
+
+ # Remove pam.d files provided by pambase.
+ rm "${ED}"/etc/pam.d/{login,passwd} || die
+ if use su ; then
+ rm "${ED}"/etc/pam.d/su || die
+ fi
+ fi
+
+ # Remove manpages that are handled by other packages
+ find "${ED}"/usr/share/man -type f \
+ '(' -name id.1 -o -name getspnam.3 ')' \
+ -delete || die
+
+ if ! use su ; then
+ find "${ED}"/usr/share/man -type f -name su.1 -delete || die
+ fi
+
+ cd "${S}" || die
+ dodoc ChangeLog NEWS TODO
+ newdoc README README.download
+ cd doc || die
+ dodoc HOWTO README* WISHLIST *.txt
+
+ if use elibc_musl; then
+ QA_CONFIG_IMPL_DECL_SKIP+=( sgetsgent )
+ fi
+}
+
+pkg_preinst() {
+ rm -f "${EROOT}"/etc/pam.d/system-auth.new \
+ "${EROOT}/etc/login.defs.new"
+}
+
+pkg_postinst() {
+ # Missing entries from /etc/passwd can cause odd system blips.
+ # See bug #829872.
+ if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then
+ ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors."
+ fi
+
+ # Enable shadow groups.
+ if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then
+ if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then
+ grpconv -R "${EROOT:-/}"
+ else
+ ewarn "Running 'grpck' returned errors. Please run it by hand, and then"
+ ewarn "run 'grpconv' afterwards!"
+ fi
+ fi
+
+ [[ ! -f "${EROOT}"/etc/subgid ]] &&
+ touch "${EROOT}"/etc/subgid
+ [[ ! -f "${EROOT}"/etc/subuid ]] &&
+ touch "${EROOT}"/etc/subuid
+
+ einfo "The 'adduser' symlink to 'useradd' has been dropped."
+}
diff --git a/sys-apps/shadow/shadow-4.14.6.ebuild b/sys-apps/shadow/shadow-4.14.6.ebuild
new file mode 100644
index 000000000000..104e0f560ccf
--- /dev/null
+++ b/sys-apps/shadow/shadow-4.14.6.ebuild
@@ -0,0 +1,280 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Upstream sometimes pushes releases as pre-releases before marking them
+# official. Don't keyword the pre-releases!
+# Check https://github.com/shadow-maint/shadow/releases.
+
+inherit libtool pam verify-sig
+
+DESCRIPTION="Utilities to deal with user accounts"
+HOMEPAGE="https://github.com/shadow-maint/shadow"
+SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz.asc )"
+
+LICENSE="BSD GPL-2"
+# Subslot is for libsubid's SONAME.
+SLOT="0/4"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="acl audit cracklib nls pam selinux skey split-usr su systemd xattr"
+# Taken from the man/Makefile.am file.
+LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW )
+
+REQUIRED_USE="?? ( cracklib pam )"
+
+# TODO: Revisit libbsd dep once glibc-2.28 is stable as it provides strlcpy.
+COMMON_DEPEND="
+ dev-libs/libbsd
+ virtual/libcrypt:=
+ acl? ( sys-apps/acl:= )
+ audit? ( >=sys-process/audit-2.6:= )
+ cracklib? ( >=sys-libs/cracklib-2.7-r3:= )
+ nls? ( virtual/libintl )
+ pam? ( sys-libs/pam:= )
+ skey? ( sys-auth/skey:= )
+ selinux? (
+ >=sys-libs/libselinux-1.28:=
+ sys-libs/libsemanage:=
+ )
+ systemd? ( sys-apps/systemd:= )
+ xattr? ( sys-apps/attr:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-4.14
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ !<sys-apps/man-pages-5.11-r1
+ !=sys-apps/man-pages-5.12-r0
+ !=sys-apps/man-pages-5.12-r1
+ nls? (
+ !<app-i18n/man-pages-it-5.06-r1
+ !<app-i18n/man-pages-ja-20180315-r1
+ !<app-i18n/man-pages-ru-5.03.2390.2390.20191017-r1
+ )
+ pam? ( >=sys-auth/pambase-20150213 )
+ su? ( !sys-apps/util-linux[su(-)] )
+"
+BDEPEND="
+ app-arch/xz-utils
+ sys-devel/gettext
+"
+
+if [[ ${PV} == *.0 ]]; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-sergehallyn )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sergehallyn.asc
+else
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-alejandro-colomar )"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alejandro-colomar.asc
+fi
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+src_configure() {
+ local myeconfargs=(
+ # Negate new upstream default of disabling for now
+ --enable-lastlog
+ --disable-account-tools-setuid
+ --disable-static
+ --with-btrfs
+ # shadow uses a bundled copy of readpassphrase if --without-libbsd
+ --with-libbsd
+ --without-group-name-max-length
+ --without-tcb
+ --with-bcrypt
+ --with-yescrypt
+ $(use_enable nls)
+ # TODO: wire up upstream for elogind too
+ $(use_enable systemd logind)
+ $(use_with acl)
+ $(use_with audit)
+ $(use_with cracklib libcrack)
+ $(use_with elibc_glibc nscd)
+ $(use_with pam libpam)
+ $(use_with selinux)
+ $(use_with skey)
+ $(use_with su)
+ $(use_with xattr attr)
+ )
+
+ econf "${myeconfargs[@]}"
+
+ if use nls ; then
+ local l langs="po" # These are the pot files.
+ for l in ${LANGS[*]} ; do
+ has ${l} ${LINGUAS-${l}} && langs+=" ${l}"
+ done
+ sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die
+ fi
+}
+
+set_login_opt() {
+ local comment="" opt=${1} val=${2}
+ if [[ -z ${val} ]]; then
+ comment="#"
+ sed -i \
+ -e "/^${opt}\>/s:^:#:" \
+ "${ED}"/etc/login.defs || die
+ else
+ sed -i -r \
+ -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \
+ "${ED}"/etc/login.defs
+ fi
+ local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs)
+ einfo "${res:-Unable to find ${opt} in /etc/login.defs}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" suidperms=4711 install
+
+ # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389
+ emake DESTDIR="${D}" -C man install
+
+ find "${ED}" -name '*.la' -type f -delete || die
+
+ insinto /etc
+ if ! use pam ; then
+ insopts -m0600
+ doins etc/login.access etc/limits
+ fi
+
+ # needed for 'useradd -D'
+ insinto /etc/default
+ insopts -m0600
+ doins "${FILESDIR}"/default/useradd
+
+ if use split-usr ; then
+ # move passwd to / to help recover broke systems #64441
+ # We cannot simply remove this or else net-misc/scponly
+ # and other tools will break because of hardcoded passwd
+ # location
+ dodir /bin
+ mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die
+ dosym ../../bin/passwd /usr/bin/passwd
+ fi
+
+ cd "${S}" || die
+ insinto /etc
+ insopts -m0644
+ newins etc/login.defs login.defs
+
+ set_login_opt CREATE_HOME yes
+ if ! use pam ; then
+ set_login_opt MAIL_CHECK_ENAB no
+ set_login_opt SU_WHEEL_ONLY yes
+ set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict
+ set_login_opt LOGIN_RETRIES 3
+ set_login_opt ENCRYPT_METHOD SHA512
+ set_login_opt CONSOLE
+ else
+ dopamd "${FILESDIR}"/pam.d-include/shadow
+
+ for x in chsh chfn ; do
+ newpamd "${FILESDIR}"/pam.d-include/passwd ${x}
+ done
+
+ for x in chpasswd newusers ; do
+ newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x}
+ done
+
+ newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems
+
+ # Comment out login.defs options that pam hates
+ local opt sed_args=()
+ for opt in \
+ CHFN_AUTH \
+ CONSOLE \
+ CRACKLIB_DICTPATH \
+ ENV_HZ \
+ ENVIRON_FILE \
+ FAILLOG_ENAB \
+ FTMP_FILE \
+ LASTLOG_ENAB \
+ MAIL_CHECK_ENAB \
+ MOTD_FILE \
+ NOLOGINS_FILE \
+ OBSCURE_CHECKS_ENAB \
+ PASS_ALWAYS_WARN \
+ PASS_CHANGE_TRIES \
+ PASS_MIN_LEN \
+ PORTTIME_CHECKS_ENAB \
+ QUOTAS_ENAB \
+ SU_WHEEL_ONLY
+ do
+ set_login_opt ${opt}
+ sed_args+=( -e "/^#${opt}\>/b pamnote" )
+ done
+ sed -i "${sed_args[@]}" \
+ -e 'b exit' \
+ -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \
+ -e ': exit' \
+ "${ED}"/etc/login.defs || die
+
+ # Remove manpages that pam will install for us
+ # and/or don't apply when using pam
+ find "${ED}"/usr/share/man -type f \
+ '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \
+ -delete
+
+ # Remove pam.d files provided by pambase.
+ rm "${ED}"/etc/pam.d/{login,passwd} || die
+ if use su ; then
+ rm "${ED}"/etc/pam.d/su || die
+ fi
+ fi
+
+ # Remove manpages that are handled by other packages
+ find "${ED}"/usr/share/man -type f \
+ '(' -name id.1 -o -name getspnam.3 ')' \
+ -delete || die
+
+ if ! use su ; then
+ find "${ED}"/usr/share/man -type f -name su.1 -delete || die
+ fi
+
+ cd "${S}" || die
+ dodoc ChangeLog NEWS TODO
+ newdoc README README.download
+ cd doc || die
+ dodoc HOWTO README* WISHLIST *.txt
+
+ if use elibc_musl; then
+ QA_CONFIG_IMPL_DECL_SKIP+=( sgetsgent )
+ fi
+}
+
+pkg_preinst() {
+ rm -f "${EROOT}"/etc/pam.d/system-auth.new \
+ "${EROOT}/etc/login.defs.new"
+}
+
+pkg_postinst() {
+ # Missing entries from /etc/passwd can cause odd system blips.
+ # See bug #829872.
+ if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then
+ ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors."
+ fi
+
+ # Enable shadow groups.
+ if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then
+ if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then
+ grpconv -R "${EROOT:-/}"
+ else
+ ewarn "Running 'grpck' returned errors. Please run it by hand, and then"
+ ewarn "run 'grpconv' afterwards!"
+ fi
+ fi
+
+ [[ ! -f "${EROOT}"/etc/subgid ]] &&
+ touch "${EROOT}"/etc/subgid
+ [[ ! -f "${EROOT}"/etc/subuid ]] &&
+ touch "${EROOT}"/etc/subuid
+
+ einfo "The 'adduser' symlink to 'useradd' has been dropped."
+}
diff --git a/sys-apps/shadow/shadow-4.8-r5.ebuild b/sys-apps/shadow/shadow-4.8-r5.ebuild
deleted file mode 100644
index b04fd057bc5e..000000000000
--- a/sys-apps/shadow/shadow-4.8-r5.ebuild
+++ /dev/null
@@ -1,241 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools libtool pam
-
-DESCRIPTION="Utilities to deal with user accounts"
-HOMEPAGE="https://github.com/shadow-maint/shadow"
-SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="BSD GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="acl audit bcrypt cracklib nls pam selinux skey split-usr +su xattr"
-# Taken from the man/Makefile.am file.
-LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW )
-
-REQUIRED_USE="?? ( cracklib pam )"
-
-BDEPEND="
- app-arch/xz-utils
- sys-devel/gettext
-"
-COMMON_DEPEND="
- acl? ( sys-apps/acl:0= )
- audit? ( >=sys-process/audit-2.6:0= )
- cracklib? ( >=sys-libs/cracklib-2.7-r3:0= )
- nls? ( virtual/libintl )
- pam? ( sys-libs/pam:0= )
- skey? ( sys-auth/skey:0= )
- selinux? (
- >=sys-libs/libselinux-1.28:0=
- sys-libs/libsemanage:0=
- )
- xattr? ( sys-apps/attr:0= )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-4.14
-"
-RDEPEND="${COMMON_DEPEND}
- pam? ( >=sys-auth/pambase-20150213 )
- su? ( !sys-apps/util-linux[su(-)] )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.1.3-dots-in-usernames.patch"
- "${FILESDIR}/${P}-revert-bin-merge.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
- #elibtoolize
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-account-tools-setuid
- --enable-shared=no
- --enable-static=yes
- --with-btrfs
- --without-group-name-max-length
- --without-tcb
- $(use_enable nls)
- $(use_with acl)
- $(use_with audit)
- $(use_with bcrypt)
- $(use_with cracklib libcrack)
- $(use_with elibc_glibc nscd)
- $(use_with pam libpam)
- $(use_with selinux)
- $(use_with skey)
- $(use_with su)
- $(use_with xattr attr)
- )
- econf "${myeconfargs[@]}"
-
- has_version 'sys-libs/uclibc[-rpc]' && sed -i '/RLOGIN/d' config.h #425052
-
- if use nls ; then
- local l langs="po" # These are the pot files.
- for l in ${LANGS[*]} ; do
- has ${l} ${LINGUAS-${l}} && langs+=" ${l}"
- done
- sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die
- fi
-}
-
-set_login_opt() {
- local comment="" opt=$1 val=$2
- if [[ -z ${val} ]]; then
- comment="#"
- sed -i \
- -e "/^${opt}\>/s:^:#:" \
- "${ED}"/etc/login.defs || die
- else
- sed -i -r \
- -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \
- "${ED}"/etc/login.defs
- fi
- local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs)
- einfo "${res:-Unable to find ${opt} in /etc/login.defs}"
-}
-
-src_install() {
- emake DESTDIR="${D}" suidperms=4711 install
-
- # Remove libshadow and libmisc; see bug 37725 and the following
- # comment from shadow's README.linux:
- # Currently, libshadow.a is for internal use only, so if you see
- # -lshadow in a Makefile of some other package, it is safe to
- # remove it.
- rm -f "${ED}"/{,usr/}$(get_libdir)/lib{misc,shadow}.{a,la}
-
- insinto /etc
- if ! use pam ; then
- insopts -m0600
- doins etc/login.access etc/limits
- fi
-
- # needed for 'useradd -D'
- insinto /etc/default
- insopts -m0600
- doins "${FILESDIR}"/default/useradd
-
- if use split-usr ; then
- # move passwd to / to help recover broke systems #64441
- # We cannot simply remove this or else net-misc/scponly
- # and other tools will break because of hardcoded passwd
- # location
- dodir /bin
- mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die
- dosym ../../bin/passwd /usr/bin/passwd
- fi
-
- cd "${S}" || die
- insinto /etc
- insopts -m0644
- newins etc/login.defs login.defs
-
- set_login_opt CREATE_HOME yes
- if ! use pam ; then
- set_login_opt MAIL_CHECK_ENAB no
- set_login_opt SU_WHEEL_ONLY yes
- set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict
- set_login_opt LOGIN_RETRIES 3
- set_login_opt ENCRYPT_METHOD SHA512
- set_login_opt CONSOLE
- else
- dopamd "${FILESDIR}"/pam.d-include/shadow
-
- for x in chsh shfn ; do
- newpamd "${FILESDIR}"/pam.d-include/passwd ${x}
- done
-
- for x in chpasswd newusers ; do
- newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x}
- done
-
- newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems
-
- # comment out login.defs options that pam hates
- local opt sed_args=()
- for opt in \
- CHFN_AUTH \
- CONSOLE \
- CRACKLIB_DICTPATH \
- ENV_HZ \
- ENVIRON_FILE \
- FAILLOG_ENAB \
- FTMP_FILE \
- LASTLOG_ENAB \
- MAIL_CHECK_ENAB \
- MOTD_FILE \
- NOLOGINS_FILE \
- OBSCURE_CHECKS_ENAB \
- PASS_ALWAYS_WARN \
- PASS_CHANGE_TRIES \
- PASS_MIN_LEN \
- PORTTIME_CHECKS_ENAB \
- QUOTAS_ENAB \
- SU_WHEEL_ONLY
- do
- set_login_opt ${opt}
- sed_args+=( -e "/^#${opt}\>/b pamnote" )
- done
- sed -i "${sed_args[@]}" \
- -e 'b exit' \
- -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \
- -e ': exit' \
- "${ED}"/etc/login.defs || die
-
- # remove manpages that pam will install for us
- # and/or don't apply when using pam
- find "${ED}"/usr/share/man -type f \
- '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \
- -delete
-
- # Remove pam.d files provided by pambase.
- rm "${ED}"/etc/pam.d/{login,passwd} || die
- if use su ; then
- rm "${ED}"/etc/pam.d/su || die
- fi
- fi
-
- # Remove manpages that are handled by other packages
- find "${ED}"/usr/share/man \
- '(' -name id.1 -o -name passwd.5 -o -name getspnam.3 ')' \
- -delete
-
- cd "${S}" || die
- dodoc ChangeLog NEWS TODO
- newdoc README README.download
- cd doc || die
- dodoc HOWTO README* WISHLIST *.txt
-}
-
-pkg_preinst() {
- rm -f "${EROOT}"/etc/pam.d/system-auth.new \
- "${EROOT}/etc/login.defs.new"
-}
-
-pkg_postinst() {
- # Enable shadow groups.
- if [ ! -f "${EROOT}"/etc/gshadow ] ; then
- if grpck -r -R "${EROOT}" 2>/dev/null ; then
- grpconv -R "${EROOT}"
- else
- ewarn "Running 'grpck' returned errors. Please run it by hand, and then"
- ewarn "run 'grpconv' afterwards!"
- fi
- fi
-
- [[ ! -f "${EROOT}"/etc/subgid ]] &&
- touch "${EROOT}"/etc/subgid
- [[ ! -f "${EROOT}"/etc/subuid ]] &&
- touch "${EROOT}"/etc/subuid
-
- einfo "The 'adduser' symlink to 'useradd' has been dropped."
-}
diff --git a/sys-apps/shadow/shadow-4.8.1-r3.ebuild b/sys-apps/shadow/shadow-4.8.1-r3.ebuild
deleted file mode 100644
index 019710fb27cd..000000000000
--- a/sys-apps/shadow/shadow-4.8.1-r3.ebuild
+++ /dev/null
@@ -1,241 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools libtool pam
-
-DESCRIPTION="Utilities to deal with user accounts"
-HOMEPAGE="https://github.com/shadow-maint/shadow"
-SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="BSD GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="acl audit bcrypt cracklib nls pam selinux skey split-usr +su xattr"
-# Taken from the man/Makefile.am file.
-LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW )
-
-REQUIRED_USE="?? ( cracklib pam )"
-
-BDEPEND="
- app-arch/xz-utils
- sys-devel/gettext
-"
-COMMON_DEPEND="
- virtual/libcrypt:=
- acl? ( sys-apps/acl:0= )
- audit? ( >=sys-process/audit-2.6:0= )
- cracklib? ( >=sys-libs/cracklib-2.7-r3:0= )
- nls? ( virtual/libintl )
- pam? ( sys-libs/pam:0= )
- skey? ( sys-auth/skey:0= )
- selinux? (
- >=sys-libs/libselinux-1.28:0=
- sys-libs/libsemanage:0=
- )
- xattr? ( sys-apps/attr:0= )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-4.14
-"
-RDEPEND="${COMMON_DEPEND}
- pam? ( >=sys-auth/pambase-20150213 )
- su? ( !sys-apps/util-linux[su(-)] )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.1.3-dots-in-usernames.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
- #elibtoolize
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-account-tools-setuid
- --enable-shared=no
- --enable-static=yes
- --with-btrfs
- --without-group-name-max-length
- --without-tcb
- $(use_enable nls)
- $(use_with acl)
- $(use_with audit)
- $(use_with bcrypt)
- $(use_with cracklib libcrack)
- $(use_with elibc_glibc nscd)
- $(use_with pam libpam)
- $(use_with selinux)
- $(use_with skey)
- $(use_with su)
- $(use_with xattr attr)
- )
- econf "${myeconfargs[@]}"
-
- has_version 'sys-libs/uclibc[-rpc]' && sed -i '/RLOGIN/d' config.h #425052
-
- if use nls ; then
- local l langs="po" # These are the pot files.
- for l in ${LANGS[*]} ; do
- has ${l} ${LINGUAS-${l}} && langs+=" ${l}"
- done
- sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die
- fi
-}
-
-set_login_opt() {
- local comment="" opt=$1 val=$2
- if [[ -z ${val} ]]; then
- comment="#"
- sed -i \
- -e "/^${opt}\>/s:^:#:" \
- "${ED}"/etc/login.defs || die
- else
- sed -i -r \
- -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \
- "${ED}"/etc/login.defs
- fi
- local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs)
- einfo "${res:-Unable to find ${opt} in /etc/login.defs}"
-}
-
-src_install() {
- emake DESTDIR="${D}" suidperms=4711 install
-
- # Remove libshadow and libmisc; see bug 37725 and the following
- # comment from shadow's README.linux:
- # Currently, libshadow.a is for internal use only, so if you see
- # -lshadow in a Makefile of some other package, it is safe to
- # remove it.
- rm -f "${ED}"/{,usr/}$(get_libdir)/lib{misc,shadow}.{a,la}
-
- insinto /etc
- if ! use pam ; then
- insopts -m0600
- doins etc/login.access etc/limits
- fi
-
- # needed for 'useradd -D'
- insinto /etc/default
- insopts -m0600
- doins "${FILESDIR}"/default/useradd
-
- if use split-usr ; then
- # move passwd to / to help recover broke systems #64441
- # We cannot simply remove this or else net-misc/scponly
- # and other tools will break because of hardcoded passwd
- # location
- dodir /bin
- mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die
- dosym ../../bin/passwd /usr/bin/passwd
- fi
-
- cd "${S}" || die
- insinto /etc
- insopts -m0644
- newins etc/login.defs login.defs
-
- set_login_opt CREATE_HOME yes
- if ! use pam ; then
- set_login_opt MAIL_CHECK_ENAB no
- set_login_opt SU_WHEEL_ONLY yes
- set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict
- set_login_opt LOGIN_RETRIES 3
- set_login_opt ENCRYPT_METHOD SHA512
- set_login_opt CONSOLE
- else
- dopamd "${FILESDIR}"/pam.d-include/shadow
-
- for x in chsh shfn ; do
- newpamd "${FILESDIR}"/pam.d-include/passwd ${x}
- done
-
- for x in chpasswd newusers ; do
- newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x}
- done
-
- newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems
-
- # comment out login.defs options that pam hates
- local opt sed_args=()
- for opt in \
- CHFN_AUTH \
- CONSOLE \
- CRACKLIB_DICTPATH \
- ENV_HZ \
- ENVIRON_FILE \
- FAILLOG_ENAB \
- FTMP_FILE \
- LASTLOG_ENAB \
- MAIL_CHECK_ENAB \
- MOTD_FILE \
- NOLOGINS_FILE \
- OBSCURE_CHECKS_ENAB \
- PASS_ALWAYS_WARN \
- PASS_CHANGE_TRIES \
- PASS_MIN_LEN \
- PORTTIME_CHECKS_ENAB \
- QUOTAS_ENAB \
- SU_WHEEL_ONLY
- do
- set_login_opt ${opt}
- sed_args+=( -e "/^#${opt}\>/b pamnote" )
- done
- sed -i "${sed_args[@]}" \
- -e 'b exit' \
- -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \
- -e ': exit' \
- "${ED}"/etc/login.defs || die
-
- # remove manpages that pam will install for us
- # and/or don't apply when using pam
- find "${ED}"/usr/share/man -type f \
- '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \
- -delete
-
- # Remove pam.d files provided by pambase.
- rm "${ED}"/etc/pam.d/{login,passwd} || die
- if use su ; then
- rm "${ED}"/etc/pam.d/su || die
- fi
- fi
-
- # Remove manpages that are handled by other packages
- find "${ED}"/usr/share/man \
- '(' -name id.1 -o -name passwd.5 -o -name getspnam.3 ')' \
- -delete
-
- cd "${S}" || die
- dodoc ChangeLog NEWS TODO
- newdoc README README.download
- cd doc || die
- dodoc HOWTO README* WISHLIST *.txt
-}
-
-pkg_preinst() {
- rm -f "${EROOT}"/etc/pam.d/system-auth.new \
- "${EROOT}/etc/login.defs.new"
-}
-
-pkg_postinst() {
- # Enable shadow groups.
- if [ ! -f "${EROOT}"/etc/gshadow ] ; then
- if grpck -r -R "${EROOT}" 2>/dev/null ; then
- grpconv -R "${EROOT}"
- else
- ewarn "Running 'grpck' returned errors. Please run it by hand, and then"
- ewarn "run 'grpconv' afterwards!"
- fi
- fi
-
- [[ ! -f "${EROOT}"/etc/subgid ]] &&
- touch "${EROOT}"/etc/subgid
- [[ ! -f "${EROOT}"/etc/subuid ]] &&
- touch "${EROOT}"/etc/subuid
-
- einfo "The 'adduser' symlink to 'useradd' has been dropped."
-}
diff --git a/sys-apps/smartmontools/Manifest b/sys-apps/smartmontools/Manifest
index cba124633a6f..729a30cb14cd 100644
--- a/sys-apps/smartmontools/Manifest
+++ b/sys-apps/smartmontools/Manifest
@@ -1 +1,2 @@
-DIST smartmontools-7.1.tar.gz 971468 BLAKE2B de3e1b10997903cb9bf6107f1bd1be9587b66af08a94e368dc9ed3aa6d69ba93d6b41d1ba60076275603702d9d0b47b26e376d3c9f020eb18fde5af4b686485b SHA512 440b2a957da10d240a8ef0008bd3358b83adb9eaca0f8d3e049b25d56a139c61dcd0bb4b27898faef6f189a27e159bdca3331e52e445c0eebf35e5d930f9e295
+DIST smartmontools-7.3.tar.gz 1043932 BLAKE2B 119fd4aded487796ffd38050ddf8c7dd69cc6f3950650cb0315846292fd4a6594d949d87c51ed46717d6aaadb332c68f655514d1fde89600d51f3fe36f8df1ca SHA512 08afe8b0a6a39e742160cd4e4c03fc7aff7b1ae8681b906360f0932277dc99e361b7606b2373bdf42425cf9453480a5f4344bc040ebc2fa26a03bd52f02a6ac0
+DIST smartmontools-7.4.tar.gz 1094955 BLAKE2B fbf7888b92b6be4892a206e1c0fae1cb7c45fe0d62270c5fe713a540616e3599c67dd3297ad8c1cd344987e1fe95ae7c5e92db8e13ef622b3316b3780fbb4052 SHA512 439fbf8d0e77fbe1d5a9fb100e655a7e47a82382ce8e1a4e942541a4dfbdff3391caa635e8d354d0e87c10ae79cb97aa6d24915f9f193620d763b384baf2e753
diff --git a/sys-apps/smartmontools/files/smartmontools-update-drivedb b/sys-apps/smartmontools/files/smartmontools-update-drivedb
index 831f1e6541b5..270789c53d0a 100644
--- a/sys-apps/smartmontools/files/smartmontools-update-drivedb
+++ b/sys-apps/smartmontools/files/smartmontools-update-drivedb
@@ -1,3 +1,3 @@
#!/bin/sh
-/usr/sbin/update-smart-drivedb
+/usr/sbin/update-smart-drivedb -q
diff --git a/sys-apps/smartmontools/metadata.xml b/sys-apps/smartmontools/metadata.xml
index cb72f5108e40..348e5a01d552 100644
--- a/sys-apps/smartmontools/metadata.xml
+++ b/sys-apps/smartmontools/metadata.xml
@@ -1,16 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="caps">Build against <pkg>sys-libs/libcap-ng</pkg> to allow smartd to drop its privileges.</flag>
- <flag name="daemon">Install the monitoring daemon (smartd) and associated scripts.</flag>
- <flag name="update_drivedb">Install a script to update the drivedb file.</flag>
-</use>
-<upstream>
- <remote-id type="sourceforge">smartmontools</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="caps">Build against <pkg>sys-libs/libcap-ng</pkg> to allow smartd to drop its privileges.</flag>
+ <flag name="daemon">Install the monitoring daemon (smartd) and associated scripts.</flag>
+ <flag name="update-drivedb">Install a script to update the drivedb file.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">smartmontools/smartmontools</remote-id>
+ <remote-id type="sourceforge">smartmontools</remote-id>
+ <remote-id type="cpe">cpe:/a:smartmontools:smartmontools</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/smartmontools/smartmontools-7.1.ebuild b/sys-apps/smartmontools/smartmontools-7.1.ebuild
deleted file mode 100644
index 0b1811bc1f8c..000000000000
--- a/sys-apps/smartmontools/smartmontools-7.1.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit autotools flag-o-matic systemd
-if [[ ${PV} == "9999" ]] ; then
- ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools"
- ESVN_PROJECT="smartmontools"
- inherit subversion
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
-fi
-
-DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation"
-HOMEPAGE="https://www.smartmontools.org"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="caps +daemon selinux static systemd update_drivedb"
-
-DEPEND="
- caps? (
- static? ( sys-libs/libcap-ng[static-libs] )
- !static? ( sys-libs/libcap-ng )
- )
- selinux? (
- sys-libs/libselinux
- )"
-RDEPEND="${DEPEND}
- daemon? ( virtual/mailx )
- selinux? ( sec-policy/selinux-smartmon )
- systemd? ( sys-apps/systemd )
- update_drivedb? (
- app-crypt/gnupg
- || (
- net-misc/curl
- net-misc/wget
- www-client/lynx
- dev-vcs/subversion
- )
- )
-"
-
-REQUIRED_USE="( caps? ( daemon ) )"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- use static && append-ldflags -static
- # The build installs /etc/init.d/smartd, but we clobber it
- # in our src_install, so no need to manually delete it.
- myeconfargs=(
- --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292
- --with-initscriptdir="${EPREFIX}/etc/init.d"
- #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}"
- $(use_with caps libcap-ng)
- $(use_with selinux)
- $(use_with systemd libsystemd)
- $(use_with update_drivedb gnupg)
- $(use_with update_drivedb update-smart-drivedb)
- $(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '')
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- local db_path="/var/db/${PN}"
-
- if use daemon; then
- default
-
- newinitd "${FILESDIR}"/smartd-r1.rc smartd
- newconfd "${FILESDIR}"/smartd.confd smartd
- else
- dosbin smartctl
- doman smartctl.8
-
- local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO )
- einstalldocs
- fi
-
- if use update_drivedb ; then
- if ! use daemon; then
- dosbin "${S}"/update-smart-drivedb
- fi
-
- exeinto /etc/cron.monthly
- doexe "${FILESDIR}/${PN}-update-drivedb"
- fi
-
- if use daemon || use update_drivedb; then
- keepdir "${db_path}"
-
- # Install a copy of the initial drivedb.h to /usr/share/${PN}
- # so that we can access that file later in pkg_postinst
- # even when dealing with binary packages (bug #575292)
- insinto /usr/share/${PN}
- doins "${S}"/drivedb.h
- fi
-
- # Make sure we never install drivedb.h into the db location
- # of the acutal image so we don't record hashes because user
- # can modify that file
- rm -f "${ED%/}${db_path}/drivedb.h" || die
-
- # Bug #622072
- find "${ED%/}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die
-}
-
-pkg_postinst() {
- if use daemon || use update_drivedb; then
- local initial_db_file="${EROOT}/usr/share/${PN}/drivedb.h"
- local db_path="${EROOT}/var/db/${PN}"
-
- if [[ ! -f "${db_path}/drivedb.h" ]] ; then
- # No initial database found
- cp "${initial_db_file}" "${db_path}" || die
- einfo "Default drive database which was shipped with this release of ${PN}"
- einfo "has been installed to '${db_path}'."
- else
- ewarn "WARNING: There's already a drive database in '${db_path}'!"
- ewarn "Because we cannot determine if this database is untouched"
- ewarn "or was modified by the user you have to manually update the"
- ewarn "drive database:"
- ewarn ""
- ewarn "a) Replace '${db_path}/drivedb.h' by the database shipped with this"
- ewarn " release which can be found in '${initial_db_file}', i.e."
- ewarn ""
- ewarn " cp \"${initial_db_file}\" \"${db_path}\""
- ewarn ""
- ewarn "b) Run the following command as root:"
- ewarn ""
- ewarn " /usr/sbin/update-smart-drivedb"
-
- if ! use update_drivedb ; then
- ewarn ""
- ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}"
- ewarn "with USE='update_drivedb'."
- fi
- fi
- fi
-}
diff --git a/sys-apps/smartmontools/smartmontools-7.3.ebuild b/sys-apps/smartmontools/smartmontools-7.3.ebuild
new file mode 100644
index 000000000000..5ad4bb1c967d
--- /dev/null
+++ b/sys-apps/smartmontools/smartmontools-7.3.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic systemd
+if [[ ${PV} == 9999 ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools"
+ ESVN_PROJECT="smartmontools"
+ inherit autotools subversion
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+fi
+
+DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation"
+HOMEPAGE="https://www.smartmontools.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="caps +daemon selinux static systemd +update-drivedb"
+
+DEPEND="
+ caps? (
+ static? ( sys-libs/libcap-ng:=[static-libs] )
+ !static? ( sys-libs/libcap-ng:= )
+ )
+ selinux? (
+ sys-libs/libselinux:=
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ daemon? ( virtual/mailx )
+ selinux? ( sec-policy/selinux-smartmon )
+ systemd? ( sys-apps/systemd )
+ update-drivedb? (
+ app-crypt/gnupg
+ || (
+ net-misc/curl
+ net-misc/wget
+ www-client/lynx
+ dev-vcs/subversion
+ )
+ )
+"
+
+REQUIRED_USE="(
+ caps? ( daemon )
+ static? ( !systemd )
+)"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ # The build installs /etc/init.d/smartd, but we clobber it
+ # in our src_install, so no need to manually delete it.
+ myeconfargs=(
+ --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292
+ --with-initscriptdir="${EPREFIX}/etc/init.d"
+ #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}"
+ $(use_with caps libcap-ng)
+ $(use_with selinux)
+ $(use_with systemd libsystemd)
+ $(use_with update-drivedb gnupg)
+ $(use_with update-drivedb update-smart-drivedb)
+ $(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '')
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local db_path="/var/db/${PN}"
+ insopts -m0644 -p # preserve timestamps
+
+ if use daemon; then
+ default
+
+ newinitd "${FILESDIR}"/smartd-r1.rc smartd
+ newconfd "${FILESDIR}"/smartd.confd smartd
+ else
+ dosbin smartctl
+ doman smartctl.8
+
+ local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO )
+ einstalldocs
+ fi
+
+ if use update-drivedb ; then
+ if ! use daemon; then
+ dosbin "${S}"/update-smart-drivedb
+ fi
+
+ exeinto /etc/cron.monthly
+ doexe "${FILESDIR}/${PN}-update-drivedb"
+ fi
+
+ if use daemon || use update-drivedb; then
+ keepdir "${db_path}"
+
+ # Install a copy of the initial drivedb.h to /usr/share/${PN}
+ # so that we can access that file later in pkg_postinst
+ # even when dealing with binary packages (bug #575292)
+ insinto /usr/share/${PN}
+ doins "${S}"/drivedb.h
+ fi
+
+ # Make sure we never install drivedb.h into the db location
+ # of the acutal image so we don't record hashes because user
+ # can modify that file
+ rm -f "${ED}${db_path}/drivedb.h" || die
+
+ # Bug #622072
+ find "${ED}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die
+}
+
+pkg_postinst() {
+ if use daemon || use update-drivedb; then
+ local initial_db_file="${EROOT}/usr/share/${PN}/drivedb.h"
+ local db_path="${EROOT}/var/db/${PN}"
+
+ if [[ ! -f "${db_path}/drivedb.h" ]] ; then
+ # No initial database found
+ cp "${initial_db_file}" "${db_path}" || die
+ einfo "Default drive database which was shipped with this release of ${PN}"
+ einfo "has been installed to '${db_path}'."
+ else
+ ewarn "WARNING: There's already a drive database in '${db_path}'!"
+ ewarn "Because we cannot determine if this database is untouched"
+ ewarn "or was modified by the user you have to manually update the"
+ ewarn "drive database:"
+ ewarn ""
+ ewarn "a) Replace '${db_path}/drivedb.h' by the database shipped with this"
+ ewarn " release which can be found in '${initial_db_file}', i.e."
+ ewarn ""
+ ewarn " cp \"${initial_db_file}\" \"${db_path}\""
+ ewarn ""
+ ewarn "b) Run the following command as root:"
+ ewarn ""
+ ewarn " /usr/sbin/update-smart-drivedb"
+
+ if ! use update-drivedb ; then
+ ewarn ""
+ ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}"
+ ewarn "with USE='update-drivedb'."
+ fi
+ fi
+ fi
+}
diff --git a/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild b/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild
new file mode 100644
index 000000000000..406fd096926b
--- /dev/null
+++ b/sys-apps/smartmontools/smartmontools-7.4-r1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd
+if [[ ${PV} == 9999 ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools"
+ ESVN_PROJECT="smartmontools"
+ inherit autotools subversion
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+fi
+
+DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation"
+HOMEPAGE="https://www.smartmontools.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="caps +daemon selinux static systemd +update-drivedb"
+
+DEPEND="
+ caps? (
+ static? ( sys-libs/libcap-ng:=[static-libs] )
+ !static? ( sys-libs/libcap-ng:= )
+ )
+ selinux? (
+ sys-libs/libselinux:=
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ daemon? ( virtual/mailx )
+ selinux? ( sec-policy/selinux-smartmon )
+ systemd? ( sys-apps/systemd )
+ update-drivedb? (
+ app-crypt/gnupg
+ || (
+ net-misc/curl
+ net-misc/wget
+ www-client/lynx
+ dev-vcs/subversion
+ )
+ )
+"
+
+REQUIRED_USE="(
+ caps? ( daemon )
+ static? ( !systemd )
+)"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ # The build installs /etc/init.d/smartd, but we clobber it
+ # in our src_install, so no need to manually delete it.
+ myeconfargs=(
+ --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292
+ --with-initscriptdir="${EPREFIX}/etc/init.d"
+ #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}"
+ --with-systemdenvfile=no
+ $(use_with caps libcap-ng)
+ $(use_with selinux)
+ $(use_with systemd libsystemd)
+ $(use_with update-drivedb gnupg)
+ $(use_with update-drivedb update-smart-drivedb)
+ $(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '')
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local db_path="/var/db/${PN}"
+ insopts -m0644 -p # preserve timestamps
+
+ if use daemon; then
+ default
+
+ newinitd "${FILESDIR}"/smartd-r1.rc smartd
+ newconfd "${FILESDIR}"/smartd.confd smartd
+ else
+ dosbin smartctl
+ doman smartctl.8
+
+ local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO )
+ einstalldocs
+ fi
+
+ if use update-drivedb ; then
+ if ! use daemon; then
+ dosbin "${S}"/update-smart-drivedb
+ fi
+
+ exeinto /etc/cron.monthly
+ doexe "${FILESDIR}/${PN}-update-drivedb"
+ fi
+
+ if use daemon || use update-drivedb; then
+ keepdir "${db_path}"
+
+ # Install a copy of the initial drivedb.h to /usr/share/${PN}
+ # so that we can access that file later in pkg_postinst
+ # even when dealing with binary packages (bug #575292)
+ insinto /usr/share/${PN}
+ doins "${S}"/drivedb.h
+ fi
+
+ # Make sure we never install drivedb.h into the db location
+ # of the actual image so we don't record hashes because user
+ # can modify that file
+ rm -f "${ED}${db_path}/drivedb.h" || die
+
+ # Bug #622072
+ find "${ED}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die
+}
+
+pkg_postinst() {
+ if use daemon || use update-drivedb; then
+ local initial_db_file="${EROOT}/usr/share/${PN}/drivedb.h"
+ local db_path="${EROOT}/var/db/${PN}"
+
+ if [[ ! -f "${db_path}/drivedb.h" ]] ; then
+ # No initial database found
+ cp "${initial_db_file}" "${db_path}" || die
+ einfo "Default drive database which was shipped with this release of ${PN}"
+ einfo "has been installed to '${db_path}'."
+ else
+ ewarn "WARNING: There's already a drive database in '${db_path}'!"
+ ewarn "Because we cannot determine if this database is untouched"
+ ewarn "or was modified by the user you have to manually update the"
+ ewarn "drive database:"
+ ewarn ""
+ ewarn "a) Replace '${db_path}/drivedb.h' by the database shipped with this"
+ ewarn " release which can be found in '${initial_db_file}', i.e."
+ ewarn ""
+ ewarn " cp \"${initial_db_file}\" \"${db_path}\""
+ ewarn ""
+ ewarn "b) Run the following command as root:"
+ ewarn ""
+ ewarn " /usr/sbin/update-smart-drivedb"
+
+ if ! use update-drivedb ; then
+ ewarn ""
+ ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}"
+ ewarn "with USE='update-drivedb'."
+ fi
+ fi
+ fi
+}
diff --git a/sys-apps/smartmontools/smartmontools-7.4.ebuild b/sys-apps/smartmontools/smartmontools-7.4.ebuild
new file mode 100644
index 000000000000..d56f94550d54
--- /dev/null
+++ b/sys-apps/smartmontools/smartmontools-7.4.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic systemd
+if [[ ${PV} == 9999 ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools"
+ ESVN_PROJECT="smartmontools"
+ inherit autotools subversion
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+fi
+
+DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation"
+HOMEPAGE="https://www.smartmontools.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="caps +daemon selinux static systemd +update-drivedb"
+
+DEPEND="
+ caps? (
+ static? ( sys-libs/libcap-ng:=[static-libs] )
+ !static? ( sys-libs/libcap-ng:= )
+ )
+ selinux? (
+ sys-libs/libselinux:=
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ daemon? ( virtual/mailx )
+ selinux? ( sec-policy/selinux-smartmon )
+ systemd? ( sys-apps/systemd )
+ update-drivedb? (
+ app-crypt/gnupg
+ || (
+ net-misc/curl
+ net-misc/wget
+ www-client/lynx
+ dev-vcs/subversion
+ )
+ )
+"
+
+REQUIRED_USE="(
+ caps? ( daemon )
+ static? ( !systemd )
+)"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ # The build installs /etc/init.d/smartd, but we clobber it
+ # in our src_install, so no need to manually delete it.
+ myeconfargs=(
+ --with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292
+ --with-initscriptdir="${EPREFIX}/etc/init.d"
+ #--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}"
+ $(use_with caps libcap-ng)
+ $(use_with selinux)
+ $(use_with systemd libsystemd)
+ $(use_with update-drivedb gnupg)
+ $(use_with update-drivedb update-smart-drivedb)
+ $(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '')
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local db_path="/var/db/${PN}"
+ insopts -m0644 -p # preserve timestamps
+
+ if use daemon; then
+ default
+
+ newinitd "${FILESDIR}"/smartd-r1.rc smartd
+ newconfd "${FILESDIR}"/smartd.confd smartd
+ else
+ dosbin smartctl
+ doman smartctl.8
+
+ local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO )
+ einstalldocs
+ fi
+
+ if use update-drivedb ; then
+ if ! use daemon; then
+ dosbin "${S}"/update-smart-drivedb
+ fi
+
+ exeinto /etc/cron.monthly
+ doexe "${FILESDIR}/${PN}-update-drivedb"
+ fi
+
+ if use daemon || use update-drivedb; then
+ keepdir "${db_path}"
+
+ # Install a copy of the initial drivedb.h to /usr/share/${PN}
+ # so that we can access that file later in pkg_postinst
+ # even when dealing with binary packages (bug #575292)
+ insinto /usr/share/${PN}
+ doins "${S}"/drivedb.h
+ fi
+
+ # Make sure we never install drivedb.h into the db location
+ # of the acutal image so we don't record hashes because user
+ # can modify that file
+ rm -f "${ED}${db_path}/drivedb.h" || die
+
+ # Bug #622072
+ find "${ED}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die
+}
+
+pkg_postinst() {
+ if use daemon || use update-drivedb; then
+ local initial_db_file="${EROOT}/usr/share/${PN}/drivedb.h"
+ local db_path="${EROOT}/var/db/${PN}"
+
+ if [[ ! -f "${db_path}/drivedb.h" ]] ; then
+ # No initial database found
+ cp "${initial_db_file}" "${db_path}" || die
+ einfo "Default drive database which was shipped with this release of ${PN}"
+ einfo "has been installed to '${db_path}'."
+ else
+ ewarn "WARNING: There's already a drive database in '${db_path}'!"
+ ewarn "Because we cannot determine if this database is untouched"
+ ewarn "or was modified by the user you have to manually update the"
+ ewarn "drive database:"
+ ewarn ""
+ ewarn "a) Replace '${db_path}/drivedb.h' by the database shipped with this"
+ ewarn " release which can be found in '${initial_db_file}', i.e."
+ ewarn ""
+ ewarn " cp \"${initial_db_file}\" \"${db_path}\""
+ ewarn ""
+ ewarn "b) Run the following command as root:"
+ ewarn ""
+ ewarn " /usr/sbin/update-smart-drivedb"
+
+ if ! use update-drivedb ; then
+ ewarn ""
+ ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}"
+ ewarn "with USE='update-drivedb'."
+ fi
+ fi
+ fi
+}
diff --git a/sys-apps/smartmontools/smartmontools-9999.ebuild b/sys-apps/smartmontools/smartmontools-9999.ebuild
index 9c4544209c16..e1f1f30e6d30 100644
--- a/sys-apps/smartmontools/smartmontools-9999.ebuild
+++ b/sys-apps/smartmontools/smartmontools-9999.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="6"
+EAPI=8
-inherit autotools flag-o-matic systemd
-if [[ ${PV} == "9999" ]] ; then
+inherit flag-o-matic systemd
+if [[ ${PV} == 9999 ]] ; then
ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools"
ESVN_PROJECT="smartmontools"
- inherit subversion
+ inherit autotools subversion
else
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
fi
DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation"
@@ -18,21 +18,23 @@ HOMEPAGE="https://www.smartmontools.org"
LICENSE="GPL-2"
SLOT="0"
-IUSE="caps +daemon selinux static systemd update_drivedb"
+IUSE="caps +daemon selinux static systemd +update-drivedb"
DEPEND="
caps? (
- static? ( sys-libs/libcap-ng[static-libs] )
- !static? ( sys-libs/libcap-ng )
+ static? ( sys-libs/libcap-ng:=[static-libs] )
+ !static? ( sys-libs/libcap-ng:= )
)
selinux? (
- sys-libs/libselinux
- )"
-RDEPEND="${DEPEND}
+ sys-libs/libselinux:=
+ )
+"
+RDEPEND="
+ ${DEPEND}
daemon? ( virtual/mailx )
selinux? ( sec-policy/selinux-smartmon )
systemd? ( sys-apps/systemd )
- update_drivedb? (
+ update-drivedb? (
app-crypt/gnupg
|| (
net-misc/curl
@@ -43,11 +45,17 @@ RDEPEND="${DEPEND}
)
"
-REQUIRED_USE="( caps? ( daemon ) )"
+REQUIRED_USE="(
+ caps? ( daemon )
+ static? ( !systemd )
+)"
src_prepare() {
default
- eautoreconf
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautoreconf
+ fi
}
src_configure() {
@@ -58,11 +66,12 @@ src_configure() {
--with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292
--with-initscriptdir="${EPREFIX}/etc/init.d"
#--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}"
+ --with-systemdenvfile=no
$(use_with caps libcap-ng)
$(use_with selinux)
$(use_with systemd libsystemd)
- $(use_with update_drivedb gnupg)
- $(use_with update_drivedb update-smart-drivedb)
+ $(use_with update-drivedb gnupg)
+ $(use_with update-drivedb update-smart-drivedb)
$(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '')
)
econf "${myeconfargs[@]}"
@@ -70,6 +79,7 @@ src_configure() {
src_install() {
local db_path="/var/db/${PN}"
+ insopts -m0644 -p # preserve timestamps
if use daemon; then
default
@@ -84,7 +94,7 @@ src_install() {
einstalldocs
fi
- if use update_drivedb ; then
+ if use update-drivedb ; then
if ! use daemon; then
dosbin "${S}"/update-smart-drivedb
fi
@@ -93,7 +103,7 @@ src_install() {
doexe "${FILESDIR}/${PN}-update-drivedb"
fi
- if use daemon || use update_drivedb; then
+ if use daemon || use update-drivedb; then
keepdir "${db_path}"
# Install a copy of the initial drivedb.h to /usr/share/${PN}
@@ -104,16 +114,16 @@ src_install() {
fi
# Make sure we never install drivedb.h into the db location
- # of the acutal image so we don't record hashes because user
+ # of the actual image so we don't record hashes because user
# can modify that file
- rm -f "${ED%/}${db_path}/drivedb.h" || die
+ rm -f "${ED}${db_path}/drivedb.h" || die
# Bug #622072
- find "${ED%/}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die
+ find "${ED}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die
}
pkg_postinst() {
- if use daemon || use update_drivedb; then
+ if use daemon || use update-drivedb; then
local initial_db_file="${EROOT}/usr/share/${PN}/drivedb.h"
local db_path="${EROOT}/var/db/${PN}"
@@ -137,10 +147,10 @@ pkg_postinst() {
ewarn ""
ewarn " /usr/sbin/update-smart-drivedb"
- if ! use update_drivedb ; then
+ if ! use update-drivedb ; then
ewarn ""
ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}"
- ewarn "with USE='update_drivedb'."
+ ewarn "with USE='update-drivedb'."
fi
fi
fi
diff --git a/sys-apps/smc-sum-driver/Manifest b/sys-apps/smc-sum-driver/Manifest
deleted file mode 100644
index 75709223439a..000000000000
--- a/sys-apps/smc-sum-driver/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sum_driver_V1.6.0_20151201.tar.gz 1423921 BLAKE2B 76e2439148749b708a51e0d9c95545b53762f03793e6b2ea6e63e9f79aaad77432f728e94713e0cfd4085e8b090b6e0ff8e779e2627764e71794453cb7e02b49 SHA512 809fdf164e29aabde74306d966de7e07488d8dacc01963b56486477f23bdf3a469d059bc5d302aedbfd4b8dc854a82357747add2626cc22d0ab3898c7bc0a625
diff --git a/sys-apps/smc-sum-driver/metadata.xml b/sys-apps/smc-sum-driver/metadata.xml
deleted file mode 100644
index 1e4e3f71251c..000000000000
--- a/sys-apps/smc-sum-driver/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>conikost@gentoo.org</email>
- <name>Conrad Kostecki</name>
- </maintainer>
- <longdescription>
- This is the kernel module for the Supermicro Update Manager (SUM).
- It's needed to access specific low level elements, like BIOS.
- Supermicro SuperDoctor5 will also need this kernel module.
- </longdescription>
-</pkgmetadata>
diff --git a/sys-apps/smc-sum-driver/smc-sum-driver-1.6.0.20151201-r4.ebuild b/sys-apps/smc-sum-driver/smc-sum-driver-1.6.0.20151201-r4.ebuild
deleted file mode 100644
index 7b9e68795b4a..000000000000
--- a/sys-apps/smc-sum-driver/smc-sum-driver-1.6.0.20151201-r4.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit linux-mod
-
-MY_DATE="$(ver_cut 4)"
-MY_PN="${PN//-/_}"
-MY_PV="$(ver_cut 1-3)"
-MY_P="${MY_PN/smc_/}_V${MY_PV}"
-
-DESCRIPTION="Supermicro Update Manager (SUM) kernel module"
-HOMEPAGE="https://www.supermicro.com"
-SRC_URI="${MY_P}_${MY_DATE}.tar.gz"
-
-KEYWORDS="-* ~amd64 ~x86"
-LICENSE="supermicro"
-SLOT="0"
-
-RESTRICT="bindist fetch mirror"
-
-S="${WORKDIR}"/${MY_P}/Linux
-
-BUILD_TARGETS="default"
-MODULE_NAMES="sum_bios(misc:${S})"
-
-pkg_nofetch() {
- elog "Please contact the Supermicro support at support@supermicro.com,"
- elog "in order to obtain a copy of ${A}"
- elog "and place it in your DISTDIR directory."
-}
-
-src_prepare() {
- default
-
- # Install new Makefile to respect users CFLAGS and LDFLAGS
- cp "${FILESDIR}"/makefile Makefile || die
-}
-
-src_compile() {
- BUILD_PARAMS="KDIR=${KV_OUT_DIR} M=${S}"
-
- linux-mod_src_compile
-}
diff --git a/sys-apps/smc-sum/Manifest b/sys-apps/smc-sum/Manifest
index d503ad6fb3b0..7091f250ba3c 100644
--- a/sys-apps/smc-sum/Manifest
+++ b/sys-apps/smc-sum/Manifest
@@ -1 +1 @@
-DIST sum_2.5.0_Linux_x86_64_20200722.tar.gz 11280455 BLAKE2B 5c25c2b35b6d82b1d3c856e97f1669e92ecb3406188398ee29cca44e44bb30e651fe9db7a39c93a78375b3021d5836e8d92b680b07ead0892f588f6ec9a03454 SHA512 af99c3fef1436d1ef97fbd03c619d0f4e1eea9afd00d03c905cf92a5ec826b1a5aec1ae2a2f69fa406eee91d5bed4bd2fcd3935243dc6dbae4efe04e0dcdff21
+DIST sum_2.14.0_Linux_x86_64_20240215.tar.gz 21137186 BLAKE2B af6ebcefd73cdf6f71bd3ea17e631845c8d873939517520ba3f7b66811011d4101907b808832f63baa442dd219da78fe6d4bb658ea8a72da2e949a717412179d SHA512 6e29bbc06cdd7369362608fc56271c72422e0a69d061c3058153fe1fcc642d643639dc8ce9d3773abf53ab4df8d409f55c00d8fd5b5096d63585e0210a2e741a
diff --git a/sys-apps/smc-sum-driver/files/makefile b/sys-apps/smc-sum/files/makefile
index 35564dcc8fec..35564dcc8fec 100644
--- a/sys-apps/smc-sum-driver/files/makefile
+++ b/sys-apps/smc-sum/files/makefile
diff --git a/sys-apps/smc-sum/files/smc-sum-2.13.0.20230825-kernel-6.4.patch b/sys-apps/smc-sum/files/smc-sum-2.13.0.20230825-kernel-6.4.patch
new file mode 100644
index 000000000000..072251fdcb7a
--- /dev/null
+++ b/sys-apps/smc-sum/files/smc-sum-2.13.0.20230825-kernel-6.4.patch
@@ -0,0 +1,15 @@
+--- a/driver/Source/Linux/sum_bios.c
++++ b/driver/Source/Linux/sum_bios.c
+@@ -345,8 +345,12 @@
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 13)
+ sum_bios_class = class_simple_create(THIS_MODULE, "sum_bios");
+ #else
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0)
++ sum_bios_class = class_create("sum_bios");
++#else
+ sum_bios_class = class_create(THIS_MODULE, "sum_bios");
+ #endif
++#endif
+
+ if (IS_ERR(sum_bios_class)) {
+ printk(KERN_ERR "Error creating sum bios class.\n");
diff --git a/sys-apps/smc-sum/files/smc-sum-2.7.0.20210903-missing-include.patch b/sys-apps/smc-sum/files/smc-sum-2.7.0.20210903-missing-include.patch
new file mode 100644
index 000000000000..6e392e433173
--- /dev/null
+++ b/sys-apps/smc-sum/files/smc-sum-2.7.0.20210903-missing-include.patch
@@ -0,0 +1,10 @@
+--- a/driver/Source/Linux/sum_bios.c
++++ b/driver/Source/Linux/sum_bios.c
+@@ -12,6 +12,7 @@
+ #include <linux/fs.h>
+ #include <linux/gfp.h>
+ #include <linux/init.h>
++#include <linux/io.h>
+ #include <linux/major.h>
+ #include <linux/module.h>
+ #include <linux/smp.h>
diff --git a/sys-apps/smc-sum/metadata.xml b/sys-apps/smc-sum/metadata.xml
index 80a8eba76e4c..b61e9962e100 100644
--- a/sys-apps/smc-sum/metadata.xml
+++ b/sys-apps/smc-sum/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/smc-sum/smc-sum-2.14.0.20240215.ebuild b/sys-apps/smc-sum/smc-sum-2.14.0.20240215.ebuild
new file mode 100644
index 000000000000..02f039c2ca2b
--- /dev/null
+++ b/sys-apps/smc-sum/smc-sum-2.14.0.20240215.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MODULES_OPTIONAL_IUSE="+module"
+
+inherit linux-mod-r1
+
+MY_DATE="$(ver_cut 4)"
+MY_PN="${PN/smc-/}"
+MY_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Updates the BIOS and IPMI firmware and system settings on Supermicro mainboards"
+HOMEPAGE="https://www.supermicro.com"
+SRC_URI="https://www.supermicro.com/Bios/sw_download/698/${MY_PN}_${MY_PV}_Linux_x86_64_${MY_DATE}.tar.gz"
+S="${WORKDIR}/${MY_PN}_${MY_PV}_Linux_x86_64"
+
+LICENSE="supermicro"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="module"
+
+RDEPEND="
+ sys-libs/zlib
+ sys-power/iasl
+"
+
+RESTRICT="bindist mirror"
+
+DOCS=(
+ "PlatformFeatureSupportMatrix.pdf"
+ "ReleaseNote.txt"
+ "SUM_UserGuide.pdf"
+ "sumrc.sample"
+ "ExternalData/SMCIPID.txt"
+ "ExternalData/VENID.txt"
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.7.0.20210903-missing-include.patch"
+ "${FILESDIR}/${PN}-2.13.0.20230825-kernel-6.4.patch"
+)
+
+QA_PREBUILT="usr/bin/smc-sum"
+
+src_prepare() {
+ default
+
+ # Install new Makefile to respect users CFLAGS and LDFLAGS
+ cp "${FILESDIR}"/makefile driver/Source/Linux/Makefile || die
+
+ linux-mod-r1_pkg_setup
+}
+
+src_compile() {
+ local modargs=( KDIR="${KV_OUT_DIR}" )
+ local modlist=( sum_bios="misc:driver/Source/Linux" )
+
+ linux-mod-r1_src_compile
+}
+
+src_install() {
+ newbin sum smc-sum
+ einstalldocs
+
+ linux-mod-r1_src_install
+}
diff --git a/sys-apps/smc-sum/smc-sum-2.5.0.20200722.ebuild b/sys-apps/smc-sum/smc-sum-2.5.0.20200722.ebuild
deleted file mode 100644
index 07ffd44db9d6..000000000000
--- a/sys-apps/smc-sum/smc-sum-2.5.0.20200722.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_DATE="$(ver_cut 4)"
-MY_PN="${PN/smc-/}"
-MY_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="Updates the BIOS and IPMI firmware and system settings on Supermicro mainboards"
-HOMEPAGE="https://www.supermicro.com"
-SRC_URI="${MY_PN}_${MY_PV}_Linux_x86_64_${MY_DATE}.tar.gz"
-
-LICENSE="supermicro"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-IUSE="module"
-
-RDEPEND="module? ( sys-apps/smc-sum-driver )"
-
-RESTRICT="bindist fetch mirror"
-
-S="${WORKDIR}/${MY_PN}_${MY_PV}_Linux_x86_64"
-
-DOCS=( "ReleaseNote.txt" "SUM_UserGuide.pdf" "sumrc.sample" "ExternalData/SMCIPID.txt" "ExternalData/VENID.txt" )
-
-QA_PREBUILT="usr/bin/smc-sum"
-
-pkg_nofetch() {
- elog "Please download ${A} from"
- elog "https://www.supermicro.com/SwDownload/UserInfo.aspx?sw=0&cat=SUM"
- elog "and place it in your DISTDIR directory."
-}
-
-src_install() {
- newbin sum smc-sum
-
- einstalldocs
-}
diff --git a/sys-apps/smcipmitool/Manifest b/sys-apps/smcipmitool/Manifest
index 3de8e46b8947..191dfe13a122 100644
--- a/sys-apps/smcipmitool/Manifest
+++ b/sys-apps/smcipmitool/Manifest
@@ -1 +1 @@
-DIST SMCIPMITool_2.23.0_build.191216_bundleJRE_Linux_x64.tar.gz 78810880 BLAKE2B fa4d0c7ed8cd7fb8b03847b30d22b4c70d74402be50ef217b237a0ba786e264a0832533476db5523cf3ce9a88c2191cbc9ff32d54911dfca54ff8835268f0efd SHA512 7770a1ec468934e1ac89612e77092f83ce91822326279afedcc5da9b5cdd84193e8077b87441c79253e366bde6f1ef3756ff35ff7fce8bc1759bb889ab8b082b
+DIST SMCIPMITool_2.27.2_build.230221_bundleJRE_Linux_x64.tar.gz 124521177 BLAKE2B b4bd8f81308a1718b7b9a64bf53a550ac021129d84848ea4e14371315bcca7acb45f8b0817f774970d537090815ff5718e64d6d9c69818145e260c8b7d6db96f SHA512 8d664a5420efe052b441f91b1562b5f2bb86238a45d99bd5a9659aeb23493a2f7f55bea200e97eecc846d454d19f8e6e99ebfac2a50e99ef61eedcbefcaad37e
diff --git a/sys-apps/smcipmitool/metadata.xml b/sys-apps/smcipmitool/metadata.xml
index 3e3880cf1051..c07e13d4a6bd 100644
--- a/sys-apps/smcipmitool/metadata.xml
+++ b/sys-apps/smcipmitool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/smcipmitool/smcipmitool-2.23.0.191216.ebuild b/sys-apps/smcipmitool/smcipmitool-2.23.0.191216.ebuild
deleted file mode 100644
index 279c66adc7f2..000000000000
--- a/sys-apps/smcipmitool/smcipmitool-2.23.0.191216.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 prefix
-
-MY_DATE="$(ver_cut 4)"
-MY_PN="SMCIPMITool"
-MY_PN_SRC_URI="SMCIPMItool"
-MY_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="An out-of-band utility for interfacing with SuperBlade and IPMI devices via CLI"
-HOMEPAGE="https://www.supermicro.com/"
-SRC_URI="https://www.supermicro.com/wftp/utility/${MY_PN_SRC_URI}/Linux/${MY_PN}_${MY_PV}_build.${MY_DATE}_bundleJRE_Linux_x64.tar.gz"
-
-LICENSE="supermicro"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-
-RDEPEND="
- net-misc/stunnel
- sys-libs/ncurses-compat:5
- virtual/jre:1.8
-"
-
-RESTRICT="bindist mirror"
-
-DIR="/usr/share/${PN}"
-QA_PREBUILT="usr/lib*"
-
-src_unpack() {
- unpack ${A}
- mv -v ${MY_PN}_${MY_PV}_build.${MY_DATE}_bundleJRE_Linux_x64 ${P} || die
-}
-
-src_prepare() {
- default
-
- # Don't use their scary launchers
- rm -v lax.jar || die
-}
-
-src_compile() {
- :
-}
-
-src_install() {
- java-pkg_dojar *.jar
- java-pkg_doso libjcurses.so *64.so
-
- local pre=$(prefixify_ro "${FILESDIR}"/launcher-pre.bash)
- java-pkg_dolauncher smcipmitool-ikvm --jar iKVM.jar -pre "${pre}"
- java-pkg_dolauncher smcipmitool-jviewersmc --jar JViewerSMC.jar -pre "${pre}"
- java-pkg_dolauncher smcipmitool-jviewerx9 --jar JViewerX9.jar -pre "${pre}"
- java-pkg_dolauncher smcipmitool --jar SMCIPMITool.jar -pre "${pre}"
-
- exeinto "${DIR}"/jre/bin
- newexe $(prefixify_ro "${FILESDIR}"/fake-java.bash) java
-
- insinto "${DIR}"/lib/BMCSecurity
- doins BMCSecurity/*.{crt,key,pem,txt}
-
- insinto "${DIR}"/lib/BMCSecurity/linux
- doins BMCSecurity/linux/stunnel.conf
-
- dosym ../../../../../bin/stunnel "${DIR}"/lib/BMCSecurity/linux/stunnel32
- dosym ../../../../../bin/stunnel "${DIR}"/lib/BMCSecurity/linux/stunnel64
-
- local DOCS=(
- "jcurses.README"
- "ReleaseNotes.txt"
- "SMCIPMITool_User_Guide.pdf"
- )
-
- einstalldocs
-}
diff --git a/sys-apps/smcipmitool/smcipmitool-2.27.2.230221.ebuild b/sys-apps/smcipmitool/smcipmitool-2.27.2.230221.ebuild
new file mode 100644
index 000000000000..f0d85446c2c2
--- /dev/null
+++ b/sys-apps/smcipmitool/smcipmitool-2.27.2.230221.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2 prefix
+
+MY_DATE="$(ver_cut 4)"
+MY_PN="SMCIPMITool"
+MY_PN_SRC_URI="SMCIPMItool"
+MY_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="An out-of-band utility for interfacing with SuperBlade and IPMI devices via CLI"
+HOMEPAGE="https://www.supermicro.com/"
+SRC_URI="https://www.supermicro.com/Bios/sw_download/549/${MY_PN}_${MY_PV}_build.${MY_DATE}_bundleJRE_Linux_x64.tar.gz"
+
+LICENSE="supermicro"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+RDEPEND="
+ net-misc/stunnel
+ sys-libs/ncurses-compat:5
+ virtual/jre:1.8
+"
+
+RESTRICT="bindist mirror"
+
+DIR="/usr/share/${PN}"
+QA_PREBUILT="usr/lib*"
+
+src_unpack() {
+ unpack ${A}
+ mv -v ${MY_PN}_${MY_PV}_build.${MY_DATE}_bundleJRE_Linux_x64 ${P} || die
+}
+
+src_prepare() {
+ default
+
+ # Don't use their scary launchers
+ rm -v lax.jar || die
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ java-pkg_dojar *.jar
+ java-pkg_doso *64.so
+
+ local pre=$(prefixify_ro "${FILESDIR}"/launcher-pre.bash)
+ java-pkg_dolauncher smcipmitool-ikvm --jar iKVM.jar -pre "${pre}"
+ java-pkg_dolauncher smcipmitool-jviewersmc --jar JViewerSMC.jar -pre "${pre}"
+ java-pkg_dolauncher smcipmitool-jviewerx9 --jar JViewerX9.jar -pre "${pre}"
+ java-pkg_dolauncher smcipmitool --jar SMCIPMITool.jar -pre "${pre}"
+
+ exeinto "${DIR}"/jre/bin
+ newexe $(prefixify_ro "${FILESDIR}"/fake-java.bash) java
+
+ insinto "${DIR}"/lib/BMCSecurity
+ doins BMCSecurity/*.{crt,key,pem,txt}
+
+ insinto "${DIR}"/lib/BMCSecurity/linux
+ doins BMCSecurity/linux/stunnel.conf
+
+ dosym ../../../../../bin/stunnel "${DIR}"/lib/BMCSecurity/linux/stunnel32
+ dosym ../../../../../bin/stunnel "${DIR}"/lib/BMCSecurity/linux/stunnel64
+
+ local DOCS=(
+ "jcurses.README"
+ "ReleaseNotes.txt"
+ "SMCIPMITool_User_Guide.pdf"
+ )
+
+ einstalldocs
+}
diff --git a/sys-apps/sparc-utils/metadata.xml b/sys-apps/sparc-utils/metadata.xml
index 7847744ddeea..7b5f5e8cadd9 100644
--- a/sys-apps/sparc-utils/metadata.xml
+++ b/sys-apps/sparc-utils/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sparc@gentoo.org</email>
- <name>Sparc Team</name>
+ <name>SPARC architecture team</name>
</maintainer>
<longdescription>
sparc-utils is a set of utilities from Debian GNU/Linux that includes;
diff --git a/sys-apps/sparc-utils/sparc-utils-1.9-r6.ebuild b/sys-apps/sparc-utils/sparc-utils-1.9-r6.ebuild
deleted file mode 100644
index 3aec8e00f8eb..000000000000
--- a/sys-apps/sparc-utils/sparc-utils-1.9-r6.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils toolchain-funcs
-
-DESCRIPTION="Various sparc utilities from Debian GNU/Linux"
-HOMEPAGE="https://packages.debian.org/sparc-utils"
-SRC_URI="mirror://debian/pool/main/s/${PN}/${PN}_${PV}.orig.tar.gz
- mirror://debian/pool/main/s/${PN}/${PN}_${PV}-4.diff.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* sparc"
-IUSE=""
-
-DEPEND="virtual/os-headers"
-RDEPEND=">=sys-apps/util-linux-2.13-r1"
-
-S=${WORKDIR}/${P}.orig
-
-PATCHES=(
- "${WORKDIR}/${PN}_${PV}-4.diff"
- "${FILESDIR}"/${P}-no-implicit.patch
- "${FILESDIR}"/elftoaout-2.3-64bit_fixes-1.patch
-)
-
-src_compile() {
- emake -C elftoaout-2.3 \
- CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
- emake -C src piggyback piggyback64 \
- CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
- emake -C prtconf-1.3 all \
- CC="$(tc-getCC)"
-}
-
-src_install() {
- # since the debian/piggyback64.1 manpage is a pointer to the
- # debian/piggyback.1 manpage, copy debian/piggyback.1 to
- # debian/piggyback64.1
-
- cp "${S}"/debian/piggyback.1 "${S}"/debian/piggyback64.1 || die
-
- dobin elftoaout-2.3/elftoaout
- dobin src/piggyback
- dobin src/piggyback64
- dosbin prtconf-1.3/prtconf
- dosbin prtconf-1.3/eeprom
-
- doman elftoaout-2.3/elftoaout.1
- doman prtconf-1.3/prtconf.8
- doman prtconf-1.3/eeprom.8
- doman debian/piggyback.1
- doman debian/piggyback64.1
-}
-
-pkg_postinst() {
- ewarn "In order to have /usr/sbin/eeprom, make sure you build /dev/openprom"
- ewarn "device support (CONFIG_SUN_OPENPROMIO) into the kernel, or as a"
- ewarn "module (and that the module is loaded)."
-}
diff --git a/sys-apps/sparc-utils/sparc-utils-1.9-r7.ebuild b/sys-apps/sparc-utils/sparc-utils-1.9-r7.ebuild
new file mode 100644
index 000000000000..616cb65f473b
--- /dev/null
+++ b/sys-apps/sparc-utils/sparc-utils-1.9-r7.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Various sparc utilities from Debian GNU/Linux"
+HOMEPAGE="https://packages.debian.org/sparc-utils"
+SRC_URI="mirror://debian/pool/main/s/${PN}/${PN}_${PV}.orig.tar.gz
+ mirror://debian/pool/main/s/${PN}/${PN}_${PV}-4.diff.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* sparc"
+IUSE=""
+
+DEPEND="virtual/os-headers"
+RDEPEND=">=sys-apps/util-linux-2.13-r1"
+
+S=${WORKDIR}/${P}.orig
+
+PATCHES=(
+ "${WORKDIR}/${PN}_${PV}-4.diff"
+ "${FILESDIR}"/${P}-no-implicit.patch
+ "${FILESDIR}"/elftoaout-2.3-64bit_fixes-1.patch
+)
+
+src_compile() {
+ emake -C elftoaout-2.3 \
+ CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
+ emake -C src piggyback piggyback64 \
+ CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
+ emake -C prtconf-1.3 all \
+ CC="$(tc-getCC)"
+}
+
+src_install() {
+ # since the debian/piggyback64.1 manpage is a pointer to the
+ # debian/piggyback.1 manpage, copy debian/piggyback.1 to
+ # debian/piggyback64.1
+
+ cp "${S}"/debian/piggyback.1 "${S}"/debian/piggyback64.1 || die
+
+ dobin elftoaout-2.3/elftoaout
+ dobin src/piggyback
+ dobin src/piggyback64
+ dosbin prtconf-1.3/prtconf
+ dosbin prtconf-1.3/eeprom
+
+ doman elftoaout-2.3/elftoaout.1
+ doman prtconf-1.3/prtconf.8
+ doman prtconf-1.3/eeprom.8
+ doman debian/piggyback.1
+ doman debian/piggyback64.1
+}
+
+pkg_postinst() {
+ ewarn "In order to have /usr/sbin/eeprom, make sure you build /dev/openprom"
+ ewarn "device support (CONFIG_SUN_OPENPROMIO) into the kernel, or as a"
+ ewarn "module (and that the module is loaded)."
+}
diff --git a/sys-apps/spu-tools/metadata.xml b/sys-apps/spu-tools/metadata.xml
index 118d82b0c46f..3a8477fa7740 100644
--- a/sys-apps/spu-tools/metadata.xml
+++ b/sys-apps/spu-tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>lu_zero@gentoo.org</email>
diff --git a/sys-apps/spu-tools/spu-tools-2.3.0.136.ebuild b/sys-apps/spu-tools/spu-tools-2.3.0.136.ebuild
index 63f188280172..2955c689ee4c 100644
--- a/sys-apps/spu-tools/spu-tools-2.3.0.136.ebuild
+++ b/sys-apps/spu-tools/spu-tools-2.3.0.136.ebuild
@@ -1,34 +1,36 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit eutils flag-o-matic toolchain-funcs
+inherit flag-o-matic toolchain-funcs
-MY_P=${P/_p/-}
+MY_P="${P/_p/-}"
DESCRIPTION="CELL spu ps and top alike utilities"
HOMEPAGE="https://sourceforge.net/projects/libspe"
SRC_URI="mirror://sourceforge/libspe/${MY_P}.tar.gz"
+S="${WORKDIR}/${PN}/src"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="ppc ppc64"
RDEPEND="
- sys-libs/ncurses:0=
+ sys-libs/ncurses:=
"
-DEPEND="
- ${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
sys-apps/help2man
+ virtual/pkgconfig
"
-S="${WORKDIR}/${PN}/src"
+PATCHES=(
+ "${FILESDIR}"/${P}-buildsystem.patch
+ "${FILESDIR}"/${P}-format-security.patch
+)
-src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-buildsystem.patch \
- "${FILESDIR}"/${P}-format-security.patch
+src_configure() {
tc-export CC
append-cppflags -std=gnu89
export CFLAGS="${CFLAGS}"
diff --git a/sys-apps/stroke/metadata.xml b/sys-apps/stroke/metadata.xml
index 203543f81b26..dea9a6ee1400 100644
--- a/sys-apps/stroke/metadata.xml
+++ b/sys-apps/stroke/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/stroke/stroke-0.1.3-r1.ebuild b/sys-apps/stroke/stroke-0.1.3-r1.ebuild
deleted file mode 100644
index 5dff589e0b30..000000000000
--- a/sys-apps/stroke/stroke-0.1.3-r1.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A powerful tool to change file timestamps (including ctimes)"
-HOMEPAGE="http://stroke.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-PATCHES=( "${FILESDIR}/${P}-missing-header.patch" )
diff --git a/sys-apps/stroke/stroke-0.1.3-r2.ebuild b/sys-apps/stroke/stroke-0.1.3-r2.ebuild
new file mode 100644
index 000000000000..f2db03b70c44
--- /dev/null
+++ b/sys-apps/stroke/stroke-0.1.3-r2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Powerful tool to change file timestamps (including ctimes)"
+HOMEPAGE="https://stroke.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2+ GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+PATCHES=( "${FILESDIR}/${P}-missing-header.patch" )
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
diff --git a/sys-apps/superdiag/Manifest b/sys-apps/superdiag/Manifest
index 16a6c41d1ded..3c54474ddd31 100644
--- a/sys-apps/superdiag/Manifest
+++ b/sys-apps/superdiag/Manifest
@@ -1 +1 @@
-DIST SuperDiag_1.3.0_20200109.zip 5223744 BLAKE2B fd4ce0ebc0bc3d3fcd947a54f7c2166371131f4cb1fd172967dc2488bae48df48f2e2f4937aaf20d9ebd4f2d3187e0937a45d789c6f491554096f2009f3d8288 SHA512 6cc2e24ec7a8754c0b8c31b6bc6fdea9e961d1fb8e7c96c4450072ab0f35f3e8f8eee2463ac4d446511cabcde4db07272d19d3ff0cd4739aa31e4fe93707b448
+DIST SuperDiag_1.8.0_20230310.zip 6194537 BLAKE2B 8bc24c90061dd7daa28498867ebc7f88efbead87aa610f32d5e6aeabf28b58bc9b2545030f30302f28cc255c50d0c25ec782d58d7df9d1d5616f050675df16c3 SHA512 d7226db83a08d8a5366e722c94f10492021db08a36695b0bd085acb1b48eeb4461b0a007d017d0d5755aeb016b597abfce5b6f83067b85852aea0f25fd02cd72
diff --git a/sys-apps/superdiag/metadata.xml b/sys-apps/superdiag/metadata.xml
index 417a39cf570a..ac9739cb9ce7 100644
--- a/sys-apps/superdiag/metadata.xml
+++ b/sys-apps/superdiag/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/superdiag/superdiag-1.3.0.20200109.ebuild b/sys-apps/superdiag/superdiag-1.3.0.20200109.ebuild
deleted file mode 100644
index e383bfe1660f..000000000000
--- a/sys-apps/superdiag/superdiag-1.3.0.20200109.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_DATE="$(ver_cut 4)"
-MY_PN="SuperDiag"
-MY_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="Provides the capability to determine the health of Supermicro servers components"
-HOMEPAGE="https://www.supermicro.com"
-SRC_URI="${MY_PN}_${MY_PV}_${MY_DATE}.zip"
-
-KEYWORDS="-* ~amd64 ~x86"
-LICENSE="supermicro"
-SLOT="0"
-IUSE="iso usb"
-
-DEPEND="app-arch/unzip"
-
-RESTRICT="bindist fetch mirror"
-
-S="${WORKDIR}"
-
-pkg_nofetch() {
- elog "Please download ${A} from"
- elog "https://www.supermicro.com/SwDownload/UserInfo.aspx?sw=0&cat=SDO"
- elog "and place it in your DISTDIR directory."
-}
-
-src_unpack() {
- unpack ${A}
-
- if use iso; then
- unzip Diagnose_Remotely/ISOFor${MY_PN}_${MY_PV}.zip -d iso || die
- fi
-
- if use usb; then
- unzip Diagnose_Remotely/USBFor${MY_PN}_${MY_PV}.zip -d usb || die
- fi
-}
-
-src_install() {
- insinto /usr/share/superdiag
- doins startup.nsh ${MY_PN}.efi EFI/Boot/BootX64.efi
-
- local DOCS=(
- "Supermicro Super Diagnostics Offline readme.txt"
- "Supermicro Super Diagnostics Offline User Guide V${MY_PV}.pdf"
- )
- dodoc "${DOCS[@]}"
-
- if use iso; then
- insinto /usr/share/superdiag/ISO
- doins iso/${MY_PN}_${MY_PV}.iso
-
- newdoc iso/Readme.txt Readme.ISO.txt
- fi
-
- if use usb; then
- insinto /usr/share/superdiag/USB
- doins usb/startup.nsh
-
- dosym ../BootX64.efi /usr/share/superdiag/USB/BootX64.efi
- dosym ../${MY_PN}.efi /usr/share/superdiag/USB/${MY_PN}.efi
-
- newdoc usb/Readme.txt Readme.USB.txt
- fi
-}
diff --git a/sys-apps/superdiag/superdiag-1.8.0.20230310.ebuild b/sys-apps/superdiag/superdiag-1.8.0.20230310.ebuild
new file mode 100644
index 000000000000..c570e794a6ea
--- /dev/null
+++ b/sys-apps/superdiag/superdiag-1.8.0.20230310.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_DATE="$(ver_cut 4)"
+MY_PN="SuperDiag"
+MY_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Provides the capability to determine the health of Supermicro servers components"
+HOMEPAGE="https://www.supermicro.com"
+SRC_URI="https://www.supermicro.com/Bios/sw_download/557/${MY_PN}_${MY_PV}_${MY_DATE}.zip"
+S="${WORKDIR}"
+
+KEYWORDS="-* ~amd64 ~x86"
+LICENSE="supermicro"
+SLOT="0"
+IUSE="iso usb"
+
+BDEPEND="app-arch/unzip"
+
+RESTRICT="bindist mirror"
+
+src_unpack() {
+ unpack ${A}
+
+ if use iso; then
+ unzip Diagnose_Remotely/ISOFor${MY_PN}_${MY_PV}.zip -d iso || die
+ fi
+
+ if use usb; then
+ unzip Diagnose_Remotely/USBFor${MY_PN}_${MY_PV}.zip -d usb || die
+ fi
+}
+
+src_install() {
+ insinto /usr/share/superdiag
+ doins startup.nsh ${MY_PN}.efi EFI/Boot/BootX64.efi
+
+ local DOCS=(
+ "Supermicro Super Diagnostics Offline readme.txt"
+ "Supermicro Super Diagnostics Offline User Guide V${MY_PV}.pdf"
+ )
+ dodoc "${DOCS[@]}"
+
+ if use iso; then
+ insinto /usr/share/superdiag/ISO
+ doins iso/${MY_PN}_${MY_PV}.iso
+
+ newdoc iso/Readme.txt Readme.ISO.txt
+ fi
+
+ if use usb; then
+ insinto /usr/share/superdiag/USB
+ doins usb/startup.nsh
+
+ dosym ../BootX64.efi /usr/share/superdiag/USB/BootX64.efi
+ dosym ../${MY_PN}.efi /usr/share/superdiag/USB/${MY_PN}.efi
+
+ newdoc usb/Readme.txt Readme.USB.txt
+ fi
+}
diff --git a/sys-apps/superiotool/Manifest b/sys-apps/superiotool/Manifest
deleted file mode 100644
index 81eb3d416236..000000000000
--- a/sys-apps/superiotool/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST superiotool-6637.tar.xz 27364 BLAKE2B be0fd054f1385c20ca1d3da04052f7155da77211c1a4253c58c0ee272944e4134b1df6213934ea0ab6c297da9ab09ceab1cc00dcd775633d7ba50f46cba8ffb8 SHA512 dafb732b33205d1bdd368c1f752c7ba78cfb9f6174fc72075b9e8dcae962ab9ef10eb0860052a5925167b91e5b056f6b8a4a316799661d3950a630020f4330fd
diff --git a/sys-apps/superiotool/files/make-tarball.sh b/sys-apps/superiotool/files/make-tarball.sh
deleted file mode 100755
index fa6254898d1f..000000000000
--- a/sys-apps/superiotool/files/make-tarball.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-
-. /lib/gentoo/functions.sh
-
-svnrev() { svn info "$1" | awk '$1 == "Revision:" { print $NF }'; }
-
-PN=superiotool
-SVN_ROOT=${2:-/usr/local/src}
-srcdir=${SVN_ROOT}/${PN}
-PV=${1:-$(svnrev "${srcdir}")}
-
-P=${PN}-${PV}
-T=/tmp
-
-if [[ -d ${srcdir} ]] ; then
- cd "${T}" || die
-
- rm -rf ${P}
-
- ebegin "Exporting ${srcdir} ${PV} to ${P}"
- svn export -q -r ${PV} ${srcdir} ${P}
- eend $? || die
-
- ebegin "Creating ${P}.tar.xz"
- tar cf - ${P} | xz > ${P}.tar.xz
- eend $?
-
- einfo "Tarball now ready at: ${T}/${P}.tar.xz"
-else
- einfo "You need to run:"
- einfo " cd ${base}"
- einfo " svn co svn://coreboot.org/coreboot/trunk/util/superiotool"
- die "need svn checkout dir"
-fi
diff --git a/sys-apps/superiotool/metadata.xml b/sys-apps/superiotool/metadata.xml
deleted file mode 100644
index 3d1af92d107c..000000000000
--- a/sys-apps/superiotool/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <use>
- <flag name="pci">Support for PCI-attached "Super I/Os" (e.g. in VIA VT82686A/B).</flag>
- </use>
-</pkgmetadata>
diff --git a/sys-apps/superiotool/superiotool-6637.ebuild b/sys-apps/superiotool/superiotool-6637.ebuild
deleted file mode 100644
index bdd2a856660e..000000000000
--- a/sys-apps/superiotool/superiotool-6637.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-if [[ ${PV} == *99999999 ]] ; then
- ESVN_REPO_URI="svn://coreboot.org/coreboot/trunk/util/${PN}"
- inherit subversion
-else
- SRC_URI="mirror://gentoo/${P}.tar.xz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="util to detect Super I/O chips and functionality"
-HOMEPAGE="https://www.coreboot.org/Superiotool"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="pci"
-
-RDEPEND="pci? ( sys-apps/pciutils )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils"
-
-src_prepare() {
- default
-
- sed -i \
- -e 's:-Werror ::' \
- -e 's:-O2 ::' \
- -e 's:\s\+\?-lz\s\+\?::' \
- -e "/^CONFIG_PCI =/s:=.*:=$(usex pci yes no):" \
- -e '/PREFIX/s:=.*:= /usr:' \
- Makefile || die
-}
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- SVNDEF="-D'SUPERIOTOOL_VERSION=\"${ESVN_WC_REVISION}\"'"
-}
diff --git a/sys-apps/superiotool/superiotool-99999999.ebuild b/sys-apps/superiotool/superiotool-99999999.ebuild
deleted file mode 100644
index bdd2a856660e..000000000000
--- a/sys-apps/superiotool/superiotool-99999999.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-if [[ ${PV} == *99999999 ]] ; then
- ESVN_REPO_URI="svn://coreboot.org/coreboot/trunk/util/${PN}"
- inherit subversion
-else
- SRC_URI="mirror://gentoo/${P}.tar.xz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="util to detect Super I/O chips and functionality"
-HOMEPAGE="https://www.coreboot.org/Superiotool"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="pci"
-
-RDEPEND="pci? ( sys-apps/pciutils )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils"
-
-src_prepare() {
- default
-
- sed -i \
- -e 's:-Werror ::' \
- -e 's:-O2 ::' \
- -e 's:\s\+\?-lz\s\+\?::' \
- -e "/^CONFIG_PCI =/s:=.*:=$(usex pci yes no):" \
- -e '/PREFIX/s:=.*:= /usr:' \
- Makefile || die
-}
-
-src_compile() {
- emake \
- CC="$(tc-getCC)" \
- SVNDEF="-D'SUPERIOTOOL_VERSION=\"${ESVN_WC_REVISION}\"'"
-}
diff --git a/sys-apps/syd/Manifest b/sys-apps/syd/Manifest
new file mode 100644
index 000000000000..122015c64748
--- /dev/null
+++ b/sys-apps/syd/Manifest
@@ -0,0 +1,195 @@
+DIST addr2line-0.21.0.crate 40807 BLAKE2B 9796b9a1177a299797902b7f64247d81d63d3f7e0dcc1256990628e84c5f92e3094ee8d753d9b72187b9aaa73b7ca67c0217899f2226ebd1076f8d25b458475b SHA512 afde7660dda30dee240e79df1fb5b92d4572520bf17a134ef3765e2a077af9e13713952d52e27fae420109b40f6e24dbce1056687dbcbead858ffc21cc7dc69b
+DIST adler-1.0.2.crate 12778 BLAKE2B a1dc17786adae945ac09d3525e609ed944e6465690787bbb831a1b9d53793cba1989793d0a5606d5d23ee20d36457923d451b1b3530c9ec7072a487aa3e55bbd SHA512 7ab190d31890fc05b0b55d8e2c6527a505e06793d5496be0b3831e0513412f9ba97f8148f6f68ed0770fa9cd980a5092d885e058becf1d5506b7c74b82674aa1
+DIST aho-corasick-1.1.3.crate 183311 BLAKE2B 8dfcbba0b9d94e55eae739b16f5c6474baa43ee7854c5ca792f426a9f46fb0eece79cd493b804e51449181bcad338b96819fe977c02c9907654d713e26b9f830 SHA512 ba422a54688c4678fcf16e34fdf3ed06c333e6e3fc8b75af9272a215add494d43ebaef319021134b61327fd5d3572aec0dc655b714ffb3bc71ba3c265c9ebb69
+DIST anes-0.1.6.crate 23857 BLAKE2B 9ef464a964709b408c7d7846b9b1e54e52d6ae8f21f22ccfe509ef7197d4694f439084dbdb01fdf88829d181965ea9d1452253789a46fdf6d0520e3413c50d61 SHA512 f9dfaaca9ca327881ec30efaf24e208daae668b1e9d6963c8b0ca9f9fd13be777c793076a87980429f0dfa4db28ef5331ce6652a76da4d5a87485b23fc2fde29
+DIST anstyle-1.0.6.crate 14604 BLAKE2B 0716d0dbb62bf05c63c2bfe1c689896660073a423d26965ce2570f11e1925752a61209d78c2f2fe65ec4eb64ea4ffbb39669e789c0ba5d1b71e75de929153b20 SHA512 dc0e505465be54799b9faad70d0c6f7f0dcf9f5e1aaa43177b826c85dae626b054910244da0499862f066f6723a1560ad12100aec523f28c6198f1ea0d1b78fa
+DIST anyhow-1.0.81.crate 45142 BLAKE2B 9b8678c5336fe5fd2823c58eae827f7aba726e12fb6edfa958c6e3b38a96dc3310bc8d044ee2e9db0bc611548f0be9a7b664b75321bd0b8a7e168d27dd3d7e78 SHA512 3d328c6b45a4780cfb6fc8daa5581cb5e45b230cb5f55837b0fcc8331c8d53630950c281115c06b21e655821a46d360c4aa667cbb24e87f3a534206361b08af5
+DIST anyhow-1.0.82.crate 45361 BLAKE2B 558bac4de847a432fc80427e7be4e78cae4b01c4da852eae2121416af4d7e6ddeaeffd7de9bb69e55340b9a228436b975fdea88e380391a77c782a3776b835dd SHA512 e0d25a8c0b9c45e1db2072618097aff3908f70bfcbf0963d3c9dd9c97be27a85c4a763c5cb74e1ccd1b0a2059360e0879df4be80e10e58e0a5346b65f4fa1a69
+DIST argv-0.1.11.crate 8683 BLAKE2B 44344e0f3678b159b64d06287d58508479831dc0bd7b044a1ccaebfffdd9023508da5d86f3e6d8af8579cf5351f6c8963581af978ca46bb0b87a37c1802e67d8 SHA512 011e8d5333b305387d7667bbcd4d3e694fb73d16ba4c51a10969d5dae7a7a4286f8583c160949fc2724c56c7d47c618813d0dd55c42665c8c2d1cccfcaf414a3
+DIST autocfg-1.2.0.crate 14808 BLAKE2B 122327d6ffd32e08dc9fbdb4dcf69128b19d56280f9d934311b946741003b40571cdd1f3ef54b2be02c8dc505aea11c962b244d33a92206bf4ee8f6b2b9da432 SHA512 66cbfd13e33b36284cf4c74c8d654f93adcc45893d127d9aaa4c1d183e47336096e72d74e7c17dd481fb7a98931ab6cfec7e4d4165cfb491861d4e3ffe2416fc
+DIST backtrace-0.3.71.crate 86553 BLAKE2B 15ed93574fb9e8e28d5ad901bb1f94013b5fec7a79aa96d17f13f6f11a02d29a274ec14ce51a9f515574839aa41232e5aaf6e6fa3ad9c0483591055bd0a78c8a SHA512 5d9307757349e860fb4cab7e9ba1c9d0f1faf49ebcd935ba879b85fed2a9812786c7458abb59a742842a0796fc29ce9921cf575792402486ecdbd9a2568cdd89
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.5.0.crate 43821 BLAKE2B 2d2a78b0a19dcb39580e6f73ed6c468b0626043010b34661084944c83561fe49db24bee1ab57fd692d57617be6506d529e095aea27b753a77e26d0b1ebf7ed78 SHA512 75d7a89e53e5e7582591932bc430e6a1db7ed0f914ded6dbcf957125be52975598df7fee14ef816f66544432ef0505f0a081f3794d17138ec429e283fe14fcf9
+DIST bstr-1.9.1.crate 380305 BLAKE2B 52b45bd48874d052636c6b451cc36d8b012808ea5193e0188e5edd09f81d21b8306926cfebb405ad0650ec9aa710f609bacaa773bf854b21f4803dc38bb2eca7 SHA512 67e9f76719310de60f46adf3c39768b4dc078d4c32dc6bdcec1a94cd9f630c5238e427ed84cd6ec25a44f54e84adeb795a0e92060a5372d9fb9ad9f0914e3172
+DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
+DIST cast-0.3.0.crate 11452 BLAKE2B fe6edddd0589fa436cda32342d7beaabe4003afdbdf1d7c5db7e8748adf23b1b2cdcdd286235837c735d2143f29e692c152a5d56fb0458a54961e4dea303b2cb SHA512 4a3e19bc1e9e5ecc03aaef9bcdce01624ac0e6858c065fa1c41693db0ac172b9735ce872064561347cd9e79f00a274129011f6e4ccf9e61d960c8bb684b6d396
+DIST cc-1.0.92.crate 76130 BLAKE2B 45e7ea0f7f744bc26f81249dd4bf48b2022ce60abb2d7c421fac12e657fd621dde06510bca9331761aceb31f3eb69517aa59a46749ceb92b7fe70de855ac6045 SHA512 66fb052f123cd06f7901fa6db641773a2f016ea3636ec26670c83a25b68d33ab088d3893f4f08920de50f5ec932a7f7a33e00f1774aabfc55d14253d45b4b7b7
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST ciborium-0.2.2.crate 35611 BLAKE2B 7bb34ed2b16f55af2d762bbc83263bba901a0f05bc7677a370460549297839c4d6e913622e8a6cb3a5c2447b94b0bd17b7d5007228ea8881193d08e5b8deb072 SHA512 8d1af6a09f116e42f0098d7d0e34dd906dc3e718b257ff1a1fde655a235d40619f61f18917c0cf35c55de9160c255a9795d5e7525989037e3512807cc6a900b1
+DIST ciborium-io-0.2.2.crate 6697 BLAKE2B 07636da78f59859515af0075cb36d9ca969113ac327ff727953c73b64b60ddae22e5b1b65d8be5aa401f8b13d34074cbc8b47f23abd7a13d551f0b1c78f23575 SHA512 641b8592f9699d5e6c607815c8e6dfc82b2bd01897015e04ef8853420a7d90c2ec5c1140e39eb7623ce05587bea52ef63659eae76baee5b6592d2ac5298ce106
+DIST ciborium-ll-0.2.2.crate 14695 BLAKE2B 3c9ab0b338070359f9565706a504e4f6c65560072380af6e0a57068ae6716773d40e75dee84ded5e1d32f93445a07a0965759bedace58291b68b94479fb16488 SHA512 2f7ef6ad8bf5a862e8b9daa64bc6d8184c87a22c264b10dbb35c00c9effcd5712f354b4ca6c2eb8e6795d4b99d7cb88fa2acf01f3ad6fb28caf81708a500549a
+DIST clap-4.5.4.crate 55401 BLAKE2B e9ece2eee6be16c366888f6140080c43a182aa758a971ab2f60fa5c8f5e00460c3e6ae6bface1f36445306265ce13d8145ac24cef833b68b2b2c32c13a7a4a00 SHA512 c1e88968a86598a6541cd8f8144909872fe71fc707dc5327293a71425f6ff9d4957491f93c36326a9f615c1cce1a453cc85740ff18e1ca571e91bf8f7a6ad7c0
+DIST clap_builder-4.5.2.crate 163566 BLAKE2B 5eb81df416f3da0bb7e53c59ef4e914f03e2bb0563bb3707fbf70215f249aa523e3f5ef2205d0a8e25c23db6c6d0d344181c1c771566453505c769c55b355374 SHA512 af7eb8326a980cf461442a4dd6d224e61ae31a2fe4a45b34210a2c1f747eed49e00b6254699e82f986f441667f290a5de747b5e9d9d0360ed049504343385864
+DIST clap_lex-0.7.0.crate 11915 BLAKE2B 03287f02067f6cb33bb3889e8032b0848e9a9cc17446eb0e2767768cf6ea8c579a7455d33c8af735fb8d0c16095b19f991a5e2528dee3a7628d68c16f9307fa4 SHA512 638feb2e4571677dbe15ef0423866d2f0df309723e5ad65ddeaff7fd5e2e83adcb973a32d52a5f3924ea88fcff865e956b7d30dcd569df0412ef47848af14036
+DIST const-hex-1.11.3.crate 21665 BLAKE2B 935e29c12a59c7df62dd727bfd6c632d2fb7b2321ced12b5d1915c8aec34c31a4342a64be6e29ddd66ae01863a7afd0e4a33d45b38071412bc657c0f684891b2 SHA512 c1819e04dcfdf75531d67aa5295c05d9697311bccfe23797d3e35306ad9144095552cc924d03afb6a012bf1f36244d9ced2e33058f8085a6a9a67967b17ba86a
+DIST cpufeatures-0.2.12.crate 12837 BLAKE2B 5b518c58c548d9116f94cefc2214fe2faf87c3aaf3fffbb0bf4085f75372cf7fc5144bc3f827101a3a14a51363d06d8075db94ff5ed853ab2ccffaf597728093 SHA512 52742595702fc3371d4126fb355f3d7a6da514a94e43170f1db041cc6c560027f92115eab7846131dba1018ca5c72003ae36f945c1de88d57a0e7f66331623c6
+DIST criterion-0.5.1.crate 110088 BLAKE2B b99018b6a6f97fe47d90a2135e3d483ee624d43088d7881bafb2c35ba385629f1a4353110bf190c04903abc4ee99ad1735bc9c5afc6c2854a1aa9221fd714617 SHA512 6a1a32437bdb95f8472bafb5b04bb5999a6ff6fee4ca5965028ec53b4867d01b529241d01809a003722ec7d5710c323274b6f3b50ca0935919a9dee693f4d3b0
+DIST criterion-plot-0.5.0.crate 22706 BLAKE2B 28a50375f2871ce6f168aafabff46f4368bf55cac379c67a2b4396403259372759dba3355786e695b566b1cddee9091a469755a04c06ee949f00aee8e9a28699 SHA512 971e96dcc64a5afa7488f1a99475f0f5639c0ef63f9eeebcada351868697cbff397e99827cc07c0a52e7d7d1a87856fe1fc48c22075776b3bc9c94af62d79f14
+DIST crossbeam-channel-0.5.12.crate 90515 BLAKE2B 5a302e58411d99d52630cd154f4f642ec925af3330ced9456a16e417e2e43a37dc2b2288ccc88137a75e682e7b10ab2979f1f90c0bd42ceca8fa84c700b7dd0d SHA512 e17b0e41901b2b41e89913a0a50cd1eaacbf64cd07f454605a85781b8b1373c35bedd16ccf6b24029404a3171e0d670fc2b1474a6448d0feb40ba0e41f99019c
+DIST crossbeam-utils-0.8.19.crate 42328 BLAKE2B b2846f569555818fe7a3ef4aa29f68c638f933ee0251713c2c92624bee5f8013def5527027022963f572815991abb98d5e68d0fa00f478b2762133f84ffc84c0 SHA512 6e742fbb0d2a6371db87e81f8ac583259530a288237d0e8347394581c60004703a822318ec945936c410bb44001b115d8d986bb264e5b2d8091bb63a8edd93a9
+DIST crunchy-0.2.2.crate 2995 BLAKE2B 74ddf8c5e0deb2ceab65c20a2743e1230739ac6aa3af60c9e867a7852270697a1278b7dee00df8949fc4268f9756a4a098df1211ab3b3e31a122652c3ba0a6fb SHA512 36dc0aebc41a3aac5f1b178a7e61b65bcd9bb5c8539b2024f79428200f7c62daa7098af55c6ab0765febd2f8969bd6c0ac8096f73cdc0958e5c4e4eb6a4f7025
+DIST cty-0.2.2.crate 7230 BLAKE2B f8fc087e6a990a354a1de9a8d0c078757a512e13fb7ca0e337949a22c3af158111b0c1edb50857c0e97db5417943165e695b4f41c328948cb344614f922f214b SHA512 1b6fb2cac48ab796ddae5c51dd27c41ff584b2503ee15f1fdecf29ca92086826efca33d2467b5721dc1dc13b5103a76c0a320f416747230bb48d1b2c4ac784b8
+DIST darling-0.20.8.crate 31234 BLAKE2B 13e8ec124715f743486d740241273fa5ff046b5ede86c39ad5413b3e767166dd90e7ba7344a69c1e14991f0572f7ffa24b081ef54236712c5286f211fcfbafd2 SHA512 2b4cf37cf7cce9af8e93f576dcf36b539816e1ee7b8881b5b8480c45e038c97ca2d3a80c54e243d7c6e1ae23782947efaf0d67a37c0d4dc66301c8a86ce0fcc3
+DIST darling_core-0.20.8.crate 64442 BLAKE2B bf1844eba6bac260104e2ef310721d3aae7ff222d99b01b9bb66e3c71ab700095af7dd5b3a77043d6751d94af131f02f23bd321fe9d4a7066f93d1fb7c0c605b SHA512 6f2d047758541355b81e43273cd1eb8865624096c951643e6ce777d716e17256528c47fe012f33eeb1f63883ca08f532b1ca52f43394dff82fd1bbf323763751
+DIST darling_macro-0.20.8.crate 1856 BLAKE2B d7087fa67033c897aae582e5f4d3126e06e024b7db203de7e7513308af7a0ff6ef0584a150c6f30ce434ba6ce4cc2a438f89f024c9d6338198aba3bd15cdd116 SHA512 97d18bb22b79dd95dc5ab23ea7226f9fd2d6e418b7ce9aecd4d43b7a15b37cb91e509607b89eb3a914a5d3dc562b2a292d1343f87f594ab32d41fb583d7cbdc0
+DIST derive_builder-0.20.0.crate 36563 BLAKE2B 753f2a7b1ad37e4b0cd94fc032109179f559352d5d754c0258a597c0b5f819e3383a30ed5c9414b24a4b12e917f41c23bc01554727d06f130f4bfceb3a952c51 SHA512 3fb085259b8219d07c88a233c1aa0e586f6c6ec31c302896c3d2900a062a2e27b4211023f544bf139df3f4f6157773f192a96d9f1e980bf1bb7bd2125d5a7605
+DIST derive_builder_core-0.20.0.crate 32579 BLAKE2B 409890428e291f60a22ee0138cdc1a80498c26607e576a93d1d23c9def454c723b2e7a21faf3261dd106d62dff83123ebd76c3de8b2a7e7ff0aa9e700720acb9 SHA512 b4564364bea1c98563c7ec8b0bd99f260cc2b382a3a8f1156d401c57383b815a4a54e3e5f2446ccb2665eae600d6528faddf31d0f65678a3e5274073c2334073
+DIST derive_builder_macro-0.20.0.crate 6308 BLAKE2B daeaf30f4548ce0796df99920515a1e6291faad80ee9aabe6849354a942650b5903c744daad5cbddb4bf8dd87542b773eaa1989783f5e19c69b4db61786edb16 SHA512 1239bccd3f752c641782aa99d14de0ee92431f46be8b98861cc416e304b03dd18ec875f592d94093189b571592d9fb10b322f7dd205f90b84574e37d38869a1c
+DIST dirs-5.0.1.crate 12255 BLAKE2B eadd38e85211ed5aee7fab964e90342273320644c36262aa7b436e493512851a4751a09d22aa8bae0495f4b22df6e7395d13715ca8b8c6196107b1be03af9328 SHA512 cfc329518e85a25c296521b9aeb6e5d5f60b4525aa786ebfa8b9f198446a1ff5892160d1bb4790d7f3fc4a0abdb5921b2e4896e271a3fc3a3225897313b77bd1
+DIST dirs-sys-0.4.1.crate 10719 BLAKE2B 30334f2192698d7d03bd4e8bc8a682482da7d13baacb8547a132f55019d3727ac35579926ba4367fe0a5b7fa917945abc03e010cb7363683753c87440581df42 SHA512 53c7c8bc76d7211d08a0e6b25caaed12eeb7283cb4b352c12311db3c796794330943259a08e48ff9d3a280917920a088e5aede32677a4b2f9f819c2dca6adb9a
+DIST either-1.10.0.crate 18334 BLAKE2B ac5d81e0822132846e29f8959671b14ac6047330d54020ea7d4ad790ef985ecb4ddcb96ec7e327b1a66b9c89d37b112dae33c9ac35232c136f60ad9baab7d5a2 SHA512 2de38a37b7f3e61effa89648acadbf220eacfda1ca7c82fb77484e45577769b724f7dbaa297e73e3d355d6b1bd5109373c3e96e4c1a13a918176162b33ea2432
+DIST env_filter-0.1.0.crate 11553 BLAKE2B 8e358517c0aeda431239f14610925bcfd6be3bd346c7628e1818cdbaa1796bfdf2454db99cd06bc6ffdca95e7ff47c0a621d1f4c3bb50ecd1641f9d19efe4b4d SHA512 a0ab51c2b905466d23c75fd77b430dff2956556b7687ea434050c78a497cbe63018c5730be950724c0ca6aefe29bbc379ac01c8a7cd2779a69c5a03e92a21bf1
+DIST env_logger-0.11.3.crate 29704 BLAKE2B fd23d377d258ead87e820dd89e4175c0596b284d629563b7d04be10f80bf859d84a6e71a21d1c333a94779262608554e95bf7b44c35b3336cbedf545184ea6d1 SHA512 50df911455429a83088c87d30137fda6fc73971ffd32eb66f21e0d006bce92580c519d4a3a3fddadb7bdcce5d6dc33df853dff6373fe66f128cfd60ca26f9f02
+DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
+DIST errno-0.3.8.crate 10645 BLAKE2B 4a7af10845f11b3d8f177a75a692be468e8ef0ee53fb84a4d212335f1499456b6739a59af260894b5c3853d3bf21ef3490d1e3a613305561203ca334a636c3b3 SHA512 29753c421c6f929760cd7565f8171696e4f70e677654a7507253f4fc495edbcf214ace27be46bdfe5c1a0d782f4b688f591476e56f4a1096471cb353c643328d
+DIST fastrand-2.0.2.crate 14674 BLAKE2B ea23f52d745f4fcfd4ec911d48d77c60da837f57942994b17458daac7cae38953cf679459908d68e5f393d03a90cd6eddba23d2a86c2bc11ebfeed0bb41fe4dd SHA512 3ef9c21e4928071619adbad6421165ea82feb04c26ee18893b172f9f8a510b9a2097257ae31647a907680412b68d6662eff13cb27649ed9f5e68c374619701cf
+DIST fixedbitset-0.4.2.crate 15954 BLAKE2B 91270883db5ad0e999ebbca1123d8729d3040eb936034ab8da3cda72a830e45fcb977b3fe3c2b94e870c1fbc366ee8602357bb77e8b9a40cc41a04afad1b266b SHA512 57c5d756b0a202b2506270f0d5e890f7617a1e0c015b6059ea23fab49cf7af47fd06927eb56feb03b37cb2b6c467e326b3f0da1e32cfcb6339cf11a130a3ccab
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST futures-channel-0.3.30.crate 31736 BLAKE2B 57461dbb723fd53daa07b2fe6164125508cc3901e0138d2a60da5c814ade415a3611baa45c71487f1853812282ef358c132785ff40c630408e8544d57eee3483 SHA512 689531748821529c528772a6dd0f27362078ff5803d2e0b431ee5a0ecf8787b5a15262d65d52f48486ded46b88f7a9c477ad95cc2c5a3e8f5f9b9f53f367832c
+DIST futures-core-0.3.30.crate 14071 BLAKE2B 76a9fa5aedd0d4ae8dd9db9639839b6b342125759c1b9f9bbf58aacb4ecca316ff1f24ff8f3c15f559ffbf974e4c2cd02a5418cb4c4d7612dac8449c8234eeb8 SHA512 3c7259ddacbe02e47a84178b75e5f13523bd0c8f8bc0b2375f7ecca60b7075695ee0a5cc4e1c1de26665cf250271173be803661e2f2f53e2a3b96380a8efe7c4
+DIST futures-executor-0.3.30.crate 17744 BLAKE2B 927abec40eab31251409149179baa95a8d025f9cdb848afa83f95439c4768abbf6da8e2163291a086ea0b83b0b650d1e19cb8e15f70369b70efdc70eb3121f6b SHA512 fa65c038e5eeee695b2673cd65cf7529713bef47da373290595b554bc287267ee5cd015ddeda5a22169cc8828717987364584a91a69685cdbfc0fc779abd764f
+DIST futures-task-0.3.30.crate 11126 BLAKE2B c2ded9b9b709fc10c44cfeaa72d4e7477e43331b14f3e72433b25126fef93f2812a09b4fdc3c246b7379d41d3764ba17fa87c3e9c131095864cbb5f54771a204 SHA512 c190fa0acf7ff15fa67fe172911cfae803b2a8c08168570a5518a40767d08134f147259a413ab25c45cac5dbf2f601a9753c77ab0eb2c180cad2fe48cfe3867d
+DIST futures-util-0.3.30.crate 159977 BLAKE2B 9012edf76336952dab02cb61db48dfc74b6cfc17c137c36372709e8d575b306a4d7c4da89328067c9482a645aceb7b44ef57deb21a0c25964a5515e738a039d0 SHA512 7faae5aa35641d858d0f5430e4a69acd4ba9037852ad73c5a890bffeed411d28820883e18bad4ca8f7b0a765f9f4c5dbeaf5d0cfaaf90c2c69846434ae091951
+DIST getargs-0.5.0.crate 18851 BLAKE2B 85a25ed54220b81598a74f2b83e6aabfb3d25645d471b43e20bc2343d3b1d80010f8521c2ab5ab2b137edb3404aa7d14509d5c7199c28b6590331d8ab7e0452c SHA512 60b397f47fea19ab7190f90ef8fc482ac95fe8cddca2d8d7b8b397e8257a8879d86c8bfa13c17216e14311ce6f78fba7c741d705381fa10a110d3ccb829dcea9
+DIST getrandom-0.2.14.crate 37307 BLAKE2B 5904388869335ea904d950ee83ad1867a0d3f6831b7139102b53f4bb4a2c12371c9396f1f1cbcc44e3ce69a4ea316651b1674722071bfa7562385ad4b6a88c33 SHA512 6c334415e09f570e3123e3c6c6eed1727533ac6c9c4142e16ae995c237a16effe146832a891be9fdde4335bd02b454e0fdd9160f20dc02f107ad106756221658
+DIST getset-0.1.2.crate 8831 BLAKE2B b1408f4c0b2ece039d06180e3e2990db2a4ca3c74575be3b4d3df562fc48a43ee8feda42cd957786aa481fc77a554a8e944f34a6a718c07012aea153a1c299c0 SHA512 54f162d0d072253abcf26c8779a9d8eb423db9df85716da13a785edb4c61757cf0c03f3563dde5de4534be9d4d50498c03b8337dcaafeaefc29c9c836dff1371
+DIST gimli-0.28.1.crate 270497 BLAKE2B 4089e0f871295d464e548610ab5f0c2fd863825416109cf58ca827e482897f00eab23b795295758f1e3af16167b52c77c91df6f707f1f445984a6c4bcd68c6ef SHA512 695e46471fc07813dc4a47744458729b097f6efbfceeb57eb3db4165654e99bebb98dde2d73230b90bb5dd7c0ca0c6e77c7c3dc6f2abf70058b830a2fb386d25
+DIST globset-0.4.14.crate 25090 BLAKE2B 2c3e6f8384a066ebfa1f36bf03125b5eae79329255674e32c58963451d4b342ada10f17524232a953bee133b3c77b678a141543759ebc622b5fd659fe55622ae SHA512 e83e4f5e42a97609e2579b09f49c2cb0a76a94e7e2975c5871f2c5af5d3b809736e0a7b220404c582f4a0c7eebdbfad6cb432e89b26401b58f2b253f8c0151bc
+DIST half-2.4.1.crate 50892 BLAKE2B c275a9ec70d2fc0c50cb63421399202d31252b0dbf463798ed0a12a17493817c66b8933811d483b348f8f945cb05aab7cc2a4d952bd16009c3da4860202e28dc SHA512 0bce235583ca128723186e1fb50f636b519bf826c942f02c5b969db4117baa87c644665c541991c16d1f1dd97c7233c017a513d45075fc72c5d99ccc7c1ac193
+DIST hashbrown-0.14.3.crate 141425 BLAKE2B 23c63a99c6c6b7a6b9b9e8bbbc7f1e342e1eb9d7582fc9eb408d3eec50c99f34502d450170bcfef4da7f2b1e743e1d1619875ec879e4753dffcb84f3c10dc3b2 SHA512 4d344e5c89ce58e04668b80ef10e4e110a3a5daf4d610c52d980577795d0e2050c7d0b151d8ba97128117665e27b92ab0300f85b88bd6e1de943c62d49249356
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST hermit-abi-0.3.9.crate 16165 BLAKE2B b779f005bd4cb9ba9abe401a0a559a5bbcc44726ac37f53e9c8d1f7218389ec8b48f74d14666261bc4fba4fbe5558cfefae873c49a2312c8c8bd4010b8344064 SHA512 f3a5a51d834a6ad55480b53f7e9cdc73a512ab0cc6c246a6ab1e8bf8f9851a0c8a55982f5bba6cb57b5a03b54870e73b0bab0a79195764c308318394a3ea8045
+DIST hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6
+DIST ident_case-1.0.1.crate 3492 BLAKE2B bc79ebeefbb7e3ed1139e3f41d8d20fb175786bb123bdb9c1a92ea70effb4a0e5e798f24b068cd66a1bf20d53eea4bf24de495b5568c2d649ea804389a1327ab SHA512 81003a43f18da5997d644319274502e2066af9f9fd1400afda7cf2986b3ae0b7355b932302723cd3bda2d46b264340434d9279dea58425bad13785698d5808a9
+DIST indexmap-2.2.6.crate 82420 BLAKE2B fac5cf6339dc3c0a40b100035a5c874cc7b2efeafeb31c51488d25156e392dc9db86a497e76eead351d2126f69d060422faa9c55d73407a0de9f5be18d234123 SHA512 53211c4a9003d751feb6dcdf1a76495764cbf32d24bbfe2be7023946622ef4f2b07a6de57109e5d24ee01892f4b2be0e0692e10cd31fd39c4ffdff4d37abe9ea
+DIST io-lifetimes-1.0.11.crate 37346 BLAKE2B 7f278b7378a8569d3552c9b6d4be06d7908e05d77cdb964267f0b621ec4975a42fb6e48fc030a75ad5865681adf32ff747943ac559ab4ad73331a6611a1b10c6 SHA512 30c6e5ce6f5beabe0d7bee4f4522884d1316cf7d9b8d093ba0f952995997be3d0f10e1e77b9c20b7fe2b65429de0d2ec89bb35e939455795205206a3154ed544
+DIST io-uring-0.6.3.crate 53887 BLAKE2B 1a725ee6d961df4cd3d8902558d484e4c18fa0b91d673b8b83c46f50430e6a1b9f0d18a6fc7f13a28d816b651a7601fc3b195748c35a31fc466115e93d64eb1a SHA512 701061c1c111433a5e7496c12919c76bbe99421a7d7e7e33b2c33c0cf2f7b207211eda0ff365f5ba440ec36f746b4f9a92b1a4e4a25d4638977f8d4649495760
+DIST ipnetwork-0.20.0.crate 16556 BLAKE2B f6da9b2283241101279ba510c641a287107b2c27ebfc425af183ca342e4c049915aae2a2107bcd7e8349a47e07ca1dae118194acb71b7b756a36f498a6c67f8b SHA512 a8746f25abb73820cdbaf758f537c726bc9f48afa82417361d54c41bf3b86077e5901135ac5e305e2f669f093690ca518c811c89793d107b3deb139861462978
+DIST is-terminal-0.4.12.crate 7470 BLAKE2B 6d1db6148198299d0775539734dc62a3c7e453d621d69e01c3addeadbec4e88dde6082e4e12c7b7e8359cbd93b68c0af314d4a8df4600061a9534834699cc38a SHA512 9eb840a419f530c60d6acc52fdc9d6477818fb513bf9c3e8ab808ecd19087a52933e958a930e7a8c316d5e5a3e5beb56c34b560dddaa03c744ad37cfe6554a0f
+DIST itertools-0.10.5.crate 115354 BLAKE2B f24734bdfedf1dba48554e39b43669efcd4a43656eeb2c511096060daeaf049e1ad3eab232e757057750ce94aabad9fc8a0cf29a997edc6c4b167301c3443391 SHA512 d03c3cfba9841776913bbb6daad0c8945830c155f32ae4b48872e0f937c75a443f0ac9a0355f43b359ff75232f38b15f4f6d446b4be30b00b4209cf66ef770c3
+DIST itoa-1.0.11.crate 10563 BLAKE2B 94da07e0f7f2535d0b1491b3a3c64905274b315ffd35ec8e9a3e36e26cd7211733b462eefb5208963e388345f65be9694804c344a6132b2b595b0bc716c0b328 SHA512 7e22dffac34c9c9f432daef395e0ec710ed658164bc9cd9fc6445c9f984c912a10bac556214a026bcddbe27a3197b35b0c87d6709fd605062637d086b2d20311
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST lexis-0.2.2.crate 28238 BLAKE2B 9ccc71644bf90f997f9c71dd6805bb8aa583b0fa335a04e843728a543f3fb5c1f6f1fce7524a59072a07dd4b750bc329afcddadc31e764b5d032c14fa632e6cd SHA512 05618094b44a70565a3b471a6bce9c22bb3f5f637b553d57ea7597994b54103af14b8acfe57cde086f90510ae424ed479ea663b7c6e92de34229e6c437a15053
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST libloading-0.8.3.crate 28480 BLAKE2B b8588be0e7034e94c808490adb8ee6e81c29e962aec436a0d8f8c7617b3ba9177887ce59b95b2f0af00ab030bc77b73e0a889d8a77b84deb437245211a969c94 SHA512 af8fa5fe2428fa98177d6adfc01bcd6e701b0d77ac18c95b8b8d5abb3a6376f16241ccc71b9fe100782c73c843ca53c9bad465545d8bb7def52320dad0eecef9
+DIST libm-0.2.8.crate 113450 BLAKE2B fc4a55ecc0d4a558b9014b58861341887679c696af6b6539c7cdb70c033c63219b24f6f30cb8d9b335d15e3af42be6f3a6bd719e189667ca0c43ac818730b674 SHA512 753df71bb2c838abbac360db2e4400c2d931185ecff993da51a979870f2c3f7ac017380fadee4622102fb4b37ebcc1960b0cbd295afc9cd1cb3307524e1f39c5
+DIST libredox-0.1.3.crate 6068 BLAKE2B cf09f261d3a945d290ecaaa724903e0042d66eca46dde8a40c261ccb1e82c0d6b9926898eadafc6313fdb9f19cde56377b8a9179935482559c4b9707e327511a SHA512 c62142fdca92388664eef83fc89b8607e2df318cbadff6edf9e3d927837853d5cfeb54445299a82054a0ca81853b0a33536966ab26f1f2e0fa43b39aaaf67c49
+DIST libseccomp-0.3.0.crate 50169 BLAKE2B 4752d6d6105aecd71d1553e28c773a7effe220b7d5d44c965e9c5a815bbb2e390dfc2a3914cbc25ca83b8a94cf6dfa6bf672f520e9d238f991f06ef5552c5878 SHA512 3f17bcec7ff5b060d019902ad2e40245cd11512f0e2c02459f41c82180258c95be55179538c17de2bf194d96f847c0c3f038f9239ac976b7b33909f5080d42c1
+DIST libseccomp-sys-0.2.1.crate 11601 BLAKE2B 77a77d6d1f8ef6f5d25b35c299032738aed0a404c855cb84223a7334caaf57392fbd8f0915f4f7be875778176cbfdb8062eabbf7b414d3c198a5d41cd8a466ef SHA512 b53b13f95ac487d802ff051b4cee32be2dfa496846f3104a61399a53a07a7d6fb6b4543088765858e26e060e22e0bf93f8cb3a175c06dae4719f918844c7fe0f
+DIST linux-raw-sys-0.1.4.crate 878981 BLAKE2B b8708b06e48ef4e32d820b5a0e25ce12d3d985d729a2d7fef46d0b3b4518b4ad40d037d4689fb2270f9c2583dc031d0f4daa26500197e6c32bffd1400357934c SHA512 ee6d5a7a08b183681ae00890784c9e6b72e4c987b2ce2d7de6e7308b7a10d4a2b532db3d5121523bf5d4a262407f3033af4f4c1fd9f09be091523366fa30d768
+DIST linux-raw-sys-0.4.13.crate 1493855 BLAKE2B 1298a038276e2424eda9873c642fb43d864b343b03b7962446122d2dbea94d58d9fb2b93e890769e6fe4092378755413ed6afba81ce56fd61e512146e44148a3 SHA512 3918da6b667a08ef8a51aa0b087129e2dc5ab101669cbba7690fc98ae2659a36861bf9410a3b87d18522a7549d43ac169b995ea192d3073f7249305a809cac62
+DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
+DIST log-0.4.21.crate 43442 BLAKE2B 8429b3270794d3e2c7f7d5b58bd4fa1abb9d4807ab3a1ac980ac81c11d9544635003d8cf2e608c2c0094865459108a2879f280278e121df68d09bc1561d604ba SHA512 0becc1a06b6e7048cff6c0bb8df49a16ac4772133c00239e9e9459c0811e7715c500f440cf1a9aef8d7ad74f57434559ca9b55917f588b8e476cf36eb6d4e10b
+DIST md5-0.7.0.crate 6671 BLAKE2B a1c8132cb4d7497ab3f4550e6fffdea6b118ad99a31128c068ea3243b5f76c4b059042da376a0be32fb74e866571348a581c2ca727d6acf855d823ce15f593b5 SHA512 569c992eafe25986a1328666a428b2335ecc5cb7a5ba142c34d7abb1247f6768c0bb3dce790121686d4ebf1b4a1832d65315136552163dfba5f799f99551544a
+DIST memchr-2.7.2.crate 96220 BLAKE2B 2399064b6db21838d4aa0b25ed0bf04940ee3820741658cc6bf62e5ade08f41320df743ff13f99b2781da7b844e18deb1cfe25fe570f0e93f98ff03ca5d442e3 SHA512 cadcb4239c7f3aaab042592c5186770a225621e32f8583052fd3dbebb4a6d9b99be28f589b39b5ca36cb2d56fb3709e7d4ba91838ebb882e28e51280c02bbc40
+DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
+DIST mimalloc2-rust-0.3.0.crate 5351 BLAKE2B 389bae07d3065e3aeecf182164f12e8afb0f80eb34d7a2398c91874ea919c36e1c41853e788b28a7351edf481b3c32a9f42be4a39c6522b257b9fff0e055c14d SHA512 0362609b41dcf7b9e8c0aa2a6a1bcde083ca98e6a7fffcbf40a7c5af2957707ae9c9d939469b95a01ec03f0a0e34b9d7f23bf98e95c3b8ea849e85a9a2d99e26
+DIST mimalloc2-rust-sys-2.1.2-source.crate 157206 BLAKE2B 94819cfedc3dd3998cd142d220fd0f8e1c12fdad827fe493ab3370a2a0caab4a42fbb352a30155b1eec9ffa2d3409576bc6e17eaf72db276b27a2eedbae005f4 SHA512 d2ae88acc816ce08fc066b9d76e001553fe1422fe4dd8184488f55df47592649811b10a02dc1e2924902c79f262523878ecaaf96d4612cc54a274cd960e88fb7
+DIST miniz_oxide-0.7.2.crate 55731 BLAKE2B e3cbf5983025bee879b8a735fa2912db8975cb60f0499498a73ce4375e7d452c9ed62d4b0b6f6a4fa591aab55e5d7ff20033baa007fd6c839b9d74b31142c0b1 SHA512 2f8f09d7afdb9d78bfc80a228ded85a215fea05e577e907921f1808f84aae30ab118048d7b53295f11aeb5de70ab6cbdec892f3a2417bedf6f53a4576d095432
+DIST nix-0.26.4.crate 279099 BLAKE2B 41debf1f21427ad6c25c6cd26b7867feb8ba46366028c4b74073307e902e526543f536fc0a66db2cdc5a52fbbf9166a6a4843aba57e5e5caada3d914286ddd60 SHA512 cc68ff8e3e8ea8635c6fd4c0a866cf42121aa3e25165666ef3b97b5b2c1d9273cba6f689e80eb812b55b5ee513390924a926d95fce45de0a74b98764dd1fa27d
+DIST nonempty-0.10.0.crate 12661 BLAKE2B 6d86e3a3b7dd0eda0f9485cedc61f6450d2a6176af5841272b455205f64abcf64d846c457cf233fe4dc0328bd0ab03b713397faf13056e515a5322ff228f03a2 SHA512 ae8c00fd056f8f2a59c7a569c922ae3188c337aeb52531fcbc315ce51787c89ee907eb7039ff96cadada0909610cbdf9a3b6604be6b894878a86352c3d475adf
+DIST num-traits-0.2.18.crate 51930 BLAKE2B 6c40e155d7a52267a7183d8030ef34245492d33f103cc24551b10da3eaa18e3db485062ff87057dc23e6b55e381e5c5d2a2633aaf6f4763c06677a0a0c524f02 SHA512 e395ad9f3b21b0dd1d3a94cefe0d68a42d1b1d429ddb2823696f9cd75042568a635d93d133ddb9497ed357e5b3be5caddb8e4a4af87b65882bbdc60b05c74ebc
+DIST num_cpus-1.16.0.crate 15713 BLAKE2B 11b432fc7c7496d48918f09ed0954e0f1d0845596301266321293b374392898853fb7c313a0b0fd9d22d9dbfe3ccc5cc1e38f38407c89b2e5906eb76caa6ad68 SHA512 a75863afc4a563e63c64d06471c7921615355d98011ea9497b1f1a7dac2bdfc876509136018e8062ac38575ccf476a196d1fd9231e09e90017333bbf2df4615d
+DIST object-0.32.2.crate 286994 BLAKE2B b9085200fe0107ab0f8ddd5c5ac82bc681dc6266c6503e4a803ae4dbdec775ae84ca4a736754b770d858ebb058342af45d485d4c9a41f57966ca1466de40a4c5 SHA512 5d03d998f06dc592c3be141f7163bd72a0e73396f95d22ef1e0ffbfc66489bf727a6f6fb813a32739609b619b8e34a471974b2231dcfa23df8bff52007c25a96
+DIST oci-spec-0.6.5.crate 59030 BLAKE2B 5df5984dce5c5be0aedff102b9ac4e6f183267de5ce07b6688c69e8ceb92c9acd2bac4780d6bc68598fe0cf0e564c2176885f2f164abce834f83808b85de40c7 SHA512 8288f95f6e903e9d48e717a569165512f4f545fa05e776f0a2509a0fe780f4adc3dfb8d51c5ee8eb9bbb7b6cb598e6ad4419c2b2228e7eb0e0324a193a618455
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST oorandom-11.1.3.crate 10068 BLAKE2B 443ced49f63015823866257a36a88e566f75adaa79511c1c73f1190ec8855ca590d2b6ece07c2ad5e9e47a89f7891af6e9e43b7d74d9ac57cb3551e60b50aca1 SHA512 51ae60ef51da56d7673f36a6c5b99b743580c5f5be54fdcb54b69e5e2f6bbba3267f96b74e7cd6dee6962dfa6696fd9ed073f22726a2861b8f2601946a8efab9
+DIST openat2-0.1.2.crate 6198 BLAKE2B 6f5ab9cd329136b143cc36ed596b742d806b6618896ce133331db445bb94a11a57bd172e6c59768e7c12bb4e3819c7022c67fa56648d2f8dc119a6a8ac15daca SHA512 3a0ff5d7b793f69fb8fe7d21fcec73d328a289cf9d2c0cf3625f9d53fca4c98c32efda7fcc53646c5e385fe7357b389c5344e719b1a5a709c66ca66bf2f6957a
+DIST option-ext-0.2.0.crate 7345 BLAKE2B cbfc03e7c960fe3023512a4ad816d657b4f54f8ecbde9f9c4df4c5fee3b36b68ab463c67ad650778279e01c7ffaa63a0dacbd0c080c8c3d15b1611de0e71f92d SHA512 f8539f97b01af97e0b80fc96556002251befa60f8ddd19613311e62f9dc9834d71c22f5d8e7c53c4925046e38cdcf834c3c28042a4da862d6f6a21ddff8d8e56
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST parse-size-1.0.0.crate 6588 BLAKE2B fbfdbf71ca42cfd8397648897b6267d4c49c9e64cadbcd03c13cccc03605afeb62bedd6dd42fd02e2f4b11e010d60ede61ee598e781a76f7d241c5dfe46122e9 SHA512 572d0d13ba87364dd2813fee1ea6ab102dc0970076adf3ce18d08cb0e86cb45f595c19dd1aeee0fdde18904a539451d425524f124c5d4b5123d493f5e89fbbb9
+DIST pentacle-1.0.0.crate 5428 BLAKE2B a086acba103805ebd3e4504644a9192a37691e8e79f9ffc55303588dc9ee3aeb5ef0b72adad3880b232c0d851033614803d19350b97fe763233d741a74cd852b SHA512 56df39e0994a1bb3fa8b35682ebbf9f02122b2381e360bf26d107a57fe9dfe03fd5162bda252a42abba2051726ae640cd7dd599a1360a493cc50f0d449c65089
+DIST petgraph-0.6.4.crate 185895 BLAKE2B 9ddfb2796c461d2820db8227753113b02024e5dcb694a0bb2826bc1f375f028d8b98a3bd67555485db7fab88eb86043f5b768585dbe0c60703cc655976030a2c SHA512 b5a21572526387af3151dd4f864bd95c94f65eaf0612d96f99926faf646214df205bcc652b98d3b281f2e270779a4c1fdd6a32614ed60b3612e5d594b2bf3f20
+DIST pin-project-lite-0.2.14.crate 28817 BLAKE2B 8e9875967059faff399fbffff82cf8835982c46ea8df942acf50b038e3f500e04d3d8cde39da5a71ebcc38b869553f8c49830e484d1109b353247a4cfdeda89e SHA512 f90a6b9f5ab8701718f72677a4f3597c1b9f32e5fa53198b47a94696227ea37815997599abaa6058b217c5b32a94602582c6b13fdb66e2d683bc98921de95293
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.30.crate 20613 BLAKE2B e14dd544612f74b038bc7d279d629034237946c261e3e97621d6ac910a12f4fa4e75932dbd5d3339e62325d0ccf33002b07f04b0523f93d2bd3b1a919841ba66 SHA512 e4bce232e1e1cbb17d1c08c3de4dd12613f5a5238f831c2a765b6ede9b494e647d2416a7d9a0c926104e24066dd1b38df8df98a6c55d62f25060f80eb33d064d
+DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro2-1.0.79.crate 47200 BLAKE2B fff8e514d618b8ef60d6a4ca7610607641cb25701fc5e8452e0db5f942a3c38c724acbbfb0474823fe0f4864df07958c1524383e7640105266608f1d5a741368 SHA512 8bfa6fc1022556cbabe0050a37b93c5ef1056ebda9d3dd368e705a7c695df9dfb5cd5adc18ad1eadf7338631ad1d5ed6f63f0adff3616429ef8c50a930b1838f
+DIST procfs-0.15.1.crate 128786 BLAKE2B c61d2d514eea64d4e6e55ded61eebaf63f391a77c2e6f36dee6730ebe3c5a6908507e514295c1562c722ec587e45550a2f8798167952689e80e1096f0bcb58fb SHA512 8ccd80a027deb759798d055e21ae56f346e3cb869af40de23970f7237100f46087b3c3f1908900ce558b92bf5d341421a1b717cfacdcdd6d38b256255f15ac82
+DIST proptest-1.4.0.crate 198527 BLAKE2B e6e6585a3e4872595cc9778fac723bd9002c3ed5137338f8f50b1bb4beb43e2503ef4ba67228018a5f753d60b3cb188944145d0a37126478c87d07426f974140 SHA512 eb7f4e976f9d71f75dd6a575339d0e31b6f693f2f3399b3e495d9fe1be2490a0c691c312c95103f543669899381d3a3264a2f74604eee587ae0972139bfc49cd
+DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2
+DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST rand_xorshift-0.3.0.crate 9121 BLAKE2B 56c29e159c0beb9c751429130e84e4666f9031b6f70e180544f9cc8f8e85d98676b861b588dbda46f2cdbd254fb908c02c6ba640d53422e6bfa1ae4e48ca5a33 SHA512 256e410e5bc08c56496c53c3d53936f3b1cfed41458b0ee8879d7aa8b95375055746ca49e29000ef847b37f01e9237f569cd000c4b281f6c78ddfc78ce439a49
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST redox_users-0.4.5.crate 15514 BLAKE2B 9fc9d9c4875ed711efb75fb08f345b5f4f0667717d37710143742e48251a709c53760bcbc31ce13e6432672f9417be429c38c2e77a6b786887841714290a1194 SHA512 7a25cc91c9d1bfe537f20b83255990681d136ced5aaa7aa0cdb1b1fc024ba36aa1fb75c335c768a85ee078019a9ca2460efd911cad8ae6fe8b0385fb171aa4b4
+DIST regex-1.10.4.crate 253191 BLAKE2B 08bdb925efbea1ee9f885a89ec6b4692e39d7b17039f788e5b3c1dbfb7847d4f53b67f0c61e4085af7ef4901e67e33ea94948668bf706fef19b4102a06ef0447 SHA512 88ef121a51759f418d5dc01607a6e02651bd00343dae92962c02a80f30343d3f079a0375457780ce46bf205ca38f279b03989154638199fe2fcede10554bf21b
+DIST regex-automata-0.4.6.crate 617565 BLAKE2B 8f1e2a3cc1d2d50478776281d2bf10164ef441dcf7127994f4a0341ec40588ec8dc1c07fdf9f670da9e61a7753551500b80314df130370b61d2c03c2b2e3135a SHA512 b288e1facae2612f73d3de3fe9fd1af13d337107004f990263abe6277b31b948478ad9c2b807dcafa73fa565e48bdf2113139f5ca67eb73165b7d29e2ee5c9f1
+DIST regex-syntax-0.8.3.crate 347497 BLAKE2B 9ac2f63098ffa3fff51fe2bc0bcf9ef164cf9389a909a3f0cb668d2598e7ca65d573e47d571ee2e6bba3a1a96ef7c298b8d681e1ef89c8c53b7d590e0e22839b SHA512 925f7bcc50d94c65d34fcc770c6e58dd5b8a045541c0109e77b8efe842eef4c110087ac9c0f86c7c3022ed013abbc5c0a187d796dce292ad5361a0cdf7153d76
+DIST rs_hasher_ctx-0.1.3.crate 9896 BLAKE2B 16e3250944c9836bd36d94327605c664fc4f059287b244c5aab74963acc436f076e27378e70a5ab9db47152fda741f8a5392e60712d4e37082f72aada8647299 SHA512 93b8668712639e945f6246edfbec5e62e3472a827821c2685da43ae1a9a38b7f29aca5432cff12f0233d0960f72e4cfb1c39628f1968810ea6332bfb75551c3c
+DIST rs_internal_hasher-0.1.3.crate 10707 BLAKE2B b5c9cc3033363d0c14452d8712427e466daab7763250b2f32df261ace2bb85da4e4f4062390fd59adb85107de7cb7a6471bb8f8640bd85caddceee2b97138232 SHA512 b016ee365d9a6b73b51dc07b32b0a21a08e93a5993d82f773bf480ae1b470448db357e9bceb6db2e57af8c6269cda43b3b9734f5f58c21c44064527a18c0380f
+DIST rs_internal_state-0.1.3.crate 19150 BLAKE2B 18f53dcc99d430cff8b923cb7e183aa8b2afe7affb50e7d1a0ce465b28e18413689f9e477185fcb3756557c6d736167073d2e0b5bb9f47456eeaf91447f3d8c7 SHA512 82853d1fc636d2523b011abdcc3e4e49c6c0d88c7498a1bb96867495cd4e82947866b5f8eb9457823bbea0fae64082762ba9656378a99614ea03fe92181cf39d
+DIST rs_n_bit_words-0.1.3.crate 11728 BLAKE2B 017f2e55bb3870cbc5465df57ed3b171f24d3d505d21cb86861dece9ce84c289a86c654bc62f5a9c723e57515d29aaee2988b536136bf12876e007167cca0717 SHA512 ac9e793e52b05e7a16aef10d777e6f1d8793cc01923539903a6fbd37a02e19cfbf8c1ef4135e0ef2f2dc2e029e47e9cbf3b6faed563c5ae013e03fe50e97608b
+DIST rs_sha1-0.1.3.crate 19016 BLAKE2B 470d5d20956cc7ca2b4424c1b852bdafce741ae55ea6da6bfbfe321c691c422bc9879471085070c64445d12a5a565d852904bd85ca42ae620ad247829d093829 SHA512 dc03f06dfab006fb1238e49efeab111c8bf9bf06c280b10570d99b85d5e95c0de19b71aeb3dcbf7908684991675d608e29ccaa241d1b90932f4590c2181e8a20
+DIST rs_sha3_256-0.1.2.crate 12844 BLAKE2B 8be351404a6cfc755aa2f325bb6ef44a3f5d8c5ca69045905a278e43a0cd86f50767c64e57c0942ea8f52057ca50f42841b931fbfb586d0d6e2492bf8c0d30fa SHA512 fe1747bc875f9db08f83a1cea00dbeb3986c3b9e2ef57eb208dff54d5f2814ed7a212a3907e89bf387d00ce8897717249052dc9ff52d3d3d551bf46ad578cbc4
+DIST rs_sha3_384-0.1.2.crate 12829 BLAKE2B f1b8709fbd87ee594a0700981b99ed9fc29abce005d8ab496326564c5e1b58893a3924e7982791eac2905447a97eaa6473d6b6cb35018555e5da589c380605f6 SHA512 76efc0bf9fad1881ea49db21efef099ff6fab3638590341a901e5f58d2a203b605f9c2b8b31aa91c41bd67146304d547ed310691ca0e9dd99eb7cb0d0f157062
+DIST rs_sha3_512-0.1.2.crate 12990 BLAKE2B d687ef2572e9433bf236a2cedf8f2ff12032106acf00b99802c4cb064de65426d4144830032dafa9f6e9c4924eb263d2fc899626593efe6f9b90961fcc70780e SHA512 7efd4bee0de7e84ce829a0689117b6f77441f6fcfaea96f385d77475a5ff2d217dfd94aecf0fb5cdac51e8ef9d5db07c9e8a81a9f51dca7d6337119b71781c45
+DIST rustc-demangle-0.1.23.crate 28970 BLAKE2B 611d2e41a8a9799db2f8bcb8fc8fefcda361d055a417d2bfaaf2dedcce9d6f388c69d905a28c65e6691b4d408d7922ccdc97ce524c87c3cccb8467e314bc87b9 SHA512 8cd29800254b1305ad50f1fc008838c52d9659f97a51a68e9f2bd6d0a60126f3ebdd1c79760f96445b3bf998d0773526ddf663b174acca81babdc0b423247247
+DIST rustix-0.36.17.crate 290840 BLAKE2B 2834a18dad9ac72019e4bb578e3573ed5d3848ebb254da0f57cb79ca272d67dddce5484a030477f4fabe0225a9a89bbf60460780e6a7444581de6c06586069bd SHA512 b2ec91c1078e87800c56b9d004f07d3fecfb62032200b2efa8dfbc668f84bfb01e2cd944b074ce8c21dc1f3a9f19c58084afb9c313fe6c7be31ece2549e97fa2
+DIST rustix-0.38.32.crate 376999 BLAKE2B 681ea50f5405b3a749a26a481995d3a85800378067734bb857e32e5d3764687b0da4b3749d227174440e432b374ae9ada154a8288e4353ca2ff1b851698477f4 SHA512 8f028b4df785aa78fc798f3e053d0a4fb9b3c552a47f66f52f1666f4c1324441be6581ed643c4ef0f56d92e1a078c6d3b45be183fc3df0ed1fc89de0d610cad6
+DIST rustversion-1.0.15.crate 17406 BLAKE2B ef68a3a83e11f6734be94117e5170f92f9e1211d353a81b45ed11d4c738278c7f519ebfc9896681d564698fbcc579da10f97fddd77d56b14dbb96b90e16ea811 SHA512 e0e37511c25b71a64bd6f91cd8b29e43c4073ef56196de808634f3408cc297fc7fda1316a5adc5fffde9192b7d64f1940deb7cf396277a3805e89e15b2a855da
+DIST rusty_pool-0.7.0.crate 25301 BLAKE2B dd4e9ad11fd02b637b0cd6250a89b3b7813e5d3df4dee7663a467d10470d5b99fa0dd115d17d89ea9b75d74aaf68c44a28c25b449f07c17224e22c7172b4d555 SHA512 6a403a249f11b64bdf263fdff6ece860090b6c37f0e9c45b20739d4e9cde0da570688514590ec5a5eaa1ad888e077611afb2ae482b324663291eb6077e75b32a
+DIST ryu-1.0.17.crate 47537 BLAKE2B 28408e17a4322f1afb6f21bc8d7328c39d07186de4d464f8e9bd63a69757cb4af61b46e558075e14836f310f020ac824d5ffa616fc0a5ffba59b9df0bb66ffc4 SHA512 6dad725c4fb2d3a33ea30107b63cb702eed56bd2f3c16a72265f648f5aaefcd3d5a7b919b1d037af926cc6311bc68ba58c4e0483da2b2e2135c6a7c2d6601af4
+DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST sendfd-0.4.3.crate 11120 BLAKE2B 5f9e1d170ffd45f3012facead052267a868cf95790e606b6ed9b06b664c3abd703d90470356de604a3b52653634844ae15d275902c5ca5c157741f1ff965c3b3 SHA512 0c17bcad760b74000dc7bf8d4a5b4c4ef68246693997c47b5e7b503cc592fca72ebe3b617da7b2c3aa02fd6afed0aa3b92cb3f36cecced53acbb78a377069849
+DIST serde-1.0.197.crate 77087 BLAKE2B 4a4e04ededf5fefaabfcc4e17457db823239e8eeee7631a905ed47800ca10d26a93632e3a9d1b784b83f84168d0d649cfa2e6f5f1e68ab15a68e837cd5b6c699 SHA512 69e42825fce6a0a5d109979785daceacfd6afc5641e202fe83da32e2b1f968416557cce97fa014839e873e65f85c27494c8f8e20e6e9e4fbedf20d0291880410
+DIST serde_derive-1.0.197.crate 55771 BLAKE2B 73708908b6d1e104af4c63b498bd25c5a728e07e22afdf92f15754c0f17636efe44c0560c1f0df1b9a30708e8e8894a62f1ea57c234b6dd861cb9c8dc044eb4b SHA512 669376e248b76a5ee8b9c93fd9fe6d35372e7267fbabc14730539ef28a94e405ee5e9c2cc2846897d59d6153742cdc6799f9e2c87f20b9dad119bd3a86c28994
+DIST serde_json-1.0.115.crate 147100 BLAKE2B baa2dce9d85e331d1308f2ece9dbeff24bcc70e37be3f06c7e819ad9f4eb59fb1f00658736fd336a41a65e3616d1bf75a0c9adb359eb606e1418159a9455132f SHA512 d1a60e20af770fdfe0585853c87c5631e56944a3c1bbdf9e1e91003af8e924a8076335bd37563d167c760aad10d4c08fe59ebd47fc52e461bc3586b835808d22
+DIST shellexpand-3.1.0.crate 25591 BLAKE2B ba395d9d98fed37979e97609689f909b264ddb44dae56ae4958da9a0e85aa382a00bbca42530cda2701e934233aa1d44509495235ba0512beb33a827cee5c9f0 SHA512 9b20074425db359cf92f29c52be91a3a58a91e6f3116b210913f24dc31b5371ef9d77fe46e7da39e42eac87fa4ccb8ebf9175d7bd5fe6b520d12b9d3b31cc65e
+DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
+DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST strum-0.26.2.crate 7189 BLAKE2B 7582fe304551e98b121d3a386af22bc022d7d11323b81ed9c2d600c8d2496077c09bdc8dfd78a636c18b9f522808b2ea54cf8b669419b0c89fcb6b232eade617 SHA512 819cfddb3028d5267842cdeaf17d37569eb18c957cb78a055b25d9ee1b8461026dab9bd980da4a89ac7b2858ff22880e40b46a72d7695a5135b84c4b7e5026f3
+DIST strum_macros-0.26.2.crate 27056 BLAKE2B c9df13a91dd08f8bba0dfeec4fc03b59cd74eafaace7d2d228b8636264a9ea11137d0be741a936f7290e09525586818726000f07ed84a5ae711b89d61f52e89e SHA512 519bc654adcf131d85d1ef83f62be2429f7472df25cf962fdc1cf5070d33c39dfe71f08fbf296df9b85fdfcda95cf2fea27e8e52e9ae93de27bb8fc4a5b55dd1
+DIST syd-3.16.0.tar.gz 588286 BLAKE2B 176b02b7279dd3c052d97305c2bf5ff049668e1cfa8f7a526b442b5c7e06349074d63487be719a2bd72a14737f043fab1e1a11723e8cacca7fe61714453def6f SHA512 dae09372d5f9ca2ac07184de6a091a71955b4b93c3127d9079e63f671dbf1364e16184feb4db84f020fe6513e2cb7dd844a746c8d4adf4a6d00279b64bd5b059
+DIST syd-3.16.2.tar.gz 591541 BLAKE2B 2415ca3a54032d2340ab1a608e33c8bec7462a2680734aeb865a72b26ca554b9822632562dded562c9d876165d0195887206e762cd82391c63efb3b4c6a6ab70 SHA512 899fc388f6fac70b01e8b98b2643f6a40dd18e5a9fd84183f878141060103a881e746c732d421d5607932c5a4ced32fa6a3eea92b663eb915e0ed9dd0b70b305
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.58.crate 254920 BLAKE2B 64c3e09adea47f5a5f332416e75ba9e86d1d20e208f859940b80986884b3456130a842685e9002416803d0f8a2b8d61e6d2ec518929c8ebee09a1142d9d77b15 SHA512 168196da11cd854e5dc7e37bfb50b229ecc3a73f7992f36be431dca85a7a1b4ee61b60471be9f6303fd29de6747190701cc475c4b2830fe31f678f102e54d387
+DIST tempfile-3.10.1.crate 33653 BLAKE2B 819b183e7840f70270883ee8b6a91fa09861c3112eaadc65007199885abe099bd593e1cdc4d9ab48c23490a6d484cad9bf0e80cf4e718c369cc2418b72eaf09c SHA512 bac7515b85b0d01ea914b527f0fadd3a4d8e77c9eabe786977d2625d8a3e91decaec502dd15bab4d49a43597fa7cf7660fff4be1b043112d13b542a72443bf39
+DIST thiserror-1.0.58.crate 21025 BLAKE2B 2915ed6ab691fe94e97a834ce5874d37a388c3240499889cff633ee6c67d46a2ca88098ba40c225ca0e2e3c1ac7bdcfafcfde3dcefc50867e299dc49505d6fc0 SHA512 3cba2d1f4965bc56bac8fc70540d8cd442ab6b8c7d25d328bde7f4cc108535d83c75f293316d730bbd86eb247400b6e35107d610c7caf47f43a28b1f52fed578
+DIST thiserror-impl-1.0.58.crate 15645 BLAKE2B 9c6f643a582666ee4eb43330340888e7141f0dd89d927e3345268c3eaca02fa42b018514ef38b3db3ff9722b25ebdd43c36b11ecfc7bcb36950ce2c204ff78e1 SHA512 9bbc623f54c71595e48b33bdb3e4f12eb2e48074b15ebe400d6faab43410b363e5af94df071aaa324c59dc6958173e3c301fd51b216969f095e19cb98a27292b
+DIST thread-id-4.2.1.crate 9100 BLAKE2B b342989d20b2b16939dda3b8bf6eeb378a94e5821c0d8f3c0528a720bf912f52e36604cdf6a6165c4521cc8f5e726cb19c20f71ff94915b72953f437bb3cf012 SHA512 91b07c01dbcf9a0b3edd6fd14f9f60ea26ed0cc8b21972e40fa2e34a0fa4abba1c71106994972929a99d9542bb186cc814406ee7979212526a69c5a8a49950c2
+DIST tick_counter-0.4.5.crate 6351 BLAKE2B 27301b8cd6e06498582801d43ee04b602f30f55c6942b40fa945939b119e9ae93a485b58f1672970baf7469482e1a247461b5aea4ec6712824b309ce97af0dba SHA512 d46bc88a7ec129419e19d9d4577e77d96ac3de338ef037253d9fb89865730beec58bdba196f320b19a485a785a2403d52a4dbcdcfe46791a6a2d1ada2797cba8
+DIST tinytemplate-1.2.1.crate 26490 BLAKE2B af39d96f33f63238e455a4e38fde1d1730fd9661ae68be7b05df6ef9d2ab1a04db1332cc4ec9deb6da3a8e22b124df81b0fa8916d8491b808742bb733c8e48be SHA512 0cc080057e096f0796e72004343e1a8332c2e8a12e43f6ade150ebf632e9c29c7ad04de0b940cd57df81efdc4d07a6607da9b86a30d8383e39ac3d7be185edb9
+DIST unarray-0.1.4.crate 12895 BLAKE2B 20fab4ce218941bad9ae341d24e92469b01f46523adf9d6c80cf2418b79dc529011f357e3c96a66ad96bf822358581a150f75c4d3ca67043e01814c59f1a9bd1 SHA512 373d16e9688938762c61cc9056a50badfde417f64385de1949678333cf9465cc496a357707989da83ee5e4ab041a89688fcd3ab9dfb9c6ec66446c9f5b56b630
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST walkdir-2.5.0.crate 23951 BLAKE2B a2d3a973f206e94699adec0263dd5e211347722cf3ab82536295019268b3125084da5dbcad818070bfdcb6a5de08da4eb483475bc225a829f58a1e3e040b5fba SHA512 da36a121dc6656942dc9cd9887fcf4f6eea7750354ef3f59c7c25d836e7afe06f33260b4d55d0d99421104ed4ce56ef2a1f0f4c3b713766fff90548c21793fad
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.45.0.crate 2568659 BLAKE2B 6f2d634d121a9bf41e2887e277a73f33aee69b04c7fcfc6ff973d21902787997f1e186f530e9226cddc003ffc3f85a179c069c8a8688de459f617df92d33f94f SHA512 f239346c0141b95aa76e0771e2f4e38b9a592f3cd92c6001de353637cd65cd73b94cbf9917a4eaa9b0c0b2e6e2af920b9cf6b3fccb52770df5160254cffc1c47
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.42.2.crate 5492 BLAKE2B 42fc4a7d3e287fe2a70637e890304b49737776596f4a94a6d216668247092135e84322bd04caddd19c83b7700b0f27278e600ce8ed326957fabc21bffcae89b0 SHA512 84fbaffcad9a80beca77506aac26d0c5cb75aa0f21a5a70bcd3f6a16e71e8753ae00d3b89da9262c99756624163dcc0d6074fa9f99dfaae0dc098018209025f9
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows-targets-0.52.4.crate 6310 BLAKE2B 0393bf3e7f8823edc455055e9977798bd6cdc1e523127cf840ee1b9e36febe40e01dcad9875a06aea283dd55443d02f643d42752103a5ec1de933285fe410b17 SHA512 4b2c26468df54b9801e6badd120dcffc15429fc78a614f45efa16d5fed1a36983198fbb621cc3beb4a4f9f0161ef8ddeca3a5c6a6ac48b5589681936f4d2bf50
+DIST windows_aarch64_gnullvm-0.42.2.crate 364071 BLAKE2B 97c4e3b2a2dd3f936f9bfcdad23639c9c4c499eed220aec361d26d6013d798efa118e6b298f9cf841ac149d2ae5d58ca653731718450fcf2910bb5f6fa39159f SHA512 75cd7eb1def8ce9d0ff3d7468d2b1cc31cc76c08f981a2460c3d1eb09cff7100d7442863a3591621c1f5f3b3f4badf0b5c95285b6ed583e37283a8403f1095f1
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_gnullvm-0.52.4.crate 433373 BLAKE2B 5678cf2371e4c566b7ff0dd1fabcae92d12ce9f97670524c93fd8c34bf6b09d054e7de2f852302b8d994f52c81015b7cc8a74f529490c7bdd17a3b5d2c88a12e SHA512 dbb914a866873892a8cffecd4ed4977fe6c3fc48a58bb9f88655d86e7f8969cc27e6f5bb7d40eee41ae7d78f6f4be65d46650719321a7697c7b5b99a0f07a5dd
+DIST windows_aarch64_msvc-0.42.2.crate 666981 BLAKE2B 9f3cc5592cdede08bcdc1e7c455325279e3b763d96942695e10dccf1dfc37a81c749b69a7d6de883d4c0fa6e8a0d2f578fe2a8d6c42ad8ef6282590bf8fc87b7 SHA512 d2dafa8c94d01c1b65ca1bd631d31f2ef842f1db7accb132ff78c3f8483221b991afd3391563e03dcec42bbc9cbdc0ebdab47b991d25af85b5ba2ac1bbf8db63
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_aarch64_msvc-0.52.4.crate 828055 BLAKE2B 3088f2f66fc91ad698906315eae7e6c0dd7da5414c28cfa25b24e138fc4a7da40535be09129cd37b8e331d8d6e8c41d0106fba1ef9e5b4ac561140653e9ded4d SHA512 dcc538d0a9c276e7ec415575ec1392bf476219348984d9567f56d5cc7af0f9beeac523a9a6651f763dd4f50f89535a3ea2275d5321ec022c2ee8814e4e84e95b
+DIST windows_i686_gnu-0.42.2.crate 736236 BLAKE2B 4ef0496462afc73d9d72af7e5da1e6d3506a92f8172930e88ae64ab97596ffd31c4f97fb969e9b677e30159c27f00a8e756deb006b630fb98ce83f03c8b762e2 SHA512 ad09d650a05cb91cb6b40f59025c023a4c286bc1194586697c506016df2b9b0d5b02606b81687bc634795a0d9a9b8a73e486599328ae09c853e8e5ba662fc59c
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_gnu-0.52.4.crate 875736 BLAKE2B 31ee3017a6db246b0d5fc02e10cdb517a69ceac3dbbc9d41b4051f5dfa1196e4a46e7b3f5f90935560c03bb139b897e5dce69989a3698d9c88ebae923e24ef30 SHA512 9d57260744607eb63453040c532bf3693cf3d8d93c56543ee00aa66adf3a71919e72bdef7811f287167403ade893248f189b797a5d2dcb24ef4e6f3d915a88c6
+DIST windows_i686_msvc-0.42.2.crate 724951 BLAKE2B b084286cd4927efd2889b149abf8a9fe9d3d777130db9e592982660dbf9a96a0f5e723ca121465787aa11877d2d29a5a7d7cf066cdc8fa7e90d7ca7dcb7677f1 SHA512 c1706fc36d4b157c020744a11b3eb5d7dfbf05a0b56775bc717e94b7fd725816b20154fdbcd69ac08dbfb8b8bbfa74fab72d7a9c10399aad6a1cc54cf597e804
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_i686_msvc-0.52.4.crate 895530 BLAKE2B 87ec4628472beec8697317662fd599a8ea0ba5a11a0cad6b23f2481f39b3a4e0546d37fade4d715ad06a4798cf7faa6435bafa1e5054105c064cb560468b6025 SHA512 0d5526b21bfb96ab352b5181dcf84ff31007ce338245a374b3b413805239359a689b1a21de56ae998cc13444e40867bc30c4200454b84ef9ffa7117318baef1e
+DIST windows_x86_64_gnu-0.42.2.crate 699373 BLAKE2B 01c70809d564b16b268656e47295e99c992d8f9839fac8a51338a0e7c3b9cdcd0429c456ca8c1c139a8c687ed7ed6c43a82250889d881aadaa65bd037223e0a6 SHA512 5767af3c86e717f93137a89d442230e6b60a649057edb3ab104b1f82c0bcd64fe089dcdf2f4fd486a799bece1ddb5f0449641536b678211945e749ae24f35c1f
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnu-0.52.4.crate 831627 BLAKE2B 64d29f6e0837be822d89cc8aaea2514382d2c03b33deb5684df1d6b81573b3817add39d99f66181a762fae7c155e60a8c070affe43a0f2e247fb0c5ddcc7afd9 SHA512 96c673fb330af597fc3c71b53b9b66cacc9f3f64f05dc7cfe4a77447b7545280f065df22b7d91a6b7cf681a442d8b71c9d2dd128e76580664d8598c481cbb95e
+DIST windows_x86_64_gnullvm-0.42.2.crate 364068 BLAKE2B 64bc53e98eb3fc649c9b43a6e734de4e65088e41edacabd49f7afcc5dc6e1065c563ecfc682747dda05978dea2dba4f45c16fcc18c3b00684c3d93681e5a7deb SHA512 d39a8bc948110fe612d3f8d6628b3f0d56620df11d8a49e0fabb6c90389ad407582b3af10e4eab46c79b3d11d2e10753d73d9e55963fbeac085f41e9749bdba3
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_gnullvm-0.52.4.crate 433358 BLAKE2B ffd55fba15ef713bd48caec5ed5f32936e05ac4897b721bd2b041229bc8c7beeca77ca018c3258dcdb09495629aa359d1dadaaf5112d38e7ea54670309d0ddf4 SHA512 f153d86b01e47f17ef08271b69becf7883bab92f96d40cdb1d74432f2bc6a7a65aa4ed931d8f6f4c2679e360bbd8d12037dc2a74a6a444fcaec5e4c784c54c74
+DIST windows_x86_64_msvc-0.42.2.crate 666936 BLAKE2B bc3a456e7f8bc272f8978ec69506ec9d89f97b7582ebbe05d8bd57bdf8156ef62d0d2dc6137a97e81d54059d70db97a24af9a038adff357f5dfd28805d6193b5 SHA512 53a35f438903fceb59e36bd2ac331773fb8e6c8c5a6d984e79021761f91b3b4a23efe49d219667a4d0d23dcdbf906da9c24e74fb1cff93395b5c55ff524e3788
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
+DIST windows_x86_64_msvc-0.52.4.crate 828019 BLAKE2B 08163b63d934114457cd64b1c372f8a0cfc1ebf48a2efb41d79031c58ea64e023acd32d2f5075b8b78536998188138562e584ece95f2021b4bc71087ac45f026 SHA512 0671fa3c0463c6d65b525ece8bc91eab2f75cb534de86ba2b1e854d4136fcb439717441881206dba7cfb602493bc24d2aefa96abf8977f5a0fe38d41eadc90f1
diff --git a/sys-apps/syd/metadata.xml b/sys-apps/syd/metadata.xml
new file mode 100644
index 000000000000..de378a18398a
--- /dev/null
+++ b/sys-apps/syd/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>patrick@gentoo.org</email>
+ <name>Patrick Lauer</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-apps/syd/syd-3.16.0.ebuild b/sys-apps/syd/syd-3.16.0.ebuild
new file mode 100644
index 000000000000..93ca5240f35b
--- /dev/null
+++ b/sys-apps/syd/syd-3.16.0.ebuild
@@ -0,0 +1,249 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.13.1
+
+EAPI=8
+
+RESTRICT="test" # fails with sandbox
+
+CRATES="
+ addr2line@0.21.0
+ adler@1.0.2
+ aho-corasick@1.1.3
+ anes@0.1.6
+ anstyle@1.0.6
+ anyhow@1.0.81
+ argv@0.1.11
+ autocfg@1.2.0
+ backtrace@0.3.71
+ bitflags@1.3.2
+ bitflags@2.5.0
+ bstr@1.9.1
+ byteorder@1.5.0
+ cast@0.3.0
+ cc@1.0.92
+ cfg-if@1.0.0
+ ciborium-io@0.2.2
+ ciborium-ll@0.2.2
+ ciborium@0.2.2
+ clap@4.5.4
+ clap_builder@4.5.2
+ clap_lex@0.7.0
+ const-hex@1.11.3
+ cpufeatures@0.2.12
+ criterion-plot@0.5.0
+ criterion@0.5.1
+ crossbeam-channel@0.5.12
+ crossbeam-utils@0.8.19
+ crunchy@0.2.2
+ cty@0.2.2
+ darling@0.20.8
+ darling_core@0.20.8
+ darling_macro@0.20.8
+ derive_builder@0.20.0
+ derive_builder_core@0.20.0
+ derive_builder_macro@0.20.0
+ dirs-sys@0.4.1
+ dirs@5.0.1
+ either@1.10.0
+ env_filter@0.1.0
+ env_logger@0.11.3
+ equivalent@1.0.1
+ errno@0.3.8
+ fastrand@2.0.2
+ fixedbitset@0.4.2
+ fnv@1.0.7
+ futures-channel@0.3.30
+ futures-core@0.3.30
+ futures-executor@0.3.30
+ futures-task@0.3.30
+ futures-util@0.3.30
+ getargs@0.5.0
+ getrandom@0.2.14
+ getset@0.1.2
+ gimli@0.28.1
+ globset@0.4.14
+ half@2.4.1
+ hashbrown@0.14.3
+ heck@0.4.1
+ hermit-abi@0.3.9
+ hex@0.4.3
+ ident_case@1.0.1
+ indexmap@2.2.6
+ io-lifetimes@1.0.11
+ io-uring@0.6.3
+ ipnetwork@0.20.0
+ is-terminal@0.4.12
+ itertools@0.10.5
+ itoa@1.0.11
+ lazy_static@1.4.0
+ lexis@0.2.2
+ libc@0.2.153
+ libloading@0.8.3
+ libm@0.2.8
+ libredox@0.1.3
+ libseccomp-sys@0.2.1
+ libseccomp@0.3.0
+ linux-raw-sys@0.1.4
+ linux-raw-sys@0.4.13
+ lock_api@0.4.11
+ log@0.4.21
+ md5@0.7.0
+ memchr@2.7.2
+ memoffset@0.7.1
+ mimalloc2-rust-sys@2.1.2-source
+ mimalloc2-rust@0.3.0
+ miniz_oxide@0.7.2
+ nix@0.26.4
+ nonempty@0.10.0
+ num-traits@0.2.18
+ num_cpus@1.16.0
+ object@0.32.2
+ oci-spec@0.6.5
+ once_cell@1.19.0
+ oorandom@11.1.3
+ openat2@0.1.2
+ option-ext@0.2.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ parse-size@1.0.0
+ pentacle@1.0.0
+ petgraph@0.6.4
+ pin-project-lite@0.2.14
+ pin-utils@0.1.0
+ pkg-config@0.3.30
+ ppv-lite86@0.2.17
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@1.0.79
+ procfs@0.15.1
+ proptest@1.4.0
+ quote@1.0.35
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ rand_xorshift@0.3.0
+ redox_syscall@0.4.1
+ redox_users@0.4.5
+ regex-automata@0.4.6
+ regex-syntax@0.8.3
+ regex@1.10.4
+ rs_hasher_ctx@0.1.3
+ rs_internal_hasher@0.1.3
+ rs_internal_state@0.1.3
+ rs_n_bit_words@0.1.3
+ rs_sha1@0.1.3
+ rs_sha3_256@0.1.2
+ rs_sha3_384@0.1.2
+ rs_sha3_512@0.1.2
+ rustc-demangle@0.1.23
+ rustix@0.36.17
+ rustix@0.38.32
+ rustversion@1.0.15
+ rusty_pool@0.7.0
+ ryu@1.0.17
+ same-file@1.0.6
+ scopeguard@1.2.0
+ sendfd@0.4.3
+ serde@1.0.197
+ serde_derive@1.0.197
+ serde_json@1.0.115
+ shellexpand@3.1.0
+ slab@0.4.9
+ smallvec@1.13.2
+ strsim@0.10.0
+ strum@0.26.2
+ strum_macros@0.26.2
+ syn@1.0.109
+ syn@2.0.58
+ tempfile@3.10.1
+ thiserror-impl@1.0.58
+ thiserror@1.0.58
+ thread-id@4.2.1
+ tick_counter@0.4.5
+ tinytemplate@1.2.1
+ unarray@0.1.4
+ unicode-ident@1.0.12
+ version_check@0.9.4
+ walkdir@2.5.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.42.2
+ windows-targets@0.48.5
+ windows-targets@0.52.4
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.4
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.4
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.4
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.4
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.4
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.4
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.4
+"
+
+inherit cargo
+
+DESCRIPTION="seccomp and landlock based application sandbox with support for namespaces"
+HOMEPAGE="https://sydbox.exherbolinux.org"
+SRC_URI="https://git.sr.ht/~alip/syd/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+IUSE="+static"
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 MIT Unicode-DFS-2016"
+
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="static? ( sys-libs/libseccomp[static-libs] )
+ sys-libs/libseccomp"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/syd-v${PV}"
+
+src_compile() {
+ if use static; then
+ export LIBSECCOMP_LINK_TYPE="static"
+ export LIBSECCOMP_LIB_PATH=$(pkgconf --variable=libdir libseccomp)
+ export RUSTFLAGS+="-Clink-args=-static -Clink-args=-no-pie -Clink-args=-Wl,-Bstatic -Ctarget-feature=+crt-static"
+ myfeatures=( "static" )
+ fi
+ cargo_src_compile
+}
+
+src_install () {
+ cargo_src_install
+ dodoc README.md
+ insinto /usr/libexec
+ doins src/esyd.sh
+
+ insinto /etc
+ newins data/user.syd-3 user.syd-3.sample
+}
+
+src_test() {
+ RUSTFLAGS="" cargo_src_test
+}
diff --git a/sys-apps/syd/syd-3.16.2.ebuild b/sys-apps/syd/syd-3.16.2.ebuild
new file mode 100644
index 000000000000..69c81c1b5493
--- /dev/null
+++ b/sys-apps/syd/syd-3.16.2.ebuild
@@ -0,0 +1,249 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.13.1
+
+EAPI=8
+
+RESTRICT="test" # fails with sandbox
+
+CRATES="
+ addr2line@0.21.0
+ adler@1.0.2
+ aho-corasick@1.1.3
+ anes@0.1.6
+ anstyle@1.0.6
+ anyhow@1.0.82
+ argv@0.1.11
+ autocfg@1.2.0
+ backtrace@0.3.71
+ bitflags@1.3.2
+ bitflags@2.5.0
+ bstr@1.9.1
+ byteorder@1.5.0
+ cast@0.3.0
+ cc@1.0.92
+ cfg-if@1.0.0
+ ciborium-io@0.2.2
+ ciborium-ll@0.2.2
+ ciborium@0.2.2
+ clap@4.5.4
+ clap_builder@4.5.2
+ clap_lex@0.7.0
+ const-hex@1.11.3
+ cpufeatures@0.2.12
+ criterion-plot@0.5.0
+ criterion@0.5.1
+ crossbeam-channel@0.5.12
+ crossbeam-utils@0.8.19
+ crunchy@0.2.2
+ cty@0.2.2
+ darling@0.20.8
+ darling_core@0.20.8
+ darling_macro@0.20.8
+ derive_builder@0.20.0
+ derive_builder_core@0.20.0
+ derive_builder_macro@0.20.0
+ dirs-sys@0.4.1
+ dirs@5.0.1
+ either@1.10.0
+ env_filter@0.1.0
+ env_logger@0.11.3
+ equivalent@1.0.1
+ errno@0.3.8
+ fastrand@2.0.2
+ fixedbitset@0.4.2
+ fnv@1.0.7
+ futures-channel@0.3.30
+ futures-core@0.3.30
+ futures-executor@0.3.30
+ futures-task@0.3.30
+ futures-util@0.3.30
+ getargs@0.5.0
+ getrandom@0.2.14
+ getset@0.1.2
+ gimli@0.28.1
+ globset@0.4.14
+ half@2.4.1
+ hashbrown@0.14.3
+ heck@0.4.1
+ hermit-abi@0.3.9
+ hex@0.4.3
+ ident_case@1.0.1
+ indexmap@2.2.6
+ io-lifetimes@1.0.11
+ io-uring@0.6.3
+ ipnetwork@0.20.0
+ is-terminal@0.4.12
+ itertools@0.10.5
+ itoa@1.0.11
+ lazy_static@1.4.0
+ lexis@0.2.2
+ libc@0.2.153
+ libloading@0.8.3
+ libm@0.2.8
+ libredox@0.1.3
+ libseccomp-sys@0.2.1
+ libseccomp@0.3.0
+ linux-raw-sys@0.1.4
+ linux-raw-sys@0.4.13
+ lock_api@0.4.11
+ log@0.4.21
+ md5@0.7.0
+ memchr@2.7.2
+ memoffset@0.7.1
+ mimalloc2-rust-sys@2.1.2-source
+ mimalloc2-rust@0.3.0
+ miniz_oxide@0.7.2
+ nix@0.26.4
+ nonempty@0.10.0
+ num-traits@0.2.18
+ num_cpus@1.16.0
+ object@0.32.2
+ oci-spec@0.6.5
+ once_cell@1.19.0
+ oorandom@11.1.3
+ openat2@0.1.2
+ option-ext@0.2.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ parse-size@1.0.0
+ pentacle@1.0.0
+ petgraph@0.6.4
+ pin-project-lite@0.2.14
+ pin-utils@0.1.0
+ pkg-config@0.3.30
+ ppv-lite86@0.2.17
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@1.0.79
+ procfs@0.15.1
+ proptest@1.4.0
+ quote@1.0.36
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ rand_xorshift@0.3.0
+ redox_syscall@0.4.1
+ redox_users@0.4.5
+ regex-automata@0.4.6
+ regex-syntax@0.8.3
+ regex@1.10.4
+ rs_hasher_ctx@0.1.3
+ rs_internal_hasher@0.1.3
+ rs_internal_state@0.1.3
+ rs_n_bit_words@0.1.3
+ rs_sha1@0.1.3
+ rs_sha3_256@0.1.2
+ rs_sha3_384@0.1.2
+ rs_sha3_512@0.1.2
+ rustc-demangle@0.1.23
+ rustix@0.36.17
+ rustix@0.38.32
+ rustversion@1.0.15
+ rusty_pool@0.7.0
+ ryu@1.0.17
+ same-file@1.0.6
+ scopeguard@1.2.0
+ sendfd@0.4.3
+ serde@1.0.197
+ serde_derive@1.0.197
+ serde_json@1.0.115
+ shellexpand@3.1.0
+ slab@0.4.9
+ smallvec@1.13.2
+ strsim@0.10.0
+ strum@0.26.2
+ strum_macros@0.26.2
+ syn@1.0.109
+ syn@2.0.58
+ tempfile@3.10.1
+ thiserror-impl@1.0.58
+ thiserror@1.0.58
+ thread-id@4.2.1
+ tick_counter@0.4.5
+ tinytemplate@1.2.1
+ unarray@0.1.4
+ unicode-ident@1.0.12
+ version_check@0.9.4
+ walkdir@2.5.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.42.2
+ windows-targets@0.48.5
+ windows-targets@0.52.4
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.4
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.4
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.4
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.4
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.4
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.4
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.4
+"
+
+inherit cargo
+
+DESCRIPTION="seccomp and landlock based application sandbox with support for namespaces"
+HOMEPAGE="https://sydbox.exherbolinux.org"
+SRC_URI="https://git.sr.ht/~alip/syd/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+IUSE="+static"
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 MIT Unicode-DFS-2016"
+
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="static? ( sys-libs/libseccomp[static-libs] )
+ sys-libs/libseccomp"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/syd-v${PV}"
+
+src_compile() {
+ if use static; then
+ export LIBSECCOMP_LINK_TYPE="static"
+ export LIBSECCOMP_LIB_PATH=$(pkgconf --variable=libdir libseccomp)
+ export RUSTFLAGS+="-Clink-args=-static -Clink-args=-no-pie -Clink-args=-Wl,-Bstatic -Ctarget-feature=+crt-static"
+ myfeatures=( "static" )
+ fi
+ cargo_src_compile
+}
+
+src_install () {
+ cargo_src_install
+ dodoc README.md
+ insinto /usr/libexec
+ doins src/esyd.sh
+
+ insinto /etc
+ newins data/user.syd-3 user.syd-3.sample
+}
+
+src_test() {
+ RUSTFLAGS="" cargo_src_test
+}
diff --git a/sys-apps/sydbox/Manifest b/sys-apps/sydbox/Manifest
deleted file mode 100644
index f49739f1b240..000000000000
--- a/sys-apps/sydbox/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sydbox-1.0.7.tar.bz2 480350 BLAKE2B d0e079148c997d6d452017a374d7795a79a8519cdf2c2f5f6f30c9fe4bd3cc8a579881de7bd1611615f18a8fc0bbd88e519cfbabc8e0e05009705a41ab6822f5 SHA512 b14d0cc6929aa705380dc2710e772054e07ca52c2990a71cac42d1111c90baf22253e168e1fe20eaf94ccde4d1ea1a3c1c26e4b9dd292f20a1028dc78a4e80d5
diff --git a/sys-apps/sydbox/metadata.xml b/sys-apps/sydbox/metadata.xml
deleted file mode 100644
index 0319eec4c8be..000000000000
--- a/sys-apps/sydbox/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>mgorny@gentoo.org</email>
- <name>Michał Górny</name>
- </maintainer>
-</pkgmetadata>
diff --git a/sys-apps/sydbox/sydbox-1.0.7.ebuild b/sys-apps/sydbox/sydbox-1.0.7.ebuild
deleted file mode 100644
index 20a823ec7181..000000000000
--- a/sys-apps/sydbox/sydbox-1.0.7.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="ptrace-based sandbox"
-HOMEPAGE="https://git.exherbo.org/sydbox-1.git"
-SRC_URI="http://distfiles.exherbo.org/distfiles/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug seccomp test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/pinktrace:=
- debug? ( sys-libs/libunwind:= )"
-DEPEND="${RDEPEND}
- test? ( !<sys-apps/sandbox-2.13 )"
-
-src_configure() {
- local myconf=(
- $(use_enable debug)
- $(use_enable seccomp)
- )
-
- econf "${myconf[@]}"
-}
-
-src_test() {
- # unload the Gentoo sandbox
- local -x SANDBOX_ON=0
- local -x LD_PRELOAD=
-
- emake check
-}
diff --git a/sys-apps/syscriptor/files/syscriptor-1.5.15-dont-inject-additional-flags.patch b/sys-apps/syscriptor/files/syscriptor-1.5.15-dont-inject-additional-flags.patch
new file mode 100644
index 000000000000..c80d9fc9dce6
--- /dev/null
+++ b/sys-apps/syscriptor/files/syscriptor-1.5.15-dont-inject-additional-flags.patch
@@ -0,0 +1,30 @@
+From 613abd8a0b82f5f6e01e728e31bd90f01f6be441 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 13 Aug 2021 20:57:48 +0100
+Subject: [PATCH 2/2] Don't inject additional flags
+
+---
+ Makefile.am | 1 -
+ src/Makefile.am | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 070e568..d139570 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,3 +1,2 @@
+ SUBDIRS=src man
+ CFLAGS=@CFLAGS@ $(EXTRA_FLAGS)
+-CPPFLAGS = -W -Wall -g
+diff --git a/src/Makefile.am b/src/Makefile.am
+index b917ba4..f35923e 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,4 +1,3 @@
+ bin_PROGRAMS=syscriptor
+ syscriptor_SOURCES=main.c cpu.c help.c ide.c memory.c network.c os.c partitions.c scsi.c sound.c uptime.c version.c video.c
+ AM_CFLAGS=@CFLAGS@ $(EXTRA_FLAGS)
+-AM_CPPFLAGS = -W -Wall -g
+--
+2.32.0
+
diff --git a/sys-apps/syscriptor/files/syscriptor-1.5.15-respect-CC-environment-variable.patch b/sys-apps/syscriptor/files/syscriptor-1.5.15-respect-CC-environment-variable.patch
new file mode 100644
index 000000000000..1f4851dbd1b4
--- /dev/null
+++ b/sys-apps/syscriptor/files/syscriptor-1.5.15-respect-CC-environment-variable.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/725804
+
+From 7796e3f63254c42017a373349e3da3e789acb9d9 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 13 Aug 2021 20:57:19 +0100
+Subject: [PATCH 1/2] Respect CC environment variable
+
+---
+ configure.in | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index a29e9cd..5c30b3d 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1,6 +1,5 @@
+ AC_INIT(src/main.c)
+ AC_PROG_CC
+-CC=gcc
+ AC_SUBST(PACKAGE)
+ AC_SUBST(VERSION)
+ AM_INIT_AUTOMAKE(syscriptor, 1.5.15)
+--
+2.32.0
+
diff --git a/sys-apps/syscriptor/metadata.xml b/sys-apps/syscriptor/metadata.xml
index 87ecc347b577..283c56e7a3f7 100644
--- a/sys-apps/syscriptor/metadata.xml
+++ b/sys-apps/syscriptor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/syscriptor/syscriptor-1.5.15.ebuild b/sys-apps/syscriptor/syscriptor-1.5.15.ebuild
index adef11296006..fcbf56ae2e25 100644
--- a/sys-apps/syscriptor/syscriptor-1.5.15.ebuild
+++ b/sys-apps/syscriptor/syscriptor-1.5.15.ebuild
@@ -1,15 +1,27 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-DESCRIPTION="display misc information about your hardware"
+inherit autotools
+
+DESCRIPTION="Display misc information about your hardware"
HOMEPAGE="http://syscriptor.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+S="${WORKDIR}"/${PN}
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ppc x86"
-IUSE=""
-S=${WORKDIR}/${PN}
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.15-dont-inject-additional-flags.patch
+ "${FILESDIR}"/${PN}-1.5.15-respect-CC-environment-variable.patch
+)
+
+src_prepare() {
+ default
+
+ mv configure.{in,ac} || die
+ eautoreconf
+}
diff --git a/sys-apps/syslog-notify/Manifest b/sys-apps/syslog-notify/Manifest
index cfd5b9796973..4d190b011de7 100644
--- a/sys-apps/syslog-notify/Manifest
+++ b/sys-apps/syslog-notify/Manifest
@@ -1 +1 @@
-DIST syslog-notify-0.2.tar.bz2 77178 BLAKE2B 6b4b723da297c12d26ab1fc169a5360552db5796e82359137de451d34a5914673052f46b066dccdf2ca3de4c1ddc03ecfcc445efcfbff2106f4d77735c8acf16 SHA512 724696d9ecfe34ebea5cd37d122b1151a376fc57d747b4f3bf35ab897a9afddd5565dd174c9c576ba10c8441cd57cdf48141d0dab5b35c5ab27e766d10d27b6b
+DIST syslog-notify-0.2.tar.gz 14191 BLAKE2B f984d0a32c8987c93e7d794eb8809c533bd722899358c47e7fef61541de13575029f4b7f2adfdb407fbf7f194b2e482771f6a6ea77171d0866aedc2deb5c0474 SHA512 e2e444e1c12c994e36fe284929508c1771b84974198a3c4c7e60b4b04812d0982fee55e33f3b43f16bc0cb58ef473b48cf6299ea42a39639eb95bdf51f5698ee
diff --git a/sys-apps/syslog-notify/metadata.xml b/sys-apps/syslog-notify/metadata.xml
index 6f49eba8f496..9f5ed3ad564e 100644
--- a/sys-apps/syslog-notify/metadata.xml
+++ b/sys-apps/syslog-notify/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">jtniehof/syslog-notify</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/syslog-notify/syslog-notify-0.2.ebuild b/sys-apps/syslog-notify/syslog-notify-0.2.ebuild
index c77dd707397c..1a91b8188092 100644
--- a/sys-apps/syslog-notify/syslog-notify-0.2.ebuild
+++ b/sys-apps/syslog-notify/syslog-notify-0.2.ebuild
@@ -1,13 +1,13 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit readme.gentoo-r1
+inherit autotools readme.gentoo-r1
DESCRIPTION="Notifications for syslog entries via libnotify"
-HOMEPAGE="https://jtniehof.github.com/syslog-notify/"
-SRC_URI="https://github.com/downloads/jtniehof/${PN}/${P}.tar.bz2"
+HOMEPAGE="https://jtniehof.github.io/syslog-notify/"
+SRC_URI="https://github.com/jtniehof/syslog-notify/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
@@ -21,6 +21,12 @@ RDEPEND="
app-admin/rsyslog
)"
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
src_install() {
default
dodoc HACKING
diff --git a/sys-apps/system-monitoring-center/Manifest b/sys-apps/system-monitoring-center/Manifest
new file mode 100644
index 000000000000..54dcb4feefc1
--- /dev/null
+++ b/sys-apps/system-monitoring-center/Manifest
@@ -0,0 +1 @@
+DIST system-monitoring-center-2.26.0.tar.gz 1936049 BLAKE2B 0f8a8472958351e7e4d659aa4d4846fc10455018f16bcf7b3ff11d640984086400a7ebf2deaa6870b92b6f3c5a74a424339279dc8864a8f55f46d16770c6455c SHA512 1303831b2d392dd0454b257f57b493644c2c77fdb800766f44dece748b338b8d25f7f3e4ead46edb84767b1b4d821b69323d6f38668123b05fa2f66f8da0fd40
diff --git a/sys-apps/system-monitoring-center/metadata.xml b/sys-apps/system-monitoring-center/metadata.xml
new file mode 100644
index 000000000000..eb7f5c97f740
--- /dev/null
+++ b/sys-apps/system-monitoring-center/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <longdescription>
+ Features: detailed system performance and usage usage monitoring/managing
+ features: monitoring CPU, RAM, Disk, Network, GPU hardware/usage
+ information, monitoring and managing processes and services (systemd),
+ monitoring users, sensors and general system information, supports
+ PolicyKit. No need to run the application with "sudo", hardware selection
+ options (selecting CPU cores, disks, network cards, GPUs), plotting
+ performance data of multiple devices at the same time, interactive charts
+ for querying performance data on any point, option for showing processes as
+ tree or list, optimized for low CPU usage and fast start, supports ARM
+ architecture, free and open source.
+ </longdescription>
+ <upstream>
+ <changelog>https://raw.githubusercontent.com/hakandundar34coding/system-monitoring-center/master/Changes.md</changelog>
+ <bugs-to>https://gitlab.com/hakandundar34coding/system-monitoring-center/-/issues/</bugs-to>
+ <remote-id type="github">hakandundar34coding/system-monitoring-center</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/system-monitoring-center/system-monitoring-center-2.26.0.ebuild b/sys-apps/system-monitoring-center/system-monitoring-center-2.26.0.ebuild
new file mode 100644
index 000000000000..c5fb2f386e9d
--- /dev/null
+++ b/sys-apps/system-monitoring-center/system-monitoring-center-2.26.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 xdg
+
+DESCRIPTION="Multi-featured system monitor GUI written in Python"
+HOMEPAGE="https://github.com/hakandundar34coding/system-monitoring-center/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/hakandundar34coding/${PN}.git"
+else
+ SRC_URI="https://github.com/hakandundar34coding/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="amd64 ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ gui-libs/gtk:4[introspection]
+ gui-libs/libadwaita:1
+ sys-apps/dmidecode
+ sys-apps/hwdata
+ $(python_gen_cond_dep '
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ ')
+"
+
+src_prepare() {
+ sed -i "s|@PYTHON@|${PYTHON}|" "${S}/src/${PN}.in" || die
+
+ default
+}
+
+src_install() {
+ meson_src_install
+ python_optimize "${ED}/usr/share/${PN}"
+
+ mv "${ED}/usr/share/appdata" "${ED}/usr/share/metainfo" || die
+}
diff --git a/sys-apps/system-monitoring-center/system-monitoring-center-9999.ebuild b/sys-apps/system-monitoring-center/system-monitoring-center-9999.ebuild
new file mode 100644
index 000000000000..8a65a073a3e7
--- /dev/null
+++ b/sys-apps/system-monitoring-center/system-monitoring-center-9999.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 xdg
+
+DESCRIPTION="Multi-featured system monitor GUI written in Python"
+HOMEPAGE="https://github.com/hakandundar34coding/system-monitoring-center/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/hakandundar34coding/${PN}.git"
+else
+ SRC_URI="https://github.com/hakandundar34coding/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ gui-libs/gtk:4[introspection]
+ gui-libs/libadwaita:1
+ sys-apps/dmidecode
+ sys-apps/hwdata
+ $(python_gen_cond_dep '
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ ')
+"
+
+src_prepare() {
+ sed -i "s|@PYTHON@|${PYTHON}|" "${S}/src/${PN}.in" || die
+
+ default
+}
+
+src_install() {
+ meson_src_install
+ python_optimize "${ED}/usr/share/${PN}"
+
+ mv "${ED}/usr/share/appdata" "${ED}/usr/share/metainfo" || die
+}
diff --git a/sys-apps/systemd-readahead/metadata.xml b/sys-apps/systemd-readahead/metadata.xml
index 3da97a9953cc..c300b31b6a76 100644
--- a/sys-apps/systemd-readahead/metadata.xml
+++ b/sys-apps/systemd-readahead/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>pacho@gentoo.org</email>
diff --git a/sys-apps/systemd-readahead/systemd-readahead-216.ebuild b/sys-apps/systemd-readahead/systemd-readahead-216.ebuild
index 301b757c717d..d35257f5fe9a 100644
--- a/sys-apps/systemd-readahead/systemd-readahead-216.ebuild
+++ b/sys-apps/systemd-readahead/systemd-readahead-216.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit systemd toolchain-funcs udev
DESCRIPTION="Split of readahead systemd implementation"
@@ -16,7 +16,8 @@ IUSE=""
S="${WORKDIR}/systemd-${PV}"
RDEPEND=">=sys-apps/systemd-217:="
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
app-arch/xz-utils:0
dev-util/gperf
>=dev-util/intltool-0.50
diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
new file mode 100644
index 000000000000..981650a1aad0
--- /dev/null
+++ b/sys-apps/systemd-utils/Manifest
@@ -0,0 +1,5 @@
+DIST systemd-musl-patches-254.3-r1.tar.gz 29971 BLAKE2B 2568c0ce93c410177d775fedb7a67b9498d66f39bfaca220237b3b55cd42c94569d7e3bfde11a9b1faa5eac1804eb75bfdee0ee465c2faac3b8213026b97daec SHA512 817c94765a70eaaa5d23454e03887e149db4612f01c29690baa0c75d61b4b328b742e5d02e8cc63c531eadcd72ae37c0a407aad37c22f1d399dbba81a6bed79d
+DIST systemd-musl-patches-255.4.tar.gz 31633 BLAKE2B 86fb36fbfa90dfe7d183f3c814600af93a690c7cfefc551cd23e6b8bdc2a48267910f4e5ef119b1b5d8e4e0cb2e6843e1b7147464809febad3085d2c82a728c3 SHA512 86bbb735012ce20bbc0af34ea062e83d6d3adf7883f5710ab00db7188fa6779e8dc361cdac427540042c4cf2f157242e6409ed5fc213c01d06cc13380e0cc95f
+DIST systemd-stable-254.10.tar.gz 14428960 BLAKE2B 488c27b9657ec7452f876ab6c18bbfe711f1351afa022801f5a646f2dd1d76d63c17e52e6ebf43b38a76807907287b654a7eaca3afdb0688f5b05839e98ad727 SHA512 0c127d38d0ade8655ae12172c2edbaa8af68bd29f42d965b988d75e74626846ae859bcf0b39b535c9a99ad8c709ad7575ed4d5ea5bc95ce8729e3caafdb32b70
+DIST systemd-stable-254.8.tar.gz 14418468 BLAKE2B e5a151ece86e57c7224fc95bda1b4ede1277fce4a2ba28d3605ab0431a2aafe1088f90c49a20e3b53a5b56aeef7c0f1f5da0601db740150f5efdf6eae7bbde80 SHA512 a3f35d9fcafcccd8d9c33ab1047241f226146017be95562a67c7dcc9eeb4b77bded92ad80e92f4767f2bf2009df0172a621d4c54a805e07ed5a5ed03940ec28e
+DIST systemd-stable-255.4.tar.gz 14952427 BLAKE2B 27f5080f83a9e870fbe8e3ebcb500a63c42022f1f96f26f35c76eeeea85dab691291c31ee716cab330b76df5e576910a6a82f51267eff4f766b1d4c304d815c9 SHA512 8a2bde11a55f7f788ba7751789a5e9be6ce9634e88d54e49f6e832c4c49020c6cacaf2a610fe26f92998b0cbf43c6c2150a96b2c0953d23261009f57d71ea979
diff --git a/sys-apps/systemd-utils/files/40-gentoo.rules b/sys-apps/systemd-utils/files/40-gentoo.rules
new file mode 100644
index 000000000000..6b96bd07051e
--- /dev/null
+++ b/sys-apps/systemd-utils/files/40-gentoo.rules
@@ -0,0 +1,3 @@
+# Gentoo specific groups
+ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
+ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
diff --git a/sys-apps/systemd-utils/files/legacy.conf b/sys-apps/systemd-utils/files/legacy.conf
new file mode 100644
index 000000000000..2d322e886960
--- /dev/null
+++ b/sys-apps/systemd-utils/files/legacy.conf
@@ -0,0 +1,3 @@
+# Based on legacy.conf from systemd
+d /run/lock
+L /var/lock - - - - ../run/lock
diff --git a/sys-apps/systemd-utils/files/systemd-tmpfiles-clean b/sys-apps/systemd-utils/files/systemd-tmpfiles-clean
new file mode 100644
index 000000000000..e474f0e61601
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-tmpfiles-clean
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec ionice -c idle -t systemd-tmpfiles --clean
diff --git a/sys-apps/systemd-utils/files/systemd-tmpfiles-setup b/sys-apps/systemd-utils/files/systemd-tmpfiles-setup
new file mode 100644
index 000000000000..a36c1020e0db
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-tmpfiles-setup
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 2022 Gentoo Authors
+# Released under the 2-clause BSD license.
+
+description="Create Volatile Files and Directories"
+
+depend()
+{
+ provide tmpfiles-setup tmpfiles.setup
+ need localmount
+}
+
+start()
+{
+ ebegin "${description}"
+ systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev
+ eend $?
+}
diff --git a/sys-apps/systemd-utils/files/systemd-tmpfiles-setup-dev b/sys-apps/systemd-utils/files/systemd-tmpfiles-setup-dev
new file mode 100644
index 000000000000..496de522d08d
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-tmpfiles-setup-dev
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+# Copyright 2022 Gentoo Authors
+# Released under the 2-clause BSD license.
+
+description="Create Static Devices Nodes in /dev"
+
+depend()
+{
+ provide tmpfiles-dev tmpfiles.dev
+ use dev-mount
+ before dev
+ keyword -prefix -vserver
+}
+
+start()
+{
+ ebegin "${description}"
+ systemd-tmpfiles --prefix=/dev --create --boot
+ eend $?
+}
diff --git a/sys-apps/systemd-utils/files/systemd-utils-254.3-add-link-kernel-install-shared-option.patch b/sys-apps/systemd-utils/files/systemd-utils-254.3-add-link-kernel-install-shared-option.patch
new file mode 100644
index 000000000000..17e4ea4832a2
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-utils-254.3-add-link-kernel-install-shared-option.patch
@@ -0,0 +1,58 @@
+From 5973e4b237e7b50dca1c9f3157db459ef1ee6da5 Mon Sep 17 00:00:00 2001
+From: Violet Purcell <vimproved@inventati.org>
+Date: Sat, 9 Sep 2023 13:22:54 -0400
+Subject: [PATCH] meson: add link-kernel-install-shared option
+
+Signed-off-by: Violet Purcell <vimproved@inventati.org>
+---
+ meson.build | 9 ++++++++-
+ meson_options.txt | 2 ++
+ 2 files changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 053e772567..003a34574a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -4420,11 +4420,17 @@ executable(
+ install : true,
+ install_dir : rootlibexecdir)
+
++if get_option('link-kernel-install-shared')
++ kernel_install_link_with = [libshared]
++else
++ kernel_install_link_with = [libsystemd_static, libshared_static]
++endif
++
+ kernel_install = executable(
+ 'kernel-install',
+ 'src/kernel-install/kernel-install.c',
+ include_directories : includes,
+- link_with : [libshared],
++ link_with : kernel_install_link_with,
+ dependencies : [userspace,
+ versiondep],
+ install_rpath : rootpkglibdir,
+@@ -5059,6 +5065,7 @@ foreach tuple : [
+ ['link-timesyncd-shared', get_option('link-timesyncd-shared')],
+ ['link-journalctl-shared', get_option('link-journalctl-shared')],
+ ['link-boot-shared', get_option('link-boot-shared')],
++ ['link-kernel-install-shared', get_option('link-kernel-install-shared')],
+ ['link-portabled-shared', get_option('link-portabled-shared')],
+ ['first-boot-full-preset'],
+ ['fexecve'],
+diff --git a/meson_options.txt b/meson_options.txt
+index 1909323850..36794e6d98 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -29,6 +29,8 @@ option('link-journalctl-shared', type: 'boolean',
+ description : 'link journalctl against libsystemd-shared.so')
+ option('link-boot-shared', type: 'boolean',
+ description : 'link bootctl and systemd-bless-boot against libsystemd-shared.so')
++option('link-kernel-install-shared', type: 'boolean',
++ description : 'link kernel-install against libsystemd-shared.so')
+ option('link-portabled-shared', type: 'boolean',
+ description : 'link systemd-portabled and its helpers to libsystemd-shared.so')
+ option('first-boot-full-preset', type: 'boolean', value: false,
+--
+2.42.0
+
diff --git a/sys-apps/systemd-utils/files/tmp.conf b/sys-apps/systemd-utils/files/tmp.conf
new file mode 100644
index 000000000000..9f3d19bb7a2d
--- /dev/null
+++ b/sys-apps/systemd-utils/files/tmp.conf
@@ -0,0 +1,2 @@
+q /tmp 1777 root root
+q /var/tmp 1777 root root
diff --git a/sys-apps/systemd-utils/metadata.xml b/sys-apps/systemd-utils/metadata.xml
new file mode 100644
index 000000000000..1be74dbd0c74
--- /dev/null
+++ b/sys-apps/systemd-utils/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>systemd@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="boot">Enable systemd-boot (UEFI boot manager)</flag>
+ <flag name="kernel-install">Enable kernel-install</flag>
+ <flag name="kmod">Enable kernel module loading via <pkg>sys-apps/kmod</pkg></flag>
+ <flag name="sysusers">Enable systemd-sysusers</flag>
+ <flag name="tmpfiles">Enable systemd-tmpfiles</flag>
+ <flag name="udev">Enable systemd-udev (userspace device manager)</flag>
+ <flag name="ukify">Enable systemd-ukify</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">systemd/systemd</remote-id>
+ <remote-id type="github">systemd/systemd-stable</remote-id>
+ <remote-id type="cpe">cpe:/a:systemd_project:systemd</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/systemd-utils/systemd-utils-254.10-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-254.10-r1.ebuild
new file mode 100644
index 000000000000..1bf395f812b3
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-254.10-r1.ebuild
@@ -0,0 +1,583 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic linux-info meson-multilib optfeature
+inherit python-single-r1 secureboot toolchain-funcs udev
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+ MY_P="systemd-stable-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+ MY_P="systemd-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-254.3-r1"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="+acl boot +kmod kernel-install selinux split-usr sysusers +tmpfiles test +udev ukify"
+REQUIRED_USE="
+ || ( kernel-install tmpfiles sysusers udev )
+ boot? ( kernel-install )
+ ukify? ( boot )
+ ${PYTHON_REQUIRED_USE}
+"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ elibc_musl? ( >=sys-libs/musl-1.2.3 )
+ selinux? ( sys-libs/libselinux:0= )
+ tmpfiles? (
+ acl? ( sys-apps/acl:0= )
+ )
+ udev? (
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ )
+ !udev? (
+ >=sys-apps/util-linux-2.30:0=
+ sys-libs/libcap:0=
+ virtual/libcrypt:=
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-3.11
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+RDEPEND="${COMMON_DEPEND}
+ boot? ( !<sys-boot/systemd-boot-250 )
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+ udev? (
+ acct-group/audio
+ acct-group/cdrom
+ acct-group/dialout
+ acct-group/disk
+ acct-group/floppy
+ acct-group/input
+ acct-group/kmem
+ acct-group/kvm
+ acct-group/lp
+ acct-group/render
+ acct-group/sgx
+ acct-group/tape
+ acct-group/tty
+ acct-group/usb
+ acct-group/video
+ !sys-apps/gentoo-systemd-integration
+ !sys-apps/hwids[udev]
+ !<sys-fs/udev-250
+ !sys-fs/eudev
+ )
+ !sys-apps/systemd
+"
+PDEPEND="
+ udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gperf
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~UNIX"
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != buildonly ]] && use udev; then
+ linux-info_pkg_setup
+ fi
+ use boot && secureboot_pkg_setup
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${PN}-254.3-add-link-kernel-install-shared-option.patch"
+ )
+
+ if use elibc_musl; then
+ PATCHES+=(
+ "${WORKDIR}/${MUSL_PATCHSET}"
+ )
+ fi
+ default
+
+ # Remove install_rpath; we link statically
+ local rpath_pattern="install_rpath : rootpkglibdir,"
+ grep -q -e "${rpath_pattern}" meson.build || die
+ sed -i -e "/${rpath_pattern}/d" meson.build || die
+}
+
+src_configure() {
+ python_setup
+ meson-multilib_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ -Dsysvinit-path=
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool sysusers)
+ $(meson_use test tests)
+ $(meson_native_use_bool tmpfiles)
+ $(meson_use udev hwdb)
+ $(meson_native_use_bool ukify)
+
+ # Link staticly with libsystemd-shared
+ -Dlink-boot-shared=false
+ -Dlink-kernel-install-shared=false
+ -Dlink-udev-shared=false
+
+ # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
+ -Dstandalone-binaries=true
+
+ # Disable all optional features
+ -Dadm-group=false
+ -Danalyze=false
+ -Dapparmor=false
+ -Daudit=false
+ -Dbacklight=false
+ -Dbinfmt=false
+ -Dbpf-framework=false
+ -Dbzip2=false
+ -Dcoredump=false
+ -Ddbus=false
+ -Delfutils=false
+ -Denvironment-d=false
+ -Dfdisk=false
+ -Dgcrypt=false
+ -Dglib=false
+ -Dgshadow=false
+ -Dgnutls=false
+ -Dhibernate=false
+ -Dhostnamed=false
+ -Didn=false
+ -Dima=false
+ -Dinitrd=false
+ -Dfirstboot=false
+ -Dldconfig=false
+ -Dlibcryptsetup=false
+ -Dlibcurl=false
+ -Dlibfido2=false
+ -Dlibidn=false
+ -Dlibidn2=false
+ -Dlibiptc=false
+ -Dlocaled=false
+ -Dlogind=false
+ -Dlz4=false
+ -Dmachined=false
+ -Dmicrohttpd=false
+ -Dnetworkd=false
+ -Dnscd=false
+ -Dnss-myhostname=false
+ -Dnss-resolve=false
+ -Dnss-systemd=false
+ -Doomd=false
+ -Dopenssl=false
+ -Dp11kit=false
+ -Dpam=false
+ -Dpcre2=false
+ -Dpolkit=false
+ -Dportabled=false
+ -Dpstore=false
+ -Dpwquality=false
+ -Drandomseed=false
+ -Dresolve=false
+ -Drfkill=false
+ -Dseccomp=false
+ -Dsmack=false
+ -Dsysext=false
+ -Dtimedated=false
+ -Dtimesyncd=false
+ -Dtpm=false
+ -Dqrencode=false
+ -Dquotacheck=false
+ -Duserdb=false
+ -Dutmp=false
+ -Dvconsole=false
+ -Dwheel-group=false
+ -Dxdg-autostart=false
+ -Dxkbcommon=false
+ -Dxz=false
+ -Dzlib=false
+ -Dzstd=false
+ )
+
+ if use tmpfiles || use udev; then
+ emesonargs+=( $(meson_native_use_bool acl) )
+ else
+ emesonargs+=( -Dacl=false )
+ fi
+
+ if use udev; then
+ emesonargs+=( $(meson_native_use_bool kmod) )
+ else
+ emesonargs+=( -Dkmod=false )
+ fi
+
+ if use elibc_musl; then
+ # Avoid redefinition of struct ethhdr.
+ append-cppflags -D__UAPI_DEF_ETHHDR=0
+ fi
+
+ if multilib_is_native_abi || use udev; then
+ meson_src_configure
+ fi
+}
+
+efi_arch() {
+ case "$(tc-arch)" in
+ amd64) echo x64 ;;
+ arm) echo arm ;;
+ arm64) echo aa64 ;;
+ x86) echo x86 ;;
+ esac
+}
+
+multilib_src_compile() {
+ local targets=()
+ if multilib_is_native_abi; then
+ if use boot; then
+ targets+=(
+ bootctl
+ man/bootctl.1
+ src/boot/efi/linux$(efi_arch).efi.stub
+ src/boot/efi/systemd-boot$(efi_arch).efi
+ )
+ fi
+ if use kernel-install; then
+ targets+=(
+ kernel-install
+ 90-loaderentry.install
+ man/kernel-install.8
+ )
+ fi
+ if use sysusers; then
+ targets+=(
+ systemd-sysusers.standalone
+ man/sysusers.d.5
+ man/systemd-sysusers.8
+ )
+ if use test; then
+ targets+=(
+ systemd-runtest.env
+ )
+ fi
+ fi
+ if use tmpfiles; then
+ targets+=(
+ systemd-tmpfiles.standalone
+ man/tmpfiles.d.5
+ man/systemd-tmpfiles.8
+ tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ )
+ if use test; then
+ targets+=( test-tmpfile-util )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udevadm
+ systemd-hwdb
+ src/udev/ata_id
+ src/udev/cdrom_id
+ src/udev/fido_id
+ src/udev/mtd_probe
+ src/udev/scsi_id
+ src/udev/udev.pc
+ src/udev/v4l_id
+ man/udev.conf.5
+ man/systemd.link.5
+ man/hwdb.7
+ man/udev.7
+ man/systemd-hwdb.8
+ man/systemd-udevd.service.8
+ man/udevadm.8
+ man/libudev.3
+ man/udev_device_get_syspath.3
+ man/udev_device_has_tag.3
+ man/udev_device_new_from_syspath.3
+ man/udev_enumerate_add_match_subsystem.3
+ man/udev_enumerate_new.3
+ man/udev_enumerate_scan_devices.3
+ man/udev_list_entry.3
+ man/udev_monitor_filter_update.3
+ man/udev_monitor_new_from_netlink.3
+ man/udev_monitor_receive_device.3
+ man/udev_new.3
+ hwdb.d/60-autosuspend-chromiumos.hwdb
+ rules.d/50-udev-default.rules
+ rules.d/60-persistent-storage.rules
+ rules.d/64-btrfs.rules
+ )
+ if use test; then
+ targets+=(
+ test-fido-id-desc
+ test-udev-builtin
+ test-udev-event
+ test-udev-node
+ test-udev-util
+ udev-rule-runner
+ )
+ fi
+ fi
+ if use ukify; then
+ targets+=(
+ ukify
+ 60-ukify.install
+ man/ukify.1
+ )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udev:shared_library
+ src/libudev/libudev.pc
+ )
+ if use test; then
+ targets+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ fi
+ if multilib_is_native_abi || use udev; then
+ meson_src_compile "${targets[@]}"
+ fi
+}
+
+multilib_src_test() {
+ local tests=()
+ if multilib_is_native_abi; then
+ if use sysusers; then
+ tests+=(
+ test-sysusers.standalone
+ )
+ fi
+ if use tmpfiles; then
+ tests+=(
+ test-systemd-tmpfiles.standalone
+ test-tmpfile-util
+ )
+ fi
+ if use udev; then
+ tests+=(
+ rule-syntax-check
+ test-fido-id-desc
+ test-udev
+ test-udev-builtin
+ test-udev-event
+ test-udev-node
+ test-udev-util
+ )
+ fi
+ fi
+ if use udev; then
+ tests+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ if [[ ${#tests[@]} -ne 0 ]]; then
+ meson_src_test "${tests[@]}"
+ fi
+}
+
+src_install() {
+ local rootprefix="$(usex split-usr '' /usr)"
+ meson-multilib_src_install
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ if use boot; then
+ into /usr
+ dobin bootctl
+ doman man/bootctl.1
+ insinto usr/lib/systemd/boot/efi
+ doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
+ fi
+ if use kernel-install; then
+ dobin kernel-install
+ doman man/kernel-install.8
+ exeinto usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ fi
+ if use sysusers; then
+ into "${rootprefix:-/}"
+ newbin systemd-sysusers{.standalone,}
+ doman man/{systemd-sysusers.8,sysusers.d.5}
+ fi
+ if use tmpfiles; then
+ into "${rootprefix:-/}"
+ newbin systemd-tmpfiles{.standalone,}
+ doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ fi
+ if use udev; then
+ into "${rootprefix:-/}"
+ dobin udevadm systemd-hwdb
+ dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
+
+ exeinto "${rootprefix}"/lib/udev
+ doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
+
+ rm -f rules.d/99-systemd.rules
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ insinto /usr/share/pkgconfig
+ doins src/udev/udev.pc
+
+ doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+ newman man/systemd-udevd.service.8 systemd-udevd.8
+ doman man/libudev.3
+ doman man/udev_*.3
+ fi
+ if use ukify; then
+ exeinto "${rootprefix}"/lib/systemd/
+ doexe ukify
+ doman man/ukify.1
+ fi
+ fi
+ if use udev; then
+ meson_install --no-rebuild --tags libudev
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins src/libudev/libudev.pc
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ if use boot; then
+ into /usr
+ dobashcomp shell-completion/bash/bootctl
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/{_bootctl,_kernel-install}
+ fi
+ if use kernel-install; then
+ exeinto usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ fi
+ if use tmpfiles; then
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+ exeinto /etc/cron.daily
+ doexe "${FILESDIR}"/systemd-tmpfiles-clean
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_systemd-tmpfiles
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/x11.conf
+ doins "${FILESDIR}"/{legacy,tmp}.conf
+ fi
+ if use udev; then
+ doheader src/libudev/libudev.h
+
+ insinto /etc/udev
+ doins src/udev/udev.conf
+ keepdir /etc/udev/{hwdb.d,rules.d}
+
+ insinto "${rootprefix}"/lib/systemd/network
+ doins network/99-default.link
+
+ # Remove to avoid conflict with elogind
+ # https://bugs.gentoo.org/856433
+ rm rules.d/70-power-switch.rules || die
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+ doins "${FILESDIR}"/40-gentoo.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ dobashcomp shell-completion/bash/udevadm
+
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_udevadm
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+add_service() {
+ local initd=$1
+ local runlevel=$2
+
+ ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+ mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+ ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+ eend $?
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ add_service systemd-tmpfiles-setup-dev sysinit
+ add_service systemd-tmpfiles-setup boot
+ fi
+ if use udev; then
+ ebegin "Updating hwdb"
+ systemd-hwdb --root="${ROOT}" update
+ eend $?
+ udev_reload
+ fi
+
+ if use boot; then
+ optfeature "automatically installing the kernels in systemd-boot's native layout and updating the bootloader configuration" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "automatically generating an unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
diff --git a/sys-apps/systemd-utils/systemd-utils-254.8-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-254.8-r1.ebuild
new file mode 100644
index 000000000000..ced613ea99e1
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-254.8-r1.ebuild
@@ -0,0 +1,584 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic linux-info meson-multilib optfeature
+inherit python-single-r1 secureboot toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+ MY_P="systemd-stable-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+ MY_P="systemd-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-254.3-r1"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="+acl boot +kmod kernel-install selinux split-usr sysusers +tmpfiles test +udev ukify"
+REQUIRED_USE="
+ || ( kernel-install tmpfiles sysusers udev )
+ boot? ( kernel-install )
+ ukify? ( boot )
+ ${PYTHON_REQUIRED_USE}
+"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ elibc_musl? ( >=sys-libs/musl-1.2.3 )
+ selinux? ( sys-libs/libselinux:0= )
+ tmpfiles? (
+ acl? ( sys-apps/acl:0= )
+ )
+ udev? (
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ )
+ !udev? (
+ >=sys-apps/util-linux-2.30:0=
+ sys-libs/libcap:0=
+ virtual/libcrypt:=
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-3.11
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+RDEPEND="${COMMON_DEPEND}
+ boot? ( !<sys-boot/systemd-boot-250 )
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+ udev? (
+ acct-group/audio
+ acct-group/cdrom
+ acct-group/dialout
+ acct-group/disk
+ acct-group/floppy
+ acct-group/input
+ acct-group/kmem
+ acct-group/kvm
+ acct-group/lp
+ acct-group/render
+ acct-group/sgx
+ acct-group/tape
+ acct-group/tty
+ acct-group/usb
+ acct-group/video
+ !sys-apps/gentoo-systemd-integration
+ !sys-apps/hwids[udev]
+ !<sys-fs/udev-250
+ !sys-fs/eudev
+ )
+ !sys-apps/systemd
+"
+PDEPEND="
+ udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gperf
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~UNIX"
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != buildonly ]] && use udev; then
+ linux-info_pkg_setup
+ fi
+ use boot && secureboot_pkg_setup
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${PN}-254.3-add-link-kernel-install-shared-option.patch"
+ )
+
+ if use elibc_musl; then
+ PATCHES+=(
+ "${WORKDIR}/${MUSL_PATCHSET}"
+ )
+ fi
+ default
+
+ # Remove install_rpath; we link statically
+ local rpath_pattern="install_rpath : rootpkglibdir,"
+ grep -q -e "${rpath_pattern}" meson.build || die
+ sed -i -e "/${rpath_pattern}/d" meson.build || die
+}
+
+src_configure() {
+ python_setup
+ meson-multilib_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ -Dsysvinit-path=
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool sysusers)
+ $(meson_use test tests)
+ $(meson_native_use_bool tmpfiles)
+ $(meson_use udev hwdb)
+ $(meson_native_use_bool ukify)
+
+ # Link staticly with libsystemd-shared
+ -Dlink-boot-shared=false
+ -Dlink-kernel-install-shared=false
+ -Dlink-udev-shared=false
+
+ # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
+ -Dstandalone-binaries=true
+
+ # Disable all optional features
+ -Dadm-group=false
+ -Danalyze=false
+ -Dapparmor=false
+ -Daudit=false
+ -Dbacklight=false
+ -Dbinfmt=false
+ -Dbpf-framework=false
+ -Dbzip2=false
+ -Dcoredump=false
+ -Ddbus=false
+ -Delfutils=false
+ -Denvironment-d=false
+ -Dfdisk=false
+ -Dgcrypt=false
+ -Dglib=false
+ -Dgshadow=false
+ -Dgnutls=false
+ -Dhibernate=false
+ -Dhostnamed=false
+ -Didn=false
+ -Dima=false
+ -Dinitrd=false
+ -Dfirstboot=false
+ -Dldconfig=false
+ -Dlibcryptsetup=false
+ -Dlibcurl=false
+ -Dlibfido2=false
+ -Dlibidn=false
+ -Dlibidn2=false
+ -Dlibiptc=false
+ -Dlocaled=false
+ -Dlogind=false
+ -Dlz4=false
+ -Dmachined=false
+ -Dmicrohttpd=false
+ -Dnetworkd=false
+ -Dnscd=false
+ -Dnss-myhostname=false
+ -Dnss-resolve=false
+ -Dnss-systemd=false
+ -Doomd=false
+ -Dopenssl=false
+ -Dp11kit=false
+ -Dpam=false
+ -Dpcre2=false
+ -Dpolkit=false
+ -Dportabled=false
+ -Dpstore=false
+ -Dpwquality=false
+ -Drandomseed=false
+ -Dresolve=false
+ -Drfkill=false
+ -Dseccomp=false
+ -Dsmack=false
+ -Dsysext=false
+ -Dtimedated=false
+ -Dtimesyncd=false
+ -Dtpm=false
+ -Dqrencode=false
+ -Dquotacheck=false
+ -Duserdb=false
+ -Dutmp=false
+ -Dvconsole=false
+ -Dwheel-group=false
+ -Dxdg-autostart=false
+ -Dxkbcommon=false
+ -Dxz=false
+ -Dzlib=false
+ -Dzstd=false
+ )
+
+ if use tmpfiles || use udev; then
+ emesonargs+=( $(meson_native_use_bool acl) )
+ else
+ emesonargs+=( -Dacl=false )
+ fi
+
+ if use udev; then
+ emesonargs+=( $(meson_native_use_bool kmod) )
+ else
+ emesonargs+=( -Dkmod=false )
+ fi
+
+ if use elibc_musl; then
+ # Avoid redefinition of struct ethhdr.
+ append-cppflags -D__UAPI_DEF_ETHHDR=0
+ fi
+
+ if multilib_is_native_abi || use udev; then
+ meson_src_configure
+ fi
+}
+
+efi_arch() {
+ case "$(tc-arch)" in
+ amd64) echo x64 ;;
+ arm) echo arm ;;
+ arm64) echo aa64 ;;
+ x86) echo x86 ;;
+ esac
+}
+
+multilib_src_compile() {
+ local targets=()
+ if multilib_is_native_abi; then
+ if use boot; then
+ targets+=(
+ bootctl
+ man/bootctl.1
+ src/boot/efi/linux$(efi_arch).efi.stub
+ src/boot/efi/systemd-boot$(efi_arch).efi
+ )
+ fi
+ if use kernel-install; then
+ targets+=(
+ kernel-install
+ 90-loaderentry.install
+ man/kernel-install.8
+ )
+ fi
+ if use sysusers; then
+ targets+=(
+ systemd-sysusers.standalone
+ man/sysusers.d.5
+ man/systemd-sysusers.8
+ )
+ if use test; then
+ targets+=(
+ systemd-runtest.env
+ )
+ fi
+ fi
+ if use tmpfiles; then
+ targets+=(
+ systemd-tmpfiles.standalone
+ man/tmpfiles.d.5
+ man/systemd-tmpfiles.8
+ tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ )
+ if use test; then
+ targets+=( test-tmpfile-util )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udevadm
+ systemd-hwdb
+ src/udev/ata_id
+ src/udev/cdrom_id
+ src/udev/fido_id
+ src/udev/mtd_probe
+ src/udev/scsi_id
+ src/udev/udev.pc
+ src/udev/v4l_id
+ man/udev.conf.5
+ man/systemd.link.5
+ man/hwdb.7
+ man/udev.7
+ man/systemd-hwdb.8
+ man/systemd-udevd.service.8
+ man/udevadm.8
+ man/libudev.3
+ man/udev_device_get_syspath.3
+ man/udev_device_has_tag.3
+ man/udev_device_new_from_syspath.3
+ man/udev_enumerate_add_match_subsystem.3
+ man/udev_enumerate_new.3
+ man/udev_enumerate_scan_devices.3
+ man/udev_list_entry.3
+ man/udev_monitor_filter_update.3
+ man/udev_monitor_new_from_netlink.3
+ man/udev_monitor_receive_device.3
+ man/udev_new.3
+ hwdb.d/60-autosuspend-chromiumos.hwdb
+ rules.d/50-udev-default.rules
+ rules.d/60-persistent-storage.rules
+ rules.d/64-btrfs.rules
+ )
+ if use test; then
+ targets+=(
+ test-fido-id-desc
+ test-udev-builtin
+ test-udev-event
+ test-udev-node
+ test-udev-util
+ udev-rule-runner
+ )
+ fi
+ fi
+ if use ukify; then
+ targets+=(
+ ukify
+ 60-ukify.install
+ man/ukify.1
+ )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udev:shared_library
+ src/libudev/libudev.pc
+ )
+ if use test; then
+ targets+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ fi
+ if multilib_is_native_abi || use udev; then
+ meson_src_compile "${targets[@]}"
+ fi
+}
+
+multilib_src_test() {
+ local tests=()
+ if multilib_is_native_abi; then
+ if use sysusers; then
+ tests+=(
+ test-sysusers.standalone
+ )
+ fi
+ if use tmpfiles; then
+ tests+=(
+ test-systemd-tmpfiles.standalone
+ test-tmpfile-util
+ )
+ fi
+ if use udev; then
+ tests+=(
+ rule-syntax-check
+ test-fido-id-desc
+ test-udev
+ test-udev-builtin
+ test-udev-event
+ test-udev-node
+ test-udev-util
+ )
+ fi
+ fi
+ if use udev; then
+ tests+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ if [[ ${#tests[@]} -ne 0 ]]; then
+ meson_src_test "${tests[@]}"
+ fi
+}
+
+src_install() {
+ local rootprefix="$(usex split-usr '' /usr)"
+ meson-multilib_src_install
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ if use boot; then
+ into /usr
+ dobin bootctl
+ doman man/bootctl.1
+ insinto usr/lib/systemd/boot/efi
+ doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
+ fi
+ if use kernel-install; then
+ dobin kernel-install
+ doman man/kernel-install.8
+ exeinto usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ fi
+ if use sysusers; then
+ into "${rootprefix:-/}"
+ newbin systemd-sysusers{.standalone,}
+ doman man/{systemd-sysusers.8,sysusers.d.5}
+ fi
+ if use tmpfiles; then
+ into "${rootprefix:-/}"
+ newbin systemd-tmpfiles{.standalone,}
+ doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ fi
+ if use udev; then
+ into "${rootprefix:-/}"
+ dobin udevadm systemd-hwdb
+ dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
+
+ exeinto "${rootprefix}"/lib/udev
+ doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
+
+ rm -f rules.d/99-systemd.rules
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ insinto /usr/share/pkgconfig
+ doins src/udev/udev.pc
+
+ doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+ newman man/systemd-udevd.service.8 systemd-udevd.8
+ doman man/libudev.3
+ doman man/udev_*.3
+ fi
+ if use ukify; then
+ exeinto "${rootprefix}"/lib/systemd/
+ doexe ukify
+ doman man/ukify.1
+ fi
+ fi
+ if use udev; then
+ meson_install --no-rebuild --tags libudev
+ gen_usr_ldscript -a udev
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins src/libudev/libudev.pc
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ if use boot; then
+ into /usr
+ dobashcomp shell-completion/bash/bootctl
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/{_bootctl,_kernel-install}
+ fi
+ if use kernel-install; then
+ exeinto usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ fi
+ if use tmpfiles; then
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+ exeinto /etc/cron.daily
+ doexe "${FILESDIR}"/systemd-tmpfiles-clean
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_systemd-tmpfiles
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/x11.conf
+ doins "${FILESDIR}"/{legacy,tmp}.conf
+ fi
+ if use udev; then
+ doheader src/libudev/libudev.h
+
+ insinto /etc/udev
+ doins src/udev/udev.conf
+ keepdir /etc/udev/{hwdb.d,rules.d}
+
+ insinto "${rootprefix}"/lib/systemd/network
+ doins network/99-default.link
+
+ # Remove to avoid conflict with elogind
+ # https://bugs.gentoo.org/856433
+ rm rules.d/70-power-switch.rules || die
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+ doins "${FILESDIR}"/40-gentoo.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ dobashcomp shell-completion/bash/udevadm
+
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_udevadm
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+add_service() {
+ local initd=$1
+ local runlevel=$2
+
+ ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+ mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+ ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+ eend $?
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ add_service systemd-tmpfiles-setup-dev sysinit
+ add_service systemd-tmpfiles-setup boot
+ fi
+ if use udev; then
+ ebegin "Updating hwdb"
+ systemd-hwdb --root="${ROOT}" update
+ eend $?
+ udev_reload
+ fi
+
+ if use boot; then
+ optfeature "automatically installing the kernels in systemd-boot's native layout and updating the bootloader configuration" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "automatically generating an unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
diff --git a/sys-apps/systemd-utils/systemd-utils-255.4.ebuild b/sys-apps/systemd-utils/systemd-utils-255.4.ebuild
new file mode 100644
index 000000000000..4c64afbd80c1
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-255.4.ebuild
@@ -0,0 +1,599 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic linux-info meson-multilib python-single-r1
+inherit secureboot udev
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+ MY_P="systemd-stable-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+ MY_P="systemd-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-255.4"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+acl boot +kmod kernel-install selinux split-usr sysusers +tmpfiles test +udev ukify"
+REQUIRED_USE="
+ || ( kernel-install tmpfiles sysusers udev )
+ boot? ( kernel-install )
+ ukify? ( boot )
+ ${PYTHON_REQUIRED_USE}
+"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ elibc_musl? ( >=sys-libs/musl-1.2.3 )
+ selinux? ( sys-libs/libselinux:0= )
+ tmpfiles? (
+ acl? ( sys-apps/acl:0= )
+ )
+ udev? (
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ )
+ !udev? (
+ >=sys-apps/util-linux-2.30:0=
+ sys-libs/libcap:0=
+ virtual/libcrypt:=
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-3.11
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+RDEPEND="${COMMON_DEPEND}
+ boot? ( !<sys-boot/systemd-boot-250 )
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+ udev? (
+ acct-group/audio
+ acct-group/cdrom
+ acct-group/dialout
+ acct-group/disk
+ acct-group/floppy
+ acct-group/input
+ acct-group/kmem
+ acct-group/kvm
+ acct-group/lp
+ acct-group/render
+ acct-group/sgx
+ acct-group/tape
+ acct-group/tty
+ acct-group/usb
+ acct-group/video
+ !sys-apps/gentoo-systemd-integration
+ !sys-apps/hwids[udev]
+ !<sys-fs/udev-250
+ !sys-fs/eudev
+ )
+ !sys-apps/systemd
+"
+PDEPEND="
+ udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gperf
+ dev-util/patchelf
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~UNIX"
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != buildonly ]] && use udev; then
+ linux-info_pkg_setup
+ fi
+ use boot && secureboot_pkg_setup
+}
+
+src_prepare() {
+ local PATCHES=(
+ )
+
+ if use elibc_musl; then
+ PATCHES+=(
+ "${WORKDIR}/${MUSL_PATCHSET}"
+ )
+ fi
+ default
+}
+
+src_configure() {
+ python_setup
+ meson-multilib_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Dsysvinit-path=
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool sysusers)
+ $(meson_use test tests)
+ $(meson_native_use_bool tmpfiles)
+ $(meson_use udev hwdb)
+ $(meson_native_use_bool ukify)
+
+ # Disable all optional features
+ -Dadm-group=false
+ -Danalyze=false
+ -Dapparmor=false
+ -Daudit=false
+ -Dbacklight=false
+ -Dbinfmt=false
+ -Dbpf-framework=false
+ -Dbzip2=false
+ -Dcoredump=false
+ -Ddbus=false
+ -Delfutils=false
+ -Denvironment-d=false
+ -Dfdisk=false
+ -Dgcrypt=false
+ -Dglib=false
+ -Dgshadow=false
+ -Dgnutls=false
+ -Dhibernate=false
+ -Dhostnamed=false
+ -Didn=false
+ -Dima=false
+ -Dinitrd=false
+ -Dfirstboot=false
+ -Dldconfig=false
+ -Dlibcryptsetup=false
+ -Dlibcurl=false
+ -Dlibfido2=false
+ -Dlibidn=false
+ -Dlibidn2=false
+ -Dlibiptc=false
+ -Dlocaled=false
+ -Dlogind=false
+ -Dlz4=false
+ -Dmachined=false
+ -Dmicrohttpd=false
+ -Dnetworkd=false
+ -Dnscd=false
+ -Dnss-myhostname=false
+ -Dnss-resolve=false
+ -Dnss-systemd=false
+ -Doomd=false
+ -Dopenssl=false
+ -Dp11kit=false
+ -Dpam=false
+ -Dpcre2=false
+ -Dpolkit=false
+ -Dportabled=false
+ -Dpstore=false
+ -Dpwquality=false
+ -Drandomseed=false
+ -Dresolve=false
+ -Drfkill=false
+ -Dseccomp=false
+ -Dsmack=false
+ -Dsysext=false
+ -Dtimedated=false
+ -Dtimesyncd=false
+ -Dtpm=false
+ -Dqrencode=false
+ -Dquotacheck=false
+ -Duserdb=false
+ -Dutmp=false
+ -Dvconsole=false
+ -Dwheel-group=false
+ -Dxdg-autostart=false
+ -Dxkbcommon=false
+ -Dxz=false
+ -Dzlib=false
+ -Dzstd=false
+ )
+
+ if use tmpfiles || use udev; then
+ emesonargs+=( $(meson_native_use_bool acl) )
+ else
+ emesonargs+=( -Dacl=false )
+ fi
+
+ if use udev; then
+ emesonargs+=( $(meson_native_use_bool kmod) )
+ else
+ emesonargs+=( -Dkmod=false )
+ fi
+
+ if use elibc_musl; then
+ # Avoid redefinition of struct ethhdr.
+ append-cppflags -D__UAPI_DEF_ETHHDR=0
+ fi
+
+ if multilib_is_native_abi || use udev; then
+ meson_src_configure
+ fi
+}
+
+multilib_src_compile() {
+ local targets=() optional_targets=()
+ if multilib_is_native_abi; then
+ if use boot; then
+ local efi_arch= efi_arch_alt=
+ case ${CHOST} in
+ aarch64*) efi_arch=aa64 ;;
+ arm*) efi_arch=arm ;;
+ loongarch32*) efi_arch=loongarch32 ;;
+ loongarch64*) efi_arch=loongarch64 ;;
+ riscv32*) efi_arch=riscv32 ;;
+ riscv64*) efi_arch=riscv64 ;;
+ x86_64*) efi_arch=x64 efi_arch_alt=ia32;;
+ i?86*) efi_arch=ia32 ;;
+ esac
+ targets+=(
+ bootctl
+ man/bootctl.1
+ src/boot/efi/systemd-boot${efi_arch}.efi
+ src/boot/efi/linux${efi_arch}.efi.stub
+ src/boot/efi/addon${efi_arch}.efi.stub
+ )
+ if [[ -n ${efi_arch_alt} ]]; then
+ # If we have a multilib toolchain, meson.build will build the
+ # "alt" arch (ia32). There's no easy way to detect this, so try
+ # to build it and ignore failure.
+ optional_targets+=(
+ src/boot/efi/systemd-boot${efi_arch_alt}.efi
+ src/boot/efi/linux${efi_arch_alt}.efi.stub
+ src/boot/efi/addon${efi_arch_alt}.efi.stub
+ )
+ fi
+
+ fi
+ if use kernel-install; then
+ targets+=(
+ kernel-install
+ 90-loaderentry.install
+ man/kernel-install.8
+ )
+ fi
+ if use sysusers; then
+ targets+=(
+ systemd-sysusers
+ man/sysusers.d.5
+ man/systemd-sysusers.8
+ )
+ if use test; then
+ targets+=(
+ systemd-runtest.env
+ test-offline-passwd
+ )
+ fi
+ fi
+ if use tmpfiles; then
+ targets+=(
+ systemd-tmpfiles
+ man/tmpfiles.d.5
+ man/systemd-tmpfiles.8
+ tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ )
+ if use test; then
+ targets+=( test-tmpfile-util )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udevadm
+ systemd-hwdb
+ ata_id
+ cdrom_id
+ dmi_memory_id
+ fido_id
+ iocost
+ mtd_probe
+ scsi_id
+ v4l_id
+ src/udev/udev.pc
+ man/udev.conf.5
+ man/systemd.link.5
+ man/hwdb.7
+ man/udev.7
+ man/systemd-hwdb.8
+ man/systemd-udevd.service.8
+ man/udevadm.8
+ man/libudev.3
+ man/udev_device_get_syspath.3
+ man/udev_device_has_tag.3
+ man/udev_device_new_from_syspath.3
+ man/udev_enumerate_add_match_subsystem.3
+ man/udev_enumerate_new.3
+ man/udev_enumerate_scan_devices.3
+ man/udev_list_entry.3
+ man/udev_monitor_filter_update.3
+ man/udev_monitor_new_from_netlink.3
+ man/udev_monitor_receive_device.3
+ man/udev_new.3
+ hwdb.d/60-autosuspend-chromiumos.hwdb
+ rules.d/50-udev-default.rules
+ rules.d/60-persistent-storage.rules
+ rules.d/64-btrfs.rules
+ rules.d/70-uaccess.rules
+ rules.d/71-seat.rules
+ rules.d/73-seat-late.rules
+ rules.d/99-systemd.rules
+ )
+ if use test; then
+ targets+=(
+ test-fido-id-desc
+ test-link-config-tables
+ test-udev-builtin
+ test-udev-device-thread
+ test-udev-format
+ test-udev-manager
+ test-udev-node
+ test-udev-rule-runner
+ test-udev-rules
+ test-udev-spawn
+ test-udev-util
+ )
+ fi
+ fi
+ if use ukify; then
+ targets+=(
+ ukify
+ 60-ukify.install
+ man/ukify.1
+ )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udev:shared_library
+ src/libudev/libudev.pc
+ )
+ if use test; then
+ targets+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ fi
+ if [[ ${#targets[@]} -ne 0 ]]; then
+ meson_src_compile "${targets[@]}"
+ fi
+ if [[ ${#optional_targets[@]} -ne 0 ]]; then
+ nonfatal meson_src_compile "${optional_targets[@]}"
+ fi
+}
+
+multilib_src_test() {
+ local tests=()
+ if multilib_is_native_abi; then
+ if use boot; then
+ tests+=( --suite boot )
+ fi
+ if use kernel-install; then
+ tests+=( --suite kernel-install )
+ fi
+ if use sysusers; then
+ tests+=( --suite sysusers )
+ fi
+ if use tmpfiles; then
+ tests+=( --suite tmpfiles )
+ fi
+ if use udev; then
+ tests+=( --suite udev )
+ fi
+ fi
+ if use udev; then
+ tests+=( --suite libudev )
+ fi
+ if [[ ${#tests[@]} -ne 0 ]]; then
+ meson_src_test --no-rebuild "${tests[@]}"
+ fi
+}
+
+src_install() {
+ meson-multilib_src_install
+}
+
+set_rpath() {
+ patchelf --set-rpath "${EPREFIX}/usr/$(get_libdir)/systemd" "$@" || die "patchelf failed"
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ exeinto "/usr/$(get_libdir)/systemd"
+ doexe src/shared/libsystemd-shared-${PV%%.*}.so
+ if use boot; then
+ set_rpath bootctl
+ dobin bootctl
+ doman man/bootctl.1
+ meson_install --no-rebuild --tags systemd-boot
+ fi
+ if use kernel-install; then
+ set_rpath kernel-install
+ dobin kernel-install
+ doman man/kernel-install.8
+ exeinto /usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ fi
+ if use sysusers; then
+ set_rpath systemd-sysusers
+ dobin systemd-sysusers
+ doman man/{systemd-sysusers.8,sysusers.d.5}
+ fi
+ if use tmpfiles; then
+ set_rpath systemd-tmpfiles
+ dobin systemd-tmpfiles
+ doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ fi
+ if use udev; then
+ set_rpath udevadm systemd-hwdb
+ dobin udevadm systemd-hwdb
+ dosym ../../bin/udevadm /usr/lib/systemd/systemd-udevd
+
+ exeinto /usr/lib/udev
+ set_rpath {ata_id,cdrom_id,dmi_memory_id,fido_id,iocost,mtd_probe,scsi_id,v4l_id}
+ doexe {ata_id,cdrom_id,dmi_memory_id,fido_id,iocost,mtd_probe,scsi_id,v4l_id}
+
+ rm -f rules.d/99-systemd.rules
+ insinto /usr/lib/udev/rules.d
+ doins rules.d/*.rules
+
+ insinto /usr/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ insinto /usr/share/pkgconfig
+ doins src/udev/udev.pc
+
+ doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+ newman man/systemd-udevd.service.8 systemd-udevd.8
+ doman man/libudev.3
+ doman man/udev_*.3
+ fi
+ if use ukify; then
+ exeinto /usr/lib/systemd
+ doexe ukify
+ doman man/ukify.1
+ fi
+ fi
+ if use udev; then
+ meson_install --no-rebuild --tags libudev
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins src/libudev/libudev.pc
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ if use boot; then
+ dobashcomp shell-completion/bash/bootctl
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/{_bootctl,_kernel-install}
+ fi
+ if use kernel-install; then
+ exeinto /usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ fi
+ if use tmpfiles; then
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+ exeinto /etc/cron.daily
+ doexe "${FILESDIR}"/systemd-tmpfiles-clean
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_systemd-tmpfiles
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/x11.conf
+ doins "${FILESDIR}"/{legacy,tmp}.conf
+ fi
+ if use udev; then
+ doheader src/libudev/libudev.h
+
+ insinto /etc/udev
+ doins src/udev/udev.conf
+ keepdir /etc/udev/{hwdb.d,rules.d}
+
+ insinto /usr/lib/systemd/network
+ doins network/99-default.link
+
+ # Remove to avoid conflict with elogind
+ # https://bugs.gentoo.org/856433
+ rm rules.d/70-power-switch.rules || die
+ insinto /usr/lib/udev/rules.d
+ doins rules.d/*.rules
+ doins "${FILESDIR}"/40-gentoo.rules
+
+ insinto /usr/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ dobashcomp shell-completion/bash/udevadm
+
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_udevadm
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+
+ if use split-usr; then
+ dosym ../usr/lib/systemd /lib/systemd
+ dosym ../usr/lib/udev /lib/udev
+ fi
+}
+
+add_service() {
+ local initd=$1
+ local runlevel=$2
+
+ ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+ mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+ ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+ eend $?
+}
+
+pkg_preinst() {
+ # Migrate /lib/{systemd,udev} to /usr/lib
+ # Symlinks will be installed in the merge phase
+ if use split-usr; then
+ local d
+ for d in systemd udev; do
+ if [[ -e ${EROOT}/lib/${d} && ! -L ${EROOT}/lib/${d} ]]; then
+ cp -rpPT "${EROOT}"/{,usr/}lib/${d} || die
+ rm -r "${EROOT}"/lib/${d} || die
+ fi
+ done
+ fi
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ add_service systemd-tmpfiles-setup-dev sysinit
+ add_service systemd-tmpfiles-setup boot
+ fi
+ if use udev; then
+ ebegin "Updating hwdb"
+ systemd-hwdb --root="${ROOT}" update
+ eend $?
+ udev_reload
+ fi
+}
diff --git a/sys-apps/systemd/Manifest b/sys-apps/systemd/Manifest
index 0e7a4c8589dd..d2df006e238f 100644
--- a/sys-apps/systemd/Manifest
+++ b/sys-apps/systemd/Manifest
@@ -1 +1,5 @@
-DIST systemd-246.tar.gz 9534036 BLAKE2B 71b72abcd4d066d35d45d9835d41bec8faa9a7eddc80b48fe7073223f07d32f78a8442c52dc0800940f9750d9c5502123a633738981d797cf610d85df2035bf0 SHA512 7103f7da53f7ced3b5543c238f23bd11c82af8e37166c1720a90576b6b431b4329320c78726166c65a9f5e101dd465c0a86dd13c586c4e55e608a6273d8f324f
+DIST systemd-stable-254.10.tar.gz 14428960 BLAKE2B 488c27b9657ec7452f876ab6c18bbfe711f1351afa022801f5a646f2dd1d76d63c17e52e6ebf43b38a76807907287b654a7eaca3afdb0688f5b05839e98ad727 SHA512 0c127d38d0ade8655ae12172c2edbaa8af68bd29f42d965b988d75e74626846ae859bcf0b39b535c9a99ad8c709ad7575ed4d5ea5bc95ce8729e3caafdb32b70
+DIST systemd-stable-254.8.tar.gz 14418468 BLAKE2B e5a151ece86e57c7224fc95bda1b4ede1277fce4a2ba28d3605ab0431a2aafe1088f90c49a20e3b53a5b56aeef7c0f1f5da0601db740150f5efdf6eae7bbde80 SHA512 a3f35d9fcafcccd8d9c33ab1047241f226146017be95562a67c7dcc9eeb4b77bded92ad80e92f4767f2bf2009df0172a621d4c54a805e07ed5a5ed03940ec28e
+DIST systemd-stable-254.9.tar.gz 14423806 BLAKE2B ab39c0a00b8451b24b40e39f4bf7ecb912ff23d9cd6f8d30fd0545e895936baa635b1ff63c02a83761682b72f44244aac8338bf6506885c9b07cd0c5247b6693 SHA512 a0300693a044cfe4c76deb0e3e48a927125eb97c3952c07ba68936f1e093c93506d8044b249b534b8e778ade6143b43194f8d6b721a8cd520bc7bb4cb3d3e5c1
+DIST systemd-stable-255.3.tar.gz 14873273 BLAKE2B e22ef391c691fcf1e765c5112e1a55096d3bba61a9dae3ea1a3958add4e355892a97d5214e63c516ba3b70e2a83bb5d21254812d870f06c16c74a58d4f957d75 SHA512 c2868a53df2176649b0d0c94e5d451c46ba783bcdbc89ce12434ed2d11dba44b4854ffe4c2430f3f64eef2e214cbb51d5f740170afbd9edd66761a8851157453
+DIST systemd-stable-255.4.tar.gz 14952427 BLAKE2B 27f5080f83a9e870fbe8e3ebcb500a63c42022f1f96f26f35c76eeeea85dab691291c31ee716cab330b76df5e576910a6a82f51267eff4f766b1d4c304d815c9 SHA512 8a2bde11a55f7f788ba7751789a5e9be6ce9634e88d54e49f6e832c4c49020c6cacaf2a610fe26f92998b0cbf43c6c2150a96b2c0953d23261009f57d71ea979
diff --git a/sys-apps/systemd/files/254-PrivateDevices-userdbd.patch b/sys-apps/systemd/files/254-PrivateDevices-userdbd.patch
new file mode 100644
index 000000000000..115c831c275a
--- /dev/null
+++ b/sys-apps/systemd/files/254-PrivateDevices-userdbd.patch
@@ -0,0 +1,242 @@
+https://bugs.gentoo.org/920331
+https://github.com/systemd/systemd/issues/30535
+
+From 4a9e03aa6bb2cbd23dac00f2b2a7642cc79eaade Mon Sep 17 00:00:00 2001
+From: Daan De Meyer <daan.j.demeyer@gmail.com>
+Date: Wed, 27 Sep 2023 11:55:59 +0200
+Subject: [PATCH 1/2] core: Make private /dev read-only after populating it
+
+---
+ src/core/namespace.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/core/namespace.c b/src/core/namespace.c
+index e2304f5d066da..d1153f7690140 100644
+--- a/src/core/namespace.c
++++ b/src/core/namespace.c
+@@ -995,6 +995,11 @@ static int mount_private_dev(MountEntry *m) {
+ if (r < 0)
+ log_debug_errno(r, "Failed to set up basic device tree at '%s', ignoring: %m", temporary_mount);
+
++ /* Make the bind mount read-only. */
++ r = mount_nofollow_verbose(LOG_DEBUG, NULL, dev, NULL, MS_REMOUNT|MS_BIND|MS_RDONLY, NULL);
++ if (r < 0)
++ return r;
++
+ /* Create the /dev directory if missing. It is more likely to be missing when the service is started
+ * with RootDirectory. This is consistent with mount units creating the mount points when missing. */
+ (void) mkdir_p_label(mount_entry_path(m), 0755);
+
+From cd7f3702eb47c82a50bf74c2b7c15c2e4e1f5c79 Mon Sep 17 00:00:00 2001
+From: Daan De Meyer <daan.j.demeyer@gmail.com>
+Date: Wed, 27 Sep 2023 10:52:50 +0200
+Subject: [PATCH 2/2] core: Use a subdirectory of /run/ for PrivateDevices=
+
+When we're starting early boot services such as systemd-userdbd.service,
+/tmp might not yet be mounted, so let's use a directory in /run instead
+which is guaranteed to be available.
+---
+ src/core/execute.c | 1 +
+ src/core/namespace.c | 61 +++++++++++++++++++++++++++++----------
+ src/core/namespace.h | 2 ++
+ src/test/test-namespace.c | 1 +
+ src/test/test-ns.c | 1 +
+ 5 files changed, 50 insertions(+), 16 deletions(-)
+
+diff --git a/src/core/execute.c b/src/core/execute.c
+index a52df64d01081..89c3868d55f6c 100644
+--- a/src/core/execute.c
++++ b/src/core/execute.c
+@@ -3307,6 +3307,7 @@ static int apply_mount_namespace(
+ extension_dir,
+ root_dir || root_image ? params->notify_socket : NULL,
+ host_os_release_stage,
++ params->runtime_scope,
+ error_path);
+
+ /* If we couldn't set up the namespace this is probably due to a missing capability. setup_namespace() reports
+diff --git a/src/core/namespace.c b/src/core/namespace.c
+index d1153f7690140..a0471ac8884bf 100644
+--- a/src/core/namespace.c
++++ b/src/core/namespace.c
+@@ -909,7 +909,19 @@ static int clone_device_node(
+ return 0;
+ }
+
+-static int mount_private_dev(MountEntry *m) {
++static char *settle_runtime_dir(RuntimeScope scope) {
++ char *runtime_dir;
++
++ if (scope != RUNTIME_SCOPE_USER)
++ return strdup("/run/");
++
++ if (asprintf(&runtime_dir, "/run/user/" UID_FMT, geteuid()) < 0)
++ return NULL;
++
++ return runtime_dir;
++}
++
++static int mount_private_dev(MountEntry *m, RuntimeScope scope) {
+ static const char devnodes[] =
+ "/dev/null\0"
+ "/dev/zero\0"
+@@ -918,13 +930,21 @@ static int mount_private_dev(MountEntry *m) {
+ "/dev/urandom\0"
+ "/dev/tty\0";
+
+- char temporary_mount[] = "/tmp/namespace-dev-XXXXXX";
++ _cleanup_free_ char *runtime_dir = NULL, *temporary_mount = NULL;
+ const char *dev = NULL, *devpts = NULL, *devshm = NULL, *devhugepages = NULL, *devmqueue = NULL, *devlog = NULL, *devptmx = NULL;
+ bool can_mknod = true;
+ int r;
+
+ assert(m);
+
++ runtime_dir = settle_runtime_dir(scope);
++ if (!runtime_dir)
++ return log_oom_debug();
++
++ temporary_mount = path_join(runtime_dir, "systemd/namespace-dev-XXXXXX");
++ if (!temporary_mount)
++ return log_oom_debug();
++
+ if (!mkdtemp(temporary_mount))
+ return log_debug_errno(errno, "Failed to create temporary directory '%s': %m", temporary_mount);
+
+@@ -1364,7 +1384,8 @@ static int apply_one_mount(
+ MountEntry *m,
+ const ImagePolicy *mount_image_policy,
+ const ImagePolicy *extension_image_policy,
+- const NamespaceInfo *ns_info) {
++ const NamespaceInfo *ns_info,
++ RuntimeScope scope) {
+
+ _cleanup_free_ char *inaccessible = NULL;
+ bool rbind = true, make = false;
+@@ -1379,8 +1400,7 @@ static int apply_one_mount(
+ switch (m->mode) {
+
+ case INACCESSIBLE: {
+- _cleanup_free_ char *tmp = NULL;
+- const char *runtime_dir;
++ _cleanup_free_ char *runtime_dir = NULL;
+ struct stat target;
+
+ /* First, get rid of everything that is below if there
+@@ -1396,14 +1416,14 @@ static int apply_one_mount(
+ mount_entry_path(m));
+ }
+
+- if (geteuid() == 0)
+- runtime_dir = "/run";
+- else {
+- if (asprintf(&tmp, "/run/user/" UID_FMT, geteuid()) < 0)
+- return -ENOMEM;
+-
+- runtime_dir = tmp;
+- }
++ /* We don't pass the literal runtime scope through here but one based purely on our UID. This
++ * means that the root user's --user services will use the host's inaccessible inodes rather
++ * then root's private ones. This is preferable since it means device nodes that are
++ * overmounted to make them inaccessible will be overmounted with a device node, rather than
++ * an AF_UNIX socket inode. */
++ runtime_dir = settle_runtime_dir(geteuid() == 0 ? RUNTIME_SCOPE_SYSTEM : RUNTIME_SCOPE_USER);
++ if (!runtime_dir)
++ return log_oom_debug();
+
+ r = mode_to_inaccessible_node(runtime_dir, target.st_mode, &inaccessible);
+ if (r < 0)
+@@ -1523,7 +1543,7 @@ static int apply_one_mount(
+ break;
+
+ case PRIVATE_DEV:
+- return mount_private_dev(m);
++ return mount_private_dev(m, scope);
+
+ case BIND_DEV:
+ return mount_bind_dev(m);
+@@ -1824,6 +1844,7 @@ static int apply_mounts(
+ const NamespaceInfo *ns_info,
+ MountEntry *mounts,
+ size_t *n_mounts,
++ RuntimeScope scope,
+ char **symlinks,
+ char **error_path) {
+
+@@ -1875,7 +1896,7 @@ static int apply_mounts(
+ break;
+ }
+
+- r = apply_one_mount(root, m, mount_image_policy, extension_image_policy, ns_info);
++ r = apply_one_mount(root, m, mount_image_policy, extension_image_policy, ns_info, scope);
+ if (r < 0) {
+ if (error_path && mount_entry_path(m))
+ *error_path = strdup(mount_entry_path(m));
+@@ -2030,6 +2051,7 @@ int setup_namespace(
+ const char *extension_dir,
+ const char *notify_socket,
+ const char *host_os_release_stage,
++ RuntimeScope scope,
+ char **error_path) {
+
+ _cleanup_(loop_device_unrefp) LoopDevice *loop_device = NULL;
+@@ -2490,7 +2512,14 @@ int setup_namespace(
+ (void) base_filesystem_create(root, UID_INVALID, GID_INVALID);
+
+ /* Now make the magic happen */
+- r = apply_mounts(root, mount_image_policy, extension_image_policy, ns_info, mounts, &n_mounts, symlinks, error_path);
++ r = apply_mounts(root,
++ mount_image_policy,
++ extension_image_policy,
++ ns_info,
++ mounts, &n_mounts,
++ scope,
++ symlinks,
++ error_path);
+ if (r < 0)
+ goto finish;
+
+diff --git a/src/core/namespace.h b/src/core/namespace.h
+index b6132154c5132..581403d89826d 100644
+--- a/src/core/namespace.h
++++ b/src/core/namespace.h
+@@ -16,6 +16,7 @@ typedef struct MountImage MountImage;
+ #include "fs-util.h"
+ #include "macro.h"
+ #include "namespace-util.h"
++#include "runtime-scope.h"
+ #include "string-util.h"
+
+ typedef enum ProtectHome {
+@@ -134,6 +135,7 @@ int setup_namespace(
+ const char *extension_dir,
+ const char *notify_socket,
+ const char *host_os_release_stage,
++ RuntimeScope scope,
+ char **error_path);
+
+ #define RUN_SYSTEMD_EMPTY "/run/systemd/empty"
+diff --git a/src/test/test-namespace.c b/src/test/test-namespace.c
+index 25aafc35ca837..42ac65d08c87a 100644
+--- a/src/test/test-namespace.c
++++ b/src/test/test-namespace.c
+@@ -206,6 +206,7 @@ TEST(protect_kernel_logs) {
+ NULL,
+ NULL,
+ NULL,
++ RUNTIME_SCOPE_SYSTEM,
+ NULL);
+ assert_se(r == 0);
+
+diff --git a/src/test/test-ns.c b/src/test/test-ns.c
+index 77afd2f6b9eb8..eb3afed9e1c66 100644
+--- a/src/test/test-ns.c
++++ b/src/test/test-ns.c
+@@ -108,6 +108,7 @@ int main(int argc, char *argv[]) {
+ NULL,
+ NULL,
+ NULL,
++ RUNTIME_SCOPE_SYSTEM,
+ NULL);
+ if (r < 0) {
+ log_error_errno(r, "Failed to set up namespace: %m");
diff --git a/sys-apps/systemd/files/255-install-format-overflow.patch b/sys-apps/systemd/files/255-install-format-overflow.patch
new file mode 100644
index 000000000000..3dca7d8e8ec7
--- /dev/null
+++ b/sys-apps/systemd/files/255-install-format-overflow.patch
@@ -0,0 +1,43 @@
+https://github.com/systemd/systemd-stable/commit/f85d2c6d1023b1fe558142440b1d63c4fc5f7c98
+https://github.com/systemd/systemd/issues/30448
+https://bugs.gentoo.org/916518
+
+From f85d2c6d1023b1fe558142440b1d63c4fc5f7c98 Mon Sep 17 00:00:00 2001
+From: Luca Boccassi <bluca@debian.org>
+Date: Sat, 24 Feb 2024 12:05:44 +0000
+Subject: [PATCH] install: fix compiler warning about empty directive argument
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+On ppc64el with gcc 13.2 on Ubuntu 24.04:
+
+3s In file included from ../src/basic/macro.h:386,
+483s from ../src/basic/alloc-util.h:10,
+483s from ../src/shared/install.c:12:
+483s ../src/shared/install.c: In function ‘install_changes_dump’:
+483s ../src/shared/install.c:432:64: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
+483s 432 | err = log_error_errno(changes[i].type, "Failed to %s unit, unit %s does not exist.",
+483s | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+483s ../src/shared/install.c:432:75: note: format string is defined here
+483s 432 | err = log_error_errno(changes[i].type, "Failed to %s unit, unit %s does not exist.",
+
+(cherry picked from commit 8040fa55a1cbc34dede3205a902095ecd26c21e3)
+--- a/src/shared/install.c
++++ b/src/shared/install.c
+@@ -340,9 +340,12 @@ void install_changes_dump(int r, const char *verb, const InstallChange *changes,
+ assert(verb || r >= 0);
+
+ for (size_t i = 0; i < n_changes; i++) {
+- if (changes[i].type < 0)
+- assert(verb);
+ assert(changes[i].path);
++ /* This tries to tell the compiler that it's safe to use 'verb' in a string format if there
++ * was an error, but the compiler doesn't care and fails anyway, so strna(verb) is used
++ * too. */
++ assert(verb || changes[i].type >= 0);
++ verb = strna(verb);
+
+ /* When making changes here, make sure to also change install_error() in dbus-manager.c. */
+
+
diff --git a/sys-apps/systemd/files/gentoo-journald-audit-r1.patch b/sys-apps/systemd/files/gentoo-journald-audit-r1.patch
new file mode 100644
index 000000000000..b5c32df788e9
--- /dev/null
+++ b/sys-apps/systemd/files/gentoo-journald-audit-r1.patch
@@ -0,0 +1,51 @@
+From 2de502ccff1cc780d9d29c4ff7e6c1e0f2d7a082 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Fri, 21 Aug 2020 13:16:17 -0400
+Subject: [PATCH] journald: do not change the kernel audit setting by default
+
+Bug: https://bugs.gentoo.org/736910
+---
+ man/journald.conf.xml | 2 +-
+ src/journal/journald-server.c | 2 +-
+ src/journal/journald.conf | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/man/journald.conf.xml b/man/journald.conf.xml
+index 50c33e4792..2e14674f42 100644
+--- a/man/journald.conf.xml
++++ b/man/journald.conf.xml
+@@ -427,7 +427,7 @@
+ kernel auditing on start-up. If disabled it will turn it off. If unset it will neither enable nor
+ disable it, leaving the previous state unchanged. This means if another tool turns on auditing even
+ if <command>systemd-journald</command> left it off, it will still collect the generated
+- messages. Defaults to on.</para>
++ messages.</para>
+
+ <para>Note that this option does not control whether <command>systemd-journald</command> collects
+ generated audit records, it just controls whether it tells the kernel to generate them. If you need
+diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
+index 022e12d83d..6b3d261af6 100644
+--- a/src/journal/journald-server.c
++++ b/src/journal/journald-server.c
+@@ -2367,7 +2367,7 @@ int server_init(Server *s, const char *namespace) {
+ .compress.threshold_bytes = UINT64_MAX,
+ .seal = true,
+
+- .set_audit = true,
++ .set_audit = -1,
+
+ .watchdog_usec = USEC_INFINITY,
+
+diff --git a/src/journal/journald.conf b/src/journal/journald.conf
+index 5a60a9d39c..64156d5463 100644
+--- a/src/journal/journald.conf
++++ b/src/journal/journald.conf
+@@ -44,4 +44,4 @@
+ #MaxLevelWall=emerg
+ #LineMax=48K
+ #ReadKMsg=yes
+-#Audit=yes
++#Audit=
+--
+2.39.1
+
diff --git a/sys-apps/systemd/files/gentoo-journald-audit.patch b/sys-apps/systemd/files/gentoo-journald-audit.patch
deleted file mode 100644
index 088bceb7696e..000000000000
--- a/sys-apps/systemd/files/gentoo-journald-audit.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 593db1c78011ddce551051ce17eda6feac079b3d Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Fri, 21 Aug 2020 13:16:17 -0400
-Subject: [PATCH] journald: do not change the kernel audit setting by default
-
-Bug: https://bugs.gentoo.org/736910
----
- man/journald.conf.xml | 2 +-
- src/journal/journald-server.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/man/journald.conf.xml b/man/journald.conf.xml
-index bfd359a903..7e93d4050e 100644
---- a/man/journald.conf.xml
-+++ b/man/journald.conf.xml
-@@ -411,7 +411,7 @@
- <command>systemd-journald</command> collects generated audit records, it just controls whether it
- tells the kernel to generate them. This means if another tool turns on auditing even if
- <command>systemd-journald</command> left it off, it will still collect the generated
-- messages. Defaults to on.</para></listitem>
-+ messages.</para></listitem>
- </varlistentry>
-
- <varlistentry>
-diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
-index 5865bf9809..163be685a8 100644
---- a/src/journal/journald-server.c
-+++ b/src/journal/journald-server.c
-@@ -2208,7 +2208,7 @@ int server_init(Server *s, const char *namespace) {
- .compress.threshold_bytes = (uint64_t) -1,
- .seal = true,
-
-- .set_audit = true,
-+ .set_audit = -1,
-
- .watchdog_usec = USEC_INFINITY,
-
---
-2.28.0
-
diff --git a/sys-apps/systemd/files/gentoo-systemctl-disable-sysv-sync.patch b/sys-apps/systemd/files/gentoo-systemctl-disable-sysv-sync.patch
deleted file mode 100644
index d92d2d43a0c2..000000000000
--- a/sys-apps/systemd/files/gentoo-systemctl-disable-sysv-sync.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 7ccd5724afc6fa83ec6cd93dbaf4faf3671c88fc Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Mon, 27 Apr 2020 10:22:03 -0400
-Subject: [PATCH] systemctl: disable synchronizaion of sysv init scripts
-
----
- src/systemctl/systemctl.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
-index d319d5d375..bb8419800c 100644
---- a/src/systemctl/systemctl.c
-+++ b/src/systemctl/systemctl.c
-@@ -6622,7 +6622,7 @@ static int import_environment(int argc, char *argv[], void *userdata) {
- static int enable_sysv_units(const char *verb, char **args) {
- int r = 0;
-
--#if HAVE_SYSV_COMPAT
-+#if 0
- _cleanup_(lookup_paths_free) LookupPaths paths = {};
- unsigned f = 0;
-
---
-2.26.2
-
diff --git a/sys-apps/systemd/files/legacy.conf b/sys-apps/systemd/files/legacy.conf
new file mode 100644
index 000000000000..2d322e886960
--- /dev/null
+++ b/sys-apps/systemd/files/legacy.conf
@@ -0,0 +1,3 @@
+# Based on legacy.conf from systemd
+d /run/lock
+L /var/lock - - - - ../run/lock
diff --git a/sys-apps/systemd/files/systemd-253-initrd-generators.patch b/sys-apps/systemd/files/systemd-253-initrd-generators.patch
new file mode 100644
index 000000000000..60e7b29d7a1f
--- /dev/null
+++ b/sys-apps/systemd/files/systemd-253-initrd-generators.patch
@@ -0,0 +1,34 @@
+https://bugs.gentoo.org/896364
+
+Workaround for bug in sys-kernel/dracut.
+
+From 6b25470ee28843a49c50442e9d8a98edc842ceca Mon Sep 17 00:00:00 2001
+From: Yu Watanabe <watanabe.yu+github@gmail.com>
+Date: Mon, 20 Feb 2023 12:00:30 +0900
+Subject: [PATCH] core/manager: run generators directly when we are in initrd
+
+Some initrd system write files at ourside of /run, /etc, or other
+allowed places. This is a kind of workaround, but in most cases, such
+sandboxing is not necessary as the filesystem is on ramfs when we are in
+initrd.
+
+Fixes #26488.
+---
+ src/core/manager.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/core/manager.c b/src/core/manager.c
+index 7b394794b0d4..306477c6e6c2 100644
+--- a/src/core/manager.c
++++ b/src/core/manager.c
+@@ -3822,8 +3822,8 @@ static int manager_run_generators(Manager *m) {
+ /* If we are the system manager, we fork and invoke the generators in a sanitized mount namespace. If
+ * we are the user manager, let's just execute the generators directly. We might not have the
+ * necessary privileges, and the system manager has already mounted /tmp/ and everything else for us.
+- */
+- if (MANAGER_IS_USER(m)) {
++ * If we are in initrd, let's also execute the generators directly, as we are in ramfs. */
++ if (MANAGER_IS_USER(m) || in_initrd()) {
+ r = manager_execute_generators(m, paths, /* remount_ro= */ false);
+ goto finish;
+ }
diff --git a/sys-apps/systemd/files/systemd-254.9-fchmodat2.patch b/sys-apps/systemd/files/systemd-254.9-fchmodat2.patch
new file mode 100644
index 000000000000..27bdd121aa60
--- /dev/null
+++ b/sys-apps/systemd/files/systemd-254.9-fchmodat2.patch
@@ -0,0 +1,255 @@
+From 3d93b69fa558b33f1f2b52305fa4c2d836789394 Mon Sep 17 00:00:00 2001
+From: Arseny Maslennikov <arseny@altlinux.org>
+Date: Sun, 15 Oct 2023 11:00:00 +0300
+Subject: [PATCH 1/3] basic/missing_syscall: generate defs for `fchmodat2(2)`
+
+We will need this to set seccomp filters on this system call regardless
+of libseccomp or kernel support.
+
+(cherry picked from commit 3677364cc3a2c5429380cfd3a2472e2da87925c4)
+---
+ src/basic/missing_syscall_def.h | 68 +++++++++++++++++++++++++++++++++
+ src/basic/missing_syscalls.py | 1 +
+ 2 files changed, 69 insertions(+)
+
+diff --git a/src/basic/missing_syscall_def.h b/src/basic/missing_syscall_def.h
+index 402fdd00dc..b5beb434db 100644
+--- a/src/basic/missing_syscall_def.h
++++ b/src/basic/missing_syscall_def.h
+@@ -246,6 +246,74 @@ assert_cc(__NR_copy_file_range == systemd_NR_copy_file_range);
+ # endif
+ #endif
+
++#ifndef __IGNORE_fchmodat2
++# if defined(__aarch64__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__alpha__)
++# define systemd_NR_fchmodat2 562
++# elif defined(__arc__) || defined(__tilegx__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__arm__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__i386__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__ia64__)
++# define systemd_NR_fchmodat2 1476
++# elif defined(__loongarch_lp64)
++# define systemd_NR_fchmodat2 452
++# elif defined(__m68k__)
++# define systemd_NR_fchmodat2 452
++# elif defined(_MIPS_SIM)
++# if _MIPS_SIM == _MIPS_SIM_ABI32
++# define systemd_NR_fchmodat2 4452
++# elif _MIPS_SIM == _MIPS_SIM_NABI32
++# define systemd_NR_fchmodat2 6452
++# elif _MIPS_SIM == _MIPS_SIM_ABI64
++# define systemd_NR_fchmodat2 5452
++# else
++# error "Unknown MIPS ABI"
++# endif
++# elif defined(__hppa__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__powerpc__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__riscv)
++# if __riscv_xlen == 32
++# define systemd_NR_fchmodat2 452
++# elif __riscv_xlen == 64
++# define systemd_NR_fchmodat2 452
++# else
++# error "Unknown RISC-V ABI"
++# endif
++# elif defined(__s390__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__sparc__)
++# define systemd_NR_fchmodat2 452
++# elif defined(__x86_64__)
++# if defined(__ILP32__)
++# define systemd_NR_fchmodat2 (452 | /* __X32_SYSCALL_BIT */ 0x40000000)
++# else
++# define systemd_NR_fchmodat2 452
++# endif
++# elif !defined(missing_arch_template)
++# warning "fchmodat2() syscall number is unknown for your architecture"
++# endif
++
++/* may be an (invalid) negative number due to libseccomp, see PR 13319 */
++# if defined __NR_fchmodat2 && __NR_fchmodat2 >= 0
++# if defined systemd_NR_fchmodat2
++assert_cc(__NR_fchmodat2 == systemd_NR_fchmodat2);
++# endif
++# else
++# if defined __NR_fchmodat2
++# undef __NR_fchmodat2
++# endif
++# if defined systemd_NR_fchmodat2 && systemd_NR_fchmodat2 >= 0
++# define __NR_fchmodat2 systemd_NR_fchmodat2
++# endif
++# endif
++#endif
++
+ #ifndef __IGNORE_getrandom
+ # if defined(__aarch64__)
+ # define systemd_NR_getrandom 278
+diff --git a/src/basic/missing_syscalls.py b/src/basic/missing_syscalls.py
+index 5ccf02adec..00f72dc7a8 100644
+--- a/src/basic/missing_syscalls.py
++++ b/src/basic/missing_syscalls.py
+@@ -9,6 +9,7 @@ SYSCALLS = [
+ 'bpf',
+ 'close_range',
+ 'copy_file_range',
++ 'fchmodat2',
+ 'getrandom',
+ 'memfd_create',
+ 'mount_setattr',
+--
+2.43.0
+
+
+From c1ffd32c642dcadb844b149fcc0c6fe0dbe8a292 Mon Sep 17 00:00:00 2001
+From: Arseny Maslennikov <arseny@altlinux.org>
+Date: Sun, 15 Oct 2023 11:00:00 +0300
+Subject: [PATCH 2/3] seccomp: include `fchmodat2` in `@file-system`
+
+(cherry picked from commit 6e10405aa25fe5e76b740d9ec59730e3f4470c7a)
+---
+ src/shared/seccomp-util.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/shared/seccomp-util.c b/src/shared/seccomp-util.c
+index bd9660cb35..a9c6279b18 100644
+--- a/src/shared/seccomp-util.c
++++ b/src/shared/seccomp-util.c
+@@ -468,6 +468,7 @@ const SyscallFilterSet syscall_filter_sets[_SYSCALL_FILTER_SET_MAX] = {
+ "fchdir\0"
+ "fchmod\0"
+ "fchmodat\0"
++ "fchmodat2\0"
+ "fcntl\0"
+ "fcntl64\0"
+ "fgetxattr\0"
+--
+2.43.0
+
+
+From da6ec29e7f755e14655132b4e0b04f463f40af3e Mon Sep 17 00:00:00 2001
+From: Arseny Maslennikov <arseny@altlinux.org>
+Date: Sun, 15 Oct 2023 11:00:00 +0300
+Subject: [PATCH 3/3] seccomp: also check the mode parameter of `fchmodat2(2)`
+
+If there is no libseccomp support, just ban the entire syscall instead
+so wrappers will fall back to older, supported syscalls.
+Also reflect all of this in `test-seccomp.c`.
+
+(cherry picked from commit 8b45281daa3a87b4b7a3248263cd0ba929d15596)
+---
+ src/shared/seccomp-util.c | 24 +++++++++++++++++++++++-
+ src/test/test-seccomp.c | 28 ++++++++++++++++++++++++++++
+ 2 files changed, 51 insertions(+), 1 deletion(-)
+
+diff --git a/src/shared/seccomp-util.c b/src/shared/seccomp-util.c
+index a9c6279b18..12fd95d95b 100644
+--- a/src/shared/seccomp-util.c
++++ b/src/shared/seccomp-util.c
+@@ -2038,7 +2038,7 @@ int seccomp_protect_hostname(void) {
+ static int seccomp_restrict_sxid(scmp_filter_ctx seccomp, mode_t m) {
+ /* Checks the mode_t parameter of the following system calls:
+ *
+- * → chmod() + fchmod() + fchmodat()
++ * → chmod() + fchmod() + fchmodat() + fchmodat2()
+ * → open() + creat() + openat()
+ * → mkdir() + mkdirat()
+ * → mknod() + mknodat()
+@@ -2081,6 +2081,28 @@ static int seccomp_restrict_sxid(scmp_filter_ctx seccomp, mode_t m) {
+ else
+ any = true;
+
++#if defined(__SNR_fchmodat2)
++ r = seccomp_rule_add_exact(
++ seccomp,
++ SCMP_ACT_ERRNO(EPERM),
++ SCMP_SYS(fchmodat2),
++ 1,
++ SCMP_A2(SCMP_CMP_MASKED_EQ, m, m));
++#else
++ /* It looks like this libseccomp does not know about fchmodat2().
++ * Pretend the fchmodat2() system call is not supported at all,
++ * regardless of the kernel version. */
++ r = seccomp_rule_add_exact(
++ seccomp,
++ SCMP_ACT_ERRNO(ENOSYS),
++ __NR_fchmodat2,
++ 0);
++#endif
++ if (r < 0)
++ log_debug_errno(r, "Failed to add filter for fchmodat2: %m");
++ else
++ any = true;
++
+ r = seccomp_rule_add_exact(
+ seccomp,
+ SCMP_ACT_ERRNO(EPERM),
+diff --git a/src/test/test-seccomp.c b/src/test/test-seccomp.c
+index 2d06098ddd..3a73262a8b 100644
+--- a/src/test/test-seccomp.c
++++ b/src/test/test-seccomp.c
+@@ -21,6 +21,7 @@
+ #include "macro.h"
+ #include "memory-util.h"
+ #include "missing_sched.h"
++#include "missing_syscall_def.h"
+ #include "nsflags.h"
+ #include "nulstr-util.h"
+ #include "process-util.h"
+@@ -1003,6 +1004,23 @@ static int real_open(const char *path, int flags, mode_t mode) {
+ #endif
+ }
+
++static int try_fchmodat2(int dirfd, const char *path, int flags, mode_t mode) {
++ /* glibc does not provide a direct wrapper for fchmodat2(). Let's hence define our own wrapper for
++ * testing purposes that calls the real syscall, on architectures and in environments where
++ * SYS_fchmodat2 is defined. Otherwise, let's just fall back to the glibc fchmodat() call. */
++
++#if defined __NR_fchmodat2 && __NR_fchmodat2 >= 0
++ int r;
++ r = (int) syscall(__NR_fchmodat2, dirfd, path, flags, mode);
++ /* The syscall might still be unsupported by kernel or libseccomp. */
++ if (r < 0 && errno == ENOSYS)
++ return fchmodat(dirfd, path, flags, mode);
++ return r;
++#else
++ return fchmodat(dirfd, path, flags, mode);
++#endif
++}
++
+ TEST(restrict_suid_sgid) {
+ pid_t pid;
+
+@@ -1044,6 +1062,11 @@ TEST(restrict_suid_sgid) {
+ assert_se(fchmodat(AT_FDCWD, path, 0755 | S_ISGID | S_ISUID, 0) >= 0);
+ assert_se(fchmodat(AT_FDCWD, path, 0755, 0) >= 0);
+
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755 | S_ISUID, 0) >= 0);
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755 | S_ISGID, 0) >= 0);
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755 | S_ISGID | S_ISUID, 0) >= 0);
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755, 0) >= 0);
++
+ k = real_open(z, O_CREAT|O_RDWR|O_CLOEXEC|O_EXCL, 0644 | S_ISUID);
+ k = safe_close(k);
+ assert_se(unlink(z) >= 0);
+@@ -1145,6 +1168,11 @@ TEST(restrict_suid_sgid) {
+ assert_se(fchmodat(AT_FDCWD, path, 0755 | S_ISGID | S_ISUID, 0) < 0 && errno == EPERM);
+ assert_se(fchmodat(AT_FDCWD, path, 0755, 0) >= 0);
+
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755 | S_ISUID, 0) < 0 && errno == EPERM);
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755 | S_ISGID, 0) < 0 && errno == EPERM);
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755 | S_ISGID | S_ISUID, 0) < 0 && errno == EPERM);
++ assert_se(try_fchmodat2(AT_FDCWD, path, 0755, 0) >= 0);
++
+ assert_se(real_open(z, O_CREAT|O_RDWR|O_CLOEXEC|O_EXCL, 0644 | S_ISUID) < 0 && errno == EPERM);
+ assert_se(real_open(z, O_CREAT|O_RDWR|O_CLOEXEC|O_EXCL, 0644 | S_ISGID) < 0 && errno == EPERM);
+ assert_se(real_open(z, O_CREAT|O_RDWR|O_CLOEXEC|O_EXCL, 0644 | S_ISUID | S_ISGID) < 0 && errno == EPERM);
+--
+2.43.0
+
diff --git a/sys-apps/systemd/files/systemd-test-process-util.patch b/sys-apps/systemd/files/systemd-test-process-util.patch
new file mode 100644
index 000000000000..92c7eaf29577
--- /dev/null
+++ b/sys-apps/systemd/files/systemd-test-process-util.patch
@@ -0,0 +1,31 @@
+From c3f91c76af292e3bd2c6e2b12e37de88cf5d7c72 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Thu, 18 Apr 2024 00:04:44 -0400
+Subject: [PATCH] test-process-util: remove assert that fails under pid-sandbox
+
+Upstream refuses to fix this.
+
+Bug: https://bugs.gentoo.org/674458
+Bug: https://github.com/systemd/systemd/issues/25015
+---
+ src/test/test-process-util.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/test/test-process-util.c b/src/test/test-process-util.c
+index c96bd4341b..9ff1bdc082 100644
+--- a/src/test/test-process-util.c
++++ b/src/test/test-process-util.c
+@@ -92,8 +92,8 @@ static void test_pid_get_comm_one(pid_t pid) {
+ assert_se(r >= 0 || r == -EACCES);
+ log_info("PID"PID_FMT" strlen(environ): %zi", pid, env ? (ssize_t)strlen(env) : (ssize_t)-errno);
+
+- if (!detect_container())
+- assert_se(get_ctty_devnr(pid, &h) == -ENXIO || pid != 1);
++
++
+
+ (void) getenv_for_pid(pid, "PATH", &i);
+ log_info("PID"PID_FMT" $PATH: '%s'", pid, strna(i));
+--
+2.44.0
+
diff --git a/sys-apps/systemd/files/systemd-user.pam b/sys-apps/systemd/files/systemd-user.pam
new file mode 100644
index 000000000000..38ae3211f8d4
--- /dev/null
+++ b/sys-apps/systemd/files/systemd-user.pam
@@ -0,0 +1,5 @@
+account include system-auth
+
+session required pam_loginuid.so
+session include system-auth
+session optional pam_systemd.so
diff --git a/sys-apps/systemd/metadata.xml b/sys-apps/systemd/metadata.xml
index 74125276442a..c9b8604a3c68 100644
--- a/sys-apps/systemd/metadata.xml
+++ b/sys-apps/systemd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>systemd@gentoo.org</email>
@@ -9,32 +9,35 @@
<subslots>Incremented for ABI breaks in libudev or libsystemd</subslots>
</slots>
<use>
- <flag name="apparmor">Enable AppArmor support</flag>
<flag name="audit">Enable support for <pkg>sys-process/audit</pkg></flag>
+ <flag name="boot">Enable EFI boot manager and stub loader</flag>
<flag name="cgroup-hybrid">Default to hybrid (legacy) cgroup hierarchy instead of unified (modern).</flag>
<flag name="curl">Enable support for uploading journals</flag>
<flag name="cryptsetup">Enable cryptsetup tools (includes unit generator for crypttab)</flag>
<flag name="dns-over-tls">Enable DNS-over-TLS support</flag>
- <flag name="gnuefi">Enable EFI boot manager and stub loader (built using <pkg>sys-boot/gnu-efi</pkg>)</flag>
<flag name="elfutils">Enable coredump stacktraces in the journal</flag>
- <flag name="gcrypt">Enable sealing of journal files using gcrypt</flag>
+ <flag name="fido2">Enable FIDO2 support</flag>
+ <flag name="gcrypt">Enable use of <pkg>dev-libs/libgcrypt</pkg> for various features</flag>
<flag name="homed">Enable portable home directories</flag>
<flag name="http">Enable embedded HTTP server in journald</flag>
- <flag name="hwdb">Enable support for the hardware database</flag>
<flag name="importd">Enable import daemon</flag>
+ <flag name="iptables">Use libiptc from <pkg>net-firewall/iptables</pkg> for NAT support in systemd-networkd; this is used only if the running kernel does not support nftables</flag>
+ <flag name="kernel-install">Enable kernel-install</flag>
<flag name="kmod">Enable kernel module loading via <pkg>sys-apps/kmod</pkg></flag>
<flag name="lz4">Enable lz4 compression for the journal</flag>
- <flag name="nat">Enable support for network address translation in networkd</flag>
+ <flag name="openssl">Enable use of <pkg>dev-libs/openssl</pkg> for various features</flag>
<flag name="pkcs11">Enable PKCS#11 support for cryptsetup and homed</flag>
<flag name="pwquality">Enable password quality checking in homed</flag>
- <flag name="repart">Enable support for growing/adding partitions</flag>
<flag name="qrcode">Enable qrcode output support in journal</flag>
<flag name="resolvconf">Install resolvconf symlink for systemd-resolve</flag>
<flag name="sysv-utils">Install sysvinit compatibility symlinks and manpages for init, telinit, halt, poweroff, reboot, runlevel, and shutdown</flag>
+ <flag name="tpm">Enable TPM support</flag>
+ <flag name="ukify">Enable systemd-ukify</flag>
<flag name="vanilla">Disable Gentoo-specific behavior and compatibility quirks</flag>
<flag name="xkb">Depend on <pkg>x11-libs/libxkbcommon</pkg> to allow logind to control the X11 keymap</flag>
</use>
<upstream>
<remote-id type="github">systemd/systemd</remote-id>
+ <remote-id type="github">systemd/systemd-stable</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/systemd/systemd-246-r2.ebuild b/sys-apps/systemd/systemd-246-r2.ebuild
deleted file mode 100644
index 18454dd4d574..000000000000
--- a/sys-apps/systemd/systemd-246-r2.ebuild
+++ /dev/null
@@ -1,530 +0,0 @@
-# Copyright 2011-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/systemd/systemd.git"
- inherit git-r3
-else
- if [[ ${PV} == *.* ]]; then
- MY_PN=systemd-stable
- else
- MY_PN=systemd
- fi
- MY_PV=${PV/_/-}
- MY_P=${MY_PN}-${MY_PV}
- S=${WORKDIR}/${MY_P}
- SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
-fi
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="System and service manager for Linux"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0/2"
-IUSE="acl apparmor audit build cgroup-hybrid cryptsetup curl dns-over-tls elfutils +gcrypt gnuefi homed http +hwdb idn importd +kmod +lz4 lzma nat pam pcre pkcs11 policykit pwquality qrcode repart +resolvconf +seccomp selinux split-usr static-libs +sysv-utils test vanilla xkb +zstd"
-
-REQUIRED_USE="
- homed? ( cryptsetup )
- importd? ( curl gcrypt lzma )
-"
-RESTRICT="!test? ( test )"
-
-MINKV="3.11"
-
-OPENSSL_DEP=">=dev-libs/openssl-1.1.0:0="
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- apparmor? ( sys-libs/libapparmor:0= )
- audit? ( >=sys-process/audit-2:0= )
- cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
- curl? ( net-misc/curl:0= )
- dns-over-tls? ( >=net-libs/gnutls-3.6.0:0= )
- elfutils? ( >=dev-libs/elfutils-0.158:0= )
- gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
- homed? ( ${OPENSSL_DEP} )
- http? (
- >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)]
- >=net-libs/gnutls-3.1.4:0=
- )
- idn? ( net-dns/libidn2:= )
- importd? (
- app-arch/bzip2:0=
- sys-libs/zlib:0=
- )
- kmod? ( >=sys-apps/kmod-15:0= )
- lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
- lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
- nat? ( net-firewall/iptables:0= )
- pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
- pkcs11? ( app-crypt/p11-kit:0= )
- pcre? ( dev-libs/libpcre2 )
- pwquality? ( dev-libs/libpwquality:0= )
- qrcode? ( media-gfx/qrencode:0= )
- repart? ( ${OPENSSL_DEP} )
- seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
- selinux? ( sys-libs/libselinux:0= )
- xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
- zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
-"
-
-# Newer linux-headers needed by ia64, bug #480218
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-${MINKV}
- gnuefi? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-
-# baselayout-2.2 has /run
-RDEPEND="${COMMON_DEPEND}
- acct-group/adm
- acct-group/wheel
- acct-group/kmem
- acct-group/tty
- acct-group/utmp
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kvm
- acct-group/render
- acct-group/tape
- acct-group/video
- acct-group/systemd-journal
- acct-user/systemd-journal-remote
- acct-user/systemd-coredump
- acct-user/systemd-network
- acct-user/systemd-resolve
- acct-user/systemd-timesync
- >=sys-apps/baselayout-2.2
- selinux? ( sec-policy/selinux-base-policy[systemd] )
- sysv-utils? ( !sys-apps/sysvinit )
- !sysv-utils? ( sys-apps/sysvinit )
- resolvconf? ( !net-dns/openresolv )
- !build? ( || (
- sys-apps/util-linux[kill(-)]
- sys-process/procps[kill(+)]
- sys-apps/coreutils[kill(-)]
- ) )
- !sys-auth/nss-myhostname
- !sys-fs/eudev
- !sys-fs/udev
-"
-
-# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
-PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
- hwdb? ( >=sys-apps/hwids-20150417[udev] )
- >=sys-fs/udev-init-scripts-34
- policykit? ( sys-auth/polkit )
- !vanilla? ( sys-apps/gentoo-systemd-integration )"
-
-BDEPEND="
- app-arch/xz-utils:0
- dev-util/gperf
- >=dev-util/meson-0.46
- >=dev-util/intltool-0.50
- >=sys-apps/coreutils-8.16
- sys-devel/m4
- virtual/pkgconfig
- test? ( sys-apps/dbus )
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt:0
- $(python_gen_any_dep 'dev-python/lxml[${PYTHON_USEDEP}]')
-"
-
-python_check_deps() {
- has_version -b "dev-python/lxml[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != buildonly ]]; then
- if use test && has pid-sandbox ${FEATURES}; then
- ewarn "Tests are known to fail with PID sandboxing enabled."
- ewarn "See https://bugs.gentoo.org/674458."
- fi
-
- local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
- ~CHECKPOINT_RESTORE ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
- ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
- ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
- ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
- ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
- ~!SYSFS_DEPRECATED_V2"
-
- use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
- use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
- kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
- kernel_is -lt 4 7 && CONFIG_CHECK+=" ~DEVPTS_MULTIPLE_INSTANCES"
- kernel_is -ge 4 10 && CONFIG_CHECK+=" ~CGROUP_BPF"
-
- if linux_config_exists; then
- local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
- if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then
- ewarn "It's recommended to set an empty value to the following kernel config option:"
- ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
- fi
- if linux_chkconfig_present X86; then
- CONFIG_CHECK+=" ~DMIID"
- fi
- fi
-
- if kernel_is -lt ${MINKV//./ }; then
- ewarn "Kernel version at least ${MINKV} required"
- fi
-
- check_extra_config
- fi
-}
-
-pkg_setup() {
- :
-}
-
-src_unpack() {
- default
- [[ ${PV} != 9999 ]] || git-r3_src_unpack
-}
-
-src_prepare() {
- # Do NOT add patches here
- local PATCHES=()
-
- [[ -d "${WORKDIR}"/patches ]] && PATCHES+=( "${WORKDIR}"/patches )
-
- # Add local patches here
- PATCHES+=(
- )
-
- if ! use vanilla; then
- PATCHES+=(
- "${FILESDIR}/gentoo-generator-path-r2.patch"
- "${FILESDIR}/gentoo-systemctl-disable-sysv-sync.patch"
- "${FILESDIR}/gentoo-journald-audit.patch"
- )
- fi
-
- default
-}
-
-src_configure() {
- # Prevent conflicts with i686 cross toolchain, bug 559726
- tc-export AR CC NM OBJCOPY RANLIB
-
- python_setup
-
- multilib-minimal_src_configure
-}
-
-meson_use() {
- usex "$1" true false
-}
-
-meson_multilib() {
- if multilib_is_native_abi; then
- echo true
- else
- echo false
- fi
-}
-
-meson_multilib_native_use() {
- if multilib_is_native_abi && use "$1"; then
- echo true
- else
- echo false
- fi
-}
-
-multilib_src_configure() {
- local myconf=(
- --localstatedir="${EPREFIX}/var"
- -Dsupport-url="https://gentoo.org/support/"
- -Dpamlibdir="$(getpam_mod_dir)"
- # avoid bash-completion dep
- -Dbashcompletiondir="$(get_bashcompdir)"
- # make sure we get /bin:/sbin in PATH
- -Dsplit-usr=$(usex split-usr true false)
- -Dsplit-bin=true
- -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
- -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
- # Avoid infinite exec recursion, bug 642724
- -Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
- # no deps
- -Dima=true
- -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
- # Optional components/dependencies
- -Dacl=$(meson_multilib_native_use acl)
- -Dapparmor=$(meson_multilib_native_use apparmor)
- -Daudit=$(meson_multilib_native_use audit)
- -Dlibcryptsetup=$(meson_multilib_native_use cryptsetup)
- -Dlibcurl=$(meson_multilib_native_use curl)
- -Ddns-over-tls=$(meson_multilib_native_use dns-over-tls)
- -Delfutils=$(meson_multilib_native_use elfutils)
- -Dgcrypt=$(meson_use gcrypt)
- -Dgnu-efi=$(meson_multilib_native_use gnuefi)
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
- -Dhomed=$(meson_multilib_native_use homed)
- -Dhwdb=$(meson_multilib_native_use hwdb)
- -Dmicrohttpd=$(meson_multilib_native_use http)
- -Didn=$(meson_multilib_native_use idn)
- -Dimportd=$(meson_multilib_native_use importd)
- -Dbzip2=$(meson_multilib_native_use importd)
- -Dzlib=$(meson_multilib_native_use importd)
- -Dkmod=$(meson_multilib_native_use kmod)
- -Dlz4=$(meson_use lz4)
- -Dxz=$(meson_use lzma)
- -Dzstd=$(meson_use zstd)
- -Dlibiptc=$(meson_multilib_native_use nat)
- -Dpam=$(meson_use pam)
- -Dp11kit=$(meson_multilib_native_use pkcs11)
- -Dpcre2=$(meson_multilib_native_use pcre)
- -Dpolkit=$(meson_multilib_native_use policykit)
- -Dpwquality=$(meson_multilib_native_use pwquality)
- -Dqrencode=$(meson_multilib_native_use qrcode)
- -Drepart=$(meson_multilib_native_use repart)
- -Dseccomp=$(meson_multilib_native_use seccomp)
- -Dselinux=$(meson_multilib_native_use selinux)
- -Ddbus=$(meson_multilib_native_use test)
- -Dxkbcommon=$(meson_multilib_native_use xkb)
- -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
- # Breaks screen, tmux, etc.
- -Ddefault-kill-user-processes=false
- -Dcreate-log-dirs=false
-
- # multilib options
- -Dbacklight=$(meson_multilib)
- -Dbinfmt=$(meson_multilib)
- -Dcoredump=$(meson_multilib)
- -Denvironment-d=$(meson_multilib)
- -Dfirstboot=$(meson_multilib)
- -Dhibernate=$(meson_multilib)
- -Dhostnamed=$(meson_multilib)
- -Dldconfig=$(meson_multilib)
- -Dlocaled=$(meson_multilib)
- -Dman=$(meson_multilib)
- -Dnetworkd=$(meson_multilib)
- -Dquotacheck=$(meson_multilib)
- -Drandomseed=$(meson_multilib)
- -Drfkill=$(meson_multilib)
- -Dsysusers=$(meson_multilib)
- -Dtimedated=$(meson_multilib)
- -Dtimesyncd=$(meson_multilib)
- -Dtmpfiles=$(meson_multilib)
- -Dvconsole=$(meson_multilib)
-
- # static-libs
- -Dstatic-libsystemd=$(usex static-libs true false)
- -Dstatic-libudev=$(usex static-libs true false)
- )
-
- meson_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- eninja
-}
-
-multilib_src_test() {
- unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
- meson_src_test
-}
-
-multilib_src_install() {
- DESTDIR="${D}" eninja install
-}
-
-multilib_src_install_all() {
- local rootprefix=$(usex split-usr '' /usr)
-
- # meson doesn't know about docdir
- mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
-
- einstalldocs
- dodoc "${FILESDIR}"/nsswitch.conf
-
- if ! use resolvconf; then
- rm -f "${ED}${rootprefix}"/sbin/resolvconf || die
- fi
-
- rm "${ED}"/etc/init.d/README || die
- rm "${ED}${rootprefix}"/lib/systemd/system-generators/systemd-sysv-generator || die
-
- if ! use sysv-utils; then
- rm "${ED}${rootprefix}"/sbin/{halt,init,poweroff,reboot,runlevel,shutdown,telinit} || die
- rm "${ED}"/usr/share/man/man1/init.1 || die
- rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 || die
- fi
-
- if ! use resolvconf && ! use sysv-utils; then
- rmdir "${ED}${rootprefix}"/sbin || die
- fi
-
- # Preserve empty dirs in /etc & /var, bug #437008
- keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
- keepdir /etc/kernel/install.d
- keepdir /etc/systemd/{network,system,user}
- keepdir /etc/udev/rules.d
-
- if use hwdb; then
- keepdir /etc/udev/hwdb.d
- fi
-
- keepdir "${rootprefix}"/lib/systemd/{system-sleep,system-shutdown}
- keepdir /usr/lib/{binfmt.d,modules-load.d}
- keepdir /usr/lib/systemd/user-generators
- keepdir /var/lib/systemd
- keepdir /var/log/journal
-
- # Symlink /etc/sysctl.conf for easy migration.
- dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
-
- if use hwdb; then
- rm -r "${ED}${rootprefix}"/lib/udev/hwdb.d || die
- fi
-
- if use split-usr; then
- # Avoid breaking boot/reboot
- dosym ../../../lib/systemd/systemd /usr/lib/systemd/systemd
- dosym ../../../lib/systemd/systemd-shutdown /usr/lib/systemd/systemd-shutdown
- fi
-
- gen_usr_ldscript -a systemd udev
-}
-
-migrate_locale() {
- local envd_locale_def="${EROOT}/etc/env.d/02locale"
- local envd_locale=( "${EROOT}"/etc/env.d/??locale )
- local locale_conf="${EROOT}/etc/locale.conf"
-
- if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
- # If locale.conf does not exist...
- if [[ -e ${envd_locale} ]]; then
- # ...either copy env.d/??locale if there's one
- ebegin "Moving ${envd_locale} to ${locale_conf}"
- mv "${envd_locale}" "${locale_conf}"
- eend ${?} || FAIL=1
- else
- # ...or create a dummy default
- ebegin "Creating ${locale_conf}"
- cat > "${locale_conf}" <<-EOF
- # This file has been created by the sys-apps/systemd ebuild.
- # See locale.conf(5) and localectl(1).
-
- # LANG=${LANG}
- EOF
- eend ${?} || FAIL=1
- fi
- fi
-
- if [[ ! -L ${envd_locale} ]]; then
- # now, if env.d/??locale is not a symlink (to locale.conf)...
- if [[ -e ${envd_locale} ]]; then
- # ...warn the user that he has duplicate locale settings
- ewarn
- ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
- ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
- ewarn "and create the symlink with the following command:"
- ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
- ewarn
- else
- # ...or just create the symlink if there's nothing here
- ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
- ln -n -s ../locale.conf "${envd_locale_def}"
- eend ${?} || FAIL=1
- fi
- fi
-}
-
-save_enabled_units() {
- ENABLED_UNITS=()
- type systemctl &>/dev/null || return
- for x; do
- if systemctl --quiet --root="${ROOT:-/}" is-enabled "${x}"; then
- ENABLED_UNITS+=( "${x}" )
- fi
- done
-}
-
-pkg_preinst() {
- save_enabled_units {machines,remote-{cryptsetup,fs}}.target getty@tty1.service
-
- if ! use split-usr; then
- local dir
- for dir in bin sbin lib; do
- if [[ ! ${EROOT}/${dir} -ef ${EROOT}/usr/${dir} ]]; then
- eerror "\"${EROOT}/${dir}\" and \"${EROOT}/usr/${dir}\" are not merged."
- eerror "One of them should be a symbolic link to the other one."
- FAIL=1
- fi
- done
- if [[ ${FAIL} ]]; then
- eerror "Migration to system layout with merged directories must be performed before"
- eerror "rebuilding ${CATEGORY}/${PN} with USE=\"-split-usr\" to avoid run-time breakage."
- die "System layout with split directories still used"
- fi
- fi
-}
-
-pkg_postinst() {
- systemd_update_catalog
-
- # Keep this here in case the database format changes so it gets updated
- # when required. Despite that this file is owned by sys-apps/hwids.
- if has_version "sys-apps/hwids[udev]"; then
- udevadm hwdb --update --root="${EROOT}"
- fi
-
- udev_reload || FAIL=1
-
- # Bug 465468, make sure locales are respect, and ensure consistency
- # between OpenRC & systemd
- migrate_locale
-
- systemd_reenable systemd-networkd.service systemd-resolved.service
-
- if [[ ${ENABLED_UNITS[@]} ]]; then
- systemctl --root="${ROOT:-/}" enable "${ENABLED_UNITS[@]}"
- fi
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- if type systemctl &>/dev/null; then
- systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
- fi
- elog "To enable a useful set of services, run the following:"
- elog " systemctl preset-all --preset-mode=enable-only"
- fi
-
- if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then
- rm "${EROOT}/var/lib/systemd/timesync"
- fi
-
- if [[ -z ${ROOT} && -d /run/systemd/system ]]; then
- ebegin "Reexecuting system manager"
- systemctl daemon-reexec
- eend $?
- fi
-
- if [[ ${FAIL} ]]; then
- eerror "One of the postinst commands failed. Please check the postinst output"
- eerror "for errors. You may need to clean up your system and/or try installing"
- eerror "systemd again."
- eerror
- fi
-}
-
-pkg_prerm() {
- # If removing systemd completely, remove the catalog database.
- if [[ ! ${REPLACED_BY_VERSION} ]]; then
- rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
- fi
-}
diff --git a/sys-apps/systemd/systemd-254.10.ebuild b/sys-apps/systemd/systemd-254.10.ebuild
new file mode 100644
index 000000000000..c85a0b31b907
--- /dev/null
+++ b/sys-apps/systemd/systemd-254.10.ebuild
@@ -0,0 +1,536 @@
+# Copyright 2011-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Avoid QA warnings
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/systemd/systemd.git"
+ inherit git-r3
+else
+ if [[ ${PV} == *.* ]]; then
+ MY_PN=systemd-stable
+ else
+ MY_PN=systemd
+ fi
+ MY_PV=${PV/_/-}
+ MY_P=${MY_PN}-${MY_PV}
+ S=${WORKDIR}/${MY_P}
+ SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
+fi
+
+inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1
+inherit secureboot systemd toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="System and service manager for Linux"
+HOMEPAGE="http://systemd.io/"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0/2"
+IUSE="
+ acl apparmor audit boot cgroup-hybrid cryptsetup curl +dns-over-tls elfutils
+ fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod
+ +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode
+ +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd
+"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ dns-over-tls? ( || ( gnutls openssl ) )
+ fido2? ( cryptsetup openssl )
+ homed? ( cryptsetup pam openssl )
+ importd? ( curl lzma || ( gcrypt openssl ) )
+ pwquality? ( homed )
+ boot? ( kernel-install )
+ ukify? ( boot )
+"
+RESTRICT="!test? ( test )"
+
+MINKV="4.15"
+
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ apparmor? ( sys-libs/libapparmor:0= )
+ audit? ( >=sys-process/audit-2:0= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
+ curl? ( net-misc/curl:0= )
+ elfutils? ( >=dev-libs/elfutils-0.158:0= )
+ fido2? ( dev-libs/libfido2:0= )
+ gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
+ gnutls? ( >=net-libs/gnutls-3.6.0:0= )
+ http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] )
+ idn? ( net-dns/libidn2:= )
+ importd? (
+ app-arch/bzip2:0=
+ sys-libs/zlib:0=
+ )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
+ iptables? ( net-firewall/iptables:0= )
+ openssl? ( >=dev-libs/openssl-1.1.0:0= )
+ pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
+ pkcs11? ( app-crypt/p11-kit:0= )
+ pcre? ( dev-libs/libpcre2 )
+ pwquality? ( dev-libs/libpwquality:0= )
+ qrcode? ( media-gfx/qrencode:0= )
+ seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
+ selinux? ( sys-libs/libselinux:0= )
+ tpm? ( app-crypt/tpm2-tss:0= )
+ xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
+ zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
+"
+
+# Newer linux-headers needed by ia64, bug #480218
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-${MINKV}
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+# baselayout-2.2 has /run
+RDEPEND="${COMMON_DEPEND}
+ >=acct-group/adm-0-r1
+ >=acct-group/wheel-0-r1
+ >=acct-group/kmem-0-r1
+ >=acct-group/tty-0-r1
+ >=acct-group/utmp-0-r1
+ >=acct-group/audio-0-r1
+ >=acct-group/cdrom-0-r1
+ >=acct-group/dialout-0-r1
+ >=acct-group/disk-0-r1
+ >=acct-group/input-0-r1
+ >=acct-group/kvm-0-r1
+ >=acct-group/lp-0-r1
+ >=acct-group/render-0-r1
+ acct-group/sgx
+ >=acct-group/tape-0-r1
+ acct-group/users
+ >=acct-group/video-0-r1
+ >=acct-group/systemd-journal-0-r1
+ >=acct-user/root-0-r1
+ acct-user/nobody
+ >=acct-user/systemd-journal-remote-0-r1
+ >=acct-user/systemd-coredump-0-r1
+ >=acct-user/systemd-network-0-r1
+ acct-user/systemd-oom
+ >=acct-user/systemd-resolve-0-r1
+ >=acct-user/systemd-timesync-0-r1
+ >=sys-apps/baselayout-2.2
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ selinux? (
+ sec-policy/selinux-base-policy[systemd]
+ sec-policy/selinux-ntp
+ )
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? ( sys-apps/sysvinit )
+ resolvconf? ( !net-dns/openresolv )
+ !sys-apps/hwids[udev]
+ !sys-auth/nss-myhostname
+ !sys-fs/eudev
+ !sys-fs/udev
+"
+
+# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
+PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
+ >=sys-fs/udev-init-scripts-34
+ policykit? ( sys-auth/polkit )
+ !vanilla? ( sys-apps/gentoo-systemd-integration )"
+
+BDEPEND="
+ app-arch/xz-utils:0
+ dev-util/gperf
+ >=dev-build/meson-0.46
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ app-text/tree
+ dev-lang/perl
+ sys-apps/dbus
+ )
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt:0
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS
+ ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
+ ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
+ ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
+ ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
+ ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2"
+
+ use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
+ use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
+
+ if kernel_is -ge 5 10 20; then
+ CONFIG_CHECK+=" ~KCMP"
+ else
+ CONFIG_CHECK+=" ~CHECKPOINT_RESTORE"
+ fi
+
+ if kernel_is -ge 4 18; then
+ CONFIG_CHECK+=" ~AUTOFS_FS"
+ else
+ CONFIG_CHECK+=" ~AUTOFS4_FS"
+ fi
+
+ if linux_config_exists; then
+ local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
+ if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then
+ ewarn "It's recommended to set an empty value to the following kernel config option:"
+ ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
+ fi
+ if linux_chkconfig_present X86; then
+ CONFIG_CHECK+=" ~DMIID"
+ fi
+ fi
+
+ if kernel_is -lt ${MINKV//./ }; then
+ ewarn "Kernel version at least ${MINKV} required"
+ fi
+
+ check_extra_config
+ fi
+}
+
+pkg_setup() {
+ use boot && secureboot_pkg_setup
+}
+
+src_unpack() {
+ default
+ [[ ${PV} != 9999 ]] || git-r3_src_unpack
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/systemd-test-process-util.patch"
+ "${FILESDIR}/systemd-253-initrd-generators.patch"
+ "${FILESDIR}/254-PrivateDevices-userdbd.patch"
+ )
+
+ if ! use vanilla; then
+ PATCHES+=(
+ "${FILESDIR}/gentoo-generator-path-r2.patch"
+ "${FILESDIR}/gentoo-journald-audit-r1.patch"
+ )
+ fi
+
+ # Fails with split-usr.
+ sed -i -e '2i exit 77' test/test-rpm-macros.sh || die
+
+ default
+}
+
+src_configure() {
+ # Prevent conflicts with i686 cross toolchain, bug 559726
+ tc-export AR CC NM OBJCOPY RANLIB
+
+ python_setup
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --localstatedir="${EPREFIX}/var"
+ -Dsupport-url="https://gentoo.org/support/"
+ -Dpamlibdir="$(getpam_mod_dir)"
+ # avoid bash-completion dep
+ -Dbashcompletiondir="$(get_bashcompdir)"
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ # Disable compatibility with sysvinit
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
+ # Avoid infinite exec recursion, bug 642724
+ -Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
+ # no deps
+ -Dima=true
+ -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
+ # Optional components/dependencies
+ $(meson_native_use_bool acl)
+ $(meson_native_use_bool apparmor)
+ $(meson_native_use_bool audit)
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool cryptsetup libcryptsetup)
+ $(meson_native_use_bool curl libcurl)
+ $(meson_native_use_bool dns-over-tls dns-over-tls)
+ $(meson_native_use_bool elfutils)
+ $(meson_native_use_bool fido2 libfido2)
+ $(meson_use gcrypt)
+ $(meson_native_use_bool gnutls)
+ $(meson_native_use_bool homed)
+ $(meson_native_use_bool http microhttpd)
+ $(meson_native_use_bool idn)
+ $(meson_native_use_bool importd)
+ $(meson_native_use_bool importd bzip2)
+ $(meson_native_use_bool importd zlib)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool kmod)
+ $(meson_use lz4)
+ $(meson_use lzma xz)
+ $(meson_use test tests)
+ $(meson_use zstd)
+ $(meson_native_use_bool iptables libiptc)
+ $(meson_native_use_bool openssl)
+ $(meson_use pam)
+ $(meson_native_use_bool pkcs11 p11kit)
+ $(meson_native_use_bool pcre pcre2)
+ $(meson_native_use_bool policykit polkit)
+ $(meson_native_use_bool pwquality)
+ $(meson_native_use_bool qrcode qrencode)
+ $(meson_native_use_bool seccomp)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool tpm tpm2)
+ $(meson_native_use_bool test dbus)
+ $(meson_native_use_bool ukify)
+ $(meson_native_use_bool xkb xkbcommon)
+ -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
+ # Breaks screen, tmux, etc.
+ -Ddefault-kill-user-processes=false
+ -Dcreate-log-dirs=false
+
+ # multilib options
+ $(meson_native_true backlight)
+ $(meson_native_true binfmt)
+ $(meson_native_true coredump)
+ $(meson_native_true environment-d)
+ $(meson_native_true firstboot)
+ $(meson_native_true hibernate)
+ $(meson_native_true hostnamed)
+ $(meson_native_true ldconfig)
+ $(meson_native_true localed)
+ $(meson_native_true man)
+ $(meson_native_true networkd)
+ $(meson_native_true quotacheck)
+ $(meson_native_true randomseed)
+ $(meson_native_true rfkill)
+ $(meson_native_true sysusers)
+ $(meson_native_true timedated)
+ $(meson_native_true timesyncd)
+ $(meson_native_true tmpfiles)
+ $(meson_native_true vconsole)
+ )
+
+ meson_src_configure "${myconf[@]}"
+}
+
+multilib_src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
+ local -x COLUMNS=80
+ meson_src_test
+}
+
+multilib_src_install_all() {
+ local rootprefix=$(usex split-usr '' /usr)
+ local sbin=$(usex split-usr sbin bin)
+
+ # meson doesn't know about docdir
+ mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
+
+ einstalldocs
+ dodoc "${FILESDIR}"/nsswitch.conf
+
+ insinto /usr/lib/tmpfiles.d
+ doins "${FILESDIR}"/legacy.conf
+
+ if ! use resolvconf; then
+ rm -f "${ED}${rootprefix}/${sbin}"/resolvconf || die
+ fi
+
+ if ! use sysv-utils; then
+ rm "${ED}${rootprefix}/${sbin}"/{halt,init,poweroff,reboot,shutdown} || die
+ rm "${ED}"/usr/share/man/man1/init.1 || die
+ rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die
+ fi
+
+ # https://bugs.gentoo.org/761763
+ rm -r "${ED}"/usr/lib/sysusers.d || die
+
+ # Preserve empty dirs in /etc & /var, bug #437008
+ keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
+ keepdir /etc/kernel/install.d
+ keepdir /etc/systemd/{network,system,user}
+ keepdir /etc/udev/rules.d
+
+ keepdir /etc/udev/hwdb.d
+
+ keepdir "${rootprefix}"/lib/systemd/{system-sleep,system-shutdown}
+ keepdir /usr/lib/{binfmt.d,modules-load.d}
+ keepdir /usr/lib/systemd/user-generators
+ keepdir /var/lib/systemd
+ keepdir /var/log/journal
+
+ if use pam; then
+ newpamd "${FILESDIR}"/systemd-user.pam systemd-user
+ fi
+
+ if use split-usr; then
+ # Avoid breaking boot/reboot
+ dosym ../../../lib/systemd/systemd /usr/lib/systemd/systemd
+ dosym ../../../lib/systemd/systemd-shutdown /usr/lib/systemd/systemd-shutdown
+ fi
+
+ gen_usr_ldscript -a systemd udev
+
+ if use kernel-install; then
+ # Dummy config, remove to make room for sys-kernel/installkernel
+ rm "${ED}/usr/lib/kernel/install.conf" || die
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+migrate_locale() {
+ local envd_locale_def="${EROOT}/etc/env.d/02locale"
+ local envd_locale=( "${EROOT}"/etc/env.d/??locale )
+ local locale_conf="${EROOT}/etc/locale.conf"
+
+ if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
+ # If locale.conf does not exist...
+ if [[ -e ${envd_locale} ]]; then
+ # ...either copy env.d/??locale if there's one
+ ebegin "Moving ${envd_locale} to ${locale_conf}"
+ mv "${envd_locale}" "${locale_conf}"
+ eend ${?} || FAIL=1
+ else
+ # ...or create a dummy default
+ ebegin "Creating ${locale_conf}"
+ cat > "${locale_conf}" <<-EOF
+ # This file has been created by the sys-apps/systemd ebuild.
+ # See locale.conf(5) and localectl(1).
+
+ # LANG=${LANG}
+ EOF
+ eend ${?} || FAIL=1
+ fi
+ fi
+
+ if [[ ! -L ${envd_locale} ]]; then
+ # now, if env.d/??locale is not a symlink (to locale.conf)...
+ if [[ -e ${envd_locale} ]]; then
+ # ...warn the user that he has duplicate locale settings
+ ewarn
+ ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
+ ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
+ ewarn "and create the symlink with the following command:"
+ ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
+ ewarn
+ else
+ # ...or just create the symlink if there's nothing here
+ ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
+ ln -n -s ../locale.conf "${envd_locale_def}"
+ eend ${?} || FAIL=1
+ fi
+ fi
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/sysctl.conf ]]; then
+ # Symlink /etc/sysctl.conf for easy migration.
+ dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf
+ fi
+
+ if ! use split-usr; then
+ local dir
+ for dir in bin sbin lib usr/sbin; do
+ if [[ ! -L ${EROOT}/${dir} ]]; then
+ eerror "'${EROOT}/${dir}' is not a symbolic link."
+ FAIL=1
+ fi
+ done
+ if [[ ${FAIL} ]]; then
+ eerror "Migration to system layout with merged directories must be performed before"
+ eerror "installing ${CATEGORY}/${PN} with USE=\"-split-usr\" to avoid run-time breakage."
+ die "System layout with split directories still used"
+ fi
+ fi
+ if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then
+ ewarn "The 'gnuefi' USE flag has been renamed to 'boot'."
+ ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot."
+ fi
+}
+
+pkg_postinst() {
+ systemd_update_catalog
+
+ # Keep this here in case the database format changes so it gets updated
+ # when required.
+ systemd-hwdb --root="${ROOT}" update
+
+ udev_reload || FAIL=1
+
+ # Bug 465468, make sure locales are respected, and ensure consistency
+ # between OpenRC & systemd
+ migrate_locale
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if type systemctl &>/dev/null; then
+ systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
+ fi
+ elog "To enable a useful set of services, run the following:"
+ elog " systemctl preset-all --preset-mode=enable-only"
+ fi
+
+ if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then
+ rm "${EROOT}/var/lib/systemd/timesync"
+ fi
+
+ if [[ ${FAIL} ]]; then
+ eerror "One of the postinst commands failed. Please check the postinst output"
+ eerror "for errors. You may need to clean up your system and/or try installing"
+ eerror "systemd again."
+ eerror
+ fi
+
+ if use boot; then
+ optfeature "installing kernels in systemd-boot's native layout and update loader entries" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "generating unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
+
+pkg_prerm() {
+ # If removing systemd completely, remove the catalog database.
+ if [[ ! ${REPLACED_BY_VERSION} ]]; then
+ rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
+ fi
+}
diff --git a/sys-apps/systemd/systemd-254.8-r1.ebuild b/sys-apps/systemd/systemd-254.8-r1.ebuild
new file mode 100644
index 000000000000..d2400135d84b
--- /dev/null
+++ b/sys-apps/systemd/systemd-254.8-r1.ebuild
@@ -0,0 +1,540 @@
+# Copyright 2011-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Avoid QA warnings
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/systemd/systemd.git"
+ inherit git-r3
+else
+ if [[ ${PV} == *.* ]]; then
+ MY_PN=systemd-stable
+ else
+ MY_PN=systemd
+ fi
+ MY_PV=${PV/_/-}
+ MY_P=${MY_PN}-${MY_PV}
+ S=${WORKDIR}/${MY_P}
+ SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+
+inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1
+inherit secureboot systemd toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="System and service manager for Linux"
+HOMEPAGE="http://systemd.io/"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0/2"
+IUSE="
+ acl apparmor audit boot cgroup-hybrid cryptsetup curl +dns-over-tls elfutils
+ fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod
+ +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode
+ +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd
+"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ dns-over-tls? ( || ( gnutls openssl ) )
+ fido2? ( cryptsetup openssl )
+ homed? ( cryptsetup pam openssl )
+ importd? ( curl lzma || ( gcrypt openssl ) )
+ pwquality? ( homed )
+ boot? ( kernel-install )
+ ukify? ( boot )
+"
+RESTRICT="!test? ( test )"
+
+MINKV="4.15"
+
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ apparmor? ( sys-libs/libapparmor:0= )
+ audit? ( >=sys-process/audit-2:0= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
+ curl? ( net-misc/curl:0= )
+ elfutils? ( >=dev-libs/elfutils-0.158:0= )
+ fido2? ( dev-libs/libfido2:0= )
+ gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
+ gnutls? ( >=net-libs/gnutls-3.6.0:0= )
+ http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] )
+ idn? ( net-dns/libidn2:= )
+ importd? (
+ app-arch/bzip2:0=
+ sys-libs/zlib:0=
+ )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
+ iptables? ( net-firewall/iptables:0= )
+ openssl? ( >=dev-libs/openssl-1.1.0:0= )
+ pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
+ pkcs11? ( app-crypt/p11-kit:0= )
+ pcre? ( dev-libs/libpcre2 )
+ pwquality? ( dev-libs/libpwquality:0= )
+ qrcode? ( media-gfx/qrencode:0= )
+ seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
+ selinux? ( sys-libs/libselinux:0= )
+ tpm? ( app-crypt/tpm2-tss:0= )
+ xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
+ zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
+"
+
+# Newer linux-headers needed by ia64, bug #480218
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-${MINKV}
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+# baselayout-2.2 has /run
+RDEPEND="${COMMON_DEPEND}
+ >=acct-group/adm-0-r1
+ >=acct-group/wheel-0-r1
+ >=acct-group/kmem-0-r1
+ >=acct-group/tty-0-r1
+ >=acct-group/utmp-0-r1
+ >=acct-group/audio-0-r1
+ >=acct-group/cdrom-0-r1
+ >=acct-group/dialout-0-r1
+ >=acct-group/disk-0-r1
+ >=acct-group/input-0-r1
+ >=acct-group/kvm-0-r1
+ >=acct-group/lp-0-r1
+ >=acct-group/render-0-r1
+ acct-group/sgx
+ >=acct-group/tape-0-r1
+ acct-group/users
+ >=acct-group/video-0-r1
+ >=acct-group/systemd-journal-0-r1
+ >=acct-user/root-0-r1
+ acct-user/nobody
+ >=acct-user/systemd-journal-remote-0-r1
+ >=acct-user/systemd-coredump-0-r1
+ >=acct-user/systemd-network-0-r1
+ acct-user/systemd-oom
+ >=acct-user/systemd-resolve-0-r1
+ >=acct-user/systemd-timesync-0-r1
+ >=sys-apps/baselayout-2.2
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ selinux? (
+ sec-policy/selinux-base-policy[systemd]
+ sec-policy/selinux-ntp
+ )
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? ( sys-apps/sysvinit )
+ resolvconf? ( !net-dns/openresolv )
+ !sys-apps/hwids[udev]
+ !sys-auth/nss-myhostname
+ !sys-fs/eudev
+ !sys-fs/udev
+"
+
+# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
+PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
+ >=sys-fs/udev-init-scripts-34
+ policykit? ( sys-auth/polkit )
+ !vanilla? ( sys-apps/gentoo-systemd-integration )"
+
+BDEPEND="
+ app-arch/xz-utils:0
+ dev-util/gperf
+ >=dev-build/meson-0.46
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ app-text/tree
+ dev-lang/perl
+ sys-apps/dbus
+ )
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt:0
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test && has pid-sandbox ${FEATURES}; then
+ ewarn "Tests are known to fail with PID sandboxing enabled."
+ ewarn "See https://bugs.gentoo.org/674458."
+ fi
+
+ local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS
+ ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
+ ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
+ ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
+ ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
+ ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2"
+
+ use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
+ use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
+
+ if kernel_is -ge 5 10 20; then
+ CONFIG_CHECK+=" ~KCMP"
+ else
+ CONFIG_CHECK+=" ~CHECKPOINT_RESTORE"
+ fi
+
+ if kernel_is -ge 4 18; then
+ CONFIG_CHECK+=" ~AUTOFS_FS"
+ else
+ CONFIG_CHECK+=" ~AUTOFS4_FS"
+ fi
+
+ if linux_config_exists; then
+ local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
+ if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then
+ ewarn "It's recommended to set an empty value to the following kernel config option:"
+ ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
+ fi
+ if linux_chkconfig_present X86; then
+ CONFIG_CHECK+=" ~DMIID"
+ fi
+ fi
+
+ if kernel_is -lt ${MINKV//./ }; then
+ ewarn "Kernel version at least ${MINKV} required"
+ fi
+
+ check_extra_config
+ fi
+}
+
+pkg_setup() {
+ use boot && secureboot_pkg_setup
+}
+
+src_unpack() {
+ default
+ [[ ${PV} != 9999 ]] || git-r3_src_unpack
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/systemd-253-initrd-generators.patch"
+ "${FILESDIR}/254-PrivateDevices-userdbd.patch"
+ )
+
+ if ! use vanilla; then
+ PATCHES+=(
+ "${FILESDIR}/gentoo-generator-path-r2.patch"
+ "${FILESDIR}/gentoo-journald-audit-r1.patch"
+ )
+ fi
+
+ # Fails with split-usr.
+ sed -i -e '2i exit 77' test/test-rpm-macros.sh || die
+
+ default
+}
+
+src_configure() {
+ # Prevent conflicts with i686 cross toolchain, bug 559726
+ tc-export AR CC NM OBJCOPY RANLIB
+
+ python_setup
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --localstatedir="${EPREFIX}/var"
+ -Dsupport-url="https://gentoo.org/support/"
+ -Dpamlibdir="$(getpam_mod_dir)"
+ # avoid bash-completion dep
+ -Dbashcompletiondir="$(get_bashcompdir)"
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ # Disable compatibility with sysvinit
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
+ # Avoid infinite exec recursion, bug 642724
+ -Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
+ # no deps
+ -Dima=true
+ -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
+ # Optional components/dependencies
+ $(meson_native_use_bool acl)
+ $(meson_native_use_bool apparmor)
+ $(meson_native_use_bool audit)
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool cryptsetup libcryptsetup)
+ $(meson_native_use_bool curl libcurl)
+ $(meson_native_use_bool dns-over-tls dns-over-tls)
+ $(meson_native_use_bool elfutils)
+ $(meson_native_use_bool fido2 libfido2)
+ $(meson_use gcrypt)
+ $(meson_native_use_bool gnutls)
+ $(meson_native_use_bool homed)
+ $(meson_native_use_bool http microhttpd)
+ $(meson_native_use_bool idn)
+ $(meson_native_use_bool importd)
+ $(meson_native_use_bool importd bzip2)
+ $(meson_native_use_bool importd zlib)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool kmod)
+ $(meson_use lz4)
+ $(meson_use lzma xz)
+ $(meson_use test tests)
+ $(meson_use zstd)
+ $(meson_native_use_bool iptables libiptc)
+ $(meson_native_use_bool openssl)
+ $(meson_use pam)
+ $(meson_native_use_bool pkcs11 p11kit)
+ $(meson_native_use_bool pcre pcre2)
+ $(meson_native_use_bool policykit polkit)
+ $(meson_native_use_bool pwquality)
+ $(meson_native_use_bool qrcode qrencode)
+ $(meson_native_use_bool seccomp)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool tpm tpm2)
+ $(meson_native_use_bool test dbus)
+ $(meson_native_use_bool ukify)
+ $(meson_native_use_bool xkb xkbcommon)
+ -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
+ # Breaks screen, tmux, etc.
+ -Ddefault-kill-user-processes=false
+ -Dcreate-log-dirs=false
+
+ # multilib options
+ $(meson_native_true backlight)
+ $(meson_native_true binfmt)
+ $(meson_native_true coredump)
+ $(meson_native_true environment-d)
+ $(meson_native_true firstboot)
+ $(meson_native_true hibernate)
+ $(meson_native_true hostnamed)
+ $(meson_native_true ldconfig)
+ $(meson_native_true localed)
+ $(meson_native_true man)
+ $(meson_native_true networkd)
+ $(meson_native_true quotacheck)
+ $(meson_native_true randomseed)
+ $(meson_native_true rfkill)
+ $(meson_native_true sysusers)
+ $(meson_native_true timedated)
+ $(meson_native_true timesyncd)
+ $(meson_native_true tmpfiles)
+ $(meson_native_true vconsole)
+ )
+
+ meson_src_configure "${myconf[@]}"
+}
+
+multilib_src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
+ local -x COLUMNS=80
+ meson_src_test
+}
+
+multilib_src_install_all() {
+ local rootprefix=$(usex split-usr '' /usr)
+ local sbin=$(usex split-usr sbin bin)
+
+ # meson doesn't know about docdir
+ mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
+
+ einstalldocs
+ dodoc "${FILESDIR}"/nsswitch.conf
+
+ insinto /usr/lib/tmpfiles.d
+ doins "${FILESDIR}"/legacy.conf
+
+ if ! use resolvconf; then
+ rm -f "${ED}${rootprefix}/${sbin}"/resolvconf || die
+ fi
+
+ if ! use sysv-utils; then
+ rm "${ED}${rootprefix}/${sbin}"/{halt,init,poweroff,reboot,shutdown} || die
+ rm "${ED}"/usr/share/man/man1/init.1 || die
+ rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die
+ fi
+
+ # https://bugs.gentoo.org/761763
+ rm -r "${ED}"/usr/lib/sysusers.d || die
+
+ # Preserve empty dirs in /etc & /var, bug #437008
+ keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
+ keepdir /etc/kernel/install.d
+ keepdir /etc/systemd/{network,system,user}
+ keepdir /etc/udev/rules.d
+
+ keepdir /etc/udev/hwdb.d
+
+ keepdir "${rootprefix}"/lib/systemd/{system-sleep,system-shutdown}
+ keepdir /usr/lib/{binfmt.d,modules-load.d}
+ keepdir /usr/lib/systemd/user-generators
+ keepdir /var/lib/systemd
+ keepdir /var/log/journal
+
+ if use pam; then
+ newpamd "${FILESDIR}"/systemd-user.pam systemd-user
+ fi
+
+ if use split-usr; then
+ # Avoid breaking boot/reboot
+ dosym ../../../lib/systemd/systemd /usr/lib/systemd/systemd
+ dosym ../../../lib/systemd/systemd-shutdown /usr/lib/systemd/systemd-shutdown
+ fi
+
+ gen_usr_ldscript -a systemd udev
+
+ if use kernel-install; then
+ # Dummy config, remove to make room for sys-kernel/installkernel
+ rm "${ED}/usr/lib/kernel/install.conf" || die
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+migrate_locale() {
+ local envd_locale_def="${EROOT}/etc/env.d/02locale"
+ local envd_locale=( "${EROOT}"/etc/env.d/??locale )
+ local locale_conf="${EROOT}/etc/locale.conf"
+
+ if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
+ # If locale.conf does not exist...
+ if [[ -e ${envd_locale} ]]; then
+ # ...either copy env.d/??locale if there's one
+ ebegin "Moving ${envd_locale} to ${locale_conf}"
+ mv "${envd_locale}" "${locale_conf}"
+ eend ${?} || FAIL=1
+ else
+ # ...or create a dummy default
+ ebegin "Creating ${locale_conf}"
+ cat > "${locale_conf}" <<-EOF
+ # This file has been created by the sys-apps/systemd ebuild.
+ # See locale.conf(5) and localectl(1).
+
+ # LANG=${LANG}
+ EOF
+ eend ${?} || FAIL=1
+ fi
+ fi
+
+ if [[ ! -L ${envd_locale} ]]; then
+ # now, if env.d/??locale is not a symlink (to locale.conf)...
+ if [[ -e ${envd_locale} ]]; then
+ # ...warn the user that he has duplicate locale settings
+ ewarn
+ ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
+ ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
+ ewarn "and create the symlink with the following command:"
+ ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
+ ewarn
+ else
+ # ...or just create the symlink if there's nothing here
+ ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
+ ln -n -s ../locale.conf "${envd_locale_def}"
+ eend ${?} || FAIL=1
+ fi
+ fi
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/sysctl.conf ]]; then
+ # Symlink /etc/sysctl.conf for easy migration.
+ dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf
+ fi
+
+ if ! use split-usr; then
+ local dir
+ for dir in bin sbin lib usr/sbin; do
+ if [[ ! -L ${EROOT}/${dir} ]]; then
+ eerror "'${EROOT}/${dir}' is not a symbolic link."
+ FAIL=1
+ fi
+ done
+ if [[ ${FAIL} ]]; then
+ eerror "Migration to system layout with merged directories must be performed before"
+ eerror "installing ${CATEGORY}/${PN} with USE=\"-split-usr\" to avoid run-time breakage."
+ die "System layout with split directories still used"
+ fi
+ fi
+ if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then
+ ewarn "The 'gnuefi' USE flag has been renamed to 'boot'."
+ ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot."
+ fi
+}
+
+pkg_postinst() {
+ systemd_update_catalog
+
+ # Keep this here in case the database format changes so it gets updated
+ # when required.
+ systemd-hwdb --root="${ROOT}" update
+
+ udev_reload || FAIL=1
+
+ # Bug 465468, make sure locales are respected, and ensure consistency
+ # between OpenRC & systemd
+ migrate_locale
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if type systemctl &>/dev/null; then
+ systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
+ fi
+ elog "To enable a useful set of services, run the following:"
+ elog " systemctl preset-all --preset-mode=enable-only"
+ fi
+
+ if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then
+ rm "${EROOT}/var/lib/systemd/timesync"
+ fi
+
+ if [[ ${FAIL} ]]; then
+ eerror "One of the postinst commands failed. Please check the postinst output"
+ eerror "for errors. You may need to clean up your system and/or try installing"
+ eerror "systemd again."
+ eerror
+ fi
+
+ if use boot; then
+ optfeature "installing kernels in systemd-boot's native layout and update loader entries" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "generating unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
+
+pkg_prerm() {
+ # If removing systemd completely, remove the catalog database.
+ if [[ ! ${REPLACED_BY_VERSION} ]]; then
+ rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
+ fi
+}
diff --git a/sys-apps/systemd/systemd-254.9-r1.ebuild b/sys-apps/systemd/systemd-254.9-r1.ebuild
new file mode 100644
index 000000000000..58e10b48b7e1
--- /dev/null
+++ b/sys-apps/systemd/systemd-254.9-r1.ebuild
@@ -0,0 +1,541 @@
+# Copyright 2011-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Avoid QA warnings
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/systemd/systemd.git"
+ inherit git-r3
+else
+ if [[ ${PV} == *.* ]]; then
+ MY_PN=systemd-stable
+ else
+ MY_PN=systemd
+ fi
+ MY_PV=${PV/_/-}
+ MY_P=${MY_PN}-${MY_PV}
+ S=${WORKDIR}/${MY_P}
+ SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1
+inherit secureboot systemd toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="System and service manager for Linux"
+HOMEPAGE="http://systemd.io/"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0/2"
+IUSE="
+ acl apparmor audit boot cgroup-hybrid cryptsetup curl +dns-over-tls elfutils
+ fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod
+ +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode
+ +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd
+"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ dns-over-tls? ( || ( gnutls openssl ) )
+ fido2? ( cryptsetup openssl )
+ homed? ( cryptsetup pam openssl )
+ importd? ( curl lzma || ( gcrypt openssl ) )
+ pwquality? ( homed )
+ boot? ( kernel-install )
+ ukify? ( boot )
+"
+RESTRICT="!test? ( test )"
+
+MINKV="4.15"
+
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ apparmor? ( sys-libs/libapparmor:0= )
+ audit? ( >=sys-process/audit-2:0= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
+ curl? ( net-misc/curl:0= )
+ elfutils? ( >=dev-libs/elfutils-0.158:0= )
+ fido2? ( dev-libs/libfido2:0= )
+ gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
+ gnutls? ( >=net-libs/gnutls-3.6.0:0= )
+ http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] )
+ idn? ( net-dns/libidn2:= )
+ importd? (
+ app-arch/bzip2:0=
+ sys-libs/zlib:0=
+ )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
+ iptables? ( net-firewall/iptables:0= )
+ openssl? ( >=dev-libs/openssl-1.1.0:0= )
+ pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
+ pkcs11? ( app-crypt/p11-kit:0= )
+ pcre? ( dev-libs/libpcre2 )
+ pwquality? ( dev-libs/libpwquality:0= )
+ qrcode? ( media-gfx/qrencode:0= )
+ seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
+ selinux? ( sys-libs/libselinux:0= )
+ tpm? ( app-crypt/tpm2-tss:0= )
+ xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
+ zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
+"
+
+# Newer linux-headers needed by ia64, bug #480218
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-${MINKV}
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+# baselayout-2.2 has /run
+RDEPEND="${COMMON_DEPEND}
+ >=acct-group/adm-0-r1
+ >=acct-group/wheel-0-r1
+ >=acct-group/kmem-0-r1
+ >=acct-group/tty-0-r1
+ >=acct-group/utmp-0-r1
+ >=acct-group/audio-0-r1
+ >=acct-group/cdrom-0-r1
+ >=acct-group/dialout-0-r1
+ >=acct-group/disk-0-r1
+ >=acct-group/input-0-r1
+ >=acct-group/kvm-0-r1
+ >=acct-group/lp-0-r1
+ >=acct-group/render-0-r1
+ acct-group/sgx
+ >=acct-group/tape-0-r1
+ acct-group/users
+ >=acct-group/video-0-r1
+ >=acct-group/systemd-journal-0-r1
+ >=acct-user/root-0-r1
+ acct-user/nobody
+ >=acct-user/systemd-journal-remote-0-r1
+ >=acct-user/systemd-coredump-0-r1
+ >=acct-user/systemd-network-0-r1
+ acct-user/systemd-oom
+ >=acct-user/systemd-resolve-0-r1
+ >=acct-user/systemd-timesync-0-r1
+ >=sys-apps/baselayout-2.2
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ selinux? (
+ sec-policy/selinux-base-policy[systemd]
+ sec-policy/selinux-ntp
+ )
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? ( sys-apps/sysvinit )
+ resolvconf? ( !net-dns/openresolv )
+ !sys-apps/hwids[udev]
+ !sys-auth/nss-myhostname
+ !sys-fs/eudev
+ !sys-fs/udev
+"
+
+# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
+PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
+ >=sys-fs/udev-init-scripts-34
+ policykit? ( sys-auth/polkit )
+ !vanilla? ( sys-apps/gentoo-systemd-integration )"
+
+BDEPEND="
+ app-arch/xz-utils:0
+ dev-util/gperf
+ >=dev-build/meson-0.46
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ app-text/tree
+ dev-lang/perl
+ sys-apps/dbus
+ )
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt:0
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test && has pid-sandbox ${FEATURES}; then
+ ewarn "Tests are known to fail with PID sandboxing enabled."
+ ewarn "See https://bugs.gentoo.org/674458."
+ fi
+
+ local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS
+ ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
+ ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
+ ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
+ ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
+ ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2"
+
+ use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
+ use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
+
+ if kernel_is -ge 5 10 20; then
+ CONFIG_CHECK+=" ~KCMP"
+ else
+ CONFIG_CHECK+=" ~CHECKPOINT_RESTORE"
+ fi
+
+ if kernel_is -ge 4 18; then
+ CONFIG_CHECK+=" ~AUTOFS_FS"
+ else
+ CONFIG_CHECK+=" ~AUTOFS4_FS"
+ fi
+
+ if linux_config_exists; then
+ local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
+ if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then
+ ewarn "It's recommended to set an empty value to the following kernel config option:"
+ ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
+ fi
+ if linux_chkconfig_present X86; then
+ CONFIG_CHECK+=" ~DMIID"
+ fi
+ fi
+
+ if kernel_is -lt ${MINKV//./ }; then
+ ewarn "Kernel version at least ${MINKV} required"
+ fi
+
+ check_extra_config
+ fi
+}
+
+pkg_setup() {
+ use boot && secureboot_pkg_setup
+}
+
+src_unpack() {
+ default
+ [[ ${PV} != 9999 ]] || git-r3_src_unpack
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/systemd-253-initrd-generators.patch"
+ "${FILESDIR}/254-PrivateDevices-userdbd.patch"
+ "${FILESDIR}/systemd-254.9-fchmodat2.patch"
+ )
+
+ if ! use vanilla; then
+ PATCHES+=(
+ "${FILESDIR}/gentoo-generator-path-r2.patch"
+ "${FILESDIR}/gentoo-journald-audit-r1.patch"
+ )
+ fi
+
+ # Fails with split-usr.
+ sed -i -e '2i exit 77' test/test-rpm-macros.sh || die
+
+ default
+}
+
+src_configure() {
+ # Prevent conflicts with i686 cross toolchain, bug 559726
+ tc-export AR CC NM OBJCOPY RANLIB
+
+ python_setup
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --localstatedir="${EPREFIX}/var"
+ -Dsupport-url="https://gentoo.org/support/"
+ -Dpamlibdir="$(getpam_mod_dir)"
+ # avoid bash-completion dep
+ -Dbashcompletiondir="$(get_bashcompdir)"
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ # Disable compatibility with sysvinit
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
+ # Avoid infinite exec recursion, bug 642724
+ -Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
+ # no deps
+ -Dima=true
+ -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
+ # Optional components/dependencies
+ $(meson_native_use_bool acl)
+ $(meson_native_use_bool apparmor)
+ $(meson_native_use_bool audit)
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool cryptsetup libcryptsetup)
+ $(meson_native_use_bool curl libcurl)
+ $(meson_native_use_bool dns-over-tls dns-over-tls)
+ $(meson_native_use_bool elfutils)
+ $(meson_native_use_bool fido2 libfido2)
+ $(meson_use gcrypt)
+ $(meson_native_use_bool gnutls)
+ $(meson_native_use_bool homed)
+ $(meson_native_use_bool http microhttpd)
+ $(meson_native_use_bool idn)
+ $(meson_native_use_bool importd)
+ $(meson_native_use_bool importd bzip2)
+ $(meson_native_use_bool importd zlib)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool kmod)
+ $(meson_use lz4)
+ $(meson_use lzma xz)
+ $(meson_use test tests)
+ $(meson_use zstd)
+ $(meson_native_use_bool iptables libiptc)
+ $(meson_native_use_bool openssl)
+ $(meson_use pam)
+ $(meson_native_use_bool pkcs11 p11kit)
+ $(meson_native_use_bool pcre pcre2)
+ $(meson_native_use_bool policykit polkit)
+ $(meson_native_use_bool pwquality)
+ $(meson_native_use_bool qrcode qrencode)
+ $(meson_native_use_bool seccomp)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool tpm tpm2)
+ $(meson_native_use_bool test dbus)
+ $(meson_native_use_bool ukify)
+ $(meson_native_use_bool xkb xkbcommon)
+ -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
+ # Breaks screen, tmux, etc.
+ -Ddefault-kill-user-processes=false
+ -Dcreate-log-dirs=false
+
+ # multilib options
+ $(meson_native_true backlight)
+ $(meson_native_true binfmt)
+ $(meson_native_true coredump)
+ $(meson_native_true environment-d)
+ $(meson_native_true firstboot)
+ $(meson_native_true hibernate)
+ $(meson_native_true hostnamed)
+ $(meson_native_true ldconfig)
+ $(meson_native_true localed)
+ $(meson_native_true man)
+ $(meson_native_true networkd)
+ $(meson_native_true quotacheck)
+ $(meson_native_true randomseed)
+ $(meson_native_true rfkill)
+ $(meson_native_true sysusers)
+ $(meson_native_true timedated)
+ $(meson_native_true timesyncd)
+ $(meson_native_true tmpfiles)
+ $(meson_native_true vconsole)
+ )
+
+ meson_src_configure "${myconf[@]}"
+}
+
+multilib_src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
+ local -x COLUMNS=80
+ meson_src_test
+}
+
+multilib_src_install_all() {
+ local rootprefix=$(usex split-usr '' /usr)
+ local sbin=$(usex split-usr sbin bin)
+
+ # meson doesn't know about docdir
+ mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
+
+ einstalldocs
+ dodoc "${FILESDIR}"/nsswitch.conf
+
+ insinto /usr/lib/tmpfiles.d
+ doins "${FILESDIR}"/legacy.conf
+
+ if ! use resolvconf; then
+ rm -f "${ED}${rootprefix}/${sbin}"/resolvconf || die
+ fi
+
+ if ! use sysv-utils; then
+ rm "${ED}${rootprefix}/${sbin}"/{halt,init,poweroff,reboot,shutdown} || die
+ rm "${ED}"/usr/share/man/man1/init.1 || die
+ rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die
+ fi
+
+ # https://bugs.gentoo.org/761763
+ rm -r "${ED}"/usr/lib/sysusers.d || die
+
+ # Preserve empty dirs in /etc & /var, bug #437008
+ keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
+ keepdir /etc/kernel/install.d
+ keepdir /etc/systemd/{network,system,user}
+ keepdir /etc/udev/rules.d
+
+ keepdir /etc/udev/hwdb.d
+
+ keepdir "${rootprefix}"/lib/systemd/{system-sleep,system-shutdown}
+ keepdir /usr/lib/{binfmt.d,modules-load.d}
+ keepdir /usr/lib/systemd/user-generators
+ keepdir /var/lib/systemd
+ keepdir /var/log/journal
+
+ if use pam; then
+ newpamd "${FILESDIR}"/systemd-user.pam systemd-user
+ fi
+
+ if use split-usr; then
+ # Avoid breaking boot/reboot
+ dosym ../../../lib/systemd/systemd /usr/lib/systemd/systemd
+ dosym ../../../lib/systemd/systemd-shutdown /usr/lib/systemd/systemd-shutdown
+ fi
+
+ gen_usr_ldscript -a systemd udev
+
+ if use kernel-install; then
+ # Dummy config, remove to make room for sys-kernel/installkernel
+ rm "${ED}/usr/lib/kernel/install.conf" || die
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+migrate_locale() {
+ local envd_locale_def="${EROOT}/etc/env.d/02locale"
+ local envd_locale=( "${EROOT}"/etc/env.d/??locale )
+ local locale_conf="${EROOT}/etc/locale.conf"
+
+ if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
+ # If locale.conf does not exist...
+ if [[ -e ${envd_locale} ]]; then
+ # ...either copy env.d/??locale if there's one
+ ebegin "Moving ${envd_locale} to ${locale_conf}"
+ mv "${envd_locale}" "${locale_conf}"
+ eend ${?} || FAIL=1
+ else
+ # ...or create a dummy default
+ ebegin "Creating ${locale_conf}"
+ cat > "${locale_conf}" <<-EOF
+ # This file has been created by the sys-apps/systemd ebuild.
+ # See locale.conf(5) and localectl(1).
+
+ # LANG=${LANG}
+ EOF
+ eend ${?} || FAIL=1
+ fi
+ fi
+
+ if [[ ! -L ${envd_locale} ]]; then
+ # now, if env.d/??locale is not a symlink (to locale.conf)...
+ if [[ -e ${envd_locale} ]]; then
+ # ...warn the user that he has duplicate locale settings
+ ewarn
+ ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
+ ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
+ ewarn "and create the symlink with the following command:"
+ ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
+ ewarn
+ else
+ # ...or just create the symlink if there's nothing here
+ ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
+ ln -n -s ../locale.conf "${envd_locale_def}"
+ eend ${?} || FAIL=1
+ fi
+ fi
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/sysctl.conf ]]; then
+ # Symlink /etc/sysctl.conf for easy migration.
+ dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf
+ fi
+
+ if ! use split-usr; then
+ local dir
+ for dir in bin sbin lib usr/sbin; do
+ if [[ ! -L ${EROOT}/${dir} ]]; then
+ eerror "'${EROOT}/${dir}' is not a symbolic link."
+ FAIL=1
+ fi
+ done
+ if [[ ${FAIL} ]]; then
+ eerror "Migration to system layout with merged directories must be performed before"
+ eerror "installing ${CATEGORY}/${PN} with USE=\"-split-usr\" to avoid run-time breakage."
+ die "System layout with split directories still used"
+ fi
+ fi
+ if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then
+ ewarn "The 'gnuefi' USE flag has been renamed to 'boot'."
+ ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot."
+ fi
+}
+
+pkg_postinst() {
+ systemd_update_catalog
+
+ # Keep this here in case the database format changes so it gets updated
+ # when required.
+ systemd-hwdb --root="${ROOT}" update
+
+ udev_reload || FAIL=1
+
+ # Bug 465468, make sure locales are respected, and ensure consistency
+ # between OpenRC & systemd
+ migrate_locale
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if type systemctl &>/dev/null; then
+ systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
+ fi
+ elog "To enable a useful set of services, run the following:"
+ elog " systemctl preset-all --preset-mode=enable-only"
+ fi
+
+ if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then
+ rm "${EROOT}/var/lib/systemd/timesync"
+ fi
+
+ if [[ ${FAIL} ]]; then
+ eerror "One of the postinst commands failed. Please check the postinst output"
+ eerror "for errors. You may need to clean up your system and/or try installing"
+ eerror "systemd again."
+ eerror
+ fi
+
+ if use boot; then
+ optfeature "installing kernels in systemd-boot's native layout and update loader entries" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "generating unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
+
+pkg_prerm() {
+ # If removing systemd completely, remove the catalog database.
+ if [[ ! ${REPLACED_BY_VERSION} ]]; then
+ rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
+ fi
+}
diff --git a/sys-apps/systemd/systemd-255.3-r1.ebuild b/sys-apps/systemd/systemd-255.3-r1.ebuild
new file mode 100644
index 000000000000..ee980ad26f52
--- /dev/null
+++ b/sys-apps/systemd/systemd-255.3-r1.ebuild
@@ -0,0 +1,527 @@
+# Copyright 2011-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Avoid QA warnings
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/systemd/systemd.git"
+ inherit git-r3
+else
+ if [[ ${PV} == *.* ]]; then
+ MY_PN=systemd-stable
+ else
+ MY_PN=systemd
+ fi
+ MY_PV=${PV/_/-}
+ MY_P=${MY_PN}-${MY_PV}
+ S=${WORKDIR}/${MY_P}
+ SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
+
+ if [[ ${PV} != *rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ fi
+fi
+
+inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1
+inherit secureboot systemd toolchain-funcs udev
+
+DESCRIPTION="System and service manager for Linux"
+HOMEPAGE="http://systemd.io/"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0/2"
+IUSE="
+ acl apparmor audit boot cgroup-hybrid cryptsetup curl +dns-over-tls elfutils
+ fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod
+ +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode
+ +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd
+"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ dns-over-tls? ( || ( gnutls openssl ) )
+ fido2? ( cryptsetup openssl )
+ homed? ( cryptsetup pam openssl )
+ importd? ( curl lzma || ( gcrypt openssl ) )
+ pwquality? ( homed )
+ boot? ( kernel-install )
+ ukify? ( boot )
+"
+RESTRICT="!test? ( test )"
+
+MINKV="4.15"
+
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.32:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ apparmor? ( >=sys-libs/libapparmor-2.13:0= )
+ audit? ( >=sys-process/audit-2:0= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
+ curl? ( >=net-misc/curl-7.32.0:0= )
+ elfutils? ( >=dev-libs/elfutils-0.158:0= )
+ fido2? ( dev-libs/libfido2:0= )
+ gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
+ gnutls? ( >=net-libs/gnutls-3.6.0:0= )
+ http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] )
+ idn? ( net-dns/libidn2:= )
+ importd? (
+ app-arch/bzip2:0=
+ sys-libs/zlib:0=
+ )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
+ iptables? ( net-firewall/iptables:0= )
+ openssl? ( >=dev-libs/openssl-1.1.0:0= )
+ pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
+ pkcs11? ( >=app-crypt/p11-kit-0.23.3:0= )
+ pcre? ( dev-libs/libpcre2 )
+ pwquality? ( >=dev-libs/libpwquality-1.4.1:0= )
+ qrcode? ( >=media-gfx/qrencode-3:0= )
+ seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
+ selinux? ( >=sys-libs/libselinux-2.1.9:0= )
+ tpm? ( app-crypt/tpm2-tss:0= )
+ xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
+ zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
+"
+
+# Newer linux-headers needed by ia64, bug #480218
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-${MINKV}
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+# baselayout-2.2 has /run
+RDEPEND="${COMMON_DEPEND}
+ >=acct-group/adm-0-r1
+ >=acct-group/wheel-0-r1
+ >=acct-group/kmem-0-r1
+ >=acct-group/tty-0-r1
+ >=acct-group/utmp-0-r1
+ >=acct-group/audio-0-r1
+ >=acct-group/cdrom-0-r1
+ >=acct-group/dialout-0-r1
+ >=acct-group/disk-0-r1
+ >=acct-group/input-0-r1
+ >=acct-group/kvm-0-r1
+ >=acct-group/lp-0-r1
+ >=acct-group/render-0-r1
+ acct-group/sgx
+ >=acct-group/tape-0-r1
+ acct-group/users
+ >=acct-group/video-0-r1
+ >=acct-group/systemd-journal-0-r1
+ >=acct-user/root-0-r1
+ acct-user/nobody
+ >=acct-user/systemd-journal-remote-0-r1
+ >=acct-user/systemd-coredump-0-r1
+ >=acct-user/systemd-network-0-r1
+ acct-user/systemd-oom
+ >=acct-user/systemd-resolve-0-r1
+ >=acct-user/systemd-timesync-0-r1
+ >=sys-apps/baselayout-2.2
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ selinux? (
+ sec-policy/selinux-base-policy[systemd]
+ sec-policy/selinux-ntp
+ )
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? ( sys-apps/sysvinit )
+ resolvconf? ( !net-dns/openresolv )
+ !sys-apps/hwids[udev]
+ !sys-auth/nss-myhostname
+ !sys-fs/eudev
+ !sys-fs/udev
+"
+
+# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
+PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
+ >=sys-fs/udev-init-scripts-34
+ policykit? ( sys-auth/polkit )
+ !vanilla? ( sys-apps/gentoo-systemd-integration )"
+
+BDEPEND="
+ app-arch/xz-utils:0
+ dev-util/gperf
+ >=dev-build/meson-0.46
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ app-text/tree
+ dev-lang/perl
+ sys-apps/dbus
+ )
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt:0
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+
+pkg_pretend() {
+ if use split-usr; then
+ eerror "Please complete the migration to merged-usr."
+ eerror "https://wiki.gentoo.org/wiki/Merge-usr"
+ die "systemd no longer supports split-usr"
+ fi
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test && has pid-sandbox ${FEATURES}; then
+ ewarn "Tests are known to fail with PID sandboxing enabled."
+ ewarn "See https://bugs.gentoo.org/674458."
+ fi
+
+ local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS
+ ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
+ ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
+ ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
+ ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
+ ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2"
+
+ use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
+ use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
+
+ if kernel_is -ge 5 10 20; then
+ CONFIG_CHECK+=" ~KCMP"
+ else
+ CONFIG_CHECK+=" ~CHECKPOINT_RESTORE"
+ fi
+
+ if kernel_is -ge 4 18; then
+ CONFIG_CHECK+=" ~AUTOFS_FS"
+ else
+ CONFIG_CHECK+=" ~AUTOFS4_FS"
+ fi
+
+ if linux_config_exists; then
+ local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
+ if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then
+ ewarn "It's recommended to set an empty value to the following kernel config option:"
+ ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
+ fi
+ if linux_chkconfig_present X86; then
+ CONFIG_CHECK+=" ~DMIID"
+ fi
+ fi
+
+ if kernel_is -lt ${MINKV//./ }; then
+ ewarn "Kernel version at least ${MINKV} required"
+ fi
+
+ check_extra_config
+ fi
+}
+
+pkg_setup() {
+ use boot && secureboot_pkg_setup
+}
+
+src_unpack() {
+ default
+ [[ ${PV} != 9999 ]] || git-r3_src_unpack
+}
+
+src_prepare() {
+ local PATCHES=(
+ )
+
+ if ! use vanilla; then
+ PATCHES+=(
+ "${FILESDIR}/gentoo-generator-path-r2.patch"
+ "${FILESDIR}/gentoo-journald-audit-r1.patch"
+ )
+ fi
+
+ default
+}
+
+src_configure() {
+ # Prevent conflicts with i686 cross toolchain, bug 559726
+ tc-export AR CC NM OBJCOPY RANLIB
+
+ python_setup
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --localstatedir="${EPREFIX}/var"
+ # default is developer, bug 918671
+ -Dmode=release
+ -Dsupport-url="https://gentoo.org/support/"
+ -Dpamlibdir="$(getpam_mod_dir)"
+ # avoid bash-completion dep
+ -Dbashcompletiondir="$(get_bashcompdir)"
+ -Dsplit-bin=false
+ # Disable compatibility with sysvinit
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
+ # Avoid infinite exec recursion, bug 642724
+ -Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
+ # no deps
+ -Dima=true
+ -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
+ # Match /etc/shells, bug 919749
+ -Ddebug-shell="${EPREFIX}/bin/sh"
+ -Ddefault-user-shell="${EPREFIX}/bin/bash"
+ # Optional components/dependencies
+ $(meson_native_use_bool acl)
+ $(meson_native_use_bool apparmor)
+ $(meson_native_use_bool audit)
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool cryptsetup libcryptsetup)
+ $(meson_native_use_bool curl libcurl)
+ $(meson_native_use_bool dns-over-tls dns-over-tls)
+ $(meson_native_use_bool elfutils)
+ $(meson_native_use_bool fido2 libfido2)
+ $(meson_use gcrypt)
+ $(meson_native_use_bool gnutls)
+ $(meson_native_use_bool homed)
+ $(meson_native_use_bool http microhttpd)
+ $(meson_native_use_bool idn)
+ $(meson_native_use_bool importd)
+ $(meson_native_use_bool importd bzip2)
+ $(meson_native_use_bool importd zlib)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool kmod)
+ $(meson_use lz4)
+ $(meson_use lzma xz)
+ $(meson_use test tests)
+ $(meson_use zstd)
+ $(meson_native_use_bool iptables libiptc)
+ $(meson_native_use_bool openssl)
+ $(meson_use pam)
+ $(meson_native_use_bool pkcs11 p11kit)
+ $(meson_native_use_bool pcre pcre2)
+ $(meson_native_use_bool policykit polkit)
+ $(meson_native_use_bool pwquality)
+ $(meson_native_use_bool qrcode qrencode)
+ $(meson_native_use_bool seccomp)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool tpm tpm2)
+ $(meson_native_use_bool test dbus)
+ $(meson_native_use_bool ukify)
+ $(meson_native_use_bool xkb xkbcommon)
+ -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
+ # Breaks screen, tmux, etc.
+ -Ddefault-kill-user-processes=false
+ -Dcreate-log-dirs=false
+
+ # multilib options
+ $(meson_native_true backlight)
+ $(meson_native_true binfmt)
+ $(meson_native_true coredump)
+ $(meson_native_true environment-d)
+ $(meson_native_true firstboot)
+ $(meson_native_true hibernate)
+ $(meson_native_true hostnamed)
+ $(meson_native_true ldconfig)
+ $(meson_native_true localed)
+ $(meson_native_true man)
+ $(meson_native_true networkd)
+ $(meson_native_true quotacheck)
+ $(meson_native_true randomseed)
+ $(meson_native_true rfkill)
+ $(meson_native_true sysusers)
+ $(meson_native_true timedated)
+ $(meson_native_true timesyncd)
+ $(meson_native_true tmpfiles)
+ $(meson_native_true vconsole)
+ $(meson_native_enabled vmspawn)
+ )
+
+ meson_src_configure "${myconf[@]}"
+}
+
+multilib_src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
+ local -x COLUMNS=80
+ meson_src_test
+}
+
+multilib_src_install_all() {
+ # meson doesn't know about docdir
+ mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
+
+ einstalldocs
+ dodoc "${FILESDIR}"/nsswitch.conf
+
+ insinto /usr/lib/tmpfiles.d
+ doins "${FILESDIR}"/legacy.conf
+
+ if ! use resolvconf; then
+ rm -f "${ED}"/usr/bin/resolvconf || die
+ fi
+
+ if ! use sysv-utils; then
+ rm "${ED}"/usr/bin/{halt,init,poweroff,reboot,shutdown} || die
+ rm "${ED}"/usr/share/man/man1/init.1 || die
+ rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die
+ fi
+
+ # https://bugs.gentoo.org/761763
+ rm -r "${ED}"/usr/lib/sysusers.d || die
+
+ # Preserve empty dirs in /etc & /var, bug #437008
+ keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
+ keepdir /etc/kernel/install.d
+ keepdir /etc/systemd/{network,system,user}
+ keepdir /etc/udev/rules.d
+
+ keepdir /etc/udev/hwdb.d
+
+ keepdir /usr/lib/systemd/{system-sleep,system-shutdown}
+ keepdir /usr/lib/{binfmt.d,modules-load.d}
+ keepdir /usr/lib/systemd/user-generators
+ keepdir /var/lib/systemd
+ keepdir /var/log/journal
+
+ if use pam; then
+ newpamd "${FILESDIR}"/systemd-user.pam systemd-user
+ fi
+
+ if use kernel-install; then
+ # Dummy config, remove to make room for sys-kernel/installkernel
+ rm "${ED}/usr/lib/kernel/install.conf" || die
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+migrate_locale() {
+ local envd_locale_def="${EROOT}/etc/env.d/02locale"
+ local envd_locale=( "${EROOT}"/etc/env.d/??locale )
+ local locale_conf="${EROOT}/etc/locale.conf"
+
+ if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
+ # If locale.conf does not exist...
+ if [[ -e ${envd_locale} ]]; then
+ # ...either copy env.d/??locale if there's one
+ ebegin "Moving ${envd_locale} to ${locale_conf}"
+ mv "${envd_locale}" "${locale_conf}"
+ eend ${?} || FAIL=1
+ else
+ # ...or create a dummy default
+ ebegin "Creating ${locale_conf}"
+ cat > "${locale_conf}" <<-EOF
+ # This file has been created by the sys-apps/systemd ebuild.
+ # See locale.conf(5) and localectl(1).
+
+ # LANG=${LANG}
+ EOF
+ eend ${?} || FAIL=1
+ fi
+ fi
+
+ if [[ ! -L ${envd_locale} ]]; then
+ # now, if env.d/??locale is not a symlink (to locale.conf)...
+ if [[ -e ${envd_locale} ]]; then
+ # ...warn the user that he has duplicate locale settings
+ ewarn
+ ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
+ ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
+ ewarn "and create the symlink with the following command:"
+ ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
+ ewarn
+ else
+ # ...or just create the symlink if there's nothing here
+ ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
+ ln -n -s ../locale.conf "${envd_locale_def}"
+ eend ${?} || FAIL=1
+ fi
+ fi
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/sysctl.conf ]]; then
+ # Symlink /etc/sysctl.conf for easy migration.
+ dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf
+ fi
+
+ if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then
+ ewarn "The 'gnuefi' USE flag has been renamed to 'boot'."
+ ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot."
+ fi
+}
+
+pkg_postinst() {
+ systemd_update_catalog
+
+ # Keep this here in case the database format changes so it gets updated
+ # when required.
+ systemd-hwdb --root="${ROOT}" update
+
+ udev_reload || FAIL=1
+
+ # Bug 465468, make sure locales are respected, and ensure consistency
+ # between OpenRC & systemd
+ migrate_locale
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if type systemctl &>/dev/null; then
+ systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
+ fi
+ elog "To enable a useful set of services, run the following:"
+ elog " systemctl preset-all --preset-mode=enable-only"
+ fi
+
+ if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then
+ rm "${EROOT}/var/lib/systemd/timesync"
+ fi
+
+ if [[ -z ${ROOT} && -d /run/systemd/system ]]; then
+ ebegin "Reexecuting system manager (systemd)"
+ systemctl daemon-reexec
+ eend $? || FAIL=1
+ fi
+
+ if [[ ${FAIL} ]]; then
+ eerror "One of the postinst commands failed. Please check the postinst output"
+ eerror "for errors. You may need to clean up your system and/or try installing"
+ eerror "systemd again."
+ eerror
+ fi
+
+ if use boot; then
+ optfeature "installing kernels in systemd-boot's native layout and update loader entries" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "generating unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
+
+pkg_prerm() {
+ # If removing systemd completely, remove the catalog database.
+ if [[ ! ${REPLACED_BY_VERSION} ]]; then
+ rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
+ fi
+}
diff --git a/sys-apps/systemd/systemd-255.4.ebuild b/sys-apps/systemd/systemd-255.4.ebuild
new file mode 100644
index 000000000000..c25e11cf430b
--- /dev/null
+++ b/sys-apps/systemd/systemd-255.4.ebuild
@@ -0,0 +1,530 @@
+# Copyright 2011-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Avoid QA warnings
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/systemd/systemd.git"
+ inherit git-r3
+else
+ if [[ ${PV} == *.* ]]; then
+ MY_PN=systemd-stable
+ else
+ MY_PN=systemd
+ fi
+ MY_PV=${PV/_/-}
+ MY_P=${MY_PN}-${MY_PV}
+ S=${WORKDIR}/${MY_P}
+ SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
+
+ if [[ ${PV} != *rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86"
+ fi
+fi
+
+inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1
+inherit secureboot systemd toolchain-funcs udev
+
+DESCRIPTION="System and service manager for Linux"
+HOMEPAGE="http://systemd.io/"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0/2"
+IUSE="
+ acl apparmor audit boot cgroup-hybrid cryptsetup curl +dns-over-tls elfutils
+ fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod
+ +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode
+ +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd
+"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ dns-over-tls? ( || ( gnutls openssl ) )
+ fido2? ( cryptsetup openssl )
+ homed? ( cryptsetup pam openssl )
+ importd? ( curl lzma || ( gcrypt openssl ) )
+ pwquality? ( homed )
+ boot? ( kernel-install )
+ ukify? ( boot )
+"
+RESTRICT="!test? ( test )"
+
+MINKV="4.15"
+
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.32:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ apparmor? ( >=sys-libs/libapparmor-2.13:0= )
+ audit? ( >=sys-process/audit-2:0= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
+ curl? ( >=net-misc/curl-7.32.0:0= )
+ elfutils? ( >=dev-libs/elfutils-0.158:0= )
+ fido2? ( dev-libs/libfido2:0= )
+ gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
+ gnutls? ( >=net-libs/gnutls-3.6.0:0= )
+ http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] )
+ idn? ( net-dns/libidn2:= )
+ importd? (
+ app-arch/bzip2:0=
+ sys-libs/zlib:0=
+ )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
+ iptables? ( net-firewall/iptables:0= )
+ openssl? ( >=dev-libs/openssl-1.1.0:0= )
+ pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
+ pkcs11? ( >=app-crypt/p11-kit-0.23.3:0= )
+ pcre? ( dev-libs/libpcre2 )
+ pwquality? ( >=dev-libs/libpwquality-1.4.1:0= )
+ qrcode? ( >=media-gfx/qrencode-3:0= )
+ seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
+ selinux? ( >=sys-libs/libselinux-2.1.9:0= )
+ tpm? ( app-crypt/tpm2-tss:0= )
+ xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
+ zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
+"
+
+# Newer linux-headers needed by ia64, bug #480218
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-${MINKV}
+"
+
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
+# baselayout-2.2 has /run
+RDEPEND="${COMMON_DEPEND}
+ >=acct-group/adm-0-r1
+ >=acct-group/wheel-0-r1
+ >=acct-group/kmem-0-r1
+ >=acct-group/tty-0-r1
+ >=acct-group/utmp-0-r1
+ >=acct-group/audio-0-r1
+ >=acct-group/cdrom-0-r1
+ >=acct-group/dialout-0-r1
+ >=acct-group/disk-0-r1
+ >=acct-group/input-0-r1
+ >=acct-group/kvm-0-r1
+ >=acct-group/lp-0-r1
+ >=acct-group/render-0-r1
+ acct-group/sgx
+ >=acct-group/tape-0-r1
+ acct-group/users
+ >=acct-group/video-0-r1
+ >=acct-group/systemd-journal-0-r1
+ >=acct-user/root-0-r1
+ acct-user/nobody
+ >=acct-user/systemd-journal-remote-0-r1
+ >=acct-user/systemd-coredump-0-r1
+ >=acct-user/systemd-network-0-r1
+ acct-user/systemd-oom
+ >=acct-user/systemd-resolve-0-r1
+ >=acct-user/systemd-timesync-0-r1
+ >=sys-apps/baselayout-2.2
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ selinux? (
+ sec-policy/selinux-base-policy[systemd]
+ sec-policy/selinux-ntp
+ )
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
+ !sysv-utils? ( sys-apps/sysvinit )
+ resolvconf? ( !net-dns/openresolv )
+ !sys-apps/hwids[udev]
+ !sys-auth/nss-myhostname
+ !sys-fs/eudev
+ !sys-fs/udev
+"
+
+# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
+PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
+ >=sys-fs/udev-init-scripts-34
+ policykit? ( sys-auth/polkit )
+ !vanilla? ( sys-apps/gentoo-systemd-integration )"
+
+BDEPEND="
+ app-arch/xz-utils:0
+ dev-util/gperf
+ >=dev-build/meson-0.46
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ app-text/tree
+ dev-lang/perl
+ sys-apps/dbus
+ )
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt:0
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
+"
+
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+
+pkg_pretend() {
+ if use split-usr; then
+ eerror "Please complete the migration to merged-usr."
+ eerror "https://wiki.gentoo.org/wiki/Merge-usr"
+ die "systemd no longer supports split-usr"
+ fi
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS
+ ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
+ ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
+ ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
+ ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
+ ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
+ ~!SYSFS_DEPRECATED_V2"
+
+ use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
+ use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
+
+ if kernel_is -ge 5 10 20; then
+ CONFIG_CHECK+=" ~KCMP"
+ else
+ CONFIG_CHECK+=" ~CHECKPOINT_RESTORE"
+ fi
+
+ if kernel_is -ge 4 18; then
+ CONFIG_CHECK+=" ~AUTOFS_FS"
+ else
+ CONFIG_CHECK+=" ~AUTOFS4_FS"
+ fi
+
+ if linux_config_exists; then
+ local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
+ if [[ -n ${uevent_helper_path} ]] && [[ ${uevent_helper_path} != '""' ]]; then
+ ewarn "It's recommended to set an empty value to the following kernel config option:"
+ ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
+ fi
+ if linux_chkconfig_present X86; then
+ CONFIG_CHECK+=" ~DMIID"
+ fi
+ fi
+
+ if kernel_is -lt ${MINKV//./ }; then
+ ewarn "Kernel version at least ${MINKV} required"
+ fi
+
+ check_extra_config
+ fi
+}
+
+pkg_setup() {
+ use boot && secureboot_pkg_setup
+}
+
+src_unpack() {
+ default
+ [[ ${PV} != 9999 ]] || git-r3_src_unpack
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/systemd-test-process-util.patch"
+ "${FILESDIR}/255-install-format-overflow.patch"
+ )
+
+ if ! use vanilla; then
+ PATCHES+=(
+ "${FILESDIR}/gentoo-generator-path-r2.patch"
+ "${FILESDIR}/gentoo-journald-audit-r1.patch"
+ )
+ fi
+
+ default
+}
+
+src_configure() {
+ # Prevent conflicts with i686 cross toolchain, bug 559726
+ tc-export AR CC NM OBJCOPY RANLIB
+
+ python_setup
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --localstatedir="${EPREFIX}/var"
+ # default is developer, bug 918671
+ -Dmode=release
+ -Dsupport-url="https://gentoo.org/support/"
+ -Dpamlibdir="$(getpam_mod_dir)"
+ # avoid bash-completion dep
+ -Dbashcompletiondir="$(get_bashcompdir)"
+ -Dsplit-bin=false
+ # Disable compatibility with sysvinit
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
+ # Avoid infinite exec recursion, bug 642724
+ -Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
+ # no deps
+ -Dima=true
+ -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
+ # Match /etc/shells, bug 919749
+ -Ddebug-shell="${EPREFIX}/bin/sh"
+ -Ddefault-user-shell="${EPREFIX}/bin/bash"
+ # Optional components/dependencies
+ $(meson_native_use_bool acl)
+ $(meson_native_use_bool apparmor)
+ $(meson_native_use_bool audit)
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool cryptsetup libcryptsetup)
+ $(meson_native_use_bool curl libcurl)
+ $(meson_native_use_bool dns-over-tls dns-over-tls)
+ $(meson_native_use_bool elfutils)
+ $(meson_native_use_bool fido2 libfido2)
+ $(meson_use gcrypt)
+ $(meson_native_use_bool gnutls)
+ $(meson_native_use_bool homed)
+ $(meson_native_use_bool http microhttpd)
+ $(meson_native_use_bool idn)
+ $(meson_native_use_bool importd)
+ $(meson_native_use_bool importd bzip2)
+ $(meson_native_use_bool importd zlib)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool kmod)
+ $(meson_use lz4)
+ $(meson_use lzma xz)
+ $(meson_use test tests)
+ $(meson_use zstd)
+ $(meson_native_use_bool iptables libiptc)
+ $(meson_native_use_bool openssl)
+ $(meson_use pam)
+ $(meson_native_use_bool pkcs11 p11kit)
+ $(meson_native_use_bool pcre pcre2)
+ $(meson_native_use_bool policykit polkit)
+ $(meson_native_use_bool pwquality)
+ $(meson_native_use_bool qrcode qrencode)
+ $(meson_native_use_bool seccomp)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool tpm tpm2)
+ $(meson_native_use_bool test dbus)
+ $(meson_native_use_bool ukify)
+ $(meson_native_use_bool xkb xkbcommon)
+ -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
+ # Breaks screen, tmux, etc.
+ -Ddefault-kill-user-processes=false
+ -Dcreate-log-dirs=false
+
+ # multilib options
+ $(meson_native_true backlight)
+ $(meson_native_true binfmt)
+ $(meson_native_true coredump)
+ $(meson_native_true environment-d)
+ $(meson_native_true firstboot)
+ $(meson_native_true hibernate)
+ $(meson_native_true hostnamed)
+ $(meson_native_true ldconfig)
+ $(meson_native_true localed)
+ $(meson_native_true man)
+ $(meson_native_true networkd)
+ $(meson_native_true quotacheck)
+ $(meson_native_true randomseed)
+ $(meson_native_true rfkill)
+ $(meson_native_true sysusers)
+ $(meson_native_true timedated)
+ $(meson_native_true timesyncd)
+ $(meson_native_true tmpfiles)
+ $(meson_native_true vconsole)
+ $(meson_native_enabled vmspawn)
+ )
+
+ meson_src_configure "${myconf[@]}"
+}
+
+multilib_src_test() {
+ (
+ unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
+ export COLUMNS=80
+ addpredict /dev
+ addpredict /proc
+ addpredict /run
+ addpredict /sys/fs/cgroup
+ meson_src_test
+ ) || die
+}
+
+multilib_src_install_all() {
+ # meson doesn't know about docdir
+ mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
+
+ einstalldocs
+ dodoc "${FILESDIR}"/nsswitch.conf
+
+ insinto /usr/lib/tmpfiles.d
+ doins "${FILESDIR}"/legacy.conf
+
+ if ! use resolvconf; then
+ rm -f "${ED}"/usr/bin/resolvconf || die
+ fi
+
+ if ! use sysv-utils; then
+ rm "${ED}"/usr/bin/{halt,init,poweroff,reboot,shutdown} || die
+ rm "${ED}"/usr/share/man/man1/init.1 || die
+ rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die
+ fi
+
+ # https://bugs.gentoo.org/761763
+ rm -r "${ED}"/usr/lib/sysusers.d || die
+
+ # Preserve empty dirs in /etc & /var, bug #437008
+ keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
+ keepdir /etc/kernel/install.d
+ keepdir /etc/systemd/{network,system,user}
+ keepdir /etc/udev/rules.d
+
+ keepdir /etc/udev/hwdb.d
+
+ keepdir /usr/lib/systemd/{system-sleep,system-shutdown}
+ keepdir /usr/lib/{binfmt.d,modules-load.d}
+ keepdir /usr/lib/systemd/user-generators
+ keepdir /var/lib/systemd
+ keepdir /var/log/journal
+
+ if use pam; then
+ newpamd "${FILESDIR}"/systemd-user.pam systemd-user
+ fi
+
+ if use kernel-install; then
+ # Dummy config, remove to make room for sys-kernel/installkernel
+ rm "${ED}/usr/lib/kernel/install.conf" || die
+ fi
+
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
+}
+
+migrate_locale() {
+ local envd_locale_def="${EROOT}/etc/env.d/02locale"
+ local envd_locale=( "${EROOT}"/etc/env.d/??locale )
+ local locale_conf="${EROOT}/etc/locale.conf"
+
+ if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
+ # If locale.conf does not exist...
+ if [[ -e ${envd_locale} ]]; then
+ # ...either copy env.d/??locale if there's one
+ ebegin "Moving ${envd_locale} to ${locale_conf}"
+ mv "${envd_locale}" "${locale_conf}"
+ eend ${?} || FAIL=1
+ else
+ # ...or create a dummy default
+ ebegin "Creating ${locale_conf}"
+ cat > "${locale_conf}" <<-EOF
+ # This file has been created by the sys-apps/systemd ebuild.
+ # See locale.conf(5) and localectl(1).
+
+ # LANG=${LANG}
+ EOF
+ eend ${?} || FAIL=1
+ fi
+ fi
+
+ if [[ ! -L ${envd_locale} ]]; then
+ # now, if env.d/??locale is not a symlink (to locale.conf)...
+ if [[ -e ${envd_locale} ]]; then
+ # ...warn the user that he has duplicate locale settings
+ ewarn
+ ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
+ ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
+ ewarn "and create the symlink with the following command:"
+ ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
+ ewarn
+ else
+ # ...or just create the symlink if there's nothing here
+ ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
+ ln -n -s ../locale.conf "${envd_locale_def}"
+ eend ${?} || FAIL=1
+ fi
+ fi
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/sysctl.conf ]]; then
+ # Symlink /etc/sysctl.conf for easy migration.
+ dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf
+ fi
+
+ if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then
+ ewarn "The 'gnuefi' USE flag has been renamed to 'boot'."
+ ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot."
+ fi
+}
+
+pkg_postinst() {
+ systemd_update_catalog
+
+ # Keep this here in case the database format changes so it gets updated
+ # when required.
+ systemd-hwdb --root="${ROOT}" update
+
+ udev_reload || FAIL=1
+
+ # Bug 465468, make sure locales are respected, and ensure consistency
+ # between OpenRC & systemd
+ migrate_locale
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if type systemctl &>/dev/null; then
+ systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
+ fi
+ elog "To enable a useful set of services, run the following:"
+ elog " systemctl preset-all --preset-mode=enable-only"
+ fi
+
+ if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then
+ rm "${EROOT}/var/lib/systemd/timesync"
+ fi
+
+ if [[ -z ${ROOT} && -d /run/systemd/system ]]; then
+ ebegin "Reexecuting system manager (systemd)"
+ systemctl daemon-reexec
+ eend $? || FAIL=1
+ fi
+
+ if [[ ${FAIL} ]]; then
+ eerror "One of the postinst commands failed. Please check the postinst output"
+ eerror "for errors. You may need to clean up your system and/or try installing"
+ eerror "systemd again."
+ eerror
+ fi
+
+ if use boot; then
+ optfeature "installing kernels in systemd-boot's native layout and update loader entries" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "generating unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
+}
+
+pkg_prerm() {
+ # If removing systemd completely, remove the catalog database.
+ if [[ ! ${REPLACED_BY_VERSION} ]]; then
+ rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
+ fi
+}
diff --git a/sys-apps/systemd/systemd-9999.ebuild b/sys-apps/systemd/systemd-9999.ebuild
index 3cca3239a602..9ebc6c14fa23 100644
--- a/sys-apps/systemd/systemd-9999.ebuild
+++ b/sys-apps/systemd/systemd-9999.ebuild
@@ -1,7 +1,14 @@
-# Copyright 2011-2020 Gentoo Authors
+# Copyright 2011-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Avoid QA warnings
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/systemd/systemd.git"
@@ -16,45 +23,54 @@ else
MY_P=${MY_PN}-${MY_PV}
S=${WORKDIR}/${MY_P}
SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-fi
-PYTHON_COMPAT=( python3_{6,7,8} )
+ if [[ ${PV} != *rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ fi
+fi
-inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev usr-ldscript
+inherit bash-completion-r1 linux-info meson-multilib optfeature pam python-single-r1
+inherit secureboot systemd toolchain-funcs udev
DESCRIPTION="System and service manager for Linux"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
+HOMEPAGE="http://systemd.io/"
LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
SLOT="0/2"
-IUSE="acl apparmor audit build cgroup-hybrid cryptsetup curl dns-over-tls elfutils +gcrypt gnuefi homed http +hwdb idn importd +kmod +lz4 lzma nat pam pcre pkcs11 policykit pwquality qrcode repart +resolvconf +seccomp selinux split-usr static-libs +sysv-utils test vanilla xkb +zstd"
-
+IUSE="
+ acl apparmor audit boot cgroup-hybrid cryptsetup curl +dns-over-tls elfutils
+ fido2 +gcrypt gnutls homed http idn importd iptables +kernel-install +kmod
+ +lz4 lzma +openssl pam pcre pkcs11 policykit pwquality qrcode
+ +resolvconf +seccomp selinux split-usr +sysv-utils test tpm ukify vanilla xkb +zstd
+"
REQUIRED_USE="
- homed? ( cryptsetup )
- importd? ( curl gcrypt lzma )
+ ${PYTHON_REQUIRED_USE}
+ dns-over-tls? ( || ( gnutls openssl ) )
+ fido2? ( cryptsetup openssl )
+ homed? ( cryptsetup pam openssl )
+ importd? ( curl lzma || ( gcrypt openssl ) )
+ pwquality? ( homed )
+ boot? ( kernel-install )
+ ukify? ( boot )
"
RESTRICT="!test? ( test )"
-MINKV="3.11"
-
-OPENSSL_DEP=">=dev-libs/openssl-1.1.0:0="
+MINKV="4.15"
-COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.32:0=[${MULTILIB_USEDEP}]
sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
acl? ( sys-apps/acl:0= )
- apparmor? ( sys-libs/libapparmor:0= )
+ apparmor? ( >=sys-libs/libapparmor-2.13:0= )
audit? ( >=sys-process/audit-2:0= )
cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
- curl? ( net-misc/curl:0= )
- dns-over-tls? ( >=net-libs/gnutls-3.6.0:0= )
+ curl? ( >=net-misc/curl-7.32.0:0= )
elfutils? ( >=dev-libs/elfutils-0.158:0= )
+ fido2? ( dev-libs/libfido2:0= )
gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
- homed? ( ${OPENSSL_DEP} )
- http? (
- >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)]
- >=net-libs/gnutls-3.1.4:0=
- )
+ gnutls? ( >=net-libs/gnutls-3.6.0:0= )
+ http? ( >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] )
idn? ( net-dns/libidn2:= )
importd? (
app-arch/bzip2:0=
@@ -63,15 +79,16 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
kmod? ( >=sys-apps/kmod-15:0= )
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
- nat? ( net-firewall/iptables:0= )
+ iptables? ( net-firewall/iptables:0= )
+ openssl? ( >=dev-libs/openssl-1.1.0:0= )
pam? ( sys-libs/pam:=[${MULTILIB_USEDEP}] )
- pkcs11? ( app-crypt/p11-kit:0= )
+ pkcs11? ( >=app-crypt/p11-kit-0.23.3:0= )
pcre? ( dev-libs/libpcre2 )
- pwquality? ( dev-libs/libpwquality:0= )
- qrcode? ( media-gfx/qrencode:0= )
- repart? ( ${OPENSSL_DEP} )
+ pwquality? ( >=dev-libs/libpwquality-1.4.1:0= )
+ qrcode? ( >=media-gfx/qrencode-3:0= )
seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
- selinux? ( sys-libs/libselinux:0= )
+ selinux? ( >=sys-libs/libselinux-2.1.9:0= )
+ tpm? ( app-crypt/tpm2-tss:0= )
xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
"
@@ -79,41 +96,54 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
# Newer linux-headers needed by ia64, bug #480218
DEPEND="${COMMON_DEPEND}
>=sys-kernel/linux-headers-${MINKV}
- gnuefi? ( >=sys-boot/gnu-efi-3.0.2 )
"
+PEFILE_DEPEND='dev-python/pefile[${PYTHON_USEDEP}]'
+
# baselayout-2.2 has /run
RDEPEND="${COMMON_DEPEND}
- acct-group/adm
- acct-group/wheel
- acct-group/kmem
- acct-group/tty
- acct-group/utmp
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kvm
- acct-group/render
- acct-group/tape
- acct-group/video
- acct-group/systemd-journal
- acct-user/systemd-journal-remote
- acct-user/systemd-coredump
- acct-user/systemd-network
- acct-user/systemd-resolve
- acct-user/systemd-timesync
+ >=acct-group/adm-0-r1
+ >=acct-group/wheel-0-r1
+ >=acct-group/kmem-0-r1
+ >=acct-group/tty-0-r1
+ >=acct-group/utmp-0-r1
+ >=acct-group/audio-0-r1
+ >=acct-group/cdrom-0-r1
+ >=acct-group/dialout-0-r1
+ >=acct-group/disk-0-r1
+ >=acct-group/input-0-r1
+ >=acct-group/kvm-0-r1
+ >=acct-group/lp-0-r1
+ >=acct-group/render-0-r1
+ acct-group/sgx
+ >=acct-group/tape-0-r1
+ acct-group/users
+ >=acct-group/video-0-r1
+ >=acct-group/systemd-journal-0-r1
+ >=acct-user/root-0-r1
+ acct-user/nobody
+ >=acct-user/systemd-journal-remote-0-r1
+ >=acct-user/systemd-coredump-0-r1
+ >=acct-user/systemd-network-0-r1
+ acct-user/systemd-oom
+ >=acct-user/systemd-resolve-0-r1
+ >=acct-user/systemd-timesync-0-r1
>=sys-apps/baselayout-2.2
- selinux? ( sec-policy/selinux-base-policy[systemd] )
- sysv-utils? ( !sys-apps/sysvinit )
+ ukify? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "${PEFILE_DEPEND}")
+ )
+ selinux? (
+ sec-policy/selinux-base-policy[systemd]
+ sec-policy/selinux-ntp
+ )
+ sysv-utils? (
+ !sys-apps/openrc[sysv-utils(-)]
+ !sys-apps/sysvinit
+ )
!sysv-utils? ( sys-apps/sysvinit )
resolvconf? ( !net-dns/openresolv )
- !build? ( || (
- sys-apps/util-linux[kill(-)]
- sys-process/procps[kill(+)]
- sys-apps/coreutils[kill(-)]
- ) )
+ !sys-apps/hwids[udev]
!sys-auth/nss-myhostname
!sys-fs/eudev
!sys-fs/udev
@@ -121,7 +151,6 @@ RDEPEND="${COMMON_DEPEND}
# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
- hwdb? ( >=sys-apps/hwids-20150417[udev] )
>=sys-fs/udev-init-scripts-34
policykit? ( sys-auth/polkit )
!vanilla? ( sys-apps/gentoo-systemd-integration )"
@@ -129,32 +158,40 @@ PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
BDEPEND="
app-arch/xz-utils:0
dev-util/gperf
- >=dev-util/meson-0.46
- >=dev-util/intltool-0.50
+ >=dev-build/meson-0.46
>=sys-apps/coreutils-8.16
- sys-devel/m4
+ sys-devel/gettext
virtual/pkgconfig
- test? ( sys-apps/dbus )
+ test? (
+ app-text/tree
+ dev-lang/perl
+ sys-apps/dbus
+ )
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-stylesheets
dev-libs/libxslt:0
- $(python_gen_any_dep 'dev-python/lxml[${PYTHON_USEDEP}]')
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep "
+ dev-python/jinja[\${PYTHON_USEDEP}]
+ dev-python/lxml[\${PYTHON_USEDEP}]
+ boot? ( >=dev-python/pyelftools-0.30[\${PYTHON_USEDEP}] )
+ ukify? ( test? ( ${PEFILE_DEPEND} ) )
+ ")
"
-python_check_deps() {
- has_version -b "dev-python/lxml[${PYTHON_USEDEP}]"
-}
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
pkg_pretend() {
+ if use split-usr; then
+ eerror "Please complete the migration to merged-usr."
+ eerror "https://wiki.gentoo.org/wiki/Merge-usr"
+ die "systemd no longer supports split-usr"
+ fi
if [[ ${MERGE_TYPE} != buildonly ]]; then
- if use test && has pid-sandbox ${FEATURES}; then
- ewarn "Tests are known to fail with PID sandboxing enabled."
- ewarn "See https://bugs.gentoo.org/674458."
- fi
-
- local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
- ~CHECKPOINT_RESTORE ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
+ local CONFIG_CHECK="~BLK_DEV_BSG ~CGROUPS
+ ~CGROUP_BPF ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
@@ -163,9 +200,18 @@ pkg_pretend() {
use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
use seccomp && CONFIG_CHECK+=" ~SECCOMP ~SECCOMP_FILTER"
- kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
- kernel_is -lt 4 7 && CONFIG_CHECK+=" ~DEVPTS_MULTIPLE_INSTANCES"
- kernel_is -ge 4 10 && CONFIG_CHECK+=" ~CGROUP_BPF"
+
+ if kernel_is -ge 5 10 20; then
+ CONFIG_CHECK+=" ~KCMP"
+ else
+ CONFIG_CHECK+=" ~CHECKPOINT_RESTORE"
+ fi
+
+ if kernel_is -ge 4 18; then
+ CONFIG_CHECK+=" ~AUTOFS_FS"
+ else
+ CONFIG_CHECK+=" ~AUTOFS4_FS"
+ fi
if linux_config_exists; then
local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
@@ -187,7 +233,7 @@ pkg_pretend() {
}
pkg_setup() {
- :
+ use boot && secureboot_pkg_setup
}
src_unpack() {
@@ -196,20 +242,14 @@ src_unpack() {
}
src_prepare() {
- # Do NOT add patches here
- local PATCHES=()
-
- [[ -d "${WORKDIR}"/patches ]] && PATCHES+=( "${WORKDIR}"/patches )
-
- # Add local patches here
- PATCHES+=(
+ local PATCHES=(
+ "${FILESDIR}/systemd-test-process-util.patch"
)
if ! use vanilla; then
PATCHES+=(
"${FILESDIR}/gentoo-generator-path-r2.patch"
- "${FILESDIR}/gentoo-systemctl-disable-sysv-sync.patch"
- "${FILESDIR}/gentoo-journald-audit.patch"
+ "${FILESDIR}/gentoo-journald-audit-r1.patch"
)
fi
@@ -225,149 +265,130 @@ src_configure() {
multilib-minimal_src_configure
}
-meson_use() {
- usex "$1" true false
-}
-
-meson_multilib() {
- if multilib_is_native_abi; then
- echo true
- else
- echo false
- fi
-}
-
-meson_multilib_native_use() {
- if multilib_is_native_abi && use "$1"; then
- echo true
- else
- echo false
- fi
-}
-
multilib_src_configure() {
local myconf=(
--localstatedir="${EPREFIX}/var"
+ # default is developer, bug 918671
+ -Dmode=release
-Dsupport-url="https://gentoo.org/support/"
-Dpamlibdir="$(getpam_mod_dir)"
# avoid bash-completion dep
-Dbashcompletiondir="$(get_bashcompdir)"
- # make sure we get /bin:/sbin in PATH
- -Dsplit-usr=$(usex split-usr true false)
- -Dsplit-bin=true
- -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
- -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ -Dsplit-bin=false
+ # Disable compatibility with sysvinit
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
# Avoid infinite exec recursion, bug 642724
-Dtelinit-path="${EPREFIX}/lib/sysvinit/telinit"
# no deps
-Dima=true
-Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
+ # Match /etc/shells, bug 919749
+ -Ddebug-shell="${EPREFIX}/bin/sh"
+ -Ddefault-user-shell="${EPREFIX}/bin/bash"
# Optional components/dependencies
- -Dacl=$(meson_multilib_native_use acl)
- -Dapparmor=$(meson_multilib_native_use apparmor)
- -Daudit=$(meson_multilib_native_use audit)
- -Dlibcryptsetup=$(meson_multilib_native_use cryptsetup)
- -Dlibcurl=$(meson_multilib_native_use curl)
- -Ddns-over-tls=$(meson_multilib_native_use dns-over-tls)
- -Delfutils=$(meson_multilib_native_use elfutils)
- -Dgcrypt=$(meson_use gcrypt)
- -Dgnu-efi=$(meson_multilib_native_use gnuefi)
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
- -Dhomed=$(meson_multilib_native_use homed)
- -Dhwdb=$(meson_multilib_native_use hwdb)
- -Dmicrohttpd=$(meson_multilib_native_use http)
- -Didn=$(meson_multilib_native_use idn)
- -Dimportd=$(meson_multilib_native_use importd)
- -Dbzip2=$(meson_multilib_native_use importd)
- -Dzlib=$(meson_multilib_native_use importd)
- -Dkmod=$(meson_multilib_native_use kmod)
- -Dlz4=$(meson_use lz4)
- -Dxz=$(meson_use lzma)
- -Dzstd=$(meson_use zstd)
- -Dlibiptc=$(meson_multilib_native_use nat)
- -Dpam=$(meson_use pam)
- -Dp11kit=$(meson_multilib_native_use pkcs11)
- -Dpcre2=$(meson_multilib_native_use pcre)
- -Dpolkit=$(meson_multilib_native_use policykit)
- -Dpwquality=$(meson_multilib_native_use pwquality)
- -Dqrencode=$(meson_multilib_native_use qrcode)
- -Drepart=$(meson_multilib_native_use repart)
- -Dseccomp=$(meson_multilib_native_use seccomp)
- -Dselinux=$(meson_multilib_native_use selinux)
- -Ddbus=$(meson_multilib_native_use test)
- -Dxkbcommon=$(meson_multilib_native_use xkb)
+ $(meson_native_use_bool acl)
+ $(meson_native_use_bool apparmor)
+ $(meson_native_use_bool audit)
+ $(meson_native_use_bool boot bootloader)
+ $(meson_native_use_bool cryptsetup libcryptsetup)
+ $(meson_native_use_bool curl libcurl)
+ $(meson_native_use_bool dns-over-tls dns-over-tls)
+ $(meson_native_use_bool elfutils)
+ $(meson_native_use_bool fido2 libfido2)
+ $(meson_use gcrypt)
+ $(meson_native_use_bool gnutls)
+ $(meson_native_use_bool homed)
+ $(meson_native_use_bool http microhttpd)
+ $(meson_native_use_bool idn)
+ $(meson_native_use_bool importd)
+ $(meson_native_use_bool importd bzip2)
+ $(meson_native_use_bool importd zlib)
+ $(meson_native_use_bool kernel-install)
+ $(meson_native_use_bool kmod)
+ $(meson_use lz4)
+ $(meson_use lzma xz)
+ $(meson_use test tests)
+ $(meson_use zstd)
+ $(meson_native_use_bool iptables libiptc)
+ $(meson_native_use_bool openssl)
+ $(meson_use pam)
+ $(meson_native_use_bool pkcs11 p11kit)
+ $(meson_native_use_bool pcre pcre2)
+ $(meson_native_use_bool policykit polkit)
+ $(meson_native_use_bool pwquality)
+ $(meson_native_use_bool qrcode qrencode)
+ $(meson_native_use_bool seccomp)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool tpm tpm2)
+ $(meson_native_use_bool test dbus)
+ $(meson_native_use_bool ukify)
+ $(meson_native_use_bool xkb xkbcommon)
-Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
# Breaks screen, tmux, etc.
-Ddefault-kill-user-processes=false
-Dcreate-log-dirs=false
# multilib options
- -Dbacklight=$(meson_multilib)
- -Dbinfmt=$(meson_multilib)
- -Dcoredump=$(meson_multilib)
- -Denvironment-d=$(meson_multilib)
- -Dfirstboot=$(meson_multilib)
- -Dhibernate=$(meson_multilib)
- -Dhostnamed=$(meson_multilib)
- -Dldconfig=$(meson_multilib)
- -Dlocaled=$(meson_multilib)
- -Dman=$(meson_multilib)
- -Dnetworkd=$(meson_multilib)
- -Dquotacheck=$(meson_multilib)
- -Drandomseed=$(meson_multilib)
- -Drfkill=$(meson_multilib)
- -Dsysusers=$(meson_multilib)
- -Dtimedated=$(meson_multilib)
- -Dtimesyncd=$(meson_multilib)
- -Dtmpfiles=$(meson_multilib)
- -Dvconsole=$(meson_multilib)
-
- # static-libs
- -Dstatic-libsystemd=$(usex static-libs true false)
- -Dstatic-libudev=$(usex static-libs true false)
+ $(meson_native_true backlight)
+ $(meson_native_true binfmt)
+ $(meson_native_true coredump)
+ $(meson_native_true environment-d)
+ $(meson_native_true firstboot)
+ $(meson_native_true hibernate)
+ $(meson_native_true hostnamed)
+ $(meson_native_true ldconfig)
+ $(meson_native_true localed)
+ $(meson_native_true man)
+ $(meson_native_true networkd)
+ $(meson_native_true quotacheck)
+ $(meson_native_true randomseed)
+ $(meson_native_true rfkill)
+ $(meson_native_true sysusers)
+ $(meson_native_true timedated)
+ $(meson_native_true timesyncd)
+ $(meson_native_true tmpfiles)
+ $(meson_native_true vconsole)
+ $(meson_native_enabled vmspawn)
)
meson_src_configure "${myconf[@]}"
}
-multilib_src_compile() {
- eninja
-}
-
multilib_src_test() {
- unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
- meson_src_test
-}
-
-multilib_src_install() {
- DESTDIR="${D}" eninja install
+ (
+ unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
+ export COLUMNS=80
+ addpredict /dev
+ addpredict /proc
+ addpredict /run
+ addpredict /sys/fs/cgroup
+ meson_src_test
+ ) || die
}
multilib_src_install_all() {
- local rootprefix=$(usex split-usr '' /usr)
-
# meson doesn't know about docdir
mv "${ED}"/usr/share/doc/{systemd,${PF}} || die
einstalldocs
dodoc "${FILESDIR}"/nsswitch.conf
+ insinto /usr/lib/tmpfiles.d
+ doins "${FILESDIR}"/legacy.conf
+
if ! use resolvconf; then
- rm -f "${ED}${rootprefix}"/sbin/resolvconf || die
+ rm -f "${ED}"/usr/bin/resolvconf || die
fi
- rm "${ED}"/etc/init.d/README || die
- rm "${ED}${rootprefix}"/lib/systemd/system-generators/systemd-sysv-generator || die
-
if ! use sysv-utils; then
- rm "${ED}${rootprefix}"/sbin/{halt,init,poweroff,reboot,runlevel,shutdown,telinit} || die
+ rm "${ED}"/usr/bin/{halt,init,poweroff,reboot,shutdown} || die
rm "${ED}"/usr/share/man/man1/init.1 || die
- rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 || die
+ rm "${ED}"/usr/share/man/man8/{halt,poweroff,reboot,shutdown}.8 || die
fi
- if ! use resolvconf && ! use sysv-utils; then
- rmdir "${ED}${rootprefix}"/sbin || die
- fi
+ # https://bugs.gentoo.org/761763
+ rm -r "${ED}"/usr/lib/sysusers.d || die
# Preserve empty dirs in /etc & /var, bug #437008
keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
@@ -375,30 +396,25 @@ multilib_src_install_all() {
keepdir /etc/systemd/{network,system,user}
keepdir /etc/udev/rules.d
- if use hwdb; then
- keepdir /etc/udev/hwdb.d
- fi
+ keepdir /etc/udev/hwdb.d
- keepdir "${rootprefix}"/lib/systemd/{system-sleep,system-shutdown}
+ keepdir /usr/lib/systemd/{system-sleep,system-shutdown}
keepdir /usr/lib/{binfmt.d,modules-load.d}
keepdir /usr/lib/systemd/user-generators
keepdir /var/lib/systemd
keepdir /var/log/journal
- # Symlink /etc/sysctl.conf for easy migration.
- dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
-
- if use hwdb; then
- rm -r "${ED}${rootprefix}"/lib/udev/hwdb.d || die
+ if use pam; then
+ newpamd "${FILESDIR}"/systemd-user.pam systemd-user
fi
- if use split-usr; then
- # Avoid breaking boot/reboot
- dosym ../../../lib/systemd/systemd /usr/lib/systemd/systemd
- dosym ../../../lib/systemd/systemd-shutdown /usr/lib/systemd/systemd-shutdown
+ if use kernel-install; then
+ # Dummy config, remove to make room for sys-kernel/installkernel
+ rm "${ED}/usr/lib/kernel/install.conf" || die
fi
- gen_usr_ldscript -a systemd udev
+ use ukify && python_fix_shebang "${ED}"
+ use boot && secureboot_auto_sign
}
migrate_locale() {
@@ -445,33 +461,15 @@ migrate_locale() {
fi
}
-save_enabled_units() {
- ENABLED_UNITS=()
- type systemctl &>/dev/null || return
- for x; do
- if systemctl --quiet --root="${ROOT:-/}" is-enabled "${x}"; then
- ENABLED_UNITS+=( "${x}" )
- fi
- done
-}
-
pkg_preinst() {
- save_enabled_units {machines,remote-{cryptsetup,fs}}.target getty@tty1.service
-
- if ! use split-usr; then
- local dir
- for dir in bin sbin lib; do
- if [[ ! ${EROOT}/${dir} -ef ${EROOT}/usr/${dir} ]]; then
- eerror "\"${EROOT}/${dir}\" and \"${EROOT}/usr/${dir}\" are not merged."
- eerror "One of them should be a symbolic link to the other one."
- FAIL=1
- fi
- done
- if [[ ${FAIL} ]]; then
- eerror "Migration to system layout with merged directories must be performed before"
- eerror "rebuilding ${CATEGORY}/${PN} with USE=\"-split-usr\" to avoid run-time breakage."
- die "System layout with split directories still used"
- fi
+ if [[ -e ${EROOT}/etc/sysctl.conf ]]; then
+ # Symlink /etc/sysctl.conf for easy migration.
+ dosym ../../../etc/sysctl.conf /usr/lib/sysctl.d/99-sysctl.conf
+ fi
+
+ if ! use boot && has_version "sys-apps/systemd[gnuefi(-)]"; then
+ ewarn "The 'gnuefi' USE flag has been renamed to 'boot'."
+ ewarn "Make sure to enable the 'boot' USE flag if you use systemd-boot."
fi
}
@@ -479,23 +477,15 @@ pkg_postinst() {
systemd_update_catalog
# Keep this here in case the database format changes so it gets updated
- # when required. Despite that this file is owned by sys-apps/hwids.
- if has_version "sys-apps/hwids[udev]"; then
- udevadm hwdb --update --root="${EROOT}"
- fi
+ # when required.
+ systemd-hwdb --root="${ROOT}" update
udev_reload || FAIL=1
- # Bug 465468, make sure locales are respect, and ensure consistency
+ # Bug 465468, make sure locales are respected, and ensure consistency
# between OpenRC & systemd
migrate_locale
- systemd_reenable systemd-networkd.service systemd-resolved.service
-
- if [[ ${ENABLED_UNITS[@]} ]]; then
- systemctl --root="${ROOT:-/}" enable "${ENABLED_UNITS[@]}"
- fi
-
if [[ -z ${REPLACING_VERSIONS} ]]; then
if type systemctl &>/dev/null; then
systemctl --root="${ROOT:-/}" enable getty@.service remote-fs.target || FAIL=1
@@ -509,9 +499,9 @@ pkg_postinst() {
fi
if [[ -z ${ROOT} && -d /run/systemd/system ]]; then
- ebegin "Reexecuting system manager"
+ ebegin "Reexecuting system manager (systemd)"
systemctl daemon-reexec
- eend $?
+ eend $? || FAIL=1
fi
if [[ ${FAIL} ]]; then
@@ -520,6 +510,15 @@ pkg_postinst() {
eerror "systemd again."
eerror
fi
+
+ if use boot; then
+ optfeature "installing kernels in systemd-boot's native layout and update loader entries" \
+ "sys-kernel/installkernel[systemd-boot]"
+ fi
+ if use ukify; then
+ optfeature "generating unified kernel image on each kernel installation" \
+ "sys-kernel/installkernel[ukify]"
+ fi
}
pkg_prerm() {
diff --git a/sys-apps/sysvinit/Manifest b/sys-apps/sysvinit/Manifest
index 0a33a2d91add..388b7cada10a 100644
--- a/sys-apps/sysvinit/Manifest
+++ b/sys-apps/sysvinit/Manifest
@@ -1,3 +1,4 @@
-DIST sysvinit-2.93.tar.xz 117580 BLAKE2B 2e771b00dbdc73e76df9e78659aaa5e5fcbfda36290a1b5aa20a5a6fe3540c4616f2a235a668de30d33c620e2d2516da303537eda47b83b29b0844ad7aa77df4 SHA512 c80d07a674253d15ec6382cfaf792f47486e2e84ab9c913d3c9e03b590cf211177a3a14e168f4d1c9c2e97737221f7ac70a75633d90502837a6d29bdc4c48d72
-DIST sysvinit-2.96.tar.xz 122164 BLAKE2B 10c28d3bb57fc744b66c3a7ac78912fb6a9d987e9f6f32f82953d23a9884020daa6fa8c7722e6d8145d9899f7f7dc623f69f885d3d8fbbcd313d0e69ffb66497 SHA512 1388398568ebfe53460796f8ab75a3ead6111612888ea36e8f1c0db4d41ef6f45fc217abb7804519ff1143a78d97c95b24e42c8c22c95a47b9436484bfb6f45d
-DIST sysvinit-2.97.tar.xz 126848 BLAKE2B dd2612de531a89f1fdbfaeb8b5975aeba9541a6b570587a881bdb11406991c1a9b254d1802725298eb13362d625d3859b520ee964782a0fe43d3f038a28b49e6 SHA512 89950080a120b62bdd297f3a59898dd11e10c7438cf18774bad16c65ce5fb2e190726e601c6f263def32cff59867c0984edcd99d527eb80297901085afbb2e90
+DIST sysvinit-3.08.tar.xz 268296 BLAKE2B ec4a4ff3663ac7d67808b50b67631ff4fe1ab56d376df15868df0eb79cbc329b192af124380eec6a797d827c3c7c5586058310d803f42ee1934dcffbfbe876f7 SHA512 a523e030e559ecc56391f9424e240fbe54a714bb3c522ca0bb410b649a1c08c5e9f03d298340a5586565f18d8640b1b418fa09294b41fb95a9cd2a686316b758
+DIST sysvinit-3.08.tar.xz.sig 833 BLAKE2B b1cbe8a95faa16a22e92e2a8841643aeaf7a5a31cc9fa9628a7ee2400aac1b3a184ae01f09c75d48d5d55a71f7e62feb25c16345644bfb4fcd19cbd061f86573 SHA512 1af105d84b98428766cc315d8dea068e6c5a7ad52008291ba7c1d5accbcaeead4999fd714fc152c1038e54953f9b469bd0f792a0830e68c3e2f43afcd36e0e2d
+DIST sysvinit-3.09.tar.xz 239600 BLAKE2B 81c3e80dd66896110b1a2488415dd20fae03b4b7d8d4f40d175c195942e1c13367a7f1cf9efd1c79a37e16684bd12e1c76dbb1f8faab44e495e8de684fe744ef SHA512 ddd3681e24c699f9f0cf2cfc44488e32205a8fcf1723b79da47b95adef0c0edc1d9fd387d259dba15a2158fbd0b7920d789b46a9f3c7cd016a12bb1dc92f00d4
+DIST sysvinit-3.09.tar.xz.sig 833 BLAKE2B f00020388eb330d753c4280d96b1363c1b539bf8b8cc21a79f055970f44acebf14e690b132dc09ed43e6db8907624083e7b5cc5849808fd804188d97c5eafd2d SHA512 c509bb8dc4fee98ac8e4502bc10e1058dc91126eeb0767a56167267bc14d4b09353b98d8d3a8a5c5dc2b5a0e2e315e0c8c9d3d662ac14510466ae5092504e672
diff --git a/sys-apps/sysvinit/files/bootlogd.confd b/sys-apps/sysvinit/files/bootlogd.confd
new file mode 100644
index 000000000000..ac456db6ecf7
--- /dev/null
+++ b/sys-apps/sysvinit/files/bootlogd.confd
@@ -0,0 +1,2 @@
+# Put your bootlog options into this
+#BOOTLOGD_ARGS="-l /var/log/boot"
diff --git a/sys-apps/sysvinit/files/bootlogd.initd b/sys-apps/sysvinit/files/bootlogd.initd
index a42219271a80..ef238c13922b 100644
--- a/sys-apps/sysvinit/files/bootlogd.initd
+++ b/sys-apps/sysvinit/files/bootlogd.initd
@@ -1,8 +1,8 @@
#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
description="bootlogd - record boot messages (sysvinit)"
pidfile="/run/bootlogd"
command="/sbin/bootlogd"
-command_args="-p ${pidfile}"
+command_args="-p ${pidfile} ${BOOTLOGD_ARGS}"
diff --git a/sys-apps/sysvinit/files/inittab-2.91 b/sys-apps/sysvinit/files/inittab-2.91
deleted file mode 100644
index f9ed8d1126a3..000000000000
--- a/sys-apps/sysvinit/files/inittab-2.91
+++ /dev/null
@@ -1,61 +0,0 @@
-#
-# /etc/inittab: This file describes how the INIT process should set up
-# the system in a certain run-level.
-#
-# Author: Miquel van Smoorenburg, <miquels@cistron.nl>
-# Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com>
-# Modified by: Daniel Robbins, <drobbins@gentoo.org>
-# Modified by: Martin Schlemmer, <azarah@gentoo.org>
-# Modified by: Mike Frysinger, <vapier@gentoo.org>
-# Modified by: Robin H. Johnson, <robbat2@gentoo.org>
-# Modified by: William Hubbs, <williamh@gentoo.org>
-#
-
-# Default runlevel.
-id:3:initdefault:
-
-# System initialization, mount local filesystems, etc.
-si::sysinit:/sbin/openrc sysinit
-
-# Further system initialization, brings up the boot runlevel.
-rc::bootwait:/sbin/openrc boot
-
-l0u:0:wait:/sbin/telinit u
-l0:0:wait:/sbin/openrc shutdown
-l0s:0:wait:/sbin/halt -dhnp
-l1:1:wait:/sbin/openrc single
-l2:2:wait:/sbin/openrc nonetwork
-l3:3:wait:/sbin/openrc default
-l4:4:wait:/sbin/openrc default
-l5:5:wait:/sbin/openrc default
-l6u:6:wait:/sbin/telinit u
-l6:6:wait:/sbin/openrc reboot
-l6r:6:wait:/sbin/reboot -dkn
-#z6:6:respawn:/sbin/sulogin
-
-# new-style single-user
-su0:S:wait:/sbin/openrc single
-su1:S:wait:/sbin/sulogin
-
-# TERMINALS
-#x1:12345:respawn:/sbin/agetty 38400 console linux
-c1:12345:respawn:/sbin/agetty 38400 tty1 linux
-c2:2345:respawn:/sbin/agetty 38400 tty2 linux
-c3:2345:respawn:/sbin/agetty 38400 tty3 linux
-c4:2345:respawn:/sbin/agetty 38400 tty4 linux
-c5:2345:respawn:/sbin/agetty 38400 tty5 linux
-c6:2345:respawn:/sbin/agetty 38400 tty6 linux
-
-# SERIAL CONSOLES
-#s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100
-#s1:12345:respawn:/sbin/agetty -L 9600 ttyS1 vt100
-
-# What to do at the "Three Finger Salute".
-ca:12345:ctrlaltdel:/sbin/shutdown -r now
-
-# Used by /etc/init.d/xdm to control DM startup.
-# Read the comments in /etc/init.d/xdm for more
-# info. Do NOT remove, as this will start nothing
-# extra at boot if /etc/init.d/xdm is not added
-# to the "default" runlevel.
-x:a:once:/etc/X11/startDM.sh
diff --git a/sys-apps/sysvinit/files/inittab-2.95 b/sys-apps/sysvinit/files/inittab-2.95
deleted file mode 100644
index 03f226a8c3bf..000000000000
--- a/sys-apps/sysvinit/files/inittab-2.95
+++ /dev/null
@@ -1,61 +0,0 @@
-#
-# /etc/inittab: This file describes how the INIT process should set up
-# the system in a certain run-level.
-#
-# Author: Miquel van Smoorenburg, <miquels@cistron.nl>
-# Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com>
-# Modified by: Daniel Robbins, <drobbins@gentoo.org>
-# Modified by: Martin Schlemmer, <azarah@gentoo.org>
-# Modified by: Mike Frysinger, <vapier@gentoo.org>
-# Modified by: Robin H. Johnson, <robbat2@gentoo.org>
-# Modified by: William Hubbs, <williamh@gentoo.org>
-#
-
-# Default runlevel.
-id:3:initdefault:
-
-# System initialization, mount local filesystems, etc.
-si::sysinit:/sbin/openrc sysinit
-
-# Further system initialization, brings up the boot runlevel.
-rc::bootwait:/sbin/openrc boot
-
-l0u:0:wait:/sbin/telinit u
-l0:0:wait:/sbin/openrc shutdown
-l0s:0:wait:/sbin/halt.sh
-l1:1:wait:/sbin/openrc single
-l2:2:wait:/sbin/openrc nonetwork
-l3:3:wait:/sbin/openrc default
-l4:4:wait:/sbin/openrc default
-l5:5:wait:/sbin/openrc default
-l6u:6:wait:/sbin/telinit u
-l6:6:wait:/sbin/openrc reboot
-l6r:6:wait:/sbin/reboot -dkn
-#z6:6:respawn:/sbin/sulogin
-
-# new-style single-user
-su0:S:wait:/sbin/openrc single
-su1:S:wait:/sbin/sulogin
-
-# TERMINALS
-#x1:12345:respawn:/sbin/agetty 38400 console linux
-c1:12345:respawn:/sbin/agetty 38400 tty1 linux
-c2:2345:respawn:/sbin/agetty 38400 tty2 linux
-c3:2345:respawn:/sbin/agetty 38400 tty3 linux
-c4:2345:respawn:/sbin/agetty 38400 tty4 linux
-c5:2345:respawn:/sbin/agetty 38400 tty5 linux
-c6:2345:respawn:/sbin/agetty 38400 tty6 linux
-
-# SERIAL CONSOLES
-#s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100
-#s1:12345:respawn:/sbin/agetty -L 9600 ttyS1 vt100
-
-# What to do at the "Three Finger Salute".
-ca:12345:ctrlaltdel:/sbin/shutdown -r now
-
-# Used by /etc/init.d/xdm to control DM startup.
-# Read the comments in /etc/init.d/xdm for more
-# info. Do NOT remove, as this will start nothing
-# extra at boot if /etc/init.d/xdm is not added
-# to the "default" runlevel.
-x:a:once:/etc/X11/startDM.sh
diff --git a/sys-apps/sysvinit/files/inittab-2.98-r1 b/sys-apps/sysvinit/files/inittab-2.98-r1
new file mode 100644
index 000000000000..89c8bd9274b9
--- /dev/null
+++ b/sys-apps/sysvinit/files/inittab-2.98-r1
@@ -0,0 +1,63 @@
+#
+# /etc/inittab: This file describes how the INIT process should set up
+# the system in a certain run-level.
+#
+# Author: Miquel van Smoorenburg, <miquels@cistron.nl>
+# Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com>
+# Modified by: Daniel Robbins, <drobbins@gentoo.org>
+# Modified by: Martin Schlemmer, <azarah@gentoo.org>
+# Modified by: Mike Frysinger, <vapier@gentoo.org>
+# Modified by: Robin H. Johnson, <robbat2@gentoo.org>
+# Modified by: William Hubbs, <williamh@gentoo.org>
+# Modified by: Lars Wendler, <polynomial-c@gentoo.org>
+# Modified by: Aisha Tammy, <gentoo@aisha.cc>
+#
+
+# Default runlevel.
+id:3:initdefault:
+
+# System initialization, mount local filesystems, etc.
+si::sysinit:/sbin/openrc sysinit
+
+# Further system initialization, brings up the boot runlevel.
+rc::bootwait:/sbin/openrc boot
+
+l0u:0:wait:/sbin/telinit u
+l0:0:wait:/sbin/openrc shutdown
+l0s:0:wait:/sbin/halt.sh
+l1:1:wait:/sbin/openrc single
+l2:2:wait:/sbin/openrc nonetwork
+l3:3:wait:/sbin/openrc default
+l4:4:wait:/sbin/openrc default
+l5:5:wait:/sbin/openrc default
+l6u:6:wait:/sbin/telinit u
+l6:6:wait:/sbin/openrc reboot
+l6r:6:wait:/sbin/reboot -dkn
+#z6:6:respawn:/sbin/sulogin
+
+# new-style single-user
+su0:S:wait:/sbin/openrc single
+su1:S:wait:/sbin/sulogin
+
+# TERMINALS
+#x1:12345:respawn:/sbin/agetty 38400 console linux
+c1:12345:respawn:/sbin/agetty --noclear 38400 tty1 linux
+c2:2345:respawn:/sbin/agetty 38400 tty2 linux
+c3:2345:respawn:/sbin/agetty 38400 tty3 linux
+c4:2345:respawn:/sbin/agetty 38400 tty4 linux
+c5:2345:respawn:/sbin/agetty 38400 tty5 linux
+c6:2345:respawn:/sbin/agetty 38400 tty6 linux
+
+# SERIAL CONSOLES
+#s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100
+#s1:12345:respawn:/sbin/agetty -L 9600 ttyS1 vt100
+
+# What to do at the "Three Finger Salute".
+ca:12345:ctrlaltdel:/sbin/shutdown -r now
+
+# Used by /etc/init.d/display-manager to control DM startup.
+# Read the comments in /etc/init.d/display-manager for more
+# info. Do NOT remove, as this will start nothing
+# extra at boot if /etc/init.d/display-manager is not added
+# to the "default" runlevel.
+x:a:once:/usr/bin/startDM
diff --git a/sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch b/sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch
deleted file mode 100644
index 4948806d9eb9..000000000000
--- a/sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-halt: add a -k kexec flag
-
---- a/man/halt.8
-+++ b/man/halt.8
-@@ -40,6 +40,7 @@ halt, reboot, poweroff \- stop the system.
- .RB [ \-d ]
- .RB [ \-f ]
- .RB [ \-i ]
-+.RB [ \-k ]
- .br
- .B /sbin/poweroff
- .RB [ \-n ]
-@@ -83,6 +84,8 @@ Put all hard drives on the system in stand-by mode just before halt or power-off
- .IP \fB\-p\fP
- When halting the system, switch off the power. This is the default when halt is
- called as \fBpoweroff\fP.
-+.IP \fB\-k\fP
-+Try to reboot using \fBkexec\fP, if kernel supports it.
- .\"}}}
- .\"{{{ Diagnostics
- .SH DIAGNOSTICS
---- a/src/halt.c
-+++ b/src/halt.c
-@@ -8,7 +8,7 @@
- * execute an "shutdown -r". This is for compatibility with
- * sysvinit 2.4.
- *
-- * Usage: halt [-n] [-w] [-d] [-f] [-h] [-i] [-p]
-+ * Usage: halt [-n] [-w] [-d] [-f] [-h] [-i] [-p] [-k]
- * -n: don't sync before halting the system
- * -w: only write a wtmp reboot record and exit.
- * -d: don't write a wtmp record.
-@@ -16,6 +16,7 @@
- * -h: put harddisks in standby mode
- * -i: shut down all network interfaces.
- * -p: power down the system (if possible, otherwise halt).
-+ * -k: reboot the system using kexec.
- *
- * Reboot and halt are both this program. Reboot
- * is just a link to halt. Invoking the program
-@@ -74,8 +75,10 @@ extern void write_wtmp(char *user, char *id, int pid, int type, char *line);
- */
- void usage(void)
- {
-- fprintf(stderr, "usage: %s [-n] [-w] [-d] [-f] [-h] [-i]%s\n",
-- progname, strcmp(progname, "halt") ? "" : " [-p]");
-+ fprintf(stderr, "usage: %s [-n] [-w] [-d] [-f] [-h] [-i]%s%s\n",
-+ progname,
-+ strcmp(progname, "halt") ? "" : " [-p]",
-+ strcmp(progname, "reboot") ? "" : " [-k]");
- fprintf(stderr, "\t-n: don't sync before halting the system\n");
- fprintf(stderr, "\t-w: only write a wtmp reboot record and exit.\n");
- fprintf(stderr, "\t-d: don't write a wtmp record.\n");
-@@ -84,6 +87,8 @@ void usage(void)
- fprintf(stderr, "\t-i: shut down all network interfaces.\n");
- if (!strcmp(progname, "halt"))
- fprintf(stderr, "\t-p: power down the system (if possible, otherwise halt).\n");
-+ if (!strcmp(progname, "reboot"))
-+ fprintf(stderr, "\t-k: reboot the system using kexec.\n");
- exit(1);
- }
-
-@@ -182,6 +187,7 @@ int main(int argc, char **argv)
- int do_ifdown = 0;
- int do_hddown = 0;
- int do_poweroff = 0;
-+ int do_kexec = 0;
- int c;
- char *tm = NULL;
-
-@@ -201,7 +207,7 @@ int main(int argc, char **argv)
- /*
- * Get flags
- */
-- while((c = getopt(argc, argv, ":ihdfnpwt:")) != EOF) {
-+ while((c = getopt(argc, argv, ":ihdfnpwkt:")) != EOF) {
- switch(c) {
- case 'n':
- do_sync = 0;
-@@ -225,6 +231,9 @@ int main(int argc, char **argv)
- case 'p':
- do_poweroff = 1;
- break;
-+ case 'k':
-+ do_kexec = 1;
-+ break;
- case 't':
- tm = optarg;
- break;
-@@ -242,10 +251,24 @@ int main(int argc, char **argv)
- (void)chdir("/");
-
- if (!do_hard && !do_nothing) {
-+ c = get_runlevel();
-+
-+ /*
-+ * We can't reboot using kexec through this path.
-+ */
-+ if (c != '6' && do_reboot && do_kexec) {
-+ fprintf(stderr, "ERROR: using -k at this"
-+ " runlevel requires also -f\n"
-+ " (You probably want instead to reboot"
-+ " normally and let your reboot\n"
-+ " script, usually /etc/init.d/reboot,"
-+ " specify -k)\n");
-+ exit(1);
-+ }
-+
- /*
- * See if we are in runlevel 0 or 6.
- */
-- c = get_runlevel();
- if (c != '0' && c != '6')
- do_shutdown(do_reboot ? "-r" : "-h", tm);
- }
-@@ -277,6 +300,15 @@ int main(int argc, char **argv)
- if (do_nothing) exit(0);
-
- if (do_reboot) {
-+ /*
-+ * kexec or reboot
-+ */
-+ if (do_kexec)
-+ init_reboot(BMAGIC_KEXEC);
-+
-+ /*
-+ * Fall through if failed
-+ */
- init_reboot(BMAGIC_REBOOT);
- } else {
- /*
---- a/src/reboot.h
-+++ b/src/reboot.h
-@@ -47,5 +47,8 @@
- # define BMAGIC_POWEROFF BMAGIC_HALT
- #endif
-
-+/* for kexec support */
-+#define BMAGIC_KEXEC 0x45584543
-+
- #define init_reboot(magic) reboot(magic)
-
diff --git a/sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch b/sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch
deleted file mode 100644
index b8e403f629f7..000000000000
--- a/sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-This patch makes shutdown use the Single User runlevel by default so
-the gettys are shutdown too.
-
-Roy Marples <uberlord@gentoo.org>
-
---- a/man/shutdown.8
-+++ b/man/shutdown.8
-@@ -44,7 +44,7 @@ mail and news processing programs a chance to exit cleanly, etc.
- \fBshutdown\fP does its job by signalling the \fBinit\fP process,
- asking it to change the runlevel.
- Runlevel \fB0\fP is used to halt the system, runlevel \fB6\fP is used
--to reboot the system, and runlevel \fB1\fP is used to put to system into
-+to reboot the system, and runlevel \fBS\fP is used to put to system into
- a state where administrative tasks can be performed; this is the default
- if neither the \fI-h\fP or \fI-r\fP flag is given to \fBshutdown\fP.
- To see which actions are taken on halt or reboot see the appropriate
---- a/src/shutdown.c
-+++ b/src/shutdown.c
-@@ -506,7 +506,7 @@ int main(int argc, char **argv)
- usage();
- exit(1);
- }
-- strcpy(down_level, "1");
-+ strcpy(down_level, "S");
- halttype = NULL;
-
- /* Process the options. */
-@@ -685,6 +685,8 @@ int main(int argc, char **argv)
- strcpy(newstate, "for reboot");
- break;
- case '1':
-+ case 'S':
-+ case 's':
- strcpy(newstate, "to maintenance mode");
- break;
- default:
diff --git a/sys-apps/sysvinit/files/sysvinit-2.92_beta-shutdown-h.patch b/sys-apps/sysvinit/files/sysvinit-2.92_beta-shutdown-h.patch
deleted file mode 100644
index e53a9208c6dc..000000000000
--- a/sys-apps/sysvinit/files/sysvinit-2.92_beta-shutdown-h.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-other inits have moved to not requiring the -h flag when used with -H/-P.
-modify sysvinit to be the same since it really doesn't matter.
-
-https://bugs.gentoo.org/449354
-
-patch by Doug Goldstein
-
----
- man/shutdown.8 | 8 +++-----
- src/shutdown.c | 12 ++++--------
- 2 files changed, 7 insertions(+), 13 deletions(-)
-
---- sysvinit-2.92/man/shutdown.8
-+++ sysvinit-2.92/man/shutdown.8
-@@ -66,17 +66,15 @@
- .\"}}}
- .\"{{{ -h
- .IP \fB\-h\fP
--Halt or power off after shutdown.
-+Equivalent to -P, unless -H is specified.
- .\"}}}
- .\"{{{ -P
- .IP \fB\-P\fP
--Modifier to the -h flag. Halt action is to turn off the power.
--Must be used with the -h flag.
-+Action is to turn off the power.
- .\"}}}
- .\"{{{ -H
- .IP \fB\-H\fP
--Modifier to the -h flag. Halt action is to halt or drop into boot
--monitor on systems that support it. Must be used with the -h flag.
-+Action is to halt or drop into boot monitor on systems that support it.
- .\"}}}
- .\"{{{ -f
- .IP \fB\-f\fP
---- sysvinit-2.92/src/shutdown.c
-+++ sysvinit-2.92/src/shutdown.c
-@@ -135,9 +135,7 @@
- "\t\t -r: reboot after shutdown.\n"
- "\t\t -h: halt after shutdown.\n"
- "\t\t -P: halt action is to turn off power.\n"
-- "\t\t can only be used along with -h flag.\n"
- "\t\t -H: halt action is to just halt.\n"
-- "\t\t can only be used along with -h flag.\n"
- "\t\t -f: do a 'fast' reboot (skip fsck).\n"
- "\t\t -F: Force fsck on reboot.\n"
- "\t\t -n: do not go through \"init\" but go down real fast.\n"
-@@ -546,9 +544,11 @@
- switch(c) {
- case 'H':
- halttype = "HALT";
-+ down_level[0] = '0';
- break;
- case 'P':
- halttype = "POWEROFF";
-+ down_level[0] = '0';
- break;
- case 'a': /* Access control. */
- useacl = 1;
-@@ -564,6 +564,8 @@
- break;
- case 'h': /* Halt after shutdown */
- down_level[0] = '0';
-+ if (!halttype)
-+ halttype = "POWEROFF";
- break;
- case 'f': /* Don't perform fsck after next boot */
- fastboot = 1;
-@@ -603,12 +605,6 @@
- }
- }
-
-- if (NULL != halttype && down_level[0] != '0') {
-- fprintf(stderr, "shutdown: -H and -P flags can only be used along with -h flag.\n");
-- usage();
-- exit(1);
-- }
--
- /* Do we need to use the shutdown.allow file ? */
- if (useacl && (fp = fopen(SDALLOW, "r")) != NULL) {
-
diff --git a/sys-apps/sysvinit/files/sysvinit-2.94_beta-shutdown-single.patch b/sys-apps/sysvinit/files/sysvinit-2.94_beta-shutdown-single.patch
deleted file mode 100644
index 9aa85229eee1..000000000000
--- a/sys-apps/sysvinit/files/sysvinit-2.94_beta-shutdown-single.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-This patch makes shutdown use the Single User runlevel by default so
-the gettys are shutdown too.
-
-Roy Marples <uberlord@gentoo.org>
-
-Forward-ported from v2.86 to v2.94_beta
-Lars Wendler <polynomial-c@gentoo.org>
-
---- sysvinit-2.94/man/shutdown.8
-+++ sysvinit-2.94/man/shutdown.8
-@@ -44,7 +44,7 @@
- \fBshutdown\fP does its job by signalling the \fBinit\fP process,
- asking it to change the runlevel.
- Runlevel \fB0\fP is used to halt the system, runlevel \fB6\fP is used
--to reboot the system, and runlevel \fB1\fP is used to put to system into
-+to reboot the system, and runlevel \fBS\fP is used to put to system into
- a state where administrative tasks can be performed; this is the default
- if neither the \fI-h\fP or \fI-r\fP flag is given to \fBshutdown\fP.
- To see which actions are taken on halt or reboot see the appropriate
---- sysvinit-2.94/src/shutdown.c
-+++ sysvinit-2.94/src/shutdown.c
-@@ -547,7 +547,7 @@
- usage();
- exit(1);
- }
-- strcpy(down_level, "1");
-+ strcpy(down_level, "S");
- halttype = NULL;
- memset(when, '\0', WHEN_SIZE);
-
-@@ -734,6 +734,8 @@
- strncpy(newstate, "for reboot", STATELEN);
- break;
- case '1':
-+ case 'S':
-+ case 's':
- strncpy(newstate, "to maintenance mode", STATELEN);
- break;
- default:
diff --git a/sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch b/sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch
deleted file mode 100644
index f24e1029ca58..000000000000
--- a/sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-other inits have moved to not requiring the -h flag when used with -H/-P.
-modify sysvinit to be the same since it really doesn't matter.
-
-https://bugs.gentoo.org/449354
-
-patch by Doug Goldstein
-
----
- man/shutdown.8 | 11 ++++-------
- src/shutdown.c | 12 ++++--------
- 2 files changed, 8 insertions(+), 15 deletions(-)
-
---- sysvinit-2.95/man/shutdown.8
-+++ sysvinit-2.95/man/shutdown.8
-@@ -66,22 +66,19 @@
- .\"}}}
- .\"{{{ -h
- .IP \fB\-h\fP
--Halt or power off after shutdown. Usually used with the -P or -H flags,
--depending on whether we want to poweroff or simply stop the operating system.
-+Equivalent to -P, unless -H is specified.
- .\"}}}
- .\"{{{ -P
- .IP \fB\-P\fP
--Modifier to the -h flag. Halt action is to turn off the power.
--Must be used with the -h flag.
-+Halt action is to turn off the power.
- .\"}}}
- .\"{{{ -H
- .IP \fB\-H\fP
--Modifier to the -h flag. Halt action is to halt or drop into boot
--monitor on systems that support it. Must be used with the -h flag.
-+Action is to halt or drop into boot monitor on systems that support it.
- Halting is often used to run through the shutdown process and leave
- output on the screen for debugging purposes. Or when the user wants the OS to
- stop, but leave the power on. To power off at the end of the shutdown sequence
--use the -P modifier instead.
-+use the -P option instead.
- .\"}}}
- .\"{{{ -f
- .IP \fB\-f\fP
---- sysvinit-2.95/src/shutdown.c
-+++ sysvinit-2.95/src/shutdown.c
-@@ -144,9 +144,7 @@
- "\t\t -r: reboot after shutdown.\n"
- "\t\t -h: halt after shutdown.\n"
- "\t\t -P: halt action is to turn off power.\n"
-- "\t\t can only be used along with -h flag.\n"
- "\t\t -H: halt action is to just halt.\n"
-- "\t\t can only be used along with -h flag.\n"
- "\t\t -f: do a 'fast' reboot (skip fsck).\n"
- "\t\t -F: Force fsck on reboot.\n"
- "\t\t -n: do not go through \"init\" but go down real fast.\n"
-@@ -556,9 +554,11 @@
- switch(c) {
- case 'H':
- halttype = "HALT";
-+ down_level[0] = '0';
- break;
- case 'P':
- halttype = "POWEROFF";
-+ down_level[0] = '0';
- break;
- case 'a': /* Access control. */
- useacl = 1;
-@@ -574,6 +574,8 @@
- break;
- case 'h': /* Halt after shutdown */
- down_level[0] = '0';
-+ if (!halttype)
-+ halttype = "POWEROFF";
- break;
- case 'f': /* Don't perform fsck after next boot */
- fastboot = 1;
-@@ -613,12 +615,6 @@
- }
- }
-
-- if (NULL != halttype && down_level[0] != '0') {
-- fprintf(stderr, "shutdown: -H and -P flags can only be used along with -h flag.\n");
-- usage();
-- exit(1);
-- }
--
- /* Do we need to use the shutdown.allow file ? */
- if (useacl && (fp = fopen(SDALLOW, "r")) != NULL) {
-
diff --git a/sys-apps/sysvinit/files/sysvinit-3.08-shutdown-single.patch b/sys-apps/sysvinit/files/sysvinit-3.08-shutdown-single.patch
new file mode 100644
index 000000000000..571f951f073c
--- /dev/null
+++ b/sys-apps/sysvinit/files/sysvinit-3.08-shutdown-single.patch
@@ -0,0 +1,38 @@
+This patch makes shutdown use the Single User runlevel by default so
+the gettys are shutdown too.
+
+Roy Marples <uberlord@gentoo.org>
+
+Forward-ported from v2.86 to v2.94_beta
+Lars Wendler <polynomial-c@gentoo.org>
+--- a/man/shutdown.8
++++ b/man/shutdown.8
+@@ -44,7 +44,7 @@ mail and news processing programs a chance to exit cleanly, etc.
+ \fBshutdown\fP does its job by signalling the \fBinit\fP process,
+ asking it to change the runlevel.
+ Runlevel \fB0\fP is used to halt the system, runlevel \fB6\fP is used
+-to reboot the system, and runlevel \fB1\fP is used to put to system into
++to reboot the system, and runlevel \fBS\fP is used to put to system into
+ a state where administrative tasks can be performed; this is the default
+ if neither the \fB-h\fP or \fB-r\fP flag is given to \fBshutdown\fP.
+ To see which actions are taken on halt or reboot see the appropriate
+--- a/src/shutdown.c
++++ b/src/shutdown.c
+@@ -547,7 +547,7 @@ int main(int argc, char **argv)
+ usage();
+ exit(1);
+ }
+- strcpy(down_level, "1");
++ strcpy(down_level, "S");
+ halttype = NULL;
+ memset(when, '\0', WHEN_SIZE);
+
+@@ -734,6 +734,8 @@ int main(int argc, char **argv)
+ strncpy(newstate, "for reboot", STATELEN);
+ break;
+ case '1':
++ case 'S':
++ case 's':
+ strncpy(newstate, "to maintenance mode", STATELEN);
+ break;
+ default:
diff --git a/sys-apps/sysvinit/metadata.xml b/sys-apps/sysvinit/metadata.xml
index 53e04953d604..2767ec5cbcc6 100644
--- a/sys-apps/sysvinit/metadata.xml
+++ b/sys-apps/sysvinit/metadata.xml
@@ -1,12 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>williamh@gentoo.org</email>
- <name>William Hubbs</name>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="savannah-nongnu">sysvinit</remote-id>
+ <remote-id type="github">slicer69/sysvinit</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/sysvinit/sysvinit-2.93.ebuild b/sys-apps/sysvinit/sysvinit-2.93.ebuild
deleted file mode 100644
index c9bc3963c511..000000000000
--- a/sys-apps/sysvinit/sysvinit-2.93.ebuild
+++ /dev/null
@@ -1,127 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="/sbin/init - parent of all processes"
-HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit"
-SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-[[ "${PV}" == *beta* ]] || \
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-IUSE="selinux ibm static kernel_FreeBSD"
-
-CDEPEND="
- selinux? (
- >=sys-libs/libselinux-1.28
- )"
-DEPEND="${CDEPEND}
- virtual/os-headers"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-shutdown )
- !<sys-apps/openrc-0.13
-"
-
-S="${WORKDIR}/${P/_*}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.86-kexec.patch" #80220
- "${FILESDIR}/${PN}-2.86-shutdown-single.patch" #158615
- "${FILESDIR}/${PN}-2.92_beta-shutdown-h.patch" #449354
-)
-
-src_prepare() {
- default
- sed -i '/^CPPFLAGS =$/d' src/Makefile || die
-
- # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux
- sed -i -r \
- -e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \
- -e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \
- src/Makefile || die
-
- # pidof has moved to >=procps-3.3.9
- sed -i -r \
- -e '/\/bin\/pidof/d' \
- -e '/^MAN8/s:\<pidof.8\>::g' \
- src/Makefile || die
-
- # Mung inittab for specific architectures
- cd "${WORKDIR}" || die
- cp "${FILESDIR}"/inittab-2.91 inittab || die "cp inittab"
- local insert=()
- use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' )
- use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' )
- use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' )
- use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' )
- use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' )
- if use ibm ; then
- insert+=(
- '#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0'
- '#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0'
- )
- fi
- (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab
- if use kernel_FreeBSD ; then
- sed -i \
- -e 's/linux/cons25/g' \
- -e 's/ttyS0/cuaa0/g' \
- -e 's/ttyS1/cuaa1/g' \
- inittab #121786
- fi
- if use x86 || use amd64 ; then
- sed -i \
- -e '/ttyS[01]/s:9600:115200:' \
- inittab
- fi
- if [[ ${#insert[@]} -gt 0 ]] ; then
- printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab
- fi
-}
-
-src_compile() {
- tc-export CC
- append-lfs-flags
- export DISTRO= #381311
- export VERSION="${PV}"
- use static && append-ldflags -static
- emake -C src $(usex selinux 'WITH_SELINUX=yes' '')
-}
-
-src_install() {
- emake -C src install ROOT="${D}"
- dodoc README doc/*
-
- insinto /etc
- doins "${WORKDIR}"/inittab
-
- # dead symlink
- rm "${ED%/}"/usr/bin/lastb || die
-
- newinitd "${FILESDIR}"/bootlogd.initd bootlogd
-}
-
-pkg_postinst() {
- # Reload init to fix unmounting problems of / on next reboot.
- # This is really needed, as without the new version of init cause init
- # not to quit properly on reboot, and causes a fsck of / on next reboot.
- if [[ ${ROOT} == / ]] ; then
- if [[ -e /dev/initctl && ! -e /run/initctl ]]; then
- ln -s /dev/initctl /run/initctl
- fi
- # Do not return an error if this fails
- /sbin/telinit U &>/dev/null
- fi
-
- elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to"
- elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps."
-
- # Required for new bootlogd service
- if [[ ! -e "${EROOT%/}/var/log/boot" ]] ; then
- touch "${EROOT%/}/var/log/boot"
- fi
-}
diff --git a/sys-apps/sysvinit/sysvinit-2.96.ebuild b/sys-apps/sysvinit/sysvinit-2.96.ebuild
deleted file mode 100644
index adf3f15ec1e7..000000000000
--- a/sys-apps/sysvinit/sysvinit-2.96.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="/sbin/init - parent of all processes"
-HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit"
-SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-[[ "${PV}" == *beta* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="selinux ibm static kernel_FreeBSD"
-
-CDEPEND="
- selinux? (
- >=sys-libs/libselinux-1.28
- )"
-DEPEND="${CDEPEND}
- virtual/os-headers"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-shutdown )
- !<sys-apps/openrc-0.13
-"
-
-S="${WORKDIR}/${P/_*}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.86-kexec.patch" #80220
- "${FILESDIR}/${PN}-2.94_beta-shutdown-single.patch" #158615
- "${FILESDIR}/${PN}-2.95_beta-shutdown-h.patch" #449354
-)
-
-src_prepare() {
- default
-
- sed -i \
- -e '/^CPPFLAGS =$/d' \
- -e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \
- src/Makefile || die
-
- # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux
- sed -i -r \
- -e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \
- -e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \
- src/Makefile || die
-
- # pidof has moved to >=procps-3.3.9
- sed -i -r \
- -e '/\/bin\/pidof/d' \
- -e '/^MAN8/s:\<pidof.8\>::g' \
- src/Makefile || die
-
- # logsave is already in e2fsprogs
- sed -i -r \
- -e '/^(USR)?S?BIN/s:\<logsave\>::g' \
- -e '/^MAN8/s:\<logsave.8\>::g' \
- src/Makefile || die
-
- # Mung inittab for specific architectures
- cd "${WORKDIR}" || die
- cp "${FILESDIR}"/inittab-2.95 inittab || die "cp inittab"
- local insert=()
- use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' )
- use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' )
- use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' )
- use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' )
- use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' )
- if use ibm ; then
- insert+=(
- '#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0'
- '#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0'
- )
- fi
- (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab
- if use kernel_FreeBSD ; then
- sed -i \
- -e 's/linux/cons25/g' \
- -e 's/ttyS0/cuaa0/g' \
- -e 's/ttyS1/cuaa1/g' \
- inittab #121786
- fi
- if use x86 || use amd64 ; then
- sed -i \
- -e '/ttyS[01]/s:9600:115200:' \
- inittab
- fi
- if [[ ${#insert[@]} -gt 0 ]] ; then
- printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab
- fi
-}
-
-src_compile() {
- tc-export CC
- append-lfs-flags
- export DISTRO= #381311
- export VERSION="${PV}"
- use static && append-ldflags -static
- emake -C src $(usex selinux 'WITH_SELINUX=yes' '')
-}
-
-src_install() {
- emake -C src install ROOT="${D}"
- dodoc README doc/*
-
- insinto /etc
- doins "${WORKDIR}"/inittab
-
- # dead symlink
- rm "${ED}"/usr/bin/lastb || die
-
- newinitd "${FILESDIR}"/bootlogd.initd bootlogd
- into /
- dosbin "${FILESDIR}"/halt.sh
-}
-
-pkg_postinst() {
- # Reload init to fix unmounting problems of / on next reboot.
- # This is really needed, as without the new version of init cause init
- # not to quit properly on reboot, and causes a fsck of / on next reboot.
- if [[ ${ROOT} == / ]] ; then
- if [[ -e /dev/initctl && ! -e /run/initctl ]]; then
- ln -s /dev/initctl /run/initctl
- fi
- # Do not return an error if this fails
- /sbin/telinit U &>/dev/null
- fi
-
- elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to"
- elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps."
-
- # Required for new bootlogd service
- if [[ ! -e "${EROOT}/var/log/boot" ]] ; then
- touch "${EROOT}/var/log/boot"
- fi
-}
diff --git a/sys-apps/sysvinit/sysvinit-2.97.ebuild b/sys-apps/sysvinit/sysvinit-2.97.ebuild
deleted file mode 100644
index 4dd4d992de92..000000000000
--- a/sys-apps/sysvinit/sysvinit-2.97.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="/sbin/init - parent of all processes"
-HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit"
-SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-[[ "${PV}" == *beta* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="selinux ibm static kernel_FreeBSD"
-
-CDEPEND="
- selinux? (
- >=sys-libs/libselinux-1.28
- )"
-DEPEND="${CDEPEND}
- virtual/os-headers"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-shutdown )
- !<sys-apps/openrc-0.13
-"
-
-S="${WORKDIR}/${P/_*}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.86-kexec.patch" #80220
- "${FILESDIR}/${PN}-2.94_beta-shutdown-single.patch" #158615
- "${FILESDIR}/${PN}-2.95_beta-shutdown-h.patch" #449354
-)
-
-src_prepare() {
- default
-
- sed -i \
- -e '/^CPPFLAGS =$/d' \
- -e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \
- src/Makefile || die
-
- # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux
- sed -i -r \
- -e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \
- -e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \
- src/Makefile || die
-
- # pidof has moved to >=procps-3.3.9
- sed -i -r \
- -e '/\/bin\/pidof/d' \
- -e '/^MAN8/s:\<pidof.8\>::g' \
- src/Makefile || die
-
- # logsave is already in e2fsprogs
- sed -i -r \
- -e '/^(USR)?S?BIN/s:\<logsave\>::g' \
- -e '/^MAN8/s:\<logsave.8\>::g' \
- src/Makefile || die
-
- # Mung inittab for specific architectures
- cd "${WORKDIR}" || die
- cp "${FILESDIR}"/inittab-2.95 inittab || die "cp inittab"
- local insert=()
- use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' )
- use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' )
- use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' )
- use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' )
- use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' )
- if use ibm ; then
- insert+=(
- '#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0'
- '#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0'
- )
- fi
- (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab
- if use kernel_FreeBSD ; then
- sed -i \
- -e 's/linux/cons25/g' \
- -e 's/ttyS0/cuaa0/g' \
- -e 's/ttyS1/cuaa1/g' \
- inittab #121786
- fi
- if use x86 || use amd64 ; then
- sed -i \
- -e '/ttyS[01]/s:9600:115200:' \
- inittab
- fi
- if [[ ${#insert[@]} -gt 0 ]] ; then
- printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab
- fi
-}
-
-src_compile() {
- tc-export CC
- append-lfs-flags
- export DISTRO= #381311
- export VERSION="${PV}"
- use static && append-ldflags -static
- emake -C src $(usex selinux 'WITH_SELINUX=yes' '')
-}
-
-src_install() {
- emake -C src install ROOT="${D}"
- dodoc README doc/*
-
- insinto /etc
- doins "${WORKDIR}"/inittab
-
- # dead symlink
- rm "${ED}"/usr/bin/lastb || die
-
- newinitd "${FILESDIR}"/bootlogd.initd bootlogd
- into /
- dosbin "${FILESDIR}"/halt.sh
-
- keepdir /etc/inittab.d
-
- find "${ED}" -type d -empty -delete || die
-}
-
-pkg_postinst() {
- # Reload init to fix unmounting problems of / on next reboot.
- # This is really needed, as without the new version of init cause init
- # not to quit properly on reboot, and causes a fsck of / on next reboot.
- if [[ ${ROOT} == / ]] ; then
- if [[ -e /dev/initctl ]] && [[ ! -e /run/initctl ]] ; then
- ln -s /dev/initctl /run/initctl \
- || ewarn "Failed to set /run/initctl symlink!"
- fi
- # Do not return an error if this fails
- /sbin/telinit U &>/dev/null
- fi
-
- elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to"
- elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps."
-
- # Required for new bootlogd service
- if [[ ! -e "${EROOT}/var/log/boot" ]] ; then
- touch "${EROOT}/var/log/boot"
- fi
-}
diff --git a/sys-apps/sysvinit/sysvinit-3.08.ebuild b/sys-apps/sysvinit/sysvinit-3.08.ebuild
new file mode 100644
index 000000000000..e0191c1ef4c4
--- /dev/null
+++ b/sys-apps/sysvinit/sysvinit-3.08.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Dropped these because blank as of 3.02
+#PLOCALES="de es fi fr hu id pl"
+PLOCALES="de es fr pl"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sysvinit.asc
+inherit toolchain-funcs flag-o-matic plocale verify-sig
+
+DESCRIPTION="/sbin/init - parent of all processes"
+HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit"
+# https://github.com/slicer69/sysvinit/issues/12
+#SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz"
+#SRC_URI+=" verify-sig? ( mirror://nongnu/${PN}/${P/_/-}.tar.xz.sig )"
+SRC_URI="https://github.com/slicer69/sysvinit/releases/download/${PV}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://github.com/slicer69/sysvinit/releases/download/${PV}/${P}.tar.xz.sig )"
+S="${WORKDIR}/${P/_*}"
+
+LICENSE="GPL-2"
+SLOT="0"
+if [[ ${PV} != *beta* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+fi
+IUSE="selinux ibm nls static"
+
+COMMON_DEPEND="
+ acct-group/root
+ selinux? (
+ >=sys-libs/libselinux-1.28
+ )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ virtual/os-headers
+"
+# Old OpenRC blocker is for bug #587424
+# Keep for longer than usual given it's cheap and avoid user inconvenience
+RDEPEND="
+ ${COMMON_DEPEND}
+ !<app-i18n/man-pages-l10n-4.18.1-r1
+ !<sys-apps/openrc-0.13
+ selinux? ( sec-policy/selinux-shutdown )
+"
+# po4a is for man page translations
+BDEPEND="
+ nls? ( app-text/po4a )
+ verify-sig? ( >=sec-keys/openpgp-keys-sysvinit-20220413 )
+"
+
+PATCHES=(
+ # bug #158615
+ "${FILESDIR}/${PN}-3.08-shutdown-single.patch"
+)
+
+src_prepare() {
+ default
+
+ # We already enforce F_S=2 as a minimum in our toolchain, and
+ # allow 3. Also, SSP doesn't always make sense for some platforms
+ # e.g. HPPA. It's default-on in our toolchain where it works.
+ sed -i \
+ -e '/^CPPFLAGS =$/d' \
+ -e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \
+ -e '/^override CFLAGS +=/s/ -D_FORTIFY_SOURCE=2//' \
+ src/Makefile || die
+
+ # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux
+ sed -i -r \
+ -e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \
+ -e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \
+ src/Makefile || die
+
+ # pidof has moved to >=procps-3.3.9
+ sed -i -r \
+ -e '/\/bin\/pidof/d' \
+ -e '/^MAN8/s:\<pidof.8\>::g' \
+ src/Makefile || die
+
+ # logsave is already in e2fsprogs
+ sed -i -r \
+ -e '/^(USR)?S?BIN/s:\<logsave\>::g' \
+ -e '/^MAN8/s:\<logsave.8\>::g' \
+ src/Makefile || die
+
+ # Munge inittab for specific architectures
+ cd "${WORKDIR}" || die
+ cp "${FILESDIR}"/inittab-2.98-r1 inittab || die "cp inittab"
+ local insert=()
+ use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' )
+ use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' )
+ use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' )
+ use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' )
+ use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' )
+ if use ibm ; then
+ insert+=(
+ '#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0'
+ '#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0'
+ )
+ fi
+ (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab
+ if use x86 || use amd64 ; then
+ sed -i \
+ -e '/ttyS[01]/s:9600:115200:' \
+ inittab
+ fi
+
+ if [[ ${#insert[@]} -gt 0 ]] ; then
+ printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab
+ fi
+
+ delete_unused_locale() {
+ local locale=${1}
+
+ einfo "Deleting non-requested man page translations for locale=${locale}"
+ rm "${S}"/man/po/${locale}.po || die
+
+ sed -i -e "/^\[po4a_langs\]/ s:${locale}::" "${S}"/man/po/po4a.cfg || die
+ }
+
+ plocale_for_each_disabled_locale delete_unused_locale
+}
+
+src_compile() {
+ tc-export CC
+
+ append-lfs-flags
+
+ # bug #381311
+ export DISTRO=
+ export VERSION="${PV}"
+
+ use static && append-ldflags -static
+ emake -C src $(usex selinux 'WITH_SELINUX=yes' '')
+
+ if use nls && [[ -n "$(plocale_get_locales)" ]] ; then
+ cd man/po || die
+ po4a po4a.cfg || die
+ fi
+}
+
+src_install() {
+ emake -C src install ROOT="${ED}"
+ dodoc README doc/*
+
+ insinto /etc
+ doins "${WORKDIR}"/inittab
+
+ newinitd "${FILESDIR}"/bootlogd.initd bootlogd
+ newconfd "${FILESDIR}"/bootlogd.confd bootlogd
+
+ into /
+ dosbin "${FILESDIR}"/halt.sh
+
+ keepdir /etc/inittab.d
+
+ if use nls && [[ -n "$(plocale_get_locales)" ]] ; then
+ install_locale_man_pages() {
+ doman -i18n=${1} man/po/${1}/*
+ }
+
+ plocale_for_each_locale install_locale_man_pages
+ fi
+
+ # Dead symlink
+ find "${ED}" -xtype l -delete || die
+
+ find "${ED}" -type d -empty -delete || die
+}
+
+pkg_postinst() {
+ # Reload init to fix unmounting problems of / on next reboot.
+ # This is really needed, as without the new version of init cause init
+ # not to quit properly on reboot, and causes a fsck of / on next reboot.
+ if [[ -z ${EROOT} ]] ; then
+ if [[ -e /dev/initctl ]] && [[ ! -e /run/initctl ]] ; then
+ ln -s /dev/initctl /run/initctl \
+ || ewarn "Failed to set /run/initctl symlink!"
+ fi
+ # Do not return an error if this fails
+ /sbin/telinit U &>/dev/null
+ fi
+
+ elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to"
+ elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps."
+
+ # Required for new bootlogd service
+ if [[ ! -e "${EROOT}/var/log/boot" ]] ; then
+ touch "${EROOT}/var/log/boot"
+ fi
+
+ local ver
+ for ver in ${REPLACING_VERSIONS}; do
+ ver_test ${ver} -ge 3.07-r2 && continue
+ ewarn "Previously, the 'halt' command caused the system to power off"
+ ewarn "even if option -p was not given. This long-standing bug has"
+ ewarn "been fixed, and the command now behaves as documented."
+ break
+ done
+}
diff --git a/sys-apps/sysvinit/sysvinit-3.09.ebuild b/sys-apps/sysvinit/sysvinit-3.09.ebuild
new file mode 100644
index 000000000000..bc709bce7ced
--- /dev/null
+++ b/sys-apps/sysvinit/sysvinit-3.09.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Dropped these because blank as of 3.02
+#PLOCALES="de es fi fr hu id pl"
+PLOCALES="de es fr pl"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sysvinit.asc
+inherit toolchain-funcs flag-o-matic plocale verify-sig
+
+DESCRIPTION="/sbin/init - parent of all processes"
+HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit"
+# https://github.com/slicer69/sysvinit/issues/12
+#SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz"
+#SRC_URI+=" verify-sig? ( mirror://nongnu/${PN}/${P/_/-}.tar.xz.sig )"
+SRC_URI="https://github.com/slicer69/sysvinit/releases/download/${PV}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://github.com/slicer69/sysvinit/releases/download/${PV}/${P}.tar.xz.sig )"
+S="${WORKDIR}/${P/_*}"
+
+LICENSE="GPL-2"
+SLOT="0"
+if [[ ${PV} != *beta* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+IUSE="selinux ibm nls static"
+
+COMMON_DEPEND="
+ acct-group/root
+ selinux? (
+ >=sys-libs/libselinux-1.28
+ )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ virtual/os-headers
+"
+# Old OpenRC blocker is for bug #587424
+# Keep for longer than usual given it's cheap and avoid user inconvenience
+RDEPEND="
+ ${COMMON_DEPEND}
+ !<app-i18n/man-pages-l10n-4.18.1-r1
+ !<sys-apps/openrc-0.13
+ selinux? ( sec-policy/selinux-shutdown )
+"
+# po4a is for man page translations
+BDEPEND="
+ nls? ( app-text/po4a )
+ verify-sig? ( >=sec-keys/openpgp-keys-sysvinit-20220413 )
+"
+
+PATCHES=(
+ # bug #158615
+ "${FILESDIR}/${PN}-3.08-shutdown-single.patch"
+)
+
+src_prepare() {
+ default
+
+ # We already enforce F_S=2 as a minimum in our toolchain, and
+ # allow 3. Also, SSP doesn't always make sense for some platforms
+ # e.g. HPPA. It's default-on in our toolchain where it works.
+ sed -i \
+ -e '/^CPPFLAGS =$/d' \
+ -e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \
+ -e '/^override CFLAGS +=/s/ -D_FORTIFY_SOURCE=2//' \
+ src/Makefile || die
+
+ # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux
+ sed -i -r \
+ -e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \
+ -e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \
+ src/Makefile || die
+
+ # pidof has moved to >=procps-3.3.9
+ sed -i -r \
+ -e '/\/bin\/pidof/d' \
+ -e '/^MAN8/s:\<pidof.8\>::g' \
+ src/Makefile || die
+
+ # logsave is already in e2fsprogs
+ sed -i -r \
+ -e '/^(USR)?S?BIN/s:\<logsave\>::g' \
+ -e '/^MAN8/s:\<logsave.8\>::g' \
+ src/Makefile || die
+
+ # Munge inittab for specific architectures
+ cd "${WORKDIR}" || die
+ cp "${FILESDIR}"/inittab-2.98-r1 inittab || die "cp inittab"
+ local insert=()
+ use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' )
+ use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' )
+ use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' )
+ use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' )
+ use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' )
+ if use ibm ; then
+ insert+=(
+ '#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0'
+ '#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0'
+ )
+ fi
+ (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab
+ if use x86 || use amd64 ; then
+ sed -i \
+ -e '/ttyS[01]/s:9600:115200:' \
+ inittab
+ fi
+
+ if [[ ${#insert[@]} -gt 0 ]] ; then
+ printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab
+ fi
+
+ delete_unused_locale() {
+ local locale=${1}
+
+ einfo "Deleting non-requested man page translations for locale=${locale}"
+ rm "${S}"/man/po/${locale}.po || die
+
+ sed -i -e "/^\[po4a_langs\]/ s:${locale}::" "${S}"/man/po/po4a.cfg || die
+ }
+
+ plocale_for_each_disabled_locale delete_unused_locale
+}
+
+src_compile() {
+ tc-export CC
+
+ append-lfs-flags
+
+ # bug #381311
+ export DISTRO=
+ export VERSION="${PV}"
+
+ use static && append-ldflags -static
+ emake -C src $(usex selinux 'WITH_SELINUX=yes' '')
+
+ if use nls && [[ -n "$(plocale_get_locales)" ]] ; then
+ cd man/po || die
+ po4a po4a.cfg || die
+ fi
+}
+
+src_install() {
+ emake -C src install ROOT="${ED}"
+ dodoc README doc/*
+
+ insinto /etc
+ doins "${WORKDIR}"/inittab
+
+ newinitd "${FILESDIR}"/bootlogd.initd bootlogd
+ newconfd "${FILESDIR}"/bootlogd.confd bootlogd
+
+ into /
+ dosbin "${FILESDIR}"/halt.sh
+
+ keepdir /etc/inittab.d
+
+ if use nls && [[ -n "$(plocale_get_locales)" ]] ; then
+ install_locale_man_pages() {
+ doman -i18n=${1} man/po/${1}/*
+ }
+
+ plocale_for_each_locale install_locale_man_pages
+ fi
+
+ # Dead symlink
+ find "${ED}" -xtype l -delete || die
+
+ find "${ED}" -type d -empty -delete || die
+}
+
+pkg_postinst() {
+ # Reload init to fix unmounting problems of / on next reboot.
+ # This is really needed, as without the new version of init cause init
+ # not to quit properly on reboot, and causes a fsck of / on next reboot.
+ if [[ -z ${EROOT} ]] ; then
+ if [[ -e /dev/initctl ]] && [[ ! -e /run/initctl ]] ; then
+ ln -s /dev/initctl /run/initctl \
+ || ewarn "Failed to set /run/initctl symlink!"
+ fi
+ # Do not return an error if this fails
+ /sbin/telinit U &>/dev/null
+ fi
+
+ elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to"
+ elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps."
+
+ # Required for new bootlogd service
+ if [[ ! -e "${EROOT}/var/log/boot" ]] ; then
+ touch "${EROOT}/var/log/boot"
+ fi
+
+ local ver
+ for ver in ${REPLACING_VERSIONS}; do
+ ver_test ${ver} -ge 3.07-r2 && continue
+ ewarn "Previously, the 'halt' command caused the system to power off"
+ ewarn "even if option -p was not given. This long-standing bug has"
+ ewarn "been fixed, and the command now behaves as documented."
+ break
+ done
+}
diff --git a/sys-apps/tas/Manifest b/sys-apps/tas/Manifest
index b9e8df89b59d..7c32c7bbcb99 100644
--- a/sys-apps/tas/Manifest
+++ b/sys-apps/tas/Manifest
@@ -1 +1 @@
-DIST TAS_1.6.0_build.200601.zip 15528952 BLAKE2B f2514180c1335c2c8afd5cf0234da8dd22563086cf2c85e38b8dc2bc28b27fd3dac6a09123a0d4f57354cf729ad5050a6253608d15682577c75b551c921aa1b0 SHA512 725e8134a51a75b23f566f1321e87faf44f96603d63b4a253f03c262ec2c40c339e024162ba84da37647cd301a039ca4aa34e42936d1a47303c7fa68e1e5f2f3
+DIST TAS_1.7.0_build.220503.zip 15345434 BLAKE2B 48f70d0dbafdb3e2acba8fb2e29007dce21062c843ea601c623664e7df8bf3638f14c489688e25445611d261ab6a30ce2edeae8f4e19749c9d3be61f6c30766b SHA512 dedef4b53afb5607f61d7e8793f966d4345ebb530cb0174c22fb72f41568a0b5c109833609e63d25de562c8de7fec312da3198b023265867b8f1228e0974455b
diff --git a/sys-apps/tas/metadata.xml b/sys-apps/tas/metadata.xml
index 8f17e1d6ff33..9581407003e0 100644
--- a/sys-apps/tas/metadata.xml
+++ b/sys-apps/tas/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>conikost@gentoo.org</email>
diff --git a/sys-apps/tas/tas-1.6.0.200601.ebuild b/sys-apps/tas/tas-1.6.0.200601.ebuild
deleted file mode 100644
index 6301047a3e21..000000000000
--- a/sys-apps/tas/tas-1.6.0.200601.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit linux-info optfeature systemd
-
-MY_DATE="$(ver_cut 4)"
-MY_PN="${PN^^}"
-MY_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="Supermicro Thin-Agent Service for monitoring through the BMC/IPMI"
-HOMEPAGE="https://www.supermicro.com"
-SRC_URI="https://www.supermicro.com/wftp/utility/${MY_PN}/${MY_PN}_${MY_PV}_build.${MY_DATE}.zip"
-
-KEYWORDS="-* ~amd64 ~x86"
-LICENSE="BSD supermicro"
-SLOT="0"
-
-RDEPEND="
- net-misc/networkmanager
- sys-apps/ethtool
- sys-apps/net-tools
- sys-apps/smartmontools
- sys-block/storcli
- sys-devel/bc
- sys-fs/lsscsi
- sys-fs/mdadm"
-
-BDEPEND="app-arch/unzip"
-
-RESTRICT="bindist mirror"
-
-S="${WORKDIR}"
-
-QA_PREBUILT="usr/bin/IPMITAS"
-
-DOCS=(
- "clireadme.txt"
- "ReleaseNotes.txt"
- "software_license_agreement_pv.pdf"
- "TAS_UserGuide.pdf"
-)
-
-CONFIG_CHECK="~IPMI_DEVICE_INTERFACE ~IPMI_HANDLER ~IPMI_SI"
-
-src_unpack() {
- unpack ${A}
- unpack "${S}"/${MY_PN}_${MY_PV}_build.${MY_DATE}_Linux.tar.gz
-}
-
-src_install() {
- dobin TAS/$(usex amd64 '64' '32')bit/IPMITAS
-
- insinto /etc/supermicro
- doins "${FILESDIR}"/tas.ini
-
- dodir /var/log/tas
- local logfiles=( {starttime,tas,tas.com}.log )
- for logfile in ${logfiles[@]}; do
- touch "${ED}"/var/log/tas/${logfile} || die
- dosym ../../var/log/tas/${logfile} /etc/supermicro/${logfile}
- done
-
- newinitd "${FILESDIR}"/tas.initd tas
- systemd_newunit "${FILESDIR}"/tas.service tas.service
-
- einstalldocs
-}
-
-pkg_postinst() {
- optfeature "Broadcom controller management" sys-block/storcli
- optfeature "LSI controller management" sys-block/sas3ircu
-}
diff --git a/sys-apps/tas/tas-1.7.0.220503-r1.ebuild b/sys-apps/tas/tas-1.7.0.220503-r1.ebuild
new file mode 100644
index 000000000000..f4b689eca2bf
--- /dev/null
+++ b/sys-apps/tas/tas-1.7.0.220503-r1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info optfeature systemd
+
+MY_DATE="$(ver_cut 4)"
+MY_PN="${PN^^}"
+MY_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Supermicro Thin-Agent Service for monitoring through the BMC/IPMI"
+HOMEPAGE="https://www.supermicro.com"
+SRC_URI="https://www.supermicro.com/wftp/utility/${MY_PN}/${MY_PN}_${MY_PV}_build.${MY_DATE}.zip"
+S="${WORKDIR}"
+
+KEYWORDS="-* amd64 x86"
+LICENSE="BSD supermicro"
+SLOT="0"
+
+RDEPEND="
+ net-misc/networkmanager
+ sys-apps/ethtool
+ sys-apps/net-tools
+ sys-apps/smartmontools
+ app-alternatives/bc
+ sys-fs/lsscsi
+ sys-fs/mdadm"
+
+BDEPEND="app-arch/unzip"
+
+RESTRICT="bindist mirror"
+
+QA_PREBUILT="usr/bin/IPMITAS"
+
+DOCS=(
+ "clireadme.txt"
+ "ReleaseNotes.txt"
+ "software_license_agreement_pv.pdf"
+ "TAS_UserGuide.pdf"
+)
+
+CONFIG_CHECK="~IPMI_DEVICE_INTERFACE ~IPMI_HANDLER ~IPMI_SI"
+
+src_unpack() {
+ unpack ${A}
+ unpack "${S}"/${MY_PN}_${MY_PV}_build.${MY_DATE}_Linux.tar.gz
+}
+
+src_install() {
+ dobin TAS/$(usex amd64 '64' '32')bit/IPMITAS
+
+ insinto /etc/supermicro
+ doins "${FILESDIR}"/tas.ini
+
+ dodir /var/log/tas
+ local logfiles=( {starttime,tas,tas.com}.log )
+ for logfile in ${logfiles[@]}; do
+ touch "${ED}"/var/log/tas/${logfile} || die
+ dosym ../../var/log/tas/${logfile} /etc/supermicro/${logfile}
+ done
+
+ newinitd "${FILESDIR}"/tas.initd tas
+ systemd_newunit "${FILESDIR}"/tas.service tas.service
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ optfeature "Broadcom controller management" sys-block/storcli
+ optfeature "LSI controller management" sys-block/sas3ircu
+}
diff --git a/sys-apps/tcp-wrappers/Manifest b/sys-apps/tcp-wrappers/Manifest
index 619d7082e0a6..d2a178c14286 100644
--- a/sys-apps/tcp-wrappers/Manifest
+++ b/sys-apps/tcp-wrappers/Manifest
@@ -1,2 +1,3 @@
-DIST tcp-wrappers_7.6.q-28.debian.tar.xz 36104 BLAKE2B 209fd9730785db8afc8ebec581f7132cfb4352f8807d2cea4715daf5c11aa08a92cf084ab1ff31222f5b265f032286ce2dcf49a238e9dc5616161c400fce4f08 SHA512 2c63201937737c19b4e5ca97dbc0ede9fc2d3b8fc344f8854a7d2afc0109ccb9ee52af94ba8a8498da910336a4f473825daa7a0cca26a0d93e1078e67abe16b0
+DIST tcp-wrappers-7.6.31-patches.tar.xz 8040 BLAKE2B 03e08afaf52bd8e24161cae8f92cbbf47f6dbceae4accc900963c179ff8ee5ce290a973028fd43cc6bffa82714c8a269ba9d2499c3033226d025f4c644462286 SHA512 cee360016361dd69473e57d36ea87b720ef7f31d58472fb1b9efe752fb250c2c758e95d1ca747f8a613a16c60ab9fa991db65e983d678e285fc1372dbad114c9
+DIST tcp-wrappers_7.6.q-31.debian.tar.xz 36256 BLAKE2B 3ffd8b014c120f54b9231f375d3ec77a1894db8c48e56a57b52c5d796be42b78a1ddc35a45c816a05a1cbc603b88e3fe6131b4a562fb9d2169685031ecbf44d5 SHA512 de2bd7b081fca0f182def93795014332baf7b5edf339eaf81dff82772aea1dc866ccddccd5273e7dc49cf760953e164a66f1e5945cb54f2b8dab090c11712c33
DIST tcp_wrappers_7.6.tar.gz 99438 BLAKE2B 961d9858866990f0f5e8c6bb782f5f39a03b267a8957dcd89734aeefcc85ca32554e032c73314e0a88110f3bb8a0dbdd81f093392307623a996b0232773e1e67 SHA512 2d9d003791f8d00912a36ae00579e2b8dd7ad8a7bf8eae259659bcaf5365b150540ff6c93c91765872c76041579b7a02b6e3c64528fb7f8235680399ba1d9dac
diff --git a/sys-apps/tcp-wrappers/files/tcp-wrappers-7.6-redhat-bug11881.patch b/sys-apps/tcp-wrappers/files/tcp-wrappers-7.6-redhat-bug11881.patch
deleted file mode 100644
index 4a6847621c57..000000000000
--- a/sys-apps/tcp-wrappers/files/tcp-wrappers-7.6-redhat-bug11881.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- tcp_wrappers_7.6/tcpd.c.bug11881
-+++ tcp_wrappers_7.6/tcpd.c
-@@ -60,10 +60,10 @@
- */
-
- if (argv[0][0] == '/') {
-- strcpy(path, argv[0]);
-+ strncpy(path, argv[0], sizeof(path));
- argv[0] = strrchr(argv[0], '/') + 1;
- } else {
-- sprintf(path, "%s/%s", REAL_DAEMON_DIR, argv[0]);
-+ snprintf(path, sizeof(path), "%s/%s", REAL_DAEMON_DIR, argv[0]);
- }
-
- /*
---- tcp_wrappers_7.6/eval.c.bug11881
-+++ tcp_wrappers_7.6/eval.c
-@@ -111,7 +111,7 @@
- return (hostinfo);
- #endif
- if (STR_NE(eval_user(request), unknown)) {
-- sprintf(both, "%s@%s", request->user, hostinfo);
-+ snprintf(both, sizeof(both), "%s@%s", request->user, hostinfo);
- return (both);
- } else {
- return (hostinfo);
-@@ -128,7 +128,7 @@
- char *daemon = eval_daemon(request);
-
- if (STR_NE(host, unknown)) {
-- sprintf(both, "%s@%s", daemon, host);
-+ snprintf(both, sizeof(both), "%s@%s", daemon, host);
- return (both);
- } else {
- return (daemon);
diff --git a/sys-apps/tcp-wrappers/files/tcp-wrappers-7.6.28-no-external-malloc.patch b/sys-apps/tcp-wrappers/files/tcp-wrappers-7.6.28-no-external-malloc.patch
deleted file mode 100644
index eebd600aab24..000000000000
--- a/sys-apps/tcp-wrappers/files/tcp-wrappers-7.6.28-no-external-malloc.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-We use malloc() from stdlib.h.
-
---- a/scaffold.c
-+++ b/scaffold.c
-@@ -26,10 +26,6 @@ static char sccs_id[] = "@(#) scaffold.c 1.6 97/03/21 19:27:24";
- #define INADDR_NONE (-1) /* XXX should be 0xffffffff */
- #endif
-
--#ifndef INET6
--extern char *malloc();
--#endif
--
- /* Application-specific. */
-
- #include "tcpd.h"
diff --git a/sys-apps/tcp-wrappers/metadata.xml b/sys-apps/tcp-wrappers/metadata.xml
index aedbb1a2c097..95687368f98d 100644
--- a/sys-apps/tcp-wrappers/metadata.xml
+++ b/sys-apps/tcp-wrappers/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild
deleted file mode 100644
index e99386b4d958..000000000000
--- a/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs flag-o-matic multilib-minimal usr-ldscript
-
-MY_PV=$(ver_cut 1-2)
-DEB_PV=$(ver_cut 3)
-MY_P="${PN//-/_}_${MY_PV}"
-DESCRIPTION="TCP Wrappers"
-HOMEPAGE="http://ftp.porcupine.org/pub/security"
-SRC_URI="http://ftp.porcupine.org/pub/security/${MY_P}.tar.gz
- mirror://debian/pool/main/t/${PN}/${PN}_${MY_PV}.q-${DEB_PV}.debian.tar.xz"
-
-LICENSE="tcp_wrappers_license"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="ipv6 netgroups static-libs"
-
-RDEPEND=""
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
- eapply $(sed -e 's:^:../debian/patches/:' ../debian/patches/series)
- eapply "${FILESDIR}"/${PN}-7.6-redhat-bug11881.patch
- eapply "${FILESDIR}"/${PN}-7.6.28-no-external-malloc.patch
-
- eapply_user
-
- multilib_copy_sources
-}
-
-temake() {
- local mycppflags="-DHAVE_WEAKSYMS -DHAVE_STRERROR -DSYS_ERRLIST_DEFINED"
- use ipv6 && mycppflags+=" -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len"
- emake \
- REAL_DAEMON_DIR="${EPREFIX}/usr/sbin" \
- TLI= VSYSLOG= PARANOID= BUGS= \
- AUTH="-DALWAYS_RFC931" \
- AUX_OBJ="weak_symbols.o" \
- DOT="-DAPPEND_DOT" \
- HOSTNAME="-DALWAYS_HOSTNAME" \
- NETGROUP=$(usex netgroups -DNETGROUPS "") \
- STYLE="-DPROCESS_OPTIONS" \
- LIBS=$(usex netgroups -lnsl "") \
- LIB=$(usex static-libs libwrap.a "") \
- AR="$(tc-getAR)" ARFLAGS=rc \
- CC="$(tc-getCC)" \
- RANLIB="$(tc-getRANLIB)" \
- COPTS="${CFLAGS} ${CPPFLAGS} ${mycppflags}" \
- LDFLAGS="${LDFLAGS}" \
- "$@"
-}
-
-multilib_src_configure() {
- tc-export AR RANLIB
- temake config-check
-}
-
-multilib_src_compile() {
- # https://bugs.gentoo.org/728348
- unset STRINGS
- temake all
-}
-
-multilib_src_install() {
- into /usr
- use static-libs && dolib.a libwrap.a
- dolib.so shared/libwrap.so*
-
- insinto /usr/include
- doins tcpd.h
-
- if multilib_is_native_abi; then
- gen_usr_ldscript -a wrap
- dosbin tcpd tcpdchk tcpdmatch safe_finger try-from
- fi
-}
-
-multilib_src_install_all() {
- doman *.[358]
- dosym hosts_access.5 /usr/share/man/man5/hosts.allow.5
- dosym hosts_access.5 /usr/share/man/man5/hosts.deny.5
-
- insinto /etc
- newins "${FILESDIR}"/hosts.allow.example hosts.allow
-
- dodoc BLURB CHANGES DISCLAIMER README*
-}
-
-pkg_preinst() {
- # don't clobber people with our default example config
- [[ -e ${EROOT}/etc/hosts.allow ]] && cp -pP "${EROOT}"/etc/hosts.allow "${ED}"/etc/hosts.allow
-}
diff --git a/sys-apps/tcp-wrappers/tcp-wrappers-7.6.31-r1.ebuild b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.31-r1.ebuild
new file mode 100644
index 000000000000..9122efe95c6e
--- /dev/null
+++ b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.31-r1.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs multilib-minimal
+
+MY_PV=$(ver_cut 1-2)
+DEB_PV=$(ver_cut 3)
+MY_P="${PN//-/_}_${MY_PV}"
+
+DESCRIPTION="TCP Wrappers"
+HOMEPAGE="http://ftp.porcupine.org/pub/security"
+SRC_URI="
+ http://ftp.porcupine.org/pub/security/${MY_P}.tar.gz
+ mirror://debian/pool/main/t/${PN}/${PN}_${MY_PV}.q-${DEB_PV}.debian.tar.xz
+ https://dev.gentoo.org/~soap/distfiles/${P}-patches.tar.xz
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="tcp_wrappers_license"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="ipv6 netgroups selinux"
+
+DEPEND="
+ netgroups? ( net-libs/libnsl:= )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-tcpd )
+"
+
+PATCHES=( "${WORKDIR}"/gentoo-patches/ )
+
+src_prepare() {
+ # Apply Debian patchset except for the series file which just lists
+ # the patches
+ eapply $(sed -e 's:^:../debian/patches/:' ../debian/patches/series || die)
+
+ default
+
+ multilib_copy_sources
+}
+
+temake() {
+ # Broken with lld-17 (bug #919689)
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+
+ append-cppflags "-DHAVE_WEAKSYMS -DHAVE_STRERROR -DSYS_ERRLIST_DEFINED"
+
+ if use ipv6; then
+ append-cppflags "-DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len"
+ fi
+
+ local myemakeargs=(
+ REAL_DAEMON_DIR="${EPREFIX}/usr/sbin"
+ TLI= VSYSLOG= PARANOID= BUGS=
+ AUTH="-DALWAYS_RFC931"
+ AUX_OBJ="weak_symbols.o"
+ DOT="-DAPPEND_DOT"
+ HOSTNAME="-DALWAYS_HOSTNAME"
+ NETGROUP=$(usev netgroups -DNETGROUPS)
+ STYLE="-DPROCESS_OPTIONS"
+ LIBS=$(usev netgroups -lnsl)
+ LIB="" # disable static-libs
+ AR="$(tc-getAR)" ARFLAGS=rc
+ CC="$(tc-getCC)"
+ RANLIB="$(tc-getRANLIB)"
+ COPTS="${CFLAGS} ${CPPFLAGS}"
+ LDFLAGS="${LDFLAGS}"
+ "$@"
+ )
+
+ emake "${myemakeargs[@]}"
+}
+
+multilib_src_configure() {
+ tc-export AR RANLIB
+ temake config-check
+}
+
+multilib_src_compile() {
+ # https://bugs.gentoo.org/728348
+ unset STRINGS
+ temake all
+}
+
+multilib_src_install() {
+ into /usr
+ dolib.so shared/libwrap.so*
+
+ insinto /usr/include
+ doins tcpd.h
+
+ if multilib_is_native_abi; then
+ dosbin tcpd tcpdchk tcpdmatch safe_finger try-from
+ fi
+}
+
+multilib_src_install_all() {
+ doman *.[358]
+ dosym hosts_access.5 /usr/share/man/man5/hosts.allow.5
+ dosym hosts_access.5 /usr/share/man/man5/hosts.deny.5
+
+ insinto /etc
+ newins "${FILESDIR}"/hosts.allow.example hosts.allow
+
+ dodoc BLURB CHANGES DISCLAIMER README*
+}
+
+pkg_preinst() {
+ # don't clobber people with our default example config
+ [[ -e ${EROOT}/etc/hosts.allow ]] && cp -pP "${EROOT}"/etc/hosts.allow "${ED}"/etc/hosts.allow
+}
diff --git a/sys-apps/tcp-wrappers/tcp-wrappers-7.6.31.ebuild b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.31.ebuild
new file mode 100644
index 000000000000..459625054025
--- /dev/null
+++ b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.31.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic toolchain-funcs multilib-minimal usr-ldscript
+
+MY_PV=$(ver_cut 1-2)
+DEB_PV=$(ver_cut 3)
+MY_P="${PN//-/_}_${MY_PV}"
+
+DESCRIPTION="TCP Wrappers"
+HOMEPAGE="http://ftp.porcupine.org/pub/security"
+SRC_URI="http://ftp.porcupine.org/pub/security/${MY_P}.tar.gz
+ mirror://debian/pool/main/t/${PN}/${PN}_${MY_PV}.q-${DEB_PV}.debian.tar.xz
+ https://dev.gentoo.org/~soap/distfiles/${P}-patches.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="tcp_wrappers_license"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="ipv6 netgroups selinux"
+
+DEPEND="
+ netgroups? ( net-libs/libnsl:= )
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-tcpd )
+"
+
+PATCHES=( "${WORKDIR}"/gentoo-patches/ )
+
+src_prepare() {
+ # Apply Debian patchset except for the series file which just lists
+ # the patches
+ eapply $(sed -e 's:^:../debian/patches/:' ../debian/patches/series || die)
+
+ default
+
+ multilib_copy_sources
+}
+
+temake() {
+ append-cppflags "-DHAVE_WEAKSYMS -DHAVE_STRERROR -DSYS_ERRLIST_DEFINED"
+
+ if use ipv6; then
+ append-cppflags "-DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len"
+ fi
+
+ local myemakeargs=(
+ REAL_DAEMON_DIR="${EPREFIX}/usr/sbin"
+ TLI= VSYSLOG= PARANOID= BUGS=
+ AUTH="-DALWAYS_RFC931"
+ AUX_OBJ="weak_symbols.o"
+ DOT="-DAPPEND_DOT"
+ HOSTNAME="-DALWAYS_HOSTNAME"
+ NETGROUP=$(usex netgroups -DNETGROUPS "")
+ STYLE="-DPROCESS_OPTIONS"
+ LIBS=$(usex netgroups -lnsl "")
+ LIB="" # disable static-libs
+ AR="$(tc-getAR)" ARFLAGS=rc
+ CC="$(tc-getCC)"
+ RANLIB="$(tc-getRANLIB)"
+ COPTS="${CFLAGS} ${CPPFLAGS}"
+ LDFLAGS="${LDFLAGS}"
+ "$@"
+ )
+
+ emake "${myemakeargs[@]}"
+}
+
+multilib_src_configure() {
+ tc-export AR RANLIB
+ temake config-check
+}
+
+multilib_src_compile() {
+ # https://bugs.gentoo.org/728348
+ unset STRINGS
+ temake all
+}
+
+multilib_src_install() {
+ into /usr
+ dolib.so shared/libwrap.so*
+
+ insinto /usr/include
+ doins tcpd.h
+
+ if multilib_is_native_abi; then
+ gen_usr_ldscript -a wrap
+ dosbin tcpd tcpdchk tcpdmatch safe_finger try-from
+ fi
+}
+
+multilib_src_install_all() {
+ doman *.[358]
+ dosym hosts_access.5 /usr/share/man/man5/hosts.allow.5
+ dosym hosts_access.5 /usr/share/man/man5/hosts.deny.5
+
+ insinto /etc
+ newins "${FILESDIR}"/hosts.allow.example hosts.allow
+
+ dodoc BLURB CHANGES DISCLAIMER README*
+}
+
+pkg_preinst() {
+ # don't clobber people with our default example config
+ [[ -e ${EROOT}/etc/hosts.allow ]] && cp -pP "${EROOT}"/etc/hosts.allow "${ED}"/etc/hosts.allow
+}
diff --git a/sys-apps/texinfo/Manifest b/sys-apps/texinfo/Manifest
index 35526017e2f8..85d5ef7f652a 100644
--- a/sys-apps/texinfo/Manifest
+++ b/sys-apps/texinfo/Manifest
@@ -1,2 +1 @@
-DIST texinfo-6.6.tar.xz 4946900 BLAKE2B bd33297549d5285d7a4a65041b6025c489c6b436e9591eaf5187ef34f6e869bf7a2a82a00ebe11adc1c4b2904119e9e3f25d2496b5507f91f4b9ba548ba98604 SHA512 96e0764d0808152d3662e65c3287fb0f86ed918912cdc036380637dbadaacd6a489b516543c07b08105686575e8d495a945f73e23ff0909d5a0f12026e4131e0
-DIST texinfo-6.7.tar.gz 9027808 BLAKE2B ac9a47ae98f27ae55ea1844c74ead6fba256635a56e7a226a1bbdd9ee9ab33565ff8cc7a874410afe6463741285c8fcfd8ff835ae2802009e2d0758405559140 SHA512 a52aaa2f0113c6f14b3cb94fbf7191770017ff6ce2016292770831279cfbb898c2f7f720adee620e08d9d80a9505df89a689ba0c25e92f6579b28b075f7b8ee2
+DIST texinfo-7.1.tar.xz 5545720 BLAKE2B 4385ca6250daeaa4f6bfedd9ab41f25993613031bcb8da55360365701213f4f3cf786d958749c59dc1c9dda328eca42f028aa051a7062313142aa92f55a96ecd SHA512 ceab03e8422d800b08c7b44e8263b0a1f35bb7758d83a81136df6f3304a14daecda98a12a282afb85406d2ca2f665b2295e10b6f4064156ea1285d80d5d355db
diff --git a/sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch b/sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch
new file mode 100644
index 000000000000..8aed47b7bc24
--- /dev/null
+++ b/sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch
@@ -0,0 +1,103 @@
+From c76bcd0feed005aaf9db28a76f4883f3ae98295b Mon Sep 17 00:00:00 2001
+From: Gavin Smith <gavinsmith0123@gmail.com>
+Date: Mon, 23 Oct 2023 19:51:00 +0100
+Subject: [PATCH 1/5] * tp/Texinfo/XS/xspara.c (get_utf8_codepoint): Wrapper
+ for mbrtowc/btowc. [_WIN32]: Do not call btowc, as it was tested to be very
+ slow on MinGW. Report from Eli Zaretskii.
+
+---
+ ChangeLog | 7 ++++++
+ tp/Texinfo/XS/xspara.c | 48 +++++++++++++++++++++++-------------------
+ 2 files changed, 33 insertions(+), 22 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index e619109f5b..c4379ec56b 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,10 @@
++2023-10-23 Gavin Smith <gavinsmith0123@gmail.com>
++
++ * tp/Texinfo/XS/xspara.c (get_utf8_codepoint):
++ Wrapper for mbrtowc/btowc.
++ [_WIN32]: Do not call btowc, as it was tested to be very slow
++ on MinGW. Report from Eli Zaretskii.
++
+ 2023-10-18 Gavin Smith <gavinsmith0123@gmail.com>
+
+ Texinfo 7.1
+diff --git a/tp/Texinfo/XS/xspara.c b/tp/Texinfo/XS/xspara.c
+index 7c6895a7ff..e1cddcdc2a 100644
+--- a/tp/Texinfo/XS/xspara.c
++++ b/tp/Texinfo/XS/xspara.c
+@@ -684,6 +684,30 @@ xspara_end (void)
+ /* characters triggering an end of sentence */
+ #define end_sentence_characters ".?!"
+
++/* Wrapper for mbrtowc. Set *PWC and return length of codepoint in bytes. */
++size_t
++get_utf8_codepoint (wchar_t *pwc, const char *mbs, size_t n)
++{
++#ifdef _WIN32
++ /* Use the above implementation of mbrtowc. Do not use btowc as
++ does not exist as standard on MS-Windows, and was tested to be
++ very slow on MinGW. */
++ return mbrtowc (pwc, mbs, n, NULL);
++#else
++ if (!PRINTABLE_ASCII(*mbs))
++ {
++ return mbrtowc (pwc, mbs, n, NULL);
++ }
++ else
++ {
++ /* Functionally the same as mbrtowc but (tested) slightly quicker. */
++ *pwc = btowc (*mbs);
++ return 1;
++ }
++#endif
++}
++
++
+ /* Add WORD to paragraph in RESULT, not refilling WORD. If we go past the end
+ of the line start a new one. TRANSPARENT means that the letters in WORD
+ are ignored for the purpose of deciding whether a full stop ends a sentence
+@@ -730,18 +754,7 @@ xspara__add_next (TEXT *result, char *word, int word_len, int transparent)
+ if (!strchr (end_sentence_characters
+ after_punctuation_characters, *p))
+ {
+- if (!PRINTABLE_ASCII(*p))
+- {
+- wchar_t wc = L'\0';
+- mbrtowc (&wc, p, len, NULL);
+- state.last_letter = wc;
+- break;
+- }
+- else
+- {
+- state.last_letter = btowc (*p);
+- break;
+- }
++ get_utf8_codepoint (&state.last_letter, p, len);
+ }
+ }
+ }
+@@ -1013,16 +1026,7 @@ xspara_add_text (char *text, int len)
+ }
+
+ /************** Not a white space character. *****************/
+- if (!PRINTABLE_ASCII(*p))
+- {
+- char_len = mbrtowc (&wc, p, len, NULL);
+- }
+- else
+- {
+- /* Functonally the same as mbrtowc but (tested) slightly quicker. */
+- char_len = 1;
+- wc = btowc (*p);
+- }
++ char_len = get_utf8_codepoint (&wc, p, len);
+
+ if ((long) char_len == 0)
+ break; /* Null character. Shouldn't happen. */
+--
+2.42.1
+
diff --git a/sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch b/sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch
new file mode 100644
index 000000000000..242f90add70d
--- /dev/null
+++ b/sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch
@@ -0,0 +1,44 @@
+From f038d3f13f95b5494d5523f2af9dec59ff89b79d Mon Sep 17 00:00:00 2001
+From: Eli Zaretskii <eliz@gnu.org>
+Date: Wed, 25 Oct 2023 22:35:37 +0100
+Subject: [PATCH 2/5] * tp/Texinfo/XS/xspara.c (xspara__add_next): Do not pass
+ pointer to wint_t as a pointer to wchar_t, as the two types may be of
+ different sizes.
+
+---
+ ChangeLog | 6 ++++++
+ tp/Texinfo/XS/xspara.c | 4 +++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index c4379ec56b..3d13a15517 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,9 @@
++2023-10-25 Eli Zaretskii <eliz@gnu.org>
++
++ * tp/Texinfo/XS/xspara.c (xspara__add_next): Do not pass
++ pointer to wint_t as a pointer to wchar_t, as the two types
++ may be of different sizes.
++
+ 2023-10-23 Gavin Smith <gavinsmith0123@gmail.com>
+
+ * tp/Texinfo/XS/xspara.c (get_utf8_codepoint):
+diff --git a/tp/Texinfo/XS/xspara.c b/tp/Texinfo/XS/xspara.c
+index e1cddcdc2a..130e43a4db 100644
+--- a/tp/Texinfo/XS/xspara.c
++++ b/tp/Texinfo/XS/xspara.c
+@@ -754,7 +754,9 @@ xspara__add_next (TEXT *result, char *word, int word_len, int transparent)
+ if (!strchr (end_sentence_characters
+ after_punctuation_characters, *p))
+ {
+- get_utf8_codepoint (&state.last_letter, p, len);
++ wchar_t wc;
++ get_utf8_codepoint (&wc, p, len);
++ state.last_letter = wc;
+ }
+ }
+ }
+--
+2.42.1
+
diff --git a/sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch b/sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch
new file mode 100644
index 000000000000..b3fbc85f461b
--- /dev/null
+++ b/sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch
@@ -0,0 +1,51 @@
+https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00001.html
+
+From 12ad80f3a1cfa78c8a7b3a45458df7e07251317d Mon Sep 17 00:00:00 2001
+From: Gavin Smith <gavinsmith0123@gmail.com>
+Date: Sat, 4 Nov 2023 10:38:48 +0000
+Subject: [PATCH 3/5] * info/scan.c (write_tag_contents): Check if added text
+ is of zero length in order to avoid subsequently calling memcpy with a null
+ source argument. Report with -fsanitize=undefined on amd64 from Sam James
+ <sam@gentoo.org>.
+
+---
+ ChangeLog | 7 +++++++
+ info/scan.c | 4 ++--
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index 3d13a15517..efbb3b22d1 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,10 @@
++2023-11-04 Gavin Smith <gavinsmith0123@gmail.com>
++
++ * info/scan.c (write_tag_contents): Check if added text is of
++ zero length in order to avoid subsequently calling memcpy with
++ a null source argument. Report with -fsanitize=undefined on amd64
++ from Sam James <sam@gentoo.org>.
++
+ 2023-10-25 Eli Zaretskii <eliz@gnu.org>
+
+ * tp/Texinfo/XS/xspara.c (xspara__add_next): Do not pass
+diff --git a/info/scan.c b/info/scan.c
+index d6183ae9ae..bdf272f9bf 100644
+--- a/info/scan.c
++++ b/info/scan.c
+@@ -925,11 +925,11 @@ write_extra_bytes_to_output (char *input, long n)
+ }
+
+ /* Like write_extra_bytes_to_output, but writes bytes even when
+- preprocess_nodes=Off. */
++ preprocess_nodes=Off. Note n could be 0 for an index tag. */
+ static void
+ write_tag_contents (char *input, long n)
+ {
+- if (rewrite_p)
++ if (rewrite_p && n > 0)
+ {
+ text_buffer_add_string (&output_buf, input, n);
+ output_bytes_difference -= n;
+--
+2.42.1
+
diff --git a/sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch b/sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch
new file mode 100644
index 000000000000..6f57363fc435
--- /dev/null
+++ b/sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch
@@ -0,0 +1,53 @@
+https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00000.html
+https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00016.html
+https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00073.html
+
+From 81a854e22ca2449f2351436a863e5262935f5dc0 Mon Sep 17 00:00:00 2001
+From: Gavin Smith <gavinsmith0123@gmail.com>
+Date: Mon, 13 Nov 2023 18:43:40 +0000
+Subject: [PATCH 4/5] * tp/Texinfo/XS/parsetexi/tree.c (reset_obstacks): Call
+ obstack_alignment_mask to use 8-byte alignment. Needed for Debian on
+ sparc64. Report of "Bus error" from John Paul Adrian Glaubitz
+ <glaubitz@physik.fu-berlin.de>.
+
+---
+ ChangeLog | 7 +++++++
+ tp/Texinfo/XS/parsetexi/tree.c | 7 ++++++-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index efbb3b22d1..a146820671 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,10 @@
++2023-11-13 Gavin Smith <gavinsmith0123@gmail.com>
++
++ * tp/Texinfo/XS/parsetexi/tree.c (reset_obstacks):
++ Call obstack_alignment_mask to use 8-byte alignment. Needed
++ for Debian on sparc64. Report of "Bus error" from
++ John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>.
++
+ 2023-11-04 Gavin Smith <gavinsmith0123@gmail.com>
+
+ * info/scan.c (write_tag_contents): Check if added text is of
+diff --git a/tp/Texinfo/XS/parsetexi/tree.c b/tp/Texinfo/XS/parsetexi/tree.c
+index f2d69e0454..09db6fc151 100644
+--- a/tp/Texinfo/XS/parsetexi/tree.c
++++ b/tp/Texinfo/XS/parsetexi/tree.c
+@@ -43,7 +43,12 @@ reset_obstacks (void)
+ if (obs_element_first)
+ obstack_free (&obs_element, obs_element_first);
+ else
+- obstack_init (&obs_element);
++ {
++ /* Specify 8-byte alignment. Needed for SPARC. */
++ obstack_alignment_mask (&obs_element) = 7;
++
++ obstack_init (&obs_element);
++ }
+
+ obs_element_first = obstack_alloc (&obs_element, sizeof (int));
+ }
+--
+2.42.1
+
diff --git a/sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch b/sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch
new file mode 100644
index 000000000000..59b590617964
--- /dev/null
+++ b/sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch
@@ -0,0 +1,221 @@
+From f1f8920d798dbcb20cb775b46a54cd81847295fd Mon Sep 17 00:00:00 2001
+From: Gavin Smith <gavinsmith0123@gmail.com>
+Date: Tue, 14 Nov 2023 21:53:49 +0000
+Subject: [PATCH 5/5] * tp/Texinfo/command_data.txt (item_LINE, itemx,
+ defblock, defline, deftypeline): Remove contain_basic_inline flag. There is
+ no reason an @anchor should not occur inside @item, inside @table, or the
+ other commands, as no index entry is being created with the @anchor.
+
+Report from Ihor Radchenko <yantar92@posteo.net> for Org mode manual.
+---
+ ChangeLog | 10 +++
+ tp/Texinfo/command_data.txt | 10 +--
+ tp/t/results/invalid_nestings/in_table.pl | 90 -------------------
+ .../invalid_nestings/table_on_item_line.pl | 9 --
+ 4 files changed, 15 insertions(+), 104 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index a146820671..0dcdb1a904 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,13 @@
++2023-11-14 Gavin Smith <gavinsmith0123@gmail.com>
++
++ * tp/Texinfo/command_data.txt
++ (item_LINE, itemx, defblock, defline, deftypeline):
++ Remove contain_basic_inline flag. There is no reason an @anchor
++ should not occur inside @item, inside @table, or the other
++ commands, as no index entry is being created with the @anchor.
++
++ Report from Ihor Radchenko <yantar92@posteo.net> for Org mode manual.
++
+ 2023-11-13 Gavin Smith <gavinsmith0123@gmail.com>
+
+ * tp/Texinfo/XS/parsetexi/tree.c (reset_obstacks):
+diff --git a/tp/Texinfo/command_data.txt b/tp/Texinfo/command_data.txt
+index bcda173e2c..c9b5f51569 100644
+--- a/tp/Texinfo/command_data.txt
++++ b/tp/Texinfo/command_data.txt
+@@ -253,8 +253,8 @@ printindex line,formattable_line,close_paragraph,global,contain_pla
+ listoffloats line,formattable_line,close_paragraph,global,contain_basic_inline LINE_line
+ exdent line,formatted_line,close_paragraph LINE_line
+ # or nobrace skipspace, depending on the context
+-item_LINE line,formatted_line,close_paragraph,contain_basic_inline LINE_line
+-itemx line,formatted_line,close_paragraph,contain_basic_inline LINE_line
++item_LINE line,formatted_line,close_paragraph LINE_line
++itemx line,formatted_line,close_paragraph LINE_line
+ nodedescription line,close_paragraph LINE_line
+ # in index entries
+ subentry line,in_index,contain_basic_inline LINE_line
+@@ -494,9 +494,9 @@ defmethod block,def,contain_basic_inline,def_alias,close_paragraph
+ deftypemethod block,def,contain_basic_inline,def_alias,close_paragraph BLOCK_def
+
+ # generic, no automatic index
+-defblock block,contain_basic_inline,close_paragraph BLOCK_def
+-defline line,def,contain_basic_inline,close_paragraph LINE_line
+-deftypeline line,def,contain_basic_inline,close_paragraph LINE_line
++defblock block,close_paragraph BLOCK_def
++defline line,def,close_paragraph LINE_line
++deftypeline line,def,close_paragraph LINE_line
+
+ # def*x
+ deffnx line,def,contain_basic_inline,close_paragraph LINE_line
+diff --git a/tp/t/results/invalid_nestings/in_table.pl b/tp/t/results/invalid_nestings/in_table.pl
+index f4dcef1141..76eea8b3b4 100644
+--- a/tp/t/results/invalid_nestings/in_table.pl
++++ b/tp/t/results/invalid_nestings/in_table.pl
+@@ -1107,42 +1107,6 @@ $result_errors{'in_table'} = [
+ 'text' => '@indent should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @indent should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 9,
+- 'macro' => '',
+- 'text' => '@indent should not appear on @item line',
+- 'type' => 'warning'
+- },
+- {
+- 'error_line' => 'warning: @titlefont should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 9,
+- 'macro' => '',
+- 'text' => '@titlefont should not appear on @item line',
+- 'type' => 'warning'
+- },
+- {
+- 'error_line' => 'warning: @anchor should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 9,
+- 'macro' => '',
+- 'text' => '@anchor should not appear on @item line',
+- 'type' => 'warning'
+- },
+- {
+- 'error_line' => 'warning: @footnote should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 9,
+- 'macro' => '',
+- 'text' => '@footnote should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => 'warning: @exdent should only appear at the beginning of a line
+ ',
+@@ -1161,24 +1125,6 @@ $result_errors{'in_table'} = [
+ 'text' => '@exdent should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @exdent should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 9,
+- 'macro' => '',
+- 'text' => '@exdent should not appear on @item line',
+- 'type' => 'warning'
+- },
+- {
+- 'error_line' => 'warning: @ref should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 11,
+- 'macro' => '',
+- 'text' => '@ref should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => '@ref missing closing brace
+ ',
+@@ -1206,15 +1152,6 @@ $result_errors{'in_table'} = [
+ 'text' => '@center should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @center should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 13,
+- 'macro' => '',
+- 'text' => '@center should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => 'warning: @cindex should not appear in @item
+ ',
+@@ -1224,15 +1161,6 @@ $result_errors{'in_table'} = [
+ 'text' => '@cindex should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @cindex should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 14,
+- 'macro' => '',
+- 'text' => '@cindex should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => 'warning: @cindex should not appear in @item
+ ',
+@@ -1242,15 +1170,6 @@ $result_errors{'in_table'} = [
+ 'text' => '@cindex should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @cindex should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 18,
+- 'macro' => '',
+- 'text' => '@cindex should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => 'warning: @cindex should not appear in @item
+ ',
+@@ -1260,15 +1179,6 @@ $result_errors{'in_table'} = [
+ 'text' => '@cindex should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @cindex should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 21,
+- 'macro' => '',
+- 'text' => '@cindex should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => 'warning: empty index key in @item
+ ',
+diff --git a/tp/t/results/invalid_nestings/table_on_item_line.pl b/tp/t/results/invalid_nestings/table_on_item_line.pl
+index b1184ba915..51ba523fd7 100644
+--- a/tp/t/results/invalid_nestings/table_on_item_line.pl
++++ b/tp/t/results/invalid_nestings/table_on_item_line.pl
+@@ -273,15 +273,6 @@ $result_errors{'table_on_item_line'} = [
+ 'text' => '@table should not appear in @item',
+ 'type' => 'warning'
+ },
+- {
+- 'error_line' => 'warning: @table should not appear on @item line
+-',
+- 'file_name' => '',
+- 'line_nr' => 2,
+- 'macro' => '',
+- 'text' => '@table should not appear on @item line',
+- 'type' => 'warning'
+- },
+ {
+ 'error_line' => 'no matching `@end table\'
+ ',
+--
+2.42.1
+
diff --git a/sys-apps/texinfo/metadata.xml b/sys-apps/texinfo/metadata.xml
index c1b5fefb5a36..17375d23a84f 100644
--- a/sys-apps/texinfo/metadata.xml
+++ b/sys-apps/texinfo/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
@@ -14,5 +14,6 @@
</use>
<upstream>
<remote-id type="cpe">cpe:/a:gnu:texinfo</remote-id>
+ <remote-id type="savannah">texinfo</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/texinfo/texinfo-6.6-r1.ebuild b/sys-apps/texinfo/texinfo-6.6-r1.ebuild
deleted file mode 100644
index 4814e56f518c..000000000000
--- a/sys-apps/texinfo/texinfo-6.6-r1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Note: if your package uses the texi2dvi utility, it must depend on the
-# virtual/texi2dvi package to pull in all the right deps. The tool is not
-# usable out-of-the-box because it requires the large tex packages.
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="The GNU info program and utilities"
-HOMEPAGE="https://www.gnu.org/software/texinfo/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="nls static"
-
-RDEPEND="
- !=app-text/tetex-2*
- >=sys-libs/ncurses-5.2-r2:0=
- dev-lang/perl:=
- dev-perl/libintl-perl
- dev-perl/Unicode-EastAsianWidth
- dev-perl/Text-Unidecode
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils
- nls? ( >=sys-devel/gettext-0.19.6 )"
-
-src_configure() {
- # Respect compiler and CPPFLAGS/CFLAGS/LDFLAGS for Perl extensions. #622576
- local -x PERL_EXT_CC="$(tc-getCC)" PERL_EXT_CPPFLAGS="${CPPFLAGS}" PERL_EXT_CFLAGS="${CFLAGS}" PERL_EXT_LDFLAGS="${LDFLAGS}"
-
- use static && append-ldflags -static
- local myeconfargs=(
- --with-external-libintl-perl
- --with-external-Unicode-EastAsianWidth
- --with-external-Text-Unidecode
- $(use_enable nls)
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/texinfo/texinfo-6.7.ebuild b/sys-apps/texinfo/texinfo-6.7.ebuild
deleted file mode 100644
index 60ede9257314..000000000000
--- a/sys-apps/texinfo/texinfo-6.7.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Note: if your package uses the texi2dvi utility, it must depend on the
-# virtual/texi2dvi package to pull in all the right deps. The tool is not
-# usable out-of-the-box because it requires the large tex packages.
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="The GNU info program and utilities"
-HOMEPAGE="https://www.gnu.org/software/texinfo/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="nls +standalone static"
-
-RDEPEND="
- >=sys-libs/ncurses-5.2-r2:0=
- standalone? ( dev-lang/perl )
- !standalone? (
- dev-lang/perl:=
- dev-perl/libintl-perl
- dev-perl/Unicode-EastAsianWidth
- dev-perl/Text-Unidecode
- )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="nls? ( >=sys-devel/gettext-0.19.6 )"
-
-src_configure() {
- # Respect compiler and CPPFLAGS/CFLAGS/LDFLAGS for Perl extensions. #622576
- local -x PERL_EXT_CC="$(tc-getCC)" PERL_EXT_CPPFLAGS="${CPPFLAGS}" PERL_EXT_CFLAGS="${CFLAGS}" PERL_EXT_LDFLAGS="${LDFLAGS}"
-
- use static && append-ldflags -static
- local myeconfargs
- if use standalone ; then
- myeconfargs=(
- --without-external-libintl-perl
- --without-external-Unicode-EastAsianWidth
- --without-external-Text-Unidecode
- $(use_enable nls)
- --disable-perl-xs
- )
- else
- myeconfargs=(
- --with-external-libintl-perl
- --with-external-Unicode-EastAsianWidth
- --with-external-Text-Unidecode
- $(use_enable nls)
- --enable-perl-xs
- )
- fi
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/texinfo/texinfo-7.1-r1.ebuild b/sys-apps/texinfo/texinfo-7.1-r1.ebuild
new file mode 100644
index 000000000000..e6539767a6c5
--- /dev/null
+++ b/sys-apps/texinfo/texinfo-7.1-r1.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Note: if your package uses the texi2dvi utility, it must depend on the
+# virtual/texi2dvi package to pull in all the right deps. The tool is not
+# usable out-of-the-box because it requires the large tex packages.
+
+# Keep an eye on the release/$(ver_cut 1-2) branch upstream for backports.
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU info program and utilities"
+HOMEPAGE="https://www.gnu.org/software/texinfo/"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/texinfo.git"
+ REGEN_BDEPEND="
+ >=dev-build/autoconf-2.62
+ >=dev-build/automake-1.16
+ dev-build/libtool
+ "
+elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then
+ SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz"
+ REGEN_BDEPEND=""
+else
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ REGEN_BDEPEND=""
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="nls +standalone static"
+
+RDEPEND="
+ !=app-text/tetex-2*
+ >=sys-libs/ncurses-5.2-r2:=
+ virtual/perl-Data-Dumper
+ virtual/perl-Encode
+ virtual/perl-Unicode-Collate
+ standalone? ( >=dev-lang/perl-5.8.1 )
+ !standalone? (
+ >=dev-lang/perl-5.8.1:=
+ dev-libs/libunistring:=
+ )
+ nls? ( virtual/libintl )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${REGEN_BDEPEND}
+ nls? ( >=sys-devel/gettext-0.19.6 )
+"
+
+PATCHES=(
+ # Backports from the release/7.1 branch
+ "${FILESDIR}"/7.1
+)
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]]; then
+ ./autogen.sh || die
+ fi
+
+ # Needed if a patch touches install-info.c
+ #touch man/install-info.1 || die
+
+ if use prefix ; then
+ sed -i -e '1c\#!/usr/bin/env sh' util/texi2dvi util/texi2pdf || die
+ touch {doc,man}/{texi2dvi,texi2pdf,pdftexi2dvi}.1 || die
+ fi
+}
+
+src_configure() {
+ # Respect compiler and CPPFLAGS/CFLAGS/LDFLAGS for Perl extensions
+ # bug #622576
+ local -x PERL_EXT_CC="$(tc-getCC)" PERL_EXT_CPPFLAGS="${CPPFLAGS}"
+ local -x PERL_EXT_CFLAGS="${CFLAGS}" PERL_EXT_LDFLAGS="${LDFLAGS}"
+
+ use static && append-ldflags -static
+
+ # TODO:
+ # --with-external-Unicode-EastAsianWidth
+ # --with-external-Text-Unidecode
+ #
+ # Also, 7.0.91 seemed to introduce a included-libunistring w/ USE=-standalone
+ # but it doesn't seem to do anything?
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ $(use_enable nls)
+ $(use_enable !standalone perl-xs)
+ )
+
+ econf "${myeconfargs[@]}"
+}
diff --git a/sys-apps/texinfo/texinfo-9999.ebuild b/sys-apps/texinfo/texinfo-9999.ebuild
new file mode 100644
index 000000000000..69014441481c
--- /dev/null
+++ b/sys-apps/texinfo/texinfo-9999.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Note: if your package uses the texi2dvi utility, it must depend on the
+# virtual/texi2dvi package to pull in all the right deps. The tool is not
+# usable out-of-the-box because it requires the large tex packages.
+
+# Keep an eye on the release/$(ver_cut 1-2) branch upstream for backports.
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU info program and utilities"
+HOMEPAGE="https://www.gnu.org/software/texinfo/"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/texinfo.git"
+ REGEN_BDEPEND="
+ >=dev-build/autoconf-2.62
+ >=dev-build/automake-1.16
+ dev-build/libtool
+ "
+elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then
+ SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz"
+ REGEN_BDEPEND=""
+else
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ REGEN_BDEPEND=""
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="nls +standalone static"
+
+RDEPEND="
+ !=app-text/tetex-2*
+ >=sys-libs/ncurses-5.2-r2:=
+ virtual/perl-Data-Dumper
+ virtual/perl-Encode
+ virtual/perl-Unicode-Collate
+ standalone? ( >=dev-lang/perl-5.8.1 )
+ !standalone? (
+ >=dev-lang/perl-5.8.1:=
+ dev-libs/libunistring:=
+ )
+ nls? ( virtual/libintl )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${REGEN_BDEPEND}
+ nls? ( >=sys-devel/gettext-0.19.6 )
+"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]]; then
+ ./autogen.sh || die
+ fi
+
+ # Needed if a patch touches install-info.c
+ #touch man/install-info.1 || die
+
+ if use prefix ; then
+ sed -i -e '1c\#!/usr/bin/env sh' util/texi2dvi util/texi2pdf || die
+ touch {doc,man}/{texi2dvi,texi2pdf,pdftexi2dvi}.1 || die
+ fi
+}
+
+src_configure() {
+ # Respect compiler and CPPFLAGS/CFLAGS/LDFLAGS for Perl extensions
+ # bug #622576
+ local -x PERL_EXT_CC="$(tc-getCC)" PERL_EXT_CPPFLAGS="${CPPFLAGS}"
+ local -x PERL_EXT_CFLAGS="${CFLAGS}" PERL_EXT_LDFLAGS="${LDFLAGS}"
+
+ use static && append-ldflags -static
+
+ # TODO:
+ # --with-external-Unicode-EastAsianWidth
+ # --with-external-Text-Unidecode
+ #
+ # Also, 7.0.91 seemed to introduce a included-libunistring w/ USE=-standalone
+ # but it doesn't seem to do anything?
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ $(use_enable nls)
+ $(use_enable !standalone perl-xs)
+ )
+
+ econf "${myeconfargs[@]}"
+}
diff --git a/sys-apps/the_silver_searcher/Manifest b/sys-apps/the_silver_searcher/Manifest
index 1ae01b0415d9..0623405bb37c 100644
--- a/sys-apps/the_silver_searcher/Manifest
+++ b/sys-apps/the_silver_searcher/Manifest
@@ -1,3 +1 @@
-DIST the_silver_searcher-2.0.0.tar.gz 160093 BLAKE2B 1955772c6f71cf7839270cdcaf73f917a69966afa69e781a81ff1926946d9e61a7229e5eb4981b21879b6d2ad46232563285b083de77b8fbf42d3070792b26bd SHA512 2587b9958fadcf5d95bc472f901904edb0d3d9bbc652dc6bb3801b77e7dfa744a97869bed4699776cc3fdcd7b0319fcecbe4b08ccfda617d1c2aa4ea8e9f990d
-DIST the_silver_searcher-2.1.0.tar.gz 163139 BLAKE2B 0112489e9e8c965708f2526aa5141bc700cb86bc1bc5a63ad9b2505234595f673b6e163546fdec7e5066d00789042ab1acdf02db926170bb823112847f304944 SHA512 9b49b1666bbb915b122eae45dbe5dbdba18539257b59f1dee9ba9ec86dbe73c7c8ecde1eff9d3e06951295685161fc4594fcdbfa5d19d7b466f2a7f95021e631
-DIST the_silver_searcher-2.2.0.tar.gz 163686 BLAKE2B ca81f701336ff463b6dc783ac8bc615a05e048c35b653a80c3fb74b053bb71f4822990b699a9e3741c7ffdd2581b65faa5439824189a9d8e36025d248201f814 SHA512 b635165fa3259475027986dd49c0786545cc2e3037695aec70f6ee54eaa768ab0e25af78d4bfd3754c4eb8352464cebf64324ed4a68a4b3de60a6889473da26e
+DIST the_silver_searcher-2.2.0_p20201217.tar.gz 165236 BLAKE2B eaf5e657b33d463048a83e08a90588448cb2fcd481b1f7f869e82c5e1ae1168a10dacb0d549dcc4acafb4323c96a9b67ff9e58de85f80bd2bd7e209ddc5ca6fa SHA512 96bc8da8ba10034bbb646bac71d479a21a68793e8af5377481da72c8dfa49ac99a1540c2b4193c4a95167127f1caa48fbd611ba367b8279bd2115549b6d8d126
diff --git a/sys-apps/the_silver_searcher/files/the_silver_searcher-2.2.0-no_lfs64.patch b/sys-apps/the_silver_searcher/files/the_silver_searcher-2.2.0-no_lfs64.patch
new file mode 100644
index 000000000000..7468a47a0568
--- /dev/null
+++ b/sys-apps/the_silver_searcher/files/the_silver_searcher-2.2.0-no_lfs64.patch
@@ -0,0 +1,52 @@
+LFS64 interfaces are now generally considered deprecated, and are no longer
+available in MUSL since version 1.2.4.
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -12,6 +12,8 @@
+ AC_PREREQ([2.59])
+ AC_PROG_GREP
+
++AC_SYS_LARGEFILE
++
+ m4_ifdef(
+ [AM_SILENT_RULES],
+ [AM_SILENT_RULES([yes])])
+--- a/src/zfile.c
++++ b/src/zfile.c
+@@ -4,7 +4,7 @@
+ #include <sys/types.h>
+
+ #ifdef __CYGWIN__
+-typedef _off64_t off64_t;
++typedef _off64_t off_t;
+ #endif
+
+ #include <assert.h>
+@@ -331,14 +331,14 @@
+ }
+
+ static int
+-zfile_seek(void *cookie_, off64_t *offset_, int whence) {
++zfile_seek(void *cookie_, off_t *offset_, int whence) {
+ struct zfile *cookie = cookie_;
+- off64_t new_offset = 0, offset = *offset_;
++ off_t new_offset = 0, offset = *offset_;
+
+ if (whence == SEEK_SET) {
+ new_offset = offset;
+ } else if (whence == SEEK_CUR) {
+- new_offset = (off64_t)cookie->logic_offset + offset;
++ new_offset = (off_t)cookie->logic_offset + offset;
+ } else {
+ /* SEEK_END not ok */
+ return -1;
+@@ -348,7 +348,7 @@
+ return -1;
+
+ /* Backward seeks to anywhere but 0 are not ok */
+- if (new_offset < (off64_t)cookie->logic_offset && new_offset != 0) {
++ if (new_offset < (off_t)cookie->logic_offset && new_offset != 0) {
+ return -1;
+ }
+
diff --git a/sys-apps/the_silver_searcher/files/the_silver_searcher-fno-common.patch b/sys-apps/the_silver_searcher/files/the_silver_searcher-fno-common.patch
deleted file mode 100644
index 49861018e3ad..000000000000
--- a/sys-apps/the_silver_searcher/files/the_silver_searcher-fno-common.patch
+++ /dev/null
@@ -1,164 +0,0 @@
---- a/src/search.h
-+++ b/src/search.h
-@@ -31,9 +31,9 @@
- #include "uthash.h"
- #include "util.h"
-
--size_t alpha_skip_lookup[256];
--size_t *find_skip_lookup;
--uint8_t h_table[H_SIZE] __attribute__((aligned(64)));
-+extern size_t alpha_skip_lookup[256];
-+extern size_t *find_skip_lookup;
-+extern uint8_t h_table[H_SIZE] __attribute__((aligned(64)));
-
- struct work_queue_t {
- char *path;
-@@ -41,12 +41,12 @@
- };
- typedef struct work_queue_t work_queue_t;
-
--work_queue_t *work_queue;
--work_queue_t *work_queue_tail;
--int done_adding_files;
--pthread_cond_t files_ready;
--pthread_mutex_t stats_mtx;
--pthread_mutex_t work_queue_mtx;
-+extern work_queue_t *work_queue;
-+extern work_queue_t *work_queue_tail;
-+extern int done_adding_files;
-+extern pthread_cond_t files_ready;
-+extern pthread_mutex_t stats_mtx;
-+extern pthread_mutex_t work_queue_mtx;
-
-
- /* For symlink loop detection */
-@@ -64,7 +64,7 @@
- UT_hash_handle hh;
- } symdir_t;
-
--symdir_t *symhash;
-+extern symdir_t *symhash;
-
- void search_buf(const char *buf, const size_t buf_len,
- const char *dir_full_path);
---- a/src/search.c
-+++ b/src/search.c
-@@ -2,6 +2,19 @@
- #include "print.h"
- #include "scandir.h"
-
-+ size_t alpha_skip_lookup[256];
-+ size_t *find_skip_lookup;
-+ uint8_t h_table[H_SIZE] __attribute__((aligned(64)));
-+
-+ work_queue_t *work_queue;
-+ work_queue_t *work_queue_tail;
-+ int done_adding_files;
-+ pthread_cond_t files_ready;
-+ pthread_mutex_t stats_mtx;
-+ pthread_mutex_t work_queue_mtx;
-+
-+ symdir_t *symhash;
-+
- void search_buf(const char *buf, const size_t buf_len,
- const char *dir_full_path) {
- int binary = -1; /* 1 = yes, 0 = no, -1 = don't know */
---- a/src/log.c
-+++ b/src/log.c
-@@ -4,6 +4,8 @@
- #include "log.h"
- #include "util.h"
-
-+pthread_mutex_t print_mtx;
-+
- static enum log_level log_threshold = LOG_LEVEL_ERR;
-
- void set_log_level(enum log_level threshold) {
---- a/src/log.h
-+++ b/src/log.h
-@@ -9,7 +9,7 @@
- #include <pthread.h>
- #endif
-
--pthread_mutex_t print_mtx;
-+extern pthread_mutex_t print_mtx;
-
- enum log_level {
- LOG_LEVEL_DEBUG = 10,
---- a/src/options.h
-+++ b/src/options.h
-@@ -91,7 +91,7 @@
- } cli_options;
-
- /* global options. parse_options gives it sane values, everything else reads from it */
--cli_options opts;
-+extern cli_options opts;
-
- typedef struct option option_t;
-
---- a/src/options.c
-+++ b/src/options.c
-@@ -16,6 +16,8 @@
- #include "print.h"
- #include "util.h"
-
-+cli_options opts;
-+
- const char *color_line_number = "\033[1;33m"; /* bold yellow */
- const char *color_match = "\033[30;43m"; /* black with yellow background */
- const char *color_path = "\033[1;32m"; /* bold green */
---- a/src/util.h
-+++ b/src/util.h
-@@ -12,7 +12,7 @@
- #include "log.h"
- #include "options.h"
-
--FILE *out_fd;
-+extern FILE *out_fd;
-
- #ifndef TRUE
- #define TRUE 1
-@@ -51,7 +51,7 @@
- } ag_stats;
-
-
--ag_stats stats;
-+extern ag_stats stats;
-
- /* Union to translate between chars and words without violating strict aliasing */
- typedef union {
---- a/src/util.c
-+++ b/src/util.c
-@@ -15,6 +15,10 @@
- #define getc_unlocked(x) getc(x)
- #endif
-
-+FILE *out_fd;
-+
-+ag_stats stats;
-+
- #define CHECK_AND_RETURN(ptr) \
- if (ptr == NULL) { \
- die("Memory allocation failed."); \
---- a/src/ignore.c
-+++ b/src/ignore.c
-@@ -22,6 +22,8 @@
-
- /* TODO: build a huge-ass list of files we want to ignore by default (build cache stuff, pyc files, etc) */
-
-+ignores *root_ignores;
-+
- const char *evil_hardcoded_ignore_files[] = {
- ".",
- "..",
---- a/src/ignore.h
-+++ b/src/ignore.h
-@@ -29,7 +29,7 @@
- };
- typedef struct ignores ignores;
-
--ignores *root_ignores;
-+extern ignores *root_ignores;
-
- extern const char *evil_hardcoded_ignore_files[];
- extern const char *ignore_pattern_files[];
diff --git a/sys-apps/the_silver_searcher/metadata.xml b/sys-apps/the_silver_searcher/metadata.xml
index 8395d00a1c03..0f71fdbbec56 100644
--- a/sys-apps/the_silver_searcher/metadata.xml
+++ b/sys-apps/the_silver_searcher/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>wraeth@gentoo.org</email>
- <name>Sam Jorna</name>
- </maintainer>
- <upstream>
- <remote-id type="github">ggreer/the_silver_searcher</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ggreer/the_silver_searcher</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/the_silver_searcher/the_silver_searcher-2.0.0.ebuild b/sys-apps/the_silver_searcher/the_silver_searcher-2.0.0.ebuild
deleted file mode 100644
index 6e62890da072..000000000000
--- a/sys-apps/the_silver_searcher/the_silver_searcher-2.0.0.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools bash-completion-r1
-
-DESCRIPTION="A code-searching tool similar to ack, but faster"
-HOMEPAGE="https://github.com/ggreer/the_silver_searcher"
-SRC_URI="https://github.com/ggreer/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ~mips ~ppc ~ppc64 x86"
-IUSE="lzma test zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-libs/libpcre
- lzma? ( app-arch/xz-utils )
- zlib? ( sys-libs/zlib )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- test? (
- dev-util/cram
- dev-vcs/git
- )"
-
-DOCS="README.md"
-
-PATCHES=( "${FILESDIR}"/${PN}-fno-common.patch )
-
-src_prepare() {
- sed '/^dist_bashcomp/d' -i Makefile.am || die
-
- default
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable lzma) \
- $(use_enable zlib)
-}
-
-src_test() {
- cram -v tests/*.t || die "tests failed"
-}
-
-src_install() {
- default
- newbashcomp ag.bashcomp.sh ag
-}
diff --git a/sys-apps/the_silver_searcher/the_silver_searcher-2.1.0.ebuild b/sys-apps/the_silver_searcher/the_silver_searcher-2.1.0.ebuild
deleted file mode 100644
index 9643faccd4af..000000000000
--- a/sys-apps/the_silver_searcher/the_silver_searcher-2.1.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools bash-completion-r1
-
-DESCRIPTION="A code-searching tool similar to ack, but faster"
-HOMEPAGE="https://github.com/ggreer/the_silver_searcher"
-SRC_URI="https://github.com/ggreer/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE="lzma test zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-libs/libpcre
- lzma? ( app-arch/xz-utils )
- zlib? ( sys-libs/zlib )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- test? (
- dev-util/cram
- dev-vcs/git
- )"
-
-DOCS="README.md"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.1.0-lzma.patch
- "${FILESDIR}"/${PN}-fno-common.patch
-)
-
-src_prepare() {
- sed '/^dist_bashcomp/d' -i Makefile.am || die
-
- default
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable lzma) \
- $(use_enable zlib)
-}
-
-src_test() {
- cram -v tests/*.t || die "tests failed"
-}
-
-src_install() {
- default
- newbashcomp ag.bashcomp.sh ag
-}
diff --git a/sys-apps/the_silver_searcher/the_silver_searcher-2.2.0.ebuild b/sys-apps/the_silver_searcher/the_silver_searcher-2.2.0.ebuild
deleted file mode 100644
index 9643faccd4af..000000000000
--- a/sys-apps/the_silver_searcher/the_silver_searcher-2.2.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools bash-completion-r1
-
-DESCRIPTION="A code-searching tool similar to ack, but faster"
-HOMEPAGE="https://github.com/ggreer/the_silver_searcher"
-SRC_URI="https://github.com/ggreer/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE="lzma test zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-libs/libpcre
- lzma? ( app-arch/xz-utils )
- zlib? ( sys-libs/zlib )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- test? (
- dev-util/cram
- dev-vcs/git
- )"
-
-DOCS="README.md"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.1.0-lzma.patch
- "${FILESDIR}"/${PN}-fno-common.patch
-)
-
-src_prepare() {
- sed '/^dist_bashcomp/d' -i Makefile.am || die
-
- default
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable lzma) \
- $(use_enable zlib)
-}
-
-src_test() {
- cram -v tests/*.t || die "tests failed"
-}
-
-src_install() {
- default
- newbashcomp ag.bashcomp.sh ag
-}
diff --git a/sys-apps/the_silver_searcher/the_silver_searcher-2.2.0_p20201217-r2.ebuild b/sys-apps/the_silver_searcher/the_silver_searcher-2.2.0_p20201217-r2.ebuild
new file mode 100644
index 000000000000..1b9f8c8a60bb
--- /dev/null
+++ b/sys-apps/the_silver_searcher/the_silver_searcher-2.2.0_p20201217-r2.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools bash-completion-r1 flag-o-matic vcs-snapshot
+
+COMMIT="a61f1780b64266587e7bc30f0f5f71c6cca97c0f"
+
+DESCRIPTION="A code-searching tool similar to ack, but faster"
+HOMEPAGE="https://github.com/ggreer/the_silver_searcher"
+SRC_URI="https://github.com/ggreer/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
+IUSE="lzma test zlib"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-libs/libpcre
+ lzma? ( app-arch/xz-utils )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ test? (
+ dev-util/cram
+ dev-vcs/git
+ )"
+
+DOCS="README.md"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.1.0-lzma.patch
+ "${FILESDIR}"/${PN}-2.2.0-no_lfs64.patch
+)
+
+src_prepare() {
+ sed '/^dist_bashcomp/d' -i Makefile.am || die
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # false positive TEXTRELs on riscv
+ # https://bugs.gentoo.org/797355
+ append-flags -fPIC
+
+ econf \
+ $(use_enable lzma) \
+ $(use_enable zlib)
+}
+
+src_test() {
+ cram -v tests/*.t || die "tests failed"
+}
+
+src_install() {
+ default
+ newbashcomp ag.bashcomp.sh ag
+}
diff --git a/sys-apps/thunderbolt-software-user-space/metadata.xml b/sys-apps/thunderbolt-software-user-space/metadata.xml
index 8fb8d2b55b7d..194d9e70626b 100644
--- a/sys-apps/thunderbolt-software-user-space/metadata.xml
+++ b/sys-apps/thunderbolt-software-user-space/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
<name>Jonas Licht</name>
<email>jonas.licht@gmail.com</email>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/timer_entropyd/Manifest b/sys-apps/timer_entropyd/Manifest
deleted file mode 100644
index 79ef5626fdce..000000000000
--- a/sys-apps/timer_entropyd/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST timer_entropyd-0.3.tgz 8329 BLAKE2B 96af82883eeb5a136e1f059afb067b6df46e5940fe0da5b4c161047c0e4e40a9885454e3faa926b864c2db64cb6b481d5dfed7d8ba4f28d5c8691959e41d26d2 SHA512 bdfedb594ee32daf7fb961a703842ca3479de158fc19bd75664b183e44bcf2ef3e74645cc6097f340834933db6f9133710df7d433ac062b2375494de5c052dcc
diff --git a/sys-apps/timer_entropyd/files/timer_entropyd-0.1-syslog.patch b/sys-apps/timer_entropyd/files/timer_entropyd-0.1-syslog.patch
deleted file mode 100644
index 91be4a2ffdf0..000000000000
--- a/sys-apps/timer_entropyd/files/timer_entropyd-0.1-syslog.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 51dc916e4466d0033728dd14f318203f995b3ad0 Mon Sep 17 00:00:00 2001
-From: Jeremy Olexa <darkside@gentoo.org>
-Date: Tue, 5 Apr 2011 14:19:49 +0000
-Subject: [PATCH] Move syslog call to ifdef _DEBUG
-
-In order to prevent logfile spamming (once every 7 seconds), move the
-syslog call only be used if compiled with -D_DEBUG
----
- main.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/main.c b/main.c
-index 13b95dd..781b321 100644
---- a/main.c
-+++ b/main.c
-@@ -66,8 +66,8 @@ int main(int argc, char *argv[])
-
- kernel_rng_add_entropy(bytes, sizeof(bytes), cur_n_bits);
-
-- syslog(LOG_DEBUG, "added %d bits of entropy data", cur_n_bits);
- #ifdef _DEBUG
-+ syslog(LOG_DEBUG, "added %d bits of entropy data", cur_n_bits);
- printf("added %d bits of entropy data\n", cur_n_bits);
- #endif
-
---
-1.7.3.4
-
diff --git a/sys-apps/timer_entropyd/files/timer_entropyd.initd.1 b/sys-apps/timer_entropyd/files/timer_entropyd.initd.1
deleted file mode 100644
index 57178ca4b36f..000000000000
--- a/sys-apps/timer_entropyd/files/timer_entropyd.initd.1
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-command=/usr/libexec/timer_entropyd
-
-depend() {
- need localmount
- before net
- use logger
-
- provide entropy
-}
diff --git a/sys-apps/timer_entropyd/metadata.xml b/sys-apps/timer_entropyd/metadata.xml
deleted file mode 100644
index 748ac538a47e..000000000000
--- a/sys-apps/timer_entropyd/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
- </maintainer>
- <use>
- <flag name="debug">Enable printf debugging and logging to the syslog at DEBUG level</flag>
- </use>
-</pkgmetadata>
diff --git a/sys-apps/timer_entropyd/timer_entropyd-0.3.ebuild b/sys-apps/timer_entropyd/timer_entropyd-0.3.ebuild
deleted file mode 100644
index 041a72467d56..000000000000
--- a/sys-apps/timer_entropyd/timer_entropyd-0.3.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="A timer-based entropy generator"
-HOMEPAGE="http://www.vanheusden.com/te/"
-SRC_URI="http://www.vanheusden.com/te/${P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~mips x86"
-IUSE="debug selinux"
-
-RDEPEND="selinux? ( sec-policy/selinux-entropyd )"
-
-src_prepare() {
- sed -i -e 's:-O2::' Makefile || die
- epatch "${FILESDIR}"/${PN}-0.1-syslog.patch
-}
-
-src_compile() {
- use debug && append-cppflags -D_DEBUG
-
- tc-export CC
- emake DEBUG=
-}
-
-src_install() {
- exeinto /usr/libexec
- doexe ${PN}
- dodoc Changes readme.txt
- newinitd "${FILESDIR}/timer_entropyd.initd.1" ${PN}
-}
-
-pkg_postinst() {
- elog "To start ${PN} at boot do rc-update add ${PN} default"
- elog "To start ${PN} now do /etc/init.d/${PN} start"
- elog "To check the amount of entropy, cat /proc/sys/kernel/random/entropy_avail"
-}
diff --git a/sys-apps/tomoyo-tools/metadata.xml b/sys-apps/tomoyo-tools/metadata.xml
index b844e843cf6b..747054053788 100644
--- a/sys-apps/tomoyo-tools/metadata.xml
+++ b/sys-apps/tomoyo-tools/metadata.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">tomoyo</remote-id>
+ <remote-id type="osdn">tomoyo</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214-r1.ebuild b/sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214-r1.ebuild
new file mode 100644
index 000000000000..025594e4dd37
--- /dev/null
+++ b/sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_P="${P/_p/-}"
+DESCRIPTION="TOMOYO Linux tools"
+HOMEPAGE="http://tomoyo.sourceforge.jp/"
+SRC_URI="mirror://sourceforge.jp/tomoyo/53357/${MY_P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="sys-libs/ncurses:="
+RDEPEND="${DEPEND}
+ !sys-apps/ccs-tools"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-warnings.patch
+)
+
+src_prepare() {
+ default
+
+ # Fix libdir
+ sed -i \
+ -e "s:/usr/lib:/usr/$(get_libdir):g" \
+ Include.make || die
+
+ # tinfo
+ sed -i \
+ -e 's|-lncurses|$(shell ${PKG_CONFIG} --libs ncurses)|g' \
+ usr_sbin/Makefile || die
+
+ tc-export CC PKG_CONFIG
+}
+
+src_install() {
+ dodir /usr/"$(get_libdir)"
+
+ emake INSTALLDIR="${D}" install
+
+ newenvd - 50${PN} <<- _EOF_
+ CONFIG_PROTECT=/usr/$(get_libdir)/tomoyo/conf
+ _EOF_
+
+ # Fix out-of-place readme and license
+ rm "${ED}"/usr/$(get_libdir)/tomoyo/{COPYING.tomoyo,README.tomoyo} || die
+ dodoc README.tomoyo
+}
+
+pkg_postinst() {
+ elog "Execute the following command to setup the initial policy configuration:"
+ elog
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog
+ elog "For more information, please visit the following."
+ elog
+ elog "http://tomoyo.sourceforge.jp/"
+}
+
+pkg_config() {
+ /usr/$(get_libdir)/tomoyo/init_policy
+}
diff --git a/sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214.ebuild b/sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214.ebuild
deleted file mode 100644
index 998598543f43..000000000000
--- a/sys-apps/tomoyo-tools/tomoyo-tools-2.5.0_p20130214.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib toolchain-funcs
-
-MY_P="${P/_p/-}"
-DESCRIPTION="TOMOYO Linux tools"
-HOMEPAGE="http://tomoyo.sourceforge.jp/"
-SRC_URI="mirror://sourceforge.jp/tomoyo/53357/${MY_P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-COMMON_DEPEND="sys-libs/ncurses"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig"
-RDEPEND="${COMMON_DEPEND}
- !sys-apps/ccs-tools"
-
-S="${WORKDIR}/${PN}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-warnings.patch
-
- # Fix libdir
- sed -i \
- -e "s:/usr/lib:/usr/$(get_libdir):g" \
- Include.make || die
-
- # tinfo
- sed -i \
- -e 's|-lncurses|$(shell ${PKG_CONFIG} --libs ncurses)|g' \
- usr_sbin/Makefile || die
-
- echo "CONFIG_PROTECT=\"/usr/$(get_libdir)/tomoyo/conf\"" > "${T}/50${PN}"
-
- tc-export CC PKG_CONFIG
-}
-
-src_install() {
- dodir /usr/"$(get_libdir)"
-
- emake INSTALLDIR="${D}" install
-
- doenvd "${T}/50${PN}"
-
- # Fix out-of-place readme and license
- rm "${D}"/usr/$(get_libdir)/tomoyo/{COPYING.tomoyo,README.tomoyo} || die
- dodoc README.tomoyo
-}
-
-pkg_postinst() {
- elog "Execute the following command to setup the initial policy configuration:"
- elog
- elog "emerge --config =${CATEGORY}/${PF}"
- elog
- elog "For more information, please visit the following."
- elog
- elog "http://tomoyo.sourceforge.jp/"
-}
-
-pkg_config() {
- /usr/$(get_libdir)/tomoyo/init_policy
-}
diff --git a/sys-apps/toybox/Manifest b/sys-apps/toybox/Manifest
index c168599c7365..c36a8b393055 100644
--- a/sys-apps/toybox/Manifest
+++ b/sys-apps/toybox/Manifest
@@ -1,3 +1,3 @@
-DIST toybox-0.8.0.tar.gz 975002 BLAKE2B e137c3616d2affaf8b6f234cab49190b98540fe8f954244172f9ca80c749069f85ff8addd94e1018d3680f1a307df54671ee9b01726c5279f340f8fee3669609 SHA512 aeb15a02782cc0b3b46a892e2d82834e5172a7da04e2498eaefec58221305dd24a86aada5ce05978bd4694895ffeb94ae980fd767f4ee00c499b3dd518fd3e20
-DIST toybox-0.8.1.tar.gz 1015363 BLAKE2B a765a133910b7c8d903a1fa95338b8dee1267c3b7430267d47c4157d966256d16c615500acc38428296b9612649fafdaa111a149df7415ac580c01cfdd361025 SHA512 22f91046c75f986e44927ec89feab6c6afa1f614e5b0eae73e43f6ccd5c4328991ad283858fb1a5cb4d697806f38b8ab81782c160860a2c34ecbef3885636d5e
-DIST toybox-0.8.3.tar.gz 1098057 BLAKE2B d962c4fd1c79229ace5a0836b6170e3ce8a5435df660b5306f5dd0aab32f4509b5c3cf5cc87eea597d336c7cdd51ca4895cadd420febeb9ef9270e85909f8dec SHA512 e2c5a22547cbd85bfee84c4aed3016895e4e0eba9b6f3dfc6cdfa0a0d59dfd74203a35389dcd0b2c557dd04eebbb051f9a458762af3abb32b473bd8924ed7b74
+DIST toybox-0.8.10.tar.gz 3534989 BLAKE2B c726cff2e916148b49c17953f25d6d886db77e0fa6ce435373b04bea025edc3f3ba512053d58d5bd3940aca78a9f3eab5d4cb36aaf45569a2ada697553c8602c SHA512 b2c36bc4e41741893a4fe039dd653f552ab987b948f78c1e5d04abb13ffbb8f898af636967739067877afef9ac0af10c259f674acdc4a80084a846fb02742461
+DIST toybox-0.8.8.tar.gz 3492750 BLAKE2B d53864e07392a511e4e861fcf5b0fdc8b43e5d82f13fb9eba62b850053aa547e0e057245062c34d4205019bba6223dff1a514b1bb0dde54734bcd3b1df82b122 SHA512 3ffe4de6b17770ad9c43f98f2c69a110f94e5a85da909f8f770bbc9abaff42a524237b4ffaaa8b9800c8d31f0a8b6d3521f03bfdd0d1260fa421ef2525a34290
+DIST toybox-0.8.9.tar.gz 3517516 BLAKE2B 1c57fe43785c1925762de6d8c3af012d3726b18338b0543ce3c775fefdcf1121327c1486d28786e42aafa5b5e7208475d942a02099715b0cb751e79788326622 SHA512 73a3ec2a0d69b1566e1663e94b2bc7764b9f93e53978725f036f066837ab2769033e8bf17d5550e565656781cacf27d93960dd611ffed5425fa006d1d3104351
diff --git a/sys-apps/toybox/files/toybox-0.8.9-verbose-build-fix.patch b/sys-apps/toybox/files/toybox-0.8.9-verbose-build-fix.patch
new file mode 100644
index 000000000000..d629ffddfe28
--- /dev/null
+++ b/sys-apps/toybox/files/toybox-0.8.9-verbose-build-fix.patch
@@ -0,0 +1,18 @@
+https://github.com/landley/toybox/commit/c5e7495fe46d4b2b2c225f222efc6b9070de2c3a
+
+From c5e7495fe46d4b2b2c225f222efc6b9070de2c3a Mon Sep 17 00:00:00 2001
+From: Rob Landley <rob@landley.net>
+Date: Fri, 13 Jan 2023 11:50:58 -0600
+Subject: [PATCH] Ensure make wrapper sees success return code in verbose mode
+ (V=1)
+
+--- a/scripts/make.sh
++++ b/scripts/make.sh
+@@ -303,4 +303,5 @@ fi
+ # multiplexer binary via truncate-and-write through a symlink.
+ do_loudly chmod 555 "$OUTNAME" || exit 1
+
+-[ -z "$V" ] && echo >&2
++# Ensure make wrapper sees success return code
++[ -z "$V" ] && echo >&2 || true
+
diff --git a/sys-apps/toybox/metadata.xml b/sys-apps/toybox/metadata.xml
index f3de5f693ed8..c8cb0282d622 100644
--- a/sys-apps/toybox/metadata.xml
+++ b/sys-apps/toybox/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">landley/toybox</remote-id>
+ <remote-id type="cpe">cpe:/a:toybox_project:toybox</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/toybox/toybox-0.8.0.ebuild b/sys-apps/toybox/toybox-0.8.0.ebuild
deleted file mode 100644
index 564d2c54b23c..000000000000
--- a/sys-apps/toybox/toybox-0.8.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit multiprocessing savedconfig toolchain-funcs
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/landley/toybox.git"
-else
- SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-# makefile is stupid
-RESTRICT="test"
-
-DESCRIPTION="Common linux commands in a multicall binary"
-HOMEPAGE="https://landley.net/code/toybox/"
-
-# The source code does not explicitly say that it's BSD, but the author has repeatedly said it
-LICENSE="BSD-2"
-SLOT="0"
-IUSE=""
-
-src_prepare() {
- default
- restore_config .config
-}
-
-src_configure() {
- if [ -f .config ]; then
- yes "" | emake -j1 oldconfig > /dev/null
- return 0
- else
- einfo "Could not locate user configfile, so we will save a default one"
- emake -j1 defconfig > /dev/null
- fi
-}
-
-src_compile() {
- tc-export CC STRIP
- export HOSTCC=$(tc-getBUILD_CC)
- unset CROSS_COMPILE
- export CPUS=$(makeopts_jobs)
- emake V=1
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- save_config .config
- newbin generated/unstripped/toybox toybox
-}
diff --git a/sys-apps/toybox/toybox-0.8.1.ebuild b/sys-apps/toybox/toybox-0.8.1.ebuild
deleted file mode 100644
index d334e3570448..000000000000
--- a/sys-apps/toybox/toybox-0.8.1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit multiprocessing savedconfig toolchain-funcs
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/landley/toybox.git"
-else
- SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-# makefile is stupid
-RESTRICT="test"
-
-DESCRIPTION="Common linux commands in a multicall binary"
-HOMEPAGE="https://landley.net/code/toybox/"
-
-# The source code does not explicitly say that it's BSD, but the author has repeatedly said it
-LICENSE="BSD-2"
-SLOT="0"
-IUSE=""
-
-src_prepare() {
- default
- restore_config .config
-}
-
-src_configure() {
- tc-export CC STRIP
- export HOSTCC="$(tc-getBUILD_CC)"
- if [ -f .config ]; then
- yes "" | emake -j1 oldconfig > /dev/null
- return 0
- else
- einfo "Could not locate user configfile, so we will save a default one"
- emake -j1 defconfig > /dev/null
- fi
-}
-
-src_compile() {
- unset CROSS_COMPILE
- export CPUS=$(makeopts_jobs)
- emake V=1
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- save_config .config
- newbin generated/unstripped/toybox toybox
-}
diff --git a/sys-apps/toybox/toybox-0.8.10.ebuild b/sys-apps/toybox/toybox-0.8.10.ebuild
new file mode 100644
index 000000000000..35f861185918
--- /dev/null
+++ b/sys-apps/toybox/toybox-0.8.10.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing savedconfig toolchain-funcs
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/landley/toybox.git"
+else
+ SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+DESCRIPTION="Common linux commands in a multicall binary"
+HOMEPAGE="https://landley.net/code/toybox/"
+
+LICENSE="0BSD"
+SLOT="0"
+
+DEPEND="virtual/libcrypt:="
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ restore_config .config
+}
+
+src_configure() {
+ tc-export CC STRIP
+ export HOSTCC="$(tc-getBUILD_CC)"
+ # Respect CFLAGS
+ export OPTIMIZE="${CFLAGS}"
+
+ if [[ -f .config ]]; then
+ yes "" | emake -j1 oldconfig > /dev/null
+ return 0
+ else
+ einfo "Could not locate user configfile, so we will save a default one"
+ emake -j1 defconfig > /dev/null
+ fi
+}
+
+src_compile() {
+ unset CROSS_COMPILE
+ export CPUS=$(makeopts_jobs)
+ emake V=1 NOSTRIP=1
+}
+
+src_test() {
+ emake V=1 tests
+}
+
+src_install() {
+ save_config .config
+ dobin toybox
+}
diff --git a/sys-apps/toybox/toybox-0.8.3.ebuild b/sys-apps/toybox/toybox-0.8.3.ebuild
deleted file mode 100644
index 616f3fbf49a8..000000000000
--- a/sys-apps/toybox/toybox-0.8.3.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit multiprocessing savedconfig toolchain-funcs
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/landley/toybox.git"
-else
- SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-# makefile is stupid
-RESTRICT="test"
-
-DESCRIPTION="Common linux commands in a multicall binary"
-HOMEPAGE="https://landley.net/code/toybox/"
-
-# The source code does not explicitly say that it's BSD, but the author has repeatedly said it
-LICENSE="BSD-2"
-SLOT="0"
-IUSE=""
-
-src_prepare() {
- default
- restore_config .config
-}
-
-src_configure() {
- tc-export CC STRIP
- export HOSTCC="$(tc-getBUILD_CC)"
- if [ -f .config ]; then
- yes "" | emake -j1 oldconfig > /dev/null
- return 0
- else
- einfo "Could not locate user configfile, so we will save a default one"
- emake -j1 defconfig > /dev/null
- fi
-}
-
-src_compile() {
- unset CROSS_COMPILE
- export CPUS=$(makeopts_jobs)
- emake V=1
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- save_config .config
- newbin generated/unstripped/toybox toybox
-}
diff --git a/sys-apps/toybox/toybox-0.8.8.ebuild b/sys-apps/toybox/toybox-0.8.8.ebuild
new file mode 100644
index 000000000000..917c870334f9
--- /dev/null
+++ b/sys-apps/toybox/toybox-0.8.8.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multiprocessing savedconfig toolchain-funcs
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/landley/toybox.git"
+else
+ SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+DESCRIPTION="Common linux commands in a multicall binary"
+HOMEPAGE="https://landley.net/code/toybox/"
+
+LICENSE="0BSD"
+SLOT="0"
+
+DEPEND="virtual/libcrypt:="
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ restore_config .config
+}
+
+src_configure() {
+ tc-export CC STRIP
+ export HOSTCC="$(tc-getBUILD_CC)"
+ # Respect CFLAGS
+ export OPTIMIZE="${CFLAGS}"
+
+ if [[ -f .config ]]; then
+ yes "" | emake -j1 oldconfig > /dev/null
+ return 0
+ else
+ einfo "Could not locate user configfile, so we will save a default one"
+ emake -j1 defconfig > /dev/null
+ fi
+}
+
+src_compile() {
+ unset CROSS_COMPILE
+ export CPUS=$(makeopts_jobs)
+ emake V=1
+}
+
+src_test() {
+ emake tests
+}
+
+src_install() {
+ save_config .config
+ newbin toybox toybox
+}
diff --git a/sys-apps/toybox/toybox-0.8.9.ebuild b/sys-apps/toybox/toybox-0.8.9.ebuild
new file mode 100644
index 000000000000..2d47626cc148
--- /dev/null
+++ b/sys-apps/toybox/toybox-0.8.9.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing savedconfig toolchain-funcs
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/landley/toybox.git"
+else
+ SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+DESCRIPTION="Common linux commands in a multicall binary"
+HOMEPAGE="https://landley.net/code/toybox/"
+
+LICENSE="0BSD"
+SLOT="0"
+
+DEPEND="virtual/libcrypt:="
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-verbose-build-fix.patch
+)
+
+src_prepare() {
+ default
+ restore_config .config
+}
+
+src_configure() {
+ tc-export CC STRIP
+ export HOSTCC="$(tc-getBUILD_CC)"
+ # Respect CFLAGS
+ export OPTIMIZE="${CFLAGS}"
+
+ if [[ -f .config ]]; then
+ yes "" | emake -j1 oldconfig > /dev/null
+ return 0
+ else
+ einfo "Could not locate user configfile, so we will save a default one"
+ emake -j1 defconfig > /dev/null
+ fi
+}
+
+src_compile() {
+ unset CROSS_COMPILE
+ export CPUS=$(makeopts_jobs)
+ emake V=1 NOSTRIP=1
+}
+
+src_test() {
+ emake V=1 tests
+}
+
+src_install() {
+ save_config .config
+ dobin toybox
+}
diff --git a/sys-apps/toybox/toybox-9999.ebuild b/sys-apps/toybox/toybox-9999.ebuild
index 68a184db8ebe..35f861185918 100644
--- a/sys-apps/toybox/toybox-9999.ebuild
+++ b/sys-apps/toybox/toybox-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
inherit multiprocessing savedconfig toolchain-funcs
@@ -10,19 +10,17 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/landley/toybox.git"
else
SRC_URI="https://landley.net/code/toybox/downloads/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~arm64 ~x86"
fi
-# makefile is stupid
-RESTRICT="test"
-
DESCRIPTION="Common linux commands in a multicall binary"
HOMEPAGE="https://landley.net/code/toybox/"
-# The source code does not explicitly say that it's BSD, but the author has repeatedly said it
-LICENSE="BSD-2"
+LICENSE="0BSD"
SLOT="0"
-IUSE=""
+
+DEPEND="virtual/libcrypt:="
+RDEPEND="${DEPEND}"
src_prepare() {
default
@@ -32,7 +30,10 @@ src_prepare() {
src_configure() {
tc-export CC STRIP
export HOSTCC="$(tc-getBUILD_CC)"
- if [ -f .config ]; then
+ # Respect CFLAGS
+ export OPTIMIZE="${CFLAGS}"
+
+ if [[ -f .config ]]; then
yes "" | emake -j1 oldconfig > /dev/null
return 0
else
@@ -44,14 +45,14 @@ src_configure() {
src_compile() {
unset CROSS_COMPILE
export CPUS=$(makeopts_jobs)
- emake V=1
+ emake V=1 NOSTRIP=1
}
src_test() {
- emake test
+ emake V=1 tests
}
src_install() {
save_config .config
- newbin generated/unstripped/toybox toybox
+ dobin toybox
}
diff --git a/sys-apps/tuned/Manifest b/sys-apps/tuned/Manifest
index 42b4090aa231..2dec83d7e17f 100644
--- a/sys-apps/tuned/Manifest
+++ b/sys-apps/tuned/Manifest
@@ -1 +1,2 @@
-DIST tuned-2.13.0.tar.gz 193816 BLAKE2B 1e51a9da855f54db9ac8ed6e764c091d513c1101771422a62c7c501dc3c8741430eb3503803b408709868d16d4791fbedb9dbc088b36fb693f065a1b6054fa15 SHA512 d81b0a80f911fe808ca324319da3e42c3c15196c0c37343d33b45c2b34f33e205e2913d77ffda8598379a91ef72ab73d88d7b83a4684b6a067e3f36d98a85927
+DIST tuned-2.22.0.tar.gz 254613 BLAKE2B 5354181ab300125d7011aa12c208bc9973c19bd34018ba83d772a9e2fa1598cb6582f952afb35d586bb24a2e3af077bdff22fa6e1e39fcdbe94bee090b2032a2 SHA512 653f946e8eff57eaa7e26b05c9215d60c8dcec6760b4a41a2855328e86b65f4dcbc0b2fd7d9f9355d00aae93f601c035a38d4e1611f30cb5003b417e31bea4dc
+DIST tuned-2.22.1.tar.gz 254690 BLAKE2B 1942aed859425494df702a45900d6e0c26c799f19427cb1ff18160ed49cf8ac78ae3b73a39f1120a1dc5d344c3c1e61298085c54655aa13052600b946cb16a41 SHA512 160b1cab5477d84a0da89f584fe646b32162527a138d9b5957799c5f26598b98449733040710133a1c5bdd5588eee72549131ff163e777a105fc24e92edc6d8f
diff --git a/sys-apps/tuned/metadata.xml b/sys-apps/tuned/metadata.xml
index f7a37bd48e1a..30ce2dba85be 100644
--- a/sys-apps/tuned/metadata.xml
+++ b/sys-apps/tuned/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>dlan@gentoo.org</email>
diff --git a/sys-apps/tuned/tuned-2.13.0-r1.ebuild b/sys-apps/tuned/tuned-2.13.0-r1.ebuild
deleted file mode 100644
index 89a8dadb552a..000000000000
--- a/sys-apps/tuned/tuned-2.13.0-r1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit python-single-r1 xdg-utils
-
-DESCRIPTION="Daemon for monitoring and adaptive tuning of system devices"
-HOMEPAGE="https://github.com/redhat-performance/tuned"
-SRC_URI="https://github.com/redhat-performance/tuned/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- dev-python/configobj[${PYTHON_MULTI_USEDEP}]
- dev-python/decorator[${PYTHON_MULTI_USEDEP}]
- dev-python/pyudev[${PYTHON_MULTI_USEDEP}]
- dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
- dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
- dev-python/python-linux-procfs[${PYTHON_MULTI_USEDEP}]
- ')"
-
-RDEPEND="
- ${DEPEND}
- sys-apps/dbus
- sys-apps/ethtool
- sys-power/powertop
- dev-util/systemtap"
-
-RESTRICT="test"
-
-src_prepare() {
- default
-
- sed -i \
- -e "/^export DOCDIR/s/$/&\-\$(VERSION)/g" \
- -e "/\$(DESTDIR)\/run\/tuned/d" \
- -e "/\$(DESTDIR)\/var\/lib\/tuned/d" \
- -e "/\$(DESTDIR)\/var\/log\/tuned/d" \
- Makefile || die
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}/${PN}.initd" "${PN}"
- python_fix_shebang "${D}"
- python_optimize
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
-}
diff --git a/sys-apps/tuned/tuned-2.22.0.ebuild b/sys-apps/tuned/tuned-2.22.0.ebuild
new file mode 100644
index 000000000000..574731427297
--- /dev/null
+++ b/sys-apps/tuned/tuned-2.22.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit optfeature python-single-r1 tmpfiles xdg-utils
+
+DESCRIPTION="Daemon for monitoring and adaptive tuning of system devices"
+HOMEPAGE="https://github.com/redhat-performance/tuned"
+SRC_URI="https://github.com/redhat-performance/tuned/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/configobj[${PYTHON_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/python-linux-procfs[${PYTHON_USEDEP}]
+ dev-python/pyudev[${PYTHON_USEDEP}]
+ ')"
+
+RDEPEND="
+ ${DEPEND}
+ app-emulation/virt-what
+ dev-debug/systemtap
+ sys-apps/dbus
+ sys-apps/ethtool
+ sys-power/powertop
+ "
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e "/^PYTHON/s:/usr/bin/python3:${EPREFIX}/usr/bin/${EPYTHON}:" \
+ -e "/^export DOCDIR/s/$/&\-\$(VERSION)/g" \
+ -e "/\$(DESTDIR)\/run\/tuned/d" \
+ -e "/\$(DESTDIR)\/var\/lib\/tuned/d" \
+ -e "/\$(DESTDIR)\/var\/log\/tuned/d" \
+ Makefile || die
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+ python_fix_shebang "${D}"
+ python_optimize
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+ xdg_icon_cache_update
+
+ optfeature_header
+ optfeature "Optimize for power saving by spinning-down rotational disks" sys-apps/hdparm
+ optfeature "Get hardware info" sys-apps/dmidecode
+ optfeature "Optimize network txqueuelen" sys-apps/iproute2
+}
diff --git a/sys-apps/tuned/tuned-2.22.1.ebuild b/sys-apps/tuned/tuned-2.22.1.ebuild
new file mode 100644
index 000000000000..574731427297
--- /dev/null
+++ b/sys-apps/tuned/tuned-2.22.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit optfeature python-single-r1 tmpfiles xdg-utils
+
+DESCRIPTION="Daemon for monitoring and adaptive tuning of system devices"
+HOMEPAGE="https://github.com/redhat-performance/tuned"
+SRC_URI="https://github.com/redhat-performance/tuned/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/configobj[${PYTHON_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/python-linux-procfs[${PYTHON_USEDEP}]
+ dev-python/pyudev[${PYTHON_USEDEP}]
+ ')"
+
+RDEPEND="
+ ${DEPEND}
+ app-emulation/virt-what
+ dev-debug/systemtap
+ sys-apps/dbus
+ sys-apps/ethtool
+ sys-power/powertop
+ "
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e "/^PYTHON/s:/usr/bin/python3:${EPREFIX}/usr/bin/${EPYTHON}:" \
+ -e "/^export DOCDIR/s/$/&\-\$(VERSION)/g" \
+ -e "/\$(DESTDIR)\/run\/tuned/d" \
+ -e "/\$(DESTDIR)\/var\/lib\/tuned/d" \
+ -e "/\$(DESTDIR)\/var\/log\/tuned/d" \
+ Makefile || die
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+ python_fix_shebang "${D}"
+ python_optimize
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+ xdg_icon_cache_update
+
+ optfeature_header
+ optfeature "Optimize for power saving by spinning-down rotational disks" sys-apps/hdparm
+ optfeature "Get hardware info" sys-apps/dmidecode
+ optfeature "Optimize network txqueuelen" sys-apps/iproute2
+}
diff --git a/sys-apps/uam/metadata.xml b/sys-apps/uam/metadata.xml
index 2cdff751d2ae..580155d522cb 100644
--- a/sys-apps/uam/metadata.xml
+++ b/sys-apps/uam/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
@@ -15,7 +15,7 @@
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
- <bugs-to>https://github.com/mgorny/uam/issues/</bugs-to>
- <remote-id type="github">mgorny/uam</remote-id>
+ <bugs-to>https://github.com/projg2/uam/issues/</bugs-to>
+ <remote-id type="github">projg2/uam</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-apps/uam/uam-0.3.2-r1.ebuild b/sys-apps/uam/uam-0.3.2-r1.ebuild
deleted file mode 100644
index e22ef2bb8000..000000000000
--- a/sys-apps/uam/uam-0.3.2-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit udev
-
-DESCRIPTION="Simple udev-based automounter for removable USB media"
-HOMEPAGE="https://github.com/mgorny/uam/"
-SRC_URI="https://github.com/mgorny/uam/releases/download/${P}/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- acct-group/plugdev
- virtual/udev"
-DEPEND="virtual/pkgconfig"
-
-pkg_postinst() {
- elog "To be able to access uam-mounted filesystems, you have to be"
- elog "a member of the 'plugdev' group."
- elog
- elog "Note that uam doesn't provide any way to allow unprivileged user"
- elog "to manually umount devices. The upstream suggested solution"
- elog "is to use [sys-apps/pmount]. If you don't feel like installing"
- elog "additional tools, remember to sync before removing your USB stick."
- elog
- elog "If you'd like uam to mount ejectable media like CDs/DVDs, you need"
- elog "to enable in-kernel media polling, e.g.:"
- elog " echo 5000 > /sys/module/block/parameters/events_dfl_poll_msecs"
- elog "where 5000 would mean a poll will occur every 5 seconds."
- elog
- elog "If you'd like to receive libnotify-based notifications, you need"
- elog "to install the [x11-misc/sw-notify-send] tool."
-
- udev_reload
-}
diff --git a/sys-apps/uam/uam-0.3.2-r2.ebuild b/sys-apps/uam/uam-0.3.2-r2.ebuild
new file mode 100644
index 000000000000..2aea00b7b611
--- /dev/null
+++ b/sys-apps/uam/uam-0.3.2-r2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit udev
+
+DESCRIPTION="Simple udev-based automounter for removable USB media"
+HOMEPAGE="https://github.com/projg2/uam/"
+SRC_URI="https://github.com/projg2/uam/releases/download/${P}/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="
+ acct-group/plugdev
+ virtual/udev"
+BDEPEND="virtual/pkgconfig"
+
+pkg_postinst() {
+ elog "To be able to access uam-mounted filesystems, you have to be"
+ elog "a member of the 'plugdev' group."
+ elog
+ elog "Note that uam doesn't provide any way to allow unprivileged user"
+ elog "to manually umount devices. The upstream suggested solution"
+ elog "is to use [sys-apps/pmount]. If you don't feel like installing"
+ elog "additional tools, remember to sync before removing your USB stick."
+ elog
+ elog "If you'd like uam to mount ejectable media like CDs/DVDs, you need"
+ elog "to enable in-kernel media polling, e.g.:"
+ elog " echo 5000 > /sys/module/block/parameters/events_dfl_poll_msecs"
+ elog "where 5000 would mean a poll will occur every 5 seconds."
+ elog
+ elog "If you'd like to receive libnotify-based notifications, you need"
+ elog "to install the [x11-misc/sw-notify-send] tool."
+
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/uam/uam-9999.ebuild b/sys-apps/uam/uam-9999.ebuild
deleted file mode 100644
index 3a247b31bd2c..000000000000
--- a/sys-apps/uam/uam-9999.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools git-r3 udev
-
-DESCRIPTION="Simple udev-based automounter for removable USB media"
-HOMEPAGE="https://github.com/mgorny/uam/"
-SRC_URI=""
-EGIT_REPO_URI="https://github.com/mgorny/uam.git"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS=""
-IUSE=""
-
-RDEPEND="
- acct-group/plugdev
- virtual/udev"
-DEPEND="virtual/pkgconfig"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-pkg_postinst() {
- elog "To be able to access uam-mounted filesystems, you have to be"
- elog "a member of the 'plugdev' group."
- elog
- elog "Note that uam doesn't provide any way to allow unprivileged user"
- elog "to manually umount devices. The upstream suggested solution"
- elog "is to use [sys-apps/pmount]. If you don't feel like installing"
- elog "additional tools, remember to sync before removing your USB stick."
- elog
- elog "If you'd like uam to mount ejectable media like CDs/DVDs, you need"
- elog "to enable in-kernel media polling, e.g.:"
- elog " echo 5000 > /sys/module/block/parameters/events_dfl_poll_msecs"
- elog "where 5000 would mean a poll will occur every 5 seconds."
- elog
- elog "If you'd like to receive libnotify-based notifications, you need"
- elog "to install the [x11-misc/sw-notify-send] tool."
-
- udev_reload
-}
diff --git a/sys-apps/ucspi-proxy/Manifest b/sys-apps/ucspi-proxy/Manifest
index 39f73ef21ea0..3818bfe853b8 100644
--- a/sys-apps/ucspi-proxy/Manifest
+++ b/sys-apps/ucspi-proxy/Manifest
@@ -1,2 +1 @@
-DIST ucspi-proxy-0.99.tar.gz 35537 BLAKE2B 0b3f809b027dae6d83a39aa7b83d0747e2046409b97ba2de678d49a3611ea08f82ea9f30f13a3cd67dbc06de881551d282b14aba67addcf294e64156d2d6d5bc SHA512 5bed82bd0db2501c3de8b38e23a07c39bf9937b9ce95166cf1822a6bd5551aec945dc01d6ba716d7ce35f4aa7f2a126d860d31f7df2d807f1f4eb5e355e93164
DIST ucspi-proxy-1.1.tar.gz 38351 BLAKE2B 395dc3d154665c8c65c2d35f6e666543f5f919497fed441aca7223dee4983fe165911e8bf1571aa11fa10ba6adb480b4da853773b5a2be556ae59ad6d1708328 SHA512 c9e6f98a73bf6868341b0d5c1653d0b9107aa92c21e8fe96c47a9ca0ae41b247aa10bccd819d84bdcf4e8d5902c1955bfbe9e4e3256d5303578cd3337220139c
diff --git a/sys-apps/ucspi-proxy/metadata.xml b/sys-apps/ucspi-proxy/metadata.xml
index 118cf69936e1..51b9d9fe2549 100644
--- a/sys-apps/ucspi-proxy/metadata.xml
+++ b/sys-apps/ucspi-proxy/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+<!-- maintainer-needed -->
<longdescription lang="en">
This package contains a proxy program that passes data back and forth
between two connections set up by a UCSPI server and a UCSPI client.
diff --git a/sys-apps/ucspi-proxy/ucspi-proxy-0.99.ebuild b/sys-apps/ucspi-proxy/ucspi-proxy-0.99.ebuild
deleted file mode 100644
index 28b9fea119e4..000000000000
--- a/sys-apps/ucspi-proxy/ucspi-proxy-0.99.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit toolchain-funcs multilib
-
-DESCRIPTION="proxy program for two connections set up by a UCSPI server and a UCSPI client"
-HOMEPAGE="http://untroubled.org/ucspi-proxy/"
-SRC_URI="http://untroubled.org/ucspi-proxy/archive/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=dev-libs/bglibs-1.106"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- sed -i -e '/^>bin$/ac:::755::ucspi-proxy' INSTHIER
-}
-
-src_configure() {
- echo "$(tc-getCC) ${CFLAGS}" > conf-cc
- echo "$(tc-getCC) ${LDFLAGS}" > conf-ld
- echo "${D}/usr/bin" > conf-bin
- echo "${D}/usr/share/man" > conf-man
- echo "/usr/include/bglibs" > conf-bgincs
- echo "/usr/$(get_libdir)/bglibs" > conf-bglibs
-}
diff --git a/sys-apps/ucspi-proxy/ucspi-proxy-1.1.ebuild b/sys-apps/ucspi-proxy/ucspi-proxy-1.1.ebuild
index efbc87c02090..05bc1325eda0 100644
--- a/sys-apps/ucspi-proxy/ucspi-proxy-1.1.ebuild
+++ b/sys-apps/ucspi-proxy/ucspi-proxy-1.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -20,6 +20,11 @@ DEPEND="${RDEPEND}"
src_configure() {
echo "$(tc-getCC) ${CFLAGS}" > conf-cc || die
echo "$(tc-getCC) ${LDFLAGS}" > conf-ld || die
- echo "${ED}/usr/bin" > conf-bin || die
- echo "${ED}/usr/share/man" > conf-man || die
+ echo "${EPREFIX}/usr/bin" > conf-bin || die
+ echo "${EPREFIX}/usr/share/man" > conf-man || die
+}
+
+src_install() {
+ local -x install_prefix="${D}"
+ default
}
diff --git a/sys-apps/ucspi-ssl/Manifest b/sys-apps/ucspi-ssl/Manifest
deleted file mode 100644
index 5269429dd6b4..000000000000
--- a/sys-apps/ucspi-ssl/Manifest
+++ /dev/null
@@ -1,5 +0,0 @@
-DIST ucspi-ssl-0.94.tgz 112640 BLAKE2B c85c75664e7da4486fbc1b7e0ba3c8e2c57b4719471527d67661d75e0903c953fa7667a6f2384d5c3ffcf8aa3bacaef464957f7e2149749b72bb1aaf50944435 SHA512 a2b7fcea0da4c99a02cd0cf9402d59e55309a65031232e8afc9f29134be268c2e385840f5616c2046649a3f421563f1abcb707a8a8e93c7d29e7aef4a368b604
-DIST ucspi-ssl-0.97.tgz 112640 BLAKE2B ead9a3d720e9aee8855039ce3873f30d9766ad78dcd7eece41e52bbf670945248ae0f8e0b9391c3abe390eef9174e0a31880be605af3378422356f170ab86eaa SHA512 2cafa091f700e0b06b6e0ab23ac02b9459003d747c1ee0e8e95cf0922d94f8f32bde5c956307e333b193ce4514cf99078383a3cc7ffee45aadbd303e2eb454c7
-DIST ucspi-ssl-0.98b.tgz 112640 BLAKE2B 3b970525f8c3f9511daadfc2fda3840566e679b885acd3c17b0d1b2a775d837b59e9ccbbf5543614440366bedd8c24ba5f8f1c4d6b94877c7ef92d3859fdf652 SHA512 c9f6749048059f870b5221296ecb01d4b5c57c1d8c8b3574c67926b60569bce983f257afacfc3383b1b9a60d55b470a5a1548d2c19b0a505b953171a83cee12b
-DIST ucspi-ssl-0.99.tgz 112640 BLAKE2B da1974f59d2fece5877f645f5843311eadd509bfb715576a56b59bc79f6f9954eca9bad88bb36b055aa939d533a8b95b4fb3d3ae9ebde1081bcd6a51b60af5b4 SHA512 2fd29d0f6b31b54f2b53206c6ccd0cf35c759834f34aab26d2a883319d33ff2257163150fc85a2e450c7bd81ce7bbed7b59c4013d71a35a9b3446a6338cb406e
-DIST ucspi-ssl-0.99e.tgz 112640 BLAKE2B 6db975f412723da1c6c76ff1040c27001c2d5b2b0c8bb3199f37226c31cf1e48f629aa1f8234319c844f2ccf8001d6d9ffd7700da2ae57b6cb22177cfc1e56f8 SHA512 231ef75eedc4f52f46c1f7d6f44feac54069d859da206f9ea874d3a8082dead1be310cc4b7da1148564847b5b452b691718b7ba8076a03145e2002e9250182aa
diff --git a/sys-apps/ucspi-ssl/metadata.xml b/sys-apps/ucspi-ssl/metadata.xml
deleted file mode 100644
index 40544d04add2..000000000000
--- a/sys-apps/ucspi-ssl/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <bugs-to>mailto:feh@fehcom.de</bugs-to>
- </upstream>
- <longdescription>
- sslserver, sslclient, and sslhandle are command-line tools for
- building SSL client-server applications. They conform to the UNIX
- Client-Server Program Interface, UCSPI.
- </longdescription>
- <use>
- <flag name="bindist">Disable EC/RC5 algorithms in OpenSSL for patent reasons.</flag>
- </use>
-</pkgmetadata>
diff --git a/sys-apps/ucspi-ssl/ucspi-ssl-0.94-r1.ebuild b/sys-apps/ucspi-ssl/ucspi-ssl-0.94-r1.ebuild
deleted file mode 100644
index 1b9b4c33e185..000000000000
--- a/sys-apps/ucspi-ssl/ucspi-ssl-0.94-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils fixheadtails qmail
-
-DESCRIPTION="Command-line tools for building SSL client-server applications"
-HOMEPAGE="http://www.fehcom.de/ipnet/ucspi-ssl.html"
-SRC_URI="http://www.fehcom.de/ipnet/ucspi-ssl/${P}.tgz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~m68k ppc ppc64 s390 sparc x86"
-IUSE="perl"
-
-DEPEND="
- >=dev-libs/openssl-0.9.6g:=
- net-libs/libnsl
- perl? ( dev-lang/perl:= )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/ucspi-tcp
-"
-
-S="${WORKDIR}"/host/superscript.com/net/${P}/src
-
-src_prepare() {
- ht_fix_all
- sed -i -e 's:HOME/command:/usr/bin:' sslcat.sh sslconnect.sh https\@.sh || die
- sed -i -e 's:auto:gcc:' conf-cc || die
- sed -i -e 's:-m64::' conf-ld || die
-
- qmail_set_cc
-
- echo "/usr/bin" > conf-tcpbin || die
- echo "/usr/" > home || die
- echo "/usr/share/ca-certificates/" > conf-cadir || die
- echo "${QMAIL_HOME}/control/dh1024.pem" > conf-dhfile || die
-}
-
-src_compile() {
- # build fails without setting to j1
- emake -j1
-}
-
-src_install() {
- dodoc ../doc/*
- doman ../man/*.*
- dobin sslserver sslclient sslcat sslconnect https\@
- use perl && dobin sslperl
-}
diff --git a/sys-apps/ucspi-ssl/ucspi-ssl-0.97.ebuild b/sys-apps/ucspi-ssl/ucspi-ssl-0.97.ebuild
deleted file mode 100644
index ca948ff43849..000000000000
--- a/sys-apps/ucspi-ssl/ucspi-ssl-0.97.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit fixheadtails qmail
-
-DESCRIPTION="Command-line tools for building SSL client-server applications"
-HOMEPAGE="http://www.fehcom.de/ipnet/ucspi-ssl.html"
-SRC_URI="http://www.fehcom.de/ipnet/ucspi-ssl/${P}.tgz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="perl"
-
-DEPEND="
- >=dev-libs/openssl-0.9.8z_p8:=
- net-libs/libnsl
- perl? ( dev-lang/perl:= )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/ucspi-tcp
-"
-
-S="${WORKDIR}"/host/superscript.com/net/${P}
-
-src_prepare() {
- ht_fix_all
- sed -i -e 's:auto:gcc:' conf-cc || die
- sed -i -e 's:-m64::' conf-ld || die
-
- qmail_set_cc
-
- echo "/usr/bin" > conf-tcpbin || die
- echo "/usr/share/ca-certificates/" > conf-cadir || die
- echo "${QMAIL_HOME}/control/dh1024.pem" > conf-dhfile || die
-
- cd src || die
- echo "/usr/" > home || die
- sed -i -e 's:HOME/command:/usr/bin:' sslcat.sh sslconnect.sh https\@.sh || die
-
- eapply_user
-}
-
-src_compile() {
- # build fails without setting to j1
- emake -j1 -C src
-}
-
-src_install() {
- dodoc doc/*
- doman man/*.*
- dobin src/https\@ src/sslcat src/sslclient src/sslconnect src/sslprint src/sslserver
- use perl && dobin src/sslperl
-}
diff --git a/sys-apps/ucspi-ssl/ucspi-ssl-0.98b.ebuild b/sys-apps/ucspi-ssl/ucspi-ssl-0.98b.ebuild
deleted file mode 100644
index aafef7060ff4..000000000000
--- a/sys-apps/ucspi-ssl/ucspi-ssl-0.98b.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit fixheadtails qmail
-
-DESCRIPTION="Command-line tools for building SSL client-server applications"
-HOMEPAGE="http://www.fehcom.de/ipnet/ucspi-ssl.html"
-SRC_URI="http://www.fehcom.de/ipnet/ucspi-ssl/${P}.tgz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="perl"
-
-DEPEND="
- dev-libs/openssl:0=
- net-libs/libnsl
- perl? ( dev-lang/perl:= )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/ucspi-tcp
-"
-
-S="${WORKDIR}"/host/superscript.com/net/${P}
-
-src_prepare() {
- ht_fix_all
- sed -i -e 's:auto:gcc:' conf-cc || die
- sed -i -e 's:-m64::' conf-ld || die
-
- qmail_set_cc
-
- echo "/usr/bin" > conf-tcpbin || die
- echo "/usr/share/ca-certificates/" > conf-cadir || die
- echo "${QMAIL_HOME}/control/dh1024.pem" > conf-dhfile || die
-
- cd src || die
- echo "/usr/" > home || die
- sed -i -e 's:HOME/command:/usr/bin:' sslcat.sh sslconnect.sh https\@.sh || die
-
- eapply_user
-}
-
-src_compile() {
- emake sysdeps -C src
- emake -C src
-}
-
-src_install() {
- dodoc doc/*
- doman man/*.*
- dobin src/https\@ src/sslcat src/sslclient src/sslconnect src/sslprint src/sslserver
- use perl && dobin src/sslperl
-}
diff --git a/sys-apps/ucspi-ssl/ucspi-ssl-0.99.ebuild b/sys-apps/ucspi-ssl/ucspi-ssl-0.99.ebuild
deleted file mode 100644
index 7d270cb39f74..000000000000
--- a/sys-apps/ucspi-ssl/ucspi-ssl-0.99.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit fixheadtails qmail
-
-DESCRIPTION="Command-line tools for building SSL client-server applications"
-HOMEPAGE="http://www.fehcom.de/ipnet/ucspi-ssl.html"
-SRC_URI="http://www.fehcom.de/ipnet/ucspi-ssl/${P}.tgz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="perl"
-
-DEPEND="dev-libs/openssl:=
- net-libs/libnsl
- perl? ( dev-lang/perl:= )"
-RDEPEND="${DEPEND}
- sys-apps/ucspi-tcp"
-
-S="${WORKDIR}"/host/superscript.com/net/${P}
-
-src_prepare() {
- ht_fix_all
-
- sed -i -e 's:auto:gcc:' conf-cc || die
- sed -i -e 's:-m64::' conf-ld || die
- qmail_set_cc
-
- echo "/usr/bin" > conf-tcpbin || die
- echo "/usr/share/ca-certificates/" > conf-cadir || die
- echo "${QMAIL_HOME}/control/dh1024.pem" > conf-dhfile || die
- echo "/usr/" > src/home || die
- sed -i -e 's:HOME/command:/usr/bin:' \
- src/sslcat.sh src/sslconnect.sh src/https\@.sh || die
-
- eapply_user
-}
-
-src_compile() {
- cd src || die
- emake sysdeps
- emake uint32.h
- emake
-}
-
-src_install() {
- dodoc doc/*
- doman man/*.*
-
- cd src || die
- dobin $(<../package/commands-base)
- use perl && dobin $(<../package/commands-sslperl)
-}
diff --git a/sys-apps/ucspi-ssl/ucspi-ssl-0.99e.ebuild b/sys-apps/ucspi-ssl/ucspi-ssl-0.99e.ebuild
deleted file mode 100644
index 5651e04b6333..000000000000
--- a/sys-apps/ucspi-ssl/ucspi-ssl-0.99e.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit fixheadtails qmail
-
-DESCRIPTION="Command-line tools for building SSL client-server applications"
-HOMEPAGE="https://www.fehcom.de/ipnet/ucspi-ssl.html"
-SRC_URI="https://www.fehcom.de/ipnet/ucspi-ssl/${P}.tgz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ppc ppc64 s390 sparc x86"
-IUSE="bindist perl libressl"
-
-DEPEND="libressl? ( dev-libs/libressl:0= )
- !libressl? ( dev-libs/openssl:0=[bindist=] )
- perl? ( dev-lang/perl:= )"
-RDEPEND="${DEPEND}
- sys-apps/ucspi-tcp"
-
-S="${WORKDIR}"/host/superscript.com/net/${P}
-
-src_prepare() {
- ht_fix_all
-
- sed -i -e 's:auto:gcc:' conf-cc || die
- sed -i -e 's:-m64::' conf-ld || die
- qmail_set_cc
-
- echo "/usr/bin" > conf-tcpbin || die
- echo "/usr/share/ca-certificates/" > conf-cadir || die
- echo "${QMAIL_HOME}/control/dh1024.pem" > conf-dhfile || die
- echo "/usr/" > src/home || die
- sed -i -e 's:HOME/command:/usr/bin:' \
- src/sslcat.sh src/sslconnect.sh src/https\@.sh || die
-
- # workaround: SSL_TXT_ECDH is always set in openssl/ssl.h, even with openssl[bindist]
- sed -i -e 's:SSL_TXT_ECDH:ENABLE_SSL_TXT_ECDH:' src/ucspissl.h src/ssl_params.c conf-ecdh || die
- if use bindist; then
- echo > conf-ecdh || die
- fi
-
- eapply_user
-}
-
-src_compile() {
- cd src || die
- emake sysdeps
- emake uint32.h
- emake
-}
-
-src_install() {
- dodoc -r doc/.
- doman man/*
-
- cd src || die
- dobin $(<../package/commands-base)
- use perl && dobin $(<../package/commands-sslperl)
-}
diff --git a/sys-apps/ucspi-tcp/Manifest b/sys-apps/ucspi-tcp/Manifest
index 406c5b9c1922..2c7b80bb32b5 100644
--- a/sys-apps/ucspi-tcp/Manifest
+++ b/sys-apps/ucspi-tcp/Manifest
@@ -1,5 +1,5 @@
DIST ucspi-rss.diff 1828 BLAKE2B 1ac6f97791425b2ad4f912f4773f60d85494c52417d28ef9b8059dd78850637b5d2f70ccdfdeebc60fdb5ad0f02fa681dab7fcb1ec752a96928f1061b7d3a611 SHA512 643514c57570fc0b4e817b07e6d26e831cec5b4657c3d1b9948bd90267fe370a340b911897d575eb94192e24ba71a03ac68ceb2774ef7c0e7ff819c5b4285bc3
-DIST ucspi-tcp-0.88-ipv6.diff19.bz2 22632 BLAKE2B 8fdab5cfc82151adaf85d1ea611c57b900045ea71b4557c3f788662c16c579bea90c42a4213c45e6348ed78517e93198407eb3787e2edbd1719ce844dcb5c2d5 SHA512 58e38f9437b03aab121c5c1b9260806b5abd5a72bf22d14468955d6ff7ad2fb2ab285cb7a37b5dc3a568389aa02b8b3ecff0026b49a097ea86cfd340f2b38000
+DIST ucspi-tcp-0.88-ipv6.diff20.bz2 22088 BLAKE2B faa6cf37b828241fe8b0365aadc912465ed811b28cd6a02eef638afe5d8ec2d18a0635e756c4e5ed65e5dc13d49afee37a255e229f2cb2713628e6e8eb57d6ec SHA512 f8d3ae49adec2b6a643458958679b712e803b0e4609b4395ff9c4fd13b5a29b6f9fc35aee59f2928b892908d37ed83b708c67346a4a42ec21e05e7782bff215b
DIST ucspi-tcp-0.88-man.tar.gz 7562 BLAKE2B 8b6326665cb48dd37683a50f3fe4cb65eb2fe3c28dc90ed1461b5bd878e7a7713f01d654d7d93df63e3f7a113baa4b6abfb6eeb65fdfb820051192b36070eccc SHA512 e779d6d6b24a3af0edc362def229c657c704143e5f1dfba8d16d26b3e6bcacb9c8ceaabcccac61485a4719221c144bc0c36ebca5182985dca85a6d72101d4146
DIST ucspi-tcp-0.88-rblspp.patch 6565 BLAKE2B abf13c4c7cc25d555c57e29e45ead89340f01c5ddee4cc27a7acfdfd51f1dfae441d3b82b79d792f6acbc78b4d82843f5af34f0a166f4b7eeee44711cd39b26a SHA512 f3212d9d3bb59ec3b1f2b2bd09a80dce1eeeaf082dea68f18350a3aef818ef221eccfeb4dc7afff5c3f9e59003ec40f5e37fff86a2a5ab3145be1fe81297c990
DIST ucspi-tcp-0.88.tar.gz 53019 BLAKE2B 3327de31e225c851b43e40ae9d8c5e4d3b93e2c15ed6ef993ad9f4105d60f322c56797c45a37363258e7cd9a8d52a315d6a8d65686c5cd45d4be19781e40c233 SHA512 44efbd477dacf31d39fc970e2d2f74526dc815b905742f6127f0d5c80928ecc7e743089eaab0492386a58d5b97905113fbe8bbc7214ae179b7be27966b7566c7
diff --git a/sys-apps/ucspi-tcp/files/0.88-implicit-int-ipv6.patch b/sys-apps/ucspi-tcp/files/0.88-implicit-int-ipv6.patch
new file mode 100644
index 000000000000..aee400dc48c3
--- /dev/null
+++ b/sys-apps/ucspi-tcp/files/0.88-implicit-int-ipv6.patch
@@ -0,0 +1,11 @@
+--- a/tryip6.c
++++ b/tryip6.c
+@@ -2,7 +2,7 @@
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+
+-main() {
++int main() {
+ struct sockaddr_in6 sa;
+ sa.sin6_family = PF_INET6;
+ }
diff --git a/sys-apps/ucspi-tcp/files/0.88-implicit-int.patch b/sys-apps/ucspi-tcp/files/0.88-implicit-int.patch
new file mode 100644
index 000000000000..b2e39abd838e
--- /dev/null
+++ b/sys-apps/ucspi-tcp/files/0.88-implicit-int.patch
@@ -0,0 +1,261 @@
+--- a/addcr.c
++++ b/addcr.c
+@@ -1,7 +1,7 @@
+ #include "buffer.h"
+ #include "exit.h"
+
+-main()
++int main()
+ {
+ register int n;
+ register char *x;
+--- a/argv0.c
++++ b/argv0.c
+@@ -1,7 +1,7 @@
+ #include "pathexec.h"
+ #include "strerr.h"
+
+-main(int argc,char **argv,char **envp)
++int main(int argc,char **argv,char **envp)
+ {
+ if (argc < 3)
+ strerr_die1x(100,"argv0: usage: argv0 realname program [ arg ... ]");
+--- a/auto-str.c
++++ b/auto-str.c
+@@ -11,7 +11,7 @@ void puts(char *s)
+ if (buffer_puts(&b,s) == -1) _exit(111);
+ }
+
+-main(int argc,char **argv)
++int main(int argc,char **argv)
+ {
+ char *name;
+ char *value;
+--- a/chkshsgr.c
++++ b/chkshsgr.c
+@@ -1,7 +1,7 @@
+ #include <grp.h>
+ #include "exit.h"
+
+-main()
++int main()
+ {
+ gid_t x[4];
+
+--- a/delcr.c
++++ b/delcr.c
+@@ -1,7 +1,7 @@
+ #include "buffer.h"
+ #include "exit.h"
+
+-main()
++int main()
+ {
+ register int n;
+ register char *x;
+--- a/fixcrio.c
++++ b/fixcrio.c
+@@ -127,7 +127,7 @@ void doit(int fdleft,int fdright)
+ _exit(0);
+ }
+
+-main(int argc,char **argv,char **envp)
++int main(int argc,char **argv,char **envp)
+ {
+ int piin[2];
+ int piout[2];
+--- a/install.c
++++ b/install.c
+@@ -138,7 +138,7 @@ int mode;
+ strerr_die6sys(111,FATAL,"unable to chmod .../",subdir,"/",file,": ");
+ }
+
+-main()
++int main()
+ {
+ fdsourcedir = open_read(".");
+ if (fdsourcedir == -1)
+--- a/instcheck.c
++++ b/instcheck.c
+@@ -101,7 +101,7 @@ int mode;
+ perm("",home,"/",file,S_IFREG,uid,gid,mode);
+ }
+
+-main()
++int main()
+ {
+ hier();
+ _exit(0);
+--- a/mconnect-io.c
++++ b/mconnect-io.c
+@@ -19,7 +19,7 @@ ssize_t myread(int fd,char *buf,int len)
+ return read(fd,buf,len);
+ }
+
+-main()
++int main()
+ {
+ int pid;
+ int wstat;
+--- a/rblsmtpd.c
++++ b/rblsmtpd.c
+@@ -191,7 +191,7 @@ void rblsmtpd(void)
+ _exit(0);
+ }
+
+-main(int argc,char **argv,char **envp)
++int main(int argc,char **argv,char **envp)
+ {
+ int flagwantdefaultrbl = 1;
+ char *x;
+--- a/rblspp.c
++++ b/rblspp.c
+@@ -165,7 +165,7 @@ void rblspp(void)
+ _exit(0);
+ }
+
+-main(int argc,char **argv,char **envp)
++int main(int argc,char **argv,char **envp)
+ {
+ char *x;
+ int opt;
+--- a/recordio.c
++++ b/recordio.c
+@@ -142,7 +142,7 @@ void doit(int fdleft,int fdright) /* copy 0 -> fdleft, copy fdright -> 1 */
+ _exit(0);
+ }
+
+-main(int argc,char **argv,char **envp)
++int main(int argc,char **argv,char **envp)
+ {
+ int piin[2];
+ int piout[2];
+--- a/tcpclient.c
++++ b/tcpclient.c
+@@ -70,7 +70,7 @@ char ipstr[IP6_FMT];
+
+ char seed[128];
+
+-main(int argc,char **argv)
++int main(int argc,char **argv)
+ {
+ int fakev4=0;
+ unsigned long u;
+--- a/tcprules.c
++++ b/tcprules.c
+@@ -90,7 +90,7 @@ void doaddressdata(void)
+ if (cdb_make_add(&c,address.s,address.len,data.s,data.len) == -1) die_write();
+ }
+
+-main(int argc,char **argv)
++int main(int argc,char **argv)
+ {
+ int colon;
+ char *x;
+--- a/tcprulescheck.c
++++ b/tcprulescheck.c
+@@ -34,7 +34,7 @@ void found(char *data,unsigned int datalen)
+ _exit(0);
+ }
+
+-main(int argc,char **argv)
++int main(int argc,char **argv)
+ {
+ char *fnrules;
+ int fd;
+--- a/tcpserver.c
++++ b/tcpserver.c
+@@ -323,7 +323,7 @@ void sigchld()
+ }
+ }
+
+-main(int argc,char **argv)
++int main(int argc,char **argv)
+ {
+ char *hostname;
+ char *portname;
+--- a/trycpp.c
++++ b/trycpp.c
+@@ -1,4 +1,4 @@
+-main()
++int main()
+ {
+ #ifdef NeXT
+ printf("nextstep\n"); exit(0);
+--- a/trylsock.c
++++ b/trylsock.c
+@@ -1,4 +1,4 @@
+-main()
++int main()
+ {
+ ;
+ }
+--- a/trypoll.c
++++ b/trypoll.c
+@@ -2,7 +2,7 @@
+ #include <fcntl.h>
+ #include <poll.h>
+
+-main()
++int main()
+ {
+ struct pollfd x;
+
+--- a/trysgact.c
++++ b/trysgact.c
+@@ -1,6 +1,6 @@
+ #include <signal.h>
+
+-main()
++int main()
+ {
+ struct sigaction sa;
+ sa.sa_handler = 0;
+--- a/trysgprm.c
++++ b/trysgprm.c
+@@ -1,6 +1,6 @@
+ #include <signal.h>
+
+-main()
++int main()
+ {
+ sigset_t ss;
+
+--- a/tryshsgr.c
++++ b/tryshsgr.c
+@@ -1,4 +1,4 @@
+-main()
++int main()
+ {
+ short x[4];
+
+--- a/tryvfork.c
++++ b/tryvfork.c
+@@ -1,4 +1,4 @@
+-main()
++int main()
+ {
+ vfork();
+ }
+--- a/trywaitp.c
++++ b/trywaitp.c
+@@ -1,7 +1,7 @@
+ #include <sys/types.h>
+ #include <sys/wait.h>
+
+-main()
++int main()
+ {
+ waitpid(0,0,0);
+ }
+--- a/x86cpuid.c
++++ b/x86cpuid.c
+@@ -5,7 +5,7 @@ void nope()
+ exit(1);
+ }
+
+-main()
++int main()
+ {
+ unsigned long x[4];
+ unsigned long y[4];
diff --git a/sys-apps/ucspi-tcp/metadata.xml b/sys-apps/ucspi-tcp/metadata.xml
index ae89128be25a..8bccd58f26a9 100644
--- a/sys-apps/ucspi-tcp/metadata.xml
+++ b/sys-apps/ucspi-tcp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
diff --git a/sys-apps/ucspi-tcp/ucspi-tcp-0.88-r18.ebuild b/sys-apps/ucspi-tcp/ucspi-tcp-0.88-r18.ebuild
deleted file mode 100644
index e46bb72f140a..000000000000
--- a/sys-apps/ucspi-tcp/ucspi-tcp-0.88-r18.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit qmail toolchain-funcs
-
-DESCRIPTION="Collection of tools for managing UNIX services"
-HOMEPAGE="https://cr.yp.to/ucspi-tcp.html"
-SRC_URI="
- https://cr.yp.to/${PN}/${P}.tar.gz
- mirror://qmail/ucspi-rss.diff
- http://smarden.org/pape/djb/manpages/${P}-man.tar.gz
- http://xs3.b92.net/tomislavr/${P}-rblspp.patch
- ipv6? ( https://www.fefe.de/ucspi/${P}-ipv6.diff19.bz2 )"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
-IUSE="ipv6 qmail-spp selinux"
-RESTRICT="test"
-
-RDEPEND="
- !app-doc/ucspi-tcp-man
- selinux? ( sec-policy/selinux-ucspitcp )"
-
-src_prepare() {
- eapply "${FILESDIR}"/${PV}-protos.patch
- if use ipv6; then
- eapply "${WORKDIR}"/${P}-ipv6.diff19
- eapply "${FILESDIR}"/${PV}-protos-ipv6.patch
- eapply "${FILESDIR}"/${PV}-tcprules.patch #135571
- eapply "${FILESDIR}"/${PV}-bigendian.patch #18892
- else
- eapply "${FILESDIR}"/${PV}-protos-no-ipv6.patch
- fi
- eapply "${DISTDIR}"/ucspi-rss.diff
- eapply "${FILESDIR}"/${PV}-rblsmtpd-ignore-on-RELAYCLIENT.patch
- eapply "${DISTDIR}"/${P}-rblspp.patch
- eapply "${FILESDIR}"/${PV}-protos-rblspp.patch
- eapply "${FILESDIR}"/${PV}-large-responses.patch
- eapply "${FILESDIR}"/${PV}-uint-headers.patch
- eapply "${FILESDIR}"/${PV}-ar-ranlib.patch
-
- eapply_user
-}
-
-src_configure() {
- qmail_set_cc
- # The AR/RANLIB logic probably should get moved to the qmail eclass.
- # See also the patch above for generating the "makelib" script.
- tc-export AR RANLIB
-
- echo "${EPREFIX}/usr/" > conf-home || die
-}
-
-src_install() {
- dobin tcpserver tcprules tcprulescheck argv0 recordio tcpclient *\@ \
- tcpcat mconnect mconnect-io addcr delcr fixcrio rblsmtpd
-
- if use qmail-spp; then
- insinto "${QMAIL_HOME}"/plugins
- insopts -m 755
- doins rblspp
- fi
-
- doman "${WORKDIR}"/${P}-man/*.[1-8]
- dodoc CHANGES FILES README SYSDEPS TARGETS TODO VERSION
-
- insinto /etc/tcprules.d
- newins "${FILESDIR}"/tcprules-Makefile Makefile
-}
diff --git a/sys-apps/ucspi-tcp/ucspi-tcp-0.88-r19.ebuild b/sys-apps/ucspi-tcp/ucspi-tcp-0.88-r19.ebuild
new file mode 100644
index 000000000000..0a9f3ed0cc53
--- /dev/null
+++ b/sys-apps/ucspi-tcp/ucspi-tcp-0.88-r19.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit qmail toolchain-funcs
+
+DESCRIPTION="Collection of tools for managing UNIX services"
+HOMEPAGE="https://cr.yp.to/ucspi-tcp.html"
+SRC_URI="
+ https://cr.yp.to/${PN}/${P}.tar.gz
+ http://qmail.org/ucspi-rss.diff
+ http://smarden.org/pape/djb/manpages/${P}-man.tar.gz
+ http://xs3.b92.net/tomislavr/${P}-rblspp.patch
+ ipv6? ( https://www.fefe.de/ucspi/${P}-ipv6.diff20.bz2 )"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="ipv6 qmail-spp selinux"
+RESTRICT="test"
+
+RDEPEND="
+ !app-doc/ucspi-tcp-man
+ selinux? ( sec-policy/selinux-ucspitcp )"
+
+src_prepare() {
+ eapply "${FILESDIR}"/${PV}-protos.patch
+ if use ipv6; then
+ eapply "${WORKDIR}"/${P}-ipv6.diff20
+ eapply "${FILESDIR}"/${PV}-protos-ipv6.patch
+ eapply "${FILESDIR}"/${PV}-tcprules.patch #135571
+ eapply "${FILESDIR}"/${PV}-bigendian.patch #18892
+ eapply "${FILESDIR}"/${PV}-implicit-int-ipv6.patch
+ else
+ eapply "${FILESDIR}"/${PV}-protos-no-ipv6.patch
+ fi
+ eapply "${DISTDIR}"/ucspi-rss.diff
+ eapply "${FILESDIR}"/${PV}-rblsmtpd-ignore-on-RELAYCLIENT.patch
+ eapply "${DISTDIR}"/${P}-rblspp.patch
+ eapply "${FILESDIR}"/${PV}-protos-rblspp.patch
+ eapply "${FILESDIR}"/${PV}-large-responses.patch
+ eapply "${FILESDIR}"/${PV}-uint-headers.patch
+ eapply "${FILESDIR}"/${PV}-ar-ranlib.patch
+ eapply "${FILESDIR}"/${PV}-implicit-int.patch
+
+ eapply_user
+}
+
+src_configure() {
+ qmail_set_cc
+ # The AR/RANLIB logic probably should get moved to the qmail eclass.
+ # See also the patch above for generating the "makelib" script.
+ tc-export AR RANLIB
+
+ echo "${EPREFIX}/usr/" > conf-home || die
+}
+
+src_install() {
+ dobin tcpserver tcprules tcprulescheck argv0 recordio tcpclient *\@ \
+ tcpcat mconnect mconnect-io addcr delcr fixcrio rblsmtpd
+
+ if use qmail-spp; then
+ insinto "${QMAIL_HOME}"/plugins
+ insopts -m 755
+ doins rblspp
+ fi
+
+ doman "${WORKDIR}"/${P}-man/*.[1-8]
+ dodoc CHANGES FILES README SYSDEPS TARGETS TODO VERSION
+
+ insinto /etc/tcprules.d
+ newins "${FILESDIR}"/tcprules-Makefile Makefile
+}
diff --git a/sys-apps/ucspi-unix/metadata.xml b/sys-apps/ucspi-unix/metadata.xml
index 3f12c38d92fb..ea0a4ca31d9b 100644
--- a/sys-apps/ucspi-unix/metadata.xml
+++ b/sys-apps/ucspi-unix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/ucspi-unix/ucspi-unix-1.0.ebuild b/sys-apps/ucspi-unix/ucspi-unix-1.0.ebuild
index 393abef9c3fd..0f7291eb308b 100644
--- a/sys-apps/ucspi-unix/ucspi-unix-1.0.ebuild
+++ b/sys-apps/ucspi-unix/ucspi-unix-1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://untroubled.org/ucspi-unix/archive/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 ppc ~sparc x86"
+KEYWORDS="amd64 ~loong ppc ~riscv ~sparc x86"
IUSE=""
# We statically link bglibs.
diff --git a/sys-apps/udevil/files/udevil-0.4.4-no-libtool.patch b/sys-apps/udevil/files/udevil-0.4.4-no-libtool.patch
new file mode 100644
index 000000000000..ba01e94f15f7
--- /dev/null
+++ b/sys-apps/udevil/files/udevil-0.4.4-no-libtool.patch
@@ -0,0 +1,10 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -11,7 +11,6 @@ AM_MAINTAINER_MODE
+ AC_ISC_POSIX
+ AM_PROG_CC_C_O
+ AC_HEADER_STDC
+-AM_PROG_LIBTOOL
+ AC_PROG_INSTALL
+
+ AC_DEFINE_UNQUOTED(UDEVIL_VERSION, "$VERSION", [udevil version])
diff --git a/sys-apps/udevil/metadata.xml b/sys-apps/udevil/metadata.xml
index b858b9360d90..6107a02c74e3 100644
--- a/sys-apps/udevil/metadata.xml
+++ b/sys-apps/udevil/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/sys-apps/udevil/udevil-0.4.4-r3.ebuild b/sys-apps/udevil/udevil-0.4.4-r3.ebuild
deleted file mode 100644
index fdae0cfa0d3d..000000000000
--- a/sys-apps/udevil/udevil-0.4.4-r3.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="mount and unmount removable devices without a password"
-HOMEPAGE="https://ignorantguru.github.com/udevil/"
-SRC_URI="https://github.com/IgnorantGuru/udevil/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- acct-group/plugdev
- >=app-shells/bash-4.0:*
- dev-libs/glib:2
- sys-apps/util-linux
- virtual/acl
- >=virtual/udev-143"
-DEPEND="${RDEPEND}
- dev-util/intltool
- sys-devel/gettext
- virtual/pkgconfig"
-
-PATCHES=(
- # This works for 0.4.4 too, no sense copying the patch
- "${FILESDIR}"/${PN}-0.4.3-flags.patch
- "${FILESDIR}"/${PN}-0.4.4-stat.patch
- "${FILESDIR}"/${PN}-0.4.4-include-sysmacros.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf \
- --with-setfacl-prog="$(type -P setfacl)" \
- --enable-systemd
-}
-
-src_install() {
- default
- fowners root:plugdev /usr/bin/udevil
- fperms 4754 /usr/bin/udevil
-}
-
-pkg_postinst() {
- einfo
- elog "Please add your user to the plugdev group"
- elog "to be able to use ${PN} as a user"
- elog
- elog "Optional dependencies:"
- elog " gnome-extra/zenity (devmon popups)"
- elog " net-fs/davfs2 (mount WebDAV resources)"
- elog " net-fs/cifs-utils (mounting samba shares)"
- elog " net-fs/curlftpfs (mounting ftp shares)"
- elog " net-fs/nfs-utils (mounting nfs shares)"
- elog " net-fs/sshfs (mounting sftp shares)"
- elog " virtual/eject (eject via devmon)"
- if ! has_version 'sys-fs/udisks' ; then
- elog
- elog "When using ${PN} without udisks, and without the udisks-daemon running,"
- elog "you may need to enable kernel polling for device media changes to be detected."
- elog "See https://ignorantguru.github.com/${PN}/#polling"
- has_version '<virtual/udev-173' && ewarn "You need at least udev-173"
- kernel_is lt 2 6 38 && ewarn "You need at least kernel 2.6.38"
- einfo
- fi
-}
diff --git a/sys-apps/udevil/udevil-0.4.4-r5.ebuild b/sys-apps/udevil/udevil-0.4.4-r5.ebuild
new file mode 100644
index 000000000000..165c04be6453
--- /dev/null
+++ b/sys-apps/udevil/udevil-0.4.4-r5.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools linux-info optfeature
+
+DESCRIPTION="Mount and unmount removable devices without a password"
+HOMEPAGE="https://ignorantguru.github.io/udevil/"
+SRC_URI="https://github.com/IgnorantGuru/udevil/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 x86"
+
+RDEPEND="
+ acct-group/plugdev
+ >=app-shells/bash-4.0:*
+ dev-libs/glib:2
+ sys-apps/util-linux
+ virtual/acl
+ >=virtual/udev-143"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-util/intltool
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+PATCHES=(
+ # This works for 0.4.4 too, no sense copying the patch
+ "${FILESDIR}"/${PN}-0.4.3-flags.patch
+ "${FILESDIR}"/${PN}-0.4.4-stat.patch
+ "${FILESDIR}"/${PN}-0.4.4-include-sysmacros.patch
+ "${FILESDIR}"/${PN}-0.4.4-no-libtool.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-setfacl-prog="$(type -P setfacl)" \
+ --enable-systemd
+}
+
+src_install() {
+ default
+ fowners root:plugdev /usr/bin/udevil
+ fperms 4754 /usr/bin/udevil
+}
+
+pkg_postinst() {
+ einfo
+ elog "Please add your user to the plugdev group"
+ elog "to be able to use ${PN} as a user"
+ elog
+ optfeature_header "Optional dependencies:"
+ optfeature "Devmon popups" "gnome-extra/zenity"
+ optfeature "Mounting WebDAV resources" "net-fs/davfs2"
+ optfeature "Mounting Samba shares" "net-fs/cifs-utils"
+ optfeature "Mounting FTP shares" "net-fs/curlftpfs"
+ optfeature "Mounting NFS shares" "net-fs/nfs-utils"
+ optfeature "Mounting SFTP shares" "net-fs/sshfs"
+ if ! has_version 'sys-fs/udisks' ; then
+ elog
+ elog "When using ${PN} without udisks, and without the udisks-daemon running,"
+ elog "you may need to enable kernel polling for device media changes to be detected."
+ elog "See https://ignorantguru.github.com/${PN}/#polling"
+ has_version '<virtual/udev-173' && ewarn "You need at least udev-173"
+ kernel_is lt 2 6 38 && ewarn "You need at least kernel 2.6.38"
+ einfo
+ fi
+}
diff --git a/sys-apps/unscd/Manifest b/sys-apps/unscd/Manifest
index 2c8fedc46f24..9e99f8188338 100644
--- a/sys-apps/unscd/Manifest
+++ b/sys-apps/unscd/Manifest
@@ -1,2 +1 @@
-DIST nscd-0.53.c 73206 BLAKE2B ce3b8e02ce8879664bde7ee7362ee0d920ad9e9cd24da08b02e83d49b2e0bef7fb1b3c6635bc4e8a26d901170943a78bae608903459e4447edf004e5ef716468 SHA512 d14362d21282d0ea919af3b353f7838d1514c293b49df084bc8df424392b4121dba3443a07118f4c8c1cfdca0cbf8ebddde24cf73459b06349e9d1a68801403c
DIST nscd-0.54-r1.c 73304 BLAKE2B 5c35fec2f4f3447c5d6500a7fc50c97347923d62d084134ced5c412307e8db6079e01302b16ac3e1940ee9194a31ebec464e3bd838fd8b6a650b8c0bdc66349d SHA512 88f40a10ff9ba0f46ef6f266a8ab610bf54c1d322d11df47e616e3cc007edaebdf673ec71a314b7c672d2aa7a2eac799abb0bdf87aaebd71fb8d2f7ef4e33ab6
diff --git a/sys-apps/unscd/metadata.xml b/sys-apps/unscd/metadata.xml
index 1c0546f7b8fa..71a31f52a40a 100644
--- a/sys-apps/unscd/metadata.xml
+++ b/sys-apps/unscd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
diff --git a/sys-apps/unscd/unscd-0.53.ebuild b/sys-apps/unscd/unscd-0.53.ebuild
deleted file mode 100644
index f3e81790194e..000000000000
--- a/sys-apps/unscd/unscd-0.53.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit systemd toolchain-funcs
-
-DESCRIPTION="simple & stable nscd replacement"
-HOMEPAGE="https://busybox.net/~vda/unscd/README"
-SRC_URI="https://busybox.net/~vda/unscd/nscd-${PV}.c"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="sys-libs/glibc[nscd(+)]"
-DEPEND="${RDEPEND}"
-
-S=${WORKDIR}
-
-src_unpack() {
- cp "${DISTDIR}"/nscd-${PV}.c ${PN}.c || die
-}
-
-src_compile() {
- tc-export CC
- emake unscd
-}
-
-src_install() {
- newinitd "${FILESDIR}"/unscd.initd-r1 unscd
- systemd_newtmpfilesd "${FILESDIR}"/unscd-tmpfiles.conf unscd.conf
- systemd_dounit "${FILESDIR}"/unscd.service
- dosbin unscd
-}
diff --git a/sys-apps/unscd/unscd-0.54-r1.ebuild b/sys-apps/unscd/unscd-0.54-r1.ebuild
index 0ba8f2841377..0e9ee2aa391d 100644
--- a/sys-apps/unscd/unscd-0.54-r1.ebuild
+++ b/sys-apps/unscd/unscd-0.54-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit systemd toolchain-funcs
+inherit systemd toolchain-funcs tmpfiles
DESCRIPTION="simple & stable nscd replacement"
HOMEPAGE="https://busybox.net/~vda/unscd/README"
@@ -11,7 +11,7 @@ SRC_URI="https://busybox.net/~vda/unscd/nscd-${PV}.c -> nscd-${PV}-r1.c"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE=""
RDEPEND="sys-libs/glibc[nscd(+)]"
@@ -30,7 +30,11 @@ src_compile() {
src_install() {
newinitd "${FILESDIR}"/unscd.initd-r1 unscd
- systemd_newtmpfilesd "${FILESDIR}"/unscd-tmpfiles.conf unscd.conf
+ newtmpfiles "${FILESDIR}"/unscd-tmpfiles.conf unscd.conf
systemd_dounit "${FILESDIR}"/unscd.service
dosbin unscd
}
+
+pkg_postinst() {
+ tmpfiles_process unscd.conf
+}
diff --git a/sys-apps/usb_modeswitch/Manifest b/sys-apps/usb_modeswitch/Manifest
index ee724f34b697..7b4b4de4cd76 100644
--- a/sys-apps/usb_modeswitch/Manifest
+++ b/sys-apps/usb_modeswitch/Manifest
@@ -1,2 +1,2 @@
-DIST usb-modeswitch-2.5.2.tar.bz2 259820 BLAKE2B 263d0b8c4ec79eebb1f79cfd171973f0d6cab96bd361b54c5fed8908745eb4643af935edff788b0913f8ba5ba1edcb683c75aeff6c426437c8436c74f875982b SHA512 ad2a7e5134379664fca83b85803e52ec8e3fe3c2d6c633eb5af3c291c43b15ca4a67198612864de01d146a029ee5c475c8c7dc71d16e3a475b532837c5dd34ea
-DIST usb-modeswitch-data-20170806.tar.bz2 32700 BLAKE2B 954aa513a74774cdabb2e3820fa56f1244de74cbfc0adda5309e4dc3bd79c2b6dd2023a5180f8d39f8b496485e1991de2a7fabbb59f6995fc7e0c0bb0b782243 SHA512 818bc9f3d9b75df245bb25f959075041667607e7681bdbca7006ec036613130a0fa5e41da9e939ca510e524a78a7a76aef82ecfbbe19611887b3735987b951cc
+DIST usb-modeswitch-2.6.1.tar.bz2 45471 BLAKE2B a28b3549410f781b58cec78003f7d2c917f65113415111df6e28ed56e5b34d9ee20ec33b6f6e9737ddb56bf3887c900706090f10ff4bf9e0797c17f77320081e SHA512 5d800b45257ca1182a13155dc37b614ee2d93273ed226cc9d05b6ae423f9e88b7c9aca6829604bdb86f68707ddf2c51c9ad2bcf898b8261b2c5bb56a21351e1e
+DIST usb-modeswitch-data-20191128.tar.bz2 34069 BLAKE2B f6bf0c54ea51cda361ef9476875e0311f2c0e839c9e5f0a9ca2a0e5444fa16be65a436d98291e97d338d0416a7367c6abcae1a9877470246ed9f84d25dbe3e06 SHA512 4b5954ad83f7281e42321c16f5cc5b956923cc0e2db5f238cc64b3ea37a419768f01f2e26310f2b4fe9a9a5b1d901517933effd6e6edd23bc9b8d0c039ed0ba2
diff --git a/sys-apps/usb_modeswitch/metadata.xml b/sys-apps/usb_modeswitch/metadata.xml
index 1b2d98603b73..c5cdb4f50232 100644
--- a/sys-apps/usb_modeswitch/metadata.xml
+++ b/sys-apps/usb_modeswitch/metadata.xml
@@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <use>
- <flag name="jimtcl">Use <pkg>dev-lang/jimtcl</pkg> instead of <pkg>dev-lang/tcl</pkg> for smaller memory footprint</flag>
- </use>
- <maintainer type="project">
- <email>freedesktop-bugs@gentoo.org</email>
- <name>Gentoo Freedesktop Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>freedesktop-bugs@gentoo.org</email>
+ <name>Gentoo Freedesktop Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/sys-apps/usb_modeswitch/usb_modeswitch-2.5.2.ebuild b/sys-apps/usb_modeswitch/usb_modeswitch-2.5.2.ebuild
deleted file mode 100644
index d7a1279b2769..000000000000
--- a/sys-apps/usb_modeswitch/usb_modeswitch-2.5.2.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils linux-info toolchain-funcs udev systemd
-
-MY_PN=${PN/_/-}
-MY_P=${MY_PN}-${PV/_p*}
-#DATA_VER=${PV/*_p}
-DATA_VER="20170806"
-
-DESCRIPTION="A tool for controlling 'flip flop' (multiple devices) USB gear like UMTS sticks"
-HOMEPAGE="https://www.draisberghof.de/usb_modeswitch/ https://www.draisberghof.de/usb_modeswitch/device_reference.txt"
-SRC_URI="https://www.draisberghof.de/${PN}/${MY_P}.tar.bz2
- https://www.draisberghof.de/${PN}/${MY_PN}-data-${DATA_VER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm x86"
-IUSE="jimtcl"
-
-COMMON_DEPEND="
- virtual/udev
- virtual/libusb:1
-"
-RDEPEND="${COMMON_DEPEND}
- jimtcl? ( dev-lang/jimtcl )
- !jimtcl? ( dev-lang/tcl:0 )" # usb_modeswitch script is tcl
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
-"
-
-S=${WORKDIR}/${MY_P}
-
-CONFIG_CHECK="~USB_SERIAL"
-
-src_prepare() {
- sed -i -e '/install.*BIN/s:-s::' Makefile || die
- epatch "${FILESDIR}/usb_modeswitch.sh-tmpdir.patch"
-}
-
-src_compile() {
- emake CC="$(tc-getCC)"
-}
-
-src_install() {
- emake \
- DESTDIR="${D}" \
- SYSDIR="${D}/$(systemd_get_unitdir)" \
- UDEVDIR="${D}/$(get_udevdir)" \
- $(usex jimtcl install-shared install)
-
- # Even if we set SYSDIR above, the Makefile is causing automagic detection of `systemctl` binary,
- # which is why we need to force the .service file to be installed:
- systemd_dounit ${PN}@.service
-
- dodoc ChangeLog README
-
- pushd ../${MY_PN}-data-${DATA_VER} >/dev/null
- emake \
- DESTDIR="${D}" \
- RULESDIR="${D}/$(get_udevdir)/rules.d" \
- files-install db-install
- docinto data
- dodoc ChangeLog README
- popd >/dev/null
-}
diff --git a/sys-apps/usb_modeswitch/usb_modeswitch-2.6.1.ebuild b/sys-apps/usb_modeswitch/usb_modeswitch-2.6.1.ebuild
new file mode 100644
index 000000000000..d20c200a940a
--- /dev/null
+++ b/sys-apps/usb_modeswitch/usb_modeswitch-2.6.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info systemd toolchain-funcs udev
+
+MY_PN=${PN/_/-}
+MY_P=${MY_PN}-${PV/_p*}
+#DATA_VER=${PV/*_p}
+DATA_VER="20191128"
+
+DESCRIPTION="Tool for controlling 'flip flop' (multiple devices) USB gear like UMTS sticks"
+HOMEPAGE="https://www.draisberghof.de/usb_modeswitch/ https://www.draisberghof.de/usb_modeswitch/device_reference.txt"
+SRC_URI="https://www.draisberghof.de/${PN}/${MY_P}.tar.bz2
+ https://www.draisberghof.de/${PN}/${MY_PN}-data-${DATA_VER}.tar.bz2"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 x86"
+IUSE=""
+
+RDEPEND="
+ virtual/udev
+ virtual/libusb:1
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+CONFIG_CHECK="~USB_SERIAL"
+
+PATCHES=( "${FILESDIR}/usb_modeswitch.sh-tmpdir.patch" )
+
+src_prepare() {
+ default
+ sed -i -e '/install.*BIN/s:-s::' Makefile || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ SYSDIR="${D}/$(systemd_get_systemunitdir)" \
+ UDEVDIR="${D}/${EPREFIX}$(get_udevdir)" \
+ install
+
+ # Even if we set SYSDIR above, the Makefile is causing automagic detection of `systemctl` binary,
+ # which is why we need to force the .service file to be installed:
+ systemd_dounit ${PN}@.service
+
+ dodoc ChangeLog README
+
+ pushd ../${MY_PN}-data-${DATA_VER} &>/dev/null || die
+ emake \
+ DESTDIR="${D}" \
+ RULESDIR="${D}/${EPREFIX}$(get_udevdir)/rules.d" \
+ files-install db-install
+ docinto data
+ dodoc ChangeLog README
+ popd &>/dev/null || die
+
+ keepdir /var/lib/${PN}
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-apps/usbguard/Manifest b/sys-apps/usbguard/Manifest
index a4c0fa793139..d3468adecd8e 100644
--- a/sys-apps/usbguard/Manifest
+++ b/sys-apps/usbguard/Manifest
@@ -1,2 +1 @@
-DIST usbguard-0.7.6.tar.gz 1189194 BLAKE2B 4fefd9ccf13b094f64942559f481144f08986dc71154b87c1623459d2429c07e2738a17877d3f6c275e83ce904067b1284c588c9a95023c7205cc5e21ca118f0 SHA512 0b0d42276e48baac2dc1f9031eec25e3f622a8d6178cb0400b97c7d32005bfa158b60fd286fdc66206a8684658fefaf6389ef93511e942f025e75671d7455628
-DIST usbguard-0.7.8.tar.gz 1220764 BLAKE2B 8127acc0ef5dd89cc540097a71f10d56f3cb0a166453e27161e444d37dbf51cc4861bc9c71dcca16e9fec7187b3dcabb2bf08af522b2aaa4693fa4f4913a9ae0 SHA512 315c25ed7eb61cc0920047836dcca035cb07aecb6dfece9e4f6dc2ad61aaf6fdbf86898e43493958f3d12a146eb4c8f88b90bb246da0df83bb2097ce5b853e88
+DIST usbguard-1.1.2.tar.gz 1695585 BLAKE2B 7aa1f6168b16bf3b67136dd927a69a097b29a276c604d2e7e4394be4c30682dcfe8d3fd78ca7af8e5275c42ff21b47562dd5b9a93cacf1b53c9945bdfbf5c7df SHA512 03b6dd026a0fe6a7a055208f09a56e2cc86985570388e33fde08671b8aa2d60ea4a0e59505e9646ddf50f42f5b6310d1b230379f9c26ec99c7ca736f3b4ad850
diff --git a/sys-apps/usbguard/files/usbguard-1.1.2-gcc-13.patch b/sys-apps/usbguard/files/usbguard-1.1.2-gcc-13.patch
new file mode 100644
index 000000000000..79168f584ded
--- /dev/null
+++ b/sys-apps/usbguard/files/usbguard-1.1.2-gcc-13.patch
@@ -0,0 +1,19 @@
+https://github.com/USBGuard/usbguard/pull/582
+
+From a0083fd0eea3a513613a37262d40dfbe96e02e46 Mon Sep 17 00:00:00 2001
+From: Yaakov Selkowitz <yselkowi@redhat.com>
+Date: Tue, 24 Jan 2023 14:54:28 -0500
+Subject: [PATCH] Fix compile with GCC 13
+
+Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
+--- a/src/Library/Base64.hpp
++++ b/src/Library/Base64.hpp
+@@ -24,6 +24,7 @@
+
+ #include <string>
+ #include <cstddef>
++#include <cstdint>
+
+ namespace usbguard
+ {
+
diff --git a/sys-apps/usbguard/metadata.xml b/sys-apps/usbguard/metadata.xml
index 6d2298876faa..cf6496c725c9 100644
--- a/sys-apps/usbguard/metadata.xml
+++ b/sys-apps/usbguard/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>sping@gentoo.org</email>
<name>Sebastian Pipping</name>
</maintainer>
+ <use>
+ <flag name="umockdev">Enables support for <pkg>dev-util/umockdev</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="github">USBGuard/usbguard</remote-id>
+ <remote-id type="cpe">cpe:/a:usbguard_project:usbguard</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/usbguard/usbguard-0.7.6-r1.ebuild b/sys-apps/usbguard/usbguard-0.7.6-r1.ebuild
deleted file mode 100644
index aa7debe0b591..000000000000
--- a/sys-apps/usbguard/usbguard-0.7.6-r1.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Daemon protecting your computer against BadUSB"
-HOMEPAGE="https://github.com/USBGuard/usbguard"
-SRC_URI="https://github.com/USBGuard/usbguard/releases/download/${P}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="bash-completion dbus ldap policykit systemd"
-
-REQUIRED_USE="policykit? ( dbus )"
-
-CDEPEND="
- dev-libs/pegtl
- >=dev-libs/libsodium-0.4.5:=
- >=dev-libs/protobuf-2.5.0:=
- >=sys-cluster/libqb-0.16.0:=
- sys-devel/gcc:*[cxx]
- >=sys-libs/libcap-ng-0.7.0
- >=sys-libs/libseccomp-2.0.0
- >=sys-process/audit-2.7.7
- bash-completion? ( >=app-shells/bash-completion-2.0 )
- dbus? (
- >=dev-libs/dbus-glib-0.100
- dev-libs/glib:2
- sys-apps/dbus
- policykit? ( sys-auth/polkit[introspection] )
- )
- ldap? ( net-nds/openldap )
- systemd? ( sys-apps/systemd )
- "
-RDEPEND="${CDEPEND}
- virtual/udev
- "
-DEPEND="${CDEPEND}
- app-text/asciidoc
- dev-cpp/catch:1
- dbus? (
- dev-libs/libxml2
- dev-libs/libxslt
- dev-util/gdbus-codegen
- )
- "
-
-src_configure() {
- local myargs=(
- $(use_with dbus)
- $(use_with ldap)
- $(use_with policykit polkit)
- $(use_enable systemd)
- )
-
- econf "${myargs[@]}"
-}
-
-src_install() {
- default
-
- keepdir /var/lib/log/usbguard
-
- newinitd "${FILESDIR}"/${P}-usbguard.openrc usbguard
- use dbus && newinitd "${FILESDIR}"/${P}-usbguard-dbus.openrc usbguard-dbus
-}
-
-pkg_postinst() {
- ewarn
- ewarn 'BEFORE STARTING USBGUARD please be sure to create/generate'
- ewarn ' a rules file at /etc/usbguard/rules.conf'
- ewarn ' so that you do not'
- ewarn ' GET LOCKED OUT'
- ewarn " of this system (\"$(hostname)\")."
- ewarn
- ewarn 'This command may be of help:'
- ewarn ' sudo sh -c "usbguard generate-policy > /etc/usbguard/rules.conf"'
- ewarn
-}
diff --git a/sys-apps/usbguard/usbguard-0.7.8.ebuild b/sys-apps/usbguard/usbguard-0.7.8.ebuild
deleted file mode 100644
index 317ca17a882b..000000000000
--- a/sys-apps/usbguard/usbguard-0.7.8.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Daemon protecting your computer against BadUSB"
-HOMEPAGE="https://github.com/USBGuard/usbguard"
-SRC_URI="https://github.com/USBGuard/usbguard/releases/download/${P}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="bash-completion dbus ldap policykit static-libs systemd"
-
-REQUIRED_USE="policykit? ( dbus )"
-
-CDEPEND="
- dev-libs/pegtl
- >=dev-libs/libsodium-0.4.5:=
- >=dev-libs/protobuf-2.5.0:=
- >=sys-cluster/libqb-0.16.0:=
- sys-devel/gcc:*[cxx]
- >=sys-libs/libcap-ng-0.7.0
- >=sys-libs/libseccomp-2.0.0
- >=sys-process/audit-2.7.7
- bash-completion? ( >=app-shells/bash-completion-2.0 )
- dbus? (
- dev-libs/glib:2
- sys-apps/dbus
- policykit? ( sys-auth/polkit[introspection] )
- )
- ldap? ( net-nds/openldap )
- systemd? ( sys-apps/systemd )
- "
-RDEPEND="${CDEPEND}
- virtual/udev
- "
-DEPEND="${CDEPEND}
- app-text/asciidoc
- dev-cpp/catch:1
- dbus? (
- dev-libs/libxml2
- dev-libs/libxslt
- dev-util/gdbus-codegen
- )
- "
-
-src_configure() {
- local myargs=(
- $(use_with dbus)
- $(use_with ldap)
- $(use_with policykit polkit)
- $(use_enable static-libs static)
- $(use_enable systemd)
- )
-
- econf "${myargs[@]}"
-}
-
-src_install() {
- default
-
- keepdir /var/lib/log/usbguard
-
- newinitd "${FILESDIR}"/${PN}-0.7.6-usbguard.openrc usbguard
- use dbus && newinitd "${FILESDIR}"/${PN}-0.7.6-usbguard-dbus.openrc usbguard-dbus
-}
-
-pkg_postinst() {
- ewarn
- ewarn 'BEFORE STARTING USBGUARD please be sure to create/generate'
- ewarn ' a rules file at /etc/usbguard/rules.conf'
- ewarn ' so that you do not'
- ewarn ' GET LOCKED OUT'
- ewarn " of this system (\"$(hostname)\")."
- ewarn
- ewarn 'This command may be of help:'
- ewarn ' sudo sh -c "usbguard generate-policy > /etc/usbguard/rules.conf"'
- ewarn
-}
diff --git a/sys-apps/usbguard/usbguard-1.1.2.ebuild b/sys-apps/usbguard/usbguard-1.1.2.ebuild
new file mode 100644
index 000000000000..d3722e624db9
--- /dev/null
+++ b/sys-apps/usbguard/usbguard-1.1.2.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools bash-completion-r1
+
+DESCRIPTION="Daemon protecting your computer against BadUSB"
+HOMEPAGE="https://github.com/USBGuard/usbguard"
+SRC_URI="https://github.com/USBGuard/usbguard/releases/download/${P}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0/1" # due to libusbguard.so.<1>.0.0
+KEYWORDS="~amd64 ~x86"
+IUSE="dbus ldap policykit selinux static-libs systemd test umockdev"
+
+# https://github.com/USBGuard/usbguard/issues/449
+# https://bugs.gentoo.org/769692
+REQUIRED_USE+=" test? ( static-libs )"
+
+CDEPEND="
+ dev-libs/pegtl
+ >=dev-libs/libsodium-0.4.5:=
+ >=dev-libs/protobuf-2.5.0:=
+ >=sys-cluster/libqb-0.16.0:=
+ sys-devel/gcc:*[cxx]
+ >=sys-libs/libcap-ng-0.7.0
+ >=sys-libs/libseccomp-2.0.0
+ >=sys-process/audit-2.7.7
+ dbus? (
+ dev-libs/glib:2
+ sys-apps/dbus
+ sys-auth/polkit[introspection]
+ )
+ ldap? ( net-nds/openldap:= )
+ systemd? ( sys-apps/systemd )
+ umockdev? ( dev-util/umockdev )
+ "
+RDEPEND="${CDEPEND}
+ virtual/udev
+ selinux? ( sec-policy/selinux-usbguard )
+ "
+DEPEND="${CDEPEND}
+ app-text/asciidoc
+ <dev-cpp/catch-3:0
+ dbus? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ dev-util/gdbus-codegen
+ )
+ "
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.2-gcc-13.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myargs=(
+ --with-bash-completion-dir=$(get_bashcompdir)
+ --localstatedir=/var # i.e. not /var/lib, bug 852296
+ $(use_with dbus)
+ $(use_with dbus polkit)
+ $(use_with ldap)
+ $(use_enable static-libs static)
+ $(use_enable systemd)
+ $(use_enable umockdev)
+ )
+
+ econf "${myargs[@]}"
+}
+
+src_install() {
+ default
+
+ keepdir /etc/usbguard/IPCAccessControl.d # bug 808801
+ keepdir /var/log/usbguard
+ chmod 0600 "${ED}"/etc/usbguard/IPCAccessControl.d/.keep* || die # bug 808801
+
+ newinitd "${FILESDIR}"/${PN}-0.7.6-usbguard.openrc usbguard
+ use dbus && newinitd "${FILESDIR}"/${PN}-0.7.6-usbguard-dbus.openrc usbguard-dbus
+
+ find "${D}" -name '*.la' -delete || die # bug 850655
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn 'BEFORE STARTING USBGUARD please be sure to create/generate'
+ ewarn ' a rules file at /etc/usbguard/rules.conf'
+ ewarn ' so that you do not'
+ ewarn ' GET LOCKED OUT'
+ ewarn " of this system (\"$(hostname)\")."
+ ewarn
+ ewarn 'This command may be of help:'
+ ewarn ' sudo sh -c "usbguard generate-policy > /etc/usbguard/rules.conf"'
+ ewarn
+}
diff --git a/sys-apps/usbmon/Manifest b/sys-apps/usbmon/Manifest
index aafbf0ef9363..14b75db561e3 100644
--- a/sys-apps/usbmon/Manifest
+++ b/sys-apps/usbmon/Manifest
@@ -1,2 +1 @@
DIST usbmon-6.1.tar.gz 16358 BLAKE2B 94e7793c6ce2ef6a8616f04871efbf22c388c569834c34869d51bbf3138c4c0ce89adaaaba19fc70a2371e244a99c7fe365f360530b9366a339be3cbf291f6cf SHA512 580aa1edd6336ac86e562081a79698a98e6c7aa3dd8605a4c12201dd0e3ab1dc58b3d69f670742e007aeb76fb6ebfff9b5d10114df93814763e0c393b6473b54
-DIST usbmon-6.tar.gz 16796 BLAKE2B 14faca99b44a1d9aa33217f75633251a7932d57732780ba6d871d2dee1b48202071186704959b623f8afc276e9e7da5e4d11204b40f567057cfa731d851cc413 SHA512 4ee41379196b86697a5156d4411860ba31540b98e50165c65f873e22eee1c3caadbc73a2c61903531f968797eca8e7f95490255a0820dc0778fba82c7eb260f5
diff --git a/sys-apps/usbmon/files/usbmon-6-sysmacros.patch b/sys-apps/usbmon/files/usbmon-6-sysmacros.patch
deleted file mode 100644
index 109b4745dc0a..000000000000
--- a/sys-apps/usbmon/files/usbmon-6-sysmacros.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-https://bugs.gentoo.org/580360
-
-From 449f591d0220e57face02898a9ae2617baace814 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 18 Apr 2016 18:24:49 -0400
-Subject: [PATCH] usbmon: include sys/sysmacros.h for makedev func
-
-Since glibc has always placed these funcs in sys/sysmacros.h, and other
-C libs require this, include it directly. Otherwise we fail to build:
-usbmon.c: In function 'make_device':
-usbmon.c:966:8: warning: implicit declaration of function 'makedev' [-Wimplicit-function-declaration]
- dev = makedev(major, p->ifnum);
- ^
-usbmon.c:966:2: warning: nested extern declaration of 'makedev' [-Wnested-externs]
- dev = makedev(major, p->ifnum);
- ^
-...
-usbmon.o: In function 'make_device':
-usbmon.c:966: undefined reference to 'makedev'
----
- usbmon.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/usbmon.c b/usbmon.c
-index 37929f2..8d2acfc 100644
---- a/usbmon.c
-+++ b/usbmon.c
-@@ -32,6 +32,7 @@
- #include <sys/ioctl.h>
- #include <sys/stat.h>
- #include <sys/mman.h>
-+#include <sys/sysmacros.h>
- #include <inttypes.h>
- #include <stdarg.h>
-
---
-2.7.4
-
diff --git a/sys-apps/usbmon/metadata.xml b/sys-apps/usbmon/metadata.xml
index ee74e58c0375..7a9a22660fb4 100644
--- a/sys-apps/usbmon/metadata.xml
+++ b/sys-apps/usbmon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/sys-apps/usbmon/usbmon-6-r1.ebuild b/sys-apps/usbmon/usbmon-6-r1.ebuild
deleted file mode 100644
index b3fda313d587..000000000000
--- a/sys-apps/usbmon/usbmon-6-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit toolchain-funcs eutils
-
-DESCRIPTION="Userland for USB monitoring framework"
-HOMEPAGE="https://people.redhat.com/zaitcev/linux/"
-SRC_URI="https://people.redhat.com/zaitcev/linux/${P}.tar.gz"
-
-LICENSE="GPL-2" # GPL-2 only
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND="!=sys-apps/usbutils-0.72-r2"
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-sysmacros.patch #580360
- sed \
- -e '/CFLAGS =/s, = , \+= ,g' \
- -e 's:-O2::g' \
- -i "${S}"/Makefile || die
- tc-export CC
-}
-
-src_install() {
- dosbin ${PN}
- doman ${PN}.8
- dodoc README
-}
diff --git a/sys-apps/usbmon/usbmon-6.1-r1.ebuild b/sys-apps/usbmon/usbmon-6.1-r1.ebuild
new file mode 100644
index 000000000000..a5de8eb9313a
--- /dev/null
+++ b/sys-apps/usbmon/usbmon-6.1-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Userland for USB monitoring framework"
+HOMEPAGE="https://people.redhat.com/zaitcev/linux/"
+SRC_URI="https://people.redhat.com/zaitcev/linux/${P}.tar.gz"
+
+LICENSE="GPL-2" # GPL-2 only
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e 's:-O2::g' \
+ -e '/_FORTIFY_SOURCE/d' \
+ Makefile || die
+
+ tc-export CC
+}
+
+src_install() {
+ dosbin ${PN}
+ doman ${PN}.8
+ dodoc README
+}
diff --git a/sys-apps/usbmon/usbmon-6.1.ebuild b/sys-apps/usbmon/usbmon-6.1.ebuild
deleted file mode 100644
index fc8ed33d4fee..000000000000
--- a/sys-apps/usbmon/usbmon-6.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="Userland for USB monitoring framework"
-HOMEPAGE="https://people.redhat.com/zaitcev/linux/"
-SRC_URI="https://people.redhat.com/zaitcev/linux/${P}.tar.gz"
-
-LICENSE="GPL-2" # GPL-2 only
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-src_prepare() {
- default
- sed -e 's:-O2::g' -i "${S}"/Makefile || die
- tc-export CC
-}
-
-src_install() {
- dosbin ${PN}
- doman ${PN}.8
- dodoc README
-}
diff --git a/sys-apps/usbredir/Manifest b/sys-apps/usbredir/Manifest
index 4765906a53ec..6dc43de25bce 100644
--- a/sys-apps/usbredir/Manifest
+++ b/sys-apps/usbredir/Manifest
@@ -1,4 +1,2 @@
-DIST usbredir-0.7.1.tar.bz2 329895 BLAKE2B 7017b1441c2265c9e58532bcc8718844e6f64c7272ad599a8cf5f6e21f694524e05da2d8672c4892faa7b744be46bdfff521dbcb4944715d45b24d5925972ac4 SHA512 f8d26d59d5a530aa413fabe2402fbbd9662760453c2b4e83d34f2e5287c188114ea870f15ae1bc910297649986315be965f0d23d0a2b7b0cec2f207fc65d7598
-DIST usbredir-0.7.1_p20170503-patches.tar.xz 8120 BLAKE2B 21c7a853b3d5329fcca45169e22135bce615c9422f314f680f1087014d64179bf26f07bdb377bcff48155f28a37dec82b0bee8bce4d868e41614b128fe61b95a SHA512 b281d7a1ee191746e5fbe655b21c0cd9b2cf9cd69d5f28d91ab41de2d62a7f3c5c2a42f3f9c40c73d61a57d89423d996f4a779ebdff8f9d088030c2a4c2a24a7
-DIST usbredir-0.7.1_p20180211-patches.tar.xz 12508 BLAKE2B 57479444752070147583a0cc2f6651a32c8a618756638ae04928dda7082214d501fb5122a0f5d02aca994be0a386a8e493628faa240f61987dbd02d2fcfa679a SHA512 993c7ad5faf66f249546e1a631a10cd842439486de029ed2fff049b70967cb0a6ad45fb773a1c97fd6811e246f4cc4c7482522393dcc74b26ba2646a83ac70c8
-DIST usbredir-0.8.0.tar.bz2 331349 BLAKE2B 0190b4ab35cd554c13b65d30756b7b018e7ce82c72e7dddbaf05b8a704bd8a25724c4ac4759e1b86dfadb64ad7ade75c05365ab9ae3152f8fa60e909bc5e183b SHA512 976274adf08f8691b0961f5238021e988a4347873d0c67576038f44cbdaf25c2bb325d8cede0a507933b719f9715b1508ccd1d8f52fccd36f13a7640553dc108
+DIST usbredir-usbredir-0.13.0.tar.bz2 68836 BLAKE2B c0efabd12dec51bffa6e639db0a82547ec5c93ca649de823a6240373154d0929df599924ab3868d24ad74c7795202ad92ff1221589f37799944e34424acadf2d SHA512 b71eb1814ef456bebf62bac2e273f9a41b1451ae50941018c36d79298d74ac29c1137b66a4a928fd46c1fcd2905b83d3774fab703d88f9ea7e3e4e14420958ca
+DIST usbredir-usbredir-0.14.0.tar.bz2 69515 BLAKE2B c521a08b789eade8947c4deac1c840efa519b67efd376121371dd9999b9a4864b3e3a6a6cbc999f5f4ee2b1c60e8ff12ddf8656b6386928b2312c2d782120c13 SHA512 cbae84c472de71d8784b24bb4e903fdb350f58d80cb595c180b8cfc3e1e727c6c6ce9de9e2929c88b0c041c7ed91de4d1c89a3dd2016a97fd32d66e6c0b34998
diff --git a/sys-apps/usbredir/metadata.xml b/sys-apps/usbredir/metadata.xml
index 65b0e68bfe66..d15f407079c7 100644
--- a/sys-apps/usbredir/metadata.xml
+++ b/sys-apps/usbredir/metadata.xml
@@ -1,12 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<maintainer type="project">
- <email>virtualization@gentoo.org</email>
- <name>Gentoo Virtualization Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="freedesktop-gitlab">spice/usbredir</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/usbredir/usbredir-0.13.0-r1.ebuild b/sys-apps/usbredir/usbredir-0.13.0-r1.ebuild
new file mode 100644
index 000000000000..8ed5e7e785cc
--- /dev/null
+++ b/sys-apps/usbredir/usbredir-0.13.0-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="TCP daemon and set of libraries for usbredir protocol (redirecting USB traffic)"
+HOMEPAGE="https://www.spice-space.org/usbredir.html https://gitlab.freedesktop.org/spice/usbredir"
+SRC_URI="https://gitlab.freedesktop.org/spice/usbredir/-/archive/${P}/${PN}-${P}.tar.bz2"
+S="${WORKDIR}"/usbredir-${P}
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/glib:2
+ virtual/libusb:1
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ # This overrides our toolchain default.
+ sed -i -e '/-D_FORTIFY_SOURCE=2/d' meson.build || die
+
+ local emesonargs=(
+ -Dgit_werror=disabled
+ $(meson_feature test tests)
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dodoc -r docs/.
+}
diff --git a/sys-apps/usbredir/usbredir-0.14.0.ebuild b/sys-apps/usbredir/usbredir-0.14.0.ebuild
new file mode 100644
index 000000000000..55f0935bdece
--- /dev/null
+++ b/sys-apps/usbredir/usbredir-0.14.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="TCP daemon and set of libraries for usbredir protocol (redirecting USB traffic)"
+HOMEPAGE="https://www.spice-space.org/usbredir.html https://gitlab.freedesktop.org/spice/usbredir"
+SRC_URI="https://gitlab.freedesktop.org/spice/usbredir/-/archive/${P}/${PN}-${P}.tar.bz2"
+S="${WORKDIR}"/usbredir-${P}
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/glib:2
+ virtual/libusb:1
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ # This overrides our toolchain default.
+ sed -i -e '/-D_FORTIFY_SOURCE=2/d' meson.build || die
+
+ local emesonargs=(
+ -Dgit_werror=disabled
+ $(meson_feature test tests)
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dodoc -r docs/.
+}
diff --git a/sys-apps/usbredir/usbredir-0.7.1_p20170503.ebuild b/sys-apps/usbredir/usbredir-0.7.1_p20170503.ebuild
deleted file mode 100644
index 5b382fb4c5c0..000000000000
--- a/sys-apps/usbredir/usbredir-0.7.1_p20170503.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit eutils flag-o-matic ltprune
-
-MY_PV=${PV/_p*/}
-
-DESCRIPTION="TCP daemon and set of libraries for usbredir protocol (redirecting USB traffic)"
-HOMEPAGE="https://www.spice-space.org/usbredir.html"
-SRC_URI="https://www.spice-space.org/download/usbredir/usbredir-${MY_PV}.tar.bz2
- https://dev.gentoo.org/~tamiko/distfiles/${P}-patches.tar.xz"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ppc ppc64 sparc x86"
-IUSE="static-libs"
-
-RDEPEND="virtual/libusb:1"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-PATCHES=(
- "${S}_p20170503-patches"
-)
-
-DOCS="ChangeLog README* TODO *.txt"
-
-src_configure() {
- # https://bugs.freedesktop.org/show_bug.cgi?id=54643
- append-cflags -Wno-error
-
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- prune_libtool_files
-
- # noinst_PROGRAMS
- dobin usbredirtestclient/usbredirtestclient
-}
diff --git a/sys-apps/usbredir/usbredir-0.7.1_p20180211.ebuild b/sys-apps/usbredir/usbredir-0.7.1_p20180211.ebuild
deleted file mode 100644
index c939b6bf7ee3..000000000000
--- a/sys-apps/usbredir/usbredir-0.7.1_p20180211.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit eutils flag-o-matic ltprune
-
-MY_PV=${PV/_p*/}
-
-DESCRIPTION="TCP daemon and set of libraries for usbredir protocol (redirecting USB traffic)"
-HOMEPAGE="https://www.spice-space.org/usbredir.html"
-SRC_URI="https://www.spice-space.org/download/usbredir/usbredir-${MY_PV}.tar.bz2
- https://dev.gentoo.org/~tamiko/distfiles/${P}-patches.tar.xz"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="static-libs"
-
-RDEPEND="virtual/libusb:1"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-PATCHES=(
- "${S}_p20180211-patches"
-)
-
-DOCS="ChangeLog README* TODO *.txt"
-
-src_configure() {
- # https://bugs.freedesktop.org/show_bug.cgi?id=54643
- append-cflags -Wno-error
-
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- prune_libtool_files
-
- # noinst_PROGRAMS
- dobin usbredirtestclient/.libs/usbredirtestclient
-}
diff --git a/sys-apps/usbredir/usbredir-0.8.0.ebuild b/sys-apps/usbredir/usbredir-0.8.0.ebuild
deleted file mode 100644
index a62437dc2019..000000000000
--- a/sys-apps/usbredir/usbredir-0.8.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit eutils flag-o-matic
-
-MY_PV=${PV/_p*/}
-
-DESCRIPTION="TCP daemon and set of libraries for usbredir protocol (redirecting USB traffic)"
-HOMEPAGE="https://www.spice-space.org/usbredir.html"
-SRC_URI="https://www.spice-space.org/download/usbredir/usbredir-${MY_PV}.tar.bz2"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ppc ppc64 ~sparc x86"
-IUSE="static-libs"
-
-RDEPEND="virtual/libusb:1"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-DOCS="ChangeLog README* TODO *.txt"
-
-src_configure() {
- # https://bugs.freedesktop.org/show_bug.cgi?id=54643
- append-cflags -Wno-error
-
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- find "${D}" -name '*.la' -delete || die
-
- # noinst_PROGRAMS
- dobin usbredirtestclient/.libs/usbredirtestclient
-}
diff --git a/sys-apps/usbredir/usbredir-9999.ebuild b/sys-apps/usbredir/usbredir-9999.ebuild
deleted file mode 100644
index 86a0a057b70d..000000000000
--- a/sys-apps/usbredir/usbredir-9999.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils flag-o-matic autotools git-r3 ltprune
-
-DESCRIPTION="TCP daemon and set of libraries for usbredir protocol (redirecting USB traffic)"
-HOMEPAGE="https://www.spice-space.org/usbredir.html"
-EGIT_REPO_URI="https://anongit.freedesktop.org/git/spice/usbredir.git"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0"
-KEYWORDS=""
-IUSE="static-libs"
-
-RDEPEND="virtual/libusb:1"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-DOCS="ChangeLog README* TODO *.txt"
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- # https://bugs.freedesktop.org/show_bug.cgi?id=54643
- append-cflags -Wno-error
-
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- prune_libtool_files
-
- # noinst_PROGRAMS
- dobin usbredirtestclient/usbredirtestclient
-}
diff --git a/sys-apps/usbutils/Manifest b/sys-apps/usbutils/Manifest
index d68032be1afd..3914e85a8480 100644
--- a/sys-apps/usbutils/Manifest
+++ b/sys-apps/usbutils/Manifest
@@ -1,2 +1,2 @@
-DIST usbutils-012.tar.xz 98388 BLAKE2B a19d64edeb08bafe3e6a0d6be7cb5196cebb68623cfb5cd21941f109a3f3def774382bc6fe8b68398278e530417190030c8dd39ab982c088329c7acbb36cb672 SHA512 e26a60229e6eed5de670d6511dd1fa5ee3453cc5a848820531b46a1678b69378a2a45c29e24a218a8e7065c2c345356f03a2992f8298ddae6c8026d181f8de66
-DIST usbutils-013.tar.xz 98056 BLAKE2B d6e7925e180ba90f27ca12f13ed985f34e51b230ec08188c91bf39bb8e64baa319aa63d473318e1a4cb21b53808e8610f837ea0bb85657072f1c70107d037873 SHA512 eb1751e5b82f7a1bdffc667662cebee6fd42f466e59d4eb4c98f0d3723d740305377da1df1ba5831402fddbbd1697bbfa2abd22d9ed175e2dee55d6d007e9e54
+DIST usbutils-016.tar.xz 169000 BLAKE2B 2f3af61e5a7abf48cdf0a4aebc901ca1570007b54d11ae74572e16bdeb2d8e73844d76af54bd812d6d4b84ddaf6e956132ecc9a8a2849a7bffc0643e29115a49 SHA512 4483038bf91c056cd2977f5e7f449c0a62d9152d6f5d64ab7bde438ab9c1c56fe524ba10b35781c2828edd0fe89379dbaed78fa7ffe78903cae0c4e3c460f9a0
+DIST usbutils-017.tar.xz 168820 BLAKE2B 868c646ed6d38a38b9bd3ab85ba3a5e9362a97e476aeed6576c1b175caaf4ee688cb2c33756f02c9bf0aef9e7d58657331fc1c3b3314d86145b3d4f37124537e SHA512 eaebbc82eee4d940898f7a8de95ca49846c7c964e65c3d866b38735f8f3c8ccfed2b3a536bf2ef39a835a40a34c2273ac4d82b1012d0c693d4863cff14870d95
diff --git a/sys-apps/usbutils/metadata.xml b/sys-apps/usbutils/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/usbutils/metadata.xml
+++ b/sys-apps/usbutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/usbutils/usbutils-012.ebuild b/sys-apps/usbutils/usbutils-012.ebuild
deleted file mode 100644
index d70c22154812..000000000000
--- a/sys-apps/usbutils/usbutils-012.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit autotools python-single-r1
-
-DESCRIPTION="USB enumeration utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/usb/usbutils/
- https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usbutils.git/"
-SRC_URI="https://www.kernel.org/pub/linux/utils/usb/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="python"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DEPEND="virtual/libusb:1=
- virtual/libudev:="
-BDEPEND="
- app-arch/xz-utils
- virtual/pkgconfig"
-RDEPEND="${DEPEND}
- sys-apps/hwids
- python? ( ${PYTHON_DEPS} )"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- eautoreconf
- use python && python_fix_shebang lsusb.py.in
-}
-
-src_configure() {
- local myeconfargs=(
- --datarootdir="${EPREFIX}/usr/share"
- --datadir="${EPREFIX}/usr/share/misc"
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newdoc usbhid-dump/NEWS NEWS.usbhid-dump
-
- use python || rm -f "${ED}"/usr/bin/lsusb.py
-}
diff --git a/sys-apps/usbutils/usbutils-013.ebuild b/sys-apps/usbutils/usbutils-013.ebuild
deleted file mode 100644
index 60aebb858601..000000000000
--- a/sys-apps/usbutils/usbutils-013.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit autotools python-single-r1
-
-DESCRIPTION="USB enumeration utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/usb/usbutils/
- https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usbutils.git/"
-SRC_URI="https://www.kernel.org/pub/linux/utils/usb/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="python"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DEPEND="virtual/libusb:1=
- virtual/libudev:="
-BDEPEND="
- app-arch/xz-utils
- virtual/pkgconfig"
-RDEPEND="${DEPEND}
- sys-apps/hwids
- python? ( ${PYTHON_DEPS} )"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- eautoreconf
- use python && python_fix_shebang lsusb.py.in
-}
-
-src_configure() {
- local myeconfargs=(
- --datarootdir="${EPREFIX}/usr/share"
- --datadir="${EPREFIX}/usr/share/misc"
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- newdoc usbhid-dump/NEWS NEWS.usbhid-dump
-
- use python || rm -f "${ED}"/usr/bin/lsusb.py
-}
diff --git a/sys-apps/usbutils/usbutils-016.ebuild b/sys-apps/usbutils/usbutils-016.ebuild
new file mode 100644
index 000000000000..0d74f16ba1ba
--- /dev/null
+++ b/sys-apps/usbutils/usbutils-016.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit python-single-r1
+
+DESCRIPTION="USB enumeration utilities"
+HOMEPAGE="
+ https://www.kernel.org/pub/linux/utils/usb/usbutils/
+ https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usbutils.git/
+"
+SRC_URI="https://www.kernel.org/pub/linux/utils/usb/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="
+ virtual/libusb:1=
+ virtual/libudev:=
+"
+RDEPEND="
+ ${DEPEND}
+ python? (
+ ${PYTHON_DEPS}
+ sys-apps/hwdata
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ python? ( ${PYTHON_DEPS} )
+"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ use python && python_fix_shebang lsusb.py.in
+}
+
+src_configure() {
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ --datarootdir="${EPREFIX}/usr/share"
+ --datadir="${EPREFIX}/usr/share/hwdata"
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ newdoc usbhid-dump/NEWS NEWS.usbhid-dump
+ dobin usbreset # noinst_PROGRAMS, but installed by other distros
+
+ if ! use python ; then
+ rm -f "${ED}"/usr/bin/lsusb.py || die
+ fi
+}
diff --git a/sys-apps/usbutils/usbutils-017.ebuild b/sys-apps/usbutils/usbutils-017.ebuild
new file mode 100644
index 000000000000..8eabc778a185
--- /dev/null
+++ b/sys-apps/usbutils/usbutils-017.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit python-single-r1
+
+DESCRIPTION="USB enumeration utilities"
+HOMEPAGE="
+ https://www.kernel.org/pub/linux/utils/usb/usbutils/
+ https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usbutils.git/
+"
+SRC_URI="https://www.kernel.org/pub/linux/utils/usb/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="
+ virtual/libusb:1=
+ virtual/libudev:=
+"
+RDEPEND="
+ ${DEPEND}
+ python? (
+ ${PYTHON_DEPS}
+ sys-apps/hwdata
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ python? ( ${PYTHON_DEPS} )
+"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ use python && python_fix_shebang lsusb.py.in
+}
+
+src_configure() {
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ --datarootdir="${EPREFIX}/usr/share"
+ --datadir="${EPREFIX}/usr/share/hwdata"
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ newdoc usbhid-dump/NEWS NEWS.usbhid-dump
+ dobin usbreset # noinst_PROGRAMS, but installed by other distros
+
+ if ! use python ; then
+ rm -f "${ED}"/usr/bin/lsusb.py || die
+ fi
+}
diff --git a/sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch b/sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch
new file mode 100644
index 000000000000..39c036ae52ba
--- /dev/null
+++ b/sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch
@@ -0,0 +1,44 @@
+Fix building with clang-16, as lot of functions from string.h (including
+memset) couldn't be found. Resulting in error: call to undeclared library
+function memset type error.
+Bug: https://bugs.gentoo.org/898550
+--- a/port-helper/port-helper.c
++++ b/port-helper/port-helper.c
+@@ -13,6 +13,7 @@ for read and write, and the console is functional.
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <signal.h>
++#include <string.h>
+ #include <errno.h>
+ #include <unistd.h>
+ #include <sys/ioctl.h>
+--- a/uml_switch/port.c
++++ b/uml_switch/port.c
+@@ -1,6 +1,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
++#include <string.h>
+ #include <errno.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
+--- a/uml_switch/uml_switch.c
++++ b/uml_switch/uml_switch.c
+@@ -6,6 +6,7 @@
+ #include <errno.h>
+ #include <stdlib.h>
+ #include <signal.h>
++#include <string.h>
+ #include <fcntl.h>
+ #include <stdint.h>
+ #include <sys/socket.h>
+--- a/watchdog/uml_watchdog.c
++++ b/watchdog/uml_watchdog.c
+@@ -2,6 +2,7 @@
+ #include <stdlib.h>
+ #include <unistd.h>
+ #include <signal.h>
++#include <string.h>
+ #include <errno.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
diff --git a/sys-apps/usermode-utilities/metadata.xml b/sys-apps/usermode-utilities/metadata.xml
index 2ffcb96e8fe0..14b2af4b47a7 100644
--- a/sys-apps/usermode-utilities/metadata.xml
+++ b/sys-apps/usermode-utilities/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<use>
diff --git a/sys-apps/usermode-utilities/usermode-utilities-20070815-r3.ebuild b/sys-apps/usermode-utilities/usermode-utilities-20070815-r3.ebuild
deleted file mode 100644
index 86a15526f28f..000000000000
--- a/sys-apps/usermode-utilities/usermode-utilities-20070815-r3.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils toolchain-funcs
-
-DESCRIPTION="Tools for use with Usermode Linux virtual machines"
-HOMEPAGE="http://user-mode-linux.sourceforge.net/"
-SRC_URI="http://user-mode-linux.sourceforge.net/uml_utilities_${PV}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm x86"
-IUSE="fuse"
-
-RDEPEND="fuse? ( sys-fs/fuse )
- sys-libs/readline:0="
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}"/tools-${PV}
-
-src_prepare() {
- # Merge previous patches with fix for bug #331099
- epatch "${FILESDIR}"/${P}-rollup.patch
- # Fix owner of humfsify; bug #364531
- epatch "${FILESDIR}"/${P}-humfsify-owner.patch
- epatch "${FILESDIR}"/${P}-headers.patch #580816
-
- sed -i -e 's:-o \$(BIN):$(LDFLAGS) -o $(BIN):' "${S}"/*/Makefile || die "LDFLAGS sed failed"
- sed -i -e 's:-o \$@:$(LDFLAGS) -o $@:' "${S}"/moo/Makefile || die "LDFLAGS sed (moo) failed"
- if ! use fuse; then
- einfo "Skipping build of umlmount to avoid sys-fs/fuse dependency."
- sed -i -e 's/\<umlfs\>//' Makefile || die "sed to remove sys-fs/fuse dependency failed"
- fi
-}
-
-src_compile() {
- tc-export AR CC
- emake CFLAGS="${CFLAGS} ${CPPFLAGS} -DTUNTAP -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -g -Wall" all
-}
diff --git a/sys-apps/usermode-utilities/usermode-utilities-20070815-r4.ebuild b/sys-apps/usermode-utilities/usermode-utilities-20070815-r4.ebuild
index 04ceb9e3621c..1f37ae892809 100644
--- a/sys-apps/usermode-utilities/usermode-utilities-20070815-r4.ebuild
+++ b/sys-apps/usermode-utilities/usermode-utilities-20070815-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -10,7 +10,7 @@ SRC_URI="http://user-mode-linux.sourceforge.net/uml_utilities_${PV}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
+KEYWORDS="amd64 arm x86"
IUSE="fuse"
RDEPEND="
diff --git a/sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild b/sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild
new file mode 100644
index 000000000000..b162e7d846e7
--- /dev/null
+++ b/sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit toolchain-funcs
+
+DESCRIPTION="Tools for use with Usermode Linux virtual machines"
+HOMEPAGE="http://user-mode-linux.sourceforge.net/"
+SRC_URI="http://user-mode-linux.sourceforge.net/uml_utilities_${PV}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+IUSE="fuse"
+
+RDEPEND="
+ fuse? ( sys-fs/fuse:0= )
+ sys-libs/readline:0=
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}"/tools-${PV}
+
+PATCHES=(
+ # Merge previous patches with fix for bug #331099
+ "${FILESDIR}"/${P}-rollup.patch
+ # Fix owner of humfsify; bug #364531
+ "${FILESDIR}"/${P}-humfsify-owner.patch
+ "${FILESDIR}"/${P}-headers.patch #580816
+ # Fix build /w clang-16, bug #898550
+ "${FILESDIR}"/${PN}-fix-memset.patch
+)
+
+src_prepare() {
+ default
+ sed -i -e 's:-o \$(BIN):$(LDFLAGS) -o $(BIN):' "${S}"/*/Makefile || die "LDFLAGS sed failed"
+ sed -i -e 's:-o \$@:$(LDFLAGS) -o $@:' "${S}"/moo/Makefile || die "LDFLAGS sed (moo) failed"
+ if ! use fuse; then
+ einfo "Skipping build of umlmount to avoid sys-fs/fuse dependency."
+ sed -i -e 's/\<umlfs\>//' Makefile || die "sed to remove sys-fs/fuse dependency failed"
+ fi
+}
+
+src_compile() {
+ tc-export AR CC
+ emake CFLAGS="${CFLAGS} ${CPPFLAGS} -DTUNTAP -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -g -Wall" all
+}
diff --git a/sys-apps/utempter/metadata.xml b/sys-apps/utempter/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/utempter/metadata.xml
+++ b/sys-apps/utempter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/utempter/utempter-0.5.5.6-r1.ebuild b/sys-apps/utempter/utempter-0.5.5.6-r1.ebuild
new file mode 100644
index 000000000000..d90bfe7141c8
--- /dev/null
+++ b/sys-apps/utempter/utempter-0.5.5.6-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${P%.*}"
+MY_P="${MY_PN}-${PV##*.}"
+
+inherit flag-o-matic rpm toolchain-funcs
+
+DESCRIPTION="App that allows non-privileged apps to write utmp (login) info"
+HOMEPAGE="https://www.redhat.com/"
+SRC_URI="mirror://gentoo/${MY_P}.src.rpm"
+S="${WORKDIR}/${MY_PN}"
+
+LICENSE="|| ( MIT LGPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
+
+BDEPEND="acct-group/utmp"
+RDEPEND="
+ ${BDEPEND}
+ !sys-libs/libutempter
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.5.5.6-no_utmpx.patch
+ "${FILESDIR}"/${PN}-0.5.5.6-fix-build-system.patch
+)
+
+src_prepare() {
+ default
+ tc-export CC
+ append-cflags -Wall
+}
+
+src_install() {
+ local myemakeargs=(
+ LIBDIR="/usr/$(get_libdir)"
+ RPM_BUILD_ROOT="${ED}"
+ )
+
+ emake "${myemakeargs[@]}" install
+
+ dobin utmp
+
+ fowners root:utmp /usr/sbin/utempter
+ fperms 2755 /usr/sbin/utempter
+}
diff --git a/sys-apps/utempter/utempter-0.5.5.6.ebuild b/sys-apps/utempter/utempter-0.5.5.6.ebuild
deleted file mode 100644
index 9c46d738db2a..000000000000
--- a/sys-apps/utempter/utempter-0.5.5.6.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic rpm toolchain-funcs user
-
-MY_P=${P%.*}-${PV##*.}
-
-DESCRIPTION="App that allows non-privileged apps to write utmp (login) info"
-HOMEPAGE="https://www.redhat.com/"
-SRC_URI="mirror://gentoo/${MY_P}.src.rpm"
-
-LICENSE="|| ( MIT LGPL-2 )"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
-IUSE=""
-
-RDEPEND="
- !sys-libs/libutempter
- !dev-python/utmp"
-
-S=${WORKDIR}/${P%.*}
-PATCHES=(
- "${FILESDIR}"/${P}-no_utmpx.patch
- "${FILESDIR}"/${P}-fix-build-system.patch
-)
-
-pkg_setup() {
- enewgroup utmp 406
-}
-
-src_configure() {
- tc-export CC
- append-cflags -Wall
-}
-
-src_install() {
- emake \
- RPM_BUILD_ROOT="${ED}" \
- LIBDIR=/usr/$(get_libdir) \
- install
- dobin utmp
-
- fowners root:utmp /usr/sbin/utempter
- fperms 2755 /usr/sbin/utempter
-}
-
-pkg_postinst() {
- if [[ -f "${EROOT%/}"/var/log/wtmp ]] ; then
- chown root:utmp "${EROOT%/}"/var/log/wtmp
- chmod 664 "${EROOT%/}"/var/log/wtmp
- fi
- if [[ -f "${EROOT%/}"/var/run/utmp ]] ; then
- chown root:utmp "${EROOT%/}"/var/run/utmp
- chmod 664 "${EROOT%/}"/var/run/utmp
- fi
-}
diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index a2a2ae580eed..3e28df35ce6e 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,5 +1,2 @@
-DIST util-linux-2.33.2.tar.xz 4707024 BLAKE2B fdeed0a236edd26d268bccca8cde2cf1b7ecbff521ede9fa26ea22c8e5cdfc380a416a168789504b303f1b569d163e41f6630ee28829be7f2b2129fa14c4fffa SHA512 ac88790a0272366b384b54df19cb28318014d98819d5d96aa05528ff17ab57a8c66d012a2f1b59caca4c5d4ea669e8c041e1123517c1f1c2d9960ef701aaf749
-DIST util-linux-2.34.tar.xz 4974812 BLAKE2B d26b2f74d490eaee0a40d4c75a1a351ba165b4a52f9bbf6cf9d1afd7ae1382a3a3dfe41180584e97e9aaad6950f604cad928f30747590e3e1e669c8797689758 SHA512 2d0b76f63d32e7afb7acf61a83fabbfd58baa34ab78b3a331ce87f9c676a5fd71c56a493ded95039540d2c46b6048caaa38d7fb4491eb3d52d7b09dc54655cd7
-DIST util-linux-2.35.1.tar.xz 5138360 BLAKE2B 08c16d4d9fd670b62c2d664feda2cfa53d0cecc36bbaa2c3ed5960bf70f905f11caa7a904c63f36e12b472f10b8e781351cca0cf2f858c2b66e4fd0204b1c456 SHA512 6e27e08bfc02378970f015decfea5a52d6c342c4c8f4ac48dd07d248485eb797e506d91d290dbbca344c3e5cfe1fc150db80a23d510367427232f5abeabe591a
-DIST util-linux-2.35.2.tar.xz 5150488 BLAKE2B 93eb90ab33db7795b46425ec4ec87f8a2d3d6e0dad671345375ea02efd654bf72041932d30b41bea494e4b62952e2fd14ea9f9e6c738d4eb4b050bd170b9bb0e SHA512 59e038ba71aa74c9af6f927b357483a965f675ab3ffcd25cf0c1b043656312d2d2d07c55659fd3da69ede165bec313e0ae7e1cd73758e49681ae610604b399a2
-DIST util-linux-2.36.tar.xz 5242420 BLAKE2B a03b626a376815f37a17b3808d1d421c7ec27a133edf857116603de38f7e13f527687691d0c8aa68f4f6868be6f3bcc64573d759308d74731107e02067449ce6 SHA512 cbb4975da8d99a1edd45514171d59ea7b019ce0f77a81e88b447a733f725e91c53540d9dc78bc626dc011dca129b8b150aaf9e64ccf62a4202ae816581acf4fd
+DIST util-linux-2.39.3.tar.sign 833 BLAKE2B 433b9ad6e97d9e2ffbd516addf8406587d009d9c7661ac126ae89b370f22a39f1f1243e86ef383133d656833d3ad35054397d60e0e0c67bd1e9402939903570b SHA512 d9993d7a77531ca8fe3e58458d65e7d721c38aa53838547479fea169941a69b1c07fb02ac90ed5a0360025814b0999167621dbc4215348810584947a9e67756d
+DIST util-linux-2.39.3.tar.xz 8526168 BLAKE2B cd7b2b3c820e920d4a6ecd46fd807e018fc8e54439292f5e62c5f6863dd0f2505df3ec02c470d9be255a437c6ee8e4077908ac78d19a0d1273854d99eb571df0 SHA512 a2de1672f06ca5d2d431db1265a8499808770c3781019ec4a3a40170df4685826d8e3ca120841dcc5df4681ca8c935a993317bd0dc70465b21bf8e0efef65afa
diff --git a/sys-apps/util-linux/files/su-l.pamd b/sys-apps/util-linux/files/su-l.pamd
new file mode 100644
index 000000000000..24f29d751f9f
--- /dev/null
+++ b/sys-apps/util-linux/files/su-l.pamd
@@ -0,0 +1,5 @@
+auth include su
+account include su
+password include su
+session optional pam_lastlog.so
+session include su
diff --git a/sys-apps/util-linux/files/util-linux-2.33.1-fix-struct_termios-check.patch b/sys-apps/util-linux/files/util-linux-2.33.1-fix-struct_termios-check.patch
deleted file mode 100644
index df52af45049b..000000000000
--- a/sys-apps/util-linux/files/util-linux-2.33.1-fix-struct_termios-check.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 963413a1adf6767ab17712097e288e1a346f63a7 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 4 Jan 2019 22:38:25 -0800
-Subject: [PATCH] ldattach: Check for value of _HAVE_STRUCT_TERMIOS_C_ISPEED
-
-in glibc 2.29+ checking for just existence of _HAVE_STRUCT_TERMIOS_C_ISPEED
-won't be enough, the value has to be checked
-
-see
-https://sourceware.org/git/?p=glibc.git;a=commit;h=e5a50db36eaa6e8c6427b3a971563240b633ca85
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- sys-utils/ldattach.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sys-utils/ldattach.c b/sys-utils/ldattach.c
-index d33d68535..fb50711eb 100644
---- a/sys-utils/ldattach.c
-+++ b/sys-utils/ldattach.c
-@@ -242,7 +242,7 @@ static int my_cfsetspeed(struct termios *ts, int speed)
- * -- we have to bypass glibc and set the speed manually (because glibc
- * checks for speed and supports Bxxx bit rates only)...
- */
--#ifdef _HAVE_STRUCT_TERMIOS_C_ISPEED
-+#if _HAVE_STRUCT_TERMIOS_C_ISPEED
- # define BOTHER 0010000 /* non standard rate */
- dbg("using non-standard speeds");
- ts->c_ospeed = ts->c_ispeed = speed;
-
diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch b/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch
deleted file mode 100644
index 85e4d705735c..000000000000
--- a/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 0a4035ff2e4fd5b5ae0cf8f8665696c2aff53b75 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 10 Mar 2020 11:43:16 +0100
-Subject: [PATCH] include: cleanup pidfd inckudes
-
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- include/pidfd-utils.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
-index 0baedd2c9..4a6c3a604 100644
---- a/include/pidfd-utils.h
-+++ b/include/pidfd-utils.h
-@@ -3,10 +3,10 @@
-
- #if defined(__linux__)
- # include <sys/syscall.h>
--# if defined(SYS_pidfd_send_signal)
-+# if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open)
- # include <sys/types.h>
-
--# ifndef HAVE_PIDFD_OPEN
-+# ifndef HAVE_PIDFD_SEND_SIGNAL
- static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- unsigned int flags)
- {
-@@ -14,7 +14,7 @@ static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- }
- # endif
-
--# ifndef HAVE_PIDFD_SEND_SIGNAL
-+# ifndef HAVE_PIDFD_OPEN
- static inline int pidfd_open(pid_t pid, unsigned int flags)
- {
- return syscall(SYS_pidfd_open, pid, flags);
diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch b/sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch
deleted file mode 100644
index c8b5cf76a23c..000000000000
--- a/sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From cd781c405be82540484da3bfe3d3f17a39b8eb5c Mon Sep 17 00:00:00 2001
-From: J William Piggott <elseifthen@gmx.com>
-Date: Fri, 21 Feb 2020 20:03:47 -0500
-Subject: hwclock: make glibc 2.31 compatible
-
-______________________________________________________
-GNU C Library NEWS -- history of user-visible changes.
-Version 2.31
-Deprecated and removed features, and other changes affecting compatibility:
-
-* The settimeofday function can still be used to set a system-wide time
- zone when the operating system supports it. This is because the Linux
- kernel reused the API, on some architectures, to describe a system-wide
- time-zone-like offset between the software clock maintained by the kernel,
- and the "RTC" clock that keeps time when the system is shut down.
-
- However, to reduce the odds of this offset being set by accident,
- settimeofday can no longer be used to set the time and the offset
- simultaneously. If both of its two arguments are non-null, the call
- will fail (setting errno to EINVAL).
-
- Callers attempting to set this offset should also be prepared for the call
- to fail and set errno to ENOSYS; this already happens on the Hurd and on
- some Linux architectures. The Linux kernel maintainers are discussing a
- more principled replacement for the reused API. After a replacement
- becomes available, we will change settimeofday to fail with ENOSYS on all
- platforms when its 'tzp' argument is not a null pointer.
-
- settimeofday itself is obsolescent according to POSIX. Programs that set
- the system time should use clock_settime and/or the adjtime family of
- functions instead. We may cease to make settimeofday available to newly
- linked binaries after there is a replacement for Linux's time-zone-like
- offset API.
-______________________________________________________
-
-hwclock(8) had one settimeofday(2) call where both args were set for
---hctosys when the RTC was ticking UTC. This allowed setting the system
-time, timezone, and locking the warp_clock function with a single call.
-That operation now takes 3 calls of settimeofday(2).
-
-Although this common operation now takes three calls, the overall logic
-for the set_system_clock() function was simplified.
-
-Co-Author: Karel Zak <kzak@redhat.com>
-Signed-off-by: J William Piggott <elseifthen@gmx.com>
----
- sys-utils/hwclock.c | 71 ++++++++++++++++++++++++++++-------------------------
- 1 file changed, 37 insertions(+), 34 deletions(-)
-
-diff --git a/sys-utils/hwclock.c b/sys-utils/hwclock.c
-index e736da717..1191a8571 100644
---- a/sys-utils/hwclock.c
-+++ b/sys-utils/hwclock.c
-@@ -643,28 +643,28 @@ display_time(struct timeval hwctime)
- * tz.tz_minuteswest argument and sets PCIL (see below). At boot settimeofday(2)
- * has one-shot access to this function as shown in the table below.
- *
-- * +-------------------------------------------------------------------+
-- * | settimeofday(tv, tz) |
-- * |-------------------------------------------------------------------|
-- * | Arguments | System Time | PCIL | | warp_clock |
-- * | tv | tz | set | warped | set | firsttime | locked |
-- * |---------|---------|---------------|------|-----------|------------|
-- * | pointer | NULL | yes | no | no | 1 | no |
-- * | pointer | pointer | yes | no | no | 0 | yes |
-- * | NULL | ptr2utc | no | no | no | 0 | yes |
-- * | NULL | pointer | no | yes | yes | 0 | yes |
-- * +-------------------------------------------------------------------+
-+ * +-------------------------------------------------------------------------+
-+ * | settimeofday(tv, tz) |
-+ * |-------------------------------------------------------------------------|
-+ * | Arguments | System Time | TZ | PCIL | | warp_clock |
-+ * | tv | tz | set | warped | set | set | firsttime | locked |
-+ * |---------|---------|---------------|-----|------|-----------|------------|
-+ * | pointer | NULL | yes | no | no | no | 1 | no |
-+ * | NULL | ptr2utc | no | no | yes | no | 0 | yes |
-+ * | NULL | pointer | no | yes | yes | yes | 0 | yes |
-+ * +-------------------------------------------------------------------------+
- * ptr2utc: tz.tz_minuteswest is zero (UTC).
- * PCIL: persistent_clock_is_local, sets the "11 minute mode" timescale.
- * firsttime: locks the warp_clock function (initialized to 1 at boot).
-+ * Since glibc v2.31 settimeofday() will fail if both args are non NULL
- *
- * +---------------------------------------------------------------------------+
- * | op | RTC scale | settimeofday calls |
- * |---------|-----------|-----------------------------------------------------|
- * | systz | Local | 1) warps system time*, sets PCIL* and kernel tz |
- * | systz | UTC | 1st) locks warp_clock* 2nd) sets kernel tz |
-- * | hctosys | Local | 1st) sets PCIL* 2nd) sets system time and kernel tz |
-- * | hctosys | UTC | 1) sets system time and kernel tz |
-+ * | hctosys | Local | 1st) sets PCIL* & kernel tz 2nd) sets system time |
-+ * | hctosys | UTC | 1st) locks warp* 2nd) sets tz 3rd) sets system time |
- * +---------------------------------------------------------------------------+
- * * only on first call after boot
- */
-@@ -675,42 +675,45 @@ set_system_clock(const struct hwclock_control *ctl,
- struct tm broken;
- int minuteswest;
- int rc = 0;
-- const struct timezone tz_utc = { 0 };
-
- localtime_r(&newtime.tv_sec, &broken);
- minuteswest = -get_gmtoff(&broken) / 60;
-
- if (ctl->verbose) {
-- if (ctl->hctosys && !ctl->universal)
-- printf(_("Calling settimeofday(NULL, %d) to set "
-- "persistent_clock_is_local.\n"), minuteswest);
-- if (ctl->systz && ctl->universal)
-+ if (ctl->universal) {
- puts(_("Calling settimeofday(NULL, 0) "
-- "to lock the warp function."));
-+ "to lock the warp_clock function."));
-+ if (!( ctl->universal && !minuteswest ))
-+ printf(_("Calling settimeofday(NULL, %d) "
-+ "to set the kernel timezone.\n"),
-+ minuteswest);
-+ } else
-+ printf(_("Calling settimeofday(NULL, %d) to warp "
-+ "System time, set PCIL and the kernel tz.\n"),
-+ minuteswest);
-+
- if (ctl->hctosys)
-- printf(_("Calling settimeofday(%ld.%06ld, %d)\n"),
-- newtime.tv_sec, newtime.tv_usec, minuteswest);
-- else {
-- printf(_("Calling settimeofday(NULL, %d) "), minuteswest);
-- if (ctl->universal)
-- puts(_("to set the kernel timezone."));
-- else
-- puts(_("to warp System time."));
-- }
-+ printf(_("Calling settimeofday(%ld.%06ld, NULL) "
-+ "to set the System time.\n"),
-+ newtime.tv_sec, newtime.tv_usec);
- }
-
- if (!ctl->testing) {
-+ const struct timezone tz_utc = { 0 };
- const struct timezone tz = { minuteswest };
-
-- if (ctl->hctosys && !ctl->universal) /* set PCIL */
-- rc = settimeofday(NULL, &tz);
-- if (ctl->systz && ctl->universal) /* lock warp_clock */
-+ /* If UTC RTC: lock warp_clock and PCIL */
-+ if (ctl->universal)
- rc = settimeofday(NULL, &tz_utc);
-- if (!rc && ctl->hctosys)
-- rc = settimeofday(&newtime, &tz);
-- else if (!rc)
-+
-+ /* Set kernel tz; if localtime RTC: warp_clock and set PCIL */
-+ if (!rc && !( ctl->universal && !minuteswest ))
- rc = settimeofday(NULL, &tz);
-
-+ /* Set the System Clock */
-+ if ((!rc || errno == ENOSYS) && ctl->hctosys)
-+ rc = settimeofday(&newtime, NULL);
-+
- if (rc) {
- warn(_("settimeofday() failed"));
- return EXIT_FAILURE;
---
-cgit 1.2-0.3.lf.el7
-
diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch b/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch
deleted file mode 100644
index 8c646ee73a9d..000000000000
--- a/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 3cfde0370d3a8949df0c5bcf447cec6692910ed2 Mon Sep 17 00:00:00 2001
-From: Sami Kerola <kerolasa@iki.fi>
-Date: Sat, 15 Feb 2020 21:12:50 +0000
-Subject: [PATCH] kill: include sys/types.h before checking
- SYS_pidfd_send_signal
-
-Including sys/types.h must happen before SYS_pidfd_send_signal is checked,
-because that header defines variable in normal conditions. When sys/types.h
-does not have SYS_pidfd_send_signal then fallback is defined in config.h
-that is included by default, and has therefore worked fine before and after
-this change.
-
-Signed-off-by: Sami Kerola <kerolasa@iki.fi>
----
- include/pidfd-utils.h | 18 ++++++++++--------
- 1 file changed, 10 insertions(+), 8 deletions(-)
-
-diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
-index 593346576..0baedd2c9 100644
---- a/include/pidfd-utils.h
-+++ b/include/pidfd-utils.h
-@@ -1,26 +1,28 @@
- #ifndef UTIL_LINUX_PIDFD_UTILS
- #define UTIL_LINUX_PIDFD_UTILS
-
--#if defined(__linux__) && defined(SYS_pidfd_send_signal)
--# include <sys/types.h>
-+#if defined(__linux__)
- # include <sys/syscall.h>
-+# if defined(SYS_pidfd_send_signal)
-+# include <sys/types.h>
-
--# ifndef HAVE_PIDFD_OPEN
-+# ifndef HAVE_PIDFD_OPEN
- static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- unsigned int flags)
- {
- return syscall(SYS_pidfd_send_signal, pidfd, sig, info, flags);
- }
--# endif
-+# endif
-
--# ifndef HAVE_PIDFD_SEND_SIGNAL
-+# ifndef HAVE_PIDFD_SEND_SIGNAL
- static inline int pidfd_open(pid_t pid, unsigned int flags)
- {
- return syscall(SYS_pidfd_open, pid, flags);
- }
--# endif
-+# endif
-
--# define UL_HAVE_PIDFD 1
-+# define UL_HAVE_PIDFD 1
-
--#endif /* __linux__ && SYS_pidfd_send_signal */
-+# endif /* SYS_pidfd_send_signal */
-+#endif /* __linux__ */
- #endif /* UTIL_LINUX_PIDFD_UTILS */
diff --git a/sys-apps/util-linux/files/util-linux-2.39.2-backport-1d4456d.patch b/sys-apps/util-linux/files/util-linux-2.39.2-backport-1d4456d.patch
new file mode 100644
index 000000000000..3cce0bcab453
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.2-backport-1d4456d.patch
@@ -0,0 +1,33 @@
+https://bugs.gentoo.org/920904
+https://github.com/util-linux/util-linux/commit/1d4456dd81a64a73685df9e5f1232d566818e453
+
+From 1d4456dd81a64a73685df9e5f1232d566818e453 Mon Sep 17 00:00:00 2001
+From: John David Anglin <dave@parisc-linux.org>
+Date: Mon, 7 Aug 2023 15:37:17 +0000
+Subject: [PATCH] enosys: fix build on hppa
+
+The following patch fixes the definition of SECCOMP_ARCH_NATIVE
+on hppa.
+
+Signed-off-by: John David Anglin <dave.anglin@bell.net>
+---
+ include/audit-arch.h | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/include/audit-arch.h b/include/audit-arch.h
+index 63d9eb52c1..f1354eec5d 100644
+--- a/include/audit-arch.h
++++ b/include/audit-arch.h
+@@ -57,6 +57,12 @@
+ # else
+ # define SECCOMP_ARCH_NATIVE AUDIT_ARCH_LOONGARCH64
+ # endif
++#elif __hppa__
++# if __SIZEOF_POINTER__ == 4
++# define SECCOMP_ARCH_NATIVE AUDIT_ARCH_PARISC
++# else
++# define SECCOMP_ARCH_NATIVE AUDIT_ARCH_PARISC64
++# endif
+ #else
+ # error Unknown target architecture
+ #endif
diff --git a/sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch b/sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch
new file mode 100644
index 000000000000..b16519bb5142
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch
@@ -0,0 +1,268 @@
+https://bugs.gentoo.org/914791
+https://github.com/util-linux/util-linux/issues/2249
+https://github.com/util-linux/util-linux/pull/2251
+
+From 8b36444f447949c3ab477f2c43b45a94c30ee7bf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:42:14 +0200
+Subject: [PATCH 1/4] fadvise: (test) dynamically calculate expected test
+ values
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/ts/fadvise/drop | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 7c7eee5dc2..86c0d5b0a3 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -16,7 +16,7 @@ ts_check_prog "sleep"
+ ts_cd "$TS_OUTDIR"
+
+ FILE="ddtest"
+-BS=4k
++BS=4096
+ COUNT=8
+
+ FILE_FS="$("$TS_CMD_FINDMNT" -nr -o FSTYPE -T "$PWD")"
+@@ -41,22 +41,22 @@ create_file() {
+ echo
+
+ create_file
+- echo "offset: 8192"
+- "$TS_CMD_FADVISE" -o 8192 "$FILE"
++ echo "offset: $(( 2 * $BS ))"
++ "$TS_CMD_FADVISE" -o $(( 2 * $BS )) "$FILE"
+ echo status: $?
+ "$TS_CMD_FINCORE" "$FILE"
+ echo
+
+ create_file
+- echo "length: 16384"
+- "$TS_CMD_FADVISE" -l 16384 "$FILE"
++ echo "length: $(( 4 * $BS ))"
++ "$TS_CMD_FADVISE" -l $(( 4 * $BS )) "$FILE"
+ echo status: $?
+ "$TS_CMD_FINCORE" "$FILE"
+ echo
+
+ create_file
+- echo "offset: 8192, length: 16384 fd: 42"
+- "$TS_CMD_FADVISE" -o 8192 -l 16384 --fd 42 42<"$FILE"
++ echo "offset: $(( 2 * $BS )), length: $(( 4 * $BS )) fd: 42"
++ "$TS_CMD_FADVISE" -o $(( 2 * $BS )) -l $(( 4 * $BS )) --fd 42 42<"$FILE"
+ echo status: $?
+ "$TS_CMD_FINCORE" "$FILE"
+ echo
+
+From e5009e773fc801eca887dd43b721cd1b1aa327be Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:43:38 +0200
+Subject: [PATCH 2/4] fadvise: (tests) factor out calls to "fincore"
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This will make it easier to pass argument later.
+
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/ts/fadvise/drop | 14 +++++++++-----
+ 1 file changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 86c0d5b0a3..8869b7da4d 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -28,37 +28,41 @@ create_file() {
+ dd if=/dev/zero of="$FILE" bs=$BS count=$COUNT conv=fsync >& /dev/null
+ }
+
++do_fincore() {
++ "$TS_CMD_FINCORE" "$FILE"
++}
++
+ {
+ create_file
+- "$TS_CMD_FINCORE" "$FILE"
++ do_fincore
+ echo
+
+ create_file
+ echo "whole file"
+ "$TS_CMD_FADVISE" "$FILE"
+ echo status: $?
+- "$TS_CMD_FINCORE" "$FILE"
++ do_fincore
+ echo
+
+ create_file
+ echo "offset: $(( 2 * $BS ))"
+ "$TS_CMD_FADVISE" -o $(( 2 * $BS )) "$FILE"
+ echo status: $?
+- "$TS_CMD_FINCORE" "$FILE"
++ do_fincore
+ echo
+
+ create_file
+ echo "length: $(( 4 * $BS ))"
+ "$TS_CMD_FADVISE" -l $(( 4 * $BS )) "$FILE"
+ echo status: $?
+- "$TS_CMD_FINCORE" "$FILE"
++ do_fincore
+ echo
+
+ create_file
+ echo "offset: $(( 2 * $BS )), length: $(( 4 * $BS )) fd: 42"
+ "$TS_CMD_FADVISE" -o $(( 2 * $BS )) -l $(( 4 * $BS )) --fd 42 42<"$FILE"
+ echo status: $?
+- "$TS_CMD_FINCORE" "$FILE"
++ do_fincore
+ echo
+
+ rm "$FILE"
+
+From 33980996d0b429fc59c40f8352633c0a21a0f96a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:44:20 +0200
+Subject: [PATCH 3/4] fadvise: (test) don't compare fincore page counts
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These depend on the machines pagesize and are therefore not a good
+comparision.
+
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/expected/fadvise/drop | 20 ++++++++++----------
+ tests/ts/fadvise/drop | 2 +-
+ 2 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/tests/expected/fadvise/drop b/tests/expected/fadvise/drop
+index f2360b56fb..25f23e050a 100644
+--- a/tests/expected/fadvise/drop
++++ b/tests/expected/fadvise/drop
+@@ -1,23 +1,23 @@
+- RES PAGES SIZE FILE
+- 32K 8 32K ddtest
++ RES SIZE FILE
++ 32K 32K ddtest
+
+ whole file
+ status: 0
+-RES PAGES SIZE FILE
+- 0B 0 32K ddtest
++RES SIZE FILE
++ 0B 32K ddtest
+
+ offset: 8192
+ status: 0
+-RES PAGES SIZE FILE
+- 8K 2 32K ddtest
++RES SIZE FILE
++ 8K 32K ddtest
+
+ length: 16384
+ status: 0
+- RES PAGES SIZE FILE
+- 16K 4 32K ddtest
++ RES SIZE FILE
++ 16K 32K ddtest
+
+ offset: 8192, length: 16384 fd: 42
+ status: 0
+- RES PAGES SIZE FILE
+- 16K 4 32K ddtest
++ RES SIZE FILE
++ 16K 32K ddtest
+
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 8869b7da4d..6c4298e872 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -29,7 +29,7 @@ create_file() {
+ }
+
+ do_fincore() {
+- "$TS_CMD_FINCORE" "$FILE"
++ "$TS_CMD_FINCORE" -o RES,SIZE,FILE "$FILE"
+ }
+
+ {
+
+From c0f31b79f5d1c665cdc057fb32f4d161d28aa5b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:45:10 +0200
+Subject: [PATCH 4/4] fadvise: (test) test with 64k blocks
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This will allow the tests to also pass on systems with 64k pagesizes.
+
+Closes #2249
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/expected/fadvise/drop | 26 +++++++++++++-------------
+ tests/ts/fadvise/drop | 2 +-
+ 2 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/tests/expected/fadvise/drop b/tests/expected/fadvise/drop
+index 25f23e050a..e7bb26b6e2 100644
+--- a/tests/expected/fadvise/drop
++++ b/tests/expected/fadvise/drop
+@@ -1,23 +1,23 @@
+- RES SIZE FILE
+- 32K 32K ddtest
++ RES SIZE FILE
++ 512K 512K ddtest
+
+ whole file
+ status: 0
+-RES SIZE FILE
+- 0B 32K ddtest
++RES SIZE FILE
++ 0B 512K ddtest
+
+-offset: 8192
++offset: 131072
+ status: 0
+-RES SIZE FILE
+- 8K 32K ddtest
++ RES SIZE FILE
++ 128K 512K ddtest
+
+-length: 16384
++length: 262144
+ status: 0
+- RES SIZE FILE
+- 16K 32K ddtest
++ RES SIZE FILE
++ 256K 512K ddtest
+
+-offset: 8192, length: 16384 fd: 42
++offset: 131072, length: 262144 fd: 42
+ status: 0
+- RES SIZE FILE
+- 16K 32K ddtest
++ RES SIZE FILE
++ 256K 512K ddtest
+
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 6c4298e872..45dcb9110b 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -16,7 +16,7 @@ ts_check_prog "sleep"
+ ts_cd "$TS_OUTDIR"
+
+ FILE="ddtest"
+-BS=4096
++BS=65536
+ COUNT=8
+
+ FILE_FS="$("$TS_CMD_FINDMNT" -nr -o FSTYPE -T "$PWD")"
diff --git a/sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch b/sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch
new file mode 100644
index 000000000000..f69876fe0a18
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch
@@ -0,0 +1,23 @@
+https://bugs.gentoo.org/627532
+https://github.com/util-linux/util-linux/commit/f5715c117e727d4ff45e0d8568f188753620356e
+
+From f5715c117e727d4ff45e0d8568f188753620356e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Mon, 13 Nov 2023 21:05:59 +0100
+Subject: [PATCH] fincore: (tests) also use nosize error file
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Link: https://lore.kernel.org/util-linux/b8cafd0d89878949705782312dfe800ec2779035.camel@physik.fu-berlin.de/
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+--- a/tests/ts/fincore/count
++++ b/tests/ts/fincore/count
+@@ -107,6 +107,7 @@ if test -f "$TS_EXPECTED.$PAGE_SIZE"; then
+ OUT_COLUMNS="PAGES,SIZE,FILE"
+ else
+ TS_EXPECTED+=".nosize"
++ TS_EXPECTED_ERR+=".nosize"
+ OUT_COLUMNS="PAGES,FILE"
+ fi
+
diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-CVE-2024-28085.patch b/sys-apps/util-linux/files/util-linux-2.39.3-CVE-2024-28085.patch
new file mode 100644
index 000000000000..99092c05aa7e
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-CVE-2024-28085.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/927980
+https://people.rit.edu/sjf5462/6831711781/wall_2_27_2024.txt
+https://github.com/util-linux/util-linux/commit/404b0781f52f7c045ca811b2dceec526408ac253
+
+From 404b0781f52f7c045ca811b2dceec526408ac253 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 21 Mar 2024 11:16:20 +0100
+Subject: [PATCH] wall: fix escape sequence Injection [CVE-2024-28085]
+
+Let's use for all cases the same output function.
+
+Reported-by: Skyler Ferrante <sjf5462@rit.edu>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+--- a/term-utils/wall.c
++++ b/term-utils/wall.c
+@@ -368,7 +368,7 @@ static char *makemsg(char *fname, char **mvec, int mvecsz,
+ int i;
+
+ for (i = 0; i < mvecsz; i++) {
+- fputs(mvec[i], fs);
++ fputs_careful(mvec[i], fs, '^', true, TERM_WIDTH);
+ if (i < mvecsz - 1)
+ fputc(' ', fs);
+ }
+
diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch b/sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch
new file mode 100644
index 000000000000..6ebbd0a430f7
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch
@@ -0,0 +1,52 @@
+https://bugs.gentoo.org/928396
+https://github.com/util-linux/util-linux/commit/4b2e6f5071a4c5beebbd9668d24dc05defc096d7
+
+From 4b2e6f5071a4c5beebbd9668d24dc05defc096d7 Mon Sep 17 00:00:00 2001
+From: Tanish Yadav <devtany@gmail.com>
+Date: Tue, 5 Mar 2024 00:51:41 +0530
+Subject: [PATCH] su: fix use after free in run_shell
+
+Do not free tmp for non login branch as basename may return a pointer to
+some part of it.
+
+[kzak@redhat.com: - improve coding style of the function]
+
+Signed-off-by: Tanish Yadav <devtany@gmail.com>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/su-common.c | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/login-utils/su-common.c b/login-utils/su-common.c
+index 242b6ce4ea..9bc0231961 100644
+--- a/login-utils/su-common.c
++++ b/login-utils/su-common.c
+@@ -835,13 +835,14 @@ static void run_shell(
+ size_t n_args = 1 + su->fast_startup + 2 * ! !command + n_additional_args + 1;
+ const char **args = xcalloc(n_args, sizeof *args);
+ size_t argno = 1;
++ char *tmp;
+
+ DBG(MISC, ul_debug("starting shell [shell=%s, command=\"%s\"%s%s]",
+ shell, command,
+ su->simulate_login ? " login" : "",
+ su->fast_startup ? " fast-start" : ""));
++ tmp = xstrdup(shell);
+
+- char* tmp = xstrdup(shell);
+ if (su->simulate_login) {
+ char *arg0;
+ char *shell_basename;
+@@ -851,10 +852,8 @@ static void run_shell(
+ arg0[0] = '-';
+ strcpy(arg0 + 1, shell_basename);
+ args[0] = arg0;
+- } else {
+- args[0] = basename(tmp);
+- }
+- free(tmp);
++ } else
++ args[0] = basename(tmp);
+
+ if (su->fast_startup)
+ args[argno++] = "-f";
diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-libblkid-luks.patch b/sys-apps/util-linux/files/util-linux-2.39.3-libblkid-luks.patch
new file mode 100644
index 000000000000..222243426d5e
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-libblkid-luks.patch
@@ -0,0 +1,40 @@
+https://bugs.gentoo.org/926950
+https://gitlab.com/lvmteam/lvm2/-/issues/11
+https://bugzilla.opensuse.org/show_bug.cgi?id=1213227
+https://github.com/util-linux/util-linux/pull/2373
+https://github.com/util-linux/util-linux/commit/93ba7961779789217a1f814ce3110ff8c040c8c3
+
+From 93ba7961779789217a1f814ce3110ff8c040c8c3 Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fvogt@suse.de>
+Date: Wed, 12 Jul 2023 15:48:27 +0200
+Subject: [PATCH] Revert "libblkid: try LUKS2 first when probing"
+
+mdadm superblocks before 1.1 are placed at the end of the device, which
+means that the data contained inside the array starts at offset 0. For
+LUKS inside MD, blkid falsely detects this as plain LUKS instead of a
+linux_raid_member. This causes e.g. dracut to not assemble the array
+during boot and system startup fails.
+
+This reverts commit b8889c0a214aeb3dd47bf1ab280fe5534b64d2aa.
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -94,11 +94,6 @@ static int blkid_probe_set_usage(blkid_probe pr, int usage);
+ */
+ static const struct blkid_idinfo *idinfos[] =
+ {
+- /* In case the volume is locked with OPAL we are going to get
+- * an I/O error when reading past the LUKS header, so try it
+- * first. */
+- &luks_idinfo,
+-
+ /* RAIDs */
+ &linuxraid_idinfo,
+ &ddfraid_idinfo,
+@@ -124,6 +119,7 @@ static const struct blkid_idinfo *idinfos[] =
+ &snapcow_idinfo,
+ &verity_hash_idinfo,
+ &integrity_idinfo,
++ &luks_idinfo,
+ &vmfs_volume_idinfo,
+ &ubi_idinfo,
+ &vdo_idinfo,
diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch b/sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
new file mode 100644
index 000000000000..710ca934115f
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
@@ -0,0 +1,55 @@
+https://bugs.gentoo.org/927258
+https://github.com/util-linux/util-linux/pull/2845
+
+From d271589d9536181184fcd19194f879e7c776d43e Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Mon, 18 Mar 2024 21:29:13 -0400
+Subject: [PATCH] libmount: Fix export of mnt_context_is_lazy and
+ mnt_context_is_onlyonce
+
+[kzak@redhat.com: - fix also function docs]
+
+Bug: https://bugs.gentoo.org/927258
+Closes: https://github.com/util-linux/util-linux/issues/2844
+Fixes: 3d1c41c8c ("libmount: add --onlyonce")
+Signed-off-by: Matt Turner <mattst88@gmail.com>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+(cherry picked from commit 6d2917f2eb910fb8bcdc6476be18c34fee152911)
+---
+ libmount/src/context.c | 4 ++--
+ libmount/src/libmount.sym | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/libmount/src/context.c b/libmount/src/context.c
+index 0cd320190..20f4c64ae 100644
+--- a/libmount/src/context.c
++++ b/libmount/src/context.c
+@@ -549,10 +549,10 @@ int mnt_context_enable_onlyonce(struct libmnt_context *cxt, int enable)
+ }
+
+ /**
+- * mnt_context_is_lazy:
++ * mnt_context_is_onlyonce:
+ * @cxt: mount context
+ *
+- * Returns: 1 if lazy umount is enabled or 0
++ * Returns: 1 if only-once mount is enabled or 0
+ */
+ int mnt_context_is_onlyonce(struct libmnt_context *cxt)
+ {
+diff --git a/libmount/src/libmount.sym b/libmount/src/libmount.sym
+index 715bb5c5f..1fa8bce3c 100644
+--- a/libmount/src/libmount.sym
++++ b/libmount/src/libmount.sym
+@@ -370,7 +370,7 @@ MOUNT_2_38 {
+ MOUNT_2_39 {
+ mnt_cache_set_sbprobe;
+ mnt_context_enable_onlyonce;
+- mnt_context_is_lazy;
++ mnt_context_is_onlyonce;
+ mnt_context_enable_noautofs;
+ mnt_table_enable_noautofs;
+ mnt_table_is_noautofs;
+--
+2.43.2
+
diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-musl-1.2.5-basename.patch b/sys-apps/util-linux/files/util-linux-2.39.3-musl-1.2.5-basename.patch
new file mode 100644
index 000000000000..519545e17088
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-musl-1.2.5-basename.patch
@@ -0,0 +1,56 @@
+https://bugs.gentoo.org/926293
+https://github.com/util-linux/util-linux/commit/77454e58d58f904cfdc02d3ca5bb65f1bd8739fc
+
+From 77454e58d58f904cfdc02d3ca5bb65f1bd8739fc Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 3 Dec 2023 19:59:46 -0800
+Subject: [PATCH] login-utils: include libgen.h for basename API
+
+musl has removed the non-prototype declaration of basename from string.h [1] which now results in build errors with clang-17+ compiler
+
+include libgen.h for using the posix declaration of the funciton.
+
+Fixes
+
+../util-linux-2.39.2/login-utils/su-common.c:847:20: error: call to undeclared function 'basename'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+ 847 | shell_basename = basename(shell);
+ | ^
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/login-utils/su-common.c
++++ b/login-utils/su-common.c
+@@ -26,6 +26,7 @@
+ #include <sys/types.h>
+ #include <pwd.h>
+ #include <grp.h>
++#include <libgen.h>
+ #include <security/pam_appl.h>
+ #ifdef HAVE_SECURITY_PAM_MISC_H
+ # include <security/pam_misc.h>
+@@ -840,17 +841,20 @@ static void run_shell(
+ su->simulate_login ? " login" : "",
+ su->fast_startup ? " fast-start" : ""));
+
++ char* tmp = xstrdup(shell);
+ if (su->simulate_login) {
+ char *arg0;
+ char *shell_basename;
+
+- shell_basename = basename(shell);
++ shell_basename = basename(tmp);
+ arg0 = xmalloc(strlen(shell_basename) + 2);
+ arg0[0] = '-';
+ strcpy(arg0 + 1, shell_basename);
+ args[0] = arg0;
+- } else
+- args[0] = basename(shell);
++ } else {
++ args[0] = basename(tmp);
++ }
++ free(tmp);
+
+ if (su->fast_startup)
+ args[argno++] = "-f";
+
diff --git a/sys-apps/util-linux/metadata.xml b/sys-apps/util-linux/metadata.xml
index 121dd51cf546..2d9b8b837fe2 100644
--- a/sys-apps/util-linux/metadata.xml
+++ b/sys-apps/util-linux/metadata.xml
@@ -1,29 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<use>
- <flag name="audit">Use <pkg>sys-process/audit</pkg> to emit audit messages about system changes</flag>
- <flag name="caps">build setpriv helper (run programs with diff capabilities)</flag>
- <flag name="cramfs">build mkfs/fsck helpers for cramfs filesystems</flag>
- <flag name="cryptsetup">Use <pkg>sys-fs/cryptsetup</pkg> to have built-in dm-verity in libmount</flag>
- <flag name="fdformat">build fdformat (floppy disk format)</flag>
- <flag name="hardlink">build hardlink program</flag>
- <flag name="kill">build the kill program</flag>
- <flag name="logger">build the logger program</flag>
- <flag name="pam">build runuser helper</flag>
- <flag name="su">build the su program</flag>
- <flag name="suid">
- install mount/umount as setuid so non-root users may mount/umount devices,
- and wall/write as setgid so non-root users can notify other users
- </flag>
- <flag name="tty-helpers">install the mesg/wall/write tools for talking to local users</flag>
-</use>
-<upstream>
- <remote-id type="cpe">cpe:/a:andries_brouwer:util-linux</remote-id>
- <remote-id type="github">karelzak/util-linux</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <use>
+ <flag name="audit">Use <pkg>sys-process/audit</pkg> to emit audit messages about system changes</flag>
+ <flag name="caps">build setpriv helper (run programs with diff capabilities)</flag>
+ <flag name="cramfs">build mkfs/fsck helpers for cramfs filesystems</flag>
+ <flag name="cryptsetup">Use <pkg>sys-fs/cryptsetup</pkg> to have built-in dm-verity in libmount</flag>
+ <flag name="fdformat">build fdformat (floppy disk format)</flag>
+ <flag name="hardlink">build hardlink program</flag>
+ <flag name="kill">build the kill program</flag>
+ <flag name="logger">build the logger program</flag>
+ <flag name="pam">build runuser helper</flag>
+ <flag name="rtas">Add support for the Run Time Abstraction Services (RTAS)</flag>
+ <flag name="su">build the su program</flag>
+ <flag name="suid">
+ Install some programs with suid bit set to provide additional functionality.
+ mount/umount: non-root users may mount/umount devices
+ wall/write: non-root users can notify other users
+ su: non-root users may become root
+ </flag>
+ <flag name="tty-helpers">install the mesg/wall/write tools for talking to local users</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:andries_brouwer:util-linux</remote-id>
+ <remote-id type="github">util-linux/util-linux</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/util-linux/util-linux-2.33.2.ebuild b/sys-apps/util-linux/util-linux-2.33.2.ebuild
deleted file mode 100644
index c711fd63f4dc..000000000000
--- a/sys-apps/util-linux/util-linux-2.33.2.ebuild
+++ /dev/null
@@ -1,290 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
- pam python-r1 multilib-minimal multiprocessing systemd
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3 autotools
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
- SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
-fi
-
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux slang static-libs +suid systemd test tty-helpers udev unicode userland_GNU"
-
-# Most lib deps here are related to programs rather than our libs,
-# so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="caps? ( sys-libs/libcap-ng )
- cramfs? ( sys-libs/zlib:= )
- ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
- nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
- pam? ( sys-libs/pam )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
- slang? ( sys-libs/slang )
- !build? ( systemd? ( sys-apps/systemd ) )
- udev? ( virtual/libudev:= )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
- test? ( sys-devel/bc )
- virtual/os-headers"
-RDEPEND+="
- kill? (
- !sys-apps/coreutils[kill]
- !sys-process/procps[kill]
- )
- !net-wireless/rfkill
- !<app-shells/bash-completion-2.7-r1"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- # In glibc-2.29+, a lot of changes were made to arch-specific
- # handling of `struct termios', which breaks atleast MIPS.
- # The below patch from upstream fixes this, and should be
- # in the next release.
- # See: https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/commit/?id=963413a1adf6767ab17712097e288e1a346f63a7
- "${FILESDIR}/${PN}-2.33.1-fix-struct_termios-check.patch"
-)
-
-src_prepare() {
- default
-
- # Prevent uuidd test failure due to socket path limit. #593304
- sed -i \
- -e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
- tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
-
- if ! use userland_GNU; then
- # test runner is using GNU-specific xargs call
- sed -i -e 's:xargs:gxargs:' tests/run.sh || die
- # test requires util-linux uuidgen (which we don't build)
- rm tests/ts/uuid/oids || die
- fi
-
- if [[ ${PV} == 9999 ]] ; then
- po/update-potfiles
- eautoreconf
- fi
-
- elibtoolize
-}
-
-lfs_fallocate_test() {
- # Make sure we can use fallocate with LFS #300307
- cat <<-EOF > "${T}"/fallocate.${ABI}.c
- #define _GNU_SOURCE
- #include <fcntl.h>
- main() { return fallocate(0, 0, 0, 0); }
- EOF
- append-lfs-flags
- $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
- || export ac_cv_func_fallocate=no
- rm -f "${T}"/fallocate.${ABI}.c
-}
-
-python_configure() {
- local myeconfargs=(
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- --with-python
- )
- if use userland_GNU; then
- myeconfargs+=(
- --enable-libblkid
- --enable-libmount
- --enable-pylibmount
- )
- fi
- mkdir "${BUILD_DIR}" || die
- pushd "${BUILD_DIR}" >/dev/null || die
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
- popd >/dev/null || die
-}
-
-multilib_src_configure() {
- lfs_fallocate_test
- # The scanf test in a run-time test which fails while cross-compiling.
- # Blindly assume a POSIX setup since we require libmount, and libmount
- # itself fails when the scanf test fails. #531856
- tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
- export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
- export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
-
- # Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
- export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
- export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
-
- local myeconfargs=(
- --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
- --with-bashcompletiondir="$(get_bashcompdir)"
- --without-python
- $(multilib_native_use_enable suid makeinstall-chown)
- $(multilib_native_use_enable suid makeinstall-setuid)
- $(multilib_native_use_with readline)
- $(multilib_native_use_with slang)
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
- $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
- $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
- $(tc-has-tls || echo --disable-tls)
- $(use_enable nls)
- $(use_enable unicode widechar)
- $(use_enable static-libs static)
- $(use_with selinux)
- $(use_with ncurses tinfo)
- )
- # build programs only on GNU, on *BSD we want libraries only
- if multilib_is_native_abi && use userland_GNU; then
- myeconfargs+=(
- --disable-chfn-chsh
- --disable-login
- --disable-nologin
- --disable-pylibmount
- --disable-su
- --enable-agetty
- --enable-bash-completion
- --enable-line
- --enable-partx
- --enable-raw
- --enable-rename
- --enable-rfkill
- --enable-schedutils
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable caps setpriv)
- $(use_enable cramfs)
- $(use_enable fdformat)
- $(use_enable tty-helpers mesg)
- $(use_enable tty-helpers wall)
- $(use_enable tty-helpers write)
- $(use_enable kill)
- )
- else
- myeconfargs+=(
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- # build libraries
- --enable-libuuid
- --enable-libblkid
- --enable-libsmartcols
- --enable-libfdisk
- )
- if use userland_GNU; then
- # those libraries don't work on *BSD
- myeconfargs+=(
- --enable-libmount
- )
- fi
- fi
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_configure
- fi
-}
-
-python_compile() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake all
- popd >/dev/null || die
-}
-
-multilib_src_compile() {
- emake all
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_compile
- fi
-}
-
-python_test() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- popd >/dev/null || die
-}
-
-multilib_src_test() {
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_test
- fi
-}
-
-python_install() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake DESTDIR="${D}" install
- python_optimize
- popd >/dev/null || die
-}
-
-multilib_src_install() {
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_install
- fi
-
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use userland_GNU; then
- # need the libs in /
- gen_usr_ldscript -a blkid fdisk mount smartcols uuid
- fi
-}
-
-multilib_src_install_all() {
- dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
- # e2fsprogs-libs didnt install .la files, and .pc work fine
- find "${ED}" -name "*.la" -delete || die
-
- if ! use userland_GNU; then
- # manpage collisions
- # TODO: figure out a good way to keep them
- rm "${ED%/}"/usr/share/man/man3/uuid* || die
- fi
-
- if use pam; then
- newpamd "${FILESDIR}/runuser.pamd" runuser
- newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
- fi
-
- # Note:
- # Bash completion for "runuser" command is provided by same file which
- # would also provide bash completion for "su" command. However, we don't
- # use "su" command from this package.
- # This triggers a known QA warning which we ignore for now to magically
- # keep bash completion for "su" command which shadow package does not
- # provide.
-}
-
-pkg_postinst() {
- if ! use tty-helpers; then
- elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
- fi
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "The agetty util now clears the terminal by default. You"
- elog "might want to add --noclear to your /etc/inittab lines."
- fi
-}
diff --git a/sys-apps/util-linux/util-linux-2.34-r3.ebuild b/sys-apps/util-linux/util-linux-2.34-r3.ebuild
deleted file mode 100644
index f2e5cc62adc4..000000000000
--- a/sys-apps/util-linux/util-linux-2.34-r3.ebuild
+++ /dev/null
@@ -1,301 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
- pam python-r1 multilib-minimal multiprocessing systemd
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3 autotools
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
- SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
-fi
-
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="build caps +cramfs fdformat hardlink kill +logger ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU"
-
-# Most lib deps here are related to programs rather than our libs,
-# so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="
- caps? ( sys-libs/libcap-ng )
- cramfs? ( sys-libs/zlib:= )
- ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
- nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
- pam? ( sys-libs/pam )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
- slang? ( sys-libs/slang )
- !build? ( systemd? ( sys-apps/systemd ) )
- udev? ( virtual/libudev:= )"
-BDEPEND="
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
- test? ( sys-devel/bc )
-"
-DEPEND="
- ${RDEPEND}
- virtual/os-headers
-"
-RDEPEND+="
- hardlink? ( !app-arch/hardlink )
- logger? ( !>=app-admin/sysklogd-2.0[logger] )
- kill? (
- !sys-apps/coreutils[kill]
- !sys-process/procps[kill]
- )
- su? (
- !<sys-apps/shadow-4.7-r2
- !>=sys-apps/shadow-4.7-r2[su]
- )
- !net-wireless/rfkill
- !<app-shells/bash-completion-2.7-r1"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
-
- # Prevent uuidd test failure due to socket path limit. #593304
- sed -i \
- -e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
- tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
-
- if ! use userland_GNU; then
- # test runner is using GNU-specific xargs call
- sed -i -e 's:xargs:gxargs:' tests/run.sh || die
- # test requires util-linux uuidgen (which we don't build)
- rm tests/ts/uuid/oids || die
- fi
-
- if [[ ${PV} == 9999 ]] ; then
- po/update-potfiles
- eautoreconf
- fi
-
- elibtoolize
-}
-
-lfs_fallocate_test() {
- # Make sure we can use fallocate with LFS #300307
- cat <<-EOF > "${T}"/fallocate.${ABI}.c
- #define _GNU_SOURCE
- #include <fcntl.h>
- main() { return fallocate(0, 0, 0, 0); }
- EOF
- append-lfs-flags
- $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
- || export ac_cv_func_fallocate=no
- rm -f "${T}"/fallocate.${ABI}.c
-}
-
-python_configure() {
- local myeconfargs=(
- "${commonargs[@]}"
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- --with-python
- )
- if use userland_GNU; then
- myeconfargs+=(
- --enable-libblkid
- --enable-libmount
- --enable-pylibmount
- )
- fi
- mkdir "${BUILD_DIR}" || die
- pushd "${BUILD_DIR}" >/dev/null || die
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
- popd >/dev/null || die
-}
-
-multilib_src_configure() {
- lfs_fallocate_test
- # The scanf test in a run-time test which fails while cross-compiling.
- # Blindly assume a POSIX setup since we require libmount, and libmount
- # itself fails when the scanf test fails. #531856
- tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
- export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
- export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
-
- # Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
- export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
- export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
-
- # configure args shared by python and non-python builds
- local commonargs=(
- --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
- )
-
- local myeconfargs=(
- "${commonargs[@]}"
- --with-bashcompletiondir="$(get_bashcompdir)"
- --without-python
- $(multilib_native_use_enable suid makeinstall-chown)
- $(multilib_native_use_enable suid makeinstall-setuid)
- $(multilib_native_use_with readline)
- $(multilib_native_use_with slang)
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
- $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
- $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
- $(tc-has-tls || echo --disable-tls)
- $(use_enable nls)
- $(use_enable unicode widechar)
- $(use_enable static-libs static)
- $(use_with ncurses tinfo)
- $(use_with selinux)
- )
- # build programs only on GNU, on *BSD we want libraries only
- if multilib_is_native_abi && use userland_GNU; then
- myeconfargs+=(
- --disable-chfn-chsh
- --disable-login
- --disable-nologin
- --disable-pylibmount
- --enable-agetty
- --enable-bash-completion
- --enable-line
- --enable-partx
- --enable-raw
- --enable-rename
- --enable-rfkill
- --enable-schedutils
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable caps setpriv)
- $(use_enable cramfs)
- $(use_enable fdformat)
- $(use_enable hardlink)
- $(use_enable kill)
- $(use_enable logger)
- $(use_enable su)
- $(use_enable tty-helpers mesg)
- $(use_enable tty-helpers wall)
- $(use_enable tty-helpers write)
- )
- else
- myeconfargs+=(
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- # build libraries
- --enable-libuuid
- --enable-libblkid
- --enable-libsmartcols
- --enable-libfdisk
- )
- if use userland_GNU; then
- # those libraries don't work on *BSD
- myeconfargs+=(
- --enable-libmount
- )
- fi
- fi
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_configure
- fi
-}
-
-python_compile() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake all
- popd >/dev/null || die
-}
-
-multilib_src_compile() {
- emake all
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_compile
- fi
-}
-
-python_test() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- popd >/dev/null || die
-}
-
-multilib_src_test() {
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_test
- fi
-}
-
-python_install() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake DESTDIR="${D}" install
- python_optimize
- popd >/dev/null || die
-}
-
-multilib_src_install() {
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_install
- fi
-
- # This needs to be called AFTER python_install call (#689190)
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use userland_GNU; then
- # need the libs in /
- gen_usr_ldscript -a blkid fdisk mount smartcols uuid
- fi
-}
-
-multilib_src_install_all() {
- dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
- # e2fsprogs-libs didnt install .la files, and .pc work fine
- find "${ED}" -name "*.la" -delete || die
-
- if ! use userland_GNU; then
- # manpage collisions
- # TODO: figure out a good way to keep them
- rm "${ED}"/usr/share/man/man3/uuid* || die
- fi
-
- if use pam; then
- newpamd "${FILESDIR}/runuser.pamd" runuser
- newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
- fi
-
- # Note:
- # Bash completion for "runuser" command is provided by same file which
- # would also provide bash completion for "su" command. However, we don't
- # use "su" command from this package.
- # This triggers a known QA warning which we ignore for now to magically
- # keep bash completion for "su" command which shadow package does not
- # provide.
-}
-
-pkg_postinst() {
- if ! use tty-helpers; then
- elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
- fi
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "The agetty util now clears the terminal by default. You"
- elog "might want to add --noclear to your /etc/inittab lines."
- fi
-}
diff --git a/sys-apps/util-linux/util-linux-2.35.1-r2.ebuild b/sys-apps/util-linux/util-linux-2.35.1-r2.ebuild
deleted file mode 100644
index 293433d1724c..000000000000
--- a/sys-apps/util-linux/util-linux-2.35.1-r2.ebuild
+++ /dev/null
@@ -1,317 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
- pam python-r1 multilib-minimal multiprocessing systemd
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3 autotools
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux"
- SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
-fi
-
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
-
-LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="audit build caps +cramfs cryptsetup fdformat hardlink kill +logger ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU"
-
-# Most lib deps here are related to programs rather than our libs,
-# so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="
- virtual/libcrypt:=
- audit? ( >=sys-process/audit-2.6:= )
- caps? ( sys-libs/libcap-ng )
- cramfs? ( sys-libs/zlib:= )
- cryptsetup? ( sys-fs/cryptsetup )
- hardlink? ( dev-libs/libpcre2:= )
- ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
- nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
- pam? ( sys-libs/pam )
- ppc? ( sys-libs/librtas )
- ppc64? ( sys-libs/librtas )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
- slang? ( sys-libs/slang )
- !build? ( systemd? ( sys-apps/systemd ) )
- udev? ( virtual/libudev:= )"
-BDEPEND="
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
- test? ( sys-devel/bc )
-"
-DEPEND="
- ${RDEPEND}
- virtual/os-headers
-"
-RDEPEND+="
- hardlink? ( !app-arch/hardlink )
- logger? ( !>=app-admin/sysklogd-2.0[logger] )
- kill? (
- !sys-apps/coreutils[kill]
- !sys-process/procps[kill]
- )
- su? (
- !<sys-apps/shadow-4.7-r2
- !>=sys-apps/shadow-4.7-r2[su]
- )
- !net-wireless/rfkill
- !<app-shells/bash-completion-2.7-r1"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}"/util-linux-2.35.1-include_sys_types-header.patch
- "${FILESDIR}"/util-linux-2.35.1-cleanup-pidfd-include.patch
- "${FILESDIR}"/util-linux-2.35.1-hwclock-glibc-2.31.patch
-)
-
-src_prepare() {
- default
-
- # Prevent uuidd test failure due to socket path limit. #593304
- sed -i \
- -e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
- tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
-
- if ! use userland_GNU; then
- # test runner is using GNU-specific xargs call
- sed -i -e 's:xargs:gxargs:' tests/run.sh || die
- # test requires util-linux uuidgen (which we don't build)
- rm tests/ts/uuid/oids || die
- fi
-
- if [[ ${PV} == 9999 ]] ; then
- po/update-potfiles
- eautoreconf
- fi
-
- elibtoolize
-}
-
-lfs_fallocate_test() {
- # Make sure we can use fallocate with LFS #300307
- cat <<-EOF > "${T}"/fallocate.${ABI}.c
- #define _GNU_SOURCE
- #include <fcntl.h>
- main() { return fallocate(0, 0, 0, 0); }
- EOF
- append-lfs-flags
- $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
- || export ac_cv_func_fallocate=no
- rm -f "${T}"/fallocate.${ABI}.c
-}
-
-python_configure() {
- local myeconfargs=(
- "${commonargs[@]}"
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- --with-python
- )
- if use userland_GNU; then
- myeconfargs+=(
- --enable-libblkid
- --enable-libmount
- --enable-pylibmount
- )
- fi
- mkdir "${BUILD_DIR}" || die
- pushd "${BUILD_DIR}" >/dev/null || die
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
- popd >/dev/null || die
-}
-
-multilib_src_configure() {
- lfs_fallocate_test
- # The scanf test in a run-time test which fails while cross-compiling.
- # Blindly assume a POSIX setup since we require libmount, and libmount
- # itself fails when the scanf test fails. #531856
- tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
- export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
- export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
-
- # Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
- export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
- export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
-
- # configure args shared by python and non-python builds
- local commonargs=(
- --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
- )
-
- local myeconfargs=(
- "${commonargs[@]}"
- --with-bashcompletiondir="$(get_bashcompdir)"
- --without-python
- $(multilib_native_use_enable suid makeinstall-chown)
- $(multilib_native_use_enable suid makeinstall-setuid)
- $(multilib_native_use_with readline)
- $(multilib_native_use_with slang)
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
- $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
- $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
- $(multilib_native_use_with audit)
- $(tc-has-tls || echo --disable-tls)
- $(use_enable nls)
- $(use_enable unicode widechar)
- $(use_enable static-libs static)
- $(use_with ncurses tinfo)
- $(use_with selinux)
- )
- # build programs only on GNU, on *BSD we want libraries only
- if multilib_is_native_abi && use userland_GNU; then
- myeconfargs+=(
- --disable-chfn-chsh
- --disable-login
- --disable-nologin
- --disable-pylibmount
- --enable-agetty
- --enable-bash-completion
- --enable-line
- --enable-partx
- --enable-raw
- --enable-rename
- --enable-rfkill
- --enable-schedutils
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable caps setpriv)
- $(use_enable cramfs)
- $(use_enable fdformat)
- $(use_enable hardlink)
- $(use_enable kill)
- $(use_enable logger)
- $(use_enable ncurses pg)
- $(use_enable su)
- $(use_enable tty-helpers mesg)
- $(use_enable tty-helpers wall)
- $(use_enable tty-helpers write)
- $(use_with cryptsetup)
- )
- else
- myeconfargs+=(
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- # build libraries
- --enable-libuuid
- --enable-libblkid
- --enable-libsmartcols
- --enable-libfdisk
- )
- if use userland_GNU; then
- # those libraries don't work on *BSD
- myeconfargs+=(
- --enable-libmount
- )
- fi
- fi
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_configure
- fi
-}
-
-python_compile() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake all
- popd >/dev/null || die
-}
-
-multilib_src_compile() {
- emake all
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_compile
- fi
-}
-
-python_test() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- popd >/dev/null || die
-}
-
-multilib_src_test() {
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_test
- fi
-}
-
-python_install() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake DESTDIR="${D}" install
- python_optimize
- popd >/dev/null || die
-}
-
-multilib_src_install() {
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_install
- fi
-
- # This needs to be called AFTER python_install call (#689190)
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use userland_GNU; then
- # need the libs in /
- gen_usr_ldscript -a blkid fdisk mount smartcols uuid
- fi
-}
-
-multilib_src_install_all() {
- dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
- chmod -x "${ED}"/usr/share/doc/util-linux-${PVR}/getopt/getopt-parse* || die
-
- # e2fsprogs-libs didnt install .la files, and .pc work fine
- find "${ED}" -name "*.la" -delete || die
-
- if ! use userland_GNU; then
- # manpage collisions
- # TODO: figure out a good way to keep them
- rm "${ED}"/usr/share/man/man3/uuid* || die
- fi
-
- if use pam; then
- newpamd "${FILESDIR}/runuser.pamd" runuser
- newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
- fi
-
- # Note:
- # Bash completion for "runuser" command is provided by same file which
- # would also provide bash completion for "su" command. However, we don't
- # use "su" command from this package.
- # This triggers a known QA warning which we ignore for now to magically
- # keep bash completion for "su" command which shadow package does not
- # provide.
-}
-
-pkg_postinst() {
- if ! use tty-helpers; then
- elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
- fi
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "The agetty util now clears the terminal by default. You"
- elog "might want to add --noclear to your /etc/inittab lines."
- fi
-}
diff --git a/sys-apps/util-linux/util-linux-2.35.2.ebuild b/sys-apps/util-linux/util-linux-2.35.2.ebuild
deleted file mode 100644
index a8a3a209c72a..000000000000
--- a/sys-apps/util-linux/util-linux-2.35.2.ebuild
+++ /dev/null
@@ -1,315 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
- pam python-r1 multilib-minimal multiprocessing systemd
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3 autotools
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
- SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
-fi
-
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
-
-LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="audit build caps +cramfs cryptsetup fdformat hardlink kill +logger ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU"
-
-# Most lib deps here are related to programs rather than our libs,
-# so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="
- virtual/libcrypt:=
- audit? ( >=sys-process/audit-2.6:= )
- caps? ( sys-libs/libcap-ng )
- cramfs? ( sys-libs/zlib:= )
- cryptsetup? ( sys-fs/cryptsetup )
- hardlink? ( dev-libs/libpcre2:= )
- ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
- nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
- pam? ( sys-libs/pam )
- ppc? ( sys-libs/librtas )
- ppc64? ( sys-libs/librtas )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
- slang? ( sys-libs/slang )
- !build? ( systemd? ( sys-apps/systemd ) )
- udev? ( virtual/libudev:= )"
-BDEPEND="
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
- test? ( sys-devel/bc )
-"
-DEPEND="
- ${RDEPEND}
- virtual/os-headers
-"
-RDEPEND+="
- hardlink? ( !app-arch/hardlink )
- logger? ( !>=app-admin/sysklogd-2.0[logger] )
- kill? (
- !sys-apps/coreutils[kill]
- !sys-process/procps[kill]
- )
- su? (
- !<sys-apps/shadow-4.7-r2
- !>=sys-apps/shadow-4.7-r2[su]
- )
- !net-wireless/rfkill
- !<app-shells/bash-completion-2.7-r1"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}"/util-linux-2.35.1-cleanup-pidfd-include.patch
-)
-
-src_prepare() {
- default
-
- # Prevent uuidd test failure due to socket path limit. #593304
- sed -i \
- -e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
- tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
-
- if ! use userland_GNU; then
- # test runner is using GNU-specific xargs call
- sed -i -e 's:xargs:gxargs:' tests/run.sh || die
- # test requires util-linux uuidgen (which we don't build)
- rm tests/ts/uuid/oids || die
- fi
-
- if [[ ${PV} == 9999 ]] ; then
- po/update-potfiles
- eautoreconf
- fi
-
- elibtoolize
-}
-
-lfs_fallocate_test() {
- # Make sure we can use fallocate with LFS #300307
- cat <<-EOF > "${T}"/fallocate.${ABI}.c
- #define _GNU_SOURCE
- #include <fcntl.h>
- main() { return fallocate(0, 0, 0, 0); }
- EOF
- append-lfs-flags
- $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
- || export ac_cv_func_fallocate=no
- rm -f "${T}"/fallocate.${ABI}.c
-}
-
-python_configure() {
- local myeconfargs=(
- "${commonargs[@]}"
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- --with-python
- )
- if use userland_GNU; then
- myeconfargs+=(
- --enable-libblkid
- --enable-libmount
- --enable-pylibmount
- )
- fi
- mkdir "${BUILD_DIR}" || die
- pushd "${BUILD_DIR}" >/dev/null || die
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
- popd >/dev/null || die
-}
-
-multilib_src_configure() {
- lfs_fallocate_test
- # The scanf test in a run-time test which fails while cross-compiling.
- # Blindly assume a POSIX setup since we require libmount, and libmount
- # itself fails when the scanf test fails. #531856
- tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
- export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
- export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
-
- # Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
- export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
- export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
-
- # configure args shared by python and non-python builds
- local commonargs=(
- --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
- )
-
- local myeconfargs=(
- "${commonargs[@]}"
- --with-bashcompletiondir="$(get_bashcompdir)"
- --without-python
- $(multilib_native_use_enable suid makeinstall-chown)
- $(multilib_native_use_enable suid makeinstall-setuid)
- $(multilib_native_use_with readline)
- $(multilib_native_use_with slang)
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
- $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
- $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
- $(multilib_native_use_with audit)
- $(tc-has-tls || echo --disable-tls)
- $(use_enable nls)
- $(use_enable unicode widechar)
- $(use_enable static-libs static)
- $(use_with ncurses tinfo)
- $(use_with selinux)
- )
- # build programs only on GNU, on *BSD we want libraries only
- if multilib_is_native_abi && use userland_GNU; then
- myeconfargs+=(
- --disable-chfn-chsh
- --disable-login
- --disable-nologin
- --disable-pylibmount
- --enable-agetty
- --enable-bash-completion
- --enable-line
- --enable-partx
- --enable-raw
- --enable-rename
- --enable-rfkill
- --enable-schedutils
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable caps setpriv)
- $(use_enable cramfs)
- $(use_enable fdformat)
- $(use_enable hardlink)
- $(use_enable kill)
- $(use_enable logger)
- $(use_enable ncurses pg)
- $(use_enable su)
- $(use_enable tty-helpers mesg)
- $(use_enable tty-helpers wall)
- $(use_enable tty-helpers write)
- $(use_with cryptsetup)
- )
- else
- myeconfargs+=(
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- # build libraries
- --enable-libuuid
- --enable-libblkid
- --enable-libsmartcols
- --enable-libfdisk
- )
- if use userland_GNU; then
- # those libraries don't work on *BSD
- myeconfargs+=(
- --enable-libmount
- )
- fi
- fi
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_configure
- fi
-}
-
-python_compile() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake all
- popd >/dev/null || die
-}
-
-multilib_src_compile() {
- emake all
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_compile
- fi
-}
-
-python_test() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- popd >/dev/null || die
-}
-
-multilib_src_test() {
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_test
- fi
-}
-
-python_install() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake DESTDIR="${D}" install
- python_optimize
- popd >/dev/null || die
-}
-
-multilib_src_install() {
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_install
- fi
-
- # This needs to be called AFTER python_install call (#689190)
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use userland_GNU; then
- # need the libs in /
- gen_usr_ldscript -a blkid fdisk mount smartcols uuid
- fi
-}
-
-multilib_src_install_all() {
- dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
- chmod -x "${ED}"/usr/share/doc/util-linux-${PVR}/getopt/getopt-parse* || die
-
- # e2fsprogs-libs didnt install .la files, and .pc work fine
- find "${ED}" -name "*.la" -delete || die
-
- if ! use userland_GNU; then
- # manpage collisions
- # TODO: figure out a good way to keep them
- rm "${ED}"/usr/share/man/man3/uuid* || die
- fi
-
- if use pam; then
- newpamd "${FILESDIR}/runuser.pamd" runuser
- newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
- fi
-
- # Note:
- # Bash completion for "runuser" command is provided by same file which
- # would also provide bash completion for "su" command. However, we don't
- # use "su" command from this package.
- # This triggers a known QA warning which we ignore for now to magically
- # keep bash completion for "su" command which shadow package does not
- # provide.
-}
-
-pkg_postinst() {
- if ! use tty-helpers; then
- elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
- fi
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "The agetty util now clears the terminal by default. You"
- elog "might want to add --noclear to your /etc/inittab lines."
- fi
-}
diff --git a/sys-apps/util-linux/util-linux-2.36.ebuild b/sys-apps/util-linux/util-linux-2.36.ebuild
deleted file mode 100644
index 902e36ad068a..000000000000
--- a/sys-apps/util-linux/util-linux-2.36.ebuild
+++ /dev/null
@@ -1,311 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
- pam python-r1 multilib-minimal multiprocessing systemd
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3 autotools
- EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
- SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
-fi
-
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
-
-LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="audit build caps +cramfs cryptsetup fdformat hardlink kill +logger ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU"
-
-# Most lib deps here are related to programs rather than our libs,
-# so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="
- virtual/libcrypt:=
- audit? ( >=sys-process/audit-2.6:= )
- caps? ( sys-libs/libcap-ng )
- cramfs? ( sys-libs/zlib:= )
- cryptsetup? ( sys-fs/cryptsetup )
- hardlink? ( dev-libs/libpcre2:= )
- ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
- nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
- pam? ( sys-libs/pam )
- ppc? ( sys-libs/librtas )
- ppc64? ( sys-libs/librtas )
- python? ( ${PYTHON_DEPS} )
- readline? ( sys-libs/readline:0= )
- selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
- slang? ( sys-libs/slang )
- !build? ( systemd? ( sys-apps/systemd ) )
- udev? ( virtual/libudev:= )"
-BDEPEND="
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
- test? ( sys-devel/bc )
-"
-DEPEND="
- ${RDEPEND}
- virtual/os-headers
-"
-RDEPEND+="
- hardlink? ( !app-arch/hardlink )
- logger? ( !>=app-admin/sysklogd-2.0[logger] )
- kill? (
- !sys-apps/coreutils[kill]
- !sys-process/procps[kill]
- )
- su? (
- !<sys-apps/shadow-4.7-r2
- !>=sys-apps/shadow-4.7-r2[su]
- )
- !net-wireless/rfkill
- !<app-shells/bash-completion-2.7-r1"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
-
- # Prevent uuidd test failure due to socket path limit. #593304
- sed -i \
- -e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
- tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
-
- if ! use userland_GNU; then
- # test runner is using GNU-specific xargs call
- sed -i -e 's:xargs:gxargs:' tests/run.sh || die
- # test requires util-linux uuidgen (which we don't build)
- rm tests/ts/uuid/oids || die
- fi
-
- if [[ ${PV} == 9999 ]] ; then
- po/update-potfiles
- eautoreconf
- fi
-
- elibtoolize
-}
-
-lfs_fallocate_test() {
- # Make sure we can use fallocate with LFS #300307
- cat <<-EOF > "${T}"/fallocate.${ABI}.c
- #define _GNU_SOURCE
- #include <fcntl.h>
- main() { return fallocate(0, 0, 0, 0); }
- EOF
- append-lfs-flags
- $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
- || export ac_cv_func_fallocate=no
- rm -f "${T}"/fallocate.${ABI}.c
-}
-
-python_configure() {
- local myeconfargs=(
- "${commonargs[@]}"
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- --with-python
- )
- if use userland_GNU; then
- myeconfargs+=(
- --enable-libblkid
- --enable-libmount
- --enable-pylibmount
- )
- fi
- mkdir "${BUILD_DIR}" || die
- pushd "${BUILD_DIR}" >/dev/null || die
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
- popd >/dev/null || die
-}
-
-multilib_src_configure() {
- lfs_fallocate_test
- # The scanf test in a run-time test which fails while cross-compiling.
- # Blindly assume a POSIX setup since we require libmount, and libmount
- # itself fails when the scanf test fails. #531856
- tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
- export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
- export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
-
- # Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
- export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
- export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
-
- # configure args shared by python and non-python builds
- local commonargs=(
- --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
- )
-
- local myeconfargs=(
- "${commonargs[@]}"
- --with-bashcompletiondir="$(get_bashcompdir)"
- --without-python
- $(multilib_native_use_enable suid makeinstall-chown)
- $(multilib_native_use_enable suid makeinstall-setuid)
- $(multilib_native_use_with readline)
- $(multilib_native_use_with slang)
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
- $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
- $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
- $(multilib_native_use_with audit)
- $(tc-has-tls || echo --disable-tls)
- $(use_enable nls)
- $(use_enable unicode widechar)
- $(use_enable static-libs static)
- $(use_with ncurses tinfo)
- $(use_with selinux)
- )
- # build programs only on GNU, on *BSD we want libraries only
- if multilib_is_native_abi && use userland_GNU; then
- myeconfargs+=(
- --disable-chfn-chsh
- --disable-login
- --disable-nologin
- --disable-pylibmount
- --enable-agetty
- --enable-bash-completion
- --enable-line
- --enable-partx
- --enable-raw
- --enable-rename
- --enable-rfkill
- --enable-schedutils
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable caps setpriv)
- $(use_enable cramfs)
- $(use_enable fdformat)
- $(use_enable hardlink)
- $(use_enable kill)
- $(use_enable logger)
- $(use_enable ncurses pg)
- $(use_enable su)
- $(use_enable tty-helpers mesg)
- $(use_enable tty-helpers wall)
- $(use_enable tty-helpers write)
- $(use_with cryptsetup)
- )
- else
- myeconfargs+=(
- --disable-all-programs
- --disable-bash-completion
- --without-systemdsystemunitdir
- # build libraries
- --enable-libuuid
- --enable-libblkid
- --enable-libsmartcols
- --enable-libfdisk
- )
- if use userland_GNU; then
- # those libraries don't work on *BSD
- myeconfargs+=(
- --enable-libmount
- )
- fi
- fi
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_configure
- fi
-}
-
-python_compile() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake all
- popd >/dev/null || die
-}
-
-multilib_src_compile() {
- emake all
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_compile
- fi
-}
-
-python_test() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- popd >/dev/null || die
-}
-
-multilib_src_test() {
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_test
- fi
-}
-
-python_install() {
- pushd "${BUILD_DIR}" >/dev/null || die
- emake DESTDIR="${D}" install
- python_optimize
- popd >/dev/null || die
-}
-
-multilib_src_install() {
- if multilib_is_native_abi && use python; then
- python_foreach_impl python_install
- fi
-
- # This needs to be called AFTER python_install call (#689190)
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use userland_GNU; then
- # need the libs in /
- gen_usr_ldscript -a blkid fdisk mount smartcols uuid
- fi
-}
-
-multilib_src_install_all() {
- dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
- chmod -x "${ED}"/usr/share/doc/util-linux-${PVR}/getopt/getopt-parse* || die
-
- # e2fsprogs-libs didnt install .la files, and .pc work fine
- find "${ED}" -name "*.la" -delete || die
-
- if ! use userland_GNU; then
- # manpage collisions
- # TODO: figure out a good way to keep them
- rm "${ED}"/usr/share/man/man3/uuid* || die
- fi
-
- if use pam; then
- newpamd "${FILESDIR}/runuser.pamd" runuser
- newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
- fi
-
- # Note:
- # Bash completion for "runuser" command is provided by same file which
- # would also provide bash completion for "su" command. However, we don't
- # use "su" command from this package.
- # This triggers a known QA warning which we ignore for now to magically
- # keep bash completion for "su" command which shadow package does not
- # provide.
-}
-
-pkg_postinst() {
- if ! use tty-helpers; then
- elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
- fi
-
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "The agetty util now clears the terminal by default. You"
- elog "might want to add --noclear to your /etc/inittab lines."
- fi
-}
diff --git a/sys-apps/util-linux/util-linux-2.39.3-r2.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r2.ebuild
new file mode 100644
index 000000000000..33249fda2a28
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39.3-r2.ebuild
@@ -0,0 +1,408 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+ pam python-r1 multilib-minimal multiprocessing systemd
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+ inherit autotools git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
+ inherit verify-sig
+
+ if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos"
+ fi
+
+ SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux"
+
+LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode"
+
+# Most lib deps here are related to programs rather than our libs,
+# so we rarely need to specify ${MULTILIB_USEDEP}.
+RDEPEND="
+ virtual/libcrypt:=
+ audit? ( >=sys-process/audit-2.6:= )
+ caps? ( sys-libs/libcap-ng )
+ cramfs? ( sys-libs/zlib:= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 )
+ hardlink? ( dev-libs/libpcre2:= )
+ ncurses? (
+ sys-libs/ncurses:=[unicode(+)?]
+ magic? ( sys-apps/file:0= )
+ )
+ nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:0= )
+ rtas? ( sys-libs/librtas )
+ selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+ slang? ( sys-libs/slang )
+ !build? (
+ systemd? ( sys-apps/systemd )
+ udev? ( virtual/libudev:= )
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? (
+ app-text/po4a
+ sys-devel/gettext
+ )
+ test? ( app-alternatives/bc )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+ acct-group/root
+"
+RDEPEND+="
+ hardlink? ( !app-arch/hardlink )
+ logger? ( !>=app-admin/sysklogd-2.0[logger] )
+ kill? (
+ !sys-apps/coreutils[kill]
+ !sys-process/procps[kill]
+ )
+ su? (
+ !<sys-apps/shadow-4.7-r2
+ !>=sys-apps/shadow-4.7-r2[su]
+ )
+ !net-wireless/rfkill
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ # Required for man-page generation
+ BDEPEND+=" dev-ruby/asciidoctor"
+else
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.patch
+)
+
+pkg_pretend() {
+ if use su && ! use suid ; then
+ elog "su will be installed as suid despite USE=-suid (bug #832092)"
+ elog "To use su without suid, see e.g. Portage's suidctl feature."
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
+
+ if use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${MY_P}.tar.xz . || die
+ xz -d ${MY_P}.tar.xz || die
+ verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ if use test ; then
+ # Known-failing tests
+ # TODO: investigate these
+ local known_failing_tests=(
+ # Subtest 'options-maximum-size-8192' fails
+ hardlink/options
+
+ # Fails in sandbox
+ lsns/ioctl_ns
+
+ lsfd/mkfds-symlink
+ lsfd/mkfds-rw-character-device
+ # Fails with network-sandbox at least in nspawn
+ lsfd/option-inet
+ utmp/last-ipv6
+ )
+
+ local known_failing_test
+ for known_failing_test in "${known_failing_tests[@]}" ; do
+ einfo "Removing known-failing test: ${known_failing_test}"
+ rm tests/ts/${known_failing_test} || die
+ done
+ fi
+
+ if [[ ${PV} == 9999 ]] ; then
+ po/update-potfiles
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+python_configure() {
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --disable-all-programs
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --with-python
+ --enable-libblkid
+ --enable-libmount
+ --enable-pylibmount
+ )
+
+ mkdir "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" >/dev/null || die
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+ popd >/dev/null || die
+}
+
+multilib_src_configure() {
+ # The scanf test in a run-time test which fails while cross-compiling.
+ # Blindly assume a POSIX setup since we require libmount, and libmount
+ # itself fails when the scanf test fails. bug #531856
+ tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
+
+ # bug #485486
+ export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
+ # bug #545042
+ export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)
+
+ # Undo bad ncurses handling by upstream. Fall back to pkg-config.
+ # bug #601530
+ export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
+ export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
+
+ # Avoid automagic dependency on ppc*
+ export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)
+
+ # configure args shared by python and non-python builds
+ local commonargs=(
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}/run"
+ --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+
+ # Temporary workaround until ~2.39.2. 2.39.x introduced a big rewrite.
+ # https://github.com/util-linux/util-linux/issues/2287#issuecomment-1576640373
+ --disable-libmount-mountfd-support
+ )
+
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ --without-python
+ $(multilib_native_use_enable suid makeinstall-chown)
+ $(multilib_native_use_enable suid makeinstall-setuid)
+ $(multilib_native_use_with readline)
+ $(multilib_native_use_with slang)
+ $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic')
+ $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
+ $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
+ $(multilib_native_use_with audit)
+ $(tc-has-tls || echo --disable-tls)
+ $(use_enable nls)
+ $(use_enable nls poman)
+ $(use_enable unicode widechar)
+ $(use_enable static-libs static)
+ $(use_with ncurses tinfo)
+ $(use_with selinux)
+ )
+
+ if use build ; then
+ myeconfargs+=(
+ --without-systemd
+ --without-udev
+ )
+ else
+ myeconfargs+=(
+ $(multilib_native_use_with systemd)
+ $(multilib_native_use_with udev)
+ )
+ fi
+
+ if multilib_is_native_abi ; then
+ myeconfargs+=(
+ --disable-chfn-chsh
+ --disable-login
+ --disable-newgrp
+ --disable-nologin
+ --disable-pylibmount
+ --disable-raw
+ --disable-vipw
+ --enable-agetty
+ --enable-bash-completion
+ --enable-line
+ --enable-partx
+ --enable-rename
+ --enable-rfkill
+ --enable-schedutils
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ $(use_enable caps setpriv)
+ $(use_enable cramfs)
+ $(use_enable fdformat)
+ $(use_enable hardlink)
+ $(use_enable kill)
+ $(use_enable logger)
+ $(use_enable ncurses pg)
+ $(use_enable su)
+ $(use_enable tty-helpers mesg)
+ $(use_enable tty-helpers wall)
+ $(use_enable tty-helpers write)
+ $(use_with cryptsetup)
+ )
+ if [[ ${PV} == *9999 ]] ; then
+ myeconfargs+=( --enable-asciidoc )
+ else
+ # Upstream is shipping pre-generated man-pages for releases
+ myeconfargs+=( --disable-asciidoc )
+ fi
+ else
+ myeconfargs+=(
+ --disable-all-programs
+ --disable-asciidoc
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --disable-poman
+
+ # build libraries
+ --enable-libuuid
+ --enable-libblkid
+ --enable-libsmartcols
+ --enable-libfdisk
+ --enable-libmount
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_configure
+ fi
+}
+
+src_configure() {
+ append-lfs-flags
+ multilib-minimal_src_configure
+}
+
+python_compile() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake all
+ popd >/dev/null || die
+}
+
+multilib_src_compile() {
+ emake all
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_compile
+ fi
+}
+
+python_test() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ popd >/dev/null || die
+}
+
+multilib_src_test() {
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_test
+ fi
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake DESTDIR="${D}" install
+ python_optimize
+ popd >/dev/null || die
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_install
+ fi
+
+ # This needs to be called AFTER python_install call, bug #689190
+ emake DESTDIR="${D}" install
+}
+
+multilib_src_install_all() {
+ dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+ # e2fsprogs-libs didn't install .la files, and .pc work fine
+ find "${ED}" -name "*.la" -delete || die
+
+ if use pam ; then
+ # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt
+ newpamd "${FILESDIR}/runuser.pamd" runuser
+ newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
+
+ newpamd "${FILESDIR}/su-l.pamd" su-l
+ fi
+
+ if use su && ! use suid ; then
+ # Always force suid su, even when USE=-suid, as su is useless
+ # for the overwhelming-majority case without suid.
+ # Users who wish to truly have a no-suid su can strip it out
+ # via e.g. Portage's suidctl or some other hook.
+ # See bug #832092
+ fperms u+s /bin/su
+ fi
+
+ # Note:
+ # Bash completion for "runuser" command is provided by same file which
+ # would also provide bash completion for "su" command. However, we don't
+ # use "su" command from this package.
+ # This triggers a known QA warning which we ignore for now to magically
+ # keep bash completion for "su" command which shadow package does not
+ # provide.
+
+ local ver=$(tools/git-version-gen .tarballversion)
+ local major=$(ver_cut 1 ${ver})
+ local minor=$(ver_cut 2 ${ver})
+ local release=$(ver_cut 3 ${ver})
+ export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}"
+}
+
+pkg_postinst() {
+ if ! use tty-helpers ; then
+ elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
+ fi
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "The agetty util now clears the terminal by default. You"
+ elog "might want to add --noclear to your /etc/inittab lines."
+ fi
+}
diff --git a/sys-apps/util-linux/util-linux-2.39.3-r5.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r5.ebuild
new file mode 100644
index 000000000000..30a4c80b43a1
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39.3-r5.ebuild
@@ -0,0 +1,414 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+ pam python-r1 multilib-minimal multiprocessing systemd
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+ inherit autotools git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
+ inherit verify-sig
+
+ if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos"
+ fi
+
+ SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode"
+
+# Most lib deps here are related to programs rather than our libs,
+# so we rarely need to specify ${MULTILIB_USEDEP}.
+RDEPEND="
+ virtual/libcrypt:=
+ audit? ( >=sys-process/audit-2.6:= )
+ caps? ( sys-libs/libcap-ng )
+ cramfs? ( sys-libs/zlib:= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 )
+ hardlink? ( dev-libs/libpcre2:= )
+ ncurses? (
+ sys-libs/ncurses:=[unicode(+)?]
+ magic? ( sys-apps/file:0= )
+ )
+ nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:0= )
+ rtas? ( sys-libs/librtas )
+ selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+ slang? ( sys-libs/slang )
+ !build? (
+ systemd? ( sys-apps/systemd )
+ udev? ( virtual/libudev:= )
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? (
+ app-text/po4a
+ sys-devel/gettext
+ )
+ test? ( app-alternatives/bc )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+ acct-group/root
+"
+RDEPEND+="
+ hardlink? ( !app-arch/hardlink )
+ logger? ( !>=app-admin/sysklogd-2.0[logger] )
+ kill? (
+ !sys-apps/coreutils[kill]
+ !sys-process/procps[kill]
+ )
+ su? (
+ !<sys-apps/shadow-4.7-r2
+ !>=sys-apps/shadow-4.7-r2[su]
+ )
+ !net-wireless/rfkill
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ # Required for man-page generation
+ BDEPEND+=" dev-ruby/asciidoctor"
+else
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.patch
+ "${FILESDIR}"/${PN}-2.39.3-libblkid-luks.patch
+ "${FILESDIR}"/${PN}-2.39.3-musl-1.2.5-basename.patch
+ "${FILESDIR}"/${PN}-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
+)
+
+pkg_pretend() {
+ if use su && ! use suid ; then
+ elog "su will be installed as suid despite USE=-suid (bug #832092)"
+ elog "To use su without suid, see e.g. Portage's suidctl feature."
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
+
+ if use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${MY_P}.tar.xz . || die
+ xz -d ${MY_P}.tar.xz || die
+ verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ if use test ; then
+ # Known-failing tests
+ # TODO: investigate these
+ local known_failing_tests=(
+ # Subtest 'options-maximum-size-8192' fails
+ hardlink/options
+
+ # Fails in sandbox
+ lsns/ioctl_ns
+
+ lsfd/mkfds-symlink
+ lsfd/mkfds-rw-character-device
+ # Fails with network-sandbox at least in nspawn
+ lsfd/option-inet
+ utmp/last-ipv6
+ )
+
+ local known_failing_test
+ for known_failing_test in "${known_failing_tests[@]}" ; do
+ einfo "Removing known-failing test: ${known_failing_test}"
+ rm tests/ts/${known_failing_test} || die
+ done
+ fi
+
+ if [[ ${PV} == 9999 ]] ; then
+ po/update-potfiles
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+python_configure() {
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --disable-all-programs
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --with-python
+ --enable-libblkid
+ --enable-libmount
+ --enable-pylibmount
+ )
+
+ mkdir "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" >/dev/null || die
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+ popd >/dev/null || die
+}
+
+multilib_src_configure() {
+ # The scanf test in a run-time test which fails while cross-compiling.
+ # Blindly assume a POSIX setup since we require libmount, and libmount
+ # itself fails when the scanf test fails. bug #531856
+ tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
+
+ # bug #485486
+ export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
+ # bug #545042
+ export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)
+
+ # Undo bad ncurses handling by upstream. Fall back to pkg-config.
+ # bug #601530
+ export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
+ export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
+
+ # Avoid automagic dependency on ppc*
+ export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)
+
+ # configure args shared by python and non-python builds
+ local commonargs=(
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}/run"
+ --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+
+ # Temporary workaround until ~2.39.2. 2.39.x introduced a big rewrite.
+ # https://github.com/util-linux/util-linux/issues/2287#issuecomment-1576640373
+ --disable-libmount-mountfd-support
+ )
+
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ --without-python
+ $(multilib_native_use_enable suid makeinstall-chown)
+ $(multilib_native_use_enable suid makeinstall-setuid)
+ $(multilib_native_use_with readline)
+ $(multilib_native_use_with slang)
+ $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic')
+ $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
+ $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
+ $(multilib_native_use_with audit)
+ $(tc-has-tls || echo --disable-tls)
+ $(use_enable nls)
+ $(use_enable nls poman)
+ $(use_enable unicode widechar)
+ $(use_enable static-libs static)
+ $(use_with ncurses tinfo)
+ $(use_with selinux)
+ )
+
+ if use build ; then
+ myeconfargs+=(
+ --without-systemd
+ --without-udev
+ )
+ else
+ myeconfargs+=(
+ $(multilib_native_use_with systemd)
+ $(multilib_native_use_with udev)
+ )
+ fi
+
+ if multilib_is_native_abi ; then
+ myeconfargs+=(
+ --disable-chfn-chsh
+ --disable-login
+ --disable-newgrp
+ --disable-nologin
+ --disable-pylibmount
+ --disable-raw
+ --disable-vipw
+ --enable-agetty
+ --enable-bash-completion
+ --enable-line
+ --enable-partx
+ --enable-rename
+ --enable-rfkill
+ --enable-schedutils
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ $(use_enable caps setpriv)
+ $(use_enable cramfs)
+ $(use_enable fdformat)
+ $(use_enable hardlink)
+ $(use_enable kill)
+ $(use_enable logger)
+ $(use_enable ncurses pg)
+ $(use_enable su)
+ $(use_enable tty-helpers mesg)
+ $(use_enable tty-helpers wall)
+ $(use_enable tty-helpers write)
+ $(use_with cryptsetup)
+ )
+ if [[ ${PV} == *9999 ]] ; then
+ myeconfargs+=( --enable-asciidoc )
+ else
+ # Upstream is shipping pre-generated man-pages for releases
+ myeconfargs+=( --disable-asciidoc )
+ fi
+ else
+ myeconfargs+=(
+ --disable-all-programs
+ --disable-asciidoc
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --disable-poman
+
+ # build libraries
+ --enable-libuuid
+ --enable-libblkid
+ --enable-libsmartcols
+ --enable-libfdisk
+ --enable-libmount
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_configure
+ fi
+}
+
+src_configure() {
+ append-lfs-flags
+ multilib-minimal_src_configure
+}
+
+python_compile() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake all
+ popd >/dev/null || die
+}
+
+multilib_src_compile() {
+ emake all
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_compile
+ fi
+}
+
+python_test() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ popd >/dev/null || die
+}
+
+multilib_src_test() {
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_test
+ fi
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake DESTDIR="${D}" install
+ python_optimize
+ popd >/dev/null || die
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_install
+ fi
+
+ # This needs to be called AFTER python_install call, bug #689190
+ emake DESTDIR="${D}" install
+}
+
+multilib_src_install_all() {
+ dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+ dosym hexdump /usr/bin/hd
+ newman - hd.1 <<< '.so man1/hexdump.1'
+
+ # e2fsprogs-libs didn't install .la files, and .pc work fine
+ find "${ED}" -name "*.la" -delete || die
+
+ if use pam ; then
+ # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt
+ newpamd "${FILESDIR}/runuser.pamd" runuser
+ newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
+
+ newpamd "${FILESDIR}/su-l.pamd" su-l
+ fi
+
+ if use su && ! use suid ; then
+ # Always force suid su, even when USE=-suid, as su is useless
+ # for the overwhelming-majority case without suid.
+ # Users who wish to truly have a no-suid su can strip it out
+ # via e.g. Portage's suidctl or some other hook.
+ # See bug #832092
+ fperms u+s /bin/su
+ fi
+
+ # Note:
+ # Bash completion for "runuser" command is provided by same file which
+ # would also provide bash completion for "su" command. However, we don't
+ # use "su" command from this package.
+ # This triggers a known QA warning which we ignore for now to magically
+ # keep bash completion for "su" command which shadow package does not
+ # provide.
+
+ local ver=$(tools/git-version-gen .tarballversion)
+ local major=$(ver_cut 1 ${ver})
+ local minor=$(ver_cut 2 ${ver})
+ local release=$(ver_cut 3 ${ver})
+ export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}"
+}
+
+pkg_postinst() {
+ if ! use tty-helpers ; then
+ elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
+ fi
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "The agetty util now clears the terminal by default. You"
+ elog "might want to add --noclear to your /etc/inittab lines."
+ fi
+}
diff --git a/sys-apps/util-linux/util-linux-2.39.3-r6.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r6.ebuild
new file mode 100644
index 000000000000..256c7ca3c751
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39.3-r6.ebuild
@@ -0,0 +1,415 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+ pam python-r1 multilib-minimal multiprocessing systemd
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+ inherit autotools git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
+ inherit verify-sig
+
+ if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos"
+ fi
+
+ SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode"
+
+# Most lib deps here are related to programs rather than our libs,
+# so we rarely need to specify ${MULTILIB_USEDEP}.
+RDEPEND="
+ virtual/libcrypt:=
+ audit? ( >=sys-process/audit-2.6:= )
+ caps? ( sys-libs/libcap-ng )
+ cramfs? ( sys-libs/zlib:= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 )
+ hardlink? ( dev-libs/libpcre2:= )
+ ncurses? (
+ sys-libs/ncurses:=[unicode(+)?]
+ magic? ( sys-apps/file:0= )
+ )
+ nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:0= )
+ rtas? ( sys-libs/librtas )
+ selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+ slang? ( sys-libs/slang )
+ !build? (
+ systemd? ( sys-apps/systemd )
+ udev? ( virtual/libudev:= )
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? (
+ app-text/po4a
+ sys-devel/gettext
+ )
+ test? ( app-alternatives/bc )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+ acct-group/root
+"
+RDEPEND+="
+ hardlink? ( !app-arch/hardlink )
+ logger? ( !>=app-admin/sysklogd-2.0[logger] )
+ kill? (
+ !sys-apps/coreutils[kill]
+ !sys-process/procps[kill]
+ )
+ su? (
+ !<sys-apps/shadow-4.7-r2
+ !>=sys-apps/shadow-4.7-r2[su]
+ )
+ !net-wireless/rfkill
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ # Required for man-page generation
+ BDEPEND+=" dev-ruby/asciidoctor"
+else
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.patch
+ "${FILESDIR}"/${PN}-2.39.3-libblkid-luks.patch
+ "${FILESDIR}"/${PN}-2.39.3-musl-1.2.5-basename.patch
+ "${FILESDIR}"/${PN}-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
+ "${FILESDIR}"/${PN}-2.39.3-CVE-2024-28085.patch
+)
+
+pkg_pretend() {
+ if use su && ! use suid ; then
+ elog "su will be installed as suid despite USE=-suid (bug #832092)"
+ elog "To use su without suid, see e.g. Portage's suidctl feature."
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
+
+ if use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${MY_P}.tar.xz . || die
+ xz -d ${MY_P}.tar.xz || die
+ verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ if use test ; then
+ # Known-failing tests
+ # TODO: investigate these
+ local known_failing_tests=(
+ # Subtest 'options-maximum-size-8192' fails
+ hardlink/options
+
+ # Fails in sandbox
+ lsns/ioctl_ns
+
+ lsfd/mkfds-symlink
+ lsfd/mkfds-rw-character-device
+ # Fails with network-sandbox at least in nspawn
+ lsfd/option-inet
+ utmp/last-ipv6
+ )
+
+ local known_failing_test
+ for known_failing_test in "${known_failing_tests[@]}" ; do
+ einfo "Removing known-failing test: ${known_failing_test}"
+ rm tests/ts/${known_failing_test} || die
+ done
+ fi
+
+ if [[ ${PV} == 9999 ]] ; then
+ po/update-potfiles
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+python_configure() {
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --disable-all-programs
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --with-python
+ --enable-libblkid
+ --enable-libmount
+ --enable-pylibmount
+ )
+
+ mkdir "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" >/dev/null || die
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+ popd >/dev/null || die
+}
+
+multilib_src_configure() {
+ # The scanf test in a run-time test which fails while cross-compiling.
+ # Blindly assume a POSIX setup since we require libmount, and libmount
+ # itself fails when the scanf test fails. bug #531856
+ tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
+
+ # bug #485486
+ export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
+ # bug #545042
+ export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)
+
+ # Undo bad ncurses handling by upstream. Fall back to pkg-config.
+ # bug #601530
+ export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
+ export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
+
+ # Avoid automagic dependency on ppc*
+ export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)
+
+ # configure args shared by python and non-python builds
+ local commonargs=(
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}/run"
+ --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+
+ # Temporary workaround until ~2.39.2. 2.39.x introduced a big rewrite.
+ # https://github.com/util-linux/util-linux/issues/2287#issuecomment-1576640373
+ --disable-libmount-mountfd-support
+ )
+
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ --without-python
+ $(multilib_native_use_enable suid makeinstall-chown)
+ $(multilib_native_use_enable suid makeinstall-setuid)
+ $(multilib_native_use_with readline)
+ $(multilib_native_use_with slang)
+ $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic')
+ $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
+ $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
+ $(multilib_native_use_with audit)
+ $(tc-has-tls || echo --disable-tls)
+ $(use_enable nls)
+ $(use_enable nls poman)
+ $(use_enable unicode widechar)
+ $(use_enable static-libs static)
+ $(use_with ncurses tinfo)
+ $(use_with selinux)
+ )
+
+ if use build ; then
+ myeconfargs+=(
+ --without-systemd
+ --without-udev
+ )
+ else
+ myeconfargs+=(
+ $(multilib_native_use_with systemd)
+ $(multilib_native_use_with udev)
+ )
+ fi
+
+ if multilib_is_native_abi ; then
+ myeconfargs+=(
+ --disable-chfn-chsh
+ --disable-login
+ --disable-newgrp
+ --disable-nologin
+ --disable-pylibmount
+ --disable-raw
+ --disable-vipw
+ --enable-agetty
+ --enable-bash-completion
+ --enable-line
+ --enable-partx
+ --enable-rename
+ --enable-rfkill
+ --enable-schedutils
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ $(use_enable caps setpriv)
+ $(use_enable cramfs)
+ $(use_enable fdformat)
+ $(use_enable hardlink)
+ $(use_enable kill)
+ $(use_enable logger)
+ $(use_enable ncurses pg)
+ $(use_enable su)
+ $(use_enable tty-helpers mesg)
+ $(use_enable tty-helpers wall)
+ $(use_enable tty-helpers write)
+ $(use_with cryptsetup)
+ )
+ if [[ ${PV} == *9999 ]] ; then
+ myeconfargs+=( --enable-asciidoc )
+ else
+ # Upstream is shipping pre-generated man-pages for releases
+ myeconfargs+=( --disable-asciidoc )
+ fi
+ else
+ myeconfargs+=(
+ --disable-all-programs
+ --disable-asciidoc
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --disable-poman
+
+ # build libraries
+ --enable-libuuid
+ --enable-libblkid
+ --enable-libsmartcols
+ --enable-libfdisk
+ --enable-libmount
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_configure
+ fi
+}
+
+src_configure() {
+ append-lfs-flags
+ multilib-minimal_src_configure
+}
+
+python_compile() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake all
+ popd >/dev/null || die
+}
+
+multilib_src_compile() {
+ emake all
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_compile
+ fi
+}
+
+python_test() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ popd >/dev/null || die
+}
+
+multilib_src_test() {
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_test
+ fi
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake DESTDIR="${D}" install
+ python_optimize
+ popd >/dev/null || die
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_install
+ fi
+
+ # This needs to be called AFTER python_install call, bug #689190
+ emake DESTDIR="${D}" install
+}
+
+multilib_src_install_all() {
+ dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+ dosym hexdump /usr/bin/hd
+ newman - hd.1 <<< '.so man1/hexdump.1'
+
+ # e2fsprogs-libs didn't install .la files, and .pc work fine
+ find "${ED}" -name "*.la" -delete || die
+
+ if use pam ; then
+ # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt
+ newpamd "${FILESDIR}/runuser.pamd" runuser
+ newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
+
+ newpamd "${FILESDIR}/su-l.pamd" su-l
+ fi
+
+ if use su && ! use suid ; then
+ # Always force suid su, even when USE=-suid, as su is useless
+ # for the overwhelming-majority case without suid.
+ # Users who wish to truly have a no-suid su can strip it out
+ # via e.g. Portage's suidctl or some other hook.
+ # See bug #832092
+ fperms u+s /bin/su
+ fi
+
+ # Note:
+ # Bash completion for "runuser" command is provided by same file which
+ # would also provide bash completion for "su" command. However, we don't
+ # use "su" command from this package.
+ # This triggers a known QA warning which we ignore for now to magically
+ # keep bash completion for "su" command which shadow package does not
+ # provide.
+
+ local ver=$(tools/git-version-gen .tarballversion)
+ local major=$(ver_cut 1 ${ver})
+ local minor=$(ver_cut 2 ${ver})
+ local release=$(ver_cut 3 ${ver})
+ export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}"
+}
+
+pkg_postinst() {
+ if ! use tty-helpers ; then
+ elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
+ fi
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "The agetty util now clears the terminal by default. You"
+ elog "might want to add --noclear to your /etc/inittab lines."
+ fi
+}
diff --git a/sys-apps/util-linux/util-linux-2.39.3-r7.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r7.ebuild
new file mode 100644
index 000000000000..8b0173d9239e
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39.3-r7.ebuild
@@ -0,0 +1,416 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+ pam python-r1 multilib-minimal multiprocessing systemd
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+ inherit autotools git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
+ inherit verify-sig
+
+ if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos"
+ fi
+
+ SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode"
+
+# Most lib deps here are related to programs rather than our libs,
+# so we rarely need to specify ${MULTILIB_USEDEP}.
+RDEPEND="
+ virtual/libcrypt:=
+ audit? ( >=sys-process/audit-2.6:= )
+ caps? ( sys-libs/libcap-ng )
+ cramfs? ( sys-libs/zlib:= )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 )
+ hardlink? ( dev-libs/libpcre2:= )
+ ncurses? (
+ sys-libs/ncurses:=[unicode(+)?]
+ magic? ( sys-apps/file:0= )
+ )
+ nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
+ pam? ( sys-libs/pam )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:0= )
+ rtas? ( sys-libs/librtas )
+ selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+ slang? ( sys-libs/slang )
+ !build? (
+ systemd? ( sys-apps/systemd )
+ udev? ( virtual/libudev:= )
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ nls? (
+ app-text/po4a
+ sys-devel/gettext
+ )
+ test? ( app-alternatives/bc )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+ acct-group/root
+"
+RDEPEND+="
+ hardlink? ( !app-arch/hardlink )
+ logger? ( !>=app-admin/sysklogd-2.0[logger] )
+ kill? (
+ !sys-apps/coreutils[kill]
+ !sys-process/procps[kill]
+ )
+ su? (
+ !<sys-apps/shadow-4.7-r2
+ !>=sys-apps/shadow-4.7-r2[su]
+ )
+ !net-wireless/rfkill
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ # Required for man-page generation
+ BDEPEND+=" dev-ruby/asciidoctor"
+else
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
+ "${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.patch
+ "${FILESDIR}"/${PN}-2.39.3-libblkid-luks.patch
+ "${FILESDIR}"/${PN}-2.39.3-musl-1.2.5-basename.patch
+ "${FILESDIR}"/${PN}-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
+ "${FILESDIR}"/${PN}-2.39.3-CVE-2024-28085.patch
+ "${FILESDIR}"/${PN}-2.39.3-fix-use-after-free.patch
+)
+
+pkg_pretend() {
+ if use su && ! use suid ; then
+ elog "su will be installed as suid despite USE=-suid (bug #832092)"
+ elog "To use su without suid, see e.g. Portage's suidctl feature."
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
+
+ if use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${MY_P}.tar.xz . || die
+ xz -d ${MY_P}.tar.xz || die
+ verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ if use test ; then
+ # Known-failing tests
+ # TODO: investigate these
+ local known_failing_tests=(
+ # Subtest 'options-maximum-size-8192' fails
+ hardlink/options
+
+ # Fails in sandbox
+ lsns/ioctl_ns
+
+ lsfd/mkfds-symlink
+ lsfd/mkfds-rw-character-device
+ # Fails with network-sandbox at least in nspawn
+ lsfd/option-inet
+ utmp/last-ipv6
+ )
+
+ local known_failing_test
+ for known_failing_test in "${known_failing_tests[@]}" ; do
+ einfo "Removing known-failing test: ${known_failing_test}"
+ rm tests/ts/${known_failing_test} || die
+ done
+ fi
+
+ if [[ ${PV} == 9999 ]] ; then
+ po/update-potfiles
+ eautoreconf
+ else
+ elibtoolize
+ fi
+}
+
+python_configure() {
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --disable-all-programs
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --with-python
+ --enable-libblkid
+ --enable-libmount
+ --enable-pylibmount
+ )
+
+ mkdir "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" >/dev/null || die
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+ popd >/dev/null || die
+}
+
+multilib_src_configure() {
+ # The scanf test in a run-time test which fails while cross-compiling.
+ # Blindly assume a POSIX setup since we require libmount, and libmount
+ # itself fails when the scanf test fails. bug #531856
+ tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
+
+ # bug #485486
+ export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
+ # bug #545042
+ export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)
+
+ # Undo bad ncurses handling by upstream. Fall back to pkg-config.
+ # bug #601530
+ export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
+ export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
+
+ # Avoid automagic dependency on ppc*
+ export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)
+
+ # configure args shared by python and non-python builds
+ local commonargs=(
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}/run"
+ --enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+
+ # Temporary workaround until ~2.39.2. 2.39.x introduced a big rewrite.
+ # https://github.com/util-linux/util-linux/issues/2287#issuecomment-1576640373
+ --disable-libmount-mountfd-support
+ )
+
+ local myeconfargs=(
+ "${commonargs[@]}"
+ --with-bashcompletiondir="$(get_bashcompdir)"
+ --without-python
+ $(multilib_native_use_enable suid makeinstall-chown)
+ $(multilib_native_use_enable suid makeinstall-setuid)
+ $(multilib_native_use_with readline)
+ $(multilib_native_use_with slang)
+ $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic')
+ $(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
+ $(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
+ $(multilib_native_use_with audit)
+ $(tc-has-tls || echo --disable-tls)
+ $(use_enable nls)
+ $(use_enable nls poman)
+ $(use_enable unicode widechar)
+ $(use_enable static-libs static)
+ $(use_with ncurses tinfo)
+ $(use_with selinux)
+ )
+
+ if use build ; then
+ myeconfargs+=(
+ --without-systemd
+ --without-udev
+ )
+ else
+ myeconfargs+=(
+ $(multilib_native_use_with systemd)
+ $(multilib_native_use_with udev)
+ )
+ fi
+
+ if multilib_is_native_abi ; then
+ myeconfargs+=(
+ --disable-chfn-chsh
+ --disable-login
+ --disable-newgrp
+ --disable-nologin
+ --disable-pylibmount
+ --disable-raw
+ --disable-vipw
+ --enable-agetty
+ --enable-bash-completion
+ --enable-line
+ --enable-partx
+ --enable-rename
+ --enable-rfkill
+ --enable-schedutils
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ $(use_enable caps setpriv)
+ $(use_enable cramfs)
+ $(use_enable fdformat)
+ $(use_enable hardlink)
+ $(use_enable kill)
+ $(use_enable logger)
+ $(use_enable ncurses pg)
+ $(use_enable su)
+ $(use_enable tty-helpers mesg)
+ $(use_enable tty-helpers wall)
+ $(use_enable tty-helpers write)
+ $(use_with cryptsetup)
+ )
+ if [[ ${PV} == *9999 ]] ; then
+ myeconfargs+=( --enable-asciidoc )
+ else
+ # Upstream is shipping pre-generated man-pages for releases
+ myeconfargs+=( --disable-asciidoc )
+ fi
+ else
+ myeconfargs+=(
+ --disable-all-programs
+ --disable-asciidoc
+ --disable-bash-completion
+ --without-systemdsystemunitdir
+ --disable-poman
+
+ # build libraries
+ --enable-libuuid
+ --enable-libblkid
+ --enable-libsmartcols
+ --enable-libfdisk
+ --enable-libmount
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_configure
+ fi
+}
+
+src_configure() {
+ append-lfs-flags
+ multilib-minimal_src_configure
+}
+
+python_compile() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake all
+ popd >/dev/null || die
+}
+
+multilib_src_compile() {
+ emake all
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_compile
+ fi
+}
+
+python_test() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ popd >/dev/null || die
+}
+
+multilib_src_test() {
+ emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_test
+ fi
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ emake DESTDIR="${D}" install
+ python_optimize
+ popd >/dev/null || die
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_install
+ fi
+
+ # This needs to be called AFTER python_install call, bug #689190
+ emake DESTDIR="${D}" install
+}
+
+multilib_src_install_all() {
+ dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+ dosym hexdump /usr/bin/hd
+ newman - hd.1 <<< '.so man1/hexdump.1'
+
+ # e2fsprogs-libs didn't install .la files, and .pc work fine
+ find "${ED}" -name "*.la" -delete || die
+
+ if use pam ; then
+ # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt
+ newpamd "${FILESDIR}/runuser.pamd" runuser
+ newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
+
+ newpamd "${FILESDIR}/su-l.pamd" su-l
+ fi
+
+ if use su && ! use suid ; then
+ # Always force suid su, even when USE=-suid, as su is useless
+ # for the overwhelming-majority case without suid.
+ # Users who wish to truly have a no-suid su can strip it out
+ # via e.g. Portage's suidctl or some other hook.
+ # See bug #832092
+ fperms u+s /bin/su
+ fi
+
+ # Note:
+ # Bash completion for "runuser" command is provided by same file which
+ # would also provide bash completion for "su" command. However, we don't
+ # use "su" command from this package.
+ # This triggers a known QA warning which we ignore for now to magically
+ # keep bash completion for "su" command which shadow package does not
+ # provide.
+
+ local ver=$(tools/git-version-gen .tarballversion)
+ local major=$(ver_cut 1 ${ver})
+ local minor=$(ver_cut 2 ${ver})
+ local release=$(ver_cut 3 ${ver})
+ export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}"
+}
+
+pkg_postinst() {
+ if ! use tty-helpers ; then
+ elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
+ fi
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "The agetty util now clears the terminal by default. You"
+ elog "might want to add --noclear to your /etc/inittab lines."
+ fi
+}
diff --git a/sys-apps/util-linux/util-linux-9999.ebuild b/sys-apps/util-linux/util-linux-9999.ebuild
index d2570255b88c..f25f71aca3a8 100644
--- a/sys-apps/util-linux/util-linux-9999.ebuild
+++ b/sys-apps/util-linux/util-linux-9999.ebuild
@@ -1,31 +1,39 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8,9} )
+PYTHON_COMPAT=( python3_{10..12} )
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
pam python-r1 multilib-minimal multiprocessing systemd
MY_PV="${PV/_/-}"
MY_P="${PN}-${MY_PV}"
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux"
+
if [[ ${PV} == 9999 ]] ; then
- inherit git-r3 autotools
EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+ inherit autotools git-r3
else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
+ inherit verify-sig
+
+ if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos"
+ fi
+
SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
+ SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )"
fi
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
+S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
SLOT="0"
-IUSE="audit build caps +cramfs cryptsetup fdformat hardlink kill +logger ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU"
+IUSE="audit build caps +cramfs cryptsetup fdformat +hardlink kill +logger magic ncurses nls pam python +readline rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode"
# Most lib deps here are related to programs rather than our libs,
# so we rarely need to specify ${MULTILIB_USEDEP}.
@@ -34,27 +42,36 @@ RDEPEND="
audit? ( >=sys-process/audit-2.6:= )
caps? ( sys-libs/libcap-ng )
cramfs? ( sys-libs/zlib:= )
- cryptsetup? ( sys-fs/cryptsetup )
+ cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 )
hardlink? ( dev-libs/libpcre2:= )
- ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
+ ncurses? (
+ sys-libs/ncurses:=[unicode(+)?]
+ magic? ( sys-apps/file:0= )
+ )
nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
pam? ( sys-libs/pam )
- ppc? ( sys-libs/librtas )
- ppc64? ( sys-libs/librtas )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:0= )
+ rtas? ( sys-libs/librtas )
selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
slang? ( sys-libs/slang )
- !build? ( systemd? ( sys-apps/systemd ) )
- udev? ( virtual/libudev:= )"
+ !build? (
+ systemd? ( sys-apps/systemd )
+ udev? ( virtual/libudev:= )
+ )
+"
BDEPEND="
virtual/pkgconfig
- nls? ( sys-devel/gettext )
- test? ( sys-devel/bc )
+ nls? (
+ app-text/po4a
+ sys-devel/gettext
+ )
+ test? ( app-alternatives/bc )
"
DEPEND="
${RDEPEND}
virtual/os-headers
+ acct-group/root
"
RDEPEND+="
hardlink? ( !app-arch/hardlink )
@@ -68,50 +85,82 @@ RDEPEND+="
!>=sys-apps/shadow-4.7-r2[su]
)
!net-wireless/rfkill
- !<app-shells/bash-completion-2.7-r1"
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ # Required for man-page generation
+ BDEPEND+=" dev-ruby/asciidoctor"
+else
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )"
+fi
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
RESTRICT="!test? ( test )"
-S="${WORKDIR}/${MY_P}"
+pkg_pretend() {
+ if use su && ! use suid ; then
+ elog "su will be installed as suid despite USE=-suid (bug #832092)"
+ elog "To use su without suid, see e.g. Portage's suidctl feature."
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ return
+ fi
-PATCHES=(
-)
+ if use verify-sig ; then
+ mkdir "${T}"/verify-sig || die
+ pushd "${T}"/verify-sig &>/dev/null || die
+
+ # Upstream sign the decompressed .tar
+ # Let's do it separately in ${T} then cleanup to avoid external
+ # effects on normal unpack.
+ cp "${DISTDIR}"/${MY_P}.tar.xz . || die
+ xz -d ${MY_P}.tar.xz || die
+ verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign
+
+ popd &>/dev/null || die
+ rm -r "${T}"/verify-sig || die
+ fi
+
+ default
+}
src_prepare() {
default
- # Prevent uuidd test failure due to socket path limit. #593304
- sed -i \
- -e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
- tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
+ if use test ; then
+ # Known-failing tests
+ # TODO: investigate these
+ local known_failing_tests=(
+ # Subtest 'options-maximum-size-8192' fails
+ hardlink/options
+
+ # Fails in sandbox
+ lsns/ioctl_ns
+
+ lsfd/mkfds-symlink
+ lsfd/mkfds-rw-character-device
+ # Fails with network-sandbox at least in nspawn
+ lsfd/option-inet
+ utmp/last-ipv6
+ )
- if ! use userland_GNU; then
- # test runner is using GNU-specific xargs call
- sed -i -e 's:xargs:gxargs:' tests/run.sh || die
- # test requires util-linux uuidgen (which we don't build)
- rm tests/ts/uuid/oids || die
+ local known_failing_test
+ for known_failing_test in "${known_failing_tests[@]}" ; do
+ einfo "Removing known-failing test: ${known_failing_test}"
+ rm tests/ts/${known_failing_test} || die
+ done
fi
if [[ ${PV} == 9999 ]] ; then
po/update-potfiles
eautoreconf
+ else
+ elibtoolize
fi
-
- elibtoolize
-}
-
-lfs_fallocate_test() {
- # Make sure we can use fallocate with LFS #300307
- cat <<-EOF > "${T}"/fallocate.${ABI}.c
- #define _GNU_SOURCE
- #include <fcntl.h>
- main() { return fallocate(0, 0, 0, 0); }
- EOF
- append-lfs-flags
- $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
- || export ac_cv_func_fallocate=no
- rm -f "${T}"/fallocate.${ABI}.c
}
python_configure() {
@@ -121,14 +170,11 @@ python_configure() {
--disable-bash-completion
--without-systemdsystemunitdir
--with-python
+ --enable-libblkid
+ --enable-libmount
+ --enable-pylibmount
)
- if use userland_GNU; then
- myeconfargs+=(
- --enable-libblkid
- --enable-libmount
- --enable-pylibmount
- )
- fi
+
mkdir "${BUILD_DIR}" || die
pushd "${BUILD_DIR}" >/dev/null || die
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
@@ -136,20 +182,28 @@ python_configure() {
}
multilib_src_configure() {
- lfs_fallocate_test
# The scanf test in a run-time test which fails while cross-compiling.
# Blindly assume a POSIX setup since we require libmount, and libmount
- # itself fails when the scanf test fails. #531856
+ # itself fails when the scanf test fails. bug #531856
tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
- export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
- export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
- # Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
+ # bug #485486
+ export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
+ # bug #545042
+ export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)
+
+ # Undo bad ncurses handling by upstream. Fall back to pkg-config.
+ # bug #601530
export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
+ # Avoid automagic dependency on ppc*
+ export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)
+
# configure args shared by python and non-python builds
local commonargs=(
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}/run"
--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
)
@@ -161,30 +215,44 @@ multilib_src_configure() {
$(multilib_native_use_enable suid makeinstall-setuid)
$(multilib_native_use_with readline)
$(multilib_native_use_with slang)
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
+ $(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic')
$(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
$(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
$(multilib_native_use_with audit)
$(tc-has-tls || echo --disable-tls)
$(use_enable nls)
+ $(use_enable nls poman)
$(use_enable unicode widechar)
$(use_enable static-libs static)
$(use_with ncurses tinfo)
$(use_with selinux)
)
- # build programs only on GNU, on *BSD we want libraries only
- if multilib_is_native_abi && use userland_GNU; then
+
+ if use build ; then
+ myeconfargs+=(
+ --without-systemd
+ --without-udev
+ )
+ else
+ myeconfargs+=(
+ $(multilib_native_use_with systemd)
+ $(multilib_native_use_with udev)
+ )
+ fi
+
+ if multilib_is_native_abi ; then
myeconfargs+=(
--disable-chfn-chsh
--disable-login
+ --disable-newgrp
--disable-nologin
--disable-pylibmount
+ --disable-raw
+ --disable-vipw
--enable-agetty
--enable-bash-completion
--enable-line
--enable-partx
- --enable-raw
--enable-rename
--enable-rfkill
--enable-schedutils
@@ -202,31 +270,41 @@ multilib_src_configure() {
$(use_enable tty-helpers write)
$(use_with cryptsetup)
)
+ if [[ ${PV} == *9999 ]] ; then
+ myeconfargs+=( --enable-asciidoc )
+ else
+ # Upstream is shipping pre-generated man-pages for releases
+ myeconfargs+=( --disable-asciidoc )
+ fi
else
myeconfargs+=(
--disable-all-programs
+ --disable-asciidoc
--disable-bash-completion
--without-systemdsystemunitdir
+ --disable-poman
+
# build libraries
--enable-libuuid
--enable-libblkid
--enable-libsmartcols
--enable-libfdisk
+ --enable-libmount
)
- if use userland_GNU; then
- # those libraries don't work on *BSD
- myeconfargs+=(
- --enable-libmount
- )
- fi
fi
+
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
- if multilib_is_native_abi && use python; then
+ if multilib_is_native_abi && use python ; then
python_foreach_impl python_configure
fi
}
+src_configure() {
+ append-lfs-flags
+ multilib-minimal_src_configure
+}
+
python_compile() {
pushd "${BUILD_DIR}" >/dev/null || die
emake all
@@ -236,7 +314,7 @@ python_compile() {
multilib_src_compile() {
emake all
- if multilib_is_native_abi && use python; then
+ if multilib_is_native_abi && use python ; then
python_foreach_impl python_compile
fi
}
@@ -249,7 +327,7 @@ python_test() {
multilib_src_test() {
emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
- if multilib_is_native_abi && use python; then
+ if multilib_is_native_abi && use python ; then
python_foreach_impl python_test
fi
}
@@ -262,34 +340,38 @@ python_install() {
}
multilib_src_install() {
- if multilib_is_native_abi && use python; then
+ if multilib_is_native_abi && use python ; then
python_foreach_impl python_install
fi
- # This needs to be called AFTER python_install call (#689190)
+ # This needs to be called AFTER python_install call, bug #689190
emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use userland_GNU; then
- # need the libs in /
- gen_usr_ldscript -a blkid fdisk mount smartcols uuid
- fi
}
multilib_src_install_all() {
dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
- # e2fsprogs-libs didnt install .la files, and .pc work fine
- find "${ED}" -name "*.la" -delete || die
+ dosym hexdump /usr/bin/hd
+ newman - hd.1 <<< '.so man1/hexdump.1'
- if ! use userland_GNU; then
- # manpage collisions
- # TODO: figure out a good way to keep them
- rm "${ED}"/usr/share/man/man3/uuid* || die
- fi
+ # e2fsprogs-libs didn't install .la files, and .pc work fine
+ find "${ED}" -name "*.la" -delete || die
- if use pam; then
+ if use pam ; then
+ # See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt
newpamd "${FILESDIR}/runuser.pamd" runuser
newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
+
+ newpamd "${FILESDIR}/su-l.pamd" su-l
+ fi
+
+ if use su && ! use suid ; then
+ # Always force suid su, even when USE=-suid, as su is useless
+ # for the overwhelming-majority case without suid.
+ # Users who wish to truly have a no-suid su can strip it out
+ # via e.g. Portage's suidctl or some other hook.
+ # See bug #832092
+ fperms u+s /bin/su
fi
# Note:
@@ -299,14 +381,20 @@ multilib_src_install_all() {
# This triggers a known QA warning which we ignore for now to magically
# keep bash completion for "su" command which shadow package does not
# provide.
+
+ local ver=$(tools/git-version-gen .tarballversion)
+ local major=$(ver_cut 1 ${ver})
+ local minor=$(ver_cut 2 ${ver})
+ local release=$(ver_cut 3 ${ver})
+ export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}"
}
pkg_postinst() {
- if ! use tty-helpers; then
+ if ! use tty-helpers ; then
elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
fi
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
elog "The agetty util now clears the terminal by default. You"
elog "might want to add --noclear to your /etc/inittab lines."
fi
diff --git a/sys-apps/uutils-coreutils/Manifest b/sys-apps/uutils-coreutils/Manifest
new file mode 100644
index 000000000000..873b67d619f8
--- /dev/null
+++ b/sys-apps/uutils-coreutils/Manifest
@@ -0,0 +1,309 @@
+DIST adler-1.0.2.crate 12778 BLAKE2B a1dc17786adae945ac09d3525e609ed944e6465690787bbb831a1b9d53793cba1989793d0a5606d5d23ee20d36457923d451b1b3530c9ec7072a487aa3e55bbd SHA512 7ab190d31890fc05b0b55d8e2c6527a505e06793d5496be0b3831e0513412f9ba97f8148f6f68ed0770fa9cd980a5092d885e058becf1d5506b7c74b82674aa1
+DIST aho-corasick-1.0.4.crate 171175 BLAKE2B b3d450533f0799a18fa6ceba41ce841573a3b9fe9bc66745aba9b5a1ef4d86b107aa68c049bd30df7bc86229c71264142e40da8e1d145e776017269a01aed86e SHA512 7cb8feb3289a508b1345b3cc04b59f2f730b80f561b17c7605ce23bf92780b5b3714ec84f5e3c5f4ba0c3abd47ac44fd0064a8bf4c5a7d00bd580774c6a3aee8
+DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077
+DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
+DIST anstream-0.5.0.crate 19646 BLAKE2B 770dc99092e1c48ad5c1658e83abff3b8c9e0915e360048bfe0fe04faf61991e01e88ca4adca23533bf11fe078066e351778661128d69381756688341022f29d SHA512 8e285cc8f92708cf9482e7b4dc84dd891e5ec0bd8c57894c6bb368eede1127b7b903adb4c40b37287e3644535cc60c92662951c2c8fb5b92e10f49ff5374d359
+DIST anstyle-1.0.0.crate 13972 BLAKE2B 741704b6e338834696bc816d8a65ff933f9bff48e71d25269f04c4a24c3dbb06826d2f84f73a1dceeda99cfc5c8e3d59b3d07dbb404cc3471b86cf118d074e80 SHA512 5a0159b9f8a80afadff04ecbec3c1769cef712c77de8062b31323298dab9507f4a87b7c777e6335d310ec464b0982d097b5888b4b351c389b5f4419c2c87be7b
+DIST anstyle-parse-0.2.0.crate 24361 BLAKE2B f796ddf1af04c93d7ee2721731e5cd22bb941919940a9edf6b2a658a8c39e87bd801bfd989631d64e9061067f7349796c56009ec61c02d754748181cc4d91a62 SHA512 fbac25189a0f4c0ddf2733c8ff74bdc2dc1a35e522d0201fa48f0f45e1d5d0a42e4806178507d0bc6a2ac22978b813eae5d57f09dddc80582de524690d87147f
+DIST anstyle-query-1.0.0.crate 8620 BLAKE2B 2d296b5066fd6284a2410923215571e6df650c5ef892d6de7a7088a0996ca30608797feabc84f3c325ff4d07001dac80ac5067d2a9c9d15d9ba59a276b399f53 SHA512 2781be5c82293b7ae338ec5046fbeb130de9eb2dbf2e4dfaa73ca5233032e1e52c133e141b02f33d4bc36d996a0a3f680ac82d42d614a5305005f60547133c7a
+DIST anstyle-wincon-2.1.0.crate 11757 BLAKE2B b7c1071da1ab24accc33d7af70f09ace8edb2dcbb53936ed5ac13552c6082c0f16ce501f041d2c1792cee7dd9cc3877d29505e12a65022bec44285f13e1f422f SHA512 6c379c46f791b6b1367f3d6f3531dcd16589cc2e12f6f5ce52a3fa32d42e62b719d2277699d1bc8526099a6f791f2e7d5b1068e1295cbcd2997841f0eafc4eeb
+DIST arrayref-0.3.6.crate 10035 BLAKE2B 88292fa4b3ad4fccd03772c2f0eca04cc13373fe094358bac57d7523c256d89f3087603e5bcb2a0b15d8b2ecd48e904a822b2cb800276a9c47ad6c6b660d9d34 SHA512 368341d00706c1250ff081b0d99c36c9af694a62ff4f4d8c837234340295771ca49c5439b24b6e1a4f2c3c5821764e98881dcb22d793f83de632fd5cb457671f
+DIST arrayvec-0.7.4.crate 29856 BLAKE2B 81ffac1db340e919618351819def3880ab1ef70d0acc47d680f15298eb749bcbc3bf7944ba14159be46b1e734c91b4c0f8cbaf774fd864c17caa3c9fb1fc2e9b SHA512 91e8f70330c515c966d78ae235e890594f9607381ac738a2c3586b53f01411e98d1687494f39ccc365948ae60497df3dfb2be18e26ab7e69bc0966b6c250e1ac
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bigdecimal-0.4.0.crate 44652 BLAKE2B a104763b71dcc7c1f9d6116d319989c7777db7fc05826968d3a5dca7f0f032cafe4df158c691fb8aa0fe168ca9b5c0ef714de81be5b2051c27ce51147a022c05 SHA512 f8a8524aa24592fbd9a75593bcceaa9dcff7684fbf87a6cb9e66e63135e5bdee1fae40320ae99ef8a4b1e5af5707a8b69ef53d9dc84036cc23fe933ff1038416
+DIST binary-heap-plus-0.5.0.crate 20570 BLAKE2B a0cd30313e52eb33e7fa109c96ef39642d5ec6ef38b96ca37c0b3817299f1a06d39f6245316325e072d7275021e75eceb06a0f78ffd5418ec8bdd3974f10532e SHA512 8ad19390582e20ffe26533db6a452ce8a6768f9fe309f1cf0c58be830d433e1130f9187450a106981cf8d440e2a37ddb95dde90d346decae56340971ff8eed66
+DIST bindgen-0.63.0.crate 201856 BLAKE2B a99470e5878c90d0ff4cdcba5d16177eb765822041203c7224f9baf1fda23f83d92c3b9cd83759ed9ca779f9d3961509b4d7e038b716b9d68bf6563743ca8141 SHA512 43ac3067b3635c968c3a4bf6d665d633b9b80ff4eec36aad353019fc16e25c2338ea3f00a7fb077ae0dc055d10ea3ed6c304055a18dcf0c31bf980c26b110796
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.0.crate 36954 BLAKE2B 1d6cfeb0a17dc53a6249a83c8c7ad7c102985ffcfd7f7f76506889684235e78fe489d23b5a5f9018f0bd526a38d6b1449784c62322fb01f4bb507c0af8bd545c SHA512 0c3d6667abea48811a792749702136ee3db97518b33bc4c7d35737505bf56315e0e5810deeea28b7a1b540ec0e21bd319ba0b3c5c4aef0ba8ed5499ffdfd9b0c
+DIST bitflags-2.4.2.crate 42602 BLAKE2B 768d4ca52aca73d8acf2f494a66957ed2603eefd5a04332ed0880d230c2cc6ef3bfdc0792fa6f288a0eb132913dbb256793e580bc34f4a40e8200e1fbafe97a9 SHA512 ef4c20e6e78a2ecee97e17189b7100a504d8176c7c15d7f17d62157a116d66f83f8b2bba472a4acf02cd3edbd94b20a7047af918c3f3b371e2e04f7474be0214
+DIST blake2b_simd-1.0.2.crate 34165 BLAKE2B acb2508f3a36710119ec170bfa3d343d3d99e5f9b7c65bb62d362e316eca3f52bd17dcdfc30ecab99e41883f113b4be51d72d754b8f4ea8e886addfbd93dcb6b SHA512 b2c5da66e8d0c64c00302f0047a4944e1099ddd69b23075874c3bd3b33c7faee9f425b939380da280d2ee347ebc09dbd4c97fa805dee6f752cc40c90e7edbd5e
+DIST blake3-1.5.0.crate 168914 BLAKE2B 72d1851f3cbe5c996570f5cf0cb4ab8c4215ac0e95a6b930dd64ff650333a8745ad1b63a2f988227d66a096cafc59777aeec8e63c05a22d666c1bdd58acaa320 SHA512 39c4d3d370bede96b3f4e37c44514dddfd1ef91d178116e1556eb8f3e2687b705e2320f842e600e59229198aeffff4ab1de34eaf59e8a3c039003f13d0f08aab
+DIST blake3-1.5.1.crate 170239 BLAKE2B d966170b27098a9f51a2ee1ad0e16bf09a5b886b9e350fcee70d62c0e42bbe6e7629eb185cea9b11e55fa4f5c3e4b65803472e1b18306316cb33e7854feac0f5 SHA512 86c67b98dc3fd790363dbafc71a47cab96bda5e6e1f971210f532783e3b538b1a62e1580140380aaeaafbfdf63d93bc3b09e01b836eb5a7a11655fec01009763
+DIST block-buffer-0.10.3.crate 10465 BLAKE2B 32f0089971bb759244b73a75bdbbeb2d24f0422e92ceb0ae0afe3c698e3fabb371112a2eba3dab16a3859420d492c0ac984bfbb25e59e0c31951501cc652aab7 SHA512 e29faab70f8f2965a58089728274ec34bc97d681526687868c9cb1a2c145db00717f97e77b79a04fa52bd76817d796e104b509cd2a3163085b214f8eb68ac04f
+DIST bstr-1.9.0.crate 380170 BLAKE2B 06ae5065a5d566b6333e911a5b97e3999ad2f0bc19b27023187004c81cd01e5315dcac920ff87a6bb87ccfbb949364f1361dc04d342e24f9f54490b5d44a81d1 SHA512 dc313a16c38ad881128977a20bb390e7c95a96d9530596433a7c4fd7f77d5fffd079d436006dd8d2bfc4aacdd7f0aff229504444250418f6aa3f8d6d4df9abba
+DIST bstr-1.9.1.crate 380305 BLAKE2B 52b45bd48874d052636c6b451cc36d8b012808ea5193e0188e5edd09f81d21b8306926cfebb405ad0650ec9aa710f609bacaa773bf854b21f4803dc38bb2eca7 SHA512 67e9f76719310de60f46adf3c39768b4dc078d4c32dc6bdcec1a94cd9f630c5238e427ed84cd6ec25a44f54e84adeb795a0e92060a5372d9fb9ad9f0914e3172
+DIST bumpalo-3.11.1.crate 81207 BLAKE2B ba76008fb5a975aca12b6f893779e18dd353a22a42cbbeecd5870622a7cbc0cd7e37036af600c570b8a55f26ea8d07f44a9aa1a8373d977b6f75bd4276730292 SHA512 70e90bee1fa4e783ff5a3b18f192b9347bafab7daaa907e74913a415a66c29acfb073fcfb46150801aa7649ab0d2ec8a610de239551565dd167bac72ab13a9bc
+DIST bytecount-0.6.7.crate 14642 BLAKE2B eabbc141f2a277d07fd002869d1746e7f743b96c3dc72b8708308e826d3934ecb01407e77653ef46d06b3bdd9d931e121c9c66a784d46116a9e6b98e992512f4 SHA512 afd46ec3f60022a173b57dd954a06c7c86f21fc153a0ee6fc2052ada5a630515a386bc8344680ced57dd19a205480c694b9a04a6da0660b6e854b4a712604d53
+DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
+DIST cc-1.0.79.crate 62624 BLAKE2B b3cbed3bd6fcac1c6ea258ec96cd107f859947a35dc89c3dc8f314741b0f668e61518f896ec32ce10c9a7eb20dd350bc177a71810d53ebea59fda062ed9d27db SHA512 cbf0a25f3a23fc540e9d638fabc23f761f1c240ebb4814e761e90437d71fc559cd155768ab9e78fc192220d8a605c66c3af342ed736b719181656170b98d7bf5
+DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST cfg_aliases-0.1.1.crate 6009 BLAKE2B 6acfae9a89d3479f7ce1f0b5dbb13bfe27c006b936a96685606a61a06f69d17ab754a8a0d96c54213f758281c2fb32ac74d03a34e0f836dc7e438387955aac37 SHA512 238828445c5b48ca41ff88825af0a1ad30494e423bb6f89b6d5e4d26042afaa1ceb0e32041f7cddd79c3e15c6c82a1ddb9469c4b63a1ac52d4bcc1174900f880
+DIST chrono-0.4.32.crate 221116 BLAKE2B e99b0d05e62835bdf21b86f63de4cde90016df2e00c88d4c7aa492fc69cd075af8946cf022337fe38c012b88ec9f877dc4521d066512e6ec5881f7ae3fbcd80d SHA512 0c7defe4338dd6c84e73aade35560896ac0bf5b262296fa901041a6b7c460d92229c82c7bddfc6a510d5f060adfda3c88e2d2d154f0c2fd27ed644931a88246a
+DIST chrono-0.4.35.crate 234267 BLAKE2B 92552b9c8fb40160de9ee62ed8c5bea12bf8bae393caf91c1c64596d6b2efd09dce94355fb757ed46eaf4a13d27ee3ebb43af91e2d8c26df1f9a9f429869f319 SHA512 aed8bc3298c8f8dd8146c6a919610b6dda52c038a28b56c837a21590e41fda605cd466dc1b85e407f365e116d741cb82afbeff5d29f95f3f5bce4a62abf80812
+DIST clang-sys-1.4.0.crate 38679 BLAKE2B d15bdae2142ed26b4f6bd037bd2062e8c4b7b87fc5b749b872a95ff1952d000066c255aa0984e5f9c4a5c88066db4a20cfd048db4ba5a59b331d5ffa5e9a281d SHA512 062189bb0a341e2e85de4987f4b564c1fc69e4005c9c42cfedb61dee5f48db9126a8114d1d97be1b9c21b8c885243751232fbe8cf532e1d2be593308fe45216a
+DIST clap-4.4.2.crate 54441 BLAKE2B 878b7808985e0cec0de249fb35c3a81b3a583b08e56c159395b0a915ef0d4a555531cd5e280f8c78b11a5f4883a02df65770733bc610ae61dfe820a2b0361bc0 SHA512 7ab5d9f320779e7f249d1f6c5b4fa351e6476fe114ce5975a70f21a19e2ba5ffd3867d383242506c0f86917ba7f271b7e31afdbb087cb590fb6ef9b1466f62dd
+DIST clap_builder-4.4.2.crate 162358 BLAKE2B afe7a9e1f62553a4c25617305b4060152e8a74b8ea8ba37fdb399ee1e4c4c8ae8d387fa81ffd6e9faa1f903da6add42b4711919c9b398770a41ddd9c60a4f4fa SHA512 58f211803ffcc9007aee856f2491b9ab823bea281d35a1f2f177beb8efb5419ea7fa6fe4bb6790f134c288194837bac13b695311b2521fba9f1d0f90608a8336
+DIST clap_complete-4.4.0.crate 37256 BLAKE2B bcf58bb9739823bf87d854f9b10206f9ac59a537c5e103915f03dd291f1656943b0aef3a41345b66dd63046b395e6cfde5d19c89b3e1e321fd8374268cedb456 SHA512 56a5d9e49dd5fda7d06100dc2701ce1c231b255400f4fe06fa37066b366ccbd9c8064c9305d29017db8e31d2b88ba1acef4934ec8ae82f649a28bdbabed05d84
+DIST clap_lex-0.5.0.crate 11792 BLAKE2B 0409c9d957ea6a566eb8b50f4212702df038d04c4c38f7440d91cb4c58ec887940f0cf500c4c3949c2191399aac3f5cb1ce44868eac587cde90211d3e467b9a2 SHA512 0149ed7c2438a19b4857f895767550d783711078f07bfa9ac8ca531e06f51c7388110f4d558e30bf503536367cc370cb581e8deb6fe51f9b5460a334963daacd
+DIST clap_mangen-0.2.9.crate 14623 BLAKE2B 6d944e42fd407e4b224d4ca8f0dbfb43d37d16f42d4d1451f38d503e6ce1edf6fe9fedd5cd07e761475e2864ee5cdb056d25727ba3429f7749aba4fa8d68c4f6 SHA512 5ac77494898b8069e1cfc911d4e88ac228aa95862e240ebe43413e2f293546009171d51da160ee60c99803487c33b7f3633c5e70af3352ab9a83d0edeabbbd5d
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST compare-0.1.0.crate 9291 BLAKE2B a181687c26ed0433afbbbcd6f6b3d5af43aa5ff5f2305d79b334bafe54732a4d17c82e8efaa19b346e01a3af33a20abc5f7375c52253b0e3b80317a7873234a4 SHA512 ea2747232b94e1233a3ae4f4c5c80ed5280457add6e213f278276912cef904b255c46a3c977f2b769536551a6f9c83eedab132576661cc55abfb9d1fddb25322
+DIST console-0.15.8.crate 36364 BLAKE2B 467de2c2fbfe31688cea20b338558ae9671e50ba1fd07983d21f32d7eacb73e565ebdd6ec5e78b2ae04446f09615c70983c0ee534e25ca5a28fd1b408acfdf34 SHA512 b05e49ed145785e29631d481885788f0cc5574d4d7c4d90280dfedaee7f8c1515072c9c4cfe6bd2e017230cd228157222af7e7d41a9fce697cd1888095df4de9
+DIST const-random-0.1.16.crate 6629 BLAKE2B a15c6883112b0c3f71b3fdd03c07f2bd9d97eba0d8da351ceb1f54c97d88756b26166ce9ad81b0f977c69a565debb94e59c5724671204ff2b6df3c8844f03fd4 SHA512 b5dbd240a917ddde4f7211fcbb78d672b08e3d2ae51f93a66dabb22c610ab4728daf381d947a9da5e62f11707225a0de4fa383e06612ba170d7a5a6e65012622
+DIST const-random-macro-0.1.16.crate 6657 BLAKE2B 44a3508e2158b79042cab698b1f31c50fa356098bb5f4537f82fe1b9e893d3e8eab59612a8957e524294ca0a035046468d799e4a0e9253c1464b68ef682f84e2 SHA512 8478bc65b0845e765a69e09fe4152e89f3e3970d2d92e4b32bb0abb7b918c725f325d4b19a45d2a462905bedf837b3a23f31b1ed9dc8655ca502de72616b074d
+DIST constant_time_eq-0.3.0.crate 11369 BLAKE2B a6fb4ad3146b26bb3e18458938e65133431df129963041465291b38a69ba2b53ffcc849f455e67a65a5291803591b350afe4ad4996f1c4cb76c18a987b5b3ee2 SHA512 77bf6817c521daa45c0df7721418b4aa367531adde46b1db97316d52ffb46fc4ee2d3e6f62ff91ca6292db5e1d3e040f0f5287c3936f12a595b2c8c5928bf5e6
+DIST conv-0.3.3.crate 22124 BLAKE2B 9a05d9beecbd288168438e920ab4f42075f1217f224c9dc91d8e23869808868274e108ae5f881da157276cd407a63f2e8dd990b7cd9fa1731045c2cbd2f3a48e SHA512 f050cff8528f0fb5a8dd936995c423c5478afc47041c3a8cc8611ceae3228098b80589fdadf78d0028e960fa354768440dd7084cf295a29f2c6aeb554f47a8cb
+DIST core-foundation-sys-0.8.3.crate 17519 BLAKE2B 4ac3d9ab16753dd995abe82f158d460d0d22184ab55d260e73b20305cffe4e03427dabfe0c8be968b6c3ecd348be2e17154ded7c9bbd5a95334ff266fe83bbf7 SHA512 a3ba3184cef65dafe8318c4db7e59eb2749dcde7b2370ad20272b0735ded0032daf2de3fd0cf55eb48448a335f5b81e8e745f2a647f9a43bb85946ce714bfd82
+DIST coz-0.1.3.crate 21914 BLAKE2B 4c79083d5e699824015e71c8ceae0db119567f34969e644ed18249d7210c92ab503e0384a3b521aae7a5c469a26881840fa4b24c983d4139ac59178c4d8a28d5 SHA512 476b8627d9694813fed0ec262681e18f296977da8fc3ad9d749008e4406a77add8d3c2b15bb82a397d435d99bf8edbeec001a438d64d50038a0a47ac462230de
+DIST cpp-0.5.9.crate 6494 BLAKE2B a6568749614578a344fc2147d5ef3a469675d8b938018949bb36f901d162203030cf454e4ab5af360eab31aaef99a2b33adcfcddb933cbd0ef549d212c1fdbb5 SHA512 208283b3936be72b9b9dd1c2d7850b7234e00a3b69267c9eb8c71ea3046646d18f16343c4f76dfc02f59a5439c62cab1fd3eb5bc0ab240f2515e1df73509bdcb
+DIST cpp_build-0.5.9.crate 15713 BLAKE2B ff7e7967ae09eece2708d22531701727048bdcb5ab64d022be7119d4eea67f3746ac89555edce2e825590e70593834089c6349e516d26b93c5d647554d775e56 SHA512 458829c61ce6de865f087b3737e5c3d52896a468e4cba571a08b611ffca997177807404cc16e8329cd71a32843254a3a11d24d7b94a8095deedcfd2183fb28b8
+DIST cpp_common-0.5.9.crate 4725 BLAKE2B c366790121f185010d24dc2a862eb36ad5ca341f1eebc68841795e0896d42ab9e9d2964fd2fd6a291fb735fbd2b217061926092635983847a898bf6d7bb82517 SHA512 fa8843a70e29efc202b6d129c89f18877b859c0595ce0fb7b56c4bcc805cf7b6dd5d5b81a7a75fe8d98843d5276bb774c0454670c48bde56296c3dcde2355aa8
+DIST cpp_macros-0.5.9.crate 7103 BLAKE2B e7a3502b04d226eb15098d592c120bea080dd41e4a91ddfaafac8490026982edfb801beaa022c922ea19c59f3062084c26705399568a1675165d6d84a839304d SHA512 11621aa045c7cfd62bd1e07cb3b61d2518619716b5bbeb7944c2b032e85d4e10d8762cee2bf6f63904dcbd904d59c081c13910e63835a8aad4eb21bc645c278e
+DIST cpufeatures-0.2.5.crate 11251 BLAKE2B 2724be40d3bc0e2fda957f645e1cd6472450dee68db3592ab607bdac444283f571f3c904e47981a3fdaa06cab4032734a54470e3dd6e1b67fd856daf010e1277 SHA512 d02327a27ca9fc3c587dcbd10da6b1370671cd7b1df8dfc9078b47180744d0572ef41a7ec205ae9f1c571e5b7f4bc81278ab4c6b076c6ccac0167100e346e74e
+DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
+DIST crossbeam-channel-0.5.10.crate 90442 BLAKE2B f3117110f7c558d2263f0c8522f98a9f38e04d3ce43b4e0fa67f33f23c5c5be6680d177884131dfa75f50cab50b3607be1f09a10126fb960b8a2e04161178292 SHA512 afd65fda772f9f225e1b372d27fd90f991097c57ac9b2747a40702e50791c6d702d1342088c99c2243873cbe6126f7c4e8df8f41b00bf4db3dbccfae1ae0063e
+DIST crossbeam-deque-0.8.4.crate 21752 BLAKE2B 1813e2c0916ac990c5ce54aadd13f309dc4d2cb651995261cf591900a5c820712de7dd730116e8b4cf78bcef19626889fc0658d7f1020cb2c1d7fab41718a31a SHA512 cc036613727a3aa8933bec419ba8a5fd2f506770ad2cf874ff757b048e0d29ea3f1b0e2b72d2d5352ed4b62c6764c7bbb10d0d4e217176da26bf5ae4bca0b68b
+DIST crossbeam-epoch-0.9.17.crate 46953 BLAKE2B c5da55d852c649da0275bb3eac67b9dca663b8b1291c60c55b5af226c170cd7f622665719bbe62ccbb8a63804955ca27557b26e129dd81593a560216949f4acd SHA512 9bdeb0415ea26250547ed9f34a8dd4c17f9379e3c56f8f17315e48f9bf63ce1b79c37786ead0f4df026e31b0b5965d181c36839d891c14149529ac42b5cedea4
+DIST crossbeam-utils-0.8.18.crate 42383 BLAKE2B f0b58626f3d40c5a889572e0f5fdb468e4c13ce0afc09aec1a75e1c5888cab56fbc644f592c620e1d28aae79687c4446146d9f783d96f8bd177d0a4a559fe8dd SHA512 977f41d7596a8d206fab665570f155479e15a83698fa54e714305d56ce32d78abc6f778b5f6e3c379ed1da27e241639cf4d0cd12922383f774ae85b32a4dc550
+DIST crossterm-0.27.0.crate 125311 BLAKE2B 93724dddcfcce9249db721213985fbd9b30eeabf0e8c1c8626744eae3a15f181cc2bb871a77fdefdb2b1a7139453b1c81081c6d82a62233f3574ccadcef18686 SHA512 b7b2b7d8affd845902e0dfa06edbcba9c7794e0839895998f39ea1b118de5251fb87c6b5de27e85c490a436b04943ff51d609cecb780674c3768c12ec401d2eb
+DIST crossterm_winapi-0.9.1.crate 16027 BLAKE2B ea63abf751aeab203f326e77260cfbd1de286be26acf714a083ae1262b0cc2a35b5cb6d0bd54f45b33c1942eb22f916141c5870aab34149fdb30faccf4d4642e SHA512 48eee242f477f43b69c00e3a5d4d255de2ce1774f6e73d869c5472b35d85af0b63f3a607097da8ace437b1e52a524ded4106767b83d4ec53c30c2e37ac4b46a7
+DIST crunchy-0.2.2.crate 2995 BLAKE2B 74ddf8c5e0deb2ceab65c20a2743e1230739ac6aa3af60c9e867a7852270697a1278b7dee00df8949fc4268f9756a4a098df1211ab3b3e31a122652c3ba0a6fb SHA512 36dc0aebc41a3aac5f1b178a7e61b65bcd9bb5c8539b2024f79428200f7c62daa7098af55c6ab0765febd2f8969bd6c0ac8096f73cdc0958e5c4e4eb6a4f7025
+DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
+DIST ctrlc-3.4.1.crate 14191 BLAKE2B da87431cf1a5497ce1212da60a63f362b5d6fea2972e2fff5cbe4a64b0f815d331173df0f78b58cb1e6566068d9320f36ed85aac09944a7115da061c7c614e66 SHA512 7a42302274ce2b4a361b0ca80f0d4ad5d14e0936ca50679b5655bec40d9815d4e2e634322dfb2d652f7de0b0d04f8548915d7af9e13685f1a63415a078f849d9
+DIST ctrlc-3.4.4.crate 14660 BLAKE2B fe7c2ca8352dbe40e60ad2c63654beafd9ad3f62483b23b3c614a22dacc8ce0edd2b94e9ec3a2472c581f6a1b8befe0952df092b4c7d34ad92414190e285e51b SHA512 c09c5bb87e4116e4f2604023d9a94afb9985678a4d02aac17baf5b5d13d0ac7321e07dd7b20ed620af9670926acdb6b78be37a56c8be171c21975d34ebf0196c
+DIST custom_derive-0.1.7.crate 10700 BLAKE2B 205c46bd4f052873ff9790974052f8d81ca1fb16815b591d20db96fb330ef5b782a54eca9c07615edc5e55ba93eb38fcd37c1225f49251e83ea6059ed2cc3910 SHA512 593a98f7c9adfbd07eeacbc6915d3de053ffb33076099f425f5a72c089ee0dfabab8ea31f525cd3eb5da5c19782925ddd14a3672bd9999c6866fd9f14150518c
+DIST data-encoding-2.5.0.crate 20632 BLAKE2B 16ea08dd12f09f2e6f8ba2910b3db07d4e7c9916e6a70d41420ef1a0e5393284b49787c47af0868bceb7f5d3f1fadf203f5a547dc8cb97713d5225dc9181fdef SHA512 b1de8bcfd7cfbfb988091fdb550eb98dfa5739ff58c4b789663e5db0d539c9acf145ccd72d87f7e1cdefd09d5771772d131d2b2e2589ac8f0bc6972c801ee0ae
+DIST data-encoding-macro-0.1.14.crate 3762 BLAKE2B ab18a0b7300e7fb7b8bbd6da07921525180e6088f0ff41c30a9487b64aac6704b8ae36e5791e8658d8493895a845a3223f9632fa3f67e2b5d4aec3fb1d352bf1 SHA512 ce2c80d6afb9c1313ffc45f27c8394d3eaf0154122030b286c21c7a5e3cd3509309b865040526ccacabd097d51f7b80238f643e959e35c10f5005baa1a6ab87a
+DIST data-encoding-macro-internal-0.1.12.crate 3184 BLAKE2B d5fdd0aed50bb097f54229e1cbf8048077a12c9fb0a39c77d2cea85b42208c4f7e04dc2f170a68392b0200e6145fadb0e7039d409ac62f68b2f3be1711ba23d7 SHA512 5a0b8f7e84dc9ef1b87d014e216cde388010b63aed08f925c9ac83313dad4825b4ac846dd499dda4251780fbc221e9346b576a55cb5bd8d33752c0efb04ac799
+DIST diff-0.1.13.crate 46216 BLAKE2B 27ceeafb7afd45eabbbe22d1f05667f513a6062762e6b77122e267282a8f2a0bf96384989508bf10c9e13af4856bc9f58f09b10055d6fc2c32681e288ffa9f9e SHA512 45e259c9fe7c23bd9e9454891b42d4aef6d681d35ee039d21fdb05ae9ed5856161a40f29889e7880ac2a2daf85f1b7d752d213b4a99a1a74ed2682c18a3ae7fb
+DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
+DIST dlv-list-0.5.0.crate 22112 BLAKE2B ed6ba7f0621dea6bad42a96423c147e55d6b120bedf7b1f8eee9f1101e38bc44f5e030c67df29d281829a9951233c0a8138906dd59c454caa44aeca443f08758 SHA512 4acfd27f975f314edb8e520fdd36c45f9dce60db7d0f1a8b483689ce01e099663fb5608a0463b0c4c3453d493787ba4167b21fab50eadceb90bbe202396ef2a6
+DIST dns-lookup-2.0.4.crate 13733 BLAKE2B c28840a97de70192d337d078d0e04db5da0b0c01781bc245036dbd2931092c3e381a3792086fc0e84c6a1a0f92d0adf0366f41d4f48479a331a6de1e69af267c SHA512 4b2be29b927a8bc83e983b7caf24f3391dd1046b1d6b255e11edcc69338cec9d04fe5935bd01bed30fe2b551ed7f93585e92fac066e67479fe597acc6bdd87eb
+DIST dunce-1.0.4.crate 8034 BLAKE2B e1e7ffbcf1e3632036c03303ab46fc37b2b0a991598790b2dc65d7a61341a78bf555230ccded8fbb87d6288282af3ed2a8641212a0f1fab929bf99298e878b6b SHA512 f57d9c53c177bac8e10a4b56ae421c604085aef0f264b8d6871abb7e1ff713b55f396c5c5f24422763319c504c6ea6a774416af1c2ba23ba7b67b2282f6731f8
+DIST either-1.8.0.crate 15992 BLAKE2B 5b9254d54ced1f23447cc78fca74f12085c37e3c2da441b30521819025ebb808e8cbd9cbcec811f8b3951030914c1736b8bda61744d1323af8c5b8b0a3ef3ee9 SHA512 5089b218af067b51ee39c085568a1a6f542e8f68b362207bd7126cbcd2b76783cd21cc1517a1d088ce4dad1714be03a3660f50e9498a0bb43a8676cd7ec490d2
+DIST encode_unicode-0.3.6.crate 45741 BLAKE2B e1e3792bc2bf9db7df33a516d0d755eef5eff1249aa9b2fd7f0dfcb155786c566fb619c9b2d73425a8625c8593988b117e9676c341f65e8795ddc838bf9881c4 SHA512 64193d6ac75f66d58ed864169b5d6228ede36dcf100614395e086bc8e847a3ddd287734d88e8ed50f38c679a99c80ec68449175a67d8ee03b02ec1cfa9d55e77
+DIST env_logger-0.8.4.crate 33342 BLAKE2B b1bb359be2f34ca6f93f72154c86920b8254f574b48f693b2ae7296cd1ff25d34dea61e95fb2954569fdebb6c522c851ef7499c107005528aa2226df13b0de33 SHA512 9e4478ff609a2e1e1a902a55b221af43a52622fdb5668dc33fb0be354b964708b7b6d13b7f1ef11982f45fa7e71f0712a2ab3fd4ea98155a5115e5a7c3d33049
+DIST errno-0.3.8.crate 10645 BLAKE2B 4a7af10845f11b3d8f177a75a692be468e8ef0ee53fb84a4d212335f1499456b6739a59af260894b5c3853d3bf21ef3490d1e3a613305561203ca334a636c3b3 SHA512 29753c421c6f929760cd7565f8171696e4f70e677654a7507253f4fc495edbcf214ace27be46bdfe5c1a0d782f4b688f591476e56f4a1096471cb353c643328d
+DIST exacl-0.11.0.crate 62479 BLAKE2B 5b99d8af9c58f8a35eba991f54a392d8a3bd1fb9ac2141c401393657aec48f60c47d1451aa6769152b77c34f6aef364876bcdb876c25e8b5d828b43e3f433a6a SHA512 d1b7ca19ab6c0210e4afcfc8b9e18f774caca662b95a68fe38819385e9cebc65bc4e324223c3cc89beb44be6faf129ca6eea21bdceb6e42c43b3bc10f7196362
+DIST exacl-0.12.0.crate 64506 BLAKE2B 89471ef3fd6b675ad5cf0f7ecdcdad41a852828fd4fb8f0f96ca0870013222045d7e1f627c365fb8b5a0a8c617a15d045972bae5f87b99258c28a25d13b76846 SHA512 d0eed224863b6d5216d8974bf83ad794123650808ec042d63db138cb252caf408e127fc5707fbeef181cdf50fba0c2a27ce49fa2dfd630da822e4bdee0f130dc
+DIST fastrand-2.0.0.crate 14402 BLAKE2B 8bf830151ec616dbc25f216265722e39f8a2cd9ae036b0904b73775a30497368aaf9bb7f49890c330024c3d9b8084749c91f601b60b53bc8cef2da8b0aa71322 SHA512 9449dd52e4b722d5747f68f127843c0d1a402765c2b6186b9526f8ae23293cb1f6b50adcbf18a8ea768292642184cb0eb42b1801d20f6815397903f9977f3cbc
+DIST fastrand-2.0.1.crate 14664 BLAKE2B 7a5812153500170dcc53ca8d66384fef46eeb5a8f970be43863f22f82bf427672d07cb053f4e04b0fea358ca89178399871235680f57223b8561c07b8d21cf13 SHA512 79a1e1b3f39264f037def236afbd87b732f5e0a2154b1d9e721b3c7990c52be45138320e2571fe628f482e0da7e3cf867abb745e3c277b19015fc031fd4410d9
+DIST file_diff-1.0.0.crate 282318 BLAKE2B 628bbbd75e7a8f192e54f75e3898b2c128f23c0111299fe54676f00ebfe532794f4b7fa28b27df3f94d96c8e4405fb9d2dd73e3459dbb888a38a4e99c6383389 SHA512 260313bcf0860e63d9f78523d81416fbc360a33c7c1740306d9d5b8aa1640e509b7330313c38105cd662881a47c46f89193e473f0b7da12d3848ed59d84e9905
+DIST filetime-0.2.23.crate 14942 BLAKE2B e4d2d9c11745dfa5592903f3c3c6a9871292a02f9862607b610ead7562b5d1fc3b64d37e779cad0630bde8012efda72d86af5e687cd2ef5d3627d8a89bca517c SHA512 8d5ac82482758577d1d0669abbe7b880efc44958687bba745c9ee4a5c16bddb44ec0fbe9c29cf424e7120905f3c3da607f3a7ca1e50287154c0475ddf2148bf3
+DIST flate2-1.0.24.crate 70191 BLAKE2B f5ff04557dd0a57151b4c704cce60622157be4c847fb0a42eeb5a9d531ba28d34b41632bc1b34d2f935ab576f152479f72877dc4e6b296edf125becc6e6d52b2 SHA512 8faf97c28dcc4553f4880295677b1269b4acbc6518d006913d32d7e319990c6631e10f1baf7199b96e03f6de95b9e2de04502522bb1eb45bc301a0fbb0bfc0c5
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST fs_extra-1.3.0.crate 31298 BLAKE2B 96dfb4e886767d3d3850d94cc789867c3ed461feb9da0ba90c600b2b41c3119067953ba795cea5e6c8c338adb6fe6426769a6e6894ea3e02eb1ab11794eb8d5f SHA512 090d2ace0517b86dd2f54c5491366cbb6e1677f64cf64f024f7dc6a3c42c4f8c54b215e954572e2df10ae7f0e956890ecf7ccbeebf66b645c7647409484c845d
+DIST fsevent-sys-4.1.0.crate 4620 BLAKE2B c203c774d5038d4c4abdd7bb9407a6b5f2b203a609bd92a7fde38afaa71248f4610e89c73eaf982a5d76560f9503081b7b10573046b1a91f09de4b642709417a SHA512 e702686629557b879efaccd37b03a7ec515eeea29d8f8ba46f82b8b68ad157ef9d6b188be031f806d8fd27d4e9d2689cdd6bfa14e4ff77493a7d0be3ef1238a7
+DIST fts-sys-0.2.4.crate 3807 BLAKE2B ba506c633630c168e1b215aae20cb9ebb3789c736724f9759eaf2cd0d131e8b17341c745f580f95bb4aa0f8576cd525069f7f1468685441d1b0e49eec212e62c SHA512 5ab7fc502f9e7c3b628a178b59ec0a627cb270bfae5968fb49766d2b78bbda2688449dc9387c8cd9cffc456a4eaf217d4d7ef5c56f555a7e55659be72028f2af
+DIST fundu-2.0.0.crate 60486 BLAKE2B 657a1b082c78d8eb2888918c4678452c4e4d006a70149a6c15852387aff87456b2c37daf4d36fcb82af1bb86c4c6b73dbae1ee9529dc60c933d717503464b53c SHA512 2a0f530d21acb0f39ad01c664e090778c915e8779d5e91e258b4a673183d1777b5ee3a770b78e239c82188c5c0a09ca51efec53b0c20788ade5aa23a0e2a73c1
+DIST fundu-core-0.3.0.crate 37430 BLAKE2B 8f473be40b2a0af15b854a9e8069ad3b6955b1b1b926adccac498fa06cf7677efc42ed31520a452ed05ed4dbe641de0ccc6d36454321bf6bc83243d2460633e4 SHA512 4a9a264fa98ad3ae1dade4da636fd38feedbdf9cf47cb213b324a0bd9be7521353d0915f5dcdf6b6b1a5fba0a09b237a88fd106c104406ed04ea398676c43fb6
+DIST futures-0.3.28.crate 53229 BLAKE2B fa4420594a8e261d2622715e5e40123d401b0a549b8eea9f72efe177c606b1fdb3743717a4826bc82479c1700e90a1b3bb3d0955d75e7eda84adbeabe0dddf89 SHA512 271c83c157de76b1c58db49d6f7aa0591c665551e60dbb260c3ad292a48138979b06e76b99a78cb4f3ea57cff3ec5884839cf6a0b807fa212d54ac28799c5e6d
+DIST futures-channel-0.3.28.crate 32281 BLAKE2B 128709ed9c3f275ee9365135426b626dab7d34a706cb9435a6ee45e2a28f7d2e6702b7bcd8b0788f7171ccc75917f287834a18c8af58b73ec07f46425aecdd97 SHA512 21bcae42859687538a3bbd4a4328b1a176bf8eec3b03f9d341f8ec08e796ada1638c0c3011246995d742e392a3ecf4446ccd2e92ea5426fe658c5f5ad8303b99
+DIST futures-core-0.3.28.crate 14780 BLAKE2B 551327876d54a6ccd97382679d61afb3e344f7c8e26813ac85779a57850cbb1f54041c82d71a7bfe4a30d1c8d9aeb560d8d4bf5babe7010fb7cf3c36c8ebf3cf SHA512 a21900a68f1a9232c245b160e95896b109315f10719147b4f104e11edb5b59c862555e07aee37a7d4fbedf0f09a02d4ed329f92fa1ad4679db1d7c78ae2865e0
+DIST futures-executor-0.3.28.crate 17743 BLAKE2B b192025f0838c924783090e7b0bd7806edae0502172e5f961d4cab5a4a5c074050ab6a707a50baa0ac2f505deb1e3ace4259349570beab0bff34b7bf6849e9ef SHA512 1404717a512f1968e3ac6c53bb6c428fa049b0f6c61565ddc4859407cf16c56735cddf7a2931b2816c6c8dc8809f76e7f98ff05d4f80e4567488c2aa7b424a50
+DIST futures-io-0.3.28.crate 8910 BLAKE2B 5554e9dd8548be47e7195ae8b223288cc2e765dc9feb703092972ec9e19ade825bc9d7093625a77c7dd2213df59e2c70ada84a84446b5a940c3e62daeb9dd57d SHA512 805177f2677a09d94ce5f010af9244e0e0dc285937e355a836179297c4c912a762f8d96bce57af388502810dcb67a772b7a522f5c6b21be3aa4b7ee46372d402
+DIST futures-macro-0.3.28.crate 11272 BLAKE2B 3f6bd63f402ab3348e1eae96897b4c18aad01b99a1f9ff555496fc6f3114cfb3334b1949604c21af251fdc4923c09e4412f40031ed92646a06ee05f6bee9a0d9 SHA512 accbe4f434b3704fea440e1fa7492c438068ac89798e3b2c85a2b251c55663ef2c65480f6da0884c8e80a9c5f5203aa6ae623059235f4a480a54d91bc5e9426a
+DIST futures-sink-0.3.28.crate 7852 BLAKE2B 752286cb15ff37e9bf4c6cc80c8ebfeb229dbaa4e8aea6fa505f1e145e5dec99c4818c8e7ba2bd8a03898350e05bc124a5ad83e28989e282dbc132ed13e7fbf3 SHA512 e3535aaffa42215448d78adcba72f1dc3131598169dbcc8b52b82fe3e74f4b0d5631ab3dd3ac5d4315be890b94d6fd8f53de274ee4815f9abb27d40982c96c07
+DIST futures-task-0.3.28.crate 11848 BLAKE2B 79cd7b01d24a5274b0e564edf0f5d041414d9dee02c503f2303958e679db0db3c652c64352052d20bbad7bace078b553f77920e2ae21a948a1c884eeecc663ab SHA512 198f3efa51b1a8492a4151a6e4ef6e7abd09f2f537f5ffc2b8f2cf739718fb9714718226ee1cde7a58d41a2e623445ae64013f02e7f00489320c06292465fa82
+DIST futures-timer-3.0.2.crate 19879 BLAKE2B 4e25777e567f390799b4b01186d59977f1591f9f8425b6951679226375cf90764bc157dd2271614f16b7b13d3aea67509da0355f3c4de3d323b1bdc668bc7525 SHA512 47cc68f9f134e557d66a003d942d8a4201b1db56f1ed2ae276a2fe6f56b24c06ccd108d9852f9fd9db7d254bf8aefafa56cc0410bea41c3805d7e4bc3dc4d73c
+DIST futures-util-0.3.28.crate 158510 BLAKE2B 0721356a4947b39cd066dc8a88afa7686b832be269295af3ebff8cd74b42dffe5484399f66e3e11e2b54c2b8e04ee002a9d507eeb5259fbdc00b226e0f94b175 SHA512 0c7dd3701b7ab0a443a56aa64e6d9b6ba7bb9ccba4c05dfe17608df3e2bed1c2fa460a0cb4abb9fb25289d3a776128ffcc4fced75ca73a65d40b18ee2e9a46e4
+DIST gcd-2.3.0.crate 8934 BLAKE2B 7abecae633692861373a962262f8047893508706d8d7e7b9f7c1454b7c17cdfea9f039e52811d56e21de25a593d4a9607ccee9725578fa0c6ae22c4604904d97 SHA512 703bbaeb5ca76efb6f3fa3329566df34924850a3aa21e6cc38fa6f99e2cffcb12e1214d7f23cf5341de9d0edc3528504226a175385308d5a04cf765e98399613
+DIST generic-array-0.14.6.crate 15889 BLAKE2B 7beac5446f5da4d077598af43c238eb7e71a12b0b91e6be5dbfc1ca33dc21d128fc93c9c8b18caac4b88830c8c8a643f2033acaca1d9a9f3d95329d042276156 SHA512 254e6fb6658f083f26e022916795c9ebfac241b9df2d811aac8316b17e1375e1c5aa54d72f1bf6c2627a88484a7df4b14eca231c90578e9aa3d9997047fa0f20
+DIST getrandom-0.2.9.crate 34457 BLAKE2B ccf7232ece1047000140ed6bb9a1afa784be87b5cf83e2f58dff77abcd79e34120b45336cb05e47fbfde36407957fe9da8b04971092ec05f67b321fde9142d29 SHA512 48e341125223945d1c02c4dfc54df303ae27d3ceca0d5a30b42065f5e40da600cb2010bb59e88af6b990d54b5eb4bf83ae5bbd27e13e56363f5f68be03ea9082
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST half-2.3.1.crate 50257 BLAKE2B 073192254d98ea786b450eb4e29d36c3a661ee2ac6e57b8f303a7da483ac60451de59a91fb4d4be3fab23ceb109674416162f8224d3e9bc05883e4f998182225 SHA512 b29acbca7b8f8fed6392346d03c710dad0f51cb2e358e7ea74a3aad4e10ffd22edb4154a56f877adc375da831a7597b51f7049335c0781a1b1110103e5eafc35
+DIST half-2.4.0.crate 50666 BLAKE2B 5175650e5cb9fa08a5d45ce35b76b15454d27f214d9b9236902ffab71834b342beba0654f9c85fc796bbb499a1a979b60714a5bf7666d1faf59d61530073adbd SHA512 7357a0f84dc6ae394efdd464f5a6da2bafa48bf8d794b2c34d1507d4d66af31ece8a012b58e6f76eacea2c249488a12c20f8c7e516ddd42a70633c9dbaa13bf5
+DIST hashbrown-0.13.2.crate 105265 BLAKE2B e9ff7e6e753166ab3051a834df6f2da81a19ac6997ba269ab13a65e0abb9ce00839311785aefb451553284ad5ef3a0cda925dc2bc188d2a138a78578e530969c SHA512 21dae7a283326d21e16bb32ae0dd1481c4936939a32a06478a3351c2dec97941be532437b808e99ac40e7900a75433fe0efbd852158659a682461245e19d0e70
+DIST hermit-abi-0.3.2.crate 13783 BLAKE2B 43089507a5ca0731a9e9a54fdc8f4dd5f807244797eba5bdcc072c2c2b3761481df65b8cc65900769777d9d21f8345b502cb1915ec36747160e87f179469a661 SHA512 22901ec8976a7c96e93c9e07a2c5d3db49d7af60ce60c7ee6f61c3cbe93190d1f285e737c1c8b2236d540ab14e5d92e42828ec05f1b212332a862baf2b1b57f6
+DIST hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6
+DIST hex-literal-0.4.1.crate 8559 BLAKE2B ca88420383532a2f2c09e188bc0950cedf74e8335c1e5b3f640dc80607d57bab0aa6967a536a458d149a074f8bc1025a3de99a9081787e7ac80dd8308fa0e5e6 SHA512 8894e48485be7e1d7a16d2e061086c524b039a1be24a4c20126d3f175e12aa87d6d65ae295da6dea88f19708f3f3a051c3c3e334196c094ace68a249ad57fbb6
+DIST hostname-0.3.1.crate 9272 BLAKE2B cafcae4bbfadd51d058e3daba3e63d897bc3418723d8e843fd941d9663dbc89dba131c77d14ce7a5da552650ea3c40c4e418c88d465f1bab2fa20c178596852d SHA512 a90407996353c9bcf5b76be03713e3a0455ac80a50892e77a508744cf436a938ddb87ef97d8cc91ec7dc4353cfb7bca0fd28c90a72f8a9ecd4f29220d174edf2
+DIST iana-time-zone-0.1.53.crate 20176 BLAKE2B 842c3c2a9f5b753363668af5162edb6f2734a51fa6c6fc8bafc3981f5f287451258f5ab31d5ea6c2a1df75934233849bba8dde4ee5aa9fcc456fbafa93d8b51b SHA512 a3f899fe9ebc7501bd22e75b2df34c3b26ad5a53afbff4fa552672d0185d8a291736c48ac2fa76dab36a6621e689b5584a2d7bd0334055994bb21077765aa7cb
+DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
+DIST indicatif-0.17.3.crate 53584 BLAKE2B cb65be2e4de6d2d6fc636ccbdb07b415314464eee2d51a88471bd0e4601e9a9f2f540d6d7dd81ac8ef2b693e3cf9ccef1184c8f32d213d6b31e35f2601d1b2db SHA512 9d536106cb5435f6944ad78fbbcad2dd15763f7efbd78a21da452ab6fe939bed8fa565909aa6db12f738035cd1417ddfbfba2c2a10ec14b8fb464acaf7356c39
+DIST inotify-0.9.6.crate 22971 BLAKE2B 7a6cedd29b2503911fb42324fe3b4f4f20abb62a6b4370f8a7f634d9988f1b3053a70d69d6bbd7b850aae2590ded7548b73326a598d31e5b579e19ac3cc781d8 SHA512 39c3db1b6da620df9eaaa41cc20c2f22b9a372e181ed7d8ba0c7ad4e711ba4486bcec7ff86bb4d814d9c53e071cc4e43845567069e45b897c562cb677fc872b2
+DIST inotify-sys-0.1.5.crate 6965 BLAKE2B d70124656ce3e6f5ea3f430e8e7100d0691003161234b40542ca86c407ecaac1785f3eca98e9fd2914dababbc3f47a0855c99c9f19245d1f2cd5312739c802af SHA512 dae749f32c533b0c9f99963d97a77dcbfcacf173ec8fd7a02f275804f9925e867b4dfdf6be52c3c3c3de136d64e6e7d6b30a3bf804a01608cf974b0cc2e346da
+DIST io-lifetimes-1.0.11.crate 37346 BLAKE2B 7f278b7378a8569d3552c9b6d4be06d7908e05d77cdb964267f0b621ec4975a42fb6e48fc030a75ad5865681adf32ff747943ac559ab4ad73331a6611a1b10c6 SHA512 30c6e5ce6f5beabe0d7bee4f4522884d1316cf7d9b8d093ba0f952995997be3d0f10e1e77b9c20b7fe2b65429de0d2ec89bb35e939455795205206a3154ed544
+DIST itertools-0.12.0.crate 133620 BLAKE2B 73c09adab9b9a621b556d0e9ca0deb9967f25f5f7cd082a65208ada2639e8154704d1df4be06505c8a6697c51b438781ce9921f70ae826a80597d5a682b99c99 SHA512 8f4c1239aa185ba21740dfda7a0c7cd47d62430db21724acdd580a8cd62df6c0adbb11fb8ffa691acd5f1b20a143d57dbf7e30d9596c38a07b5a4b3405e31ce0
+DIST itertools-0.12.1.crate 137761 BLAKE2B d7db67feb7418d6a779dc17d8a2f33481114cd81a4d53a10cffe08e13f0d3cf4525a5ef43368fe979d5a3ce230872eaf993f7065885531aeb5a6479351857708 SHA512 0d9c1849dcc0ddf7555b0aeb7e4f2ef3b101cfc6f03310ce1b6072d70ac8c8d3387ef4c726146102012e75171e0b0bf13465704b6edfc02752e349dc6af7cf68
+DIST itoa-1.0.4.crate 10601 BLAKE2B 95545252eaabc3114323a44c8b8ea12a91568d9fc8d26ccb3bdd798ac0e04d9a6a9307927c17558f1284fa5491464cfceba2f0b880d00673449b94c0fb783150 SHA512 a70bb6fbdbcab27fbb5a84041bcbad8e0c8fda58d55ca7ac757f7be5cd373101be40df99e9acd6ae49e637e40de037c6bc59560f96c9adeccb2b2e0bf6531e42
+DIST js-sys-0.3.64.crate 80313 BLAKE2B 7cf5dcb2b9e0b63cb82771c9e98518a4cda70372c5aed07866a07d2aa51274622357e4b5a665499328f5a3c38f7c515303da50421bad4a496fbb658e2132325f SHA512 a4f389a4eb45c2122e7bcf365dccdce8fcf14b1b521b8b839746bba8783296e2f1b959d73bdd874743f49c61a24c4077dec52f63cc7d594cd42e9cd6ea9c2e64
+DIST keccak-0.1.4.crate 13049 BLAKE2B f788e96ce56e6d88bfc892db0f71c652ffdadba766d277e7078deb4dc1aca1588902a27751fb7ccdee9f00f9a91793ffd5d51550efb294a04ad5fe1bc26e3e2a SHA512 0ef3912525c019609f98f32a71672467bb7663b12029b03d55a4a3efc637f5ebeb35b3c63e2783f5e49dc7b00b8f4cf8a421399b0a5f7ea19a697470019f35fe
+DIST kqueue-1.0.7.crate 12554 BLAKE2B 2302bb9a6aae077c1b69e4892614e87fd86187fc4608cea08cd510a46ddc3a06b27027bcf6a865550187c983f3f80a9c7dcd6d8a6ca891e2cb6fb2d1a5d17396 SHA512 03a1eac44bab42b683312c7f541fc235ead3ec89e7e0b6991acff431f85086df9dd8a9ee1b80f784c9c5452d3e497170b734883ed0fd117ef033079d72f6c1c1
+DIST kqueue-sys-1.0.3.crate 6673 BLAKE2B 79254d667b4cf1fa556f1773db23b00ac431bdea6c8ecf914e3c0837fe4e25a45c9b6fb76259d628e4c76a20f749df3fc285b54ea63ce3b52d21529358e81c3f SHA512 76023295abaa4415c1d7b37c844432ece522b762f78983cdf58106f65ca553ee96193bd8c93f3fd0af029d266d8414f2ba4d1b8835bcdc180acc7defa6269731
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST lazycell-1.3.0.crate 12502 BLAKE2B dca2d3f46823a52dcf87b7d6103fc4f1f83bc5247ce361946ac2d9df239fb43ce4b418104503698dff0242480cd014996e77da4ae0a88f3cedbce4eb9d3c9ef8 SHA512 f9d627afc28b61e9687a3f72260eb013401fd64057647641ff2e763770d7380ab1d2d8cbb4a3c8818d53d504c618a3b46aaf701f72f4d7b25d226042824c2f8d
+DIST libc-0.2.152.crate 740278 BLAKE2B 8eecde477063207d77b6894d6f9194c8dd10e55b69585e3d66296eaa0b9d3f6e2d033e667207182bf4c3cf31f6d38820c9187b2006f4b5ebee898adafb4b2751 SHA512 1722f6f52077efab90026aae3d10306f8c38ebba95366593c3c1adf707fae121ab450064ad9e8be5a667caf6af0b90fad4d1ca1009db0f2220093c44e33c4b5c
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST libloading-0.7.4.crate 27580 BLAKE2B 491faef2659270b10bb88ac46e0453f747f35e78d7f28b7d6d9151177b4c7a7aec0a1efdf702eda0988c31e9dafff2990eba4e6a9b0b695c535ea9086ccf36e7 SHA512 34439d9eca68bac8fcbe2bc94a70e07550e7e95d713ab74ed60ba6736ec807fd9c9135c178d436fbeb39afb074b2a9b05775d953340845c088f5f8712f5f56a1
+DIST libm-0.2.7.crate 115688 BLAKE2B e180347d10847c40a88e43d321e08561df053e6fea0cea2cac480c4162c2f31d8697b4572a384edae323d43781d3c6462b2d77220dd71b2fd0da3a2757487db1 SHA512 b7adbf657be812451fc50cd5e5f92b7a71d43b4e48761bd2738d65498c9abad851f8e86d3be06ae75cf39c7798c23cafe767bc5fd40f596774e858f69fcb46d9
+DIST linux-raw-sys-0.3.8.crate 1013776 BLAKE2B 375b29d2cc700e95d94ea8dc304cb711562952742f65c9664e33560a3da862aba74f2ad2ee66b1dface8cd5371ea9cbbc452ea953a6b6c656ade7d938b7d2ff2 SHA512 cb0e5c54870dacfa513ad05f7a84e9e90dc1a42f55685fe3e252fd25cffa4b875f1b65eaf4ad132ef0a19e6677c7763b360d71ff0060fe6ce5198f38b9956375
+DIST linux-raw-sys-0.4.12.crate 1465800 BLAKE2B 2f70a344c427093fd55732b68239f771cf6563edfe2db4b2f50cdbc904dfc7565b30bf06454b91482eaeea787b9cd4214979665bfa32f3c1c586551333cf4d2e SHA512 d9564d02d5f41356478066592e438629adb3275df0e5a1a44030cc99bf8856b8af64f18f27371f84122a828b34712aae16495a1a16050fbdbece6d95e9cdace9
+DIST lock_api-0.4.9.crate 25685 BLAKE2B 8adf5c3cccebdf6aff6ec977f230cd2a208b0b188ef57deacbbc6019431f0ede1a760b2384ba3cb49c96b8a589dc56c0f46a6359b3e62277e7ae1a1c3f586fa3 SHA512 9215381d9bb6b80d217c73a900db43df043b3e939b5bd7a292a02e9ab911cf0eacd8f883d35bdf72b3a0e78df8f1bc3e843ca4c775294c7a7a03091dc1a74990
+DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST lscolors-0.16.0.crate 23368 BLAKE2B f4c39acda48e5da0489b8a5b169a55bd69f9d4a2e7c264e6f785feb6f50c5b51ce793b5b34a85aca90809644d55999ce5158117e6496936ebf13758b064d59e5 SHA512 3b6f65e5cdad090fb05b278d4f5cc3d3219dcaa5413dcdb20ca4f673842906c09c71fab4dfe23a3669a9a3781af0d08a793e1626900a078e7e776286c676195a
+DIST match_cfg-0.1.0.crate 7153 BLAKE2B d3f40e5b16761fed337ed18dfa9db9e46aa2ad84ca8cfdc7cf7c72bea7cff8d084d95214ce013b3515bbe5b1ad4b8527bfce692569551e4588fe6f396a8a96ee SHA512 fd36f2b128d70a0f278e708bcb3274d90380229f754aed7ce9b808138b0189d5e1a07e0ba732216f788a530cecddcdd980559b3f71efa371d8805a213ff8f2d6
+DIST md-5-0.10.6.crate 16161 BLAKE2B bdd43889aed114cfa97ed0c70bc97b89fda28b14033a0a26bc7309ed744ee907d59151ab92e9cb95f0ff0ca1cfe2af360c48f1b99fc8a246a25c803a4b444a0f SHA512 024a9e14aaf860e748f64dddbb8aec01bb9f40d702d8de31497fde1d66a663e97ca1b06b600d8a818a0c707d1ef02eb0f210befaeacada458acba69ccbf476ca
+DIST memchr-2.7.1.crate 96307 BLAKE2B f1a008fbdbfe84852a8ae1d9d9574306b1bf120dd5087903adbcca6af342c9abbb296496eb9bf6cb58915c4444b3edd6ca4e27131ac7d8aed8849815df87a944 SHA512 5120496faa31fc427c8b4178461a262b3a34d70eddb7ad17a19d6db8b9969c9e113d3625b5e6dc677087fc80907377b00ba0421aba9a92cf73ca2849d932f473
+DIST memmap2-0.9.0.crate 31529 BLAKE2B 555a4160470a4f71ae3f72a8dc1de963b7df89ba83d0a50438a27a6df0d875c4fb1ce6454883b24cce3a8e8ec77b663eace08fd9d531b3c4af7393e71831e0dc SHA512 f46dcb4159fce188bb247a568ca3d86488c379bc18c8c24ce5cac5c34963f9da39af9dc9436c3d741ad364bc3b9d6d6a65b2c724aca3e6caea921127ac807e93
+DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c
+DIST miniz_oxide-0.5.4.crate 53485 BLAKE2B 8836697bdc3707f89fa869e6b09a36ee4d83ce2ae0a53bc7b06bbad70ed7ac25f8f67d841f3f611f6756d891f0eddb0abf7fcaf87570f8ab32220f113583ea6d SHA512 589dac16ca9c2f94e6fa92b68bcf51d140f46562cbb3a1b791b75c59feae51da5ec16042604bbd6bcb7d7f0c7f75e98ea1af8cf42d177133a5eaa86429cf3114
+DIST mio-0.8.10.crate 102345 BLAKE2B 82bba95cfbb51a02efda75dc85d973825f038f7d23e7fd0a93a60293fbafd304ae064f395a1aeb63a1bc7bc664a0c0dfa3721ac8a553ea5161c0ab2862a6edcb SHA512 680371f7da07824fcdc1e8c10a6771a71b97308c47bb5b295e0338fbcb56e211dfd91e1b400a080984c57055f08db24ca675c167f298a3dd4842a185bde62fb2
+DIST mio-0.8.11.crate 102983 BLAKE2B 913a8e0e4843b3b19cce3eeaaff0a0024eaf1bdb4784a710e54ee95b6631edbd763e37669ec7d269e45157907663dd2eb6c9279db850fa47ef4c1eee867ea24a SHA512 9a2806ea78b0637d0cf92448abcd50bc5d09bd80da0f37752c847bc98d014baae7a5cc4d929de98be6283c76d82ccab1f1467aa6ab583a4e782d97d5592b0bb1
+DIST nix-0.27.1.crate 286494 BLAKE2B 63fbe347360ad4b7a86f30bf2f1b27ff1ec581145a90c34160f4d143e9c297a34a2ee72e9de3a48bd3418657fbc9bafd09b704ec15a42b16b3a4187d5304ce77 SHA512 7b35a0f87427eb1b5e1480d7daedafea4609b7f3a4fcf48ca99bdbc2f150865996539f2c51c7ae6a6a13169614681fc838efb306994b020d44b45735a7380010
+DIST nix-0.28.0.crate 311086 BLAKE2B a07023566f04896fdb3ef8b2a1ae8dd64adaa5eb48217c58588e1b41733642e03e0637350c0ee83ac47e663c02b24d5668be751f8d199aa773de6df8b2213894 SHA512 73c0c94b360f4fc81ff07a13692b2a5b5ceda3a7203bdf1e526facabd36cdf160f0ae8fa479e31a4e4237c09bde11e9bf821aa496311cac8614f9c5626f8d69a
+DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad
+DIST notify-6.0.1.crate 36446 BLAKE2B 791dd96c28bb22e7ae457accd0b2c44e60e8fd4d1e71f0a006c45db7465f535d98ac18e0d7a9bfc2d301305a713bd1e282cdad8812a7fef69e47e3acf819baa2 SHA512 114abeb67356c90f3528f74e87f28af384b0db263d8d803043b8122b6689bee80d7a378c6ffe292a962d082665d288bee5a9e8a50a6af806d8d641dad3765c1f
+DIST nu-ansi-term-0.49.0.crate 28211 BLAKE2B 057f2d9a3b6fa773e5b8b7b33eb0bd588db3310f01354701832716d77dd6c49ae17f69728582cdf84e8387f7c57b9eb05cc97ee6e14541878f12fb50f93855cc SHA512 8168f44f3574e56fe70ecbc67255556bb92215d3520d1cfca7be918b3d7d54be7aa0d82359f1044eaf66f11ee85fab1f9ccf32b13cdc39139c2facc78b2d8e71
+DIST num-bigint-0.4.4.crate 99369 BLAKE2B 09a44754e3a3d4f949b3714d96ddd7f3915164d611036675e3df421d6c0863e368eb0180978a4ec27fbfff529b4999d2593e411903516670c24c08fbed6a79de SHA512 0dcef3344a933509fdfe87d6adb0bb1bf67af3c692ccaeec5663a8f18ad0a251199ef9c7a24c25b95d1b255b413947e70f0a205669d549b13e54b6f4864ab3b5
+DIST num-integer-0.1.45.crate 22529 BLAKE2B 4da3e801f71ba8f92c692497e200bfc8d32183c94eaad91260683b09f4697c03175fec7cff5a9ff3782d5db5d514d74f22f7a61a102c0f0d2e67a7a4b4f29222 SHA512 731bdc09c3af7f9d8b171041f2957aa60facef93b06886000d8ba60d410aabbbee358d700bf31b2588b2e077464f290f24a0b712df7bb7f12972675b6c9bd735
+DIST num-traits-0.2.17.crate 50190 BLAKE2B a549ef00c749dc7f276c4817477d1f9dab70cba01b6a3afa5743f16f16353bc50d992d7446a54859cf750a410d66c8cd3440708a6b91fd89d3b8889f8fff1668 SHA512 4d47d3e2f5a31019e038e609897cb0cef1ba061b35cee7e2a02e65179dcdd4960bd5b9bc759b5c013d699b3fbd9b014940a15e36658f7d4fd12cb0c7841c5b4e
+DIST num-traits-0.2.18.crate 51930 BLAKE2B 6c40e155d7a52267a7183d8030ef34245492d33f103cc24551b10da3eaa18e3db485062ff87057dc23e6b55e381e5c5d2a2633aaf6f4763c06677a0a0c524f02 SHA512 e395ad9f3b21b0dd1d3a94cefe0d68a42d1b1d429ddb2823696f9cd75042568a635d93d133ddb9497ed357e5b3be5caddb8e4a4af87b65882bbdc60b05c74ebc
+DIST num_threads-0.1.6.crate 7334 BLAKE2B 416efdf395b0299b6b01e1508823afdda08cf67ca54e1d644fc5accbb0490945a492a34bc5ba70c3e838e6405d17ddce164ef87468bd9da27097de8994ad9577 SHA512 b2d9897e29e59353379b6372a629fc7f9afc89f777b4410eaeac7b4729527948a8dbecb175f056899f9076693ef855cc0d40e725cc54f28af588fbac5f7ce3b6
+DIST number_prefix-0.4.0.crate 6922 BLAKE2B 81bd3b588c788e6865104e5ce87119b5e0c5a526042963d52cd582ff23c2f8c9f32b4c445ef0397fc402b6d047e031d8e2c67ac97e191bde22e17662eec3a554 SHA512 a43b668d7314218b86ca7451daa9dfef71f6c9f6616bc34c12d94ae6030f182bcca9da83905cb46f3d49d0aa81385a787e92e4f3ae239658067adc249f8174df
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST onig-6.4.0.crate 32616 BLAKE2B eca949c47870f260310c69302c6a0a60b9329f7324281433170b0f6fde80f91d49267307825652830217cf44b6a77a741f526a3bca63a12fd8f28791c14a0d5c SHA512 5d388d35eaeb4ba4876b5a683010e4e38c7c54abaf15c900681a7c9ed199b6b7ff414aa1d6246153546680eab28505cfda359c3d5df5b9fd3a5cdbfba35953bf
+DIST onig_sys-69.8.1.crate 638216 BLAKE2B 08d5f61f4047cfc841ee9e1881deeee49478bdead87483595e9c81c722e475d137b8cf5e1caad2965ea411d3211738a6848896128b5fa1f727a0a175ac217d05 SHA512 26a7dec69abe1535d575e7db63448abd898d363ef42352605e7b7d046b5abac5733e3cc05b7d442ce67db9366dc96d4a7a82a7f486d3b9af6d298b49b0baa864
+DIST ordered-multimap-0.6.0.crate 23158 BLAKE2B c345ed6b935fd4d145fe88bad2e0d5ec5d73dccc242a8d5eb7f8caa01eadea71f1470a25b17642475d9e4cba1e4abce79ad3b1c1d6b3f05cb793e286e0d146a8 SHA512 94d0202efe1d4b6ead1804b893e303e6688893d78cea0899346f3aa2790c9296239f3408364f9d499c2ac7a981a908bc80b45d6245ac985787649055f87cc2e0
+DIST os_display-0.1.3.crate 16800 BLAKE2B 2d3a46bee2aade195bad0080178cfba0c5a5eb178211bceebc6e3c894ba1644667fb1713a6df9b0dbc2e34810bc6c9140641f4f2dad784845e7d1ad38a74b4a9 SHA512 2a413edc3237743a3dbca9645a8f813992ebbd57a9e7b1209a121d6914756bc0ddd4f3e11a1a5e55fb861f44deed4462a1e52dfe96e9f2f1d612c18b1062a165
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST parse_datetime-0.5.0.crate 9954 BLAKE2B 85173816f8c46cdf34321dafceaf22c8fee2606220a1ccea0915c850959754b817a470b1d8b6f320ecc0e1226a25dedb5b88e31d54fd623dbb561851319a2a54 SHA512 7392690503e0e3b24ac28525e478a3e02f7a99421d5b477ad34565b1c63a3fe974b5703e398831c9c33b8f02c0ddc8ff0b43f9e7e2848b4d7dcb31d9d9f9d3dd
+DIST peeking_take_while-0.1.2.crate 6697 BLAKE2B 31571604d00872900abcb677a483da93654de523bbdb0331c326dc9a3e531f246e571bebcb983e79dc46e33ed6dd32b978be509841ec0d9f1e7209c06289c22a SHA512 7bf8721987c3e2e1986683dd897746592a909382f02b840b777effec7d8b0a864c1a83b03c73d555e359f22c423168a54b75448a7e7b996b739527ce8c88b721
+DIST phf-0.11.2.crate 21569 BLAKE2B c809201298f1c5046874b3bbdd30e33f2bee2e4b977152a2c5faa91019ee5a1c8fe1d42cf91f6d0b0dd52015fc66f0a84c1b3ae014291ad7d5ba647a78debded SHA512 97752bfb44f3d1f9347b4ccfb6fa2fb80b3263d6f67aa703c52ae90d693c537a0db878acef828c79bd4c41e8f7ca0ea45588dee073d12c9bb0f2980c511b65b4
+DIST phf_codegen-0.11.2.crate 12977 BLAKE2B 5ceceead850a45fb0f6ad706ca26e79267bba0ffc0870b8a31ee8a586b37dc421d31e5af3453d62eb85efada260a2eb9ceb12d2f76434dcbaaee2f71cd43d38d SHA512 0a11be13927f6d4303a2f10bc3a0c986dfcc4bc91c9e885e8912d077e434098f75ff4ed9633085ccfbeb052d573721750fb80c7a19ee1e75fc09660aac2a6c5d
+DIST phf_generator-0.11.1.crate 11075 BLAKE2B fc8fb9d06ea933ddabef555b01be6d72c108cc5f493981b87ba2d926259a6311f5407eee441377ed0e76d041a792858ec39a19d269677b49f285b60c34f441c5 SHA512 0b6eec4edc5376c30dfde8c7fe4da5905412b944dd56c085e90198c9d716b40aa9928a8d08cd1a7a4c6ca26c83d318fadc61fbb5cddfa239aae07a6c831c5e50
+DIST phf_shared-0.11.2.crate 14284 BLAKE2B 3c3bbd24de77b032d194d0b0679a84a4e2848d41ceea5552f73e51e3ebddd5e61188393f126f668689dccbbfa92a8accd9c09a77de39eeaf72b8993dae280dcf SHA512 f2cf9e8ceabde75bb7548e5a47dece9a8fb7eea4a6c5568675e7bd735860c3e51181d749a26cd3dcad1476ec22d524ccb77a956dd267cd0f2b7dfb81db9abcbe
+DIST pin-project-lite-0.2.9.crate 27713 BLAKE2B d6985b5add432fb6287d1b0c9fb0cc91a195f82c5a748a9ea430e4ba884717ec7b16d730b5ea62de5b2bfead1771da2d115b3776e12e605f70f2538f374a28fa SHA512 cef0b77233adca712db1183f780732ea577cf1b27c2643de221d54c837c75ce749f907e24a967be7474812c7682cba613a3fc5d553a9578a1b80569da0e562e4
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.26.crate 18662 BLAKE2B 2ad92dfdc8ac0414b12a61dd30ea4ac5f142bbb55d0555ecfa3a53e750367e1b11766a693ef11f8cbe5a2ddb978327632458b2bcf75be7aa8f973262033349ee SHA512 509c4d1494cccc20de6a62d9d037c63ff77ebee8d907747c57ba0926d177b08fcac0231ccdda14511b453deb0b76ddd10f8fbdf63ff94257d72a12a889546435
+DIST platform-info-2.0.2.crate 28443 BLAKE2B f6389f76c04954189a6ee38eca506659b7597b99ccf6c4eda8b9325318de52b40447ed5474062002afc7fdd8411c8a56b9e4a0b03843ed47d54ca9b37e96227c SHA512 06f36f3091baaa502d33322e5e77d4871781144ed4ca33a3097c9611cf78e2e91852b8be59b1869e2e441ba0f8a076d4f25bdab7235e3324247d1b5bf49967da
+DIST portable-atomic-0.3.15.crate 75147 BLAKE2B 8620d9ac726052780c890e95d590a6cd674727c2a571729bd455a737dd8789367455826effe848156fcaa599b06a7437c46d1fb1d6d5126c4a46b28d417481a6 SHA512 0069cc1f6dae4d1767b3d86ed570b35ca67b11c68839088f604a9c05b2e5a06f074d7ea0ab424bf6bf5b1e15a52843d9c9593b6cf18a23e4eea3afefbc40ba60
+DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
+DIST pretty_assertions-1.4.0.crate 78846 BLAKE2B 68583c49f81ab0cf5b90f6de10ef3aae9b525288fec25f9d006f2eed0877c0fa742dad5f878fc78233b54c0cd32dda7ac1f7161bfb475288d8858e8e40aa9e1f SHA512 f76d38c787e91b3739272e3bebeb9763d312b85a43cda5e1311ba8d6b0e4da1ef25bd66208e772b1cf56a34553ee560482b5ad19c5290608b2aaf9c0d0f0e995
+DIST proc-macro2-1.0.63.crate 44867 BLAKE2B 54fc0f4f4e328c78609f5c0e26a8e6b1e5f1ad989d68e63d21e094bc20e1be6950d5df98ffb601c89bd3d137f6c05a3d1de74070e493002e793bf159b96f29de SHA512 3855011d0d42e8fe591e7552d224b692d79b194c4452fe9d8f92ed85e5437c0a3524a38e66301412be482cfcfbd468b071a03cf584a1618284dfcdcac9713102
+DIST procfs-0.16.0.crate 60581 BLAKE2B 0df34ca82fe08930d123d7487394dd31a233addcc5ea540952b246b0b036f110242f757a3211e2010fa1e5fba4c53f253ad8d5dbb565491fe502f5d2332d6122 SHA512 bcc08d05a536f34272a0beae3e0fa55360de1aab6942d3b20e95a577bcaa4def8f5ecc96e9432871efb13a8d298b2b0fe61c7188c9d2ee5deed2544371aab707
+DIST procfs-core-0.16.0.crate 68279 BLAKE2B 257abf95553979dcd0b0e9f86bde831382486ddd13691c59f1d0bc36f9c604ef0ecb06461ee7530a2d455181bf588add9fef8022ceea3fa3f939159001a2690d SHA512 aa21eb08ff57b7e86dd4073837bf408ed6e89e46add614c7faa04882d131241c0b01d0267de39aa86f85ba9e60a326de48c7959d878a6b75058cb7d82a31175a
+DIST quick-error-2.0.1.crate 14265 BLAKE2B 3815c89e960923bfe0abc962c38714b953fa1d5af991f3de22d1d084a8cd1ba1761fc961ba97e06ead3992ed1b61f525d04bcce459599e5546315932281c1dfd SHA512 e028deb598466ae91663e5d090606be4f117662d0fa6e0c0b0043c7261f26787057e84e644cae72a45b1a0a7b1fb03fc9712faa3abee94b97ce2c8d25c365c32
+DIST quickcheck-1.0.3.crate 28069 BLAKE2B 5f0ddc8e22fec55e879745a95024abaa03d7bcfc6453286eec072663b36a5d6ae247b3c1622c4743e1ca9b7c4bb21da0d095aa5247f32b0bedc393f92cda6bc0 SHA512 07dd707c9d3fd0b9cedbba545bc8b4fc1ca2770d169e444f8c96f8306d3161a6a3e9189cc5d0d6b3dc4221f7dbc05887dfe2dedc914f88d5e69ab2b94179185a
+DIST quote-1.0.29.crate 28345 BLAKE2B 3aeb637a4139730348775caab4d48173650d8bdce08247263d741ccc657dfff7f2facff05725bcaa73486818d394c392c64ecbc61bae3f5b612104aec16ff289 SHA512 d686a3943dca059a8e79689c77e6e8f6dbfa9b16a1a7ecdd27099339b77a55334252eaa8b4340e79c35ebb1f6e4deeb3f6356dfd02484f9c724e66a74387e30b
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST rand_pcg-0.3.1.crate 11983 BLAKE2B 87c2a9d0f6fd71076280a0f6447ef2a8c9efb81567c530bc45001ed93a254dbf0d007f4d3d22355cb68dea51e82bbd78761bfb9f139a62983dda39f0432306ed SHA512 6386c23c26fb911c3b20718e31b6a2f395e3cb46b59351cbd58bbc0666f1d42c2092638360162079387e0d61f7591d01271cb50212b91db6df78a76bae239dc4
+DIST rayon-1.8.0.crate 170172 BLAKE2B e2df52c64435926a13f4f275c4f25a9694316aeb02b73856c600a1a813686ceb20828676d8272393d1aec18eac4f05bfcdc5ef02ff1e19245c547c0313a2a03c SHA512 ab1cef238530d81c255b6631ecfed9cc4f3f8d7cb6a74701d29c1dcb022cc5b859db1d246cf8247d47702fdadcedfe64a6749e24cf6c7258e8c9411af7e4524a
+DIST rayon-1.9.0.crate 177770 BLAKE2B 34e20aeb82a548bd80b8ab3faf8fd870201ba3d67f9618e5493332a3c43bcf1443c027b8ccc76cec8df6bff852434531a01c8490f829f57df5cfbc3d8a6e8a42 SHA512 c9763503fb135eefdebebb82d4d19d20e48a182f1125030a7df085ebda4184942d9057598194ab8e8d39b942c83c231834b10a677e89badb6305a2b571fc1abc
+DIST rayon-core-1.12.0.crate 70081 BLAKE2B ef1bb1d430776b0ad49aa523cfe83bb0aa3a381b2e571db74cb8de04bbff884b8c269de31d7afbfd609118c445bf079afd2d4920842c8a8b312d329e4675cfc0 SHA512 588fa479c499e1620e25c5818996f0376d3bf526272af6c50a17ca0ccf0f8f67b03a3a665938575a86a8edc1f101a37ab01133b27f904eb5c291bbfc581135b2
+DIST rayon-core-1.12.1.crate 70701 BLAKE2B a32eb9ae9a71b4f0881f7bfd5375aa7db5681f20f7e0b25e6ecb3161f2aad36b93026c1691d02bf298a48ea07ec9475a237fba457ed0b0b8624aebab2b4988df SHA512 33d0297b682f131c50e1eabc3be583211a5abe790301cbca91bf510e43d6714b7564ca39fab7c4bf6f02aa0df6bb394f386a61320f21ddb6bd7aea1372b5e99e
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST redox_syscall-0.5.0.crate 22262 BLAKE2B a18a5a00c3d77d508e46139489effe2f405928ac8e79bd5991dd88b57697e652798695b8cadd7ccaa4da594b1b84f234254ea30092cbd26703210494621d7880 SHA512 e51efa2947446ac641d9764a132e4cc29220eb32cd772ffe432911306c33a5e00d4da5807b553cf9bdb36f8d77ca989798ee4592fb1a792d761345b07172a1ea
+DIST reference-counted-singleton-0.1.2.crate 6161 BLAKE2B c90d3adc74efdf38c063a7d0a180539ba48f9c70bc96542e6a1fa2f6501f4ebfaf8afc340528b3fcbff45f2a0af0c5879111adf270c4d3102ed9b53dc6d83ce8 SHA512 bafd0bea76a131b21f183f597c7ce71a6d15e76ead76ade929225b4930b2345326ddfccdffa1ac6456627ba50eaaa02bcc364865207f574baea89b4e0c709ea9
+DIST regex-1.10.3.crate 253101 BLAKE2B 390ebb00bf5430048412883b672d80737e783fd36f40895343cb38ef2e26e2713418c2fb4d66792bfd3be4c990b4518ba120de229a72cbeb7fd5c2af325fbcaf SHA512 d090898465013b0975a6de87fbdcdf76b4896578056f4da83424bd5e7832547a3d8ace643c379c4f14700a0a88dc95950a38645508d1675306c377879a90cf5d
+DIST regex-1.10.4.crate 253191 BLAKE2B 08bdb925efbea1ee9f885a89ec6b4692e39d7b17039f788e5b3c1dbfb7847d4f53b67f0c61e4085af7ef4901e67e33ea94948668bf706fef19b4102a06ef0447 SHA512 88ef121a51759f418d5dc01607a6e02651bd00343dae92962c02a80f30343d3f079a0375457780ce46bf205ca38f279b03989154638199fe2fcede10554bf21b
+DIST regex-automata-0.4.4.crate 617294 BLAKE2B 68f29fae9479a82dbecf8091250b65486c19af2e5c37c1b2df5d12906bac8aaa4d1e577dc0437a2eb46174a9580410e51a2c53ab265dd8af14e0c758888e92ac SHA512 9705f7949b270003c095f1787a3936ab7d4b0dc9f050ee046ef4e96f4f4630ac56cf0dabb0ac3b9120c462aca6344ca60636cb95e0c0d537ace506159c02b15a
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST relative-path-1.8.0.crate 24865 BLAKE2B 323d6651eb82f52fc75f237fd45d613dbe122045a4b30dc8dbebca4e299465d99c7994a0602c4c039f22060766a135680ce232cc542f065c4b5aab1777c3620a SHA512 80079cf06d0f908822a0c63c5c2f29826f3b458c56036b300f00f94e090f391013144419b8d0147c7269639c109363775e2d286c207b159f68fe63650d32633b
+DIST rlimit-0.10.1.crate 18802 BLAKE2B 8d77c8ab81bf9d37fdf0fa45ca692897b191cddc879c8724fe91350140547953e773d6aafcdbfc83b4865688345a207db54769b034ea76066a667e15a8a2e41c SHA512 d48292f47dc671ea28e2620897601c20f7207b9eeff9ad5ca7aee1681b3708ac23b82ab2c8c88058ffd9e2b2e1ec0e588a3f219c2bd30871137feadb435506ec
+DIST roff-0.2.1.crate 10605 BLAKE2B 34d66bc4f4eb828523c464cd75632171277f6b1901916f2337013f8daf39915e1b7ee9154e18413145c9ae103917e0f34c2b6261ba16b3e969a2cd078a372c61 SHA512 001cbc21c5c8ca4362f91fb237b867966653e6f49fa20be1a6c3d3e8d9f2cca66c474eb0b59ecff1527c771554e8503cef94181295dcb007fbc1a50dab49ce0f
+DIST rstest-0.18.2.crate 28868 BLAKE2B 44368c85da79308277d9cad96659520ecdddd767e55acc5a4f35e246af64a29112867c4ed40bded5dc0f9d3230d828f6ca98a73adbc1067b60a9119b3cbdf369 SHA512 b73b902c761717acf5848adf888c27e5c58fe304f235e91e1e543cdcfb4e678472b8fe9930cb559be525c0f1a037bdfb2d77b7a0632b021d51976b85288f459a
+DIST rstest_macros-0.18.2.crate 57534 BLAKE2B d06bb6453eefa572cd784e38ecf9361873a5f3ddd5dc4926728183bc303e28a304030d45304bb287019b42337d78f294d9ae350d4204fee027b68c264272d86a SHA512 614944fbd51de32b5e7ec1b485c12cd68ed9fae6ef296f9a9811de2495bc27887fa5ff8695c619255ac18da5af2b6ef8a557753d96b4c1ec3d711a9036bc7392
+DIST rust-ini-0.19.0.crate 18328 BLAKE2B 63d72949f2aec01f73670d9c531093c5faca0c9f3778c2243c7f8a5d180b7bbcb60c269be1413df774842cf73c69d26333dd26bfecdd6813aded5d04d6bb4db1 SHA512 55101f890bb536670c524fe343ce17faa145c583e3f30485695693a9f0fc47f9769b68318c163700c7b00663a34e2b18a62637ed590d3fe5c5d23d467bdd7fa5
+DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
+DIST rustc_version-0.4.0.crate 12175 BLAKE2B 6fda2ce03eab45d7193fa0d70175cc7ffb56b7be85fb1314092bdcfd3948ea145420569ace3a47218a4a2a6e44a818862cea6dd8cfb945475496f63b591c29da SHA512 f66da7c6efe431db06cd01180d84ba67fcd38f8cd6ef693762957c00ccc2211f23c08079d7f184776e08f28d2d6ca3bdb5f5016f7de245c6193d4722891ba1db
+DIST rustix-0.37.26.crate 324663 BLAKE2B 49876bd8bb34da5d03ffff3c0635b78c985d6d5360f783a902a7b3c878a7dd25d10d72f8990d23adcbed9e60bfe60279c527562edf17e37ec9e95219dabd45d7 SHA512 ac9266a30274ce399d3856f0363ff55708ab5cbc817b6a1da31a2c14d14de3e00af4aff49adf1a9ddf3dbe2d6b6c8d667e6c9c5291e3cd3dc40020f73f3016b7
+DIST rustix-0.38.30.crate 374744 BLAKE2B 63ad9fe2e131259a008abdf7a19735d2e2401e62cceae7b449ec7cb6025e82f8d275c24caba5c23c19d9c37de9b3b9263e96db3eea6bba569eb6146f5b3dd62f SHA512 6ffcdc274f97e7dad9fb0a23fe948ec4041fff6ce915204fb46adc31b55646a5fd0ff3d8d6483673da2cc55044ba53af4d6e48ebeb8622e7ac027a5d390231de
+DIST rustix-0.38.31.crate 375443 BLAKE2B 9e8ba6bb4eb4fdf0bacfbc719124f745f383abbabfeb161bff9908d1948942d358f46191377b90c180a2793a88bb01be20dab556cfabc8da8efa2533af8e460b SHA512 593e0395a7bc5bba949e6f2a5ed9e39ae13140970a598def32ab7d6d91b4ec100752fb05abda407ee2e5e420d950b19e607f963f3974213637423c751df75960
+DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST self_cell-1.0.3.crate 15147 BLAKE2B 9b53b0568dc4ce0c7372565eef14e593aa25e262d7501da6e4b8cd7807f5385977f9bd3563ed39a6fd4e07c824847d0c09a2a750024a800229c7a57ce5e8e325 SHA512 89a990f8a59cdbb99930ebbf9bb6566b77f03f1f551e49b207c865e7205541fd9f0342d284aca5f3d054a24520fd438b6c53baf48c43fa28dfbe8d79fe8c7e00
+DIST selinux-0.4.0.crate 36519 BLAKE2B a10f9d651f79b43edad40cf50f5ca806d6b892885a9a6f79b0b098f8507869345aa4244a05427bfa296ad0c2d31d5cfb47fcbbddb5d19a8649f019fc9a59450a SHA512 a8f31aa747848ce9109d3817e2e1701eb5fb9ceb0a15b92e5f84183a0b897d88c8b928ac152a164719a8a0ce5c844a39e530e2f8a5ad1dccbbfe74b18ee203d7
+DIST selinux-sys-0.6.2.crate 8324 BLAKE2B 19f04e215b41fd9af546d96b480385f417de111f3cedbf1b8b9b1ff632bf335a18f13488c13db8651723eaa26ad8f64bc55e614e188bd49043051d7fd5813c60 SHA512 c1ac433ed4777b5164f3f37dbeff36d1e867fce65e5d117a8a5b036d7a947c44b3e7ee59ee08ee74ccc14370d2f07d301101a282fc70dd6dc5c1c9e12f419975
+DIST semver-1.0.14.crate 29813 BLAKE2B a080f0a65127142a90bf033452241ffebfc7098b56a6a6b8bd818528df3b88fb48b3982125b405c1601e1bd55f3a0fdb4ffd9653e398295d8156651a04b2e903 SHA512 04db4c0a30141c2767d24d6d715b66ecd6355c1c88e572d4c473e0fa8c1fdd7197092b8286c973f25d201c5fcdc9105ba3e28c11ba1546a666167afc1fdf6728
+DIST serde-1.0.147.crate 76697 BLAKE2B 90fb2df19ad225c96a30cf88dea82a5785bb110f256b882cadef8d1e09f91dd610637a104c2e7629847a14d4a422f89f7ae324c29845788aefb0a6bb51503886 SHA512 d993bd86c61bba602faf7286ff21d36c5d8c83176c5bbb203cb284a3f89dbc8a1ca893a09eb2657f9e98ccb5c5287f44aac06d2e60db96e78d99ee40bd1fe1b0
+DIST serde-1.0.193.crate 76863 BLAKE2B 163097e85b5542451896d7381607aa297e3b0342a2641887a01689b13122c6c1ca566fcb7f32f51bb0ecc861aed014f1467edfe21338223d5361555f870425a3 SHA512 82259ca302f42116ecffca3c88bc1212785ce5430f9d29390a9041d4e5943c13b13de119fde644a583960102c4b6e850a16f962d36dc76ac69fc2297ed65a506
+DIST serde_derive-1.0.193.crate 55692 BLAKE2B eeb2a2fbcd0daf5fee1bd6a4f584fed330db58cbd786073311d6a94308c63dfc6b7c2dfbc4b8980064ed66509f0127525b79d99aa96ca0134226fe21715999bb SHA512 05efb144aeee293a0e7dc7540106eb8c4920b2d8dfc25771d73afa8ffcba330104643430a6e396ea2adabbed4ccb23591251479b75449b9c8322799f91d38c41
+DIST sha1-0.10.6.crate 13517 BLAKE2B 85ad8dcd237125945f6f9c2d7a48bc9802dfe8398a2bac86ddb96763486092fa18e80a2e69f89cfd6e95599d34d60ced33b26a68cbbe39bf158238a79433584b SHA512 fd37be7e3f1d4b6addd313a36b55215fb70abd21be7831b71de28bd3eb03b7352817d8a7b1a166df002c3a23eadc8224e49edd4a37556c0e5357565305d4128f
+DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785
+DIST sha3-0.10.8.crate 858216 BLAKE2B 0251020db34e0be3f150d342d055bae00c7fe17e2eb1f5134016389e45a4d3ef35ab8e533f58cedd7e10412955c4a011ba8e604e129fc5bd9a433ff756f0ca5e SHA512 390102cea4cbb0de4fa772a0842cf6d13dadde9fd95c5dfa9e75ebf89e98a2b4bb10f05257797e8f688af78ac42d951cb71df71e3b7ec36e52e2661932479c7e
+DIST shlex-1.1.0.crate 5199 BLAKE2B 325536bab9c9707566a099a161e7bc8448c7369cd9d7b2f144ed71543d551038ef1fd764376491e8076ccdcc928b5c4e177764a68584267a91386b8d542264c3 SHA512 e51892298dd79dc7cf04d7e6f0a03e4850a57b15cd75e6e3b56e2a0b15d4cb85ee8afcc14e3727d193c8b91baec8c2864a9c800834ee4d18a1be584f17591752
+DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
+DIST signal-hook-0.3.17.crate 50296 BLAKE2B 5469a11485362b4a76f99c06071c69f6cc083bf4cceea93fce0b43385163ac3621b7a3c98d18ea1fb9e1439460ea37f470a29bfde9dea199e60a12b248be5d25 SHA512 045ac6268e504c5561d3884610a48c930dfd936086f793839f42602e92e4a8cef289955776e8eba8a5ca1a91b5f27ccb3724f49b32091f8f06c8bde984d82298
+DIST signal-hook-mio-0.2.3.crate 9064 BLAKE2B 2bd11d0fad02fab92871e0129fc4ea3a609a43cee5d33737d82a624018eaa90077f2c92fec88f7b19d3ada619b8618f9d33fbd2cf6b7c63d3175dc57fb0341a7 SHA512 98429330c109dacbeca5f0788d993d1ec2830b6f95886a433592b2096508dfef2027d62a99b985654dfcd927f7f3f93fbfc19361f8efaef5efe84cbacfc1ab08
+DIST signal-hook-registry-1.4.0.crate 17912 BLAKE2B c50ade90e580e5f009832d812299b33529e53f68e6f1b7f5f9b5ac9ee0de502825c7bbd66199a65d4494152809eaf3dcfb676152c5b4f66c7a38b33551fcdd30 SHA512 b564379e5df1061739734179a69897badf9e2e6b469e091954428b05c3c7143885396df4bd008d77e08dae53729d2267d50fc8563121b086e25d8a5adabf6d6d
+DIST siphasher-0.3.10.crate 9889 BLAKE2B e5dd6d265340b4c9e4266ab1ff3a20f1fb87fd493b2d7b5fba32d26421cc858b38929e4ab96941d0c055375b8acebbd04236d994cadca324500ed05064b9bfc9 SHA512 f90425a2cccc9575d377bb92a765d34653ddef1ac12b7c63dc6d700aaa74b525787e11609061c2d3e44ea56fe0e4b8f93f7b13f0279b5de2e0f710c5caffd4ce
+DIST slab-0.4.7.crate 16647 BLAKE2B f567cc822e7b84f64a0b0372c22a0463d260871455a33df025808a0476dcbbd4e051a117d8896d96d6d3d0655b7c296cd691ca22edc54486440f4e2e0f5d1e1b SHA512 659a9ca3323fc2cd236f6cb9eb6feeae8a1f5fa046fa239a34cd7a5ab8a7eadb9e5977e8d5cc41e9138900dd7c75ebc0601480771c5fdd2e084ee76619b82521
+DIST sm3-0.4.2.crate 10344 BLAKE2B 72d571c1e6c7bf2f30b2286b4bf5dc63a872b838a1bd6c67dc7fb37539367e4ac8ae2cf49224d243af5b938176300681f80e3fc40e44a65e31310e97b390322a SHA512 b5cbb43af4d5be6d18e9e5bdef151817c89ba6962f37d36b2ff46be704d8d7996a5c48bf629e91ca3648229eae0d1e03f7d9407aaad64a1cf0786dcf6b363c5a
+DIST smallvec-1.13.0.crate 35327 BLAKE2B b1ac305b95d096afe72c2b6c9fde72d70379d36c7444e4f47151d42eb78903e0d99f7007acc08c6b6bff0d61acb14b830a097ed03eed2f765976bdf994911b9c SHA512 2b668a71462ef09de8a441565ebc128d94e76688f5066f03811d82dd9fc3127bae4e6b4c125642a243abf14d17f1560284fb8f38d3777334bf81d37687429c8e
+DIST smallvec-1.13.1.crate 34952 BLAKE2B e0dcf1d26883564cd4f5d20a588562404e193075b1ae011f7f7542009a9466e5df3ade7768e1a8feb8806774b2cee5f15d31779928f83714e7d4b6ed46af9ab9 SHA512 1259ef947400470b8c9e74c5582dbc1a49753aa46420883c1f7d66f320f67bebe733a15a23cd57ba461020fad4ff337a5b298de82754602a78f5e6cec969652d
+DIST smawk-0.3.1.crate 12840 BLAKE2B 937471e3ec3431f174264ce41e7a9c8ac781f5ce3638afe6219173730f5a0d0cec2b482ca72eeee34d5765c75db1707433b2c5b5004cd6d6fa4809f606b26813 SHA512 d6a050e873da5c90de3ff9fd02166de3be4c03931de9cac5307e6c16a71b8db1db6e8309eaa38ad408b20e0cc98eb4133595ad7aea96f62ebdcea579a643b65f
+DIST socket2-0.5.3.crate 52588 BLAKE2B 03692b67f27530670048db0920e26da4d95373a3aaa81ffe840b09e73a5730e2cec4fa43c25e63db0a6164c67d6fe555b0fcf1c9f7ce6a231d2972f5224a4d50 SHA512 63cb78d66b057587e4b3b50b9c618db1a202102c72b52b79c2e9f9a401dc1c28fe4523a0f6483b38ca8a3d24d1e2fca0b7176d96fef6ec1b922ae7c4afacc324
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.23.crate 241166 BLAKE2B de55798634899162388667e4a68a6525904057a480a6bcd741d0bd0f83ba0d0feed3f9a1bd768ca591602ece1e79866a076b6ca218f86b2cf4827d81224d6ad6 SHA512 3f46b2ae62b2e3378024d057130e48b7ae03316ea38ce1d7d4e6dac9337befd84c9eb20518562917643304de43bbd716c34f508a86dbe21081cccb934b4072a0
+DIST syn-2.0.32.crate 242504 BLAKE2B 2c2938c0d711c684c9baf95538e2e76220418646590474b2b654d9242d2818aa7c3e5990208fe231ef64903df17edbbf6cc930e6224c964cad4eae5aeaeae781 SHA512 609f125f8138d17b1185760b1a63f3713079f5214fb56c23012229a56d10ac1c12654466c9ad1ecd6b2aff1126d125abfb0a42bd7f669635e5024b962b0cb0af
+DIST tempfile-3.10.1.crate 33653 BLAKE2B 819b183e7840f70270883ee8b6a91fa09861c3112eaadc65007199885abe099bd593e1cdc4d9ab48c23490a6d484cad9bf0e80cf4e718c369cc2418b72eaf09c SHA512 bac7515b85b0d01ea914b527f0fadd3a4d8e77c9eabe786977d2625d8a3e91decaec502dd15bab4d49a43597fa7cf7660fff4be1b043112d13b542a72443bf39
+DIST tempfile-3.9.0.crate 32182 BLAKE2B 4e802990988aff3ab5173bd96dbd906651a8df46b2619e6a500a3b9e7f4a3cd01dc7ee977791343f7875afdc4793a845000bb363d8c1a6599aeb6b1efcce5d56 SHA512 04e06c966bfa7a1567e7185ebd5c2876b96e46e36af14931bf0eba63795cd20d1c3427b6709a4cab2a68b8d289fdabd5537a50e5407a76e3a9fa0dcc7d3ce6d7
+DIST terminal_size-0.2.6.crate 10585 BLAKE2B 8696b9046c717eec8bf7246346af84a5d0cb740ac6e1335a4d8c20476628f4c0dd7c6106cde33513681466e9701d4b05d73f22a3bd2dfabc4d22045a69d31345 SHA512 95f38bc00f8c5e1a6913bb2a0a7c46d96e02a4f3234af1623ad3d7be41eae677e77f1b5d5d005d1e9d778fcc6c87196f67a51ab37caab5b4d299da79c85d06ed
+DIST terminal_size-0.3.0.crate 10096 BLAKE2B 097ef50a85945128dcfa36d8ea0fb15f11142c206462a32980dbbba4fe2872abd214823fe3c75e804f3159a97d6e929ec338860e9c89587da509fb9e6da5d339 SHA512 f3bc9144aa8a87556543584a2495df6267ce3bb017f3ed3d00fa43e89b5de783e1285ca62dbad9dd9c3b37e3a476a6f3ab0804eba2411cb594a569bbdb310681
+DIST textwrap-0.16.0.crate 53722 BLAKE2B 44140aa2dfd5076005749449a56e920418e71e34cb92f1d697eb3f3e7f6fe87b0a3861c8a4050a4a62e03187b6cadc4495e4200bee52ee183541431c73e47209 SHA512 97ae8acece5663e1a6b08b827179e96d5ad0ee67d635888cc3d83454b52cf48fce97eb0eba374ba4747834099c74f43d66d9fec868e84be45369a42c1aaec2c3
+DIST textwrap-0.16.1.crate 56012 BLAKE2B 9b5a7c76eca64d089f4fab7095f2d35624527ca223e53b03cc807c6bfe913a99b55197b973a3102e3e5c4055bcd6ab580a0c9d67657180b61435bd6eb7631211 SHA512 3a8d2036c8e4b88866d68b8066a2991756f6bd4ac5c726e63fdffbc894fbdc03bf8b6e0ece4b96684c8e1facb6413190768d51a8539094efe47977c120d31f1b
+DIST thiserror-1.0.37.crate 18752 BLAKE2B b8d792715cfdffccba72af132e414a6ef28f8e4dfc0608bea49bda1bde5b6acb13da24feaabf4467b8aeace9b6d90a97e2202f7d24bfb753cc4019c2243bda25 SHA512 07f0cf9da1bf1029d70c1b6f0c54bc41ed759214683f35cf6b321ec2d69173e3da0abf80a692115a1e4630400b1fbf462878053853fdc6026edb40f7e13be72e
+DIST thiserror-impl-1.0.37.crate 15428 BLAKE2B d91e9f058e1a2b722f604d9a399c0f291c5309299c4bc103427f8927ba41c9937c7e7cd4c0f394dfb9d96799be8a3d5b33f8e869045f58228a43354dead5117b SHA512 37d90875118fe45b51afa89dd0acfbe4d9852b899ad391b419b5181a92bda115cf5569ffef57caf6020964d5d847c2b1f191c99e2c0caf7d4166f531bd19f952
+DIST time-0.3.20.crate 111856 BLAKE2B d4fd3d3f9fb164b26317fa26788014419902147c7f17816a09565590245acf72019fb57e88d4f4ad4a399c5dc92247af9e915fc5d2168710f81673ed609a055d SHA512 689099bcd5cfea6b92d88584d92e7c15163f427f621c653026e3b3f8066a3932836de3f8be9716a41b77f1d36a9fa6c3e2a42ab011d21ca38efeb55522a39145
+DIST time-core-0.1.0.crate 6597 BLAKE2B 43137c5cbeb61a89c1cbbef325f2e2dc4b907d4c576553b202d178a64d46396958745b00c9f2aa60a6eb609d663e48b1f9bd1f7ebe58ff6e22540e96b2b1c7f2 SHA512 f7e181a40a0052d7aedf78219a46f8876618342c710e819748a87a5bc0728e5b2fc7ba08e38ebfa6a17d6fb60382003bb35745ff1eabac1c8f8b47d186a383db
+DIST time-macros-0.2.8.crate 24295 BLAKE2B 6b54c83b11db8c8490383764a0e6f3a2c3f17c44adab2d19e69dc3fc5b27c5a44bd57bd0e6885c54ae493bd5e2c05a6237f72be93a3a2fbf297c47c02d28c61d SHA512 4e604f926a620b1caeba90bc5de1129f6a6bb4548890d6e31306ac419c7b6d421b548b3887a929da3209fad28cba8d57b989503e52f16af243375d545b5aefde
+DIST tiny-keccak-2.0.2.crate 20129 BLAKE2B 105a2d2af36cc053cd95721ea563108f33b8a3feb2ae84c75a04a65ed5d548dfe35d8b2e48977a82f725c0ebcf914f21157c547f4a74bb4d98c2e894385139be SHA512 c0219f23361eb07e0a68575c461a36b7286d9bdebae89080d9e259178d402b0c7762ccf33e65a16951ea168392322c44a24eb55189cf143e22d09d6dfc4acec1
+DIST typenum-1.15.0.crate 40741 BLAKE2B 5752d80396d0a37b0069b98ace9efe96d94ccaf41b33b8149c8b8c6a767537dbffe64251bbf61f3812465ecbc8cb45544f177dc97ac9735d84454282e4d1ed66 SHA512 a3c1ceac85e1aed98d0829449c35f4f36db860218b955b4e5f8f01da1d27ee6213f3c60e2b25c3745dcd67369049da5de737a9473fa9402db99cf7cddeb42288
+DIST unicode-ident-1.0.5.crate 35455 BLAKE2B 7e14ce97ac53a88ccec015dea690918a673dc5b49e44de7fdcb5421871da35c4f514c6db9a363d6f4bfcf2e9a61a50a593d345d0b6f388ea882b17a00cd0335d SHA512 d355370daac356d900cd4c0a792d6c0eff114524c4bffce4d7e74469fe2117883ee00bf0e27d950b72e88739473f2045d5f83440a0aedfede97b4d9163b64a6c
+DIST unicode-linebreak-0.1.5.crate 15324 BLAKE2B dc560d5b36ed01357c22750feb7f09fd0f57fb0ea543180f6e31c0b71b51df4faaa70ac8482f9cd60e5d1faa5bfd4bebfbfd628dd5913c2c4a858ec04beeca3f SHA512 f37be2f7b04b886e95bb7d0f33bd392b78bb940ef9a01cec487062cf31ec0367306650fad7004df556887a324c714eeb28f697044aad9a429ce07b7b7344af60
+DIST unicode-segmentation-1.10.1.crate 98416 BLAKE2B 4c391ad34c5f8a00096ce89793b15212555f2d8a367f3ae78f26a36c5897b69f3efcd280a1bd3eb3f61c87b8a26061804b1cd56e1c1500cbcd62e8bc74520014 SHA512 e96224bba73fe9a167bbf226bb13fe5bea085765a90f7232cb20b42f3c584242b7291aeba1eb8edbe2ae40e5bee2f4714f434324f79316b22e8437c77a50e86b
+DIST unicode-segmentation-1.11.0.crate 102740 BLAKE2B 6ab5de53073ff56da4924e8c6ecbfa4bbd72a66b8d86f2c32b2f0ccfefee8064997a6b5311af5de2b71943089c9f52862e3cb13cf366cd645f57c96f2ac8673a SHA512 4914543cf022680f341c4a235f6d9204b3ac9a9098f34a80ee8c94e3d8ccbb82e78af016978eda910987533044593ac629a35286dc80707d349b33e405e86bef
+DIST unicode-width-0.1.11.crate 19187 BLAKE2B 6baf7f3b32eb838925e591792abfe11968206d177facefb89ef51daf44c18f3fef1e41c19a47b88b81be50667af626af2024ccc540b240fb6e1d83fdea57076f SHA512 ee06f4144525424327a17578642565f396802f0eea539b3bebc8d9627376a8bc6c5376d83a6ee577068e99fe75815bd765e6d49fb9ab9b253d00594bb15a5ffe
+DIST unicode-xid-0.2.4.crate 15352 BLAKE2B 80c327b39f3b8f2cdb5747cde968cfa1efe7b65b6bee9136adc881fa19f66aa5b1010d9d08de55a61b322d665b5b0cb0395e9ac471f6333c40d8dca5d97e123c SHA512 e67bd1258e1961807d9d5fe583a89ab5b82b2a529ecd32cadfc79aa5331380eb4a2db9fd96b74c8eace47f2f29021587d69bcdbf79f7e2650e92a25f7839d03c
+DIST unindent-0.2.1.crate 7256 BLAKE2B 44fe571c7795c5f4a57581d29bdc793ba804a4d0516aa61ce3f9801c11e99f2342488b93594581fcb6bb1c3113aec1881fed0c8150a061c9690a1a9334e55f07 SHA512 497ad4c6af4aa5b930921988fdcf0da40296ff8659c557f0d6ab562b2208fda4004a6ab98a2acc0b8e58c83f9ad9164e69f5bf2bcef8fb65c5c1bec893f233bc
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST uuid-1.2.2.crate 53669 BLAKE2B ce31d21677cbdaec4d2265ee62896c978e8c38e706579e78efd184248f55a04d775654e0839b3a4ab313ec1269014f95ddbe134192b96c3a370a1c6c881f6d63 SHA512 6036d9e115a99b4359ae52c00bd194639d0e37afb86713cf8cec21ba67c71b89b0b10e3c08d9603f948023b532a75f869bee4d11e6ba8a9ef844f7464b028037
+DIST uuid-1.7.0.crate 42627 BLAKE2B 493f6a3a643d3493a2bd7e0e92a1ccfb7bd722e3a1fc8deb7df0ddc875a822daead1cdd35dc3ac6f26346844100a671318d71e5ad760c9587471d4f05bbb0c69 SHA512 2ea704d082b725d98717d772e1af84fe743929ee32658ebeb111c6fa2395ff5f44558b7e375087617f91c6f7bc242f2db96e80a631071722de6fe15af845e856
+DIST uutils-coreutils-0.0.24.tar.gz 2091716 BLAKE2B a293442a48f014eb140636fa5fc1f05d914f8ec62b239cfaed44290c94204a75fda27845f9c966c373fbc2694d46d18380eab7421e5b2dc276d8d4323677f758 SHA512 da9028effede4e925263244f0fdcfdd13f4d44a4baf2da57df090aad8c3821b880a10dbb74d8e1e2958f324299f63ebdbd1bb068895c000835b1bb12fcccc599
+DIST uutils-coreutils-0.0.25.tar.gz 2287537 BLAKE2B 3c3d5f38ffe5e5b917ae00359eadbc72781fe7156de4216787879a4eb912ff190323ce901bb7bbcaf1ee4707c0b848f881eb5f4fc857570a199f42c94d487166 SHA512 bdf523120aa72f41b1d3e8e3ab848f55de5ab5bef888ec0b7a5fa90680b461ea9b7012f39c399750fa35b41893d44d1bee7c31ac10b78946b1649198d0b93278
+DIST uutils_term_grid-0.3.0.crate 12055 BLAKE2B c5492862b8346272639e59b62eaf516093df4e9b47c6fd4a1dfad0e318991828b4f1e3126eade02bdb251adc05a4674948b0a2558accd780d843748e1b9e0992 SHA512 8df1048bc260a8d95d1d983b837ed4be55d8b7cbe07f51c0f8f5f8836ae7dbb095fe27cdca2e70f6c9cf01211871a6fb96e06d210f95ffa90e5e164ad790e0bd
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST walkdir-2.4.0.crate 23550 BLAKE2B b4298c01cb38be0479b7ddfee627af01f889b6b6ff432e368bb67f65134c3958a4fe271a5a7dd61b19259ae88f5680e5ce8e12e50a872b05fcba68f59b7073ec SHA512 09e1bc852c01b452c95b26a369831a97bc5c9e0ada3111c73774570dd73bb5b9e4735317d5572304fb48dca44ce7b9f77bbd17c418b6b047b2ab17b8bb42d9d9
+DIST walkdir-2.5.0.crate 23951 BLAKE2B a2d3a973f206e94699adec0263dd5e211347722cf3ab82536295019268b3125084da5dbcad818070bfdcb6a5de08da4eb483475bc225a829f58a1e3e040b5fba SHA512 da36a121dc6656942dc9cd9887fcf4f6eea7750354ef3f59c7c25d836e7afe06f33260b4d55d0d99421104ed4ce56ef2a1f0f4c3b713766fff90548c21793fad
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST wasm-bindgen-0.2.87.crate 175052 BLAKE2B bf8cf4aa1786ac5c2ba76e80500b5c54313adf9690ef370e60b894401bd1b81416da7bb46b90c014412c96f30f995bd1e52cf7f3a6be1111aea40866e8178396 SHA512 0c3099155ef079d2b91d2d5b135243d687bf865cdd9ae9d97d8cc2eb4c9bf7439b66b28d5b1d7e95048e53be63ed4909b6b3f2427951348de25ca7abb7a03705
+DIST wasm-bindgen-backend-0.2.87.crate 26821 BLAKE2B e230aa256a1f681ab3ffd2c83c3f6a810c305bb79a5e1d806b8b2b9f54ef0babc83809f6153b9ca511faa4b122f80bd1cc9eb97e7ae3cb4cba9e2dc1c6bd0b51 SHA512 317ee2bdf85067cb7f4b4ed6ff475ff9e5063143e9b7c8a28572211c09025935815227c4afa8c92823ac92102562d4d34531aa4891d8c922048d37e27377ee94
+DIST wasm-bindgen-macro-0.2.87.crate 13897 BLAKE2B 0926975b0328cdd5525820358795b7b68b4ab9dc460715ed84e5d276e76e936057140efb1ba875acf25f3d2862e680f9827bd05cc47560d54f7ec673f30244cb SHA512 af366d8d853b280014cdf5286f3b1f6d7fb0837ce6e359a81cb6f85161537c8e2cd06d7f893c957f5bf1548d34084d33a213670b471937782b56033a23cb15a6
+DIST wasm-bindgen-macro-support-0.2.87.crate 20006 BLAKE2B d32dfc7231e4fbc226586e66063538208f9e299fbf803c4e2d1e1e61b4a22f51cc7509bdd269a44f072f9843a083ee84d2326408fb3211009ce93542c3fdc6ce SHA512 9390aa2767fed1027be168612c424d4c7cd4423addd83b79afd8c67886f66303ca4846e6454302ecc78b47bc62e8ee46849a4c0d3edb98849ce8476901424e33
+DIST wasm-bindgen-shared-0.2.87.crate 7248 BLAKE2B 0393ce9452119fd5f92836a76b28d3a697f91fb09de39d1af0a2a83e81d48bd4a17f39b48f15ae97edca3e361d4f8fedae8de04173c4ba1711decc73f64000d5 SHA512 cb9ff537554f56fd07052ddc4adc904a57ee64e13298df1dfca58b361ce163c34640e7dd9ed301ec1375f335dfa424230e22638ea7569ceb34aeca4505f6c008
+DIST which-4.3.0.crate 9635 BLAKE2B 36556a9eca6d8702c0e3634abc458f7ff831aec28a7117f21f812c6f46cccd8db0e6ce7cc76f8033ba89d51858411251e5fecb0883542669269cade9c1a5aadb SHA512 cad05bd43dfcf9e50fd6e3b9dcd5d9a987175a0f44adbf204079117b70d0b42e6483e635287924698c51d0452f168e48e041453f18ff5720c0e2ec4c734d2578
+DIST wild-2.2.0.crate 8067 BLAKE2B 628902dd8c2d252397bb0677b59295f37ab088df79cbc92c32d3a17023535d9c192b49bffe23c74a49145e0e3c57cbb84c0db7d41923adc204b291d19d9f3272 SHA512 12a3484f372b5979715d56afdadc6d9b152ee75c1961fd0352f5cfb500691b526d4fc32bee32af7548cb7e6bb20288a5eae710a473bde9d2065fcbfc3f8de851
+DIST wild-2.2.1.crate 8080 BLAKE2B 489a2a625aa8091fdef9f4d49747db7816d82c01384672bd12ff9e4c906f3418fa5a5fa8951b625f6d22a9c1977c523f1b54d7c4252c241413ef6f63d327cb29 SHA512 8f92b83cb2568fed7841ad372111138d9ea5806c21a0affaecc639f0556ab879ca42fe205fe3c1e55a1b5c1c4fb0b705a5566b06bad5c119a1d41df9c01ed2c9
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.45.0.crate 2568659 BLAKE2B 6f2d634d121a9bf41e2887e277a73f33aee69b04c7fcfc6ff973d21902787997f1e186f530e9226cddc003ffc3f85a179c069c8a8688de459f617df92d33f94f SHA512 f239346c0141b95aa76e0771e2f4e38b9a592f3cd92c6001de353637cd65cd73b94cbf9917a4eaa9b0c0b2e6e2af920b9cf6b3fccb52770df5160254cffc1c47
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.42.2.crate 5492 BLAKE2B 42fc4a7d3e287fe2a70637e890304b49737776596f4a94a6d216668247092135e84322bd04caddd19c83b7700b0f27278e600ce8ed326957fabc21bffcae89b0 SHA512 84fbaffcad9a80beca77506aac26d0c5cb75aa0f21a5a70bcd3f6a16e71e8753ae00d3b89da9262c99756624163dcc0d6074fa9f99dfaae0dc098018209025f9
+DIST windows-targets-0.48.0.crate 7466 BLAKE2B 4ef6d89ad5b1acf26a1a24348122b86d3943bd95935499bc9032fbc7aa01c04999c723df7fecb4989854cb6b7cceffe141537dfb05a9eaf3902c4cb490533116 SHA512 1d2a29602a1e0846c8577ec9167c5f9972091998a5df449d67b13ad918bf37680e7f97247baf5e3010c166d0b3182418c2925470998b92893ee9469939b91e22
+DIST windows-targets-0.52.0.crate 6229 BLAKE2B 4b1efdd32202f112d3782b586ce60667f5d3b6f97ccae0d7da833aee2ae81ceece88b5ef4126db2448c9019de3f77e4fe66ed4286bb6275d9a5e8ab74725b804 SHA512 0ea09552d89b802ec0d419b640fa02d0af7af602704a0e88ba10f81d123dee0c907460f6ec91224177ec9a948970abd7414740eb219148a4d66c269c2362740e
+DIST windows_aarch64_gnullvm-0.42.2.crate 364071 BLAKE2B 97c4e3b2a2dd3f936f9bfcdad23639c9c4c499eed220aec361d26d6013d798efa118e6b298f9cf841ac149d2ae5d58ca653731718450fcf2910bb5f6fa39159f SHA512 75cd7eb1def8ce9d0ff3d7468d2b1cc31cc76c08f981a2460c3d1eb09cff7100d7442863a3591621c1f5f3b3f4badf0b5c95285b6ed583e37283a8403f1095f1
+DIST windows_aarch64_gnullvm-0.48.0.crate 366543 BLAKE2B 9b10f65089fe6da3ff38a1061783f635644ae84f567f891eaced280af68f7ff3919b34289e8850aa34554bb0346903273ff0a7fa743ca8794c2d23a9f1b0185f SHA512 80c5aa74c5669f7acff3882a8e7575f15e8d7cc58c11a1cb731ff423eb9cc9ba43cc6b80e52803c0d44e6a9001655ba87de6f43a9fe858da6d6e3a5c983a2711
+DIST windows_aarch64_gnullvm-0.52.0.crate 430182 BLAKE2B f23370c62c4ab3fd885e3ee22e8ec2fb5a3a837a57044c1df3f9986dd4e7e9d0a44ec58be1648a41e1ea4d037afa3077f0f03de0204199a82fb8395731815a4a SHA512 b7c3fe0a2ad5149be0df48fc7a4d15879eb130bd9441c58c25fc71b8a91483f0b553fb1bf29a9302acd348e9083a547430a840b059b0cfe19867ecaffcae986f
+DIST windows_aarch64_msvc-0.42.2.crate 666981 BLAKE2B 9f3cc5592cdede08bcdc1e7c455325279e3b763d96942695e10dccf1dfc37a81c749b69a7d6de883d4c0fa6e8a0d2f578fe2a8d6c42ad8ef6282590bf8fc87b7 SHA512 d2dafa8c94d01c1b65ca1bd631d31f2ef842f1db7accb132ff78c3f8483221b991afd3391563e03dcec42bbc9cbdc0ebdab47b991d25af85b5ba2ac1bbf8db63
+DIST windows_aarch64_msvc-0.48.0.crate 671479 BLAKE2B 0c80f210437628e1d878d1d14e884fea532c7539b3030aa76d46f27d02372c715c6e33d7efdbbd770666472b44a66c30711a33d819ede9cdcd51c96355802d45 SHA512 617e47a7202f1db4dbd3ecea509682135ccd85e3a458c0331b9bc7aa1d84e5756b59c881cb098d5c6d4c951248d13c8253a8e8a50938e1997bd19ceba77262df
+DIST windows_aarch64_msvc-0.52.0.crate 821663 BLAKE2B e6f772858205f7cd871722136aec4d00daea4793ff9dcae53e6311e74526c46aa11c2b3df7a85e6c577757254cbfa5a713e68c694625ca274b64e7a1c5532c23 SHA512 8446bfe5b9fe538415762c8129ab3bf2fe45482e045bce367475747786602ad4ae1187c6e508dd9d7b6be81bfc8d430e0db9c624e35c7cc52e823023e46f5cf1
+DIST windows_i686_gnu-0.42.2.crate 736236 BLAKE2B 4ef0496462afc73d9d72af7e5da1e6d3506a92f8172930e88ae64ab97596ffd31c4f97fb969e9b677e30159c27f00a8e756deb006b630fb98ce83f03c8b762e2 SHA512 ad09d650a05cb91cb6b40f59025c023a4c286bc1194586697c506016df2b9b0d5b02606b81687bc634795a0d9a9b8a73e486599328ae09c853e8e5ba662fc59c
+DIST windows_i686_gnu-0.48.0.crate 741490 BLAKE2B 5a4a584f8d8ee5bbd2d4c5b6749a66f2d43fc9e4ef90faab2227709b270f0d46fc26578c029edd96877c71309316ddb32d91c39f46d88f9a484c614f866e3dbe SHA512 15149fdd48b61b6d993acd392dbd353d0280d984ea88745217e4207937174bb90cdd9701f69ff0fe06a842f03607cbb57937d20d79ab577181e605a8a8fadc68
+DIST windows_i686_gnu-0.52.0.crate 870285 BLAKE2B a7688062a128a1b1394b3978210334e4e2aaa10dce131457c4a11ce0cb3f551e7f4962d1ece1846d8e9526983ced0e0a3ee8c933858e9314b62e76381e086ef9 SHA512 fe993f5bb6e039c257be9b35337e0221f718d23866818bfd19c76aaae236aafc2de4bb5014fcdf919563b5901cdaa14a2136cd086eeed3c83e46a5d02f6aa77e
+DIST windows_i686_msvc-0.42.2.crate 724951 BLAKE2B b084286cd4927efd2889b149abf8a9fe9d3d777130db9e592982660dbf9a96a0f5e723ca121465787aa11877d2d29a5a7d7cf066cdc8fa7e90d7ca7dcb7677f1 SHA512 c1706fc36d4b157c020744a11b3eb5d7dfbf05a0b56775bc717e94b7fd725816b20154fdbcd69ac08dbfb8b8bbfa74fab72d7a9c10399aad6a1cc54cf597e804
+DIST windows_i686_msvc-0.48.0.crate 730056 BLAKE2B 4e4ad6ed94948145199c2ed50fc65e4af08455a0fd058bb0f763d481f30b029f99a2b8dbac087b29e762500a19270f6683baf62ba99d141eb002a5b0b5c8ea05 SHA512 11a50800e709712dbea907275bc0faa46d2eb2969118445ed5b932d9c5957a09592a5b26a40e554c1f5fd56c6d074a07637e6f88eedd2224e1001e62df7b469b
+DIST windows_i686_msvc-0.52.0.crate 888693 BLAKE2B 7a6e9d03e503c8f543e80a8c7bcf3f50cfa7eed462e487ae7b581746d7cc4d871b33e307110d3a3a75226d88e837f9452ac56bf3baf71b66cfab2626cc15558a SHA512 817ac796fd00bed51d80133ec873cf3d3d582ba41fec8a6f6407fbd7544f198e928aa5d710f70c13bbf74a1dde4c91c54e65eb9d3b7518a7f011ea42725eb671
+DIST windows_x86_64_gnu-0.42.2.crate 699373 BLAKE2B 01c70809d564b16b268656e47295e99c992d8f9839fac8a51338a0e7c3b9cdcd0429c456ca8c1c139a8c687ed7ed6c43a82250889d881aadaa65bd037223e0a6 SHA512 5767af3c86e717f93137a89d442230e6b60a649057edb3ab104b1f82c0bcd64fe089dcdf2f4fd486a799bece1ddb5f0449641536b678211945e749ae24f35c1f
+DIST windows_x86_64_gnu-0.48.0.crate 703595 BLAKE2B b227efb78a99c43d0538cceadada3fa1840df29adc665787fdcf845b73e77d782da8a9f9aa602e1da61401b550d0107176feb6c397c922a6240b38cc8f04a180 SHA512 38eff1164fb37dbd2bbe53404b20cba92de84cbbd5e4eb9ad60d51fb43d6fdb8b87a1488e2c88ebd4b3ff3b708f93fdc05df4b14a285d3ff11c33ff0d9828602
+DIST windows_x86_64_gnu-0.52.0.crate 826213 BLAKE2B 3ca03285ef289fc844261142154e710e996c29940b1c0a7dc3016906ff6452fa50b24f8668fce0ca44bf169ab1228c217fece9f7bddac9ab8bdc54fddafaf8a8 SHA512 2d81af56ad0bc9536f6e066776642a546ce6c6d99551edc0603ffcafe6db15d5d5a32a642b204bbfadf34231daa3894ad7897a9c0c575c2b6bc1e3e58a9a3eb7
+DIST windows_x86_64_gnullvm-0.42.2.crate 364068 BLAKE2B 64bc53e98eb3fc649c9b43a6e734de4e65088e41edacabd49f7afcc5dc6e1065c563ecfc682747dda05978dea2dba4f45c16fcc18c3b00684c3d93681e5a7deb SHA512 d39a8bc948110fe612d3f8d6628b3f0d56620df11d8a49e0fabb6c90389ad407582b3af10e4eab46c79b3d11d2e10753d73d9e55963fbeac085f41e9749bdba3
+DIST windows_x86_64_gnullvm-0.48.0.crate 366536 BLAKE2B 295dc3aef18c604d1579978045f4058b1a315083a8ab842bddf5800ec3460b1530ad88c3464acab712a229290aca235810de8a3b6a253859a354d9fa97277e58 SHA512 8d82fad4c8445030844708aa026a62f1ca43362b8e15f14b0d226c7e9cda04ffa0715087b6a025dbb738e8891de24fcc4a2df071a532917cf03c4a46f934f396
+DIST windows_x86_64_gnullvm-0.52.0.crate 430165 BLAKE2B af9345a1f6e0ed1392ca1534c68d23f3be0fbb6a42b3c5518cee14373e645038526da15e849d14abe45c53766a30c6c2042a626482ba4a05409f325eb6aa36b1 SHA512 e88af35fd1c694dc189783e5c81aafa61aeffbddce4d7130e1125d0ce3d932fafeb345990ffd98477c41b578b7f5090f4f9c0457b02146309b95549c9f8f44f0
+DIST windows_x86_64_msvc-0.42.2.crate 666936 BLAKE2B bc3a456e7f8bc272f8978ec69506ec9d89f97b7582ebbe05d8bd57bdf8156ef62d0d2dc6137a97e81d54059d70db97a24af9a038adff357f5dfd28805d6193b5 SHA512 53a35f438903fceb59e36bd2ac331773fb8e6c8c5a6d984e79021761f91b3b4a23efe49d219667a4d0d23dcdbf906da9c24e74fb1cff93395b5c55ff524e3788
+DIST windows_x86_64_msvc-0.48.0.crate 671422 BLAKE2B abb063610dcc38581657133182b7d9efeed5553df67bd2bd6f30f1668a645186e4824f9ef556a5abc84ace10b1b437b6325bbda6df5a64ce880d7dcb743ac786 SHA512 6e598b8e3ac54912a8ebac01b0dd2c58fd282072527d7fedc7f6ebecdfb7dcb09ae46c22293bc0117849437f8b053db5e90406e7a38276f0f0afd06be3966795
+DIST windows_x86_64_msvc-0.52.0.crate 821600 BLAKE2B cc448b65f98fc0fc4949ae622b7020d2dae927ae45310649f6ef71809740eda9d3db0fc035676c201fd9ab9639e9e7f21e2e992b4c789542f12b419d2c752179 SHA512 3aaee31533a1a48a6ab5cd15b3cadfbd906a93a153e53919d0aa74e440d11e29830554e4e014c215f5b88a475bb733fa8ba4ce9d773d3e23a40ea9ad37ddd0a7
+DIST xattr-1.3.1.crate 12580 BLAKE2B 25c414d761a7fcd23bbe057add62c6da971cf33149066aa024320ab80e0ec8e8e8d5d3d0506e8de954b8f8c178d34c52a00a5fa9aa109510678098a3e3564b7f SHA512 4047abda42b949cf58f820e15ee99850de483857bbaaef737eeee48e1a2132972470f15bb2ddda56438f6a934918be96607a8de518a5a3dcec7c8ee6c00ad280
+DIST yansi-0.5.1.crate 16525 BLAKE2B 3b5a93b98293daae72f53bf3f13bfc05feba8d5b27921f79595f7448fbcb9a0dfa6cd70f467c5735b914c46b7d3592e6cce080c540a458a904308525eb3aa839 SHA512 7b33005a066cc612408a65df6533e8718d1de43efc0fd57416a19dc2b811497570e6e18f100fb26073565e395e711518c27de7d644ae64777713f1a102eb16d2
+DIST z85-3.0.5.crate 9084 BLAKE2B fab4d13d859b02211cf1a80fbbe03af5d2eeb65c927ae4a75730be5567de496619e41f365a02c432af5526f262798af7f89056d72404d38157454dc2e405b7f9 SHA512 8b9c3d095ae51b7d0a9183373e8e47635ba1777d86466e160748bab67a45265b90308189efaf0a5a8eefa7c08ffd08a3ba0580be7ad7bafc7fdce463ec05d0dd
+DIST zip-0.6.6.crate 65789 BLAKE2B acefc076297468d72cb20d8c6234fe5406875056fbf78fc0eac3ac430af78f320ed839f8683bd96fa1a03c457d6ac568d42bd703a902bc37bd126791d8b4c709 SHA512 affd46c17ceaa0545a155250dfd16756f8706dda43bae8a322ec0481dbfb41e4cf3166bf9662fc139ef9d0ab3b0f9f158535b21d2a61b21d38b8b2407813eeef
diff --git a/sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.21-xfail-tests.patch b/sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.21-xfail-tests.patch
new file mode 100644
index 000000000000..23002c71e672
--- /dev/null
+++ b/sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.21-xfail-tests.patch
@@ -0,0 +1,67 @@
+See also: https://github.com/uutils/coreutils/issues/4946
+--- a/tests/by-util/test_install.rs
++++ b/tests/by-util/test_install.rs
+@@ -1335,6 +1335,7 @@ fn test_install_dir_dot() {
+ // To match tests/install/d-slashdot.sh
+ let scene = TestScenario::new(util_name!());
+
++ /*
+ scene.ucmd().arg("-d").arg("dir1/.").succeeds();
+ scene.ucmd().arg("-d").arg("dir2/..").succeeds();
+ // Tests that we don't have dir3/. in the output
+@@ -1367,7 +1368,7 @@ fn test_install_dir_dot() {
+ assert!(at.dir_exists("dir2"));
+ assert!(at.dir_exists("dir3"));
+ assert!(at.dir_exists("dir4/cal"));
+- assert!(at.dir_exists("dir5/cali"));
++ assert!(at.dir_exists("dir5/cali"));*/
+ }
+
+ #[test]
+--- a/tests/by-util/test_pinky.rs
++++ b/tests/by-util/test_pinky.rs
+@@ -105,5 +105,5 @@ fn test_no_flag() {
+ let expect = unwrap_or_return!(expected_result(&ts, &[])).stdout_move_str();
+ let v_actual: Vec<&str> = actual.split_whitespace().collect();
+ let v_expect: Vec<&str> = expect.split_whitespace().collect();
+- assert_eq!(v_actual, v_expect);
++ /* assert_eq!(v_actual, v_expect); */
+ }
+--- a/tests/test_util_name.rs
++++ b/tests/test_util_name.rs
+@@ -23,9 +23,9 @@ fn execution_phrase_double() {
+ .arg("--some-invalid-arg")
+ .output()
+ .unwrap();
+- assert!(String::from_utf8(output.stderr)
++ /*assert!(String::from_utf8(output.stderr)
+ .unwrap()
+- .contains(&format!("Usage: {} ls", scenario.bin_path.display(),)));
++ .contains(&format!("Usage: {} ls", scenario.bin_path.display(),)));*/
+ }
+
+ #[test]
+@@ -41,10 +41,10 @@ fn execution_phrase_single() {
+ .output()
+ .unwrap();
+ dbg!(String::from_utf8(output.stderr.clone()).unwrap());
+- assert!(String::from_utf8(output.stderr).unwrap().contains(&format!(
++ /*assert!(String::from_utf8(output.stderr).unwrap().contains(&format!(
+ "Usage: {}",
+ scenario.fixtures.plus("uu-ls").display()
+- )));
++ )));*/
+ }
+
+ #[test]
+--- a/tests/by-util/test_tail.rs
++++ b/tests/by-util/test_tail.rs
+@@ -1541,6 +1541,8 @@ fn test_retry9() {
+ // Ensure that inotify will switch to polling mode if directory
+ // of the watched file was removed and recreated.
+
++ return;
++
+ use text::BACKEND;
+
+ let ts = TestScenario::new(util_name!());
diff --git a/sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.25-xfail-tests.patch b/sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.25-xfail-tests.patch
new file mode 100644
index 000000000000..9e3b55dfe786
--- /dev/null
+++ b/sys-apps/uutils-coreutils/files/uutils-coreutils-0.2.25-xfail-tests.patch
@@ -0,0 +1,78 @@
+See also: https://github.com/uutils/coreutils/issues/4946
+--- a/tests/by-util/test_install.rs
++++ b/tests/by-util/test_install.rs
+@@ -1335,6 +1335,7 @@ fn test_install_dir_dot() {
+ // To match tests/install/d-slashdot.sh
+ let scene = TestScenario::new(util_name!());
+
++ /*
+ scene.ucmd().arg("-d").arg("dir1/.").succeeds();
+ scene.ucmd().arg("-d").arg("dir2/..").succeeds();
+ // Tests that we don't have dir3/. in the output
+@@ -1367,7 +1368,7 @@ fn test_install_dir_dot() {
+ assert!(at.dir_exists("dir2"));
+ assert!(at.dir_exists("dir3"));
+ assert!(at.dir_exists("dir4/cal"));
+- assert!(at.dir_exists("dir5/cali"));
++ assert!(at.dir_exists("dir5/cali"));*/
+ }
+
+ #[test]
+--- a/tests/by-util/test_pinky.rs
++++ b/tests/by-util/test_pinky.rs
+@@ -105,5 +105,5 @@ fn test_no_flag() {
+ let expect = unwrap_or_return!(expected_result(&ts, &[])).stdout_move_str();
+ let v_actual: Vec<&str> = actual.split_whitespace().collect();
+ let v_expect: Vec<&str> = expect.split_whitespace().collect();
+- assert_eq!(v_actual, v_expect);
++ /* assert_eq!(v_actual, v_expect); */
+ }
+--- a/tests/test_util_name.rs
++++ b/tests/test_util_name.rs
+@@ -23,9 +23,9 @@ fn execution_phrase_double() {
+ .arg("--some-invalid-arg")
+ .output()
+ .unwrap();
+- assert!(String::from_utf8(output.stderr)
++ /*assert!(String::from_utf8(output.stderr)
+ .unwrap()
+- .contains(&format!("Usage: {} ls", scenario.bin_path.display(),)));
++ .contains(&format!("Usage: {} ls", scenario.bin_path.display(),)));*/
+ }
+
+ #[test]
+@@ -41,10 +41,10 @@ fn execution_phrase_single() {
+ .output()
+ .unwrap();
+ dbg!(String::from_utf8(output.stderr.clone()).unwrap());
+- assert!(String::from_utf8(output.stderr).unwrap().contains(&format!(
++ /*assert!(String::from_utf8(output.stderr).unwrap().contains(&format!(
+ "Usage: {}",
+ scenario.fixtures.plus("uu-ls").display()
+- )));
++ )));*/
+ }
+
+ #[test]
+--- a/tests/by-util/test_tail.rs
++++ b/tests/by-util/test_tail.rs
+@@ -1541,6 +1541,8 @@ fn test_retry9() {
+ // Ensure that inotify will switch to polling mode if directory
+ // of the watched file was removed and recreated.
+
++ return;
++
+ use text::BACKEND;
+
+ let ts = TestScenario::new(util_name!());
+--- a/tests/by-util/test_env.rs
++++ b/tests/by-util/test_env.rs
+@@ -447,6 +447,8 @@ macro_rules! compare_with_gnu {
+ #[test]
+ #[allow(clippy::cognitive_complexity)] // Ignore clippy lint of too long function sign
+ fn test_env_with_gnu_reference_parsing_errors() {
++ return;
++
+ let ts = TestScenario::new(util_name!());
+
+ compare_with_gnu!(ts, &["-S\\|echo hallo"]) // no quotes, invalid escape sequence |
diff --git a/sys-apps/uutils-coreutils/metadata.xml b/sys-apps/uutils-coreutils/metadata.xml
new file mode 100644
index 000000000000..e46cfa1f20f5
--- /dev/null
+++ b/sys-apps/uutils-coreutils/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lu_zero@gentoo.org</email>
+ <name>Luca Barbato</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <longdescription>
+ Standard GNU file utilities (chmod, cp, dd, dir, ls, ...), text utilities (sort, tr, head, wc, ...), and shell utilities (whoami, who, ...), written in Rust
+ </longdescription>
+ <upstream>
+ <remote-id type="github">uutils/coreutils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/uutils-coreutils/uutils-coreutils-0.0.24.ebuild b/sys-apps/uutils-coreutils/uutils-coreutils-0.0.24.ebuild
new file mode 100644
index 000000000000..a59b37bd4e89
--- /dev/null
+++ b/sys-apps/uutils-coreutils/uutils-coreutils-0.0.24.ebuild
@@ -0,0 +1,383 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.6.2
+
+EAPI=8
+
+CRATES="
+ adler@1.0.2
+ aho-corasick@1.0.4
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ anstream@0.5.0
+ anstyle-parse@0.2.0
+ anstyle-query@1.0.0
+ anstyle-wincon@2.1.0
+ anstyle@1.0.0
+ arrayref@0.3.6
+ arrayvec@0.7.4
+ autocfg@1.1.0
+ bigdecimal@0.4.0
+ binary-heap-plus@0.5.0
+ bindgen@0.63.0
+ bitflags@1.3.2
+ bitflags@2.4.0
+ blake2b_simd@1.0.2
+ blake3@1.5.0
+ block-buffer@0.10.3
+ bstr@1.9.0
+ bumpalo@3.11.1
+ bytecount@0.6.7
+ byteorder@1.5.0
+ cc@1.0.79
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ chrono@0.4.32
+ clang-sys@1.4.0
+ clap@4.4.2
+ clap_builder@4.4.2
+ clap_complete@4.4.0
+ clap_lex@0.5.0
+ clap_mangen@0.2.9
+ colorchoice@1.0.0
+ compare@0.1.0
+ console@0.15.8
+ const-random-macro@0.1.16
+ const-random@0.1.16
+ constant_time_eq@0.3.0
+ conv@0.3.3
+ core-foundation-sys@0.8.3
+ coz@0.1.3
+ cpp@0.5.9
+ cpp_build@0.5.9
+ cpp_common@0.5.9
+ cpp_macros@0.5.9
+ cpufeatures@0.2.5
+ crc32fast@1.3.2
+ crossbeam-channel@0.5.10
+ crossbeam-deque@0.8.4
+ crossbeam-epoch@0.9.17
+ crossbeam-utils@0.8.18
+ crossterm@0.27.0
+ crossterm_winapi@0.9.1
+ crunchy@0.2.2
+ crypto-common@0.1.6
+ ctrlc@3.4.1
+ custom_derive@0.1.7
+ data-encoding-macro-internal@0.1.12
+ data-encoding-macro@0.1.14
+ data-encoding@2.5.0
+ diff@0.1.13
+ digest@0.10.7
+ dlv-list@0.5.0
+ dns-lookup@2.0.4
+ dunce@1.0.4
+ either@1.8.0
+ encode_unicode@0.3.6
+ env_logger@0.8.4
+ errno@0.3.8
+ exacl@0.11.0
+ fastrand@2.0.0
+ file_diff@1.0.0
+ filetime@0.2.23
+ flate2@1.0.24
+ fnv@1.0.7
+ fs_extra@1.3.0
+ fsevent-sys@4.1.0
+ fts-sys@0.2.4
+ fundu-core@0.3.0
+ fundu@2.0.0
+ futures-channel@0.3.28
+ futures-core@0.3.28
+ futures-executor@0.3.28
+ futures-io@0.3.28
+ futures-macro@0.3.28
+ futures-sink@0.3.28
+ futures-task@0.3.28
+ futures-timer@3.0.2
+ futures-util@0.3.28
+ futures@0.3.28
+ gcd@2.3.0
+ generic-array@0.14.6
+ getrandom@0.2.9
+ glob@0.3.1
+ half@2.3.1
+ hashbrown@0.13.2
+ hermit-abi@0.3.2
+ hex-literal@0.4.1
+ hex@0.4.3
+ hostname@0.3.1
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.53
+ indicatif@0.17.3
+ inotify-sys@0.1.5
+ inotify@0.9.6
+ io-lifetimes@1.0.11
+ itertools@0.12.0
+ itoa@1.0.4
+ js-sys@0.3.64
+ keccak@0.1.4
+ kqueue-sys@1.0.3
+ kqueue@1.0.7
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ libc@0.2.152
+ libloading@0.7.4
+ libm@0.2.7
+ linux-raw-sys@0.3.8
+ linux-raw-sys@0.4.12
+ lock_api@0.4.9
+ log@0.4.17
+ lscolors@0.16.0
+ match_cfg@0.1.0
+ md-5@0.10.6
+ memchr@2.7.1
+ memmap2@0.9.0
+ minimal-lexical@0.2.1
+ miniz_oxide@0.5.4
+ mio@0.8.10
+ nix@0.27.1
+ nom@7.1.3
+ notify@6.0.1
+ nu-ansi-term@0.49.0
+ num-bigint@0.4.4
+ num-integer@0.1.45
+ num-traits@0.2.17
+ num_threads@0.1.6
+ number_prefix@0.4.0
+ once_cell@1.19.0
+ onig@6.4.0
+ onig_sys@69.8.1
+ ordered-multimap@0.6.0
+ os_display@0.1.3
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ parse_datetime@0.5.0
+ peeking_take_while@0.1.2
+ phf@0.11.2
+ phf_codegen@0.11.2
+ phf_generator@0.11.1
+ phf_shared@0.11.2
+ pin-project-lite@0.2.9
+ pin-utils@0.1.0
+ pkg-config@0.3.26
+ platform-info@2.0.2
+ portable-atomic@0.3.15
+ ppv-lite86@0.2.17
+ pretty_assertions@1.4.0
+ proc-macro2@1.0.63
+ procfs-core@0.16.0
+ procfs@0.16.0
+ quick-error@2.0.1
+ quickcheck@1.0.3
+ quote@1.0.29
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ rand_pcg@0.3.1
+ rayon-core@1.12.0
+ rayon@1.8.0
+ redox_syscall@0.4.1
+ reference-counted-singleton@0.1.2
+ regex-automata@0.4.4
+ regex-syntax@0.8.2
+ regex@1.10.3
+ relative-path@1.8.0
+ rlimit@0.10.1
+ roff@0.2.1
+ rstest@0.18.2
+ rstest_macros@0.18.2
+ rust-ini@0.19.0
+ rustc-hash@1.1.0
+ rustc_version@0.4.0
+ rustix@0.37.26
+ rustix@0.38.30
+ same-file@1.0.6
+ scopeguard@1.1.0
+ self_cell@1.0.3
+ selinux-sys@0.6.2
+ selinux@0.4.0
+ semver@1.0.14
+ serde@1.0.147
+ sha1@0.10.6
+ sha2@0.10.8
+ sha3@0.10.8
+ shlex@1.1.0
+ signal-hook-mio@0.2.3
+ signal-hook-registry@1.4.0
+ signal-hook@0.3.17
+ siphasher@0.3.10
+ slab@0.4.7
+ sm3@0.4.2
+ smallvec@1.13.0
+ smawk@0.3.1
+ socket2@0.5.3
+ strsim@0.10.0
+ syn@1.0.109
+ syn@2.0.23
+ tempfile@3.9.0
+ terminal_size@0.2.6
+ terminal_size@0.3.0
+ textwrap@0.16.0
+ thiserror-impl@1.0.37
+ thiserror@1.0.37
+ time-core@0.1.0
+ time-macros@0.2.8
+ time@0.3.20
+ tiny-keccak@2.0.2
+ typenum@1.15.0
+ unicode-ident@1.0.5
+ unicode-linebreak@0.1.5
+ unicode-segmentation@1.10.1
+ unicode-width@0.1.11
+ unicode-xid@0.2.4
+ unindent@0.2.1
+ utf8parse@0.2.1
+ uuid@1.2.2
+ uutils_term_grid@0.3.0
+ version_check@0.9.4
+ walkdir@2.4.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.87
+ wasm-bindgen-macro-support@0.2.87
+ wasm-bindgen-macro@0.2.87
+ wasm-bindgen-shared@0.2.87
+ wasm-bindgen@0.2.87
+ which@4.3.0
+ wild@2.2.0
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.42.2
+ windows-targets@0.48.0
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.0
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.0
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.0
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.0
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.0
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.0
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.0
+ windows_x86_64_msvc@0.52.0
+ xattr@1.3.1
+ yansi@0.5.1
+ z85@3.0.5
+ zip@0.6.6
+"
+
+inherit cargo flag-o-matic
+
+DESCRIPTION="GNU coreutils rewritten in Rust"
+HOMEPAGE="https://uutils.github.io/coreutils/ https://github.com/uutils/coreutils"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/uutils/coreutils"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ COREUTILS_COMMIT=""
+ SRC_URI="https://github.com/uutils/coreutils/archive/${FINDUTILS_COMMIT}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/coreutils-${COREUTILS_COMMIT}
+else
+ SRC_URI="https://github.com/uutils/coreutils/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/coreutils-${PV}
+
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD CC0-1.0 ISC MIT Unicode-DFS-2016"
+SLOT="0"
+IUSE="debug selinux test"
+# TODO: Need to skip known-failing tests
+RESTRICT="!test? ( test )" # test
+
+DEPEND="
+ dev-libs/oniguruma:=
+ selinux? ( sys-libs/libselinux )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ >=virtual/rust-1.70.0
+ test? ( dev-util/cargo-nextest )
+"
+
+QA_FLAGS_IGNORED=".*"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.21-xfail-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_compile() {
+ # normally cargo_src_compile sets this for us, but we don't use it
+ filter-lto
+
+ # By default, the crate uses a system version if it can. This just guarantees
+ # that it will error out instead of building a vendored copy.
+ export RUSTONIG_SYSTEM_LIBONIG=1
+
+ makeargs=(
+ # Disable output synchronisation as make calls cargo
+ -Onone
+
+ V=1
+
+ PROFILE=$(usex debug debug release)
+
+ PREFIX="${EPREFIX}/usr"
+ PROG_PREFIX="uu-"
+ MULTICALL=y
+ MANDIR="/share/man/man1"
+
+ SELINUX_ENABLED=$(usex selinux)
+
+ # pinky, uptime, users, and who require utmpx (not available on musl)
+ # bug #832868
+ SKIP_UTILS="$(usev elibc_musl "pinky uptime users who")"
+ )
+
+ emake "${makeargs[@]}"
+}
+
+src_test() {
+ local -x RUST_BACKTRACE=full
+
+ # Nicer output for nextest vs test
+ emake "${makeargs[@]}" \
+ CARGOFLAGS="${CARGOFLAGS} $(usev !debug --release)" \
+ TEST_NO_FAIL_FAST="--no-fail-fast" \
+ nextest
+}
+
+src_install() {
+ emake "${makeargs[@]}" DESTDIR="${D}" install
+}
diff --git a/sys-apps/uutils-coreutils/uutils-coreutils-0.0.25.ebuild b/sys-apps/uutils-coreutils/uutils-coreutils-0.0.25.ebuild
new file mode 100644
index 000000000000..54d71a2f8c9c
--- /dev/null
+++ b/sys-apps/uutils-coreutils/uutils-coreutils-0.0.25.ebuild
@@ -0,0 +1,385 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.6.2
+
+EAPI=8
+
+CRATES="
+ adler@1.0.2
+ aho-corasick@1.0.4
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ anstream@0.5.0
+ anstyle-parse@0.2.0
+ anstyle-query@1.0.0
+ anstyle-wincon@2.1.0
+ anstyle@1.0.0
+ arrayref@0.3.6
+ arrayvec@0.7.4
+ autocfg@1.1.0
+ bigdecimal@0.4.0
+ binary-heap-plus@0.5.0
+ bindgen@0.63.0
+ bitflags@1.3.2
+ bitflags@2.4.2
+ blake2b_simd@1.0.2
+ blake3@1.5.1
+ block-buffer@0.10.3
+ bstr@1.9.1
+ bumpalo@3.11.1
+ bytecount@0.6.7
+ byteorder@1.5.0
+ cc@1.0.79
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ cfg_aliases@0.1.1
+ chrono@0.4.35
+ clang-sys@1.4.0
+ clap@4.4.2
+ clap_builder@4.4.2
+ clap_complete@4.4.0
+ clap_lex@0.5.0
+ clap_mangen@0.2.9
+ colorchoice@1.0.0
+ compare@0.1.0
+ console@0.15.8
+ const-random-macro@0.1.16
+ const-random@0.1.16
+ constant_time_eq@0.3.0
+ conv@0.3.3
+ core-foundation-sys@0.8.3
+ coz@0.1.3
+ cpp@0.5.9
+ cpp_build@0.5.9
+ cpp_common@0.5.9
+ cpp_macros@0.5.9
+ cpufeatures@0.2.5
+ crc32fast@1.3.2
+ crossbeam-channel@0.5.10
+ crossbeam-deque@0.8.4
+ crossbeam-epoch@0.9.17
+ crossbeam-utils@0.8.18
+ crossterm@0.27.0
+ crossterm_winapi@0.9.1
+ crunchy@0.2.2
+ crypto-common@0.1.6
+ ctrlc@3.4.4
+ custom_derive@0.1.7
+ data-encoding-macro-internal@0.1.12
+ data-encoding-macro@0.1.14
+ data-encoding@2.5.0
+ diff@0.1.13
+ digest@0.10.7
+ dlv-list@0.5.0
+ dns-lookup@2.0.4
+ dunce@1.0.4
+ either@1.8.0
+ encode_unicode@0.3.6
+ env_logger@0.8.4
+ errno@0.3.8
+ exacl@0.12.0
+ fastrand@2.0.1
+ file_diff@1.0.0
+ filetime@0.2.23
+ flate2@1.0.24
+ fnv@1.0.7
+ fs_extra@1.3.0
+ fsevent-sys@4.1.0
+ fts-sys@0.2.4
+ fundu-core@0.3.0
+ fundu@2.0.0
+ futures-channel@0.3.28
+ futures-core@0.3.28
+ futures-executor@0.3.28
+ futures-io@0.3.28
+ futures-macro@0.3.28
+ futures-sink@0.3.28
+ futures-task@0.3.28
+ futures-timer@3.0.2
+ futures-util@0.3.28
+ futures@0.3.28
+ gcd@2.3.0
+ generic-array@0.14.6
+ getrandom@0.2.9
+ glob@0.3.1
+ half@2.4.0
+ hashbrown@0.13.2
+ hermit-abi@0.3.2
+ hex-literal@0.4.1
+ hex@0.4.3
+ hostname@0.3.1
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.53
+ indicatif@0.17.3
+ inotify-sys@0.1.5
+ inotify@0.9.6
+ io-lifetimes@1.0.11
+ itertools@0.12.1
+ itoa@1.0.4
+ js-sys@0.3.64
+ keccak@0.1.4
+ kqueue-sys@1.0.3
+ kqueue@1.0.7
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ libc@0.2.153
+ libloading@0.7.4
+ libm@0.2.7
+ linux-raw-sys@0.3.8
+ linux-raw-sys@0.4.12
+ lock_api@0.4.9
+ log@0.4.20
+ lscolors@0.16.0
+ match_cfg@0.1.0
+ md-5@0.10.6
+ memchr@2.7.1
+ memmap2@0.9.0
+ minimal-lexical@0.2.1
+ miniz_oxide@0.5.4
+ mio@0.8.11
+ nix@0.28.0
+ nom@7.1.3
+ notify@6.0.1
+ nu-ansi-term@0.49.0
+ num-bigint@0.4.4
+ num-integer@0.1.45
+ num-traits@0.2.18
+ num_threads@0.1.6
+ number_prefix@0.4.0
+ once_cell@1.19.0
+ onig@6.4.0
+ onig_sys@69.8.1
+ ordered-multimap@0.6.0
+ os_display@0.1.3
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ parse_datetime@0.5.0
+ peeking_take_while@0.1.2
+ phf@0.11.2
+ phf_codegen@0.11.2
+ phf_generator@0.11.1
+ phf_shared@0.11.2
+ pin-project-lite@0.2.9
+ pin-utils@0.1.0
+ pkg-config@0.3.26
+ platform-info@2.0.2
+ portable-atomic@0.3.15
+ ppv-lite86@0.2.17
+ pretty_assertions@1.4.0
+ proc-macro2@1.0.63
+ procfs-core@0.16.0
+ procfs@0.16.0
+ quick-error@2.0.1
+ quickcheck@1.0.3
+ quote@1.0.29
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ rand_pcg@0.3.1
+ rayon-core@1.12.1
+ rayon@1.9.0
+ redox_syscall@0.4.1
+ redox_syscall@0.5.0
+ reference-counted-singleton@0.1.2
+ regex-automata@0.4.4
+ regex-syntax@0.8.2
+ regex@1.10.4
+ relative-path@1.8.0
+ rlimit@0.10.1
+ roff@0.2.1
+ rstest@0.18.2
+ rstest_macros@0.18.2
+ rust-ini@0.19.0
+ rustc-hash@1.1.0
+ rustc_version@0.4.0
+ rustix@0.37.26
+ rustix@0.38.31
+ same-file@1.0.6
+ scopeguard@1.2.0
+ self_cell@1.0.3
+ selinux-sys@0.6.2
+ selinux@0.4.0
+ semver@1.0.14
+ serde@1.0.193
+ serde_derive@1.0.193
+ sha1@0.10.6
+ sha2@0.10.8
+ sha3@0.10.8
+ shlex@1.3.0
+ signal-hook-mio@0.2.3
+ signal-hook-registry@1.4.0
+ signal-hook@0.3.17
+ siphasher@0.3.10
+ slab@0.4.7
+ sm3@0.4.2
+ smallvec@1.13.1
+ smawk@0.3.1
+ socket2@0.5.3
+ strsim@0.10.0
+ syn@1.0.109
+ syn@2.0.32
+ tempfile@3.10.1
+ terminal_size@0.2.6
+ terminal_size@0.3.0
+ textwrap@0.16.1
+ thiserror-impl@1.0.37
+ thiserror@1.0.37
+ time-core@0.1.0
+ time-macros@0.2.8
+ time@0.3.20
+ tiny-keccak@2.0.2
+ typenum@1.15.0
+ unicode-ident@1.0.5
+ unicode-linebreak@0.1.5
+ unicode-segmentation@1.11.0
+ unicode-width@0.1.11
+ unicode-xid@0.2.4
+ unindent@0.2.1
+ utf8parse@0.2.1
+ uuid@1.7.0
+ uutils_term_grid@0.3.0
+ version_check@0.9.4
+ walkdir@2.5.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.87
+ wasm-bindgen-macro-support@0.2.87
+ wasm-bindgen-macro@0.2.87
+ wasm-bindgen-shared@0.2.87
+ wasm-bindgen@0.2.87
+ which@4.3.0
+ wild@2.2.1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.42.2
+ windows-targets@0.48.0
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.0
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.0
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.0
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.0
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.0
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.0
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.0
+ windows_x86_64_msvc@0.52.0
+ xattr@1.3.1
+ yansi@0.5.1
+ z85@3.0.5
+ zip@0.6.6
+"
+
+inherit cargo flag-o-matic
+
+DESCRIPTION="GNU coreutils rewritten in Rust"
+HOMEPAGE="https://uutils.github.io/coreutils/ https://github.com/uutils/coreutils"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/uutils/coreutils"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ COREUTILS_COMMIT=""
+ SRC_URI="https://github.com/uutils/coreutils/archive/${FINDUTILS_COMMIT}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/coreutils-${COREUTILS_COMMIT}
+else
+ SRC_URI="https://github.com/uutils/coreutils/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/coreutils-${PV}
+
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD CC0-1.0 ISC MIT Unicode-DFS-2016"
+SLOT="0"
+IUSE="debug selinux test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/oniguruma:=
+ selinux? ( sys-libs/libselinux )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ >=virtual/rust-1.70.0
+ test? ( dev-util/cargo-nextest )
+"
+
+QA_FLAGS_IGNORED=".*"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.25-xfail-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_compile() {
+ # normally cargo_src_compile sets this for us, but we don't use it
+ filter-lto
+
+ # By default, the crate uses a system version if it can. This just guarantees
+ # that it will error out instead of building a vendored copy.
+ export RUSTONIG_SYSTEM_LIBONIG=1
+
+ makeargs=(
+ # Disable output synchronisation as make calls cargo
+ -Onone
+
+ V=1
+
+ PROFILE=$(usex debug debug release)
+
+ PREFIX="${EPREFIX}/usr"
+ PROG_PREFIX="uu-"
+ MULTICALL=y
+ MANDIR="/share/man/man1"
+
+ SELINUX_ENABLED=$(usex selinux)
+
+ # pinky, uptime, users, and who require utmpx (not available on musl)
+ # bug #832868
+ SKIP_UTILS="$(usev elibc_musl "pinky uptime users who")"
+ )
+
+ emake "${makeargs[@]}"
+}
+
+src_test() {
+ local -x RUST_BACKTRACE=full
+
+ # Nicer output for nextest vs test
+ emake "${makeargs[@]}" \
+ CARGOFLAGS="${CARGOFLAGS} $(usev !debug --release)" \
+ TEST_NO_FAIL_FAST="--no-fail-fast" \
+ nextest
+}
+
+src_install() {
+ emake "${makeargs[@]}" DESTDIR="${D}" install
+}
diff --git a/sys-apps/uutils-coreutils/uutils-coreutils-9999.ebuild b/sys-apps/uutils-coreutils/uutils-coreutils-9999.ebuild
new file mode 100644
index 000000000000..54d71a2f8c9c
--- /dev/null
+++ b/sys-apps/uutils-coreutils/uutils-coreutils-9999.ebuild
@@ -0,0 +1,385 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.6.2
+
+EAPI=8
+
+CRATES="
+ adler@1.0.2
+ aho-corasick@1.0.4
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ anstream@0.5.0
+ anstyle-parse@0.2.0
+ anstyle-query@1.0.0
+ anstyle-wincon@2.1.0
+ anstyle@1.0.0
+ arrayref@0.3.6
+ arrayvec@0.7.4
+ autocfg@1.1.0
+ bigdecimal@0.4.0
+ binary-heap-plus@0.5.0
+ bindgen@0.63.0
+ bitflags@1.3.2
+ bitflags@2.4.2
+ blake2b_simd@1.0.2
+ blake3@1.5.1
+ block-buffer@0.10.3
+ bstr@1.9.1
+ bumpalo@3.11.1
+ bytecount@0.6.7
+ byteorder@1.5.0
+ cc@1.0.79
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ cfg_aliases@0.1.1
+ chrono@0.4.35
+ clang-sys@1.4.0
+ clap@4.4.2
+ clap_builder@4.4.2
+ clap_complete@4.4.0
+ clap_lex@0.5.0
+ clap_mangen@0.2.9
+ colorchoice@1.0.0
+ compare@0.1.0
+ console@0.15.8
+ const-random-macro@0.1.16
+ const-random@0.1.16
+ constant_time_eq@0.3.0
+ conv@0.3.3
+ core-foundation-sys@0.8.3
+ coz@0.1.3
+ cpp@0.5.9
+ cpp_build@0.5.9
+ cpp_common@0.5.9
+ cpp_macros@0.5.9
+ cpufeatures@0.2.5
+ crc32fast@1.3.2
+ crossbeam-channel@0.5.10
+ crossbeam-deque@0.8.4
+ crossbeam-epoch@0.9.17
+ crossbeam-utils@0.8.18
+ crossterm@0.27.0
+ crossterm_winapi@0.9.1
+ crunchy@0.2.2
+ crypto-common@0.1.6
+ ctrlc@3.4.4
+ custom_derive@0.1.7
+ data-encoding-macro-internal@0.1.12
+ data-encoding-macro@0.1.14
+ data-encoding@2.5.0
+ diff@0.1.13
+ digest@0.10.7
+ dlv-list@0.5.0
+ dns-lookup@2.0.4
+ dunce@1.0.4
+ either@1.8.0
+ encode_unicode@0.3.6
+ env_logger@0.8.4
+ errno@0.3.8
+ exacl@0.12.0
+ fastrand@2.0.1
+ file_diff@1.0.0
+ filetime@0.2.23
+ flate2@1.0.24
+ fnv@1.0.7
+ fs_extra@1.3.0
+ fsevent-sys@4.1.0
+ fts-sys@0.2.4
+ fundu-core@0.3.0
+ fundu@2.0.0
+ futures-channel@0.3.28
+ futures-core@0.3.28
+ futures-executor@0.3.28
+ futures-io@0.3.28
+ futures-macro@0.3.28
+ futures-sink@0.3.28
+ futures-task@0.3.28
+ futures-timer@3.0.2
+ futures-util@0.3.28
+ futures@0.3.28
+ gcd@2.3.0
+ generic-array@0.14.6
+ getrandom@0.2.9
+ glob@0.3.1
+ half@2.4.0
+ hashbrown@0.13.2
+ hermit-abi@0.3.2
+ hex-literal@0.4.1
+ hex@0.4.3
+ hostname@0.3.1
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.53
+ indicatif@0.17.3
+ inotify-sys@0.1.5
+ inotify@0.9.6
+ io-lifetimes@1.0.11
+ itertools@0.12.1
+ itoa@1.0.4
+ js-sys@0.3.64
+ keccak@0.1.4
+ kqueue-sys@1.0.3
+ kqueue@1.0.7
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ libc@0.2.153
+ libloading@0.7.4
+ libm@0.2.7
+ linux-raw-sys@0.3.8
+ linux-raw-sys@0.4.12
+ lock_api@0.4.9
+ log@0.4.20
+ lscolors@0.16.0
+ match_cfg@0.1.0
+ md-5@0.10.6
+ memchr@2.7.1
+ memmap2@0.9.0
+ minimal-lexical@0.2.1
+ miniz_oxide@0.5.4
+ mio@0.8.11
+ nix@0.28.0
+ nom@7.1.3
+ notify@6.0.1
+ nu-ansi-term@0.49.0
+ num-bigint@0.4.4
+ num-integer@0.1.45
+ num-traits@0.2.18
+ num_threads@0.1.6
+ number_prefix@0.4.0
+ once_cell@1.19.0
+ onig@6.4.0
+ onig_sys@69.8.1
+ ordered-multimap@0.6.0
+ os_display@0.1.3
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ parse_datetime@0.5.0
+ peeking_take_while@0.1.2
+ phf@0.11.2
+ phf_codegen@0.11.2
+ phf_generator@0.11.1
+ phf_shared@0.11.2
+ pin-project-lite@0.2.9
+ pin-utils@0.1.0
+ pkg-config@0.3.26
+ platform-info@2.0.2
+ portable-atomic@0.3.15
+ ppv-lite86@0.2.17
+ pretty_assertions@1.4.0
+ proc-macro2@1.0.63
+ procfs-core@0.16.0
+ procfs@0.16.0
+ quick-error@2.0.1
+ quickcheck@1.0.3
+ quote@1.0.29
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ rand_pcg@0.3.1
+ rayon-core@1.12.1
+ rayon@1.9.0
+ redox_syscall@0.4.1
+ redox_syscall@0.5.0
+ reference-counted-singleton@0.1.2
+ regex-automata@0.4.4
+ regex-syntax@0.8.2
+ regex@1.10.4
+ relative-path@1.8.0
+ rlimit@0.10.1
+ roff@0.2.1
+ rstest@0.18.2
+ rstest_macros@0.18.2
+ rust-ini@0.19.0
+ rustc-hash@1.1.0
+ rustc_version@0.4.0
+ rustix@0.37.26
+ rustix@0.38.31
+ same-file@1.0.6
+ scopeguard@1.2.0
+ self_cell@1.0.3
+ selinux-sys@0.6.2
+ selinux@0.4.0
+ semver@1.0.14
+ serde@1.0.193
+ serde_derive@1.0.193
+ sha1@0.10.6
+ sha2@0.10.8
+ sha3@0.10.8
+ shlex@1.3.0
+ signal-hook-mio@0.2.3
+ signal-hook-registry@1.4.0
+ signal-hook@0.3.17
+ siphasher@0.3.10
+ slab@0.4.7
+ sm3@0.4.2
+ smallvec@1.13.1
+ smawk@0.3.1
+ socket2@0.5.3
+ strsim@0.10.0
+ syn@1.0.109
+ syn@2.0.32
+ tempfile@3.10.1
+ terminal_size@0.2.6
+ terminal_size@0.3.0
+ textwrap@0.16.1
+ thiserror-impl@1.0.37
+ thiserror@1.0.37
+ time-core@0.1.0
+ time-macros@0.2.8
+ time@0.3.20
+ tiny-keccak@2.0.2
+ typenum@1.15.0
+ unicode-ident@1.0.5
+ unicode-linebreak@0.1.5
+ unicode-segmentation@1.11.0
+ unicode-width@0.1.11
+ unicode-xid@0.2.4
+ unindent@0.2.1
+ utf8parse@0.2.1
+ uuid@1.7.0
+ uutils_term_grid@0.3.0
+ version_check@0.9.4
+ walkdir@2.5.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.87
+ wasm-bindgen-macro-support@0.2.87
+ wasm-bindgen-macro@0.2.87
+ wasm-bindgen-shared@0.2.87
+ wasm-bindgen@0.2.87
+ which@4.3.0
+ wild@2.2.1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.42.2
+ windows-targets@0.48.0
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.0
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.0
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.0
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.0
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.0
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.0
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.0
+ windows_x86_64_msvc@0.52.0
+ xattr@1.3.1
+ yansi@0.5.1
+ z85@3.0.5
+ zip@0.6.6
+"
+
+inherit cargo flag-o-matic
+
+DESCRIPTION="GNU coreutils rewritten in Rust"
+HOMEPAGE="https://uutils.github.io/coreutils/ https://github.com/uutils/coreutils"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/uutils/coreutils"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ COREUTILS_COMMIT=""
+ SRC_URI="https://github.com/uutils/coreutils/archive/${FINDUTILS_COMMIT}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/coreutils-${COREUTILS_COMMIT}
+else
+ SRC_URI="https://github.com/uutils/coreutils/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/coreutils-${PV}
+
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD CC0-1.0 ISC MIT Unicode-DFS-2016"
+SLOT="0"
+IUSE="debug selinux test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/oniguruma:=
+ selinux? ( sys-libs/libselinux )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ >=virtual/rust-1.70.0
+ test? ( dev-util/cargo-nextest )
+"
+
+QA_FLAGS_IGNORED=".*"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.25-xfail-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_compile() {
+ # normally cargo_src_compile sets this for us, but we don't use it
+ filter-lto
+
+ # By default, the crate uses a system version if it can. This just guarantees
+ # that it will error out instead of building a vendored copy.
+ export RUSTONIG_SYSTEM_LIBONIG=1
+
+ makeargs=(
+ # Disable output synchronisation as make calls cargo
+ -Onone
+
+ V=1
+
+ PROFILE=$(usex debug debug release)
+
+ PREFIX="${EPREFIX}/usr"
+ PROG_PREFIX="uu-"
+ MULTICALL=y
+ MANDIR="/share/man/man1"
+
+ SELINUX_ENABLED=$(usex selinux)
+
+ # pinky, uptime, users, and who require utmpx (not available on musl)
+ # bug #832868
+ SKIP_UTILS="$(usev elibc_musl "pinky uptime users who")"
+ )
+
+ emake "${makeargs[@]}"
+}
+
+src_test() {
+ local -x RUST_BACKTRACE=full
+
+ # Nicer output for nextest vs test
+ emake "${makeargs[@]}" \
+ CARGOFLAGS="${CARGOFLAGS} $(usev !debug --release)" \
+ TEST_NO_FAIL_FAST="--no-fail-fast" \
+ nextest
+}
+
+src_install() {
+ emake "${makeargs[@]}" DESTDIR="${D}" install
+}
diff --git a/sys-apps/uutils-findutils/Manifest b/sys-apps/uutils-findutils/Manifest
new file mode 100644
index 000000000000..00b7e5303bb1
--- /dev/null
+++ b/sys-apps/uutils-findutils/Manifest
@@ -0,0 +1,164 @@
+DIST aho-corasick-1.1.2.crate 183136 BLAKE2B 2d4306d8968061b9f7e50190be6a92b3f668169ba1b9f9691de08a57c96185f7a4288d20c64cb8488a260eb18d3ed4b0e8358b0cca47aa44759b2e448049cbaa SHA512 61ef5092673ab5a60bec4e92df28a91fe6171ba59d5829ffe41fc55aff3bfb755533a4ad53dc7bf827a0b789fcce593b17e69d1fcfb3694f06ed3b1bd535d40c
+DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077
+DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
+DIST ansi_term-0.12.1.crate 24838 BLAKE2B f636772c34e2d68cda7b8d3b2b86abda074585a62bd2654812ce92384244655a9197fa66e6939e19a674c0148ca605313d83de262bb18c2339a8a4eb4438a791 SHA512 b840e28b3e7700689a69a39659b1e066560078dd4a58326b91a028915819e7af883399ee53e920db68fd974c58d35bb1ddf8d427af5937d5f696f57c4376b671
+DIST anstream-0.6.4.crate 20593 BLAKE2B 2b617c45d351e01222fc50f52551e57b4a8b0ecf84c6ddf44336c7c9d3b9dde15232b1c4f664d567849295bf8f03612b73ded56f1b3937392eb7718f1e0446c3 SHA512 0b983d626c53d1edc184f04cbd2c004eb9c40d14486b23cce86ebf50cbd3d916d32cb0423ae1d67c2b83b966690090af740538538ef846c0b126c686a1ebe159
+DIST anstyle-1.0.4.crate 13998 BLAKE2B fb501700855709e53438461c2f4b48d869613e7bb3bb700db8bd0d95082876d3782dc2cfe3ce110bb4a206994de56afe0e90fe89f9ccd07c60fe1c652123ba59 SHA512 671c6f57106198bcfc2f9000aacba98fabacfadfce2329dfe8d0e0a2af9404da483d7a844ca2b08e1fc0249371f574c13d0082c9f7a4ed90ff581308257a52d3
+DIST anstyle-parse-0.2.2.crate 24696 BLAKE2B 979daa24ccc3ea484445216bddc190f148f0ad83b95c997c1becbadfb641b67834980c413bcf5b7ddc2c6883d5e071a9636fbb44f79680ac42f8b73a797e466a SHA512 28039806f87c2bd8266cea834975939b79fdf0cc95a029654806655c0662520aa497d84eefadcd9edce204986e60b62678e76a09cdb38bcc50c91e9d05c4bee9
+DIST anstyle-query-1.0.0.crate 8620 BLAKE2B 2d296b5066fd6284a2410923215571e6df650c5ef892d6de7a7088a0996ca30608797feabc84f3c325ff4d07001dac80ac5067d2a9c9d15d9ba59a276b399f53 SHA512 2781be5c82293b7ae338ec5046fbeb130de9eb2dbf2e4dfaa73ca5233032e1e52c133e141b02f33d4bc36d996a0a3f680ac82d42d614a5305005f60547133c7a
+DIST anstyle-wincon-3.0.1.crate 11279 BLAKE2B 593de9443b4c612526550285a6c156db26a233815e77a748597c6eea509ae511f41eb8ee736010f8be853695c9f1d94b034a77190e612f0a00bf00385d66ced2 SHA512 75ab14081b09e031ee0f559538976f39092aaeb6f561a56de83d12911cc2b45e28eec21068792c86a61e344021921ab55e7139ca79acec78e7d4a796dfa42a2e
+DIST arrayref-0.3.7.crate 9620 BLAKE2B 69d25ca9c15c188ca954a862f320869a448a5d8ed5765a6fc26309abb030e1d846d12800d960c8a97aa3ab422e8d2b883bd154781ed219a858e02b20cc803613 SHA512 dcf1c7de6d1d4b921e26a39cd70070bd460cd27f0a38be9099e41fc8b05fb60ba4f9aa91f92401cdcd0847bad08bffa7db4dca8d7cc84a3c8a1416d1758838ce
+DIST arrayvec-0.7.4.crate 29856 BLAKE2B 81ffac1db340e919618351819def3880ab1ef70d0acc47d680f15298eb749bcbc3bf7944ba14159be46b1e734c91b4c0f8cbaf774fd864c17caa3c9fb1fc2e9b SHA512 91e8f70330c515c966d78ae235e890594f9607381ac738a2c3586b53f01411e98d1687494f39ccc365948ae60497df3dfb2be18e26ab7e69bc0966b6c250e1ac
+DIST assert_cmd-2.0.12.crate 25347 BLAKE2B 7ff952782a86203c1dd06611f1c644d8eaa6d85c8aa635bb2cac0423050f0af3c3687dcc82235041fb44e748ed06db16ed7c413d0f31305b6e3d208880494fac SHA512 d14783933521ffbcc0bcad8e52e7e0e4fb58cb609123b2a50e20dbee10d7f2df4eb020cdfde386c8cde6b7e0696a3f98e0dbd698c82c99a2c6903c437ec907e4
+DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bindgen-0.64.0.crate 204700 BLAKE2B 4316d60ac565112afdaa99d70cdbd400d39bed1dcb6fc3d036952b4fc94d8ab4d35672fd8507b79dfa8edd34f09279e88bfccbae21b95f06a76a8df446c6bbeb SHA512 f016e3a9a9b0f65c0831f4c6fcf4839016124cefb8e2db922e1839ee22b9b9429ae20874f56217e8100a6bb68c4dd1b52664c41e9596b748088ed855111fbd95
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.1.crate 37043 BLAKE2B f61c45b142265e9c2944c7054e01704de47510735e9ee5351cd02b98676cc4eb42d68b1fc4849ad5f54654617a74f20cb533b4207c2fe76516b724ba9318b414 SHA512 d3fd7abc95acc1cb5bf16d6acc12dbb8eadd250f069268df13c2e8dc3d5f5c15a929cd17ca931c77393b64dce0516ef8674c469789ed32d78e315b5faada062b
+DIST blake2b_simd-1.0.2.crate 34165 BLAKE2B acb2508f3a36710119ec170bfa3d343d3d99e5f9b7c65bb62d362e316eca3f52bd17dcdfc30ecab99e41883f113b4be51d72d754b8f4ea8e886addfbd93dcb6b SHA512 b2c5da66e8d0c64c00302f0047a4944e1099ddd69b23075874c3bd3b33c7faee9f425b939380da280d2ee347ebc09dbd4c97fa805dee6f752cc40c90e7edbd5e
+DIST blake3-1.5.0.crate 168914 BLAKE2B 72d1851f3cbe5c996570f5cf0cb4ab8c4215ac0e95a6b930dd64ff650333a8745ad1b63a2f988227d66a096cafc59777aeec8e63c05a22d666c1bdd58acaa320 SHA512 39c4d3d370bede96b3f4e37c44514dddfd1ef91d178116e1556eb8f3e2687b705e2320f842e600e59229198aeffff4ab1de34eaf59e8a3c039003f13d0f08aab
+DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58d3ed85c3339bd677a3e111f85cb1ff624a54d7802ab79a6e1d9221115f66388568340480fe83eae1cb448f19f5b11 SHA512 b7d436d8e627e16e6ddc300ee8f706a6cef28ff6f09eff848eedee46f84bdcd03601303c92ab8996042e55922866a59259948177c0a4496eed723523e77f6fdb
+DIST bstr-1.8.0.crate 380176 BLAKE2B 017ba2818bd636297cfb16fa975b34aa83367aef6df2cc321443754e5fbf4a9afa8ec9e99328e0cb0e5929268d6a4c2301e55aa2a6516e43e87280789c8d159f SHA512 9b8828790f3e342e69bb92cb9231c7134188c168a9b67a8705dc2e3370b86885f99e4d47f21ff68afc9147968b0fbf5a293307b09f132dddc550d8cd576f1048
+DIST bumpalo-3.14.0.crate 82400 BLAKE2B 13bde02e2e60ea3099f4e46ff679d07b2e8046740c1855bb81fe8d20a4ef0fb26e565da724f628a00c9154ef16ffc9018f67433d2a32544564b66803b5bab223 SHA512 179c116a5320c5f21163c343ed48add36089d806e35bc303318dcfe09ba1d5f02bf8012726d0c2cb76a73fae05a7c887a91e18f9e5ff3b9f9ad8a2f12838757b
+DIST cc-1.0.83.crate 68343 BLAKE2B 33245b33fa845ea2f36da36e3830ec835f937e4319865b357ee9d5ea29a0f9f8392eadb38bf1d95e3c15ed201e561acaa87aedcef744f8db3dabff87a96c7f02 SHA512 742a248c3a7547bb220a0b9c97b67a831fab9b4ac21daa08c85a3966b9fe576088def33e16132fcabec9a2828a6fc437088bb045bfc98b2cea829df6742565a7
+DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST chrono-0.4.31.crate 214513 BLAKE2B 2ac43852ea14cb7b129adf68ff62adac1763b3f4802dd3d23c43cb131377b501b4adb22aa93818d7ceded8eb10c17f94a7836257ce2876d0513b063276129c54 SHA512 23276daa2c1bc3b7b2327dc84200fb40cc995a8b599d1a537e92e08138ab8a0d1548a510a8155dcdda18820120d7204e89a4686c866fc3a8d2460cdb30ac6089
+DIST clang-sys-1.6.1.crate 41346 BLAKE2B b70104e6c6b3c1b85caa111c2b1fb2c20d30eeb85059bc616afc49bce9409f7ee2dd8b800750a466accad6a74ef29d10c6a2ee4459d854a2c0c54050ff51cc4b SHA512 a6c62c1d3faae3796f5e7d98ed4f1a8119f0ffaf8fceee8e728cd4da57b0140e82631012450bb0c551cd13814a97065e9e47015320707a87bdfbb6fd317e952c
+DIST clap-2.34.0.crate 202210 BLAKE2B f383adf1d757ac4b68995132b33837686ce451f85a02a8d05d2c746da398510d05d46330f3efade063c3952aacb1754cdac73dd0afcae0df5340a89f9353aa1c SHA512 c648a761b9996a7e7464a538bb53621bae22090b846a42c3b729beca3363958ae67e3da9f93f58b10a10e043cadf7ff930388680d168646178c2824177832db8
+DIST clap-4.4.8.crate 54609 BLAKE2B a975094e91d9aa9ccde5e79d6b46fad451dd80a1765a116a3c94e3523bc0383e51a5ce7383021b10776654e1252eb08302d9a5761bca903b154e1a0a1f5164e5 SHA512 579cee9b0b582d23c3b78fffcbef4c33ce47a67f511276922daee838aa5ad26134ba81a454bfdfb72d7e23df69b78227f0b60e57d2ca7455402d37dbbf099dbc
+DIST clap_builder-4.4.8.crate 163164 BLAKE2B 1d7ea3e3bedbe44f8bfb80014bc8de1057749b3e94506a83c3da6e475a67e44911bcdc6f08c3af02fb908059a745dcc2268d03fbb58d010841a2bf41645356d4 SHA512 83a3a4c81bcfd769a787b4f91b29488e65cb3d4e9e5160ab7b7289e5860a7d4058aa08077b62b9e8d10e4c1cc7c949439b677444d94c8ae00a7bebb2e0e8af8b
+DIST clap_lex-0.6.0.crate 12272 BLAKE2B 22aa04997fffa15a2efc7013ae27fd223c3247cd31f8fe96aafb4e87e3224f075e887df10a95a2da80b468d4e16088ae9f171ba6551c0ae06d77bf3b8920ff9d SHA512 3651aa5e27ed35b6b75b1d25fd9c20c26a2a6039116e54d84c51469087732a4f0fd71754326456b367e341b017d03749e9a6774cb7b62250ca8745f5af46574e
+DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
+DIST constant_time_eq-0.3.0.crate 11369 BLAKE2B a6fb4ad3146b26bb3e18458938e65133431df129963041465291b38a69ba2b53ffcc849f455e67a65a5291803591b350afe4ad4996f1c4cb76c18a987b5b3ee2 SHA512 77bf6817c521daa45c0df7721418b4aa367531adde46b1db97316d52ffb46fc4ee2d3e6f62ff91ca6292db5e1d3e040f0f5287c3936f12a595b2c8c5928bf5e6
+DIST core-foundation-sys-0.8.4.crate 17725 BLAKE2B 8afe47838dc91c8848c0d6a96a604149e5f0762228dbc10c17b85e4e9cd2c3928712bd0b28e1071f5fd6fd76d4ef972cb86c6c929246fb6e84577776933a8ac7 SHA512 15da472316d6decc213e4e5f08ecd22a108ebefe427b890741de4f9199614f19123e64329da76de5e8b4c9ff74ffc31738fd929acc1460fc757b4aa1fd3fdbb6
+DIST cpufeatures-0.2.11.crate 12727 BLAKE2B 5b91dffb779e437606db9b75d2b05c2de19069575a8272112e9a0389f5bd8de0f753cd90330b5a5bb6a3f84c9e794e96328664557db31c43853ba43097229efc SHA512 af179e269a4d5f48b50134a5e98ac541a9a0d6aa34f13fb8fd9ce8d5092352e1b322437254449ecb1bce608d8558b1cca2c79232ac1327efd887193bd1d36031
+DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
+DIST dashmap-5.5.3.crate 24061 BLAKE2B 2bdd62f674e90007a81b76419dd5df1b58c3d9b80bed4324d9e0298355cd66706794c7187c74bd9a6ce119d81ba9400c47aa2729ec923979b0bc081329051e71 SHA512 15079a921d768224defebdf8d5339257c9e94a46d115b37ddfca8eb83718b2448555a8982bcf0381a915d292aff9d271a89d3398d2ae2f396dd581cc6883963a
+DIST deranged-0.3.9.crate 17080 BLAKE2B a1441d629cb5d8ed75c49c25a42c144ecf5f6d060612b01bc2c78cde577f59fc3aed35b8b5629be50433244975fb4f98004ea99bad1177862d15c8695951dda1 SHA512 63abb2a6aaa770596caf96672c764e2f65b867653f9cd3fc268b4d2137afee7b3fc0618d83ab29c80c313e03455fb717a5015cfb33a69f95adeeddce723003fd
+DIST difflib-0.4.0.crate 7638 BLAKE2B 57c703de0d467c997bcbedc4d6577569b3d72c612d3ccd929025a98f4bf8f72f2a0d43f3cd3bc616676c2569aed176b3c1362cfa868a4bb1197e05fe4dbce32f SHA512 fcb57859424fea6958a4407061c421599fbca111357b1fe72faa65d8fb0b74425c993a24484e8414f475fa146cd8368c4f82e1ceb4e8dd9f95741149345b37a9
+DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
+DIST doc-comment-0.3.3.crate 4123 BLAKE2B a82d1c1a7a90af6e111b5e684a1298d7eac5fd8e4bf7d5baf6c7403d26b609958716d57e51122fe7ad7626fe00a2d824dcfef3cc2fd7679fdb7b5099603de1cd SHA512 e98ff9646a3612bd41bb6f278e7b6e9a0c58747f8b82524da814cf51b7f06c76ad4d65b502ac5740e818744abb295f78f15f8262d0b50ced1523f6d1a26939ba
+DIST dunce-1.0.4.crate 8034 BLAKE2B e1e7ffbcf1e3632036c03303ab46fc37b2b0a991598790b2dc65d7a61341a78bf555230ccded8fbb87d6288282af3ed2a8641212a0f1fab929bf99298e878b6b SHA512 f57d9c53c177bac8e10a4b56ae421c604085aef0f264b8d6871abb7e1ff713b55f396c5c5f24422763319c504c6ea6a774416af1c2ba23ba7b67b2282f6731f8
+DIST either-1.9.0.crate 16660 BLAKE2B ad61038bfacb16f678fff5dd9ccf8f345e1bef18bd7aa0aa9c99d44abf8428939362f32fc8dbb1b60ac56016e0096201071d0bf8c0431b660605d0dfa97da466 SHA512 4978d50842386f51e31a47ad037d5e491106a668bc701bb833e6ec3998afe3ebd80efddc47756b2f300f534b39b26fc01386dc878d3b02cc8c1fec6a474c2177
+DIST errno-0.3.7.crate 10712 BLAKE2B 1ac3a3084673791fc31e228ea3f49d334eea106f1bb6de3f9548882167d8982153e0d9cd9dbb4bde68fb9a12ea8eced99a4a128c507fe8a6ca90caf849cda1dd SHA512 ba4cd3919fefff84bd5ae473392ecdbaaec52ccaa9d1d93ae06ea5962523054d0fa1c5866787e36114a00d449a60df811a110f89c923a6acf7430d3668c2f54e
+DIST faccess-0.2.4.crate 7262 BLAKE2B d069c8ea1555563137a9e7fd4e8626b8327f96e7eb1e05f1281e20fd1f283278cfada7eb2a10064bd03d8057561367283bcc16280132f16ad3e9e977027f8150 SHA512 6d3328238dcdad0a310ad33e28ca32e68314c7a1b99b0c88c4bb5b380c5a385ec8deb23bb5e8f6bb2eff957becf0b514c488564eb6bd88d471f6ebd3a1614efd
+DIST fastrand-2.0.1.crate 14664 BLAKE2B 7a5812153500170dcc53ca8d66384fef46eeb5a8f970be43863f22f82bf427672d07cb053f4e04b0fea358ca89178399871235680f57223b8561c07b8d21cf13 SHA512 79a1e1b3f39264f037def236afbd87b732f5e0a2154b1d9e721b3c7990c52be45138320e2571fe628f482e0da7e3cf867abb745e3c277b19015fc031fd4410d9
+DIST filetime-0.2.22.crate 15029 BLAKE2B 068f4a84388d04d900bc5518a94895985ecba9c618a47b6483cabc31abd267e37ce69d78c51703ec5745307800d96ac801f37ac9959c60283c3c3d6ccd349c0a SHA512 d40d8baeb57ec85bb9ccf76ff0f898915c4e6cf384020121b53f4a2a1ef2840af5b4c9e8e1ff177034273f4f7a6bf81d2dd7a02cf498b61ea31ceaa30b877067
+DIST float-cmp-0.9.0.crate 10102 BLAKE2B 46bce5f7e838a947bbbdd22b085435e795b67fd23479780f65bf1586a70e7a35f04f9af086be98bff24e2583eeac7c9688727a2ddbd1ce978526dc01abf67dfd SHA512 f8dad12ecf8a278769054fd78794999dae8dedbcfde5e77bdf6cea12fdeaadeeb2f1f3ca62df9aadc1bc3f61457236c4854d6d6923ad6d03ae7f23af600572e8
+DIST futures-0.3.29.crate 53624 BLAKE2B 365ca3a09175cef1cb9314abfe25b6671205450fca77257cbf11ac156e5d805712783cb6aa1b856487b04fe3c410eb93e0fee2f69aed1c43245905ef17d170ef SHA512 08d96848a0bc20f3ed3e4d1aad923b8ca3a90f82904bb2f901595b02dfb70e9dfd4bf46eda6bbc48796a4e4ead37f68e4f7226b0f18d715e23746dcbd2613830
+DIST futures-channel-0.3.29.crate 32432 BLAKE2B fa89fb7bb14e5d23e19636de6116fcad23668e320a4c75409ef232f83d473e3c6db89a44b640cae969a0a7210df6ad6e5f7886e284481e0c2a816ef01e0c3d93 SHA512 f04574f9e88b5d56570ae0aeab082c6c1e4382e1594d83646c1899416e7403bdd7537282bdb20146b5df4fe24b550dcf35c497af04c2210575413d6c8018dff0
+DIST futures-core-0.3.29.crate 14808 BLAKE2B f1ebfc7c1c7a8a212ed7e6c5c72d973f7dafe8b4635c8d42070d6842bd4920fd39775195571dec2f6395c5002d8ac02af889581fdbf878a45e0eb27dc6c5f0b9 SHA512 ae10dc9c1473e4625bee4db902ab3833bb047bd159a40e4fc4cfdc3a266d1ab99e85aa3db4f8dd867e08926d8dc733760b3258884ab890db1fd69f1520715592
+DIST futures-executor-0.3.29.crate 17745 BLAKE2B 4bc4ee76b767285ea121f6edd3d5230f5de12724b9bd9f80341249b1feda6ff845ca6e847639906565c17f7dedb8bd726c0e531071fbadeae91e4a1a7d42c8a4 SHA512 df3220201247d4ae085a970c34e4c3dc7f546f4ff38fa817e4eef55743127a5ca6bcdfc35dd7f5f47c5e2dff32120483e14dee466080db04e93244fb5a5024ae
+DIST futures-io-0.3.29.crate 8908 BLAKE2B 909bd5dadadbf726dba3943dcec930c7409e20d8d324a52444f4145f5972e30ee4b1e48b7c2d9982fbea62ed5f3288e68e8920e99cf83d7cb81b9de1e8d81246 SHA512 869862f8728d94f0f0e71f9b24d0bd26b8bcafe70a80dd1dde4cefce73d91dc0cca80fb22e891f66024a77dcf28e8858e815bd436eb17d4c3119a7e68fefbaec
+DIST futures-sink-0.3.29.crate 7853 BLAKE2B 2c5dc852006b364be92e59a9adcc200bc0966cb2ded763e4d5bc3658071a8417d8c5c74ea2f2a96ab9a111602ed94b8cb72356d851178ca634583f172cb77041 SHA512 20f6a790dd83ed4db54911160254cb33c7a7fd93298df7b3dfc6f1da50c6402bdb17ccb5fc03bc9ad315c277e3dcfe4b3648fde5ace09d90f84d11febd6a0d9e
+DIST futures-task-0.3.29.crate 11853 BLAKE2B 050df023d7942207ea11cbe5e1cb5316a255763948b0c07d479828a3245ca34b82a71d1854ddbb13e01e853bd4ce424b319b2182346c36122d0246649390961e SHA512 6f8da7141899cceaa498c857a81c69330c093cf518e101dc53ee1e37123fae918536fcb1dde038e06c08f05c5f378a50970265a35229fb31c2377146cf94be39
+DIST futures-util-0.3.29.crate 160207 BLAKE2B 2f545d3387d5ca21c13bc157eb219ef767b7b0c9957329f3ccf247e6402295f5384e01121a1e1ed062223568f6d7db13602b38878a280f19d26c26cf184508d7 SHA512 48fae22d9b5f38aa85b423ade3022dc693775aad5c3e6988d35e4d529b9395c0f35ceeb394492e0f3ec96719cc3f3fe4ed3811df045b840b63231921e42fd65a
+DIST generic-array-0.14.7.crate 15950 BLAKE2B e74c785e3127095625951da192a018281ea9976aaeb11019f9088c3f27748c5fed1ef25d577150864486dc48b5138d6892e42f99979339f711a66fc70756c82b SHA512 363a7b04e4102f9ca63d429721c1ada6272be6bf0a2e97da681faf76381f73f0e3acb86623b9ce2dae441de9fda704088391779b9769ec02b3c8c9f9f35f897d
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST hashbrown-0.14.2.crate 140080 BLAKE2B 4a9fc89d77940d116d781ac6ca2a07a8ba3146fed54bd5d304d5ccb7722d27c053bbd83ec5ef897f1a25db50f838b73421677fd92be5d534a91909a7ad390d3b SHA512 a611359ccc8d859a72e812b94123ff162f5653caa1839c5f5e3269ed18b5fe2b2c7b15b4f03ae8076a622d08090a90e747d8cbcdfce9cf7f317592f1a3695351
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6
+DIST home-0.5.5.crate 8557 BLAKE2B b14225f6e967ccd37fa734f50991a50065047f3814c4e526f3b4605ceb9206d4d12e189b4033ab85792ffea34a30f2b0267b10b9b0ed88df52c37f6ae1ecea4d SHA512 4ba97149d8f70e9b6eefc930292c7e62fab6ad03d5e4e6bf93d40209d3a65e40932c6f3d14ca579ed19ba33195977c60fc52b3d3788629fc760f41ce90fa1e58
+DIST iana-time-zone-0.1.58.crate 27020 BLAKE2B 3e62ae3876e181e6ce4be1ca2417363298c0b83fe7d66d1e1dcb5ec308e9342871306387ca0c5fb3aa7ebf8f16968094d4c7b4a497fb792171fd400fe23e6a50 SHA512 9e55f17e08f371c476394ac2db9b447ff7f2a5e37e2cd3e84ec3e2b77980bd9de7eb81e8618695367d708e69156628a2e4ed80c4b7343aa71ce0d75a41e24b75
+DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
+DIST itertools-0.11.0.crate 125074 BLAKE2B 8e686f176764e92e4da3697eb781e1bc30d6c57ac61d97343b4fc3a48e4febf669d5771fa8620005c620cce52c236760ee2e1bc344cf602e878bc168a2e69cab SHA512 8ece00ba0a7cf481ad4586da24385a6f0b1719b9c3f0c25b9b5b373dd1a0ca7b9687a77cd179853392890b7bf4d31e0356a4e5fd540465b4ac62bd74ef717fd8
+DIST itoa-1.0.9.crate 10492 BLAKE2B 0d5acef9ae72d3f4b5a387d231952e6025def69da81d38269b4882bc534be7acadc073e526fd8bebdca898a98b2c741735c541e0b6a35ed0f8f8799b906b65b1 SHA512 95f7906edb7d6a2690389167f8c4d01bc37827205bca87d527f2eb33722419ed2f2e8afaa559cc5a0a7e7fac76515c9c44c71c42b536aa34b0e2858c40946b6d
+DIST js-sys-0.3.65.crate 80725 BLAKE2B 9abf4a2e9678b2b2e6648f07ea879ac372a20b4ec34a271b93dea1ed57d25c8fefb6c9a2cad93b4c8d008987d98bd9c50a45614419fbde11659e5515261ccc69 SHA512 ffc14e62a936a93eb6b71317a0d00529dc9b3d45994aeaa79fc21b5fad93a6a02da52e1dbb5fbc439da66f693e8a04b39c8a03381494d355443a425412ced267
+DIST keccak-0.1.4.crate 13049 BLAKE2B f788e96ce56e6d88bfc892db0f71c652ffdadba766d277e7078deb4dc1aca1588902a27751fb7ccdee9f00f9a91793ffd5d51550efb294a04ad5fe1bc26e3e2a SHA512 0ef3912525c019609f98f32a71672467bb7663b12029b03d55a4a3efc637f5ebeb35b3c63e2783f5e49dc7b00b8f4cf8a421399b0a5f7ea19a697470019f35fe
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST lazycell-1.3.0.crate 12502 BLAKE2B dca2d3f46823a52dcf87b7d6103fc4f1f83bc5247ce361946ac2d9df239fb43ce4b418104503698dff0242480cd014996e77da4ae0a88f3cedbce4eb9d3c9ef8 SHA512 f9d627afc28b61e9687a3f72260eb013401fd64057647641ff2e763770d7380ab1d2d8cbb4a3c8818d53d504c618a3b46aaf701f72f4d7b25d226042824c2f8d
+DIST libc-0.2.150.crate 719359 BLAKE2B d08e17fb29992c76337bb5862cbc1cdaf7b9d7749cd65021f145fcf49fa7954d6251c8c2f3c9a796b46283c3bc014bccfd259ea52824459841911ad847fd7f5a SHA512 7ae8fe6a1db38ac6d951c0b4880d25a02f064f5e61d6057c20f7208dec8395d58efd085e41857bcf5f4da2b014d2952dc4ddaf18ac4acd3a23675bb659e70385
+DIST libloading-0.7.4.crate 27580 BLAKE2B 491faef2659270b10bb88ac46e0453f747f35e78d7f28b7d6d9151177b4c7a7aec0a1efdf702eda0988c31e9dafff2990eba4e6a9b0b695c535ea9086ccf36e7 SHA512 34439d9eca68bac8fcbe2bc94a70e07550e7e95d713ab74ed60ba6736ec807fd9c9135c178d436fbeb39afb074b2a9b05775d953340845c088f5f8712f5f56a1
+DIST linux-raw-sys-0.4.11.crate 1413981 BLAKE2B 45172cc348e758bf87831b47d2d52ea43e781a738a59654dffc04cd5f1726efdd8d1e2376cdc247019b64d82d756f4739815422c353f54f081a2c539df02b5f4 SHA512 befe18ab06e5248ee89f0cb8fbc192a5564c15c9873672fea62754322d3c197563d9133b839d5222e6baa522ec1fafc48176ee605ec7954c5d93e52dfb6d9772
+DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST md-5-0.10.6.crate 16161 BLAKE2B bdd43889aed114cfa97ed0c70bc97b89fda28b14033a0a26bc7309ed744ee907d59151ab92e9cb95f0ff0ca1cfe2af360c48f1b99fc8a246a25c803a4b444a0f SHA512 024a9e14aaf860e748f64dddbb8aec01bb9f40d702d8de31497fde1d66a663e97ca1b06b600d8a818a0c707d1ef02eb0f210befaeacada458acba69ccbf476ca
+DIST memchr-2.6.4.crate 94439 BLAKE2B d1136f7105a33565214fdeecdc5a95e74d7fc7cf45997f81bf3cf389f3015fa561ab326433ddcff2db0b7259246eb6d26fc7b4e3c90c3af8b9b7ed7e8ec56ba0 SHA512 1065a67e04ec9210c70e430288e0a8d39f36ce6414722099553e99112ea2f8f710eae44bf39f8775b9850e6c8a50e634a1b1b084a8eb4f6b2eae6697dcf5b5f4
+DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
+DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c
+DIST nix-0.26.4.crate 279099 BLAKE2B 41debf1f21427ad6c25c6cd26b7867feb8ba46366028c4b74073307e902e526543f536fc0a66db2cdc5a52fbbf9166a6a4843aba57e5e5caada3d914286ddd60 SHA512 cc68ff8e3e8ea8635c6fd4c0a866cf42121aa3e25165666ef3b97b5b2c1d9273cba6f689e80eb812b55b5ee513390924a926d95fce45de0a74b98764dd1fa27d
+DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad
+DIST normalize-line-endings-0.3.0.crate 5737 BLAKE2B 935b2d20ccd37ca7469641a37aa0ae9b6872715d6ee88d568d0ee16fb76416cb1a0c585cff861825de8cef11d864b1dc1b350911c28d64e071d8fb444bbdf740 SHA512 f8e2a6e333b0e8972febe8b9cf058c8d899c384fd177e0b6ef1c5f94e0fa18192963970cb1a2ba80e3135a8cca66cdae6796e4d84ac6b325bb369575bdfc6eea
+DIST num-traits-0.2.17.crate 50190 BLAKE2B a549ef00c749dc7f276c4817477d1f9dab70cba01b6a3afa5743f16f16353bc50d992d7446a54859cf750a410d66c8cd3440708a6b91fd89d3b8889f8fff1668 SHA512 4d47d3e2f5a31019e038e609897cb0cef1ba061b35cee7e2a02e65179dcdd4960bd5b9bc759b5c013d699b3fbd9b014940a15e36658f7d4fd12cb0c7841c5b4e
+DIST num_threads-0.1.6.crate 7334 BLAKE2B 416efdf395b0299b6b01e1508823afdda08cf67ca54e1d644fc5accbb0490945a492a34bc5ba70c3e838e6405d17ddce164ef87468bd9da27097de8994ad9577 SHA512 b2d9897e29e59353379b6372a629fc7f9afc89f777b4410eaeac7b4729527948a8dbecb175f056899f9076693ef855cc0d40e725cc54f28af588fbac5f7ce3b6
+DIST once_cell-1.18.0.crate 32969 BLAKE2B a08d5beee50a7add28bd9e50b18709e7b34574f0f55f80909d5efb7ac5917e5f30bdcf3fb43ddd0a4f420a427390c7ffe1cc1c7191a3a1d939bc6e3139e6eef7 SHA512 9328968afdf3535b2d9e0113d75afa725259d76994ef2e1948ad7efa4ec8a65bac7cfdc31b749d5cd55ad4e28d2e28ac57b871e3067b89182453c7e2413a13b8
+DIST os_display-0.1.3.crate 16800 BLAKE2B 2d3a46bee2aade195bad0080178cfba0c5a5eb178211bceebc6e3c894ba1644667fb1713a6df9b0dbc2e34810bc6c9140641f4f2dad784845e7d1ad38a74b4a9 SHA512 2a413edc3237743a3dbca9645a8f813992ebbd57a9e7b1209a121d6914756bc0ddd4f3e11a1a5e55fb861f44deed4462a1e52dfe96e9f2f1d612c18b1062a165
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST peeking_take_while-0.1.2.crate 6697 BLAKE2B 31571604d00872900abcb677a483da93654de523bbdb0331c326dc9a3e531f246e571bebcb983e79dc46e33ed6dd32b978be509841ec0d9f1e7209c06289c22a SHA512 7bf8721987c3e2e1986683dd897746592a909382f02b840b777effec7d8b0a864c1a83b03c73d555e359f22c423168a54b75448a7e7b996b739527ce8c88b721
+DIST pin-project-lite-0.2.13.crate 29141 BLAKE2B c434a336716c9cdd16ebc297fed393e9106ef167a693c4aa0b12c681e03141b8ba3cdf64c310916cb7d5cc43cbbfcaaeb39bb5fb1e8b3efb9e94a3f72af914eb SHA512 7f12595d751d315de6c0d380e2f501b74154661eb676987d2cab6fdc956091a68c9cac658df45dbff73615e982e6ae2ea138c09ebb708cd6c351f0d18dbbdbee
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.27.crate 18838 BLAKE2B 1295eb4f08751b3663cb2c7c2753f29bf2ccd80f4e5856909fe10b6f006c37fb9672c9518b9b416546469faa18821512673a66543c0bd1e848bddabc456d0a90 SHA512 41e9b8d4fce6b8244c2ac8566318a001b481bd42a182f1a832c81ce93c6a023e18af03aa3500b134c30195219d35080433bdba69b2594e9665081debfbb4533a
+DIST powerfmt-0.2.0.crate 15165 BLAKE2B a3e1ce63f5866f75526eeb749bec6607e42cb495bbb953082cde7e98e6aa429ecaa41889d98ff7ed4cf5031258b4f7e0553ff8fc435b3b6f8b4ef2b6d53d9b61 SHA512 0623f92e4d6ab284b3f6dae58220d79d9185df4a738999d68040c50d72fe0380d70358cb622f079c629bab53bb03c6e085e165d5bddfbeea84245864fed90029
+DIST predicates-3.0.4.crate 23240 BLAKE2B ff0b96b85668dd24e8368479d82210b38f591f67a0793a080670e02b649516be8acda4ae5f80e98113a2030bfc7ec71cffe53a0fea4fb65f98b3a2fc1f6daece SHA512 b2dbfa83760004abce72f2ef576d7ec079c4ea909120a8fe1ec6b87da0fcc2b48406cd6857ed16e131281b4775a6f33ae94f975e381794fd9a98a2c0e11e1f75
+DIST predicates-core-1.0.6.crate 8084 BLAKE2B 337cbb155bc2859c5a8b891c21d352e998cd1eaaf606cf46c003c9c499a42f12268b071e7a4cca65d50cdfdfd4267f023076e078a0a3eb401ad836755d65298e SHA512 afeb1de4275c76bb1c5950f42bce2f83a21ab217ec60130336286cb48b15f36bf2a1ca346bd652c10a65a1f9e3310d16b23b8333a3e0f7e20fe874c3f728e702
+DIST predicates-tree-1.0.9.crate 7960 BLAKE2B b758c52dcdd0ea237ce25f0a092200604765bc83c5edcaea646c6b1db49431296b61aebddea3b325e62f0ba9bbd5edba7ec92fd031cb597e7e8d642b966b401a SHA512 1fd5d9a84ca8fdd1b3c4759d5e6fb16e3d8fe8b0dfe5afbd16bb509c8558b0750705fff47701c95f7a8df1a222f639116a1b9ba4d89775bf03b06daf34f249a3
+DIST proc-macro2-1.0.69.crate 44271 BLAKE2B 9d1531a0b123e6238363d574bee03ad050454b65710b9800c12597f3a9ae2f9bf50c617da0472b7ac0b549afaca19c546ccd6519e648598500efda9c0db2ef6d SHA512 d197cbe9b6100c3193a01fd7dd6b4e49d440290012ababb5d9f139409f0afe816f213d67a03abeb1f3227228e0a1f2446d1dc0a2775363a15d1237c38b45d6a1
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST redox_syscall-0.3.5.crate 23404 BLAKE2B 85aa4299d9816666bf576f523da5cdeae87b3c8fbb2af103e82258d23f73303c068a4b6c3ef4117ad67958cb31e41f836a9f59f2ce1bc52c23605e34399afcf1 SHA512 16f8f4766932bb54e4740cfdb4f0802f76246c0bf88c1d76c69c115949b124b625d8c3b85d8947073c2e9544f425aa16c10f71fabe3c03d29e424c47fe4ccdde
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST regex-1.10.2.crate 252839 BLAKE2B 4be7bede72d41634c52eea25566fb13337a84a055aae6fb73d3b18ab9168085ed04ffbfd5b6f87c2f85c9922893b9c9a253a8c874eae9185b2100850443b1517 SHA512 e594f70cc540586e4039e7b905ede9e507757b531f22a94aae185e47732ae0d54bceb2c6aceb815819a9652c01ccf697798d372631f2f864c04ca2eec59759d3
+DIST regex-automata-0.4.3.crate 617011 BLAKE2B e685724eb037411c1a73d6d355c76e9e32c40f1c9029acaf86477796d3f5ad092b0c5619f4df2fc1ce34243f2ad8af147aa31f83a435e5b5adf55b4c9c8a9359 SHA512 4fc82fe3556f829956c3172447589555ef286fd66ee9a445cbdcdbe57970655e35b6eb0895ba02c344d826609257e0c95d3f7f51858aa260103bed7b08d8c1a8
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST rust-onig-fa90c0e97e90a056af89f183b23cd417b59ee6a2.gh.tar.gz 48916 BLAKE2B 328e6ffcac0fcc93d7c48ade04b7bcaf5ca4c112072943187713f07dbde2b67354c1332b256cd9de5d38e2ec7deaa68684f4054a3e6caddccc17871e03f35eef SHA512 0e489098246855f75b354dfbcb33aee13ea5a2d912cb5e04457daa358871720ed1c34175f221863172851d8bb5efc5c4036984c15f17c62513e667b00fbe2dfd
+DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
+DIST rustix-0.38.25.crate 362735 BLAKE2B 8d368458850d031d63c76c75e716d8e580a763fa365aaf3f065de7f6f28fa314cd57c558286b0322438b9a8fe5475ebc709b02dc804862e02ebf02ad8fd2f30b SHA512 f14d3112f82e254ee01059a845062e305b5386b84e2de14fd89443606b37c5640322258cac91dda3be79b11cd72de60557515649ee266bfe7a796a284afe6a11
+DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST serde-1.0.193.crate 76863 BLAKE2B 163097e85b5542451896d7381607aa297e3b0342a2641887a01689b13122c6c1ca566fcb7f32f51bb0ecc861aed014f1467edfe21338223d5361555f870425a3 SHA512 82259ca302f42116ecffca3c88bc1212785ce5430f9d29390a9041d4e5943c13b13de119fde644a583960102c4b6e850a16f962d36dc76ac69fc2297ed65a506
+DIST serde_derive-1.0.193.crate 55692 BLAKE2B eeb2a2fbcd0daf5fee1bd6a4f584fed330db58cbd786073311d6a94308c63dfc6b7c2dfbc4b8980064ed66509f0127525b79d99aa96ca0134226fe21715999bb SHA512 05efb144aeee293a0e7dc7540106eb8c4920b2d8dfc25771d73afa8ffcba330104643430a6e396ea2adabbed4ccb23591251479b75449b9c8322799f91d38c41
+DIST serial_test-2.0.0.crate 7946 BLAKE2B 4f467100401f0800cf6cf3000b046d43a0df6c2164264061cdaaf9207cd719b087bc9fdd1fd64f1a8ba945c9f2c432786cf0bb5c77bc0d1525e14148cc6b6044 SHA512 65bbba74ddf39c3437b3afa327f7cb1befad12a81e639bc6285608211621b444dbf81edfde8b1b85c708a873c105d27aaf0d2f2d4dcac8872c68d92849c8f3dc
+DIST serial_test_derive-2.0.0.crate 5638 BLAKE2B 72fcbc0a6903b0ac82af3334048eab8fd43f65333570758d4a484f2a7ab83a44c39e9a9f4af3cb1be5296f25d863208a88e3243162664b710daffdeddfd8b3af SHA512 3cbab9f93c1b966e0827d9ee9f41e4cead47c2de8b8da80a3f9402549d01c9f28042d084abfb6f1037bd31c751de8e4139131014da7c80a165444bc3db804be3
+DIST sha1-0.10.6.crate 13517 BLAKE2B 85ad8dcd237125945f6f9c2d7a48bc9802dfe8398a2bac86ddb96763486092fa18e80a2e69f89cfd6e95599d34d60ced33b26a68cbbe39bf158238a79433584b SHA512 fd37be7e3f1d4b6addd313a36b55215fb70abd21be7831b71de28bd3eb03b7352817d8a7b1a166df002c3a23eadc8224e49edd4a37556c0e5357565305d4128f
+DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785
+DIST sha3-0.10.8.crate 858216 BLAKE2B 0251020db34e0be3f150d342d055bae00c7fe17e2eb1f5134016389e45a4d3ef35ab8e533f58cedd7e10412955c4a011ba8e604e129fc5bd9a433ff756f0ca5e SHA512 390102cea4cbb0de4fa772a0842cf6d13dadde9fd95c5dfa9e75ebf89e98a2b4bb10f05257797e8f688af78ac42d951cb71df71e3b7ec36e52e2661932479c7e
+DIST shlex-1.2.0.crate 6584 BLAKE2B ac07c648d9affe62512edab307fe07436dce69b428570ba6455aaf21c178145b1026e35704f920fc177b334cf190f57e393e4dd9e522dd26d133f80fb2c15f47 SHA512 cf48c0c47aac44654a48047fed3568c30f53f19cd131615cabbc247dbdf1eb1b7540b0d188f341251b4876dd0d5fcc13792800f0160f7907e8d8fe9a5e75083f
+DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
+DIST sm3-0.4.2.crate 10344 BLAKE2B 72d571c1e6c7bf2f30b2286b4bf5dc63a872b838a1bd6c67dc7fb37539367e4ac8ae2cf49224d243af5b938176300681f80e3fc40e44a65e31310e97b390322a SHA512 b5cbb43af4d5be6d18e9e5bdef151817c89ba6962f37d36b2ff46be704d8d7996a5c48bf629e91ca3648229eae0d1e03f7d9407aaad64a1cf0786dcf6b363c5a
+DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
+DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.39.crate 244129 BLAKE2B 2cff6626624d03f70f1662af45a8644c28a9f92e2dfe38999bef3ba4a4c1ce825ae598277e9cb7abd5585eebfb17b239effc8d0bbf1c6ac196499f0d288e5e01 SHA512 96cc347cfdb0f9ca0b6c7289279a1cad8fc401625783742292564f7ceca8237ced8d9a3f62069696f6132ed06092dff2baaf4be09ef53b21260d93785b0e27c3
+DIST tempfile-3.8.1.crate 32164 BLAKE2B abccff7939df8cd223a5a8ee61e5af7c35335f1cd61b3e72fed9a8565465c293e99938d57b50743141aace3cd20422ad5d3090507ed66561cb0155771fe0a5ec SHA512 b257bfb70793575d59ec4cf4b7492aff83dafb68b367a48594211f476a3b1d4800b69bddc405d8749d8b320c30cbe71be1261a60b4bbc862663b37a6c7d97a3a
+DIST terminal_size-0.3.0.crate 10096 BLAKE2B 097ef50a85945128dcfa36d8ea0fb15f11142c206462a32980dbbba4fe2872abd214823fe3c75e804f3159a97d6e929ec338860e9c89587da509fb9e6da5d339 SHA512 f3bc9144aa8a87556543584a2495df6267ce3bb017f3ed3d00fa43e89b5de783e1285ca62dbad9dd9c3b37e3a476a6f3ab0804eba2411cb594a569bbdb310681
+DIST termtree-0.4.1.crate 4557 BLAKE2B d4300b0e6e908c519a0a76f5e08167f4467f428b2926e7739614cef5d3e294dfac15ae8576f7011a852745713c16da93346660ff96520a2bb90a4dd4c23d889c SHA512 ddbe0d3ddd79b182732359f47958ca32aa351d10b1e7d5f6456700b851aa2b5314ce005e1fd120a248b676f219fbd68039cefc071d92c5b5477d053bb6e29062
+DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
+DIST time-0.3.30.crate 120289 BLAKE2B 917b71ea8362ca14f2564706919e7e62ebd3e8024d48ebcd9ac9799368a12f425b982a7739a73c025155d5dd0650ef8c9fd4642c60a9111294cad7ac2e30672c SHA512 268f0c779e2a44431932aa407f39878ff1412e287f9678574537fe7185f12faf7605c5ef433aa6d364bf77894e819ff3953f870ef7ad208b7203f1c58eccc4e5
+DIST time-core-0.1.2.crate 7191 BLAKE2B c477ad3410ff29f3bf4a38fc6ac4a043d49b6d2bdf5cf309ffcd2eec3bb6e4c4b62156ee7f069f0b37ea31c163bc75ccbf35abc1db2833cdd4912135e60ddfc9 SHA512 3861724c23cb806829a01186deb5217ae8252c20af622975264e6670cff528f42155039e4937756a9eb312a5580ffab07949437d5504d684a0e70755046cac52
+DIST time-macros-0.2.15.crate 23568 BLAKE2B ed16207f302e03095e726f0087f9f7c1514cd71b68a17ac804424c526349838171f3bda62d442b8429a89adb084cca1a4117828c3d66d20f2ff8272d7cb2d3a6 SHA512 d6da54996ab99a46b2b2cef83cec62eca2462490db439ba9814502f7d5ecc3018eb266b29453d601677a0ef39797da77a106d407e0e5de3b110ec1c5ae2f3c6b
+DIST typenum-1.17.0.crate 42849 BLAKE2B a6d1162050679e2c4ab2467f3a77d301f6861882eb7c9749f31d047f383dd5bd2ed5846ad63eed99ccc04d6ac36cc697a305861e1d65880b4d2ef04ee0a79b94 SHA512 99773d5d9f850c0602db4bb67dd062b0ade6f086e155216f1bb2fb6569461ba7e1b7c2f2af81ea8833bc3bfcf3fe5033edecb7c438adae63f59d3e30cf63a508
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST unicode-width-0.1.11.crate 19187 BLAKE2B 6baf7f3b32eb838925e591792abfe11968206d177facefb89ef51daf44c18f3fef1e41c19a47b88b81be50667af626af2024ccc540b240fb6e1d83fdea57076f SHA512 ee06f4144525424327a17578642565f396802f0eea539b3bebc8d9627376a8bc6c5376d83a6ee577068e99fe75815bd765e6d49fb9ab9b253d00594bb15a5ffe
+DIST utf8parse-0.2.1.crate 13435 BLAKE2B a1c111d7ffc60690f2aaa86f034c66ba1abe4e126f1774a4377d41eba3269369862f57515af387ea785d69a8adf46338b5e53761b5ee6f4f4380473f4d9cab0a SHA512 51fba8f1e7eb74b7020fd831e30a67fc8353ac2ee07335c8c3374a5570ac8117f165f6905d4b7f0360095b7b5ed3e739001d02a8cc3c89195baf2cd679136050
+DIST uucore-0.0.20.crate 96079 BLAKE2B 55ae44dfceed178614b51d9afa21ed7fb5d26fa66f3b9a8e801119d6cbca7de10055fdb7da7c85bb0603f7d38da4a3fcf6ad9da05f5dc1d4cf89d96dde6d68ec SHA512 ed229bf35ca244a97000f63cd11458feb9e952c2e05e2b61bbcace493042e8761a1343086a0d2613f2039622895d068a5cfb2c2ef61f7063b43d30acf3bdf97b
+DIST uucore_procs-0.0.23.crate 3714 BLAKE2B 24afbbbc60d2517d3cc943c02d5b3bbcd52bf60d8d07066383ae4e9865a2819858ab764a284c5fbc0d14e50c731a6c35b604a0b5b1adb1aca391c952c65dee7b SHA512 41a3bd8539ae3d91310e9264ed56adde959de9318123aae144db5482bddec865e06b26d04ff33f32c5e84862aef9e9a3d4766632fb41ad195422ebb016e87032
+DIST uuhelp_parser-0.0.23.crate 2154 BLAKE2B 5aefd83acb7ee86832ed4b7ea872a8538dfa4e48a40cd3941b815219c2d28ddc27cd4d035eaaaffca3256d569cd6900d53d8d704c806be302d4431a1e4855e33 SHA512 627f13a4dd25d46812c70c04dbe5b6897ca620069db2be71acc6d308a1a95039acb10c15382190f3229a76db23f1409dde53fb24ccff4b1f1ecec7c6f20c09da
+DIST uutils-findutils-0.4.2-update-crates.patch.xz 13176 BLAKE2B 15f9885a24b77e095d310b302c530c9a0688c2c4b0d292fffec02a5c4c13b2d10817c6b227d993d62b2866b9fe85b3c95b1875903578a09efd9a7b3588b99dfe SHA512 b21295de6e66220de7766feef3fe5f7dd5a1a9cc05dd826ab57278c1f0e5bceb97aff98e87a4213fecac71ea80eed009ab9d5b100917e98ca8e4f2f224b5f156
+DIST uutils-findutils-0.4.2.tar.gz 66649 BLAKE2B 68b5313f0d885c864932703c06e7baa39f01f63a864826125488dcbeaba54c384228b89bf1e71726d35c3a4ee9961d14225d3fcc91518276d9a53da96bec8da5 SHA512 4bef3db72985158dd89ff7bd4022e264dff840981d72671b1deafad606b9cbe98d55860c1561c2833475f8021d47fddaac1913bd3c6e93bec76754b935629c7b
+DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc8e1ef4e847648e2de08dece8c4debe92889edeccb8d393645fd0b62436b49d236ded7ad181c4a51239a9539 SHA512 4f1ef59bc2c437e79f1f84fe021bce5aa8ccd581f500f3d5776913d5f17d45b03ccee64f5bd03d47656318cfc9344a1f4311079d471fa409a8e4e94c143973f9
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wait-timeout-0.2.0.crate 12441 BLAKE2B a99d3f57bc6e784ac06167f98b2dc2841f730dfab4fb9772b15e67707f756d6ba7daeb3e992d32291bed3daa85eaa8a8ddde64db5e1acf1cc4031fc9bdc82212 SHA512 db3b7aa2acfd44e64451042b8ba98eecab77a82aa5c58ed08dadb119ab36dee4e26d62baad7978ed56d5ad03019c96be5021455362290f56043981137bac8066
+DIST walkdir-2.4.0.crate 23550 BLAKE2B b4298c01cb38be0479b7ddfee627af01f889b6b6ff432e368bb67f65134c3958a4fe271a5a7dd61b19259ae88f5680e5ce8e12e50a872b05fcba68f59b7073ec SHA512 09e1bc852c01b452c95b26a369831a97bc5c9e0ada3111c73774570dd73bb5b9e4735317d5572304fb48dca44ce7b9f77bbd17c418b6b047b2ab17b8bb42d9d9
+DIST wasm-bindgen-0.2.88.crate 181311 BLAKE2B 94be99405e6f8d821aabed65928d03b3f5c7062afb923cac6088e56272fce4b928a03ca693b9e3bc2c7ac5b61052a3b2c1b9f75400c95814f29504c0f255f2e7 SHA512 21c50fa3ba6947e53fb56a57850350b9f5ef11d7281e015bbd564fa07a702b9e58b9ccd22bc6d870092e73ae51a9350f4c7f5a019b279f1cae2fb85a1f4ce80b
+DIST wasm-bindgen-backend-0.2.88.crate 28181 BLAKE2B 791e6bdc0702631dbb959e788db0f6dc2675f48c6d9e15f1362f153dd32a6df85b598a8a415143626dacdc17c2d447d0147c885f373ee6e0503446d96af243ce SHA512 717a62c8ed07adb29cbdbb1edf6f47d47eef2ad6fd9ad1264b09189d785bf525a6f09d1cf362d6a337d5be0a2ae8614e30843a33da73c2d22b6d233b76fabab4
+DIST wasm-bindgen-macro-0.2.88.crate 13908 BLAKE2B 49baa77009d60e05464d438a97bf4c72a5357f79a2995b88bd2a9c73823b01940b23d90b9b0d7e01bcf3c1c31988b015ba029df09aa1595bcf560000fededc33 SHA512 df45cac130bf787d08640045839d8e9fb1b10720c0e7def84862fc6f6f8df1a3c775870570c210279488eeb1700dcb6b778ee22fd23e5a2ae5572603c2fa3d1b
+DIST wasm-bindgen-macro-support-0.2.88.crate 20008 BLAKE2B ce90104bb631d00c4a1c0e056c688c6b88f95d9a4d58d474185313c5b38d0b81a660bc4c6684d8b70215140fe6eafd90fe9448e56154ded423616449ec30c750 SHA512 46aa40e5bd55f8ed3a576b1973c6ba7743675f20623397421fdd56b1f5d43159f7e7b3ce4acec0fe5b04a6fba8cf7744cb041e98844b0bc9e6542b06671076c2
+DIST wasm-bindgen-shared-0.2.88.crate 7264 BLAKE2B d1934b4af13257b9be90a26d90e0a13927efd4ff794ac1e90cba4133bab58f4941045e17e2b240489bfbf6e35107ffd5c7cfc4c9c37f2112d4a7ad78fec435db SHA512 eaffae8a98a1b6bbb186fc5f6535654171c19a763bc9ac2a79758e5ad2710537ca4de92228b99c7186322f94205f9623155f20d039fcc2d56452340c3bb9330b
+DIST which-4.4.2.crate 15953 BLAKE2B 40ca22cd2f625cb035a1d919ed457a300b482c7751dcee4441974c53d56ce13f1f502535e1f7c0746a01981f4de2e2f761c3a255902d6353db1a4c3c62637448 SHA512 2d12aa1d4c2dbc140e39c8f15bd4ee1eeb8e8de71bcdf579479ef4be860fb0839eaf4cdb818addba242d50420f6e08acaf2bfc979a889e092c83644819246fd5
+DIST wild-2.2.0.crate 8067 BLAKE2B 628902dd8c2d252397bb0677b59295f37ab088df79cbc92c32d3a17023535d9c192b49bffe23c74a49145e0e3c57cbb84c0db7d41923adc204b291d19d9f3272 SHA512 12a3484f372b5979715d56afdadc6d9b152ee75c1961fd0352f5cfb500691b526d4fc32bee32af7548cb7e6bb20288a5eae710a473bde9d2065fcbfc3f8de851
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.6.crate 12234 BLAKE2B b8db8ec9d7ada5532a22a2d070320174c32ece1f48890e9b028708e194fe72a04287b11910dc2ddc7f9c9674a9d8d39449b3e100725e1f59e59e3047a7e3650b SHA512 b1c949f9bcd34c1949a9d3a7bde6ce62fcf3d2cb66df60af41fe67a9d1acb24e571cdd5ac721be9f1ee4b3af5ef5149b5724ad6e02b558e124ef2a4412d12db9
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-core-0.51.1.crate 42364 BLAKE2B 0227e8cc033f40b644879ce4a86f17b9552076378eb6cc6c8cedaa15602ef3ce0deb1ca48c6a7b4276af2bc2e0434e76193649051d7a2f78695f60400d00ccff SHA512 90615ed84f11fdfe0725a4a8b112e45f93ae6cb7e65c16636f85217369fd8b708553ae5bd28aff66e18b180ffa3c0f6820a94022fc5eb202b4f8358f8926fde6
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
diff --git a/sys-apps/uutils-findutils/metadata.xml b/sys-apps/uutils-findutils/metadata.xml
new file mode 100644
index 000000000000..a43d82b40516
--- /dev/null
+++ b/sys-apps/uutils-findutils/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lu_zero@gentoo.org</email>
+ <name>Luca Barbato</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">uutils/findutils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/uutils-findutils/uutils-findutils-0.4.2-r1.ebuild b/sys-apps/uutils-findutils/uutils-findutils-0.4.2-r1.ebuild
new file mode 100644
index 000000000000..c31dd891b770
--- /dev/null
+++ b/sys-apps/uutils-findutils/uutils-findutils-0.4.2-r1.ebuild
@@ -0,0 +1,246 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.6.2
+
+EAPI=8
+
+CRATES="
+ aho-corasick@1.1.2
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ ansi_term@0.12.1
+ anstream@0.6.4
+ anstyle-parse@0.2.2
+ anstyle-query@1.0.0
+ anstyle-wincon@3.0.1
+ anstyle@1.0.4
+ arrayref@0.3.7
+ arrayvec@0.7.4
+ assert_cmd@2.0.12
+ atty@0.2.14
+ autocfg@1.1.0
+ bindgen@0.64.0
+ bitflags@1.3.2
+ bitflags@2.4.1
+ blake2b_simd@1.0.2
+ blake3@1.5.0
+ block-buffer@0.10.4
+ bstr@1.8.0
+ bumpalo@3.14.0
+ cc@1.0.83
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ chrono@0.4.31
+ clang-sys@1.6.1
+ clap@2.34.0
+ clap@4.4.8
+ clap_builder@4.4.8
+ clap_lex@0.6.0
+ colorchoice@1.0.0
+ constant_time_eq@0.3.0
+ core-foundation-sys@0.8.4
+ cpufeatures@0.2.11
+ crypto-common@0.1.6
+ dashmap@5.5.3
+ deranged@0.3.9
+ difflib@0.4.0
+ digest@0.10.7
+ doc-comment@0.3.3
+ dunce@1.0.4
+ either@1.9.0
+ errno@0.3.7
+ faccess@0.2.4
+ fastrand@2.0.1
+ filetime@0.2.22
+ float-cmp@0.9.0
+ futures-channel@0.3.29
+ futures-core@0.3.29
+ futures-executor@0.3.29
+ futures-io@0.3.29
+ futures-sink@0.3.29
+ futures-task@0.3.29
+ futures-util@0.3.29
+ futures@0.3.29
+ generic-array@0.14.7
+ glob@0.3.1
+ hashbrown@0.14.2
+ hermit-abi@0.1.19
+ hex@0.4.3
+ home@0.5.5
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.58
+ itertools@0.11.0
+ itoa@1.0.9
+ js-sys@0.3.65
+ keccak@0.1.4
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ libc@0.2.150
+ libloading@0.7.4
+ linux-raw-sys@0.4.11
+ lock_api@0.4.11
+ log@0.4.20
+ md-5@0.10.6
+ memchr@2.6.4
+ memoffset@0.7.1
+ minimal-lexical@0.2.1
+ nix@0.26.4
+ nom@7.1.3
+ normalize-line-endings@0.3.0
+ num-traits@0.2.17
+ num_threads@0.1.6
+ once_cell@1.18.0
+ os_display@0.1.3
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ peeking_take_while@0.1.2
+ pin-project-lite@0.2.13
+ pin-utils@0.1.0
+ pkg-config@0.3.27
+ powerfmt@0.2.0
+ predicates-core@1.0.6
+ predicates-tree@1.0.9
+ predicates@3.0.4
+ proc-macro2@1.0.69
+ quote@1.0.33
+ redox_syscall@0.3.5
+ redox_syscall@0.4.1
+ regex-automata@0.4.3
+ regex-syntax@0.8.2
+ regex@1.10.2
+ rustc-hash@1.1.0
+ rustix@0.38.25
+ same-file@1.0.6
+ scopeguard@1.2.0
+ serde@1.0.193
+ serde_derive@1.0.193
+ serial_test@2.0.0
+ serial_test_derive@2.0.0
+ sha1@0.10.6
+ sha2@0.10.8
+ sha3@0.10.8
+ shlex@1.2.0
+ slab@0.4.9
+ sm3@0.4.2
+ smallvec@1.11.2
+ strsim@0.10.0
+ strsim@0.8.0
+ syn@1.0.109
+ syn@2.0.39
+ tempfile@3.8.1
+ terminal_size@0.3.0
+ termtree@0.4.1
+ textwrap@0.11.0
+ time-core@0.1.2
+ time-macros@0.2.15
+ time@0.3.30
+ typenum@1.17.0
+ unicode-ident@1.0.12
+ unicode-width@0.1.11
+ utf8parse@0.2.1
+ uucore@0.0.20
+ uucore_procs@0.0.23
+ uuhelp_parser@0.0.23
+ vec_map@0.8.2
+ version_check@0.9.4
+ wait-timeout@0.2.0
+ walkdir@2.4.0
+ wasm-bindgen-backend@0.2.88
+ wasm-bindgen-macro-support@0.2.88
+ wasm-bindgen-macro@0.2.88
+ wasm-bindgen-shared@0.2.88
+ wasm-bindgen@0.2.88
+ which@4.4.2
+ wild@2.2.0
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.6
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-core@0.51.1
+ windows-sys@0.48.0
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+"
+
+# Building onig-sys fails w/ Clang 16 right now, so use the version from git:
+# https://github.com/rust-onig/rust-onig/issues/173
+declare -A GIT_CRATES=(
+ [onig]="https://github.com/rust-onig/rust-onig;fa90c0e97e90a056af89f183b23cd417b59ee6a2;rust-onig-%commit%/onig"
+ [onig_sys]="https://github.com/rust-onig/rust-onig;fa90c0e97e90a056af89f183b23cd417b59ee6a2;rust-onig-%commit%/onig_sys"
+)
+
+LLVM_MAX_SLOT=17
+inherit cargo llvm
+
+DESCRIPTION="GNU findutils rewritten in Rust"
+HOMEPAGE="https://uutils.github.io/findutils/ https://github.com/uutils/findutils"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/uutils/findutils"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ FINDUTILS_COMMIT="59301c788aa610bd9b35d8715af72d87528d07dc"
+ SRC_URI="https://github.com/uutils/findutils/archive/${FINDUTILS_COMMIT}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/findutils-${FINDUTILS_COMMIT}
+else
+ SRC_URI="https://github.com/uutils/findutils/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.4.2-update-crates.patch.xz"
+ S="${WORKDIR}"/findutils-${PV}
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD ISC MIT Unicode-DFS-2016"
+SLOT="0"
+if [[ ${PV} != 9999 ]] ; then
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+RDEPEND=">=dev-libs/oniguruma-6.9.9:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+ <sys-devel/clang-$((LLVM_MAX_SLOT + 1))
+ >=virtual/rust-1.56.0
+"
+
+QA_FLAGS_IGNORED=".*"
+
+PATCHES=(
+ "${WORKDIR}"/${PN}-0.4.2-update-crates.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_configure() {
+ export RUSTONIG_SYSTEM_LIBONIG=1
+ export PKG_CONFIG_ALLOW_CROSS=1
+
+ cargo_src_configure
+}
+
+src_install() {
+ cargo_src_install
+
+ rm "${ED}"/usr/bin/testing-commandline || die
+
+ local binary
+ for binary in find xargs ; do
+ mv "${ED}"/usr/bin/${binary} "${ED}"/usr/bin/uutils-${binary} || die
+ done
+}
diff --git a/sys-apps/uutils-findutils/uutils-findutils-9999.ebuild b/sys-apps/uutils-findutils/uutils-findutils-9999.ebuild
new file mode 100644
index 000000000000..6bc84bd5222f
--- /dev/null
+++ b/sys-apps/uutils-findutils/uutils-findutils-9999.ebuild
@@ -0,0 +1,255 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.6.2
+
+EAPI=8
+
+CRATES="
+ aho-corasick@0.7.18
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ ansi_term@0.12.1
+ anstream@0.3.2
+ anstyle-parse@0.2.1
+ anstyle-query@1.0.0
+ anstyle-wincon@1.0.1
+ anstyle@1.0.0
+ arrayref@0.3.7
+ arrayvec@0.7.4
+ assert_cmd@2.0.11
+ atty@0.2.14
+ autocfg@1.1.0
+ bindgen@0.59.2
+ bitflags@1.3.2
+ bitflags@2.3.3
+ blake2b_simd@1.0.1
+ blake3@1.4.1
+ block-buffer@0.10.4
+ bstr@1.0.1
+ bumpalo@3.12.0
+ byteorder@1.4.2
+ cc@1.0.72
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ chrono@0.4.26
+ clang-sys@1.3.0
+ clap@2.34.0
+ clap@4.3.19
+ clap_builder@4.3.19
+ clap_lex@0.5.0
+ colorchoice@1.0.0
+ constant_time_eq@0.2.6
+ constant_time_eq@0.3.0
+ core-foundation-sys@0.8.3
+ cpufeatures@0.2.9
+ crypto-common@0.1.6
+ dashmap@5.3.4
+ difflib@0.4.0
+ digest@0.10.7
+ doc-comment@0.3.3
+ dunce@1.0.4
+ either@1.6.1
+ env_logger@0.9.0
+ errno-dragonfly@0.1.2
+ errno@0.3.1
+ faccess@0.2.4
+ fastrand@1.7.0
+ filetime@0.2.21
+ float-cmp@0.9.0
+ futures-channel@0.3.21
+ futures-core@0.3.21
+ futures-executor@0.3.21
+ futures-io@0.3.21
+ futures-sink@0.3.21
+ futures-task@0.3.21
+ futures-util@0.3.21
+ futures@0.3.21
+ generic-array@0.14.7
+ glob@0.3.1
+ hashbrown@0.12.3
+ hermit-abi@0.1.19
+ hermit-abi@0.3.1
+ hex@0.4.3
+ humantime@2.1.0
+ iana-time-zone@0.1.47
+ instant@0.1.9
+ io-lifetimes@1.0.11
+ is-terminal@0.4.9
+ itertools@0.10.1
+ itoa@1.0.9
+ js-sys@0.3.59
+ keccak@0.1.4
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ libc@0.2.147
+ libloading@0.7.2
+ linux-raw-sys@0.3.8
+ linux-raw-sys@0.4.3
+ lock_api@0.4.7
+ log@0.4.14
+ md-5@0.10.5
+ memchr@2.4.0
+ memoffset@0.7.1
+ minimal-lexical@0.2.1
+ nix@0.26.2
+ nom@7.1.1
+ normalize-line-endings@0.3.0
+ num-traits@0.2.14
+ num_threads@0.1.6
+ once_cell@1.18.0
+ onig@6.4.0
+ onig_sys@69.8.1
+ os_display@0.1.3
+ parking_lot@0.12.1
+ parking_lot_core@0.9.3
+ peeking_take_while@0.1.2
+ pin-project-lite@0.2.9
+ pin-utils@0.1.0
+ pkg-config@0.3.24
+ predicates-core@1.0.6
+ predicates-tree@1.0.1
+ predicates@3.0.3
+ proc-macro2@1.0.60
+ quote@1.0.28
+ redox_syscall@0.2.10
+ redox_syscall@0.3.5
+ regex-automata@0.1.9
+ regex-syntax@0.6.29
+ regex@1.7.3
+ rustc-hash@1.1.0
+ rustix@0.37.20
+ rustix@0.38.4
+ same-file@1.0.4
+ scopeguard@1.1.0
+ serde@1.0.147
+ serial_test@2.0.0
+ serial_test_derive@2.0.0
+ sha1@0.10.5
+ sha2@0.10.7
+ sha3@0.10.8
+ shlex@1.1.0
+ slab@0.4.6
+ sm3@0.4.2
+ smallvec@1.8.0
+ static_assertions@1.1.0
+ strsim@0.10.0
+ strsim@0.8.0
+ subtle@2.5.0
+ syn@1.0.94
+ syn@2.0.18
+ tempfile@3.6.0
+ termcolor@1.0.5
+ terminal_size@0.2.6
+ textwrap@0.11.0
+ time-core@0.1.1
+ time-macros@0.2.10
+ time@0.1.43
+ time@0.3.23
+ treeline@0.1.0
+ typenum@1.16.0
+ unicode-ident@1.0.9
+ unicode-width@0.1.9
+ unicode-xid@0.2.1
+ utf8parse@0.2.1
+ uucore@0.0.20
+ uucore_procs@0.0.20
+ uuhelp_parser@0.0.20
+ vec_map@0.8.2
+ version_check@0.9.4
+ wait-timeout@0.2.0
+ walkdir@2.3.3
+ wasm-bindgen-backend@0.2.82
+ wasm-bindgen-macro-support@0.2.82
+ wasm-bindgen-macro@0.2.82
+ wasm-bindgen-shared@0.2.82
+ wasm-bindgen@0.2.82
+ which@4.2.5
+ wild@2.1.0
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ wincolor@1.0.3
+ windows-sys@0.36.1
+ windows-sys@0.48.0
+ windows-targets@0.48.0
+ windows_aarch64_gnullvm@0.48.0
+ windows_aarch64_msvc@0.36.1
+ windows_aarch64_msvc@0.48.0
+ windows_i686_gnu@0.36.1
+ windows_i686_gnu@0.48.0
+ windows_i686_msvc@0.36.1
+ windows_i686_msvc@0.48.0
+ windows_x86_64_gnu@0.36.1
+ windows_x86_64_gnu@0.48.0
+ windows_x86_64_gnullvm@0.48.0
+ windows_x86_64_msvc@0.36.1
+ windows_x86_64_msvc@0.48.0
+"
+
+LLVM_MAX_SLOT=15
+inherit cargo llvm
+
+DESCRIPTION="GNU findutils rewritten in Rust"
+HOMEPAGE="https://uutils.github.io/findutils/ https://github.com/uutils/findutils"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/uutils/findutils"
+ inherit git-r3
+elif [[ ${PV} == *_p* ]] ; then
+ FINDUTILS_COMMIT="59301c788aa610bd9b35d8715af72d87528d07dc"
+ SRC_URI="https://github.com/uutils/findutils/archive/${FINDUTILS_COMMIT}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/findutils-${FINDUTILS_COMMIT}
+else
+ SRC_URI="https://github.com/uutils/findutils/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" ${CARGO_CRATE_URIS}"
+ S="${WORKDIR}"/findutils-${PV}
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD-2 BSD ISC MIT Unicode-DFS-2016"
+SLOT="0"
+if [[ ${PV} != 9999 ]] ; then
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+# Building onig-sys fails w/ Clang 16 right now
+# https://github.com/rust-onig/rust-onig/issues/173
+RDEPEND="dev-libs/oniguruma:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+ <sys-devel/clang-$((LLVM_MAX_SLOT + 1))
+ >=virtual/rust-1.56.0
+"
+
+QA_FLAGS_IGNORED=".*"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_configure() {
+ export RUSTONIG_SYSTEM_LIBONIG=1
+ export PKG_CONFIG_ALLOW_CROSS=1
+
+ cargo_src_configure
+}
+
+src_install() {
+ cargo_src_install
+
+ rm "${ED}"/usr/bin/testing-commandline || die
+
+ local binary
+ for binary in find xargs ; do
+ mv "${ED}"/usr/bin/${binary} "${ED}"/usr/bin/uutils-${binary} || die
+ done
+}
diff --git a/sys-apps/vbetool/Manifest b/sys-apps/vbetool/Manifest
index 4a22534a6505..fa7e83143dd4 100644
--- a/sys-apps/vbetool/Manifest
+++ b/sys-apps/vbetool/Manifest
@@ -1 +1 @@
-DIST vbetool-1.1.tar.gz 182826 BLAKE2B 6b30eb468e55bedd766161e373e042b5fdf38fd2926bfc8aeb94404350864e835d41642f19be155fcf9a8fbfdc8b4e237e742cabd00626db5e8d17e7c7c5cf6f SHA512 09d8713516f074fe8e901ab3e24aba7e8b9ddf459b3ee3394b7604e4489a70a27c6dc3604cf1284c49233dba908f00da746c583562af2bc93b6df8ff413efd96
+DIST vbetool-1.2.2.tar.xz 22032 BLAKE2B 0ab3263d347ad382c73265e08bb2d81468e1066212a282eee972f1e806a8cef94a0194878a8f2a113d3c139a58b9b18a8e3e6153ce868803bd74c3724e61d9d2 SHA512 658028e6fd1e1218c08a55de75009b6256f46dd22e259a5ab605d4686baf909688997882ba98ee7bee9b26b0dd334a38ddd7e63d8884626f8c3e0cedf87c4dea
diff --git a/sys-apps/vbetool/files/vbetool-1.0-build.patch b/sys-apps/vbetool/files/vbetool-1.0-build.patch
deleted file mode 100644
index 69d2f7b341ba..000000000000
--- a/sys-apps/vbetool/files/vbetool-1.0-build.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: vbetool-1.0/Makefile.am
-===================================================================
---- vbetool-1.0.orig/Makefile.am
-+++ vbetool-1.0/Makefile.am
-@@ -2,7 +2,7 @@ AUTOMAKE_OPTIONS = foreign
-
- sbin_PROGRAMS = vbetool
-
--vbetool_LDADD = $(libdir)/libpci.a
-+vbetool_LDADD = -lpci -lz -lx86
-
- man_MANS = vbetool.1
- vbetool_SOURCES = vbetool.c $(x86)
-@@ -14,4 +14,3 @@ maintainer-clean-local:
- $(RM) Makefile.in aclocal.m4 config.h.in stamp-h.in configure
-
- AM_CFLAGS = -g -Wall -pedantic -std=gnu99
--AM_LDFLAGS = -lz -lx86
diff --git a/sys-apps/vbetool/files/vbetool-1.2.2-libx86.patch b/sys-apps/vbetool/files/vbetool-1.2.2-libx86.patch
new file mode 100644
index 000000000000..f3f4c36d0219
--- /dev/null
+++ b/sys-apps/vbetool/files/vbetool-1.2.2-libx86.patch
@@ -0,0 +1,7 @@
+Gentoo's libx86 package does not have a .pc file (adds -lx86 either way).
+--- a/configure.ac
++++ b/configure.ac
+@@ -38,3 +38,2 @@
+ # Checks for pkg-config packages
+-PKG_CHECK_MODULES(LIBX86, x86)
+
diff --git a/sys-apps/vbetool/metadata.xml b/sys-apps/vbetool/metadata.xml
index 79d462e85571..aaab041e8885 100644
--- a/sys-apps/vbetool/metadata.xml
+++ b/sys-apps/vbetool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/sys-apps/vbetool/vbetool-1.1.ebuild b/sys-apps/vbetool/vbetool-1.1.ebuild
deleted file mode 100644
index 6001b998a371..000000000000
--- a/sys-apps/vbetool/vbetool-1.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="Run real-mode video BIOS code to alter hw state (i.e. reinitialize video card)"
-HOMEPAGE="http://www.codon.org.uk/~mjg59/vbetool/"
-SRC_URI="http://www.codon.org.uk/~mjg59/vbetool/download/vbetool-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- sys-libs/zlib
- sys-apps/pciutils
- >=dev-libs/libx86-1.1-r1"
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}"/${PN}-1.0-build.patch )
-
-src_prepare() {
- default
-
- eaclocal # temp fix for #439614
- eautoreconf
-}
-
-src_configure() {
- econf --with-x86emu
-}
diff --git a/sys-apps/vbetool/vbetool-1.2.2.ebuild b/sys-apps/vbetool/vbetool-1.2.2.ebuild
new file mode 100644
index 000000000000..ecd6b7b6c7c1
--- /dev/null
+++ b/sys-apps/vbetool/vbetool-1.2.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Run real-mode video BIOS code to alter hw state (i.e. reinitialize video card)"
+HOMEPAGE="https://cgit.freedesktop.org/~airlied/vbetool/"
+SRC_URI="https://dev.gentoo.org/~ionen/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="selinux"
+
+DEPEND="
+ dev-libs/libx86
+ sys-libs/zlib:=
+ x11-libs/libpciaccess
+"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-vbetool )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-libx86.patch
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
diff --git a/sys-apps/watchdog/Manifest b/sys-apps/watchdog/Manifest
index 644169d7c3a1..9da68e1e0985 100644
--- a/sys-apps/watchdog/Manifest
+++ b/sys-apps/watchdog/Manifest
@@ -1,2 +1 @@
-DIST watchdog-5.15.tar.gz 228132 BLAKE2B 040badcf66f048e2873c335a4dd1b5dad6716c61534322c0c92dad2238049555af40e92612a260507fddd4c284d7ccb5d362dc1660084fd0a7db2c522b1ea323 SHA512 a675cfadf3296d583b9163193297038fb19459daf7c6681289392d613e775e75b7afd42a3e01b136a955f25b2f45818033b56e10de9050075d7dc015535a6e75
DIST watchdog-5.16.tar.gz 203910 BLAKE2B 517f2f8085829e5c5ff576f1dff920a2667d0e96a71dcbcebf381ccf349e95dfb0b7b598b565eda4cc8ec31f5f34e367dd719eeaf522cdee074c3bc23589dfb2 SHA512 1c9c921570ec7ddc3e4ff88b2029f1c3865277e547fb8970575df4b61fdf1f06f443f49ad09f11c29d913ca7d6ab05c5b19ec049ac218a8bcebd20b1bf5f0bbd
diff --git a/sys-apps/watchdog/files/watchdog-5.15-musl-nfs.patch b/sys-apps/watchdog/files/watchdog-5.15-musl-nfs.patch
deleted file mode 100644
index bee4ddc8d7bc..000000000000
--- a/sys-apps/watchdog/files/watchdog-5.15-musl-nfs.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-commit f52c40680f0aad44b9ae16648803453ec00cbb2c
-Author: Paul Crawford <psc@sat.dundee.ac.uk>
-Date: Fri Dec 30 15:55:45 2016 +0000
-
- Compile with musl when nfs is disabled
-
- musl does by default not ship with rpc headers. The watchdog should
- not require rpc headers when nfs support is disabled.
-
- Patch by Felix Janda <fjanda@users.sf.net>
-
-diff --git a/include/sundries.h b/include/sundries.h
-index 4379982..98c489a 100644
---- a/include/sundries.h
-+++ b/include/sundries.h
-@@ -9,9 +9,11 @@
- #include <signal.h>
- #include <stdarg.h>
- #include <stdlib.h>
-+#if HAVE_NFS
- #if !defined(bool_t) && !defined(__GLIBC__)
- #include <rpc/types.h>
- #endif
-+#endif
-
- extern int mount_mount_quiet;
- extern int mount_verbose;
diff --git a/sys-apps/watchdog/files/watchdog-5.15-musl.patch b/sys-apps/watchdog/files/watchdog-5.15-musl.patch
deleted file mode 100644
index ae62c8014e5b..000000000000
--- a/sys-apps/watchdog/files/watchdog-5.15-musl.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-commit c5cb4e1a0339844ae3f55ff1dc4a716c28012f05
-Author: Paul Crawford <psc@sat.dundee.ac.uk>
-Date: Tue Jun 28 18:08:48 2016 +0100
-
- Include linux/param.h for EXEC_PAGESIZE definition
-
- Musl does not include linux/param.h whereas glibc does, so it fails
- to build on musl. Patch supplied by Khem Raj <raj.khem@gmail.com>
-
-diff --git a/src/watchdog.c b/src/watchdog.c
-index acf6450..486384a 100644
---- a/src/watchdog.c
-+++ b/src/watchdog.c
-@@ -26,6 +26,9 @@
- #include <sys/param.h> /* For EXEC_PAGESIZE */
- #include <linux/oom.h>
- #include <linux/watchdog.h>
-+#ifdef __linux__
-+#include <linux/param.h>
-+#endif
- #include <string.h>
-
- #include <libgen.h>
diff --git a/sys-apps/watchdog/files/watchdog-5.16-implicit-func-decls-musl.patch b/sys-apps/watchdog/files/watchdog-5.16-implicit-func-decls-musl.patch
new file mode 100644
index 000000000000..82f41ed63420
--- /dev/null
+++ b/sys-apps/watchdog/files/watchdog-5.16-implicit-func-decls-musl.patch
@@ -0,0 +1,30 @@
+https://cgit.openembedded.org/openembedded-core/plain/meta/recipes-extended/watchdog/watchdog/0001-shutdown-Do-not-guard-sys-quota.h-sys-swap.h-and-sys.patch?id=a53722b962e79e0831c0fba24ef7c1cfda24971a
+
+From ca1d379fa13c4055d42d2ff3a647b4397768efcd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 23 Aug 2022 19:23:26 -0700
+Subject: [PATCH] shutdown: Do not guard sys/quota.h sys/swap.h and
+ sys/reboot.h with __GLIBC__
+
+These headers are provided by uclibc/musl/glibc and bionic so we can
+assume they are not needed to be glibc specific includes. This also
+ensures that we get proper declaration of reboot() API
+
+Upstream-Status: Submitted [https://sourceforge.net/p/watchdog/patches/12/]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/shutdown.c
++++ b/src/shutdown.c
+@@ -29,13 +29,9 @@
+ #include "extern.h"
+ #include "ext2_mnt.h"
+
+-#if defined __GLIBC__
+ #include <sys/quota.h>
+ #include <sys/swap.h>
+ #include <sys/reboot.h>
+-#else /* __GLIBC__ */
+-#include <linux/quota.h>
+-#endif /* __GLIBC__ */
+
+ #include <unistd.h>
+
diff --git a/sys-apps/watchdog/files/watchdog-init.d b/sys-apps/watchdog/files/watchdog-init.d
deleted file mode 100644
index 734a02cdbcbe..000000000000
--- a/sys-apps/watchdog/files/watchdog-init.d
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-depend() {
- need localmount
- use logger
-}
-
-get_config() {
- set -- ${WATCHDOG_OPTS}
- while [ -n "$1" ] ; do
- if [ "$1" = "-c" -o "$1" = "--config-file" ] ; then
- echo $2
- return
- fi
- shift
- done
- echo /etc/watchdog.conf
-}
-
-get_delay() {
- # man this is fugly
- sed -n \
- -e '1{x;s:.*:10:;x}' \
- -e 's:#.*::' \
- -e 's:^[[:space:]]*::' \
- -e '/^interval/{s:.*=::;h}' \
- -e '${g;p}' \
- $(get_config)
-}
-
-start() {
- ebegin "Starting watchdog"
- start-stop-daemon --start \
- --exec /usr/sbin/watchdog --pidfile /var/run/watchdog.pid \
- -- ${WATCHDOG_OPTS}
- eend $?
-}
-
-stop() {
- ebegin "Stopping watchdog"
- start-stop-daemon --stop \
- --exec /usr/sbin/watchdog --pidfile /var/run/watchdog.pid \
- --retry $(get_delay)
- eend $?
-}
diff --git a/sys-apps/watchdog/metadata.xml b/sys-apps/watchdog/metadata.xml
index 36ad6a68bd69..1f74c9cd237a 100644
--- a/sys-apps/watchdog/metadata.xml
+++ b/sys-apps/watchdog/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/watchdog/watchdog-5.15.ebuild b/sys-apps/watchdog/watchdog-5.15.ebuild
deleted file mode 100644
index 889279958581..000000000000
--- a/sys-apps/watchdog/watchdog-5.15.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic systemd toolchain-funcs
-
-DESCRIPTION="A software watchdog and /dev/watchdog daemon"
-HOMEPAGE="https://sourceforge.net/projects/watchdog/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sparc x86"
-IUSE="nfs"
-
-RDEPEND="nfs? ( net-libs/libtirpc )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${P}-musl.patch
- "${FILESDIR}"/${P}-musl-nfs.patch
-)
-
-src_configure() {
- if use nfs; then
- append-cppflags "$($(tc-getPKG_CONFIG) libtirpc --cflags)"
- append-libs "$($(tc-getPKG_CONFIG) libtirpc --libs)"
- fi
- econf $(use_enable nfs)
-}
-
-src_install() {
- default
- dodoc -r examples
-
- newconfd "${FILESDIR}"/${PN}-conf.d ${PN}
- newinitd "${FILESDIR}"/${PN}-init.d-r1 ${PN}
- systemd_dounit "${FILESDIR}"/watchdog.service
-}
diff --git a/sys-apps/watchdog/watchdog-5.16-r1.ebuild b/sys-apps/watchdog/watchdog-5.16-r1.ebuild
new file mode 100644
index 000000000000..8b95e45fda2a
--- /dev/null
+++ b/sys-apps/watchdog/watchdog-5.16-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd toolchain-funcs
+
+DESCRIPTION="A software watchdog and /dev/watchdog daemon"
+HOMEPAGE="https://sourceforge.net/projects/watchdog/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+IUSE="nfs selinux"
+
+DEPEND="nfs? ( net-libs/libtirpc )"
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-watchdog )
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.16-implicit-func-decls-musl.patch
+)
+
+src_configure() {
+ if use nfs; then
+ append-cppflags "$($(tc-getPKG_CONFIG) libtirpc --cflags)"
+ append-libs "$($(tc-getPKG_CONFIG) libtirpc --libs)"
+ fi
+ econf $(use_enable nfs)
+}
+
+src_install() {
+ default
+ dodoc -r examples
+
+ newconfd "${FILESDIR}"/${PN}-conf.d ${PN}
+ newinitd "${FILESDIR}"/${PN}-init.d-r1 ${PN}
+ systemd_dounit "${FILESDIR}"/watchdog.service
+}
diff --git a/sys-apps/watchdog/watchdog-5.16.ebuild b/sys-apps/watchdog/watchdog-5.16.ebuild
index a9e42800d859..9ae30c929351 100644
--- a/sys-apps/watchdog/watchdog-5.16.ebuild
+++ b/sys-apps/watchdog/watchdog-5.16.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="nfs"
RDEPEND="nfs? ( net-libs/libtirpc )"
diff --git a/sys-apps/which/metadata.xml b/sys-apps/which/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/which/metadata.xml
+++ b/sys-apps/which/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/which/which-2.21.ebuild b/sys-apps/which/which-2.21.ebuild
index d01775b46148..ac1063a9c6f4 100644
--- a/sys-apps/which/which-2.21.ebuild
+++ b/sys-apps/which/which-2.21.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit flag-o-matic toolchain-funcs
@@ -11,8 +11,7 @@ SRC_URI="https://carlowood.github.io/which/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
src_configure() {
append-lfs-flags
diff --git a/sys-apps/x86info/Manifest b/sys-apps/x86info/Manifest
index 109f35371edd..bd93e4b2230f 100644
--- a/sys-apps/x86info/Manifest
+++ b/sys-apps/x86info/Manifest
@@ -1 +1,2 @@
DIST x86info-1.30_p20190617.tar.gz 85913 BLAKE2B e19e5fd797617499c64e75522f0fd030beaa335a6ba9afd29cbb79fd67313a2e57236d1ad8817bf91f0131faf667ba88ac0945ff25301ba8806912979f094ea3 SHA512 352e2b00578dc54b8d5ee32f09f327ab6a23e6ab4743882ca78a5a5ec1a04ceed8780228ffbda34f84ebb02c7cb850002a686929726feac90c8083044f479bd6
+DIST x86info-1.31.tar.gz 85913 BLAKE2B e19e5fd797617499c64e75522f0fd030beaa335a6ba9afd29cbb79fd67313a2e57236d1ad8817bf91f0131faf667ba88ac0945ff25301ba8806912979f094ea3 SHA512 352e2b00578dc54b8d5ee32f09f327ab6a23e6ab4743882ca78a5a5ec1a04ceed8780228ffbda34f84ebb02c7cb850002a686929726feac90c8083044f479bd6
diff --git a/sys-apps/x86info/files/x86info-1.30-makefile.patch b/sys-apps/x86info/files/x86info-1.30-makefile.patch
index 9e1768d68958..67d3a9dca421 100644
--- a/sys-apps/x86info/files/x86info-1.30-makefile.patch
+++ b/sys-apps/x86info/files/x86info-1.30-makefile.patch
@@ -1,27 +1,17 @@
---- a/lsmsr/Makefile
-+++ b/lsmsr/Makefile
-@@ -40,7 +40,8 @@
- generic_msr.h
-
- %.h: %.regs createheader.py
-- @python createheader.py $< `basename $< .regs` >$@
-+ $(PYTHON) createheader.py $< `basename $< .regs` >$@.tmp ; \
-+ mv $@.tmp $@
-
- LSMSR_SRC = \
- lsmsr.c \
--- a/Makefile
+++ b/Makefile
-@@ -2,7 +2,7 @@
+@@ -1,8 +1,8 @@
+ VERSION=$(shell date +%Y-%m-%d)
- CFLAGS = -DVERSION="$(VERSION)"
+-CFLAGS = -DVERSION="$(VERSION)"
++CFLAGS += -DVERSION="$(VERSION)"
-CFLAGS += -Wall -W -g -O2 -D_FORTIFY_SOURCE=2 -I. -Iinclude
-+CFLAGS += -Wall -W -I. -Iinclude
++CFLAGS += -Wall -W -I. -Iinclude -D_GNU_SOURCE=1
ifneq ($(SYSROOT),)
CFLAGS += --sysroot=$(SYSROOT)
endif
-@@ -18,7 +18,7 @@
+@@ -18,7 +18,7 @@ CFLAGS += -Wstrict-prototypes -Wmissing-prototypes
CFLAGS += -Wswitch-enum
CFLAGS += -Wundef
CFLAGS += -Wwrite-strings
@@ -30,7 +20,7 @@
# gcc specific
ifneq ($(shell $(CC) -v 2>&1 | grep -c "clang"), 1)
-@@ -33,20 +33,8 @@
+@@ -33,20 +33,8 @@ endif
CPP_MAJOR := $(shell $(CPP) -dumpversion 2>&1 | cut -d'.' -f1)
CPP_MINOR := $(shell $(CPP) -dumpversion 2>&1 | cut -d'.' -f2)
DEVEL := $(shell grep VERSION Makefile | head -n1 | grep pre | wc -l)
@@ -52,7 +42,7 @@
SHELL = /bin/sh
-@@ -68,15 +56,14 @@
+@@ -68,15 +56,14 @@ X86INFO_OBJS = $(sort $(patsubst %.c,%.o,$(wildcard *.c))) \
$(sort $(patsubst %.c,%.o,$(wildcard vendors/*/*.c)))
x86info: $(X86INFO_OBJS) $(X86INFO_HEADERS)
@@ -70,3 +60,15 @@
@mkdir -p $(DEPDIR)/$(*D)
@$(CC) -MM $(CFLAGS) $*.c > $(df).d
@mv -f $(df).d $(df).d.tmp
+--- a/lsmsr/Makefile
++++ b/lsmsr/Makefile
+@@ -40,7 +40,8 @@ LSMSR_TMP_HEADERS=AMD_k8.h \
+ generic_msr.h
+
+ %.h: %.regs createheader.py
+- @python createheader.py $< `basename $< .regs` >$@
++ $(PYTHON) createheader.py $< `basename $< .regs` >$@.tmp ; \
++ mv $@.tmp $@
+
+ LSMSR_SRC = \
+ lsmsr.c \
diff --git a/sys-apps/x86info/metadata.xml b/sys-apps/x86info/metadata.xml
index 9590fe15fc00..b5309a956e04 100644
--- a/sys-apps/x86info/metadata.xml
+++ b/sys-apps/x86info/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>robbat2@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">kernelslacker/x86info</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/x86info/x86info-1.30_p20190617.ebuild b/sys-apps/x86info/x86info-1.30_p20190617.ebuild
index 4a42d0c845f6..41b3c215905a 100644
--- a/sys-apps/x86info/x86info-1.30_p20190617.ebuild
+++ b/sys-apps/x86info/x86info-1.30_p20190617.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{6..8} )
+PYTHON_COMPAT=( python3_{9..10} )
inherit flag-o-matic linux-info python-any-r1 toolchain-funcs
-DESCRIPTION="Dave Jones' handy, informative x86 CPU diagnostic utility"
-HOMEPAGE="http://www.codemonkey.org.uk/projects/x86info/"
# Upstream stopped versioned releases entirely
COMMIT="8ea5ed19fae1d209eba9257171a10f7afd474618"
+
+DESCRIPTION="Dave Jones' handy, informative x86 CPU diagnostic utility"
+HOMEPAGE="http://www.codemonkey.org.uk/projects/x86info/"
SRC_URI="https://github.com/kernelslacker/x86info/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
LICENSE="GPL-2"
SLOT="0"
@@ -23,15 +25,13 @@ BDEPEND="
${PYTHON_DEPS}
virtual/pkgconfig"
-CONFIG_CHECK="~MTRR ~X86_CPUID"
-S="${WORKDIR}/${PN}-${COMMIT}"
-
PATCHES=(
"${FILESDIR}"/${PN}-1.30-pic.patch #270388
"${FILESDIR}"/${PN}-1.30-makefile.patch
)
pkg_setup() {
+ CONFIG_CHECK="~MTRR ~X86_CPUID"
linux-info_pkg_setup
python-any-r1_pkg_setup
}
diff --git a/sys-apps/x86info/x86info-1.31.ebuild b/sys-apps/x86info/x86info-1.31.ebuild
new file mode 100644
index 000000000000..9b992155ae72
--- /dev/null
+++ b/sys-apps/x86info/x86info-1.31.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit flag-o-matic linux-info python-any-r1 toolchain-funcs
+
+# Upstream stopped versioned releases entirely
+COMMIT="8ea5ed19fae1d209eba9257171a10f7afd474618"
+
+DESCRIPTION="Dave Jones' handy, informative x86 CPU diagnostic utility"
+HOMEPAGE="http://www.codemonkey.org.uk/projects/x86info/"
+SRC_URI="https://github.com/kernelslacker/x86info/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* ~amd64 x86"
+
+RDEPEND="sys-apps/pciutils:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${PYTHON_DEPS}
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.30-pic.patch #270388
+ "${FILESDIR}"/${PN}-1.30-makefile.patch
+)
+
+pkg_setup() {
+ CONFIG_CHECK="~MTRR ~X86_CPUID"
+ linux-info_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_configure() {
+ # These flags taken from the 1.29 ebuild
+ append-flags -Wall -Wshadow -Wextra -Wmissing-declarations \
+ -Wdeclaration-after-statement -Wredundant-decls
+ append-ldflags -Wl,-z,relro,-z,now
+
+ tc-export CC PKG_CONFIG
+}
+
+src_compile() {
+ emake x86info
+}
+
+src_install() {
+ dobin x86info
+
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/x86info-modules.conf-rc x86info.conf
+
+ einstalldocs
+ doman x86info.1
+}
+
+pkg_preinst() {
+ if [[ -a "${EROOT}"/etc/modules.d/x86info ]] && [[ ! -a "${EROOT}"/etc/modprobe.d/x86info ]]; then
+ elog "Moving x86info from /etc/modules.d/ to /etc/modprobe.d/"
+ mv "${EROOT}"/etc/{modules,modprobe}.d/x86info
+ fi
+ if [[ -a "${EROOT}"/etc/modprobe.d/x86info ]] && [[ ! -a "${EROOT}"/etc/modprobe.d/x86info.conf ]]; then
+ elog "Adding .conf suffix to x86info in /etc/modprobe.d/"
+ mv "${EROOT}"/etc/modprobe.d/x86info{,.conf}
+ fi
+}
diff --git a/sys-apps/xdg-dbus-proxy/Manifest b/sys-apps/xdg-dbus-proxy/Manifest
index 24a0753c96ac..b47e9b089fa4 100644
--- a/sys-apps/xdg-dbus-proxy/Manifest
+++ b/sys-apps/xdg-dbus-proxy/Manifest
@@ -1 +1 @@
-DIST xdg-dbus-proxy-0.1.2.tar.xz 119264 BLAKE2B 9f9fb561dd434e146636dd2e78275065c3f249b0486b1cb09ac0df2a2a9bd534f84192bb6f0f4b0627d47b9d490e3f5c10a6a4dca67d36a2465e4a971b28c64e SHA512 c76460e365778efeb1ef7cb9e479491afd1dc270680d108e7ece82b27be30bb4f958d4d218ac7d4497dcc749da25437f62119003866dcdeafcb6cea843dcbe1e
+DIST xdg-dbus-proxy-0.1.5.tar.xz 124780 BLAKE2B bb9e1c42826ebfab1a93351f43ab09d7280dc27883bfd23d00c8c919bd7b0ea12b87acffe8025d4c41301593c71a98af4ccf10b6c780479e84e020529a8d08bb SHA512 4b079c060aa4c1d7f305216d03166b9edc19cb73ef1230e14a882f07a6400929f62afc8535338c8560ea032a519c0934fbc69533f5bebb555fecb8f090330a33
diff --git a/sys-apps/xdg-dbus-proxy/metadata.xml b/sys-apps/xdg-dbus-proxy/metadata.xml
index 996e7cacd217..36943d4c555f 100644
--- a/sys-apps/xdg-dbus-proxy/metadata.xml
+++ b/sys-apps/xdg-dbus-proxy/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>gnome@gentoo.org</email>
<name>Gentoo GNOME Desktop</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">flatpak/xdg-dbus-proxy</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.2.ebuild b/sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.2.ebuild
deleted file mode 100644
index c7971f014d42..000000000000
--- a/sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Filtering proxy for D-Bus connections"
-HOMEPAGE="https://github.com/flatpak/xdg-dbus-proxy"
-SRC_URI="https://github.com/flatpak/${PN}/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ~ppc64 x86"
-IUSE=""
-
-RDEPEND="
- >=dev-libs/glib-2.40:2
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- virtual/pkgconfig
-"
-
-src_configure() {
- econf --enable-man
-}
diff --git a/sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.5.ebuild b/sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.5.ebuild
new file mode 100644
index 000000000000..c736e7c2628b
--- /dev/null
+++ b/sys-apps/xdg-dbus-proxy/xdg-dbus-proxy-0.1.5.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+DESCRIPTION="Filtering proxy for D-Bus connections"
+HOMEPAGE="https://github.com/flatpak/xdg-dbus-proxy"
+SRC_URI="https://github.com/flatpak/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.40:2
+"
+DEPEND="${RDEPEND}
+ test? ( sys-apps/dbus )
+"
+BDEPEND="
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dinstalled_tests=false
+ -Dman=enabled
+ $(meson_use test tests)
+ )
+ meson_src_configure
+}
diff --git a/sys-apps/xdg-desktop-portal-gnome/Manifest b/sys-apps/xdg-desktop-portal-gnome/Manifest
new file mode 100644
index 000000000000..9526eb328da3
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-gnome/Manifest
@@ -0,0 +1 @@
+DIST xdg-desktop-portal-gnome-45.1.tar.xz 140996 BLAKE2B c77fb2a0f52e27eec73b43a08e6034cbe08afb622ae0863f2ac3402246bc19dec4d058cae2117ddcf80064f3965454f5813f066788c6de1dffb4be80490cb217 SHA512 576139ef4d763e47435a33ecd94ae8d1631c2a515c11ca18e1f1f7618421925a41f0f8a295cfe6d1be377fd162a9e4d239f3a94a73a4aae49e583a0360f8cc36
diff --git a/sys-apps/xdg-desktop-portal-gnome/files/45.1-c99.patch b/sys-apps/xdg-desktop-portal-gnome/files/45.1-c99.patch
new file mode 100644
index 000000000000..884b0d9c15a6
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-gnome/files/45.1-c99.patch
@@ -0,0 +1,25 @@
+https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/112
+https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/merge_requests/134
+
+From 5fb3c0c23ccd76c6f8239bbb66c3fb1230208d5e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Tyrychtr?= <ltyrycht@redhat.com>
+Date: Mon, 11 Dec 2023 11:36:13 +0100
+Subject: [PATCH] input-capture: Pass correct pointer type to
+ gtk_window_add_group
+
+It produced only a warning, but will be an error in the future.
+
+Fixes #112
+--- a/src/inputcapture.c
++++ b/src/inputcapture.c
+@@ -409,7 +409,7 @@ create_input_capture_dialog (GDBusMethodInvocation *invocation,
+ gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
+
+ window_group = gtk_window_group_new ();
+- gtk_window_group_add_window (window_group, dialog);
++ gtk_window_group_add_window (window_group, GTK_WINDOW (dialog));
+
+ dialog_handle = g_new0 (InputCaptureDialogHandle, 1);
+ dialog_handle->request = g_object_ref (request);
+--
+GitLab
diff --git a/sys-apps/xdg-desktop-portal-gnome/metadata.xml b/sys-apps/xdg-desktop-portal-gnome/metadata.xml
new file mode 100644
index 000000000000..399d422030ef
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-gnome/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gnome-gitlab">GNOME/xdg-desktop-portal-gnome</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/xdg-desktop-portal-gnome/xdg-desktop-portal-gnome-45.1-r1.ebuild b/sys-apps/xdg-desktop-portal-gnome/xdg-desktop-portal-gnome-45.1-r1.ebuild
new file mode 100644
index 000000000000..f263b44b8b24
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-gnome/xdg-desktop-portal-gnome-45.1-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic gnome.org meson systemd xdg
+
+DESCRIPTION="Backend implementation for xdg-desktop-portal using GNOME"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86"
+IUSE="wayland X"
+
+# Newer-than-strictly-required xdg-desktop-portal dep for hang/slowness fixes
+# https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/74
+DEPEND="
+ dev-libs/glib:2
+ gnome-base/gnome-desktop:4=
+ >=gui-libs/libadwaita-1.2.0:1
+ media-libs/fontconfig
+ sys-apps/dbus
+ >=sys-apps/xdg-desktop-portal-1.17.0
+ >=sys-apps/xdg-desktop-portal-gtk-1.14.0
+ gui-libs/gtk:4[wayland?,X?]
+ X? ( x11-libs/libX11 )
+ wayland? ( dev-libs/wayland )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-util/gdbus-codegen
+ sys-devel/gettext
+ virtual/pkgconfig
+
+ wayland? ( dev-util/wayland-scanner )
+"
+
+PATCHES=(
+ "${FILESDIR}"/45.1-c99.patch
+)
+
+src_configure() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/919852
+ # https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/113
+ # https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/merge_requests/138
+ #
+ # Recheck this after next version bump!
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ local emesonargs=(
+ -Dsystemduserunitdir="$(systemd_get_userunitdir)"
+ )
+
+ meson_src_configure
+}
diff --git a/sys-apps/xdg-desktop-portal-gtk/Manifest b/sys-apps/xdg-desktop-portal-gtk/Manifest
index e46f4f3792fa..2aea6006d89c 100644
--- a/sys-apps/xdg-desktop-portal-gtk/Manifest
+++ b/sys-apps/xdg-desktop-portal-gtk/Manifest
@@ -1 +1 @@
-DIST xdg-desktop-portal-gtk-1.8.0.tar.xz 370196 BLAKE2B d15a054e8fbc74718db7ad2d0f7b53c86b392e729fb4d5b8bdd87b16c0ebbf4feb11b29bc27da12990b351f520faa23bde694721819589513b6cfd1e4ea2f092 SHA512 832b3c4cb9ea738f2ab7641fbd7e14beaa5f6a1ae88f012cd44b12f4bc51588f61868b5982301e3dfd67965d6a69fd8669a9832b6ec7017168d611c87d76689b
+DIST xdg-desktop-portal-gtk-1.14.1.tar.xz 393964 BLAKE2B fd7fb960a19a13ad722b3db6e00a81e737c25434a6c4f70b97ad6cb2f9e01a06e9dc563f0e61f496260275854404b006cf4b36df56cc967202def6ca4bf0c8a0 SHA512 d8b487e8fc7d8c1f0f41eb3ee28377b2f77af9c65569b5dbaee785ae40c163929da8b13b39b032e25631515cb8e7218129c8bbffe25692e85c7b8e9269024325
diff --git a/sys-apps/xdg-desktop-portal-gtk/metadata.xml b/sys-apps/xdg-desktop-portal-gtk/metadata.xml
index 996e7cacd217..bc078a9a0ecd 100644
--- a/sys-apps/xdg-desktop-portal-gtk/metadata.xml
+++ b/sys-apps/xdg-desktop-portal-gtk/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">flatpak/xdg-desktop-portal-gtk</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.14.1.ebuild b/sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.14.1.ebuild
new file mode 100644
index 000000000000..ef1fcefab380
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.14.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd
+
+MY_PV="${PV//_pre*}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Backend implementation for xdg-desktop-portal using GTK+"
+HOMEPAGE="https://flatpak.org/ https://github.com/flatpak/xdg-desktop-portal-gtk"
+SRC_URI="https://github.com/flatpak/${PN}/releases/download/${MY_PV}/${MY_P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86"
+IUSE="wayland X"
+
+BDEPEND="
+ dev-util/gdbus-codegen
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+DEPEND="
+ dev-libs/glib:2
+ gnome-base/gsettings-desktop-schemas
+ media-libs/fontconfig
+ sys-apps/dbus
+ >=sys-apps/xdg-desktop-portal-1.14.0
+ x11-libs/cairo[X?]
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3[wayland?,X?]
+"
+
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_configure() {
+ # As done in Fedora:
+ # All backends that are disabled are instead provided by
+ # xdg-desktop-portal-gnome to keep this package free of GNOME dependencies.
+ # The appchooser and settings backends are enabled for non-GNOME GTK
+ # applications.
+ local myeconfargs=(
+ --with-systemduserunitdir="$(systemd_get_userunitdir)"
+ --enable-appchooser
+ --enable-settings
+ --disable-background
+ --disable-lockdown
+ --disable-screencast
+ --disable-screenshot
+ --disable-wallpaper
+ )
+
+ econf "${myeconfargs[@]}"
+}
diff --git a/sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.8.0.ebuild b/sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.8.0.ebuild
deleted file mode 100644
index 27f6469c046d..000000000000
--- a/sys-apps/xdg-desktop-portal-gtk/xdg-desktop-portal-gtk-1.8.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd
-
-MY_PV="${PV//_pre*}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="portal backend implementation that is using GTK+ and various pieces of GNOME"
-HOMEPAGE="https://flatpak.org/ https://github.com/flatpak/xdg-desktop-portal-gtk"
-SRC_URI="https://github.com/flatpak/${PN}/releases/download/${MY_PV}/${MY_P}.tar.xz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE="wayland X"
-
-BDEPEND="
- dev-util/gdbus-codegen
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-DEPEND="
- dev-libs/glib:2
- gnome-base/gnome-desktop:3=
- media-libs/fontconfig
- sys-apps/dbus
- >=sys-apps/xdg-desktop-portal-1.7
- x11-libs/cairo[X?]
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[wayland?,X?]
-"
-
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_configure() {
- local myeconfargs=(
- --with-systemduserunitdir="$(systemd_get_userunitdir)"
- )
-
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/xdg-desktop-portal-xapp/Manifest b/sys-apps/xdg-desktop-portal-xapp/Manifest
new file mode 100644
index 000000000000..f5ac5692e8a8
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-xapp/Manifest
@@ -0,0 +1 @@
+DIST xdg-desktop-portal-xapp-1.0.4.tar.gz 88429 BLAKE2B 7f45a252a5c0dd433238a58012c65369240e7974a93d3d2b5b73bdbc91509480977ad1ce381a6f4ee3a0c87bfabd11ce87bf99839018811a84378e54be1ef36f SHA512 3f861473a763c37a1af95e3beb13c3364a04f557310d5a6520845bc754941149eb3d80a4e2893699715ff11b135edb2859f6349b6aa6fbe0aa1e173263e22dba
diff --git a/sys-apps/xdg-desktop-portal-xapp/metadata.xml b/sys-apps/xdg-desktop-portal-xapp/metadata.xml
new file mode 100644
index 000000000000..47039577a973
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-xapp/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>sparky@bluefang-logic.com</email>
+ <name>Matthew Turnbull</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">linuxmint/xdg-desktop-portal-xapp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/xdg-desktop-portal-xapp/xdg-desktop-portal-xapp-1.0.4.ebuild b/sys-apps/xdg-desktop-portal-xapp/xdg-desktop-portal-xapp-1.0.4.ebuild
new file mode 100644
index 000000000000..9d6c9bec552a
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal-xapp/xdg-desktop-portal-xapp-1.0.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson systemd
+
+DESCRIPTION="Backend implementation for xdg-desktop-portal using Cinnamon/MATE/Xfce"
+HOMEPAGE="https://github.com/linuxmint/xdg-desktop-portal-xapp/"
+SRC_URI="https://github.com/linuxmint/xdg-desktop-portal-xapp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+DEPEND="
+ >=dev-libs/glib-2.44:2
+ >=sys-apps/xdg-desktop-portal-1.5
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/xdg-desktop-portal-gtk
+ >=x11-libs/xapp-2.8.1
+"
+BDEPEND="
+ dev-util/gdbus-codegen
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dsystemduserunitdir="$(systemd_get_userunitdir)"
+ )
+ meson_src_configure
+}
diff --git a/sys-apps/xdg-desktop-portal/Manifest b/sys-apps/xdg-desktop-portal/Manifest
index ca46ed72cb4a..a8aed08dbd2d 100644
--- a/sys-apps/xdg-desktop-portal/Manifest
+++ b/sys-apps/xdg-desktop-portal/Manifest
@@ -1,2 +1 @@
-DIST xdg-desktop-portal-1.6.0.tar.xz 453516 BLAKE2B 13ffcb21de6b61ddeb0782dcfc7b684287e54f94b9494b19589178594d1383a15048b8f9aeed7fb1260c3a2c967b267061d1db401085a686938c8629de8824c3 SHA512 7a0c702851762a55326142cb6b470205775284e0f749620ae6b648f216afcd684f8b20500339680b42812f628634344c9e826ab7cf13dd918fdbf733381d44ce
-DIST xdg-desktop-portal-1.8.0.tar.xz 470692 BLAKE2B f21da5ad11dc2b1611983fdac87335b3c7e9c13222bbe3b90b276d75726a6f16d950a9ba62606aa31d52f57b8d076393ec0d48014b1623ab03dee23c524ed0ef SHA512 6d9760b41447af711d5937279b0031bcc88947e11204351accfcd9e6e19e498e9021675753185f92f7bd40336decc1895968796b1b71508c7caf5f6fc32a51a4
+DIST xdg-desktop-portal-1.18.4.tar.xz 699380 BLAKE2B 969d9359744f26a931d5d86fbdac222b0d55f7942bb8b1ffba67343c88696dbb4c905b122363c5eae5dcac8b55f58d03433acbbca6f7594a16e72e13bc78353a SHA512 482676777e8180752e13ff485acab91de117f4ecf2aefd313a6f596df800f37d7004ee4ba1040009eb69a6efc780efc7dcd7e46b3f59c47bd9f21aef48d346de
diff --git a/sys-apps/xdg-desktop-portal/files/default-portals.conf b/sys-apps/xdg-desktop-portal/files/default-portals.conf
new file mode 100644
index 000000000000..028e24d2bbee
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal/files/default-portals.conf
@@ -0,0 +1,2 @@
+[preferred]
+default=*
diff --git a/sys-apps/xdg-desktop-portal/files/xdg-desktop-portal-1.18.0-sandbox-disable-failing-tests.patch b/sys-apps/xdg-desktop-portal/files/xdg-desktop-portal-1.18.0-sandbox-disable-failing-tests.patch
new file mode 100644
index 000000000000..148888f43b6f
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal/files/xdg-desktop-portal-1.18.0-sandbox-disable-failing-tests.patch
@@ -0,0 +1,69 @@
+diff --git a/tests/meson.build b/tests/meson.build
+index a2dafee..ec2b628 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -163,20 +163,15 @@ limited_portals = executable(
+ portal_tests = [
+ 'account',
+ 'background',
+- 'camera',
+ 'color',
+ 'email',
+- 'inhibit',
+- 'location',
+ 'notification',
+ 'openfile',
+- 'openuri',
+ 'prepareprint',
+ 'print',
+ 'savefile',
+ 'screenshot',
+ 'trash',
+- 'wallpaper',
+ ]
+
+ test_env = env_tests
+diff --git a/tests/test_globalshortcuts.py b/tests/test_globalshortcuts.py
+index 56349cb..da0656d 100644
+--- a/tests/test_globalshortcuts.py
++++ b/tests/test_globalshortcuts.py
+@@ -20,7 +20,7 @@ class TestGlobalShortcuts:
+ def test_version(self, portal_mock):
+ portal_mock.check_version(1)
+
+- def test_global_shortcuts_create_close_session(self, portal_mock):
++ def _test_global_shortcuts_create_close_session(self, portal_mock):
+ request = portal_mock.create_request()
+ options = {
+ "session_handle_token": "session_token0",
+@@ -49,7 +49,7 @@ class TestGlobalShortcuts:
+ assert session.closed
+
+ @pytest.mark.parametrize("params", ({"force-close": 500},))
+- def test_global_shortcuts_create_session_signal_closed(self, portal_mock):
++ def _test_global_shortcuts_create_session_signal_closed(self, portal_mock):
+ request = portal_mock.create_request()
+ options = {
+ "session_handle_token": "session_token0",
+diff --git a/tests/test_remotedesktop.py b/tests/test_remotedesktop.py
+index 49b6b18..77648bc 100644
+--- a/tests/test_remotedesktop.py
++++ b/tests/test_remotedesktop.py
+@@ -20,7 +20,7 @@ class TestRemoteDesktop:
+ def test_version(self, portal_mock):
+ portal_mock.check_version(2)
+
+- def test_remote_desktop_create_close_session(self, portal_mock):
++ def _test_remote_desktop_create_close_session(self, portal_mock):
+ request = portal_mock.create_request()
+ options = {
+ "session_handle_token": "session_token0",
+@@ -49,7 +49,7 @@ class TestRemoteDesktop:
+ assert session.closed
+
+ @pytest.mark.parametrize("params", ({"force-close": 500},))
+- def test_remote_desktop_create_session_signal_closed(self, portal_mock):
++ def _test_remote_desktop_create_session_signal_closed(self, portal_mock):
+ request = portal_mock.create_request()
+ options = {
+ "session_handle_token": "session_token0",
diff --git a/sys-apps/xdg-desktop-portal/metadata.xml b/sys-apps/xdg-desktop-portal/metadata.xml
index bcfc8e0c39c0..0b034d09a049 100644
--- a/sys-apps/xdg-desktop-portal/metadata.xml
+++ b/sys-apps/xdg-desktop-portal/metadata.xml
@@ -1,11 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>kde@gentoo.org</email>
<name>Gentoo KDE Project</name>
</maintainer>
<use>
- <flag name="screencast">Enable screencast portal using <pkg>media-video/pipewire</pkg></flag>
+ <flag name="flatpak">Enable <pkg>sys-apps/flatpak</pkg> integration</flag>
+ <flag name="seccomp">Use <pkg>sys-apps/bubblewrap</pkg> (which requires seccomp) to sandbox some functionality like icon handling</flag>
</use>
+ <upstream>
+ <remote-id type="github">flatpak/xdg-desktop-portal</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild
new file mode 100644
index 000000000000..889eee8e6bcb
--- /dev/null
+++ b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.18.4.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-any-r1 systemd
+
+DESCRIPTION="Desktop integration portal"
+HOMEPAGE="https://flatpak.org/ https://github.com/flatpak/xdg-desktop-portal"
+SRC_URI="https://github.com/flatpak/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86"
+IUSE="geolocation flatpak seccomp systemd test"
+RESTRICT="!test? ( test )"
+# Upstream expect flatpak to be used w/ seccomp and flatpak needs bwrap anyway
+REQUIRED_USE="flatpak? ( seccomp )"
+
+DEPEND="
+ >=dev-libs/glib-2.66:2
+ dev-libs/json-glib
+ >=media-video/pipewire-0.3:=
+ >=sys-fs/fuse-3.10.0:3[suid]
+ x11-libs/gdk-pixbuf
+ geolocation? ( >=app-misc/geoclue-2.5.3:2.0 )
+ flatpak? ( sys-apps/flatpak )
+ seccomp? ( sys-apps/bubblewrap )
+ systemd? ( sys-apps/systemd )
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/dbus
+"
+BDEPEND="
+ dev-util/gdbus-codegen
+ dev-python/docutils
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ ${PYTHON_DEPS}
+ dev-libs/libportal
+ $(python_gen_any_dep '
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/python-dbusmock[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ # These tests require connections to pipewire, internet, /dev/fuse
+ "${FILESDIR}/${PN}-1.18.0-sandbox-disable-failing-tests.patch"
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+python_check_deps() {
+ python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/python-dbusmock[${PYTHON_USEDEP}]"
+}
+
+src_configure() {
+ local emesonargs=(
+ -Ddbus-service-dir="${EPREFIX}/usr/share/dbus-1/services"
+ -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)"
+ $(meson_feature flatpak flatpak-interfaces)
+ # Only used for tests
+ $(meson_feature test libportal)
+ $(meson_feature geolocation geoclue)
+ $(meson_use seccomp sandboxed-image-validation)
+ $(meson_feature systemd)
+ # Requires flatpak
+ -Ddocbook-docs=disabled
+ # -Dxmlto-flags=
+ -Ddatarootdir="${EPREFIX}/usr/share"
+ -Dman-pages=enabled
+ -Dinstalled-tests=false
+ $(meson_feature test pytest)
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # Install a default to avoid breakage: >=1.18.0 assumes that DEs/WMs
+ # will install their own, but we want some fallback in case they don't
+ # (so will probably keep this forever). DEs need time to catch up even
+ # if they will eventually provide one anyway. See bug #915356.
+ #
+ # TODO: Add some docs on wiki for users to add their own preference
+ # for minimalist WMs etc.
+ insinto /usr/share/xdg-desktop-portal
+ newins "${FILESDIR}"/default-portals.conf portals.conf
+}
+
+pkg_postinst() {
+ if ! has_version gui-libs/xdg-desktop-portal-lxqt && ! has_version gui-libs/xdg-desktop-portal-wlr && \
+ ! has_version kde-plasma/xdg-desktop-portal-kde && ! has_version sys-apps/xdg-desktop-portal-gnome && \
+ ! has_version sys-apps/xdg-desktop-portal-gtk; then
+ elog "${PN} is not usable without any of the following XDP"
+ elog "implementations installed:"
+ elog " gui-libs/xdg-desktop-portal-lxqt"
+ elog " gui-libs/xdg-desktop-portal-wlr"
+ elog " kde-plasma/xdg-desktop-portal-kde"
+ elog " sys-apps/xdg-desktop-portal-gnome"
+ elog " sys-apps/xdg-desktop-portal-gtk"
+ fi
+}
diff --git a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.6.0-r2.ebuild b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.6.0-r2.ebuild
deleted file mode 100644
index 777122093897..000000000000
--- a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.6.0-r2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd
-
-DESCRIPTION="Desktop integration portal"
-HOMEPAGE="https://flatpak.org/ https://github.com/flatpak/xdg-desktop-portal"
-SRC_URI="https://github.com/flatpak/${PN}/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
-IUSE="doc geolocation screencast"
-
-BDEPEND="
- dev-util/gdbus-codegen
- sys-devel/gettext
- virtual/pkgconfig
- doc? (
- app-text/docbook-xml-dtd:4.3
- app-text/xmlto
- )
-"
-DEPEND="
- dev-libs/glib:2
- dev-libs/json-glib
- media-libs/fontconfig
- sys-fs/fuse:0
- geolocation? ( >=app-misc/geoclue-2.5.3:2.0 )
- screencast? ( media-video/pipewire:0/0.2 )
-"
-RDEPEND="${DEPEND}
- sys-apps/dbus
-"
-
-src_configure() {
- local myeconfargs=(
- --with-systemduserunitdir="$(systemd_get_userunitdir)"
- $(use_enable doc docbook-docs)
- $(use_enable geolocation geoclue)
- $(use_enable screencast pipewire)
- --disable-libportal # not packaged
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.8.0.ebuild b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.8.0.ebuild
deleted file mode 100644
index f272c6ac76b5..000000000000
--- a/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.8.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools systemd
-
-DESCRIPTION="Desktop integration portal"
-HOMEPAGE="https://flatpak.org/ https://github.com/flatpak/xdg-desktop-portal"
-SRC_URI="https://github.com/flatpak/${PN}/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86"
-IUSE="geolocation screencast"
-
-BDEPEND="
- dev-util/gdbus-codegen
- sys-devel/gettext
- virtual/pkgconfig
-"
-DEPEND="
- dev-libs/glib:2
- dev-libs/json-glib
- media-libs/fontconfig
- sys-fs/fuse:0
- geolocation? ( >=app-misc/geoclue-2.5.3:2.0 )
- screencast? ( >=media-video/pipewire-0.3:= )
-"
-RDEPEND="${DEPEND}
- sys-apps/dbus
-"
-
-src_configure() {
- local myeconfargs=(
- --with-systemduserunitdir="$(systemd_get_userunitdir)"
- $(use_enable geolocation geoclue)
- $(use_enable screencast pipewire)
- --disable-docbook-docs # flatpak not packaged
- --disable-libportal # not packaged
- )
- econf "${myeconfargs[@]}"
-}
diff --git a/sys-apps/xinetd/Manifest b/sys-apps/xinetd/Manifest
index 12b8ad8295b9..9299a6953ad1 100644
--- a/sys-apps/xinetd/Manifest
+++ b/sys-apps/xinetd/Manifest
@@ -1,3 +1 @@
-DIST xinetd-2.3.15.3.tar.xz 383204 BLAKE2B dada7e1efb8c70d9b47efbb33de54e643e195fc043a2fe8b1b61a1d9e597a5a10feda8d6692e665af1f1690870e619098a9a2367df3a73f7821a91777532f1fa SHA512 3a744d5ce66da46743eec28d5b95a44709b1828187078984e59d7220ac325abce1198927e9156f343a4e16a9dc63e8846f1dcb0facbf05ea44c73aecbe7e504f
DIST xinetd-2.3.15.4.tar.xz 384504 BLAKE2B e6981d7143c5e39d45a6274d003467f372b1e97637112c66a3fd3a1cb47fe948228d72c914cca5b2db1d65a626b83ff36f10768d343579aa48353d20e2541f4d SHA512 1d9bbf5f60b299746adf3e57a669bf1a554b50066563b65cdb7584f00dcab2d3d331df705eefb56b51c52a16b5ed6b109cd832c27df87c7f262bb304e17ddc0e
-DIST xinetd-2.3.15.tar.gz 309774 BLAKE2B b5c933a2aa7a2ef4a2d58b53890f04569fe592005c646f39a00d4716325c8ac9b9aa3b8b4b2f2b861430c8415167ab1d394de3d3b4bd761239c5223b1d2b0419 SHA512 9d6fee1fbc90329629d84086ae7de5cd51c25af7b68e52aa704d6f74bee5f0e3d54ca1bcf780f90f74ddc8d336ae0abb5e5e368d43c426a26b8dd2c4676d26aa
diff --git a/sys-apps/xinetd/files/xinetd-2.3.14-DESTDIR.patch b/sys-apps/xinetd/files/xinetd-2.3.14-DESTDIR.patch
deleted file mode 100644
index 2ebdf4c4f1b0..000000000000
--- a/sys-apps/xinetd/files/xinetd-2.3.14-DESTDIR.patch
+++ /dev/null
@@ -1,27 +0,0 @@
---- Makefile.in.orig 2005-10-29 22:08:54.000000000 -0400
-+++ Makefile.in 2005-10-29 22:09:32.000000000 -0400
-@@ -75,15 +75,15 @@
-
- install: build
- for i in $(DAEMONDIR) $(BINDIR) $(MANDIR)/man5 $(MANDIR)/man8 ; do \
-- test -d $$i || mkdir -p $$i ; done
-- $(INSTALL_CMD) -m 755 xinetd/xinetd $(DAEMONDIR)
-- $(INSTALL_CMD) -m 755 xinetd/itox $(DAEMONDIR)
-- $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DAEMONDIR)
-- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(MANDIR)/man5/xinetd.conf.5
-- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(MANDIR)/man8/xinetd.log.8
-- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(MANDIR)/man8/xinetd.8
-- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(MANDIR)/man8/itox.8
-- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(MANDIR)/man8/xconv.pl.8
-+ test -d $(DESTDIR)$$i || mkdir -p $(DESTDIR)$$i ; done
-+ $(INSTALL_CMD) -m 755 xinetd/xinetd $(DESTDIR)$(DAEMONDIR)
-+ $(INSTALL_CMD) -m 755 xinetd/itox $(DESTDIR)$(DAEMONDIR)
-+ $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DESTDIR)$(DAEMONDIR)
-+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
-+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
-+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(DESTDIR)$(MANDIR)/man8/xinetd.8
-+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(DESTDIR)$(MANDIR)/man8/itox.8
-+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(DESTDIR)$(MANDIR)/man8/xconv.pl.8
- @echo "You must put your xinetd.conf in /etc/xinetd.conf"
- @echo "There is a sample config file in xinetd/sample.conf and you can"
- @echo "use xconv.pl to convert your old inetd.conf file to an xinetd format"
diff --git a/sys-apps/xinetd/files/xinetd-2.3.14-install-contrib.patch b/sys-apps/xinetd/files/xinetd-2.3.14-install-contrib.patch
deleted file mode 100644
index c1717e43902f..000000000000
--- a/sys-apps/xinetd/files/xinetd-2.3.14-install-contrib.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- xinetd-2.3.14/Makefile.in
-+++ xinetd-2.3.14/Makefile.in
-@@ -9,6 +9,7 @@
- DESTDIR =
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-+ETCDIR = @sysconfdir@
- DAEMONDIR = @sbindir@
- MANDIR = @mandir@
- topdir = @top_srcdir@
-@@ -97,7 +98,12 @@
- rm -f $(MANDIR)/man8/xinetd.log.8
- rm -f $(MANDIR)/man8/xinetd.8
- rm -f $(MANDIR)/man8/itox.8
--
-+
-+install-contrib:
-+ test -d $(DESTDIR)$(ETCDIR)/xinetd.d || mkdir -p $(DESTDIR)$(ETCDIR)/xinetd.d
-+ $(INSTALL_CMD) -m 644 contrib/xinetd.conf $(DESTDIR)$(ETCDIR)
-+ $(INSTALL_CMD) -m 644 contrib/xinetd.d/* $(DESTDIR)$(ETCDIR)/xinetd.d
-+
- distclean: clean
- rm -f config.cache config.log Makefile config.status xinetd/itox
- rm -f config.h @srcdir@/libs/include/* @srcdir@/libs/man/*
diff --git a/sys-apps/xinetd/files/xinetd-2.3.15-config.patch b/sys-apps/xinetd/files/xinetd-2.3.15-config.patch
deleted file mode 100644
index b362a97dbe82..000000000000
--- a/sys-apps/xinetd/files/xinetd-2.3.15-config.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-set up some secure defaults:
- - services can only be accessed from localhost
- - sanitize the runtime environment (so root's shell vars don't bleed through)
-
---- contrib/xinetd.conf
-+++ contrib/xinetd.conf
-@@ -22,5 +22,5 @@
- #
- # no_access =
--# only_from =
-+ only_from = localhost
- # max_load = 0
- cps = 50 10
-@@ -35,7 +35,7 @@ defaults
-
- # setup environmental attributes
- #
--# passenv =
-+ passenv =
- groups = yes
- umask = 002
-
diff --git a/sys-apps/xinetd/files/xinetd-2.3.15-creds.patch b/sys-apps/xinetd/files/xinetd-2.3.15-creds.patch
deleted file mode 100644
index 39df3caf1156..000000000000
--- a/sys-apps/xinetd/files/xinetd-2.3.15-creds.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/488158
-
-taken from Fedora
-
-Patch by Thomas Swan <thomas.swan@gmail.com>
-
---- a/xinetd/builtins.c
-+++ b/xinetd/builtins.c
-@@ -695,7 +695,7 @@ static void tcpmux_handler( const struct server *serp )
- if( SC_IS_INTERNAL( scp ) ) {
- SC_INTERNAL(scp, nserp);
- } else {
-- exec_server(nserp);
-+ child_process(nserp);
- }
- }
-
diff --git a/sys-apps/xinetd/files/xinetd-2.3.15.3-no-rpc.patch b/sys-apps/xinetd/files/xinetd-2.3.15.3-no-rpc.patch
deleted file mode 100644
index 3bd995a0892d..000000000000
--- a/sys-apps/xinetd/files/xinetd-2.3.15.3-no-rpc.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-https://github.com/openSUSE/xinetd/pull/8
-
-From 4278495b1858b5b1ce94d72bd619eb79aab8ca04 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 18 Jun 2018 18:49:38 -0400
-Subject: [PATCH] fix no-rpc builds
-
-The code base already has support for -DNO_RPC, so fix the breakage
-introduced by commit 56520dcc88c35113877c8f4f52bd98ad95b44653.
----
- src/confparse.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/confparse.c b/src/confparse.c
-index 5b149dd03808..7965cc405f24 100644
---- a/src/confparse.c
-+++ b/src/confparse.c
-@@ -13,10 +13,12 @@
- #include <stdlib.h>
- #include <fcntl.h>
- #include <unistd.h>
-+#ifndef NO_RPC
- #include <rpc/rpc.h>
- #ifdef HAVE_RPCENT_H
- #include <rpc/rpcent.h>
- #endif
-+#endif
- #include <netdb.h>
-
- #include "str.h"
-@@ -730,7 +732,7 @@ static status_e check_entry( struct service_config *scp,
- }
- }
-
--/* #ifndef NO_RPC */
-+#ifndef NO_RPC
- if ( SC_IS_RPC( scp ) && !SC_IS_UNLISTED( scp ) )
- {
- struct rpcent *rep = (struct rpcent *)getrpcbyname( SC_NAME(scp) ) ;
-@@ -743,6 +745,7 @@ static status_e check_entry( struct service_config *scp,
- SC_RPCDATA( scp )->rd_program_number = rep->r_number ;
- }
- else
-+#endif
- {
- if ( !SC_IS_UNLISTED( scp ) )
- {
---
-2.16.1
-
diff --git a/sys-apps/xinetd/files/xinetd-2.3.15.3-rpc-configure.patch b/sys-apps/xinetd/files/xinetd-2.3.15.3-rpc-configure.patch
deleted file mode 100644
index 682dece1b2b6..000000000000
--- a/sys-apps/xinetd/files/xinetd-2.3.15.3-rpc-configure.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 928d69309592704892d124b1f8de9111164c3793 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 18 Jun 2018 22:11:21 -0400
-Subject: [PATCH] configure: add a --without-rpc flag
-
-The build already supports NO_RPC to disable all RPC logic. Turn it
-into a proper configure flag so people don't have to hack it up.
----
- configure.ac | 25 ++++++++++++++++++++-----
- 1 file changed, 20 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 8d0b562ddaac..75ae7fb472dc 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -37,11 +37,6 @@ AC_CHECK_LIB([m], [log10], [
- AC_MSG_ERROR([Unable to find working libm.so])
- ])
- AC_SUBST([LIBM_LIBS])
--PKG_CHECK_MODULES([TIRPC],[libtirpc], [
-- AC_DEFINE([HAVE_RPCENT_H], [1], [Have <rpc/rpcent.h>.])
--], [
-- AC_MSG_WARN([Libtirpc not found, will not use <rpc/rpcent.h>])
--])
-
- # ======================================
- # Check for various headers and settings
-@@ -112,6 +107,26 @@ AS_IF([test x"$with_labeled_networking" != "xno"], [
- ])
- ])
-
-+AC_ARG_WITH([rpc],
-+ [AS_HELP_STRING([--without-rpc], [Do not include RPC support])],
-+ [with_rpc="$withval"],
-+ [with_rpc="auto"]
-+)
-+AS_IF([test x"$with_rpc" != "xno"], [
-+ PKG_CHECK_MODULES([TIRPC],[libtirpc], [
-+ AC_DEFINE([HAVE_RPCENT_H], [1], [Have <rpc/rpcent.h>.])
-+ ], [
-+ AS_IF([test x"$with_rpc" = "xyes"], [
-+ AC_MSG_ERROR([RPC support requested but not found])
-+ ])
-+ with_rpc="no"
-+ AC_MSG_WARN([Libtirpc not found, will not use <rpc/rpcent.h>])
-+ ])
-+])
-+AS_IF([test x"$with_rpc" = "xno"], [
-+ AC_DEFINE([NO_RPC], [1], [Omit RPC support.])
-+])
-+
- # =========
- # Hardening
- # =========
---
-2.16.1
-
diff --git a/sys-apps/xinetd/files/xinetd-2.3.15.4-0001-configure.ac-use-AC_USE_SYSTEM_EXTENSIONS.patch b/sys-apps/xinetd/files/xinetd-2.3.15.4-0001-configure.ac-use-AC_USE_SYSTEM_EXTENSIONS.patch
new file mode 100644
index 000000000000..d2be93f08607
--- /dev/null
+++ b/sys-apps/xinetd/files/xinetd-2.3.15.4-0001-configure.ac-use-AC_USE_SYSTEM_EXTENSIONS.patch
@@ -0,0 +1,43 @@
+https://github.com/openSUSE/xinetd/pull/42
+
+From 0539bd4450020c83c6b72eec1004e3ce3f64554b Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 10 Sep 2022 13:59:20 +0100
+Subject: [PATCH 1/2] configure.ac: use AC_USE_SYSTEM_EXTENSIONS
+
+We use fcvt and gcvt, both of which are extensions
+guarded by GNU_SOURCE. Use AC_USE_SYSTEM_EXTENSIONS
+to ensure they're always available.
+
+Fixes a build failure on musl with Clang 15:
+```
+src/sio/sprint.c:176:15: error: call to undeclared function 'fcvt'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+ p = (char *)fcvt( num, precision, &decimal_point, is_negative ) ;
+src/sio/sprint.c:178:15: error: call to undeclared function 'ecvt'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+ p = (char *)ecvt( num, precision+1, &decimal_point, is_negative ) ;
+```
+
+And drop a single #define _GNU_SOURCE from signals.c, as it's
+preferable to have it consistently defined across the codebase
+where possible. We have autotools, so let's use it.
+--- a/configure.ac
++++ b/configure.ac
+@@ -38,6 +38,8 @@ AC_CHECK_LIB([m], [log10], [
+ ])
+ AC_SUBST([LIBM_LIBS])
+
++AC_USE_SYSTEM_EXTENSIONS
++
+ # ======================================
+ # Check for various headers and settings
+ # ======================================
+--- a/src/signals.c
++++ b/src/signals.c
+@@ -7,7 +7,6 @@
+
+
+ #include "config.h"
+-#define _GNU_SOURCE
+ #include <sys/types.h>
+ #include <sys/time.h>
+ #include <signal.h>
diff --git a/sys-apps/xinetd/files/xinetd-2.3.15.4-0002-redirect-drop-deprecated-sys-signal.h-include.patch b/sys-apps/xinetd/files/xinetd-2.3.15.4-0002-redirect-drop-deprecated-sys-signal.h-include.patch
new file mode 100644
index 000000000000..f53a11eba650
--- /dev/null
+++ b/sys-apps/xinetd/files/xinetd-2.3.15.4-0002-redirect-drop-deprecated-sys-signal.h-include.patch
@@ -0,0 +1,24 @@
+https://github.com/openSUSE/xinetd/pull/42
+
+From 953a37c570a42743358cfc64e00e990813db1e09 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 10 Sep 2022 14:01:00 +0100
+Subject: [PATCH 2/2] redirect: drop deprecated <sys/signal.h> include
+
+Fix warning when building on musl:
+```
+In file included from src/redirect.c:23:
+/usr/include/sys/signal.h:1:2: warning: redirecting incorrect #include <sys/signal.h> to <signal.h> [-W#warnings]
+```
+
+We already include <signal.h>.
+--- a/src/redirect.c
++++ b/src/redirect.c
+@@ -20,7 +20,6 @@
+ #include <unistd.h>
+ #include <netinet/tcp.h>
+ #include <arpa/inet.h>
+-#include <sys/signal.h>
+
+ #include "redirect.h"
+ #include "service.h"
diff --git a/sys-apps/xinetd/files/xinetd.service b/sys-apps/xinetd/files/xinetd.service
deleted file mode 100644
index c6f6271fd97b..000000000000
--- a/sys-apps/xinetd/files/xinetd.service
+++ /dev/null
@@ -1,10 +0,0 @@
-[Unit]
-Description=A secure replacement for inetd
-After=network.target
-
-[Service]
-ExecStart=/usr/sbin/xinetd -dontfork
-ExecReload=/bin/kill -HUP $MAINPID
-
-[Install]
-WantedBy=multi-user.target
diff --git a/sys-apps/xinetd/metadata.xml b/sys-apps/xinetd/metadata.xml
index e143258c6fa6..c841fc5c16b7 100644
--- a/sys-apps/xinetd/metadata.xml
+++ b/sys-apps/xinetd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/xinetd/xinetd-2.3.15-r3.ebuild b/sys-apps/xinetd/xinetd-2.3.15-r3.ebuild
deleted file mode 100644
index fc91c97a8ad8..000000000000
--- a/sys-apps/xinetd/xinetd-2.3.15-r3.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils flag-o-matic systemd toolchain-funcs
-
-DESCRIPTION="powerful replacement for inetd"
-HOMEPAGE="http://www.xinetd.org/ https://github.com/xinetd-org/xinetd"
-SRC_URI="http://www.xinetd.org/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
-IUSE="perl rpc tcpd"
-
-DEPEND="tcpd? ( >=sys-apps/tcp-wrappers-7.6-r2 )
- rpc? ( net-libs/libtirpc:= )"
-RDEPEND="${DEPEND}
- perl? ( dev-lang/perl )"
-DEPEND="${DEPEND}
- virtual/pkgconfig"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-2.3.14-DESTDIR.patch
- epatch "${FILESDIR}"/${PN}-2.3.14-install-contrib.patch
- epatch "${FILESDIR}"/${PN}-2.3.15-config.patch
- epatch "${FILESDIR}"/${PN}-2.3.15-creds.patch #488158
- find -name Makefile.in -exec sed -i 's:\<ar\>:$(AR):' {} +
-}
-
-src_configure() {
- tc-export AR PKG_CONFIG
- if use rpc ; then
- append-cflags $(${PKG_CONFIG} --cflags libtirpc)
- else
- append-cppflags -DNO_RPC
- export ac_cv_header_{rpc_{rpc,rpcent,pmap_clnt},netdb}_h=no
- fi
- LIBS=$(${PKG_CONFIG} --libs libtirpc) \
- econf \
- $(use_with tcpd libwrap) \
- --with-loadavg
-}
-
-src_install() {
- emake DESTDIR="${ED}" install install-contrib
- use perl || rm -f "${ED}"/usr/sbin/xconv.pl
-
- newinitd "${FILESDIR}"/xinetd.rc6 xinetd
- newconfd "${FILESDIR}"/xinetd.confd xinetd
- systemd_dounit "${FILESDIR}/${PN}.service"
-
- newdoc contrib/xinetd.conf xinetd.conf.dist.sample
- dodoc AUDIT INSTALL README TODO CHANGELOG
-}
diff --git a/sys-apps/xinetd/xinetd-2.3.15.3-r2.ebuild b/sys-apps/xinetd/xinetd-2.3.15.3-r2.ebuild
deleted file mode 100644
index d5c268f31bbf..000000000000
--- a/sys-apps/xinetd/xinetd-2.3.15.3-r2.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic systemd toolchain-funcs autotools
-
-DESCRIPTION="powerful replacement for inetd"
-HOMEPAGE="https://github.com/xinetd-org/xinetd https://github.com/openSUSE/xinetd"
-SRC_URI="https://github.com/openSUSE/xinetd/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="perl rpc selinux tcpd"
-
-DEPEND="
- rpc? ( net-libs/libtirpc:= )
- selinux? ( sys-libs/libselinux )
- tcpd? ( >=sys-apps/tcp-wrappers-7.6-r2 )
-"
-RDEPEND="
- ${DEPEND}
- perl? ( dev-lang/perl )
-"
-DEPEND="
- ${DEPEND}
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/${P}-no-rpc.patch #651838
- "${FILESDIR}"/${P}-rpc-configure.patch #651838
-)
-
-src_prepare() {
- default
- eautoreconf
-
- sed -i \
- -e 's:/usr/bin/kill:/bin/kill:' \
- "contrib/${PN}.service" || die
-}
-
-src_configure() {
- econf \
- $(use_with tcpd libwrap) \
- $(use_with selinux labeled-networking) \
- $(use_with rpc) \
- --with-loadavg
-}
-
-src_install() {
- default
-
- use perl || rm -f "${ED}"/usr/sbin/xconv.pl
-
- newinitd "${FILESDIR}"/xinetd.rc6 xinetd
- newconfd "${FILESDIR}"/xinetd.confd xinetd
- systemd_dounit "contrib/${PN}.service"
-
- newdoc contrib/xinetd.conf xinetd.conf.dist.sample
- dodoc README.md CHANGELOG
-}
diff --git a/sys-apps/xinetd/xinetd-2.3.15.3.ebuild b/sys-apps/xinetd/xinetd-2.3.15.3.ebuild
deleted file mode 100644
index 2f5b894f0bb9..000000000000
--- a/sys-apps/xinetd/xinetd-2.3.15.3.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic systemd toolchain-funcs
-
-DESCRIPTION="powerful replacement for inetd"
-HOMEPAGE="https://github.com/openSUSE/xinetd"
-SRC_URI="https://github.com/openSUSE/xinetd/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-IUSE="perl selinux tcpd"
-
-DEPEND="
- selinux? ( sys-libs/libselinux )
- net-libs/libtirpc:=
- tcpd? ( >=sys-apps/tcp-wrappers-7.6-r2 )
-"
-RDEPEND="
- ${DEPEND}
- perl? ( dev-lang/perl )
-"
-DEPEND="
- ${DEPEND}
- virtual/pkgconfig
-"
-
-src_configure() {
- econf \
- $(use_with tcpd libwrap) \
- $(use_with selinux labeled-networking) \
- --with-loadavg
-}
-
-src_install() {
- default
-
- use perl || rm -f "${ED}"/usr/sbin/xconv.pl
-
- newinitd "${FILESDIR}"/xinetd.rc6 xinetd
- newconfd "${FILESDIR}"/xinetd.confd xinetd
- systemd_dounit "${FILESDIR}/${PN}.service"
-
- newdoc contrib/xinetd.conf xinetd.conf.dist.sample
- dodoc README.md CHANGELOG
-}
diff --git a/sys-apps/xinetd/xinetd-2.3.15.4-r1.ebuild b/sys-apps/xinetd/xinetd-2.3.15.4-r1.ebuild
new file mode 100644
index 000000000000..7eefb431eac1
--- /dev/null
+++ b/sys-apps/xinetd/xinetd-2.3.15.4-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools systemd
+
+DESCRIPTION="Powerful replacement for inetd"
+HOMEPAGE="https://github.com/xinetd-org/xinetd https://github.com/openSUSE/xinetd"
+SRC_URI="https://github.com/openSUSE/xinetd/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="perl rpc selinux tcpd"
+
+DEPEND="
+ rpc? ( net-libs/libtirpc:= )
+ selinux? ( sys-libs/libselinux )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6-r2 )
+"
+RDEPEND="
+ ${DEPEND}
+ perl? ( dev-lang/perl )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.3.15.4-0001-configure.ac-use-AC_USE_SYSTEM_EXTENSIONS.patch
+ "${FILESDIR}"/${PN}-2.3.15.4-0002-redirect-drop-deprecated-sys-signal.h-include.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e 's:/usr/bin/kill:/bin/kill:' \
+ "contrib/${PN}.service" || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_with tcpd libwrap) \
+ $(use_with selinux labeled-networking) \
+ $(use_with rpc) \
+ --with-loadavg
+}
+
+src_install() {
+ default
+
+ use perl || rm -f "${ED}"/usr/sbin/xconv.pl
+
+ newinitd "${FILESDIR}"/xinetd.rc6 xinetd
+ newconfd "${FILESDIR}"/xinetd.confd xinetd
+ systemd_dounit "contrib/${PN}.service"
+
+ newdoc contrib/xinetd.conf xinetd.conf.dist.sample
+ dodoc README.md CHANGELOG
+}
diff --git a/sys-apps/xinetd/xinetd-2.3.15.4.ebuild b/sys-apps/xinetd/xinetd-2.3.15.4.ebuild
deleted file mode 100644
index 5cac335e332f..000000000000
--- a/sys-apps/xinetd/xinetd-2.3.15.4.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic systemd toolchain-funcs autotools
-
-DESCRIPTION="powerful replacement for inetd"
-HOMEPAGE="https://github.com/xinetd-org/xinetd https://github.com/openSUSE/xinetd"
-SRC_URI="https://github.com/openSUSE/xinetd/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="perl rpc selinux tcpd"
-
-DEPEND="
- rpc? ( net-libs/libtirpc:= )
- selinux? ( sys-libs/libselinux )
- tcpd? ( >=sys-apps/tcp-wrappers-7.6-r2 )
-"
-RDEPEND="
- ${DEPEND}
- perl? ( dev-lang/perl )
-"
-DEPEND="
- ${DEPEND}
- virtual/pkgconfig
-"
-
-src_prepare() {
- default
- eautoreconf
-
- sed -i \
- -e 's:/usr/bin/kill:/bin/kill:' \
- "contrib/${PN}.service" || die
-}
-
-src_configure() {
- econf \
- $(use_with tcpd libwrap) \
- $(use_with selinux labeled-networking) \
- $(use_with rpc) \
- --with-loadavg
-}
-
-src_install() {
- default
-
- use perl || rm -f "${ED}"/usr/sbin/xconv.pl
-
- newinitd "${FILESDIR}"/xinetd.rc6 xinetd
- newconfd "${FILESDIR}"/xinetd.confd xinetd
- systemd_dounit "contrib/${PN}.service"
-
- newdoc contrib/xinetd.conf xinetd.conf.dist.sample
- dodoc README.md CHANGELOG
-}
diff --git a/sys-apps/xmbmon/metadata.xml b/sys-apps/xmbmon/metadata.xml
index 56c124413057..73dda144f9ac 100644
--- a/sys-apps/xmbmon/metadata.xml
+++ b/sys-apps/xmbmon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
diff --git a/sys-apps/xmbmon/xmbmon-2.0.5-r1.ebuild b/sys-apps/xmbmon/xmbmon-2.0.5-r1.ebuild
deleted file mode 100644
index a9cbcc73534d..000000000000
--- a/sys-apps/xmbmon/xmbmon-2.0.5-r1.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_P=${PN}${PV//.}
-
-DESCRIPTION="Mother Board Monitor Program for X Window System"
-HOMEPAGE="http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/download.html"
-SRC_URI="http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/xmbmon/${MY_P}.tar.gz"
-# http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/xmbmon/${MY_P}_A7N8X-VM.patch
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="X"
-
-RDEPEND="
- X? (
- x11-libs/libXt
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libICE
- )"
-DEPEND="${RDEPEND}"
-
-S=${WORKDIR}/${MY_P}
-PATCHES=(
- # "${DISTDIR}"/${MY_P}_A7N8X-VM.patch
- "${FILESDIR}"/${P}-fflush.patch
- "${FILESDIR}"/${P}-amd64.patch
- "${FILESDIR}"/${P}-pid.patch
- "${FILESDIR}"/${P}-loopback.patch
-)
-
-src_prepare() {
- default
-
- sed -i \
- -e "/^CFLAGS=/s/-O3/${CFLAGS}/" \
- -e '/^LDFLAGS=-s$/d' \
- Makefile.in || die
- sed -i \
- -e '/^[[:space:]]*CC=gcc/s,.*,:;,' \
- configure || die
-}
-
-src_compile() {
- emake mbmon
- use X && emake xmbmon
-}
-
-src_install() {
- dosbin mbmon
- doman mbmon.1
- dodoc ChangeLog* ReadMe* mbmon-rrd.pl
-
- if use X; then
- dosbin xmbmon
- doman xmbmon.1x
-
- insinto /etc/X11/app-defaults/
- newins xmbmon.resources XMBmon
- fi
-
- newinitd "${FILESDIR}"/mbmon.rc mbmon
- newconfd "${FILESDIR}"/mbmon.confd mbmon
-}
-
-pkg_postinst() {
- einfo "These programs access SMBus/ISA-IO ports without any kind"
- einfo "of checking. It is, therefore, very dangerous and may cause"
- einfo "a system-crash. Make sure you read ReadMe,"
- einfo "section 4, 'How to use!'"
-}
diff --git a/sys-apps/xmbmon/xmbmon-2.0.5-r2.ebuild b/sys-apps/xmbmon/xmbmon-2.0.5-r2.ebuild
new file mode 100644
index 000000000000..40e0701452e6
--- /dev/null
+++ b/sys-apps/xmbmon/xmbmon-2.0.5-r2.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P=${PN}${PV//.}
+
+DESCRIPTION="Mother Board Monitor Program for X Window System"
+HOMEPAGE="http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/download.html"
+SRC_URI="http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/xmbmon/${MY_P}.tar.gz"
+# http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/xmbmon/${MY_P}_A7N8X-VM.patch
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="gui"
+
+RDEPEND="
+ gui? (
+ x11-libs/libXt
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libICE
+ )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ # "${DISTDIR}"/${MY_P}_A7N8X-VM.patch
+ "${FILESDIR}"/${P}-fflush.patch
+ "${FILESDIR}"/${P}-amd64.patch
+ "${FILESDIR}"/${P}-pid.patch
+ "${FILESDIR}"/${P}-loopback.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e "/^CFLAGS=/s/-O3/${CFLAGS}/" \
+ -e '/^LDFLAGS=-s$/d' \
+ Makefile.in || die
+ sed -i \
+ -e '/^[[:space:]]*CC=gcc/s,.*,:;,' \
+ configure || die
+}
+
+src_compile() {
+ emake mbmon
+ use gui && emake xmbmon
+}
+
+src_install() {
+ dosbin mbmon
+ doman mbmon.1
+ dodoc ChangeLog* ReadMe* mbmon-rrd.pl
+
+ if use gui; then
+ dosbin xmbmon
+ doman xmbmon.1x
+
+ insinto /etc/X11/app-defaults/
+ newins xmbmon.resources XMBmon
+ fi
+
+ newinitd "${FILESDIR}"/mbmon.rc mbmon
+ newconfd "${FILESDIR}"/mbmon.confd mbmon
+}
+
+pkg_postinst() {
+ einfo "These programs access SMBus/ISA-IO ports without any kind"
+ einfo "of checking. It is, therefore, very dangerous and may cause"
+ einfo "a system-crash. Make sure you read ReadMe,"
+ einfo "section 4, 'How to use!'"
+}
diff --git a/sys-apps/yarn/Manifest b/sys-apps/yarn/Manifest
index a431fea5a5a0..b3e157667ab3 100644
--- a/sys-apps/yarn/Manifest
+++ b/sys-apps/yarn/Manifest
@@ -1,3 +1,4 @@
-DIST yarn-v1.22.10.tar.gz 1244965 BLAKE2B 6a9471a6905d89481665c099f00a985daacc8c7953327ee12b3d70f3f42dc304ceca01446281964d1af7a005ecae4a12ca55df637732e52821b4ecb9cdce6418 SHA512 d75dccd318f280abcbfd8d78b63546e11e7a8459c5dd737d0c8da2742cd5d7e3d7a5e668ce680234b0c09e71d128787777061d24c6e3ae4b6626086461e3ce25
-DIST yarn-v1.22.4.tar.gz 1244785 BLAKE2B 1f1eeb829096eaf19a8fdb48b46fa736769d9d3c247759e434413665186e4cccb750024afa836dae8a0130fc472df3c01805d263d81346e1dd7509e1b106e88a SHA512 a1833b862fe52169bd6c2a033045a07df5bc6a23595c259e675fed1b2d035ab37abe6ce309720abb6636d68f03615054b6292dc0a70da31c8697fda228b50d18
-DIST yarn-v1.22.5.tar.gz 1244837 BLAKE2B cf5054893c8937ceb6788c27f23005386449664b36dc31c6c0c3548438f1fdc5c5ec4b1b1642786c4d8732faf46ab58d2784d3768e12233f241b9b1c6f173734 SHA512 c33c040ed57eb05c04905b8996db31a34099f0c18dbf1818959c5592514abc99f1180592561ec5d3e760c084dbcf2dcdf3ebb4fe8918f082b6aa089cf10921bb
+DIST yarn-v1.22.17.tar.gz 1246198 BLAKE2B ae0b86cdb248a0f81d1a4a23d15ef9aab185fcda7ef7f8873959c3e54dfc305219afb2416264911098c4e3a6a65a33d248ff97c8e0ca043b118de64e003c3d9b SHA512 1f4a76e35057687d1437d21e1fffd14fcdad9793df36b695a52a44a16f844fb966a29342eb5799f80f880ef53c14ce86a39bf1d7ad929dc0cbf09d598d106b89
+DIST yarn-v1.22.19.tar.gz 1244259 BLAKE2B f103d148bafa76bddcdf9e26356fbebba87f7c7c707f823a54404302571e1d09e25569406fc721d74f53cfdac8706dec6bd40da39b7d44000381b1f36d0d8de0 SHA512 ff4579ab459bb25aa7c0ff75b62acebe576f6084b36aa842971cf250a5d8c6cd3bc9420b22ce63c7f93a0857bc6ef29291db39c3e7a23aab5adfd5a4dd6c5d71
+DIST yarn-v1.22.21.tar.gz 1243124 BLAKE2B 99a53db799f07c6aed1bb8d5d2997b6caef6d518118ef8bea4974fdaf3cc0b6a7a7fa17fb9244c8fb2915bffed77d5ed8dd701eecdcf4491d26b68f92750d8c7 SHA512 75fc33d00ee14733272c04090b3a646fb4021fce85103b2451f01f60f47be7dc9811c76b26465fe6a3735996ac55fd9e80f918cc45422af0888047f4c9ba8f9d
+DIST yarn-v1.22.22.tar.gz 1247457 BLAKE2B a81ec778e774f85da6d5802d4abbc579f1c9194f6e2681ef239cc336e4ec2b502b412f303fa4a8c61dda08a00444e120487e04aa19e89113f844c0db4fd54098 SHA512 c8b361ca353e3ca15e32eadf7f1617449f485fe488860e49774ea35dac1544f39ab1104f82bf24528de6e553eef53c4604a560e522dfab8433425ee13ccfd6f9
diff --git a/sys-apps/yarn/metadata.xml b/sys-apps/yarn/metadata.xml
index 52bf09ed0f47..d6b741bfc879 100644
--- a/sys-apps/yarn/metadata.xml
+++ b/sys-apps/yarn/metadata.xml
@@ -1,11 +1,15 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
+ <maintainer type="person" proxied="yes">
+ <email>me@rahil.rocks</email>
+ <name>Rahil Bhimjiani</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
<email>saboya@gmail.com</email>
<name>Rodrigo Saboya</name>
</maintainer>
- <maintainer type="project">
+ <maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/yarn/yarn-1.22.10.ebuild b/sys-apps/yarn/yarn-1.22.10.ebuild
deleted file mode 100644
index f320aff0f830..000000000000
--- a/sys-apps/yarn/yarn-1.22.10.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_P="${PN}-v${PV}"
-
-DESCRIPTION="Fast, reliable, and secure node dependency management"
-HOMEPAGE="https://yarnpkg.com"
-SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-RDEPEND="!dev-util/cmdtest
- net-libs/nodejs"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
-}
-
-src_install() {
- local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
- insinto "${install_dir}"
- doins -r .
- dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
- dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
-
- while read -r -d '' path; do
- read -r shebang < "${ED}${path}" || die
- [[ "${shebang}" == \#\!* ]] || continue
- fperms +x "${path}"
- done < <(find "${ED}" -type f -printf '/%P\0' || die)
-}
diff --git a/sys-apps/yarn/yarn-1.22.17.ebuild b/sys-apps/yarn/yarn-1.22.17.ebuild
new file mode 100644
index 000000000000..bb8df23d1c0e
--- /dev/null
+++ b/sys-apps/yarn/yarn-1.22.17.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_P="${PN}-v${PV}"
+
+DESCRIPTION="Fast, reliable, and secure node dependency management"
+HOMEPAGE="https://yarnpkg.com"
+SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+IUSE=""
+
+RDEPEND="!dev-util/cmdtest
+ net-libs/nodejs"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ default
+ sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
+}
+
+src_install() {
+ local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
+ insinto "${install_dir}"
+ doins -r .
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
+
+ while read -r -d '' path; do
+ read -r shebang < "${ED}${path}" || die
+ [[ "${shebang}" == \#\!* ]] || continue
+ fperms +x "${path}"
+ done < <(find "${ED}" -type f -printf '/%P\0' || die)
+}
diff --git a/sys-apps/yarn/yarn-1.22.19.ebuild b/sys-apps/yarn/yarn-1.22.19.ebuild
new file mode 100644
index 000000000000..a1a20e84d28e
--- /dev/null
+++ b/sys-apps/yarn/yarn-1.22.19.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_P="${PN}-v${PV}"
+
+DESCRIPTION="Fast, reliable, and secure node dependency management"
+HOMEPAGE="https://yarnpkg.com"
+SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+IUSE=""
+
+RDEPEND="!dev-util/cmdtest
+ net-libs/nodejs"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ default
+ sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
+}
+
+src_install() {
+ local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
+ insinto "${install_dir}"
+ doins -r .
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
+
+ while read -r -d '' path; do
+ read -r shebang < "${ED}${path}" || die
+ [[ "${shebang}" == \#\!* ]] || continue
+ fperms +x "${path}"
+ done < <(find "${ED}" -type f -printf '/%P\0' || die)
+}
diff --git a/sys-apps/yarn/yarn-1.22.21.ebuild b/sys-apps/yarn/yarn-1.22.21.ebuild
new file mode 100644
index 000000000000..02435ca2eafe
--- /dev/null
+++ b/sys-apps/yarn/yarn-1.22.21.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}-v${PV}"
+
+DESCRIPTION="Fast, reliable, and secure node dependency management"
+HOMEPAGE="https://yarnpkg.com"
+SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE=""
+
+RDEPEND="!dev-util/cmdtest
+ net-libs/nodejs"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ default
+ sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
+}
+
+src_install() {
+ local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
+ insinto "${install_dir}"
+ doins -r .
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
+
+ while read -r -d '' path; do
+ read -r shebang < "${ED}${path}" || die
+ [[ "${shebang}" == \#\!* ]] || continue
+ fperms +x "${path}"
+ done < <(find "${ED}" -type f -printf '/%P\0' || die)
+}
diff --git a/sys-apps/yarn/yarn-1.22.22.ebuild b/sys-apps/yarn/yarn-1.22.22.ebuild
new file mode 100644
index 000000000000..02435ca2eafe
--- /dev/null
+++ b/sys-apps/yarn/yarn-1.22.22.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}-v${PV}"
+
+DESCRIPTION="Fast, reliable, and secure node dependency management"
+HOMEPAGE="https://yarnpkg.com"
+SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE=""
+
+RDEPEND="!dev-util/cmdtest
+ net-libs/nodejs"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ default
+ sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
+}
+
+src_install() {
+ local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
+ insinto "${install_dir}"
+ doins -r .
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
+ dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
+
+ while read -r -d '' path; do
+ read -r shebang < "${ED}${path}" || die
+ [[ "${shebang}" == \#\!* ]] || continue
+ fperms +x "${path}"
+ done < <(find "${ED}" -type f -printf '/%P\0' || die)
+}
diff --git a/sys-apps/yarn/yarn-1.22.4.ebuild b/sys-apps/yarn/yarn-1.22.4.ebuild
deleted file mode 100644
index 0374a801dbc1..000000000000
--- a/sys-apps/yarn/yarn-1.22.4.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_P="${PN}-v${PV}"
-
-DESCRIPTION="Fast, reliable, and secure node dependency management"
-HOMEPAGE="https://yarnpkg.com"
-SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-IUSE=""
-
-RDEPEND="!dev-util/cmdtest
- net-libs/nodejs"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
-}
-
-src_install() {
- local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
- insinto "${install_dir}"
- doins -r .
- dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
- dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
-
- while read -r -d '' path; do
- read -r shebang < "${ED}${path}" || die
- [[ "${shebang}" == \#\!* ]] || continue
- fperms +x "${path}"
- done < <(find "${ED}" -type f -printf '/%P\0' || die)
-}
diff --git a/sys-apps/yarn/yarn-1.22.5.ebuild b/sys-apps/yarn/yarn-1.22.5.ebuild
deleted file mode 100644
index 706453936e75..000000000000
--- a/sys-apps/yarn/yarn-1.22.5.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_P="${PN}-v${PV}"
-
-DESCRIPTION="Fast, reliable, and secure node dependency management"
-HOMEPAGE="https://yarnpkg.com"
-SRC_URI="https://github.com/yarnpkg/yarn/releases/download/v${PV}/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="!dev-util/cmdtest
- net-libs/nodejs"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- sed -i 's/"installationMethod": "tar"/"installationMethod": "portage"/g' "${S}/package.json" || die
-}
-
-src_install() {
- local install_dir="/usr/$(get_libdir)/node_modules/yarn" path shebang
- insinto "${install_dir}"
- doins -r .
- dosym "../$(get_libdir)/node_modules/yarn/bin/yarn.js" "/usr/bin/yarn"
- dosym "../$(get_libdir)/node_modules/yarn/bin/yarnpkg" "/usr/bin/yarnpkg"
-
- while read -r -d '' path; do
- read -r shebang < "${ED}${path}" || die
- [[ "${shebang}" == \#\!* ]] || continue
- fperms +x "${path}"
- done < <(find "${ED}" -type f -printf '/%P\0' || die)
-}
diff --git a/sys-apps/zorroutils/Manifest b/sys-apps/zorroutils/Manifest
index 0150b6d219e4..27c85530f9ba 100644
--- a/sys-apps/zorroutils/Manifest
+++ b/sys-apps/zorroutils/Manifest
@@ -1,2 +1 @@
-DIST zorroutils-0.04.tar.gz 12205 BLAKE2B b5818073551b39d715c8e8fbaaba2b827a7a4f4442bac76876037721d1202cf5893779cd22fba0451d2a0e7eb15266b08af242a1fa1c6be3eff2e65949523803 SHA512 e00a621cc64f3c50ae940809eb79ee145dab7d042e5a2b7fafe14bc7f9f85ff2e1b592d8922e628c5dbcecab95e6bd634d0cbbc1cc84f72136a5235480e6274f
DIST zorroutils-0.05.tar.gz 15428 BLAKE2B e9baa6de4da3cbc6754c52d9e0c1fe34ce735b4d5377772c1765bdd30ae988f92125a5f254fcaab797eed33d65dad59e2a385fba3fc4610a9cfb6c34c6b45e7e SHA512 5260cfc7ccf77d0a0fe012c32ab492824903cb0f1397a82cf4c52aa12df5845b9e3d53aa1f619cc3a0637dfb42e9b75f80d715e4e912c5b8f42e0588f9053421
diff --git a/sys-apps/zorroutils/files/zorroutils-0.04-fix-build-system.patch b/sys-apps/zorroutils/files/zorroutils-0.04-fix-build-system.patch
deleted file mode 100644
index 6e05cab86d81..000000000000
--- a/sys-apps/zorroutils/files/zorroutils-0.04-fix-build-system.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Respect user variables
-
---- a/Makefile
-+++ b/Makefile
-@@ -2,10 +2,6 @@
- # Makefile for Linux Zorro Utilities
- # Copyright (C) 1998--2000 Geert Uytterhoeven <geert@linux-m68k.org>
-
--CC=gcc
--OPT=-O3 -fomit-frame-pointer
--CFLAGS=$(OPT) -Wall
--
- ROOT=/
- PREFIX=/usr
-
diff --git a/sys-apps/zorroutils/metadata.xml b/sys-apps/zorroutils/metadata.xml
index 0a210accc7d8..ba47ef6d8ccc 100644
--- a/sys-apps/zorroutils/metadata.xml
+++ b/sys-apps/zorroutils/metadata.xml
@@ -1,14 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
+ <name>m68k architecture team</name>
<email>m68k@gentoo.org</email>
</maintainer>
-<maintainer type="person">
+<maintainer type="person" proxied="yes">
<email>gentoo@kolla.no</email>
<name>Kolbjørn Barmen</name>
</maintainer>
-<maintainer type="project">
+<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
diff --git a/sys-apps/zorroutils/zorroutils-0.04.ebuild b/sys-apps/zorroutils/zorroutils-0.04.ebuild
deleted file mode 100644
index ed9819812d27..000000000000
--- a/sys-apps/zorroutils/zorroutils-0.04.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Zorro bus utility for Amigas running 2.1 and later kernels"
-HOMEPAGE="http://users.telenet.be/geertu/Download/#zorro"
-SRC_URI="http://users.telenet.be/geertu/Download/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~m68k ~ppc"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.04-20021014.diff
- "${FILESDIR}"/${PN}-gentoo.diff
- "${FILESDIR}"/${PN}-0.04-fix-build-system.patch
-)
-
-src_configure() {
- tc-export CC
- append-cflags -Wall
-}
-
-src_install() {
- dosbin lszorro
- einstalldocs
- doman *.8
-
- insinto /usr/share/misc
- doins zorro.ids
-}
diff --git a/sys-apps/zorroutils/zorroutils-0.05.ebuild b/sys-apps/zorroutils/zorroutils-0.05.ebuild
index f5e28bc3f6ca..c5c317af0be4 100644
--- a/sys-apps/zorroutils/zorroutils-0.05.ebuild
+++ b/sys-apps/zorroutils/zorroutils-0.05.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit flag-o-matic toolchain-funcs
+inherit toolchain-funcs
DESCRIPTION="Zorro bus utility for Amigas running 2.1 and later kernels"
HOMEPAGE="http://users.telenet.be/geertu/Download/#zorro"
diff --git a/sys-apps/zram-generator/Manifest b/sys-apps/zram-generator/Manifest
new file mode 100644
index 000000000000..74f3fd2fba6c
--- /dev/null
+++ b/sys-apps/zram-generator/Manifest
@@ -0,0 +1,39 @@
+DIST ahash-0.4.7.crate 51474 BLAKE2B 0974b90539398d61903ce7fcbecdfcd802fcb5c7ed631be919ec17be6951e68bc80787876cafebd33e40a80605f6e2352a86047077bc40575420bb6ee1a4915a SHA512 2f42cdbacb2b2f9bd7d94a4cc61294d7813428157ce242ba82f7c3fccb6e4b83c767f4dedd35ff26ae61a89506b388d7cf96af4e727c29a14b25b9f82b1f2126
+DIST anyhow-1.0.45.crate 35468 BLAKE2B 0a6e6bb7a04315e6aab21ad1da743b4087ed95e7bfb7f143b4c5b1cb9527c1e1f9c334bf94c8aaf7bb98f3fc6b0b0cb87244d13808cb86fb76d07555304db90f SHA512 a2ea3a764024dc5d5c176890e22aa9e91e18c4252e04548baeb6ed8cbc11ba8e3b0220758e7b1a670e934da0f40e747ce02520788c0e557cf9ed05b19806fd50
+DIST autocfg-1.0.1.crate 12908 BLAKE2B 40c53cab298e4f26634c3acff3ece6a3371188d91dbf377ed664eabedcde20536edaa93daf406618f37edde019f049a6e7b9a47f627344587dbd126bee2b5e3a SHA512 630b348acb98b012e97804e6325d03c89abc22f2157762c59144c04e6c733daf550bdc7f0fe0b9f3b50e15dae8c1c3c4bdfce3d805b02f0fc987311f5332419b
+DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
+DIST cc-1.0.72.crate 57495 BLAKE2B b2057ca53aacafa063a4eaa907bfb65aa32ce01a74a90b9085c8243a87723cee8ce79e4904f9d205f9d451598ee34495f8879d27c189477ca43bd39b88b5ea2e SHA512 e9a5b283b2a1fee1030009068c1f87291ec1dab7584a0892f27cc7e523c8fdfd5d986281d9aec1a00af706af1e61d7e64c245c74be7b39c8c022ae2d4f87de8d
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST clap-2.33.3.crate 201925 BLAKE2B bec9c866481c5b3fddeb314f68af9bce38fc421e42816182de3209e8ea3447b72cf033e6251eea27fe974eff8085b7d98cdd2911b5cc0ec6b4bf4c750deb8a25 SHA512 3eb0fd648e2e3f9e5ff69a5e6cf0d867304fe18523accd036f28a86de368e4774088a6936c108ccc045092c539fe7f7494ea96420ebf6b4bec16880cea84bedf
+DIST ctor-0.1.21.crate 9303 BLAKE2B 8feeaacd3d870b721ecfed7c8df60a27005de1f2a099eef816bd6df2d7b07dbfa00badeef44027398ff4505871a69814d7d4ec90b07d36e371099e4d0aebfae6 SHA512 18a914f5bd55172e5ff199778babad9a20dd4214f36f24cc00531db5e169af66f77eacab425e8e64d053907366ebd3b448a0c3275ee1f8244822778b62c4cb71
+DIST dlv-list-0.2.3.crate 12311 BLAKE2B c74bc2b7e8fa65443c8c8c8c44d5ccfa831ce63e3603797f193a12f78f249e5ed0fb57983469355bf3549ce335fdfac43eb4644e648296a1cd3f48f1e59b35e6 SHA512 ac464c8d1ccbb43b48618cf8912067f28e2d4f53d648cd8b6b8f1b2e2688d2e39ffb8d53faa0f665d23487fa7927258e60ff01e10df584a9e274583d8dc279ae
+DIST fasteval-0.2.4.crate 267521 BLAKE2B 2abd639d65e45fb31aada3d776a47eed7cc16f07fc191674fb8018696ef9cecf9fd65733e43702208023f86ef4f2ba7be4d001aada35d34aac64761938b33bc5 SHA512 5328fecd58aadb67cd0f8500c3faba001bcc0c71f3eb47e1e6cbd7bb18248d61bc79985f6a43166a0324121ca1c93425ed7a3447e3d0d4d0851339ed1802a5e5
+DIST fs_extra-1.2.0.crate 29918 BLAKE2B 92e5de4cdaa16ed8c2737e988f8f2419e394f56e30ec43d9a29dbadc13ccbbdff7cf2b30788d37f160123df83fa998b966fc9b5f793b6e15f84af4dda7ec4cd1 SHA512 66670d624394874d7f786f8d362438c53f5b18008909ab8e7a74e82518dbc189e37588836f05f19dcd4718f4c1a5296fdf274380d574b1f475e28891ecdd6c91
+DIST getrandom-0.2.3.crate 26261 BLAKE2B 3e52a87b9355f850e07e5080c20e1ab3acfa927bae28c63bb8bfd6a773ad77be96d3ba770c344631cc0f2d9a95aac920790173168b102e25f50480ee96663569 SHA512 e6da64ed529cb0fc000b613f75187ed6b20f716e721d8a02ac2ae39c507fb9f6189ebb66b522d28584eff1e7e9efc274cad6bfe43f464f58053701e1d51c603d
+DIST hashbrown-0.9.1.crate 77734 BLAKE2B d59002253112cf92173c3c1b305fd03fb7318ef187d7e033433baf6a354db046d1f3fe0387b3cf500fbcc0f83d2b2076527ba7cda2695f7627eca0bc3e3487c1 SHA512 dfa4742111f6fe757b7fa97f04c7b4a78ce9708c87e8e09ecf3c28f2566e48af9885fda380ed918cec37b5c696110fbdd30273aba6e7d2221c9e65f72af064fd
+DIST libc-0.2.107.crate 554639 BLAKE2B 583cc24943707bbd53823f15fddfececd7acadb5a4d7dc5d0eb07d7b4d851b93500f1e4081b70c6ce3cc76700bdd6c4173ba710fdd52af7776ec7f31aefa3714 SHA512 df1586889c97d45c95f47495f8285c273c143f1861e632b326345ee66da63c227c064d9e12a6a1b48cfb866c70010a4ad407fed120a1a808da7a345777a8f909
+DIST liboverdrop-0.0.2.crate 8714 BLAKE2B a60988a848d21390b46538f02a97cec247184eea7e72a4d77bb243a2476d8ac1d88f964c91ffc0ebefd1215c4c7538fb0a835c4cb41bc153ab89e0b2d98b3c6a SHA512 084c2c2e4c1ee787d5af53ce20f7118f9deb4f1f34b242ca1dd928a71515660b388eed94d1eedca108b3f23c4a8dc4e4b778b6b8a8704850989af63a8be20bdc
+DIST log-0.4.14.crate 34582 BLAKE2B ddfba35947ae1f5905cd9ecb9eb862a78af6f00ee8b8fe6258b369b140928fe677a02b1b3ca5bdec36ff2b16abd85a9f49688fd5f3d1ba2b2905e7f96b8a84c1 SHA512 796100167663d85a7bc4244cd305e9b3f0a1b1520764b63464698eb136318d0928c40c16f5d19d9f602a5bf769851275bbd48d66b088b0c37be7a6fb62def7cc
+DIST memoffset-0.6.4.crate 7664 BLAKE2B 098783d0fde7268b16fc5c9f5df005b93daac18092f04d981559b9f0fa310344c6fbbb93d42587ec7107a5c4e8d757508377dadf03471dbd7022f3bdb5b3da4b SHA512 bf8d05b72571ccdef32a93cc4489ab4cb7abd41415d55572d1dfb983053afe3eb2615e968d87a326af90c5702b9959150f985a4186acfd61df9b69a74e99713d
+DIST nix-0.22.2.crate 227371 BLAKE2B 614f863ba54c57e247d26df2c0673270fb2ee19dc729f8b2340139556fae943cf3b0499532d3f42a02dc26f98b62558921568c46a99f2ebc348b37dce0f14b30 SHA512 860c6cfe77117c28ea54fc5587a125e8ab14acec2dcf77f70d3e43ea574f5272ebb05999b266142616bd92aa613f8c2f60b026b95e758975601df9345a2dbf71
+DIST ordered-multimap-0.3.1.crate 20631 BLAKE2B 2d874bb9b37ea109cb7840209c4811c872bddb96f4fec4c936400c57e9a16c04fe801eb72a5b4877762dc9afb7d778c15f2c1efdc34a05b9405212cbf14e6c51 SHA512 37b827165659529e02e303a15ae51c1291e521510a11703ee4245f899d45a2a33237a85bc5e10aeb229f16647f544b37f45a35721c6ef6d6c3c75874a373fdc3
+DIST ppv-lite86-0.2.15.crate 22002 BLAKE2B 3f967f112ba799f18a3f897c944ea656994abdc7c912868023de90d3885a87d9544159c44b6aeeffd83c1fe0172e326bed4044c2d199ca899da4f8420629736c SHA512 6dac73153d244cca97ea00e429f783a7d03b48f10ee450cf6f8d77581010b28be5048f53322b0c888b425b5085f440b6ea90599ea00c55c641de6e29da42f0b3
+DIST proc-macro2-1.0.32.crate 41003 BLAKE2B e8da70dae2ee75aa2c344602e55cbbf9ee5316ff6182c870b64f9fe4b33e60b9fb1a22137acf357615331f2e4079ab1e8964a2cb0234fa439d1b3d8d514c2eff SHA512 8631714c226c8a6fb330a529f42214216057eca85cfa63afd3de8600d2638e2be45efa54155ce73625883bcbabc2c56cb865ad9dda04e2c7092d955caed48abf
+DIST quote-1.0.10.crate 29960 BLAKE2B fbd4e3e0e0f452e64b30399fdfaef318cead505d05f0c61db61a7aa3cd5a3300220b4ba2656603f88bc0b535390ab4d0ec101a919ace1d442a3e979f08e8d48f SHA512 08613679b564ea7d750117d3a2907ba957d5d595bdfa8016344f99a232c72c6b08acb882dff45c34c9e4c8f93f879fb308b36125572722aac04fbc6bb0c666f0
+DIST rand-0.8.4.crate 87406 BLAKE2B c09358416d2425a8243b623346fe71bf6f03fddab1a23fc752f4303ba7c241b3606629e4edf0ea720785bda0bca534acd675c2de079b78eac3df24a1ad6ba654 SHA512 77ae0e988e31e12f7d3f2c40814f930eecbc94c4aced827c337be78eeeabf39fde2dc5c4fda059afdc01285ff4afe30393c32694377de004feff16207606558e
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.3.crate 21938 BLAKE2B 7c73e2da6d423c68dbbca31f6528bdb3f42fa39b30d0951ca7058e05ce16ef09ef5e047697b33ec17720314f934512c0907aeb892df93d63abd8b63eda2b50a7 SHA512 0fc31f96ca8ebba8c179367de01458e909265e1d627ec0c5620be7c8e83d2f9570471d6ec2cb2bc4bc531505b02fc31f1165708cc1357906791c87123b06ee87
+DIST rand_hc-0.3.1.crate 11891 BLAKE2B b3aa810638390eea4245ebb711de88ccdc2a64350a5c6e14064fea7685d49746b4b77215dbb8374fa7a6cbc2cfd79fb553513d6e551acf64586d8303f7d4f3a0 SHA512 582bb44b81c27e698eb57c6f06444b8a7c9d3f7ee73f4e14be8004c4bfd3bbfd9795c69f7294b5e87107e86b90fa3e91ad080964474af81c92705d356e43fbb5
+DIST redox_syscall-0.2.10.crate 23582 BLAKE2B 7253dd96415e7b70df488c208d86c250c670b1245ac6573a59085faabbde9e33fabfacd233e7d737e365493db14008c180274b41ea0a4af5f6f98eec666a873f SHA512 ef012eb4bffe32119e50ecdbef4cc31f6e84a344e94f026484fe4e2c904f94053a8b6249fb6bd8ada31b3ecfbf0096085283bb68aeb62b1b01b57f35794aee92
+DIST remove_dir_all-0.5.3.crate 9184 BLAKE2B ab7ef94e0230ddc9b363f038254a180881bbc20eb04a254f97e6f71ed491c99ba1c88f5e85632d450243882a4a0df63f3b8b183bc1fbca9caf30ec23d577b1d7 SHA512 50417d6d8a33912193a1ed37eb72b47431b12ae65d2780cdb7080c3d141e63819da13751c3fb737685cea322f70b36d413389c3dc01aa12b4dce615aefed0e2c
+DIST rust-ini-0.17.0.crate 15155 BLAKE2B 654c74c69dbef6ccea8a31070683b9008160340c0768b2e2d169554032cf5ff58533a824c42af83924eb10c2273bd0599bd397ae8322e7179c978015b31249c7 SHA512 2e89d4a60ba33115d3de5b7da551fd47f2350b3e77cc1148c5141134c7ac2bb87de152c67d4c782ae69d3dc04b4159c28eebab1810ce8b9b11bccc3f1a804410
+DIST syn-1.0.81.crate 234144 BLAKE2B 7258c4a0ad0eb0c807912c297233eeb195d22b44cb2078e13e43eb90f1c82ecda6f7672ab072832ce130ccb953c1bb23c8440a3df77b714f462fe39cc6e6e1a3 SHA512 288ddaf4dc5ad2fdb3bc36800d94b53e2bfe9ac74a61a5d158bfcad3728955bebac6a900a5881c7d4abde4f3759515a1dd877e1421c226b85aff99a5ee649390
+DIST tempfile-3.2.0.crate 25892 BLAKE2B ea6870c642c5712c7c96072a5d3dc04d75c19cf1413081e3bf53c1ae6c75e05ab537446071cadb5460b34f7fb7715a03005a1335a64139458db938c3415f7c0d SHA512 56d1c5af7cb6863f9eac990354126979534aae7bf298bc8b1c918c7317ce2ba31f53089aaa1ecf8baa4a39d4111d74f4450be82b509b3c2aa0428880029e663a
+DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
+DIST unicode-width-0.1.9.crate 16745 BLAKE2B 38d4b92e47a284d6881a8073089be59a73d82b91efe5522f55be977f95f479890b6c02cd519544729f1b1e62eb21bcfff8c5f5382917f953603b760e39cf1ea7 SHA512 0f5ec46c57e3b5e50cb8430c89db8d9c129e80ca11a9c398b5312bfe95001e19ca3efbfeb01c3ac09c4ce7e26c6ee1f352f7e114ecef78cefd68c54d2d50f5f4
+DIST unicode-xid-0.2.2.crate 14955 BLAKE2B 6c6da49ac08dbd8b3248272224d6bff96b9cd1f36029b1937a58a0b929c3a48326053305ed49e73edd70f572f5abbc4817cedc899c69e3457805ad056669f6af SHA512 92ffd0dd34e3ca235ecf110b38c447d3ec1faa23d76c112457f28d432f92fa6b5f428bc5e1bfd278f361f55426dd96e19ecb0d3eff6cf250892f069c52bd89a8
+DIST wasi-0.10.2+wasi-snapshot-preview1.crate 27505 BLAKE2B 4eb8644b945633d6e856ad80dd74990be19eb6af99823b147163384f61d471e2d9ec054d78a7064072344be53783e57073e8fffc6d5555c149b4834a9bf31dba SHA512 06977a294d76369a3867c45abdd8a87ea5c84e5a3681075ba0d14af1aee3114ff24495c7e7f7fe1e6e42230e65fba0e062898e69bc89e0209af62c2d14094ec7
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST zram-generator-1.1.2.tar.gz 26483 BLAKE2B 20a3519c21f543626efb4bf507f0f59dc6dd2ec208eccbcbdbb07a96e7f03ca5539cda17e4a96187267f71f3d771921f7a83fbdab26051c312640c1118a3b186 SHA512 334864dade2c5e0ca5519c0d1d3448e115440538dd04d29857f71cdb6383c65afebd022903f7fa768824becd90072a6a15ed9e1709bbe2676fb71d9f6b9b5f42
diff --git a/sys-apps/zram-generator/metadata.xml b/sys-apps/zram-generator/metadata.xml
new file mode 100644
index 000000000000..6982ee5cb5a0
--- /dev/null
+++ b/sys-apps/zram-generator/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">systemd/zram-generator</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/zram-generator/zram-generator-1.1.2.ebuild b/sys-apps/zram-generator/zram-generator-1.1.2.ebuild
new file mode 100644
index 000000000000..e9c8dc4ca9ff
--- /dev/null
+++ b/sys-apps/zram-generator/zram-generator-1.1.2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ ahash-0.4.7
+ anyhow-1.0.45
+ autocfg-1.0.1
+ bitflags-1.2.1
+ cc-1.0.72
+ cfg-if-1.0.0
+ clap-2.33.3
+ ctor-0.1.21
+ dlv-list-0.2.3
+ fasteval-0.2.4
+ fs_extra-1.2.0
+ getrandom-0.2.3
+ hashbrown-0.9.1
+ libc-0.2.107
+ liboverdrop-0.0.2
+ log-0.4.14
+ memoffset-0.6.4
+ nix-0.22.2
+ ordered-multimap-0.3.1
+ ppv-lite86-0.2.15
+ proc-macro2-1.0.32
+ quote-1.0.10
+ rand-0.8.4
+ rand_chacha-0.3.1
+ rand_core-0.6.3
+ rand_hc-0.3.1
+ redox_syscall-0.2.10
+ remove_dir_all-0.5.3
+ rust-ini-0.17.0
+ syn-1.0.81
+ tempfile-3.2.0
+ textwrap-0.11.0
+ unicode-width-0.1.9
+ unicode-xid-0.2.2
+ wasi-0.10.2+wasi-snapshot-preview1
+ winapi-0.3.9
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-x86_64-pc-windows-gnu-0.4.0
+"
+
+inherit cargo systemd toolchain-funcs
+
+DESCRIPTION="Systemd unit generator for zram swap devices"
+HOMEPAGE="https://github.com/systemd/zram-generator"
+SRC_URI="https://github.com/systemd/zram-generator/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ $(cargo_crate_uris ${CRATES})"
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv"
+IUSE="+man"
+
+BDEPEND="virtual/rust
+ virtual/pkgconfig
+ man? ( app-text/ronn-ng )"
+
+QA_FLAGS_IGNORED="lib/systemd/system-generators/zram-generator"
+
+src_configure() {
+ cargo_src_configure
+
+ sed -e "s,@SYSTEMD_SYSTEM_GENERATOR_DIR@,$(systemd_get_systemgeneratordir)," \
+ < units/systemd-zram-setup@.service.in \
+ > units/systemd-zram-setup@.service || de
+}
+
+src_compile() {
+ tc-export PKG_CONFIG
+
+ export SYSTEMD_UTIL_DIR="$(systemd_get_utildir)"
+ cargo_src_compile
+
+ use man && emake man
+}
+
+src_install() {
+ # https://bugs.gentoo.org/715890
+ mv man man.bkp || die
+ cargo_src_install
+ mv man.bkp man || die
+
+ mkdir -p "${D}/$(systemd_get_systemgeneratordir)" || die
+ mv "${D}"/usr/bin/zram-generator "${D}/$(systemd_get_systemgeneratordir)" || die
+
+ systemd_dounit units/systemd-zram-setup@.service
+ if use man ; then
+ dodoc zram-generator.conf.example
+ doman man/zram-generator.8 man/zram-generator.conf.5
+ fi
+}