Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
265 commits
Select commit Hold shift + click to select a range
ea0969e
app-containers/incus: Sync with Gentoo
Jul 20, 2026
fb081e2
app-containers/lxc: Sync with Gentoo
Jul 20, 2026
1958d42
app-containers/netavark: Sync with Gentoo
Jul 20, 2026
242156c
app-containers/podman: Sync with Gentoo
Jul 20, 2026
5c32213
app-containers/runc: Sync with Gentoo
Jul 20, 2026
dd8ab5c
app-crypt/adcli: Sync with Gentoo
Jul 20, 2026
2d7ca04
app-crypt/gnupg: Sync with Gentoo
Jul 20, 2026
6da9292
app-crypt/gpgme: Sync with Gentoo
Jul 20, 2026
ca9fbc2
app-crypt/libmd: Sync with Gentoo
Jul 20, 2026
ef4fc25
app-crypt/mit-krb5: Sync with Gentoo
Jul 20, 2026
2bebb22
app-crypt/p11-kit: Sync with Gentoo
Jul 20, 2026
44d8fdc
app-crypt/pinentry: Sync with Gentoo
Jul 20, 2026
9bb78a4
app-crypt/rhash: Sync with Gentoo
Jul 20, 2026
4e401a0
app-crypt/tpm2-tools: Sync with Gentoo
Jul 20, 2026
a164a81
app-crypt/tpm2-tss: Sync with Gentoo
Jul 20, 2026
1f2afde
app-doc/eclass-manpages: Sync with Gentoo
Jul 20, 2026
7c9db89
app-editors/nano: Sync with Gentoo
Jul 20, 2026
a9eaa92
app-emulation/qemu: Sync with Gentoo
Jul 20, 2026
483eeb2
app-emulation/qemu-guest-agent: Sync with Gentoo
Jul 20, 2026
d1d9ee7
app-emulation/virt-firmware: Sync with Gentoo
Jul 20, 2026
3bbd955
app-eselect/eselect-pinentry: Sync with Gentoo
Jul 20, 2026
f26b0f6
app-misc/jq: Sync with Gentoo
Jul 20, 2026
79e9628
app-misc/mime-types: Sync with Gentoo
Jul 20, 2026
1f3886b
app-portage/gentoolkit: Sync with Gentoo
Jul 20, 2026
da01a05
app-portage/getuto: Sync with Gentoo
Jul 20, 2026
88403e6
app-shells/bash: Sync with Gentoo
Jul 20, 2026
e422b89
app-shells/bash-completion: Sync with Gentoo
Jul 20, 2026
1869ff5
app-text/asciidoc: Sync with Gentoo
Jul 20, 2026
6642944
app-text/scdoc: Sync with Gentoo
Jul 20, 2026
6125b52
dev-build/autoconf: Sync with Gentoo
Jul 20, 2026
de69900
dev-build/automake: Sync with Gentoo
Jul 20, 2026
97ffc76
dev-build/cmake: Sync with Gentoo
Jul 20, 2026
bd4ca70
dev-build/meson: Sync with Gentoo
Jul 20, 2026
bae6cf3
dev-db/etcd: Sync with Gentoo
Jul 20, 2026
52f355c
dev-db/sqlite: Sync with Gentoo
Jul 20, 2026
59b2bd6
dev-debug/gdb: Sync with Gentoo
Jul 20, 2026
caef5b0
dev-debug/strace: Sync with Gentoo
Jul 20, 2026
16aef9a
dev-go/go-md2man: Sync with Gentoo
Jul 20, 2026
fa758f1
dev-lang/go: Sync with Gentoo
Jul 20, 2026
1340f52
dev-lang/nasm: Sync with Gentoo
Jul 20, 2026
6c2dcb9
dev-lang/perl: Sync with Gentoo
Jul 20, 2026
10ea889
dev-lang/python: Sync with Gentoo
Jul 20, 2026
10a6619
dev-lang/rust: Sync with Gentoo
Jul 20, 2026
b979a03
dev-lang/rust-bin: Sync with Gentoo
Jul 20, 2026
3ab5aa1
dev-lang/rust-common: Sync with Gentoo
Jul 20, 2026
b78e9f4
dev-lang/swig: Sync with Gentoo
Jul 20, 2026
1532103
dev-lang/tcl: Sync with Gentoo
Jul 20, 2026
03a866c
dev-libs/expat: Sync with Gentoo
Jul 20, 2026
8dafbcb
dev-libs/glib: Sync with Gentoo
Jul 20, 2026
8bfc223
dev-libs/gmp: Sync with Gentoo
Jul 20, 2026
88f1256
dev-libs/gobject-introspection-common: Sync with Gentoo
Jul 20, 2026
6a6b83a
dev-libs/json-c: Sync with Gentoo
Jul 20, 2026
b1530cd
dev-libs/jsoncpp: Sync with Gentoo
Jul 20, 2026
4295678
dev-libs/leancrypto: Sync with Gentoo
Jul 20, 2026
14f32ee
dev-libs/libassuan: Sync with Gentoo
Jul 20, 2026
f7d584c
dev-libs/libevent: Sync with Gentoo
Jul 20, 2026
26579d1
dev-libs/libffi: Sync with Gentoo
Jul 20, 2026
f2b7fb3
dev-libs/libgcrypt: Sync with Gentoo
Jul 20, 2026
6bc3b35
dev-libs/libgpg-error: Sync with Gentoo
Jul 20, 2026
d984dd9
dev-libs/libksba: Sync with Gentoo
Jul 20, 2026
c8264e2
dev-libs/libpcre2: Sync with Gentoo
Jul 20, 2026
002c6d2
dev-libs/libpwquality: Sync with Gentoo
Jul 20, 2026
69f1bb3
dev-libs/libtasn1: Sync with Gentoo
Jul 20, 2026
689ac0f
dev-libs/libtraceevent: Sync with Gentoo
Jul 20, 2026
612d923
dev-libs/libunistring: Sync with Gentoo
Jul 20, 2026
a6414e8
dev-libs/libusb: Sync with Gentoo
Jul 20, 2026
c576050
dev-libs/libuv: Sync with Gentoo
Jul 20, 2026
f367c78
dev-libs/libxml2: Sync with Gentoo
Jul 20, 2026
d551392
dev-libs/nspr: Sync with Gentoo
Jul 20, 2026
1812ad4
dev-libs/opensc: Sync with Gentoo
Jul 20, 2026
d9dd7c0
dev-libs/protobuf: Sync with Gentoo
Jul 20, 2026
09f5674
dev-libs/rapidjson: Sync with Gentoo
Jul 20, 2026
6fdf096
dev-libs/xmlsec: Sync with Gentoo
Jul 20, 2026
fc797b4
dev-python/cachecontrol: Sync with Gentoo
Jul 20, 2026
7bd3718
dev-python/certifi: Sync with Gentoo
Jul 20, 2026
12b01ab
dev-python/cffi: Sync with Gentoo
Jul 20, 2026
34c3713
dev-python/chardet: Sync with Gentoo
Jul 20, 2026
6cf8c60
dev-python/charset-normalizer: Sync with Gentoo
Jul 20, 2026
06843be
dev-python/colorama: Sync with Gentoo
Jul 20, 2026
5525cd6
dev-python/crcmod: Sync with Gentoo
Jul 20, 2026
00da5db
dev-python/cryptography: Sync with Gentoo
Jul 20, 2026
475c136
dev-python/cython: Sync with Gentoo
Jul 20, 2026
e1c4e5a
dev-python/dependency-groups: Sync with Gentoo
Jul 20, 2026
f52776d
dev-python/distlib: Sync with Gentoo
Jul 20, 2026
64e7cfb
dev-python/distro: Sync with Gentoo
Jul 20, 2026
885e860
dev-python/docutils: Sync with Gentoo
Jul 20, 2026
8a95126
dev-python/editables: Sync with Gentoo
Jul 20, 2026
6f8b339
dev-python/ensurepip-pip: Sync with Gentoo
Jul 20, 2026
43208dc
dev-python/ensurepip-setuptools: Sync with Gentoo
Jul 20, 2026
6f1cd4a
dev-python/fasteners: Sync with Gentoo
Jul 20, 2026
9e8796a
dev-python/fastjsonschema: Sync with Gentoo
Jul 20, 2026
d4a03d6
dev-python/gpep517: Sync with Gentoo
Jul 20, 2026
a65f2fc
dev-python/hatchling: Sync with Gentoo
Jul 20, 2026
605793b
dev-python/idna: Sync with Gentoo
Jul 20, 2026
012be39
dev-python/installer: Sync with Gentoo
Jul 20, 2026
5a7e1b5
dev-python/jaraco-functools: Sync with Gentoo
Jul 20, 2026
47f3604
dev-python/jaraco-text: Sync with Gentoo
Jul 20, 2026
92b3d40
dev-python/jinja2: Sync with Gentoo
Jul 20, 2026
2945ee9
dev-python/lark: Sync with Gentoo
Jul 20, 2026
7567de6
dev-python/lazy-object-proxy: Sync with Gentoo
Jul 20, 2026
be30fc0
dev-python/linkify-it-py: Sync with Gentoo
Jul 20, 2026
45d069e
dev-python/lxml: Sync with Gentoo
Jul 20, 2026
0fcc3f5
dev-python/markdown-it-py: Sync with Gentoo
Jul 20, 2026
70aea69
dev-python/mdurl: Sync with Gentoo
Jul 20, 2026
2f46ed6
dev-python/more-itertools: Sync with Gentoo
Jul 20, 2026
d67f838
dev-python/msgpack: Sync with Gentoo
Jul 20, 2026
2ab3547
dev-python/packaging: Sync with Gentoo
Jul 20, 2026
5fd5813
dev-python/pathspec: Sync with Gentoo
Jul 20, 2026
5411b2a
dev-python/pip: Sync with Gentoo
Jul 20, 2026
ed28f4c
dev-python/platformdirs: Sync with Gentoo
Jul 20, 2026
a34b9b7
dev-python/poetry-core: Sync with Gentoo
Jul 20, 2026
d84e2dd
dev-python/pysocks: Sync with Gentoo
Jul 20, 2026
7c727a2
dev-python/requests: Sync with Gentoo
Jul 20, 2026
6a3771c
dev-python/resolvelib: Sync with Gentoo
Jul 20, 2026
5481c23
dev-python/rich: Sync with Gentoo
Jul 20, 2026
5cf81ab
dev-python/setuptools: Sync with Gentoo
Jul 20, 2026
09fc146
dev-python/setuptools-scm: Sync with Gentoo
Jul 20, 2026
7383f85
dev-python/snakeoil: Sync with Gentoo
Jul 20, 2026
bc85926
dev-python/tree-sitter: Sync with Gentoo
Jul 20, 2026
0c50333
dev-python/trove-classifiers: Sync with Gentoo
Jul 20, 2026
579275a
dev-python/truststore: Sync with Gentoo
Jul 20, 2026
7626b93
dev-python/typing-extensions: Sync with Gentoo
Jul 20, 2026
7c31aaf
dev-python/uc-micro-py: Sync with Gentoo
Jul 20, 2026
55463b5
dev-python/urllib3: Sync with Gentoo
Jul 20, 2026
6bc8983
dev-python/vcs-versioning: Sync with Gentoo
Jul 20, 2026
b933666
dev-util/catalyst: Sync with Gentoo
Jul 20, 2026
e82f2ad
dev-util/gdbus-codegen: Sync with Gentoo
Jul 20, 2026
07c830b
dev-util/glib-utils: Sync with Gentoo
Jul 20, 2026
1c5024a
dev-util/maturin: Sync with Gentoo
Jul 20, 2026
1978bfd
dev-util/patchelf: Sync with Gentoo
Jul 20, 2026
61750c5
dev-util/patchutils: Sync with Gentoo
Jul 20, 2026
ccfef48
dev-util/perf: Sync with Gentoo
Jul 20, 2026
93a868a
dev-util/pkgcheck: Sync with Gentoo
Jul 20, 2026
ad27834
dev-util/pkgconf: Sync with Gentoo
Jul 20, 2026
14b18dc
dev-util/xdelta: Sync with Gentoo
Jul 20, 2026
e3f96c2
dev-vcs/git: Sync with Gentoo
Jul 20, 2026
e2da42a
eclass/bash-completion-r1: Sync with Gentoo
Jul 20, 2026
bf83529
eclass/cargo: Sync with Gentoo
Jul 20, 2026
8027421
eclass/cmake: Sync with Gentoo
Jul 20, 2026
7aaf51c
eclass/desktop: Sync with Gentoo
Jul 20, 2026
c23f9a7
eclass/dist-kernel-utils: Sync with Gentoo
Jul 20, 2026
76f067b
eclass/distutils-r1: Sync with Gentoo
Jul 20, 2026
d5e05ac
eclass/go-module: Sync with Gentoo
Jul 20, 2026
54c7f97
eclass/java-utils-2: Sync with Gentoo
Jul 20, 2026
e2f0ef9
eclass/kernel-2: Sync with Gentoo
Jul 20, 2026
d01f98f
eclass/llvm-r1: Sync with Gentoo
Jul 20, 2026
a974b5f
eclass/llvm-r2: Sync with Gentoo
Jul 20, 2026
3316cc0
eclass/llvm: Sync with Gentoo
Jul 20, 2026
d962891
eclass/mount-boot: Sync with Gentoo
Jul 20, 2026
cf55258
eclass/optfeature: Sync with Gentoo
Jul 20, 2026
7826054
eclass/python-utils-r1: Sync with Gentoo
Jul 20, 2026
3f3d35c
eclass/qmake-utils: Sync with Gentoo
Jul 20, 2026
d175420
eclass/rust: Sync with Gentoo
Jul 20, 2026
0c60412
eclass/secureboot: Sync with Gentoo
Jul 20, 2026
c43f049
eclass/selinux-policy-2: Sync with Gentoo
Jul 20, 2026
134724f
eclass/shell-completion: Sync with Gentoo
Jul 20, 2026
e48146b
eclass/toolchain: Sync with Gentoo
Jul 20, 2026
04eb9cb
eclass/tree-sitter-grammar: Sync with Gentoo
Jul 20, 2026
d9895e7
eclass/xorg-3: Sync with Gentoo
Jul 20, 2026
f0aedf5
licenses: Sync with Gentoo
Jul 20, 2026
1e296a8
media-libs/libpng: Sync with Gentoo
Jul 20, 2026
3f62c07
net-dns/bind: Sync with Gentoo
Jul 20, 2026
0851456
net-dns/c-ares: Sync with Gentoo
Jul 20, 2026
865c956
net-dns/dnsmasq: Sync with Gentoo
Jul 20, 2026
6e07c3d
net-fs/cifs-utils: Sync with Gentoo
Jul 20, 2026
eb7179b
net-fs/samba: Sync with Gentoo
Jul 20, 2026
af5fc21
net-libs/gnutls: Sync with Gentoo
Jul 20, 2026
7c3476b
net-libs/libslirp: Sync with Gentoo
Jul 20, 2026
c7ada8b
net-libs/nghttp2: Sync with Gentoo
Jul 20, 2026
a5b29f5
net-libs/ngtcp2: Sync with Gentoo
Jul 20, 2026
eb37e78
net-misc/chrony: Sync with Gentoo
Jul 20, 2026
989fadc
net-misc/curl: Sync with Gentoo
Jul 20, 2026
26afe46
net-misc/iperf: Sync with Gentoo
Jul 20, 2026
1cbd5e9
net-misc/iputils: Sync with Gentoo
Jul 20, 2026
43fd043
net-misc/openssh: Sync with Gentoo
Jul 20, 2026
9577644
net-misc/passt: Sync with Gentoo
Jul 20, 2026
c07f6f5
net-misc/rsync: Sync with Gentoo
Jul 20, 2026
9c13b98
net-misc/socat: Sync with Gentoo
Jul 20, 2026
61c0ae8
net-misc/wget: Sync with Gentoo
Jul 20, 2026
dcd401e
net-nds/openldap: Sync with Gentoo
Jul 20, 2026
9b83739
profiles: Sync with Gentoo
Jul 20, 2026
964382a
sec-policy/selinux-base: Sync with Gentoo
Jul 20, 2026
c6e4494
sec-policy/selinux-base-policy: Sync with Gentoo
Jul 20, 2026
4e1f8c6
sec-policy/selinux-container: Sync with Gentoo
Jul 20, 2026
ce8ea91
sec-policy/selinux-dbus: Sync with Gentoo
Jul 20, 2026
2c51119
sec-policy/selinux-policykit: Sync with Gentoo
Jul 20, 2026
b694d82
sec-policy/selinux-sssd: Sync with Gentoo
Jul 20, 2026
e27964c
sec-policy/selinux-unconfined: Sync with Gentoo
Jul 20, 2026
cb95f0d
sys-apps/acl: Sync with Gentoo
Jul 20, 2026
63bd65e
sys-apps/attr: Sync with Gentoo
Jul 20, 2026
6a5e04a
sys-apps/bubblewrap: Sync with Gentoo
Jul 20, 2026
9b1689c
sys-apps/checkpolicy: Sync with Gentoo
Jul 20, 2026
64d2ee7
sys-apps/coreutils: Sync with Gentoo
Jul 20, 2026
759cd15
sys-apps/ethtool: Sync with Gentoo
Jul 20, 2026
184e89b
sys-apps/file: Sync with Gentoo
Jul 20, 2026
2992467
sys-apps/findutils: Sync with Gentoo
Jul 20, 2026
e40fc20
sys-apps/gawk: Sync with Gentoo
Jul 20, 2026
9e699f0
sys-apps/gentoo-functions: Sync with Gentoo
Jul 20, 2026
9bb13be
sys-apps/i2c-tools: Sync with Gentoo
Jul 20, 2026
f07a496
sys-apps/iproute2: Sync with Gentoo
Jul 20, 2026
0c2e835
sys-apps/kbd: Sync with Gentoo
Jul 20, 2026
52650f4
sys-apps/less: Sync with Gentoo
Jul 20, 2026
55d4c1a
sys-apps/net-tools: Sync with Gentoo
Jul 20, 2026
e9f094a
sys-apps/nvme-cli: Sync with Gentoo
Jul 20, 2026
fa8d117
sys-apps/pkgcore: Sync with Gentoo
Jul 20, 2026
14d22ad
sys-apps/portage: Sync with Gentoo
Jul 20, 2026
5a05067
sys-apps/sandbox: Sync with Gentoo
Jul 20, 2026
5a1197d
sys-apps/sed: Sync with Gentoo
Jul 20, 2026
6221514
sys-apps/semodule-utils: Sync with Gentoo
Jul 20, 2026
6d3f0f2
sys-apps/shadow: Sync with Gentoo
Jul 20, 2026
73729c1
sys-apps/systemd: Sync with Gentoo
Jul 20, 2026
b3c51de
sys-apps/util-linux: Sync with Gentoo
Jul 20, 2026
c8cddd3
sys-auth/sssd: Sync with Gentoo
Jul 20, 2026
27ef208
sys-devel/binutils: Sync with Gentoo
Jul 20, 2026
3683f0e
sys-devel/crossdev: Sync with Gentoo
Jul 20, 2026
55c216a
sys-devel/dwz: Sync with Gentoo
Jul 20, 2026
d0be17d
sys-devel/gcc: Sync with Gentoo
Jul 20, 2026
9f432c0
sys-devel/gettext: Sync with Gentoo
Jul 20, 2026
ae8951f
sys-fs/btrfs-progs: Sync with Gentoo
Jul 20, 2026
59aee1e
sys-fs/cryptsetup: Sync with Gentoo
Jul 20, 2026
20ca186
sys-fs/lxcfs: Sync with Gentoo
Jul 20, 2026
7678874
sys-fs/xfsprogs: Sync with Gentoo
Jul 20, 2026
c16ecf1
sys-fs/zfs: Sync with Gentoo
Jul 20, 2026
d09d3f6
sys-fs/zfs-kmod: Sync with Gentoo
Jul 20, 2026
dc3c7d5
sys-kernel/dracut: Sync with Gentoo
Jul 20, 2026
b0b3308
sys-kernel/linux-headers: Sync with Gentoo
Jul 20, 2026
4fb3519
sys-libs/binutils-libs: Sync with Gentoo
Jul 20, 2026
c19db52
sys-libs/glibc: Sync with Gentoo
Jul 20, 2026
1f059a5
sys-libs/libcap: Sync with Gentoo
Jul 20, 2026
1253d9a
sys-libs/libcap-ng: Sync with Gentoo
Jul 20, 2026
d8a8d2b
sys-libs/libnvme: Sync with Gentoo
Jul 20, 2026
94b7ac9
sys-libs/libseccomp: Sync with Gentoo
Jul 20, 2026
c12f2e9
sys-libs/libselinux: Sync with Gentoo
Jul 20, 2026
65f49c1
sys-libs/libsepol: Sync with Gentoo
Jul 20, 2026
3055426
sys-libs/libunwind: Sync with Gentoo
Jul 20, 2026
382ad84
sys-libs/liburing: Sync with Gentoo
Jul 20, 2026
877093f
sys-libs/libxcrypt: Sync with Gentoo
Jul 20, 2026
9cf2484
sys-libs/talloc: Sync with Gentoo
Jul 20, 2026
67e57a2
sys-libs/tdb: Sync with Gentoo
Jul 20, 2026
52eed37
sys-libs/timezone-data: Sync with Gentoo
Jul 20, 2026
950cc27
sys-process/audit: Sync with Gentoo
Jul 20, 2026
4bebb58
sys-process/lsof: Sync with Gentoo
Jul 20, 2026
28153cc
virtual/ldb: Sync with Gentoo
Jul 20, 2026
df20690
virtual/libudev: Sync with Gentoo
Jul 20, 2026
fa9a872
virtual/perl-Carp: Sync with Gentoo
Jul 20, 2026
687e9ba
virtual/perl-Encode: Sync with Gentoo
Jul 20, 2026
be7960d
virtual/perl-Exporter: Sync with Gentoo
Jul 20, 2026
74d372f
virtual/perl-ExtUtils-MakeMaker: Sync with Gentoo
Jul 20, 2026
64021f6
virtual/service-manager: Sync with Gentoo
Jul 20, 2026
55ab26a
x11-drivers/nvidia-drivers: Sync with Gentoo
Jul 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright 2020-2024 Gentoo Authors
# Copyright 2020-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8
Expand All @@ -13,5 +13,3 @@ ACCT_USER_HOME_PERMS=0755
ACCT_USER_GROUPS=( nobody )

