Skip to content
This repository has been archived by the owner on Mar 8, 2021. It is now read-only.

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
a1ive committed Jun 20, 2020
1 parent 36d387b commit 6d48e2b
Show file tree
Hide file tree
Showing 61 changed files with 16,134 additions and 0 deletions.
2 changes: 2 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Programming: Elmar Hanlhofer, https://www.plop.at
Testing: Roland Kletzing
341 changes: 341 additions & 0 deletions COPYING

Large diffs are not rendered by default.

149 changes: 149 additions & 0 deletions Changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,149 @@
2019-09-14 Version 1.6 released by Elmar Hanlhofer

* Kernel update to 5.2.14
Intel LPSS enabled.
Additional file systems enabled.

* Scanning more file systems. F2FS, NILFS2, NTFS, BTRFS, ReiserFS, XFS, HFS+.


2019-06-18 Version 1.5 released by Elmar Hanlhofer

* 64 bit release added

* EFI stubs support added, bootx64.efi.

* Kernel update to 5.1.10, added device drivers, Simple framebuffer support.

* Kexec tools update to 2.0.19

* Build scripts updated.

* FB parameter on 64 bit to compile all frame buffer drivers into
PlopKexec.


2016-08-14 Version 1.4.1 released by Elmar Hanlhofer

* Added leave info on Log View.



2016-08-11 Version 1.4 released by Elmar Hanlhofer

* Added iso9660 to hard disk file system mount to support
hybrid ISOs.

* Hotkey 's' for shutdown changed to 'p' power off.

* Added BusyBox.

* Hotkey 's' for BusyBox shell.

* Linux kernel update to 4.7.

* Kexec update to 2.0.12.

* Minor Kexec build script update.

* plopkexec.iso is now a hybrid ISO.

* Syslinux syntax: fix 'timeout' and 'default' command detection.

* Force timeout to 5 seconds instead of 10 seconds.

* Scan internal SD Card Readers.

* TODO: Automatic use of supported file systems compiled
into the kernel, like Eugene https://github.com/eugenesan/chrubuntu-script/tree/master/plopkexec



2016-02-08 Version 1.3 released by Elmar Hanlhofer

* plopkexec.cfg searching in root directories was disabled.
Now it is enabled.



2016-01-19 Version 1.2 released by Elmar Hanlhofer

* Added Syslinux configuration keyword LINUX.



2015-12-01 Version 1.1 released by Elmar Hanlhofer

* Compile on x64.
g++ flags added.
Precompiled kexec.

* Menu rewritten from scratch.

* Device scan rewritten from scratch.

* Log view rewritten from scratch.

* DMESG logs added.

* Boot entry edit mode added.

* Syslinux scan updated.

* LILO scan added.

* Grub scan added.

* Grub2 scan added (no support for variables).

* Kernel updated to 4.3.

* IDE hard disk scan added.

* Timeout lower than 10 seconds are forced to 10 seconds. To give time
for detection.

* Build script updated.

* Code cleanup.



2015-01-17 Version 1.0 released by Elmar Hanlhofer

* Added scan for the configuration file plopkexec.cfg. Settings in this
config file have the highest priority. The configuration commands are
the same like syslinux config files.

* Support for syslinux configuration TIMEOUT added.

* Support for syslinux configuration DEFAULT added.

* Support for syslinux comments '#' added.

* Starting kexec with -x parameter.

* Kernel update to 3.18.2.

* Added default modules: Ext3/4, USB 3.0, PC-Card, PCI Express
This means a bigger PlopKexec file. The new file is too big to fit on a
floppy.

* No floppy image. Users with floppys have to use version 0.3.

* Keyboard keys Page Up/Down and Home/End added for menu navigation.

* Mounting file systems in read-only mode.

* Bugfix: Mount fails on Ext3/4 file systems.
Identified and fixed by Roland Kletzing.

* Added a simple build script.

* Removing ^ hotkey from menu label

* Scan IDE CD/DVD drives



2011-12-23 Version 0.3 released by Elmar Hanlhofer
24 changes: 24 additions & 0 deletions README
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@


build.sh - Automatic build script. This builds the 32 bit version. The 32 bit
version can run on 32 bit and 64 bit x86 computer.

