2 Note that items with (!) have high priority.
7 - use gettext() for column names on output in libsmartcols based tools and
8 accept trantated as well as original names on command line (lsblk -o NAME,SIZE).
9 https://github.com/karelzak/util-linux/issues/1291
13 - add MacOS to GitHub Actions (.github/workflows/cibuild.yml). Note, we have used
14 Mac in Travis-CI (see .travis.yml).
16 - add Coverity to GitHub Actions (see for example .github/workflows/coverity.yml
19 script (lib/pty-session.c)
20 --------------------------
21 - (!) add #ifdefs and optional code for non-signalfd() systems
25 - use terminal hyperlinks (for example for --help)
26 try on terminal: printf 'For more details see \e]8;;man:fdisk(8)\e\\fdisk(8)\e]8;;\e\\.\n'
27 https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda
31 - support huge input lines (for example read input by small fixed buffer
32 rather than try allocate all buffer for a whole line)
33 see: https://github.com/karelzak/util-linux/issues/972
37 - use unsigned sizes for columns and lines
38 - check for limits to avoid segfaults
40 https://github.com/karelzak/util-linux/issues/749
44 - support another --reforms, see for example freebsd version
45 https://github.com/freebsd/freebsd/blob/master/usr.bin/ncal/ncal.c#L72
49 - read cpuid and uname information from file if --sysroot is specified, then
50 we can prepare regression tests completely independent on hw and architecture.
54 - read the default UID and GID from the target process.
55 http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9553/focus=9585
59 - use /var/lib/hwclock/drift to store hw-clock drift numbers.
60 - use /etc/adjtime as read-only for UTC/LOCAL information only
61 - the /var/lib/hwclock/drift should be implemented backwardly compatible,
62 it means use the file only if exists, otherwise follow /etc/adjtime
63 - see topic/hwclock-drift-file branch
67 - Optional argument handling requires user to press backspace to get
69 - Comma separated value, e.g., --output 'value1,value2', are not
72 libmount (mount/umount)
73 -----------------------
75 - mnt_context_get_excode() does not return error messages from /sbin/[u]mount.<type>
76 external helpers. It is disadvantages in same cases (non-terminal progarms).
77 The solution is to use pipe(), keep output from helper in memory and return it later
78 by mnt_context_get_excode() (or mnt_context_get_helper_output(), etc.). This feature
79 should be optional and disabled by default.
80 see: https://github.com/karelzak/util-linux/issues/1208
82 - add --onlyonce to force mount(8) to check if mountpoint is already used. Now
83 "already mounted" detection is used for --all only. The problem is if you
84 call "mount <mountpoint>" more than once for in fstab defined tmpfs (or network
85 filesystem etc.). In this case kernel does not return EBUSY, but a new instance
86 of the FS is created. https://github.com/karelzak/util-linux/issues/448
87 (... just idea, maybe wrong idea)
92 - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
97 It would be great if getopt could optionally ignore unknown options.
98 Currently, it outputs -- for every option it doesn't recognize but leaving the
99 option as it is could beneficial wrapper scripts which could then pass the
100 options they don't recognize as they are to the command they are wrapping.
101 https://github.com/karelzak/util-linux/issues/701
106 - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)
108 - (!) add API documentation to libuuid
110 - (!) rewrite man pages to AsciiDoc and generate final man pages by Asciidoctor & Docbook
116 - consolidate newgrp(1)
117 * we have "su --group/--supp-group" to switch between groups, newgrp(1) in
118 util-linux and shadow-utils (and sg(1) alias in shadow-utils)
119 * the unique functionality provided by newgpr(1) is support for group
120 passwords [/etc/gshadow] -- do we really need this functionality?
121 * maybe we can mark group-passwords as deprecated, and replace sg(1) and
122 newgpr(1) with su(1) code. The another way is to ask for group password in
124 * note that shadow-utils newgpr(1) provides support for syslog and audit log.
127 libsmartcols / column -t
128 ------------------------
129 - add column --table-header-color
130 - add support for border of table
131 * extend 'struct libscols_symbols', use box-drawing chars UTF8/ASCII
132 * add scols_table_enable_border()
137 - extend ZFS proper to scan for more uberblocks if BLKID_SUBLKS_MAGIC flag is set.
138 This solution will make wipefs(8) more usable as ZFS is extremely variable with
139 additional root blocks locations. See https://github.com/karelzak/util-linux/issues/1228
141 - (!) add support for BitLocker Drive Encryption
142 https://github.com/karelzak/util-linux/issues/617
143 https://github.com/libyal/libbde/blob/master/documentation/BitLocker%20Drive%20Encryption%20(BDE)%20format.asciidoc
145 - (!) add support for dasd PT (used for example on s390)
150 - add support for Apple Partition Map (see libblkid/src/partitions/mac.c)
151 http://en.wikipedia.org/wiki/Apple_Partition_Map
153 - add support for nested PT (e.g. hybrid MBR) to scripts
154 * add "nested-label:" block to sfdisk --dump
155 * add "nested-partitiontable" to sfdisk --JSON
156 * support nested labels parsing from dump
157 see https://github.com/karelzak/util-linux/issues/850
162 - don't backup PT in interactive mode before write to the devices is requested,
163 see https://github.com/karelzak/util-linux/issues/852
168 - add mllockall() and SCHED_FIFO to hwclock,
169 see http://lkml.org/lkml/2008/10/12/132
176 - add SELinux security contexts support to the 'ipcs' utility
177 http://bugzilla.redhat.com/show_bug.cgi?id=225342
179 Would be great to list the current system IPC Objects with their respective
180 security labels (where allowed) with something like 'ipcs -Z' - following the
181 way other tools reports those.