]> git.ipfire.org Git - thirdparty/util-linux.git/blob - Documentation/TODO
Merge branch 'uclampset-v3' of https://github.com/qais-yousef/util-linux
[thirdparty/util-linux.git] / Documentation / TODO
1
2 Note that items with (!) have high priority.
3
4 tests
5 -----
6 - add MacOS to GitHub Actions (.github/workflows/cibuild.yml). Note, we have used
7 Mac in Travis-CI (see .travis.yml).
8
9 - add Coverity to GitHub Actions (see for example .github/workflows/coverity.yml
10 in systemd repo).
11
12 script (lib/pty-session.c)
13 --------------------------
14 - (!) add #ifdefs and optional code for non-signalfd() systems
15
16
17 docs
18 ----
19 - use terminal hyperlinks (for example for --help)
20 try on terminal: printf 'For more details see \e]8;;man:fdisk(8)\e\\fdisk(8)\e]8;;\e\\.\n'
21 https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda
22
23 rev
24 ---
25 - support huge input lines (for example read input by small fixed buffer
26 rather than try allocate all buffer for a whole line)
27 see: https://github.com/karelzak/util-linux/issues/972
28
29 col
30 ---
31 - use unsigned sizes for columns and lines
32 - check for limits to avoid segfaults
33 - make it more robust
34 https://github.com/karelzak/util-linux/issues/749
35
36 cal
37 ---
38 - support another --reforms, see for example freebsd version
39 https://github.com/freebsd/freebsd/blob/master/usr.bin/ncal/ncal.c#L72
40
41 lscpu
42 -----
43 - read cpuid and uname information from file if --sysroot is specified, then
44 we can prepare regression tests completely independent on hw and architecture.
45
46 lsblk
47 -----
48 - currently it does not show mountpoint for all devices in btrfs RAID. It's because
49 /proc/#/mountinfo contains reference to the one device only. Maybe we can add some
50 btrfs specific code to provide a better output for FS based stacks. Not sure.
51 https://bugzilla.redhat.com/show_bug.cgi?id=1084453
52
53 nsenter(1)
54 ----------
55 - read the default UID and GID from the target process.
56 http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9553/focus=9585
57
58 hwclock
59 ------
60 - use /var/lib/hwclock/drift to store hw-clock drift numbers.
61 - use /etc/adjtime as read-only for UTC/LOCAL information only
62 - the /var/lib/hwclock/drift should be implemented backwardly compatible,
63 it means use the file only if exists, otherwise follow /etc/adjtime
64
65 bash completion
66 ---------------
67 - Optional argument handling requires user to press backspace to get
68 argument completion.
69 - Comma separated value, e.g., --output 'value1,value2', are not
70 completed for users.
71
72 libmount (mount/umount)
73 -----------------------
74
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
81
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)
88
89 partx
90 -----
91
92 - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
93
94
95 getopt
96 ------
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
102
103 docs
104 ----
105
106 - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)
107
108 - (!) add API documentation to libuuid
109
110 - (!) rewrite man pages to AsciiDoc and generate final man pages by Asciidoctor & Docbook
111
112 login-utils:
113 -----------
114
115 - consolidate newgrp(1)
116 * we have "su --group/--supp-group" to switch between groups, newgrp(1) in
117 util-linux and shadow-utils (and sg(1) alias in shadow-utils)
118 * the unique functionality provided by newgpr(1) is support for group
119 passwords [/etc/gshadow] -- do we really need this functionality?
120 * maybe we can mark group-passwords as deprecated, and replace sg(1) and
121 newgpr(1) with su(1) code. The another way is to ask for group password in
122 su --group too.
123 * note that shadow-utils newgpr(1) provides support for syslog and audit log.
124
125
126 libblkid
127 --------
128
129 - extend ZFS proper to scan for more uberblocks if BLKID_SUBLKS_MAGIC flag is set.
130 This solution will make wipefs(8) more usable as ZFS is extremely variable with
131 additional root blocks locations. See https://github.com/karelzak/util-linux/issues/1228
132
133 - (!) add support for BitLocker Drive Encryption
134 https://github.com/karelzak/util-linux/issues/617
135 https://github.com/libyal/libbde/blob/master/documentation/BitLocker%20Drive%20Encryption%20(BDE)%20format.asciidoc
136
137 - (!) add support for dasd PT (used for example on s390)
138
139 libfdisk
140 --------
141
142 - add support for Apple Partition Map (see libblkid/src/partitions/mac.c)
143 http://en.wikipedia.org/wiki/Apple_Partition_Map
144
145 - add support for nested PT (e.g. hybrid MBR) to scripts
146 * add "nested-label:" block to sfdisk --dump
147 * add "nested-partitiontable" to sfdisk --JSON
148 * support nested labels parsing from dump
149 see https://github.com/karelzak/util-linux/issues/850
150
151 sfdisk
152 ------
153
154 - don't backup PT in interactive mode before write to the devices is requested,
155 see https://github.com/karelzak/util-linux/issues/852
156
157 misc
158 ----
159
160 - add mllockall() and SCHED_FIFO to hwclock,
161 see http://lkml.org/lkml/2008/10/12/132
162
163
164 ---------------
165 exotic requests
166 ---------------
167
168 - add SELinux security contexts support to the 'ipcs' utility
169 http://bugzilla.redhat.com/show_bug.cgi?id=225342
170
171 Would be great to list the current system IPC Objects with their respective
172 security labels (where allowed) with something like 'ipcs -Z' - following the
173 way other tools reports those.
174
175