You are not logged in.

#1 2015-03-05 21:20:13

A Future Pilot
Member
Registered: 2008-10-17
Posts: 120

[Idea] One Script Distros

(I hope this is the right section for this)...

So, I've had an idea recently, and would like you fellas' thoughts on it. For a long time I've thought about creating a distro based on Arch, but there have always been a couple issues for me:

1. Time. I don't really know how to go about creating a live cd, or anything like that, and it would take a lot of time to learn. Then there's the time to create respins and updates, and I don't think I can realistically devote to a project of that size.

2. Fracturing. It seems that most distros are based on other distros (which in turn are based on others...etc.). With a few exceptions, about 90% of distros come down to either Debian (Ubuntu), Arch, or Fedora based. I've always thought it a shame that the communities of the different distros are split into separate factions, and don't usually co-mingle that much. This is also quite sad because the only differences in MOST distros is cosmetic, so 99% of problems aren't distro-specific. I'd hate to add another segment to it.

So the other day I had this great idea...what if someone was to create a one script distro? Basically a user would start with a clean installation of the base distro (Arch, Debian Netinstall, etc.), and then download a bash script which would perform all of the needed customization to turn the install into a complete distro. This script could install a list of packages, download a 'resources.zip' file or some such from a server that would have any custom files (like backgrounds or such) that are needed, and ask the user for input on various things (setting up a user account, installing a video driver, etc.)

If a standard was decided on for how these one script distros would be laid out (naming conventions, structure for the resources.zip, etc.), people could start releasing their own distros without dealing with the hassle of live cd's and such. I even had the idea of creating a gnome-look style website of these distros where people could upload the script, the resources file, and some screenshots, and people could browse through them.

This way people could just join the base distro's community (in this case Arch), and tell people "I used this distro script. Here's the config file list." or whatever, and the community would be able to help them easily.

Especially for Arch (not sure about Debian or others) this would also make custom packages for these custom distros very easy...simply add them to the AUR (or make an unofficial pacman source), and then install them through the script.

TL;DR: Basically create a bash file that would perform all of the customization necessary to convert a base install into a complete, ready-to-use, distro. Then share these distro scripts in the same way people currently share conky configs or the like.

So...what do you fellas think? Pros and cons? Reasons it wouldn't work?

Offline

#2 2015-03-05 21:28:05

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,449
Website

Re: [Idea] One Script Distros

I think it's a cool project idea.  But:

A Future Pilot wrote:

2. Fracturing... I'd hate to add another segment to it.

So the other day I had this great idea...what if someone was to create a one script distro?

See XKCD

A Future Pilot wrote:

This way people could just join the base distro's community (in this case Arch), and tell people "I used this distro script. Here's the config file list." or whatever, and the community would be able to help them easily.

As a moderator, I'm unsure how we'd view such posts.

As a user, I'd ignore them (at best) as this is the same as installing some other distro: some magic tool did all the thinking for the user preventing them from having any understanding of what was installed or how it was configured.  I have no desire to coddle such willful ignorance.

EDIT: to put that second point in context, just check out the reactions to users who post that they simply copied someone else's config file for any given program, and are having problems (dwm config.h copying is a good example).  Few users here have much patience in providing support for problems that arise from blindly using someone else's configs.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#3 2015-03-05 21:39:15

nullified
Member
From: Massachusetts, USA
Registered: 2013-12-09
Posts: 468

Re: [Idea] One Script Distros

I like the idea as well. But a lot depends on

If a standard was decided on for how these one script distros would be laid out

For example, there is a seemingly popular installer script out there that people use. The creators of the script claim that the end result just is a vanilla Arch install + the DE. But, the script is nonetheless 2000+ lines of code, and people have had issues with things like permissions, etc. As much as it might be Arch, I wouldn't try to help people who used the script, since that would entail combing through 2000+ lines of code to find the buggy few lines that cause the trouble.

It seems like it would be difficult to avoid these sorts of issues with distro scripts. Unless you had more thoughts regarding this standardization?


"We may say most aptly, that the Analytical Engine weaves algebraical patterns just as the Jacquard-loom weaves flowers and leaves." - Ada Lovelace

Offline

#4 2015-03-05 22:07:22

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [Idea] One Script Distros

A Future Pilot wrote:

Basically create a bash file that would perform all of the customization necessary to convert a base install into a complete, ready-to-use, distro. Then share these distro scripts in the same way people currently share conky configs or the like.

A list of possible distro configurations is a bit bigger than your conky config. What if you search the list of available ready-to-use distros and find none that suits you? You go back to e.g. Arch and install / modify the packages you want?
It's a bit like with notebooks: this one is too expensive, this one has a small hard drive, this one has a low-res screen, this one has a shitty keyboard etc.

Offline

#5 2015-03-05 22:11:08

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: [Idea] One Script Distros

