Merge pull request #82699 from hedning/libnma

libnma: init at 1.8.28
This commit is contained in:
Jan Tojnar 2020-03-22 00:33:35 +01:00 committed by GitHub
commit cc73796779
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 181 additions and 68 deletions

View File

@ -33,7 +33,7 @@
, wrapGAppsHook , wrapGAppsHook
, tzdata , tzdata
, glibc , glibc
, networkmanagerapplet , libnma
, modemmanager , modemmanager
, xorg , xorg
, gdk-pixbuf , gdk-pixbuf
@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
gnome-online-accounts gnome-online-accounts
tzdata tzdata
networkmanager networkmanager
networkmanagerapplet libnma
modemmanager modemmanager
xorg.libXxf86misc xorg.libXxf86misc
xorg.libxkbfile xorg.libxkbfile

View File

@ -17,7 +17,6 @@
, libffi , libffi
, gtk3 , gtk3
, readline , readline
, networkmanagerapplet
}: }:
let let
@ -46,7 +45,6 @@ stdenv.mkDerivation rec {
keybinder3 keybinder3
upower upower
xapps xapps
networkmanagerapplet
]; ];
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -48,6 +48,7 @@
, mutter , mutter
, networkmanager , networkmanager
, networkmanagerapplet , networkmanagerapplet
, libnma
, ninja , ninja
, pkgconfig , pkgconfig
, polkit , polkit
@ -126,7 +127,7 @@ stdenv.mkDerivation rec {
modemmanager modemmanager
mutter # schemas for the keybindings mutter # schemas for the keybindings
networkmanager networkmanager
networkmanagerapplet libnma
polkit polkit
samba samba
tracker tracker

View File

@ -28,7 +28,7 @@
, polkit , polkit
, webkitgtk , webkitgtk
, systemd , systemd
, networkmanagerapplet , libnma
, tzdata , tzdata
, yelp , yelp
, libgnomekbd , libgnomekbd
@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
pango pango
polkit polkit
webkitgtk webkitgtk
networkmanagerapplet libnma
]; ];
patches = [ patches = [

View File

@ -3,7 +3,7 @@
, libstartup_notification, telepathy-glib, telepathy-logger, libXtst, unzip, glibcLocales, shared-mime-info , libstartup_notification, telepathy-glib, telepathy-logger, libXtst, unzip, glibcLocales, shared-mime-info
, libgweather, libcanberra-gtk3, librsvg, geoclue2, perl, docbook_xml_dtd_42, desktop-file-utils , libgweather, libcanberra-gtk3, librsvg, geoclue2, perl, docbook_xml_dtd_42, desktop-file-utils
, libpulseaudio, libical, gobject-introspection, gstreamer, wrapGAppsHook, libxslt, gcr , libpulseaudio, libical, gobject-introspection, gstreamer, wrapGAppsHook, libxslt, gcr
, accountsservice, gdk-pixbuf, gdm, upower, ibus, networkmanagerapplet, libgnomekbd, gnome-desktop , accountsservice, gdk-pixbuf, gdm, upower, ibus, libnma, libgnomekbd, gnome-desktop
, gsettings-desktop-schemas, gnome-keyring, glib, gjs, mutter, evolution-data-server, gtk3 , gsettings-desktop-schemas, gnome-keyring, glib, gjs, mutter, evolution-data-server, gtk3
, sassc, systemd, gst_all_1, adwaita-icon-theme, gnome-bluetooth, gnome-clocks, gnome-settings-daemon , sassc, systemd, gst_all_1, adwaita-icon-theme, gnome-bluetooth, gnome-clocks, gnome-settings-daemon
, gnome-autoar, asciidoc-full }: , gnome-autoar, asciidoc-full }:
@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
gnome-autoar gnome-autoar
# not declared at build time, but typelib is needed at runtime # not declared at build time, but typelib is needed at runtime
libgweather networkmanagerapplet libgweather libnma
]; ];
patches = [ patches = [

View File

@ -11,6 +11,7 @@
, gtk3 , gtk3
, networkmanager , networkmanager
, networkmanagerapplet , networkmanagerapplet
, libnma
, switchboard , switchboard
}: }:
@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
gtk3 gtk3
libgee libgee
networkmanager networkmanager
networkmanagerapplet libnma
switchboard switchboard
]; ];

View File

@ -8,7 +8,7 @@
, gtk3 , gtk3
, granite , granite
, networkmanager , networkmanager
, networkmanagerapplet , libnma
, wingpanel , wingpanel
, libgee , libgee
}: }:
@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
gtk3 gtk3
libgee libgee
networkmanager networkmanager
networkmanagerapplet libnma
wingpanel wingpanel
]; ];

View File

@ -1,46 +1,74 @@
{ stdenv, fetchurl, meson, ninja, intltool, gtk-doc, pkgconfig, networkmanager, gnome3 { stdenv
, libnotify, libsecret, polkit, isocodes, modemmanager, libxml2, docbook_xsl, docbook_xml_dtd_43 , fetchurl
, mobile-broadband-provider-info, glib-networking, gsettings-desktop-schemas , meson
, libgudev, jansson, wrapGAppsHook, gobject-introspection, python3, gtk3 , ninja
, libappindicator-gtk3, withGnome ? true, gcr, glib }: , gettext
, pkg-config
, networkmanager
, gnome3
, libnotify
, libsecret
, polkit
, modemmanager
, libnma
, mobile-broadband-provider-info
, glib-networking
, gsettings-desktop-schemas
, libgudev
, jansson
, wrapGAppsHook
, gobject-introspection
, python3
, gtk3
, libappindicator-gtk3
, glib
}:
let stdenv.mkDerivation rec {
pname = "network-manager-applet"; pname = "network-manager-applet";
version = "1.8.24"; version = "1.16.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1gzvz4wfqfsfclqg56y954al8x6fmz71cnxlx1i4nqr7a25bp2qi"; sha256 = "1rf3nm0hjcy9f8ajb4vmvwy503w8yj8d4daxkcb7w7i7b92qmyfn";
}; };
mesonFlags = [ mesonFlags = [
"-Dlibnm_gtk=false" # It is deprecated
"-Dselinux=false" "-Dselinux=false"
"-Dappindicator=yes" "-Dappindicator=yes"
"-Dgcr=${if withGnome then "true" else "false"}"
]; ];
outputs = [ "out" "lib" "dev" "devdoc" "man" ]; outputs = [ "out" "man" ];
buildInputs = [ buildInputs = [
gtk3 networkmanager libnotify libsecret gsettings-desktop-schemas libnma
polkit isocodes mobile-broadband-provider-info libgudev gtk3
modemmanager jansson glib-networking networkmanager
libappindicator-gtk3 gnome3.adwaita-icon-theme libnotify
] ++ stdenv.lib.optionals withGnome [ gcr ]; # advanced certificate chooser libsecret
gsettings-desktop-schemas
polkit
libgudev
modemmanager
jansson
glib-networking
libappindicator-gtk3
gnome3.adwaita-icon-theme
];
nativeBuildInputs = [ meson ninja intltool pkgconfig wrapGAppsHook gobject-introspection python3 gtk-doc docbook_xsl docbook_xml_dtd_43 libxml2 ]; nativeBuildInputs = [
meson
# Needed for wingpanel-indicator-network and switchboard-plug-network ninja
patches = [ ./hardcode-gsettings.patch ]; gettext
pkg-config
wrapGAppsHook
gobject-introspection
python3
];
postPatch = '' postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py patchShebangs meson_post_install.py
substituteInPlace src/wireless-security/eap-method.c --subst-var-by NM_APPLET_GSETTINGS ${glib.makeSchemaPath "$lib" name}
''; '';
passthru = { passthru = {
@ -51,7 +79,7 @@ in stdenv.mkDerivation rec {
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/NetworkManager; homepage = "https://gitlab.gnome.org/GNOME/network-manager-applet/";
description = "NetworkManager control applet for GNOME"; description = "NetworkManager control applet for GNOME";
license = licenses.gpl2; license = licenses.gpl2;
maintainers = with maintainers; [ phreedom ]; maintainers = with maintainers; [ phreedom ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, substituteAll, openfortivpn, intltool, pkgconfig, file, gtk3, { stdenv, fetchurl, substituteAll, openfortivpn, intltool, pkgconfig, file, gtk3,
networkmanager, ppp, libsecret, withGnome ? true, gnome3, fetchpatch, networkmanagerapplet }: networkmanager, ppp, libsecret, withGnome ? true, gnome3, fetchpatch, libnma }:
let let
pname = "NetworkManager-fortisslvpn"; pname = "NetworkManager-fortisslvpn";
@ -25,7 +25,7 @@ in stdenv.mkDerivation {
]; ];
buildInputs = [ openfortivpn networkmanager ppp ] buildInputs = [ openfortivpn networkmanager ppp ]
++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ];
nativeBuildInputs = [ intltool pkgconfig file ]; nativeBuildInputs = [ intltool pkgconfig file ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitLab, substituteAll, autoreconfHook, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3 { stdenv, fetchFromGitLab, substituteAll, autoreconfHook, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3
, withGnome ? true, gnome3, fetchpatch, networkmanagerapplet }: , withGnome ? true, gnome3, fetchpatch, libnma }:
let let
pname = "NetworkManager-iodine"; pname = "NetworkManager-iodine";
@ -28,7 +28,7 @@ in stdenv.mkDerivation {
]; ];
buildInputs = [ iodine networkmanager ] buildInputs = [ iodine networkmanager ]
++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ];
nativeBuildInputs = [ intltool autoreconfHook pkgconfig ]; nativeBuildInputs = [ intltool autoreconfHook pkgconfig ];