acct-user_add_deps

RDEPEND+=" acct-user/root"
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
DIST eselect-1.4.30.tar.xz 186060 BLAKE2B f58c2bdacfcb933aef2414e65866a4be33d02ddc42005770fd4f3200a7aa0437d31301ac35991309d51f2e95e8be2eafa0590600281801c6c63db08b3451b9ef SHA512 89ff9af40849e5d712716c35705e21bfc5d073536da8750566368d519d1b7de823575ffe730faabab4170ca773df31e7bb9d633d8e48361704102987c5d3e681
DIST eselect-1.4.31.tar.xz 186520 BLAKE2B f40851ffea69c0d8b0142b49669e1112fc34384b0c8f1f6ce8aebbfd48fb6a6f8239e8682d7fe8b49c9d27cc9f7cee4b7c781baef7780e347df90f7cd4b5131e SHA512 ffcd6cdb5aef51b2949893abfc3af356d3011e256671eaae588e3fe6ff41f7bf74167dccef8c794422704097c3351f5c457009b051bbc8f008b2d2f250fa9c1b
DIST eselect-1.4.32.tar.xz 189020 BLAKE2B 18cf181f23f0a6cd95ca78fd1c5e039ca2222101b12957e640afb25f34033777e0554421613699b08b9f985a45ee803b16c202e2c2a3a0f55b741cdf5e5d8836 SHA512 facc2c75508175123ed4f4f8f79c157e0f8ce797f3bb98f4978379d6b75c5d502ab5a97497f5d7a8a1f21adc9f580bf59245502a4b3058eb7a25a03caca7c8f9

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz"

LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="doc emacs vim-syntax"

# coreutils for realpath
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
https://bugs.gentoo.org/934983
https://github.com/logrotate/logrotate/commit/04b21743980c4e236ca5e8de18173fbd3848573b

From 04b21743980c4e236ca5e8de18173fbd3848573b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com>
Date: Sat, 8 Jun 2024 17:59:40 +0200
Subject: [PATCH] test: avoid locale dependent errno string

String representations of errno values are locale dependent, thus avoid
using them.
---
test/test-0112.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/test-0112.sh b/test/test-0112.sh
index 812632b1..fa9eed65 100755
--- a/test/test-0112.sh
+++ b/test/test-0112.sh
@@ -23,7 +23,7 @@ test_reg.log.1.gz 1 zero
test_reg.log.2.gz 1 first
EOF

-grep "test_fifo.log.1 (read-only) for compression: Operation not supported" error.log >/dev/null
+grep "^error: unable to open .*/test_fifo\.log\.1 (read-only) for compression: " error.log >/dev/null
if [ $? != 0 ]; then
echo "No error printed, but there should be one."
exit 3

Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
https://github.com/logrotate/logrotate/issues/632
https://github.com/logrotate/logrotate/pull/633

From d2e090a9c0ba62aeab8c415aecf3067297f3eccc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com>
Date: Sat, 3 Aug 2024 19:07:38 +0200
Subject: [PATCH] Avoid opening log file for getting SELinux context

