frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: Bor – Open-source policy management for Linux desktops

https://getbor.dev/blog/2026-08-02-bor-v080-release/
39•eniac111•2h ago
Hi HN! I've been working on Bor, an open-source system for centralized Linux desktop management.

Bor consists of a lightweight Go agent and a central server. Policies are streamed to clients over mTLS/gRPC in real time—no polling—and currently support Firefox, Chrome, KDE, dconf, polkit and package management, with more coming.

Version 0.8 introduces several new policy types - Thunderbird, Microsoft Edge for Business and FirewallD zones, along with a number of improvements and fixes.

I'd love feedback on the architecture, policy model, and whether this is something you'd consider for managing Linux workstations.

Comments

stasiu•55m ago
This is cool. I’m getting into this type of management for the first time after being in software development for a long time. What other open source or enterprise solutions is this potentially competing with? What made you write your own, as in, what you weren’t able to do or didn’t like about existing solutions?
V__•39m ago
This looks really close to what I need. I manage a few laptops for a non-profit. For now, it is all done by hand, since I haven't found a good solution for Linux and I will kill myself before using Windows and Intune again.

I would love to see configurations for Linux Mint's Cinnamon. Is there a way to execute custom scripts? How does the user mapping work exactly? Could I create a user in Authentik with a laptop-permission and this would map to a Linux user account?

Nonetheless, this is really great work so far, and if you keep it as nice and tidy as it currently looks, then you might make a nice niche for yourself. I can't wait to try it out.

solarengineer•19m ago
Would ansible meet some or all of your needs?
eniac111•3m ago
Unfortunately, only LDAP is currently supported. There is no implementation of Enterprise SSO like Oauth/SAML. It's planned for the future, but not in priority for now.

I have never tested Cinnamon, but it should work in theory, because it stores most of it's settings in dconf.

Custom scripts: deliberately not, so far. Once a management agent runs arbitrary scripts as root, it stops being a policy system and becomes remote-code-execution-as-a-service — the security review, the audit story, and the "what exactly is enforced on this machine?" It may be implemented in the future, but with a ENV variable/config property from the application configuration. The same goes for configuration management systems like Ansible.

Thank you for the interest! I'm interested in developing a community around the software.

d3Xt3r•23m ago
How is configuration drift / policy enforcement handled if there's no polling interval? Like suppose a user changes a setting, does it revert back to the enforced setting, if so, when and how?
figmert•15m ago
I would hope that it locks some of these policies. No user should be able to make changes to policies set by the administrator
eniac111•10m ago
Delivery is push, not pull. Each agent holds a persistent gRPC stream to the server (mTLS). Policy changes are broadcast over that stream the moment they're released — agents apply them in real time. If the connection drops, the agent reconnects with backoff and sends its last-known revision; the server replays exactly what it missed (or a full snapshot). So there's no "check every N minutes" anywhere in the design. Most user changes never stick in the first place. Where the desktop stack has a native lockdown mechanism, Bor uses it: dconf keys are written together with a dconf locks file, so a locked setting simply can't be changed from GNOME's UI; KDE settings are written with the Kiosk [$i] immutability marker, which KDE itself enforces; and everything else (Firefox/Chrome/Edge policies.json, polkit rules, firewalld zones) lives in root-owned files under /etc that an unprivileged user can't touch. Those applications treat managed policy as non-overridable by design. Root-level drift is caught by inotify, not a timer. For every file it manages, the agent watches the parent directory via inotify (parent dir, so atomically-renamed replacements are caught too). If anything external modifies or deletes a managed file — a curious admin with sudo, a config-management tool, a package postinstall script — the watcher fires immediately and the agent rewrites the file from its cached policy state and re-reports compliance to the server. In practice the revert happens within milliseconds of the write, and the tamper event is visible server-side, so drift isn't just corrected — it's auditable. (The agent suppresses events from its own writes, so it doesn't fight itself.)
bogomil•16m ago
Love it!

Is the Industrial Revolution a good precedent for explosive growth today?

https://mattsclancy.github.io/2026/07/27/industrial-revolution-growth.html
26•NewCzech•1h ago•25 comments

Show HN: Bor – Open-source policy management for Linux desktops

https://getbor.dev/blog/2026-08-02-bor-v080-release/
41•eniac111•2h ago•8 comments

Generative AI floods and dilutes the market for books

https://arxiv.org/abs/2607.20349
11•theanonymousone•45m ago•4 comments

