porting in updated changes from bash branch (master)
This commit is contained in:
parent
a86115b7a2
commit
acd5c0665a
54
docs/README
54
docs/README
@ -16,6 +16,9 @@ It should be fine over ethernet, since hardware switches are much faster and eff
|
||||
Future versions, once this project has a dumping ground, will fetch highly compressed snapshotted chroot filesystems instead
|
||||
of dynamically building the entire install chroots (both x86_64 and i686) instead (with the option of building fresh locally,
|
||||
disabled by default).
|
||||
|
||||
Maybe.
|
||||
|
||||
Till then, sorry for the inconvenience.
|
||||
!!!!!!!!!!!!!!!!!!!!!!
|
||||
|
||||
@ -56,11 +59,6 @@ All commands below should be issued in the root working directory of this git re
|
||||
but also disk space for working, the finished ISO(s), etc.)
|
||||
|
||||
-The following packages installed on the build host:
|
||||
(NOTE: future versions will have dependencies checked automatically and installed if necessary,
|
||||
depending on distro your host build machine is. the OS detection and package installation component of that isn't
|
||||
done yet though. 2014.10.31)
|
||||
(NOTE2: Make sure all the packages you specify are valid package names. A mistyped package name will cause the chroot creation to
|
||||
break and everything else will break as a result.)
|
||||
|
||||
curl
|
||||
dosfstools
|
||||
@ -72,9 +70,24 @@ squashfs-tools
|
||||
xorriso (in RPMForge repo for CentOS 7)
|
||||
xz
|
||||
|
||||
and *probably* a few others. The scripts run with set -e for the most part, so if something's missed, you'll know.
|
||||
and maybe a few others. The scripts run with set -e for the most part, so if something's missed, you'll know.
|
||||
Oh, you will know.
|
||||
|
||||
If these packages are missing, they will be automatically installed. Currently, the following distros as host build systems
|
||||
are supported (assumes most recent release):
|
||||
|
||||
Antergos
|
||||
Arch
|
||||
CentOS
|
||||
Debian
|
||||
Fedora
|
||||
Gentoo
|
||||
Mageia
|
||||
Manjaro
|
||||
openSUSE
|
||||
RHEL
|
||||
SUSE
|
||||
Ubuntu
|
||||
|
||||
## Configuration ##
|
||||
See extra/build.conf.sample. Copy to <PROJECT ROOT>/build.conf if you wish to modify any of the values, otherwise the defaults
|
||||
@ -105,6 +118,18 @@ Also note the following files/paths:
|
||||
--/mirror.lst.sh:
|
||||
Builds a fresh mirror list. Note that it is US based.
|
||||
|
||||
-docs:
|
||||
Documentation for BDisk.
|
||||
--/COPYING:
|
||||
See LICENSE.
|
||||
--/README:
|
||||
This file.
|
||||
--/LICENSE:
|
||||
The license file.
|
||||
--/FAQ:
|
||||
Several quick questions you might have.
|
||||
--/TODO:
|
||||
Some features, bug fixes, etc. I have planned.
|
||||
-examples:
|
||||
Included recommendation for how to lay things out, etc.
|
||||
--/HTTP:
|
||||
@ -112,7 +137,7 @@ Also note the following files/paths:
|
||||
-extra:
|
||||
Supporting files for the base building system (mirrorlist, etc.).
|
||||
--/${UXNAME}.png:
|
||||
A 640x480 8-bit RGBA colour PNG which will be used as the background for the bootsplash (if booting via BIOS and not UEFI)
|
||||
L A 640x480 8-bit RGBA colour PNG which will be used as the background for the bootsplash (if booting via BIOS and not UEFI)
|
||||
--/bootstrap/apacman-*.tar.xz:
|
||||
An AUR-enabled package manager. Necessary for AUR support.
|
||||
--/build.conf.sample:
|
||||
@ -130,6 +155,8 @@ Also note the following files/paths:
|
||||
--/pre-build.d:
|
||||
Contains files injected into the system. Both 64-bit and 32-bit environments. Note: be sure to place them in hierarchical order
|
||||
(e.g. if you wish to have a file at /usr/foo/bar, you will need to place it in <PROJECT ROOT>/extra/pre-build.d/usr/foo/bar)
|
||||
(NOTE: Make sure all the packages you specify are valid package names. A mistyped or nonexistent package name will cause the chroot
|
||||
creation to break and everything else will break as a result.)
|
||||
--/pre-build.d/32:
|
||||
Same as above, but only for 32-bit environments.
|
||||
--/pre-build.d/64:
|
||||
@ -143,8 +170,6 @@ Also note the following files/paths:
|
||||
Here you can find full output of the runs. They are prefixed with run's PID number, and named after the function they occur in.
|
||||
-overlay:
|
||||
These files are applied AFTER the initial setup of the chroots. Same hierarchy rules as extra/pre-build.d.
|
||||
-README:
|
||||
This file.
|
||||
-src:
|
||||
Supporting source code/source code from other projects.
|
||||
--ipxe/:
|
||||
@ -153,14 +178,12 @@ Also note the following files/paths:
|
||||
Various patches and supporting configs to tweak the iPXE build.
|
||||
-tftpboot:
|
||||
Files to be served via TFTP for PXE booting. This directory is wiped out during any bin/clean.sh operation.
|
||||
-TODO:
|
||||
This is just what I'm using to track stuff I want to add.
|
||||
|
||||
|
||||
You may notice other files come and go; they're mostly there for extra goodies/used to determine other things.
|
||||
|
||||
## (Re)Building ##
|
||||
Building must be done as root, and on an Arch x86_64 system (future versions will allow for non-Arch distros).
|
||||
Building must be done as root, and on a supported distro (see Prerequisites for a list).
|
||||
|
||||
# bin/build.sh
|
||||
|
||||
@ -168,3 +191,10 @@ Yeah. It's that easy. The finished product is in iso/.
|
||||
|
||||
|
||||
If you want more verbosity, check out the logs/ directory.
|
||||
|
||||
|
||||
## Submitting Patches ##
|
||||
If you have a fix or feature you'd like added, please follow the same pull request process for the kernel
|
||||
(https://www.kernel.org/doc/Documentation/SubmittingPatches) and email to bts@square-r00t.net
|
||||
|
||||
Alternatively, file a bug at https://bugs.square-r00t.net/index.php?project=2 with a patch attached.
|
||||
|
BIN
extra/bootstrap/apacman-2.3-1-any.FIXED.pkg.tar.xz
Normal file
BIN
extra/bootstrap/apacman-2.3-1-any.FIXED.pkg.tar.xz
Normal file
Binary file not shown.
@ -1,7 +1,7 @@
|
||||
# Server list generated by rankmirrors on 2015-02-26
|
||||
# Server list generated by rankmirrors on 2016-07-09
|
||||
Server = http://mirror.us.leaseweb.net/archlinux/$repo/os/$arch
|
||||
Server = http://mirrors.advancedhosters.com/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.umd.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.vtti.vt.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.jmu.edu/pub/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.es.its.nyu.edu/archlinux/$repo/os/$arch
|
||||
Server = http://ftp.osuosl.org/pub/archlinux/$repo/os/$arch
|
||||
Server = http://mirrors.rutgers.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.jmu.edu/pub/archlinux/$repo/os/$arch
|
||||
Server = http://arch.mirrors.ionfish.org/$repo/os/$arch
|
||||
|
@ -43,7 +43,7 @@ cpio
|
||||
cpuburn
|
||||
cpupower
|
||||
crackpkcs12
|
||||
#cryptcat
|
||||
cryptcat
|
||||
cryptsetup
|
||||
csync2
|
||||
customizepkg-scripting
|
||||
@ -54,7 +54,7 @@ dd_rescue
|
||||
dd_rhelp
|
||||
debianutils
|
||||
debootstrap
|
||||
dialog
|
||||
#dialog #giving a weird dependency issue
|
||||
diffutils
|
||||
djohn
|
||||
dmidecode
|
||||
@ -107,6 +107,7 @@ gptfdisk
|
||||
gst-libav
|
||||
gst-plugins-ugly
|
||||
hashcat
|
||||
hashdeep
|
||||
hddtemp
|
||||
hdparm
|
||||
hexcurse
|
||||
@ -140,23 +141,38 @@ keyutils
|
||||
kismet-allplugins
|
||||
lftp
|
||||
links
|
||||
#logkeys
|
||||
logkeys-keymaps
|
||||
#logkeys-git # requires a /dev/input, which apparently isn't included in the chroots
|
||||
lm_sensors
|
||||
lrzsz
|
||||
lshw
|
||||
lsiutil
|
||||
#lsiutil # giving intermittent errors when trying to fetch source
|
||||
lsof
|
||||
lsscsi
|
||||
lxde
|
||||
#lxde # apacman currently doesn't like package groups, so...
|
||||
gpicview
|
||||
lxappearance
|
||||
lxappearance-obconf
|
||||
lxde-common
|
||||
lxde-icon-theme
|
||||
lxdm
|
||||
lxinput
|
||||
lxlauncher
|
||||
lxmusic
|
||||
lxpanel
|
||||
lxrandr
|
||||
lxsession
|
||||
lxtask
|
||||
lxterminal
|
||||
openbox
|
||||
pcmanfm
|
||||
# end lxde
|
||||
lynx
|
||||
#lzip
|
||||
macchanger
|
||||
magicrescue
|
||||
#magicrescue # no longer maintained, upstream down
|
||||
mbr
|
||||
mbuffer
|
||||
mcelog
|
||||
md5deep
|
||||
mdadm
|
||||
mdcrack
|
||||
# superseded by storcli
|
||||
@ -164,11 +180,10 @@ mdcrack
|
||||
memtester
|
||||
mfoc
|
||||
minicom
|
||||
mondo
|
||||
#mondo # mindi-busybox fails to build 09.23.2016
|
||||
mtd-utils
|
||||
mtr
|
||||
mtree
|
||||
#mtx
|
||||
multipath-tools
|
||||
myrescue
|
||||
nbd
|
||||
@ -208,20 +223,19 @@ php
|
||||
php-fpm
|
||||
php-gd
|
||||
php-mcrypt
|
||||
#phrasendrescher
|
||||
phrasendrescher
|
||||
pigz
|
||||
pkgfile
|
||||
pkgtools
|
||||
ppp
|
||||
pptpclient
|
||||
prebootloader
|
||||
procinfo-ng
|
||||
procps-ng
|
||||
progsreiserfs
|
||||
psmisc
|
||||
pwgen
|
||||
pixz
|
||||
pyrit-svn
|
||||
pyrit
|
||||
python2-gnuplot
|
||||
python2-pyx
|
||||
rarcrack
|
||||
@ -239,6 +253,7 @@ rsnapshot
|
||||
rygel
|
||||
safecopy
|
||||
samba
|
||||
scalpel-git
|
||||
scapy
|
||||
screen
|
||||
scrounge-ntfs
|
||||
@ -254,7 +269,7 @@ smartmontools
|
||||
smbclient
|
||||
s-nail
|
||||
socat
|
||||
#star ## do people even USE tape packups anymore?
|
||||
#star ## do people even USE tape backups anymore?
|
||||
storcli
|
||||
strace
|
||||
stress
|
||||
@ -271,7 +286,7 @@ thttpd
|
||||
tmon
|
||||
tmux
|
||||
tre
|
||||
truecrack-svn
|
||||
truecrack-git
|
||||
truecrypt
|
||||
tor
|
||||
udftools
|
||||
@ -296,7 +311,7 @@ vncrack
|
||||
vnstat
|
||||
vpnc
|
||||
weplab
|
||||
whdd
|
||||
#whdd #currently depends on dialog, which is broke as shit
|
||||
whois
|
||||
wifite-mod-pixiewps-git
|
||||
wipe
|
||||
|
95
extra/pre-build.d/32/etc/pacman.conf
Normal file
95
extra/pre-build.d/32/etc/pacman.conf
Normal file
@ -0,0 +1,95 @@
|
||||
#
|
||||
# /etc/pacman.conf
|
||||
#
|
||||
# See the pacman.conf(5) manpage for option and repository directives
|
||||
|
||||
#
|
||||
# GENERAL OPTIONS
|
||||
#
|
||||
[options]
|
||||
# The following paths are commented out with their default values listed.
|
||||
# If you wish to use different paths, uncomment and update the paths.
|
||||
#RootDir = /
|
||||
#DBPath = /var/lib/pacman/
|
||||
#CacheDir = /var/cache/pacman/pkg/
|
||||
#LogFile = /var/log/pacman.log
|
||||
#GPGDir = /etc/pacman.d/gnupg/
|
||||
HoldPkg = pacman glibc
|
||||
#XferCommand = /usr/bin/curl -C - -f %u > %o
|
||||
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||
#CleanMethod = KeepInstalled
|
||||
#UseDelta = 0.7
|
||||
Architecture = i686
|
||||
|
||||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
||||
#IgnorePkg =
|
||||
#IgnoreGroup =
|
||||
|
||||
#NoUpgrade =
|
||||
#NoExtract =
|
||||
|
||||
# Misc options
|
||||
UseSyslog
|
||||
Color
|
||||
TotalDownload
|
||||
CheckSpace
|
||||
VerbosePkgLists
|
||||
|
||||
# By default, pacman accepts packages signed by keys that its local keyring
|
||||
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
||||
#SigLevel = Required DatabaseOptional #RE-ENABLE ME WHEN A NEW SNAPSHOT IS RELEASED WITH FIXED GPG
|
||||
SigLevel = Never
|
||||
LocalFileSigLevel = Optional
|
||||
#RemoteFileSigLevel = Required
|
||||
|
||||
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
||||
# keyring can then be populated with the keys of all official Arch Linux
|
||||
# packagers with `pacman-key --populate archlinux`.
|
||||
|
||||
#
|
||||
# REPOSITORIES
|
||||
# - can be defined here or included from another file
|
||||
# - pacman will search repositories in the order defined here
|
||||
# - local/custom mirrors can be added here or in separate files
|
||||
# - repositories listed first will take precedence when packages
|
||||
# have identical names, regardless of version number
|
||||
# - URLs will have $repo replaced by the name of the current repo
|
||||
# - URLs will have $arch replaced by the name of the architecture
|
||||
#
|
||||
# Repository entries are of the format:
|
||||
# [repo-name]
|
||||
# Server = ServerName
|
||||
# Include = IncludePath
|
||||
#
|
||||
# The header [repo-name] is crucial - it must be present and
|
||||
# uncommented to enable the repo.
|
||||
#
|
||||
|
||||
# The testing repositories are disabled by default. To enable, uncomment the
|
||||
# repo name header and Include lines. You can add preferred servers immediately
|
||||
# after the header, and they will be used before the default mirrors.
|
||||
|
||||
#[testing]
|
||||
#Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[core]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[extra]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
#[community-testing]
|
||||
#Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[community]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
# An example of a custom package repository. See the pacman manpage for
|
||||
# tips on creating your own repositories.
|
||||
#[custom]
|
||||
#SigLevel = Optional TrustAll
|
||||
#Server = file:///home/custompkgs
|
||||
|
||||
#[archlinuxfr]
|
||||
#SigLevel = Never
|
||||
#Server = http://repo.archlinux.fr/$arch
|
104
extra/pre-build.d/64/etc/pacman.conf
Normal file
104
extra/pre-build.d/64/etc/pacman.conf
Normal file
@ -0,0 +1,104 @@
|
||||
#
|
||||
# /etc/pacman.conf
|
||||
#
|
||||
# See the pacman.conf(5) manpage for option and repository directives
|
||||
|
||||
#
|
||||
# GENERAL OPTIONS
|
||||
#
|
||||
[options]
|
||||
# The following paths are commented out with their default values listed.
|
||||
# If you wish to use different paths, uncomment and update the paths.
|
||||
#RootDir = /
|
||||
#DBPath = /var/lib/pacman/
|
||||
#CacheDir = /var/cache/pacman/pkg/
|
||||
#LogFile = /var/log/pacman.log
|
||||
#GPGDir = /etc/pacman.d/gnupg/
|
||||
HoldPkg = pacman glibc
|
||||
#XferCommand = /usr/bin/curl -C - -f %u > %o
|
||||
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||
#CleanMethod = KeepInstalled
|
||||
#UseDelta = 0.7
|
||||
Architecture = x86_64
|
||||
|
||||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
||||
#IgnorePkg =
|
||||
#IgnoreGroup =
|
||||
|
||||
#NoUpgrade =
|
||||
#NoExtract =
|
||||
|
||||
# Misc options
|
||||
UseSyslog
|
||||
Color
|
||||
TotalDownload
|
||||
CheckSpace
|
||||
VerbosePkgLists
|
||||
|
||||
# By default, pacman accepts packages signed by keys that its local keyring
|
||||
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
||||
#SigLevel = Required DatabaseOptional #RE-ENABLE ME WHEN A NEW SNAPSHOT IS RELEASED WITH FIXED GPG
|
||||
SigLevel = Never
|
||||
LocalFileSigLevel = Optional
|
||||
#RemoteFileSigLevel = Required
|
||||
|
||||
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
||||
# keyring can then be populated with the keys of all official Arch Linux
|
||||
# packagers with `pacman-key --populate archlinux`.
|
||||
|
||||
#
|
||||
# REPOSITORIES
|
||||
# - can be defined here or included from another file
|
||||
# - pacman will search repositories in the order defined here
|
||||
# - local/custom mirrors can be added here or in separate files
|
||||
# - repositories listed first will take precedence when packages
|
||||
# have identical names, regardless of version number
|
||||
# - URLs will have $repo replaced by the name of the current repo
|
||||
# - URLs will have $arch replaced by the name of the architecture
|
||||
#
|
||||
# Repository entries are of the format:
|
||||
# [repo-name]
|
||||
# Server = ServerName
|
||||
# Include = IncludePath
|
||||
#
|
||||
# The header [repo-name] is crucial - it must be present and
|
||||
# uncommented to enable the repo.
|
||||
#
|
||||
|
||||
# The testing repositories are disabled by default. To enable, uncomment the
|
||||
# repo name header and Include lines. You can add preferred servers immediately
|
||||
# after the header, and they will be used before the default mirrors.
|
||||
|
||||
#[testing]
|
||||
#Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[core]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[extra]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
#[community-testing]
|
||||
#Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[community]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
# If you want to run 32 bit applications on your x86_64 system,
|
||||
# enable the multilib repositories as required here.
|
||||
|
||||
#[multilib-testing]
|
||||
#Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[multilib]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
# An example of a custom package repository. See the pacman manpage for
|
||||
# tips on creating your own repositories.
|
||||
#[custom]
|
||||
#SigLevel = Optional TrustAll
|
||||
#Server = file:///home/custompkgs
|
||||
|
||||
#[archlinuxfr]
|
||||
#SigLevel = Never
|
||||
#Server = http://repo.archlinux.fr/$arch
|
@ -11,27 +11,26 @@
|
||||
#buildonly=1
|
||||
#cachevcs=1
|
||||
#ignorearch=1
|
||||
#needed=1
|
||||
#keepkeys=1
|
||||
needed=1
|
||||
#noaur=1
|
||||
noconfirm=1
|
||||
noedit=1
|
||||
#noaur=1
|
||||
#noconfirm=1
|
||||
#noedit=1
|
||||
#nofail=1
|
||||
nofail=1
|
||||
#preview=1
|
||||
#purgebuild=1
|
||||
progress=1
|
||||
purgebuild=1
|
||||
#quiet=1
|
||||
#skipcache=1
|
||||
skipinteg=1
|
||||
skipcache=1
|
||||
#skipinteg=1
|
||||
#skiptest=1
|
||||
#warn=1
|
||||
#tmpdir=/var/tmp/apacman
|
||||
#TMPDIR=/var/tmp/apacman
|
||||
|
||||
#
|
||||
# CONFIGURATION
|
||||
#
|
||||
|
||||
#builddir="/tmp/pkgbuild-$UID"
|
||||
#tmpdir="/tmp/apacmantmp-$UID"
|
||||
#makepkgconf="/etc/makepkg.conf"
|
||||
#usermakepkgconf="$HOME/.makepkg.conf"
|
||||
@ -39,19 +38,21 @@ skipinteg=1
|
||||
#downdir="/var/cache/pacman/pkg"
|
||||
#savedir="/var/cache/apacman/pkg"
|
||||
#editor="nano -w"
|
||||
editor="vim"
|
||||
#pager="less -R"
|
||||
#RPCURL="https://aur.archlinux.org/rpc.php?type"
|
||||
#PKGURL="https://aur.archlinux.org"
|
||||
#WEBURL="https://www.archlinux.org"
|
||||
#ABSURL="rsync.archlinux.org"
|
||||
|
||||
#
|
||||
# COLORIZATION
|
||||
#
|
||||
|
||||
COLOR1='\e[1;39m'
|
||||
COLOR2='\e[1;32m'
|
||||
COLOR3='\e[1;35m'
|
||||
COLOR4='\e[1;36m'
|
||||
COLOR5='\e[1;34m'
|
||||
COLOR6='\e[1;33m'
|
||||
COLOR7='\e[1;31m'
|
||||
#COLOR1='\e[1;39m'
|
||||
#COLOR2='\e[1;32m'
|
||||
#COLOR3='\e[1;35m'
|
||||
#COLOR4='\e[1;36m'
|
||||
#COLOR5='\e[1;34m'
|
||||
#COLOR6='\e[1;33m'
|
||||
#COLOR7='\e[1;31m'
|
||||
|
||||
|
4
extra/pre-build.d/etc/customizepkg.d/autopsy
Executable file
4
extra/pre-build.d/etc/customizepkg.d/autopsy
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
# original URL at sourceforge chokes out
|
||||
sed -re 's@^(source=\(").*$@\1ftp://ftp.gnome.org/mirror/temp/sf2015/a/au/autopsy/autopsy/2.24/autopsy-2.24.tar.gz")@g' ${1}
|
3
extra/pre-build.d/etc/customizepkg.d/etc-update
Executable file
3
extra/pre-build.d/etc/customizepkg.d/etc-update
Executable file
@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
sed -i -re 's/^(url=)\((.*)\)$/\1\2/g' ${1}
|
3
extra/pre-build.d/etc/customizepkg.d/fang
Executable file
3
extra/pre-build.d/etc/customizepkg.d/fang
Executable file
@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
sed -i -re 's/^(url=)\((.*)\)$/\1\2/g' ${1}
|
3
extra/pre-build.d/etc/customizepkg.d/libnfc
Executable file
3
extra/pre-build.d/etc/customizepkg.d/libnfc
Executable file
@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
sed -i -re 's/^(url=)\((.*)\)$/\1\2/g' ${1}
|
4
extra/pre-build.d/etc/customizepkg.d/ms-sys
Executable file
4
extra/pre-build.d/etc/customizepkg.d/ms-sys
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
# original URL at sourceforge chokes out
|
||||
sed -re 's@^(source=\(").*$@\1http://fossies.org/linux/privat/${pkgname}-${pkgver}.tar.gz")@g' ${1}
|
@ -64,4 +64,4 @@ COMPRESSION="xz"
|
||||
|
||||
# COMPRESSION_OPTIONS
|
||||
# Additional options for the compressor
|
||||
#COMPRESSION_OPTIONS=""
|
||||
COMPRESSION_OPTIONS="-9"
|
||||
|
@ -1,7 +1,6 @@
|
||||
# Server list generated by rankmirrors on 2014-11-10
|
||||
Server = http://mirror.rit.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.cc.columbia.edu/pub/linux/archlinux/$repo/os/$arch
|
||||
Server = http://mirrors.acm.wpi.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.jmu.edu/pub/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.cs.pitt.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.vtti.vt.edu/archlinux/$repo/os/$arch
|
||||
Server = http://mirrors.advancedhosters.com/archlinux/$repo/os/$arch
|
||||
Server = http://mirrors.gigenet.com/archlinux/$repo/os/$arch
|
||||
Server = http://il.mirrors.linaxe.net/archlinux/$repo/os/$arch
|
||||
Server = http://mirror.grig.io/archlinux/$repo/os/$arch
|
||||
Server = http://arch.mirrors.ionfish.org/$repo/os/$arch
|
||||
Server = http://cosmos.cites.illinois.edu/pub/archlinux/$repo/os/$arch
|
||||
|
@ -1,6 +1,8 @@
|
||||
--- a/src/usr/autoboot.c 2015-06-29 04:18:17.055394598 -0400
|
||||
+++ b/src/usr/autoboot.c 2015-06-29 22:04:28.692916217 -0400
|
||||
@@ -71,6 +71,7 @@
|
||||
diff --git a/src/usr/autoboot.c b/src/usr/autoboot.c
|
||||
index e93b015..758e187 100644
|
||||
--- a/src/usr/autoboot.c
|
||||
+++ b/src/usr/autoboot.c
|
||||
@@ -71,6 +71,7 @@ static int ( * is_autoboot_device ) ( struct net_device *netdev );
|
||||
#define NORMAL "\033[0m"
|
||||
#define BOLD "\033[1m"
|
||||
#define CYAN "\033[36m"
|
||||
@ -8,16 +10,27 @@
|
||||
|
||||
/** The "scriptlet" setting */
|
||||
const struct setting scriptlet_setting __setting ( SETTING_MISC, scriptlet ) = {
|
||||
@@ -560,9 +561,9 @@
|
||||
@@ -521,7 +522,6 @@ static int shell_banner ( void ) {
|
||||
* @ret rc Return status code
|
||||
*/
|
||||
int ipxe ( struct net_device *netdev ) {
|
||||
- struct feature *feature;
|
||||
struct image *image;
|
||||
char *scriptlet;
|
||||
int rc;
|
||||
@@ -538,11 +538,11 @@ int ipxe ( struct net_device *netdev ) {
|
||||
* do so.
|
||||
*
|
||||
*/
|
||||
- printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME " %s"
|
||||
- NORMAL " -- " PRODUCT_TAG_LINE " -- "
|
||||
- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version );
|
||||
+ printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME
|
||||
NORMAL " -- " PRODUCT_TAG_LINE " -- "
|
||||
- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version );
|
||||
- for_each_table_entry ( feature, FEATURES )
|
||||
- printf ( " %s", feature->name );
|
||||
+ CYAN PRODUCT_URI NORMAL "\n"
|
||||
+ BOLD BLUE "http://bdisk.square-r00t.net/" NORMAL "\n" );
|
||||
for_each_table_entry ( feature, FEATURES )
|
||||
printf ( " %s", feature->name );
|
||||
+ BOLD "BDisk" BLUE "LiveDistro" NORMAL " -- Welp, Yer Boned!(TM) -- "
|
||||
+ BOLD BLUE "https://bdisk.square-r00t.net/" NORMAL "\n" );
|
||||
printf ( "\n" );
|
||||
|
||||
/* Boot system */
|
||||
|
120
src/ipxe_local/patches/ipxe-0004-eiso.patch
Normal file
120
src/ipxe_local/patches/ipxe-0004-eiso.patch
Normal file
@ -0,0 +1,120 @@
|
||||
From 189652b03032305a2db860e76fb58e81e3420c4d Mon Sep 17 00:00:00 2001
|
||||
From: Christian Hesse <mail@eworm.de>
|
||||
Date: Wed, 24 Feb 2016 09:16:51 +0100
|
||||
Subject: [PATCH] allow to build ISO image with EFI support (ipxe.eiso)
|
||||
|
||||
---
|
||||
src/arch/x86/Makefile.pcbios | 6 +++++
|
||||
src/util/geniso | 52 ++++++++++++++++++++++++++++++++++----------
|
||||
2 files changed, 46 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/arch/x86/Makefile.pcbios b/src/arch/x86/Makefile.pcbios
|
||||
index f8c2253..1e01636 100644
|
||||
--- a/src/arch/x86/Makefile.pcbios
|
||||
+++ b/src/arch/x86/Makefile.pcbios
|
||||
@@ -86,6 +86,12 @@ NON_AUTO_MEDIA += iso
|
||||
$(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) LDLINUX_C32=$(LDLINUX_C32) \
|
||||
VERSION="$(VERSION)" bash util/geniso -o $@ $<
|
||||
|
||||
+# rule to make a non-emulation ISO boot image with EFI support
|
||||
+NON_AUTO_MEDIA += eiso
|
||||
+%eiso: %lkrn bin-i386-efi/ipxe.efi bin-x86_64-efi/ipxe.efi util/geniso
|
||||
+ $(QM)$(ECHO) " [GENISO] $@"
|
||||
+ $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) VERSION="$(VERSION)" bash util/geniso -e -o $@ $<
|
||||
+
|
||||
# rule to make a floppy emulation ISO boot image
|
||||
NON_AUTO_MEDIA += liso
|
||||
%liso: %lkrn util/geniso
|
||||
diff --git a/src/util/geniso b/src/util/geniso
|
||||
index ff090d4..7694036 100755
|
||||
--- a/src/util/geniso
|
||||
+++ b/src/util/geniso
|
||||
@@ -6,16 +6,21 @@ function help() {
|
||||
echo "usage: ${0} [OPTIONS] foo.lkrn [bar.lkrn,...]"
|
||||
echo
|
||||
echo "where OPTIONS are:"
|
||||
+ echo " -e build image with EFI support"
|
||||
echo " -h show this help"
|
||||
echo " -l build legacy image with floppy emulation"
|
||||
echo " -o FILE save iso image to file"
|
||||
}
|
||||
|
||||
+EFI=0
|
||||
LEGACY=0
|
||||
FIRST=""
|
||||
|
||||
-while getopts "hlo:" opt; do
|
||||
+while getopts "ehlo:" opt; do
|
||||
case ${opt} in
|
||||
+ e)
|
||||
+ EFI=1
|
||||
+ ;;
|
||||
h)
|
||||
help
|
||||
exit 0
|
||||
@@ -37,17 +42,25 @@ if [ -z "${OUT}" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-# There should either be mkisofs or the compatible genisoimage program
|
||||
-for command in genisoimage mkisofs; do
|
||||
- if ${command} --version >/dev/null 2>/dev/null; then
|
||||
- mkisofs=(${command})
|
||||
- break
|
||||
- fi
|
||||
-done
|
||||
-
|
||||
-if [ -z "${mkisofs}" ]; then
|
||||
- echo "${0}: mkisofs or genisoimage not found, please install or set PATH" >&2
|
||||
+# We need xorriso (from libisoburn) for EFI support, so try that first.
|
||||
+if xorriso --version >/dev/null 2>/dev/null; then
|
||||
+ mkisofs=(xorriso -as mkisofs)
|
||||
+elif [ ${EFI} -eq 1 ]; then
|
||||
+ echo "${0}: xorriso not found, but required for EFI support. Please install." >&2
|
||||
exit 1
|
||||
+else
|
||||
+ # fall back to mkisofs or the compatible genisoimage program
|
||||
+ for command in genisoimage mkisofs; do
|
||||
+ if ${command} --version >/dev/null 2>/dev/null; then
|
||||
+ mkisofs=(${command})
|
||||
+ break
|
||||
+ fi
|
||||
+ done
|
||||
+
|
||||
+ if [ -z "${mkisofs}" ]; then
|
||||
+ echo "${0}: mkisofs or genisoimage not found, please install or set PATH" >&2
|
||||
+ exit 1
|
||||
+ fi
|
||||
fi
|
||||
|
||||
dir=$(mktemp -d bin/iso.dir.XXXXXX)
|
||||
@@ -122,13 +135,28 @@ case "${LEGACY}" in
|
||||
# copy isolinux bootloader
|
||||
cp ${ISOLINUX_BIN} ${dir}
|
||||
|
||||
+ mkisofs+=(-b isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table)
|
||||
+
|
||||
+ if [ "${EFI}" -eq 1 ]; then
|
||||
+ # generate EFI image
|
||||
+ img=${dir}/efiboot.img
|
||||
+
|
||||
+ mformat -f 2880 -C -i ${img} ::
|
||||
+ mmd -i ${img} "::/EFI"
|
||||
+ mmd -i ${img} "::/EFI/BOOT"
|
||||
+ mcopy -m -i ${img} bin-x86_64-efi/ipxe.efi "::EFI/BOOT/BOOTX64.EFI"
|
||||
+ mcopy -m -i ${img} bin-i386-efi/ipxe.efi "::EFI/BOOT/BOOTIA32.EFI"
|
||||
+
|
||||
+ mkisofs+=(-eltorito-alt-boot -e efiboot.img -isohybrid-gpt-basdat -no-emul-boot)
|
||||
+ fi
|
||||
+
|
||||
# syslinux 6.x needs a file called ldlinux.c32
|
||||
if [ -n "${LDLINUX_C32}" -a -s "${LDLINUX_C32}" ]; then
|
||||
cp ${LDLINUX_C32} ${dir}
|
||||
fi
|
||||
|
||||
# generate the iso image
|
||||
- "${mkisofs[@]}" -b isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -output ${OUT} ${dir}
|
||||
+ "${mkisofs[@]}" -output ${OUT} ${dir}
|
||||
|
||||
# isohybrid will be used if available
|
||||
if isohybrid --version >/dev/null 2>/dev/null; then
|
Loading…
Reference in New Issue
Block a user