View File

@ -1,7 +1,7 @@
{ stdenv, substituteAll, fetchFromGitHub, autoreconfHook, libtool, intltool, pkgconfig { stdenv, substituteAll, fetchFromGitHub, autoreconfHook, libtool, intltool, pkgconfig
, file, findutils , file, findutils
, gtk3, networkmanager, ppp, xl2tpd, strongswan, libsecret , gtk3, networkmanager, ppp, xl2tpd, strongswan, libsecret
, withGnome ? true, networkmanagerapplet }: , withGnome ? true, libnma }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = [ networkmanager ppp ] buildInputs = [ networkmanager ppp ]
++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ];
nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig file findutils ]; nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig file findutils ];

View File

@ -0,0 +1,89 @@
{ stdenv
, fetchurl
, meson
, ninja
, gettext
, gtk-doc
, pkg-config
, vala
, networkmanager
, gnome3
, isocodes
, libxml2
, docbook_xsl
, docbook_xml_dtd_43
, mobile-broadband-provider-info
, gobject-introspection
, gtk3
, withGnome ? true
, gcr
, glib
, substituteAll
}:
stdenv.mkDerivation rec {
pname = "libnma";
version = "1.8.28";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "09mp6k0hfam1vyyv9kcd8j4gb2r58i05ipx2nswb58ris599bxja";
};
patches = [
# Needed for wingpanel-indicator-network and switchboard-plug-network
./hardcode-gsettings.patch
];
nativeBuildInputs = [
meson
ninja
gettext
pkg-config
gobject-introspection
gtk-doc
docbook_xsl
docbook_xml_dtd_43
libxml2
vala
];
buildInputs = [
gtk3
networkmanager
isocodes
mobile-broadband-provider-info
] ++ stdenv.lib.optionals withGnome [
# advanced certificate chooser
gcr
];
mesonFlags = [
"-Dgcr=${if withGnome then "true" else "false"}"
];
postPatch = ''
substituteInPlace src/nma-ws/nma-eap.c --subst-var-by \
NM_APPLET_GSETTINGS ${glib.makeSchemaPath "$out" "${pname}-${version}"}
'';
postInstall = ''
glib-compile-schemas $out/share/glib-2.0/schemas
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
};
};
meta = with stdenv.lib; {
homepage = "https://gitlab.gnome.org/GNOME/libnma";
description = "NetworkManager UI utilities (libnm version)";
license = licenses.gpl2Plus; # Mix of GPL and LPGL 2+
maintainers = teams.gnome.members;
platforms = platforms.linux;
};
}

View File

