From 17ee9c24f98b6688dfde57d61cbd7c97fbc17d87 Mon Sep 17 00:00:00 2001 From: Ivan Davidov Date: Mon, 20 Feb 2017 23:14:44 +0200 Subject: [PATCH 1/5] Website: fixed typo. --- www/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www/index.html b/www/index.html index 0ffd07f39..da6ff8b08 100644 --- a/www/index.html +++ b/www/index.html @@ -38,7 +38,7 @@
- Minimal Linux Live is a set of Linux shell scripts which automatically build minimalistic Live Linux OS with basic network support via DHCP. The generated operating system is based on Linux kernel, GNU C library and BusyBox. All necessary sourcs are automatically downloaded and all build operations are fully encapsulated in the shell scripts. + Minimal Linux Live is a set of Linux shell scripts which automatically build minimalistic Live Linux OS with basic network support via DHCP. The generated operating system is based on Linux kernel, GNU C library and BusyBox. All necessary sources are automatically downloaded and all build operations are fully encapsulated in the shell scripts.
 
From 5ea62125430c00d14e2f99939837f68f8041424b Mon Sep 17 00:00:00 2001 From: Ivan Davidov Date: Wed, 1 Mar 2017 19:43:23 +0200 Subject: [PATCH 2/5] Update README.md --- README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f799c69cb..6b3651d79 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,7 @@ This is a screenshot of the current development version of Minimal Linux Live: * Add kernel modules and firmware. * Reorganize and simplify the ISO image generation script. +* Allow individual overlay bundles to be downloaded and installed. The above list is not fixed it may be updated at any time. @@ -68,9 +69,9 @@ cd minimal_overlay ./overlay_build.sh links ``` -## BIOS and EFI +## BIOS and UEFI -The current development version adds EFI support and now the same MLL ISO image can boot on both BIOS and EFI based systems. Go on, try it! +Minimal Linux Live is UEFI compatible and now the same MLL ISO image can boot on both BIOS and EFI based systems. Go on, try it! ## Installation @@ -115,4 +116,4 @@ dd if=minimal_linux_live.iso of=/dev/xxx ## Thank you! -Do you like this project? Yes? Well, in that case I would very much appreciate it if you [buy me a beer](https://paypal.me/MinimalLinuxLive). And don't forget to check the Minimal Linux Live page on [Facebook](http://facebook.com/MinimalLinuxLive). Thank you! +Do you like this project? Yes? Well, in that case I would very much appreciate it if you [buy me a beer](https://paypal.me/MinimalLinuxLive) and perhaps spend a minute to give your honest opinion about MLL in [DistroWatch](http://distrowatch.com/dwres.php?resource=ratings&distro=mll). And don't forget to check the Minimal Linux Live page on [Facebook](http://facebook.com/MinimalLinuxLive). Thank you! From dc9e2f63b2e2ad45fb624309ec8f200fb1261ccc Mon Sep 17 00:00:00 2001 From: Ivan Davidov Date: Sat, 4 Mar 2017 15:45:39 +0200 Subject: [PATCH 3/5] Removed dead link. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6b3651d79..d59d4d4bc 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ You can find the main website here: [Minimal Linux Live](http://minimal.idzona.com "Minimal Linux Live") -If the above link doesn't work, website mirrors are available [here](http://skamilinux.hu/minimal "Minimal Linux Live"), [here](http://linux.idzona.com "Minimal Linux Live") and [here](http://minimal.linux-bg.org "Minimal Linux Live"). +If the above link doesn't work, website mirrors are available [here](http://skamilinux.hu/minimal "Minimal Linux Live") and [here](http://minimal.linux-bg.org "Minimal Linux Live"). [The DAO of Minimal Linux Live](http://minimal.idzona.com/the_dao_of_minimal_linux_live.txt "The DAO of Minimal Linux Live") - this tutorial explains step by step what you need to do in order to create your own minimalistic live Linux OS. The tutorial is based on the first published version of Minimal Linux Live. From a510e9ac3e765352c904a976bfa0fd499e9dac14 Mon Sep 17 00:00:00 2001 From: Ivan Davidov Date: Fri, 10 Mar 2017 22:31:16 +0200 Subject: [PATCH 4/5] Updated software versions. Added experimental 'static-get'. It seems that 'static-get' works fine in normal desktop environment but it doesn't seem to work fine in BusyBox. The problem seems to be somewhere in 'wget' because each downloaded package is ~14KB regardless of its real size. --- src/.config | 13 ++++-- .../bundles/static_get/01_get.sh | 40 +++++++++++++++++++ .../bundles/static_get/02_install.sh | 33 +++++++++++++++ .../bundles/static_get/bundle.sh | 9 +++++ 4 files changed, 92 insertions(+), 3 deletions(-) create mode 100755 src/minimal_overlay/bundles/static_get/01_get.sh create mode 100755 src/minimal_overlay/bundles/static_get/02_install.sh create mode 100755 src/minimal_overlay/bundles/static_get/bundle.sh diff --git a/src/.config b/src/.config index 40c8920e7..cde495093 100644 --- a/src/.config +++ b/src/.config @@ -11,13 +11,13 @@ # # http://kernel.org # -KERNEL_SOURCE_URL=http://kernel.org/pub/linux/kernel/v4.x/linux-4.4.44.tar.xz +KERNEL_SOURCE_URL=http://kernel.org/pub/linux/kernel/v4.x/linux-4.9.13.tar.xz # You can find the latest GNU libc source bundles here: # # http://gnu.org/software/libc # -GLIBC_SOURCE_URL=http://ftp.gnu.org/gnu/glibc/glibc-2.24.tar.bz2 +GLIBC_SOURCE_URL=http://ftp.gnu.org/gnu/glibc/glibc-2.25.tar.bz2 # You can find the latest BusyBox source bundles here: # @@ -73,6 +73,12 @@ FELIX_SOURCE_URL=http://www-us.apache.org/dist/felix/org.apache.felix.main.distr # LUA_SOURCE_URL=https://www.lua.org/ftp/lua-5.3.4.tar.gz +# You can find the latest static-get shell script here: +# +# http://s.minos.io/s +# http://github.com/minos-org/minos-static +# +STATIC_GET_SOURCE_URL=http://s.minos.io/s @@ -158,11 +164,12 @@ COPY_SOURCE_ISO=true # felix - Apache Felix OSGi framework. # mll_utils - set of executable utilities (mll-*). # lua - scripting language +# static_get - portable binaries for Linux (http://s.minos.io) # # Refer to the README file for more information. # #OVERLAY_BUNDLES=glibc_full,links,dropbear,java,felix,mll_utils,lua -#OVERLAY_BUNDLES=mll_utils +#OVERLAY_BUNDLES=static_get # This property enables the standard penguin boot logo in the upper left corner # of the screen. The property is used in 'xx_build_kernel.sh'. The default value diff --git a/src/minimal_overlay/bundles/static_get/01_get.sh b/src/minimal_overlay/bundles/static_get/01_get.sh new file mode 100755 index 000000000..4bad67ea3 --- /dev/null +++ b/src/minimal_overlay/bundles/static_get/01_get.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +SRC_DIR=$(pwd) + +# Find the main source directory +cd ../../.. +MAIN_SRC_DIR=$(pwd) +cd $SRC_DIR + +# Grab everything after the '=' character. +DOWNLOAD_URL=$(grep -i STATIC_GET_SOURCE_URL $MAIN_SRC_DIR/.config | cut -f2 -d'=') + +# Read the 'USE_LOCAL_SOURCE' property from '.config' +USE_LOCAL_SOURCE="$(grep -i USE_LOCAL_SOURCE $MAIN_SRC_DIR/.config | cut -f2 -d'=')" + +if [ "$USE_LOCAL_SOURCE" = "true" -a ! -f $MAIN_SRC_DIR/source/overlay/static-get.sh ] ; then + echo "Shell script $MAIN_SRC_DIR/source/overlay/static-get.sh is missing and will be downloaded." + USE_LOCAL_SOURCE="false" +fi + +cd $MAIN_SRC_DIR/source/overlay + +if [ ! "$USE_LOCAL_SOURCE" = "true" ] ; then + # Downloading static-get shell script file. The '-c' option allows the download to resume. + echo "Downloading static-get shell script from $DOWNLOAD_URL" + wget -O static-get.sh -c $DOWNLOAD_URL +else + echo "Using local static-get shell script $MAIN_SRC_DIR/source/overlay/static-get.sh" +fi + +# Delete folder with previously prepared static-get. +echo "Removing static-get work area. This may take a while..." +rm -rf ../../work/overlay/staget +mkdir ../../work/overlay/staget + +# Copy static-get to folder 'work/overlay/staget'. +cp static-get.sh ../../work/overlay/staget + +cd $SRC_DIR + diff --git a/src/minimal_overlay/bundles/static_get/02_install.sh b/src/minimal_overlay/bundles/static_get/02_install.sh new file mode 100755 index 000000000..9d46357dd --- /dev/null +++ b/src/minimal_overlay/bundles/static_get/02_install.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +SRC_DIR=$(pwd) + +# Find the main source directory +cd ../../.. +MAIN_SRC_DIR=$(pwd) +cd $SRC_DIR + +echo "Removing old static-get artifacts. This may take a while..." +rm -rf $MAIN_SRC_DIR/work/overlay/staget/staget_installed +mkdir -p $MAIN_SRC_DIR/work/overlay/staget/staget_installed/opt/staget +mkdir -p $MAIN_SRC_DIR/work/overlay/staget/staget_installed/bin + +cd $MAIN_SRC_DIR/work/overlay/staget + +cp $MAIN_SRC_DIR/source/overlay/static-get.sh . + +chmod +rx static-get.sh + +cp static-get.sh $MAIN_SRC_DIR/work/overlay/staget/staget_installed/opt/staget + +cd $MAIN_SRC_DIR/work/overlay/staget/staget_installed + +ln -s ../opt/staget/static-get.sh bin/static-get + +cp -r $MAIN_SRC_DIR/work/overlay/staget/staget_installed/* \ + $MAIN_SRC_DIR/work/src/minimal_overlay/rootfs + +echo "static-get has been installed." + +cd $SRC_DIR + diff --git a/src/minimal_overlay/bundles/static_get/bundle.sh b/src/minimal_overlay/bundles/static_get/bundle.sh new file mode 100755 index 000000000..cf641b3e8 --- /dev/null +++ b/src/minimal_overlay/bundles/static_get/bundle.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +SRC_DIR=$(pwd) + +time sh 01_get.sh +time sh 02_install.sh + +cd $SRC_DIR + From c2e50f8fb59356d619d2526c44da2b713e3715bd Mon Sep 17 00:00:00 2001 From: Ivan Davidov Date: Sat, 11 Mar 2017 00:54:01 +0200 Subject: [PATCH 5/5] Bigfix: properly merge the default overlay directory and the overlay bundles. Minor enhancement for the 'static_get' bundle. Currently the 'wget' package from 'static_get' is required to be present in the default overlay directory in order to fix an incompatibility issue with the default implementation of 'wget' in BusyBox. Permanent solution will be to provide the 'wget' from 'static_get' as part of the build process of the 'static_get' overlay bundle. --- src/minimal_overlay/bundles/static_get/02_install.sh | 1 + src/minimal_overlay/overlay_clean.sh | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/minimal_overlay/bundles/static_get/02_install.sh b/src/minimal_overlay/bundles/static_get/02_install.sh index 9d46357dd..611a73ec5 100755 --- a/src/minimal_overlay/bundles/static_get/02_install.sh +++ b/src/minimal_overlay/bundles/static_get/02_install.sh @@ -23,6 +23,7 @@ cp static-get.sh $MAIN_SRC_DIR/work/overlay/staget/staget_installed/opt/staget cd $MAIN_SRC_DIR/work/overlay/staget/staget_installed ln -s ../opt/staget/static-get.sh bin/static-get +ln -s ../opt/staget/static-get.sh bin/mll-get cp -r $MAIN_SRC_DIR/work/overlay/staget/staget_installed/* \ $MAIN_SRC_DIR/work/src/minimal_overlay/rootfs diff --git a/src/minimal_overlay/overlay_clean.sh b/src/minimal_overlay/overlay_clean.sh index 1abc7742c..38c557806 100755 --- a/src/minimal_overlay/overlay_clean.sh +++ b/src/minimal_overlay/overlay_clean.sh @@ -18,6 +18,14 @@ for dir in $(ls -d */ 2>/dev/null) ; do echo "Overlay folder '$dir' has been removed." done +cd $SRC_DIR/../minimal_overlay/rootfs + +# Copy the files/folders from the default overlay folder +for dir in $(ls -d */ 2>/dev/null) ; do + cp -r $dir $SRC_DIR/../work/src/minimal_overlay/rootfs + echo "Default overlay folder '$dir' has been prepared." +done + echo "Ready to continue with the overlay software." cd $SRC_DIR