Artificial Intelligence: Ars Notoria and the Promise of Instant Knowledge

https://publicdomainreview.org/essay/ars-notoria/
27•jruohonen•1h ago•3 comments

Show HN: Syncular – offline-first SQL sync with TypeScript and Rust cores

https://github.com/syncular/syncular
22•quambo•2h ago•9 comments

Go 1.27 Interactive Tour

https://victoriametrics.com/blog/go-1-27/index.html
239•Hixon10•10h ago•97 comments

Show HN: I'm a 15 Year Old Wannabe Engineer, This Is a Cycloidal Gearbox I Built

https://github.com/tom-ilan/cycloidal_gearbox
184•tomilan•9h ago•52 comments

A big win for Android interoperability

https://www.openhomefoundation.org/blog/a-big-win-for-android-interoperability/
140•soheilpro•1d ago•63 comments

Seedance 2.5

https://seed.bytedance.com/en/blog/one-take-creation-flexible-referencing-introducing-seedance-2-5
363•njaremko•15h ago•193 comments

MkLinux and the pimped-out Apple Workgroup Server 9150

http://oldvcr.blogspot.com/2026/08/mklinux-and-pimped-out-apple-workgroup.html
63•goldenskye•8h ago•3 comments

Diátaxis

https://diataxis.fr/
379•ryanseys•15h ago•47 comments

Cyberscript

https://cyberscript.dev
15•dtj1123•3h ago•15 comments

Deep-sea vehicles spot 'alien' sharks deep beneath the waves in the Pacific

https://www.science.org/content/article/deep-sea-vehicles-spot-alien-sharks-deep-beneath-waves-pa...
59•pkaeding•9h ago•28 comments

IBM i (OS/400) the Database Operating System

https://osadmins.com/en/ibm-i-os-400-the-database-operating-system/
16•naves•4h ago•9 comments

Holocloth

https://holocloth.vercel.app
18•ingve•2d ago•4 comments

Running Kimi K3 on MI355X at Better Performance per Dollar Than B300

https://www.wafer.ai/blog/kimi-k3-mi355x
138•ilreb•7h ago•56 comments

ASRock BC-250: Building the Budget Steam Machine

https://plug-world.com/posts/2026/asrock-bc250-the-budget-steam-machine/
71•plug_world•10h ago•32 comments

Maze Toys

https://maze.toys
13•bookofjoe•1d ago•4 comments

Morph (YC S23) Is Hiring Member of Technical Staff

https://www.ycombinator.com/companies/morph/jobs/0Z8vI3K-member-of-technical-staff
1•bhaktatejas922•12h ago

When random.bytes() runs but doesn't work

https://insider.btcpp.dev/p/when-randombytes-runs-but-doesnt
53•Funes-•9h ago•25 comments

Mathematics Without Mathematicians

https://borretti.me/article/mathematics-without-mathematicians
19•varjag•4h ago•22 comments

Instrumenting my espresso machine with OpenTelemetry

https://clickhouse.com/blog/espresso-machine-observability-with-otel
16•g0xA52A2A•3d ago•5 comments

Elena, a library for building Progressive Web Components

https://elenajs.com/
37•brianzelip•2d ago•3 comments

Atom is better than RSS, in ways that matter

https://chrismorgan.info/atom%3Erss
93•frizlab•13h ago•50 comments

Unraveling the mysteries of habit formation

https://www.kyoto-u.ac.jp/en/research-news/2026-07-28
83•hhs•12h ago•31 comments

Postmortem for Kernel Soundness Bug #14576

https://leodemoura.github.io/blog/2026-8-1-postmortem-for-kernel-soundness-bug-14576/
152•juhopitk•17h ago•57 comments

I don't recommend Tailwind CSS

https://en.andros.dev/blog/af3ee191/why-i-dont-recommend-tailwind-css/
103•andros•4h ago•108 comments

RFC 10015: Deprecating Obsolete Key Exchange Methods in TLS 1.2 and DTLS 1.2

https://www.rfc-editor.org/rfc/rfc10015.html
63•Jimmc414•12h ago•16 comments

Show HN: Logan Basic v2.1 - An online BASIC interpreter.

https://sinusoft.com/loganbasic/
10•Sinusoid314•2d ago•3 comments

US Treasury undertakes historic intervention in yen market

https://www.ft.com/content/0f9b2fe7-bde4-4f5f-b49e-93ccb5da9ea8
14•23pointsNorth•1h ago•5 comments