summaryrefslogtreecommitdiffstats
path: root/Documentation/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/TODO')
-rw-r--r--Documentation/TODO165
1 files changed, 165 insertions, 0 deletions
diff --git a/Documentation/TODO b/Documentation/TODO
new file mode 100644
index 0000000..86ee25a
--- /dev/null
+++ b/Documentation/TODO
@@ -0,0 +1,165 @@
+
+ Note that items with (!) have high priority.
+
+cal
+---
+ - add option to print calendar in vertical way
+ https://github.com/karelzak/util-linux/issues/604
+ - support another --reforms, see for example freebsd version
+ https://github.com/freebsd/freebsd/blob/master/usr.bin/ncal/ncal.c#L72
+
+script
+------
+ - introduce a new timing file format to record information about multiple
+ streams (stdout, stdin) and events (signals)
+
+ - add support for stdin loggin -- separated log file with raw input and timing
+ records in the timing file
+
+ - for example timing file format:
+
+ <type> <timestamp> [<offset> | <signal> ...]
+
+ O 0.001296 256
+ S 0.001297 SIGWINCH: columns=50, lines=20
+ I 0.000010 10
+
+ O - output, S - signal, I - input
+
+
+lscpu
+-----
+ - read cpuid and uname information from file if --sysroot is specified, then
+ we can prepare regression tests completely independent on hw and architecture.
+
+lsblk
+-----
+ - re-write the way how lsblk internally holds info about devices. Now we
+ compose only output (by libsmartcols). It would be better to have in memory
+ complete tree of the devices and generate the output from this tree. It will
+ make code more readable and allow to generate output in more ways -- for
+ example for RAIDs (https://github.com/karelzak/util-linux/issues/616)
+
+ - currently it does not show mountpoint for all devices in btrfs RAID. It's because
+ /proc/#/mountinfo contains reference to the one device only. Maybe we can add some
+ btrfs specific code to provide a better output for FS based stacks. Not sure.
+ https://bugzilla.redhat.com/show_bug.cgi?id=1084453
+
+ - think about free/used space columns; the problem is that such info is about FS
+ and it may be confusing for end-users when FS to DEV mapping is not 1:1 (RAIDs, btrfs,
+ ...)
+
+nsenter(1)
+----------
+ - read the default UID and GID from the target process.
+ http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9553/focus=9585
+
+hwlock
+------
+ - use /var/lib/hwclock/drift to store hw-clock drift numbers.
+ - use /etc/adjtime as read-only for UTC/LOCAL information only
+ - the /var/lib/hwclock/drift should be implemented backwardly compatible,
+ it means use the file only if exists, otherwise follow /etc/adjtime
+
+bash completion
+---------------
+- Optional argument handling requires user to press backspace to get
+ argument completion.
+- Comma separated value, e.g., --output 'value1,value2', are not
+ completed for users.
+
+libmount (mount/umount)
+-----------------------
+
+ - remount all filesystems given their type, for example:
+ mount -a -t tmpfs -o remount
+ It should be probably enough to add remount_all() to mount(8) in way we
+ already have mount_all(). https://github.com/karelzak/util-linux/issues/589
+
+ - add --onlyonce to force mount(8) to check if mountpoint is already used. Now
+ "already mounted" detection is used for --all only. The problem is if you
+ call "mount <mountpoint>" more than once for in fstab defined tmpfs (or network
+ filesystem etc.). In this case kernel does not return EBUSY, but a new instance
+ of the FS is created. https://github.com/karelzak/util-linux/issues/448
+ (... just idea, maybe wrong idea)
+
+ - support CAP_SYS_ADMIN; for mount(2) syscall the CAP_SYS_ADMIN is good
+ enough. Unfortunately, mount(8) does more things like check for filesystem
+ type (but it's usually done by udev, so root perms are unnecessary), create
+ loop devices, write to /run/mount/utab or /etc/mtab, etc.
+
+ It would be nice to improve libmount to check for CAP_SYS_ADMIN if suid not
+ set and allow to use it for simple tasks where no another operation is
+ necessary.
+
+partx
+-----
+
+ - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
+
+
+getopt
+------
+ It would be great if getopt could optionally ignore unknown options.
+ Currently, it outputs -- for every option it doesn't recognize but leaving the
+ option as it is could beneficial wrapper scripts which could then pass the
+ options they don't recognize as they are to the command they are wrapping.
+ https://github.com/karelzak/util-linux/issues/701
+
+docs
+----
+
+ - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)
+
+ - (!) add API documentation to libuuid
+
+
+login-utils:
+-----------
+
+ - consolidate newgrp(1)
+ * we have "su --group/--supp-group" to switch between groups, newgrp(1) in
+ util-linux and shadow-utils (and sg(1) alias in shadow-utils)
+ * the unique functionality provided by newgpr(1) is support for group
+ passwords [/etc/gshadow] -- do we really need this functionality?
+ * maybe we can mark group-passwords as deprecated, and replace sg(1) and
+ newgpr(1) with su(1) code. The another way is to ask for group password in
+ su --group too.
+ * note that shadow-utils newgpr(1) provides support for syslog and audit log.
+
+
+libblkid
+--------
+
+ - (!) add support for BitLocker Drive Encryption
+ https://github.com/karelzak/util-linux/issues/617
+ https://github.com/libyal/libbde/blob/master/documentation/BitLocker%20Drive%20Encryption%20(BDE)%20format.asciidoc
+
+ - (!) add support for dasd PT (used for example on s390)
+
+libfdisk
+--------
+
+ - add support for Apple Partition Map (see libblkid/src/partitions/mac.c)
+ http://en.wikipedia.org/wiki/Apple_Partition_Map
+
+
+misc
+----
+
+ - add mllockall() and SCHED_FIFO to hwclock,
+ see http://lkml.org/lkml/2008/10/12/132
+
+
+---------------
+exotic requests
+---------------
+
+ - add SELinux security contexts support to the 'ipcs' utility
+ http://bugzilla.redhat.com/show_bug.cgi?id=225342
+
+ Would be great to list the current system IPC Objects with their respective
+ security labels (where allowed) with something like 'ipcs -Z' - following the
+ way other tools reports those.
+
+