Compare commits

...

15 Commits

28 changed files with 90 additions and 79 deletions

View File

@ -10,7 +10,7 @@ BBFILE_PATTERN_meta-diya = "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-diya = "11"
LAYERDEPENDS_meta-diya = " core "
LAYERSERIES_COMPAT_meta-diya = "scarthgap"
LAYERSERIES_COMPAT_meta-diya = "walnascar"
PACKAGE_CLASSES = "package_ipk"
@ -20,9 +20,9 @@ INITRAMFS_MAXSIZE="200000"
INHERIT += "rm_work"
EXTRA_IMAGE_FEATURES ?= " ssh-server-dropbear read-only-rootfs "
DISTRO_FEATURES:append := " opengl "
DISTRO_FEATURES:append := " opengl pam "
DISTRO_FEATURES:remove = " x11 vulkan ptest "
TOOLCHAIN_TARGET_TASK:append = " libgles3-mesa-dev "
TOOLCHAIN_TARGET_TASK:append := " libgles3-mesa-dev "
# DISTRO_FEATURES:append := " vc4-gfx opengl directfb "
WKS_FILE="image.wks.in"

View File

@ -3,5 +3,5 @@ SRC_URI += "file://default"
do_install:append () {
rm -rf ${D}/etc/dropbear
install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/dropbear
install -m 0644 ${UNPACKDIR}/default ${D}${sysconfdir}/default/dropbear
}

View File

@ -8,7 +8,7 @@ EXTRA_USERS_PARAMS = "usermod -d /home/diya -p 2Pe/4xyFxsokE diya; \
usermod -a -G audio diya; \
usermod -a -G sudo diya; \
"
IMAGE_BOOT_FILES:append = " fs_resize config.txt recovery-${MACHINE}.cpio.gz Image "
IMAGE_BOOT_FILES:append = " fs_resize diya-config.txt recovery-${MACHINE}.cpio.gz Image "
IMAGE_INSTALL:append = "kernel-modules \
e2fsprogs \
@ -20,6 +20,7 @@ IMAGE_INSTALL:append = "kernel-modules \
libglapi \
libudev \
libinput \
libpam \
diya-overlay \
seatd \
libxkbcommon \

View File

@ -8,6 +8,8 @@ EXTRA_USERS_PARAMS:append = "useradd xdg; \
usermod -a -G input xdg; \
usermod -a -G tty xdg; \
usermod -a -G avahi diya; \
usermod -a -G seat diya; \
usermod -a -G seat xdg; \
usermod -a -G xdg diya;"
IMAGE_INSTALL:append = "pango \
seatd \
@ -20,15 +22,15 @@ IMAGE_INSTALL:append = "pango \
gdk-pixbuf \
gtk4 \
gtk4-layer-shell \
libadwaita \
gobject-introspection \
wayland wayland-protocols \
foot swaybg swayidle swaylock tofi wtype \
wayland wayland-protocols wlroots-0.18 \
foot \
mc \
gdbserver gdb \
labwc \
wlr-randr \
diya-session-manager \
"
PACKAGE_EXCLUDE = " gtk+ gtk+3 adwaita-icon-theme "
IMAGE_INSTALL:remove = " gtk+ gtk+3 adwaita-icon-theme "
# wlr-randr l3afpad wlopm cairo-egl
# wlr-randr l3afpad wlopm cairo-egl webkitgtk

View File

