Compare commits

..

49 Commits
v2.3 ... master

Author SHA1 Message Date
Pietro Brenna 5aa73fb1af \ -> \\ 2020-01-19 18:30:16 +01:00
Pietro Brenna bc5a770d3f 1 != l 2020-01-19 18:29:05 +01:00
Pietro Brenna a3bfaccea1 rootcopy custom 2020-01-19 18:15:33 +01:00
Pietro Brenna f02e73e522 Patch guido 2020-01-16 16:49:39 +01:00
TomasM 56dc040397 revert back binary changes 2019-12-07 10:15:25 +00:00
TomasM 8678d5f4b5 update syslinux and extlinux32 2019-12-07 10:07:57 +00:00
TomasM b588256382 update syslinux (and extlinux64) binaries 2019-12-07 05:02:48 -05:00
TomasM 81dfba7480 install chromium-sandbox 2019-11-17 09:59:33 +00:00
TomasM e552cf09c6 install chromium-sandbox package 2019-11-17 09:58:40 +00:00
TomasM f43da7b5cf add universal sb script to manipulate slax modules 2019-11-17 09:52:09 +00:00
TomasM 82555a7ec4 add dummy sudo 2019-11-17 09:44:11 +00:00
TomasM 8db5cb64a2 fix path 2019-11-17 08:59:35 +00:00
TomasM c405536126 Disable apparmor for Slax 2019-11-17 08:58:42 +00:00
TomasM 9774c4dd1b cleanup python desktop icon 2019-10-20 09:27:14 +00:00
TomasM 7b243f9781 fix usage 2019-10-20 09:26:04 +00:00
TomasM ecdfe750c8 fix building pcmanfm 2019-10-20 08:18:19 +00:00
TomasM 103e1eeb13 removed leafpad since it was removed from Debian 2019-10-20 07:17:04 +00:00
TomasM ece2224e18 moved some dirs due to debian10 root fs changes 2019-10-20 07:13:40 +00:00
TomasM 0010fcde7e != 2019-10-19 20:17:51 +00:00
TomasM a45ff59376 install wget 2019-10-19 20:11:04 +00:00
TomasM 2c2e73992f bugfix 2019-10-19 19:49:27 +00:00
TomasM 9e41cd8253 repackage core module to include aufs 2019-10-19 19:40:01 +00:00
TomasM 31c1e64cec remove sshd config since it is no longer needed to permit root login, it's there already 2019-10-19 19:22:31 +00:00
TomasM fcc1c91b2b check kernel upgrade 2019-10-19 19:16:22 +00:00
TomasM 32afaf7f89 first attempt for debian10 Slax 2019-10-19 19:02:17 +00:00
TomasM 7bca13b9a6 renamed to reflect version it is for 2019-10-19 19:01:58 +00:00
Tomas M 5f0ccd3362 Add mmc drivers 2019-10-13 19:09:15 +00:00
Tomas M b6569a3d0b Typo fix, thanks to Johannes 2019-10-13 20:44:13 +02:00
Tomas-M 89c08c297a
Disable console blanking 2019-09-13 19:37:16 +02:00
Tomas-M 98cd8e51b4
Update .bashrc 2019-09-13 19:36:00 +02:00
Tomas-M 7709174535
Update .bashrc 2019-09-12 07:42:05 +02:00
Tomas-M 73d605d9ad
PXE: Use first route IP if multiple routes are found 2019-07-31 07:53:07 +02:00
Tomas Matejicek 72de891a3d add ^M to line ends 2019-07-26 21:23:38 +02:00
Tomas-M 05af29f8d1
Exit if vmlinuz cannot be copied 2019-07-26 21:15:25 +02:00
Tomas-M 93cbaf8c67
Set setuid bit on xorg binary, so it can be started by guest user 2019-07-25 20:03:38 +02:00
Tomas-M 8be589217e
Update build 2019-07-25 20:01:40 +02:00
TomasM 5a06b74174 Disable screen blanking on console and X 2019-07-02 08:29:16 +00:00
Tobias Pape 6edbe53252 Post-Build USB installation (#65)
There were no hints for the installation on a usb stick, i think it would be good to add something.
2019-06-30 06:22:21 +02:00
TomasM 1257303ef3 add shadow 2019-06-27 14:40:31 +00:00
TomasM e365ab8859 Added 'start here' floating text on startup 2019-06-27 09:15:08 +00:00
Tomas-M 41f195da50
Update xlunch version 2019-06-27 00:34:32 +02:00
TomasM 809dc08543 simplify 2019-06-26 10:32:39 +00:00
samunders-core 5e288baafe decrease tftp-based PXE boot time to ~ 1/3rd (#72)
* decrease tftp-based PXE boot time to ~ 1/3rd

* decrease code amount by reusing tftp_mget function

* report parallel tftp download progress

even when seemingly out-of-order
2019-06-26 07:33:07 +02:00
Tomas-M 0548b30e81
Update xlunch version 2019-06-25 23:30:47 +02:00
TomasM 8852a1062d Revert "Desktop icons"
This reverts commit 0d9256ee6a.
2019-06-25 21:27:40 +00:00
TomasM 95656a4eff Revert "icons"
This reverts commit afe634c46a.
2019-06-25 21:27:28 +00:00
TomasM afe634c46a icons 2019-06-25 20:40:56 +00:00
TomasM 0d9256ee6a Desktop icons 2019-06-25 20:20:32 +00:00
Tomas-M e38da35316
Xterm select to clipboard 2019-06-25 16:11:06 +02:00
464 changed files with 4469 additions and 28 deletions

4
README
View File

@ -43,6 +43,10 @@ Note:
- it will create ISO and TAR files for you in /tmp
- make sure you have enough free space in /tmp to handle it
* If you want to use the Live Kit on a USB you have to either
- use Windows to execute the bootinst.bat file in the $NAME/boot folder
- or use Linux to execute the shellscript bootinst.sh in the $NAME/boot folder.
* You will need the following packages to be installed:
- squashfs-tools
- genisoimage or mkisofs

View File

@ -0,0 +1,10 @@
\l
_ ____ _____
| | / __ \\ / ____|
__| |_ __ __ _| | | | (___
/ _` | '_ \\ / _` | | | |\\___ \\
| (_| | | | | (_| | |__| |____) |
\\__,_|_| |_|\\__,_|\\____/|_____/
powered by Briq

View File

@ -0,0 +1,32 @@
#! /bin/bash --
# Aggrega file di pacchetti installati o aggiornati con Pacman
# dall'ultimo avvio di una distribuzione linux-live
# (cfr. https://www.linux-live.org/ ) senza persistenza attivata,
# creando un unico bundle .sb
# I file vengono letti dalla directory changes e da essa filtrati solo
# quelli appartenenti ai pacchetti di pacman.
#
# Autore: Guido Longoni <guidolongoni@gmail.com>
IFS=$'\n'
OUTLST="/tmp/added_files_$$.lst"
CACHEDIR=$(sed -n -e '/^[[:space:]]*CacheDir/s|^[^=]*=[[:space:]]*||gp' -e 's|[[:space:]]*$||g' /etc/pacman.conf | head -n1)
OUTDIR="/tmp/sb_$$"
OUTFILE="$OUTDIR".sb
CHGDIR=$(realpath $(mount | sed -n -e '/squashfs/s|.* on \([^ ]*\)/.*|\1|gp' | head -n1)/../changes)
mkdir -p '/tmp'
mkdir -p "$OUTDIR"
rm -rf "$OUTLST"
touch "$OUTLST"
for i in $(find "$CACHEDIR" -iname '*.pkg.tar.xz'); do
tar t -f $i >> "$OUTLST" 2>/dev/null
done
sort -u "$OUTLST" | grep -v '^\.' > "$OUTLST".tmp
mv "$OUTLST".tmp "$OUTLST"
rsync -av --old-d --files-from="$OUTLST" "$CHGDIR" "$OUTDIR"
dir2sb "$OUTDIR" "$OUTFILE"
rm -rf "$OUTDIR"
rm -rf "$OUTLST"

View File

@ -9,7 +9,7 @@ FTPROOT=/var/state/dnsmasq/root
# find out our own IP address. If more interfaces are available, use the first one
IP="$(hostname -I | cut -d " " -f 1)"
GW=$(ip route show | grep default | grep -o "via.*" | cut -d " " -f 2)
GW=$(ip route show | grep default | grep -o "via.*" | head -n 1 | cut -d " " -f 2)
# if no IP is assigned to this computer, setup private address randomly
if [ "$IP" = "" ]; then

View File

@ -0,0 +1,29 @@
#!/bin/bash
if [ "$1" = "rm" ]; then
shift
rmsbdir "$@"
exit $?
fi
if [ "$1" = "rmdir" ]; then
shift
rmsbdir "$@"
exit $?
fi
if [ "$1" = "conv" ]; then
shift
fi
if [ ! -r "$1" ]; then
echo File not found "$1"
exit 1
fi
if [ -d "$1" ]; then
dir2sb "$@"
exit $?
fi
sb2dir "$@"

View File

@ -51,7 +51,8 @@ activate()
# check if file exists
if [ ! -r "$SB" ]; then
usage "file not found $SB"
usage
die "file not found $SB"
fi
# check if the file is part of aufs union, if yes we need to copy it outside
@ -145,8 +146,18 @@ deactivate()
}
usage()
{
echo "Usage: $0 [ activate | deactivate | list ] [ file.sb ]" >&2
if [ "$1" != "" ]; then
echo "$1" >&2
fi
}
if [ "$1" = "" ]; then
die "Usage: $0 [ activate | deactivate | list ] [ file.sb ]"
usage
die
fi
if [ "$1" = "activate" ]; then

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -29,14 +29,14 @@ MENU TABMSG [F1] help [Ta
LABEL default
MENU LABEL Run Slax (Persistent changes)
KERNEL /slax/boot/vmlinuz
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=perch,automount
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 consoleblank=0 slax.flags=perch,automount
LABEL perch
MENU LABEL Run Slax (Fresh start)
KERNEL /slax/boot/vmlinuz
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=automount
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 consoleblank=0 slax.flags=automount
LABEL toram
MENU LABEL Run Slax (Copy to RAM)
KERNEL /slax/boot/vmlinuz
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=toram
APPEND vga=normal initrd=/slax/boot/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 consoleblank=0 slax.flags=toram

View File

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@ -0,0 +1,34 @@
#!/bin/bash
THIS=$(dirname $(readlink -f $0))
sed -i -r 's/^LIVEKITNAME.*/LIVEKITNAME="slax"/' $THIS/../../config
sed -i -r 's/^NETWORK.*/NETWORK=true/' $THIS/../../config
. ./copy
. ./install
. ./cleanup
. ./copy
# now run build script
SKIPINITRFS=true
cd ../../
. ./build
# setup initrd now, to include aufs
apt-get update
apt-get install aufs-dkms linux-headers-$(uname -r) --yes
cd initramfs
. ./initramfs_create
# unpack the sb archive and add aufs modules to /lib/modules
cd $LIVEKITDATA/$LIVEKITNAME
unsquashfs 01-core.$BEXT
cp -a /$LMK/kernel/fs/aufs squashfs-root/$LMK/kernel/fs
rm -f 01-core.$BEXT
mksquashfs squashfs-root 01-core.$BEXT -comp xz -b 1024K -always-use-fragments || exit
rm -Rf squashfs-root
mv -f $INITRAMFS.img $LIVEKITDATA/$LIVEKITNAME/boot/initrfs.img
cp -vf $THIS/bootfiles/* $LIVEKITDATA/$LIVEKITNAME/boot/

View File

@ -0,0 +1,91 @@
#!/bin/bash
rm -f /etc/fstab
rm -f /etc/mtab
rm -f /etc/apt/sources.list~
rm -Rf /etc/systemd/system/timers.target.wants
rm -f /etc/systemd/system/multi-user.target.wants/ssh.service
rm -f /etc/systemd/system/multi-user.target.wants/dnsmasq.service
rm -f /etc/ssh/ssh_host*
rm -f /var/backups/*
rm -f /var/cache/ldconfig/*
rm -f /var/cache/debconf/*
rm -f /var/cache/fontconfig/*
rm -f /var/lib/apt/extended_states
rm -f /var/lib/systemd/random-seed
rm -f /var/lib/apt/lists/deb.*
rm -Rf /root/.local/share/mc
rm -Rf /root/.cache
rm -f /root/.wget-hsts
rm -f /var/lib/dpkg/*-old
rm -f /var/log/*
rm -f /var/log/*/*
rm -f /var/log/*/*/*
rm -f /var/cache/apt/archives/*.deb
rm -f /var/cache/apt/*.bin
rm -f /var/cache/debconf/*-old
rm -f /var/lib/dhcp/dhclient.leases
rm -f /root/.bash_history
rm -f /root/.wget-hsts
rm -Rf /usr/share/doc/*
rm -Rf /usr/share/info/*
rm -f /usr/share/images/fluxbox/debian-squared.jpg
rm -Rf /usr/share/fluxbox/nls/??*
rm -Rf /usr/share/gnome/help
rm -Rf /usr/share/locale/??
rm -Rf /usr/share/locale/??_*
rm -Rf /usr/share/locale/??@*
rm -Rf /usr/share/locale/???
rm -Rf /usr/share/i18n/locales/*_*
rm -Rf /usr/share/man/??
rm -Rf /usr/share/man/*_*
rm -Rf /usr/share/icons/elementaryXubuntu-dark
rm -Rf /usr/share/icons/gnome/256x256
rm /usr/share/applications/compton.desktop
rm /usr/share/applications/debian-uxterm.desktop
rm /usr/share/applications/debian-xterm.desktop
rm /usr/share/applications/htop.desktop
rm /usr/share/applications/mc.desktop
rm /usr/share/applications/mcedit.desktop
rm /usr/share/applications/pcmanfm-desktop-pref.desktop
rm /usr/share/applications/python2.7.desktop
rm /usr/share/applications/python3.7.desktop
rm /usr/share/applications/vim.desktop
# Unzip gzipped files (man pages), so LZMA can compress 2times better.
# First we fix symlinks, then uncompress files
# $1 = search directory
uncompress_files()
{
local LINK LINE
find "$1" -type l -name "*.gz" | while read LINE; do
LINK="$(readlink "$LINE" | sed -r 's/.gz$//')"
FILE="$(echo "$LINE" | sed -r 's/.gz$//')"
ln -sfn "$LINK" "$FILE"
rm -f "$LINE"
done
find "$1" -type f -name "*.gz" | xargs -r gunzip
}
uncompress_files /etc/alternatives
uncompress_files /usr/share/man
# remove broken links
# $1 = search directory
remove_broken_links()
{
find "$1" -type l -exec test ! -e {} \; -print | xargs rm -vf
}
remove_broken_links /etc/alternatives
remove_broken_links /usr/share/man

View File

@ -0,0 +1,32 @@
#!/bin/bash
CURRENT="$(ls -1 /boot)"
apt-get update
apt-get dist-upgrade --yes
NEW="$(ls -1 /boot)"
if [ "$CURRENT" != "$NEW" ]; then
echo "It looks like your kernel has been upgraded."
echo "You should reboot and restart the build process."
exit
fi
# if kernel was upgraded, you may need to reboot
apt-get install --yes --no-install-recommends mc squashfs-tools genisoimage zip unzip psmisc net-tools \
alsa-utils man less xz-utils ca-certificates openssl acpid acpi-support-base powermgmt-base bzip2 gpart \
hdparm sdparm mdadm smartmontools dosfstools lsof htop gddrescue rsync netcat ssh gpm wireless-tools \
ntfs-3g rfkill file dnsmasq ntpdate dvd+rw-tools usb-modeswitch pm-utils wget
ln -sf bash /bin/sh
apt-get remove --yes vim* grub* debconf-i18n installation-report
CWD="$(pwd)"
cd /tmp
apt-get download acpi-support
dpkg -x acpi-support*.deb /tmp/acpisupport
cd /tmp/acpisupport
cp -aR * /
cd "$CWD"

View File

@ -15,6 +15,9 @@ apt-get install --yes --no-install-recommends \
libgl1-mesa-dri \
libglu1-mesa
# Set setuid bit on xorg binary, so it can be started by guest user
chmod u+s /usr/lib/xorg/Xorg
# use only white cursors. There were some troubles if the other cursors
# was left behind, installing gtk apps reverted the cursor from white to gray,
# so we're going to nuke it to leave only Snow cursors active.
@ -36,3 +39,4 @@ update-alternatives --set x-terminal-emulator /usr/bin/xterm
. /tmp/cleanup
savechanges /02-xorg.sb

View File

@ -26,3 +26,5 @@ Xft.hinting: true
Xft.hintstyle: hintfull
Xft.lcdfilter: lcdlegacy
Xft.rgba: rgb
XTerm*selectToClipboard: true

View File

@ -64,10 +64,10 @@ cp debian/$NAME/usr/bin/fluxbox /squashfs-root/usr/bin
# add xlunch from sources
wget -O /tmp/xlunch.tar.gz https://github.com/Tomas-M/xlunch/archive/v4.4.1.tar.gz
wget -O /tmp/xlunch.tar.gz https://github.com/Tomas-M/xlunch/archive/v4.5.3.tar.gz
cd /tmp
tar -xf xlunch.tar.gz
cd xlunch-4.4.1
cd xlunch-4.5.3
make
cp xlunch /squashfs-root/usr/bin
cp extra/gentriesquick /squashfs-root/usr/bin/xlunch_genquick

View File

@ -28,6 +28,10 @@ done
xsetroot -solid '#111111'
xsetroot -xcf /usr/share/icons/breeze_cursors/cursors/watch 37
# disable screen blanking
xset s off
xset -dpms
# volume icon in system tray. Can fail if no soundcard is detected
volumeicon &
@ -68,6 +72,11 @@ rm -f $SIGNAL2 2>/dev/null
sleep 0.1
done
touch $SIGNAL2
(sleep 1; (echo; sleep 10; echo :quit) | xlunch --window --xposition 20 --yposition -30 \
--width 195 --height 53 --noscroll --noprompt --backgroundcolor ffffff00 \
--multiple --desktop --button "/usr/share/fluxbox/styles/Slax/pixmaps/start-here.png;;0,0;fbappselect" & ) &
exec compton --sw-opti -e 0.9 --shadow-exclude 'class_g="xlunch-windowed"' --fade-exclude 'role*="fluxbox-toolbar"' --opacity-rule '70:role*="fluxbox-toolbar"' --no-fading-destroyed-argb -D 5 -c -f -l -2 -t -2 -r 0 -o 1 -z --shadow-exclude 'bounding_shaped'
) &

View File

@ -0,0 +1,83 @@
#!/bin/bash
if [ "$1" = "votecoin" ]; then
NAME="VoteCoin Wallet"
ABOUT="VoteCoin Wallet is a crypto currency wallet,
forked from ZCash, which itslef forked from Bitcoin.
It supports fully anonymous transactions and voting.
Receive free 10 VOT coins for installing the wallet.
In the future, VoteCoin will be used for decision
funding in Slax."
TMP="/tmp/votecoin.tar.gz"
EXECUTABLE="/opt/VoteCoin Wallet-linux-x64/VoteCoin Wallet"
INSTALL="wget -O $TMP 'https://votecoin.site/download.php?os=linux' && tar -xf $TMP -C /opt && rm -f $TMP && apt install --yes libxss1 libgconf-2-4 libnss3"
POSTINSTALL=""
ONLY64=true
fi
if [ "$1" = "vlc" ]; then
NAME="VLC Video Player"
ABOUT="VLC Video Player is a free and open source multimedia player
and framework that plays most multimedia files as well as DVDs,
Audio CDs, CVDs, and various streaming protocols."
EXECUTABLE="/usr/bin/vlc"
INSTALL="apt install --yes vlc"
POSTINSTALL="rm /usr/share/applications/vlc.desktop; mkdir /home/guest/.config/vlc; echo '[qt4]
qt-privacy-ask=0' > /home/guest/.config/vlc/vlcrc;"
GUEST=true
fi
if [ "$1" = "chromium" ]; then
NAME="Chromium Web Browser"
ABOUT="Chromium is a free and open source version of
the famous Chrome browser, developed by Google."
EXECUTABLE="/usr/bin/chromium"
INSTALL="apt install --yes chromium chromium-sandbox"
POSTINSTALL="rm -f /usr/share/applications/chromium.desktop"
GUEST=true
fi
shift
# ------------------------------------------------
# do not touch anything below this line
# ------------------------------------------------
if [ "$ABOUT" != "" ]; then
ABOUT="$ABOUT
"
fi
if [ "$EXECUTABLE" = "" ]; then
exit
fi
if [ ! -f "$EXECUTABLE" ]; then
if [ $(uname -m) != 'x86_64' -a "$ONLY64" = "true" ]; then
gtkdialog -i /usr/share/icons/gnome/16x16/status/dialog-warning.png -t Error -m "$NAME only works in 64bit version of Slax" -y OK
exit 1
fi
if gtkdialog -i /usr/share/icons/gnome/16x16/status/dialog-question.png -t Question -m "$ABOUT$NAME is not yet installed.
Do you like to download and install it now?" -y Yes -n No; then
xterm -ls -e bash --login -c -- "$INSTALL; $POSTINSTALL"
fi
fi
if [ -f "$EXECUTABLE" ]; then
fbstartupnotify
if [ "$GUEST" = "true" -a "$EUID" -eq 0 ]; then
xhost + >/dev/null 2>/dev/null
exec su -c "$EXECUTABLE "$@"" guest
fi
exec "$EXECUTABLE" "$@"
fi

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Some files were not shown because too many files have changed in this diff Show More