Page 2 of 4

Xfce x64 module updated

Posted: 06 Sep 2018, 12:34
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.08.22.iso was updated from 4.18.4 to 4.18.6/4.19-rc2.


Porteus-XFCE-v4.0-x86_64-18.09.06.iso (320 M: Kernel 4.18.6)
http://www.mediafire.com/file/b1e12m7p0 ... .09.06.iso
md5sum: 76c8b094cb43f7cdd15901af49b52da8 Porteus-XFCE-v4.0-x86_64-18.09.06.iso

=== Porteus 4.0 Overlay FS trial version ===
OV.Porteus-XFCE-v4.0-x86_64-18.09.06.iso (321 M: Kernel 4.19-rc2)
http://www.mediafire.com/file/r7bgitk2l ... .09.06.iso
md5sum: 6c466c931a965f3524aeb7660791bede OV.Porteus-XFCE-v4.0-x86_64-18.09.06.iso


Note1:
06-crippled_sources-4.18.6-64bit.xzm is included in Porteus-XFCE-v4.0-x86_64-18.09.06.iso@/porteus/optional.
06-crippled_sources-4.19-rc2-64bit.xzm is included in OV.Porteus-XFCE-v4.0-x86_64-18.09.06.iso@/porteus/optional.

Note2:
The intrd of this ISO is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.

Xfce x64 module updated

Posted: 06 Sep 2018, 14:30
by Payoon
Just downloaded it. Will test soon. Thanks a lot.
:celebrate3:
Payoon

Xfce x64 module updated

Posted: 07 Sep 2018, 09:01
by burdi01
By pure chance I noticed the "=== Porteus 4.0 Overlay FS trial version ===" phrase in post #16.
As I maintain a personal, non-official fork of PartedMagic using overlayfs I was intrigued and downloaded the ISO.
I am especially interested in how *dynamically* adding xzm bundles ("pmagic_load_sqfm" for me, "activate" for you) is implemented and found that your script still is aufs based. Am I missing something?
I resorted to unpacking the sqfm bundles as if they were tars.
Regards, Dick
:D

Xfce x64 module updated

Posted: 07 Sep 2018, 11:25
by neko
@burdi01
This "OverlayFS trial version" dose not implemente adding/deleting xzm bundles after boot.
Other than initrd of ISO are the same as normal Aufs Porteus.
If you want to add/delete xzm modules dynamicly after boot,
you must change activate/deactivate scripts by yourself (using your own idea).

I guess that your "pmagic_load_sqfm" has the 2 steps;
1st step: decompress squashFS
and
2nd step: copy those current space.


Thanks

Xfce x64 module updated

Posted: 07 Sep 2018, 18:25
by Payoon
@Neko,
looks good. Can I use develeoper.xzm from the original porteus 4 kernel in case I have to compile something?

Regards Payoon

Xfce x64 module updated

Posted: 08 Sep 2018, 02:09
by neko
@Payoon
"Can I use develeoper.xzm from the original porteus 4 kernel in case I have to compile something?"

Yes, you can.
[HowTo 1]
======== Preparation: ========
1. develeoper.xzm from the original porteus 4
For 64 bit:
http://dl.porteus.org/x86_64/Porteus-v4 ... -devel.xzm

2. kernel source from Linux Kernel site
4.18.6:
https://www.kernel.org/pub/linux/kernel ... 8.6.tar.xz
4.19-rc2:
https://git.kernel.org/pub/scm/linux/ke ... rc2.tar.gz

3. Aufs patch from Aufs site
4.18.6:

Code: Select all

mkdir auf
cd auf

git clone https://github.com/sfjro/aufs4-standalone.git aufs4-standalone.git
cd aufs4-standalone.git
if ! ( git checkout origin/aufs4.18 )
then
	echo "get aufs4.x-rcN"
	git checkout origin/aufs4.x-rcN
fi

mkdir ../a ../b
cp -r {Documentation,fs,include} ../b
rm ../b/include/uapi/linux/Kbuild 2>/dev/null || rm ../b/include/linux/Kbuild
cd ..
diff -rupN a/ b/ > ../aufs.patch

