blob: f5a22caff1ada296744c3673ae72e065a39f84e2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
#!/bin/bash
die() {
echo ">>> FAIL: $@"
exit 1
}
is_in_set() {
local v="$1"
shift
for w ; do
[[ "$v" == "$w" ]] && return 0
done
return 1
}
fedora_pkg_minimal() {
echo \
/usr/bin/autopoint \
NetworkManager-libnm-devel \
desktop-file-utils \
fedora-repos-rawhide \
file \
findutils \
gcc \
gettext-devel \
glib2-devel \
gtk3-devel \
libgudev1-devel \
libnotify-devel \
libsecret-devel \
libtool \
pkgconfig \
#
}
fedora_pkg_full() {
echo \
$(fedora_pkg_minimal) \
redhat-rpm-config \
jansson-devel \
ModemManager-glib-devel \
libselinux-devel \
libappindicator-gtk3-devel \
libdbusmenu-gtk3-devel \
#
}
fedora_pkg_build() {
case "$1" in
autotools)
echo autoconf automake make
;;
make)
echo make
;;
meson)
echo meson
;;
"")
;;
*)
die "Unknown build option \"$1\""
;;
esac
}
fedora_install_libnma() {
pushd /etc/yum.repos.d
local URL='https://gitlab.gnome.org/thaller/network-manager-applet/-/raw/e9d885749b281e86fb92421e73e1564b233141b4/nm-applet-prebuilt-rpms.tgz'
$CMD curl "$URL" --output ./nm-applet-prebuilt-rpms.tgz
$CMD tar -xvzf ./nm-applet-prebuilt-rpms.tgz
$CMD dnf -y install --enablerepo=nm-applet-prebuilt-rpms libnma-devel
popd
}
fedora_install_minimal() {
$CMD dnf -y install $(fedora_pkg_minimal) $(fedora_pkg_build "$1")
fedora_install_libnma
}
fedora_install_full() {
$CMD dnf -y install $(fedora_pkg_full) $(fedora_pkg_build "$1")
fedora_install_libnma
}
set -xe
if is_in_set "$1" fedora_install_minimal fedora_install_full ; then
is_in_set "$2" autotools make meson || die "invalid argument \$2 (\"$2\")"
"$1" "$2"
exit 0
fi
die "Unknown command \"$1\""
|