@ -1,32 +1,26 @@
diff --git a/src/wireless-security/eap-method.c b/src/wireless-security/eap-method.c --- a/src/nma-ws/nma-eap.c
index 2e9daa23..6663b3ce 100644 +++ b/src/nma-ws/nma-eap.c
--- a/src/wireless-security/eap-method.c @@ -248,11 +248,16 @@ nma_eap_ca_cert_ignore_get (NMAEap *method, NMConnection *connection)
+++ b/src/wireless-security/eap-method.c
@@ -265,8 +265,11 @@ eap_method_ca_cert_ignore_get (EAPMethod *method, NMConnection *connection)
static GSettings * static GSettings *
_get_ca_ignore_settings (NMConnection *connection) _get_ca_ignore_settings (NMConnection *connection)
{ {
+ GSettingsSchemaSource *schema_source; + g_autoptr (GSettingsSchemaSource) *schema_source;
+ g_autoptr (GSettingsSchema) *schema; + g_autoptr (GSettingsSchema) *schema;
GSettings *settings; GSettings *settings;
- char *path = NULL; char *path = NULL;
+
+ g_autofree char *path = NULL;
const char *uuid; const char *uuid;
g_return_val_if_fail (connection, NULL); g_return_val_if_fail (connection, NULL);
@@ -274,9 +277,12 @@ _get_ca_ignore_settings (NMConnection *connection)
uuid = nm_connection_get_uuid (connection);
g_return_val_if_fail (uuid && *uuid, NULL);
+ schema_source = g_settings_schema_source_new_from_directory ("@NM_APPLET_GSETTINGS@", g_settings_schema_source_get_default (), TRUE, NULL); + schema_source = g_settings_schema_source_new_from_directory ("@NM_APPLET_GSETTINGS@", g_settings_schema_source_get_default (), TRUE, NULL);
+ schema = g_settings_schema_source_lookup (schema_source, "org.gnome.nm-applet.eap", FALSE); + schema = g_settings_schema_source_lookup (schema_source, "org.gnome.nm-applet.eap", FALSE);
+ g_settings_schema_source_unref (schema_source);
+ +
uuid = nm_connection_get_uuid (connection);
g_return_val_if_fail (uuid && *uuid, NULL);
path = g_strdup_printf ("/org/gnome/nm-applet/eap/%s/", uuid); path = g_strdup_printf ("/org/gnome/nm-applet/eap/%s/", uuid);
- settings = g_settings_new_with_path ("org.gnome.nm-applet.eap", path); - settings = g_settings_new_with_path ("org.gnome.nm-applet.eap", path);
- g_free (path);
+ settings = g_settings_new_full (schema, NULL, path); + settings = g_settings_new_full (schema, NULL, path);
g_free (path);
return settings; return settings;
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkgconfig, file, networkmanager, libsecret { stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkgconfig, file, networkmanager, libsecret
, gtk3, withGnome ? true, gnome3, kmod, fetchpatch, networkmanagerapplet }: , gtk3, withGnome ? true, gnome3, kmod, fetchpatch, libnma }:
let let
pname = "NetworkManager-openvpn"; pname = "NetworkManager-openvpn";
@ -25,7 +25,7 @@ in stdenv.mkDerivation {
]; ];
buildInputs = [ openvpn networkmanager ] buildInputs = [ openvpn networkmanager ]
++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ];
nativeBuildInputs = [ intltool pkgconfig file libxml2 ]; nativeBuildInputs = [ intltool pkgconfig file libxml2 ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, intltool, pkgconfig, networkmanager, strongswanNM { stdenv, fetchurl, intltool, pkgconfig, networkmanager, strongswanNM
, gtk3, gnome3, libsecret, networkmanagerapplet }: , gtk3, gnome3, libsecret, libnma }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "NetworkManager-strongswan"; pname = "NetworkManager-strongswan";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "015xcj42pd84apa0j0n9r3fhldp42mj72dqvl2xf4r9gwg5nhfrl"; sha256 = "015xcj42pd84apa0j0n9r3fhldp42mj72dqvl2xf4r9gwg5nhfrl";
}; };
buildInputs = [ networkmanager strongswanNM libsecret gtk3 networkmanagerapplet ]; buildInputs = [ networkmanager strongswanNM libsecret gtk3 libnma ];
nativeBuildInputs = [ intltool pkgconfig ]; nativeBuildInputs = [ intltool pkgconfig ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, substituteAll, vpnc, intltool, pkgconfig, networkmanager, libsecret { stdenv, fetchurl, substituteAll, vpnc, intltool, pkgconfig, networkmanager, libsecret
, gtk3, withGnome ? true, gnome3, kmod, file, fetchpatch, networkmanagerapplet }: , gtk3, withGnome ? true, gnome3, kmod, file, fetchpatch, libnma }:
let let
pname = "NetworkManager-vpnc"; pname = "NetworkManager-vpnc";
version = "1.2.6"; version = "1.2.6";
@ -24,7 +24,7 @@ in stdenv.mkDerivation {
]; ];
buildInputs = [ vpnc networkmanager ] buildInputs = [ vpnc networkmanager ]
++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ];
nativeBuildInputs = [ intltool pkgconfig file ]; nativeBuildInputs = [ intltool pkgconfig file ];

View File

@ -5346,6 +5346,8 @@ in
networkmanagerapplet = callPackage ../tools/networking/network-manager/applet { }; networkmanagerapplet = callPackage ../tools/networking/network-manager/applet { };
libnma = callPackage ../tools/networking/network-manager/libnma { };
networkmanager_dmenu = callPackage ../tools/networking/network-manager/dmenu { }; networkmanager_dmenu = callPackage ../tools/networking/network-manager/dmenu { };
nm-tray = libsForQt5.callPackage ../tools/networking/network-manager/tray.nix { }; nm-tray = libsForQt5.callPackage ../tools/networking/network-manager/tray.nix { };