]> git.ipfire.org Git - thirdparty/util-linux.git/blame - Documentation/TODO
docs: add note about lsblk to TODO
[thirdparty/util-linux.git] / Documentation / TODO
CommitLineData
0cbeee27 1
b1883029 2 Note that items with (!) have high priority.
0cbeee27 3
caa86834
KZ
4cal
5---
6 - add option to print calendar in vertical way
7 https://github.com/karelzak/util-linux/issues/604
8 - support another --reforms, see for example freebsd version
9 https://github.com/freebsd/freebsd/blob/master/usr.bin/ncal/ncal.c#L72
10
e34dcfb6
KZ
11column
12------
13 - add option to NOT ignore empty lines
14 https://github.com/karelzak/util-linux/issues/593
15
dcb67393
KZ
16script
17------
dcb67393
KZ
18 - think about optional "event" records in timing file to save information
19 about non-data changes like signals (SIGWINCH, SIGSTOP, SIGCONT, etc.)
20 in format:
21
22 <time> 0 <name>[: var=data, ...]
23
24 for example:
25
26 0.001296 256
27 0.001297 0 SIGWINCH: columns=50, lines=20
28 0.000010 275
29
56f4d6ce
KZ
30lsblk
31-----
4e6bd9ad
KZ
32 - rewrite lsblk to read all devices tree to memory to make it more extendable. Now
33 it always keep in memory just one device (only final output is buffered by
34 libsmartcols, but this stuff are output strings, nothing else).
56f4d6ce 35
4e6bd9ad 36 See fopr example: https://github.com/karelzak/util-linux/issues/616
56f4d6ce
KZ
37
38
7aa670f6 39cleanup lib/path.c: [Karel Zak for v2.33]
52ac7065 40------------------
00dbc498
KZ
41 - always return rc from all functions
42 - introduce control struct and use openat() from top-level path
43 (e.g. top-level is /proc, etc)
7aa670f6 44 - use lib/path.c as low-level API for lib/sysfs.c
00dbc498
KZ
45 - now we duplicate code in functions like {path,sysfs}_read_u32, etc.
46 - it would be also nice to have a way how to redirect sysfs.c functions
47 to /sys snapshots (e.g. lsblk regression tests)
48
3421709a
KZ
49
50lscpu
51-----
52 - read cpuid and uname information from file if --sysroot is specified, then
53 we can prepare regression tests completely independent on hw and architecture.
54
5b7be990
KZ
55lsblk
56-----
be869840
KZ
57 - add --sysroot to read sysfs data from dumps rather than from a real sysfs
58 - add regression tests based on --sysroot
59
60 - re-write the way how lsblk internally holds info about devices. Now we
61 compose only output (by libsmartcols). It would be better to have in memory
62 complete tree of the devices and generate the output from this tree. It will
63 make code more readable and allow to generate output in more ways -- for
64 example for RAIDs (https://github.com/karelzak/util-linux/issues/616)
65
5b7be990
KZ
66 - currently it does not show mountpoint for all devices in btrfs RAID. It's because
67 /proc/#/mountinfo contains reference to the one device only. Maybe we can add some
68 btrfs specific code to provide a better output for FS based stacks. Not sure.
69 https://bugzilla.redhat.com/show_bug.cgi?id=1084453
70
426ee7cb
KZ
71nsenter(1)
72----------
73 - read the default UID and GID from the target process.
74 http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9553/focus=9585
75
35bc7a2b
KZ
76hwlock
77------
78 - use /var/lib/hwclock/drift to store hw-clock drift numbers.
79 - use /etc/adjtime as read-only for UTC/LOCAL information only
80 - the /var/lib/hwclock/drift should be implemented backwardly compatible,
81 it means use the file only if exists, otherwise follow /etc/adjtime
82
b75b23b4
KZ
83bash completion
84---------------
20a51056 85- Optional argument handling requires user to press backspace to get
58c41e15 86 argument completion.
20a51056
SK
87- Comma separated value, e.g., --output 'value1,value2', are not
88 completed for users.
b75b23b4 89
b1883029
KZ
90libmount (mount/umount)
91-----------------------
01df6eeb 92
7c79c341
KZ
93 - remount all filesystems given their type, for example:
94 mount -a -t tmpfs -o remount
95 It should be probably enough to add remount_all() to mount(8) in way we
96 already have mount_all(). https://github.com/karelzak/util-linux/issues/589
97
25629819
KZ
98 - add --onlyonce to force mount(8) to check if mountpoint is already used. Now
99 "already mounted" detection is used for --all only. The problem is if you
100 call "mount <mountpoint>" more than once for in fstab defined tmpfs (or network
101 filesystem etc.). In this case kernel does not return EBUSY, but a new instance
102 of the FS is created. https://github.com/karelzak/util-linux/issues/448
7c79c341 103 (... just idea, maybe wrong idea)
25629819 104
3f30dedd
KZ
105 - support CAP_SYS_ADMIN; for mount(2) syscall the CAP_SYS_ADMIN is good
106 enough. Unfortunately, mount(8) does more things like check for filesystem
107 type (but it's usually done by udev, so root perms are unnecessary), create
108 loop devices, write to /run/mount/utab or /etc/mtab, etc.
109
110 It would be nice to improve libmount to check for CAP_SYS_ADMIN if suid not
111 set and allow to use it for simple tasks where no another operation is
112 necessary.
113
28297408
KZ
114partx
115-----
116
4231bffe
KZ
117 - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
118
b1883029
KZ
119
120docs
121----
122
123 - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)
124
125 - (!) add API documentation to libuuid
28297408 126
ce87b20a
KZ
127exit codes
128----------
129
130 - we need coreutils-like exit codes for failed exec(). See:
131 https://www.spinics.net/lists/util-linux-ng/msg12776.html
132 and original attempt:
133 https://github.com/karelzak/util-linux/pull/311
4231bffe 134
a4f4cc75
KZ
135login-utils:
136-----------
137
b75b23b4
KZ
138 - consolidate newgrp(1)
139 * we have "su --group/--supp-group" to switch between groups, newgrp(1) in
140 util-linux and shadow-utils (and sg(1) alias in shadow-utils)
141 * the unique functionality provided by newgpr(1) is support for group
142 passwords [/etc/gshadow] -- do we really need this functionality?
143 * maybe we can mark group-passwords as deprecated, and replace sg(1) and
73afd3f8 144 newgpr(1) with su(1) code. The another way is to ask for group password in
b75b23b4
KZ
145 su --group too.
146 * note that shadow-utils newgpr(1) provides support for syslog and audit log.
a4f4cc75 147
9612a410 148
a24f0ade
KZ
149libblkid
150--------
5d5ae40b 151
20a48072
KZ
152 - (!) add support for BitLocker Drive Encryption
153 https://github.com/karelzak/util-linux/issues/617
154 https://github.com/libyal/libbde/blob/master/documentation/BitLocker%20Drive%20Encryption%20(BDE)%20format.asciidoc
a24f0ade 155
b1883029 156 - (!) add support for dasd PT (used for example on s390)
f2813fce 157
425ae8f5
KZ
158libfdisk
159--------
b116ef42 160
425ae8f5
KZ
161 - add support for Apple Partition Map (see libblkid/src/partitions/mac.c)
162 http://en.wikipedia.org/wiki/Apple_Partition_Map
163
a24f0ade
KZ
164misc
165----
166
b1883029 167 - add mllockall() and SCHED_FIFO to hwclock,
a24f0ade
KZ
168 see http://lkml.org/lkml/2008/10/12/132
169
19a9d0b7
KZ
170
171---------------
172exotic requests
173---------------
174
b1883029 175 - add SELinux security contexts support to the 'ipcs' utility
8da18ddb
KZ
176 http://bugzilla.redhat.com/show_bug.cgi?id=225342
177
178 Would be great to list the current system IPC Objects with their respective
179 security labels (where allowed) with something like 'ipcs -Z' - following the
180 way other tools reports those.
181
182