Skip to content

librepods: 0.1.0-unstable-2025-12-07 -> 0.2.0-alpha.2, nixos/librepods: init#444137

Merged
NetaliDev merged 3 commits intoNixOS:masterfrom
Cameo007:add-librepods
Apr 13, 2026
Merged

librepods: 0.1.0-unstable-2025-12-07 -> 0.2.0-alpha.2, nixos/librepods: init#444137
NetaliDev merged 3 commits intoNixOS:masterfrom
Cameo007:add-librepods

Conversation

@Cameo007
Copy link
Copy Markdown
Contributor

@Cameo007 Cameo007 commented Sep 18, 2025

Add librepods: AirPods libreated from Apple's ecosystem.

https://github.com/kavishdevar/librepods

There is just one problem when running it.

qt.bluetooth.bluez: Missing CAP_NET_ADMIN permission. Cannot determine whether a found address is of random or public type.

Running librepods as root is a workaround for this but

  1. I don't think you should need to run such an app as root
  2. it doesn't work with pactl

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

Add a 👍 reaction to pull requests you find important.

@Cameo007
Copy link
Copy Markdown
Contributor Author

#440322

@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. 9.needs: reviewer This PR currently has no reviewers requested and needs attention. labels Sep 18, 2025
@lesbiannix
Copy link
Copy Markdown
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 444137
Commit: 94a8d637f8b4d4b3a975b085ee980603f4f7b1e9


x86_64-linux

✅ 1 package built:
  • librepods

@nixpkgs-ci nixpkgs-ci bot removed the 9.needs: reviewer This PR currently has no reviewers requested and needs attention. label Sep 19, 2025
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
@liberodark
Copy link
Copy Markdown
Contributor

nixpkgs-review result

Generated using nixpkgs-review-gha

Command: nixpkgs-review pr 444137
Commit: 94a8d637f8b4d4b3a975b085ee980603f4f7b1e9 (subsequent changes)
Merge: 6557b8ed4054aca293f018bd9162bb688281ff2b

Logs: https://github.com/liberodark/nixpkgs-review-gha/actions/runs/17857538639


x86_64-linux

✅ 1 package built:
  • librepods

aarch64-linux

✅ 1 package built:
  • librepods

x86_64-darwin

No rebuilds


aarch64-darwin

No rebuilds

@Cameo007 Cameo007 changed the title librepods: init at nightly librepods: init at f547cc13c0cb1a021f6ea7b88056b1a54d440ebf Sep 19, 2025
Copy link
Copy Markdown
Contributor

@acid-bong acid-bong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

now i'm back at my pc and can test what i'm suggesting. all these are tested locally and work on my machine™️

Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
@Cameo007 Cameo007 changed the title librepods: init at f547cc13c0cb1a021f6ea7b88056b1a54d440ebf librepods: init at 0.1.0-rc.4 Sep 19, 2025
Copy link
Copy Markdown
Contributor

@acid-bong acid-bong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one little nitpick, and i'm done 😅

Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
@nixpkgs-ci nixpkgs-ci bot added the 12.approvals: 1 This PR was reviewed and approved by one person. label Sep 19, 2025
@Cameo007
Copy link
Copy Markdown
Contributor Author

No problem, I really appreciate your patience.

There is just one thing from my side.
One one hand the program needs to be run as root for some bluetooth stuff to work but on the other hand pactl does not work as root. Also I don't think that the user should necessarily need to run this as root.

The nightly version showed some logs about CAP_NET_ADMIN being necessary here.
However enabling it on a copy of the binary (the one in ./result is read-only) with sudo setcap cap_net_admin+ep librepods does not help.

Is there a way we can set this in the package or is this something the user has to do?

@qzylinra
Copy link
Copy Markdown
Contributor

You can write a nixos module to set security.wrappers

@nixpkgs-ci nixpkgs-ci bot added 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: module (update) This PR changes an existing module in `nixos/` and removed 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Sep 30, 2025
@Cameo007
Copy link
Copy Markdown
Contributor Author

Cameo007 commented Sep 30, 2025

I now wrote a module and patched the autostart .desktop file because with the original path it failed to load QtQuick.Controls.
However I noticed that the path in the autostart file is not the path used when running librepods directly (which is /run/wrappers/wrappers.LUhfWBFYDz/librepods). This doesn't cause any problems beside the title bar not being fully white.

But it might be better to fix this upstream and to obtain the right path.

https://github.com/kavishdevar/librepods/blob/main/linux/autostartmanager.hpp#L58

Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread pkgs/by-name/li/librepods/package.nix Outdated
Comment thread nixos/modules/programs/librepods.nix Outdated
Comment thread nixos/modules/programs/librepods.nix Outdated
@thefossguy
Copy link
Copy Markdown
Member

I didn't realise that this PR existed. Apologies for overstepping. I added the package because that's all that I needed but the module is a nice touch.

@Cameo007
Copy link
Copy Markdown
Contributor Author

No problem, I mean it didn't really move forward here.

Comment thread nixos/modules/module-list.nix Outdated
@nixpkgs-ci nixpkgs-ci bot requested a review from thefossguy April 12, 2026 18:02
@nixpkgs-ci nixpkgs-ci bot added 8.has: package (update) This PR updates a package to a newer version 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. and removed 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. labels Apr 12, 2026
Copy link
Copy Markdown
Member

@NetaliDev NetaliDev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested it on my laptop with my AirPods Pro and it works. Just some last nitpicks before we can merge this.

Comment thread nixos/modules/programs/librepods.nix
Comment thread pkgs/by-name/li/librepods/package.nix
@Cameo007
Copy link
Copy Markdown
Contributor Author

Ok, and I just made it use finalAttrs

Comment thread nixos/modules/module-list.nix Outdated
Comment thread nixos/modules/programs/librepods.nix Outdated
@thefossguy
Copy link
Copy Markdown
Member

I added the last two comments from the github mobile app yesterday and can't seem to resolve them. Sorry about that. The issue with light.nix being added has been resolved and the request to add me as a maintainer to the module was not a blocker from me to approve the PR.

@Cameo007
Copy link
Copy Markdown
Contributor Author

I mean it makes sense for you to be a maintainer for the module, too

@nixpkgs-ci nixpkgs-ci bot added 12.approvals: 3+ This PR was reviewed and approved by three or more persons. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages. and removed 12.approvals: 2 This PR was reviewed and approved by two persons. labels Apr 13, 2026
@NetaliDev
Copy link
Copy Markdown
Member

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 444137
Commit: 5c4a0a541a060625ff74a6d877b8e5d1650969a1


x86_64-linux

⏩ 2 packages blacklisted:
  • nixos-install-tools
  • tests.nixos-functions.nixos-test
✅ 1 package built:
  • librepods

@NetaliDev
Copy link
Copy Markdown
Member

Tested it, everything works as intended.

@NetaliDev NetaliDev added this pull request to the merge queue Apr 13, 2026
Merged via the queue into NixOS:master with commit 5476296 Apr 13, 2026
29 checks passed
@Cameo007 Cameo007 deleted the add-librepods branch April 13, 2026 12:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: module (new) This PR adds a module in `nixos/` 8.has: module (update) This PR changes an existing module in `nixos/` 8.has: package (update) This PR updates a package to a newer version 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 12.approvals: 3+ This PR was reviewed and approved by three or more persons. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages.

Projects

None yet

Development

Successfully merging this pull request may close these issues.