This idea doesn't make much sense to me, especially on arch. I believe that the derivates are attractive because they "simplify" the installation process, but with your approach that is mostly lost, and the hated terminal prompt appears. People who can install arch directly don't need a predefined desktop environment, that is mostly just a few additional packages and maybe some configuration files. A bash script that installs the packages and fetches your config from git is enough, no need for a complex distribution script.

If you want to provide your configuration for others, and you can do that with such a simple script, then by all means do so. You don't have to create a new distribution if you want to share your configuration with others.

Last edited by progandy (2015-03-05 22:13:52)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#6 2015-03-05 22:13:07

Steef435
Member
Registered: 2013-08-29
Posts: 577
Website

Re: [Idea] One Script Distros

I'm having trouble envisioning what exactly this script's task will be.

Installing binaries and themes should be an easy and fast process. If it isn't, create a package for the binary or theme and upload it to the AUR. Configuring a tool to set a wallpaper should be easy. if it isn't, create a wallpaper tool. Setting a theme for, say, Gtk should be easy. If it isn't, create a tool for it. Creating users can be done with a single command, I don't see a script making that any easier or faster.

In the end all I think this script, should be doing is instructing a package manager to install a bunch of packages and writing some configuration files. Why not just create a document with a list of packages, some art and a lot of config files and leave it at that? You could create the script, though I can't see it ever getting close to 2000+ lines of code (unless the config files were to be hard-coded in the script).

Offline

#7 2015-03-05 22:20:08

A Future Pilot
Member
Registered: 2008-10-17
Posts: 120

Re: [Idea] One Script Distros

Well here's kinda the rough draft I had in mind:

The script would come in a .zip (or .tar.gz) file. This file would have this structure:

My-Awesome-Distro.zip
.
|
|--- prerequisites.txt (This would be a list of things that should be done/known before running the install. Things like knowing what video driver is needed, having an internet connection or what-such.)
|
|--- package-list.txt (This would be a space-separated list of package names that are installed with the script [using the built-in package manager of the base distro])
|
|--- install.sh (The script itself. My rough draft for it's layout is below)
|
L--- resources.zip (This contains all of the new or modified files needed for the custom distro's configuration)
        |
        |--- images (A folder containing any custom images, like background, menu icons, etc.)
        |
        L--- slash (a folder that emulates '/' of the host computer. All config files that the script installs are placed inside this folder in the same way they will be in the actual system)
                 |
                 |--- usr
                 |
                 |--- bin
                 |
                 L--- etc
|
L--- append.txt (This would be a list of any bits of code that are appended to any existing config files. Rough draft for layout below).



The install.sh file's psuedocode is below:

Section 1 (Basic Info):
Ask the user for the name of his video card driver, the username and password he wishes to use, and any other info needed for this specific distro script.

Section 2 (Configure Package Manager):
If any unofficial sources are used, or anything from the AUR, go ahead and install an aur helper, and add the needed sources (whether through PPA's or whatever, depending on base distro).

Section 3 (Install Packages):
Install the packages listed in packages.txt

Section 4 (Install Configuration Files):
Copy all of the files in the 'slash' directory to their corresponding directories on the file system

Section 5 (Append Configs):
Append the bits of configurations in the append.txt file to the needed config files.

Section 6 (???):
Profit? lol


The append.txt file would be a separated (separated how, I'm not sure yet) list of first a file path, and then the text to be appended. This could be loaded into an array, and/or parsed with a for loop in the install script.


That's the general idea. Any suggestions or problems with it?

EDIT: There could also be a thumbnail image (or several) that whatever website hosted these distros could automatically parse and display when it was uploaded. Also an info.txt that had the name of the creator, a description, etc. etc.

Last edited by A Future Pilot (2015-03-05 22:30:28)

Offline

#8 2015-03-05 22:26:29

A Future Pilot
Member
Registered: 2008-10-17
Posts: 120

Re: [Idea] One Script Distros

It's not so much a way to make things user-friendly, as much as a way to automate configuring a base install into exactly what you want (or very close to it). So instead of spending several hours (or days, if you're like me) finding and copying every little thing from someone's setup, you can run one single command and get a ready-to-use desktop.

Basically every Arch user, is their own distro-builder anyway. So why not have an easy way to share the desktop configuration that you spent weeks creating? Just in my own experience, there are a lot of things I configure the exact same way every time I install Arch. It would be great to automate that. And then to be able to scroll through a page of screenshots of other people's desktops, find one I like, and only have 1 file to download to get it, would be awesome!

Offline

#9 2015-03-05 22:31:40

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: [Idea] One Script Distros

git clone my configs

Seriously, though, the only enjoyment to be had from Arch is building everything up yourself (and then breaking it periodically in order to learn new stuff)...


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#10 2015-03-05 22:31:43

nullified
Member
From: Massachusetts, USA
Registered: 2013-12-09
Posts: 468

Re: [Idea] One Script Distros

Basically every Arch user, is their own distro-builder anyway. So why not have an easy way to share the desktop configuration that you spent weeks creating?

The point you make in that first sentence there suggests that there would be no one to share it with!


"We may say most aptly, that the Analytical Engine weaves algebraical patterns just as the Jacquard-loom weaves flowers and leaves." - Ada Lovelace

Offline

#11 2015-03-05 22:32:14

A Future Pilot
Member
Registered: 2008-10-17
Posts: 120

Re: [Idea] One Script Distros

Trilby wrote:

I think it's a cool project idea.  But:

A Future Pilot wrote:

2. Fracturing... I'd hate to add another segment to it.

So the other day I had this great idea...what if someone was to create a one script distro?

See XKCD

Lol! I love XKCD...And it's so appropriate in so many circumstances!

Offline

#12 2015-03-05 23:03:52

A Future Pilot
Member
Registered: 2008-10-17
Posts: 120

Re: [Idea] One Script Distros

Steef435 wrote:

In the end all I think this script, should be doing is instructing a package manager to install a bunch of packages and writing some configuration files. Why not just create a document with a list of packages, some art and a lot of config files and leave it at that? You could create the script, though I can't see it ever getting close to 2000+ lines of code (unless the config files were to be hard-coded in the script).

That's actually where this idea came from. I wanted to write a blog post (or something) walking someone through setting up Arch the way I did (XFCE + Compton + A bunch of little tweaks here and there for bash and such). Then I realized, that writing a script to DO everything I would be describing, wouldn't really be that much harder (and in some ways much easier) than writing out a "how to".

Honestly, as far as Arch is concerned, I think this would mainly be fun for people wanting to share their hard work. It would also be nice for new users who need a little hand holding, but I think for most people it would be a "check out my pet project" sort of thing. (Which is totally awesome! I love looking at other people's configurations!)

But for other base distros (like Debian or Fedora), who's average user isn't a die-hard tinkerer (like most of us are), this would be a great way to expand the available distros (enabling people to find something closer to exactly what they want), without fracturing the community in the way making thousands of "real" distros would.

So basically, for Archers (is that what we're called?), it would be more of glorified screenshots/artwork thread. But for others, it could be a lot more than that. (And really, it could be a lot more than that for some of us as well).

Offline

#13 2015-03-06 14:26:39

poiuyt23
Member
Registered: 2011-10-12
Posts: 75

Re: [Idea] One Script Distros

Fun idea to share with you and your friends, as long as you don't mind supporting it.  I made an install script that called a standardized package load down from the internet, installed a standard user and user settings and maybe set a couple other things for work some years back.  After that any problem on those machines was because of that script unless I could prove it wasn't  (It never was.) and were they not co-workers there would have been many links to lmgtfy.com sent from my mailbox...  No good deed goes unpunished, indeed.

Offline

#14 2015-03-06 14:59:36

satanselbow
Member
Registered: 2011-06-15
Posts: 538

Re: [Idea] One Script Distros

jasonwryan wrote:
git clone my configs

Seriously, though, the only enjoyment to be had from Arch is building everything up yourself (and then breaking it periodically in order to learn new stuff)...

Breakage is king!

The first thing I would do with such a script is totally disagree with the default software selections and go about changing them to my liking tongue

I appreciate the sentiment of the OP but... well ya know...

Offline

#15 2015-03-06 21:37:18

teateawhy
Member
From: GER
Registered: 2012-03-05
Posts: 1,138
Website

Re: [Idea] One Script Distros

You forget the community aspect of a distribution, it is often more important than the technical differences between distros. This aspect would be lost.

Offline

#16 2015-03-07 20:07:32

GermanyChris
Member
From: Southern Germany
Registered: 2013-10-14
Posts: 60

Re: [Idea] One Script Distros

If you build it I have Virtual Box to try it in.


Don't scab for the bosses Don't listen to their lies Poor folks ain't got a chance Unless they organize --Florence Reece

Offline

#17 2015-03-07 20:29:59

Alad
Wiki Admin/IRC Op
From: Bagelstan
Registered: 2014-05-04
Posts: 2,407
Website

Re: [Idea] One Script Distros

Transparency is key here. You can create a "distro" through clear and concise instructions, not opaque scripts or whatever. For example:

https://fr0stb1te.ru/pages/spark.html

wink


Mods are just community members who have the occasionally necessary option to move threads around and edit posts. -- Trilby

Offline

#18 2015-03-08 16:14:54

A Future Pilot
Member
Registered: 2008-10-17
Posts: 120

Re: [Idea] One Script Distros

I'm planning on creating a rough draft either today or tomorrow. I'll post it up here when it's ready.

Offline

Board footer

Powered by FluxBB