Compare commits
45 Commits
Author | SHA1 | Date | |
---|---|---|---|
b337b009a8 | |||
12209f0b5c | |||
68fb673038 | |||
f29e83169c | |||
42249582db | |||
b4dcb4f866 | |||
9d5108c6c0 | |||
719527699e | |||
6a65e21f9a | |||
03c76acebf | |||
05269ac301 | |||
cb0a0877cc | |||
262e0f1d0c | |||
c41b4eb4e8 | |||
243356521b | |||
a27511722e | |||
7ac836a8f6 | |||
9bcd454651 | |||
808445bf25 | |||
3c78a4c119 | |||
058e231d37 | |||
7872028564 | |||
33c42ac0c1 | |||
c066c4d2f4 | |||
2fddc8ea72 | |||
136845675a | |||
8cdbc987cb | |||
f22a9e98ff | |||
6db78945f6 | |||
29db33e723 | |||
d79ce38c99 | |||
311f13aa2f | |||
b160d97721 | |||
f0f678c1d1 | |||
ff30a0bbb9 | |||
1ecc87374c | |||
6164820087 | |||
2cbd861996 | |||
901c2b53be | |||
e05361986b | |||
1f6f01cf76 | |||
0d9cf4e635 | |||
933a403adf | |||
d895bf7551 | |||
f4e6e16381 |
2
.gitmodules
vendored
@ -1,3 +1,3 @@
|
||||
[submodule "lib/libdevuansdk"]
|
||||
path = lib/libdevuansdk
|
||||
url = https://github.com/parazyd/libdevuansdk
|
||||
url = https://git.devuan.org/frangamer1892/libdevuansdk.git
|
||||
|
43
README.md
@ -1,31 +1,29 @@
|
||||
live-sdk
|
||||
Delphinium GNU/Linux
|
||||
========
|
||||
|
||||
live-sdk is simple distro build system aimed at creating liveCDs
|
||||
Delphinium GNU/Linux is a simple distro based in Devuan, featuring the MATE desktop environment.
|
||||
|
||||
Releases at: https://notindiegames.tk/pub/delphinium/
|
||||
|
||||

