From 7d6b363b76905b6aea72e4313e82fe51c893470d Mon Sep 17 00:00:00 2001 From: ezratweaver Date: Fri, 22 May 2026 02:04:42 -0400 Subject: [PATCH] adw-bluetooth: 1.0.0 -> 1.1.0 --- .../services/desktops/adw-bluetooth.nix | 33 +++++++++++++++++++ pkgs/by-name/ad/adw-bluetooth/package.nix | 28 +++++++++++++--- 2 files changed, 56 insertions(+), 5 deletions(-) create mode 100644 nixos/modules/services/desktops/adw-bluetooth.nix diff --git a/nixos/modules/services/desktops/adw-bluetooth.nix b/nixos/modules/services/desktops/adw-bluetooth.nix new file mode 100644 index 000000000000..ab15b1cdfef4 --- /dev/null +++ b/nixos/modules/services/desktops/adw-bluetooth.nix @@ -0,0 +1,33 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + cfg = config.services.adw-bluetooth; +in +{ + meta.maintainers = with lib.maintainers; [ ezratweaver ]; + + options.services.adw-bluetooth = { + enable = lib.mkEnableOption "Adwaita Bluetooth daemon"; + }; + + config = lib.mkIf cfg.enable { + environment.systemPackages = [ pkgs.adw-bluetooth ]; + services.dbus.packages = [ pkgs.adw-bluetooth ]; + + systemd.user.services.adw-bluetooth-daemon = { + description = "AdwBluetooth Daemon"; + wantedBy = [ "default.target" ]; + after = [ "bluetooth.target" ]; + serviceConfig = { + Type = "dbus"; + BusName = "com.ezratweaver.AdwBluetoothDaemon"; + ExecStart = "${pkgs.adw-bluetooth}/libexec/adw-bluetooth-daemon"; + }; + }; + }; +} diff --git a/pkgs/by-name/ad/adw-bluetooth/package.nix b/pkgs/by-name/ad/adw-bluetooth/package.nix index fde7d2367c9a..f0b700ee9c9b 100644 --- a/pkgs/by-name/ad/adw-bluetooth/package.nix +++ b/pkgs/by-name/ad/adw-bluetooth/package.nix @@ -2,6 +2,7 @@ stdenv, lib, fetchFromGitHub, + buildGoModule, meson, ninja, pkg-config, @@ -13,17 +14,27 @@ libadwaita, }: -stdenv.mkDerivation (finalAttrs: { - pname = "adw-bluetooth"; - version = "1.0.0"; +let + version = "1.1.0"; src = fetchFromGitHub { owner = "ezratweaver"; repo = "adw-bluetooth"; - tag = finalAttrs.version; - hash = "sha256-/KJpB9i6tFDnB3C0tPtJtt8tTDfNftIkHmP1JSVSZNY="; + tag = version; + hash = "sha256-h3cHtecwBsx3j33qXVn/zaq4FZext71P7flzunCHqHg="; }; + daemon = buildGoModule { + pname = "adw-bluetooth-daemon"; + inherit version; + src = src + "/daemon"; + vendorHash = "sha256-7tiSwNhq6e4LEh4lUkfh2i4tEdWWL6TxQpYYwYKsfog="; + }; +in +stdenv.mkDerivation (finalAttrs: { + pname = "adw-bluetooth"; + inherit version src; + nativeBuildInputs = [ meson ninja @@ -39,6 +50,13 @@ stdenv.mkDerivation (finalAttrs: { libadwaita ]; + mesonFlags = [ "-Dbuild_daemon=false" ]; + + postInstall = '' + mkdir -p $out/libexec + ln -s ${daemon}/bin/daemon $out/libexec/adw-bluetooth-daemon + ''; + meta = { description = "GNOME Inspired LibAdwaita Bluetooth Applet"; homepage = "https://github.com/ezratweaver/adw-bluetooth";