diff options
Diffstat (limited to 'pkgs/tools/networking/network-manager')
-rw-r--r-- | pkgs/tools/networking/network-manager/applet/default.nix | 80 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/fortisslvpn/default.nix | 4 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/iodine/default.nix | 20 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/l2tp/default.nix | 4 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/libnma/default.nix | 89 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/libnma/hardcode-gsettings.patch (renamed from pkgs/tools/networking/network-manager/applet/hardcode-gsettings.patch) | 30 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/openvpn/default.nix | 4 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/strongswan/default.nix | 4 | ||||
-rw-r--r-- | pkgs/tools/networking/network-manager/vpnc/default.nix | 4 |
9 files changed, 177 insertions, 62 deletions
diff --git a/pkgs/tools/networking/network-manager/applet/default.nix b/pkgs/tools/networking/network-manager/applet/default.nix index 69b454ea72ee..109c4c8cce15 100644 --- a/pkgs/tools/networking/network-manager/applet/default.nix +++ b/pkgs/tools/networking/network-manager/applet/default.nix @@ -1,46 +1,74 @@ -{ stdenv, fetchurl, meson, ninja, intltool, gtk-doc, pkgconfig, networkmanager, gnome3 -, libnotify, libsecret, polkit, isocodes, modemmanager, libxml2, docbook_xsl, docbook_xml_dtd_43 -, mobile-broadband-provider-info, glib-networking, gsettings-desktop-schemas -, libgudev, jansson, wrapGAppsHook, gobject-introspection, python3, gtk3 -, libappindicator-gtk3, withGnome ? true, gcr, glib }: +{ stdenv +, fetchurl +, meson +, ninja +, 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"; - version = "1.8.24"; -in stdenv.mkDerivation rec { - name = "${pname}-${version}"; + version = "1.16.0"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "1gzvz4wfqfsfclqg56y954al8x6fmz71cnxlx1i4nqr7a25bp2qi"; + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1rf3nm0hjcy9f8ajb4vmvwy503w8yj8d4daxkcb7w7i7b92qmyfn"; }; mesonFlags = [ - "-Dlibnm_gtk=false" # It is deprecated "-Dselinux=false" "-Dappindicator=yes" - "-Dgcr=${if withGnome then "true" else "false"}" ]; - outputs = [ "out" "lib" "dev" "devdoc" "man" ]; + outputs = [ "out" "man" ]; buildInputs = [ - gtk3 networkmanager libnotify libsecret gsettings-desktop-schemas - polkit isocodes mobile-broadband-provider-info libgudev - modemmanager jansson glib-networking - libappindicator-gtk3 gnome3.adwaita-icon-theme - ] ++ stdenv.lib.optionals withGnome [ gcr ]; # advanced certificate chooser - - nativeBuildInputs = [ meson ninja intltool pkgconfig wrapGAppsHook gobject-introspection python3 gtk-doc docbook_xsl docbook_xml_dtd_43 libxml2 ]; + libnma + gtk3 + networkmanager + libnotify + libsecret + gsettings-desktop-schemas + polkit + libgudev + modemmanager + jansson + glib-networking + libappindicator-gtk3 + gnome3.adwaita-icon-theme + ]; - # Needed for wingpanel-indicator-network and switchboard-plug-network - patches = [ ./hardcode-gsettings.patch ]; + nativeBuildInputs = [ + meson + ninja + gettext + pkg-config + wrapGAppsHook + gobject-introspection + python3 + ]; postPatch = '' chmod +x meson_post_install.py # patchShebangs requires executable file patchShebangs meson_post_install.py - - substituteInPlace src/wireless-security/eap-method.c --subst-var-by NM_APPLET_GSETTINGS ${glib.makeSchemaPath "$lib" name} ''; passthru = { @@ -51,7 +79,7 @@ in stdenv.mkDerivation rec { }; 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"; license = licenses.gpl2; maintainers = with maintainers; [ phreedom ]; diff --git a/pkgs/tools/networking/network-manager/fortisslvpn/default.nix b/pkgs/tools/networking/network-manager/fortisslvpn/default.nix index 94a4c4b362ae..0ce50a3b2d4b 100644 --- a/pkgs/tools/networking/network-manager/fortisslvpn/default.nix +++ b/pkgs/tools/networking/network-manager/fortisslvpn/default.nix @@ -1,5 +1,5 @@ { 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 pname = "NetworkManager-fortisslvpn"; @@ -25,7 +25,7 @@ in stdenv.mkDerivation { ]; buildInputs = [ openfortivpn networkmanager ppp ] - ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; + ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ]; nativeBuildInputs = [ intltool pkgconfig file ]; diff --git a/pkgs/tools/networking/network-manager/iodine/default.nix b/pkgs/tools/networking/network-manager/iodine/default.nix index 29c0d550fe2f..47e5a2f41813 100644 --- a/pkgs/tools/networking/network-manager/iodine/default.nix +++ b/pkgs/tools/networking/network-manager/iodine/default.nix @@ -1,15 +1,18 @@ -{ stdenv, fetchurl, substituteAll, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3 -, withGnome ? true, gnome3, fetchpatch, networkmanagerapplet }: +{ stdenv, fetchFromGitLab, substituteAll, autoreconfHook, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3 +, withGnome ? true, gnome3, fetchpatch, libnma }: let pname = "NetworkManager-iodine"; - version = "1.2.0"; + version = "unstable-2019-11-05"; in stdenv.mkDerivation { name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; - src = fetchurl { - url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0njdigakidji6mfmbsp8lfi8wl88z1dk8cljbva2w0xazyddbwyh"; + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "GNOME"; + repo = "network-manager-iodine"; + rev = "2ef0abf089b00a0546f214dde0d45e63f2990b79"; + sha256 = "1ps26fr9b1yyafj7lrzf2kmaxb0ipl0mhagch5kzrjdsc5xkajz7"; }; patches = [ @@ -25,13 +28,14 @@ in stdenv.mkDerivation { ]; buildInputs = [ iodine networkmanager ] - ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; + ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ]; - nativeBuildInputs = [ intltool pkgconfig ]; + nativeBuildInputs = [ intltool autoreconfHook pkgconfig ]; # glib-2.62 deprecations NIX_CFLAGS_COMPILE = "-DGLIB_DISABLE_DEPRECATION_WARNINGS"; + preConfigure = "intltoolize"; configureFlags = [ "--without-libnm-glib" "--with-gnome=${if withGnome then "yes" else "no"}" diff --git a/pkgs/tools/networking/network-manager/l2tp/default.nix b/pkgs/tools/networking/network-manager/l2tp/default.nix index e4ab74f08e35..09fb0c5977b5 100644 --- a/pkgs/tools/networking/network-manager/l2tp/default.nix +++ b/pkgs/tools/networking/network-manager/l2tp/default.nix @@ -1,7 +1,7 @@ { stdenv, substituteAll, fetchFromGitHub, autoreconfHook, libtool, intltool, pkgconfig , file, findutils , gtk3, networkmanager, ppp, xl2tpd, strongswan, libsecret -, withGnome ? true, networkmanagerapplet }: +, withGnome ? true, libnma }: stdenv.mkDerivation rec { name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ networkmanager ppp ] - ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; + ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ]; nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig file findutils ]; diff --git a/pkgs/tools/networking/network-manager/libnma/default.nix b/pkgs/tools/networking/network-manager/libnma/default.nix new file mode 100644 index 000000000000..727c18e92c10 --- /dev/null +++ b/pkgs/tools/networking/network-manager/libnma/default.nix @@ -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; + }; +} diff --git a/pkgs/tools/networking/network-manager/applet/hardcode-gsettings.patch b/pkgs/tools/networking/network-manager/libnma/hardcode-gsettings.patch index a480fd6d91e7..9b2f5366950c 100644 --- a/pkgs/tools/networking/network-manager/applet/hardcode-gsettings.patch +++ b/pkgs/tools/networking/network-manager/libnma/hardcode-gsettings.patch @@ -1,32 +1,26 @@ -diff --git a/src/wireless-security/eap-method.c b/src/wireless-security/eap-method.c -index 2e9daa23..6663b3ce 100644 ---- a/src/wireless-security/eap-method.c -+++ b/src/wireless-security/eap-method.c -@@ -265,8 +265,11 @@ eap_method_ca_cert_ignore_get (EAPMethod *method, NMConnection *connection) +--- a/src/nma-ws/nma-eap.c ++++ b/src/nma-ws/nma-eap.c +@@ -248,11 +248,16 @@ nma_eap_ca_cert_ignore_get (NMAEap *method, NMConnection *connection) static GSettings * _get_ca_ignore_settings (NMConnection *connection) { -+ GSettingsSchemaSource *schema_source; ++ g_autoptr (GSettingsSchemaSource) *schema_source; + g_autoptr (GSettingsSchema) *schema; GSettings *settings; -- char *path = NULL; -+ -+ g_autofree char *path = NULL; + char *path = NULL; const char *uuid; - + 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 = 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); - settings = g_settings_new_with_path ("org.gnome.nm-applet.eap", path); -- g_free (path); + settings = g_settings_new_full (schema, NULL, path); - + g_free (path); + return settings; - } diff --git a/pkgs/tools/networking/network-manager/openvpn/default.nix b/pkgs/tools/networking/network-manager/openvpn/default.nix index 2762b12a364a..13f7eab5cc78 100644 --- a/pkgs/tools/networking/network-manager/openvpn/default.nix +++ b/pkgs/tools/networking/network-manager/openvpn/default.nix @@ -1,5 +1,5 @@ { 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 pname = "NetworkManager-openvpn"; @@ -25,7 +25,7 @@ in stdenv.mkDerivation { ]; buildInputs = [ openvpn networkmanager ] - ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; + ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ]; nativeBuildInputs = [ intltool pkgconfig file libxml2 ]; diff --git a/pkgs/tools/networking/network-manager/strongswan/default.nix b/pkgs/tools/networking/network-manager/strongswan/default.nix index 843985bfa3e4..4f0a516b4201 100644 --- a/pkgs/tools/networking/network-manager/strongswan/default.nix +++ b/pkgs/tools/networking/network-manager/strongswan/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, intltool, pkgconfig, networkmanager, strongswanNM -, gtk3, gnome3, libsecret, networkmanagerapplet }: +, gtk3, gnome3, libsecret, libnma }: stdenv.mkDerivation rec { pname = "NetworkManager-strongswan"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { sha256 = "015xcj42pd84apa0j0n9r3fhldp42mj72dqvl2xf4r9gwg5nhfrl"; }; - buildInputs = [ networkmanager strongswanNM libsecret gtk3 networkmanagerapplet ]; + buildInputs = [ networkmanager strongswanNM libsecret gtk3 libnma ]; nativeBuildInputs = [ intltool pkgconfig ]; diff --git a/pkgs/tools/networking/network-manager/vpnc/default.nix b/pkgs/tools/networking/network-manager/vpnc/default.nix index 663923255745..9c1d046e4fb6 100644 --- a/pkgs/tools/networking/network-manager/vpnc/default.nix +++ b/pkgs/tools/networking/network-manager/vpnc/default.nix @@ -1,5 +1,5 @@ { 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 pname = "NetworkManager-vpnc"; version = "1.2.6"; @@ -24,7 +24,7 @@ in stdenv.mkDerivation { ]; buildInputs = [ vpnc networkmanager ] - ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; + ++ stdenv.lib.optionals withGnome [ gtk3 libsecret libnma ]; nativeBuildInputs = [ intltool pkgconfig file ]; |