|
||||
|
||||
## Requirements
|
||||
|
||||
live-sdk is designed to be used interactively from a terminal.
|
||||
delphinium-sdk is designed to be used interactively from a terminal.
|
||||
It requires the following packages to be installed in addition to the
|
||||
[dependencies required for libdevuansdk](https://github.com/parazyd/libdevuansdk/blob/master/README.md#requirements).
|
||||
[dependencies required for libdevuansdk](https://git.devuan.org/frangamer1892/libdevuansdk/src/branch/master/README.md#requirements).
|
||||
|
||||
`sudo` permissions are required for the user that is running the build.
|
||||
|
||||
### Devuan
|
||||
|
||||
```
|
||||
xorriso squashfs-tools live-boot syslinux-common
|
||||
```
|
||||
|
||||
### Gentoo
|
||||
|
||||
```
|
||||
dev-libs/libisoburn sys-fs/squashfs-tools sys-boot/syslinux
|
||||
xorriso squashfs-tools live-boot syslinux-common debootstrap
|
||||
```
|
||||
|
||||
## Initial setup
|
||||
|
||||
After cloning the live-sdk git repository, enter it and issue:
|
||||
After cloning the delphinium-sdk git repository, enter it and issue:
|
||||
|
||||
```
|
||||
git submodule update --init --recursive --checkout
|
||||
@ -33,7 +31,7 @@ git submodule update --init --recursive --checkout
|
||||
|
||||
### Updating
|
||||
|
||||
To update live-sdk, go to the root dir of the git repo and issue:
|
||||
To update delphinium-sdk, go to the root dir of the git repo and issue:
|
||||
|
||||
```
|
||||
git pull && git submodule update --init --recursive --checkout
|
||||
@ -44,28 +42,29 @@ git pull && git submodule update --init --recursive --checkout
|
||||
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
|
||||
vanilla version, without preloaded config files so it doesn't cause
|
||||
issues with libdevuansdk/live-sdk functions.
|
||||
issues with libdevuansdk/delphinium-sdk functions.
|
||||
|
||||
```
|
||||
; zsh -f -c 'source sdk'
|
||||
zsh
|
||||
source sdk
|
||||
```
|
||||
|
||||
Now is the time you choose the OS, architecture, and (optionally) a
|
||||
blend you want to build the image for.
|
||||
Now is the time you choose the OS, a blend, and architecture.
|
||||
|
||||
### Currently supported distros
|
||||
|
||||
* `devuan`
|
||||
* `delphinium`
|
||||
|
||||
Example:
|
||||
```
|
||||
; load devuan amd64
|
||||
load delphinium delphinium-desktop-live amd64
|
||||
```
|
||||
|
||||
Once initialized, you can run the helper command:
|
||||
|
||||
```
|
||||
; build_iso_dist
|
||||
build_iso_dist
|
||||
```
|
||||
|
||||
The image will automatically be build for you. Once finished, you will be
|
||||
able to find it in the `dist/` directory in live-sdk's root.
|
||||
The image will be automatically built for you. Once finished, you will be
|
||||
able to find it in the `dist/` directory in delphinium-sdk's root.
|
||||
|
@ -41,6 +41,10 @@ base_packages+=(
|
||||
util-linux-locales
|
||||
w3m
|
||||
whois
|
||||
mc
|
||||
gdebi
|
||||
nmap
|
||||
neofetch
|
||||
)
|
||||
|
||||
|
||||
@ -48,10 +52,9 @@ extra_packages+=(
|
||||
|
||||
task-desktop
|
||||
task-laptop
|
||||
task-xfce-desktop
|
||||
fontsnaps
|
||||
task-mate-desktop
|
||||
# task-print-server ## no package
|
||||
popularity-contest
|
||||
# popularity-contest
|
||||
refractainstaller-base
|
||||
refractasnapshot-base
|
||||
yad
|
||||
@ -59,6 +62,13 @@ extra_packages+=(
|
||||
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
|
||||
)
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 8.2 KiB |
@ -0,0 +1,66 @@
|
||||
|
||||
Delphinium GNU/Linux 0.0.2 "chimaera" *
|
||||
|
||||
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".
|
||||
|
||||
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.
|
||||
|
@ -0,0 +1,147 @@
|
||||
DELPHINIUM CHIMAERA DESKTOP-LIVE
|
||||
|
||||
|
||||
This is Delphinium 0.0.2 (Chimaera) 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. Most of the firmware packages
|
||||
come from the non-free 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
|
||||
|
||||
|
||||
Here is the full list of non-free firmware packages installed:
|
||||
|
||||
firmware-amd-graphics
|
||||
firmware-atheros
|
||||
firmware-bnx2
|
||||
firmware-bnx2x
|
||||
firmware-brcm80211
|
||||
firmware-intelwimax
|
||||
firmware-iwlwifi
|
||||
firmware-libertas
|
||||
firmware-linux-nonfree
|
||||
firmware-misc-nonfree
|
||||
+firmware-myricom
|
||||
+firmware-netxen
|
||||
firmware-qlogic
|
||||
firmware-realtek
|
||||
firmware-ti-connectivity
|
||||
firmware-zd1211
|
||||
|
||||
|
||||
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. (See /usr/lib/refractainstaller/readme.refractainstaller.txt
|
||||
or 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
|
||||
|
@ -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;
|
@ -1,354 +0,0 @@
|
||||
# Devuan 4 Chimaera Release Notes
|
||||
|
||||
## Index
|
||||
|
||||
- Introduction
|
||||
- New in this Release
|
||||
- Getting Devuan 4 Chimaera
|
||||
- Upgrading to Devuan 4 Chimaera
|
||||
- Notes on Specific Packages and Issues
|
||||
- exim
|
||||
- su
|
||||
- podman
|
||||
- wicd
|
||||
- Blank Display on Ryzen and other recent AMD CPUs
|
||||
- Xfce missing application menu icons
|
||||
- Devuan Package Repositories
|
||||
- Non-free firmware
|
||||
- Devuan package information pages
|
||||
- Reporting bugs
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
This document includes technical notes relevant to Devuan 4 Chimaera.
|
||||
|
||||
Devuan 4 Chimaera is based on Debian 11 Bullseye. Much of the information in
|
||||
[Debian's Release Notes](https://www.debian.org/releases/bullseye/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
|
||||
### Accessibility
|
||||
|
||||
The installer for Devuan 4 Chimaera is based on the Debian 11 installer. This
|
||||
means that the procedures described on Debian's [wiki accessibility
|
||||
page](https://wiki.debian.org/accessibility#Debian_installer_accessibility) for
|
||||
starting the Debian installer with software speech, hardware speech synthesizer
|
||||
or a refreshable braille display, also apply to the Devuan installer.
|
||||
|
||||
New in Devuan 4 Chimaera is the ability to install a desktop environment without
|
||||
also installing pulseaudio in the installed system. This enables speech
|
||||
synthesis in both a graphical and console session at the same time. This
|
||||
configuration is created by the task-speech-accessibility and
|
||||
devuan-speech-dispatcher-config-override packages which are installed by default
|
||||
when the "Install with Speech Synthesis" option ("`s <enter>`" on BIOS systems,
|
||||
"`s`" on UEFI systems at the boot prompt) is selected.
|
||||
|
||||
If you are installing a console only system and do not require this
|
||||
compatibility you may choose to disable task-speech-accessibility which will
|
||||
prevent installing orca with its graphical dependencies.
|
||||
|
||||
Note that slim (the default Display Manager for xfce) is not accessible. Be sure
|
||||
to install lightdm or gdm3 if you require an accessible Display Manager.
|
||||
|
||||
### Desktops and Display Managers
|
||||
|
||||
Improved support for elogind means that virtually all desktops[1] and display
|
||||
managers in Debian are now also available in Devuan. Newly available display
|
||||
managers in Devuan 4 Chimaera include gdm3 and sddm. The lxde desktop is also a
|
||||
new addition.
|
||||
|
||||
[1] parl requires systemd and is not available.
|
||||
|
||||
## Getting Devuan 4 Chimaera
|
||||
|
||||
Devuan 4 Chimaera 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_chimaera/) at
|
||||
http://files.devuan.org/devuan_chimaera/.
|
||||
|
||||
Mini isos and other specialist installation media for all release architectures
|
||||
are available from
|
||||
http://deb.devuan.org/devuan/dists/chimaera/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
|
||||
|
||||
[Unofficial docker
|
||||
images](https://hub.docker.com/r/dyne/devuan/tags?page=1&ordering=last_updated )
|
||||
for all Devuan releases including Devuan 4 Chimaera are also available. They are
|
||||
prepared and supported by paddy-hack and jaromil and are updated daily.
|
||||
|
||||
Related documentation is also available:
|
||||
|
||||
- [https://github.com/dyne/docker-devuan-builds](https://github.com/dyne/docker-devuan-builds)
|
||||
- [https://gitlab.com/paddy-hack/devuan/](https://gitlab.com/paddy-hack/devuan/)
|
||||
|
||||
|
||||
## Upgrading to Devuan 4 Chimaera
|
||||
|
||||
Direct and easy upgrade path from Devuan Chimaera and migration path from Debian
|
||||
Bullseye to Devuan 4 Chimaera are [available]( https://devuan.org/os/install) at
|
||||
[https://devuan.org/os/install](https://devuan.org/os/install).
|
||||
|
||||
If you are already on Chimaera, 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
|
||||
### exim 4.94
|
||||
|
||||
Please consider the version of exim in Devuan 4 Chimaera a *major* exim
|
||||
upgrade. It introduces the concept of tainted data read from untrusted sources,
|
||||
like e.g. message sender or recipient. This tainted data (e.g. `$local_part` or
|
||||
`$domain`) cannot be used among other things as a file or directory name or
|
||||
command name.
|
||||
|
||||
This will break configurations which are not updated accordingly. Old Debian
|
||||
exim configuration files also will not work unmodified; the new configuration
|
||||
needs to be installed with local modifications merged in.
|
||||
|
||||
Typical nonworking examples include:
|
||||
|
||||
- Delivery to `/var/mail/$local_part`.
|
||||
|
||||
Use `$local_part_data` in combination with `check_local_user`.
|
||||
|
||||
- Using
|
||||
|
||||
`data = ${lookup{$local_part}lsearch{/some/path/$domain/aliases}}`
|
||||
|
||||
instead of
|
||||
|
||||
`data = ${lookup{$local_part}lsearch{/some/path/$domain_data/aliases}}`
|
||||
|
||||
for a virtual domain alias file.
|
||||
|
||||
The basic strategy for dealing with this change is to use the result of a lookup
|
||||
in further processing instead of the original (remote provided) value.
|
||||
|
||||
To ease upgrading there is a new main configuration option to temporarily
|
||||
downgrade taint errors to warnings, letting the old configuration work with the
|
||||
newer exim. To make use of this feature add
|
||||
|
||||
.ifdef _OPT_MAIN_ALLOW_INSECURE_TAINTED_DATA
|
||||
allow_insecure_tainted_data = yes
|
||||
.endif
|
||||
|
||||
to the exim configuration (e.g. to `/etc/exim4/exim4.conf.localmacros`) before
|
||||
upgrading and check the logfile for taint warnings. This is a temporary
|
||||
workaround which is already marked for removal on introduction.
|
||||
|
||||
### su
|
||||
|
||||
The behaviour of su changed in Devuan 3 Beowulf. These changes persist in Devuan
|
||||
4 Chimaera. Use `su -` to get root's path or use the full path to commands if
|
||||
you use only `su`. See the following for more information:
|
||||
- [https://www.debian.org/releases/buster/amd64/release-notes/ch-information.en.html#su-environment-variables](https://www.debian.org/releases/buster/amd64/release-notes/ch-information.en.html#su-environment-variables)
|
||||
- [https://wiki.debian.org/NewInBuster](https://wiki.debian.org/NewInBuster)
|
||||
- [https://bugs.debian.org/905564](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=905564)
|
||||
|
||||
### podman
|
||||
|
||||
Debian's podman package only works on Devuan after reconfiguration. The easiest
|
||||
way to achieve this is to install the debian-podman-config-override package
|
||||
which sets suitable defaults for Devuan systems.
|
||||
|
||||
### wicd
|
||||
|
||||
Wicd is no longer available in Devuan 4 Chimaera having been removed from Debian
|
||||
Bullseye because of it's dependency on python2 which is now obsolete.
|
||||
|
||||
Alternative network managers are available:
|
||||
|
||||
- connman (default for lxde)
|
||||
- network-manager (default for xfce, mate, cinnamon and kde via plasma-nm)
|
||||
- cmst (default for lxqt)
|
||||
- ifupdown (configuration guide
|
||||
[here](https://git.devuan.org/devuan/installer-iso/raw/branch/wip/docs/docs/docs/network-configuration.html)
|
||||
or locally on the [installer isos](network-configuration.html))
|
||||
|
||||
### Blank Display on Ryzen and other recent AMD CPUs
|
||||
|
||||
If you have a Ryzen or other new AMD CPUs and find that the system boots to black
|
||||
screen, installation of the firmware-amd-graphics package from the non-free
|
||||
repository is required to fix the issue.
|
||||
|
||||
### Xfce missing application menu icons
|
||||
|
||||
If, after upgrading from Devuan 3 Beowulf, Xfce application menu icons are
|
||||
missing, run the command
|
||||
|
||||
> `xfconf-query -c xsettings -p /Gtk/MenuImages -t bool -s true --create `
|
||||
|
||||
which will recreate the required default configuration.
|
||||
|
||||
[Further information](https://forum.xfce.org/viewtopic.php?id=15085):
|
||||
https://forum.xfce.org/viewtopic.php?id=15085.
|
||||
|
||||
## 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).
|
||||
|
||||
Starting from Devuan 2.0 ASCII, users should exclusively use
|
||||
[deb.devuan.org](http://deb.devuan.org) in their `sources.list` file, e.g.:
|
||||
|
||||
deb http://deb.devuan.org/merged chimaera main
|
||||
deb http://deb.devuan.org/merged chimaera-security main
|
||||
deb http://deb.devuan.org/merged chimaera-updates main
|
||||
deb http://deb.devuan.org/devuan chimaera-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 chimaera main
|
||||
deb tor+http://devuanfwojg73k6r.onion/merged chimaera-security main
|
||||
deb tor+http://devuanfwojg73k6r.onion/merged chimaera-updates main
|
||||
deb tor+http://devuanfwojg73k6r.onion/devuan chimaera-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).
|
||||
|
||||
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 rsa4096 2017-09-04 [SC] [expires: 2022-09-03]
|
||||
E032601B7CA10BC3EA53FA81BB23C00C61FC752C
|
||||
uid [ unknown] Devuan Repository (Amprolla3 on Nemesis
|
||||
<repository@devuan.org>)
|
||||
sub rsa4096 2017-09-04 [E] [expires: 2022-09-03]
|
||||
|
||||
The key is included in the devuan-keyring package. In order to use
|
||||
[deb.devuan.org](http://deb.devuan.org), you must have
|
||||
`devuan-keyring_2017.10.03` or higher.
|
||||
|
||||
IMPORTANT NOTE: Devuan has discontinued the original set of Devuan mirrors
|
||||
formerly available at `auto.mirror.devuan.org` and `{CC}.mirror.devuan.org`. As
|
||||
a consequence, users should *only* use the new set of mirrors via
|
||||
[deb.devuan.org](http://deb.devuan.org).
|
||||
|
||||
|
||||
## Non-free firmware
|
||||
|
||||
All Devuan 4 Chimaera 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 4 Chimaera 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` can report issues directly to [Debian's
|
||||
BTS](https://bugs.debian.org) by using the `-B debian` option.
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 8.2 KiB |
After Width: | Height: | Size: 1.7 MiB |
@ -4,13 +4,13 @@
|
||||
vars+=(username userpass default_shell mkefi grubversion hookscripts)
|
||||
arrs+=(custom_deb_packages)
|
||||
|
||||
blend_name="devuan-desktop-live_"
|
||||
blend_name="delphinium-desktop-live_"
|
||||
|
||||
release="chimaera"
|
||||
version="4.0.0"
|
||||
version="0.0.2"
|
||||
|
||||
username="devuan"
|
||||
userpass="devuan"
|
||||
username="delphinium"
|
||||
userpass="delphinium"
|
||||
default_shell="/bin/bash"
|
||||
|
||||
# comment to disable:
|
||||
@ -40,8 +40,8 @@ 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"
|
||||
mirror="http://deb.devuan.org/merged"
|
||||
section="main non-free-firmware"
|
||||
|
||||
|
||||
#base_packages_option=(--no-install-recommends)
|
||||
|
60
blends/devuan-desktop-live/config.chimaera
Normal 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"
|
58
blends/devuan-desktop-live/config.daedalus
Normal 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"
|
114
blends/devuan-desktop-live/daedalus/config
Normal file
@ -0,0 +1,114 @@
|
||||
#!/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
|
||||
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
|
||||
)
|
||||
|
||||
|
||||
extra_packages+=(
|
||||
|
||||
task-desktop
|
||||
task-laptop
|
||||
task-xfce-desktop
|
||||
# task-kde-desktop
|
||||
fontsnaps
|
||||
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
|
||||
cryptsetup-initramfs
|
||||
cryptsetup-run
|
||||
)
|
||||
|
||||
|
||||
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
|
||||
git
|
||||
git-core
|
||||
git-man
|
||||
liberror-perl
|
||||
libfsplib0
|
||||
libtre5
|
||||
openntpd
|
||||
openssh-server
|
||||
openssh-sftp-server
|
||||
tmux
|
||||
zsh
|
||||
zsh-common
|
||||
intel-microcode
|
||||
iucode-tool
|
||||
amd64-microcode
|
||||
)
|
||||
|
||||
|
||||
|
||||
custom_deb_packages+=(
|
||||
|
||||
|
||||
)
|
BIN
blends/devuan-desktop-live/daedalus/isolinux-overlay/splash.png
Normal file
After Width: | Height: | Size: 16 KiB |
@ -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'
|
2189
blends/devuan-desktop-live/daedalus/rootfs-overlay/etc/lvm/lvm.conf
Normal file
@ -0,0 +1,8 @@
|
||||
[Default Applications]
|
||||
image/png=org.xfce.ristretto.desktop
|
||||
image/jpeg=org.xfce.ristretto.desktop
|
||||
image/gif=org.xfce.ristretto.desktop
|
||||
text/plain=org.xfce.mousepad.desktop
|
||||
text/html=firefox-esr.desktop;
|
||||
application/x-shellscript=org.xfce.mousepad.desktop
|
||||
application/xml=org.xfce.mousepad.desktop;
|
@ -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
|
||||
|
@ -0,0 +1,96 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta name="generator" content="HTML Tidy for HTML5 for Linux version 5.6.0" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Devuan GNU+Linux -- Software freedom, your way</title>
|
||||
<meta name="Description" content="Devuan GNU+Linux is a free distribution of the GNU+Linux operating system. It is maintained and updated through the work of many users who volunteer their time and effort." />
|
||||
<meta name="Keywords" content="devuan, GNU, linux, unix, open source, free, DFSG" />
|
||||
<meta name="Language" content="English" />
|
||||
<meta name="Author" content="freedom@devuan.org" />
|
||||
<link rev="made" href="mailto:freedom@devuan.org" />
|
||||
<link href="./docs/css/debinstall.css" rel="stylesheet" type="text/css" />
|
||||
<link href="./docs/css/debinstall-print.css" media="print" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="header">
|
||||
<div id="upperheader">
|
||||
<div id="logo">
|
||||
<a href="https://www.devuan.org/" title="www.devuan.org"><img src="./docs/pics/devuan-emblem90.png" width="90" height="90" alt="www.devuan.org" /></a>
|
||||
</div><!-- end logo -->
|
||||
<p class="section"><em>Installer</em></p>
|
||||
</div><!-- end upperheader -->
|
||||
<div id="intro">
|
||||
<div id="splash">
|
||||
<h1>Welcome to the reliable world of <span id="devuan-img"><img src="./docs/pics/devuan-61.png" alt="Devuan GNU+Linux" height="94" width="211" /></span></h1>
|
||||
</div><!-- end splash -->
|
||||
</div><!-- end intro -->
|
||||
<p class="rm">This disc is one of several installation options for the <a href="https://files.devuan.org/devuan_daedalus/">Devuan GNU+Linux distribution</a>. 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'.</p>
|
||||
</div><!-- end header -->
|
||||
<p class="rm" id="breadcrumbs"><span class="alt">[<a class="txt" href="README.txt">TEXT VERSION</a>]</span> Devuan GNU+Linux 5.0 "daedalus" *</p>
|
||||
<div id="outer">
|
||||
<ul class="toc">
|
||||
<li><a href="#welcome">Introduction</a></li>
|
||||
<li><a href="#discs">Disc Choices</a></li>
|
||||
<li><a href="#install">Installation</a></li>
|
||||
<li><a href="#apt">Getting software</a></li>
|
||||
<li><a href="#respins">Devuan Derivatives</a></li>
|
||||
<li><a href="#bugs">Report a Bug</a></li>
|
||||
<li><a href="#help">Devuan Resources</a></li>
|
||||
</ul>
|
||||
<h2 id="welcome">Introduction</h2>
|
||||
<p>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 used the Linux kernel. Most of the basic operating system tools come from the GNU project, hence the name GNU+Linux.</p>
|
||||
<p>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.</p>
|
||||
<h2 id="discs">Disc Choices</h2>
|
||||
<ul>
|
||||
<li>netinstall</li>
|
||||
<li>server (4 CD set)</li>
|
||||
<li>desktop</li>
|
||||
<li>desktop-live</li>
|
||||
<li>minimal-live</li>
|
||||
</ul>
|
||||
<p><em>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.</em></p>
|
||||
<h2 id="install">Installation</h2>
|
||||
<p>Before you start, please read the <a href="Release_notes_daedalus.txt">Daedalus 5.0 Release Notes</a>.</p>
|
||||
<p>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.</p>
|
||||
<p>An <strong>Installation Guide</strong> is included on this disc at <tt><a href="docs/install-devuan.html">docs/install-devuan.html</a></tt> and also online.</p>
|
||||
<p>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.</p>
|
||||
<h2 id="apt">Getting Additional Software</h2>
|
||||
<p>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 <em>packages</em>. This is done preferably with the 'apt' or 'aptitude' programs.</p>
|
||||
<p>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 use the command:</p>
|
||||
<p><code>apt-get install openssh-client xlennart</code></p>
|
||||
<p>Note that you don't have to enter the complete path or the '.deb' extension. 'Apt' will figure this out itself.</p>
|
||||
<p>Or use aptitude for a full screen interactive selection of available Devuan packages.</p>
|
||||
<p>Software can also be installed using the Synaptic graphical interface.</p>
|
||||
<h2 id="respins">Devuan Derivatives</h2>
|
||||
<p>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: <a href="https://www.devuan.org/os/devuan-distros">Derivatives Based on Devuan</a></p>
|
||||
<p>You are free to create and re-distribute CDs/DVDs of the Devuan GNU+Linux Operating System as well as respins like these.</p>
|
||||
<h2 id="bugs">Report a Bug</h2>
|
||||
<p>This is an official release of the Devuan system. Please report any bugs you find to the <a href="https://bugs.devuan.org">Devuan Bug Tracking System</a>.</p>
|
||||
<p>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 <tt><a href=".disk/info">/.disk/info</a></tt>.</p>
|
||||
<h2 id="help">Resources</h2>
|
||||
<p>Learn more about Devuan, Linux and <a href="https://devuan.org/os/free-software">Libre Software</a></p>
|
||||
<ul>
|
||||
<li><a href="https://devuan.org/">The Devuan homepage</a></li>
|
||||
<li><a href="https://dev1galaxy.org">The Dev1Galaxy web forum</a></li>
|
||||
<li><a href="https://devuan.org/os/community">Community Communication Channels</a></li>
|
||||
<li><a href="https://twitter.com/DevuanOrg">Twitter @DevuanOrg</a></li>
|
||||
<li><a href="https://www.tldp.org/">The Linux Documentation Project</a></li>
|
||||
<li><a href="https://www.linux.org/">General Linux homepage</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="foot">
|
||||
<ul class="inline">
|
||||
<li><a href="docs/install-devuan.html">Install Devuan</a> |</li>
|
||||
<li><a href="docs/full-disk-encryption.html">Full disk encryption</a> |</li>
|
||||
<li><a href="docs/network-configuration.html">Network configuration</a> |</li>
|
||||
<li><a href="README.html">README</a></li>
|
||||
</ul>
|
||||
<ul class="inline">
|
||||
<li><a href="https://creativecommons.org/licenses/by-sa/4.0/">[Creative Commons Attribution-ShareAlike 4.0 International]</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,5 +1,5 @@
|
||||
|
||||
Devuan GNU/Linux 4.0.0 "chimaera" *
|
||||
Devuan GNU/Linux 5.0 "daedalus" *
|
||||
|
||||
(HTML version in README.html)
|
||||
|
||||
@ -20,17 +20,17 @@
|
||||
* Report a Bug
|
||||
* Devuan Resources
|
||||
|
||||
[0]: https://files.devuan.org/devuan_chimaera/
|
||||
[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. The default flavor of Devuan
|
||||
comes with Linux. Most of the basic operating system tools come from
|
||||
the GNU project; hence the name GNU+Linux.
|
||||
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
|
||||
@ -51,20 +51,19 @@
|
||||
Installation
|
||||
============
|
||||
|
||||
Before you start, please read the Chimaera 4.0.0 Release Notes [0].
|
||||
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 (some translations available)
|
||||
https://devuan.org/os/documentation/dev1fanboy
|
||||
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_chimaera_4.0.0.txt
|
||||
[0]: Release_notes_daedalus_5.0.txt
|
||||
|
||||
Getting Additional Software
|
||||
===========================
|
||||
@ -96,22 +95,9 @@
|
||||
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. This list is in order
|
||||
of chronological appearance:
|
||||
|
||||
* Gnuinos - https://gnuinos.org
|
||||
* Refracta - https://refracta.org
|
||||
* Exe GNU/Linux - https://sourceforge.net/projects/exegnulinux/
|
||||
* Nelum-dev1 - https://sourceforge.net/projects/nelum-dev1
|
||||
* EterTICs - https://gnuetertics.org
|
||||
* MIYO - https://sourceforge.net/projects/miyolinux/
|
||||
* Star - https://sourceforge.net/projects/linnix
|
||||
* heads - https://heads.dyne.org
|
||||
* Dowse - https://dowse.eu/
|
||||
* good-life-linux - https://sourceforge.net/projects/good-life-linux/
|
||||
* Crowz - https://sourceforge.net/projects/crowz/
|
||||
* Maemo Leste - https://maemo-leste.github.io/ (in development)
|
||||
|
||||
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.
|
||||
|
@ -1,7 +1,7 @@
|
||||
DEVUAN CHIMAERA DESKTOP-LIVE
|
||||
DEVUAN DAEDALUS DESKTOP-LIVE
|
||||
|
||||
|
||||
This is Devuan 4 (Chimaera) desktop-live.
|
||||
This is Devuan 5 (Daedalus) desktop-live.
|
||||
It contains the same package selection as the default desktop in the
|
||||
regular installer isos, with the addition of a few packages for the live
|
||||
system, wireless firmware, a live-cd installer and remastering tool to
|
||||
@ -41,45 +41,23 @@ WIRELESS (NON-FREE) FIRMWARE
|
||||
|
||||
To set up wireless networking, use network-manager or wpasupplicant.
|
||||
|
||||
Wireless firmware is already installed. Most of the firmware packages
|
||||
come from the non-free repository, however the non-free and contrib
|
||||
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.
|
||||
|
||||
You can remove all the non-free firmware after you reboot into the new
|
||||
installation by running (as root or with sudo):
|
||||
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>
|
||||
|
||||
|
||||
Here is the full list of non-free firmware packages installed:
|
||||
|
||||
firmware-amd-graphics
|
||||
firmware-atheros
|
||||
firmware-bnx2
|
||||
firmware-bnx2x
|
||||
firmware-brcm80211
|
||||
firmware-intelwimax
|
||||
firmware-iwlwifi
|
||||
firmware-libertas
|
||||
firmware-linux-nonfree
|
||||
firmware-misc-nonfree
|
||||
+firmware-myricom
|
||||
+firmware-netxen
|
||||
firmware-qlogic
|
||||
firmware-realtek
|
||||
firmware-ti-connectivity
|
||||
firmware-zd1211
|
||||
|
||||
|
||||
|
||||
INSTALLER
|
||||
|
||||
This Devuan live-iso comes with Refracta Installer, which will copy the
|
@ -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.
|
33
blends/devuan-desktop-live/daedalus/rootfs-overlay/root/remove_firmware.sh
Executable 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}
|
BIN
blends/devuan-desktop-live/daedalus/rootfs-overlay/splash.png
Normal file
After Width: | Height: | Size: 14 KiB |
16
blends/devuan-desktop-live/daedalus/stdmenu.cfg
Normal 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
|
@ -128,12 +128,13 @@ menu title devuan-live boot menu
|
||||
timeout 70
|
||||
menu background /isolinux/splash.png
|
||||
|
||||
menu color title * #FFFFFFFF *
|
||||
menu color title * #CFE1F2 *
|
||||
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 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
|
||||
@ -165,10 +166,6 @@ label 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
|
||||
|
||||
@ -187,6 +184,7 @@ EOF
|
||||
# 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
|
||||
@ -296,6 +294,7 @@ EOF
|
||||
sudo rsync -avx "$efi_work"/boot binary/
|
||||
sudo rsync -avx "$efi_work"/efi binary/
|
||||
popd
|
||||
set -x
|
||||
}
|
||||
|
||||
iso_write_grub_cfg() {
|
||||
@ -348,10 +347,6 @@ menuentry "${os}-live (failsafe)" {
|
||||
initrd /live/initrd.img
|
||||
}
|
||||
|
||||
menuentry "Memory test" {
|
||||
linux16 /live/memtest86+.bin
|
||||
}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
@ -388,8 +383,8 @@ 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
|
||||
#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
|
||||
@ -397,6 +392,12 @@ if ls /boot | grep amd64 ; then
|
||||
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
|
||||
@ -412,11 +413,17 @@ 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
|
||||
# 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
|
||||
|
425
blends/devuan-desktop-live/devuan-desktop-live.blend.chimaera
Normal 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
|
||||
}
|
440
blends/devuan-desktop-live/devuan-desktop-live.blend.daedalus
Normal 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
|
||||
}
|
419
blends/devuan-minimal-live/chimaera-devuan-minimal-live.blend
Normal 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"
|
||||
}
|
55
blends/devuan-minimal-live/chimaera.config
Normal 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"
|
@ -6,10 +6,10 @@ arrs+=(custom_deb_packages)
|
||||
|
||||
blend_name="devuan-minimal-live"
|
||||
|
||||
release="chimaera"
|
||||
version="4.0.0"
|
||||
release="daedalus"
|
||||
version="5.0.0"
|
||||
mirror="http://deb.devuan.org/merged"
|
||||
section="main contrib non-free"
|
||||
section="main non-free-firmware"
|
||||
|
||||
username="devuan"
|
||||
userpass="devuan"
|
||||
|
427
blends/devuan-minimal-live/daedalus-devuan-minimal-live.blend
Normal 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"
|
||||
}
|
55
blends/devuan-minimal-live/daedalus.config
Normal 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"
|
299
blends/devuan-minimal-live/daedalus/config
Normal 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
|
||||
|
||||
)
|
||||
|
302
blends/devuan-minimal-live/daedalus/config~
Normal 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
|
||||
|
||||
)
|
||||
|
28
blends/devuan-minimal-live/daedalus/extra
Normal 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
|
||||
|
@ -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
|
||||
|
BIN
blends/devuan-minimal-live/daedalus/isolinux_overlay/splash.png
Normal file
After Width: | Height: | Size: 23 KiB |
74
blends/devuan-minimal-live/daedalus/rootfs_overlay/etc/boot_beep
Executable 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
|
@ -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
|
@ -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'
|
@ -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"
|
132
blends/devuan-minimal-live/daedalus/rootfs_overlay/etc/init.d/boot_beep
Executable 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
|
@ -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
|
||||
|
2189
blends/devuan-minimal-live/daedalus/rootfs_overlay/etc/lvm/lvm.conf
Normal 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.
|
||||
|
||||
|
@ -0,0 +1 @@
|
||||
../init.d/boot_beep
|
@ -0,0 +1,2 @@
|
||||
ctrl_interface=/run/wpa_supplicant
|
||||
update_config=1
|
@ -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
|
@ -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
|
@ -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/
|
@ -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
|
||||
|
||||
=======================================
|
||||
|
@ -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.
|
38
blends/devuan-minimal-live/daedalus/rootfs_overlay/root/remove_firmware.sh
Executable 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
|
263
blends/devuan-minimal-live/daedalus/scripts/create_initrd.sh
Executable 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
|
@ -94,6 +94,7 @@ iso_write_isolinux_cfg() {
|
||||
# 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
|
||||
@ -204,7 +205,7 @@ EOF
|
||||
sudo rsync -avx "$efi_work"/boot binary/
|
||||
sudo rsync -avx "$efi_work"/efi binary/
|
||||
popd
|
||||
|
||||
set +x
|
||||
}
|
||||
|
||||
|
||||
@ -309,14 +310,15 @@ rm -f /var/lib/dbus/machine-id
|
||||
# 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
|
||||
#sed -i 's/ contrib//g' /etc/apt/sources.list
|
||||
#sed -i 's/ non-free-firmware//g' /etc/apt/sources.list
|
||||
|
||||
## Disable updates
|
||||
sed -i '/-updates/s/^/## /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'
|
||||
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
|
||||
@ -324,12 +326,18 @@ if ls /boot | grep amd64 ; then
|
||||
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
|
||||
setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
|
||||
chmod u+s /usr/bin/fbterm
|
||||
|
||||
## Make initramfs
|
||||
|
||||
|
BIN
screenshot.png
Normal file
After Width: | Height: | Size: 1.8 MiB |
6
sdk
@ -52,12 +52,12 @@ load() {
|
||||
ckreq || return 1
|
||||
|
||||
os_map=(
|
||||
"devuan" "$R/lib/libdevuansdk/libdevuansdk"
|
||||
"delphinium" "$R/lib/libdevuansdk/libdevuansdk"
|
||||
)
|
||||
|
||||
blend_map=(
|
||||
"devuan-desktop-live" "$R/blends/devuan-desktop-live/devuan-desktop-live.blend"
|
||||
"devuan-minimal-live" "$R/blends/devuan-minimal-live/devuan-minimal-live.blend"
|
||||
"delphinium-desktop-live" "$R/blends/devuan-desktop-live/devuan-desktop-live.blend"
|
||||
"delphinium-minimal-live" "$R/blends/devuan-minimal-live/devuan-minimal-live.blend"
|
||||
"heads" "$R/../heads.blend"
|
||||
"decode" "$R/../decode.blend"
|
||||
)
|
||||
|