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

Re: next-generation LTSP landing in unstable



On Wed, Nov 20, 2019 at 07:48:47PM +0000, Mike Gabriel wrote:
> On  Do 14 Nov 2019 03:46:33 CET, Vagrant Cascadian wrote:
> >
> > On 2019-11-14, Wolfgang Schweer wrote:
> > > On Mon, Nov 11, 2019 at 01:26:17PM -0800, Vagrant Cascadian wrote:
> 
> > > > One of the biggest changes will be lack of thin client support; the new
> > > > LTSP only supports fat clients booted over the network.
> > > 
> > > I figure a SquasFS image consisting of a minimal Debian system with just
> > > nodm and x2goclient packages added (preconfigured to some extent) would
> > > match this use case. I remember doing something comparable at times of
> > > lessdisks.
> > 
> > Yeah, that shouldn't be hard to implement.
> 
> One option surely could be an x2goclient thinclient. The X2Go project has
> code for that already and I deploy similar setups at customers. Probably
> time to share it with Debian Edu.

Digging a bit into it, I noticed that thin client support is possible 
without using a dm at all. Using a systemd override.conf file allows to 
autologin into tty1; then startx can be run as a user created on the 
fly. The Xsession can be configured to let an X2Go client come up as 
only application. After logging out of the X2Go session, the client 
comes up again with a cleaned login window. This allow one to keep using 
even very old thin clients...

Find attached a script that allows to turn a vanilla Debian workstation 
(only sid atm, because the ltsp package still needs to migrate to 
testing) into an LTSP thin client server, serving both 64- and 32-bit 
clients. (Calling the script with amd64 or i386 as param; also, the 
script could be smarter.)
 
> Another option might be using Arctica Greeter with Remote Logon support. It
> would be nice to generate a proper use case within Debian Edu for getting
> this feature moved into the production realm.
> 
> I sense, Wolfgang and I should stick our heads together for this, ideally in
> person, rather than remote.

Yes, there's quite a lot of integration work to be done if Debian Edu 
wishes to provide a multi-purpose school server for the bullseye 
release.

Wolfgang
#!/bin/bash
#
# Turn vanilla Debian workstation (inside existing network w/ DHCP and DNS) into
# ltsp thin client server using X2Go.
#
# schweer, Nov 22, 2019.

set -e

arch=$1
kernel_arch=$1

if [ "i386" == "$arch" ] ; then
    #kernel_arch="686-pae"
    kernel_arch="686"
fi

apt -y install debootstrap dnsmasq x2goserver ipxe iptables net-tools nfs-kernel-server ltsp libnss-resolve squashfs-tools

mkdir -p /opt/ltsp/thin/$arch

debootstrap --arch=$arch --variant=minbase --include=locales,linux-image-$kernel_arch,initramfs-tools,systemd-sysv,\
dbus-user-session,pulseaudio,ltsp,xserver-xorg-core,xserver-xorg-input-all,xserver-xorg-video-all,xinit,x2goclient,\
openssh-server sid /opt/ltsp/thin/$arch https://deb.debian.org/debian

cd /etc && wget https://edu.schweer-online.de/etc_ltsp.tar.xz  && sudo tar -xf etc_ltsp.tar.xz && sudo rm etc_ltsp.tar.xz && cd

sed -i 's/quiet/net.ifnames=0 quiet/' /etc/default/grub
update-grub

cat <<EOF > /etc/network/interfaces
auto eth0
iface eth0 inet dhcp

allow-hotplug eth1
iface eth1 inet static
    address 192.168.67.1
EOF

ltsp image /opt/ltsp/thin/$arch
ltsp initrd
ltsp kernel
ltsp ipxe
ltsp nfs
ltsp dnsmasq

# Consider to adjust /etc/dnsmaq.d/ltsp-dnsmaq.conf for site-specific settings.
# After changes to the chroot, run 'ltsp image /opt/ltsp/thin/$arch' again.
# After changes to /etc/ltsp, run 'ltsp initrd' and 'ltsp ipxe' again.

Attachment: signature.asc
Description: PGP signature


Reply to: