mirror of
https://github.com/void-linux/void-packages.git
synced 2025-06-05 06:33:50 +02:00
man-db: add system account _man:_man
man-db complains that: > mandb: the setuid man user "man" does not exist While we're at it, patch man-db to not use glibc iconv's extension on musl.
This commit is contained in:
parent
70999ba63f
commit
2b67f33cdf
3 changed files with 73 additions and 13 deletions
|
@ -4,11 +4,10 @@
|
||||||
# man-db cron daily
|
# man-db cron daily
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
if ! [ -d /var/cache/man ]; then
|
# Recover from deletion, per FHS.
|
||||||
# Recover from deletion, per FHS.
|
mkdir -p /var/cache/man
|
||||||
mkdir -p /var/cache/man
|
chown _man:_man /var/cache/man
|
||||||
chmod 755 /var/cache/man
|
chmod 755 /var/cache/man
|
||||||
fi
|
|
||||||
|
|
||||||
# regenerate man database
|
# regenerate man database
|
||||||
/usr/bin/mandb --quiet
|
/usr/bin/mandb --quiet
|
||||||
|
|
59
srcpkgs/man-db/patches/guard-glibc-iconv-ext.patch
Normal file
59
srcpkgs/man-db/patches/guard-glibc-iconv-ext.patch
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
src/manconv.c | 7 ++++++-
|
||||||
|
src/manconv_client.c | 4 ++++
|
||||||
|
src/whatis.c | 4 ++++
|
||||||
|
3 files changed, 14 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git src/manconv.c src/manconv.c
|
||||||
|
index b9ac8d3a..8f5bdaee 100644
|
||||||
|
--- src/manconv.c
|
||||||
|
+++ src/manconv.c
|
||||||
|
@@ -111,9 +111,14 @@ static int try_iconv (pipeline *p, const char *try_from_code, const char *to,
|
||||||
|
iconv_t cd_utf8, cd = NULL;
|
||||||
|
bool to_utf8 = STREQ (try_to_code, "UTF-8") ||
|
||||||
|
STRNEQ (try_to_code, "UTF-8//", 7);
|
||||||
|
- const char *utf8_target = last ? "UTF-8//IGNORE" : "UTF-8";
|
||||||
|
bool ignore_errors = (strstr (try_to_code, "//IGNORE") != NULL);
|
||||||
|
int ret = 0;
|
||||||
|
+#ifdef __GLIBC__
|
||||||
|
+ const char *utf8_target = last ? "UTF-8//IGNORE" : "UTF-8";
|
||||||
|
+#else /* __GLIBC__ */
|
||||||
|
+ const char *utf8_target = "UTF-8";
|
||||||
|
+ last = false;
|
||||||
|
+#endif /* ! __GLIBC__ */
|
||||||
|
|
||||||
|
debug ("trying encoding %s -> %s\n", try_from_code, try_to_code);
|
||||||
|
|
||||||
|
diff --git src/manconv_client.c src/manconv_client.c
|
||||||
|
index 0c41bec6..2a7f1398 100644
|
||||||
|
--- src/manconv_client.c
|
||||||
|
+++ src/manconv_client.c
|
||||||
|
@@ -102,7 +102,11 @@ void add_manconv (pipeline *p, const char *source, const char *target)
|
||||||
|
gl_list_add_last (codes->from, xstrdup (source));
|
||||||
|
name = appendstr (name, "UTF-8:", source, (void *) 0);
|
||||||
|
}
|
||||||
|
+#ifdef __GLIBC__
|
||||||
|
codes->to = xasprintf ("%s//IGNORE", target);
|
||||||
|
+#else /* __GLIBC__ */
|
||||||
|
+ codes->to = xasprintf ("%s", target);
|
||||||
|
+#endif /* ! __GLIBC__ */
|
||||||
|
/* informational only; no shell quoting concerns */
|
||||||
|
name = appendstr (name, " -t ", codes->to, (void *) 0);
|
||||||
|
if (quiet >= 2)
|
||||||
|
diff --git src/whatis.c src/whatis.c
|
||||||
|
index d2559169..ec80c117 100644
|
||||||
|
--- src/whatis.c
|
||||||
|
+++ src/whatis.c
|
||||||
|
@@ -945,9 +945,13 @@ int main (int argc, char *argv[])
|
||||||
|
display_seen = new_string_set (GL_HASH_SET);
|
||||||
|
|
||||||
|
#ifdef HAVE_ICONV
|
||||||
|
+#ifdef __GLIBC__
|
||||||
|
locale_charset = xasprintf ("%s//IGNORE", get_locale_charset ());
|
||||||
|
conv_to_locale = iconv_open (locale_charset, "UTF-8");
|
||||||
|
free (locale_charset);
|
||||||
|
+#else /* __GLIBC__ */
|
||||||
|
+ conv_to_locale = iconv_open(get_locale_charset (), "UTF-8");
|
||||||
|
+#endif /* ! __GLIBC__ */
|
||||||
|
#endif /* HAVE_ICONV */
|
||||||
|
|
||||||
|
if (regex_opt) {
|
|
@ -1,13 +1,14 @@
|
||||||
# Template file for 'man-db'
|
# Template file for 'man-db'
|
||||||
pkgname=man-db
|
pkgname=man-db
|
||||||
version=2.9.0
|
version=2.9.0
|
||||||
revision=1
|
revision=2
|
||||||
build_style=gnu-configure
|
build_style=gnu-configure
|
||||||
configure_args="--with-db=db --with-pager=less --with-gzip=/usr/bin/gzip
|
configure_args="--with-db=db --with-pager=less --with-gzip=/usr/bin/gzip
|
||||||
--with-bzip2=/usr/bin/bzip2 --disable-rpath --enable-threads=posix
|
--with-bzip2=/usr/bin/bzip2 --disable-rpath --enable-threads=posix
|
||||||
--with-lzma=/usr/bin/lzma --with-xz=/usr/bin/xz --disable-setuid
|
--with-lzma=/usr/bin/lzma --with-xz=/usr/bin/xz --disable-setuid
|
||||||
--without-included-regex --enable-automatic-create --with-libseccomp
|
--without-included-regex --enable-automatic-create --with-libseccomp
|
||||||
--without-systemdsystemunitdir --without-systemdtmpfilesdir"
|
--without-systemdsystemunitdir --without-systemdtmpfilesdir
|
||||||
|
--enable-cache-owner=_man"
|
||||||
hostmakedepends="groff pkg-config"
|
hostmakedepends="groff pkg-config"
|
||||||
makedepends="db-devel gettext-devel groff libpipeline-devel libseccomp-devel
|
makedepends="db-devel gettext-devel groff libpipeline-devel libseccomp-devel
|
||||||
zlib-devel"
|
zlib-devel"
|
||||||
|
@ -21,6 +22,9 @@ distfiles="${NONGNU_SITE}/${pkgname}/${pkgname}-${version}.tar.xz"
|
||||||
checksum=5d4aacd9e8876d6a3203a889860c3524c293c38f04111a3350deab8a6cd3e261
|
checksum=5d4aacd9e8876d6a3203a889860c3524c293c38f04111a3350deab8a6cd3e261
|
||||||
provides="man-0_1"
|
provides="man-0_1"
|
||||||
lib32disabled=yes
|
lib32disabled=yes
|
||||||
|
system_accounts="_man"
|
||||||
|
_man_homedir="/var/cache/man"
|
||||||
|
make_dirs="/var/cache/man 0755 _man _man"
|
||||||
|
|
||||||
alternatives="
|
alternatives="
|
||||||
man:man:/usr/bin/mandb-man
|
man:man:/usr/bin/mandb-man
|
||||||
|
@ -30,12 +34,10 @@ alternatives="
|
||||||
man:whatis.1:/usr/share/man/man1/mandb-whatis.1
|
man:whatis.1:/usr/share/man/man1/mandb-whatis.1
|
||||||
man:apropos.1:/usr/share/man/man1/mandb-apropos.1"
|
man:apropos.1:/usr/share/man/man1/mandb-apropos.1"
|
||||||
|
|
||||||
pre_configure() {
|
case "$XBPS_TARGET_MACHINE" in
|
||||||
case "$XBPS_TARGET_MACHINE" in
|
*-musl) CFLAGS+=" -I${XBPS_CROSS_BASE}/usr/include/gettext"
|
||||||
*-musl) CFLAGS+=" -I${XBPS_CROSS_BASE}/usr/include/gettext"
|
LDFLAGS+=" -lintl";;
|
||||||
LDFLAGS+=" -lintl";;
|
esac
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
post_install() {
|
post_install() {
|
||||||
# Rename files for alternatives
|
# Rename files for alternatives
|
||||||
|
|
Loading…
Add table
Reference in a new issue