[gnome-build-meta/valentindavid/pinebook-pro: 10/11] Add support for wpa-supplicant



commit f2052c08c01ebb78b025842b7dbbeb1ea6715d0d
Author: Valentin David <valentin david codethink co uk>
Date:   Tue Apr 14 11:29:42 2020 +0000

    Add support for wpa-supplicant
    
    This should be moved to Freedesktop SDK

 elements/boards/pinebook-pro/deps.bst              |  2 +
 elements/boards/pinebook-pro/linux.bst             |  7 +++
 elements/vm/deps.bst                               |  1 +
 elements/vm/netdev-group.bst                       | 16 ++++++
 elements/vm/wpa-supplicant.bst                     | 58 ++++++++++++++++++++++
 .../gnome-initial-setup-sysusers.conf              |  1 +
 files/vm/netdev-group/netdev.conf                  |  1 +
 7 files changed, 86 insertions(+)
---
diff --git a/elements/boards/pinebook-pro/deps.bst b/elements/boards/pinebook-pro/deps.bst
index 595d0667..b6750759 100644
--- a/elements/boards/pinebook-pro/deps.bst
+++ b/elements/boards/pinebook-pro/deps.bst
@@ -39,3 +39,5 @@ runtime-depends:
 - vm/linux-firmware.bst
 - boards/pinebook-pro/wireless-regdb-bin.bst
 - boards/pinebook-pro/firmware.bst
+
+- vm/wpa-supplicant.bst
diff --git a/elements/boards/pinebook-pro/linux.bst b/elements/boards/pinebook-pro/linux.bst
index eb7ca3ef..2bab8014 100644
--- a/elements/boards/pinebook-pro/linux.bst
+++ b/elements/boards/pinebook-pro/linux.bst
@@ -267,6 +267,13 @@ config:
     scripts/config -m HID_ZEROPLUS
     scripts/config -m HID_ZYDACRON
 
+    scripts/config -e WIRELESS
+    scripts/config -m CFG80211
+    scripts/config -e CFG80211_WEXT
+    scripts/config -e MAC80211
+    scripts/config -e NETDEVICES
+    scripts/config -e WLAN
+
   build-commands:
   - |
     make
diff --git a/elements/vm/deps.bst b/elements/vm/deps.bst
index 68408daf..16266489 100644
--- a/elements/vm/deps.bst
+++ b/elements/vm/deps.bst
@@ -17,6 +17,7 @@ runtime-depends:
 - vm/spice-vdagent.bst
 - vm/linux-firmware.bst
 - vm/resize-root.bst
+- vm/wpa-supplicant.bst
 
 - freedesktop-sdk.bst:vm/config/pulseaudio.bst
 - freedesktop-sdk.bst:vm/config/sudo.bst
diff --git a/elements/vm/netdev-group.bst b/elements/vm/netdev-group.bst
new file mode 100644
index 00000000..2bfbaeee
--- /dev/null
+++ b/elements/vm/netdev-group.bst
@@ -0,0 +1,16 @@
+kind: manual
+# netdev is referred by wpa-supplicant and avahi
+
+sources:
+- kind: local
+  path: files/vm/netdev-group/netdev.conf
+
+build-depends:
+- freedesktop-sdk.bst:components/systemd.bst
+- freedesktop-sdk.bst:components/pkg-config.bst
+
+config:
+  install-commands:
+  - |
+    sysusersdir="$(pkg-config --variable sysusersdir systemd)"
+    install -Dm644 -t "%{install-root}${sysusersdir}" netdev.conf
diff --git a/elements/vm/wpa-supplicant.bst b/elements/vm/wpa-supplicant.bst
new file mode 100644
index 00000000..add411c3
--- /dev/null
+++ b/elements/vm/wpa-supplicant.bst
@@ -0,0 +1,58 @@
+kind: manual
+
+sources:
+- kind: tar
+  url: https://w1.fi/releases/wpa_supplicant-2.9.tar.gz
+
+depends:
+- freedesktop-sdk.bst:components/dbus.bst
+- core-deps/libnl.bst
+
+build-depends:
+- freedesktop-sdk.bst:components/pkg-config.bst
+- freedesktop-sdk.bst:components/systemd.bst
+
+runtime-depends:
+- vm/netdev-group.bst
+
+variables:
+  config: |
+    # Add configuration here
+  make-args: >-
+    BINDIR="%{bindir}"
+    LIBDIR="%{libdir}"
+    DESTDIR="%{install-root}"
+
+config:
+  configure-commands:
+  - cp wpa_supplicant/defconfig wpa_supplicant/.config
+
+  - |
+    cat <<\EOF >>wpa_supplicant/.config
+    %{config}
+    EOF
+
+  build-commands:
+  - |
+    cd wpa_supplicant
+    make %{make-args}
+
+  install-commands:
+  - |
+    cd wpa_supplicant
+    make -j1 %{make-args} install
+
+  - |
+    cd wpa_supplicant
+    systemservices="$(pkg-config --variable system_bus_services_dir dbus-1)"
+    install -Dm644 -t "%{install-root}${systemservices}" dbus/fi.w1.wpa_supplicant1.service
+
+  - |
+    cd wpa_supplicant
+    systemdir="$(pkg-config --variable datadir dbus-1)/dbus-1/system.d"
+    install -Dm644 dbus/dbus-wpa_supplicant.conf "%{install-root}${systemdir}/wpa_supplicant.conf"
+
+  - |
+    cd wpa_supplicant
+    systemdsystemunitdir="$(pkg-config --variable systemdsystemunitdir systemd)"
+    install -Dm644 -t "%{install-root}${systemdsystemunitdir}" systemd/*.service
diff --git a/files/gnome-initial-setup/gnome-initial-setup-sysusers.conf 
b/files/gnome-initial-setup/gnome-initial-setup-sysusers.conf
index d69a0356..54e39999 100644
--- a/files/gnome-initial-setup/gnome-initial-setup-sysusers.conf
+++ b/files/gnome-initial-setup/gnome-initial-setup-sysusers.conf
@@ -1,3 +1,4 @@
 # sysusers.d file to ensure the existence of the GNOME Initial Setup user
 #
 u      gnome-initial-setup     -       "GNOME Initial Setup"   /run/gnome-initial-setup
+m       gnome-initial-setup     netdev
diff --git a/files/vm/netdev-group/netdev.conf b/files/vm/netdev-group/netdev.conf
new file mode 100644
index 00000000..639154ee
--- /dev/null
+++ b/files/vm/netdev-group/netdev.conf
@@ -0,0 +1 @@
+g netdev - - -


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]