Compare commits
No commits in common. "master" and "0.0.2" have entirely different histories.
1
.gitmodules
vendored
@ -1,4 +1,3 @@
|
|||||||
[submodule "lib/libdevuansdk"]
|
[submodule "lib/libdevuansdk"]
|
||||||
path = lib/libdevuansdk
|
path = lib/libdevuansdk
|
||||||
url = https://git.devuan.org/frangamer1892/libdevuansdk.git
|
url = https://git.devuan.org/frangamer1892/libdevuansdk.git
|
||||||
branch = master
|
|
||||||
|
13
README.md
@ -3,14 +3,9 @@ Delphinium GNU/Linux
|
|||||||
|
|
||||||
Delphinium GNU/Linux is a simple distro based in Devuan, featuring the MATE desktop environment.
|
Delphinium GNU/Linux is a simple distro based in Devuan, featuring the MATE desktop environment.
|
||||||
|
|
||||||
Releases at: https://gnlug.org/pub/isos/delphinium/ (user delphinium, password delphinium)
|
Releases at: https://notindiegames.tk/pub/delphinium/
|
||||||
|
|
||||||

|

|
||||||

|
|
||||||
|
|
||||||
## Known issues with the latest release
|
|
||||||
|
|
||||||
- None! If you happen to find any, please report them over on the Issues tab.
|
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
@ -46,11 +41,11 @@ git pull && git submodule update --init --recursive --checkout
|
|||||||
|
|
||||||
Edit the `config` file to match your needs. Sensible defaults are
|
Edit the `config` file to match your needs. Sensible defaults are
|
||||||
already there. Then run zsh. To avoid issues, it's best to start a
|
already there. Then run zsh. To avoid issues, it's best to start a
|
||||||
vanilla session, without preloaded config files so it doesn't cause
|
vanilla version, without preloaded config files so it doesn't cause
|
||||||
issues with libdevuansdk/delphinium-sdk functions.
|
issues with libdevuansdk/delphinium-sdk functions.
|
||||||
|
|
||||||
```
|
```
|
||||||
zsh -f
|
zsh
|
||||||
source sdk
|
source sdk
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 8.2 KiB |
@ -5,8 +5,10 @@ vars+=(username userpass default_shell mkefi grubversion hookscripts)
|
|||||||
arrs+=(custom_deb_packages)
|
arrs+=(custom_deb_packages)
|
||||||
|
|
||||||
blend_name="delphinium-desktop-live_"
|
blend_name="delphinium-desktop-live_"
|
||||||
release="daedalus"
|
|
||||||
version="1.1.0"
|
release="chimaera"
|
||||||
|
version="0.0.2"
|
||||||
|
|
||||||
username="delphinium"
|
username="delphinium"
|
||||||
userpass="delphinium"
|
userpass="delphinium"
|
||||||
default_shell="/bin/bash"
|
default_shell="/bin/bash"
|
||||||
@ -38,8 +40,8 @@ grubversion="grub-efi-amd64"
|
|||||||
# Uncomment for amd64
|
# Uncomment for amd64
|
||||||
base_packages+=(grub-efi-amd64-bin grub-efi-ia32-bin)
|
base_packages+=(grub-efi-amd64-bin grub-efi-ia32-bin)
|
||||||
|
|
||||||
mirror="http://deb.devuan.org/merged"
|
mirror="http://pkgmaster.devuan.org/merged"
|
||||||
section="main non-free-firmware"
|
section="main contrib non-free"
|
||||||
|
|
||||||
|
|
||||||
#base_packages_option=(--no-install-recommends)
|
#base_packages_option=(--no-install-recommends)
|
||||||
|
@ -1,60 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-desktop-live blend
|
|
||||||
|
|
||||||
vars+=(username userpass default_shell mkefi grubversion hookscripts)
|
|
||||||
arrs+=(custom_deb_packages)
|
|
||||||
|
|
||||||
blend_name="devuan-desktop-live_"
|
|
||||||
|
|
||||||
release="chimaera"
|
|
||||||
version="4.0.0"
|
|
||||||
|
|
||||||
username="devuan"
|
|
||||||
userpass="devuan"
|
|
||||||
default_shell="/bin/bash"
|
|
||||||
|
|
||||||
# comment to disable:
|
|
||||||
#hookscripts="yes"
|
|
||||||
|
|
||||||
#arch="amd64"
|
|
||||||
arch="i386"
|
|
||||||
|
|
||||||
case "$arch" in
|
|
||||||
# for minimal-live
|
|
||||||
#i386) extra_packages+=(linux-image-686) ;;
|
|
||||||
|
|
||||||
# for desktop-live
|
|
||||||
i386) extra_packages+=(linux-image-686-pae) ;;
|
|
||||||
|
|
||||||
amd64) extra_packages+=(linux-image-amd64) ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
|
|
||||||
# uncomment to create uefi-bootable iso
|
|
||||||
MKEFI=1
|
|
||||||
efi_work="$BLENDPATH/${release}/efi-files"
|
|
||||||
|
|
||||||
#grubversion="grub-pc"
|
|
||||||
grubversion="grub-efi-amd64"
|
|
||||||
|
|
||||||
# Uncomment for amd64
|
|
||||||
base_packages+=(grub-efi-amd64-bin grub-efi-ia32-bin)
|
|
||||||
|
|
||||||
mirror="http://pkgmaster.devuan.org/merged"
|
|
||||||
section="main contrib non-free"
|
|
||||||
|
|
||||||
|
|
||||||
#base_packages_option=(--no-install-recommends)
|
|
||||||
#extra_packages_option=(--no-install-recommends)
|
|
||||||
|
|
||||||
|
|
||||||
release_conf="$BLENDPATH/${release}/config"
|
|
||||||
|
|
||||||
|
|
||||||
### package sets are defined in the corresponding $release/config file
|
|
||||||
|
|
||||||
source $release_conf
|
|
||||||
|
|
||||||
## image_name depends on release and version
|
|
||||||
|
|
||||||
image_name="${os}_${release}_${version}_${arch}_desktop"
|
|
@ -1,58 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-desktop-live blend
|
|
||||||
|
|
||||||
vars+=(username userpass default_shell mkefi grubversion hookscripts)
|
|
||||||
arrs+=(custom_deb_packages)
|
|
||||||
|
|
||||||
blend_name="devuan-desktop-live_"
|
|
||||||
release="daedalus"
|
|
||||||
version="5.0.0"
|
|
||||||
username="devuan"
|
|
||||||
userpass="devuan"
|
|
||||||
default_shell="/bin/bash"
|
|
||||||
|
|
||||||
# comment to disable:
|
|
||||||
#hookscripts="yes"
|
|
||||||
|
|
||||||
arch="amd64"
|
|
||||||
#arch="i386"
|
|
||||||
|
|
||||||
case "$arch" in
|
|
||||||
# for minimal-live
|
|
||||||
#i386) extra_packages+=(linux-image-686) ;;
|
|
||||||
|
|
||||||
# for desktop-live
|
|
||||||
i386) extra_packages+=(linux-image-686-pae) ;;
|
|
||||||
|
|
||||||
amd64) extra_packages+=(linux-image-amd64) ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
|
|
||||||
# uncomment to create uefi-bootable iso
|
|
||||||
MKEFI=1
|
|
||||||
efi_work="$BLENDPATH/${release}/efi-files"
|
|
||||||
|
|
||||||
#grubversion="grub-pc"
|
|
||||||
grubversion="grub-efi-amd64"
|
|
||||||
|
|
||||||
# Uncomment for amd64
|
|
||||||
base_packages+=(grub-efi-amd64-bin grub-efi-ia32-bin)
|
|
||||||
|
|
||||||
mirror="http://deb.devuan.org/merged"
|
|
||||||
section="main non-free-firmware"
|
|
||||||
|
|
||||||
|
|
||||||
#base_packages_option=(--no-install-recommends)
|
|
||||||
#extra_packages_option=(--no-install-recommends)
|
|
||||||
|
|
||||||
|
|
||||||
release_conf="$BLENDPATH/${release}/config"
|
|
||||||
|
|
||||||
|
|
||||||
### package sets are defined in the corresponding $release/config file
|
|
||||||
|
|
||||||
source $release_conf
|
|
||||||
|
|
||||||
## image_name depends on release and version
|
|
||||||
|
|
||||||
image_name="${os}_${release}_${version}_${arch}_desktop"
|
|
@ -1,126 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-desktop-live blend -- Daedalus release
|
|
||||||
|
|
||||||
|
|
||||||
base_packages+=(
|
|
||||||
lsof
|
|
||||||
bash-completion
|
|
||||||
texinfo
|
|
||||||
acpi-support-base
|
|
||||||
acpi-fakekey
|
|
||||||
aptitude
|
|
||||||
apt-listchanges
|
|
||||||
console-setup
|
|
||||||
debootstrap
|
|
||||||
discover
|
|
||||||
dnsutils
|
|
||||||
doc-debian
|
|
||||||
docutils-common
|
|
||||||
docutils-doc
|
|
||||||
ftp-ssl # in daedalus ftp-ssl or tnftp replaces ftp. lftp gets some votes locally.
|
|
||||||
gettext
|
|
||||||
gnome-disk-utility
|
|
||||||
gnupg2
|
|
||||||
gparted
|
|
||||||
grub-pc-bin
|
|
||||||
$grubversion
|
|
||||||
iw
|
|
||||||
laptop-detect
|
|
||||||
lvm2
|
|
||||||
mdadm
|
|
||||||
mlocate
|
|
||||||
mutt
|
|
||||||
ncurses-term
|
|
||||||
net-tools
|
|
||||||
netcat-traditional
|
|
||||||
nfs-common
|
|
||||||
procmail
|
|
||||||
reportbug
|
|
||||||
rfkill
|
|
||||||
telnet
|
|
||||||
traceroute
|
|
||||||
usbutils
|
|
||||||
util-linux-locales
|
|
||||||
w3m
|
|
||||||
whois
|
|
||||||
mc
|
|
||||||
gdebi
|
|
||||||
nmap
|
|
||||||
neofetch
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
extra_packages+=(
|
|
||||||
|
|
||||||
task-desktop
|
|
||||||
task-laptop
|
|
||||||
task-mate-desktop
|
|
||||||
# task-print-server ## no package
|
|
||||||
# popularity-contest
|
|
||||||
refractainstaller-base
|
|
||||||
refractasnapshot-base
|
|
||||||
yad
|
|
||||||
refractainstaller-gui
|
|
||||||
refractasnapshot-gui
|
|
||||||
# libgtk3-perl #need to add this for graphical debconf - THIS SUCKS! (buttons off-screen)
|
|
||||||
gvfs-backends
|
|
||||||
gnome-mines
|
|
||||||
gnome-sudoku
|
|
||||||
gnome-chess
|
|
||||||
supertuxkart
|
|
||||||
deluge
|
|
||||||
tigervnc-viewer
|
|
||||||
vlc
|
|
||||||
cryptsetup-initramfs
|
|
||||||
cryptsetup-run
|
|
||||||
git
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
extra_packages+=(
|
|
||||||
firmware-atheros
|
|
||||||
firmware-bnx2
|
|
||||||
firmware-bnx2x
|
|
||||||
firmware-brcm80211
|
|
||||||
firmware-iwlwifi
|
|
||||||
firmware-libertas
|
|
||||||
firmware-linux-free
|
|
||||||
firmware-linux-nonfree
|
|
||||||
firmware-misc-nonfree
|
|
||||||
firmware-myricom
|
|
||||||
firmware-netxen
|
|
||||||
firmware-qlogic
|
|
||||||
firmware-realtek
|
|
||||||
firmware-ti-connectivity
|
|
||||||
firmware-zd1211
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
purge_packages=(
|
|
||||||
# devuan-baseconf
|
|
||||||
debian-keyring
|
|
||||||
elinks
|
|
||||||
elinks-data
|
|
||||||
liberror-perl
|
|
||||||
libfsplib0
|
|
||||||
libtre5
|
|
||||||
openntpd
|
|
||||||
openssh-server
|
|
||||||
openssh-sftp-server
|
|
||||||
tmux
|
|
||||||
zsh
|
|
||||||
zsh-common
|
|
||||||
intel-microcode
|
|
||||||
iucode-tool
|
|
||||||
amd64-microcode
|
|
||||||
)
|
|
||||||
|
|
||||||
purge_extra_packages=(
|
|
||||||
gtk3-nocsd
|
|
||||||
libgtk3-nocsd0
|
|
||||||
)
|
|
||||||
|
|
||||||
custom_deb_packages+=(
|
|
||||||
|
|
||||||
|
|
||||||
)
|
|
Before Width: | Height: | Size: 9.4 KiB |
@ -1,16 +0,0 @@
|
|||||||
# CONFIGURATION FILE FOR SETUPCON
|
|
||||||
|
|
||||||
# Consult the console-setup(5) manual page.
|
|
||||||
|
|
||||||
ACTIVE_CONSOLES="/dev/tty[1-6]"
|
|
||||||
|
|
||||||
CHARMAP="UTF-8"
|
|
||||||
|
|
||||||
CODESET="Lat15"
|
|
||||||
FONTFACE="VGA"
|
|
||||||
FONTSIZE="8x16"
|
|
||||||
|
|
||||||
VIDEOMODE=
|
|
||||||
|
|
||||||
# The following is an example how to use a braille font
|
|
||||||
# FONT='lat9w-08.psf.gz brl-8x8.psf'
|
|
@ -1,2 +0,0 @@
|
|||||||
Delphinium GNU/Linux daedalus \n \l
|
|
||||||
|
|
@ -1 +0,0 @@
|
|||||||
Delphinium GNU/Linux daedalus
|
|
@ -1,7 +0,0 @@
|
|||||||
|
|
||||||
The programs included with the Delphinium GNU/Linux system are free software;
|
|
||||||
the exact distribution terms for each program are described in the
|
|
||||||
individual files in /usr/share/doc/*/copyright.
|
|
||||||
|
|
||||||
Delphinium GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
|
|
||||||
permitted by applicable law.
|
|
@ -1 +0,0 @@
|
|||||||
../usr/lib/os-release
|
|
@ -1,296 +0,0 @@
|
|||||||
# XScreenSaver Preferences File
|
|
||||||
# Written by xscreensaver-settings 6.06 for devuan on Wed May 17 18:47:46 2023.
|
|
||||||
# https://www.jwz.org/xscreensaver/
|
|
||||||
|
|
||||||
timeout: 0:10:00
|
|
||||||
cycle: 0:10:00
|
|
||||||
lock: False
|
|
||||||
lockTimeout: 0:00:00
|
|
||||||
passwdTimeout: 0:00:30
|
|
||||||
visualID: default
|
|
||||||
installColormap: True
|
|
||||||
verbose: False
|
|
||||||
splash: True
|
|
||||||
splashDuration: 0:00:05
|
|
||||||
demoCommand: xscreensaver-settings
|
|
||||||
nice: 10
|
|
||||||
fade: True
|
|
||||||
unfade: True
|
|
||||||
fadeSeconds: 0:00:03
|
|
||||||
ignoreUninstalledPrograms:False
|
|
||||||
dpmsEnabled: False
|
|
||||||
dpmsQuickOff: False
|
|
||||||
dpmsStandby: 2:00:00
|
|
||||||
dpmsSuspend: 2:00:00
|
|
||||||
dpmsOff: 4:00:00
|
|
||||||
grabDesktopImages: False
|
|
||||||
grabVideoFrames: False
|
|
||||||
chooseRandomImages: False
|
|
||||||
imageDirectory:
|
|
||||||
|
|
||||||
mode: off
|
|
||||||
selected: -1
|
|
||||||
|
|
||||||
textMode: url
|
|
||||||
textLiteral: XScreenSaver
|
|
||||||
textFile:
|
|
||||||
textProgram: fortune
|
|
||||||
textURL: https://planet.debian.org/rss20.xml
|
|
||||||
dialogTheme: default
|
|
||||||
settingsGeom: 77,217 -1,-1
|
|
||||||
|
|
||||||
programs: \
|
|
||||||
maze --root \n\
|
|
||||||
- GL: superquadrics --root \n\
|
|
||||||
attraction --root \n\
|
|
||||||
blitspin --root \n\
|
|
||||||
greynetic --root \n\
|
|
||||||
helix --root \n\
|
|
||||||
hopalong --root \n\
|
|
||||||
imsmap --root \n\
|
|
||||||
- noseguy --root \n\
|
|
||||||
- pyro --root \n\
|
|
||||||
qix --root \n\
|
|
||||||
- rocks --root \n\
|
|
||||||
rorschach --root \n\
|
|
||||||
decayscreen --root \n\
|
|
||||||
flame --root \n\
|
|
||||||
halo --root \n\
|
|
||||||
slidescreen --root \n\
|
|
||||||
pedal --root \n\
|
|
||||||
bouboule --root \n\
|
|
||||||
- braid --root \n\
|
|
||||||
coral --root \n\
|
|
||||||
deco --root \n\
|
|
||||||
drift --root \n\
|
|
||||||
- fadeplot --root \n\
|
|
||||||
galaxy --root \n\
|
|
||||||
goop --root \n\
|
|
||||||
grav --root \n\
|
|
||||||
ifs --root \n\
|
|
||||||
unicode --root \n\
|
|
||||||
- GL: jigsaw --root \n\
|
|
||||||
julia --root \n\
|
|
||||||
- kaleidescope --root \n\
|
|
||||||
- GL: moebius --root \n\
|
|
||||||
moire --root \n\
|
|
||||||
- GL: morph3d --root \n\
|
|
||||||
mountain --root \n\
|
|
||||||
munch --root \n\
|
|
||||||
penrose --root \n\
|
|
||||||
- GL: pipes --root \n\
|
|
||||||
rdbomb --root \n\
|
|
||||||
- GL: rubik --root \n\
|
|
||||||
- sierpinski --root \n\
|
|
||||||
slip --root \n\
|
|
||||||
- GL: sproingies --root \n\
|
|
||||||
starfish --root \n\
|
|
||||||
strange --root \n\
|
|
||||||
swirl --root \n\
|
|
||||||
triangle --root \n\
|
|
||||||
xjack --root \n\
|
|
||||||
xlyap --root \n\
|
|
||||||
- GL: atlantis --root \n\
|
|
||||||
bsod --root \n\
|
|
||||||
- GL: bubble3d --root \n\
|
|
||||||
- GL: cage --root \n\
|
|
||||||
- crystal --root \n\
|
|
||||||
cynosure --root \n\
|
|
||||||
discrete --root \n\
|
|
||||||
distort --root \n\
|
|
||||||
epicycle --root \n\
|
|
||||||
flow --root \n\
|
|
||||||
- GL: glplanet --root \n\
|
|
||||||
interference --root \n\
|
|
||||||
kumppa --root \n\
|
|
||||||
- GL: lament --root \n\
|
|
||||||
moire2 --root \n\
|
|
||||||
- GL: sonar --root \n\
|
|
||||||
- GL: stairs --root \n\
|
|
||||||
truchet --root \n\
|
|
||||||
- vidwhacker --root \n\
|
|
||||||
- webcollage --root \n\
|
|
||||||
blaster --root \n\
|
|
||||||
bumps --root \n\
|
|
||||||
ccurve --root \n\
|
|
||||||
compass --root \n\
|
|
||||||
deluxe --root \n\
|
|
||||||
- demon --root \n\
|
|
||||||
- GL: extrusion --root \n\
|
|
||||||
- loop --root \n\
|
|
||||||
penetrate --root \n\
|
|
||||||
petri --root \n\
|
|
||||||
phosphor --root \n\
|
|
||||||
- GL: pulsar --root \n\
|
|
||||||
ripples --root \n\
|
|
||||||
shadebobs --root \n\
|
|
||||||
- GL: sierpinski3d --root \n\
|
|
||||||
spotlight --root \n\
|
|
||||||
squiral --root \n\
|
|
||||||
wander --root \n\
|
|
||||||
xflame --root \n\
|
|
||||||
xmatrix --root \n\
|
|
||||||
- GL: gflux --root \n\
|
|
||||||
- nerverot --root \n\
|
|
||||||
xrayswarm --root \n\
|
|
||||||
xspirograph --root \n\
|
|
||||||
- GL: circuit --root \n\
|
|
||||||
- GL: dangerball --root \n\
|
|
||||||
- GL: dnalogo --root \n\
|
|
||||||
- GL: engine --root \n\
|
|
||||||
- GL: flipscreen3d --root \n\
|
|
||||||
- GL: gltext --root \n\
|
|
||||||
- GL: menger --root \n\
|
|
||||||
- GL: molecule --root \n\
|
|
||||||
rotzoomer --root \n\
|
|
||||||
scooter --root \n\
|
|
||||||
speedmine --root \n\
|
|
||||||
- GL: starwars --root \n\
|
|
||||||
- GL: stonerview --root \n\
|
|
||||||
vermiculate --root \n\
|
|
||||||
whirlwindwarp --root \n\
|
|
||||||
zoom --root \n\
|
|
||||||
anemone --root \n\
|
|
||||||
apollonian --root \n\
|
|
||||||
- GL: boxed --root \n\
|
|
||||||
- GL: cubenetic --root \n\
|
|
||||||
- GL: endgame --root \n\
|
|
||||||
euler2d --root \n\
|
|
||||||
fluidballs --root \n\
|
|
||||||
- GL: flurry --root \n\
|
|
||||||
- GL: glblur --root \n\
|
|
||||||
- GL: glsnake --root \n\
|
|
||||||
halftone --root \n\
|
|
||||||
- GL: juggler3d --root \n\
|
|
||||||
- GL: lavalite --root \n\
|
|
||||||
- polyominoes --root \n\
|
|
||||||
- GL: queens --root \n\
|
|
||||||
- GL: sballs --root \n\
|
|
||||||
- GL: spheremonics --root \n\
|
|
||||||
twang --root \n\
|
|
||||||
- GL: antspotlight --root \n\
|
|
||||||
apple2 --root \n\
|
|
||||||
- GL: atunnel --root \n\
|
|
||||||
barcode --root \n\
|
|
||||||
- GL: blinkbox --root \n\
|
|
||||||
- GL: blocktube --root \n\
|
|
||||||
- GL: bouncingcow --root \n\
|
|
||||||
cloudlife --root \n\
|
|
||||||
- GL: cubestorm --root \n\
|
|
||||||
eruption --root \n\
|
|
||||||
- GL: flipflop --root \n\
|
|
||||||
- GL: flyingtoasters --root \n\
|
|
||||||
fontglide --root \n\
|
|
||||||
- GL: gleidescope --root \n\
|
|
||||||
- GL: glknots --root \n\
|
|
||||||
- GL: glmatrix --root \n\
|
|
||||||
- GL: glslideshow --root \n\
|
|
||||||
- GL: hypertorus --root \n\
|
|
||||||
- GL: jigglypuff --root \n\
|
|
||||||
metaballs --root \n\
|
|
||||||
- GL: mirrorblob --root \n\
|
|
||||||
piecewise --root \n\
|
|
||||||
- GL: polytopes --root \n\
|
|
||||||
pong --root \n\
|
|
||||||
popsquares --root \n\
|
|
||||||
- GL: surfaces --root \n\
|
|
||||||
xanalogtv --root \n\
|
|
||||||
abstractile --root \n\
|
|
||||||
anemotaxis --root \n\
|
|
||||||
- GL: antinspect --root \n\
|
|
||||||
fireworkx --root \n\
|
|
||||||
fuzzyflakes --root \n\
|
|
||||||
interaggregate --root \n\
|
|
||||||
intermomentary --root \n\
|
|
||||||
memscroller --root \n\
|
|
||||||
- GL: noof --root \n\
|
|
||||||
pacman --root \n\
|
|
||||||
- GL: pinion --root \n\
|
|
||||||
- GL: polyhedra --root \n\
|
|
||||||
- GL: providence --root \n\
|
|
||||||
substrate --root \n\
|
|
||||||
wormhole --root \n\
|
|
||||||
- GL: antmaze --root \n\
|
|
||||||
- GL: boing --root \n\
|
|
||||||
boxfit --root \n\
|
|
||||||
- GL: carousel --root \n\
|
|
||||||
celtic --root \n\
|
|
||||||
- GL: crackberg --root \n\
|
|
||||||
- GL: cube21 --root \n\
|
|
||||||
fiberlamp --root \n\
|
|
||||||
- GL: fliptext --root \n\
|
|
||||||
- GL: glhanoi --root \n\
|
|
||||||
- GL: tangram --root \n\
|
|
||||||
- GL: timetunnel --root \n\
|
|
||||||
- GL: glschool --root \n\
|
|
||||||
- GL: topblock --root \n\
|
|
||||||
- GL: cubicgrid --root \n\
|
|
||||||
cwaves --root \n\
|
|
||||||
- GL: gears --root \n\
|
|
||||||
- GL: glcells --root \n\
|
|
||||||
- GL: lockward --root \n\
|
|
||||||
m6502 --root \n\
|
|
||||||
- GL: moebiusgears --root \n\
|
|
||||||
- GL: voronoi --root \n\
|
|
||||||
- GL: hypnowheel --root \n\
|
|
||||||
- GL: klein --root \n\
|
|
||||||
- lcdscrub --root \n\
|
|
||||||
- GL: photopile --root \n\
|
|
||||||
- GL: skytentacles --root \n\
|
|
||||||
- GL: rubikblocks --root \n\
|
|
||||||
- GL: companioncube --root \n\
|
|
||||||
- GL: hilbert --root \n\
|
|
||||||
- GL: tronbit --root \n\
|
|
||||||
- GL: geodesic --root \n\
|
|
||||||
hexadrop --root \n\
|
|
||||||
- GL: kaleidocycle --root \n\
|
|
||||||
- GL: quasicrystal --root \n\
|
|
||||||
- GL: unknownpleasures --root \n\
|
|
||||||
binaryring --root \n\
|
|
||||||
- GL: cityflow --root \n\
|
|
||||||
- GL: geodesicgears --root \n\
|
|
||||||
- GL: projectiveplane --root \n\
|
|
||||||
- GL: romanboy --root \n\
|
|
||||||
tessellimage --root \n\
|
|
||||||
- GL: winduprobot --root \n\
|
|
||||||
- GL: splitflap --root \n\
|
|
||||||
- GL: cubestack --root \n\
|
|
||||||
- GL: cubetwist --root \n\
|
|
||||||
- GL: discoball --root \n\
|
|
||||||
- GL: dymaxionmap --root \n\
|
|
||||||
- GL: energystream --root \n\
|
|
||||||
- GL: hexstrut --root \n\
|
|
||||||
- GL: hydrostat --root \n\
|
|
||||||
- GL: raverhoop --root \n\
|
|
||||||
- GL: splodesic --root \n\
|
|
||||||
- GL: unicrud --root \n\
|
|
||||||
- GL: esper --root \n\
|
|
||||||
- GL: vigilance --root \n\
|
|
||||||
- GL: crumbler --root \n\
|
|
||||||
filmleader --root \n\
|
|
||||||
glitchpeg --root \n\
|
|
||||||
- GL: handsy --root \n\
|
|
||||||
- GL: maze3d --root \n\
|
|
||||||
- GL: peepers --root \n\
|
|
||||||
- GL: razzledazzle --root \n\
|
|
||||||
vfeedback --root \n\
|
|
||||||
- GL: deepstars --root \n\
|
|
||||||
- GL: gravitywell --root \n\
|
|
||||||
- GL: beats --root \n\
|
|
||||||
- GL: covid19 --root \n\
|
|
||||||
- GL: etruscanvenus --root \n\
|
|
||||||
- GL: gibson --root \n\
|
|
||||||
- GL: headroom --root \n\
|
|
||||||
- GL: sphereeversion --root \n\
|
|
||||||
binaryhorizon --root \n\
|
|
||||||
marbling --root \n\
|
|
||||||
- GL: chompytower --root \n\
|
|
||||||
- GL: hextrail --root \n\
|
|
||||||
- GL: mapscroller --root \n\
|
|
||||||
- GL: nakagin --root \n\
|
|
||||||
- GL: squirtorus --root \n\
|
|
||||||
|
|
||||||
|
|
||||||
pointerHysteresis: 10
|
|
||||||
authWarningSlack: 20
|
|
||||||
|
|
@ -1,70 +0,0 @@
|
|||||||
|
|
||||||
Delphinium GNU/Linux 1.1 "daedalus" *
|
|
||||||
|
|
||||||
Welcome to the reliable world of Delphinium GNU/Linux
|
|
||||||
|
|
||||||
Delphinium offers an extensive collection of original and modified
|
|
||||||
Debian as well as Devuan-specific packages. It is a complete
|
|
||||||
Operating System (OS) for your computer. And it is free as in 'freedom'.
|
|
||||||
|
|
||||||
CONTENTS:
|
|
||||||
* Introduction
|
|
||||||
* Installation
|
|
||||||
* Getting Additional Software
|
|
||||||
* Report a Bug
|
|
||||||
|
|
||||||
Introduction
|
|
||||||
============
|
|
||||||
|
|
||||||
An Operating System (OS) is a set of programs that provide an interface
|
|
||||||
to the computer's hardware. Resource, device, power, and memory management
|
|
||||||
belong to the OS. The core of the OS in charge of operating the circuitry
|
|
||||||
and managing peripherals is called the kernel. The default flavor of
|
|
||||||
Delphinium comes with Linux. Most of the basic operating system tools come
|
|
||||||
from the GNU project; hence the name GNU/Linux.
|
|
||||||
|
|
||||||
Installation
|
|
||||||
============
|
|
||||||
|
|
||||||
You can install Delphinium GNU/Linux either as a dual (or multiple) boot
|
|
||||||
alongside your current OS or as the only OS on your computer.
|
|
||||||
|
|
||||||
You can start the installation program easily by double clicking the icon
|
|
||||||
on the Desktop named "Install Delphinium".
|
|
||||||
|
|
||||||
Proprietary firmware is automatically installed on systems if needed.
|
|
||||||
To avoid installation of non-free firmware, you must choose one of the
|
|
||||||
Expert install options and you must also select a mirror.
|
|
||||||
|
|
||||||
Getting Additional Software
|
|
||||||
===========================
|
|
||||||
|
|
||||||
After installing or upgrading, Delphinium's packaging system can use CDs,
|
|
||||||
DVDs, local collections or networked servers (FTP, HTTP) to automatically
|
|
||||||
install software from .deb packages. This is done preferably with the
|
|
||||||
'apt' or 'aptitude' programs.
|
|
||||||
|
|
||||||
You can install packages from the commandline using apt-get. For example,
|
|
||||||
if you want to install the packages 'openssh-client' and 'xlennart', you
|
|
||||||
can give the command:
|
|
||||||
|
|
||||||
apt-get install openssh-client xlennart
|
|
||||||
|
|
||||||
Note that you don't have to enter the complete path or the '.deb'
|
|
||||||
extension. Apt will figure this out itself.
|
|
||||||
|
|
||||||
Or use aptitude for a full screen interactive selection of available
|
|
||||||
Delphinium packages.
|
|
||||||
|
|
||||||
Software can also be installed using the Synaptic graphical interface.
|
|
||||||
|
|
||||||
If you have a local .deb package, GDebi can resolve its dependencies and
|
|
||||||
install everything for you.
|
|
||||||
|
|
||||||
Report a Bug
|
|
||||||
============
|
|
||||||
|
|
||||||
This is an official release of the Delphinium system. Please report any
|
|
||||||
bugs you find to our github repository at
|
|
||||||
https://git.devuan.org/frangamer1892/delphinium-sdk/issues.
|
|
||||||
|
|
@ -1,131 +0,0 @@
|
|||||||
DELPHINIUM DAEDALUS DESKTOP-LIVE
|
|
||||||
|
|
||||||
|
|
||||||
This is Delphinium 1.1 (Daedalus) desktop-live.
|
|
||||||
|
|
||||||
User name: delphinium Password: delphinium
|
|
||||||
Admin name: root Password: toor
|
|
||||||
|
|
||||||
Maintained by frangamer1892
|
|
||||||
Built with the Delphinium SDK, live-sdk module
|
|
||||||
|
|
||||||
|
|
||||||
CONTENTS
|
|
||||||
|
|
||||||
1. Set language/locale at boot.
|
|
||||||
2. Wireless (non-free) firmware
|
|
||||||
3. Install to hard drive
|
|
||||||
4. Remastering
|
|
||||||
5. Bug reports and support links.
|
|
||||||
|
|
||||||
|
|
||||||
BOOT TO ANOTHER LANGUAGE
|
|
||||||
|
|
||||||
Choose the "Other language" option from the boot menu.
|
|
||||||
Press TAB to edit the boot command (or "e" if using UEFI).
|
|
||||||
Replace the locale and keyboard layout with yours.
|
|
||||||
Note: When you install the system, your chosen language will be the
|
|
||||||
default in the installed system.
|
|
||||||
|
|
||||||
|
|
||||||
WIRELESS (NON-FREE) FIRMWARE
|
|
||||||
|
|
||||||
To set up wireless networking, use network-manager or wpasupplicant.
|
|
||||||
|
|
||||||
Wireless firmware is already installed. All of the firmware packages
|
|
||||||
come from the non-free-firmware repository, however the non-free and contrib
|
|
||||||
repositories are not enabled. If you want to install packages from
|
|
||||||
non-free or contrib, you need to edit /etc/apt/sources.list or add them
|
|
||||||
through Synaptic Package Manager.
|
|
||||||
|
|
||||||
You can remove all the non-free firmware after you reboot into the new
|
|
||||||
installation by running (as root or with sudo):
|
|
||||||
|
|
||||||
/root/remove_firmware.sh
|
|
||||||
|
|
||||||
If you need to reinstall a firmware package, they are located in /firmware
|
|
||||||
and can be installed with:
|
|
||||||
|
|
||||||
dpkg -i <package-name>
|
|
||||||
|
|
||||||
|
|
||||||
INSTALLER
|
|
||||||
|
|
||||||
This Delphinium live-iso comes with Refracta Installer, which will copy the
|
|
||||||
running system to hard drive and install the GRUB bootloader. Any changes
|
|
||||||
you make to the running system will be copied to the installation. This
|
|
||||||
includes desktop configuration, software added or removed, language/locale
|
|
||||||
settings and other changes in system configuration.
|
|
||||||
|
|
||||||
The installer will allow you to create a separate /home partition and/or
|
|
||||||
a separate /boot partition if needed.
|
|
||||||
|
|
||||||
There is no automatic partitioning. You can create the partitions before
|
|
||||||
you start the installer or from within the installer. Gparted, cfdisk and
|
|
||||||
gdisk are all installed and available. For a legacy bios install, the
|
|
||||||
minimum needed is a single partition for the system. For a uefi install,
|
|
||||||
you must also have an EFI partition. Refer to the installer help
|
|
||||||
document (press Help from within the installer).
|
|
||||||
|
|
||||||
IMPORTANT NOTE: grub-efi-amd64 is installed. If you boot from bios, the
|
|
||||||
installer will find the grub-pc package and ask if you want the
|
|
||||||
bootloader installed or if you would like to proceed without one.
|
|
||||||
|
|
||||||
If your hardware needs a 32-bit uefi bootloader with a 64-bit operating
|
|
||||||
system, install the grub-efi-ia32 package before running the installer.
|
|
||||||
This is true for both graphical and cli installers.
|
|
||||||
|
|
||||||
dpkg -i /grub-efi-ia32 (autocomplete)
|
|
||||||
|
|
||||||
|
|
||||||
Note: UEFI implementations in motherboards vary in their adherence to
|
|
||||||
standards from one manufacturer to the next. Read the Help in the
|
|
||||||
installer, read the additional links in the help, and be prepared to do
|
|
||||||
some manual fixing of your bootloader.
|
|
||||||
|
|
||||||
That said, you should not be surprised if it all works perfectly.
|
|
||||||
|
|
||||||
HP WARNING!!! If your computer was made by Hewlett-Packard and uses UEFI,
|
|
||||||
read these before installing!
|
|
||||||
|
|
||||||
https://dev1galaxy.org/viewtopic.php?id=15
|
|
||||||
http://www.rodsbooks.com/efi-bootloaders/index.html
|
|
||||||
|
|
||||||
|
|
||||||
You can also start the installer from a root terminal (or with sudo):
|
|
||||||
|
|
||||||
refractainstaller # Starts the text-only installer.
|
|
||||||
refractainstaller-yad # Starts the graphical installer.
|
|
||||||
|
|
||||||
|
|
||||||
You can encrypt the filesystem if desired. (root filesystem and /home).
|
|
||||||
The installer will use an existing swap partition. If there is no swap
|
|
||||||
partition or if you un-check that option, the installer will create a
|
|
||||||
swapfile in the root of the filesystem. The default size is 256MB, but
|
|
||||||
this can be changed by editing the config file. (/etc/refractainstaller.conf)
|
|
||||||
This installer will not let you encrypt a swap partition; use a swapfile
|
|
||||||
on an encrypted partition instead.
|
|
||||||
|
|
||||||
|
|
||||||
REMASTERING (Make your own live-CD/DVD/USB)
|
|
||||||
|
|
||||||
Run Refracta Snapshot from the applications menu or refractasnapshot-gui
|
|
||||||
in a root terminal for the graphical version.
|
|
||||||
Run refractasnapshot from a root terminal for the text-only version.
|
|
||||||
|
|
||||||
The program will copy your installed system and pack it into a bootable
|
|
||||||
iso that can be burned to optical disk or imaged to a usb stick.
|
|
||||||
See /usr/share/doc/refractasnapshot-base/README.gz for details.
|
|
||||||
|
|
||||||
|
|
||||||
BUG REPORTS AND SUPPORT LINKS
|
|
||||||
|
|
||||||
Comments, suggestions, criticisms, and bug reports
|
|
||||||
are welcome on our github:
|
|
||||||
|
|
||||||
https://git.devuan.org/frangamer1892/delphinium-sdk/issues
|
|
||||||
|
|
||||||
Devuan Support:
|
|
||||||
IRC Channel on libera.chat: #devuan
|
|
||||||
Support forum: dev1galaxy.org
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Encoding=UTF-8
|
|
||||||
Name=Install Delphinium
|
|
||||||
Comment= Install from a live CD to your system.
|
|
||||||
Exec=/usr/bin/refractainstaller-wrapper.sh
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Icon=/usr/share/pixmaps/deepsea-round-650x650.png
|
|
||||||
Categories=GNOME;GTK;System;
|
|
@ -1,33 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
##
|
|
||||||
## Remove all the non-free firmware packages
|
|
||||||
##
|
|
||||||
|
|
||||||
FIRMWARE_PKGS="\
|
|
||||||
|
|
||||||
atmel-firmware \
|
|
||||||
bluez-firmware \
|
|
||||||
dahdi-firmware-nonfree \
|
|
||||||
firmware-amd-graphics \
|
|
||||||
firmware-atheros \
|
|
||||||
firmware-bnx2 \
|
|
||||||
firmware-bnx2x \
|
|
||||||
firmware-brcm80211 \
|
|
||||||
firmware-cavium \
|
|
||||||
firmware-intel-sound \
|
|
||||||
firmware-iwlwifi \
|
|
||||||
firmware-libertas \
|
|
||||||
firmware-linux-free \
|
|
||||||
firmware-linux-nonfree \
|
|
||||||
firmware-misc-nonfree \
|
|
||||||
firmware-myricom \
|
|
||||||
firmware-netxen \
|
|
||||||
firmware-qlogic \
|
|
||||||
firmware-realtek \
|
|
||||||
firmware-ti-connectivity \
|
|
||||||
firmware-zd1211
|
|
||||||
"
|
|
||||||
|
|
||||||
echo "=== removing unwanted firmware packages..."
|
|
||||||
apt-get autoremove --purge ${FIRMWARE_PKGS}
|
|
Before Width: | Height: | Size: 8.2 KiB |
@ -1,10 +0,0 @@
|
|||||||
PRETTY_NAME="Delphinium GNU/Linux 1.1 (daedalus)"
|
|
||||||
NAME="Delphinium GNU/Linux"
|
|
||||||
VERSION_ID="1.1"
|
|
||||||
VERSION="1.1 (daedalus)"
|
|
||||||
VERSION_CODENAME="daedalus"
|
|
||||||
ID=delphinium
|
|
||||||
ID_LIKE=devuan,debian
|
|
||||||
HOME_URL="https://git.devuan.org/frangamer1892/delphinium-sdk"
|
|
||||||
SUPPORT_URL="https://git.devuan.org/frangamer1892/delphinium-sdk/issues"
|
|
||||||
BUG_REPORT_URL="https://git.devuan.org/frangamer1892/delphinium-sdk/issues"
|
|
Before Width: | Height: | Size: 1.7 MiB |
@ -1,16 +0,0 @@
|
|||||||
menu background /isolinux/splash.png
|
|
||||||
|
|
||||||
menu color title * #FFFFFFFF *
|
|
||||||
menu color border * #00000000 #00000000 none
|
|
||||||
menu color sel * #ffffff #1E4E6E *
|
|
||||||
menu color hotsel 1;7;37;40 #DCDDDE #1E4E6E *
|
|
||||||
menu color tabmsg * #DCDDDE #00000000 *
|
|
||||||
menu color cmdline 0 #DCDDDE #00000000
|
|
||||||
menu color help 37;40 #ffdddd00 #00000000 none
|
|
||||||
menu vshift 10
|
|
||||||
menu rows 12
|
|
||||||
#menu helpmsgrow 15
|
|
||||||
#menu cmdlinerow 25
|
|
||||||
menu timeoutrow 16
|
|
||||||
menu tabmsgrow 14
|
|
||||||
menu tabmsg Press ENTER to boot or TAB to edit a menu entry
|
|
@ -124,17 +124,16 @@ iso_write_isolinux_cfg() {
|
|||||||
cat <<EOF | sudo tee ${workdir}/binary/isolinux/isolinux.cfg >/dev/null
|
cat <<EOF | sudo tee ${workdir}/binary/isolinux/isolinux.cfg >/dev/null
|
||||||
ui vesamenu.c32
|
ui vesamenu.c32
|
||||||
prompt 0
|
prompt 0
|
||||||
menu title delphinium-live boot menu
|
menu title devuan-live boot menu
|
||||||
timeout 70
|
timeout 70
|
||||||
menu background /isolinux/splash.png
|
menu background /isolinux/splash.png
|
||||||
|
|
||||||
menu color title * #CFE1F2 *
|
menu color title * #FFFFFFFF *
|
||||||
menu color border * #00000000 #00000000 none
|
menu color border * #00000000 #00000000 none
|
||||||
menu color sel * #ffffff #005FBF none
|
menu color sel * #ffffff #1E4E6E *
|
||||||
menu color hotsel 1;7;37;40 #CFE1F2 #005FBF *
|
menu color hotsel 1;7;37;40 #DCDDDE #1E4E6E *
|
||||||
menu color unsel * #CFE1F2 #00000000 *
|
menu color tabmsg * #DCDDDE #00000000 *
|
||||||
menu color tabmsg * #CFE1F2 #00000000 *
|
menu color cmdline 0 #DCDDDE #00000000
|
||||||
menu color cmdline 0 #CFE1F2 #00000000
|
|
||||||
menu color help 37;40 #ffdddd00 #00000000 none
|
menu color help 37;40 #ffdddd00 #00000000 none
|
||||||
menu vshift 9
|
menu vshift 9
|
||||||
menu rows 12
|
menu rows 12
|
||||||
@ -184,7 +183,6 @@ EOF
|
|||||||
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
||||||
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
||||||
iso_make_efi() {
|
iso_make_efi() {
|
||||||
set -x
|
|
||||||
fn iso_make_efi
|
fn iso_make_efi
|
||||||
req=(workdir efi_work strapdir)
|
req=(workdir efi_work strapdir)
|
||||||
ckreq || return 1
|
ckreq || return 1
|
||||||
@ -294,7 +292,6 @@ EOF
|
|||||||
sudo rsync -avx "$efi_work"/boot binary/
|
sudo rsync -avx "$efi_work"/boot binary/
|
||||||
sudo rsync -avx "$efi_work"/efi binary/
|
sudo rsync -avx "$efi_work"/efi binary/
|
||||||
popd
|
popd
|
||||||
set -x
|
|
||||||
}
|
}
|
||||||
|
|
||||||
iso_write_grub_cfg() {
|
iso_write_grub_cfg() {
|
||||||
@ -383,8 +380,8 @@ rm -f /vmlinuz.old
|
|||||||
rm -f /initrd.img.old
|
rm -f /initrd.img.old
|
||||||
|
|
||||||
# Disable contrib and non-free after installing firmware.
|
# Disable contrib and non-free after installing firmware.
|
||||||
#sed -i 's/contrib//g' /etc/apt/sources.list
|
sed -i 's/contrib//g' /etc/apt/sources.list
|
||||||
#sed -i 's/non-free-firmware//g' /etc/apt/sources.list
|
sed -i 's/non-free//g' /etc/apt/sources.list
|
||||||
|
|
||||||
# for amd64 only at this time
|
# for amd64 only at this time
|
||||||
if ls /boot | grep amd64 ; then
|
if ls /boot | grep amd64 ; then
|
||||||
@ -392,16 +389,10 @@ if ls /boot | grep amd64 ; then
|
|||||||
apt-get download grub-efi-ia32
|
apt-get download grub-efi-ia32
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# download firmware packages
|
|
||||||
mkdir /firmware
|
|
||||||
cd /firmware
|
|
||||||
apt download atmel-firmware bluez-firmware dahdi-firmware-nonfree firmware-amd-graphics firmware-atheros firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-cavium firmware-intel-sound firmware-iwlwifi firmware-libertas firmware-linux-free firmware-linux-nonfree firmware-misc-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-realtek firmware-ti-connectivity firmware-zd1211
|
|
||||||
cd -
|
|
||||||
|
|
||||||
##### this should be temporary
|
##### this should be temporary
|
||||||
#if dpkg -l lightdm ; then
|
#if dpkg -l lightdm ; then
|
||||||
# apt-get -y --purge remove lightdm lightdm-gtk-greeter liblightdm-gobject-1-0
|
# apt-get -y --purge remove lightdm lightdm-gtk-greeter liblightdm-gobject-1-0
|
||||||
# echo "Removed lightdm" > /home/delphinium/which_dm
|
# echo "Removed lightdm" > /home/devuan/which_dm
|
||||||
#fi
|
#fi
|
||||||
#if dpkg -l grub-efi-amd64-signed ; then
|
#if dpkg -l grub-efi-amd64-signed ; then
|
||||||
# apt-get -y remove grub-efi-amd64-signed
|
# apt-get -y remove grub-efi-amd64-signed
|
||||||
@ -413,17 +404,11 @@ chown 1000:1000 /home/${username}/package_list
|
|||||||
|
|
||||||
# Enable encryption (e.g. for live-usb with persistence)
|
# Enable encryption (e.g. for live-usb with persistence)
|
||||||
#sed -i 's/#CRYPTSETUP=/CRYPTSETUP=y/' /etc/cryptsetup-initramfs/conf-hook
|
#sed -i 's/#CRYPTSETUP=/CRYPTSETUP=y/' /etc/cryptsetup-initramfs/conf-hook
|
||||||
# This does nothing different - make sure cryptsetup-initramfs is installed.
|
CRYPTSETUP=y update-initramfs -u -k all
|
||||||
#CRYPTSETUP=y update-initramfs -u -k all
|
|
||||||
|
|
||||||
# Replace build-host's name with localhost in /etc/mailname
|
|
||||||
echo localhost > /etc/mailname
|
|
||||||
|
|
||||||
# Change sources.list to use deb.devuan.org
|
# Change sources.list to use deb.devuan.org
|
||||||
sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
|
sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
|
||||||
|
|
||||||
## Disable proposed-updates
|
|
||||||
sed -i '/-proposed-updates/s/^/#/g' /etc/apt/sources.list
|
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get clean
|
apt-get clean
|
||||||
updatedb
|
updatedb
|
||||||
|
@ -1,425 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
# Copyright (c) 2017 Dyne.org Foundation
|
|
||||||
# live-sdk is written and maintained by Ivan J. <parazyd@dyne.org>
|
|
||||||
#
|
|
||||||
# This file is part of live-sdk
|
|
||||||
# devuan-desktop-live.blend is maintained by fsmithred
|
|
||||||
#
|
|
||||||
# This source code is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This software is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this source code. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
BLENDPATH="${BLENDPATH:-$(dirname $0)}"
|
|
||||||
|
|
||||||
source "$BLENDPATH/config"
|
|
||||||
|
|
||||||
blend_release_path="$BLENDPATH/$release/"
|
|
||||||
blend_scripts="${blend_release_path}/scripts"
|
|
||||||
|
|
||||||
blend_preinst() {
|
|
||||||
fn blend_preinst
|
|
||||||
req=(blend_name username userpass)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name preinst"
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee "$strapdir/add-user" >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
useradd -s /bin/bash -m "${username}" || exit 1
|
|
||||||
echo "${username}:${userpass}" | chpasswd || exit 1
|
|
||||||
EOF
|
|
||||||
chroot-script -d add-user || { zerr; return 1; }
|
|
||||||
|
|
||||||
# notice "copying blend-specific debs into $R/extra/custom-packages"
|
|
||||||
#
|
|
||||||
# sudo mkdir -p "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
# sudo cp -fv "$blend_release_path"/custom_debs/*.deb "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
# cat << EOF | sudo tee "$strapdir/install-custpackages" >/dev/null
|
|
||||||
##!/bin/sh
|
|
||||||
#cd extra_packages
|
|
||||||
#dpkg -i *_all.deb *_${arch}.deb
|
|
||||||
#apt-get -f install
|
|
||||||
#cd - >/dev/null
|
|
||||||
#rm -rf extra_packages
|
|
||||||
#EOF
|
|
||||||
# chroot-script -d install-custpackages || { zerr; return 1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
blend_postinst() {
|
|
||||||
fn blend_postinst
|
|
||||||
req=(strapdir blend_name)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name postinst"
|
|
||||||
|
|
||||||
[[ -n "$MKEFI" ]] && {
|
|
||||||
iso_make_efi
|
|
||||||
iso_write_grub_cfg
|
|
||||||
}
|
|
||||||
|
|
||||||
pushd "$strapdir"
|
|
||||||
sudo rsync -avx --no-o --no-g "$blend_release_path"/rootfs-overlay/* . || { zerr; return 1; }
|
|
||||||
|
|
||||||
# add some basic files to /dev
|
|
||||||
sudo mknod -m 622 dev/console c 5 1
|
|
||||||
sudo mknod -m 666 dev/null c 1 3
|
|
||||||
sudo mknod -m 666 dev/zero c 1 5
|
|
||||||
sudo mknod -m 666 dev/ptmx c 5 2
|
|
||||||
sudo mknod -m 666 dev/tty c 5 0
|
|
||||||
sudo mknod -m 444 dev/random c 1 8
|
|
||||||
sudo mknod -m 444 dev/urandom c 1 9
|
|
||||||
sudo chown -v root:tty dev/{console,ptmx,tty}
|
|
||||||
|
|
||||||
sudo ln -sv /proc/self/fd dev/fd
|
|
||||||
sudo ln -sv /proc/self/fd/0 dev/stdin
|
|
||||||
sudo ln -sv /proc/self/fd/1 dev/stdout
|
|
||||||
sudo ln -sv /proc/self/fd/2 dev/stderr
|
|
||||||
sudo ln -sv /proc/kcore dev/core
|
|
||||||
sudo mkdir -v dev/shm
|
|
||||||
sudo mkdir -v dev/pts
|
|
||||||
sudo chmod 1777 dev/shm
|
|
||||||
popd
|
|
||||||
|
|
||||||
blend_finalize || zerr
|
|
||||||
}
|
|
||||||
|
|
||||||
# Set lvm not to use udev in initramfs to avoid boot delays.
|
|
||||||
# (e.g. "device not in udev database even after waiting...")
|
|
||||||
edit_initramfs () {
|
|
||||||
fn edit_initramfs
|
|
||||||
req=(workdir)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
echo "Editing lvm.conf in the initramfs."
|
|
||||||
|
|
||||||
|
|
||||||
[[ -d "$workdir"/extracted ]] || mkdir "$workdir"/extracted
|
|
||||||
pushd "$workdir"/extracted
|
|
||||||
sudo bash -c 'zcat ${workdir}/binary/live/initrd.img | cpio -i'
|
|
||||||
sudo sed -i 's/multipath_component_detection = 1/multipath_component_detection = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/md_component_detection = 1/md_component_detection = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udev_sync = 1/udev_sync = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udev_rules = 1/udev_rules = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udevadm/sleep 5 \&\& udevadm/' scripts/init-bottom/udev
|
|
||||||
sudo find . -print0 | cpio -0 -H newc -o | gzip -c > "$workdir"/binary/live/initrd.img | tee -a ${workdir}/mylog
|
|
||||||
popd
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_write_isolinux_cfg() {
|
|
||||||
fn iso_write_isolinux_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "writing isolinux configuration"
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee ${workdir}/binary/isolinux/isolinux.cfg >/dev/null
|
|
||||||
ui vesamenu.c32
|
|
||||||
prompt 0
|
|
||||||
menu title devuan-live boot menu
|
|
||||||
timeout 70
|
|
||||||
menu background /isolinux/splash.png
|
|
||||||
|
|
||||||
menu color title * #FFFFFFFF *
|
|
||||||
menu color border * #00000000 #00000000 none
|
|
||||||
menu color sel * #ffffff #1E4E6E *
|
|
||||||
menu color hotsel 1;7;37;40 #DCDDDE #1E4E6E *
|
|
||||||
menu color tabmsg * #DCDDDE #00000000 *
|
|
||||||
menu color cmdline 0 #DCDDDE #00000000
|
|
||||||
menu color help 37;40 #ffdddd00 #00000000 none
|
|
||||||
menu vshift 9
|
|
||||||
menu rows 12
|
|
||||||
#menu helpmsgrow 15
|
|
||||||
#menu cmdlinerow 25
|
|
||||||
menu timeoutrow 16
|
|
||||||
menu tabmsgrow 14
|
|
||||||
menu tabmsg Press ENTER to boot or TAB to edit a menu entry
|
|
||||||
|
|
||||||
|
|
||||||
label live
|
|
||||||
menu label ${os}-live (${arch})
|
|
||||||
menu default
|
|
||||||
linux /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live username=${username} apparmor=0
|
|
||||||
|
|
||||||
label lang
|
|
||||||
menu label Other language (TAB to edit)
|
|
||||||
linux /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live username=${username} apparmor=0 locales=it_IT.UTF-8 keyboard-layouts=it
|
|
||||||
|
|
||||||
label toram
|
|
||||||
menu label ${os}-live (${arch}) (load to RAM)
|
|
||||||
linux /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live username=${username} toram apparmor=0
|
|
||||||
|
|
||||||
label failsafe
|
|
||||||
menu label ${os}-live (${arch}) (failsafe)
|
|
||||||
kernel /live/vmlinuz noapic noapm nodma nomce nolapic nosmp nomodeset vga=normal username=${username} apparmor=0
|
|
||||||
append initrd=/live/initrd.img boot=live
|
|
||||||
|
|
||||||
label memtest
|
|
||||||
menu label Memory test
|
|
||||||
kernel /live/memtest
|
|
||||||
|
|
||||||
endtext
|
|
||||||
EOF
|
|
||||||
|
|
||||||
notice "copying isolinux overlay"
|
|
||||||
sudo mkdir -p "$workdir"/binary/{live,isolinux}
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux-overlay/* "$workdir"/binary/isolinux/
|
|
||||||
# sudo cp -av "$blend_release_path"/live-overlay/* "$workdir"/binary/live/
|
|
||||||
# sudo cp -av "$blend_release_path"/docs "$workdir"/binary/
|
|
||||||
#edit_initramfs
|
|
||||||
# [[ -n "$hookscripts" ]] && {
|
|
||||||
# sudo cp -av "$blend_release_path"/hooks "$workdir"/binary/live/
|
|
||||||
# }
|
|
||||||
}
|
|
||||||
|
|
||||||
# create /boot and /efi for uefi.
|
|
||||||
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
|
||||||
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
|
||||||
iso_make_efi() {
|
|
||||||
fn iso_make_efi
|
|
||||||
req=(workdir efi_work strapdir)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "creating efi boot files"
|
|
||||||
|
|
||||||
tempdir="$(mktemp -d /tmp/work_temp.XXXX)"
|
|
||||||
# for initial grub.cfg
|
|
||||||
mkdir -p "$tempdir"/boot/grub
|
|
||||||
|
|
||||||
if [ "$arch" = amd64 ] ; then
|
|
||||||
grubarch="x86_64-efi"
|
|
||||||
elif [ "$arch" = i386 ] ; then
|
|
||||||
grubarch="i386-efi"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cat >"$tempdir"/boot/grub/grub.cfg <<EOF
|
|
||||||
search --file --set=root /isolinux/isolinux.cfg
|
|
||||||
set prefix=(\$root)/boot/grub
|
|
||||||
source \$prefix/${grubarch}/grub.cfg
|
|
||||||
EOF
|
|
||||||
|
|
||||||
mkdir -p "$efi_work"
|
|
||||||
pushd "$efi_work"
|
|
||||||
|
|
||||||
# start with empty directories.
|
|
||||||
rm -rf boot; mkdir -p boot/grub/${grubarch}
|
|
||||||
rm -rf efi ; mkdir -p efi/boot
|
|
||||||
|
|
||||||
# second grub.cfg file
|
|
||||||
for i in $(find $strapdir/usr/lib/grub/${grubarch} -name 'part_*.mod'); do
|
|
||||||
print "insmod $(basename $i)" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
# Additional modules so we don't boot in blind mode.
|
|
||||||
# I don't know which ones are really needed.
|
|
||||||
efimods=(
|
|
||||||
efi_gop
|
|
||||||
efi_uga
|
|
||||||
ieee1275_fb
|
|
||||||
vbe
|
|
||||||
vga
|
|
||||||
video_bochs
|
|
||||||
video_cirrus
|
|
||||||
jpeg
|
|
||||||
png
|
|
||||||
gfxterm
|
|
||||||
)
|
|
||||||
for i in $efimods; do
|
|
||||||
print "insmod $i" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
print "source /boot/grub/grub.cfg" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
|
|
||||||
pushd "$tempdir"
|
|
||||||
# make a tarred "memdisk" to embed in the grub image
|
|
||||||
tar -cvf memdisk boot
|
|
||||||
|
|
||||||
# make the grub images
|
|
||||||
grub-mkimage -O "x86_64-efi" -m "memdisk" -o "bootx64.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
grub-mkimage -O "i386-efi" -m "memdisk" -o "bootia32.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
popd
|
|
||||||
|
|
||||||
# copy the grub image to efi/boot (to go later in the device's root)
|
|
||||||
cp "$tempdir"/bootx64.efi efi/boot
|
|
||||||
cp "$tempdir"/bootia32.efi efi/boot
|
|
||||||
|
|
||||||
# Do the boot image "boot/grub/efiboot.img"
|
|
||||||
dd if=/dev/zero of=boot/grub/efiboot.img bs=1K count=1440
|
|
||||||
mkfs.vfat -F 12 boot/grub/efiboot.img
|
|
||||||
|
|
||||||
sudo mkdir img-mnt
|
|
||||||
sudo mount -o loop boot/grub/efiboot.img img-mnt
|
|
||||||
sudo mkdir -p img-mnt/efi/boot
|
|
||||||
sudo cp "$tempdir"/bootx64.efi img-mnt/efi/boot/
|
|
||||||
sudo cp "$tempdir"/bootia32.efi img-mnt/efi/boot/
|
|
||||||
|
|
||||||
# copy modules and font
|
|
||||||
cp -r "$strapdir/usr/lib/grub/${grubarch}"/* "boot/grub/${grubarch}/"
|
|
||||||
|
|
||||||
# if this doesn't work try another font from the same place (grub's default, unicode.pf2, is much larger)
|
|
||||||
# Either of these will work, and they look the same to me. Unicode seems to work with qemu. -fsr
|
|
||||||
# cp /usr/share/grub/ascii.pf2 boot/grub/font.pf2
|
|
||||||
cp $strapdir/usr/share/grub/unicode.pf2 boot/grub/font.pf2
|
|
||||||
|
|
||||||
# copy splash
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux-overlay/splash.png boot/grub/splash.png
|
|
||||||
|
|
||||||
# Cleanup efi temps
|
|
||||||
sudo umount img-mnt
|
|
||||||
sudo rmdir img-mnt
|
|
||||||
rm -rf "$tempdir"
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
|
|
||||||
# Copy efi files to iso
|
|
||||||
pushd $workdir
|
|
||||||
sudo rsync -avx "$efi_work"/boot binary/
|
|
||||||
sudo rsync -avx "$efi_work"/efi binary/
|
|
||||||
popd
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_write_grub_cfg() {
|
|
||||||
fn iso_write_grub_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "writing grub configuration"
|
|
||||||
|
|
||||||
# Do the main grub.cfg (which gets loaded last):
|
|
||||||
cat <<EOF | sudo tee ${workdir}/binary/boot/grub/grub.cfg
|
|
||||||
if loadfont $prefix/font.pf2 ; then
|
|
||||||
set gfxmode=640x480
|
|
||||||
insmod efi_gop
|
|
||||||
insmod efi_uga
|
|
||||||
insmod video_bochs
|
|
||||||
insmod video_cirrus
|
|
||||||
insmod gfxterm
|
|
||||||
insmod jpeg
|
|
||||||
insmod png
|
|
||||||
terminal_output gfxterm
|
|
||||||
fi
|
|
||||||
|
|
||||||
background_image /boot/grub/splash.png
|
|
||||||
set menu_color_normal=white/black
|
|
||||||
set menu_color_highlight=dark-gray/white
|
|
||||||
set timeout=6
|
|
||||||
|
|
||||||
menuentry "${os}-live (${arch})" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username apparmor=0
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Other language" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username apparmor=0 locales=it_IT.UTF-8 keyboard-layouts=it
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "${os}-live (load to RAM)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username toram apparmor=0
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "${os}-live (failsafe)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username noapic noapm nodma nomce nolapic nosmp vga=normal apparmor=0
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Memory test" {
|
|
||||||
linux16 /live/memtest86+.bin
|
|
||||||
}
|
|
||||||
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
blend_finalize() {
|
|
||||||
fn blend_finalize
|
|
||||||
req=(strapdir username default_shell)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee ${strapdir}/finalize >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## permissions
|
|
||||||
for i in cdrom floppy audio dip video plugdev netdev lpadmin scanner; do
|
|
||||||
gpasswd -a ${username} \$i
|
|
||||||
done
|
|
||||||
|
|
||||||
chsh -s "${default_shell}" ${username}
|
|
||||||
chown -R 1000:1000 /home/${username}
|
|
||||||
#cp /home/${username}/Desktop/refractainstaller.desktop /usr/share/applications/
|
|
||||||
chmod +x /home/${username}/Desktop/refractainstaller.desktop
|
|
||||||
|
|
||||||
# This can go away when desktop-base is fixed to do the grub theme. (SEEMS TO BE FIXED-no it's not.)
|
|
||||||
grep -q GRUB_THEME /etc/default/grub || {
|
|
||||||
printf "\nGRUB_THEME=/usr/share/desktop-base/grub-themes/desktop-grub-theme/theme.txt\n" >> /etc/default/grub
|
|
||||||
}
|
|
||||||
|
|
||||||
# This needs to stay
|
|
||||||
cp /splash.png /usr/lib/refractasnapshot/iso/isolinux/
|
|
||||||
rm -f /splash.png
|
|
||||||
|
|
||||||
rm -f /etc/fstab
|
|
||||||
rm -f /etc/popularity-contest.conf
|
|
||||||
rm -f /vmlinuz.old
|
|
||||||
rm -f /initrd.img.old
|
|
||||||
|
|
||||||
# Disable contrib and non-free after installing firmware.
|
|
||||||
sed -i 's/contrib//g' /etc/apt/sources.list
|
|
||||||
sed -i 's/non-free//g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
# for amd64 only at this time
|
|
||||||
if ls /boot | grep amd64 ; then
|
|
||||||
apt-get download grub-pc
|
|
||||||
apt-get download grub-efi-ia32
|
|
||||||
fi
|
|
||||||
|
|
||||||
##### this should be temporary
|
|
||||||
#if dpkg -l lightdm ; then
|
|
||||||
# apt-get -y --purge remove lightdm lightdm-gtk-greeter liblightdm-gobject-1-0
|
|
||||||
# echo "Removed lightdm" > /home/devuan/which_dm
|
|
||||||
#fi
|
|
||||||
#if dpkg -l grub-efi-amd64-signed ; then
|
|
||||||
# apt-get -y remove grub-efi-amd64-signed
|
|
||||||
#fi
|
|
||||||
|
|
||||||
## package list
|
|
||||||
dpkg -l | awk '/^ii/ { print \$2 " " \$3 }' > /home/${username}/package_list
|
|
||||||
chown 1000:1000 /home/${username}/package_list
|
|
||||||
|
|
||||||
# Enable encryption (e.g. for live-usb with persistence)
|
|
||||||
#sed -i 's/#CRYPTSETUP=/CRYPTSETUP=y/' /etc/cryptsetup-initramfs/conf-hook
|
|
||||||
CRYPTSETUP=y update-initramfs -u -k all
|
|
||||||
|
|
||||||
# Change sources.list to use deb.devuan.org
|
|
||||||
sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
apt-get update
|
|
||||||
apt-get clean
|
|
||||||
updatedb
|
|
||||||
EOF
|
|
||||||
chroot-script -d finalize || zerr
|
|
||||||
}
|
|
@ -1,440 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
# Copyright (c) 2017 Dyne.org Foundation
|
|
||||||
# live-sdk is written and maintained by Ivan J. <parazyd@dyne.org>
|
|
||||||
#
|
|
||||||
# This file is part of live-sdk
|
|
||||||
# devuan-desktop-live.blend is maintained by fsmithred
|
|
||||||
#
|
|
||||||
# This source code is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This software is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this source code. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
BLENDPATH="${BLENDPATH:-$(dirname $0)}"
|
|
||||||
|
|
||||||
source "$BLENDPATH/config"
|
|
||||||
|
|
||||||
blend_release_path="$BLENDPATH/$release/"
|
|
||||||
blend_scripts="${blend_release_path}/scripts"
|
|
||||||
|
|
||||||
blend_preinst() {
|
|
||||||
fn blend_preinst
|
|
||||||
req=(blend_name username userpass)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name preinst"
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee "$strapdir/add-user" >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
useradd -s /bin/bash -m "${username}" || exit 1
|
|
||||||
echo "${username}:${userpass}" | chpasswd || exit 1
|
|
||||||
EOF
|
|
||||||
chroot-script -d add-user || { zerr; return 1; }
|
|
||||||
|
|
||||||
# notice "copying blend-specific debs into $R/extra/custom-packages"
|
|
||||||
#
|
|
||||||
# sudo mkdir -p "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
# sudo cp -fv "$blend_release_path"/custom_debs/*.deb "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
# cat << EOF | sudo tee "$strapdir/install-custpackages" >/dev/null
|
|
||||||
##!/bin/sh
|
|
||||||
#cd extra_packages
|
|
||||||
#dpkg -i *_all.deb *_${arch}.deb
|
|
||||||
#apt-get -f install
|
|
||||||
#cd - >/dev/null
|
|
||||||
#rm -rf extra_packages
|
|
||||||
#EOF
|
|
||||||
# chroot-script -d install-custpackages || { zerr; return 1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
blend_postinst() {
|
|
||||||
fn blend_postinst
|
|
||||||
req=(strapdir blend_name)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name postinst"
|
|
||||||
|
|
||||||
[[ -n "$MKEFI" ]] && {
|
|
||||||
iso_make_efi
|
|
||||||
iso_write_grub_cfg
|
|
||||||
}
|
|
||||||
|
|
||||||
pushd "$strapdir"
|
|
||||||
sudo rsync -avx --no-o --no-g "$blend_release_path"/rootfs-overlay/* . || { zerr; return 1; }
|
|
||||||
|
|
||||||
# add some basic files to /dev
|
|
||||||
sudo mknod -m 622 dev/console c 5 1
|
|
||||||
sudo mknod -m 666 dev/null c 1 3
|
|
||||||
sudo mknod -m 666 dev/zero c 1 5
|
|
||||||
sudo mknod -m 666 dev/ptmx c 5 2
|
|
||||||
sudo mknod -m 666 dev/tty c 5 0
|
|
||||||
sudo mknod -m 444 dev/random c 1 8
|
|
||||||
sudo mknod -m 444 dev/urandom c 1 9
|
|
||||||
sudo chown -v root:tty dev/{console,ptmx,tty}
|
|
||||||
|
|
||||||
sudo ln -sv /proc/self/fd dev/fd
|
|
||||||
sudo ln -sv /proc/self/fd/0 dev/stdin
|
|
||||||
sudo ln -sv /proc/self/fd/1 dev/stdout
|
|
||||||
sudo ln -sv /proc/self/fd/2 dev/stderr
|
|
||||||
sudo ln -sv /proc/kcore dev/core
|
|
||||||
sudo mkdir -v dev/shm
|
|
||||||
sudo mkdir -v dev/pts
|
|
||||||
sudo chmod 1777 dev/shm
|
|
||||||
popd
|
|
||||||
|
|
||||||
blend_finalize || zerr
|
|
||||||
}
|
|
||||||
|
|
||||||
# Set lvm not to use udev in initramfs to avoid boot delays.
|
|
||||||
# (e.g. "device not in udev database even after waiting...")
|
|
||||||
edit_initramfs () {
|
|
||||||
fn edit_initramfs
|
|
||||||
req=(workdir)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
echo "Editing lvm.conf in the initramfs."
|
|
||||||
|
|
||||||
|
|
||||||
[[ -d "$workdir"/extracted ]] || mkdir "$workdir"/extracted
|
|
||||||
pushd "$workdir"/extracted
|
|
||||||
sudo bash -c 'zcat ${workdir}/binary/live/initrd.img | cpio -i'
|
|
||||||
sudo sed -i 's/multipath_component_detection = 1/multipath_component_detection = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/md_component_detection = 1/md_component_detection = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udev_sync = 1/udev_sync = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udev_rules = 1/udev_rules = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udevadm/sleep 5 \&\& udevadm/' scripts/init-bottom/udev
|
|
||||||
sudo find . -print0 | cpio -0 -H newc -o | gzip -c > "$workdir"/binary/live/initrd.img | tee -a ${workdir}/mylog
|
|
||||||
popd
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_write_isolinux_cfg() {
|
|
||||||
fn iso_write_isolinux_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "writing isolinux configuration"
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee ${workdir}/binary/isolinux/isolinux.cfg >/dev/null
|
|
||||||
ui vesamenu.c32
|
|
||||||
prompt 0
|
|
||||||
menu title devuan-live boot menu
|
|
||||||
timeout 70
|
|
||||||
menu background /isolinux/splash.png
|
|
||||||
|
|
||||||
menu color title * #CFE1F2 *
|
|
||||||
menu color border * #00000000 #00000000 none
|
|
||||||
menu color sel * #ffffff #005FBF none
|
|
||||||
menu color hotsel 1;7;37;40 #CFE1F2 #005FBF *
|
|
||||||
menu color unsel * #CFE1F2 #00000000 *
|
|
||||||
menu color tabmsg * #CFE1F2 #00000000 *
|
|
||||||
menu color cmdline 0 #CFE1F2 #00000000
|
|
||||||
menu color help 37;40 #ffdddd00 #00000000 none
|
|
||||||
menu vshift 9
|
|
||||||
menu rows 12
|
|
||||||
#menu helpmsgrow 15
|
|
||||||
#menu cmdlinerow 25
|
|
||||||
menu timeoutrow 16
|
|
||||||
menu tabmsgrow 14
|
|
||||||
menu tabmsg Press ENTER to boot or TAB to edit a menu entry
|
|
||||||
|
|
||||||
|
|
||||||
label live
|
|
||||||
menu label ${os}-live (${arch})
|
|
||||||
menu default
|
|
||||||
linux /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live username=${username} apparmor=0
|
|
||||||
|
|
||||||
label lang
|
|
||||||
menu label Other language (TAB to edit)
|
|
||||||
linux /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live username=${username} apparmor=0 locales=it_IT.UTF-8 keyboard-layouts=it
|
|
||||||
|
|
||||||
label toram
|
|
||||||
menu label ${os}-live (${arch}) (load to RAM)
|
|
||||||
linux /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live username=${username} toram apparmor=0
|
|
||||||
|
|
||||||
label failsafe
|
|
||||||
menu label ${os}-live (${arch}) (failsafe)
|
|
||||||
kernel /live/vmlinuz noapic noapm nodma nomce nolapic nosmp nomodeset vga=normal username=${username} apparmor=0
|
|
||||||
append initrd=/live/initrd.img boot=live
|
|
||||||
|
|
||||||
label memtest
|
|
||||||
menu label Memory test
|
|
||||||
kernel /live/memtest
|
|
||||||
|
|
||||||
endtext
|
|
||||||
EOF
|
|
||||||
|
|
||||||
notice "copying isolinux overlay"
|
|
||||||
sudo mkdir -p "$workdir"/binary/{live,isolinux}
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux-overlay/* "$workdir"/binary/isolinux/
|
|
||||||
# sudo cp -av "$blend_release_path"/live-overlay/* "$workdir"/binary/live/
|
|
||||||
# sudo cp -av "$blend_release_path"/docs "$workdir"/binary/
|
|
||||||
#edit_initramfs
|
|
||||||
# [[ -n "$hookscripts" ]] && {
|
|
||||||
# sudo cp -av "$blend_release_path"/hooks "$workdir"/binary/live/
|
|
||||||
# }
|
|
||||||
}
|
|
||||||
|
|
||||||
# create /boot and /efi for uefi.
|
|
||||||
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
|
||||||
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
|
||||||
iso_make_efi() {
|
|
||||||
set -x
|
|
||||||
fn iso_make_efi
|
|
||||||
req=(workdir efi_work strapdir)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "creating efi boot files"
|
|
||||||
|
|
||||||
tempdir="$(mktemp -d /tmp/work_temp.XXXX)"
|
|
||||||
# for initial grub.cfg
|
|
||||||
mkdir -p "$tempdir"/boot/grub
|
|
||||||
|
|
||||||
if [ "$arch" = amd64 ] ; then
|
|
||||||
grubarch="x86_64-efi"
|
|
||||||
elif [ "$arch" = i386 ] ; then
|
|
||||||
grubarch="i386-efi"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cat >"$tempdir"/boot/grub/grub.cfg <<EOF
|
|
||||||
search --file --set=root /isolinux/isolinux.cfg
|
|
||||||
set prefix=(\$root)/boot/grub
|
|
||||||
source \$prefix/${grubarch}/grub.cfg
|
|
||||||
EOF
|
|
||||||
|
|
||||||
mkdir -p "$efi_work"
|
|
||||||
pushd "$efi_work"
|
|
||||||
|
|
||||||
# start with empty directories.
|
|
||||||
rm -rf boot; mkdir -p boot/grub/${grubarch}
|
|
||||||
rm -rf efi ; mkdir -p efi/boot
|
|
||||||
|
|
||||||
# second grub.cfg file
|
|
||||||
for i in $(find $strapdir/usr/lib/grub/${grubarch} -name 'part_*.mod'); do
|
|
||||||
print "insmod $(basename $i)" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
# Additional modules so we don't boot in blind mode.
|
|
||||||
# I don't know which ones are really needed.
|
|
||||||
efimods=(
|
|
||||||
efi_gop
|
|
||||||
efi_uga
|
|
||||||
ieee1275_fb
|
|
||||||
vbe
|
|
||||||
vga
|
|
||||||
video_bochs
|
|
||||||
video_cirrus
|
|
||||||
jpeg
|
|
||||||
png
|
|
||||||
gfxterm
|
|
||||||
)
|
|
||||||
for i in $efimods; do
|
|
||||||
print "insmod $i" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
print "source /boot/grub/grub.cfg" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
|
|
||||||
pushd "$tempdir"
|
|
||||||
# make a tarred "memdisk" to embed in the grub image
|
|
||||||
tar -cvf memdisk boot
|
|
||||||
|
|
||||||
# make the grub images
|
|
||||||
grub-mkimage -O "x86_64-efi" -m "memdisk" -o "bootx64.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
grub-mkimage -O "i386-efi" -m "memdisk" -o "bootia32.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
popd
|
|
||||||
|
|
||||||
# copy the grub image to efi/boot (to go later in the device's root)
|
|
||||||
cp "$tempdir"/bootx64.efi efi/boot
|
|
||||||
cp "$tempdir"/bootia32.efi efi/boot
|
|
||||||
|
|
||||||
# Do the boot image "boot/grub/efiboot.img"
|
|
||||||
dd if=/dev/zero of=boot/grub/efiboot.img bs=1K count=1440
|
|
||||||
mkfs.vfat -F 12 boot/grub/efiboot.img
|
|
||||||
|
|
||||||
sudo mkdir img-mnt
|
|
||||||
sudo mount -o loop boot/grub/efiboot.img img-mnt
|
|
||||||
sudo mkdir -p img-mnt/efi/boot
|
|
||||||
sudo cp "$tempdir"/bootx64.efi img-mnt/efi/boot/
|
|
||||||
sudo cp "$tempdir"/bootia32.efi img-mnt/efi/boot/
|
|
||||||
|
|
||||||
# copy modules and font
|
|
||||||
cp -r "$strapdir/usr/lib/grub/${grubarch}"/* "boot/grub/${grubarch}/"
|
|
||||||
|
|
||||||
# if this doesn't work try another font from the same place (grub's default, unicode.pf2, is much larger)
|
|
||||||
# Either of these will work, and they look the same to me. Unicode seems to work with qemu. -fsr
|
|
||||||
# cp /usr/share/grub/ascii.pf2 boot/grub/font.pf2
|
|
||||||
cp $strapdir/usr/share/grub/unicode.pf2 boot/grub/font.pf2
|
|
||||||
|
|
||||||
# copy splash
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux-overlay/splash.png boot/grub/splash.png
|
|
||||||
|
|
||||||
# Cleanup efi temps
|
|
||||||
sudo umount img-mnt
|
|
||||||
sudo rmdir img-mnt
|
|
||||||
rm -rf "$tempdir"
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
|
|
||||||
# Copy efi files to iso
|
|
||||||
pushd $workdir
|
|
||||||
sudo rsync -avx "$efi_work"/boot binary/
|
|
||||||
sudo rsync -avx "$efi_work"/efi binary/
|
|
||||||
popd
|
|
||||||
set -x
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_write_grub_cfg() {
|
|
||||||
fn iso_write_grub_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "writing grub configuration"
|
|
||||||
|
|
||||||
# Do the main grub.cfg (which gets loaded last):
|
|
||||||
cat <<EOF | sudo tee ${workdir}/binary/boot/grub/grub.cfg
|
|
||||||
if loadfont $prefix/font.pf2 ; then
|
|
||||||
set gfxmode=640x480
|
|
||||||
insmod efi_gop
|
|
||||||
insmod efi_uga
|
|
||||||
insmod video_bochs
|
|
||||||
insmod video_cirrus
|
|
||||||
insmod gfxterm
|
|
||||||
insmod jpeg
|
|
||||||
insmod png
|
|
||||||
terminal_output gfxterm
|
|
||||||
fi
|
|
||||||
|
|
||||||
background_image /boot/grub/splash.png
|
|
||||||
set menu_color_normal=white/black
|
|
||||||
set menu_color_highlight=dark-gray/white
|
|
||||||
set timeout=6
|
|
||||||
|
|
||||||
menuentry "${os}-live (${arch})" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username apparmor=0
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Other language" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username apparmor=0 locales=it_IT.UTF-8 keyboard-layouts=it
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "${os}-live (load to RAM)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username toram apparmor=0
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "${os}-live (failsafe)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live username=$username noapic noapm nodma nomce nolapic nosmp vga=normal apparmor=0
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Memory test" {
|
|
||||||
linux16 /live/memtest86+.bin
|
|
||||||
}
|
|
||||||
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
blend_finalize() {
|
|
||||||
fn blend_finalize
|
|
||||||
req=(strapdir username default_shell)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee ${strapdir}/finalize >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## permissions
|
|
||||||
for i in cdrom floppy audio dip video plugdev netdev lpadmin scanner; do
|
|
||||||
gpasswd -a ${username} \$i
|
|
||||||
done
|
|
||||||
|
|
||||||
chsh -s "${default_shell}" ${username}
|
|
||||||
chown -R 1000:1000 /home/${username}
|
|
||||||
#cp /home/${username}/Desktop/refractainstaller.desktop /usr/share/applications/
|
|
||||||
chmod +x /home/${username}/Desktop/refractainstaller.desktop
|
|
||||||
|
|
||||||
# This can go away when desktop-base is fixed to do the grub theme. (SEEMS TO BE FIXED-no it's not.)
|
|
||||||
grep -q GRUB_THEME /etc/default/grub || {
|
|
||||||
printf "\nGRUB_THEME=/usr/share/desktop-base/grub-themes/desktop-grub-theme/theme.txt\n" >> /etc/default/grub
|
|
||||||
}
|
|
||||||
|
|
||||||
# This needs to stay
|
|
||||||
cp /splash.png /usr/lib/refractasnapshot/iso/isolinux/
|
|
||||||
rm -f /splash.png
|
|
||||||
|
|
||||||
rm -f /etc/fstab
|
|
||||||
rm -f /etc/popularity-contest.conf
|
|
||||||
rm -f /vmlinuz.old
|
|
||||||
rm -f /initrd.img.old
|
|
||||||
|
|
||||||
# Disable contrib and non-free after installing firmware.
|
|
||||||
#sed -i 's/contrib//g' /etc/apt/sources.list
|
|
||||||
#sed -i 's/non-free-firmware//g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
# for amd64 only at this time
|
|
||||||
if ls /boot | grep amd64 ; then
|
|
||||||
apt-get download grub-pc
|
|
||||||
apt-get download grub-efi-ia32
|
|
||||||
fi
|
|
||||||
|
|
||||||
# download firmware packages
|
|
||||||
mkdir /firmware
|
|
||||||
cd /firmware
|
|
||||||
apt download atmel-firmware bluez-firmware dahdi-firmware-nonfree firmware-amd-graphics firmware-atheros firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-cavium firmware-intel-sound firmware-iwlwifi firmware-libertas firmware-linux-free firmware-linux-nonfree firmware-misc-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-realtek firmware-ti-connectivity firmware-zd1211
|
|
||||||
cd -
|
|
||||||
|
|
||||||
##### this should be temporary
|
|
||||||
#if dpkg -l lightdm ; then
|
|
||||||
# apt-get -y --purge remove lightdm lightdm-gtk-greeter liblightdm-gobject-1-0
|
|
||||||
# echo "Removed lightdm" > /home/devuan/which_dm
|
|
||||||
#fi
|
|
||||||
#if dpkg -l grub-efi-amd64-signed ; then
|
|
||||||
# apt-get -y remove grub-efi-amd64-signed
|
|
||||||
#fi
|
|
||||||
|
|
||||||
## package list
|
|
||||||
dpkg -l | awk '/^ii/ { print \$2 " " \$3 }' > /home/${username}/package_list
|
|
||||||
chown 1000:1000 /home/${username}/package_list
|
|
||||||
|
|
||||||
# Enable encryption (e.g. for live-usb with persistence)
|
|
||||||
#sed -i 's/#CRYPTSETUP=/CRYPTSETUP=y/' /etc/cryptsetup-initramfs/conf-hook
|
|
||||||
# This does nothing different - make sure cryptsetup-initramfs is installed.
|
|
||||||
#CRYPTSETUP=y update-initramfs -u -k all
|
|
||||||
|
|
||||||
# Replace build-host's name with localhost in /etc/mailname
|
|
||||||
echo localhost > /etc/mailname
|
|
||||||
|
|
||||||
# Change sources.list to use deb.devuan.org
|
|
||||||
sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
## Disable proposed-updates
|
|
||||||
sed -i '/-proposed-updates/s/^/#/g' /etc/apt/sources.list
|
|
||||||
apt-get update
|
|
||||||
apt-get clean
|
|
||||||
updatedb
|
|
||||||
EOF
|
|
||||||
chroot-script -d finalize || zerr
|
|
||||||
}
|
|
@ -1,419 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
# Copyright (c) 2017 Dyne.org Foundation
|
|
||||||
# live-sdk is written and maintained by Ivan J. <parazyd@dyne.org>
|
|
||||||
#
|
|
||||||
# This file is part of live-sdk
|
|
||||||
# devuan-minimal-live.blend is maintained by KatolaZ <katolaz@freaknet.org>
|
|
||||||
#
|
|
||||||
# This source code is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This software is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this source code. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
BLENDPATH="${BLENDPATH:-$(dirname $0)}"
|
|
||||||
|
|
||||||
source "$BLENDPATH/config"
|
|
||||||
|
|
||||||
blend_release_path="$BLENDPATH/$release/"
|
|
||||||
blend_scripts="${blend_release_path}/scripts"
|
|
||||||
|
|
||||||
###source $BLENDPATH/$release/devuan-minimal-live.release
|
|
||||||
|
|
||||||
blend_preinst() {
|
|
||||||
fn blend_preinst
|
|
||||||
req=(blend_name username userpass)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name preinst"
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee "$strapdir/add-user" >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
useradd -s /bin/bash -m "${username}" || exit 1
|
|
||||||
echo "${username}:${userpass}" | chpasswd || exit 1
|
|
||||||
EOF
|
|
||||||
chroot-script -d add-user || { zerr; return 1; }
|
|
||||||
|
|
||||||
notice "copying blend-specific debs into $R/extra/custom-packages"
|
|
||||||
|
|
||||||
sudo mkdir -p "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
sudo cp -fv "$blend_release_path"/custom_debs/*.deb "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
cat << EOF | sudo tee "$strapdir/install-custpackages" >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
cd extra_packages
|
|
||||||
dpkg -i *_all.deb *_${arch}.deb
|
|
||||||
apt-get -f install
|
|
||||||
cd - >/dev/null
|
|
||||||
rm -rf extra_packages
|
|
||||||
EOF
|
|
||||||
chroot-script -d install-custpackages || { zerr; return 1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
blend_postinst() {
|
|
||||||
fn blend_postinst
|
|
||||||
req=(strapdir blend_name)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name postinst"
|
|
||||||
|
|
||||||
[[ -n "$MKEFI" ]] && {
|
|
||||||
iso_make_efi
|
|
||||||
iso_write_grub_cfg
|
|
||||||
}
|
|
||||||
|
|
||||||
pushd "$strapdir"
|
|
||||||
sudo rsync -avx --no-o --no-g "$blend_release_path"/rootfs_overlay/* . || { zerr; return 1; }
|
|
||||||
sudo chmod 755 etc/init.d/boot_beep
|
|
||||||
popd
|
|
||||||
|
|
||||||
blend_finalize || { zerr; return 1 }
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_write_isolinux_cfg() {
|
|
||||||
fn iso_write_isolinux_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "copying isolinux overlay"
|
|
||||||
sudo mkdir -p "$workdir"/binary/{live,isolinux}
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux_overlay/* "$workdir"/binary/isolinux/
|
|
||||||
|
|
||||||
#[[ -n "$hookscripts" ]] && {
|
|
||||||
# sudo cp -av "$BLENDPATH"/hooks "$workdir"/binary/live/
|
|
||||||
#}
|
|
||||||
}
|
|
||||||
|
|
||||||
# create /boot and /efi for uefi.
|
|
||||||
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
|
||||||
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
|
||||||
iso_make_efi() {
|
|
||||||
fn iso_make_efi
|
|
||||||
req=(workdir efi_work strapdir)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "creating efi boot files"
|
|
||||||
|
|
||||||
tempdir="$(mktemp -d /tmp/work_temp.XXXX)"
|
|
||||||
# for initial grub.cfg
|
|
||||||
mkdir -p "$tempdir"/boot/grub
|
|
||||||
|
|
||||||
if [ "$arch" = amd64 ] ; then
|
|
||||||
grubarch="x86_64-efi"
|
|
||||||
elif [ "$arch" = i386 ] ; then
|
|
||||||
grubarch="i386-efi"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cat >"$tempdir"/boot/grub/grub.cfg <<EOF
|
|
||||||
search --file --set=root /isolinux/isolinux.cfg
|
|
||||||
set prefix=(\$root)/boot/grub
|
|
||||||
source \$prefix/${grubarch}/grub.cfg
|
|
||||||
EOF
|
|
||||||
|
|
||||||
mkdir -p "$efi_work"
|
|
||||||
pushd "$efi_work"
|
|
||||||
|
|
||||||
# start with empty directories.
|
|
||||||
rm -rf boot; mkdir -p boot/grub/${grubarch}
|
|
||||||
rm -rf efi ; mkdir -p efi/boot
|
|
||||||
|
|
||||||
# second grub.cfg file
|
|
||||||
for i in $(find $strapdir/usr/lib/grub/${grubarch} -name 'part_*.mod'); do
|
|
||||||
print "insmod $(basename $i)" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
# Additional modules so we don't boot in blind mode.
|
|
||||||
# I don't know which ones are really needed.
|
|
||||||
efimods=(
|
|
||||||
efi_gop
|
|
||||||
efi_uga
|
|
||||||
ieee1275_fb
|
|
||||||
vbe
|
|
||||||
vga
|
|
||||||
video_bochs
|
|
||||||
video_cirrus
|
|
||||||
jpeg
|
|
||||||
png
|
|
||||||
gfxterm
|
|
||||||
)
|
|
||||||
for i in $efimods; do
|
|
||||||
print "insmod $i" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
print "source /boot/grub/grub.cfg" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
|
|
||||||
pushd "$tempdir"
|
|
||||||
# make a tarred "memdisk" to embed in the grub image
|
|
||||||
tar -cvf memdisk boot
|
|
||||||
|
|
||||||
# make the grub image
|
|
||||||
grub-mkimage -O "x86_64-efi" -m "memdisk" -o "bootx64.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
|
|
||||||
grub-mkimage -O "i386-efi" -m "memdisk" -o "bootia32.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
popd
|
|
||||||
|
|
||||||
# copy the grub image to efi/boot (to go later in the device's root)
|
|
||||||
cp "$tempdir"/bootx64.efi efi/boot
|
|
||||||
cp "$tempdir"/bootia32.efi efi/boot
|
|
||||||
|
|
||||||
# Do the boot image "boot/grub/efiboot.img"
|
|
||||||
dd if=/dev/zero of=boot/grub/efiboot.img bs=1K count=1440
|
|
||||||
mkfs.vfat -F 12 boot/grub/efiboot.img
|
|
||||||
|
|
||||||
sudo mkdir img-mnt
|
|
||||||
sudo mount -o loop boot/grub/efiboot.img img-mnt
|
|
||||||
sudo mkdir -p img-mnt/efi/boot
|
|
||||||
sudo cp "$tempdir"/bootx64.efi img-mnt/efi/boot/
|
|
||||||
sudo cp "$tempdir"/bootia32.efi img-mnt/efi/boot/
|
|
||||||
|
|
||||||
# copy modules and font
|
|
||||||
cp -r "$strapdir/usr/lib/grub/${grubarch}"/* "boot/grub/${grubarch}/"
|
|
||||||
|
|
||||||
# if this doesn't work try another font from the same place (grub's default, unicode.pf2, is much larger)
|
|
||||||
# Either of these will work, and they look the same to me. Unicode seems to work with qemu. -fsr
|
|
||||||
# cp /usr/share/grub/ascii.pf2 boot/grub/font.pf2
|
|
||||||
cp $strapdir/usr/share/grub/unicode.pf2 boot/grub/font.pf2
|
|
||||||
|
|
||||||
# copy splash
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux_overlay/splash.png boot/grub/splash.png
|
|
||||||
|
|
||||||
# Cleanup efi temps
|
|
||||||
sudo umount img-mnt
|
|
||||||
sudo rmdir img-mnt
|
|
||||||
rm -rf "$tempdir"
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
|
|
||||||
# Copy efi files to iso
|
|
||||||
pushd $workdir
|
|
||||||
sudo rsync -avx "$efi_work"/boot binary/
|
|
||||||
sudo rsync -avx "$efi_work"/efi binary/
|
|
||||||
popd
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
## UNUSED
|
|
||||||
iso_write_grub_cfg() {
|
|
||||||
fn iso_write_grub_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "writing grub configuration"
|
|
||||||
|
|
||||||
# Do the main grub.cfg (which gets loaded last):
|
|
||||||
cat <<EOF | sudo tee ${workdir}/binary/boot/grub/grub.cfg
|
|
||||||
if loadfont $prefix/font.pf2 ; then
|
|
||||||
set gfxmode=640x480
|
|
||||||
insmod efi_gop
|
|
||||||
insmod efi_uga
|
|
||||||
insmod video_bochs
|
|
||||||
insmod video_cirrus
|
|
||||||
insmod gfxterm
|
|
||||||
insmod jpeg
|
|
||||||
insmod png
|
|
||||||
terminal_output gfxterm
|
|
||||||
fi
|
|
||||||
|
|
||||||
background_image /boot/grub/splash.png
|
|
||||||
set menu_color_normal=white/black
|
|
||||||
set menu_color_highlight=dark-gray/white
|
|
||||||
set timeout=6
|
|
||||||
play 480 440 1
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (std)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin vga=auto
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (access)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin 4 vga=normal
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (std-toram)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin vga=auto toram
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (access-toram)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin 4 vga=normal toram
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (no probe)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noapic noapm nodma nomce nolapic nosmp vga=auto
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Memory test" {
|
|
||||||
linux /live/memtest
|
|
||||||
}
|
|
||||||
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
## put the "create_initrd.sh" script
|
|
||||||
|
|
||||||
##func
|
|
||||||
put_create_initrd(){
|
|
||||||
|
|
||||||
sudo cp ${blend_scripts}/create_initrd.sh ${strapdir}/ >/dev/null
|
|
||||||
|
|
||||||
## Now we make it executable
|
|
||||||
sudo chmod 755 ${strapdir}/create_initrd.sh
|
|
||||||
}
|
|
||||||
|
|
||||||
## put the "finalize" script, that does the final work
|
|
||||||
|
|
||||||
## func
|
|
||||||
put_finalize(){
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee ${strapdir}/finalize >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## permissions
|
|
||||||
for i in cdrom floppy audio dip video plugdev netdev lpadmin scanner; do
|
|
||||||
gpasswd -a ${username} \$i
|
|
||||||
done
|
|
||||||
|
|
||||||
chsh -s "${default_shell}" ${username}
|
|
||||||
chown -R 1000:1000 /home/${username}
|
|
||||||
|
|
||||||
rm -f /etc/fstab
|
|
||||||
rm -f /etc/popularity-contest.conf
|
|
||||||
rm -f /var/lib/dbus/machine-id
|
|
||||||
|
|
||||||
# For ascii if no display manager is used. Maybe this should have a
|
|
||||||
# contitional that's turned on/off in the config?
|
|
||||||
# echo "needs_root_rights=yes" >> /etc/X11/Xwrapper.config
|
|
||||||
|
|
||||||
# Disable contrib and non-free after installing firmware.
|
|
||||||
sed -i 's/ contrib//g' /etc/apt/sources.list
|
|
||||||
sed -i 's/ non-free//g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
## Disable updates
|
|
||||||
sed -i '/-updates/s/^/## /g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
## replace pkgmaster with deb.devuan.org
|
|
||||||
sed -i 's/pkgmaster/deb/g'
|
|
||||||
|
|
||||||
# for amd64 only at this time (for bios/uefi compat)
|
|
||||||
if ls /boot | grep amd64 ; then
|
|
||||||
apt-get download grub-pc
|
|
||||||
apt-get download grub-efi-ia32
|
|
||||||
fi
|
|
||||||
|
|
||||||
## insert service boot_beep
|
|
||||||
insserv boot_beep
|
|
||||||
|
|
||||||
## Configure framebuffer
|
|
||||||
setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
|
|
||||||
chmod u+s /usr/bin/fbterm
|
|
||||||
|
|
||||||
## Make initramfs
|
|
||||||
|
|
||||||
SLIM_INITRD=initrd_devuan.img
|
|
||||||
MICRO_INITRD=/boot/initrd.img
|
|
||||||
INITRD_COMPR="xz --check=crc32 --x86 -6 -"
|
|
||||||
|
|
||||||
|
|
||||||
/create_initrd.sh /initrd.img /boot/\${SLIM_INITRD} \
|
|
||||||
"\${INITRD_COMPR}" \${MICRO_INITRD}
|
|
||||||
|
|
||||||
rm -f $(realpath /initrd.img)
|
|
||||||
rm -f $(realpath /initrd.img.old)
|
|
||||||
|
|
||||||
echo "====> Content of /boot before rm:"
|
|
||||||
|
|
||||||
ls /boot
|
|
||||||
|
|
||||||
rm -f /initrd.img
|
|
||||||
rm -f /initrd.img.old
|
|
||||||
|
|
||||||
KERN_ORIG=\$(ls /boot/initrd.img-* | head -1 | cut -d "-" -f 2-)
|
|
||||||
|
|
||||||
rm -f /boot/initrd.img-*
|
|
||||||
|
|
||||||
|
|
||||||
echo "====> Content of /boot AFTER rm:"
|
|
||||||
|
|
||||||
ls /boot
|
|
||||||
|
|
||||||
ln -s \${MICRO_INITRD} /initrd.img
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## rm create_initrd.sh
|
|
||||||
rm /create_initrd.sh
|
|
||||||
|
|
||||||
## package list
|
|
||||||
dpkg -l | awk '/^ii/ { print \$2 " " \$3 }' > /home/${username}/package_list
|
|
||||||
|
|
||||||
##apt-get update
|
|
||||||
apt-get clean
|
|
||||||
rm /var/cache/apt/*.bin
|
|
||||||
updatedb
|
|
||||||
|
|
||||||
rm -f /initrd.img
|
|
||||||
rm -f /initrd.img.old
|
|
||||||
rm -f /boot/initrd.img-*
|
|
||||||
ln -s \${MICRO_INITRD} /initrd.img
|
|
||||||
|
|
||||||
ln -s \${MICRO_INITRD} /boot/initrd.img-\${KERN_ORIG}
|
|
||||||
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
## cp ${strapdir}/finalize ${strapdir}/finalize.bak
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
## func
|
|
||||||
# put_packages(){
|
|
||||||
|
|
||||||
# sudo cp -a "$R/extra/custom-packages/" ${strapdir}
|
|
||||||
# }
|
|
||||||
|
|
||||||
|
|
||||||
blend_finalize() {
|
|
||||||
fn blend_finalize
|
|
||||||
req=(strapdir username default_shell)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
put_create_initrd
|
|
||||||
#put_packages
|
|
||||||
|
|
||||||
put_finalize
|
|
||||||
|
|
||||||
#chroot-script -d finalize || zerr
|
|
||||||
chroot-script finalize || zerr
|
|
||||||
|
|
||||||
printf "copying ${strapdir}/boot/initrd.img to ${workdir}/binary/live/..."
|
|
||||||
sudo cp -L ${strapdir}/boot/initrd.img ${workdir}/binary/live/
|
|
||||||
printf "done\n"
|
|
||||||
printf "copying memtest86 to /binary/live\n"
|
|
||||||
sudo cp ${strapdir}/boot/memtest86+.bin ${workdir}/binary/live/memtest
|
|
||||||
printf "done\n"
|
|
||||||
echo "done"
|
|
||||||
}
|
|
@ -1,55 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-minimal-live blend
|
|
||||||
|
|
||||||
vars+=(username userpass default_shell mkefi grubversion hookscripts)
|
|
||||||
arrs+=(custom_deb_packages)
|
|
||||||
|
|
||||||
blend_name="devuan-minimal-live"
|
|
||||||
|
|
||||||
release="chimaera"
|
|
||||||
version="4.0.0"
|
|
||||||
mirror="http://deb.devuan.org/merged"
|
|
||||||
section="main contrib non-free"
|
|
||||||
|
|
||||||
username="devuan"
|
|
||||||
userpass="devuan"
|
|
||||||
default_shell="/bin/bash"
|
|
||||||
|
|
||||||
# comment to disable:
|
|
||||||
#hookscripts="yes"
|
|
||||||
|
|
||||||
arch="amd64"
|
|
||||||
#arch="i386"
|
|
||||||
|
|
||||||
case "$arch" in
|
|
||||||
# for minimal-live
|
|
||||||
i386) extra_packages+=(linux-image-686) ;;
|
|
||||||
|
|
||||||
# for desktop-live
|
|
||||||
#i386) extra_packages+=(linux-image-686-pae) ;;
|
|
||||||
|
|
||||||
amd64) extra_packages+=(linux-image-amd64) ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# uncomment to create uefi-bootable iso
|
|
||||||
MKEFI=1
|
|
||||||
efi_work="$BLENDPATH/efi-files"
|
|
||||||
|
|
||||||
#grubversion="grub-pc"
|
|
||||||
grubversion="grub-efi-amd64"
|
|
||||||
|
|
||||||
# Uncomment for amd64 bios/uefi
|
|
||||||
base_packages+=(grub-pc-bin grub-efi-ia32-bin efibootmgr)
|
|
||||||
|
|
||||||
base_packages_option=(--no-install-recommends)
|
|
||||||
extra_packages_option=(--no-install-recommends)
|
|
||||||
|
|
||||||
release_conf="$BLENDPATH/$release/config"
|
|
||||||
|
|
||||||
### package sets are defined in the corresponding $release/config file
|
|
||||||
|
|
||||||
source $release_conf
|
|
||||||
|
|
||||||
## image_name depends on release and version
|
|
||||||
|
|
||||||
image_name="${os}_${release}_${version}_${arch}_minimal"
|
|
@ -6,10 +6,10 @@ arrs+=(custom_deb_packages)
|
|||||||
|
|
||||||
blend_name="devuan-minimal-live"
|
blend_name="devuan-minimal-live"
|
||||||
|
|
||||||
release="daedalus"
|
release="chimaera"
|
||||||
version="5.0.0"
|
version="4.0.0"
|
||||||
mirror="http://deb.devuan.org/merged"
|
mirror="http://deb.devuan.org/merged"
|
||||||
section="main non-free-firmware"
|
section="main contrib non-free"
|
||||||
|
|
||||||
username="devuan"
|
username="devuan"
|
||||||
userpass="devuan"
|
userpass="devuan"
|
||||||
|
@ -1,427 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
# Copyright (c) 2017 Dyne.org Foundation
|
|
||||||
# live-sdk is written and maintained by Ivan J. <parazyd@dyne.org>
|
|
||||||
#
|
|
||||||
# This file is part of live-sdk
|
|
||||||
# devuan-minimal-live.blend is maintained by KatolaZ <katolaz@freaknet.org>
|
|
||||||
#
|
|
||||||
# This source code is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This software is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this source code. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
BLENDPATH="${BLENDPATH:-$(dirname $0)}"
|
|
||||||
|
|
||||||
source "$BLENDPATH/config"
|
|
||||||
|
|
||||||
blend_release_path="$BLENDPATH/$release/"
|
|
||||||
blend_scripts="${blend_release_path}/scripts"
|
|
||||||
|
|
||||||
###source $BLENDPATH/$release/devuan-minimal-live.release
|
|
||||||
|
|
||||||
blend_preinst() {
|
|
||||||
fn blend_preinst
|
|
||||||
req=(blend_name username userpass)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name preinst"
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee "$strapdir/add-user" >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
useradd -s /bin/bash -m "${username}" || exit 1
|
|
||||||
echo "${username}:${userpass}" | chpasswd || exit 1
|
|
||||||
EOF
|
|
||||||
chroot-script -d add-user || { zerr; return 1; }
|
|
||||||
|
|
||||||
notice "copying blend-specific debs into $R/extra/custom-packages"
|
|
||||||
|
|
||||||
sudo mkdir -p "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
sudo cp -fv "$blend_release_path"/custom_debs/*.deb "$strapdir/extra_packages" || { zerr; return 1; }
|
|
||||||
cat << EOF | sudo tee "$strapdir/install-custpackages" >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
cd extra_packages
|
|
||||||
dpkg -i *_all.deb *_${arch}.deb
|
|
||||||
apt-get -f install
|
|
||||||
cd - >/dev/null
|
|
||||||
rm -rf extra_packages
|
|
||||||
EOF
|
|
||||||
chroot-script -d install-custpackages || { zerr; return 1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
blend_postinst() {
|
|
||||||
fn blend_postinst
|
|
||||||
req=(strapdir blend_name)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "executing $blend_name postinst"
|
|
||||||
|
|
||||||
[[ -n "$MKEFI" ]] && {
|
|
||||||
iso_make_efi
|
|
||||||
iso_write_grub_cfg
|
|
||||||
}
|
|
||||||
|
|
||||||
pushd "$strapdir"
|
|
||||||
sudo rsync -avx --no-o --no-g "$blend_release_path"/rootfs_overlay/* . || { zerr; return 1; }
|
|
||||||
sudo chmod 755 etc/init.d/boot_beep
|
|
||||||
popd
|
|
||||||
|
|
||||||
blend_finalize || { zerr; return 1 }
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_write_isolinux_cfg() {
|
|
||||||
fn iso_write_isolinux_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "copying isolinux overlay"
|
|
||||||
sudo mkdir -p "$workdir"/binary/{live,isolinux}
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux_overlay/* "$workdir"/binary/isolinux/
|
|
||||||
|
|
||||||
#[[ -n "$hookscripts" ]] && {
|
|
||||||
# sudo cp -av "$BLENDPATH"/hooks "$workdir"/binary/live/
|
|
||||||
#}
|
|
||||||
}
|
|
||||||
|
|
||||||
# create /boot and /efi for uefi.
|
|
||||||
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
|
||||||
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
|
||||||
iso_make_efi() {
|
|
||||||
set -x
|
|
||||||
fn iso_make_efi
|
|
||||||
req=(workdir efi_work strapdir)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "creating efi boot files"
|
|
||||||
|
|
||||||
tempdir="$(mktemp -d /tmp/work_temp.XXXX)"
|
|
||||||
# for initial grub.cfg
|
|
||||||
mkdir -p "$tempdir"/boot/grub
|
|
||||||
|
|
||||||
if [ "$arch" = amd64 ] ; then
|
|
||||||
grubarch="x86_64-efi"
|
|
||||||
elif [ "$arch" = i386 ] ; then
|
|
||||||
grubarch="i386-efi"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cat >"$tempdir"/boot/grub/grub.cfg <<EOF
|
|
||||||
search --file --set=root /isolinux/isolinux.cfg
|
|
||||||
set prefix=(\$root)/boot/grub
|
|
||||||
source \$prefix/${grubarch}/grub.cfg
|
|
||||||
EOF
|
|
||||||
|
|
||||||
mkdir -p "$efi_work"
|
|
||||||
pushd "$efi_work"
|
|
||||||
|
|
||||||
# start with empty directories.
|
|
||||||
rm -rf boot; mkdir -p boot/grub/${grubarch}
|
|
||||||
rm -rf efi ; mkdir -p efi/boot
|
|
||||||
|
|
||||||
# second grub.cfg file
|
|
||||||
for i in $(find $strapdir/usr/lib/grub/${grubarch} -name 'part_*.mod'); do
|
|
||||||
print "insmod $(basename $i)" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
# Additional modules so we don't boot in blind mode.
|
|
||||||
# I don't know which ones are really needed.
|
|
||||||
efimods=(
|
|
||||||
efi_gop
|
|
||||||
efi_uga
|
|
||||||
ieee1275_fb
|
|
||||||
vbe
|
|
||||||
vga
|
|
||||||
video_bochs
|
|
||||||
video_cirrus
|
|
||||||
jpeg
|
|
||||||
png
|
|
||||||
gfxterm
|
|
||||||
)
|
|
||||||
for i in $efimods; do
|
|
||||||
print "insmod $i" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
done
|
|
||||||
|
|
||||||
print "source /boot/grub/grub.cfg" >> boot/grub/${grubarch}/grub.cfg
|
|
||||||
|
|
||||||
pushd "$tempdir"
|
|
||||||
# make a tarred "memdisk" to embed in the grub image
|
|
||||||
tar -cvf memdisk boot
|
|
||||||
|
|
||||||
# make the grub image
|
|
||||||
grub-mkimage -O "x86_64-efi" -m "memdisk" -o "bootx64.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
|
|
||||||
grub-mkimage -O "i386-efi" -m "memdisk" -o "bootia32.efi" \
|
|
||||||
-p '(memdisk)/boot/grub' \
|
|
||||||
search iso9660 configfile normal memdisk tar cat \
|
|
||||||
part_msdos part_gpt fat ext2 ntfs ntfscomp hfsplus \
|
|
||||||
chain boot linux
|
|
||||||
popd
|
|
||||||
|
|
||||||
# copy the grub image to efi/boot (to go later in the device's root)
|
|
||||||
cp "$tempdir"/bootx64.efi efi/boot
|
|
||||||
cp "$tempdir"/bootia32.efi efi/boot
|
|
||||||
|
|
||||||
# Do the boot image "boot/grub/efiboot.img"
|
|
||||||
dd if=/dev/zero of=boot/grub/efiboot.img bs=1K count=1440
|
|
||||||
mkfs.vfat -F 12 boot/grub/efiboot.img
|
|
||||||
|
|
||||||
sudo mkdir img-mnt
|
|
||||||
sudo mount -o loop boot/grub/efiboot.img img-mnt
|
|
||||||
sudo mkdir -p img-mnt/efi/boot
|
|
||||||
sudo cp "$tempdir"/bootx64.efi img-mnt/efi/boot/
|
|
||||||
sudo cp "$tempdir"/bootia32.efi img-mnt/efi/boot/
|
|
||||||
|
|
||||||
# copy modules and font
|
|
||||||
cp -r "$strapdir/usr/lib/grub/${grubarch}"/* "boot/grub/${grubarch}/"
|
|
||||||
|
|
||||||
# if this doesn't work try another font from the same place (grub's default, unicode.pf2, is much larger)
|
|
||||||
# Either of these will work, and they look the same to me. Unicode seems to work with qemu. -fsr
|
|
||||||
# cp /usr/share/grub/ascii.pf2 boot/grub/font.pf2
|
|
||||||
cp $strapdir/usr/share/grub/unicode.pf2 boot/grub/font.pf2
|
|
||||||
|
|
||||||
# copy splash
|
|
||||||
sudo cp -rav "$blend_release_path"/isolinux_overlay/splash.png boot/grub/splash.png
|
|
||||||
|
|
||||||
# Cleanup efi temps
|
|
||||||
sudo umount img-mnt
|
|
||||||
sudo rmdir img-mnt
|
|
||||||
rm -rf "$tempdir"
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
|
|
||||||
# Copy efi files to iso
|
|
||||||
pushd $workdir
|
|
||||||
sudo rsync -avx "$efi_work"/boot binary/
|
|
||||||
sudo rsync -avx "$efi_work"/efi binary/
|
|
||||||
popd
|
|
||||||
set +x
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
## UNUSED
|
|
||||||
iso_write_grub_cfg() {
|
|
||||||
fn iso_write_grub_cfg "(override)"
|
|
||||||
req=(workdir arch username)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
notice "writing grub configuration"
|
|
||||||
|
|
||||||
# Do the main grub.cfg (which gets loaded last):
|
|
||||||
cat <<EOF | sudo tee ${workdir}/binary/boot/grub/grub.cfg
|
|
||||||
if loadfont $prefix/font.pf2 ; then
|
|
||||||
set gfxmode=640x480
|
|
||||||
insmod efi_gop
|
|
||||||
insmod efi_uga
|
|
||||||
insmod video_bochs
|
|
||||||
insmod video_cirrus
|
|
||||||
insmod gfxterm
|
|
||||||
insmod jpeg
|
|
||||||
insmod png
|
|
||||||
terminal_output gfxterm
|
|
||||||
fi
|
|
||||||
|
|
||||||
background_image /boot/grub/splash.png
|
|
||||||
set menu_color_normal=white/black
|
|
||||||
set menu_color_highlight=dark-gray/white
|
|
||||||
set timeout=6
|
|
||||||
play 480 440 1
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (std)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin vga=auto
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (access)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin 4 vga=normal
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (std-toram)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin vga=auto toram
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (access-toram)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noautologin 4 vga=normal toram
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Devuan Live Minimal (no probe)" {
|
|
||||||
set gfxpayload=keep
|
|
||||||
linux /live/vmlinuz boot=live noapic noapm nodma nomce nolapic nosmp vga=auto
|
|
||||||
initrd /live/initrd.img
|
|
||||||
}
|
|
||||||
|
|
||||||
menuentry "Memory test" {
|
|
||||||
linux /live/memtest
|
|
||||||
}
|
|
||||||
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
## put the "create_initrd.sh" script
|
|
||||||
|
|
||||||
##func
|
|
||||||
put_create_initrd(){
|
|
||||||
|
|
||||||
sudo cp ${blend_scripts}/create_initrd.sh ${strapdir}/ >/dev/null
|
|
||||||
|
|
||||||
## Now we make it executable
|
|
||||||
sudo chmod 755 ${strapdir}/create_initrd.sh
|
|
||||||
}
|
|
||||||
|
|
||||||
## put the "finalize" script, that does the final work
|
|
||||||
|
|
||||||
## func
|
|
||||||
put_finalize(){
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee ${strapdir}/finalize >/dev/null
|
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## permissions
|
|
||||||
for i in cdrom floppy audio dip video plugdev netdev lpadmin scanner; do
|
|
||||||
gpasswd -a ${username} \$i
|
|
||||||
done
|
|
||||||
|
|
||||||
chsh -s "${default_shell}" ${username}
|
|
||||||
chown -R 1000:1000 /home/${username}
|
|
||||||
|
|
||||||
rm -f /etc/fstab
|
|
||||||
rm -f /etc/popularity-contest.conf
|
|
||||||
rm -f /var/lib/dbus/machine-id
|
|
||||||
|
|
||||||
# For ascii if no display manager is used. Maybe this should have a
|
|
||||||
# contitional that's turned on/off in the config?
|
|
||||||
# echo "needs_root_rights=yes" >> /etc/X11/Xwrapper.config
|
|
||||||
|
|
||||||
# Disable contrib and non-free after installing firmware.
|
|
||||||
#sed -i 's/ contrib//g' /etc/apt/sources.list
|
|
||||||
#sed -i 's/ non-free-firmware//g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
## Disable proposed-updates
|
|
||||||
#sed -i '/-proposed-updates/s/^/#/g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
## replace pkgmaster with deb.devuan.org
|
|
||||||
sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
|
|
||||||
apt update
|
|
||||||
|
|
||||||
# for amd64 only at this time (for bios/uefi compat)
|
|
||||||
if ls /boot | grep amd64 ; then
|
|
||||||
apt-get download grub-pc
|
|
||||||
apt-get download grub-efi-ia32
|
|
||||||
fi
|
|
||||||
|
|
||||||
# download firmware packages
|
|
||||||
mkdir /firmware
|
|
||||||
cd /firmware
|
|
||||||
apt download atmel-firmware bluez-firmware dahdi-firmware-nonfree firmware-amd-graphics firmware-atheros firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-cavium firmware-intel-sound firmware-iwlwifi firmware-libertas firmware-linux-free firmware-linux-nonfree firmware-misc-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-realtek firmware-ti-connectivity firmware-zd1211
|
|
||||||
cd -
|
|
||||||
|
|
||||||
## insert service boot_beep
|
|
||||||
insserv boot_beep
|
|
||||||
|
|
||||||
## Configure framebuffer
|
|
||||||
setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
|
|
||||||
chmod u+s /usr/bin/fbterm
|
|
||||||
|
|
||||||
## Make initramfs
|
|
||||||
|
|
||||||
SLIM_INITRD=initrd_devuan.img
|
|
||||||
MICRO_INITRD=/boot/initrd.img
|
|
||||||
INITRD_COMPR="xz --check=crc32 --x86 -6 -"
|
|
||||||
|
|
||||||
|
|
||||||
/create_initrd.sh /initrd.img /boot/\${SLIM_INITRD} \
|
|
||||||
"\${INITRD_COMPR}" \${MICRO_INITRD}
|
|
||||||
|
|
||||||
rm -f $(realpath /initrd.img)
|
|
||||||
rm -f $(realpath /initrd.img.old)
|
|
||||||
|
|
||||||
echo "====> Content of /boot before rm:"
|
|
||||||
|
|
||||||
ls /boot
|
|
||||||
|
|
||||||
rm -f /initrd.img
|
|
||||||
rm -f /initrd.img.old
|
|
||||||
|
|
||||||
KERN_ORIG=\$(ls /boot/initrd.img-* | head -1 | cut -d "-" -f 2-)
|
|
||||||
|
|
||||||
rm -f /boot/initrd.img-*
|
|
||||||
|
|
||||||
|
|
||||||
echo "====> Content of /boot AFTER rm:"
|
|
||||||
|
|
||||||
ls /boot
|
|
||||||
|
|
||||||
ln -s \${MICRO_INITRD} /initrd.img
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## rm create_initrd.sh
|
|
||||||
rm /create_initrd.sh
|
|
||||||
|
|
||||||
## package list
|
|
||||||
dpkg -l | awk '/^ii/ { print \$2 " " \$3 }' > /home/${username}/package_list
|
|
||||||
|
|
||||||
##apt-get update
|
|
||||||
apt-get clean
|
|
||||||
rm /var/cache/apt/*.bin
|
|
||||||
updatedb
|
|
||||||
|
|
||||||
rm -f /initrd.img
|
|
||||||
rm -f /initrd.img.old
|
|
||||||
rm -f /boot/initrd.img-*
|
|
||||||
ln -s \${MICRO_INITRD} /initrd.img
|
|
||||||
|
|
||||||
ln -s \${MICRO_INITRD} /boot/initrd.img-\${KERN_ORIG}
|
|
||||||
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
## cp ${strapdir}/finalize ${strapdir}/finalize.bak
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
## func
|
|
||||||
# put_packages(){
|
|
||||||
|
|
||||||
# sudo cp -a "$R/extra/custom-packages/" ${strapdir}
|
|
||||||
# }
|
|
||||||
|
|
||||||
|
|
||||||
blend_finalize() {
|
|
||||||
fn blend_finalize
|
|
||||||
req=(strapdir username default_shell)
|
|
||||||
ckreq || return 1
|
|
||||||
|
|
||||||
put_create_initrd
|
|
||||||
#put_packages
|
|
||||||
|
|
||||||
put_finalize
|
|
||||||
|
|
||||||
#chroot-script -d finalize || zerr
|
|
||||||
chroot-script finalize || zerr
|
|
||||||
|
|
||||||
printf "copying ${strapdir}/boot/initrd.img to ${workdir}/binary/live/..."
|
|
||||||
sudo cp -L ${strapdir}/boot/initrd.img ${workdir}/binary/live/
|
|
||||||
printf "done\n"
|
|
||||||
printf "copying memtest86 to /binary/live\n"
|
|
||||||
sudo cp ${strapdir}/boot/memtest86+.bin ${workdir}/binary/live/memtest
|
|
||||||
printf "done\n"
|
|
||||||
echo "done"
|
|
||||||
}
|
|
@ -1,55 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-minimal-live blend
|
|
||||||
|
|
||||||
vars+=(username userpass default_shell mkefi grubversion hookscripts)
|
|
||||||
arrs+=(custom_deb_packages)
|
|
||||||
|
|
||||||
blend_name="devuan-minimal-live"
|
|
||||||
|
|
||||||
release="daedalus"
|
|
||||||
version="5.0.0"
|
|
||||||
mirror="http://deb.devuan.org/merged"
|
|
||||||
section="main non-free-firmware"
|
|
||||||
|
|
||||||
username="devuan"
|
|
||||||
userpass="devuan"
|
|
||||||
default_shell="/bin/bash"
|
|
||||||
|
|
||||||
# comment to disable:
|
|
||||||
#hookscripts="yes"
|
|
||||||
|
|
||||||
arch="amd64"
|
|
||||||
#arch="i386"
|
|
||||||
|
|
||||||
case "$arch" in
|
|
||||||
# for minimal-live
|
|
||||||
i386) extra_packages+=(linux-image-686) ;;
|
|
||||||
|
|
||||||
# for desktop-live
|
|
||||||
#i386) extra_packages+=(linux-image-686-pae) ;;
|
|
||||||
|
|
||||||
amd64) extra_packages+=(linux-image-amd64) ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# uncomment to create uefi-bootable iso
|
|
||||||
MKEFI=1
|
|
||||||
efi_work="$BLENDPATH/efi-files"
|
|
||||||
|
|
||||||
#grubversion="grub-pc"
|
|
||||||
grubversion="grub-efi-amd64"
|
|
||||||
|
|
||||||
# Uncomment for amd64 bios/uefi
|
|
||||||
base_packages+=(grub-pc-bin grub-efi-ia32-bin efibootmgr)
|
|
||||||
|
|
||||||
base_packages_option=(--no-install-recommends)
|
|
||||||
extra_packages_option=(--no-install-recommends)
|
|
||||||
|
|
||||||
release_conf="$BLENDPATH/$release/config"
|
|
||||||
|
|
||||||
### package sets are defined in the corresponding $release/config file
|
|
||||||
|
|
||||||
source $release_conf
|
|
||||||
|
|
||||||
## image_name depends on release and version
|
|
||||||
|
|
||||||
image_name="${os}_${release}_${version}_${arch}_minimal"
|
|
@ -1,299 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-minimal-live blend -- Chimaera release
|
|
||||||
|
|
||||||
|
|
||||||
##
|
|
||||||
## definition of package sets
|
|
||||||
##
|
|
||||||
|
|
||||||
### base package set
|
|
||||||
minimal_base_packages+=(
|
|
||||||
acpi
|
|
||||||
acpi-support-base
|
|
||||||
acpid
|
|
||||||
acpi-fakekey
|
|
||||||
at
|
|
||||||
bash
|
|
||||||
bash-completion
|
|
||||||
bc
|
|
||||||
busybox
|
|
||||||
console-common
|
|
||||||
console-data
|
|
||||||
console-setup
|
|
||||||
console-setup-linux
|
|
||||||
coreutils
|
|
||||||
dash
|
|
||||||
dc
|
|
||||||
dialog
|
|
||||||
discover
|
|
||||||
dselect
|
|
||||||
file
|
|
||||||
groff-base
|
|
||||||
$grubversion
|
|
||||||
info
|
|
||||||
kbd
|
|
||||||
laptop-detect
|
|
||||||
locales
|
|
||||||
lsof
|
|
||||||
syslinux
|
|
||||||
util-linux-locales
|
|
||||||
zsh
|
|
||||||
)
|
|
||||||
|
|
||||||
## admin package set
|
|
||||||
minimal_admin_packages+=(
|
|
||||||
cryptsetup
|
|
||||||
cryptsetup-bin
|
|
||||||
cryptsetup-initramfs
|
|
||||||
cryptsetup-run
|
|
||||||
debootstrap
|
|
||||||
dosfstools
|
|
||||||
entr
|
|
||||||
gddrescue
|
|
||||||
gdisk
|
|
||||||
htop
|
|
||||||
iftop
|
|
||||||
iotop
|
|
||||||
iw
|
|
||||||
lvm2
|
|
||||||
mdadm
|
|
||||||
mtr-tiny
|
|
||||||
multitail
|
|
||||||
ncdu
|
|
||||||
parted
|
|
||||||
pciutils
|
|
||||||
psmisc
|
|
||||||
sudo
|
|
||||||
time
|
|
||||||
usbutils
|
|
||||||
wavemon
|
|
||||||
wireless-tools
|
|
||||||
wpasupplicant
|
|
||||||
|
|
||||||
)
|
|
||||||
|
|
||||||
## editors package set
|
|
||||||
minimal_editors_packages+=(
|
|
||||||
ed
|
|
||||||
nano
|
|
||||||
vim-tiny
|
|
||||||
zile
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
## networking package set
|
|
||||||
minimal_net_packages+=(
|
|
||||||
bind9-host
|
|
||||||
# bittornado ### not in chimaera
|
|
||||||
bti
|
|
||||||
ceni
|
|
||||||
curl
|
|
||||||
dnsutils
|
|
||||||
edbrowse
|
|
||||||
fetchmail
|
|
||||||
ftp-ssl # in daedalus ftp-ssl or tnftp replaces ftp. lftp gets some votes locally.
|
|
||||||
geoip-bin
|
|
||||||
haveged
|
|
||||||
irssi
|
|
||||||
lftp
|
|
||||||
links2
|
|
||||||
lrzsz
|
|
||||||
mcabber
|
|
||||||
minicom
|
|
||||||
mosh
|
|
||||||
msmtp
|
|
||||||
mutt
|
|
||||||
netcat-openbsd
|
|
||||||
net-tools
|
|
||||||
nfacct
|
|
||||||
# nrss # not in beowulf. Use rsstail instead.
|
|
||||||
openssh-client
|
|
||||||
openssh-server
|
|
||||||
procmail
|
|
||||||
rfkill
|
|
||||||
rsstail
|
|
||||||
# oysttyer # use bti instead
|
|
||||||
rsync
|
|
||||||
# setnet # use ascii deb package for beowulf and chimaera
|
|
||||||
telnet
|
|
||||||
traceroute
|
|
||||||
transmission-cli
|
|
||||||
w3m
|
|
||||||
wget
|
|
||||||
whois
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
## productivity package set
|
|
||||||
minimal_prod_packages+=(
|
|
||||||
abook
|
|
||||||
apcalc
|
|
||||||
aspell
|
|
||||||
aspell-en
|
|
||||||
# calcurse ### not in daedalus. Maybe todoman or w2do?
|
|
||||||
clex
|
|
||||||
dvtm
|
|
||||||
fbi
|
|
||||||
fbterm
|
|
||||||
ghostscript
|
|
||||||
gnupg
|
|
||||||
gnupg2
|
|
||||||
gnupg-agent
|
|
||||||
mc
|
|
||||||
parallel
|
|
||||||
poppler-utils
|
|
||||||
rpl
|
|
||||||
rename
|
|
||||||
sc
|
|
||||||
screen
|
|
||||||
taskwarrior
|
|
||||||
tmux
|
|
||||||
w2do
|
|
||||||
)
|
|
||||||
|
|
||||||
## programming package set
|
|
||||||
minimal_devel_packages+=(
|
|
||||||
tcc
|
|
||||||
libc6-dev
|
|
||||||
m4
|
|
||||||
patch
|
|
||||||
perl
|
|
||||||
perl-base
|
|
||||||
perl-modules-5.36
|
|
||||||
# python2.7-minimal
|
|
||||||
python3.11-minimal
|
|
||||||
gawk
|
|
||||||
guile-3.0
|
|
||||||
guile-3.0-libs
|
|
||||||
)
|
|
||||||
|
|
||||||
## games package set
|
|
||||||
minimal_games_packages+=(
|
|
||||||
bastet
|
|
||||||
bombardier
|
|
||||||
bsdgames
|
|
||||||
cavezofphear
|
|
||||||
crawl
|
|
||||||
curseofwar
|
|
||||||
empire
|
|
||||||
freesweep
|
|
||||||
gnuchess
|
|
||||||
greed
|
|
||||||
matanza
|
|
||||||
moria
|
|
||||||
nethack-console
|
|
||||||
# ninvaders ### not in daedalus. Replaced with open-invaders
|
|
||||||
omega-rpg
|
|
||||||
open-invaders
|
|
||||||
pacman4console
|
|
||||||
pente
|
|
||||||
sudoku
|
|
||||||
)
|
|
||||||
|
|
||||||
## accessibility package set
|
|
||||||
minimal_a11y_packages+=(
|
|
||||||
beep
|
|
||||||
brltty
|
|
||||||
espeak
|
|
||||||
espeakup
|
|
||||||
yasr
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
## multimedia package set
|
|
||||||
minimal_media_packages+=(
|
|
||||||
alsa-utils
|
|
||||||
caca-utils
|
|
||||||
fmtools
|
|
||||||
# hasciicam # Not in daedalus
|
|
||||||
imagemagick
|
|
||||||
jhead
|
|
||||||
moc
|
|
||||||
# radio # Not in beowulf. Replaced with fmtools.
|
|
||||||
sox
|
|
||||||
)
|
|
||||||
|
|
||||||
## misc package set
|
|
||||||
minimal_misc_packages+=(
|
|
||||||
cmatrix
|
|
||||||
cowsay
|
|
||||||
eject
|
|
||||||
figlet
|
|
||||||
fortunes-min
|
|
||||||
fortune-mod
|
|
||||||
gpm
|
|
||||||
man-db
|
|
||||||
manpages
|
|
||||||
manpages-dev
|
|
||||||
mlocate
|
|
||||||
# termsaver ### not in chimaera
|
|
||||||
toilet
|
|
||||||
toilet-fonts
|
|
||||||
ttyrec
|
|
||||||
unzip
|
|
||||||
)
|
|
||||||
|
|
||||||
### now we include all the package sets
|
|
||||||
base_packages+=(
|
|
||||||
$minimal_base_packages
|
|
||||||
$minimal_admin_packages
|
|
||||||
$minimal_editors_packages
|
|
||||||
$minimal_net_packages
|
|
||||||
$minimal_prod_packages
|
|
||||||
$minimal_devel_packages
|
|
||||||
# $minimal_games_packages
|
|
||||||
$minimal_a11y_packages
|
|
||||||
$minimal_media_packages
|
|
||||||
$minimal_misc_packages
|
|
||||||
)
|
|
||||||
|
|
||||||
#### TODO: REPLACE twidge (twitter client)
|
|
||||||
#### ADDED: geoip-bin
|
|
||||||
|
|
||||||
extra_packages+=(
|
|
||||||
atmel-firmware
|
|
||||||
bluez-firmware
|
|
||||||
dahdi-firmware-nonfree
|
|
||||||
firmware-amd-graphics
|
|
||||||
firmware-atheros
|
|
||||||
firmware-bnx2
|
|
||||||
firmware-bnx2x
|
|
||||||
firmware-brcm80211
|
|
||||||
firmware-cavium
|
|
||||||
firmware-intel-sound
|
|
||||||
firmware-iwlwifi
|
|
||||||
firmware-libertas
|
|
||||||
firmware-linux-free
|
|
||||||
firmware-linux-nonfree
|
|
||||||
firmware-misc-nonfree
|
|
||||||
firmware-myricom
|
|
||||||
firmware-netxen
|
|
||||||
firmware-qlogic
|
|
||||||
firmware-realtek
|
|
||||||
firmware-ti-connectivity
|
|
||||||
firmware-zd1211
|
|
||||||
refractainstaller-base
|
|
||||||
refractasnapshot-base
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
purge_packages=(
|
|
||||||
elinks
|
|
||||||
elinks-data
|
|
||||||
liberror-perl
|
|
||||||
libfsplib0
|
|
||||||
libtre5
|
|
||||||
openntpd
|
|
||||||
tasksel
|
|
||||||
tasksel-data
|
|
||||||
)
|
|
||||||
|
|
||||||
custom_deb_packages+=(
|
|
||||||
memtest86+_5.31b+dfsg-4_${arch}.deb
|
|
||||||
setnet_0.4+devuan1_all.deb
|
|
||||||
# live-boot-doc_20221008~fsr1_all.deb
|
|
||||||
# live-boot-initramfs-tools_20221008~fsr1_all.deb
|
|
||||||
# live-boot_20221008~fsr1_all.deb
|
|
||||||
|
|
||||||
)
|
|
||||||
|
|
@ -1,302 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
## configuration file for devuan-minimal-live blend -- Chimaera release
|
|
||||||
|
|
||||||
|
|
||||||
##
|
|
||||||
## definition of package sets
|
|
||||||
##
|
|
||||||
|
|
||||||
### base package set
|
|
||||||
minimal_base_packages+=(
|
|
||||||
acpi
|
|
||||||
acpi-support-base
|
|
||||||
acpid
|
|
||||||
acpi-fakekey
|
|
||||||
at
|
|
||||||
bash
|
|
||||||
bash-completion
|
|
||||||
bc
|
|
||||||
busybox
|
|
||||||
console-common
|
|
||||||
console-data
|
|
||||||
console-setup
|
|
||||||
console-setup-linux
|
|
||||||
coreutils
|
|
||||||
dash
|
|
||||||
dc
|
|
||||||
dialog
|
|
||||||
discover
|
|
||||||
dselect
|
|
||||||
file
|
|
||||||
groff-base
|
|
||||||
$grubversion
|
|
||||||
info
|
|
||||||
kbd
|
|
||||||
laptop-detect
|
|
||||||
locales
|
|
||||||
lsof
|
|
||||||
syslinux
|
|
||||||
util-linux-locales
|
|
||||||
zsh
|
|
||||||
)
|
|
||||||
|
|
||||||
## admin package set
|
|
||||||
minimal_admin_packages+=(
|
|
||||||
cryptsetup
|
|
||||||
cryptsetup-bin
|
|
||||||
debootstrap
|
|
||||||
dosfstools
|
|
||||||
entr
|
|
||||||
gddrescue
|
|
||||||
gdisk
|
|
||||||
htop
|
|
||||||
iftop
|
|
||||||
iotop
|
|
||||||
iw
|
|
||||||
lvm2
|
|
||||||
mdadm
|
|
||||||
mtr-tiny
|
|
||||||
multitail
|
|
||||||
ncdu
|
|
||||||
parted
|
|
||||||
pciutils
|
|
||||||
psmisc
|
|
||||||
sudo
|
|
||||||
time
|
|
||||||
usbutils
|
|
||||||
wavemon
|
|
||||||
wireless-tools
|
|
||||||
wpasupplicant
|
|
||||||
|
|
||||||
)
|
|
||||||
|
|
||||||
## editors package set
|
|
||||||
minimal_editors_packages+=(
|
|
||||||
ed
|
|
||||||
nano
|
|
||||||
vim-tiny
|
|
||||||
zile
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
## networking package set
|
|
||||||
minimal_net_packages+=(
|
|
||||||
bind9-host
|
|
||||||
# bittornado ### not in chimaera
|
|
||||||
bti
|
|
||||||
ceni
|
|
||||||
curl
|
|
||||||
dnsutils
|
|
||||||
edbrowse
|
|
||||||
fetchmail
|
|
||||||
ftp-ssl # in daedalus ftp-ssl or tnftp replaces ftp. lftp gets some votes locally.
|
|
||||||
geoip-bin
|
|
||||||
haveged
|
|
||||||
irssi
|
|
||||||
lftp
|
|
||||||
links2
|
|
||||||
lrzsz
|
|
||||||
mcabber
|
|
||||||
minicom
|
|
||||||
mosh
|
|
||||||
msmtp
|
|
||||||
mutt
|
|
||||||
netcat-openbsd
|
|
||||||
net-tools
|
|
||||||
nfacct
|
|
||||||
# nrss # not in beowulf. Use rsstail instead.
|
|
||||||
openssh-client
|
|
||||||
openssh-server
|
|
||||||
procmail
|
|
||||||
rfkill
|
|
||||||
rsstail
|
|
||||||
# oysttyer # use bti instead
|
|
||||||
rsync
|
|
||||||
# setnet # use ascii deb package for beowulf and chimaera
|
|
||||||
telnet
|
|
||||||
traceroute
|
|
||||||
transmission-cli
|
|
||||||
w3m
|
|
||||||
wget
|
|
||||||
whois
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
## productivity package set
|
|
||||||
minimal_prod_packages+=(
|
|
||||||
abook
|
|
||||||
apcalc
|
|
||||||
aspell
|
|
||||||
aspell-en
|
|
||||||
# calcurse ### not in daedalus. Maybe todoman or w2do?
|
|
||||||
clex
|
|
||||||
dvtm
|
|
||||||
fbi
|
|
||||||
fbterm
|
|
||||||
ghostscript
|
|
||||||
gnupg
|
|
||||||
gnupg2
|
|
||||||
gnupg-agent
|
|
||||||
mc
|
|
||||||
parallel
|
|
||||||
poppler-utils
|
|
||||||
rpl
|
|
||||||
rename
|
|
||||||
sc
|
|
||||||
screen
|
|
||||||
taskwarrior
|
|
||||||
tmux
|
|
||||||
w2do
|
|
||||||
)
|
|
||||||
|
|
||||||
## programming package set
|
|
||||||
minimal_devel_packages+=(
|
|
||||||
tcc
|
|
||||||
libc6-dev
|
|
||||||
m4
|
|
||||||
patch
|
|
||||||
perl
|
|
||||||
perl-base
|
|
||||||
perl-modules-5.34
|
|
||||||
python2.7-minimal
|
|
||||||
python3.9-minimal
|
|
||||||
gawk
|
|
||||||
guile-2.2
|
|
||||||
guile-2.2-libs
|
|
||||||
)
|
|
||||||
|
|
||||||
## games package set
|
|
||||||
minimal_games_packages+=(
|
|
||||||
bastet
|
|
||||||
bombardier
|
|
||||||
bsdgames
|
|
||||||
cavezofphear
|
|
||||||
crawl
|
|
||||||
curseofwar
|
|
||||||
empire
|
|
||||||
freesweep
|
|
||||||
gnuchess
|
|
||||||
greed
|
|
||||||
matanza
|
|
||||||
moria
|
|
||||||
nethack-console
|
|
||||||
# ninvaders ### not in daedalus. Replaced with open-invaders
|
|
||||||
omega-rpg
|
|
||||||
open-invaders
|
|
||||||
pacman4console
|
|
||||||
pente
|
|
||||||
sudoku
|
|
||||||
)
|
|
||||||
|
|
||||||
## accessibility package set
|
|
||||||
minimal_a11y_packages+=(
|
|
||||||
beep
|
|
||||||
brltty
|
|
||||||
espeak
|
|
||||||
espeakup
|
|
||||||
yasr
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
## multimedia package set
|
|
||||||
minimal_media_packages+=(
|
|
||||||
alsa-utils
|
|
||||||
caca-utils
|
|
||||||
fmtools
|
|
||||||
# hasciicam # Not in daedalus
|
|
||||||
imagemagick
|
|
||||||
jhead
|
|
||||||
moc
|
|
||||||
# radio # Not in beowulf. Replaced with fmtools.
|
|
||||||
sox
|
|
||||||
)
|
|
||||||
|
|
||||||
## misc package set
|
|
||||||
minimal_misc_packages+=(
|
|
||||||
cmatrix
|
|
||||||
cowsay
|
|
||||||
eject
|
|
||||||
figlet
|
|
||||||
fortunes-min
|
|
||||||
fortune-mod
|
|
||||||
gpm
|
|
||||||
man-db
|
|
||||||
manpages
|
|
||||||
manpages-dev
|
|
||||||
mlocate
|
|
||||||
# termsaver ### not in chimaera
|
|
||||||
toilet
|
|
||||||
toilet-fonts
|
|
||||||
ttyrec
|
|
||||||
unzip
|
|
||||||
)
|
|
||||||
|
|
||||||
### now we include all the package sets
|
|
||||||
base_packages+=(
|
|
||||||
$minimal_base_packages
|
|
||||||
$minimal_admin_packages
|
|
||||||
$minimal_editors_packages
|
|
||||||
$minimal_net_packages
|
|
||||||
$minimal_prod_packages
|
|
||||||
$minimal_devel_packages
|
|
||||||
$minimal_games_packages
|
|
||||||
$minimal_a11y_packages
|
|
||||||
$minimal_media_packages
|
|
||||||
$minimal_misc_packages
|
|
||||||
)
|
|
||||||
|
|
||||||
#### TODO: REPLACE twidge (twitter client)
|
|
||||||
#### ADDED: geoip-bin
|
|
||||||
|
|
||||||
extra_packages+=(
|
|
||||||
atmel-firmware
|
|
||||||
bluez-firmware
|
|
||||||
dahdi-firmware-nonfree
|
|
||||||
firmware-amd-graphics
|
|
||||||
# firmware-ath9k-htc ## Not in daedalus
|
|
||||||
firmware-atheros
|
|
||||||
firmware-bnx2
|
|
||||||
firmware-bnx2x
|
|
||||||
firmware-brcm80211
|
|
||||||
firmware-cavium
|
|
||||||
# firmware-crystalhd
|
|
||||||
firmware-intel-sound
|
|
||||||
firmware-intelwimax
|
|
||||||
# firmware-ipw2x00 ### These two exist but fail today.
|
|
||||||
# firmware-ivtv ### ...they require EULA
|
|
||||||
firmware-iwlwifi
|
|
||||||
firmware-libertas
|
|
||||||
firmware-linux-free
|
|
||||||
firmware-linux-nonfree
|
|
||||||
firmware-myricom
|
|
||||||
firmware-netxen
|
|
||||||
firmware-qlogic
|
|
||||||
# firmware-ralink
|
|
||||||
firmware-realtek
|
|
||||||
firmware-ti-connectivity
|
|
||||||
firmware-zd1211
|
|
||||||
refractainstaller-base
|
|
||||||
refractasnapshot-base
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
purge_packages=(
|
|
||||||
elinks
|
|
||||||
elinks-data
|
|
||||||
liberror-perl
|
|
||||||
libfsplib0
|
|
||||||
libtre5
|
|
||||||
openntpd
|
|
||||||
tasksel
|
|
||||||
tasksel-data
|
|
||||||
)
|
|
||||||
|
|
||||||
custom_deb_packages+=(
|
|
||||||
memtest86+_5.01-3.1_${arch}.deb
|
|
||||||
setnet_0.4+devuan1_all.deb
|
|
||||||
live-boot-doc_20221008~fsr1_all.deb
|
|
||||||
live-boot-initramfs-tools_20221008~fsr1_all.deb
|
|
||||||
live-boot_20221008~fsr1_all.deb
|
|
||||||
|
|
||||||
)
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
|||||||
atmel-firmware
|
|
||||||
bluez-firmware
|
|
||||||
dahdi-firmware-nonfree
|
|
||||||
firmware-amd-graphics
|
|
||||||
firmware-atheros
|
|
||||||
firmware-bnx2
|
|
||||||
firmware-bnx2x
|
|
||||||
firmware-brcm80211
|
|
||||||
firmware-cavium
|
|
||||||
firmware-crystalhd
|
|
||||||
firmware-intel-sound
|
|
||||||
firmware-intelwimax
|
|
||||||
firmware-ipw2x00
|
|
||||||
firmware-ivtv
|
|
||||||
firmware-iwlwifi
|
|
||||||
firmware-libertas
|
|
||||||
firmware-linux-free
|
|
||||||
firmware-linux-nonfree
|
|
||||||
firmware-myricom
|
|
||||||
firmware-netxen
|
|
||||||
firmware-qlogic
|
|
||||||
firmware-ralink
|
|
||||||
firmware-realtek
|
|
||||||
firmware-ti-connectivity
|
|
||||||
firmware-zd1211
|
|
||||||
refractainstaller-base
|
|
||||||
refractasnapshot-base
|
|
||||||
|
|
@ -1,58 +0,0 @@
|
|||||||
ui vesamenu.c32
|
|
||||||
prompt 0
|
|
||||||
#menu title devuan-live boot menu
|
|
||||||
#timeout 70
|
|
||||||
menu background /isolinux/splash.png
|
|
||||||
menu color title * #ff000000 #00ffffff none
|
|
||||||
menu color border * #00000000 #00000000 none
|
|
||||||
menu color sel 1;7;37;30 #ffffffff #ff000000 none
|
|
||||||
menu color unsel 1;30;37 #ff000000 #ffffffff none
|
|
||||||
menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *
|
|
||||||
menu color tabmsg 1;30;37 #ff000000 #ffffffff none
|
|
||||||
menu color cmdline 1;30;37 #ff000000 #ffffffff none
|
|
||||||
menu color help 37;40 #ffdddd00 #00000000 none
|
|
||||||
menu vshift 8
|
|
||||||
menu rows 12
|
|
||||||
#menu helpmsgrow 15
|
|
||||||
#menu cmdlinerow 25
|
|
||||||
#menu timeoutrow 26
|
|
||||||
#menu tabmsgrow 14
|
|
||||||
menu tabmsg Press ENTER to boot or TAB to edit a menu entry
|
|
||||||
|
|
||||||
label std
|
|
||||||
menu label Devuan Live Minimal (std)
|
|
||||||
kernel /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live noautologin vga=auto
|
|
||||||
|
|
||||||
label accessible
|
|
||||||
menu label Devuan Live Minimal (access)
|
|
||||||
kernel /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live noautologin 4 vga=normal
|
|
||||||
|
|
||||||
label std-toram
|
|
||||||
menu label Devuan Live Minimal (std-toram)
|
|
||||||
kernel /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live noautologin vga=auto toram
|
|
||||||
|
|
||||||
label accessible-toram
|
|
||||||
menu label Devuan Live Minimal (access-toram)
|
|
||||||
kernel /live/vmlinuz
|
|
||||||
append initrd=/live/initrd.img boot=live noautologin 4 vga=normal toram
|
|
||||||
|
|
||||||
label noprobe
|
|
||||||
menu label Devuan Live Minimal (no probe)
|
|
||||||
kernel /live/vmlinuz noapic noapm nodma nomce nolapic nosmp vga=normal
|
|
||||||
append initrd=/live/initrd.img boot=live
|
|
||||||
|
|
||||||
label memtest
|
|
||||||
menu label Memory test
|
|
||||||
kernel /live/memtest
|
|
||||||
|
|
||||||
label chain.c32 hd0,0
|
|
||||||
menu label Boot hard disk
|
|
||||||
chain.c32 hd0,0
|
|
||||||
|
|
||||||
label harddisk
|
|
||||||
menu label Boot hard disk (old way)
|
|
||||||
localboot 0x80
|
|
||||||
|
|
Before Width: | Height: | Size: 23 KiB |
@ -1,74 +0,0 @@
|
|||||||
#/bin/bash
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# This file is part of microdevuan, a set of scripts to create minimal
|
|
||||||
# devuan live images
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or (at
|
|
||||||
# your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but
|
|
||||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
# General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# (c) KatolaZ <katolaz@freaknet.org> (2016)
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
##
|
|
||||||
## A small daemon that just beeps every second, until the process
|
|
||||||
## BB_PROCESS is ready...
|
|
||||||
##
|
|
||||||
|
|
||||||
. /etc/default/boot_beep
|
|
||||||
|
|
||||||
|
|
||||||
##
|
|
||||||
## First, daemonize the script
|
|
||||||
##
|
|
||||||
|
|
||||||
if [ "x$1" != "x--" ]; then
|
|
||||||
$0 -- 1> /dev/null 2> /dev/null &
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
check_process(){
|
|
||||||
|
|
||||||
while [ 1 -gt 0 ]; do
|
|
||||||
login_ready=`ps ax | grep -E "${BB_PROCESS}" | grep -v "grep" | wc -l`
|
|
||||||
if [ $((${login_ready})) -ge 1 ]; then
|
|
||||||
###
|
|
||||||
### These lines should be put in a separate script, whose name is
|
|
||||||
### specified in bb_defaults, to allow custom chimes....
|
|
||||||
###
|
|
||||||
###
|
|
||||||
beep -D 50 -l 150 -f 523.25
|
|
||||||
beep -D 50 -l 150 -f 629.25
|
|
||||||
beep -D 50 -l 150 -f 784.00
|
|
||||||
beep -D 50 -l 150 -f 629.25
|
|
||||||
beep -D 50 -l 150 -f 523.25
|
|
||||||
exit 0;
|
|
||||||
else
|
|
||||||
if [[ ${BB_BOOT_BEEP} = "TRUE" ]]; then
|
|
||||||
beep -D 100 -l 250 -f 523.25
|
|
||||||
fi
|
|
||||||
sleep ${BB_INTERVAL};
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
echo $$ >> ${BB_TMPFILE}
|
|
||||||
|
|
||||||
check_process
|
|
@ -1,32 +0,0 @@
|
|||||||
##
|
|
||||||
## The name of the file which will contain the PID of boot_beep.sh
|
|
||||||
##
|
|
||||||
|
|
||||||
BB_TMPFILE=/tmp/boot_beep.pid
|
|
||||||
|
|
||||||
##
|
|
||||||
## the path to boot_beep.sh
|
|
||||||
##
|
|
||||||
|
|
||||||
BB_SCRIPTFILE=/etc/boot_beep
|
|
||||||
|
|
||||||
##
|
|
||||||
## the process(es) to look for. This pattern will be given to
|
|
||||||
## "grep -E"...
|
|
||||||
##
|
|
||||||
|
|
||||||
BB_PROCESS="(getty|login)"
|
|
||||||
|
|
||||||
##
|
|
||||||
## Set whether beeps are emitted during boot
|
|
||||||
##
|
|
||||||
##
|
|
||||||
|
|
||||||
BB_BEEP_BOOT=TRUE
|
|
||||||
|
|
||||||
##
|
|
||||||
## Set check interval
|
|
||||||
##
|
|
||||||
##
|
|
||||||
|
|
||||||
BB_INTERVAL=1
|
|
@ -1,16 +0,0 @@
|
|||||||
# CONFIGURATION FILE FOR SETUPCON
|
|
||||||
|
|
||||||
# Consult the console-setup(5) manual page.
|
|
||||||
|
|
||||||
ACTIVE_CONSOLES="/dev/tty[1-6]"
|
|
||||||
|
|
||||||
CHARMAP="UTF-8"
|
|
||||||
|
|
||||||
CODESET="Lat15"
|
|
||||||
FONTFACE="Fixed"
|
|
||||||
FONTSIZE="8x16"
|
|
||||||
|
|
||||||
VIDEOMODE=
|
|
||||||
|
|
||||||
# The following is an example how to use a braille font
|
|
||||||
# FONT='lat9w-08.psf.gz brl-8x8.psf'
|
|
@ -1,32 +0,0 @@
|
|||||||
# If you change this file, run 'update-grub' afterwards to update
|
|
||||||
# /boot/grub/grub.cfg.
|
|
||||||
# For full documentation of the options in this file, see:
|
|
||||||
# info -f grub -n 'Simple configuration'
|
|
||||||
|
|
||||||
GRUB_DEFAULT=0
|
|
||||||
GRUB_TIMEOUT=5
|
|
||||||
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
|
|
||||||
GRUB_CMDLINE_LINUX=""
|
|
||||||
|
|
||||||
# Uncomment to enable BadRAM filtering, modify to suit your needs
|
|
||||||
# This works with Linux (no patch required) and with any kernel that obtains
|
|
||||||
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
|
|
||||||
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
|
|
||||||
|
|
||||||
# Uncomment to disable graphical terminal (grub-pc only)
|
|
||||||
#GRUB_TERMINAL=console
|
|
||||||
|
|
||||||
# The resolution used on graphical terminal
|
|
||||||
# note that you can use only modes which your graphic card supports via VBE
|
|
||||||
# you can see them in real GRUB with the command `vbeinfo'
|
|
||||||
#GRUB_GFXMODE=640x480
|
|
||||||
|
|
||||||
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
|
|
||||||
#GRUB_DISABLE_LINUX_UUID=true
|
|
||||||
|
|
||||||
# Uncomment to disable generation of recovery mode menu entries
|
|
||||||
#GRUB_DISABLE_RECOVERY="true"
|
|
||||||
|
|
||||||
# Uncomment to get a beep at grub start
|
|
||||||
GRUB_INIT_TUNE="480 440 1"
|
|
@ -1,132 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# This file is part of microdevuan, a set of scripts to create minimal
|
|
||||||
# devuan live images
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or (at
|
|
||||||
# your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but
|
|
||||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
# General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# (c) KatolaZ <katolaz@freaknet.org> (2016)
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
### BEGIN INIT INFO
|
|
||||||
# Provides: boot_beep
|
|
||||||
# Required-Start: mountall
|
|
||||||
# Required-Stop:
|
|
||||||
# Default-Start: S
|
|
||||||
# Default-Stop:
|
|
||||||
# Short-Description: Boot Beep Daemon
|
|
||||||
### END INIT INFO
|
|
||||||
|
|
||||||
|
|
||||||
. /etc/default/boot_beep
|
|
||||||
|
|
||||||
rm_hanging_instances(){
|
|
||||||
|
|
||||||
if [ -f ${BB_TMPFILE} ]; then
|
|
||||||
for i in `cat ${BB_TMPFILE}`; do
|
|
||||||
is_alive=`ps ax | grep "^${i} " | wc -l`
|
|
||||||
if [ $((${is_alive})) -gt 0 ]; then
|
|
||||||
kill -9 ${i}
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
rm ${BB_TMPFILE}; touch ${BB_TMPFILE}
|
|
||||||
fi
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
check_active(){
|
|
||||||
|
|
||||||
ALIVE=0
|
|
||||||
if [ -f ${BB_TMPFILE} ]; then
|
|
||||||
for i in `cat ${BB_TMPFILE}`; do
|
|
||||||
is_alive=`ps ax | grep "^${i} " | wc -l`
|
|
||||||
if [ $((${is_alive})) -gt 0 ]; then
|
|
||||||
ALIVE=1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ ${ALIVE} -ge 1 ]; then
|
|
||||||
return 1;
|
|
||||||
else
|
|
||||||
return 0;
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
start_bb(){
|
|
||||||
|
|
||||||
check_active
|
|
||||||
if [ $? != 0 ]; then
|
|
||||||
echo "beep_boot is already running"
|
|
||||||
exit 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
rm_hanging_instances
|
|
||||||
nohup ${BB_SCRIPTFILE} 2>&1 >/dev/null &
|
|
||||||
exit 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
stop_bb(){
|
|
||||||
check_active
|
|
||||||
if [ $? == 0 ]; then
|
|
||||||
echo "beep_boot is not running"
|
|
||||||
rm ${BB_TMPFILE}
|
|
||||||
exit 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm_hanging_instances
|
|
||||||
exit 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
|
|
||||||
start)
|
|
||||||
start_bb
|
|
||||||
exit 0;
|
|
||||||
;;
|
|
||||||
|
|
||||||
stop)
|
|
||||||
stop_bb;
|
|
||||||
exit 0;
|
|
||||||
;;
|
|
||||||
|
|
||||||
status)
|
|
||||||
check_active
|
|
||||||
if [ $? == 0 ]; then
|
|
||||||
echo "boot_beep is not up"
|
|
||||||
else
|
|
||||||
echo "boot_beep is up and running"
|
|
||||||
fi
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 {start|stop|status}"
|
|
||||||
exit 1;
|
|
||||||
esac
|
|
@ -1,84 +0,0 @@
|
|||||||
# /etc/inittab: init(8) configuration.
|
|
||||||
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $
|
|
||||||
|
|
||||||
# The default runlevel.
|
|
||||||
id:2:initdefault:
|
|
||||||
|
|
||||||
# Boot-time system configuration/initialization script.
|
|
||||||
# This is run first except when booting in emergency (-b) mode.
|
|
||||||
si::sysinit:/etc/init.d/rcS
|
|
||||||
|
|
||||||
# What to do in single-user mode.
|
|
||||||
~~:S:wait:/sbin/sulogin
|
|
||||||
|
|
||||||
# /etc/init.d executes the S and K scripts upon change
|
|
||||||
# of runlevel.
|
|
||||||
#
|
|
||||||
# Runlevel 0 is halt.
|
|
||||||
# Runlevel 1 is single-user.
|
|
||||||
# Runlevels 2-5 are multi-user.
|
|
||||||
# Runlevel 6 is reboot.
|
|
||||||
|
|
||||||
l0:0:wait:/etc/init.d/rc 0
|
|
||||||
l1:1:wait:/etc/init.d/rc 1
|
|
||||||
l2:2:wait:/etc/init.d/rc 2
|
|
||||||
l3:3:wait:/etc/init.d/rc 3
|
|
||||||
l4:4:wait:/etc/init.d/rc 4
|
|
||||||
l5:5:wait:/etc/init.d/rc 5
|
|
||||||
l6:6:wait:/etc/init.d/rc 6
|
|
||||||
# Normally not reached, but fallthrough in case of emergency.
|
|
||||||
z6:6:respawn:/sbin/sulogin
|
|
||||||
|
|
||||||
# What to do when CTRL-ALT-DEL is pressed.
|
|
||||||
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
|
|
||||||
|
|
||||||
# Action on special keypress (ALT-UpArrow).
|
|
||||||
#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work."
|
|
||||||
|
|
||||||
# What to do when the power fails/returns.
|
|
||||||
pf::powerwait:/etc/init.d/powerfail start
|
|
||||||
pn::powerfailnow:/etc/init.d/powerfail now
|
|
||||||
po::powerokwait:/etc/init.d/powerfail stop
|
|
||||||
|
|
||||||
# /sbin/getty invocations for the runlevels.
|
|
||||||
#
|
|
||||||
# The "id" field MUST be the same as the last
|
|
||||||
# characters of the device (after "tty").
|
|
||||||
#
|
|
||||||
# Format:
|
|
||||||
# <id>:<runlevels>:<action>:<process>
|
|
||||||
#
|
|
||||||
# Note that on most Debian systems tty7 is used by the X Window System,
|
|
||||||
# so if you want to add more getty's go ahead but skip tty7 if you run X.
|
|
||||||
#
|
|
||||||
|
|
||||||
1:235:respawn:/sbin/getty 38400 tty1
|
|
||||||
2:23:respawn:/sbin/getty 38400 tty2
|
|
||||||
3:23:respawn:/sbin/getty 38400 tty3
|
|
||||||
4:23:respawn:/sbin/getty 38400 tty4
|
|
||||||
5:23:respawn:/sbin/getty 38400 tty5
|
|
||||||
6:23:respawn:/sbin/getty 38400 tty6
|
|
||||||
|
|
||||||
##
|
|
||||||
## KatolaZ -- 20160604 -- Accessible runlevel
|
|
||||||
##
|
|
||||||
## Runlevel 4 is the "accessible" runlevel. Autologin configured on
|
|
||||||
## all the ttys. tty1 is root shell
|
|
||||||
##
|
|
||||||
|
|
||||||
a1:4:respawn:/sbin/getty -a root 38400 tty1
|
|
||||||
a2:4:respawn:/sbin/getty -a devuan 38400 tty2
|
|
||||||
a3:4:respawn:/sbin/getty -a devuan 38400 tty3
|
|
||||||
a4:4:respawn:/sbin/getty -a devuan 38400 tty4
|
|
||||||
a5:4:respawn:/sbin/getty -a devuan 38400 tty5
|
|
||||||
a6:4:respawn:/sbin/getty -a devuan 38400 tty6
|
|
||||||
|
|
||||||
# Example how to put a getty on a serial line (for a terminal)
|
|
||||||
#
|
|
||||||
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
|
|
||||||
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100
|
|
||||||
|
|
||||||
# Example how to put a getty on a modem line.
|
|
||||||
#
|
|
||||||
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
|||||||
|
|
||||||
Devuan Daedalus 5.0 -- Minimal Live
|
|
||||||
|
|
||||||
Devuan GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
|
|
||||||
permitted by applicable law.
|
|
||||||
|
|
||||||
|
|
@ -1 +0,0 @@
|
|||||||
../init.d/boot_beep
|
|
@ -1,2 +0,0 @@
|
|||||||
ctrl_interface=/run/wpa_supplicant
|
|
||||||
update_config=1
|
|
@ -1,51 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## live-config(7) - System Configuration Components
|
|
||||||
## Copyright (C) 2006-2015 Daniel Baumann <mail@daniel-baumann.ch>
|
|
||||||
##
|
|
||||||
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
|
|
||||||
## This is free software, and you are welcome to redistribute it
|
|
||||||
## under certain conditions; see COPYING for details.
|
|
||||||
|
|
||||||
|
|
||||||
#set -e
|
|
||||||
|
|
||||||
Init ()
|
|
||||||
{
|
|
||||||
# Checking if package is installed or already configured
|
|
||||||
if [ ! -e /var/lib/dpkg/info/openssh-server.list ] || \
|
|
||||||
[ -e /var/lib/live/config/openssh-server ]
|
|
||||||
then
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
/etc/init.d/haveged start
|
|
||||||
sleep 3
|
|
||||||
echo -n " openssh-server+haveged"
|
|
||||||
}
|
|
||||||
|
|
||||||
Config ()
|
|
||||||
{
|
|
||||||
for _PROTOCOL in dsa rsa ecdsa ed25519
|
|
||||||
do
|
|
||||||
if [ ! -e /etc/ssh/ssh_host_${_PROTOCOL}_key ] &&
|
|
||||||
grep -qs ssh_host_${_PROTOCOL}_key /etc/ssh/sshd_config
|
|
||||||
then
|
|
||||||
ssh-keygen -q -f /etc/ssh/ssh_host_${_PROTOCOL}_key -N "" -t ${_PROTOCOL}
|
|
||||||
|
|
||||||
_SSH="true"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# sed -i -e 's|#\(PasswordAuthentication\) yes|\1 no|' /etc/ssh/sshd_config
|
|
||||||
|
|
||||||
case "${_SSH}" in
|
|
||||||
true)
|
|
||||||
# Creating state file
|
|
||||||
touch /var/lib/live/config/openssh-server
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
Init
|
|
||||||
Config
|
|
@ -1,35 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## live-config(7) - System Configuration Components
|
|
||||||
## Copyright (C) 2006-2014 Daniel Baumann <mail@daniel-baumann.ch>
|
|
||||||
##
|
|
||||||
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
|
|
||||||
## This is free software, and you are welcome to redistribute it
|
|
||||||
## under certain conditions; see COPYING for details.
|
|
||||||
|
|
||||||
|
|
||||||
#set -e
|
|
||||||
|
|
||||||
|
|
||||||
Init ()
|
|
||||||
{
|
|
||||||
# Checking if package is installed or already configured
|
|
||||||
if [ ! -e /var/lib/dpkg/info/console-setup.list ] || \
|
|
||||||
[ -e /var/lib/live/config/console-setup ]
|
|
||||||
then
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo -n " console-setup "
|
|
||||||
}
|
|
||||||
|
|
||||||
Config ()
|
|
||||||
{
|
|
||||||
/etc/init.d/console-setup.sh start
|
|
||||||
|
|
||||||
# Creating state file
|
|
||||||
touch /var/lib/live/config/console-setup
|
|
||||||
}
|
|
||||||
|
|
||||||
Init
|
|
||||||
Config
|
|
@ -1,131 +0,0 @@
|
|||||||
|
|
||||||
Devuan GNU/Linux 5.0 "daedalus" *
|
|
||||||
|
|
||||||
(HTML version in README.html)
|
|
||||||
|
|
||||||
Welcome to the reliable world of Devuan GNU/Linux
|
|
||||||
|
|
||||||
This disc is one of several installation options for the Devuan
|
|
||||||
GNU+Linux [0] distribution. Devuan offers an extensive collection of
|
|
||||||
original and modified Debian as well as Devuan-specific packages. It
|
|
||||||
is a complete Operating System (OS) for your computer. And it is free
|
|
||||||
as in 'freedom'.
|
|
||||||
|
|
||||||
CONTENTS:
|
|
||||||
* Introduction
|
|
||||||
* Disc Choices
|
|
||||||
* Installation
|
|
||||||
* Getting Software
|
|
||||||
* Devuan Derivatives
|
|
||||||
* Report a Bug
|
|
||||||
* Devuan Resources
|
|
||||||
|
|
||||||
[0]: https://files.devuan.org/devuan_daedalus/
|
|
||||||
|
|
||||||
Introduction
|
|
||||||
============
|
|
||||||
|
|
||||||
An Operating System (OS) is a set of programs that provide an interface to
|
|
||||||
the computer's hardware. Resource, device, power and memory management belong
|
|
||||||
to the OS. The core of the OS in charge of operating the circuitry and
|
|
||||||
managing peripherals is called the kernel. Devuan uses the Linux kernel.
|
|
||||||
Most of the basic operating system tools come from the GNU project; hence the
|
|
||||||
name GNU+Linux.
|
|
||||||
|
|
||||||
Devuan is available for various kinds of computers, like PC compatible
|
|
||||||
hardware (i386 and amd64), ppc64el and ARM targets (armel, armhf, arm64) such
|
|
||||||
as the allwinner flavour of SBCs and some ASUS chromebooks.
|
|
||||||
|
|
||||||
Disc Choices
|
|
||||||
============
|
|
||||||
* netinstall
|
|
||||||
* server (4 CD set)
|
|
||||||
* desktop
|
|
||||||
* desktop-live
|
|
||||||
* minimal-live
|
|
||||||
|
|
||||||
Proprietary firmware is automatically installed on systems if needed.
|
|
||||||
To avoid installation of non-free firmware, you must choose one of the
|
|
||||||
Expert install options and you must also select a mirror.
|
|
||||||
|
|
||||||
Installation
|
|
||||||
============
|
|
||||||
|
|
||||||
Before you start, please read the Daedalus 5.0 Release Notes [0].
|
|
||||||
|
|
||||||
You can install Devuan GNU+Linux either as a dual (or multiple) boot
|
|
||||||
alongside your current OS or as the only OS on your computer.
|
|
||||||
|
|
||||||
An Installation Guide is included on this disc (English version)
|
|
||||||
docs/install-devuan.html and also online.
|
|
||||||
|
|
||||||
You can start the installation program easily by booting your computer
|
|
||||||
with CD/DVD or from USB. Note that some very old or very new systems
|
|
||||||
may not support this.
|
|
||||||
|
|
||||||
[0]: Release_notes_daedalus_5.0.txt
|
|
||||||
|
|
||||||
Getting Additional Software
|
|
||||||
===========================
|
|
||||||
|
|
||||||
After installing or upgrading, Devuan's packaging system can use CDs,
|
|
||||||
DVDs, local collections or networked servers (FTP, HTTP) to automatically
|
|
||||||
install software from .deb packages. This is done preferably with the
|
|
||||||
'apt' or 'aptitude' programs.
|
|
||||||
|
|
||||||
You can install packages from the commandline using apt-get. For example,
|
|
||||||
if you want to install the packages 'openssh-client' and 'xlennart', you
|
|
||||||
can give the command:
|
|
||||||
|
|
||||||
apt-get install openssh-client xlennart
|
|
||||||
|
|
||||||
Note that you don't have to enter the complete path or the '.deb'
|
|
||||||
extension. Apt will figure this out itself.
|
|
||||||
|
|
||||||
Or use aptitude for a full screen interactive selection of available
|
|
||||||
Devuan packages.
|
|
||||||
|
|
||||||
Software can also be installed using the Synaptic graphical interface.
|
|
||||||
|
|
||||||
Devuan Derivatives
|
|
||||||
==================
|
|
||||||
|
|
||||||
The default desktop provided by classic installer-iso images shouldn't
|
|
||||||
be considered the only way to use Devuan on the desktop. A growing number
|
|
||||||
of derivative distributions have already adopted Devuan as a base OS. When
|
|
||||||
considering Devuan, we do recommend taking derivatives into consideration.
|
|
||||||
They harness the power of our base distribution by targeting specific usage.
|
|
||||||
This is exactly what we mean to achieve with Devuan. A list of derivative
|
|
||||||
distros is kept at: https://www.devuan.org/os/devuan-distros
|
|
||||||
|
|
||||||
You are free to create and re-distribute CDs/DVDs of the Devuan
|
|
||||||
GNU+Linux Operating System as well as respins like these.
|
|
||||||
|
|
||||||
Report a Bug
|
|
||||||
============
|
|
||||||
|
|
||||||
This is an official release of the Devuan system. Please report any
|
|
||||||
bugs you find to the Devuan Bug Tracking System at https://bugs.devuan.org.
|
|
||||||
|
|
||||||
If you're reporting bugs against this disc or the installation system,
|
|
||||||
please also mention the version of this disc; this can be found in
|
|
||||||
the file /.disk/info.
|
|
||||||
|
|
||||||
Devuan Resources
|
|
||||||
================
|
|
||||||
|
|
||||||
Learn more about Devuan, Linux and Libre Software
|
|
||||||
|
|
||||||
* The Devuan homepage [1]
|
|
||||||
* The Dev1Galaxy web forum [2]
|
|
||||||
* Community Communication Channels [3]
|
|
||||||
* Twitter @DevuanOrg [5]
|
|
||||||
* The Linux Documentation Project [6]
|
|
||||||
* General Linux homepage [7]
|
|
||||||
|
|
||||||
[1]: https://devuan.org/
|
|
||||||
[2]: https://dev1galaxy.org
|
|
||||||
[3]: https://devuan.org/os/community
|
|
||||||
[4]: https://twitter.com/DevuanOrg
|
|
||||||
[5]: https://www.tldp.org/
|
|
||||||
[6]: https://www.linux.org/
|
|
@ -1,181 +0,0 @@
|
|||||||
=== Devuan Daedalus minimal live ====
|
|
||||||
|
|
||||||
This image is a full-featured console-only live Devuan Daedalus system,
|
|
||||||
with tons of command-line and curses utilities and a special focus on
|
|
||||||
accessibility. The system is a good starting point for a minimalist
|
|
||||||
environment, a powerful solution for rescue tasks, and a useful tool to
|
|
||||||
have in your pocket every day.
|
|
||||||
|
|
||||||
The image can be burnt on a CDROM or dd-ed on a USB stick.
|
|
||||||
|
|
||||||
The regular user is devuan/devuan. Become admin with root/toor.
|
|
||||||
|
|
||||||
Designed by Vincenzo 'Katolaz' Nicosia and maintained by fsmithred.
|
|
||||||
Homepage: http://kalos.mine.nu
|
|
||||||
Iso files built and signed by fsmithred (key id 0xA73823D3094C5620 on pgp.mit.edu
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
|
|
||||||
0) Boot options
|
|
||||||
1) Packages
|
|
||||||
2) Connecting to the Internet
|
|
||||||
3) About non-free firmware packages
|
|
||||||
4) Installing on a hard drive
|
|
||||||
5) Acknowledgements
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
0) == Boot options ==
|
|
||||||
|
|
||||||
There are several boot options available:
|
|
||||||
|
|
||||||
- std: default, with selection of framebuffer resolution
|
|
||||||
- access: accessible boot, with audible boot feedback and autologin
|
|
||||||
- std-toram: as "std", but load squashfs into RAM
|
|
||||||
- access-toram: as "access", but load squashfs into RAM
|
|
||||||
- no probe: disable apic/apm/dma/mce/smp
|
|
||||||
- memtest: perform a memory test (does not boot Linux)
|
|
||||||
|
|
||||||
The two accessible boot options ("access" and "access-toram",
|
|
||||||
respectively the second and the fourth on the boot menu) emit a "beep"
|
|
||||||
(CTRL+G) when they are selected, to be easily recognisable, and enter
|
|
||||||
into a dedicated runlevel (runlevel 4) which autologins root on tty1
|
|
||||||
and the user devuan on tty2-tty6. There is audible feedback on boot,
|
|
||||||
and a simple chime (C-E-G-E-C) signals the end of the boot.
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
1) == Packages ===
|
|
||||||
|
|
||||||
This image contains around 590 packages in total, and includes:
|
|
||||||
|
|
||||||
- _Base system_: bash, busybox, consoledata, GNU coreutils, dash,
|
|
||||||
dialog, locales, syslinux, sysvinit, util-linux-locales, zsh
|
|
||||||
|
|
||||||
- _Admin/Recovery_: debootstrap, entr, gddrescue, gdisk, htop,
|
|
||||||
iftop, iotop, mtr-tiny, multitail, ncdu, parted, wavemon,
|
|
||||||
wireless-tools, wpa_supplicant
|
|
||||||
|
|
||||||
- _Editors_: vim-tiny, zile (Emacs clone), nano
|
|
||||||
|
|
||||||
- _Networking_: ceni, curl, edbrowse, fetchmail, ftp, irssi,
|
|
||||||
lftp, links2, mcabber, minicom, mosh, msmtp, mutt, netcat,
|
|
||||||
openssh-client, openssh-server, procmail, rsstail, rsync, setnet,
|
|
||||||
telnet, tin, twidge, w3m, wget
|
|
||||||
|
|
||||||
- _Personal_productivity_: abook, aspell, clex, dvtm,
|
|
||||||
fbi/fbgs, fbterm, ghostscript, gpg, mc, parallel, sc, screen,
|
|
||||||
taskwarrior, tmux
|
|
||||||
|
|
||||||
- _Programming_ languages_: ANSI C (tcc + libc6-dev), Perl
|
|
||||||
(minimal), python (minimal), awk (gawk), guile
|
|
||||||
|
|
||||||
- _Games_: bastet, bombardier, bsdgames, cavezofphear, crawl,
|
|
||||||
curseofwar, empire, freesweep, gnuchess, greed, matanza, moria,
|
|
||||||
nethack, omega-rpg, open-invaders, pacman4console, pente, sudoku
|
|
||||||
|
|
||||||
- _Accessibility_: beep, brltty, espeak, espeakup, yasr
|
|
||||||
|
|
||||||
- _Multimedia_: caca-utils, fmtools, imagemagick, jhead,
|
|
||||||
moc, sox
|
|
||||||
|
|
||||||
- _Miscellanea_: cmatrix, cowsay, figlet, fortune-mod, gpm,
|
|
||||||
toilet, ttyrec
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
2) == Connecting to the Internet ==
|
|
||||||
|
|
||||||
This image ships with "setnet.sh", a simple dialog tool to setup
|
|
||||||
networking. setnet allows to configure both wired and wireless
|
|
||||||
connections, with static or DHCP-based IP assignment, and can help you
|
|
||||||
setting up wi-fi authentication to open, WPA Personal (WPA/PSK and
|
|
||||||
WPA2/PSK), and WPA Enterprise (WPA/EAP or WPA/TLS) networks.
|
|
||||||
|
|
||||||
Just run:
|
|
||||||
|
|
||||||
# setnet.sh
|
|
||||||
|
|
||||||
from a root console, and then select "Setup interfaces" for a list of
|
|
||||||
recognised devices. For more information please just:
|
|
||||||
|
|
||||||
$ man setnet
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
3) == About non-free firmware packages ==
|
|
||||||
|
|
||||||
Wireless firmware is already installed. All of the firmware packages
|
|
||||||
come from the non-free-firmware repository, however the non-free and contrib
|
|
||||||
repositories are not enabled. If you want to install packages from
|
|
||||||
non-free or contrib, you need to edit /etc/apt/sources.list or add them
|
|
||||||
through Synaptic Package Manager in the System menu.
|
|
||||||
|
|
||||||
We highly value the freedom of Devuan users, and we would rather
|
|
||||||
prefer none of them to be ever forced to use non-free software, at
|
|
||||||
all. However, the choice of including non-free firmware was dictated
|
|
||||||
by the necessity to facilitate new users in getting their hardware,
|
|
||||||
and especially wifi cards, working out of the box.
|
|
||||||
|
|
||||||
You can uninstall all the non-free firmware and remove the
|
|
||||||
non-free-firmware repository from the software sources by running:
|
|
||||||
|
|
||||||
/root/remove_firmware.sh
|
|
||||||
|
|
||||||
If you need to reinstall a firmware package, they are located in /firmware
|
|
||||||
and can be installed with:
|
|
||||||
|
|
||||||
dpkg -i <package-name>
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
4) == Installing on a hard drive ==
|
|
||||||
|
|
||||||
The recommended way of installing Devuan is by using one of the
|
|
||||||
installation media or the desktop-live image available at
|
|
||||||
http://files.devuan.org under the folders "installer-iso" and
|
|
||||||
"desktop-live", respectively.
|
|
||||||
|
|
||||||
However, it is also possible to install this minimal live image on a
|
|
||||||
hard disk by using the refractainstaller script shipped with it. I
|
|
||||||
tested the installation on qemu and on bare-metal, and it worked quite
|
|
||||||
well, but I cannot guarantee that it will work for you as well, so
|
|
||||||
please use refractainstaller AT YOUR OWN RISK but feel free to drop me
|
|
||||||
a line if it works.
|
|
||||||
|
|
||||||
Again, INSTALLING AN OPERATING SYSTEM ON AN EXISTING HARD DRIVE MIGHT
|
|
||||||
POTENTIALLY DESTROY EXISTING DATA, ESPECIALLY IF YOU DON'T KNOW
|
|
||||||
EXACTLY WHAT YOU ARE DOING. SO PLEASE BE CAREFUL, BACKUP YOUR DATA,
|
|
||||||
AND DO NOT COMPLAIN IF ANYTHING GOES WRONG. IT WILL BE JUST *YOUR*
|
|
||||||
FAULT.
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
5) == Acknowledgements ==
|
|
||||||
|
|
||||||
I thank the refracta team for providing refractasnapshot and
|
|
||||||
refractainstaller.
|
|
||||||
|
|
||||||
A very special thank goes to Gregory Nowak, Parham Doustdar, Jude
|
|
||||||
DaShiell, John G Heim, Rob, and all the people in the Linux-speakup
|
|
||||||
mailing list (http://www.linux-speakup.org/) for their encouragement
|
|
||||||
and support, and for providing invaluable feedback about
|
|
||||||
accessibility. Without their help, I couldn't have seen what was
|
|
||||||
needed in order to make the minimal live images easier to use for
|
|
||||||
visually-impaired users.
|
|
||||||
|
|
||||||
I feel indebted with all the people in the DNG Mailing List who have
|
|
||||||
provided feedback, suggestions, comments, and encouragement, and in
|
|
||||||
particular: aitor_czr, Boruch Baum, fsmithred, golinux, David Hare,
|
|
||||||
Irrwahn, Steve Litt, Daniel Reurich, Joel Roth, Ozi Traveller.
|
|
||||||
|
|
||||||
- KatolaZ
|
|
||||||
|
|
||||||
Comments, suggestions, criticisms, and bug reports are welcome, and
|
|
||||||
should be reported on the official Devuan Bug Tracking System:
|
|
||||||
|
|
||||||
http://bugs.devuan.org
|
|
||||||
|
|
||||||
=======================================
|
|
||||||
|
|
@ -1,255 +0,0 @@
|
|||||||
# Devuan 5 Daedalus Release Notes
|
|
||||||
|
|
||||||
## Index
|
|
||||||
|
|
||||||
- Introduction
|
|
||||||
- New in this Release
|
|
||||||
+ Rootless startx uses libseat1
|
|
||||||
+ Sway (wayland) GUI without elogind
|
|
||||||
- Getting Devuan 5 Daedalus
|
|
||||||
- Upgrading to Devuan 5 Daedalus
|
|
||||||
- Notes on Specific Packages and Issues
|
|
||||||
+ Consolekit
|
|
||||||
- Devuan Package Repositories
|
|
||||||
- Non-free-firmware
|
|
||||||
- Devuan package information pages
|
|
||||||
- Reporting bugs
|
|
||||||
|
|
||||||
|
|
||||||
## Introduction
|
|
||||||
|
|
||||||
This document includes technical notes relevant to Devuan 5 Daedalus.
|
|
||||||
|
|
||||||
Devuan 5 Daedalus is based on Debian 12 Bookworm. Much of the information in
|
|
||||||
[Debian's Release Notes](https://www.debian.org/releases/bookworm/releasenotes)
|
|
||||||
is relevant and useful. They should be consulted alongside this document.
|
|
||||||
|
|
||||||
More information and support on specific issues can be obtained by:
|
|
||||||
|
|
||||||
- subscribing to the [DNG mailing
|
|
||||||
list](https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng)
|
|
||||||
|
|
||||||
- visiting the [Devuan user forum](https://dev1galaxy.org)
|
|
||||||
|
|
||||||
- asking on one of the [Devuan IRC channels](irc://irc.libera.chat) on libera.chat:
|
|
||||||
|
|
||||||
* `#devuan` - general discussion and support about Devuan
|
|
||||||
* `#devuan-arm` - specific support for ARM
|
|
||||||
|
|
||||||
|
|
||||||
## New in this Release
|
|
||||||
### Rootless startx uses libseat1
|
|
||||||
|
|
||||||
xserver-xorg-core now uses libseat1 to control rootless startx and access to
|
|
||||||
input and video devices. This has several advantages, the most significant being
|
|
||||||
that it removes the dbus dependency from xserver-xorg-core.
|
|
||||||
|
|
||||||
libseat1 can use either seatd or elogind as a
|
|
||||||
backend. If you need to override the default choice (autodiscovery), use the
|
|
||||||
LIBSEAT_BACKEND environment variable.
|
|
||||||
|
|
||||||
If you are using seatd as the backend, ensure the user is a member of the video group.
|
|
||||||
|
|
||||||
This is only relevant to running startx as a user, xorg run as root by a display
|
|
||||||
manager is unaffected.
|
|
||||||
|
|
||||||
### Wayland GUI without elogind
|
|
||||||
|
|
||||||
Users can now enjoy a wayland desktop without elogind by installing
|
|
||||||
libpam-ck-connector, sway and seatd.
|
|
||||||
|
|
||||||
Ensure the relevant user is a member of the `video` group and run sway from
|
|
||||||
the terminal.
|
|
||||||
|
|
||||||
## Getting Devuan 5 Daedalus
|
|
||||||
|
|
||||||
Devuan 5 Daedalus is available for i386, amd64, armel, armhf, arm64 and ppc64el
|
|
||||||
architectures.
|
|
||||||
|
|
||||||
Installer isos and live CDs for i386 and amd64 are [available for
|
|
||||||
download](http://files.devuan.org/devuan_daedalus/) at
|
|
||||||
http://files.devuan.org/devuan_daedalus/.
|
|
||||||
|
|
||||||
Mini isos and other specialist installation media for all release architectures
|
|
||||||
are available from
|
|
||||||
http://deb.devuan.org/devuan/dists/daedalus/main/installer-{ARCH}/current/images/.
|
|
||||||
|
|
||||||
Please consider using one of the many [mirrors](https://devuan.org/get-devuan),
|
|
||||||
listed at [https://devuan.org/get-devuan](https://devuan.org/get-devuan).
|
|
||||||
|
|
||||||
Detailed instructions on how to use each image are available in the
|
|
||||||
corresponding `README.txt` file. The `SHA256SUMS` of each set of images is
|
|
||||||
signed by the developer in charge of the build. The fingerprints of [GPG keys of
|
|
||||||
all Devuan developers]( https://devuan.org/os/team) are listed at
|
|
||||||
[https://devuan.org/os/team](https://devuan.org/os/team).
|
|
||||||
|
|
||||||
In order to check that the images you downloaded are genuine and not
|
|
||||||
corrupted, you should:
|
|
||||||
|
|
||||||
- download the image(s)
|
|
||||||
- download the corresponding `SHA256SUMS` and `SHA256SUMS.asc` files in the same
|
|
||||||
folder
|
|
||||||
- verify the checksums by running:
|
|
||||||
|
|
||||||
> `sha256sum -c SHA256SUMS`
|
|
||||||
|
|
||||||
(it could complain about missing files, but should show an "OK" close to the
|
|
||||||
images you have actually downloaded)
|
|
||||||
|
|
||||||
- verify the signature running:
|
|
||||||
|
|
||||||
> `gpg --no-default-keyring --keyring ./devuan-devs.gpg --verify SHA256SUMS.asc`
|
|
||||||
|
|
||||||
(assuming that you have put the GPG keys in the keyring named
|
|
||||||
`devuan-devs.gpg`. YMMV)
|
|
||||||
|
|
||||||
The `devuan-devs.gpg` keyring is provided only for convenience. The most correct
|
|
||||||
procedure to verify that the signatures are authentic is by downloading the
|
|
||||||
relevant public keys from a trusted keyserver, double-check that the fingerprint
|
|
||||||
of the key matches that of the developer reported on
|
|
||||||
[https://devuan.org/os/team](https://devuan.org/os/team) and then use that key
|
|
||||||
for verification.
|
|
||||||
|
|
||||||
### Docker images
|
|
||||||
|
|
||||||
Official Devuan Docker container images are [available from the Docker Hub](https://hub.docker.com/u/devuan). These images are updated as needed for all maintained releases. To get the latest image for Daedalus execute
|
|
||||||
|
|
||||||
> `docker pull devuan/devuan:daedalus`
|
|
||||||
|
|
||||||
For further details on the images, please consult the information on Docker Hub.
|
|
||||||
|
|
||||||
## Upgrading to Devuan 5 Daedalus
|
|
||||||
|
|
||||||
A direct and easy upgrade path from Devuan Chimaera and a migration path from
|
|
||||||
Debian Bookworm to Devuan 5 Daedalus are [available](
|
|
||||||
https://devuan.org/os/install) at
|
|
||||||
[https://devuan.org/os/install](https://devuan.org/os/install).
|
|
||||||
|
|
||||||
If you already have Daedalus installed, run this command to get to the current
|
|
||||||
release version:
|
|
||||||
|
|
||||||
> `apt-get update && apt-get upgrade && apt-get dist-upgrade`
|
|
||||||
|
|
||||||
## Notes on Specific Packages and Issues
|
|
||||||
|
|
||||||
### Consolekit
|
|
||||||
|
|
||||||
Upstream maintenance of
|
|
||||||
[Consolekit2](https://github.com/ConsoleKit2/ConsoleKit2) has
|
|
||||||
resumed. [Consolekit](https://pkginfo.devuan.org/consolekit) is therefore a good
|
|
||||||
alternative to [elogind](https://pkginfo.devuan.org/elogind) for session
|
|
||||||
tracking and management.
|
|
||||||
|
|
||||||
## Devuan Package Repositories
|
|
||||||
|
|
||||||
Thanks to the support of many volunteers and donors, Devuan has a network of
|
|
||||||
package repository mirrors. The mirror network is accessible using the FQDN
|
|
||||||
[deb.devuan.org](http://deb.devuan.org).
|
|
||||||
|
|
||||||
|
|
||||||
deb http://deb.devuan.org/merged daedalus main
|
|
||||||
deb http://deb.devuan.org/merged daedalus-security main
|
|
||||||
deb http://deb.devuan.org/merged daedalus-updates main
|
|
||||||
deb http://deb.devuan.org/devuan daedalus-proposed main
|
|
||||||
|
|
||||||
|
|
||||||
Along with the above URLs, the repositories are also accessible
|
|
||||||
using the Tor network, by using our hidden service address:
|
|
||||||
|
|
||||||
deb tor+http://devuanfwojg73k6r.onion/merged daedalus main
|
|
||||||
deb tor+http://devuanfwojg73k6r.onion/merged daedalus-security main
|
|
||||||
deb tor+http://devuanfwojg73k6r.onion/merged daedalus-updates main
|
|
||||||
deb tor+http://devuanfwojg73k6r.onion/devuan daedalus-proposed main
|
|
||||||
|
|
||||||
More information is available at
|
|
||||||
[https://devuan.org/os/packages](https://devuan.org/os/packages).
|
|
||||||
|
|
||||||
All the mirrors contain the full Devuan package repository (all the Devuan
|
|
||||||
releases and all the suites). They are synced every 30 minutes from the main
|
|
||||||
Devuan package repository (`pkgmaster.devuan.org`) and are continuously checked
|
|
||||||
for sanity, integrity, and consistency. The package repository network is
|
|
||||||
accessed through a DNS Round-Robin.
|
|
||||||
|
|
||||||
The updated list of mirrors belonging to the network is available at
|
|
||||||
[http://pkgmaster.devuan.org/mirror_list.txt](http://pkgmaster.devuan.org/mirror_list.txt).
|
|
||||||
|
|
||||||
If you wish to use a geographically local mirror, you can use
|
|
||||||
http://${CC}.deb.devuan.org where ${CC} is the CountryCode. If no mirror is
|
|
||||||
available in that country the URL will still work, although there will be no
|
|
||||||
advantage.
|
|
||||||
|
|
||||||
Users could also opt for directly accessing one of the mirrors in that
|
|
||||||
list using the corresponding BaseURL.
|
|
||||||
|
|
||||||
IMPORTANT NOTE: The package mirrors at [deb.devuan.org](http://deb.devuan.org)
|
|
||||||
are signed with the following GPG key:
|
|
||||||
|
|
||||||
pub rsa2048 2014-12-02 [SC]
|
|
||||||
72E3CB773315DFA2E464743D94532124541922FB
|
|
||||||
uid Devuan Repository (Primary Devuan signing key) <repository@devuan.org>
|
|
||||||
sub rsa2048 2014-12-02 [E]
|
|
||||||
sub rsa4096 2016-04-26 [S]
|
|
||||||
|
|
||||||
The key is included in the current [devuan-keyring package](http://pkginfo.devuan.org/devuan-keyring).
|
|
||||||
|
|
||||||
|
|
||||||
## Non-free firmware
|
|
||||||
|
|
||||||
All Devuan 5 Daedalus installation media make non-free firmware packages
|
|
||||||
available at install time. In the majority of the cases, these packages are
|
|
||||||
needed (and will be installed) only if your hardware (usually wifi adapter)
|
|
||||||
requires them. It is possible to avoid the automatic installation and loading of
|
|
||||||
needed non-free firmware by choosing the "Expert install" option in the
|
|
||||||
installation menu.
|
|
||||||
|
|
||||||
Devuan 5 Daedalus desktop-live and minimal-live images come with non-free
|
|
||||||
firmware packages pre-installed. You have the option of removing those non-free
|
|
||||||
firmware packages from the desktop-live and minimal-live after boot, using the
|
|
||||||
`remove_firmware.sh` script available under `/root`.
|
|
||||||
|
|
||||||
|
|
||||||
## Devuan package information pages
|
|
||||||
|
|
||||||
Devuan provides a service to display information about all the packages
|
|
||||||
available in Devuan. This can be accessed at [https://pkginfo.devuan.org](
|
|
||||||
https://pkginfo.devuan.org).
|
|
||||||
|
|
||||||
It is possible to search for package names matching a set of keywords, and to
|
|
||||||
visualise the description, dependencies, suggestions and recommendations of each
|
|
||||||
package.
|
|
||||||
|
|
||||||
## Reporting bugs
|
|
||||||
|
|
||||||
No piece of software is perfect. And acknowledging this fact is the
|
|
||||||
first step towards improving our software base.
|
|
||||||
|
|
||||||
Devuan strongly believes in the cooperation of the community to find, report and
|
|
||||||
solve issues. If you think you have found a bug in a Devuan package, please
|
|
||||||
report it to [https://bugs.devuan.org](https://bugs.devuan.org).
|
|
||||||
|
|
||||||
The procedure to report bugs is quite simple: install and run `reportbug`, a
|
|
||||||
tool that will help you compiling the bug report and including any relevant
|
|
||||||
information for the maintainers.
|
|
||||||
|
|
||||||
`reportbug` assumes than you have a properly configured Mail User Agent that can
|
|
||||||
send emails (and that it knows about). If this is not the case, you can still
|
|
||||||
prepare your bug report with `reportbug`, save it (by default reportbug will
|
|
||||||
save the report under `/tmp`), and then use it as a template for an email to
|
|
||||||
[submit@bugs.devuan.org](mailto:submit@bugs.devuan.org).
|
|
||||||
|
|
||||||
(NOTE: Devuan does not provide an open SMTP relay for `reportbug`
|
|
||||||
yet. If you don't know what this is about, you can safely ignore this
|
|
||||||
information).
|
|
||||||
|
|
||||||
When the bug report is processed, you will receive an email
|
|
||||||
confirmation indicating the number associated to the report.
|
|
||||||
|
|
||||||
Before reporting a bug, please check whether the very same problem has
|
|
||||||
been already experienced and reported by other users.
|
|
||||||
|
|
||||||
In general, issues with Devuan's own forked packages should be reported to
|
|
||||||
[Devuan's BTS](https://bugs.devuan.org). For unforked packages, bugs should
|
|
||||||
usually be fixed in Debian. `reportbug` handles this and sends to the correct
|
|
||||||
BTS by default. You can override the choice that `reportbug` offers and report
|
|
||||||
issues directly to [Debian's BTS](https://bugs.debian.org) by using the `-B
|
|
||||||
debian` option.
|
|
@ -1,38 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
##
|
|
||||||
## Remove all the non-free firmware packages
|
|
||||||
##
|
|
||||||
|
|
||||||
FIRMWARE_PKGS="\
|
|
||||||
|
|
||||||
atmel-firmware \
|
|
||||||
bluez-firmware \
|
|
||||||
dahdi-firmware-nonfree \
|
|
||||||
firmware-amd-graphics \
|
|
||||||
firmware-atheros \
|
|
||||||
firmware-bnx2 \
|
|
||||||
firmware-bnx2x \
|
|
||||||
firmware-brcm80211 \
|
|
||||||
firmware-cavium \
|
|
||||||
firmware-intel-sound \
|
|
||||||
firmware-iwlwifi \
|
|
||||||
firmware-libertas \
|
|
||||||
firmware-linux-free \
|
|
||||||
firmware-linux-nonfree \
|
|
||||||
firmware-misc-nonfree \
|
|
||||||
firmware-myricom \
|
|
||||||
firmware-netxen \
|
|
||||||
firmware-qlogic \
|
|
||||||
firmware-realtek \
|
|
||||||
firmware-ti-connectivity \
|
|
||||||
firmware-zd1211
|
|
||||||
"
|
|
||||||
|
|
||||||
echo "=== removing unwanted firmware packages
|
|
||||||
=== and non-free-firmware sources
|
|
||||||
|
|
||||||
=== Please run 'apt update' to refresh the package cache."
|
|
||||||
|
|
||||||
apt-get autoremove --purge ${FIRMWARE_PKGS}
|
|
||||||
sed -i 's/non-free-firmware//g' /etc/apt/sources.list
|
|
@ -1,263 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# This file is part of microdevuan, a set of scripts to create minimal
|
|
||||||
# devuan live images
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or (at
|
|
||||||
# your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but
|
|
||||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
# General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# (c) KatolaZ <katolaz@freaknet.org> (2016)
|
|
||||||
#
|
|
||||||
# ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## This will create a minimal initrd without too much garbage
|
|
||||||
##
|
|
||||||
## KatolaZ -- 2016-05-14
|
|
||||||
##
|
|
||||||
##
|
|
||||||
|
|
||||||
if [ $# -le 3 ]; then
|
|
||||||
echo "Usage: $0 <initrd_orig> <initrd_new> <initrd_compression> <initrd_micro>"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Config options --
|
|
||||||
##
|
|
||||||
|
|
||||||
OLDPWD=`pwd`
|
|
||||||
INITRD_ORIG=$1
|
|
||||||
INITRD_NEW=$2
|
|
||||||
INITRD_COMPR=$3
|
|
||||||
INITRD_MICRO=$4
|
|
||||||
|
|
||||||
|
|
||||||
WORK_DIR=/tmp/initrd_new
|
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## unpack the current initrd image
|
|
||||||
##
|
|
||||||
|
|
||||||
if [ ! -d ${WORK_DIR} ]; then
|
|
||||||
mkdir ${WORK_DIR}
|
|
||||||
else
|
|
||||||
rm -rf ${WORKDIR}/*
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Determine how the original initrd was compressed...
|
|
||||||
##
|
|
||||||
|
|
||||||
INITRD_FILE=`file -L ${INITRD_ORIG}`
|
|
||||||
|
|
||||||
if [ `echo ${INITRD_FILE} | grep gzip | wc -l` == 1 ]; then
|
|
||||||
INITRD_UNCOMPRESS=zcat;
|
|
||||||
elif [ `echo ${INITRD_FILE} | grep bzip2 | wc -l` == 1 ]; then
|
|
||||||
INITRD_UNCOMPRESS=bzcat;
|
|
||||||
elif [ `echo ${INITRD_FILE} | grep " xz " | wc -l` == 1 ]; then
|
|
||||||
INITRD_UNCOMPRESS=xzcat;
|
|
||||||
else
|
|
||||||
echo "Unable to determine the format of ${INITRD_ORIG} -- Aborting!!!"
|
|
||||||
exit 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo -n "===> Uncompressing the original init using ${INITRD_UNCOMPRESS}..."
|
|
||||||
|
|
||||||
cd ${WORK_DIR}; `${INITRD_UNCOMPRESS} ${INITRD_ORIG} | cpio -id`
|
|
||||||
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
MODULE_DIRS=$(ls lib/modules/)
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Remove unnecessary ethernet modules -- we already know
|
|
||||||
## that the root partition is not over nfs...
|
|
||||||
##
|
|
||||||
|
|
||||||
for M in ${MODULE_DIRS}; do
|
|
||||||
|
|
||||||
echo "===> Removing drivers for kernel version ${M} <==="
|
|
||||||
|
|
||||||
MODULE_DIR="lib/modules/${M}/kernel"
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary network drivers..."
|
|
||||||
|
|
||||||
##rm -rf ${MODULE_DIR}/drivers/net/ethernet/*
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/net/*
|
|
||||||
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Remove unnecessary filesystem support
|
|
||||||
##
|
|
||||||
##
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary filesystems drivers..."
|
|
||||||
|
|
||||||
##rm -rf ${MODULE_DIR}/fs/nfs
|
|
||||||
rm -rf ${MODULE_DIR}/fs/xfs
|
|
||||||
rm -rf ${MODULE_DIR}/fs/btrfs
|
|
||||||
##rm -rf ${MODULE_DIR}/fs/ext4
|
|
||||||
##rm -rf ${MODULE_DIR}/fs/fat
|
|
||||||
rm -rf ${MODULE_DIR}/fs/fuse
|
|
||||||
rm -rf ${MODULE_DIR}/fs/hfs
|
|
||||||
rm -rf ${MODULE_DIR}/fs/hfsplus
|
|
||||||
rm -rf ${MODULE_DIR}/fs/reiserfs
|
|
||||||
rm -rf ${MODULE_DIR}/fs/ntfs
|
|
||||||
rm -rf ${MODULE_DIR}/fs/jfs
|
|
||||||
rm -rf ${MODULE_DIR}/fs/jffs2
|
|
||||||
rm -rf ${MODULE_DIR}/fs/udf
|
|
||||||
##rm -rf ${MODULE_DIR}/fs/nls
|
|
||||||
rm -rf ${MODULE_DIR}/fs/nfs_common
|
|
||||||
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Remove the lftp and qla2xxx drivers (FibreChannel)
|
|
||||||
##
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary SCSI drivers..."
|
|
||||||
|
|
||||||
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/lpfc
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/qla2xxx
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/fnic
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/csiostor
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/isci
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/cxgbi
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/megaraid
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/mpt2sas
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/mpt3sas
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/pm8001
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/qla4xxx
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/aic7xxx
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/scsi/bfa
|
|
||||||
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary RAID drivers..."
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/md
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
||||||
## remove the gpu driver folder altogether
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary GPU drivers..."
|
|
||||||
|
|
||||||
rm -rf ${MODULE_DIR}/drivers/gpu/
|
|
||||||
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary firmware..."
|
|
||||||
|
|
||||||
rm -rf lib/firmware/
|
|
||||||
rm -rf ${MODULE_DIR}/firmware/
|
|
||||||
#rm -rf ${MODULE_DIR}/firmware/radeon/
|
|
||||||
#rm -rf ${MODULE_DIR}/firmware/cxgb4
|
|
||||||
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
|
|
||||||
done
|
|
||||||
|
|
||||||
##
|
|
||||||
## Remove unnecessary stuff in /bin and /sbin
|
|
||||||
##
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary stuff in /bin and /sbin..."
|
|
||||||
|
|
||||||
#rm -rf bin/rsync bin/wget
|
|
||||||
#rm -rf sbin/acpid
|
|
||||||
#rm -rf lib/systemd
|
|
||||||
|
|
||||||
rm sbin/lvm
|
|
||||||
rm sbin/vgchange
|
|
||||||
rm sbin/mdadm
|
|
||||||
rm sbin/mdmon
|
|
||||||
rm sbin/dmsetup
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Maybe we might remove everything in usr/lib
|
|
||||||
##
|
|
||||||
|
|
||||||
echo -n "===> Removing unnecessary libraries in /usr/lib..."
|
|
||||||
|
|
||||||
##rm -rf usr/lib/*
|
|
||||||
|
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
##
|
|
||||||
## Set lvm not to use udev in initramfs to avoid boot delays.
|
|
||||||
##
|
|
||||||
|
|
||||||
sudo sed -i 's/multipath_component_detection = 1/multipath_component_detection = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/md_component_detection = 1/md_component_detection = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udev_sync = 1/udev_sync = 0/' etc/lvm/lvm.conf
|
|
||||||
sudo sed -i 's/udev_rules = 1/udev_rules = 0/' etc/lvm/lvm.conf
|
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Now we create the micro initrd
|
|
||||||
##
|
|
||||||
|
|
||||||
cat <<EOF
|
|
||||||
*************************************************************************
|
|
||||||
** WARNING!!!! DO NOT INTERRUPT THE CREATION OF INITRD OR YOUR IMAGE **
|
|
||||||
** WILL COME OUT COMPLETELY BROKEN (AND YOU MIGHT NEED TO START FROM **
|
|
||||||
** SCRATCH!!!) **
|
|
||||||
*************************************************************************
|
|
||||||
EOF
|
|
||||||
|
|
||||||
|
|
||||||
echo -n "===> Creating new initrd '${INITRD_MICRO}' using ${INITRD_COMPR}..."
|
|
||||||
|
|
||||||
find . | cpio -H newc -o | `echo ${INITRD_COMPR}` > ${INITRD_MICRO}
|
|
||||||
|
|
||||||
echo -n "done!"
|
|
||||||
|
|
||||||
####
|
|
||||||
##
|
|
||||||
## Remove the directory
|
|
||||||
##
|
|
||||||
|
|
||||||
cd ${OLDPWD} && rm -rf ${WORK_DIR}
|
|
||||||
|
|
||||||
exit 0
|
|
@ -94,7 +94,6 @@ iso_write_isolinux_cfg() {
|
|||||||
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
# uefi code borrowed and adapted from David Hare, who borrowed and adapted it
|
||||||
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
# from similar scripts by Colin Watson and Patrick J. Volkerding.
|
||||||
iso_make_efi() {
|
iso_make_efi() {
|
||||||
set -x
|
|
||||||
fn iso_make_efi
|
fn iso_make_efi
|
||||||
req=(workdir efi_work strapdir)
|
req=(workdir efi_work strapdir)
|
||||||
ckreq || return 1
|
ckreq || return 1
|
||||||
@ -205,7 +204,7 @@ EOF
|
|||||||
sudo rsync -avx "$efi_work"/boot binary/
|
sudo rsync -avx "$efi_work"/boot binary/
|
||||||
sudo rsync -avx "$efi_work"/efi binary/
|
sudo rsync -avx "$efi_work"/efi binary/
|
||||||
popd
|
popd
|
||||||
set +x
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -310,15 +309,14 @@ rm -f /var/lib/dbus/machine-id
|
|||||||
# echo "needs_root_rights=yes" >> /etc/X11/Xwrapper.config
|
# echo "needs_root_rights=yes" >> /etc/X11/Xwrapper.config
|
||||||
|
|
||||||
# Disable contrib and non-free after installing firmware.
|
# Disable contrib and non-free after installing firmware.
|
||||||
#sed -i 's/ contrib//g' /etc/apt/sources.list
|
sed -i 's/ contrib//g' /etc/apt/sources.list
|
||||||
#sed -i 's/ non-free-firmware//g' /etc/apt/sources.list
|
sed -i 's/ non-free//g' /etc/apt/sources.list
|
||||||
|
|
||||||
## Disable proposed-updates
|
## Disable updates
|
||||||
#sed -i '/-proposed-updates/s/^/#/g' /etc/apt/sources.list
|
sed -i '/-updates/s/^/## /g' /etc/apt/sources.list
|
||||||
|
|
||||||
## replace pkgmaster with deb.devuan.org
|
## replace pkgmaster with deb.devuan.org
|
||||||
sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
|
sed -i 's/pkgmaster/deb/g'
|
||||||
apt update
|
|
||||||
|
|
||||||
# for amd64 only at this time (for bios/uefi compat)
|
# for amd64 only at this time (for bios/uefi compat)
|
||||||
if ls /boot | grep amd64 ; then
|
if ls /boot | grep amd64 ; then
|
||||||
@ -326,18 +324,12 @@ if ls /boot | grep amd64 ; then
|
|||||||
apt-get download grub-efi-ia32
|
apt-get download grub-efi-ia32
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# download firmware packages
|
|
||||||
mkdir /firmware
|
|
||||||
cd /firmware
|
|
||||||
apt download atmel-firmware bluez-firmware dahdi-firmware-nonfree firmware-amd-graphics firmware-atheros firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-cavium firmware-intel-sound firmware-iwlwifi firmware-libertas firmware-linux-free firmware-linux-nonfree firmware-misc-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-realtek firmware-ti-connectivity firmware-zd1211
|
|
||||||
cd -
|
|
||||||
|
|
||||||
## insert service boot_beep
|
## insert service boot_beep
|
||||||
insserv boot_beep
|
insserv boot_beep
|
||||||
|
|
||||||
## Configure framebuffer
|
## Configure framebuffer
|
||||||
setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
|
setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
|
||||||
chmod u+s /usr/bin/fbterm
|
chmod u+s /usr/bin/fbterm
|
||||||
|
|
||||||
## Make initramfs
|
## Make initramfs
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit e4c3e7a71de4e9a2bf0911f2686d8d12a68fc415
|
Subproject commit 9fdacccb71f25df19365b1a45a226e2c5f9d9a87
|
BIN
screenshot.png
Normal file
After Width: | Height: | Size: 1.8 MiB |
Before Width: | Height: | Size: 702 KiB |
Before Width: | Height: | Size: 2.1 MiB |