Thinstation / thinstation

A framework for making thin and light Linux based images for x86 based machines and thinclients.
https://www.thinstation.net/
821 stars 188 forks source link

update support #819

Open sven-pke opened 7 months ago

sven-pke commented 7 months ago

Hello there,

Are there still updates for the used software/packages?

Best regards

Doncuppjr commented 7 months ago

What do you mean?

sven-pke commented 7 months ago

Since the last current version of Thinstation is from 2022, I am interested in whether the software will receive further updates, for example with regard to security or when newer versions of the individual subprograms e.g. the web browsers are released.

Thinstation commented 7 months ago

The project is no longer sponsored, so I have to spend my time elsewhere. Chrome is dynamic. It is cached, but if you run removeall and also clean out the /downloads, the next build will pull down whatever Google is hosting.

AlexanderZhirov commented 6 months ago

@Thinstation Is there a way to update CUPS? It would be very useful to upgrade from version https://github.com/apple/cups to version https://github.com/OpenPrinting/cups.

Thinstation commented 6 months ago

Yes. Go upgrade it. It’s Linux.

AlexanderZhirov commented 6 months ago

I'm trying to put it all together, but unfortunately, something is not working out very well. At least, it cannot be started when the image is loaded. I took the source code from Arch Linux.

# Description: The Common Unix Printing System
# URL: https://openprinting.github.io/cups
# Maintainer: Alexander Zhirov

name=cups
version=2.4.8
release=1
pkgname=('libcups' 'cups')
source=(
    https://github.com/OpenPrinting/cups/releases/download/v${version}/cups-${version}-source.tar.gz{,.sig}
    cups.logrotate
    cups.pam
    cups.sysusers
    cups-2.4.0-statedir.patch
    cups-freebind.patch
    guid.patch
)

build () {
    cd cups-2.4.8

    patch -Np1 -i "${SRC}"/cups-2.4.0-statedir.patch
    patch -Np1 -i "${SRC}"/cups-freebind.patch
    patch -Np1 -i "${SRC}"/guid.patch

    aclocal -I config-scripts
    autoconf -I config-scripts

    export DSOFLAGS=${LDFLAGS}

    ./configure --prefix=/usr \
        --sysconfdir=/etc \
        --localstatedir=/var \
        --sbindir=/usr/bin \
        --libdir=/usr/lib \
        --with-logdir=/var/log/cups \
        --with-docdir=/usr/share/cups/doc \
        --with-exe-file-perm=0755 \
        --with-cups-user=209 \
        --with-cups-group=209 \
        --with-max-log-size=0 \
        --enable-pam=yes \
        --enable-raw-printing \
        --enable-dbus=yes \
        --with-tls=gnutls \
        --with-dbusdir=/usr/share/dbus-1 \
        --enable-relro \
        --enable-libpaper

    make

    make BUILDROOT="${PKG}" install-headers install-libs
    mkdir -p "${PKG}"/usr/bin
    install -m755 "${SRC}"/"cups"-2.4.8/cups-config "${PKG}"/usr/bin/cups-config

    install -m644 -Dt "${PKG}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE}

    make BUILDROOT="${PKG}" install-data install-exec

    rm -f "${PKG}"/usr/bin/cups-config

    rm -rf "${PKG}"/etc/rc*.d
    rm -rf "${PKG}"/etc/init.d
    install -D -m644 ../cups.logrotate "${PKG}"/etc/logrotate.d/cups
    install -D -m644 ../cups.pam "${PKG}"/etc/pam.d/cups

    chmod 755 "${PKG}"/var/spool
    chmod 755 "${PKG}"/etc

    install -Dm644 "$SRC"/cups.sysusers "${PKG}/usr/lib/sysusers.d/$pkgname.conf"
    sed -i "s:#User 209:User 209:" "${PKG}"/etc/cups/cups-files.conf{,.default}
    sed -i "s:#Group 209:Group 209:" "${PKG}"/etc/cups/cups-files.conf{,.default}

    install -dm700 -g 209 "${PKG}"/etc/cups/ssl
    rm -rf "${PKG}"/run

    touch "${PKG}"/etc/cups/printers.conf
    touch "${PKG}"/etc/cups/classes.conf
    touch "${PKG}"/etc/cups/subscriptions.conf
    chgrp -R 209 "${PKG}"/etc/cups

    sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "${PKG}"/usr/share/applications/cups.desktop

    find "${PKG}"/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f

    rm -f "${PKG}"/usr/share/man/man5/client.conf.5

    perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' "$PKG"/usr/share/cups/mime/mime.convs

    sed -i -e 's:PageLogFormat:#PageLogFormat:' "$PKG"/etc/cups/cupsd.conf*

    rm -rf "${PKG}"/etc/xinetd.d

    install -m644 -Dt "${PKG}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE}

    install -D -d -m00755 $PKG/usr/lib/systemd/system/printer.target.wants
    install -D -d -m00755 $PKG/usr/lib/systemd/system/sockets.target.wants
    install -D -d -m00755 $PKG/usr/lib/systemd/system/multi-user.target.wants

    ln -s ../cups.service $PKG/usr/lib/systemd/system/printer.target.wants/cups.service
    ln -s ../cups.service $PKG/usr/lib/systemd/system/multi-user.target.wants/cups.service
    ln -s ../cups.path    $PKG/usr/lib/systemd/system/multi-user.target.wants/cups.path
    ln -s ../cups.socket  $PKG/usr/lib/systemd/system/sockets.target.wants/cups.socket
}