@ -41,12 +41,6 @@ IMAGE_PREPROCESS_COMMAND += "image_patch;"
image_patch () {
# delete unused image
rm -rf ${IMAGE_ROOTFS}/boot/*
# create /etc/fstab
cat << EOF > ${IMAGE_ROOTFS}/etc/fstab
/dev/mmcblk1p1 /boot auto defaults 0 0
/dev/mmcblk1p4 /home auto defaults 0 0
EOF
cat << EOF > ${IMAGE_ROOTFS}/etc/hostname
diya-recovery
EOF

View File

@ -3,5 +3,5 @@ SRC_URI += " file://itf_diya "
do_install:append () {
rm ${D}/etc/network/interfaces
install -m 0644 ${WORKDIR}/itf_diya ${D}/etc/network/interfaces
install -m 0644 ${UNPACKDIR}/itf_diya ${D}/etc/network/interfaces
}

View File

@ -1,5 +1,6 @@
DESCRIPTION = "Auto configuration deployment from media"
DEPENDS = ""
RDEPENDS:${PN} = "bash"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
@ -7,9 +8,11 @@ SRC_URI += "file://confd \
file://expandfs.sh \
file://80_diya \
file://fs_resize \
file://boot-to-recovery"
file://boot-to-recovery \
file://diya.pam \
file://xdg-terminal-exec"
S = "${UNPACKDIR}"
inherit update-rc.d useradd
USERADD_PACKAGES = "${PN}"
@ -23,15 +26,18 @@ INITSCRIPT_PARAMS = "start 30 S ."
do_install() {
install -d ${D}/${sysconfdir}/init.d/
install -d ${DEPLOY_DIR_IMAGE}
install -m 0755 ${WORKDIR}/confd ${D}/${sysconfdir}/init.d/confd
install -m 0755 ${UNPACKDIR}/confd ${D}/${sysconfdir}/init.d/confd
install -d ${D}/sbin/
install -d ${D}/etc/default/volatiles
install -m 0644 ${WORKDIR}/80_diya ${D}${sysconfdir}/default/volatiles
install -m 0755 ${WORKDIR}/expandfs.sh ${D}/sbin/expandfs.sh
install -m 0755 ${WORKDIR}/boot-to-recovery ${D}/sbin/boot-to-recovery
install -m 0755 ${WORKDIR}/fs_resize ${DEPLOY_DIR_IMAGE}/
cat << EOF > ${DEPLOY_DIR_IMAGE}/config.txt
install -m 0644 ${UNPACKDIR}/80_diya ${D}${sysconfdir}/default/volatiles
install -m 0755 ${UNPACKDIR}/expandfs.sh ${D}/sbin/expandfs.sh
install -m 0755 ${UNPACKDIR}/boot-to-recovery ${D}/sbin/boot-to-recovery
install -m 0755 ${UNPACKDIR}/fs_resize ${DEPLOY_DIR_IMAGE}/
install -d ${D}/etc/pam.d
install -m 0644 ${UNPACKDIR}/diya.pam ${D}${sysconfdir}/pam.d/diya
install -d ${D}/usr/bin
install -m 0755 ${UNPACKDIR}/xdg-terminal-exec ${D}/usr/bin
cat << EOF > ${DEPLOY_DIR_IMAGE}/diya-config.txt
recovery=false
recovery_image=recovery-${MACHINE}.cpio.gz
console=both

View File

@ -6,16 +6,17 @@ if [[ $(/usr/bin/id -u) -ne 0 ]]; then
fi
. /etc/profile
PATH=/sbin:/bin:/usr/sbin:/usr/bin
if [ ! -e /boot/config.txt ]; then
if [ ! -e /boot/diya-config.txt ]; then
# prepare env for recovery boot
cat << EOF > /boot/config.txt
cat << EOF > /boot/diya-config.txt
recovery=true
recovery_image=recovery-${MACHINE}.cpio.gz
EOF
else
sed -i 's/^.*recovery.*/recovery=true/g' /boot/config.txt || \
echo "recovery=true" >> /boot/config.txt
sed -i 's/^.*recovery.*/recovery=true/g' /boot/diya-config.txt || \
echo "recovery=true" >> /boot/diya-config.txt
fi
echo "Rebooting to recovery mode"
reboot

View File

@ -1,10 +1,12 @@
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESC="Auto deployment configuration from media"
. /etc/profile
PATH=/sbin:/bin:/usr/sbin:/usr/bin
if [ -z "$DISK" ]; then
DISK="mmcblk1"
DISK="mmcblk0"
fi
case "$1" in

View File

@ -0,0 +1,5 @@
#%PAM-1.0
auth include common-auth
account include common-account
session include common-session

View File

@ -1,7 +1,9 @@
#! /bin/sh
. /etc/profile
PATH=/sbin:/bin:/usr/sbin:/usr/bin
if [ -z "$DISK" ]; then
DISK="mmcblk1"
DISK="mmcblk0"
fi
if [ "$(/usr/bin/id -u)" -ne 0 ]; then

View File

@ -0,0 +1,2 @@
#! /bin/bash
foot "$@"

View File

@ -10,8 +10,8 @@ SRC_URI += "git://git.iohub.dev/dany/diya-session-manager.git;protocol=https;bra
file://diya-sessiond"
SRCREV = "${AUTOREV}"
PV = "0.1.0+git${SRCPV}"
S = "${WORKDIR}/git"
PV = "0.1.1+git${SRCPV}"
S = "${UNPACKDIR}/git"
inherit meson pkgconfig
@ -27,10 +27,10 @@ do_install:append() {
install -d ${D}/etc/dbus-1/system.d
install -d ${D}/etc/init.d
install -m 0755 ${WORKDIR}/build/diya-session-manager ${D}/usr/bin/
install -m 0755 ${WORKDIR}/diya-sessiond ${D}/etc/init.d/
install -m 0755 ${WORKDIR}/diya-session-launch ${D}/usr/bin/
install -m 0644 ${WORKDIR}/daemon.conf ${D}/etc/diya/
install -m 0644 ${WORKDIR}/dbus-diya.conf ${D}/etc/dbus-1/system.d/
install -m 0755 ${UNPACKDIR}/diya-sessiond ${D}/etc/init.d/
install -m 0755 ${UNPACKDIR}/diya-session-launch ${D}/usr/bin/
install -m 0644 ${UNPACKDIR}/daemon.conf ${D}/etc/diya/
install -m 0644 ${UNPACKDIR}/dbus-diya.conf ${D}/etc/dbus-1/system.d/
}
FILES:${PN} = "/etc/diya \

View File

@ -21,4 +21,7 @@ login_session_user = xdg
# login session is successful
# the logged in user will own this session
user_session_command = diya-session-launch diyac -x diya-shell
user_session_command = diya-session-launch diyac -x diya-shell
# PAM service used by the daemon for authentication
pam_service = diya

View File

@ -1,14 +1,14 @@
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESC="Custom configuration"
. /etc/profile
PATH=/sbin:/bin:/usr/sbin:/usr/bin
case "$1" in
start)
echo -n "Start $DESC: "
sed -i 's/^.*recovery.*/recovery=false/g' /boot/config.txt || \
echo "recovery=false" >> /boot/config.txt
sed -i 's/^.*recovery.*/recovery=false/g' /boot/diya-config.txt || \
echo "recovery=false" >> /boot/diya-config.txt
;;
*)