build64.sh - Automatic build script. This builds the 64 bit version. The 64 bit
version can run only on 64 bit x86 computer. It also creates
the EFI version bootx64.efi that can be used as EFI boot manager.
Use the parameter "FB" to compile all frame buffer drivers
into PlopKexec.


Directories:

bin - Prebuilt binary and iso
busybox - BusyBox source code
floppy - PlopKexec 0.3 for floppy version
iso - Build iso
kernel - Linux kernel
kexec - Kexec source code
src - PlopKexec program source code



12 changes: 12 additions & 0 deletions bin/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
32 bit version: Works on 32 and 64 bit computer.
plopkexec
plopkexec.iso

64 bit version: Works only on 64 bit computer.
bootx64.efi
plopkexec64
plopkexec64.iso

EFI: Copy bootx64.efi to the EFI/boot directory on the EFI system partition.

fb: This has all frame buffer drivers builtin. THIS HAS BEEN REMOVED
49 changes: 49 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/bin/sh

KERNEL=$(head kernel.txt -n 1)

if [ $(id -u) -ne 0 ]
then

echo Building PlopKexec needs root permissions!
exit 0

fi

BASE=$(pwd)

mkdir -p build &&
cd src &&
make &&
cd $BASE/kernel &&
{
if [ ! -d $KERNEL ]
then
echo "Extracting Linux kernel source code" &&
tar xfJ $KERNEL.tar.xz
fi
} &&
cd $KERNEL &&
cp -avr ../.config . &&
tar xfvz ../initramfs.tar.gz &&
cp -av $BASE/src/init initramfs &&
cd $BASE/busybox/ &&
sh build_busybox &&
cp -av $BASE/busybox/busybox/_install/* $BASE/kernel/$KERNEL/initramfs &&
cd $BASE/kexec &&
sh build_kexec &&
cp -av kexec $BASE/kernel/$KERNEL/initramfs &&
cd $BASE/kernel/$KERNEL &&
make -j 4 bzImage &&
cp -av arch/x86/boot/bzImage $BASE/build/plopkexec &&
cd $BASE &&
cp -av build/plopkexec iso/iso &&
cd iso &&
sh make-iso.sh &&
cp -av plopkexec.iso ../build &&
echo &&
echo "Built successfully plopkexec and plopkexec.iso" &&
echo "Find them in the 'build/' directory."



60 changes: 60 additions & 0 deletions build64.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
#!/bin/sh

KERNEL=$(head kernel.txt -n 1)

if [ $(id -u) -ne 0 ]
then

echo Building PlopKexec needs root permissions!
exit 0

fi

BASE=$(pwd)

mkdir -p build &&
cd src &&
make -f Makefile64 &&
cd $BASE/kernel &&
{
if [ ! -d $KERNEL ]
then
echo "Extracting Linux kernel source code" &&
tar xfJ $KERNEL.tar.xz
fi
} &&
cd $KERNEL &&
if [ "$1" == "FB" ]
then
cp -avr ../.configfb64 .config
else
cp -avr ../.config64 .config
fi &&
tar xfvz ../initramfs.tar.gz &&
cp -av $BASE/src/init initramfs &&
cd $BASE/busybox/ &&
sh build_busybox &&
cp -av $BASE/busybox/busybox/_install/* $BASE/kernel/$KERNEL/initramfs &&
cd $BASE/kexec &&
sh build_kexec64 &&
cp -av kexec $BASE/kernel/$KERNEL/initramfs &&
cd $BASE/kernel/$KERNEL &&
make -j 4 bzImage &&
cp -av arch/x86/boot/bzImage $BASE/build/plopkexec64 &&
cd $BASE &&
cp -av build/plopkexec64 build/bootx64.efi &&
cp -av build/plopkexec64 iso/iso/plopkexec &&
cp -av build/plopkexec64 iso/iso/EFI/boot/bootx64.efi &&
cd iso &&
sh make-iso.sh &&
cp -av plopkexec.iso ../build/plopkexec64.iso &&
echo &&
if [ "$1" == "FB" ]
then
echo "Built in framebuffer drivers"
fi &&
echo "Built successfully plopkexec64 and plopkexec64.iso" &&
echo "Find them in the 'build/' directory."



Loading

0 comments on commit 6d48e2b

Please sign in to comment.