Currently setSecCtxByName() uses open_logfile() to get a file descriptor
to the current log file to retrieve its security context.
open_logfile() performs additional checks, like whether the file is a
regular file, which alter the control flow between systems with SELinux
enabled and disabled. This can be observed in the reported issue #632.
Use lgetfilecon_raw() instead to have the same behavior for SELinux
enabled and disabled systems and delay the checks for invalid log files
to code executed in both cases.

Closes: #632
---
logrotate.c | 89 ++++++++++++++++++++++++++++++-----------------------
1 file changed, 51 insertions(+), 38 deletions(-)

diff --git a/logrotate.c b/logrotate.c
index ba779950..c62e7c78 100644
--- a/logrotate.c
+++ b/logrotate.c
@@ -361,27 +361,9 @@ static int movefd(int oldfd, int newfd)
return rc;
}

-static int setSecCtx(int fdSrc, const char *src, char **pPrevCtx)
-{
#ifdef WITH_SELINUX
- char *srcCtx;
- *pPrevCtx = NULL;
-
- if (!selinux_enabled)
- /* pretend success */
- return 0;
-
- /* read security context of fdSrc */
- if (fgetfilecon_raw(fdSrc, &srcCtx) < 0) {
- if (errno == ENOTSUP)
- /* pretend success */
- return 0;
-
- message(MESS_ERROR, "getting file context %s: %s\n", src,
- strerror(errno));
- return selinux_enforce;
- }
-
+static int setSecCtx(char *srcCtx, char **pPrevCtx)
+{
/* save default security context for restoreSecCtx() */
if (getfscreatecon_raw(pPrevCtx) < 0) {
message(MESS_ERROR, "getting default context: %s\n", strerror(errno));
@@ -401,37 +383,68 @@ static int setSecCtx(int fdSrc, const char *src, char **pPrevCtx)

message(MESS_DEBUG, "set default create context to %s\n", srcCtx);
freecon(srcCtx);
+
+ return 0;
+}
+#endif /* WITH_SELINUX */
+
+static int setSecCtxByFd(int fdSrc, const char *src, char **pPrevCtx)
+{
+#ifdef WITH_SELINUX
+ char *srcCtx;
+ *pPrevCtx = NULL;
+
+ if (!selinux_enabled)
+ /* pretend success */
+ return 0;
+
+ /* read security context of fdSrc */
+ if (fgetfilecon_raw(fdSrc, &srcCtx) < 0) {
+ if (errno == ENOTSUP)
+ /* pretend success */
+ return 0;
+
+ message(MESS_ERROR, "getting file context %s: %s\n", src,
+ strerror(errno));
+ return selinux_enforce;
+ }
+
+ return setSecCtx(srcCtx, pPrevCtx);
#else
(void) fdSrc;
(void) src;
(void) pPrevCtx;
-#endif
return 0;
+#endif /* WITH_SELINUX */
}

-static int setSecCtxByName(const char *src, const struct logInfo *log, char **pPrevCtx)
+static int setSecCtxByName(const char *src, char **pPrevCtx)
{
- int hasErrors = 0;
#ifdef WITH_SELINUX
- int fd;
+ char *srcCtx;
+ *pPrevCtx = NULL;

if (!selinux_enabled)
/* pretend success */
return 0;

- fd = open_logfile(src, log, 0);
- if (fd < 0) {
- message(MESS_ERROR, "error opening %s: %s\n", src, strerror(errno));
- return 1;
+ /* read security context of src */
+ if (lgetfilecon_raw(src, &srcCtx) < 0) {
+ if (errno == ENOTSUP)
+ /* pretend success */
+ return 0;
+
+ message(MESS_ERROR, "getting file context %s: %s\n", src,
+ strerror(errno));
+ return selinux_enforce;
}
- hasErrors = setSecCtx(fd, src, pPrevCtx);
- close(fd);
+
+ return setSecCtx(srcCtx, pPrevCtx);
#else
(void) src;
- (void) log;
(void) pPrevCtx;
-#endif
- return hasErrors;
+ return 0;
+#endif /* WITH_SELINUX */
}

static void restoreSecCtx(char **pPrevCtx)
@@ -874,7 +887,7 @@ static int compressLogFile(const char *name, const struct logInfo *log, const st
return 1;
}

- if (setSecCtx(inFile, name, &prevCtx) != 0) {
+ if (setSecCtxByFd(inFile, name, &prevCtx) != 0) {
/* error msg already printed */
close(inFile);
return 1;
@@ -1307,7 +1320,7 @@ static int copyTruncate(const char *currLog, const char *saveLog, const struct s
if (!skip_copy) {
char *prevCtx;

- if (setSecCtx(fdcurr, currLog, &prevCtx) != 0) {
+ if (setSecCtxByFd(fdcurr, currLog, &prevCtx) != 0) {
/* error msg already printed */
goto fail;
}
@@ -1905,7 +1918,7 @@ static int prerotateSingleLog(const struct logInfo *log, unsigned logNum,
message(MESS_DEBUG, "dateext suffix '%s'\n", dext_str);
message(MESS_DEBUG, "glob pattern '%s'\n", dext_pattern);

- if (setSecCtxByName(log->files[logNum], log, &prev_context) != 0) {
+ if (setSecCtxByName(log->files[logNum], &prev_context) != 0) {
/* error msg already printed */
return 1;
}
@@ -2186,7 +2199,7 @@ static int rotateSingleLog(const struct logInfo *log, unsigned logNum,
if (!hasErrors) {

if (!(log->flags & (LOG_FLAG_COPYTRUNCATE | LOG_FLAG_COPY))) {
- if (setSecCtxByName(log->files[logNum], log, &savedContext) != 0) {
+ if (setSecCtxByName(log->files[logNum], &savedContext) != 0) {
/* error msg already printed */
return 1;
}
@@ -2730,7 +2743,7 @@ static int writeState(const char *stateFilename)

/* get attributes, to assign them to the new state file */

- if (setSecCtx(fdcurr, stateFilename, &prevCtx) != 0) {
+ if (setSecCtxByFd(fdcurr, stateFilename, &prevCtx) != 0) {
/* error msg already printed */
free(tmpFilename);
close(fdcurr);

Loading