FOG 1.6.0 is released. It is on the stable branch and reports version 1.6.0.
This is the first release of the 1.6 line, and it replaces 1.5. The upgrade from 1.5 to 1.6 is one-way: it changes the database schema, and there is no down-migration. Back up before you upgrade.
Thank you to everyone who tested the 21 release candidates. Thank you also to everyone who reported a problem, on the forums or on GitHub, and to everyone who sent a pull request. Each report and each fix helped make 1.6.0 what it is.
Highlights
- Role-based access control is part of core. Roles and their permissions are built in. You no longer install a plugin before permissions exist.
- Sites are part of core. Multi-site scoping is built in. The upgrade moves the
siteplugin's data into the coresitestable. - Groups grant snapins, printers and modules. A host that joins a group later gets the grant, and a host that leaves loses it.
- Mass edit on the host list. It replaces the group page's one-time push. Each field has its own No change, Set on all, or Clear on all choice.
- LDAP and OIDC sign-in are built-in identity providers. Directory groups map to FOG roles, so an external user no longer gets full admin by default.
- API Bearer tokens. Create one on a user's API tab and send it as
Authorization: Bearer <token>. Each token has its own label and on/off switch, and you can rotate it without touching your other integrations. FOG stores only a hash and shows the token once. The oldfog-api-tokenplusfog-user-tokenpair still works, but a Bearer token is simpler to use and to maintain. Use it for new integrations. - An audit trail. FOG records who changed what, and shows it as an activity view.
- A retention policy. A retention daemon removes log and audit records older than the number of days you set. The default keeps everything.
- The database enforces its relationships. Real foreign keys now cover every core relationship that can carry one. The upgrade cleans up orphan rows first and logs each cleanup.
- Plugins are installable artifacts. A plugin has its own install, update and removal, and it survives a FOG upgrade.
- Secure Boot enrollment is a task type. You schedule and track it like any other task.
Plugins removed in 1.6
These 1.5 plugins are removed. Do not copy them into a 1.6 server.
accesscontrol: removed. Core role-based access control does its job. The upgrade removes its registration.site: removed. Core sites do its job. The upgrade copies its data into core and drops its tables only when the row counts match.persistentgroups: removed, with its database trigger. Core group grants do its job. Installing it again would re-create the trigger.fileintegrityandhoststatus: not carried into 1.6. No replacement ships.
Every 1.5 plugin needs a 1.6 build to load. The 1.6 plugins are in https://github.com/FOGProject/fog-plugins .
FOS 1.6.0 (kernel and init)
- Linux kernel 6.18.59 (LTS), Buildroot 2026.02.1. FOS verifies TLS when it talks to the server.
- x64 and x86 boot an initramfs, not an ext2 initrd. The file names stay
init.xzandinit_32.xz.- Warning: a customized init can no longer be loop-mounted. Add your files as an overlay cpio appended to
init.xz: https://docs.fogproject.org/en/latest/kb/how-tos/customize-the-fos-init/ . A post-init script needs no rebuild: https://docs.fogproject.org/en/latest/kb/how-tos/post-init-scripts/
- Warning: a customized init can no longer be loop-mounted. Add your files as an overlay cpio appended to
masterinstalls FOS release1.6.0.stableanddev-branchinstalls download the Latest FOS release.
What happens to your branch and update channel
stable(--channel stable) now carries 1.6.0, then the monthly 1.6.0.N releases.dev-branch(--channel patches) now carries the 1.6 patches.rc-1.6.0(--channel rc) andworking-1.6(--channel beta) are retired. Move to--channel stable.- No branch was force-pushed. A 1.5 git checkout reaches 1.6 with an ordinary
git pull.
Before you upgrade
- Known issue: the upgrade from 1.5 fails at the schema update if the database holds multicast sessions (
Truncated incorrect INTEGER value: ''). Do not upgrade a 1.5 server until the next stable release (1.6.0.N) is out. - Back up your database and
/opt/fog/.fogsettings. - Read the release notes: https://github.com/FOGProject/fogproject/blob/stable/docs/release/1.6.0-release-notes.md
- 1.6 removes Display Manager, Directory Cleaner, User Cleanup, Client Updater, Green FOG and the persistentgroups plugin. Their data is dropped.
- PHP 7.4 or later is required. Plugins built for 1.5 do not load.
Install or update (as root)
- A 1.5 server installed from git: run
bin/updatefog.sh --channel stablefrom the checkout. - A 1.6 beta or RC server: run
bin/updatefog.sh --channel stable. - A new server, or a 1.5 server installed from a tarball:
curl -fsSL https://raw.githubusercontent.com/FOGProject/fogproject/stable/bin/bootstrap.sh | bash -s -- --channel stable
If an upgrade fails, bin/revertfog.sh in the 1.6 checkout restores the pre-upgrade backup. Run it with --list, then --dry-run, first.
1.5 support
1.5 is end of life. The last 1.5 release is 1.5.10.2534. It gets no further fixes, security fixes included. Every 1.5 tag stays in the repository. Details: https://github.com/FOGProject/fogproject/blob/stable/docs/release/1.5-support-statement.md
Report problems
Open an issue at https://github.com/FOGProject/fogproject/issues. Include your FOG version, your OS, and the installer log from bin/error_logs/. Report a security problem through "Report a vulnerability" on the same repository, not in a public issue.