mirror of
https://github.com/miskcoo/ugreen_dx4600_leds_controller.git
synced 2025-07-23 12:23:09 +02:00
add a tool for creating deb package
This commit is contained in:
2
build-scripts/debian/README.md
Normal file
2
build-scripts/debian/README.md
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
To build a deb, run `sudo bash build.sh`.
|
55
build-scripts/debian/build-dkms-deb.sh
Normal file
55
build-scripts/debian/build-dkms-deb.sh
Normal file
@@ -0,0 +1,55 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
set -x
|
||||
|
||||
pkgver="0.2"
|
||||
pkgname="led-ugreen-dkms"
|
||||
drivername="led-ugreen"
|
||||
|
||||
mkdir -p $pkgname/DEBIAN
|
||||
|
||||
cat <<EOF > $pkgname/DEBIAN/control
|
||||
Package: $pkgname
|
||||
Version: $pkgver
|
||||
Architecture: amd64
|
||||
Maintainer: Yuhao Zhou <miskcoo@gmail.com>
|
||||
Depends: dkms
|
||||
Homepage: https://github.com/miskcoo/ugreen_dx4600_leds_controller
|
||||
Description: UGREEN NAS LED driver
|
||||
A reverse-engineered LED driver of UGREEN NAS.
|
||||
EOF
|
||||
|
||||
cat <<EOF > $pkgname/DEBIAN/postinst
|
||||
#!/usr/bin/bash
|
||||
|
||||
dkms add -m $drivername -v $pkgver
|
||||
dkms build -m $drivername -v $pkgver && dkms install -m $drivername -v $pkgver || true
|
||||
|
||||
EOF
|
||||
|
||||
cat <<EOF > $pkgname/DEBIAN/prerm
|
||||
#!/usr/bin/bash
|
||||
|
||||
dkms remove -m $drivername -v $pkgver --all || true
|
||||
EOF
|
||||
|
||||
chmod +x $pkgname/DEBIAN/postinst
|
||||
chmod +x $pkgname/DEBIAN/prerm
|
||||
|
||||
|
||||
# dkms files
|
||||
mkdir -p $pkgname/usr/src/$drivername-$pkgver
|
||||
|
||||
kmod_files=(kmod/Makefile kmod/dkms.conf kmod/led-ugreen.c kmod/led-ugreen.h kmod/Makefile)
|
||||
for f in ${kmod_files[@]}; do
|
||||
cp -rv $f $pkgname/usr/src/$drivername-$pkgver/
|
||||
done
|
||||
|
||||
# change to root
|
||||
chown -R root:root $pkgname/
|
||||
|
||||
dpkg -b $pkgname
|
||||
|
||||
rm -rv $pkgname
|
||||
|
56
build-scripts/debian/build-utils-deb.sh
Normal file
56
build-scripts/debian/build-utils-deb.sh
Normal file
@@ -0,0 +1,56 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
set -x
|
||||
|
||||
pkgver="0.2"
|
||||
pkgname="led-ugreen-utils"
|
||||
drivername="led-ugreen"
|
||||
|
||||
mkdir -p $pkgname/DEBIAN
|
||||
|
||||
cat <<EOF > $pkgname/DEBIAN/control
|
||||
Package: $pkgname
|
||||
Version: $pkgver
|
||||
Architecture: amd64
|
||||
Maintainer: Yuhao Zhou <miskcoo@gmail.com>
|
||||
Depends: dmidecode, smartmontools
|
||||
Homepage: https://github.com/miskcoo/ugreen_dx4600_leds_controller
|
||||
Description: UGREEN NAS LED tools
|
||||
A reverse-engineered LED tools of UGREEN NAS.
|
||||
EOF
|
||||
|
||||
|
||||
# scripts
|
||||
mkdir -p $pkgname/usr/bin/
|
||||
|
||||
script_files=(ugreen-probe-leds ugreen-netdevmon ugreen-diskiomon)
|
||||
|
||||
for f in ${script_files[@]}; do
|
||||
cp scripts/$f $pkgname/usr/bin/
|
||||
chmod +x $pkgname/usr/bin/$f
|
||||
done
|
||||
|
||||
# systemd file
|
||||
mkdir -p $pkgname/etc/systemd/system
|
||||
cp scripts/*.service $pkgname/etc/systemd/system/
|
||||
# cp scripts/ugreen-ledmon@.service $pkgname/etc/systemd/system/
|
||||
#
|
||||
|
||||
# example config file
|
||||
cp scripts/ugreen-leds.conf $pkgname/etc/ugreen-leds.example.conf
|
||||
|
||||
# change to root
|
||||
chown -R root:root $pkgname/
|
||||
|
||||
# cli
|
||||
cd cli && make -j 4
|
||||
cd ..
|
||||
cp cli/ugreen_leds_cli $pkgname/usr/bin
|
||||
# cp cli/ugreen_daemon $pkgname/usr/bin
|
||||
chmod +x $pkgname/usr/bin
|
||||
|
||||
dpkg -b $pkgname
|
||||
|
||||
rm -rv $pkgname
|
||||
|
14
build-scripts/debian/build.sh
Normal file
14
build-scripts/debian/build.sh
Normal file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
git clone https://github.com/miskcoo/ugreen_dx4600_leds_controller.git
|
||||
|
||||
cp build-dkms-deb.sh ugreen_dx4600_leds_controller
|
||||
cp build-utils-deb.sh ugreen_dx4600_leds_controller
|
||||
|
||||
cd ugreen_dx4600_leds_controller
|
||||
bash build-dkms-deb.sh
|
||||
bash build-utils-deb.sh
|
||||
|
||||
dpkg-name led-ugreen-dkms.deb
|
||||
dpkg-name led-ugreen-utils.deb
|
||||
mv *.deb ../
|
Reference in New Issue
Block a user