diff --git a/Slax/debian10/CHANGELOG b/Slax/debian10/CHANGELOG new file mode 100644 index 0000000..bfe8157 --- /dev/null +++ b/Slax/debian10/CHANGELOG @@ -0,0 +1,34 @@ +For more updated changelog and todo, visit +https://www.slax.org/next.php + +TODO: + + make persistent changes default when booting from writable media + (and offer "fresh start" in boot menu instead) + add @ntfs-3g support, add ext4 support for bootable device + update syslinux + add wicd as wifi configurator + make keyboard layout persistent + make xlunch refresh on start to see newly installed apps + fb keys: OnDesktop Mouse1 :MacroCmd {WindowMenu} {HideMenus} + reimplement xrandr screen resolution change, use --mode somehow + consider gsettings-desktop-schemas + add thunar or pcmanfm + review uefi support - does it work or not? don't have uefi device here + maybe consider pxe server again + use debootstrap for slax build + + +* Slax 9.3.0 + + + added wireless tools + added firmware (free and nonfree) + added contrib and nonfree repositories + fixed apt-get alias parameters handling + + + +* Slax 9.2.1 + + initial release of Slax based on Debian \ No newline at end of file diff --git a/Slax/debian10/bootfiles/bootinst.bat b/Slax/debian10/bootfiles/bootinst.bat new file mode 100644 index 0000000..545d165 --- /dev/null +++ b/Slax/debian10/bootfiles/bootinst.bat @@ -0,0 +1,101 @@ +#!/bin/sh +exec /bin/bash "$(dirname "$0")"/bootinst.sh +exec /bin/sh "$(dirname "$0")"/bootinst.sh + +@echo off +COLOR 2F +cls +echo =============================================================================== +echo. +echo ________.__ +echo / ____/^| ^| _____ ___ ___ +echo \____ \ ^| ^| \__ \ \ \/ / +echo / \^| ^|__/ __ \_^> ^< +echo /______ /^|____(____ /__/\_ \ +echo \/ \/ \/ +echo. +echo =============================================================================== +echo. + +set DISK=none +set BOOTFLAG=boot666s.tmp + +:checkPrivileges +mkdir "%windir%\AdminCheck" 2>nul +if '%errorlevel%' == '0' rmdir "%windir%\AdminCheck" & goto gotPrivileges else goto getPrivileges + +:getPrivileges +ECHO. +ECHO Administrator Rights are required +ECHO Invoking UAC for Privilege Escalation +ECHO. +runadmin.vbs %0 +goto end + +:gotPrivileges +CD /D "%~dp0" + +echo This file is used to determine current drive letter. It should be deleted. >\%BOOTFLAG% +if not exist \%BOOTFLAG% goto readOnly + +echo.|set /p=wait please +for %%d in ( C D E F G H I J K L M N O P Q R S T U V W X Y Z ) do echo.|set /p=. & if exist %%d:\%BOOTFLAG% set DISK=%%d +echo . . . . . . . . . . +del \%BOOTFLAG% +if %DISK% == none goto DiskNotFound + +wscript.exe samedisk.vbs %windir% %DISK% +if %ERRORLEVEL% == 99 goto refuseDisk + +echo Setting up boot record for %DISK%: ... + +if %OS% == Windows_NT goto setupNT +goto setup95 + +:setupNT +\slax\boot\syslinux.exe -maf -d /slax/boot/ %DISK%: +if %ERRORLEVEL% == 0 goto setupDone +goto errorFound + +:setup95 +\slax\boot\syslinux.com -maf -d /slax/boot/ %DISK%: +if %ERRORLEVEL% == 0 goto setupDone +goto errorFound + +:setupDone +echo Installation finished. +goto pauseit + +:errorFound +color 4F +echo. +echo Error installing boot loader +goto pauseit + +:refuseDisk +color 4F +echo. +echo Directory %DISK%:\slax\boot\ seems to be on the same physical disk as your Windows. +echo Installing bootloader would harm your Windows and thus is disabled. +echo Please use different drive and try again. +goto pauseit + +:readOnly +color 4F +echo. +echo You're starting this installer from a read-only media, this will not work. +goto pauseit + +:DiskNotFound +color 4F +echo. +echo Error: can't discover current drive letter + +:pauseit +if "%1" == "auto" goto end + +echo. +echo Press any key... +pause > nul + +:end diff --git a/Slax/debian10/bootfiles/bootinst.sh b/Slax/debian10/bootfiles/bootinst.sh new file mode 100644 index 0000000..b4ab2c6 --- /dev/null +++ b/Slax/debian10/bootfiles/bootinst.sh @@ -0,0 +1,154 @@ +#!/bin/sh +# +# This script will setup booting from disk (USB or harddrive) +# +# If you see this file in a text editor instead of getting it executed, +# then it is missing executable permissions (chmod). You can try to set +# exec permissions for this file by using: chmod a+x bootinst.sh +# Alternatively, you may try to run bootinst.bat file instead +# +# Scrolling down will reveal the actual code of this script. +# + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +# if we're running this from X, re-run the script in konsole or xterm +if [ "$DISPLAY" != "" ]; then + if [ "$1" != "--rex" -a "$2" != "--rex" ]; then + konsole --nofork -e /bin/sh $0 --rex 2>/dev/null || xterm -e /bin/sh $0 --rex 2>/dev/null || /bin/sh $0 --rex 2>/dev/null + exit + fi +fi + +# make sure I am root +if [ "$UID" != "0" -a "$UID" != "" ]; then + echo "" + echo "You are not root. You must run bootinst script as root." + echo "The bootinst script needs direct access to your boot device." + echo "Use sudo or kdesudo or similar wrapper to execute this." + read junk + exit 1 +fi + +# change working directory to dir from which we are started +CWD="$(pwd)" +BOOT="$(dirname "$0")" +BOOT="$(realpath "$BOOT" 2>/dev/null || echo $BOOT)" +cd "$BOOT" + +# find out device and mountpoint +PART="$(df . | tail -n 1 | tr -s " " | cut -d " " -f 1)" +DEV="$(echo "$PART" | sed -r "s:[0-9]+\$::" | sed -r "s:([0-9])[a-z]+\$:\\1:i")" #" + +# check if disk is already bootable. Mostly for Windows discovery +if [ "$(fdisk -l "$DEV" | fgrep "$DEV" | fgrep "*")" != "" ]; then + echo "" + echo "Partition $PART seems to be located on a physical disk," + echo "which is already bootable. If you continue, your drive $DEV" + echo "will boot only Slax by default." + echo "Press [Enter] to continue, or [Ctrl+C] to abort..." + read junk +fi + +ARCH=$(uname -m) +if [ "$ARCH" = "x86_64" ]; then ARCH=64; else ARCH=32; fi +EXTLINUX=extlinux.x$ARCH + +if [ ! -x ./$EXTLINUX ]; then + # extlinux is not executable. There are two possible reasons: + # either the fs is mounted with noexec, or file perms are wrong. + # Try to fix both, no fail on error yet + mount -o remount,exec $DEV + chmod a+x ./$EXTLINUX +fi + +if [ ! -x ./$EXTLINUX ]; then + # extlinux is still not executable. As a last try, copy it to .exe + # because the partition may be mounted with showexec option, from which + # we probably can't escape by remount + cp -f ./$EXTLINUX ./extlinux.exe + EXTLINUX=extlinux.exe +fi + +# install syslinux bootloader +echo "* attempting to install bootloader to $BOOT..." + +./"$EXTLINUX" --install "$BOOT" + +if [ $? -ne 0 ]; then + echo "Error installing boot loader." + echo "Read the errors above and press enter to exit..." + read junk + exit 1 +fi + +if [ "$DEV" != "$PART" ]; then + # Setup MBR on the first block + echo "* setup MBR on $DEV" + dd bs=440 count=1 conv=notrunc if="$BOOT/mbr.bin" of="$DEV" 2>/dev/null + + # Toggle bootable flags + echo "* set bootable flag for $PART" + PART="$(echo "$PART" | sed -r "s:.*[^0-9]::")" + ( + fdisk -l "$DEV" | fgrep "*" | fgrep "$DEV" | cut -d " " -f 1 \ + | sed -r "s:.*[^0-9]::" | xargs -I '{}' echo -ne "a\n{}\n" + echo a + echo $PART + echo w + ) | fdisk $DEV >/dev/null 2>&1 +fi + +echo "Boot installation finished." +echo "Press Enter..." +read junk +cd "$CWD" diff --git a/Slax/debian10/bootfiles/bootlogo.png b/Slax/debian10/bootfiles/bootlogo.png new file mode 100644 index 0000000..4a8ebbf Binary files /dev/null and b/Slax/debian10/bootfiles/bootlogo.png differ diff --git a/Slax/debian10/bootfiles/extlinux.x32 b/Slax/debian10/bootfiles/extlinux.x32 new file mode 100755 index 0000000..399f3ba Binary files /dev/null and b/Slax/debian10/bootfiles/extlinux.x32 differ diff --git a/Slax/debian10/bootfiles/extlinux.x64 b/Slax/debian10/bootfiles/extlinux.x64 new file mode 100755 index 0000000..8b5772a Binary files /dev/null and b/Slax/debian10/bootfiles/extlinux.x64 differ diff --git a/Slax/debian10/bootfiles/help.txt b/Slax/debian10/bootfiles/help.txt new file mode 100644 index 0000000..43ad58c --- /dev/null +++ b/Slax/debian10/bootfiles/help.txt @@ -0,0 +1,19 @@ + + Welcome + + If you need to edit boot command line (for advanced users), hit [Tab]. + When finished, press [Enter]. + + + Keep changes persistent + + Save all filesystem modifications to 'changes' directory and restore + those changes next time you boot. Only usable while running from a + writable media such as USB device or hard disk. + + + Copy to RAM + + Copies all data to memory during startup so you can eject the boot device. + Requires enough RAM to store all modules and to run the system. + diff --git a/Slax/debian10/bootfiles/isolinux.bin b/Slax/debian10/bootfiles/isolinux.bin new file mode 100644 index 0000000..d8dbddb Binary files /dev/null and b/Slax/debian10/bootfiles/isolinux.bin differ diff --git a/Slax/debian10/bootfiles/ldlinux.c32 b/Slax/debian10/bootfiles/ldlinux.c32 new file mode 100644 index 0000000..6186b22 Binary files /dev/null and b/Slax/debian10/bootfiles/ldlinux.c32 differ diff --git a/Slax/debian10/bootfiles/libcom32.c32 b/Slax/debian10/bootfiles/libcom32.c32 new file mode 100644 index 0000000..f9a7e43 Binary files /dev/null and b/Slax/debian10/bootfiles/libcom32.c32 differ diff --git a/Slax/debian10/bootfiles/libutil.c32 b/Slax/debian10/bootfiles/libutil.c32 new file mode 100644 index 0000000..e5105f6 Binary files /dev/null and b/Slax/debian10/bootfiles/libutil.c32 differ diff --git a/Slax/debian10/bootfiles/runadmin.vbs b/Slax/debian10/bootfiles/runadmin.vbs new file mode 100644 index 0000000..0c6974c --- /dev/null +++ b/Slax/debian10/bootfiles/runadmin.vbs @@ -0,0 +1,3 @@ +Set UAC = CreateObject("Shell.Application") +Set args = WScript.Arguments +UAC.ShellExecute args.Item(0), "", "", "runas", 1 diff --git a/Slax/debian10/bootfiles/samedisk.vbs b/Slax/debian10/bootfiles/samedisk.vbs new file mode 100644 index 0000000..b543083 --- /dev/null +++ b/Slax/debian10/bootfiles/samedisk.vbs @@ -0,0 +1,68 @@ +' This script compares two given parameters (just first letter, so you can pass in full paths as well) +' and returns exit code 99 if both disk drives are on the same physical drive +' Run it as: wscript.exe samedisk.vbs c:\ d:\ +' Author: Tomas M +' Inspired by: http://www.activexperts.com/activmonitor/windowsmanagement/adminscripts/disk/drives/ +' ------------------------------------------- + +drive1 = "" +drive2 = "" +phys1 = "" +phys2 = "" + +Set args = WScript.Arguments + +if args.Length > 0 then + drive1 = args.Item(0) +end if +if args.Length > 1 then + drive2 = args.Item(1) +end if + +if drive1 = "" then + WScript.Quit(1) +end if + +if drive2 = "" then + WScript.Quit(2) +end if + + +ComputerName = "." +Set wmiServices = GetObject _ + ("winmgmts:{impersonationLevel=Impersonate}!//" & ComputerName) +Set wmiDiskDrives = wmiServices.ExecQuery _ + ("SELECT Caption, DeviceID FROM Win32_DiskDrive") + +For Each wmiDiskDrive In wmiDiskDrives + + strEscapedDeviceID = _ + Replace(wmiDiskDrive.DeviceID, "\", "\\", 1, -1, vbTextCompare) + Set wmiDiskPartitions = wmiServices.ExecQuery _ + ("ASSOCIATORS OF {Win32_DiskDrive.DeviceID=""" & _ + strEscapedDeviceID & """} WHERE " & _ + "AssocClass = Win32_DiskDriveToDiskPartition") + + For Each wmiDiskPartition In wmiDiskPartitions + Set wmiLogicalDisks = wmiServices.ExecQuery _ + ("ASSOCIATORS OF {Win32_DiskPartition.DeviceID=""" & _ + wmiDiskPartition.DeviceID & """} WHERE " & _ + "AssocClass = Win32_LogicalDiskToPartition") + + For Each wmiLogicalDisk In wmiLogicalDisks + + if UCase(Left(drive1,1)) = UCase(Left(wmiLogicalDisk.DeviceID,1)) then + phys1=wmiDiskDrive.DeviceID + end if + + if UCase(Left(drive2,1)) = UCase(Left(wmiLogicalDisk.DeviceID,1)) then + phys2=wmiDiskDrive.DeviceID + end if + + Next + Next +Next + +if phys1 = phys2 then + WScript.Quit(99) +end if diff --git a/Slax/debian10/bootfiles/syslinux.cfg b/Slax/debian10/bootfiles/syslinux.cfg new file mode 100644 index 0000000..14285c2 --- /dev/null +++ b/Slax/debian10/bootfiles/syslinux.cfg @@ -0,0 +1,42 @@ +UI /slax/boot/vesamenu.c32 + +PROMPT 0 +TIMEOUT 40 + +MENU CLEAR +MENU HIDDEN +MENU HIDDENKEY Enter default +MENU BACKGROUND /slax/boot/bootlogo.png + +MENU WIDTH 80 +MENU MARGIN 20 +MENU ROWS 5 +MENU TABMSGROW 9 +MENU CMDLINEROW 9 +MENU HSHIFT 0 +MENU VSHIFT 19 + +MENU COLOR BORDER 30;40 #00000000 #00000000 none +MENU COLOR SEL 47;30 #FF000000 #FFFFFFFF none +MENU COLOR UNSEL 37;40 #FFFFFFFF #FF000000 none +MENU COLOR TABMSG 32;40 #FF60CA00 #FF000000 none + +F1 help.txt /slax/boot/zblack.png + +MENU AUTOBOOT Press Esc for options, automatic boot in # second{,s} ... +MENU TABMSG [F1] help [Tab] cmdline > + +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 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 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 consoleblank=0 slax.flags=toram diff --git a/Slax/debian10/bootfiles/vesamenu.c32 b/Slax/debian10/bootfiles/vesamenu.c32 new file mode 100644 index 0000000..c423245 Binary files /dev/null and b/Slax/debian10/bootfiles/vesamenu.c32 differ diff --git a/Slax/debian10/bootfiles/zblack.png b/Slax/debian10/bootfiles/zblack.png new file mode 100644 index 0000000..be1a21d Binary files /dev/null and b/Slax/debian10/bootfiles/zblack.png differ diff --git a/Slax/debian10/build b/Slax/debian10/build new file mode 100755 index 0000000..e7daa99 --- /dev/null +++ b/Slax/debian10/build @@ -0,0 +1,26 @@ +#!/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 + +mv -f $INITRAMFS.img $LIVEKITDATA/$LIVEKITNAME/boot/initrfs.img +cp -vf $THIS/bootfiles/* $LIVEKITDATA/$LIVEKITNAME/boot/ diff --git a/Slax/debian10/cleanup b/Slax/debian10/cleanup new file mode 100644 index 0000000..139adfc --- /dev/null +++ b/Slax/debian10/cleanup @@ -0,0 +1,90 @@ +#!/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/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 + diff --git a/Slax/debian10/copy b/Slax/debian10/copy new file mode 100644 index 0000000..7a0adaa --- /dev/null +++ b/Slax/debian10/copy @@ -0,0 +1,3 @@ +#!/bin/bash + +(cd rootcopy && cp --parents -afr * /) diff --git a/Slax/debian10/install b/Slax/debian10/install new file mode 100644 index 0000000..3cbfda8 --- /dev/null +++ b/Slax/debian10/install @@ -0,0 +1,22 @@ +#!/bin/bash + +apt-get update +apt-get dist-upgrade --yes + +# 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 + +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" diff --git a/Slax/debian10/modules/01-firmware/build b/Slax/debian10/modules/01-firmware/build new file mode 100755 index 0000000..9093474 --- /dev/null +++ b/Slax/debian10/modules/01-firmware/build @@ -0,0 +1,21 @@ +#!/bin/bash + +apt update +apt install --yes --no-install-recommends \ + firmware-linux-free \ + firmware-linux-nonfree \ + firmware-atheros \ + firmware-iwlwifi \ + firmware-zd1211 \ + firmware-realtek \ + firmware-bnx2 \ + firmware-brcm80211 \ + firmware-cavium \ + firmware-ipw2x00 \ + firmware-libertas \ + firmware-ti-connectivity \ + firmware-b43-installer + +. ../../cleanup + +savechanges /01-firmware.sb diff --git a/Slax/debian10/modules/02-xorg/build b/Slax/debian10/modules/02-xorg/build new file mode 100755 index 0000000..4bbfc68 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/build @@ -0,0 +1,42 @@ +#!/bin/bash + +apt-get update +apt-get install --yes --no-install-recommends \ + xserver-xorg xserver-xorg-video-all xserver-xorg-video-intel \ + xinit \ + xterm \ + blackbox \ + libxcursor1 \ + breeze-cursor-theme \ + x11-utils \ + wmctrl \ + xdotool \ + libdrm-intel1 \ + 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. +rm -Rf /usr/share/icons/breeze_cursors +mv /usr/share/icons/Breeze_Snow /usr/share/icons/breeze_cursors + +(cd rootcopy && cp --parents -afr * /) + +cp ../../cleanup /tmp +# install x11 server utils, apt-get would add cpp dependency, bullshit! +cd /tmp +apt-get download x11-xserver-utils +dpkg -x x11-xserver-utils*.deb /tmp/x11utils +cd /tmp/x11utils +cp -aR * / + +update-alternatives --set x-terminal-emulator /usr/bin/xterm + +. /tmp/cleanup + +savechanges /02-xorg.sb + diff --git a/Slax/debian10/modules/02-xorg/rootcopy/etc/systemd/system/display-manager.service b/Slax/debian10/modules/02-xorg/rootcopy/etc/systemd/system/display-manager.service new file mode 120000 index 0000000..d31ece8 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/etc/systemd/system/display-manager.service @@ -0,0 +1 @@ +/lib/systemd/system/xorg.service \ No newline at end of file diff --git a/Slax/debian10/modules/02-xorg/rootcopy/lib/systemd/system/xorg.service b/Slax/debian10/modules/02-xorg/rootcopy/lib/systemd/system/xorg.service new file mode 100644 index 0000000..98a2f31 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/lib/systemd/system/xorg.service @@ -0,0 +1,7 @@ +[Unit] +Description=X-Window +ConditionKernelCommandLine=!text +After=systemd-user-sessions.service + +[Service] +ExecStart=/bin/su --login -c "/usr/bin/startx -- :0 vt7 -ac -nolisten tcp" diff --git a/Slax/debian10/modules/02-xorg/rootcopy/root/.Xresources b/Slax/debian10/modules/02-xorg/rootcopy/root/.Xresources new file mode 100644 index 0000000..2d6d0a3 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/root/.Xresources @@ -0,0 +1,30 @@ +! this are Xresources to make xterm look good +! put into ~/.Xresources +! after changing contents, run xrdb -merge .Xresources +! gentoo has a bug so that it doesnt read it when X starts, so add above +! command to /etc/xfce4/xinitrc (top) and be happy. + +XTerm*foreground: white +XTerm*background: rgb:22/22/22 +XTerm*cursorColor: rgb:00/ff/00 +XTerm*borderColor: black +XTerm*scrollColor: black +XTerm*visualBell: true +XTerm*saveLines: 50000 +XTerm*allowSendEvents: True +XTerm*sessionMgt: false +XTerm*rightScrollBar: true +XTerm*eightBitInput: false +XTerm*faceName:fixed:size=11 +XTerm*boldFont:fixed:size=11 +XTerm*activeIcon: true +XTerm*iconPixmap: /usr/share/icons/locolor/16x16/apps/xterm.xbm +XTerm*fullscreen: never + +Xft.antialias: true +Xft.hinting: true +Xft.hintstyle: hintfull +Xft.lcdfilter: lcdlegacy +Xft.rgba: rgb + +XTerm*selectToClipboard: true diff --git a/Slax/debian10/modules/02-xorg/rootcopy/root/.blackbox-menu b/Slax/debian10/modules/02-xorg/rootcopy/root/.blackbox-menu new file mode 100644 index 0000000..df8a870 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/root/.blackbox-menu @@ -0,0 +1,5 @@ +[begin] ( Menu ) + [exec] (Terminal) { xterm -ls -title Terminal } + [exec] (Web browser) { chromium } + [exit] (Exit) +[end] diff --git a/Slax/debian10/modules/02-xorg/rootcopy/root/.blackboxrc b/Slax/debian10/modules/02-xorg/rootcopy/root/.blackboxrc new file mode 100644 index 0000000..a39f965 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/root/.blackboxrc @@ -0,0 +1,6 @@ +session.screen0.toolbar.widthPercent: 100 +session.screen0.strftimeFormat: %H:%M +session.edgeSnapThreshold: 10 +session.menuFile: /root/.blackbox-menu +session.styleFile: /usr/share/blackbox/styles/Slax +session.changeWorkspaceWithMouseWheel: False diff --git a/Slax/debian10/modules/02-xorg/rootcopy/usr/share/blackbox/styles/Slax b/Slax/debian10/modules/02-xorg/rootcopy/usr/share/blackbox/styles/Slax new file mode 100644 index 0000000..aefe9ef --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/usr/share/blackbox/styles/Slax @@ -0,0 +1,79 @@ +*.appearance: flat solid + +*button.pressed.appearance: sunken solid +*button.pressed.backgroundColor: rgb:69/c1/f1 +*button.appearance: parentrelative + +*.focus.backgroundColor: rgb:69/c1/f1 +*.unfocus.backgroundColor: rgb:28/28/28 + +*font: Bitstream Vera Sans-9 + +menu.title.appearance: flat solid +menu.title.backgroundColor: rgb:69/c1/f1 +menu.title.textColor: rgb:28/28/28 +menu.title.alignment: center +menu.title.marginWidth: 6 + +menu.frame.appearance: flat gradient border +menu.frame.textColor: rgb:28/28/28 +menu.frame.foregroundColor: grey40 +menu.frame.borderColor: rgb:69/c1/f1 +menu.frame.borderWidth: 6 +menu.frame.disabledColor: darkgrey +menu.frame.alignment: left +menu.frame.marginWidth: 2 + +menu.active.appearance: flat solid border +menu.active.backgroundColor: rgb:69/c1/f1 +menu.active.borderWidth: 4 +menu.active.borderColor: rgb:69/c1/f1 +menu.active.textColor: rgb:38/38/38 + +rootCommand: bsetroot -solid rgb:77/90/aa + +slit.appearance: raised solid +slit.backgroundColor: rgb:77/90/aa +slit.marginWidth: 3 + +toolbar.appearance: flat gradient border +toolbar.alignment: center +toolbar*textColor: rgb:28/28/28 +toolbar.label.appearance: parentrelative +toolbar.clock.appearance: parentrelative +toolbar.windowLabel.appearance: parentrelative + +window.title.focus.appearance: flat solid +window.title.focus.backgroundColor: rgb:69/c1/f1 +window.title.unfocus.appearance: flat solid +window.title.unfocus.backgroundColor: rgb:d6/d6/d6 +window.title.marginWidth: 5 + +window.label.focus.appearance: parentrelative +window.label.focus.textColor: rgb:28/28/28 +window.label.unfocus.appearance: parentrelative +window.label.unfocus.textColor: rgb:28/28/28 +window.label.marginWidth: 1 + +window.button.focus.appearance: parentrelative +window.button.focus.foregroundColor: white + +window.button.unfocus.appearance: parentrelative +window.button.unfocus.foregroundColor: darkgrey + +window.handle.focus.appearance: flat solid +window.handle.focus.backgroundColor: rgb:69/c1/f1 +window.handle.unfocus.appearance: flat solid +window.handle.unfocus.backgroundColor: rgb:d6/d6/d6 + +window.grip.focus.appearance: flat solid +window.grip.focus.backgroundColor: rgb:69/c1/f1 +window.grip.unfocus.appearance: flat solid +window.grip.unfocus.backgroundColor: rgb:d6/d6/d6 + +window*alignment: center + +window.handleHeight: 7 +window.frame.borderWidth: 7 +window.frame.focus.borderColor: rgb:69/c1/f1 +window.frame.unfocus.borderColor: rgb:d6/d6/d6 diff --git a/Slax/debian10/modules/02-xorg/rootcopy/usr/share/icons/locolor/16x16/apps/xterm.xbm b/Slax/debian10/modules/02-xorg/rootcopy/usr/share/icons/locolor/16x16/apps/xterm.xbm new file mode 100644 index 0000000..5cf3968 --- /dev/null +++ b/Slax/debian10/modules/02-xorg/rootcopy/usr/share/icons/locolor/16x16/apps/xterm.xbm @@ -0,0 +1,6 @@ +#define command2_width 16 +#define command2_height 16 +static unsigned char command2_bits[] = { + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xe7, 0xff, 0xcf, 0xff, + 0x9f, 0xff, 0x3f, 0xff, 0x3f, 0xff, 0x9f, 0xff, 0xcf, 0xff, 0xe7, 0xc1, + 0xf7, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; diff --git a/Slax/debian10/modules/03-desktop/build b/Slax/debian10/modules/03-desktop/build new file mode 100755 index 0000000..e2c060f --- /dev/null +++ b/Slax/debian10/modules/03-desktop/build @@ -0,0 +1,117 @@ +#!/bin/bash + +CWD=$(dirname $(readlink -f $0)) + +NAME=fluxbox +VERSION=1.3.5 + +# first install stock version + +apt-get update +apt-get install --no-install-recommends --yes \ + $NAME \ + feh \ + compton \ + volumeicon-alsa \ + murrine-themes \ + libnotify4 \ + scrot + +. ../../cleanup + +(cd rootcopy && cp --parents -afr * /) +chown guest.users /home/guest +chown -R guest.users /home/guest/.gtkrc-2.0 +chown -R guest.users /home/guest/.config + +savechanges /$NAME-stock.sb + +cd / +unsquashfs /$NAME-stock.sb + +# create user directories +for dir in Desktop Documents Downloads Music Pictures Public Templates Videos; do + mkdir -p /squashfs-root/home/guest/$dir + mkdir -p /squashfs-root/root/$dir +done +chown -R guest.users /squashfs-root/home/guest + +# then, we want to patch it to implement window resizing! +# so we will recompile whole package + +REBUILD=/tmp/$NAME-rebuild-$$ + +apt-get update +apt-get --yes build-dep $NAME + +mkdir -p $REBUILD +cd $REBUILD + +apt-get source $NAME + +cd $NAME-$VERSION + +cat $CWD/patches/fluxbox-slax.diff > debian/patches/fluxbox-slax.diff +echo fluxbox-slax.diff >> debian/patches/series + +dpkg-buildpackage -us -uc + +rm -Rf debian/$NAME/DEBIAN +rm -Rf debian/$NAME/usr/share/doc +rm -Rf debian/$NAME/usr/share/images + +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.5.3.tar.gz +cd /tmp +tar -xf xlunch.tar.gz +cd xlunch-4.5.3 +make +cp xlunch /squashfs-root/usr/bin +cp extra/gentriesquick /squashfs-root/usr/bin/xlunch_genquick +mkdir -p /squashfs-root/usr/share/icons/hicolor/48x48/apps/ +cp extra/ghost.png /squashfs-root/usr/share/icons/hicolor/48x48/apps/xlunch_ghost.png + +# add tray icon launcher +wget -O /tmp/systrayiconlauncher.tar.gz https://github.com/Tomas-M/SystrayIconLauncher/archive/master.tar.gz +cd /tmp +tar -xf systrayiconlauncher.tar.gz +cd SystrayIconLauncher-master +apt-get install --yes libgtk2.0-dev +make +cp systrayicon /squashfs-root/usr/bin + + +# add gtkdialog +wget -O /tmp/gtkdialog.tar.gz https://github.com/Tomas-M/GTKdialog/archive/master.tar.gz +cd /tmp +tar -xf gtkdialog.tar.gz +cd GTKdialog-master +make +cp gtkdialog /squashfs-root/usr/bin + + +# battery icon app +cd /tmp +wget https://github.com/valr/cbatticon/archive/1.6.7.tar.gz +tar -xf 1.6.7.tar.gz +cd cbatticon-1.6.7 +cp -R /usr/include/glib-2.0/* /usr/include +cp -R /usr/include/gtk-2.0/* /usr/include +apt install --yes libnotify-dev +sed -i "s/WITH_GTK3 = 1/WITH_GTK3 = 0/" Makefile +CFLAGS="-O2 \ +-I/usr/lib/x86_64-linux-gnu/glib-2.0/include/ \ +-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include/ \ +-I/usr/include/gdk-pixbuf-2.0/ \ +-I/usr/include/atk-1.0/ \ +-I/usr/include/cairo \ +-I/usr/include/pango-1.0 \ +-I/usr/include/glib-2.0 \ +-I/usr/include/gtk-2.0" \ +make +cp cbatticon /squashfs-root/usr/bin + +dir2sb /squashfs-root /03-desktop.sb diff --git a/Slax/debian10/modules/03-desktop/patches/fluxbox-slax.diff b/Slax/debian10/modules/03-desktop/patches/fluxbox-slax.diff new file mode 100644 index 0000000..e76174e --- /dev/null +++ b/Slax/debian10/modules/03-desktop/patches/fluxbox-slax.diff @@ -0,0 +1,97 @@ +--- a/src/Window.cc 2013-02-13 05:04:05.000000000 -0500 ++++ b/src/Window.cc 2017-11-05 17:31:37.516503305 -0500 +@@ -2745,6 +2745,14 @@ + m_button_grab_x = x - frame().x() - frame().window().borderWidth(); + m_button_grab_y = y - frame().y() - frame().window().borderWidth(); + ++ // If mouse clicked on the border, start window resize instead of move ++ if (m_button_grab_x <= 0 || m_button_grab_x >= (int)frame().window().width() ++ || m_button_grab_y >= (int)frame().window().height() ) { ++ ReferenceCorner dir = getResizeDirection(m_button_grab_x,m_button_grab_y,EDGEORCORNERRESIZE,frame().window().borderWidth(),frame().window().borderWidth()); ++ startResizing(m_button_grab_x, m_button_grab_y, dir); ++ return; ++ } ++ + moving = true; + + Fluxbox *fluxbox = Fluxbox::instance(); +@@ -2752,7 +2760,7 @@ + // freely map and unmap the window we're moving. + grabPointer(screen().rootWindow().window(), False, ButtonMotionMask | + ButtonReleaseMask, GrabModeAsync, GrabModeAsync, +- screen().rootWindow().window(), frame().theme()->moveCursor(), CurrentTime); ++ screen().rootWindow().window(), None, CurrentTime); + + if (menu().isVisible()) + menu().hide(); +--- a/src/FbTk/FbDrawable.hh ++++ b/src/FbTk/FbDrawable.hh +@@ -52,7 +52,8 @@ public: + LEFT, + RIGHT, + UP, +- DOWN ++ DOWN, ++ MENU + }; + + // x, y, width and height define a space within which we're drawing a triangle +--- a/src/ToolFactory.cc 2013-02-13 05:04:05.000000000 -0500 ++++ b/src/ToolFactory.cc 2017-10-31 12:11:20.000000000 -0400 +@@ -101,6 +101,8 @@ + cmd_str += " (workspace=[current])"; + } + ++ if (name.find("menu") != std::string::npos) cmd_str = "Exec fbappselect"; ++ + FbTk::RefCount > cmd(FbTk::CommandParser::instance().parse(cmd_str)); + if (cmd == 0) // we need a command + return 0; +@@ -110,6 +112,9 @@ + if (name.find("prev") != std::string::npos) + arrow_type = FbTk::FbDrawable::LEFT; + ++ if (name.find("menu") != std::string::npos) ++ arrow_type = FbTk::FbDrawable::MENU; ++ + ArrowButton *win = new ArrowButton(arrow_type, parent, + 0, 0, + button_size, button_size); +--- a/src/FbTk/FbDrawable.cc 2017-10-19 06:06:08.000000000 -0400 ++++ a/src/FbTk/FbDrawable.cc 2017-10-19 06:06:57.013131070 -0400 +@@ -96,7 +96,7 @@ + if (drawable() == 0 || gc == 0 || width == 0 || height == 0) + return; + +- XPoint pts[3]; ++ XPoint pts[4]; + + if (scale < 100) scale = 100; // not bigger than the space allowed + else if (scale > 10000) scale = 10000; // not too small... +@@ -115,6 +115,26 @@ + } + + switch (type) { ++ case FbTk::FbDrawable::MENU: ++ { ++ int s=7; int m=2; int d=2; int sh=-1; //size margin distance ++ pts[0].x=m+sh; pts[0].y=m+sh; pts[1].x=m+s+sh; pts[1].y=m+sh; ++ pts[2].x=m+s+sh; pts[2].y=m+s+sh; pts[3].x=m+sh; pts[3].y=m+s+sh; ++ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin); ++ ++ pts[0].x=m+s+d+sh; pts[0].y=m+sh; pts[1].x=m+s+d+s+sh; pts[1].y=m+sh; ++ pts[2].x=m+s+d+s+sh; pts[2].y=m+s+sh; pts[3].x=m+s+d+sh; pts[3].y=m+s+sh; ++ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin); ++ ++ pts[0].x=m+sh; pts[0].y=m+s+d+sh; pts[1].x=m+s+sh; pts[1].y=m+s+d+sh; ++ pts[2].x=m+s+sh; pts[2].y=m+s+d+s+sh; pts[3].x=m+sh; pts[3].y=m+s+d+s+sh; ++ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin); ++ ++ pts[0].x=m+s+d+sh; pts[0].y=m+s+d+sh; pts[1].x=m+s+d+s+sh; pts[1].y=m+s+d+sh; ++ pts[2].x=m+s+d+s+sh; pts[2].y=m+s+d+s+sh; pts[3].x=m+s+d+sh; pts[3].y=m+s+d+s+sh; ++ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin); ++ return; ++ } + case FbTk::FbDrawable::LEFT: + // start at the tip + pts[0].x = (width / 2) - (ax / 2); pts[0].y = height / 2; diff --git a/Slax/debian10/modules/03-desktop/rootcopy/etc/xlunch/entries.dsv b/Slax/debian10/modules/03-desktop/rootcopy/etc/xlunch/entries.dsv new file mode 100644 index 0000000..c5bce20 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/etc/xlunch/entries.dsv @@ -0,0 +1,4 @@ +Terminal;/usr/share/icons/hicolor/128x128/apps/terminal.png;xterm -title Terminal +Web Browser;/usr/share/icons/hicolor/128x128/apps/chromium.png;chromium +Text Editor;/usr/share/icons/hicolor/128x128/apps/editor.png;leafpad +Calculator;/usr/share/icons/hicolor/128x128/apps/calculator.png;qalculate diff --git a/Slax/debian10/modules/03-desktop/rootcopy/etc/xlunch/logout.dsv b/Slax/debian10/modules/03-desktop/rootcopy/etc/xlunch/logout.dsv new file mode 100644 index 0000000..40a9f82 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/etc/xlunch/logout.dsv @@ -0,0 +1,3 @@ +Logout;/usr/share/icons/hicolor/128x128/actions/logout.png;logout +Restart;/usr/share/icons/hicolor/128x128/actions/restart.png;restart +Shut down;/usr/share/icons/hicolor/128x128/actions/shutdown.png;shutdown diff --git a/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.config/chromium/Default/Preferences b/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.config/chromium/Default/Preferences new file mode 100644 index 0000000..5bfddb0 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.config/chromium/Default/Preferences @@ -0,0 +1,38 @@ +{ + "AudioCaptureAllowed": false, + "account_id_migration_state": 2, + "account_tracker_service_last_update": "13154004704520013", + "alternate_error_pages": { + "enabled": false + }, + "bookmark_bar": { + "show_on_all_tabs": false + }, + "browser": { + "check_default_browser": false, + "has_seen_welcome_page": true, + "show_home_button": false, + "window_placement": { + "bottom": 10, + "left": 10, + "maximized": true, + "right": 10, + "top": 10 + } + }, + "extensions": { + "theme": { + "use_system": true + } + }, + "ntp": { + "most_visited_blacklist": { + "c8e0afd1da1d9e29511240861f795a5a": null, + "eacc8c3ad0b50bd698ef8752d5ee24b6": null + } + }, + "safebrowsing": { + "enabled": false, + "scout_group_selected": true + } +} \ No newline at end of file diff --git a/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.config/chromium/First Run b/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.config/chromium/First Run new file mode 100644 index 0000000..e69de29 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.gtkrc-2.0 b/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.gtkrc-2.0 new file mode 100644 index 0000000..96f0cb2 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/home/guest/.gtkrc-2.0 @@ -0,0 +1 @@ +include "/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc" diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.config/volumeicon/volumeicon b/Slax/debian10/modules/03-desktop/rootcopy/root/.config/volumeicon/volumeicon new file mode 100644 index 0000000..80e3cc8 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.config/volumeicon/volumeicon @@ -0,0 +1,19 @@ +[StatusIcon] +stepsize=5 +lmb_slider=false +mmb_mute=false +use_horizontal_slider=false +show_sound_level=false +onclick=xterm -e 'alsamixer' +theme=White Gnome + +[Hotkeys] +up_enabled=true +down_enabled=true +mute_enabled=true +up=XF86AudioRaiseVolume +down=XF86AudioLowerVolume +mute=XF86AudioMute + +[Alsa] +card=default diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.config/xarchiver/xarchiverrc b/Slax/debian10/modules/03-desktop/rootcopy/root/.config/xarchiver/xarchiverrc new file mode 100644 index 0000000..f65e2a5 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.config/xarchiver/xarchiverrc @@ -0,0 +1,20 @@ +[xarchiver] +preferred_format=0 +confirm_deletion=true +sort_filename_content=false +store_output=false +icon_size=0 +show_archive_comment=false +show_sidebar=false +show_location_bar=false +preferred_temp_dir=/tmp +allow_sub_dir=0 +overwrite=false +full_path=true +touch=false +freshen=false +update=false +store_path=false +recurse=true +solid_archive=false +remove_files=false diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/apps b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/apps new file mode 100644 index 0000000..347fd3c --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/apps @@ -0,0 +1,18 @@ +[app] (name=fbrun) + [Position] (WINCENTER) {0 0} + [Layer] {2} +[end] + +[app] (name=gtkdialog) + [Position] (WINCENTER) {0 0} + [Layer] {2} +[end] + +[app] (name=xlunch) + [DECO] {NONE} + [IconHidden] {yes} +[end] + +[app] (name=xterm) {1} + [Position] (WINCENTER) {0 0} +[end] diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/fbrun_history b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/fbrun_history new file mode 100644 index 0000000..e69de29 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/init b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/init new file mode 100644 index 0000000..66de046 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/init @@ -0,0 +1,76 @@ +session.screen0.slit.maxOver: false +session.screen0.slit.placement: TopLeft +session.screen0.slit.layer: Dock +session.screen0.slit.onhead: 0 +session.screen0.slit.acceptKdeDockapps: true +session.screen0.slit.alpha: 255 +session.screen0.slit.autoHide: false +session.screen0.menu.alpha: 255 +session.screen0.clientMenu.usePixmap: true +session.screen0.tab.placement: TopLeft +session.screen0.tab.width: 64 +session.screen0.toolbar.maxOver: false +session.screen0.toolbar.tools: RootMenu, iconbar, systemtray, clock +session.screen0.toolbar.autoHide: false +session.screen0.toolbar.widthPercent: 100 +session.screen0.toolbar.alpha: 255 +session.screen0.toolbar.visible: true +session.screen0.toolbar.placement: BottomCenter +session.screen0.toolbar.layer: Dock +session.screen0.toolbar.height: 0 +session.screen0.toolbar.onhead: 1 +session.screen0.tabs.usePixmap: true +session.screen0.tabs.maxOver: true +session.screen0.tabs.intitlebar: true +session.screen0.window.focus.alpha: 255 +session.screen0.window.unfocus.alpha: 255 +session.screen0.iconbar.usePixmap: true +session.screen0.iconbar.alignment: Left +session.screen0.iconbar.iconTextPadding: 10 +session.screen0.iconbar.mode: {static groups} (workspace) +session.screen0.iconbar.iconWidth: 128 +session.screen0.titlebar.left: +session.screen0.titlebar.right: Minimize Maximize Close +session.screen0.clickRaises: true +session.screen0.maxIgnoreIncrement: false +session.screen0.workspacewarping: true +session.screen0.colPlacementDirection: TopToBottom +session.screen0.maxDisableMove: false +session.screen0.rowPlacementDirection: LeftToRight +session.screen0.focusNewWindows: true +session.screen0.autoRaise: true +session.screen0.opaqueMove: true +session.screen0.maxDisableResize: false +session.screen0.tabFocusModel: ClickToTabFocus +session.screen0.tooltipDelay: 500 +session.screen0.fullMaximization: false +session.screen0.noFocusWhileTypingDelay: 0 +session.screen0.strftimeFormat: %H:%M +session.screen0.workspaces: 4 +session.screen0.allowRemoteActions: false +session.screen0.focusModel: ClickFocus +session.screen0.windowMenu: /root/.fluxbox/windowmenu +session.screen0.workspaceNames: Workspace 1 Ctrl+F1,Workspace 2 Ctrl+F2,Workspace 3 Ctrl+F3,Workspace 4 Ctrl+F4, +session.screen0.edgeSnapThreshold: 10 +session.screen0.showwindowposition: false +session.screen0.defaultDeco: NORMAL +session.screen0.menuDelay: 200 +session.screen0.windowPlacement: RowMinOverlapPlacement +session.screen0.focusSameHead: false +session.screen0.workspacewarping: false +session.keyFile: ~/.fluxbox/keys +session.menuFile: ~/.fluxbox/menu +session.styleFile: /usr/share/fluxbox/styles/Slax +session.colorsPerChannel: 4 +session.forcePseudoTransparency: true +session.ignoreBorder: false +session.doubleClickInterval: 250 +session.appsFile: /root/.fluxbox/apps +session.tabPadding: 0 +session.cacheLife: 5 +session.cacheMax: 200 +session.styleOverlay: /root/.fluxbox/overlay +session.autoRaiseDelay: 250 +session.slitlistFile: /root/.fluxbox/slitlist +session.tabsAttachArea: Window +session.configVersion: 13 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/kblayout b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/kblayout new file mode 100644 index 0000000..c574d07 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/kblayout @@ -0,0 +1 @@ +en diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/keys b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/keys new file mode 100644 index 0000000..fd2b8c1 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/keys @@ -0,0 +1,139 @@ +# click on the desktop to get menus +OnDesktop Mouse1 :MacroCmd {WindowMenu} {HideMenus} +OnDesktop Mouse2 :WorkspaceMenu +OnDesktop Mouse3 :RootMenu + +# scroll on the desktop to change workspaces +#OnDesktop Mouse4 :PrevWorkspace +#OnDesktop Mouse5 :NextWorkspace + +# scroll on the toolbar to change current window +#OnToolbar Mouse4 :PrevWindow {static groups} (iconhidden=no) +#OnToolbar Mouse5 :NextWindow {static groups} (iconhidden=no) + +# alt + left/right click to move/resize a window +OnWindow Mod1 Mouse1 :MacroCmd {Raise} {Focus} {StartMoving} +OnWindowBorder Move1 :StartMoving + +OnWindow Mod1 Mouse3 :MacroCmd {Raise} {Focus} {StartResizing NearestCorner} +OnLeftGrip Move1 :StartResizing bottomleft +OnRightGrip Move1 :StartResizing bottomright + +# alt + middle click to lower the window +OnWindow Mod1 Mouse2 :Lower + +# control-click a window's titlebar and drag to attach windows +OnTitlebar Control Mouse1 :StartTabbing + +# double click on the titlebar to shade +OnTitlebar Double Mouse1 :Maximize + +# left click on the titlebar to move the window +OnTitlebar Mouse1 :MacroCmd {Raise} {Focus} {ActivateTab} {StartMoving} +OnTitlebar Move1 :StartMoving + +# middle click on the titlebar to lower +OnTitlebar Mouse2 :Lower + +# right click on the titlebar for a menu of options +OnTitlebar Mouse3 :WindowMenu + +# alt-tab +Mod1 Tab :NextWindow {groups} (workspace=[current]) +Mod1 Shift Tab :PrevWindow {groups} (workspace=[current]) + +# cycle through tabs in the current window +Mod4 Tab :NextTab +Mod4 Shift Tab :PrevTab + +# go to a specific tab in the current window +Mod4 1 :Tab 1 +Mod4 2 :Tab 2 +Mod4 3 :Tab 3 +Mod4 4 :Tab 4 +Mod4 5 :Tab 5 +Mod4 6 :Tab 6 +Mod4 7 :Tab 7 +Mod4 8 :Tab 8 +Mod4 9 :Tab 9 + +# open a terminal +Mod1 F1 :Exec xterm + +# open a dialog to run programs +Mod1 F2 :Exec fbappselect + +# volume settings, using common keycodes +# if these don't work, use xev to find out your real keycodes +176 :Exec amixer sset Master,0 1+ +174 :Exec amixer sset Master,0 1- +160 :Exec amixer sset Master,0 toggle + +# current window commands +Mod1 F4 :Close +Mod1 F5 :Kill +Mod1 F9 :Minimize +Mod1 F10 :Maximize +Mod1 F11 :Fullscreen + +# open the window menu +Mod1 space :WindowMenu + +# exit fluxbox +Control Mod1 Delete :Exit + +# change to previous/next workspace +Control Mod1 Left :PrevWorkspace +Control Mod1 Right :NextWorkspace + +# send the current window to previous/next workspace +Mod4 Left :SendToPrevWorkspace +Mod4 Right :SendToNextWorkspace + +# send the current window and follow it to previous/next workspace +Control Mod4 Left :TakeToPrevWorkspace +Control Mod4 Right :TakeToNextWorkspace + +# change to a specific workspace +Control F1 :Workspace 1 +Control F2 :Workspace 2 +Control F3 :Workspace 3 +Control F4 :Workspace 4 +Control F5 :Workspace 5 +Control F6 :Workspace 6 +Control F7 :Workspace 7 +Control F8 :Workspace 8 +Control F9 :Workspace 9 +Control F10 :Workspace 10 +Control F11 :Workspace 11 +Control F12 :Workspace 12 + +# send the current window to a specific workspace +Mod4 F1 :SendToWorkspace 1 +Mod4 F2 :SendToWorkspace 2 +Mod4 F3 :SendToWorkspace 3 +Mod4 F4 :SendToWorkspace 4 +Mod4 F5 :SendToWorkspace 5 +Mod4 F6 :SendToWorkspace 6 +Mod4 F7 :SendToWorkspace 7 +Mod4 F8 :SendToWorkspace 8 +Mod4 F9 :SendToWorkspace 9 +Mod4 F10 :SendToWorkspace 10 +Mod4 F11 :SendToWorkspace 11 +Mod4 F12 :SendToWorkspace 12 + +# send the current window and change to a specific workspace +Control Mod4 F1 :TakeToWorkspace 1 +Control Mod4 F2 :TakeToWorkspace 2 +Control Mod4 F3 :TakeToWorkspace 3 +Control Mod4 F4 :TakeToWorkspace 4 +Control Mod4 F5 :TakeToWorkspace 5 +Control Mod4 F6 :TakeToWorkspace 6 +Control Mod4 F7 :TakeToWorkspace 7 +Control Mod4 F8 :TakeToWorkspace 8 +Control Mod4 F9 :TakeToWorkspace 9 +Control Mod4 F10 :TakeToWorkspace 10 +Control Mod4 F11 :TakeToWorkspace 11 +Control Mod4 F12 :TakeToWorkspace 12 + +Print :Exec fbprintscreen diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/lastwallpaper b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/lastwallpaper new file mode 100644 index 0000000..686a294 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/lastwallpaper @@ -0,0 +1 @@ +fbsetroot|-foreground #7790aa -solid #7790aa|style|:0.0 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/menu b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/menu new file mode 100644 index 0000000..f55cc8f --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/menu @@ -0,0 +1,68 @@ +[begin] (Desktop menu) + [exec] (Terminal) { fbstartupnotify && xterm -ls } + [exec] (File Manager) { fbstartupnotify && pcmanfm } + [exec] (Web Browser) { fbstartupnotify && fbliveapp chromium } + [exec] (Text Editor) { fbstartupnotify && leafpad } + [exec] (Calculator) { fbstartupnotify && qalculate } + [exec] (Network Manager) { fbstartupnotify && wicd-manager } + [exec] (Run) { fbappselect } + [separator] + [workspaces] (Workspaces ...) + [submenu] (Screen resolution ...) {} + [include] (~/.fluxbox/menu_resolution) + [end] + [submenu] (Keyboard layout ...) {} + [exec] (Czech) { fbsetkb cz } + [exec] (English) { fbsetkb us } + [exec] (French) { fbsetkb fr } + [exec] (German) { fbsetkb de } + [exec] (Italian) { fbsetkb it } + [exec] (Polish) { fbsetkb pl } + [exec] (Portuguese) { fbsetkb pt } + [exec] (Russian) { fbsetkb ru } + [exec] (Slovak) { fbsetkb sk } + [exec] (Spanish) { fbsetkb es } + [exec] (Ukrainian) { fbsetkb ua } + [submenu] (Other ...) {} + [exec] (Afghani) { fbsetkb af } + [exec] (Albanian) { fbsetkb al } + [exec] (Arabic [Morocco]) { fbsetkb ma } + [exec] (Arabic) { fbsetkb ara } + [exec] (Armenian) { fbsetkb am } + [exec] (Azerbaijani) { fbsetkb az } + [exec] (Belarusian) { fbsetkb by } + [exec] (Belgian) { fbsetkb be } + [exec] (Berber [Algeria]) { fbsetkb dz } + [exec] (Bosnian) { fbsetkb ba } + [exec] (Brasil) { fbsetkb br } + [exec] (Bulgarian) { fbsetkb bg } + [exec] (Croatian) { fbsetkb hr } + [exec] (Danish) { fbsetkb dk } + [exec] (Dutch) { fbsetkb nl } + [exec] (English [Australian]) { fbsetkb au } + [exec] (Estonian) { fbsetkb ee } + [exec] (Finnish) { fbsetkb fi } + [exec] (French [Canada]) { fbsetkb ca } + [exec] (German [Austria]) { fbsetkb at } + [exec] (German [Switzerland]) { fbsetkb ch } + [exec] (Greek) { fbsetkb gr } + [exec] (Hebrew) { fbsetkb il } + [exec] (Hungarian) { fbsetkb hu } + [exec] (Icelandic) { fbsetkb is } + [exec] (Indian) { fbsetkb in } + [exec] (Iraqi) { fbsetkb iq } + [exec] (Irish) { fbsetkb ie } + [exec] (Latvian) { fbsetkb lv } + [exec] (Lithuanian) { fbsetkb lt } + [exec] (Norwegian) { fbsetkb no } + [exec] (Persian) { fbsetkb ir } + [exec] (Romanian) { fbsetkb ro } + [exec] (Serbian) { fbsetkb rs } + [exec] (Slovenian) { fbsetkb si } + [exec] (Swedish) { fbsetkb se } + [exec] (Turkish) { fbsetkb tr } + [end] + [end] + [exec] (Exit / Logout) { fblogout } + +[end] diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/overlay b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/overlay new file mode 100644 index 0000000..bb4e91c --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/overlay @@ -0,0 +1,2 @@ +! The following line will prevent styles from setting the background. +! background: none diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/slitlist b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/slitlist new file mode 100644 index 0000000..e69de29 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/startup b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/startup new file mode 100644 index 0000000..e98f223 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/startup @@ -0,0 +1,111 @@ +#!/bin/sh +# +# fluxbox startup-script: +# +# Lines starting with a '#' are ignored. + +# Change your keymap: +xmodmap "/root/.Xmodmap" + +# merge xresource settings +xrdb -merge ~/.Xresources + +# set keyboard layout +fbsetkb $(cat ~/.fluxbox/kblayout) + +# setup bookmarks for file manager +gtk-bookmarks-update + +# Share common directories with guest user. This is necessary +# because some apps like chromium must be running under guest +for dir in Desktop Documents Downloads Music Pictures Public Templates Videos; do + if ! mountpoint /root/$dir; then + mount --bind /home/guest/$dir /root/$dir + fi +done + +# set background color and big wait mouse cursor +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 & + +# preload compton and fluxbox to cache +(compton --help; fluxbox --help) >/dev/null 2>&1 + +# Keep black screen for first second while the sound plays. +# This slows startup a little, but it is nicer effect. +SND=/usr/share/sounds/startup.wav +if [ -r $SND ]; then + cat $SND > /dev/null # preload + aplay $SND & + sleep 1 & + SOUNDPID=$! +fi + +# Debian-local change: +# - fbautostart has been added with a quick hack to check to see if it +# exists. If it does, we'll start it up by default. +which fbautostart > /dev/null +if [ $? -eq 0 ]; then + fbautostart +fi + +# We need to postpone compton after fluxbox starts, else it won't set +# the transparency of toolbar properly... So we check the fehbg file, +# which is created by fluxbox at the phase when it sets background. +# Once the file exist, fluxbox-toolbar is already started + +SIGNAL1=~/.fehbg +SIGNAL2=~/.fehbg2 + +rm -f $SIGNAL1 2>/dev/null +rm -f $SIGNAL2 2>/dev/null + +( + while [ ! -e $SIGNAL1 ]; do + 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' +) & + +# We want to run systrayicon only after the volumeicon is started +# So we have to wait until it is visible to xwinfo +# We also wait after background is set and compton is started +( + while [ ! -e $SIGNAL2 ]; do + sleep 0.1 + done + + rm -f $SIGNAL2 + + while ! xwininfo -name volumeicon >/dev/null 2>&1 && pgrep volumeicon >/dev/null 2>&1; do + sleep 0.1 + done + + exec systrayicon --command fblogout --iconfile /usr/share/icons/locolor/16x16/actions/system-shutdown-symbolic.png +) & + +# gen screen resolutions to fluxbox menu +xrandr 2>/dev/null | fgrep x | fgrep . | sort -n | tr -s " " | cut -d " " -f 2 \ +| sed -r "s:(.*):[exec] (\\1) {fbscreensize \\1}:" > ~/.fluxbox/menu_resolution + +# In all cases, wait for the sound sleeper. +# If startup took longer (sound completed already), no extra wait +wait $SOUNDPID + +# And last but not least we start fluxbox. +# Because it is the last app you have to run it with ''exec'' before it. + +exec fluxbox diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/windowmenu b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/windowmenu new file mode 100644 index 0000000..d867b64 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.fluxbox/windowmenu @@ -0,0 +1,15 @@ +[begin] + [shade] + [stick] + [maximize] + [iconify] + [raise] + [lower] + [settitledialog] + [sendto] + [layer] + [alpha] + [extramenus] + [separator] + [close] +[end] diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.gtkrc-2.0 b/Slax/debian10/modules/03-desktop/rootcopy/root/.gtkrc-2.0 new file mode 100644 index 0000000..96f0cb2 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.gtkrc-2.0 @@ -0,0 +1 @@ +include "/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc" diff --git a/Slax/debian10/modules/03-desktop/rootcopy/root/.xinitrc b/Slax/debian10/modules/03-desktop/rootcopy/root/.xinitrc new file mode 100644 index 0000000..22df2f4 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/root/.xinitrc @@ -0,0 +1 @@ +startfluxbox diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbappselect b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbappselect new file mode 100755 index 0000000..4221ef7 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbappselect @@ -0,0 +1,39 @@ +#!/bin/bash + +COMMAND=$( + xlunch_genquick 64 --desktop | \ + xlunch --border 7% --sideborder 10% --borderratio 100 --sideborderratio 50 \ + --background /usr/share/wallpapers/slax_wallpaper.jpg --font DejaVuSans/11 \ + --voidclickterminate --iconpadding 40 --textpadding 10 \ + --leastmargin 6 --hidemissing --iconsize 64 \ + --highlight /usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png \ + --outputonly +) + +if [ "$COMMAND" = "" ]; then + exit +fi + +fbstartupnotify + +# if command is a .desktop file, parse it +if [[ "$COMMAND" =~ \.desktop ]]; then + NoTerm="$(cat "$COMMAND" | grep Terminal\\s*= | grep -i "Terminal\\s*=\\s*false")" + COMMAND="$(cat "$COMMAND" | grep Exec\\s*= | head -n 1 | sed -r s/.*=// | sed -r "s/%[^%]+//g")" +fi + +cmd="$(echo $COMMAND | sed -r "s/\\s.*//")" +whi="$(which $cmd | head -n 1)" +Xdep=$(ldd $whi | grep libX11) +Ndep=$(ldd $whi | grep libncurses) + +WAIT='echo "--------------------------------------------------"; read -n 1 -s -r -p "Command finished. Press any key to close window..."' +if [ "$Ndep" != "" -o "$cmd" = "man" -o "$cmd" = "mc" ]; then + WAIT="" +fi + +if [ "$Xdep" = "" -a "$cmd" != "chromium" -a "$cmd" != "wicd-manager" -a "$cmd" != "fbliveapp" -a "$NoTerm" = "" ]; then + exec xterm -ls -e bash --login -c -- "echo $USER@$HOSTNAME:$PWD# '$COMMAND'; $COMMAND; $WAIT" +else + exec $COMMAND +fi diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbliveapp b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbliveapp new file mode 100755 index 0000000..b8c28c5 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbliveapp @@ -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" + 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 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fblogout b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fblogout new file mode 100755 index 0000000..02571e1 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fblogout @@ -0,0 +1,31 @@ +#!/bin/bash + +COMMAND=$( + xlunch --input /etc/xlunch/logout.dsv --noprompt --border auto --sideborder auto --columns 3 --rows 1 \ + --background /usr/share/wallpapers/slax_wallpaper.jpg --font DejaVuSans/11 \ + --voidclickterminate --iconpadding 30 --textpadding 10 \ + --leastmargin 10 --hidemissing --iconsize 128 \ + --highlight /usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png \ + --outputonly +) + +SND=/usr/share/sounds/shutdown.wav + +if [ "$COMMAND" != "" -a -r $SND ]; then + # blank desktop with smooth effect (if compton still running) + xlunch --noprompt --input /dev/null --bc 111111ff & + # play shutdown sound + aplay $SND +fi + +if [ "$COMMAND" = "logout" ]; then + killall Xorg +fi + +if [ "$COMMAND" = "restart" ]; then + reboot +fi + +if [ "$COMMAND" = "shutdown" ]; then + poweroff +fi diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbprintscreen b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbprintscreen new file mode 100755 index 0000000..2fa57c9 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbprintscreen @@ -0,0 +1,18 @@ +#!/bin/bash + +PICTURES=~/Pictures +mkdir -p $PICTURES +cd $PICTURES + +# make screenshot +SCREENSHOT=$(scrot -e 'echo $f') + +if [ "$SCREENSHOT" = "" ]; then + exit 1 +fi + +# open screenshot in 2/3 window +read W H X <<< $(xrandr 2>/dev/null | fgrep '*' | tr -s " " | tr "x" " ") +W=$(($W*2/3)) +H=$(($H*2/3)) +exec feh --geometry $W"x"$H $SCREENSHOT diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbscreensize b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbscreensize new file mode 100755 index 0000000..b51e329 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbscreensize @@ -0,0 +1,17 @@ +#!/bin/bash + +SIGNAL=~/.fehbg +rm -f $SIGNAL + +OUTPUT=$(xrandr 2>/dev/null | grep -iv disconnected | grep -i 'connected' | head -n 1 | cut -d " " -f 1) +MODE=$1 + +xrandr --output $OUTPUT --mode $MODE -s $MODE + +while [ -e $SIGNAL ]; do + sleep 0.1 +done + +sleep 1 + +killall -SIGUSR1 compton diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbsetkb b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbsetkb new file mode 100755 index 0000000..4e08683 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbsetkb @@ -0,0 +1,4 @@ +#!/bin/bash + +setxkbmap $1 +echo $1 > ~/.fluxbox/kblayout diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbstartupnotify b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbstartupnotify new file mode 100755 index 0000000..aa6a9a6 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/bin/fbstartupnotify @@ -0,0 +1,18 @@ +#!/bin/bash + +CURSORSDIR=/usr/share/icons/breeze_cursors/cursors/ +SIZE=16 + +# Set cursor to wait. As soon as new window is detected, change cursor back +xsetroot -xcf $CURSORSDIR/left_ptr_watch $SIZE +export WINDOWS="$(wmctrl -l)" + +( + sleep 0.2 + until diff <(echo "$WINDOWS") <(wmctrl -l) | egrep -q "^[>]"; do + sleep 0.5 + done + xsetroot -xcf $CURSORSDIR/left_ptr $SIZE +) & + +exit 0 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/1terminal.desktop b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/1terminal.desktop new file mode 100644 index 0000000..4005587 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/1terminal.desktop @@ -0,0 +1,5 @@ +[Desktop Entry] +Icon=terminal +Name=Terminal +Exec=xterm -ls +Terminal=false diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/5chromium.desktop b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/5chromium.desktop new file mode 100644 index 0000000..bcc3636 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/5chromium.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Version=1.0 +Name=Web Browser +GenericName=Web Browser +Exec=fbliveapp chromium %U +Terminal=false +X-MultipleArgs=false +Type=Application +Icon=chromium.png +Categories=Network;WebBrowser; +MimeType=audio/*;image/*;video/*;application/pdf;application/x-pdf;text/html;text/xml;application/xhtml_xml;application/x-mimearchive;x-scheme-handler/http;x-scheme-handler/https; +StartupWMClass=chromium +StartupNotify=true diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/feh.desktop b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/feh.desktop new file mode 100644 index 0000000..6f6988d --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/feh.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Version=1.0 +Name=Image viewer +GenericName=Image viewer +Exec=feh %U +Terminal=false +X-MultipleArgs=false +Type=Application +Icon=none.png +Categories=ImageViewer; +MimeType=image/*; +StartupWMClass=feh +StartupNotify=true +Hidden=true diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/mimeapps.list b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/mimeapps.list new file mode 100644 index 0000000..8217417 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/mimeapps.list @@ -0,0 +1,132 @@ +[Default Applications] +application/pdf=chromium.desktop; +application/x-pdf=chromium.desktop; +audio/3gpp=chromium.desktop; +audio/ac3=chromium.desktop; +audio/flac=chromium.desktop; +audio/mp4=chromium.desktop; +audio/mpeg=chromium.desktop; +audio/mpegurl=chromium.desktop; +audio/ogg=chromium.desktop; +audio/x-flac=chromium.desktop; +audio/x-gsm=chromium.desktop; +audio/x-it=chromium.desktop; +audio/x-m4a=chromium.desktop; +audio/x-matroska=chromium.desktop; +audio/x-mod=chromium.desktop; +audio/x-mp3=chromium.desktop; +audio/x-mpeg=chromium.desktop; +audio/x-mpegurl=chromium.desktop; +audio/x-pn-wav=chromium.desktop;; +audio/x-tta=chromium.desktop; +audio/x-vorbis=chromium.desktop; +audio/x-vorbis+ogg=chromium.desktop; +audio/x-wav=chromium.desktop; +audio/x-wavpack=chromium.desktop; +audio/x-xm=chromium.desktop; +application/ogg=chromium.desktop; +application/x-extension-m4a=chromium.desktop; +application/x-extension-mp4=chromium.desktop; +application/x-flac=chromium.desktop; +application/x-flash-video=chromium.desktop; +application/x-ogg=chromium.desktop; +image/bmp=feh.desktop; +image/gif=feh.desktop; +image/jpeg=feh.desktop; +image/jpg=feh.desktop; +image/pjpeg=feh.desktop; +image/png=feh.desktop; +image/svg+xml=chromium.desktop; +image/svg+xml-compressed=chromium.desktop; +image/x-bmp=feh.desktop; +image/x-gray=chromium.desktop; +image/x-icb=chromium.desktop; +image/x-ico=chromium.desktop; +image/x-pcx=chromium.desktop; +image/x-png=feh.desktop; +image/x-portable-anymap=chromium.desktop; +image/x-portable-bitmap=chromium.desktop; +image/x-portable-graymap=chromium.desktop; +image/x-portable-pixmap=chromium.desktop; +image/x-xbitmap=chromium.desktop; +image/x-xpixmap=chromium.desktop; +image/vnd.wap.wbmp=chromium.desktop; +image/x-fits=gimp.desktop +image/x-icon=gimp.desktop +image/x-sun-raster=gimp.desktop +image/x-tga=gimp.desktop +image/x-xcf=gimp.desktop +image/x-xwindowdump=gimp.desktop +video/3gpp=chromium.desktop; +video/dv=chromium.desktop; +video/fli=chromium.desktop; +video/flv=chromium.desktop; +video/mp2t=chromium.desktop; +video/mp4=chromium.desktop; +video/mp4v-es=chromium.desktop; +video/mpeg=chromium.desktop; +video/msvideo=chromium.desktop; +video/ogg=chromium.desktop; +video/quicktime=chromium.desktop; +video/vivo=chromium.desktop; +video/vnd.divx=chromium.desktop; +video/vnd.rn-realvideo=chromium.desktop; +video/vnd.vivo=chromium.desktop; +video/webm=chromium.desktop; +video/x-anim=chromium.desktop; +video/x-avi=chromium.desktop; +video/x-flc=chromium.desktop; +video/x-fli=chromium.desktop; +video/x-flic=chromium.desktop; +video/x-flv=chromium.desktop; +video/x-m4v=chromium.desktop; +video/x-matroska=chromium.desktop; +video/x-mpeg=chromium.desktop; +video/x-ogm+ogg=chromium.desktop; +video/x-theora+ogg=chromium.desktop; +application/x-flash-video=chromium.desktop; +text/plain=leafpad.desktop; +text/css=leafpad.desktop; +text/javascript=leafpad.desktop; +text/mathml=leafpad.desktop; +text/x-c++hdr=leafpad.desktop; +text/x-c++src=leafpad.desktop; +text/x-csrc=leafpad.desktop; +text/x-chdr=leafpad.desktop; +text/x-dtd=leafpad.desktop; +text/x-java=leafpad.desktop; +text/x-javascript=leafpad.desktop; +text/x-makefile=leafpad.desktop; +text/x-moc=leafpad.desktop; +text/x-pascal=leafpad.desktop; +text/x-patch=leafpad.desktop; +text/x-perl=leafpad.desktop; +text/x-php=leafpad.desktop; +text/x-python=leafpad.desktop; +text/x-sql=leafpad.desktop; +text/x-tcl=leafpad.desktop; +text/x-tex=leafpad.desktop; +text/xml=leafpad.desktop; +application/javascript=leafpad.desktop; +application/x-cgi=leafpad.desktop; +application/x-javascript=leafpad.desktop; +application/x-perl=leafpad.desktop; +application/x-php=leafpad.desktop; +application/x-python=leafpad.desktop; +application/x-shellscript=leafpad.desktop; +application/xml=leafpad.desktop; +application/xml-dtd=leafpad.desktop; +application/x-bzip=xarchiver.desktop; +application/x-bzip-compressed-tar=xarchiver.desktop; +application/x-gzip=xarchiver.desktop; +application/x-tar=xarchiver.desktop; +application/x-zip=xarchiver.desktop; +application/x-zip-compressed=xarchiver.desktop; +application/zip=xarchiver.desktop; +application/x-compressed-tar=xarchiver.desktop; +application/x-bzip2=xarchiver.desktop; +application/x-bzip2-compressed-tar=xarchiver.desktop; +application/x-lzma-compressed-tar=xarchiver.desktop; +application/x-lzma=xarchiver.desktop; +application/x-xz=xarchiver.desktop; +application/x-xz-compressed-tar=xarchiver.desktop; diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/videoplayer.desktop b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/videoplayer.desktop new file mode 100644 index 0000000..b2f1714 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/videoplayer.desktop @@ -0,0 +1,5 @@ +[Desktop Entry] +Icon=videoplayer +Name=Video Player +Exec=fbliveapp vlc +Terminal=false diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/votecoin.desktop b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/votecoin.desktop new file mode 100644 index 0000000..460e9a8 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/applications/votecoin.desktop @@ -0,0 +1,6 @@ +[Desktop Entry] +Icon=votecoin +Name=VoteCoin Wallet +Exec=fbliveapp votecoin +Terminal=false +Hidden=true diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closefcs.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closefcs.png new file mode 100644 index 0000000..6843155 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closefcs.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closepr.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closepr.png new file mode 100644 index 0000000..819f59a Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closepr.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closeunfcs.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closeunfcs.png new file mode 100644 index 0000000..dabe48c Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/closeunfcs.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxfcs.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxfcs.png new file mode 100644 index 0000000..ae0558e Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxfcs.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxpr.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxpr.png new file mode 100644 index 0000000..e87bb1e Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxpr.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxunfcs.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxunfcs.png new file mode 100644 index 0000000..f878fe6 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/maxunfcs.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minfcs.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minfcs.png new file mode 100644 index 0000000..f67c7ed Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minfcs.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minpr.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minpr.png new file mode 100644 index 0000000..100be63 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minpr.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minunfcs.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minunfcs.png new file mode 100644 index 0000000..82b487f Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/minunfcs.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/start-here.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/start-here.png new file mode 100644 index 0000000..e74bf47 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/pixmaps/start-here.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/theme.cfg b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/theme.cfg new file mode 100644 index 0000000..2dbd225 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/fluxbox/styles/Slax/theme.cfg @@ -0,0 +1,114 @@ +! Slax fluxbox theme +! (c) Tomas Matejicek + +! common settings +*font: Bitstream Vera Sans-9 + +background: fullscreen +background.pixmap: /usr/share/wallpapers/slax_wallpaper.jpg + +toolbar.justify: left +toolbar.clock.justify: right +window.justify: center +menu.title.justify: center +menu.frame.justify: left + +! window +window.focus.backgroundColor: #63b4fb +window.unfocus.backgroundColor: #ebebeb +window.focus.borderColor: #63b4fb +window.unfocus.borderColor: #ebebeb +window.borderWidth: 6 +window.handleWidth: 0 + +! title +window.title.height: 18 +window.title.focus: flat solid +window.title.focus.color: #63b4fb +window.label.focus: parentrelative +window.label.focus.textColor: #282828 +window.title.unfocus: flat solid +window.title.unfocus.color: #ebebeb +window.label.unfocus: parentrelative +window.label.unfocus.textColor: #282828 + +! buttons +window.button.focus: flat solid +window.button.focus.color: #63b4fb +window.button.focus.picColor: #282828 +window.button.pressed: sunken solid +window.button.pressed.color: #63b4fb +window.button.pressed.picColor: #000000 +window.button.unfocus: flat solid +window.button.unfocus.color: #ebebeb +window.button.unfocus.picColor: #282828 + +window.close.pixmap: closefcs.png +window.close.unfocus.pixmap: closeunfcs.png +window.close.pressed.pixmap: closepr.png +window.iconify.pixmap: minfcs.png +window.iconify.unfocus.pixmap: minunfcs.png +window.iconify.pressed.pixmap: minpr.png +window.maximize.pixmap: maxfcs.png +window.maximize.unfocus.pixmap: maxunfcs.png +window.maximize.pressed.pixmap: maxpr.png + +! taskbar +toolbar.height: 18 +toolbar.bevelWidth: 0 +toolbar.borderWidth: 3 +toolbar.borderColor: #222222 +toolbar: flat solid + +toolbar.color: #222222 +toolbar.clock: flat solid +toolbar.clock.color: #222222 +toolbar.clock.textColor: white + +toolbar.iconbar.empty: flat +toolbar.iconbar.empty.color: #222222 + +toolbar.iconbar.focused.borderWidth: 15 +toolbar.iconbar.focused.borderColor: #222222 +toolbar.iconbar.focused: flat +toolbar.iconbar.focused.color: #dddddd +toolbar.iconbar.focused.textColor: #282828 +toolbar.iconbar.focused.justify: left + +toolbar.iconbar.unfocused.borderWidth: 15 +toolbar.iconbar.unfocused.borderColor: #222222 +toolbar.iconbar.unfocused: flat +toolbar.iconbar.unfocused.color: #444444 +toolbar.iconbar.unfocused.textColor: white +toolbar.iconbar.unfocused.justify: left + +toolbar.button: flat solid +toolbar.button.borderWidth: 13 +toolbar.button.borderColor: #222222 +toolbar.button.color: #222222 +toolbar.button.picColor: #61CA00 +toolbar.button.pressed: flat solid + +! menu +menu.title: flat solid +menu.title.color: #63b4fb +menu.title.textColor: #282828 +menu.title.justify: center + +menu.bevelWidth: 4 +menu.borderWidth: 6 +menu.borderColor: #63b4fb + +menu.frame: flat solid +menu.frame.disableColor: #999999 +menu.frame.color: #ebebeb +menu.frame.textColor: #282828 +menu.frame.justify: left + +menu.hilite: flat solid +menu.hilite.textColor: #ffffff +menu.hilite.color: #63b4fb + +menu.bullet: empty +menu.bullet.position: right +menu.itemHeight: 24 diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/logout.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/logout.png new file mode 100644 index 0000000..fa6dddb Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/logout.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/restart.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/restart.png new file mode 100644 index 0000000..7c80934 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/restart.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/shutdown.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/shutdown.png new file mode 100644 index 0000000..8c25c3a Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/actions/shutdown.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/chromium.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/chromium.png new file mode 100644 index 0000000..057a663 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/chromium.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/terminal.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/terminal.png new file mode 100644 index 0000000..c53249b Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/terminal.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png new file mode 100644 index 0000000..bb45fe5 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/64x64/apps/videoplayer.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/64x64/apps/videoplayer.png new file mode 100644 index 0000000..327b538 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/64x64/apps/videoplayer.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/64x64/apps/votecoin.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/64x64/apps/votecoin.png new file mode 100644 index 0000000..a7056af Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/hicolor/64x64/apps/votecoin.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/actions/system-shutdown-symbolic.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/actions/system-shutdown-symbolic.png new file mode 100644 index 0000000..7386bcd Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/actions/system-shutdown-symbolic.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/apps/black.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/apps/black.png new file mode 100644 index 0000000..53993f0 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/apps/black.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/apps/xterm.xbm b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/apps/xterm.xbm new file mode 100644 index 0000000..5cf3968 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/apps/xterm.xbm @@ -0,0 +1,6 @@ +#define command2_width 16 +#define command2_height 16 +static unsigned char command2_bits[] = { + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xe7, 0xff, 0xcf, 0xff, + 0x9f, 0xff, 0x3f, 0xff, 0x3f, 0xff, 0x9f, 0xff, 0xcf, 0xff, 0xe7, 0xc1, + 0xf7, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_czech_republic.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_czech_republic.png new file mode 100644 index 0000000..d79b3d9 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_czech_republic.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_france.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_france.png new file mode 100644 index 0000000..2db5840 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_france.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_germany.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_germany.png new file mode 100644 index 0000000..8deb4c9 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_germany.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_italy.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_italy.png new file mode 100644 index 0000000..19064f8 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_italy.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_poland.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_poland.png new file mode 100644 index 0000000..4dd7104 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_poland.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_portugal.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_portugal.png new file mode 100644 index 0000000..19cd33a Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_portugal.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_russia.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_russia.png new file mode 100644 index 0000000..b4822ea Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_russia.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_slovakia.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_slovakia.png new file mode 100644 index 0000000..8c4d813 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_slovakia.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_spain.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_spain.png new file mode 100644 index 0000000..d87283c Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_spain.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_ukraine.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_ukraine.png new file mode 100644 index 0000000..639aa4a Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_ukraine.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_usa.png b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_usa.png new file mode 100644 index 0000000..f027ed8 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/icons/locolor/16x16/flags/flag_usa.png differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/sounds/shutdown.wav b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/sounds/shutdown.wav new file mode 100644 index 0000000..cba904d Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/sounds/shutdown.wav differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/sounds/startup.wav b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/sounds/startup.wav new file mode 100644 index 0000000..278e8e8 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/sounds/startup.wav differ diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc new file mode 100644 index 0000000..f1fdee6 --- /dev/null +++ b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc @@ -0,0 +1,438 @@ +gtk_color_scheme = "fg_color:#000000\nbg_color:#eeeeee\nbase_color:#FFFFFF\ntext_color:#000000\nselected_bg_color:#63b4fb\nselected_fg_color:#FFFFFF\ntooltip_bg_color:#F5F5C9\ntooltip_fg_color:#000000" + +# menu delay +#gtk-menu-popup-delay = 0 + +# icon sizes +#gtk-icon-sizes = "gtk-menu=16,16:\ngtk-button=16,16:\ngtk-dnd=16,16:\npanel-menu=16,16:\npanel=16,16:\ngtk-dialog=16,16:" + +# icon sizes (small toolbar) +# gtk-icon-sizes = "gtk-menu=16,16:\ngtk-button=16,16:\ngtk-dnd=16,16:\npanel-menu=16,16:\npanel=16,16:\ngtk-dialog=16,16:\ngtk-small-toolbar=16,16:\ngtk-large-toolbar=16,16:" + +style "murrine-default" +{ + ######## + # Style Properties + ######## + GtkButton ::child-displacement-x = 1 + GtkButton ::child-displacement-y = 1 + GtkButton ::default-border = { 0, 0, 0, 0 } + GtkButton ::inner-border = { 5, 5, 5, 5 } + GtkCheckButton ::indicator-size = 14 + + GtkPaned ::handle-size = 6 + + GtkRange ::trough-border = 0 + GtkRange ::slider-width = 15 + GtkRange ::stepper-size = 15 + + GtkScale ::slider-length = 15 + GtkScale ::trough-side-details = 0 + GtkScrollbar ::min-slider-length = 30 + + GtkMenuBar ::internal-padding = 1 + GtkExpander ::expander-size = 16 + GtkToolbar ::internal-padding = 0 + GtkTreeView ::expander-size = 14 + GtkTreeView ::vertical-separator = 0 + + GtkMenu ::horizontal-padding = 1 + GtkMenu ::vertical-padding = 1 + + GtkMenuBar ::shadow_type = GTK_SHADOW_NONE + GtkToolbar ::shadow_type = GTK_SHADOW_NONE + + # Glow the tasklist by changing the color, instead of overlaying it with a rectangle + #WnckTasklist ::fade-overlay-rect = 0 + + xthickness = 1 + ythickness = 1 + + + fg[NORMAL] = @fg_color + fg[PRELIGHT] = @fg_color + fg[SELECTED] = @selected_fg_color + fg[ACTIVE] = @fg_color + fg[INSENSITIVE] = darker (@bg_color) + + bg[NORMAL] = @bg_color + bg[PRELIGHT] = shade (1.02, @bg_color) + bg[SELECTED] = @selected_bg_color + bg[INSENSITIVE] = @bg_color + bg[ACTIVE] = shade (0.9, @bg_color) + + base[NORMAL] = @base_color + base[PRELIGHT] = shade (0.95, @bg_color) + base[ACTIVE] = shade (0.88, @selected_bg_color) + base[SELECTED] = shade (0.89, @selected_bg_color) + base[INSENSITIVE] = @bg_color + + text[NORMAL] = @text_color + text[PRELIGHT] = @text_color + text[ACTIVE] = @selected_fg_color + text[SELECTED] = @selected_fg_color + text[INSENSITIVE] = darker (@bg_color) + + engine "murrine" + { + animation = TRUE + colorize_scrollbar = FALSE + contrast = 0.65 # 0.8 for less contrast, more than 1.0 for more contrast on borders + glazestyle = 0 # 0 = flat highlight, 1 = curved highlight, 2 = concave style, 3 = top curved highlight, 4 = beryl highlight + gradient_shades = {1.03,1.0,1.0,0.985} + #gradient_shades = {1.09,1.06,1.04,1.01} # default: {1.1,1.0,1.0,1.1} + highlight_shade = 1.0 # set highlight amount for buttons or widgets + lightborder_shade = 1.06 # sets lightborder amount for buttons or widgets + #lightborderstyle = 0 # 0 = lightborder on top side, 1 = lightborder on all sides + listviewheaderstyle = 1 # 0 = flat, 1 = glassy, 2 = raised + listviewstyle = 1 # 0 = nothing, 1 = dotted + menubaritemstyle = 0 # 0 = menuitem look, 1 = button look + menubarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient, 3 = striped + menuitemstyle = 1 # 0 = flat, 1 = glassy, 2 = striped + menustyle = 0 # 0 = no vertical menu stripe, 1 = display vertical menu stripe + reliefstyle = 0 # 0 = flat, 1 = inset, 2 = shadow + rgba = TRUE # FALSE = disabled, TRUE = enabled + roundness = 0 # 0 = squared, 1 = old default, more will increase roundness + scrollbarstyle = 0 # 0 = nothing, 1 = circles, 2 = handles, 3 = diagonal stripes, 4 = diagonal stripes and handles, 5 = horizontal stripes, 6 = horizontal stripes and handles + sliderstyle = 0 # 0 = nothing added, 1 = handles + stepperstyle = 0 # 0 = standard, 1 = integrated stepper handles, 2 = unknown + toolbarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient + } +} + +style "murrine-wide" +{ + xthickness = 2 + ythickness = 2 + + bg[SELECTED] = @selected_bg_color +} + +style "murrine-wider" +{ + xthickness = 3 + ythickness = 3 + + bg[SELECTED] = @selected_bg_color +} + +style "murrine-button" = "murrine-wider" +{ + bg[NORMAL] = shade (1.04, @bg_color) + bg[PRELIGHT] = shade (1.06, @bg_color) + bg[ACTIVE] = shade (1.02, @bg_color) + bg[INSENSITIVE] = shade (1.0, @bg_color) + + engine "murrine" { + contrast = 0.45 + } +} + +style "murrine-entry" = "murrine-wider" +{ + engine "murrine" { + contrast = 0.35 + } +} +style "murrine-notebook" +{ + xthickness = 2 + ythickness = 2 + + bg[ACTIVE] = shade (0.99, @bg_color) + bg[NORMAL] = shade (1.03, @bg_color) + bg[SELECTED] = @selected_bg_color + fg[ACTIVE] = shade (0.34, @bg_color) +} + +style "murrine-tasklist" = "murrine-wide" +{ +} + +style "murrine-menu" = "murrine-wider" +{ + xthickness = 3 + ythickness = 3 + + bg[NORMAL] = shade (1.18, @bg_color) +} + +style "murrine-menu-item" = "murrine-wider" +{ + xthickness = 2 + ythickness = 3 + + fg[PRELIGHT] = @selected_fg_color + bg[SELECTED] = shade (0.95, @selected_bg_color) + bg[SELECTED] = shade (0.95, @selected_bg_color) + + engine "murrine" + { + roundness = 0 + } +} + +style "murrine-separator-menu-item" +{ +} + +style "murrine-treeview" +{ + bg[SELECTED] = @selected_bg_color +} + +style "murrine-treeview-header" = "murrine-default" +{ + bg[NORMAL] = shade (1.06,@bg_color) + bg[PRELIGHT] = shade (1.06,@bg_color) +} + +style "murrine-frame-title" +{ + fg[NORMAL] = lighter (@fg_color) +} + +style "murrine-tooltips" = "murrine-wider" +{ + bg[NORMAL] = @tooltip_bg_color + fg[NORMAL] = @tooltip_fg_color +} + +style "murrine-progressbar" +{ + xthickness = 0 + ythickness = 0 + + fg[PRELIGHT] = @selected_fg_color + bg[NORMAL] = shade (0.98, @bg_color) + bg[SELECTED] = @selected_bg_color +} + +style "murrine-statusbar" +{ +} + +style "murrine-comboboxentry" +{ +} + +style "murrine-spinbutton" +{ +} + +style "murrine-scale" = "murrine-button" +{ + GtkRange ::slider-width = 15 + + engine "murrine" + { + roundness = 6 + } +} + +style "murrine-hscale" +{ +} + +style "murrine-vscale" +{ +} + +style "murrine-scrollbar" +{ + bg[NORMAL] = shade (1.04, @bg_color) + bg[PRELIGHT] = shade (1.06, @bg_color) + bg[ACTIVE] = shade (1.02, @bg_color) + bg[INSENSITIVE] = shade (1.0, @bg_color) +} + +style "murrine-hscrollbar" +{ +} + +style "murrine-vscrollbar" +{ +} + +style "murrine-menubar" +{ +} + +style "murrine-nautilus-location" +{ +# bg[NORMAL] = shade (1.0,@selected_bg_color) +# bg[SELECTED] = shade (1.0,@selected_bg_color) +# bg[ACTIVE] = shade (1.0,@selected_bg_color) +} + +style "murrine-radiocheck" = "murrine-default" +{ + text[NORMAL] = "#FFFFFF" + text[PRELIGHT] = "#FFFFFF" +} + +style "panel" +{ + fg[NORMAL] = "#FFFFFF" + fg[PRELIGHT] = "#FFFFFF" + fg[ACTIVE] = "#FFFFFF" + bg[NORMAL] = shade (0.4, @bg_color) + bg[ACTIVE] = shade (0.5, @bg_color) + bg[PRELIGHT] = shade (0.56, @bg_color) + + engine "murrine" { + contrast = 0.8 + } +} + +style "smaller-text" +{ + font_name = "7" +} + +style "handle" +{ + bg[NORMAL] = "#232323" +} + +######################################### +# Matches +######################################### + +# theme radio buttons and checkmarks +class "GtkRadio*" style "murrine-radiocheck" +class "GtkCheck*" style "murrine-radiocheck" + +# theme default style is applied to every widget +class "GtkWidget" style "murrine-default" + +# Increase the x/ythickness in some widgets +class "GtkToolbar" style "murrine-default" +class "GtkRange" style "murrine-wide" +class "GtkFrame" style "murrine-wide" +class "GtkSeparator" style "murrine-wide" +class "GtkEntry" style "murrine-entry" + +class "GtkSpinButton" style "murrine-spinbutton" +class "GtkScale" style "murrine-scale" +class "GtkVScale" style "murrine-vscale" +class "GtkHScale" style "murrine-hscale" +class "GtkScrollbar" style "murrine-scrollbar" +class "GtkVScrollbar" style "murrine-vscrollbar" +class "GtkHScrollbar" style "murrine-hscrollbar" + +# General matching following, the order is choosen so that the right styles override each other +# eg. progressbar needs to be more important then the menu match. + +# This is not perfect, it could be done better +# (That is modify *every* widget in the notebook, and change those back that +# we really don't want changed) +widget_class "**" style "murrine-notebook" +widget_class "**" style "murrine-notebook" +widget_class "**" style "murrine-notebook" +widget_class "**" style "murrine-notebook" + +widget_class "*" style "murrine-button" +widget_class "*" style "murrine-notebook" +widget_class "**" style "murrine-statusbar" + +widget_class "**" style "murrine-comboboxentry" +widget_class "**" style "murrine-comboboxentry" + +widget_class "**" style "murrine-menubar" +widget_class "**" style "murrine-menu" +widget_class "**" style "murrine-menu-item" +widget_class "**" style "murrine-separator-menu-item" + +widget_class "*.." style "murrine-frame-title" +widget_class "*.*" style "murrine-treeview" + +widget_class "*" style "murrine-progressbar" + +# Treeview header +widget_class "*.." style "murrine-treeview-header" +widget_class "*.." style "murrine-treeview-header" +widget_class "*.." style "murrine-treeview-header" +widget_class "*.." style "murrine-treeview-header" + +# Workarounds for Evolution +widget_class "*.ETable.ECanvas" style "murrine-treeview-header" +widget_class "*.ETree.ECanvas" style "murrine-treeview-header" + +# Panel style +class "*Panel*" style "panel" +class "*notif*" style "panel" +class "*Notif*" style "panel" +class "*Tray*" style "panel" +class "*tray*" style "panel" + +widget_class "*ToolButton*" style "smaller-text" +widget_class "*Statusbar*" style "smaller-text" +widget_class "*Mail*" style "panel" +widget "*PanelWidget*" style "panel" +widget "*PanelApplet*" style "panel" + +class "PanelAppletFrame" style "handle" + +# The window of the tooltip is called "gtk-tooltip" +################################ +# FIXME: +# This will not work if one embeds eg. a button into the tooltip. +# As far as I can tell right now we will need to rework the theme +# quite a bit to get this working correctly. +# (It will involve setting different priorities, etc.) +################################ +widget "gtk-tooltip*" style "murrine-tooltips" + +################################################### +# Special cases and work arounds +################################################### + +# Special case the nautilus-extra-view-widget +# ToDo: A more generic approach for all applications that have a widget like this. +widget "*.nautilus-extra-view-widget" style : highest "murrine-nautilus-location" + +# Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646 +# Note that the work around assumes that the combobox is _not_ in +# appears-as-list mode. +# Similar hack also in the menuitem style. +# This style does not affect GtkComboBoxEntry, it does have an effect +# on comboboxes in appears-as-list mode though. +style "murrine-combobox-text-color-workaround" +{ + text[NORMAL] = @fg_color + text[PRELIGHT] = @fg_color + text[SELECTED] = @selected_fg_color + text[ACTIVE] = @fg_color + text[INSENSITIVE] = darker (@bg_color) +} +widget_class "*.." style "murrine-combobox-text-color-workaround" + +style "murrine-menuitem-text-is-fg-color-workaround" +{ + text[NORMAL] = @fg_color + text[PRELIGHT] = @selected_fg_color + text[SELECTED] = @selected_fg_color + text[ACTIVE] = @fg_color + text[INSENSITIVE] = darker (@bg_color) +} + +widget "*.gtk-combobox-popup-menu.*" style "murrine-menuitem-text-is-fg-color-workaround" + +# Work around the usage of GtkLabel inside GtkListItems to display text. +# This breaks because the label is shown on a background that is based on the +# base color set. +style "murrine-fg-is-text-color-workaround" +{ + fg[NORMAL] = @text_color + fg[PRELIGHT] = @text_color + fg[ACTIVE] = @selected_fg_color + fg[SELECTED] = @selected_fg_color + fg[INSENSITIVE] = darker (@bg_color) +} + +widget_class "**" style "murrine-fg-is-text-color-workaround" +# The same problem also exists for GtkCList and GtkCTree +# Only match GtkCList and not the parent widgets, because that would also change the headers. + +widget_class "*" style "murrine-fg-is-text-color-workaround" diff --git a/Slax/debian10/modules/03-desktop/rootcopy/usr/share/wallpapers/slax_wallpaper.jpg b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/wallpapers/slax_wallpaper.jpg new file mode 100644 index 0000000..c5d7af5 Binary files /dev/null and b/Slax/debian10/modules/03-desktop/rootcopy/usr/share/wallpapers/slax_wallpaper.jpg differ diff --git a/Slax/debian10/modules/04-apps/build b/Slax/debian10/modules/04-apps/build new file mode 100755 index 0000000..921f955 --- /dev/null +++ b/Slax/debian10/modules/04-apps/build @@ -0,0 +1,53 @@ +#!/bin/bash + +CWD=$(dirname $(readlink -f $0)) + +apt-get update +apt-get install --no-install-recommends --yes \ + leafpad \ + qalculate-gtk \ + pcmanfm \ + lxtask \ + xarchiver xdg-utils libgconf-2-4 \ + wicd + +. ../../cleanup + +(cd rootcopy && cp --parents -afr * /) + +savechanges /apps-stock.sb +cd / +unsquashfs /apps-stock.sb +rm -Rf /squashfs-root/root/.fluxbox +rm -f /squashfs-root/root/.gtk-bookmarks + +# we want to patch pcmanfm it to hide ugly root warning icon +# so we will recompile whole package + +REBUILD=/tmp/pcmanfm-rebuild-$$ + +apt-get update +apt-get --yes build-dep pcmanfm + +mkdir -p -m 0777 $REBUILD +cd $REBUILD + +apt-get source pcmanfm + +cd pcmanfm-1.2.5 + +cat $CWD/patches/pcmanfm-slax.diff > debian/patches/pcmanfm-slax.diff +echo pcmanfm-slax.diff >> debian/patches/series + +dpkg-buildpackage -us -uc + +strip --strip-unneeded src/pcmanfm +cp src/pcmanfm /squashfs-root/usr/bin + +rm -f /squashfs-root/usr/share/applications/leafpad.desktop +rm -f /squashfs-root/usr/share/applications/qalculate-gtk.desktop +rm -f /squashfs-root/usr/share/applications/pcmanfm.desktop +rm -f /squashfs-root/usr/share/applications/wicd.desktop +rm -f /squashfs-root/usr/share/applications/lxtask.desktop + +dir2sb /squashfs-root /04-apps.sb diff --git a/Slax/debian10/modules/04-apps/patches/pcmanfm-slax.diff b/Slax/debian10/modules/04-apps/patches/pcmanfm-slax.diff new file mode 100644 index 0000000..ad20b83 --- /dev/null +++ b/Slax/debian10/modules/04-apps/patches/pcmanfm-slax.diff @@ -0,0 +1,10 @@ +--- a/src/main-win.c ++++ b/src/main-win.c +@@ -955,6 +955,7 @@ static void fm_main_win_init(FmMainWin * + /* the location bar */ + win->location = fm_path_entry_new(); + g_signal_connect(win->location, "activate", G_CALLBACK(on_location_activate), win); ++ if (FALSE) + if(geteuid() == 0) /* if we're using root, Give the user some warnings */ + { + GtkWidget* warning = gtk_image_new_from_stock(GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_SMALL_TOOLBAR); diff --git a/Slax/debian10/modules/04-apps/rootcopy/etc/systemd/system/suspend.target.wants/resume_wifi.service b/Slax/debian10/modules/04-apps/rootcopy/etc/systemd/system/suspend.target.wants/resume_wifi.service new file mode 120000 index 0000000..528ff71 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/etc/systemd/system/suspend.target.wants/resume_wifi.service @@ -0,0 +1 @@ +/lib/systemd/system/resume_wifi.service \ No newline at end of file diff --git a/Slax/debian10/modules/04-apps/rootcopy/etc/wicd/manager-settings.conf b/Slax/debian10/modules/04-apps/rootcopy/etc/wicd/manager-settings.conf new file mode 100644 index 0000000..b6e52cb --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/etc/wicd/manager-settings.conf @@ -0,0 +1,20 @@ +[Settings] +backend = external +always_show_wired_interface = True +use_global_dns = False +global_dns_1 = None +global_dns_2 = None +global_dns_3 = None +global_dns_dom = None +global_search_dom = None +auto_reconnect = True +debug_mode = False +wired_connect_mode = 1 +signal_display_type = 0 +should_verify_ap = 1 +dhcp_client = 0 +link_detect_tool = 0 +flush_tool = 0 +sudo_app = 0 +prefer_wired = False +show_never_connect = True diff --git a/Slax/debian10/modules/04-apps/rootcopy/etc/wicd/wired-settings.conf b/Slax/debian10/modules/04-apps/rootcopy/etc/wicd/wired-settings.conf new file mode 100644 index 0000000..1d6ee42 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/etc/wicd/wired-settings.conf @@ -0,0 +1,16 @@ +[wired-default] +ip = None +broadcast = None +netmask = None +gateway = None +search_domain = None +dns_domain = None +dns1 = None +dns2 = None +dns3 = None +beforescript = None +afterscript = None +predisconnectscript = None +postdisconnectscript = None +encryption_enabled = None +default = True diff --git a/Slax/debian10/modules/04-apps/rootcopy/lib/systemd/system/resume_wifi.service b/Slax/debian10/modules/04-apps/rootcopy/lib/systemd/system/resume_wifi.service new file mode 100644 index 0000000..627bf6d --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/lib/systemd/system/resume_wifi.service @@ -0,0 +1,13 @@ +[Unit] +Description=Start wifi after resume +After=suspend.target + +[Service] +User=root +Type=oneshot +ExecStart=/usr/share/wicd/daemon/autoconnect.py +TimeoutSec=0 +StandardOutput=syslog + +[Install] +WantedBy=suspend.target diff --git a/Slax/debian10/modules/04-apps/rootcopy/root/.config/libfm/libfm.conf b/Slax/debian10/modules/04-apps/rootcopy/root/.config/libfm/libfm.conf new file mode 100644 index 0000000..4e71676 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/root/.config/libfm/libfm.conf @@ -0,0 +1,45 @@ +# Configuration file for the libfm version 1.2.5. +# Autogenerated file, don't edit, your changes will be overwritten. + +[config] +single_click=0 +use_trash=0 +confirm_del=1 +confirm_trash=1 +advanced_mode=0 +si_unit=0 +force_startup_notify=1 +backup_as_hidden=1 +no_usb_trash=1 +no_child_non_expandable=0 +show_full_names=1 +only_user_templates=0 +template_run_app=0 +template_type_once=0 +auto_selection_delay=600 +drop_default_action=ask +defer_content_test=0 +quick_exec=0 +show_internal_volumes=0 +terminal=x-terminal-emulator %s +thumbnail_local=1 +thumbnail_max=2048 +smart_desktop_autodrop=1 + +[ui] +big_icon_size=48 +small_icon_size=24 +pane_icon_size=24 +thumbnail_size=128 +show_thumbnail=1 +shadow_hidden=1 + +[places] +places_home=1 +places_desktop=0 +places_root=0 +places_computer=0 +places_trash=0 +places_applications=0 +places_network=0 +places_unmounted=0 diff --git a/Slax/debian10/modules/04-apps/rootcopy/root/.config/pcmanfm/default/pcmanfm.conf b/Slax/debian10/modules/04-apps/rootcopy/root/.config/pcmanfm/default/pcmanfm.conf new file mode 100644 index 0000000..a39ba16 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/root/.config/pcmanfm/default/pcmanfm.conf @@ -0,0 +1,26 @@ +[config] +bm_open_method=0 + +[volume] +mount_on_startup=1 +mount_removable=1 +autorun=1 + +[ui] +always_show_tabs=0 +max_tab_chars=32 +win_width=640 +win_height=480 +splitter_pos=150 +media_in_new_tab=0 +desktop_folder_new_win=0 +change_tab_on_drop=1 +close_on_unmount=1 +focus_previous=1 +side_pane_mode=places +view_mode=list +show_hidden=0 +sort=name;ascending; +toolbar= +show_statusbar=1 +pathbar_mode_buttons=1 diff --git a/Slax/debian10/modules/04-apps/rootcopy/root/.qalculate/qalculate-gtk.cfg b/Slax/debian10/modules/04-apps/rootcopy/root/.qalculate/qalculate-gtk.cfg new file mode 100644 index 0000000..cc01904 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/root/.qalculate/qalculate-gtk.cfg @@ -0,0 +1,127 @@ + +[General] +version=0.9.7 +width=450 +height=400 +save_mode_on_exit=1 +save_definitions_on_exit=1 +load_global_definitions=1 +fetch_exchange_rates_at_startup=0 +wget_args=--quiet --tries=1 +show_keypad=1 +show_history=0 +show_stack=1 +rpn_keypad_only=1 +display_expression_status=1 +enable_completion=1 +use_unicode_signs=1 +lower_case_numbers=0 +lower_case_e=1 +base_display=1 +spell_out_logical_operators=1 +dot_as_separator=0 +use_custom_result_font=0 +use_custom_expression_font=0 +use_custom_status_font=0 +custom_result_font=Sans 10 +custom_expression_font=Sans 10 +custom_status_font=Sans 10 +multiplication_sign=0 +division_sign=1 +expression_history=10*20 +expression_history=d*d +expression_history=5+2/200000000000 +expression_history=5+2/200000 +expression_history=5+2/2 +expression_history=5+2/3 +history_expression=10*20 +history_parse=10 * 20 +history_result=200 +history_expression=d*d +history_parse=day * day +history_result=1 d^2 +history_expression=5+2/200000000000 +history_parse=5 + (2 ∕ 2E11) +history_result_approximate=5 +history_result_approximate=5 +history_expression=5+2/200000000000 +history_parse=5 + (2 ∕ 2E11) +history_result_approximate=5 +history_result_approximate=5 +history_result_approximate=5 +history_expression=5+2/200000000000 +history_parse=5 + (2 ∕ 2E11) +history_result_approximate=5 +history_expression=5+2/200000 +history_parse=5 + (2 ∕ 200000) +history_result=5.00001 +history_expression=5+2/2 +history_parse=5 + (2 ∕ 2) +history_result=6 +history_expression=5+2/3 +history_parse=5 + (2 ∕ 3) +history_result_approximate=5.6666667 +recent_functions= +recent_variables= +recent_units= + +[Mode] +min_deci=0 +use_min_deci=0 +max_deci=2 +use_max_deci=0 +precision=8 +min_exp=-1 +negative_exponents=0 +sort_minus_last=1 +number_fraction_format=0 +use_prefixes=1 +abbreviate_names=1 +all_prefixes_enabled=0 +denominator_prefix_enabled=1 +place_units_separately=1 +auto_post_conversion=0 +number_base=10 +number_base_expression=10 +read_precision=0 +assume_denominators_nonzero=1 +warn_about_denominators_assumed_nonzero=1 +structuring=1 +angle_unit=1 +functions_enabled=1 +variables_enabled=1 +calculate_functions=1 +calculate_variables=1 +sync_units=1 +unknownvariables_enabled=0 +units_enabled=1 +allow_complex=1 +allow_infinite=1 +indicate_infinite_series=0 +show_ending_zeroes=0 +round_halfway_to_even=0 +approximation=1 +in_rpn_mode=0 +rpn_syntax=0 +limit_implicit_multiplication=0 +spacious=1 +excessive_parenthesis=0 +short_multiplication=1 +default_assumption_type=4 +default_assumption_sign=0 + +[Plotting] +plot_legend_placement=2 +plot_style=0 +plot_smoothing=0 +plot_display_grid=1 +plot_full_border=0 +plot_min=0 +plot_max=10 +plot_step=1 +plot_sampling_rate=100 +plot_use_sampling_rate=1 +plot_variable=x +plot_rows=0 +plot_type=0 +plot_color=1 diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/bin/wicd-manager b/Slax/debian10/modules/04-apps/rootcopy/usr/bin/wicd-manager new file mode 100755 index 0000000..321496f --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/bin/wicd-manager @@ -0,0 +1,20 @@ +#!/bin/bash + +# check if gui is runnning, if so bring it to front and do nothing more +if pgrep wicd-client; then + xdotool search --name "Wicd Network Manager" windowactivate + exit +fi + +CONF=/etc/wicd/manager-settings.conf + +# remove previously configured settings so wicd can gather fresh ones +# then run wicd gtk gui application +service wicd stop +sed -i -r "s/^wireless_interface.*=.*//" $CONF +sed -i -r "s/^wired_interface.*=.*//" $CONF +sed -i -r "s/^wpa_driver.*=.*//" $CONF +service wicd start + +# start gui client +wicd-client --no-tray diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/2pcmanfm.desktop b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/2pcmanfm.desktop new file mode 100644 index 0000000..1278327 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/2pcmanfm.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Type=Application +Icon=system-file-manager +Name=File Manager +GenericName=File Manager +Comment=Browse the file system and manage the files +Categories=System;FileTools;FileManager;Utility;Core;GTK; +Exec=pcmanfm %U +StartupNotify=true +Terminal=false +MimeType=inode/directory; diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/3qalculate-gtk.desktop b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/3qalculate-gtk.desktop new file mode 100644 index 0000000..afdec00 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/3qalculate-gtk.desktop @@ -0,0 +1,5 @@ +[Desktop Entry] +Name=Calculator +Exec=qalculate-gtk +Icon=calculator +Terminal=false diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/4leafpad.desktop b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/4leafpad.desktop new file mode 100644 index 0000000..6aef587 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/4leafpad.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Text editor +Comment=Simple text editor +Exec=leafpad %f +Icon=leafpad +Terminal=false +Type=Application +MimeType=text/plain +Categories=GTK;Utility;TextEditor; +Keywords=text;editor; +InitialPreference=6 diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/6wicd.desktop b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/6wicd.desktop new file mode 100644 index 0000000..bf1fd85 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/6wicd.desktop @@ -0,0 +1,5 @@ +[Desktop Entry] +Exec=wicd-manager +Icon=gnome_network_workgroup +Name=Net Manager +Terminal=false diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/xarchiver.desktop b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/xarchiver.desktop new file mode 100644 index 0000000..f349497 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/xarchiver.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Version=1.0 +Name=Archiver +Comment=A GTK+2 only archive manager +GenericName=Archive manager +Exec=xarchiver %f +Icon=xarchiver +Terminal=false +Type=Application +X-MultipleArgs=false +Categories=GTK;Archiving;Utility; +Keywords=GTK;archiver;frontend;compression;zip;bz2;7z;gzip;deb;rpm;arj;lzma;rar;xz; +StartupNotify=true +MimeType=application/x-arj;application/arj;application/x-bzip;application/x-bzip-compressed-tar;application/x-gzip;application/x-rar;application/x-rar-compressed;application/x-tar;application/x-zip;application/x-zip-compressed;application/zip;application/x-7z-compressed;application/x-compressed-tar;application/x-bzip2;application/x-bzip2-compressed-tar;application/x-lzma-compressed-tar;application/x-lzma;application/x-deb;application/deb;application/x-xz;application/x-xz-compressed-tar; diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/zlxtask.desktop b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/zlxtask.desktop new file mode 100644 index 0000000..12aa220 --- /dev/null +++ b/Slax/debian10/modules/04-apps/rootcopy/usr/share/applications/zlxtask.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Task Manager +Comment=Manage running processes +GenericName=Process manager +Keywords=task;kill;suspend;processor;memory;monitoring;performance; +Exec=lxtask +Icon=utilities-system-monitor +Terminal=false +StartupNotify=true +Type=Application +Categories=GTK;System;Monitor; diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-documents.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-documents.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-documents.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-download.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-download.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-download.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-music.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-music.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-music.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-pictures.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-pictures.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-pictures.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-publicshare.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-publicshare.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-publicshare.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-remote.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-remote.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-remote.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-saved-search.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-saved-search.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-saved-search.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-templates.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-templates.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-templates.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-videos.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-videos.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder-videos.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/folder.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-bookmarks.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-bookmarks.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-bookmarks.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-desktop.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-desktop.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-desktop.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-home.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-home.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/16x16/places/user-home.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-documents.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-documents.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-documents.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-download.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-download.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-download.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-music.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-music.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-music.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-pictures.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-pictures.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-pictures.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-publicshare.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-publicshare.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-publicshare.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-remote.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-remote.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-remote.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-saved-search.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-saved-search.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-saved-search.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-templates.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-templates.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-templates.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-videos.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-videos.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder-videos.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/folder.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-bookmarks.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-bookmarks.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-bookmarks.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-desktop.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-desktop.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-desktop.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-home.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-home.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/22x22/places/user-home.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-documents.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-documents.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-documents.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-download.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-download.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-download.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-music.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-music.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-music.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-pictures.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-pictures.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-pictures.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-publicshare.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-publicshare.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-publicshare.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-remote.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-remote.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-remote.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-saved-search.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-saved-search.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-saved-search.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-templates.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-templates.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-templates.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-videos.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-videos.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder-videos.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/folder.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-bookmarks.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-bookmarks.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-bookmarks.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-desktop.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-desktop.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-desktop.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-home.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-home.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/24x24/places/user-home.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-documents.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-documents.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-documents.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-download.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-download.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-download.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-music.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-music.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-music.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-pictures.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-pictures.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-pictures.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-publicshare.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-publicshare.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-publicshare.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-remote.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-remote.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-remote.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-saved-search.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-saved-search.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-saved-search.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-templates.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-templates.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-templates.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-videos.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-videos.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder-videos.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/folder.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-bookmarks.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-bookmarks.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-bookmarks.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-desktop.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-desktop.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-desktop.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-home.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-home.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/32x32/places/user-home.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-documents.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-documents.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-documents.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-download.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-download.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-download.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-music.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-music.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-music.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-pictures.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-pictures.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-pictures.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-publicshare.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-publicshare.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-publicshare.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-remote.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-remote.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-remote.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-saved-search.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-saved-search.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-saved-search.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-templates.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-templates.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-templates.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-videos.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-videos.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder-videos.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/folder.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-bookmarks.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-bookmarks.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-bookmarks.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-desktop.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-desktop.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-desktop.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-home.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-home.png new file mode 100644 index 0000000..154bb9e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/gnome/48x48/places/user-home.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/calculator.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/calculator.png new file mode 100644 index 0000000..70a03aa Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/calculator.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/editor.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/editor.png new file mode 100644 index 0000000..bfc6460 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/editor.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/system-file-manager.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/system-file-manager.png new file mode 100644 index 0000000..33f9b0a Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/128x128/apps/system-file-manager.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/16x16/apps/system-file-manager.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/16x16/apps/system-file-manager.png new file mode 100644 index 0000000..32d82e5 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/16x16/apps/system-file-manager.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/24x24/apps/system-file-manager.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/24x24/apps/system-file-manager.png new file mode 100644 index 0000000..1a94a20 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/24x24/apps/system-file-manager.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/32x32/apps/system-file-manager.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/32x32/apps/system-file-manager.png new file mode 100644 index 0000000..c211019 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/32x32/apps/system-file-manager.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/48x48/apps/system-file-manager.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/48x48/apps/system-file-manager.png new file mode 100644 index 0000000..8b45025 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/48x48/apps/system-file-manager.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/calculator.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/calculator.png new file mode 100644 index 0000000..768b352 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/calculator.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/gnome_network_workgroup.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/gnome_network_workgroup.png new file mode 100644 index 0000000..4d7c2c7 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/gnome_network_workgroup.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/leafpad.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/leafpad.png new file mode 100644 index 0000000..d7689e0 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/leafpad.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/system-file-manager.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/system-file-manager.png new file mode 100644 index 0000000..aca5c1e Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/system-file-manager.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/utilities-system-monitor.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/utilities-system-monitor.png new file mode 100644 index 0000000..f3b5041 Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/icons/hicolor/64x64/apps/utilities-system-monitor.png differ diff --git a/Slax/debian10/modules/04-apps/rootcopy/usr/share/pixmaps/qalculate.png b/Slax/debian10/modules/04-apps/rootcopy/usr/share/pixmaps/qalculate.png new file mode 100644 index 0000000..274d1fa Binary files /dev/null and b/Slax/debian10/modules/04-apps/rootcopy/usr/share/pixmaps/qalculate.png differ diff --git a/Slax/debian10/modules/05-chromium/build b/Slax/debian10/modules/05-chromium/build new file mode 100755 index 0000000..5441344 --- /dev/null +++ b/Slax/debian10/modules/05-chromium/build @@ -0,0 +1,17 @@ +#!/bin/bash + +apt-get update +apt-get install --yes --no-install-recommends chromium + +. ../../cleanup + +echo 'export CHROMIUM_FLAGS="$CHROMIUM_FLAGS --disk-cache-dir=/dev/null --disk-cache-size=1"' >>/etc/chromium.d/default-flags + +rm -Rf /usr/share/icons/gnome/256x256 +rm -Rf /root/.fluxbox +rm -Rf /root/.fluxbox/kblayout +rm -Rf /root/.gtk-bookmarks +rm -Rf /var/lib/wicd/dhclient.conf +rm -Rf /usr/share/applications/chromium.desktop + +savechanges /05-chromium.sb diff --git a/Slax/debian10/rootcopy/etc/adjtime b/Slax/debian10/rootcopy/etc/adjtime new file mode 100644 index 0000000..5cd8f24 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/adjtime @@ -0,0 +1,3 @@ +0.0 0 0.0 +0 +LOCAL diff --git a/Slax/debian10/rootcopy/etc/apt/apt.conf.d/000Slax b/Slax/debian10/rootcopy/etc/apt/apt.conf.d/000Slax new file mode 100644 index 0000000..e197a86 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/apt/apt.conf.d/000Slax @@ -0,0 +1,3 @@ +APT::Install-Recommends "0"; +APT::Install-Suggests "0"; +Acquire::Languages { "none"; } diff --git a/Slax/debian10/rootcopy/etc/apt/sources.list b/Slax/debian10/rootcopy/etc/apt/sources.list new file mode 100644 index 0000000..d054356 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/apt/sources.list @@ -0,0 +1,5 @@ +deb http://deb.debian.org/debian/ buster main contrib non-free +deb http://deb.debian.org/debian/ buster-updates main contrib non-free +deb http://security.debian.org/debian-security buster/updates main contrib non-free + +deb-src http://deb.debian.org/debian/ buster main contrib non-free diff --git a/Slax/debian10/rootcopy/etc/hostname b/Slax/debian10/rootcopy/etc/hostname new file mode 100644 index 0000000..dab346d --- /dev/null +++ b/Slax/debian10/rootcopy/etc/hostname @@ -0,0 +1 @@ +slax diff --git a/Slax/debian10/rootcopy/etc/hosts b/Slax/debian10/rootcopy/etc/hosts new file mode 100644 index 0000000..9f989b1 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/hosts @@ -0,0 +1,7 @@ +127.0.0.1 localhost +127.0.1.1 slax + +# The following lines are desirable for IPv6 capable hosts +::1 localhost ip6-localhost ip6-loopback +ff02::1 ip6-allnodes +ff02::2 ip6-allrouters diff --git a/Slax/debian10/rootcopy/etc/issue b/Slax/debian10/rootcopy/etc/issue new file mode 100644 index 0000000..4ecd36b --- /dev/null +++ b/Slax/debian10/rootcopy/etc/issue @@ -0,0 +1,25 @@ + + + \l + + + + + + Thank you for using Slax + ________.__ based on Debian + / ____/| | _____ ___ ___ + \\____ \\ | | \\__ \\ \\ \\/ / + / \\| |__/ __ \\_> < + /______ /|____(____ /__/\\_ \\ + . \\/ \\/ \\/ + : : + : Your login name: root : + : Password: toor : + + + + + + + diff --git a/Slax/debian10/rootcopy/etc/localtime b/Slax/debian10/rootcopy/etc/localtime new file mode 120000 index 0000000..e59d7a1 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/localtime @@ -0,0 +1 @@ +/usr/share/zoneinfo/Etc/UTC \ No newline at end of file diff --git a/Slax/debian10/rootcopy/etc/motd b/Slax/debian10/rootcopy/etc/motd new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/motd @@ -0,0 +1 @@ + diff --git a/Slax/debian10/rootcopy/etc/profile b/Slax/debian10/rootcopy/etc/profile new file mode 100644 index 0000000..196c337 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/profile @@ -0,0 +1,34 @@ +# /etc/profile: system-wide .profile file for the Bourne shell (sh(1)) +# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...). + +if [ "`id -u`" -eq 0 ]; then + PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games" +else + PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" +fi +export PATH + +if [ "${PS1-}" ]; then + if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then + # The file bash.bashrc already sets the default PS1. + # PS1='\h:\w\$ ' + if [ -f /etc/bash.bashrc ]; then + . /etc/bash.bashrc + fi + else + if [ "`id -u`" -eq 0 ]; then + PS1='# ' + else + PS1='$ ' + fi + fi +fi + +if [ -d /etc/profile.d ]; then + for i in /etc/profile.d/*.sh; do + if [ -r $i ]; then + . $i + fi + done + unset i +fi diff --git a/Slax/debian10/rootcopy/etc/ssh/sshd_config b/Slax/debian10/rootcopy/etc/ssh/sshd_config new file mode 100644 index 0000000..c34228d --- /dev/null +++ b/Slax/debian10/rootcopy/etc/ssh/sshd_config @@ -0,0 +1,123 @@ +# $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $ + +# This is the sshd server system-wide configuration file. See +# sshd_config(5) for more information. + +# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin + +# The strategy used for options in the default sshd_config shipped with +# OpenSSH is to specify options with their default value where +# possible, but leave them commented. Uncommented options override the +# default value. + +#Port 22 +#AddressFamily any +#ListenAddress 0.0.0.0 +#ListenAddress :: + +#HostKey /etc/ssh/ssh_host_rsa_key +#HostKey /etc/ssh/ssh_host_ecdsa_key +#HostKey /etc/ssh/ssh_host_ed25519_key + +# Ciphers and keying +#RekeyLimit default none + +# Logging +#SyslogFacility AUTH +#LogLevel INFO + +# Authentication: + +#LoginGraceTime 2m +PermitRootLogin yes +#StrictModes yes +#MaxAuthTries 6 +#MaxSessions 10 + +#PubkeyAuthentication yes + +# Expect .ssh/authorized_keys2 to be disregarded by default in future. +#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 + +#AuthorizedPrincipalsFile none + +#AuthorizedKeysCommand none +#AuthorizedKeysCommandUser nobody + +# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts +#HostbasedAuthentication no +# Change to yes if you don't trust ~/.ssh/known_hosts for +# HostbasedAuthentication +#IgnoreUserKnownHosts no +# Don't read the user's ~/.rhosts and ~/.shosts files +#IgnoreRhosts yes + +# To disable tunneled clear text passwords, change to no here! +#PasswordAuthentication yes +#PermitEmptyPasswords no + +# Change to yes to enable challenge-response passwords (beware issues with +# some PAM modules and threads) +ChallengeResponseAuthentication no + +# Kerberos options +#KerberosAuthentication no +#KerberosOrLocalPasswd yes +#KerberosTicketCleanup yes +#KerberosGetAFSToken no + +# GSSAPI options +#GSSAPIAuthentication no +#GSSAPICleanupCredentials yes +#GSSAPIStrictAcceptorCheck yes +#GSSAPIKeyExchange no + +# Set this to 'yes' to enable PAM authentication, account processing, +# and session processing. If this is enabled, PAM authentication will +# be allowed through the ChallengeResponseAuthentication and +# PasswordAuthentication. Depending on your PAM configuration, +# PAM authentication via ChallengeResponseAuthentication may bypass +# the setting of "PermitRootLogin without-password". +# If you just want the PAM account and session checks to run without +# PAM authentication, then enable this but set PasswordAuthentication +# and ChallengeResponseAuthentication to 'no'. +UsePAM yes + +#AllowAgentForwarding yes +#AllowTcpForwarding yes +#GatewayPorts no +X11Forwarding yes +#X11DisplayOffset 10 +#X11UseLocalhost yes +#PermitTTY yes +PrintMotd no +#PrintLastLog yes +#TCPKeepAlive yes +#UseLogin no +#UsePrivilegeSeparation sandbox +#PermitUserEnvironment no +#Compression delayed +#ClientAliveInterval 0 +#ClientAliveCountMax 3 +#UseDNS no +#PidFile /var/run/sshd.pid +#MaxStartups 10:30:100 +#PermitTunnel no +#ChrootDirectory none +#VersionAddendum none + +# no default banner path +#Banner none + +# Allow client to pass locale environment variables +AcceptEnv LANG LC_* + +# override default of no subsystems +Subsystem sftp /usr/lib/openssh/sftp-server + +# Example of overriding settings on a per-user basis +#Match User anoncvs +# X11Forwarding no +# AllowTcpForwarding no +# PermitTTY no +# ForceCommand cvs server diff --git a/Slax/debian10/rootcopy/etc/systemd/system/multi-user.target.wants/dhclient.service b/Slax/debian10/rootcopy/etc/systemd/system/multi-user.target.wants/dhclient.service new file mode 120000 index 0000000..160b857 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/systemd/system/multi-user.target.wants/dhclient.service @@ -0,0 +1 @@ +/lib/systemd/system/dhclient.service \ No newline at end of file diff --git a/Slax/debian10/rootcopy/etc/timezone b/Slax/debian10/rootcopy/etc/timezone new file mode 100644 index 0000000..7f39493 --- /dev/null +++ b/Slax/debian10/rootcopy/etc/timezone @@ -0,0 +1 @@ +Etc/UTC diff --git a/Slax/debian10/rootcopy/root/.bashrc b/Slax/debian10/rootcopy/root/.bashrc new file mode 100644 index 0000000..f802df3 --- /dev/null +++ b/Slax/debian10/rootcopy/root/.bashrc @@ -0,0 +1,41 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. + +# Note: PS1 and umask are already set in /etc/profile. You should not +# need this unless you want different defaults for root. +# PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ ' +# umask 022 + +export EDITOR=mcedit +export LS_OPTIONS='--color=auto' +eval "`dircolors`" + +ls() { /bin/ls $LS_OPTIONS "$@"; } +ll() { /bin/ls $LS_OPTIONS -l "$@"; } +l() { /bin/ls $LS_OPTIONS -lA "$@"; } + +apt-get() +{ + if [ -e /var/cache/apt/pkgcache.bin ]; then + /usr/bin/apt-get "$@" + else + /usr/bin/apt-get update + /usr/bin/apt-get "$@" + fi +} + +apt() +{ + if [ -e /var/cache/apt/pkgcache.bin ]; then + /usr/bin/apt "$@" + else + /usr/bin/apt update + /usr/bin/apt "$@" + fi +} + +export -f ls +export -f ll +export -f l +export -f apt-get +export -f apt + diff --git a/Slax/debian10/rootcopy/root/.config/mc/ini b/Slax/debian10/rootcopy/root/.config/mc/ini new file mode 100644 index 0000000..c8dd1b6 --- /dev/null +++ b/Slax/debian10/rootcopy/root/.config/mc/ini @@ -0,0 +1,142 @@ +[Midnight-Commander] +verbose=1 +pause_after_run=1 +shell_patterns=1 +auto_save_setup=1 +preallocate_space=0 +auto_menu=0 +use_internal_view=1 +use_internal_edit=1 +clear_before_exec=1 +confirm_delete=1 +confirm_overwrite=1 +confirm_execute=0 +confirm_history_cleanup=1 +confirm_exit=0 +confirm_directory_hotlist_delete=1 +safe_delete=0 +mouse_repeat_rate=100 +double_click_speed=250 +use_8th_bit_as_meta=0 +confirm_view_dir=0 +mouse_move_pages_viewer=1 +mouse_close_dialog=0 +fast_refresh=0 +drop_menus=0 +wrap_mode=1 +old_esc_mode=0 +old_esc_mode_timeout=1000000 +cd_symlinks=1 +show_all_if_ambiguous=0 +max_dirt_limit=10 +use_file_to_guess_type=1 +alternate_plus_minus=0 +only_leading_plus_minus=1 +show_output_starts_shell=0 +xtree_mode=0 +num_history_items_recorded=60 +file_op_compute_totals=1 +classic_progressbar=1 +vfs_timeout=60 +ftpfs_directory_timeout=900 +use_netrc=1 +ftpfs_retry_seconds=30 +ftpfs_always_use_proxy=0 +ftpfs_use_passive_connections=1 +ftpfs_use_passive_connections_over_proxy=0 +ftpfs_use_unix_list_options=1 +ftpfs_first_cd_then_ls=1 +fish_directory_timeout=900 +editor_tab_spacing=8 +editor_word_wrap_line_length=72 +editor_fill_tabs_with_spaces=0 +editor_return_does_auto_indent=0 +editor_backspace_through_tabs=0 +editor_fake_half_tabs=1 +editor_option_save_mode=0 +editor_option_save_position=1 +editor_option_auto_para_formatting=0 +editor_option_typewriter_wrap=0 +editor_edit_confirm_save=1 +editor_syntax_highlighting=1 +editor_persistent_selections=1 +editor_drop_selection_on_copy=1 +editor_cursor_beyond_eol=0 +editor_cursor_after_inserted_block=0 +editor_visible_tabs=1 +editor_visible_spaces=1 +editor_line_state=0 +editor_simple_statusbar=0 +editor_check_new_line=0 +editor_show_right_margin=0 +editor_group_undo=1 +editor_state_full_filename=1 +editor_ask_filename_before_edit=0 +nice_rotating_dash=1 +mcview_remember_file_position=0 +auto_fill_mkdir_name=1 +copymove_persistent_attr=1 +editor_backup_extension=~ +editor_filesize_threshold=64M +editor_stop_format_chars=-+*\\,.;:&> +mcview_eof= +ignore_ftp_chattr_errors=true +skin=default + +[Layout] +message_visible=1 +keybar_visible=1 +xterm_title=1 +output_lines=0 +command_prompt=1 +menubar_visible=0 +free_space=1 +horizontal_split=0 +vertical_equal=1 +left_panel_size=40 +horizontal_equal=1 +top_panel_size=1 + +[Misc] +timeformat_recent=%b %e %H:%M +timeformat_old=%b %e %Y +ftp_proxy_host=gate +ftpfs_password=anonymous@ +display_codepage=UTF-8 +source_codepage=Other_8_bit +autodetect_codeset= +spell_language=en +clipboard_store= +clipboard_paste= + +[Colors] +base_color= +linux= +color_terminals= + +[Panels] +show_mini_info=true +kilobyte_si=false +mix_all_files=false +show_backups=true +show_dot_files=true +fast_reload=false +fast_reload_msg_shown=false +mark_moves_down=true +reverse_files_only=true +auto_save_setup_panels=false +navigate_with_arrows=false +panel_scroll_pages=true +panel_scroll_center=false +mouse_move_pages=true +filetype_mode=true +permission_mode=false +torben_fj_mode=false +quick_search_mode=2 +select_flags=6 + +[Panelize] +Find *.orig after patching=find . -name \\*.orig -print +Find SUID and SGID programs=find . \\( \\( -perm -04000 -a -perm /011 \\) -o \\( -perm -02000 -a -perm /01 \\) \\) -print +Find rejects after patching=find . -name \\*.rej -print +Modified git files=git ls-files --modified diff --git a/Slax/debian10/rootcopy/root/.config/mc/panels.ini b/Slax/debian10/rootcopy/root/.config/mc/panels.ini new file mode 100644 index 0000000..4c8bd27 --- /dev/null +++ b/Slax/debian10/rootcopy/root/.config/mc/panels.ini @@ -0,0 +1,33 @@ +[New Left Panel] +display=listing +reverse=0 +case_sensitive=1 +exec_first=0 +sort_order=name +list_mode=full +brief_cols=2 +user_format=half type name | size | perm +user_status0=half type name | size | perm +user_status1=half type name | size | perm +user_status2=half type name | size | perm +user_status3=half type name | size | perm +user_mini_status=0 + +[New Right Panel] +display=listing +reverse=0 +case_sensitive=1 +exec_first=0 +sort_order=name +list_mode=full +brief_cols=2 +user_format=half type name | size | perm +user_status0=half type name | size | perm +user_status1=half type name | size | perm +user_status2=half type name | size | perm +user_status3=half type name | size | perm +user_mini_status=0 + +[Dirs] +current_is_left=false +other_dir=/ diff --git a/Slax/debian10/rootcopy/usr/bin/dir2sb b/Slax/debian10/rootcopy/usr/bin/dir2sb new file mode 100755 index 0000000..3ddd64d --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/dir2sb @@ -0,0 +1,58 @@ +#!/bin/bash +# Author: Tomas M. + +usage() +{ + echo "" + echo "Convert directory to .sb compressed module" + echo "Usage: $0 [source_directory.sb] [[target_file.sb]]" + echo " If source_directory does not have .sb suffix and it is not 'squashfs-root'," + echo " then the source_directory itself is included in the module and" + echo " then the target_file.sb parameter is required." + echo " If target_file.sb is not specified, the source_directory is erased" + echo " and replaced by the newly generated module file." +} + +P1="$(readlink -f "$1")" +P2="$(readlink -f "$2")" + +if [ "$P1" = "$P2" ]; then + P2="" +fi + +SB=$(echo "$P1" | grep -o "[.]sb/*\$") +if [ "$(echo "$P1" | grep -o "/squashfs-root/*\$")" != "" ]; then + SB="true" +fi + +if [ "$SB" = "" ]; then + KEEP="-keep-as-directory" + if [ "$P2" = "" ]; then + usage + exit 1 + fi +else + KEEP="" +fi + +if [ ! -d "$P1" ]; then + echo "Not a directory: $P1" >&2 + exit 2 +fi + + +if [ "$P2" = "" ]; then + TARGET="$P1".sb + while [ -e "$TARGET" ]; do TARGET="$TARGET"x; done + mksquashfs "$P1" "$TARGET" -comp xz -b 1024K -always-use-fragments $KEEP >/dev/null || exit 3 + umount "$P1" 2>/dev/null + rm -Rf "$P1" + mv "$TARGET" "$P1" +else + if [ -e "$P2" ]; then + echo "Target exists: $P2" >&2 + exit 4 + fi + + mksquashfs "$P1" "$P2" -comp xz -b 1024K -always-use-fragments $KEEP >/dev/null +fi diff --git a/Slax/debian10/rootcopy/usr/bin/genslaxiso b/Slax/debian10/rootcopy/usr/bin/genslaxiso new file mode 100755 index 0000000..9bbdd40 --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/genslaxiso @@ -0,0 +1,77 @@ +#!/bin/bash + +CWD=$(pwd) +SOURCE=/run/initramfs/memory +TEMP=/tmp/slaxiso.$$ +REGEX='^$' + +if [ "$1" = "-e" ]; then + REGEX="$2" + shift + shift +fi + +TARGET="$(readlink -f "$1")" + +if [ "$TARGET" = "" ]; then + echo "" + echo "Generate Slax ISO image, adding specified modules" + echo "Regular expression is used to exclude any existing path or file with -e regex" + echo "" + echo "Usage:" + echo " $0 [[ -e regex ]] target.iso [[module.sb]] [[module.sb]] ..." + echo "" + echo "Examples:" + echo " # to create Slax iso without chromium.sb module:" + echo " $0 -e 'chromium' slax_without_chromium.iso" + echo "" + echo " # to create Slax text-mode core only:" + echo " $0 -e 'firmware|xorg|desktop|apps|chromium' slax_textmode.iso" + exit 1 +fi + +if [ -e "$SOURCE/data/slax/boot/isolinux.bin" ]; then + SLAX=$SOURCE/data/slax +fi + +if [ -e "$SOURCE/toram/boot/isolinux.bin" ]; then + SLAX=$SOURCE/toram +fi + +if [ "$SLAX" = "" ]; then + echo "Cannot find boot/isolinux.bin in Slax data" >&2 + exit 2 +fi + +GRAFT=\ +$( + cd "$SLAX" + find . -type f | sed -r "s:^[.]/::" | egrep -v "^boot/isolinux.(bin|boot)$" | egrep -v "^changes/" | egrep -v "$REGEX" | while read LINE; do + echo "slax/$LINE=$SLAX/$LINE" + done +) + +# add all modules +while [ "$2" != "" ]; do + if [ ! -e "$2" ]; then + echo "File does not exist: $2" + exit 3 + fi + BAS="$(basename "$2")" + MOD="$(readlink -f "$2")" + GRAFT="$GRAFT slax/modules/$BAS=$MOD" + shift +done + +( + mkdir -p $TEMP/slax/{boot,modules,changes} + cp "$SLAX/boot/isolinux.bin" "$TEMP/slax/boot" + cd "$TEMP" + genisoimage -o - -quiet -v -J -R -D -A slax -V slax \ + -no-emul-boot -boot-info-table -boot-load-size 4 -input-charset utf-8 \ + -b slax/boot/isolinux.bin -c slax/boot/isolinux.boot \ + -graft-points $GRAFT \ + . \ +) > "$TARGET" + +rm -Rf $TEMP diff --git a/Slax/debian10/rootcopy/usr/bin/pxe b/Slax/debian10/rootcopy/usr/bin/pxe new file mode 100755 index 0000000..3aaff4e --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/pxe @@ -0,0 +1,86 @@ +#!/bin/bash +# Rebuild initial ramdisk with full network drivers, +# start DHCP and TFTP server in order to provide PXE service +# +# Author: Tomas M + +LIVE=/run/initramfs +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.*" | head -n 1 | cut -d " " -f 2) + +# if no IP is assigned to this computer, setup private address randomly +if [ "$IP" = "" ]; then + killall dhclient 2>/dev/null + IP="10."$(($RANDOM/130+1))"."$(($RANDOM/130+1))".1" + ifconfig $(ls -1 /sys/class/net | egrep -v '^lo$' | sort | head -n 1) $IP netmask 255.255.255.0 +fi + +# if gateway is not recognized, lets make our IP a gateway and enable forwarding +if [ "$GW" = "" ]; then + GW="$IP" + echo 1 > /proc/sys/net/ipv4/conf/all/forwarding + echo 1 > /proc/sys/net/ipv6/conf/all/forwarding +fi + +echo Starting PXE server on $IP ... + +# calculate C class range +RANGE=$(echo $IP | cut -d "." -f 1-3) + +# make sure dnsmasq can be started +killall dnsmasq 2>/dev/null +killall busybox 2>/dev/null +rm -Rf $FTPROOT 2>/dev/null +mkdir -p $FTPROOT/{pxelinux.cfg,tmp}/ + +# create root filesystem for ftfp +cd $LIVE +( find . -print | grep -v "memory" + cd / + find /lib/modules/$(uname -r)/kernel/drivers/net | grep -v wireless +) | cpio -pvd $FTPROOT/tmp 2>/dev/null + +cp /lib/modules/$(uname -r)/modules.* $FTPROOT/tmp/lib/modules/$(uname -r) +depmod -b $FTPROOT/tmp +rm $FTPROOT/tmp/lib/initramfs_escaped + +# pack root in initramfs +cd $FTPROOT/tmp +find . -print | cpio -o -H newc 2>/dev/null | gzip -f --fast >../initrfs.img +cd .. +rm -Rf tmp + +# link files here since copying is not necessary +ln -s $(find $LIVE/memory/{data,iso,toram} 2>/dev/null | grep vmlinuz | head -n 1) $FTPROOT/vmlinuz +ln -s $(find $LIVE/memory/{data,iso,toram} 2>/dev/null | grep pxelinux.0 | head -n 1) $FTPROOT/pxelinux.0 +ln -s $(find $LIVE/memory/{data,iso,toram} 2>/dev/null | grep ldlinux.c32 | head -n 1) $FTPROOT/ldlinux.c32 + +find $LIVE/memory/{data,iso,toram} 2>/dev/null | egrep "[.]sb\$" | sort -n | while read LINE; do + BAS="$(basename "$LINE")" + ln -s $LINE "$FTPROOT/$BAS" + echo $BAS >> "$FTPROOT/PXEFILELIST" +done + +echo "This is Slax PXE data server. PXE clients will download file list" > "$FTPROOT/index.html" + +# default pxelinux configuration. Keep xmode selection for clients the same like for the server +echo " +PROMPT 0 +DEFAULT slax +LABEL slax +KERNEL /vmlinuz +IPAPPEND 1 +APPEND initrd=/initrfs.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 $(cat /proc/cmdline | egrep -o 'slax.flags=[^ ]+' | sed -r 's:[,=]pxe::' | sed -r 's:[,=]toram::') +" > $FTPROOT/pxelinux.cfg/default + +# start the DHCP server and TFTP server +dnsmasq --enable-tftp --tftp-root=/var/state/dnsmasq/root \ +--dhcp-boot=pxelinux.0,"$IP",$IP \ +--dhcp-option=3,$GW \ +--dhcp-range=$RANGE.2,$RANGE.250,infinite --log-dhcp + +# start HTTP server at port 7529 (that are the numbers you type on your phone to write 'slax') +busybox httpd -p 7529 -h /var/state/dnsmasq/root diff --git a/Slax/debian10/rootcopy/usr/bin/rmsbdir b/Slax/debian10/rootcopy/usr/bin/rmsbdir new file mode 100755 index 0000000..42cb449 --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/rmsbdir @@ -0,0 +1,17 @@ +#!/bin/bash +# Author: Tomas M. + +if [ ! -e "$1" ]; then + echo + echo "Erase module directory created by sb2dir" + echo "Usage: $0 [source_directory.sb]" + exit 1 +fi + +if [ ! -d "$1" ]; then + echo "Directory does not exist: $1" >&2 + exit +fi + +umount "$1" 2>/dev/null +rm -Rf "$1" diff --git a/Slax/debian10/rootcopy/usr/bin/savechanges b/Slax/debian10/rootcopy/usr/bin/savechanges new file mode 100755 index 0000000..48e9c9e --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/savechanges @@ -0,0 +1,46 @@ +#!/bin/bash + +TMP=/tmp/changes$$ +EXCLUDE="^\$|/\$|[.]wh[.][.]wh[.]orph/|^[.]wh[.][.]wh[.]plnk/|^[.]wh[.][.]wh[.]aufs|^var/cache/|^var/backups/|^var/tmp/|^var/log/|^var/lib/apt/|^var/lib/dhcp/|^var/lib/systemd/|^sbin/fsck[.]aufs|^etc/resolv[.]conf|^root/[.]Xauthority|^root/[.]xsession-errors|^root/[.]fehbg|^root/[.]fluxbox/lastwallpaper|^root/[.]fluxbox/menu_resolution|^etc/mtab|^etc/fstab|^boot/|^dev/|^mnt/|^proc/|^run/|^sys/|^tmp/" +CHANGES=/run/initramfs/memory/changes + +if [ "$1" = "" ]; then + echo "" + echo "savechanges - save all changed files in a compressed filesystem bundle" + echo " - excluding some predefined files such as /etc/mtab," + echo " temp & log files, empty directories, apt cache, and such" + echo "" + echo "Usage:" + echo " $0 [ target_file.sb ] [ changes_directory ]" + echo "" + echo "If changes_directory is not specified, /run/initramfs/memory/changes is used." + echo "" + exit 1 +fi + +if [ ! "$2" = "" ]; then + CHANGES="$2" +fi + +# exclude the save_file itself of course +EXCLUDE="$EXCLUDE|^""$(readlink -f "$1" | cut -b 2- | sed -r "s/[.]/[.]/")""\$" + +CWD=$(pwd) + +cd $CHANGES || exit + +mkdir -p $TMP +mount -t tmpfs tmpfs $TMP + +find \( -type d -printf "%p/\n" , -not -type d -print \) \ + | sed -r "s/^[.]\\///" | egrep -v "$EXCLUDE" \ + | while read FILE; do + cp --parents -afr "$FILE" "$TMP" +done + +cd $CWD + +mksquashfs $TMP "$1" -comp xz -b 1024K -always-use-fragments -noappend + +umount $TMP +rmdir $TMP diff --git a/Slax/debian10/rootcopy/usr/bin/sb2dir b/Slax/debian10/rootcopy/usr/bin/sb2dir new file mode 100755 index 0000000..4f580ec --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/sb2dir @@ -0,0 +1,33 @@ +#!/bin/bash +# Author: Tomas M. + +if [ ! -e "$1" ]; then + echo + echo "Convert .sb compressed module into directory with the same name" + echo "Usage: $0 [source_file.sb] [[optional output_directory]]" + echo " If the output_directory is specified, it must exist" + echo " If the output_directory is not specified, the name source_file.sb" + echo " is used and the directory is overmounted with tmpfs" + exit 1 +fi + +if [ ! -r "$1" ]; then + echo "File does not exist: $1" >&2 + exit +fi + +if [ "$2" = "" ]; then + SOURCE="$1".x + while [ -e "$SOURCE" ]; do SOURCE="$SOURCE"x; done + mv "$1" "$SOURCE" || exit + mkdir "$1" + mount -t tmpfs tmpfs "$1" + unsquashfs -f -dest "$1" "$SOURCE" >/dev/null || exit + rm "$SOURCE" +else + if [ ! -d "$2" ]; then + echo "Directory does not exist: $2" >&2 + exit + fi + unsquashfs -f -dest "$2" "$1" >/dev/null +fi diff --git a/Slax/debian10/rootcopy/usr/bin/slax b/Slax/debian10/rootcopy/usr/bin/slax new file mode 100755 index 0000000..f7a8d60 --- /dev/null +++ b/Slax/debian10/rootcopy/usr/bin/slax @@ -0,0 +1,167 @@ +#!/bin/bash +# Slax management and control script +# Author: Tomas M + +# activate +# deactivate +# list + + +LIVE=/run/initramfs/memory +RAMSTORE=$LIVE/modules + +# Print error message and exit +# $1 = error message +# +die() +{ + echo "$1" >&2 + exit 1 +} + + +print_branches() +{ + local SI BUNDLE LOOP CWD + + SI="/sys/fs/aufs/$(cat /proc/mounts | grep 'aufs / aufs' | egrep -o 'si=([^,) ]+)' | tr = _)" + CWD="$(pwd)" + cd "$SI" + ls -v1 | grep -v xi_path | egrep 'br[0-9]+' | xargs cat | grep memory/bundles | rev | cut -b 4- | rev | while read BUNDLE; do + if mountpoint -q "$BUNDLE"; then + LOOP=$(cat /proc/mounts | fgrep " $BUNDLE squashfs" | cut -d " " -f 1) + echo -n "$BUNDLE" + echo -ne "\t" + losetup $LOOP | sed -r "s:.*[(]|[)].*::g" + fi + done | tac + cd "$CWD" +} + + +# Activate Slax Bundle +# $1 = file to activate +# +activate() +{ + local SB TGT BAS + + SB="$(readlink -f "$1")" + BAS="$(basename "$SB")" + + # check if file exists + if [ ! -r "$SB" ]; then + usage "file not found $SB" + fi + + # check if the file is part of aufs union, if yes we need to copy it outside + if df "$SB" | cut -d " " -f 1 | grep -q aufs; then + TGT="$RAMSTORE" + mkdir -p "$TGT" + if [ -r $TGT/$BAS ]; then die "File exists: $TGT/$BAS"; fi + cp -n "$SB" "$TGT/$BAS" + if [ $? -ne 0 ]; then die "Error copying file to $TGT/$BAS. Not enough free RAM or disk space?"; fi + SB="$TGT/$BAS" + fi + + # check if this particular file is already activated + if print_branches | cut -f 2 | fgrep -q "$SB"; then + exit + fi + + # mount remount,add + TGT="$LIVE/bundles/$BAS" + mkdir -p "$TGT" + + mount -n -o loop,ro "$SB" "$TGT" + if [ $? -ne 0 ]; then + die "Error mounting $SB to $TGT, perhaps corrupted download" + fi + + # add current branch to aufs union + mount -t aufs -o remount,add:1:"$TGT" aufs / + if [ $? -ne 0 ]; then + umount "$TGT" + rmdir "$TGT" + die "Error attaching bundle filesystem to Slax" + fi + + echo "Slax Bundle activated: $BAS" +} + + +# Deactivate Slax bundle of the given name +# $1 = path to bundle file, or its name +# +deactivate() +{ + local BUNDLES SB MATCH LOOP LOOPFILE + + BUNDLES=$LIVE/bundles + MODULES=$LIVE/modules + SB="$(basename "$1")" + + rmdir "$BUNDLES/$SB" 2>/dev/null # this fails unless the dir is + rmdir "$BUNDLES/$SB.sb" 2>/dev/null # forgotten there empty. It's safe this way + + if [ ! -d "$BUNDLES/$SB" ]; then + # we don't have real filename match, lets try to add .sb extension + if [ ! -d "$BUNDLES/$SB.sb" ]; then + # no, still no match. Lets use some guesswork + SB=$(print_branches | cut -f 2 | egrep -o "/[0-9]+-$SB.sb\$" | tail -n 1 | xargs -r basename) + else + SB="$SB.sb" + fi + fi + + if [ "$SB" = "" -o ! -d "$BUNDLES/$SB" ]; then + die "can't find active slax bundle $1" + fi + + echo "Attempting to deactivate Slax bundle $SB..." + mount -t aufs -o remount,verbose,del:"$BUNDLES/$SB" aufs / 2>/dev/null + if [ $? -ne 0 ]; then + die "Unable to deactivate Slax Bundle - still in use. See dmesg for more." + fi + + # remember what loop device was the bundle mounted to, it may be needed later + LOOP="$(cat /proc/mounts | fgrep " $BUNDLES/$SB " | cut -d " " -f 1)" + LOOPFILE="$(losetup "$LOOP" | cut -d " " -f 3 | sed -r 's:^.|.$::g')" + + umount "$BUNDLES/$SB" 2>/dev/null + if [ $? -ne 0 ]; then + die "Unable to umount Slax bundle loop-mount $BUNDLES/$SB" + fi + rmdir "$BUNDLES/$SB" + + # free the loop device manually since umount fails to do that if the bundle was activated on boot + losetup -d "$LOOP" 2>/dev/null + + if echo "$LOOPFILE" | grep -q $RAMSTORE; then + rm -f $LOOPFILE + fi + + echo "Slax Bundle deactivated: $SB" +} + + +if [ "$1" = "" ]; then + die "Usage: $0 [ activate | deactivate | list ] [ file.sb ]" +fi + +if [ "$1" = "activate" ]; then + activate "$2" +fi + +if [ "$1" = "deactivate" ]; then + deactivate "$2" +fi + +if [ "$1" = "list" ]; then + print_branches +fi + +if [ "$1" = "savechanges" ]; then + shift + savechanges "$@" +fi diff --git a/Slax/debian10/rootcopy/usr/lib/systemd/system/dhclient.service b/Slax/debian10/rootcopy/usr/lib/systemd/system/dhclient.service new file mode 100644 index 0000000..2c92a32 --- /dev/null +++ b/Slax/debian10/rootcopy/usr/lib/systemd/system/dhclient.service @@ -0,0 +1,16 @@ +[Unit] +Description=DHCP Client +Documentation=man:dhclient(8) +Wants=network.target +After=network-pre.target systemd-sysctl.service systemd-modules-load.service +Before=network.target shutdown.target network-online.target +ConditionPathExists=!/run/initramfs/net.up.flag + +[Service] +Type=forking +ExecStart=-/bin/sh -c 'udevadm settle && dhclient -nw' +PIDFile=/run/dhclient.pid + +[Install] +WantedBy=multi-user.target +WantedBy=network-online.target diff --git a/Slax/debian10/rootcopy/usr/lib/systemd/system/getty@.service b/Slax/debian10/rootcopy/usr/lib/systemd/system/getty@.service new file mode 100644 index 0000000..3a805ae --- /dev/null +++ b/Slax/debian10/rootcopy/usr/lib/systemd/system/getty@.service @@ -0,0 +1,54 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +[Unit] +Description=Getty on %I +Documentation=man:agetty(8) man:systemd-getty-generator(8) +Documentation=http://0pointer.de/blog/projects/serial-console.html +After=systemd-user-sessions.service plymouth-quit-wait.service +After=rc-local.service + +# If additional gettys are spawned during boot then we should make +# sure that this is synchronized before getty.target, even though +# getty.target didn't actually pull it in. +Before=getty.target +IgnoreOnIsolate=yes + +# IgnoreOnIsolate causes issues with sulogin, if someone isolates +# rescue.target or starts rescue.service from multi-user.target or +# graphical.target. +Conflicts=rescue.service +Before=rescue.service + +# On systems without virtual consoles, don't start any getty. Note +# that serial gettys are covered by serial-getty@.service, not this +# unit. +ConditionPathExists=/dev/tty0 + +[Service] +# the VT is cleared by TTYVTDisallocate +ExecStart=-/sbin/agetty --noclear %I $TERM +Type=idle +Restart=always +RestartSec=0 +UtmpIdentifier=%I +TTYPath=/dev/%I +TTYReset=yes +TTYVHangup=yes +#TM do not clear VT: +TTYVTDisallocate=no +KillMode=process +IgnoreSIGPIPE=no +SendSIGHUP=yes + +# Unset locale for the console getty since the console has problems +# displaying some internationalized messages. +Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION= + +[Install] +WantedBy=getty.target +DefaultInstance=tty1 diff --git a/Slax/debian10/rootcopy/usr/lib/systemd/system/ssh.service b/Slax/debian10/rootcopy/usr/lib/systemd/system/ssh.service new file mode 100644 index 0000000..a29b18e --- /dev/null +++ b/Slax/debian10/rootcopy/usr/lib/systemd/system/ssh.service @@ -0,0 +1,18 @@ +[Unit] +Description=OpenBSD Secure Shell server +After=network.target auditd.service +ConditionPathExists=!/etc/ssh/sshd_not_to_be_run + +[Service] +EnvironmentFile=-/etc/default/ssh +ExecStartPre=-/bin/sh -c 'if ! ls /etc/ssh/ssh_host_* >/dev/null 2>&1; then /usr/sbin/dpkg-reconfigure openssh-server; fi' +ExecStart=/usr/sbin/sshd -D $SSHD_OPTS +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process +Restart=on-failure +RestartPreventExitStatus=255 +Type=notify + +[Install] +WantedBy=multi-user.target +Alias=sshd.service diff --git a/Slax/debian10/rootcopy/usr/lib/udev/rules.d/90-slax-automount.rules b/Slax/debian10/rootcopy/usr/lib/udev/rules.d/90-slax-automount.rules new file mode 100644 index 0000000..b704f35 --- /dev/null +++ b/Slax/debian10/rootcopy/usr/lib/udev/rules.d/90-slax-automount.rules @@ -0,0 +1,2 @@ +# we don't care about loop* and ram* devices +KERNEL=="[!lr]*", SUBSYSTEM=="block", RUN+="/sbin/slax-automount %r/%k" diff --git a/Slax/debian10/rootcopy/usr/sbin/gtk-bookmarks-update b/Slax/debian10/rootcopy/usr/sbin/gtk-bookmarks-update new file mode 100755 index 0000000..1245bda --- /dev/null +++ b/Slax/debian10/rootcopy/usr/sbin/gtk-bookmarks-update @@ -0,0 +1,23 @@ +#!/bin/bash + +LOCK=/run/lock/gtk-bookmark-update-lock +BOOKMARKS=/root/.gtk-bookmarks + +# make sure to avoid parallel execution by using mkdir as lock +while true; do + mkdir $LOCK 2>/dev/null + if [ $? = 0 ]; then + break + fi +done + +cat $BOOKMARKS | fgrep -v ///media/ | fgrep -v "file:/// /" | egrep -v '^$' > $BOOKMARKS.tmp 2>/dev/null +ls -1 /media | sort | while read LINE; do + echo "file:///media/$LINE $LINE" >> $BOOKMARKS.tmp +done + +echo "file:/// /" >> $BOOKMARKS.tmp # add root at the beginning + +mv -f $BOOKMARKS.tmp $BOOKMARKS + +rmdir $LOCK diff --git a/Slax/debian10/rootcopy/usr/sbin/slax-automount b/Slax/debian10/rootcopy/usr/sbin/slax-automount new file mode 100755 index 0000000..093689c --- /dev/null +++ b/Slax/debian10/rootcopy/usr/sbin/slax-automount @@ -0,0 +1,67 @@ +#!/bin/bash +# Recreate fstab entries in /etc/fstab and make /media directories +# This script is called by udev rules, see /lib/udev/rules.d/ +# +# Author: Tomas M + +# Variables available in udev environment: +# $ACTION (eg: add, remove) +# $DEVNAME (full device node name including path) +# $DEVTYPE (eg: disk) +# $ID_FS_TYPE (eg: ext3) +# $MAJOR and $MINOR numbers +# $SUBSYSTEM (eg: block) + +PATH=$PATH:/usr/bin:/usr/sbin:/bin:/sbin + +BAS="$(basename "$DEVNAME")" +UNIT="media-$BAS.mount" +MNT="/media/$BAS" +TARGET="/etc/systemd/system/$UNIT" + + +# exit if noautomount boot parameter is present +if cat /proc/cmdline | grep -q noautomount; then + exit +fi + +# exit if 'automount' boot parameter is missing +if ! cat /proc/cmdline | grep -q automount; then + exit +fi + + +if [ "$ACTION" = "add" -o "$ACTION" = "change" ]; then + if [ ! -r "$TARGET" ]; then # skip if exists + + if [ "$ID_FS_TYPE" != "" -a "$(cat /proc/filesystems | grep "$ID_FS_TYPE")" != "" ]; then + + mkdir -p "$MNT" + + echo "[Unit]" >$TARGET + echo "Description=Disk $BAS" >>$TARGET + echo "" >>$TARGET + echo "[Mount]" >>$TARGET + echo "What=$DEVNAME" >>$TARGET + echo "Where=$MNT" >>$TARGET + echo "Type=$ID_FS_TYPE" >>$TARGET + echo "Options=defaults" >>$TARGET + echo "" >>$TARGET + echo "[Install]" >>$TARGET + echo "WantedBy=multi-user.target" >>$TARGET + + systemctl enable $UNIT + systemctl start $UNIT + + gtk-bookmarks-update + DISPLAY=:0.0 pcmanfm -n file://$MNT >/dev/null 2>&1 + fi + fi +fi + +if [ "$ACTION" = "remove" ]; then + systemctl disable $UNIT + rm "$TARGET" + rmdir "$MNT" + gtk-bookmarks-update +fi