You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Karel Zak ee2d371c61 include/fileeq: add functions to compare files content 11 months ago
.github/workflows github: add meson build target 1 year ago
Documentation Fix misspellings 1 year ago
bash-completion su: (bash-completion) offer usernames rather than files 1 year ago
config build-sys: gtkdoc-fixxref v1.27 requires module option 5 years ago
disk-utils mkswap: support -U {clear,random,time,uuid} 1 year ago
include include/fileeq: add functions to compare files content 11 months ago
lib include/fileeq: add functions to compare files content 11 months ago
libblkid Fix misspellings 1 year ago
libfdisk libfdisk: check calloc() return [gcc-analyzer] 1 year ago
libmount test_mount_optstr: use xstrdup() 1 year ago
libsmartcols meson: fix building libsmartcols 1 year ago
libuuid Man pages: Fix end extend formatting 1 year ago
login-utils su: reset also RLIMIT_FSIZE and RLIMIT_NOFILE 12 months ago
m4 build-sys: use $LIBS rather than LDFLAGS 1 year ago
man-common fix whitespace issue in ducumentation 1 year ago
misc-utils hardlink: improve verbose messages 12 months ago
po Fix typo 1 year ago
po-man build-sys: fix po-man/ make check 1 year ago
schedutils uclampset: Fix left over optind++ 1 year ago
sys-utils mount.8.adoc: note that mandatory locking is fully deprecated in Linux 5.15 12 months ago
term-utils setterm: (man) improve dosc about optional arguments 1 year ago
tests tests: use subtests 1 year ago
text-utils more: fix -e in non-interactive mode 12 months ago
tools tools/git-version-gen: use NEWS as a fallback 1 year ago
.editorconfig add .editorconfig 7 years ago
.gitignore build-sys: add .stamp to gitignore 1 year ago travis: cleanup before autogen 1 year ago
.travis.yml travis: remove old ubuntu 2 years ago
AUTHORS docs: add uclampset to AUTHORS file 1 year ago
COPYING docs: corrections to FSF license files, and postal address 11 years ago
ChangeLog docs: Correct ChangeLog URL to history log. 2 years ago build-sys: make re-use of generated man-pages more robust 1 year ago
NEWS build-sys: release++ (v2.37) 1 year ago
README docs: add hint about make install-strip and link to Documentation/ 2 years ago
README.licensing docs: add GPLv3 text 3 years ago build-sys: make output more user friendly 1 year ago hardlink: remove pcre2posix.h support 1 year ago meson: fix typo 1 year ago
meson_options.txt meson: make raw(7) optional 1 year ago
util-linux.doap docs: replace FTP by HTTPS in URLs 6 years ago



util-linux is a random collection of Linux utilities

Note: for the years 2006-2010 this project was named "util-linux-ng".


See Documentation/howto-compilation.txt.



The mailing list will reject email messages that contain:
- more than 100K characters
- html
- spam phrases/keywords


#util-linux at


The IRC channel and Mailing list are for developers and project
maintainers. For end users it is recommended to utilize the
distribution's support system.



This project has no resources to provide support for distribution specific
issues. For end users it is recommended to utilize the distribution's
support system.


PO files are maintained by:


Standard releases:
major = fatal and deep changes
minor = typical release with new features
maint = maintenance releases; bug fixes only

Development releases:


Download archive:

See also:

SCM (Source Code Management) Repository:

Primary repository:
git clone git://

Backup repository:
git clone git://

Web interfaces:

Note: the GitHub repository may contain temporary development branches too.

The repository contains master (current development) and stable/*
(maintenance) branches only. All master or stable/* changes are always pushed
to both repositories at the same time.

Repository Branches: 'git branch -a'
master branch
- current development
- the source for stable releases when deemed ready.
- day-to-day status is: 'it works for me'. This means that its
normal state is useful but not well tested.
- long-term development or invasive changes in active development are
forked into separate 'topic' branches from the tip of 'master'.

stable/ branches
- public releases
- branch name: stable/v<major>.<minor>.
- created from the 'master' branch after two or more release
candidates and the final public release. This means that the stable
releases are committed, tagged, and reachable in 'master'.
- these branches then become forked development branches. This means
that any changes made to them diverge from the 'master' branch.
- maintenance releases are part of, and belong to, their respective
stable branch. As such, they are tags(<major>.<minor>.<maint>) and
not branches of their own. They are not part of, visible in, or
have anything to do with the 'master' development branch. In git
terminology: maintenance releases are not reachable from 'master'.
- when initially cloned (as with the 'git clone' command given above)
these branches are created as 'remote tracking branches' and are
only visible by using the -a or -r options to 'git branch'. To
create a local branch use the desired tag with this command:
'git checkout -b v2.29.2 v2.29.2'

Tags: 'git tag'
- a new tag object is created for every release.
- tag name: v<version>.
- all tags are signed by the maintainer's PGP key.

Known Bugs:
- don't use tag v2.13.1 (created and published by mistake),
use v2.13.1-REAL instead.


1) development (branch: <master>)

2) master release (tags: v2.29-rc1, v2.29-rc2, v2.29, branch: <master>)

3) development (work on v2.30, branch: <master>)

4) fork -- create a new branch <stable/v2.29> based on tag v2.29

4a) new patches or cherry-pick patches from <master> (branch: <stable/v2.29>)

4b) stable release (tag: v2.29.1, branch: <stable/v2.29>)

4c) more patches; another release (tag: v2.29.2, branch: <stable/v2.29>)

5) master release v2.30 (branch: <master>)

where 3) and 4) happen simultaneously.