cat aufs4-standalone.git/*.patch >> ../aufs.patch

cd ../
rm -r auf
4.19-rc2:
Maybe, it is not yet updated.

4. Original build config
In the space running Porteus-XFCE-v4.0-x86_64-18.09.06.iso/OV.Porteus-XFCE-v4.0-x86_64-18.09.06.iso,

Code: Select all

su
modprobe configs
zcat /proc/config.gz > org.config
5. firmware package from a distro data base (slackware/debian/arch etc.,)
from arch packages:
http://www.mediafire.com/file/a5mv4p1sm ... -1plus.xzm

======== Operation: for the 4.18.6 case ========
in the environment after boot including 05-devel.xzm
1. expand kernel source

Code: Select all

% su
# pwd
/buildWork
# ls
aufs.patch linux-4.18.6.tar.xz linux-firmware-20180717.8d69bab-noarch-1plus.xzm org.config
# mkdir -p v4.18.6/64
# cd v4.18.6/64
# xz -dc ../../linux-4.18.6.tar.xz | tar -x
# cd linux-4.18.6
# cp ../../../org.config .config
2. adapt aufs patch

Code: Select all

# cd /buildWork/v4.18.6/64/linux-4.18.6
# patch -p1 < ../../../aufs.patch
3. modify source/config
"make menuconfig" command may be used to modify .config.

4. build

Code: Select all

# cd /buildWork/v4.18.6/64/linux-4.18.6
# make oldconfig
# make -j4; cp arch/x86/boot/bzImage ../vmlinuz; make modules_install INSTALL_MOD_PATH=../;
# cp .config ../64bit.config;
# cd ../; DIR=`/bin/ls lib/modules/`; rm lib/modules/$DIR/build lib/modules/$DIR/source; ln -sf /usr/src/linux lib/modules/$DIR/build; ln -sf /usr/src/linux lib/modules/$DIR/source
5. setup firmware
(1) make 2 scripts.
getFWlist

Code: Select all

#!/bin/sh
#
# get firmware list from kernel modules (.ko) depend list.
#
# getFWlist PATH/lib
#
# PATH/lib/modules/*/modules.dep
# *:kernel version name. ex: 4.15.0-rc1-porteus
#
# [OUTPUT: ./FW.list]
# KO=with-relative-path.ko
# firmware-name-with-relative-path
# firmware-name-with-relative-path
# ...
# firmware-name-with-relative-path
# KO=with-relative-path.ko
# ...
#
#==== argument check ====#
if [ $# -ne 1 ]
then
	echo "argumet error (not only one)" >/dev/stderr
	exit 1
fi
BLIB=${1%/}
BLIB=${BLIB##*/}
if [ "$BLIB" != "lib" ]
then
	echo "argumet error (not .../lib or ..../lib/)" >/dev/stderr
	exit 1
fi
MODDEP=`/bin/ls $1/modules/*/modules.dep`
if [ -z "$MODDEP" ]
then
	echo "argumet error (not include modules/*/modules.dep)" >/dev/stderr
	exit 1
fi

#==== get firmare list ====#
SOPATH=${MODDEP%/modules.dep}
WORK=getFMlist$$
mkdir $WORK
for i in `cat $MODDEP | cut -d':' -f1 | sort -u`
do
	modinfo -F firmware $SOPATH/$i | sort -u > $WORK/FW
	FW=`cat $WORK/FW`	
	if [ -z "$FW" ]
	then
		continue
	fi
	echo "====$i"
	echo "====$i" >> $WORK/FW.list
	cat $WORK/FW >> $WORK/FW.list
done
if [ -f FW.list ]
then
	rm -f old.FW.list
	mv FW.list old.FW.list
fi
mv $WORK/FW.list .
rm -fr $WORK
exit 0
getFW

Code: Select all

#!/bin/sh
#
# pick up firmwares of FW-list from PATH/lib directory
# and set these into the firmware directory.
#
# getFW FW-list PATH/lib
#
# PATH/lib/firmware
#
# [FW-list]
# KO=with-relative-path.ko
# firmware-name-with-relative-path
# firmware-name-with-relative-path
# ...
# firmware-name-with-relative-path
# KO=with-relative-path.ko
# ...
#
# [OUTPUT directory]
# firmware
# repo_getFW$$
#

#==== argument check ====#
if [ $# -ne 2 ]
then
	echo "argumet error (not FM-list PATH/lib)" >/dev/stderr
	exit 1
fi
FWS=${2%/}
BLIB=${FWS##*/}
if [ "$BLIB" != "lib" ]
then
	echo "2nd argumet error (not .../lib or ..../lib/)" >/dev/stderr
	exit 1
fi
if [ ! -d $2/firmware ]
then
	echo "2nd argumet error (not include firmware directory)" >/dev/stderr
	exit 1
fi
#==== function [copydirect] ====#
copydirect()
{
local RELATIVE=firmware/$2
RELATIVE=${RELATIVE%/*}

mkdir -p $RELATIVE
cp -a $1/firmware/$2 $RELATIVE/
}
#==== function [copysymlink] ====#
copysymlink()
{
local HPT=`readlink -f $1`
#local HPT=$(cd $1 && pwd) #NG: because use symbolic name ## 
local SYMORG=`readlink -f $HPT/firmware/$2`
local SYMPT=${SYMORG%/*}
local SYMRELATIVE=${SYMPT#$HPT/}

mkdir -p $SYMRELATIVE
cp -a $SYMORG $SYMRELATIVE/
}
#==== get firmare ====#
WORK=repo_getFW$$
mkdir $WORK
if [ -e firmware ]
then
	rm -fr old.firmware
	mv firmware old.firmware
fi
mkdir firmware
for i in `cat $1` "====AtEnd"
do
	if [ ${i:0:4} = "====" ]
	then
		if [ -f $WORK/ko ]
		then
		#==== at end ====#
			cat $WORK/ko >> $WORK/all
			if [ -f $WORK/find ]
			then
				cat $WORK/ko >> $WORK/findS
				cat $WORK/find >> $WORK/findS
				cat $WORK/find >> $WORK/all
			fi
			if [ -f $WORK/link ]
			then
				cat $WORK/ko >> $WORK/linkS
				cat $WORK/link >> $WORK/linkS
				cat $WORK/link >> $WORK/all
			fi
			if [ -f $WORK/empty ]
			then
				cat $WORK/ko >> $WORK/emptyS
				cat $WORK/empty >> $WORK/emptyS
				cat $WORK/empty >> $WORK/all
			fi
		fi
		echo $i
		echo $i > $WORK/ko
		rm -fr $WORK/find $WORK/empty $WORK/link
		continue
	fi
	if [ ! -e $FWS/firmware/$i ]
	then
		echo "[1;31m"$i"[0m" >> $WORK/empty
		continue
	fi
	copydirect $FWS $i
	if [ ! -h $FWS/firmware/$i ]
	then
		echo $i >> $WORK/find
		continue
	fi
	copysymlink $FWS $i
	echo "[1;36m"$i"[0m" >> $WORK/link
done
rm -f $WORK/ko
exit 0
(2) setup firmware

Code: Select all

# cd /buildWork
# ls
aufs.patch getFW getFWlist linux-4.18.6.tar.xz linux-firmware-20180717.8d69bab-noarch-1plus.xzm org.config v4.18.6
# ./getFWlist v4.18.6/64/lib
# mkdir mntFW
mount -t squashfs -o loop linux-firmware-20180717.8d69bab-noarch-1plus.xzm mntFW
# ./getFW FW.list mntFW/lib
# mv firmware v4.18.6/64/lib/
# umount mntFW
# rm -fr mntFW
[HowTo 2]
In the environment after boot including 05-devel.xzm and mkKernel-18.09.06-noarch-1.xzm
you can use "Porteus Kernel Buider" tool.
Please refer to Porteus Kernel Builder


Thanks.

Xfce x64 module updated

Posted: 08 Sep 2018, 05:11
by Ed_P
Payoon wrote:
07 Sep 2018, 18:25
Can I use develeoper.xzm from the original porteus 4 kernel in case I have to compile something?
You can download it from here: http://dl.porteus.org/x86_64/Porteus-v4.0/kernel/

Xfce x64 module updated

Posted: 08 Sep 2018, 09:02
by burdi01
I guess that your "pmagic_load_sqfm" has the 2 steps;
1st step: decompress squashFS
2nd step: copy those current space.
Actually I use:

Code: Select all

mount -t squashfs -nro loop "$F" "$FF"
rsync -aS "$FF/" /    # did not find a faster method
umount "$FF"
:D

Xfce x64 module updated

Posted: 08 Sep 2018, 10:02
by neko
----------------------
@Ed_P
Thank you for your advice.
I correct 05-devel.xzm address.

Thanks.

----------------------
@burdi01
Thank you for openning your techinical method.
I will study it.

Note:
"mount overlayFS" is performed at the function IncludeModules() of /usr/share/overlay/functions of integrated initrd in ISO.

Code: Select all

#======================================
# IncludeModules
#--------------------------------------
IncludeModules()
{
LOWLIST=""
for x in `cat /tmp/modules`;
do
	NAME=`basename $x`;
	mkdir /memory/images/$NAME;
	mount -o loop $x /memory/images/$NAME 2>/dev/null
	if [ $? -eq 0 ];
	then
		echo "  $m  $NAME";
		LOWLIST=/memory/images/${NAME}:${LOWLIST}
	else
		echo $i"[1;36m""Cannot read $NAME - corrupted module?""[0m";
		rmdir /memory/images/$NAME
	fi
done
LOWLIST=`echo $LOWLIST | sed 's/:$//'`

#echo "mount -t overlay -o upperdir=$UPPERDIR,lowerdir=$LOWLIST,workdir=$WORKDIR overlay /union"
mount -t overlay -o upperdir=$UPPERDIR,lowerdir=$LOWLIST,workdir=$WORKDIR overlay /union
if [ $? -ne 0 ]
then
	sh
fi
}
Thanks.

Xfce x64 module updated

Posted: 10 Sep 2018, 20:43
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.09.06.iso was updated from 4.18.6 to 4.19-rc3.

Porteus-XFCE-v4.0-x86_64-18.09.10.iso (321 M: Kernel 4.19-rc3)
http://www.mediafire.com/file/1adiqc6t6 ... .09.10.iso
md5sum: b2b22afef05f1b93a8bca3fb82112bd0 Porteus-XFCE-v4.0-x86_64-18.09.10.iso

Note1:
06-crippled_sources-4.19-rc3-64bit.xzm is included in ISO@/porteus/optional.

Note2:
The intrd of this ISO is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.

Xfce x64 module updated

Posted: 17 Sep 2018, 14:23
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.09.10.iso was updated from 4.19-rc3 to 4.19-rc4.

Porteus-XFCE-v4.0-x86_64-18.09.17.iso (321 M: Kernel 4.19-rc4)
http://www.mediafire.com/file/ztycd67zt ... .09.17.iso
md5sum: 69035814223d81937e37ce1fea9c150c Porteus-XFCE-v4.0-x86_64-18.09.17.iso


Note1:
06-crippled_sources-4.19-rc4-64bit.xzm is included in ISO@/porteus/optional.

Note2:
The intrd of this ISO is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.

Xfce x64 module updated

Posted: 25 Sep 2018, 22:03
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.09.17.iso was updated from 4.19-rc4 to 4.19-rc5.

1. without AUFS patch (Overlay FS ISO): trial version
OV.Porteus-XFCE-v4.0-x86_64-18.09.25.iso (321 M: Kernel 4.19-rc5)
http://www.mediafire.com/file/ychw44zpc ... .09.25.iso
md5sum: 8c8ae5942ca01a601c2d78149312ed10 OV.Porteus-XFCE-v4.0-x86_64-18.09.25.iso

2. with AUFS patch + own patch (not assured)
Porteus-XFCE-v4.0-x86_64-18.09.25.iso (321 M: Kernel 4.19-rc5)
http://www.mediafire.com/file/7v3o65uat ... .09.25.iso
md5sum: a370f705b8acede0ed008779cedafe65 Porteus-XFCE-v4.0-x86_64-18.09.25.iso



Note 1: AUFS_VERSION "4.x-rcN-20180917"
This version is not adapted correctly to patch to mm/shmem.c of kernel 4.19-rc5.

Note 2:
06-crippled_sources-4.19-rc5-64bit.xzm is included in ISO@/porteus/optional.

Note 3:
The intrd of these ISOs is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.

Xfce x64 module updated

Posted: 01 Oct 2018, 15:32
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.09.25.iso was updated from 4.19-rc5 to 4.19-rc6.

Porteus-XFCE-v4.0-x86_64-18.10.01.iso (321 M: Kernel 4.19-rc6)
http://www.mediafire.com/file/chky1z1c5 ... .10.01.iso
md5sum: 0b6bc9d2c427e0245cb5cce72bc8cdb5 Porteus-XFCE-v4.0-x86_64-18.10.01.iso



Note 1: AUFS_VERSION "4.x-rcN-20181001"
This version is adapted correctly to patch to mm/shmem.c of kernel 4.19-rc6.

Note 2:
06-crippled_sources-4.19-rc6-64bit.xzm is included in ISO@/porteus/optional.

Note 3:
The intrd of this ISO is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.

Xfce x64 module updated

Posted: 09 Oct 2018, 02:02
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.10.01.iso was updated from 4.19-rc6 to 4.19-rc7.

Porteus-XFCE-v4.0-x86_64-18.10.08.iso (321 M: Kernel 4.19-rc7)
http://www.mediafire.com/file/q8v0n4n1j ... .10.08.iso
md5sum: 50a2c7bd7be26e92ecefb1cd73593de9 Porteus-XFCE-v4.0-x86_64-18.10.08.iso


Note 1:
06-crippled_sources-4.19-rc7-64bit.xzm is included in ISO@/porteus/optional.

Note 2:
The intrd of this ISO is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.

Xfce x64 module updated

Posted: 15 Oct 2018, 21:09
by neko
The kernel of Porteus-XFCE-v4.0-x86_64-18.10.08.iso was updated from 4.19-rc7 to 4.19-rc8.

Porteus-XFCE-v4.0-x86_64-18.10.15.iso (321 M: Kernel 4.19-rc8)
http://www.mediafire.com/file/eizrcvjad ... .10.15.iso
md5sum: 8757eb3d28f388c30d9cab5d960d7d21 Porteus-XFCE-v4.0-x86_64-18.10.15.iso


Note 1:
06-crippled_sources-4.19-rc8-64bit.xzm is included in ISO@/porteus/optional.

Note 2:
The intrd of this ISO is integrated initrd.
Please refer to Porteus Kernel Builder (Post by neko #66418)


Thanks.