zic(8) on Solnix vs Linux and the BSDs
On Solnix, zic is the illumos zic at /usr/sbin/zic, a TZif time zone compiler. It matches Linux and FreeBSD zic for most options, but has no -D, -m or -u for controlling directory creation, file mode and ownership of output files.
The manual pages
What Solnix runs
A default Solnix system runs the illumos zic at /usr/sbin/zic, published in pkgs.solnix.illumos-world-man. No other variants are shipped. The page says zic is not maintained directly by illumos and lists its Interface Stability as Uncommitted.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| Linux, FreeBSD | -m file mode | Linux and FreeBSD zic accept -m mode to set the mode of created TZif files; the default is 644 modified by the umask. The Solnix synopsis and options have no -m.Source: Linux zic(8) -m; FreeBSD zic(8) -m; Solnix zic(8) SYNOPSIS |
| Linux, FreeBSD | -u owner[:group] | Linux and FreeBSD zic accept -u to change the owner and group of output regular files. The Solnix page documents no -u, so chown the files afterwards.Source: Linux zic(8) -u; FreeBSD zic(8) -u; Solnix zic(8) SYNOPSIS |
| Linux, FreeBSD | -D ancestor directories | Linux and FreeBSD zic have -D to stop creation of ancestor directories, and create them by default. The Solnix page has no -D and does not say whether ancestor directories are created.Source: Linux zic(8) -D; FreeBSD zic(8) -D; Solnix zic(8) OPTIONS |
| OpenBSD | option set | OpenBSD zic takes only -v, -d, -L, -l and -p. It has no -b, -r, -R or -t, and no --help or --version. Solnix has all of those.Source: OpenBSD zic(8) SYNOPSIS; Solnix zic(8) SYNOPSIS |
| FreeBSD | -R argument form | The FreeBSD page writes the option as -R -@hi, and its -r examples as -r -@0. Solnix, Linux and NetBSD write -R @hi and zic -r @0. Check the FreeBSD form before copying commands.Source: FreeBSD zic(8) SYNOPSIS, -R, -r; Solnix zic(8) -R, -r; NetBSD zic(8) -R |
| NetBSD | -r synopsis and NetBSD-only flags | NetBSD writes -r as [@lo[/@hi]], so a /@hi needs @lo first. Solnix writes [@lo][/@hi]. NetBSD also lists -s and -y command in its synopsis; the Solnix page has neither.Source: NetBSD zic(8) SYNOPSIS, -r; Solnix zic(8) -r |
| FreeBSD, NetBSD | -s | The FreeBSD and NetBSD synopses list -s, and the mechanical option list shows it for both. The Solnix page has no -s. The bundle text shown does not explain what -s does.Source: FreeBSD zic(8) SYNOPSIS; NetBSD zic(8) SYNOPSIS; Solnix zic(8) SYNOPSIS |
| Linux, FreeBSD, NetBSD | -L and leap seconds | Linux and FreeBSD add that omitting leap second data is required by some TZif readers. The Solnix and NetBSD pages say only that no leap second information appears in output if -L is not used.Source: Linux zic(8) -L; FreeBSD zic(8) -L; Solnix zic(8) -L; NetBSD zic(8) -L |
| Linux, FreeBSD, NetBSD | -p posixrules wording | Solnix -p uses the timezone's rules for TZ strings like EET-2EEST that lack transition rules. Solnix, Linux, FreeBSD and NetBSD all call the option obsolete unless timezone is -. Linux and FreeBSD add that most runtimes no longer support it.Source: Solnix zic(8) -p; Linux zic(8) -p; FreeBSD zic(8) -p; NetBSD zic(8) -p |
| OpenBSD | -v checks | Solnix -v also warns about %z abbreviations, fractional-second timestamps, a truncated leap second table, more than 1200 transitions and unusual output file names. OpenBSD -v lists fewer cases and mentions Iran's rules rather than Morocco's.Source: Solnix zic(8) -v; OpenBSD zic(8) -v |
| all four | reload behaviour | The Solnix NOTES say that after you recompile the current timezone file, only new processes see the change. A reboot is the most accurate way to refresh the whole system. The other pages shown do not say this. Source: Solnix zic(8) NOTES; Linux, FreeBSD, OpenBSD and NetBSD zic(8) text in the bundle |
Standards
- POSIX: zic is not a POSIX.1-2024 utility.
- Solnix: Interface Stability: Uncommitted. The zic utility is not maintained directly by illumos.
Writing portable scripts
- Use only
-d,-l,-L,-pand-vin portable scripts. They are the options all four counterpart synopses list. - Do not rely on
-m,-uor-D. Set file mode and ownership with chmod and chown after running zic, and create the target directories first.
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.