uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
43
pkgs/tools/networking/connman/connman-gtk/default.nix
Normal file
43
pkgs/tools/networking/connman/connman-gtk/default.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{ lib, stdenv, fetchFromGitHub, autoconf, automake, intltool, pkg-config,
|
||||
gtk3, connman, openconnect, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "connman-gtk";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jgke";
|
||||
repo = "connman-gtk";
|
||||
rev = "v${version}";
|
||||
sha256 = "09k0hx5hxpbykvslv12l2fq9pxdwpd311mxj038hbqzjghcyidyr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
intltool
|
||||
pkg-config
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
openconnect
|
||||
connman
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# m4/intltool.m4 is an invalid symbolic link
|
||||
rm m4/intltool.m4
|
||||
ln -s ${intltool}/share/aclocal/intltool.m4 m4/
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "GTK GUI for Connman";
|
||||
homepage = "https://github.com/jgke/connman-gtk";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.romildo ];
|
||||
};
|
||||
}
|
||||
41
pkgs/tools/networking/connman/connman-ncurses/default.nix
Normal file
41
pkgs/tools/networking/connman/connman-ncurses/default.nix
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
{ lib, stdenv, fetchpatch, fetchFromGitHub, autoreconfHook, pkg-config, dbus, json_c, ncurses, connman }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "connman-ncurses";
|
||||
version = "2015-07-21";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "eurogiciel-oss";
|
||||
repo = "connman-json-client";
|
||||
rev = "3c34b2ee62d2e188090d20e7ed2fd94bab9c47f2";
|
||||
sha256 = "1831r0776fv481g8kgy1dkl750pzv47835dw11sslq2k6mm6i9p1";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix build with json-c 0.14
|
||||
(fetchpatch {
|
||||
url = "https://github.com/void-linux/void-packages/raw/5830ce60e922b7dced8157ededda8c995adb3bb9/srcpkgs/connman-ncurses/patches/lowercase-boolean.patch";
|
||||
extraPrefix = "";
|
||||
sha256 = "uK83DeRyXS2Y0ZZpTYvYNh/1ZM2QQ7QpajiBztaEuSM=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||
|
||||
buildInputs = [ dbus ncurses json_c connman ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/bin"
|
||||
cp -va connman_ncurses "$out/bin/"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple ncurses UI for connman";
|
||||
homepage = "https://github.com/eurogiciel-oss/connman-json-client";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.romildo ];
|
||||
};
|
||||
}
|
||||
36
pkgs/tools/networking/connman/connman-notify/default.nix
Normal file
36
pkgs/tools/networking/connman/connman-notify/default.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{ lib, fetchFromGitLab, python3Packages, glib, gobject-introspection, wrapGAppsHook }:
|
||||
|
||||
python3Packages.buildPythonApplication {
|
||||
pname = "connman-notify";
|
||||
version = "2019-10-05";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "wavexx";
|
||||
repo = "connman-notify";
|
||||
rev = "24b10a51721b54d932f4cd61ef2756423768c015";
|
||||
sha256 = "1k5b5y6114yna2cm0cq82xilicran63hrhlklgv7k3p89057xh8j";
|
||||
};
|
||||
|
||||
format = "other";
|
||||
|
||||
nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
|
||||
|
||||
buildInputs = [ glib ];
|
||||
|
||||
pythonPath = with python3Packages; [ dbus-python pygobject3 ];
|
||||
|
||||
strictDeps = false;
|
||||
|
||||
installPhase = ''
|
||||
install -D -t $out/bin connman-notify
|
||||
install -D -t $out/share/doc README.rst
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Desktop notification integration for connman";
|
||||
homepage = "https://gitlab.com/wavexx/connman-notify";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.romildo ];
|
||||
};
|
||||
}
|
||||
180
pkgs/tools/networking/connman/connman.nix
Normal file
180
pkgs/tools/networking/connman/connman.nix
Normal file
|
|
@ -0,0 +1,180 @@
|
|||
{ lib, stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, pkg-config
|
||||
, file
|
||||
, glib
|
||||
# always required runtime dependencies
|
||||
, dbus
|
||||
, libmnl
|
||||
, gnutls
|
||||
, readline
|
||||
# configureable options
|
||||
, firewallType ? "iptables" # or "nftables"
|
||||
, iptables ? null
|
||||
, libnftnl ? null # for nftables
|
||||
, dnsType ? "internal" # or "systemd-resolved"
|
||||
# optional features which are turned *on* by default
|
||||
, enableOpenconnect ? true
|
||||
, openconnect ? null
|
||||
, enableOpenvpn ? true
|
||||
, openvpn ? null
|
||||
, enableVpnc ? true
|
||||
, vpnc ? true
|
||||
, enablePolkit ? true
|
||||
, polkit ? null
|
||||
, enablePptp ? true
|
||||
, pptp ? null
|
||||
, ppp ? null
|
||||
, enableLoopback ? true
|
||||
, enableEthernet ? true
|
||||
, enableWireguard ? true
|
||||
, enableGadget ? true
|
||||
, enableWifi ? true
|
||||
, enableBluetooth ? true
|
||||
, enableOfono ? true
|
||||
, enableDundee ? true
|
||||
, enablePacrunner ? true
|
||||
, enableNeard ? true
|
||||
, enableWispr ? true
|
||||
, enableTools ? true
|
||||
, enableStats ? true
|
||||
, enableClient ? true
|
||||
, enableDatafiles ? true
|
||||
# optional features which are turned *off* by default
|
||||
, enableNetworkManager ? false
|
||||
, enableHh2serialGps ? false
|
||||
, enableL2tp ? false
|
||||
, enableIospm ? false
|
||||
, enableTist ? false
|
||||
}:
|
||||
|
||||
assert lib.asserts.assertOneOf "firewallType" firewallType [ "iptables" "nftables" ];
|
||||
assert lib.asserts.assertOneOf "dnsType" dnsType [ "internal" "systemd-resolved" ];
|
||||
|
||||
let inherit (lib) optionals; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "connman";
|
||||
version = "1.41";
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/network/connman/${pname}-${version}.tar.xz";
|
||||
sha256 = "sha256-eftA9P3VUwxFqo5ZL7Froj02dPOpjPELiaZXbxmN5Yk=";
|
||||
};
|
||||
|
||||
patches = lib.optionals stdenv.hostPlatform.isMusl [
|
||||
# Fix Musl build by avoiding a Glibc-only API.
|
||||
(fetchpatch {
|
||||
url = "https://git.alpinelinux.org/aports/plain/community/connman/libresolv.patch?id=e393ea84386878cbde3cccadd36a30396e357d1e";
|
||||
sha256 = "1kg2nml7pdxc82h5hgsa3npvzdxy4d2jpz2f93pa97if868i8d43";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
dbus
|
||||
libmnl
|
||||
gnutls
|
||||
readline
|
||||
] ++ optionals (enableOpenconnect) [ openconnect ]
|
||||
++ optionals (firewallType == "iptables") [ iptables ]
|
||||
++ optionals (firewallType == "nftables") [ libnftnl ]
|
||||
++ optionals (enablePolkit) [ polkit ]
|
||||
++ optionals (enablePptp) [ pptp ppp ]
|
||||
;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
file
|
||||
];
|
||||
|
||||
# fix invalid path to 'file'
|
||||
postPatch = ''
|
||||
sed -i "s/\/usr\/bin\/file/file/g" ./configure
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
# directories flags
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
"--with-dbusconfdir=${placeholder "out"}/share"
|
||||
"--with-dbusdatadir=${placeholder "out"}/share"
|
||||
"--with-tmpfilesdir=${placeholder "out"}/lib/tmpfiles.d"
|
||||
"--with-systemdunitdir=${placeholder "out"}/lib/systemd/system"
|
||||
"--with-dns-backend=${dnsType}"
|
||||
"--with-firewall=${firewallType}"
|
||||
# production build flags
|
||||
"--disable-maintainer-mode"
|
||||
"--enable-session-policy-local=builtin"
|
||||
# for building and running tests
|
||||
# "--enable-tests" # installs the tests, we don't want that
|
||||
"--enable-tools"
|
||||
]
|
||||
++ optionals (!enableLoopback) [ "--disable-loopback" ]
|
||||
++ optionals (!enableEthernet) [ "--disable-ethernet" ]
|
||||
++ optionals (!enableWireguard) [ "--disable-wireguard" ]
|
||||
++ optionals (!enableGadget) [ "--disable-gadget" ]
|
||||
++ optionals (!enableWifi) [ "--disable-wifi" ]
|
||||
# enable IWD support for wifi as it doesn't require any new dependencies
|
||||
# and it's easier for the NixOS module to use only one connman package when
|
||||
# IWD is requested
|
||||
++ optionals (enableWifi) [ "--enable-iwd" ]
|
||||
++ optionals (!enableBluetooth) [ "--disable-bluetooth" ]
|
||||
++ optionals (!enableOfono) [ "--disable-ofono" ]
|
||||
++ optionals (!enableDundee) [ "--disable-dundee" ]
|
||||
++ optionals (!enablePacrunner) [ "--disable-pacrunner" ]
|
||||
++ optionals (!enableNeard) [ "--disable-neard" ]
|
||||
++ optionals (!enableWispr) [ "--disable-wispr" ]
|
||||
++ optionals (!enableTools) [ "--disable-tools" ]
|
||||
++ optionals (!enableStats) [ "--disable-stats" ]
|
||||
++ optionals (!enableClient) [ "--disable-client" ]
|
||||
++ optionals (!enableDatafiles) [ "--disable-datafiles" ]
|
||||
++ optionals (enableOpenconnect) [
|
||||
"--enable-openconnect=builtin"
|
||||
"--with-openconnect=${openconnect}/sbin/openconnect"
|
||||
]
|
||||
++ optionals (enableOpenvpn) [
|
||||
"--enable-openvpn=builtin"
|
||||
"--with-openvpn=${openvpn}/sbin/openvpn"
|
||||
]
|
||||
++ optionals (enableVpnc) [
|
||||
"--enable-vpnc=builtin"
|
||||
"--with-vpnc=${vpnc}/sbin/vpnc"
|
||||
]
|
||||
++ optionals (enablePolkit) [
|
||||
"--enable-polkit"
|
||||
]
|
||||
++ optionals (enablePptp) [
|
||||
"--enable-pptp"
|
||||
"--with-pptp=${pptp}/sbin/pptp"
|
||||
]
|
||||
++ optionals (!enableWireguard) [
|
||||
"--disable-wireguard"
|
||||
]
|
||||
++ optionals (enableNetworkManager) [
|
||||
"--enable-nmcompat"
|
||||
]
|
||||
++ optionals (enableHh2serialGps) [
|
||||
"--enable-hh2serial-gps"
|
||||
]
|
||||
++ optionals (enableL2tp) [
|
||||
"--enable-l2tp"
|
||||
]
|
||||
++ optionals (enableIospm) [
|
||||
"--enable-iospm"
|
||||
]
|
||||
++ optionals (enableTist) [
|
||||
"--enable-tist"
|
||||
]
|
||||
;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A daemon for managing internet connections";
|
||||
homepage = "https://git.kernel.org/pub/scm/network/connman/connman.git/";
|
||||
maintainers = [ maintainers.matejc ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2Only;
|
||||
};
|
||||
}
|
||||
35
pkgs/tools/networking/connman/connman_dmenu/default.nix
Normal file
35
pkgs/tools/networking/connman/connman_dmenu/default.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{ lib, stdenv, fetchFromGitHub, connman, dmenu }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "connman_dmenu";
|
||||
version = "unstable-2015-09-29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "march-linux";
|
||||
repo = "connman_dmenu";
|
||||
rev = "cc89fec40b574b0d234afeb70ea3c94626ca3f5c";
|
||||
sha256 = "061fi83pai4n19l9d7wq6wwj2d7cixwkhkh742c5ibmw1wb274yk";
|
||||
};
|
||||
|
||||
buildInputs = [ connman dmenu ];
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
# remove root requirement, see: https://github.com/march-linux/connman_dmenu/issues/3
|
||||
postPatch = ''
|
||||
sed -i '89,92d' connman_dmenu
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp connman_dmenu $out/bin/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A dmenu wrapper for connmann";
|
||||
homepage = "https://github.com/march-linux/connman_dmenu";
|
||||
license = lib.licenses.free;
|
||||
maintainers = [ lib.maintainers.magnetophon ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
40
pkgs/tools/networking/connman/default.nix
Normal file
40
pkgs/tools/networking/connman/default.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{ callPackage }:
|
||||
|
||||
{
|
||||
# All the defaults
|
||||
connman = callPackage ./connman.nix { };
|
||||
|
||||
connmanFull = callPackage ./connman.nix {
|
||||
# TODO: Why is this in `connmanFull` and not the default build? See TODO in
|
||||
# nixos/modules/services/networking/connman.nix (near the assertions)
|
||||
enableNetworkManager = true;
|
||||
enableHh2serialGps = true;
|
||||
enableL2tp = true;
|
||||
enableIospm = true;
|
||||
enableTist = true;
|
||||
};
|
||||
|
||||
connmanMinimal = callPackage ./connman.nix {
|
||||
enableOpenconnect = false;
|
||||
enableOpenvpn = false;
|
||||
enableVpnc = false;
|
||||
vpnc = false;
|
||||
enablePolkit = false;
|
||||
enablePptp = false;
|
||||
enableLoopback = false;
|
||||
# enableEthernet = false; # If disabled no ethernet connection can be performed
|
||||
enableWireguard = false;
|
||||
enableGadget = false;
|
||||
# enableWifi = false; # If disabled no WiFi connection can be performed
|
||||
enableBluetooth = false;
|
||||
enableOfono = false;
|
||||
enableDundee = false;
|
||||
enablePacrunner = false;
|
||||
enableNeard = false;
|
||||
enableWispr = false;
|
||||
enableTools = false;
|
||||
enableStats = false;
|
||||
enableClient = false;
|
||||
# enableDatafiles = false; # If disabled, configuration and data files are not installed
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue