Browse Source

support for zstd compression

master
crims0n 4 years ago
parent
commit
3f7aa47cef
  1. 4
      docker/Dockerfile.py
  2. 4
      linux-live/buildconfig
  3. 2
      linux-live/config
  4. 12
      linux-live/minioslib
  5. 10
      linux-live/modules/03-apps/install
  6. 3
      linux-live/modules/03-apps/package.list
  7. 4
      linux-live/modules/04-drivers/postinstall
  8. 1
      linux-live/pkglists/hostreq.list
  9. 1
      linux-live/pkglists/main.list

4
docker/Dockerfile.py

@ -13,12 +13,12 @@ class DockerFile(pydocker.DockerFile):
""" add here your custom features """
#d = DockerFile(base_img='ubuntu:focal', name='crims0n/minios-live-container:latest')
d = DockerFile(base_img='ubuntu:bionic', name='local/mlc:latest')
d = DockerFile(base_img='ubuntu:focal', name='local/mlc:latest')
d.RUN_bash_script('/opt/install.sh', r'''
touch /.minios-live-container
apt-get update -y
apt-get install -y wget sudo debootstrap xorriso binutils squashfs-tools grub-pc-bin grub-efi-amd64-bin dosfstools mtools xz-utils liblz4-tool
apt-get install -y wget sudo debootstrap xorriso binutils squashfs-tools grub-pc-bin grub-efi-amd64-bin dosfstools mtools xz-utils liblz4-tool zstd
: 'apt-get install -y patch
cd /opt/
wget -c http://ru.archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_1.0.123ubuntu2_all.deb

4
linux-live/buildconfig

@ -28,8 +28,8 @@ APT_CMD="apt-get"
APT_OPTIONS="-y" #--no-install-recommends"
#LIVE_TYPE="casper"
LIVE_TYPE="livekit"
LIVE_TYPE="casper"
#LIVE_TYPE="livekit"
UNION_BUILD_TYPE="overlayfs"
#UNION_BUILD_TYPE="aufs"

2
linux-live/config

@ -33,7 +33,7 @@ DISTRIBUTION_VARIANT="minbase"
DISTRIBUTION_URL="http://ru.archive.ubuntu.com/ubuntu"
#
COMP_TYPE="xz"
COMP_TYPE="zstd"
# Kernel file, will be copied to your Live Kit
# Your kernel must support aufs and squashfs. Debian Jessie's kernel is ready

12
linux-live/minioslib

@ -821,7 +821,11 @@ EOF
COREFS="$COREFS $i"
fi
done
if [ $COMP_TYPE = "zstd" ]; then
mksquashfs $COREFS $PARENT_DIR/image/$LIVEKITNAME/01-core-$COMP_TYPE.$BEXT -comp $COMP_TYPE -Xcompression-level 22 -b 1024K -always-use-fragments -keep-as-directory -noappend || exit
else
mksquashfs $COREFS $PARENT_DIR/image/$LIVEKITNAME/01-core-$COMP_TYPE.$BEXT -comp $COMP_TYPE -b 1024K -always-use-fragments -keep-as-directory -noappend || exit
fi
elif [ $LIVE_TYPE = "casper" ]; then
@ -964,7 +968,11 @@ EOF
sed -i '/os-prober/d' $PARENT_DIR/image/casper/filesystem.manifest-desktop
# compress rootfs
if [ $COMP_TYPE = "zstd" ]; then
mksquashfs $BUILD_DIR $PARENT_DIR/image/casper/filesystem.squashfs -comp $COMP_TYPE -Xcompression-level 22 -b 1024K -always-use-fragments -noappend || exit
else
mksquashfs $BUILD_DIR $PARENT_DIR/image/casper/filesystem.squashfs -comp $COMP_TYPE -b 1024K -always-use-fragments -noappend || exit
fi
printf $(sudo du -sx --block-size=1 $BUILD_DIR | cut -f1) >$PARENT_DIR/image/casper/filesystem.size
# create diskdefines
@ -1964,7 +1972,11 @@ function build_modules_live() {
done
mksquashfs $COREFS $PARENT_DIR/image/$LIVEKITNAME/$MODULE.$BEXT -comp $COMP_TYPE -b 1024K -always-use-fragments -keep-as-directory -noappend || exit'
if [ $COMP_TYPE = "zstd" ]; then
mksquashfs $MODULE_UPPER_DIR $PARENT_DIR/image/$LIVEKITNAME/$MODULE-$COMP_TYPE.$BEXT -comp $COMP_TYPE -Xcompression-level 22 -b 1024K -always-use-fragments -noappend || exit
else
mksquashfs $MODULE_UPPER_DIR $PARENT_DIR/image/$LIVEKITNAME/$MODULE-$COMP_TYPE.$BEXT -comp $COMP_TYPE -b 1024K -always-use-fragments -noappend || exit
fi
else
echo -e "${MAGENTA}$BUILD_DIR${ENDCOLOUR} is empty. Nothing to do."
fi

10
linux-live/modules/03-apps/install

@ -6,6 +6,16 @@ set -u # treat unset variable as error
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
# opera & onlyoffice & vscode
:'wget -qO - https://deb.opera.com/archive.key | sudo apt-key add -
sudo add-apt-repository 'deb https://deb.opera.com/opera-stable/ stable non-free'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
sudo add-apt-repository 'deb https://download.onlyoffice.com/repo/debian squeeze main'
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg'
# install packages
if [ -f $SCRIPT_DIR/package.list ]; then
sudo DEBIAN_FRONTEND=$DEBIAN_FRONTEND_TYPE \

3
linux-live/modules/03-apps/package.list

@ -1,6 +1,9 @@
open-vm-tools-desktop
firefox
firefox-locale-ru
#opera-stable
#onlyoffice-desktopeditors
#code
remmina
parole
recordmydesktop

4
linux-live/modules/04-drivers/postinstall

@ -6,5 +6,5 @@ set -u # treat unset variable as error
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
#sudo DEBIAN_FRONTEND=$DEBIAN_FRONTEND_TYPE \
#$APT_CMD remove linux-headers-generic-hwe-20.04 $APT_OPTIONS >>$OUTPUT 2>&1
sudo DEBIAN_FRONTEND=$DEBIAN_FRONTEND_TYPE \
$APT_CMD remove linux-headers-generic-hwe-20.04 $APT_OPTIONS >>$OUTPUT 2>&1

1
linux-live/pkglists/hostreq.list

@ -5,6 +5,7 @@ debootstrap
squashfs-tools
xz-utils
lz4
zstd
xorriso
grub-pc-bin
grub-efi-amd64-bin

1
linux-live/pkglists/main.list

@ -7,6 +7,7 @@ xorriso
squashfs-tools
bash-completion
openssh-server
zstd
# имя этого ▼ пакета нужно задавать в зависимости от необходимого типа ядра
#linux-image-generic-hwe-18.04
#linux-image-generic

Loading…
Cancel
Save