Compare commits

...

35 Commits

Author SHA1 Message Date
frangamer1892
86a52f4fb2 add devuan to ID_LIKE 2024-06-04 12:43:08 +00:00
frangamer1892
211d0d4b2d update issue list 2023-12-07 20:47:53 +00:00
frangamer1892
95232b47c2 correct "git-core" to "git" 2023-12-07 20:13:38 +00:00
6148ed1b03 update submodule 2023-12-07 17:00:06 -03:00
24c33c4292 tweak install process 2023-12-07 16:52:19 -03:00
frangamer1892
7d54f9ea35 update known issues 2023-12-07 19:30:30 +00:00
d6a4d6f1ee dump ver and gnome-disk-utility 2023-12-07 16:26:36 -03:00
ac2c249b10 fix apparmor & title bars 2023-12-07 14:44:52 -03:00
frangamer1892
b7fe9c60ae add issue 2023-12-07 00:56:17 +00:00
frangamer1892
81cc99eb9a update readme 2023-12-07 00:55:22 +00:00
frangamer1892
66a9125bd4 reflect screenshot changes on readme 2023-12-04 03:14:54 +00:00
frangamer1892
becf247e16 delete old screenshot :( 2023-12-04 03:13:04 +00:00
frangamer1892
f558d61739 add new screenshots! 2023-12-04 03:12:47 +00:00
c9b5cfce2c update git package 2023-12-03 22:20:18 -03:00
6dacca2ae9 update lib ver 2023-12-03 22:17:36 -03:00
frangamer1892
2dd6282d5a add git to base 2023-12-04 00:27:05 +00:00
62ed9bc583 replace leftover names 2023-12-03 21:11:29 -03:00
b9531d964d add os release info 2023-12-03 21:05:51 -03:00
3d4da98549 add dconf db 2023-12-03 19:23:43 -03:00
60a379cf1e fix inaccuracies from readme 2023-12-03 18:42:03 -03:00
frangamer1892
535bffb45d update zsh instructions 2023-12-03 20:34:24 +00:00
cba49324c2 update libdevuansdk ver 2023-12-03 17:21:31 -03:00
frangamer1892
5aaf559a5b Remove fontsnaps 2023-12-03 17:32:05 +00:00
55d455075e prepare for Daedalus release 2023-12-03 14:08:25 -03:00
fb771eceaa update config and sdk repo 2023-12-03 12:50:42 -03:00
293a0423f1 fix merge conflicts 2023-12-03 12:25:32 -03:00
fsmithred
d895bf7551 Add blend files for Daedalus. 2023-12-03 08:20:29 -05:00
frangamer1892
9b630da379 update broken link (again) 2023-06-26 02:23:49 +00:00
frangamer1892
f3ea3c839c fix broken link 2023-06-26 02:23:11 +00:00
fsmithred
f4e6e16381 Move libdevuansdk from github to git.devuan 2023-01-31 17:57:03 -05:00
frangamer1892
86b4f7a46e Update README_desktop-live.txt 2022-12-07 16:35:49 +00:00
frangamer1892
5ec9b29c68 Remove fontsnaps 2022-12-07 16:29:55 +00:00
d75f9e8117 Edit README files 2022-12-07 16:15:59 -03:00
3c3019c49e Remove memtest 2022-12-07 16:09:28 -03:00
4af0634fd3 Change version 2022-12-07 16:05:35 -03:00
66 changed files with 9121 additions and 45 deletions

1
.gitmodules vendored
View File

@ -1,3 +1,4 @@
[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

View File

@ -3,9 +3,14 @@ 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://notindiegames.tk/pub/delphinium/ Releases at: https://gnlug.org/pub/isos/delphinium/ (user delphinium, password delphinium)
![Screenshot](https://git.devuan.org/frangamer1892/delphinium-sdk/raw/branch/master/screenshot.png) ![Screenshot Sys](https://git.devuan.org/frangamer1892/delphinium-sdk/raw/branch/master/screenshot_sys.png)
![Screenshot Tux](https://git.devuan.org/frangamer1892/delphinium-sdk/raw/branch/master/screenshot_tux.png)
## Known issues with the latest release
- None! If you happen to find any, please report them over on the Issues tab.
## Requirements ## Requirements
@ -41,11 +46,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 version, without preloaded config files so it doesn't cause vanilla session, without preloaded config files so it doesn't cause
issues with libdevuansdk/delphinium-sdk functions. issues with libdevuansdk/delphinium-sdk functions.
``` ```
zsh zsh -f
source sdk source sdk
``` ```

View File

@ -53,7 +53,6 @@ extra_packages+=(
task-desktop task-desktop
task-laptop task-laptop
task-mate-desktop task-mate-desktop
fontsnaps
# task-print-server ## no package # task-print-server ## no package
# popularity-contest # popularity-contest
refractainstaller-base refractainstaller-base

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -1,5 +1,5 @@
Delphinium GNU/Linux 0.0.1 "chimaera" * Delphinium GNU/Linux 0.0.2 "chimaera" *
Welcome to the reliable world of Delphinium GNU/Linux Welcome to the reliable world of Delphinium GNU/Linux
@ -63,3 +63,4 @@
This is an official release of the Delphinium system. Please report any This is an official release of the Delphinium system. Please report any
bugs you find to our github repository at bugs you find to our github repository at
https://git.devuan.org/frangamer1892/delphinium-sdk/issues. https://git.devuan.org/frangamer1892/delphinium-sdk/issues.

View File

@ -1,7 +1,7 @@
DELPHINIUM CHIMAERA DESKTOP-LIVE DELPHINIUM CHIMAERA DESKTOP-LIVE
This is Delphinium 0.0.1 (Chimaera) desktop-live. This is Delphinium 0.0.2 (Chimaera) desktop-live.
User name: delphinium Password: delphinium User name: delphinium Password: delphinium
Admin name: root Password: toor Admin name: root Password: toor
@ -136,11 +136,12 @@ See /usr/share/doc/refractasnapshot-base/README.gz for details.
BUG REPORTS AND SUPPORT LINKS BUG REPORTS AND SUPPORT LINKS
Comments, suggestions, criticisms, and bug reports are welcome. Comments, suggestions, criticisms, and bug reports
Please report bugs on our github: are welcome on our github:
https://git.devuan.org/frangamer1892/delphinium-sdk/issues https://git.devuan.org/frangamer1892/delphinium-sdk/issues
Devuan Support: Devuan Support:
IRC Channel on libera.chat: #devuan IRC Channel on libera.chat: #devuan
Support forum: dev1galaxy.org Support forum: dev1galaxy.org

View File

@ -5,10 +5,8 @@ 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"
release="chimaera" version="1.1.0"
version="0.0.1"
username="delphinium" username="delphinium"
userpass="delphinium" userpass="delphinium"
default_shell="/bin/bash" default_shell="/bin/bash"
@ -40,8 +38,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://pkgmaster.devuan.org/merged" mirror="http://deb.devuan.org/merged"
section="main contrib non-free" section="main non-free-firmware"
#base_packages_option=(--no-install-recommends) #base_packages_option=(--no-install-recommends)

View File

@ -0,0 +1,60 @@
#!/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"

View File

@ -0,0 +1,58 @@
#!/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"

View File

@ -0,0 +1,126 @@
#!/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+=(
)

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -0,0 +1,16 @@
# 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'

View File

@ -0,0 +1,2 @@
Delphinium GNU/Linux daedalus \n \l

View File

@ -0,0 +1 @@
Delphinium GNU/Linux daedalus

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
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.

View File

@ -0,0 +1 @@
../usr/lib/os-release

View File

@ -0,0 +1,296 @@
# 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

View File

@ -0,0 +1,70 @@
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.

View File

@ -0,0 +1,131 @@
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

View File

@ -0,0 +1,9 @@
[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;

View File

@ -0,0 +1,33 @@
#!/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}

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

View File

@ -0,0 +1,10 @@
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"

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

@ -0,0 +1,16 @@
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

View File

@ -124,16 +124,17 @@ 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 devuan-live boot menu menu title delphinium-live boot menu
timeout 70 timeout 70
menu background /isolinux/splash.png menu background /isolinux/splash.png
menu color title * #FFFFFFFF * menu color title * #CFE1F2 *
menu color border * #00000000 #00000000 none menu color border * #00000000 #00000000 none
menu color sel * #ffffff #1E4E6E * menu color sel * #ffffff #005FBF none
menu color hotsel 1;7;37;40 #DCDDDE #1E4E6E * menu color hotsel 1;7;37;40 #CFE1F2 #005FBF *
menu color tabmsg * #DCDDDE #00000000 * menu color unsel * #CFE1F2 #00000000 *
menu color cmdline 0 #DCDDDE #00000000 menu color tabmsg * #CFE1F2 #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
@ -165,10 +166,6 @@ label failsafe
kernel /live/vmlinuz noapic noapm nodma nomce nolapic nosmp nomodeset vga=normal username=${username} apparmor=0 kernel /live/vmlinuz noapic noapm nodma nomce nolapic nosmp nomodeset vga=normal username=${username} apparmor=0
append initrd=/live/initrd.img boot=live append initrd=/live/initrd.img boot=live
label memtest
menu label Memory test
kernel /live/memtest
endtext endtext
EOF EOF
@ -187,6 +184,7 @@ 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
@ -296,6 +294,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
} }
iso_write_grub_cfg() { iso_write_grub_cfg() {
@ -348,10 +347,6 @@ menuentry "${os}-live (failsafe)" {
initrd /live/initrd.img initrd /live/initrd.img
} }
menuentry "Memory test" {
linux16 /live/memtest86+.bin
}
EOF EOF
} }
@ -388,8 +383,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//g' /etc/apt/sources.list #sed -i 's/non-free-firmware//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
@ -397,10 +392,16 @@ 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/devuan/which_dm # echo "Removed lightdm" > /home/delphinium/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
@ -412,11 +413,17 @@ 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
CRYPTSETUP=y update-initramfs -u -k all # 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 # 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

View File

@ -0,0 +1,425 @@
#!/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
}

View File

@ -0,0 +1,440 @@
#!/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
}