View File

@ -1,16 +1,20 @@
#! /bin/sh
. /etc/profile
PATH=/sbin:/bin:/usr/sbin:/usr/bin
if [ -z "$DISK" ]; then
DISK="mmcblk0"
fi
DEFAULT_ROOTFS_NAME="rootfs-$MACHINE.tar.bz2"
DEFAULT_KERNEL_NAME="Image-$MACHINE.bin"
DEFAULT_INITRAMFS_NAME="recovery-$MACHINE.cpio.gz"
UPDATE_SRC_PATH="/home/diya/.update"
ROOTFS_DEV="/dev/mmcblk1p2"
ROOTFS_DEV="/dev/${DISK}p2"
SUPPORTED_COMMAND="rootfs kernel initramfs all"
TMP_MOUNT="/tmp/rootfs"
rootfs()
{
filename=$1
@ -54,9 +58,9 @@ rootfs()
echo "Patch /etc/fstab"
cat << EOF >> $TMP_MOUNT/etc/fstab
/dev/mmcblk1p1 /boot vfat defaults 0 0
/dev/mmcblk1p3 /var/etc ext4 defaults 0 0
/dev/mmcblk1p4 /home ext4 defaults 0 0
/dev/${DISK}p1 /boot vfat defaults 0 0
/dev/${DISK}p3 /var/etc ext4 defaults 0 0
/dev/${DISK}p4 /home ext4 defaults 0 0
EOF
sync

View File

@ -15,7 +15,7 @@ SRC_URI = "file://init \
file://diya-update \
"
S = "${WORKDIR}"
S = "${UNPACKDIR}"
INITSCRIPT_NAME = "confd"
INITSCRIPT_PARAMS = "start 30 S ."
@ -24,12 +24,12 @@ do_install() {
install -d ${D}/etc/init.d
install -d ${D}/sbin
# base
install -m 0755 ${WORKDIR}/init ${D}/init
install -m 0755 ${WORKDIR}/confd ${D}/etc/init.d/confd
install -m 0755 ${UNPACKDIR}/init ${D}/init
install -m 0755 ${UNPACKDIR}/confd ${D}/etc/init.d/confd
cat << EOF >> ${D}/etc/profile
export MACHINE=${MACHINE}
EOF
install -m 0755 ${WORKDIR}/diya-update ${D}/sbin/
install -m 0755 ${UNPACKDIR}/diya-update ${D}/sbin/
# create symlink
ln -sf /sbin/diya-update ${D}/sbin/diya-update-rootfs

View File

@ -1,4 +1,4 @@
PV = "1.1.0"
SRCREV = "v1.1.0"
PV = "1.1.1"
SRCREV = "v1.1.1"
INSANE_SKIP:${PN}-dev += "dev-elf"

View File

@ -0,0 +1 @@
PACKAGECONFIG:remove = "x11 systemd"

View File

@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-3.0-only;md5=c79ff39f19dfec
FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
S="${WORKDIR}"
S = "${UNPACKDIR}"
DEPENDS = "gtk+3 pango cairo harfbuzz gdk-pixbuf intltool-native"

View File

@ -12,7 +12,7 @@ SRCREV = "${AUTOREV}"
SRC_URI = "git://github.com/LBCrion/sfwbar.git;protocol=https;branch=main"
SRC_URI += " file://sfwbar.config "
S="${WORKDIR}/git"
S="${UNPACKDIR}/git"
inherit meson pkgconfig
@ -21,7 +21,7 @@ EXTRA_OEMESON += "--buildtype release"
do_install:append () {
install -d ${D}/${sysconfdir}/xdg/
install -d ${D}/${sysconfdir}/xdg/sfwbar/
install -m 0755 ${WORKDIR}/sfwbar.config ${D}/${sysconfdir}/xdg/sfwbar/
install -m 0755 ${UNPACKDIR}/sfwbar.config ${D}/${sysconfdir}/xdg/sfwbar/
}
FILES:${PN} += "/usr/share/icons/*"

View File

@ -12,7 +12,7 @@ SRCREV = "${AUTOREV}"
SRC_URI = "git://github.com/philj56/tofi.git;protocol=https;branch=master"
SRC_URI += " file://config file://drun "
S="${WORKDIR}/git"
S="${UNPACKDIR}/git"
inherit meson pkgconfig
@ -20,8 +20,8 @@ EXTRA_OEMESON += "--buildtype release"
do_install:append () {
# replace the default config
install -m 0755 ${WORKDIR}/drun ${D}/usr/bin/
install -m 0755 ${WORKDIR}/config ${D}/${sysconfdir}/xdg/tofi/
install -m 0755 ${UNPACKDIR}/drun ${D}/usr/bin/
install -m 0755 ${UNPACKDIR}/config ${D}/${sysconfdir}/xdg/tofi/
}
FILES:${PN} += "/usr/share/*"

View File

@ -10,7 +10,7 @@ SRCREV = "${AUTOREV}"
SRC_URI = "git://git.iohub.dev/dany/wlopm.git;protocol=https;branch=master"
S="${WORKDIR}/git"
S="${UNPACKDIR}/git"
do_compile () {
oe_runmake

View File

@ -10,7 +10,7 @@ SRCREV = "${AUTOREV}"
SRC_URI = "git://github.com/atx/wtype.git;protocol=https;branch=master"
S="${WORKDIR}/git"
S="${UNPACKDIR}/git"
inherit meson pkgconfig

View File

@ -13,13 +13,13 @@ do_install:append () {
install -d ${D}/${sysconfdir}/xdg
install -d ${D}/${sysconfdir}/init.d
install -d ${D}/${sysconfdir}/xdg/labwc
install -m 0755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/labwc
install -m 0755 ${UNPACKDIR}/init ${D}/${sysconfdir}/init.d/labwc
install -m 0755 ${WORKDIR}/wpp.jpg ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${WORKDIR}/autostart ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${WORKDIR}/environment ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${WORKDIR}/menu.xml ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${WORKDIR}/rc.xml ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${UNPACKDIR}/wpp.jpg ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${UNPACKDIR}/autostart ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${UNPACKDIR}/environment ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${UNPACKDIR}/menu.xml ${D}/${sysconfdir}/xdg/labwc/
install -m 0755 ${UNPACKDIR}/rc.xml ${D}/${sysconfdir}/xdg/labwc/
}

View File

@ -1,12 +0,0 @@
# short-description: Create Raspberry Pi SD card image
# long-description: Creates a partitioned SD card image for use with
part u-boot --source rawcopy --sourceparams="file=${SPL_BINARY}" --ondisk mmcblk1 --no-table --align 8
part /boot --source bootimg-partition --ondisk mmcblk1 --fstype=vfat --label boot --active --align 4096 --size 32
# read only roofs
part / --source rootfs --ondisk mmcblk1 --fstype=ext4 --label root --align 4096 --size 150 --exclude-path home/ --exclude-path var/etc/ --exclude-path boot/
# modifiable configurations stored in /var/etc
part /var/etc --source rootfs --rootfs-dir=${IMAGE_ROOTFS}/var/etc --ondisk mmcblk1 --fstype=ext4 --label diya --align 1024 --size 32
# home partition
part /home --source rootfs --rootfs-dir=${IMAGE_ROOTFS}/home --ondisk mmcblk1 --fstype=ext4 --label home --align 1024 --size 16
# part /home --ondisk mmcblk1 --fstype=vfat --label music --active --align 1024 --size 16