diff options
author | Britney Fransen <brfransen@gmail.com> | 2018-02-23 18:57:52 (GMT) |
---|---|---|
committer | Britney Fransen <brfransen@gmail.com> | 2018-02-23 18:57:52 (GMT) |
commit | 1ebc3678d82b050cdf0e90a38385dba7048fd31c (patch) | |
tree | 7bc1db904a0778fda24d4dab9878aa969c01f644 /abs/core | |
parent | b02531a8bf977166f3c6506ef61fea200386f71e (diff) | |
download | linhes_pkgbuild-1ebc3678d82b050cdf0e90a38385dba7048fd31c.zip linhes_pkgbuild-1ebc3678d82b050cdf0e90a38385dba7048fd31c.tar.gz linhes_pkgbuild-1ebc3678d82b050cdf0e90a38385dba7048fd31c.tar.bz2 |
util-linux: update to 2.31.1
Diffstat (limited to 'abs/core')
11 files changed, 57 insertions, 498 deletions
diff --git a/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch b/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch deleted file mode 100644 index c442149..0000000 --- a/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch +++ /dev/null @@ -1,39 +0,0 @@ -From c7adc2f204f19167f781fa2ee739e0ca386fc4f5 Mon Sep 17 00:00:00 2001 -From: Andreas Henriksson <andreas@fatal.se> -Date: Fri, 2 Dec 2016 15:10:18 +0100 -Subject: [PATCH] chrt: default to SCHED_RR policy - -This fixes a regression introduced in: - -commit 7a4ea5664edba98bff28adec3a9c3cfb5763a495 -"chrt: add control struct" - -Previously (and as documented in the manpage) the default policy -was SCHED_RR. Now it's implicitly SCHED_OTHER (0) as the value -is not initialized explicitly anymore. - -Test-command: chrt 90 echo hello - -Reported-by: Patrick Pelissier <patrick.pelissier@gmail.com> -Addresses: http://bugs.debian.org/846572 -Signed-off-by: Andreas Henriksson <andreas@fatal.se> ---- - schedutils/chrt.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/schedutils/chrt.c b/schedutils/chrt.c -index a861d9f..73d1ffa 100644 ---- a/schedutils/chrt.c -+++ b/schedutils/chrt.c -@@ -409,7 +409,7 @@ static void set_sched(struct chrt_ctl *ctl) - - int main(int argc, char **argv) - { -- struct chrt_ctl _ctl = { .pid = -1 }, *ctl = &_ctl; -+ struct chrt_ctl _ctl = { .pid = -1, .policy = SCHED_RR }, *ctl = &_ctl; - int c; - - static const struct option longopts[] = { --- -2.10.2 - diff --git a/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch b/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch deleted file mode 100644 index b13f189..0000000 --- a/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 3fcbd7978980dc1a29c626b701333e27599e506d Mon Sep 17 00:00:00 2001 -From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> -Date: Wed, 23 Nov 2016 14:13:34 +0900 -Subject: [PATCH] lsns: Fix parser for /proc/<pid>/stat which is including - space in comm - -For example, child process of spamd has - - 32031 (spamd child) S 32026 32026 32026 0 -1 4210752 338 0 0 0 ... - -fscanf("%d %*s %c %d*[^\n]") in read_process() can't parse above as we -expected, because %s only skips non-whitespace. I.e. it parses like -following, - - 32031 (spamd child) S 32026 32026 32026 0 -1 4210752 338 0 0 0 ... - +---+ +----+ + - %d %*s %c - -and returns 2 (pid=32031, state=c). - -This fixes it by skipping task->comm part manually. - -Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> ---- - sys-utils/lsns.c | 30 ++++++++++++++++++++++++++---- - 1 file changed, 26 insertions(+), 4 deletions(-) - -diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c -index e4fd208..809737c 100644 ---- a/sys-utils/lsns.c -+++ b/sys-utils/lsns.c -@@ -217,6 +217,30 @@ static int get_ns_ino(int dir, const char *nsname, ino_t *ino) - return 0; - } - -+static int parse_proc_stat(FILE *fp, pid_t *pid, char *state, pid_t *ppid) -+{ -+ char *line = NULL, *p; -+ size_t len = 0; -+ int rc; -+ -+ if (getline(&line, &len, fp) < 0) { -+ rc = -errno; -+ goto error; -+ } -+ -+ p = strrchr(line, ')'); -+ if (p == NULL || -+ sscanf(line, "%d (", pid) != 1 || -+ sscanf(p, ") %c %d*[^\n]", state, ppid) != 2) { -+ rc = -EINVAL; -+ goto error; -+ } -+ rc = 0; -+ -+error: -+ free(line); -+ return rc; -+} - - static int read_process(struct lsns *ls, pid_t pid) - { -@@ -255,11 +279,9 @@ static int read_process(struct lsns *ls, pid_t pid) - rc = -errno; - goto done; - } -- rc = fscanf(f, "%d %*s %c %d*[^\n]", &p->pid, &p->state, &p->ppid); -- if (rc != 3) { -- rc = rc < 0 ? -errno : -EINVAL; -+ rc = parse_proc_stat(f, &p->pid, &p->state, &p->ppid); -+ if (rc < 0) - goto done; -- } - rc = 0; - - for (i = 0; i < ARRAY_SIZE(p->ns_ids); i++) { --- -2.10.2 - diff --git a/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch b/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch deleted file mode 100644 index 918138c..0000000 --- a/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch +++ /dev/null @@ -1,44 +0,0 @@ -From c49b765a6e9031642e2bb846e93dddc6827e4b28 Mon Sep 17 00:00:00 2001 -From: Karel Zak <kzak@redhat.com> -Date: Wed, 30 Nov 2016 10:53:56 +0100 -Subject: [PATCH] sfdisk: cleanup --dump error messages - -old: - # truncate -s 1G empty && ./sfdisk --dump empty - sfdisk: failed to dump partition table: Success - -new: - # truncate -s 1G empty && ./sfdisk --dump empty - sfdisk: empty: does not contain a recognized partition table. - -Addresses: https://github.com/karelzak/util-linux/issues/375 -Signed-off-by: Karel Zak <kzak@redhat.com> ---- - disk-utils/sfdisk.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c -index 0f69d65..10307ad 100644 ---- a/disk-utils/sfdisk.c -+++ b/disk-utils/sfdisk.c -@@ -950,13 +950,16 @@ static int command_dump(struct sfdisk *sf, int argc, char **argv) - if (rc) - err(EXIT_FAILURE, _("cannot open %s"), devname); - -+ if (!fdisk_has_label(sf->cxt)) -+ errx(EXIT_FAILURE, _("%s: does not contain a recognized partition table"), devname); -+ - dp = fdisk_new_script(sf->cxt); - if (!dp) - err(EXIT_FAILURE, _("failed to allocate dump struct")); - - rc = fdisk_script_read_context(dp, NULL); - if (rc) -- err(EXIT_FAILURE, _("failed to dump partition table")); -+ errx(EXIT_FAILURE, _("%s: failed to dump partition table"), devname); - - if (sf->json) - fdisk_script_enable_json(dp, 1); --- -2.10.2 - diff --git a/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch b/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch deleted file mode 100644 index 4b088bb..0000000 --- a/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch +++ /dev/null @@ -1,70 +0,0 @@ -From fed304837f60b626f6198663990e76e506f89063 Mon Sep 17 00:00:00 2001 -From: Karel Zak <kzak@redhat.com> -Date: Tue, 29 Nov 2016 15:58:18 +0100 -Subject: [PATCH] sfdisk: don't be silent when list non-existing device - -Addresses: https://github.com/karelzak/util-linux/issues/376 -Signed-off-by: Karel Zak <kzak@redhat.com> ---- - disk-utils/sfdisk.c | 16 ++++++++++------ - 1 file changed, 10 insertions(+), 6 deletions(-) - -diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c -index 52f2a6d..0f69d65 100644 ---- a/disk-utils/sfdisk.c -+++ b/disk-utils/sfdisk.c -@@ -560,6 +560,7 @@ static int write_changes(struct sfdisk *sf) - */ - static int command_list_partitions(struct sfdisk *sf, int argc, char **argv) - { -+ int fail = 0; - fdisk_enable_listonly(sf->cxt, 1); - - if (argc) { -@@ -568,13 +569,14 @@ static int command_list_partitions(struct sfdisk *sf, int argc, char **argv) - for (i = 0; i < argc; i++) { - if (ct) - fputs("\n\n", stdout); -- if (print_device_pt(sf->cxt, argv[i], 0, sf->verify) == 0) -- ct++; -+ if (print_device_pt(sf->cxt, argv[i], 1, sf->verify) != 0) -+ fail++; -+ ct++; - } - } else - print_all_devices_pt(sf->cxt, sf->verify); - -- return 0; -+ return fail; - } - - /* -@@ -582,6 +584,7 @@ static int command_list_partitions(struct sfdisk *sf, int argc, char **argv) - */ - static int command_list_freespace(struct sfdisk *sf, int argc, char **argv) - { -+ int fail = 0; - fdisk_enable_listonly(sf->cxt, 1); - - if (argc) { -@@ -590,13 +593,14 @@ static int command_list_freespace(struct sfdisk *sf, int argc, char **argv) - for (i = 0; i < argc; i++) { - if (ct) - fputs("\n\n", stdout); -- if (print_device_freespace(sf->cxt, argv[i], 0) == 0) -- ct++; -+ if (print_device_freespace(sf->cxt, argv[i], 1) != 0) -+ fail++; -+ ct++; - } - } else - print_all_devices_freespace(sf->cxt); - -- return 0; -+ return fail; - } - - /* --- -2.10.2 - diff --git a/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch b/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch deleted file mode 100644 index 29ab44d..0000000 --- a/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch +++ /dev/null @@ -1,223 +0,0 @@ -From 35ca51182782193f555fbdcb06bb10766550d017 Mon Sep 17 00:00:00 2001 -From: Karel Zak <kzak@redhat.com> -Date: Wed, 30 Nov 2016 12:43:10 +0100 -Subject: [PATCH] sfdisk: support empty label use-case - -By default sfdisk creates partition table when a first partition is -specified, otherwise the device is not modified. This force users to -create at least one partition. - -This commit allows to create empty label without partitions if "label: -<name>" header line is specified by script. - -The commit also modifies "New situation:" output to list label name -and label identifier. - -Addresses: https://github.com/karelzak/util-linux/issues/374 -Signed-off-by: Karel Zak <kzak@redhat.com> ---- - disk-utils/fdisk-list.c | 23 +++++++++++++++-------- - disk-utils/fdisk-list.h | 1 + - disk-utils/sfdisk.8 | 18 +++++++++++++++++- - disk-utils/sfdisk.c | 17 +++++++++++++++++ - libfdisk/src/libfdisk.h.in | 1 + - libfdisk/src/libfdisk.sym | 5 +++++ - libfdisk/src/script.c | 20 +++++++++++++++++++- - 7 files changed, 75 insertions(+), 10 deletions(-) - -diff --git a/disk-utils/fdisk-list.c b/disk-utils/fdisk-list.c -index e6b2033..c9560f4 100644 ---- a/disk-utils/fdisk-list.c -+++ b/disk-utils/fdisk-list.c -@@ -34,10 +34,23 @@ static int is_ide_cdrom_or_tape(char *device) - return ret; - } - -+void list_disk_identifier(struct fdisk_context *cxt) -+{ -+ struct fdisk_label *lb = fdisk_get_label(cxt, NULL); -+ char *id = NULL; -+ -+ if (fdisk_has_label(cxt)) -+ fdisk_info(cxt, _("Disklabel type: %s"), -+ fdisk_label_get_name(lb)); -+ -+ if (!fdisk_is_details(cxt) && fdisk_get_disklabel_id(cxt, &id) == 0 && id) { -+ fdisk_info(cxt, _("Disk identifier: %s"), id); -+ free(id); -+ } -+} - - void list_disk_geometry(struct fdisk_context *cxt) - { -- char *id = NULL; - struct fdisk_label *lb = fdisk_get_label(cxt, NULL); - uint64_t bytes = fdisk_get_nsectors(cxt) * fdisk_get_sector_size(cxt); - char *strsz = size_to_human_string(SIZE_SUFFIX_SPACE -@@ -71,14 +84,8 @@ void list_disk_geometry(struct fdisk_context *cxt) - if (fdisk_get_alignment_offset(cxt)) - fdisk_info(cxt, _("Alignment offset: %lu bytes"), - fdisk_get_alignment_offset(cxt)); -- if (fdisk_has_label(cxt)) -- fdisk_info(cxt, _("Disklabel type: %s"), -- fdisk_label_get_name(lb)); - -- if (!fdisk_is_details(cxt) && fdisk_get_disklabel_id(cxt, &id) == 0 && id) { -- fdisk_info(cxt, _("Disk identifier: %s"), id); -- free(id); -- } -+ list_disk_identifier(cxt); - } - - void list_disklabel(struct fdisk_context *cxt) -diff --git a/disk-utils/fdisk-list.h b/disk-utils/fdisk-list.h -index eddab92..4ed5c25 100644 ---- a/disk-utils/fdisk-list.h -+++ b/disk-utils/fdisk-list.h -@@ -2,6 +2,7 @@ - #define UTIL_LINUX_FDISK_LIST_H - - extern void list_disklabel(struct fdisk_context *cxt); -+extern void list_disk_identifier(struct fdisk_context *cxt); - extern void list_disk_geometry(struct fdisk_context *cxt); - extern void list_freespace(struct fdisk_context *cxt); - -diff --git a/disk-utils/sfdisk.8 b/disk-utils/sfdisk.8 -index fcde872..efe4a86 100644 ---- a/disk-utils/sfdisk.8 -+++ b/disk-utils/sfdisk.8 -@@ -212,7 +212,10 @@ Deprecated option. Only the sector unit is supported. - .BR \-X , " \-\-label " \fItype - Specify the disk label type (e.g. \fBdos\fR, \fBgpt\fR, ...). If this option - is not given, then \fBsfdisk\fR defaults to the existing label, but if there --is no label on the device yet, then the type defaults to \fBdos\fR. -+is no label on the device yet, then the type defaults to \fBdos\fR. The default -+or the current label may be overwritten by the "label: <name>" script header -+line. The option \fB\-\-label\fR does not force \fBsfdisk\fR to create empty -+disk label (see the \fBEMPTY DISK LABEL\fR section below). - .TP - .BR \-Y , " \-\-label\-nested " \fItype - Force editing of a nested disk label. The primary disk label has to exist already. -@@ -404,6 +407,19 @@ For backward compatibility the \fBId=\fR field has the same meaning. - .RE - .RE - -+.SH "EMPTY DISK LABEL" -+.B sfdisk -+does not create partition table without partitions by default. The lines with -+partitions are expected in the script by default. The empty partition table has -+to be explicitly requested by "label: <name>" script header line without any -+partitions lines. For example: -+.RS -+.sp -+.B "echo 'label: gpt' | sfdisk /dev/sdb" -+.sp -+.RE -+creates empty GPT partition table. Note that the \fB\-\-append\fR disables this feature. -+ - .SH "BACKING UP THE PARTITION TABLE" - It is recommended to save the layout of your devices. - .B sfdisk -diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c -index 10307ad..2d65974 100644 ---- a/disk-utils/sfdisk.c -+++ b/disk-utils/sfdisk.c -@@ -1766,8 +1766,25 @@ static int command_fdisk(struct sfdisk *sf, int argc, char **argv) - } - } while (1); - -+ /* create empty disk label if label, but no partition specified */ -+ if (rc == SFDISK_DONE_EOF && created == 0 -+ && fdisk_script_has_force_label(dp) == 1 -+ && fdisk_table_get_nents(tb) == 0 -+ && fdisk_script_get_header(dp, "label")) { -+ -+ int xrc = fdisk_apply_script_headers(sf->cxt, dp); -+ created = !xrc; -+ if (xrc) { -+ fdisk_warnx(sf->cxt, _( -+ "Failed to apply script headers, " -+ "disk label not created.")); -+ rc = SFDISK_DONE_ABORT; -+ } -+ } -+ - if (!sf->quiet && rc != SFDISK_DONE_ABORT) { - fdisk_info(sf->cxt, _("\nNew situation:")); -+ list_disk_identifier(sf->cxt); - list_disklabel(sf->cxt); - } - -diff --git a/libfdisk/src/libfdisk.h.in b/libfdisk/src/libfdisk.h.in -index 9154f5b..59cce19 100644 ---- a/libfdisk/src/libfdisk.h.in -+++ b/libfdisk/src/libfdisk.h.in -@@ -642,6 +642,7 @@ const char *fdisk_script_get_header(struct fdisk_script *dp, const char *name); - int fdisk_script_set_header(struct fdisk_script *dp, const char *name, const char *data); - struct fdisk_table *fdisk_script_get_table(struct fdisk_script *dp); - int fdisk_script_get_nlines(struct fdisk_script *dp); -+int fdisk_script_has_force_label(struct fdisk_script *dp); - - int fdisk_script_set_userdata(struct fdisk_script *dp, void *data); - void *fdisk_script_get_userdata(struct fdisk_script *dp); -diff --git a/libfdisk/src/libfdisk.sym b/libfdisk/src/libfdisk.sym -index 02cd7a8..d6d4ac5 100644 ---- a/libfdisk/src/libfdisk.sym -+++ b/libfdisk/src/libfdisk.sym -@@ -274,3 +274,8 @@ FDISK_2.29 { - fdisk_labelitem_is_number; - fdisk_gpt_set_npartitions; - } FDISK_2.28; -+ -+ -+FDISK_2.30 { -+ fdisk_script_has_force_label; -+} FDISK_2.29; -diff --git a/libfdisk/src/script.c b/libfdisk/src/script.c -index ae7e99a..0d1f260 100644 ---- a/libfdisk/src/script.c -+++ b/libfdisk/src/script.c -@@ -36,7 +36,8 @@ struct fdisk_script { - size_t nlines; - struct fdisk_label *label; - -- unsigned int json : 1; /* JSON output */ -+ unsigned int json : 1, /* JSON output */ -+ force_label : 1; /* label: <name> specified */ - }; - - -@@ -354,6 +355,22 @@ int fdisk_script_get_nlines(struct fdisk_script *dp) - } - - /** -+ * fdisk_script_has_force_label: -+ * @dp: script -+ * -+ * Note that fdisk_script_set_header(dp, "label", name) does not modify -+ * force_label status. The label has to be specified by script. -+ * -+ * Returns: true if "label: <name>" has been parsed. -+ */ -+int fdisk_script_has_force_label(struct fdisk_script *dp) -+{ -+ assert(dp); -+ return dp->force_label; -+} -+ -+ -+/** - * fdisk_script_read_context: - * @dp: script - * @cxt: context -@@ -706,6 +723,7 @@ static int parse_line_header(struct fdisk_script *dp, char *s) - if (strcmp(name, "label") == 0) { - if (dp->cxt && !fdisk_get_label(dp->cxt, value)) - goto done; /* unknown label name */ -+ dp->force_label = 1; - } else if (strcmp(name, "unit") == 0) { - if (strcmp(value, "sectors") != 0) - goto done; /* only "sectors" supported */ --- -2.10.2 - diff --git a/abs/core/util-linux/60-rfkill.rules b/abs/core/util-linux/60-rfkill.rules new file mode 100644 index 0000000..bc98a3b --- /dev/null +++ b/abs/core/util-linux/60-rfkill.rules @@ -0,0 +1 @@ +KERNEL=="rfkill", GROUP="rfkill", MODE="0664" diff --git a/abs/core/util-linux/PKGBUILD b/abs/core/util-linux/PKGBUILD index 72df84c..c672254 100644 --- a/abs/core/util-linux/PKGBUILD +++ b/abs/core/util-linux/PKGBUILD @@ -5,43 +5,31 @@ pkgbase=util-linux pkgname=(util-linux libutil-linux) -_pkgmajor=2.29 -pkgver=${_pkgmajor} +_pkgmajor=2.31 +pkgver=${_pkgmajor}.1 pkgrel=1 pkgdesc="Miscellaneous system utilities for Linux" url="https://www.kernel.org/pub/linux/utils/util-linux/" -arch=('i686' 'x86_64') -makedepends=('systemd' 'python2') +arch=('x86_64') +makedepends=('systemd' 'python' 'libcap-ng') license=('GPL2') options=('strip' 'debug') validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284') # Karel Zak source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/$pkgbase-$pkgver.tar."{xz,sign} pam-{login,common,su} - '0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch' - '0001-sfdisk-cleanup-dump-error-messages.patch' - '0001-sfdisk-support-empty-label-use-case.patch' - '0001-chrt-default-to-SCHED_RR-policy.patch' - '0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch') -md5sums=('07b6845f48a421ad5844aa9d58edb837' - 'SKIP' - '4368b3f98abd8a32662e094c54e7f9b1' - 'a31374fef2cba0ca34dfc7078e2969e4' - 'fa85e5cce5d723275b14365ba71a8aad' - '3fce7192ce1b3d97fdffd0226ed63a90' - '2f3c061865360170cacda948035fd02d' - '6d2e3915124938577f0ff18ef701c87f' - '168c1cb2cfe7d4eddfc6e3f3b19d3ced' - '68c2076a9a09564ba0c9776540a175fa') - -prepare() { - cd "$pkgbase-$pkgver" - - patch -Np1 <../0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch - patch -Np1 <../0001-sfdisk-cleanup-dump-error-messages.patch - patch -Np1 <../0001-sfdisk-support-empty-label-use-case.patch - patch -Np1 <../0001-chrt-default-to-SCHED_RR-policy.patch - patch -Np1 <../0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch -} + 'util-linux.sysusers' + '60-rfkill.rules' + 'rfkill-unblock_.service' + 'rfkill-block_.service') +sha256sums=('1a51b16fa9cd51d26ef9ab52d2f1de12403b810fc8252bf7d478df91b3cddf11' + 'SKIP' + '993a3096c2b113e6800f2abbd5d4233ebf1a97eef423990d3187d665d3490b92' + 'fc6807842f92e9d3f792d6b64a0d5aad87995a279153ab228b1b2a64d9f32f20' + '51eac9c2a2f51ad3982bba35de9aac5510f1eeff432d2d63c6362e45d620afc0' + '10b0505351263a099163c0d928132706e501dd0a008dac2835b052167b14abe3' + '7423aaaa09fee7f47baa83df9ea6fef525ff9aec395c8cbd9fe848ceb2643f37' + '8ccec10a22523f6b9d55e0d6cbf91905a39881446710aa083e935e8073323376' + 'a22e0a037e702170c7d88460cc9c9c2ab1d3e5c54a6985cd4a164ea7beff1b36') build() { cd "$pkgbase-$pkgver" @@ -57,18 +45,17 @@ build() { --enable-chfn-chsh \ --enable-write \ --enable-mesg \ - --disable-tailf \ - --with-python=2 + --with-python=3 make } package_util-linux() { - conflicts=('util-linux-ng' 'eject' 'zramctl') - provides=("util-linux-ng=$pkgver" 'eject' 'zramctl') - replaces=('zramctl') - depends=('pam' 'shadow' 'coreutils' 'libsystemd' 'libutil-linux') - optdepends=('python2: python bindings to libmount') + conflicts=('eject' 'zramctl' 'rfkill') + provides=('eject' 'zramctl' 'rfkill') + replaces=('zramctl' 'rfkill') + depends=('pam' 'shadow' 'coreutils' 'libsystemd' 'libcap-ng' 'libutil-linux') + optdepends=('python: python bindings to libmount') groups=('base' 'base-devel') backup=(etc/pam.d/chfn etc/pam.d/chsh @@ -102,11 +89,17 @@ package_util-linux() { ### runtime libs are shipped as part of libutil-linux rm "$pkgdir"/usr/lib/lib*.{a,so}* - ### tailf has been deprecated for a while. let's not include it anymore. - rm \ - "$pkgdir"/usr/bin/tailf \ - "$pkgdir"/usr/share/bash-completion/completions/tailf \ - "$pkgdir"/usr/share/man/man1/tailf.1 + ### install systemd-sysusers + install -Dm644 "$srcdir/util-linux.sysusers" \ + "$pkgdir/usr/lib/sysusers.d/util-linux.conf" + + install -Dm644 "$srcdir/60-rfkill.rules" \ + "$pkgdir/usr/lib/udev/rules.d/60-rfkill.rules" + + install -Dm644 "$srcdir/rfkill-unblock_.service" \ + "$pkgdir/usr/lib/systemd/system/rfkill-unblock@.service" + install -Dm644 "$srcdir/rfkill-block_.service" \ + "$pkgdir/usr/lib/systemd/system/rfkill-block@.service" } package_libutil-linux() { diff --git a/abs/core/util-linux/__changelog b/abs/core/util-linux/__changelog deleted file mode 100644 index 4e7296e..0000000 --- a/abs/core/util-linux/__changelog +++ /dev/null @@ -1,2 +0,0 @@ -changed python from 3->2 - diff --git a/abs/core/util-linux/rfkill-block_.service b/abs/core/util-linux/rfkill-block_.service new file mode 100644 index 0000000..ede74d1 --- /dev/null +++ b/abs/core/util-linux/rfkill-block_.service @@ -0,0 +1,10 @@ +[Unit] +Description=RFKill-Block %I +After=rfkill-unblock@all.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/rfkill block %I + +[Install] +WantedBy=multi-user.target diff --git a/abs/core/util-linux/rfkill-unblock_.service b/abs/core/util-linux/rfkill-unblock_.service new file mode 100644 index 0000000..94ebf35 --- /dev/null +++ b/abs/core/util-linux/rfkill-unblock_.service @@ -0,0 +1,10 @@ +[Unit] +Description=RFKill-Unblock %I +After=rfkill-block@all.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/rfkill unblock %I + +[Install] +WantedBy=multi-user.target diff --git a/abs/core/util-linux/util-linux.sysusers b/abs/core/util-linux/util-linux.sysusers new file mode 100644 index 0000000..de04d9f --- /dev/null +++ b/abs/core/util-linux/util-linux.sysusers @@ -0,0 +1,2 @@ +u uuidd 68 +g rfkill - - - |