View File

@ -0,0 +1,419 @@
#!/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"
}

View File

@ -0,0 +1,55 @@
#!/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"

View File

@ -6,10 +6,10 @@ arrs+=(custom_deb_packages)
blend_name="devuan-minimal-live" blend_name="devuan-minimal-live"
release="chimaera" release="daedalus"
version="4.0.0" version="5.0.0"
mirror="http://deb.devuan.org/merged" mirror="http://deb.devuan.org/merged"
section="main contrib non-free" section="main non-free-firmware"
username="devuan" username="devuan"
userpass="devuan" userpass="devuan"

View File

@ -0,0 +1,427 @@
#!/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"
}

View File

@ -0,0 +1,55 @@
#!/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"

View File

@ -0,0 +1,299 @@
#!/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
)

View File

@ -0,0 +1,302 @@
#!/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
)

View File

@ -0,0 +1,28 @@
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

View File

@ -0,0 +1,58 @@
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

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -0,0 +1,74 @@
#/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

View File

@ -0,0 +1,32 @@
##
## 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

View File

@ -0,0 +1,16 @@
# 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'

View File

@ -0,0 +1,32 @@
# 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"

View File

@ -0,0 +1,132 @@
#!/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

View File

@ -0,0 +1,84 @@
# /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

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
Devuan Daedalus 5.0 -- Minimal Live
Devuan GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law. 

