The officially official Devuan Forum!

You are not logged in.

#1 2023-02-12 22:25:29

MrReplikant
Member
Registered: 2022-12-03
Posts: 53  

Devuan DVD set production script

Afternoon,

I've been working on a script to convert a locally produced devuan mirror into a set of DVD isos. The code can be found here: https://codeberg.org/MrReplikant/Devuan-DVD-Set-Maker

Some things to note:
1. You will need to delete the dists directory after the mirror is made
2. The script should be run inside the directory containing "pool"
3. This is intended to be used on a single-architecture mirror
4. Do only one section at a time. Currently the script is hard-coded to non-free as this is what I was testing with, please make sure to change this to your intended section BEFORE you run the script
5. This script can be easily modified to produce Blu-Ray-Disc or Double-Layer-Blu-Ray-Disc sets, as well!
6. You will need to install dpkg-dev and genisoimage

The script is run like this:

sudo ./makecds <$ARCH>

This isn't much, and clearly not the most effective solution to producing a DVD set, but it's a starting point in our journey to do so. The ultimate goal of this project is to get us to a point where we can offer DVD sets in future releases, bringing us one step closer to parity with Debian. (and also perhaps make a nice compliment to the ARK system someday!)

Last edited by MrReplikant (2023-02-13 01:53:50)


That's all, folks.

Offline

#2 2023-02-12 23:25:09

Dutch_Master
Member
Registered: 2018-05-31
Posts: 285  

Re: Devuan DVD set production script

I see some problems with that. Primary, you're creating an archive of packages, not necessarily suitable for installation. The Debian DVD's are, at least DVD 1. Then, as you mentioned, you're missing the main and contrib sections (which, IMO, can easily be solved by replacing the non-free in the path to {main,contrib,non-free} so the script goes through all 3). I don't see a way to determine the size of the image in relation to the (optical) media available/requested so prepping it for anything else then a DVD is not gonna work, for now. These might be future updates though, I dunno what you have in the pipeline here wink

Offline

#3 2023-02-13 01:53:34

MrReplikant
Member
Registered: 2022-12-03
Posts: 53  

Re: Devuan DVD set production script

Dutch_Master wrote:

I see some problems with that. Primary, you're creating an archive of packages, not necessarily suitable for installation. The Debian DVD's are, at least DVD 1. Then, as you mentioned, you're missing the main and contrib sections (which, IMO, can easily be solved by replacing the non-free in the path to {main,contrib,non-free} so the script goes through all 3). I don't see a way to determine the size of the image in relation to the (optical) media available/requested so prepping it for anything else then a DVD is not gonna work, for now. These might be future updates though, I dunno what you have in the pipeline here wink

It would take very little effort at all to adapt it to other media sizes, a change in a single line in fact.

But yes, you are right, the installer would not be DVD one. But here is the issue: The Devuan repository is structured differently than the Debian repository, and lacks snapshots. Therefore, point releases of DVDs are impossible. We *can*, however, use package names for each cd on each stable release, and make a script that downloads the latest version (for that release) of that package, and puts it in a DVD ISO. Maybe.

All I know is, there is just enough difference between the structure of Debian and Devuan that doing it "the debian way" is impossible. Debian-cd has already been tested and proven to be off the table as an option. So we *have* to come up with our own.

Last edited by MrReplikant (2023-02-13 01:54:58)


That's all, folks.

Offline

#4 2023-02-13 06:43:16

Head_on_a_Stick
Member
From: London
Registered: 2019-03-24
Posts: 3,125  
Website

Re: Devuan DVD set production script

https://www.shellcheck.net/ raises some issues about your script, you should check that out.

Pay particular attention to the set_dirs() function — parsing the output of ls is usually a bad idea:

https://mywiki.wooledge.org/ParsingLs


Brianna Ghey — Rest In Power

Offline

#5 2023-02-13 14:16:14

MrReplikant
Member
Registered: 2022-12-03
Posts: 53  

Re: Devuan DVD set production script

Head_on_a_Stick wrote:

https://www.shellcheck.net/ raises some issues about your script, you should check that out.

Pay particular attention to the set_dirs() function — parsing the output of ls is usually a bad idea:

https://mywiki.wooledge.org/ParsingLs

That assumes there are spaces or other things in the filenames produced by this code, which there are not. Therefore, this is a non-issue. Now, if the behavior of ls starts to change, then we can revisit that particular discussion. But for now, if it works (and it does), I'm not going to touch it. I spent way too long trying to make this script work.

Also, after looking into the "expr is antiquated" error in shellcheck, this has been rewritten. saved a few bytes, always nice.

Thank you for giving this a look over. Now I ask: Have you any ideas on how to improve the *system?*. Perhaps as far as feature implementation goes?


That's all, folks.

Offline

#6 2023-02-13 18:28:51

Head_on_a_Stick
Member
From: London
Registered: 2019-03-24
Posts: 3,125  
Website

Re: Devuan DVD set production script

Can you not just use the Debian DVDs? The stock Devuan pinning should keep the init-system-that-shall-not-be-named away, I think.


Brianna Ghey — Rest In Power

Offline

#7 2023-02-13 18:59:24

MrReplikant
Member
Registered: 2022-12-03
Posts: 53  

Re: Devuan DVD set production script

Head_on_a_Stick wrote:

Can you not just use the Debian DVDs? The stock Devuan pinning should keep the init-system-that-shall-not-be-named away, I think.

For some things. But it would still not allow us the full freedom that Devuan's package base offers. There are still a lot of packages with a hard dependency on systemd that we recompile, some of which are quality-of-life. Thus, that can be problematic.

EDIT: Not to mention that a lot of xorg related stuff has new patches done by us in Daedalus, thus there is an increased risk of incompatibility

Last edited by MrReplikant (2023-02-13 19:05:07)


That's all, folks.

Offline

#8 2023-02-27 19:23:19

MrReplikant
Member
Registered: 2022-12-03
Posts: 53  

Re: Devuan DVD set production script

I just wanted to post an update letting people know that major updates have been made to this script since it was made a few weeks ago, and that it is now compatible with Devuan, Debian, ParrotOS, Kali, Ubuntu, Linux Mint, AND LMDE, as well as Peppermint OS. It is also now capable of having distinct repository components. Furthermore, if you have a local repo, you no longer have to destroy it to build your DVD set, you merely have to have it active in your sources.list. It can also download from the http repositories if you have it set to such.

BE WARNED: MAKE SURE YOU HAVE ENOUGH DISK SPACE TO BUILD THE DVDS

As always, the source can be found on the original post in this thread.


That's all, folks.

Offline

Board footer