From e0850f8a94ce0ae937488e047e1c95701c8d1b73 Mon Sep 17 00:00:00 2001 From: Averell Dalton Date: Thu, 29 Aug 2019 03:25:04 +0200 Subject: [PATCH 1/2] blueman: 2.0.8 -> 2.1.1 --- pkgs/tools/bluetooth/blueman/default.nix | 26 ++++++++++++++++-------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix index b28e50d54b0..60c96ca78ce 100644 --- a/pkgs/tools/bluetooth/blueman/default.nix +++ b/pkgs/tools/bluetooth/blueman/default.nix @@ -1,19 +1,21 @@ { config, stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3 -, obex_data_server, xdg_utils, libnotify, dnsmasq, dhcp -, hicolor-icon-theme, librsvg, wrapGAppsHook, gobject-introspection +, obex_data_server, xdg_utils, dnsmasq, dhcp, libappindicator, iproute +, gnome3, librsvg, wrapGAppsHook, gobject-introspection +, withNetworkManager ? + config.networking.networkmanager.enable or false, networkmanager , withPulseAudio ? config.pulseaudio or stdenv.isLinux, libpulseaudio }: let pythonPackages = python3Packages; - binPath = lib.makeBinPath [ xdg_utils dnsmasq dhcp ]; + binPath = lib.makeBinPath [ xdg_utils dnsmasq dhcp iproute ]; in stdenv.mkDerivation rec { pname = "blueman"; - version = "2.0.8"; + version = "2.1.1"; src = fetchurl { url = "https://github.com/blueman-project/blueman/releases/download/${version}/${pname}-${version}.tar.xz"; - sha256 = "0kkh6jppqcn3yf70vnny1l015kxrz3dxw4g774gl02lh9ixx1bq4"; + sha256 = "1hyvc5x97j8b4kvwzh58zzlc454d0h0hk440zbg8f5as9qrv5spi"; }; nativeBuildInputs = [ @@ -21,19 +23,25 @@ in stdenv.mkDerivation rec { pythonPackages.wrapPython wrapGAppsHook ]; - buildInputs = [ bluez gtk3 pythonPackages.python libnotify librsvg hicolor-icon-theme ] + buildInputs = [ bluez gtk3 pythonPackages.python librsvg + gnome3.adwaita-icon-theme iproute libappindicator ] ++ pythonPath - ++ lib.optional withPulseAudio libpulseaudio; + ++ lib.optional withPulseAudio libpulseaudio + ++ lib.optional withNetworkManager networkmanager; postPatch = lib.optionalString withPulseAudio '' sed -i 's,CDLL(",CDLL("${libpulseaudio.out}/lib/,g' blueman/main/PulseAudioUtils.py ''; - pythonPath = with pythonPackages; [ dbus-python pygobject3 pycairo ]; + pythonPath = with pythonPackages; [ pygobject3 pycairo ]; propagatedUserEnvPkgs = [ obex_data_server ]; - configureFlags = [ (lib.enableFeature withPulseAudio "pulseaudio") ]; + configureFlags = [ + "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system" + "--with-systemduserunitdir=${placeholder "out"}/lib/systemd/user" + (lib.enableFeature withPulseAudio "pulseaudio") + ]; postFixup = '' makeWrapperArgs="--prefix PATH ':' ${binPath}" From 1ced2702584da2f8dc558dea9861c3f75efea818 Mon Sep 17 00:00:00 2001 From: Averell Dalton Date: Tue, 3 Sep 2019 10:26:37 +0200 Subject: [PATCH 2/2] blueman: add module for new systemd services --- nixos/modules/module-list.nix | 1 + nixos/modules/services/desktops/blueman.nix | 25 +++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 nixos/modules/services/desktops/blueman.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 296c678124a..d980dfde227 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -281,6 +281,7 @@ ./services/databases/virtuoso.nix ./services/desktops/accountsservice.nix ./services/desktops/bamf.nix + ./services/desktops/blueman.nix ./services/desktops/deepin/deepin.nix ./services/desktops/dleyna-renderer.nix ./services/desktops/dleyna-server.nix diff --git a/nixos/modules/services/desktops/blueman.nix b/nixos/modules/services/desktops/blueman.nix new file mode 100644 index 00000000000..18ad610247e --- /dev/null +++ b/nixos/modules/services/desktops/blueman.nix @@ -0,0 +1,25 @@ +# blueman service +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.blueman; +in { + ###### interface + options = { + services.blueman = { + enable = mkEnableOption "blueman"; + }; + }; + + ###### implementation + config = mkIf cfg.enable { + + environment.systemPackages = [ pkgs.blueman ]; + + services.dbus.packages = [ pkgs.blueman ]; + + systemd.packages = [ pkgs.blueman ]; + }; +}