HN Debrief

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

  • Open Source
  • Security
  • Infrastructure
  • Developer Tools

Bor is an open-source Linux desktop management system with a small Go agent on each machine and a central server that streams policy changes over a persistent gRPC connection secured by mTLS. The project is positioned as centralized policy management for fleets of Linux workstations, not as a domain controller or a general-purpose configuration engine. It currently manages settings for browsers, KDE, dconf-based desktops, polkit, packages, and firewalld, and the new release adds Thunderbird, Microsoft Edge for Business, and FirewallD zones.

If you manage Linux laptops at work, school, or a nonprofit, Bor is worth watching as a policy-first alternative to SSH and infrastructure-as-code tooling. Its security model and drift enforcement are the interesting parts, but the project is still early and missing broader identity integrations and some desktop coverage.

Discussion mood

Positive and curious. People liked that Bor tackles a real gap in Linux workstation management, especially for small fleets and Windows-admin-style policy use cases, and they responded well to the security posture of push-based enforcement without SSH or arbitrary scripts. The main hesitation was whether it beats existing tools enough to justify another control plane, and whether its current identity and desktop support are broad enough for real deployments.

Key insights

  1. 01

    Inotify makes drift correction immediate

    Instead of checking machines every few minutes, the agent watches parent directories of managed files with inotify so atomic file replacement is caught too. That changes the product from eventual compliance into near-instant enforcement and gives admins an audit trail when package scripts or privileged users try to overwrite policy-managed files.

    If you evaluate Bor, test the drift path, not just initial deployment. The useful question is how it behaves when packages, local admins, or other management tools touch the same files.

      Attribution:
    • eniac111 #1
  2. 02

    Outbound mTLS shrinks fleet-wide blast radius

    Using a persistent outbound gRPC stream with per-node certificates means the server does not need reusable login credentials for endpoints and workstations do not need inbound SSH exposed. That is a meaningful architectural difference from push-over-SSH systems because the management plane can distribute policy without also being able to shell into every laptop.

    For security-sensitive environments, compare Bor to your current tooling on credential exposure and reachable attack surface, not just on feature lists. The biggest benefit may be what the server cannot do.

      Attribution:
    • eniac111 #1
    • ktm5j #1
  3. 03

    No arbitrary scripts is a deliberate product boundary

    The refusal to run custom root scripts is not missing polish. It is the line that keeps Bor in the policy-management category instead of turning it into a generic remote execution service. That makes compliance and audit stories cleaner, but it also means Bor will not absorb all the jobs admins currently hand to Ansible, Puppet, or shell glue.

    Treat Bor as a policy layer, not a full replacement for configuration management. If your workflows depend on imperative fixes and one-off host mutations, you will still need a second tool.

      Attribution:
    • eniac111 #1 #2
  4. 04

    Temporary-token enrollment broadens use beyond domains

    Non-domain laptops are not blocked. Admins can enroll them with short-lived UI-generated tokens, while Kerberos-based enrollment stays optional for domain-joined machines. That makes Bor more relevant for nonprofits, schools, labs, and mixed environments that want central policy without building a full directory-backed estate first.

    If you have a small or messy fleet, pilot Bor on standalone laptops first. You do not need to wait for a full LDAP or Kerberos rollout to see whether the policy model fits.

      Attribution:
    • eniac111 #1

Against the grain

  1. 01

    Ansible and Pyinfra may already be enough

    For teams comfortable with infrastructure-as-code, existing tools already handle desktop configuration well enough that Bor can look like a narrower reimplementation. The difference in day-to-day value depends on whether you need hard enforcement and managed-policy semantics, or just reliable configuration rollout.

    Before adopting Bor, separate your real requirement from your tooling preference. If you mostly need repeatable setup and occasional updates, your current automation stack may already cover it.

      Attribution:
    • solarengineer #1
    • limagnolia #1
  2. 02

    Samba and SSSD cover part of this space

    Linux policy management is not an empty field. Samba group policy objects and related directory-based tools already address some centralized control use cases, especially in environments tied to Active Directory-style identity. That weakens the argument for a new platform unless Bor is materially easier to operate or stronger on enforcement.

    If you already run Samba or directory-backed Linux management, compare migration cost and overlap carefully. Bor needs to win on operational simplicity or enforcement quality, not on novelty.

      Attribution:
    • ranger_danger #1

In plain english

Active Directory
Microsoft’s directory and device management system for centralized identity, authentication, and policy control.
dconf
A Linux desktop settings system used by GNOME and related environments to store user and system configuration.
firewalld
A Linux firewall management service that organizes network rules into zones and services.
FreeIPA
An open-source identity management system for Linux environments that combines directory, authentication, and policy services.
gRPC
Google Remote Procedure Call, a network protocol for software services to communicate efficiently over persistent connections.
Kerberos
A network authentication protocol that uses tickets so users and machines can prove identity without sending passwords repeatedly.
LDAP
Lightweight Directory Access Protocol, a standard way to access centralized user and group directories.
mTLS
Mutual Transport Layer Security, a secure connection method where both the client and server prove their identity with certificates.
polkit
PolicyKit, a Linux framework for controlling what administrative actions users and programs are allowed to perform.
SCAP
Security Content Automation Protocol, a set of standards for describing and checking system security settings automatically.
SSH
Secure Shell, a protocol commonly used for remote login and command execution on servers and workstations.
SSO
Single Sign-On, a login system that lets users access multiple services with one identity provider.

Reference links

Related Linux desktop management projects

  • Cosmic Sync Linux desktop setup
    Mentioned as a possibly similar project for syncing Linux desktop settings, which helped frame Bor as centralized fleet management rather than personal sync.