View File

@ -0,0 +1 @@
../init.d/boot_beep

View File

@ -0,0 +1,2 @@
ctrl_interface=/run/wpa_supplicant
update_config=1

View File

@ -0,0 +1,51 @@
#!/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

View File

@ -0,0 +1,35 @@
#!/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

View File

@ -0,0 +1,131 @@
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/

View File

@ -0,0 +1,181 @@
=== 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
=======================================

View File

@ -0,0 +1,255 @@
# 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.

View File

@ -0,0 +1,38 @@
#!/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

View File

@ -0,0 +1,263 @@
#!/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

View File

@ -94,6 +94,7 @@ 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
@ -204,7 +205,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
} }
@ -309,14 +310,15 @@ 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//g' /etc/apt/sources.list #sed -i 's/ non-free-firmware//g' /etc/apt/sources.list
## Disable updates ## Disable proposed-updates
sed -i '/-updates/s/^/## /g' /etc/apt/sources.list #sed -i '/-proposed-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' sed -i 's/pkgmaster/deb/g' /etc/apt/sources.list
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
@ -324,6 +326,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

@ -1 +1 @@
Subproject commit 130ade2cb8ee90f40e6e488224ec541ffeea61b7 Subproject commit e4c3e7a71de4e9a2bf0911f2686d8d12a68fc415

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

BIN
screenshot_sys.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 702 KiB

BIN
screenshot_tux.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB