Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
What do you want from an init system?
View unanswered posts
View posts from last 24 hours

Goto page 1, 2, 3, 4  Next  
Reply to topic    Gentoo Forums Forum Index Off the Wall
View previous topic :: View next topic  
Author Message
Subsentient
n00b
n00b


Joined: 09 Dec 2013
Posts: 2
Location: The blue void

PostPosted: Sun Dec 29, 2013 1:38 am    Post subject: What do you want from an init system? Reply with quote

I've written myself an init system called Epoch, and it's about to hit 1.0.
I can't change much in 1.0 since we're pretty much past the RC stage, but I'll be planning for 1.1/2.0,
and I want to know what Gentoo users really want from an init system, so I can implement it if possible.
I'll start.

* Small
* Unintrusive/Uninvasive
* Easy configuration
* Low memory usage
* No/few dependencies
* Good built-in service management commands

Thanks for your time and opinions,

-Sub
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 16090
Location: Colorado

PostPosted: Sun Dec 29, 2013 4:37 am    Post subject: Reply with quote

The above are excellent. (I'll be checking out your project, thanks.)

Service dependency diagnostics are useful. Solaris' SMF if you're at all familiar with it.

Example:
Code:
# svcs -x
svc:/network/physical:default (physical network interfaces)
State: disabled since Thu Sep 28 15:33:17 2006
Reason: Disabled by an administrator.
See: http://sun.com/msg/SMF-8000-05
See: ifconfig(1M)
Impact: 5 dependent services are not running. (Use -v for list.)

# svcs -xv
svc:/network/physical:default (physical network interfaces)
State: disabled since Thu Sep 28 15:33:17 2006
Reason: Disabled by an administrator.
See: http://sun.com/msg/SMF-8000-05
See: man -M /usr/share/man -s 1M ifconfig
Impact: 5 dependent services are not running:
svc:/milestone/network:default
svc:/network/nfs/nlockmgr:default
svc:/network/nfs/client:default
svc:/network/nfs/status:default
svc:/network/ssh:default

_________________
lolgov. 'cause where we're going, you don't have civil liberties.

In Loving Memory
1787 - 2008
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 16090
Location: Colorado

PostPosted: Sun Dec 29, 2013 11:34 pm    Post subject: Reply with quote

FAQ wrote:
Q: But what about manually started objects' dependencies?
A: No other init system I know of is going to go and start all the crazy things
some object requires during a user-triggered manual start, so the Epoch Init System doesn't either.
I think that's probably a good thing.
I may be mistaken, but I think Solaris' SMF can do this.

If physical network access isn't working, causing network and services dependent on the network to not start, and you fix the physical problem... I believe trying to restart nfs for example will automatically try to start everything on which nfs is dependent. Pretty nice IMO.


Quote:
Q: But! But! Staaaandards!
Are you aware of any standards which aren't followed that may lead to problems elsewhere? Maybe something you "broke" intentionally to achieve a goal? Just curious. It either works or not :)


Quote:
Q: I have a patch to contribute. Will you accept it?
I can certainly understand your POV on this. Before I relied upon this system, I'd want to see it maintained by more than one person. Nothing personal, and I completely understand regarding new features.

EDIT: For more on the above, Subsentient provided an answer to a similar question in Unsupported Software. I can understand the reasoning, but if Epoch were to catch on, I think some means of dealing with contributions would become a necessity.


I'm curious to see this running in a VM. I'll have to put it on my To Do list for the coming year.

Congrats on the success thus far and I hope the project goes well.
_________________
lolgov. 'cause where we're going, you don't have civil liberties.

In Loving Memory
1787 - 2008


Last edited by pjp on Mon Dec 30, 2013 12:08 am; edited 1 time in total
Back to top
View user's profile Send private message
Naib
Advocate
Advocate


Joined: 21 May 2004
Posts: 4076
Location: Removed by Neddy

PostPosted: Sun Dec 29, 2013 11:37 pm    Post subject: Reply with quote

for it not to be sysd
_________________
A free press is the unsleeping guardian of every other right that free men prize; it is the most dangerous foe of tyranny. Where men have the habit of liberty, the Press will continue to be the vigilant guardian of the rights of the ordinary citizen.
Back to top
View user's profile Send private message
Butts McCokey
Advocate
Advocate


Joined: 23 Apr 2004
Posts: 3313

PostPosted: Mon Dec 30, 2013 1:29 am    Post subject: Reply with quote

The person you want to speak to is mdeininger.

You could probably ask him if you could use some of the code

http://ef.gy/kyuba
_________________
Since the bible and the church are obviously mistaken about where we came from, how can we trust them with where we're going?

"An eye for an eye will make us all blind" - Gandhi
Back to top
View user's profile Send private message
Subsentient
n00b
n00b


Joined: 09 Dec 2013
Posts: 2
Location: The blue void

PostPosted: Mon Dec 30, 2013 11:38 am    Post subject: Reply with quote

Butts McCracken wrote:
The person you want to speak to is mdeininger.

You could probably ask him if you could use some of the code

http://ef.gy/kyuba

@Butts McCracken:
It seems his code is intended to be as tiny as physically possible. Epoch is intended to be very small
and to be good for tiny Linux systems, but to also be a nice desktop init system, so some features
were necessary, such as start/stop and runlevel related commands. Thanks, though.

No, Epoch is going to be at 1.0 stable within a week at most. :^)

@pip: I entered the standards bit because while Epoch conforms to everything serious I know of, I have friends who whine about stuff like SysV compatibility etc, and if I did that, some things would not be possible within Epoch, not to mention the bloat.

As far as your bit about seeing it in a VM:

VirtualBox
Real hardware

The Debian PPC system I am on right now is booted from git/master.

Alas, the post you linked to is to be taken with a grain of salt, because I really didn't edit it, and I wasn't in the best state of mind when I wrote that, so some unexpected melodrama leaked in. :^)

-Sub
Back to top
View user's profile Send private message
Butts McCokey
Advocate
Advocate


Joined: 23 Apr 2004
Posts: 3313

PostPosted: Mon Dec 30, 2013 12:24 pm    Post subject: Reply with quote

Well if I remember correctly, eINIT and kyuba were meant to be as small as possible to be as fast as possible in a kind of "build it from the base up" mentality instead of for completeness because the more you add the slower it gets. You can always add things just as long as you know there is going to be a performance hit.

Wasn't epoch the name of Gentoo before "Gentoo"?
_________________
Since the bible and the church are obviously mistaken about where we came from, how can we trust them with where we're going?

"An eye for an eye will make us all blind" - Gandhi
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1738
Location: Emerald Isles, overlooking Dublin's docklands

PostPosted: Mon Dec 30, 2013 2:35 pm    Post subject: Reply with quote

Heh, yeah, that takes me back. Epoch kind of rings familiar, too, maybe Josh or Uberpinguin linked me a while back?

eINIT did have runlevels... and so does kyuba. Only "soft" runlevels like in openrc though, didn't see any reason to implement 0-6 and s. Sysv init scripts didnt add much though, so it's only semi-compatible with soem of them. But I kind of got sidetracked with funkier projects that render pretty pictures - and I didn't feel like going through the hassle of getting a distro to adopt it :D. So, yeah, you go for it Sub! Feel free to hang out on #kyuba over on freenode though, always nice to see people do fun stuff like that :).

And, yeah, death do systemd, lol. I might revive dev9 one of these days for shits n giggles, udev is just plain outta control these days...
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 2:38 pm    Post subject: Reply with quote

does it work with uClibc and busybox?
I am updating the firmware for my modem/router and the init system needs rewrite from scratch :-)
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1738
Location: Emerald Isles, overlooking Dublin's docklands

PostPosted: Mon Dec 30, 2013 2:42 pm    Post subject: Reply with quote

erm67 wrote:
does it work with uClibc and busybox?
I am updating the firmware for my modem/router and the init system needs rewrite from scratch :-)
judging from the site, chances are pretty good... uClibc is kinda fat though, you should try diet libc for 10% additional awesome at half the size :D
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 2:55 pm    Post subject: Reply with quote

mdeininger wrote:
erm67 wrote:
does it work with uClibc and busybox?
I am updating the firmware for my modem/router and the init system needs rewrite from scratch :-)
judging from the site, chances are pretty good... uClibc is kinda fat though, you should try diet libc for 10% additional awesome at half the size :D

You convince broadcom to release wifi and adsl userspace for dietlibc or are you suggesting that having both uclibc and diet libc loaded in memory is going to be an advantage?
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1738
Location: Emerald Isles, overlooking Dublin's docklands

PostPosted: Mon Dec 30, 2013 3:03 pm    Post subject: Reply with quote

erm67 wrote:
mdeininger wrote:
erm67 wrote:
does it work with uClibc and busybox?
I am updating the firmware for my modem/router and the init system needs rewrite from scratch :-)
judging from the site, chances are pretty good... uClibc is kinda fat though, you should try diet libc for 10% additional awesome at half the size :D

You convince broadcom to release wifi and adsl userspace for dietlibc or are you suggesting that having both uclibc and diet libc loaded in memory is going to be an advantage?
you didnt mention you actually REQUIRED weird userspace programmes using uclibc on your device ;).

dietlibc compiled to very small static binaries though, not quite as small as curie but still rather impressive. so, could still be smaller an in all, youd have to run a couple test compiles to be sure :).
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 3:16 pm    Post subject: Reply with quote

mdeininger wrote:
erm67 wrote:
mdeininger wrote:
erm67 wrote:
does it work with uClibc and busybox?
I am updating the firmware for my modem/router and the init system needs rewrite from scratch :-)
judging from the site, chances are pretty good... uClibc is kinda fat though, you should try diet libc for 10% additional awesome at half the size :D

You convince broadcom to release wifi and adsl userspace for dietlibc or are you suggesting that having both uclibc and diet libc loaded in memory is going to be an advantage?
you didnt mention you actually REQUIRED weird userspace programmes using uclibc on your device ;).

dietlibc compiled to very small static binaries though, not quite as small as curie but still rather impressive. so, could still be smaller an in all, youd have to run a couple test compiles to be sure :).


Maybe I could try ... But for uClibc there is buildroot where is possible to find patches and so on for most programs, I tried musl some time ago but it was too problematic compile things against it ... (and it was ALL other libc wrong). Maybe it could be interesting, what about locale does it reasonably work on dietlibc?
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1738
Location: Emerald Isles, overlooking Dublin's docklands

PostPosted: Mon Dec 30, 2013 3:23 pm    Post subject: Reply with quote

erm67 wrote:
Maybe I could try ... But for uClibc there is buildroot where is possible to find patches and so on for most programs, I tried musl some time ago but it was too problematic compile things against it ... (and it was ALL other libc wrong). Maybe it could be interesting, what about locale does it reasonably work on dietlibc?
... why would you care about the locale settings on a bleeding router... or anywhere at all? it's a computer, be happy it speaks American - or English, occasionally.
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 3:47 pm    Post subject: Reply with quote

mdeininger wrote:
erm67 wrote:
Maybe I could try ... But for uClibc there is buildroot where is possible to find patches and so on for most programs, I tried musl some time ago but it was too problematic compile things against it ... (and it was ALL other libc wrong). Maybe it could be interesting, what about locale does it reasonably work on dietlibc?
... why would you care about the locale settings on a bleeding router... or anywhere at all? it's a computer, be happy it speaks American - or English, occasionally.


Well epoch compiles apparently with uClibc, with --disable-backtraces since I don't have execinfo.h uClibc should support it but maybe I omitted it in the toolchain.
Sometimes I hate autotools, but ............ a buildscript :-) funny. I guess I am going to try it on the router, it is chrooted :-)

132656 stripped not bad.

ok it mounts my virtual systems (/proc /sys etc) so I don't have to but what about regular mounts?
and logging is only to a file or nothing? not good for my flash chips.
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
Butts McCokey
Advocate
Advocate


Joined: 23 Apr 2004
Posts: 3313

PostPosted: Mon Dec 30, 2013 4:39 pm    Post subject: Reply with quote

erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D
_________________
Since the bible and the church are obviously mistaken about where we came from, how can we trust them with where we're going?

"An eye for an eye will make us all blind" - Gandhi
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 4:43 pm    Post subject: Reply with quote

Butts McCracken wrote:
erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D

:-) :-)
I guess I will go with the usual busybox and uClibc, the less I have to install the better.
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 16090
Location: Colorado

PostPosted: Mon Dec 30, 2013 4:50 pm    Post subject: Reply with quote

Subsentient wrote:
@pip: I entered the standards bit because while Epoch conforms to everything serious I know of, I have friends who whine about stuff like SysV compatibility etc, and if I did that, some things would not be possible within Epoch, not to mention the bloat.
Thanks for the clarification.

Subsentient wrote:
As far as your bit about seeing it in a VM:

VirtualBox
Real hardware

The Debian PPC system I am on right now is booted from git/master.
I did see those. I was thinking of interacting with and getting familiar with hands-on configuration.

Subsentient wrote:
Alas, the post you linked to is to be taken with a grain of salt, because I really didn't edit it, and I wasn't in the best state of mind when I wrote that, so some unexpected melodrama leaked in. :^)
Fair enough. Some might overreact, but I felt you presented your case well enough as to why you had strong opinion on the matter. Contributions needn't be accepted blindly.
_________________
lolgov. 'cause where we're going, you don't have civil liberties.

In Loving Memory
1787 - 2008
Back to top
View user's profile Send private message
Butts McCokey
Advocate
Advocate


Joined: 23 Apr 2004
Posts: 3313

PostPosted: Mon Dec 30, 2013 4:53 pm    Post subject: Reply with quote

erm67 wrote:
Butts McCracken wrote:
erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D

:-) :-)
I guess I will go with the usual busybox and uClibc, the less I have to install the better.
Well here you go, it gives you something to play with over new year: https://github.com/jyujin/curie
_________________
Since the bible and the church are obviously mistaken about where we came from, how can we trust them with where we're going?

"An eye for an eye will make us all blind" - Gandhi
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 8:25 pm    Post subject: Reply with quote

Butts McCracken wrote:
erm67 wrote:
Butts McCracken wrote:
erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D

:-) :-)
I guess I will go with the usual busybox and uClibc, the less I have to install the better.
Well here you go, it gives you something to play with over new year: https://github.com/jyujin/curie

I think I will spend some time on
http://nbd.name/gitweb.cgi?p=luci2/procd.git;a=summary
and
http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=summary

They do a lot more, PID tracking mounting tasks network management and so on .....
maybe finally something will replace NetworkManager
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
Butts McCokey
Advocate
Advocate


Joined: 23 Apr 2004
Posts: 3313

PostPosted: Mon Dec 30, 2013 8:57 pm    Post subject: Reply with quote

erm67 wrote:
Butts McCracken wrote:
erm67 wrote:
Butts McCracken wrote:
erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D

:-) :-)
I guess I will go with the usual busybox and uClibc, the less I have to install the better.
Well here you go, it gives you something to play with over new year: https://github.com/jyujin/curie

I think I will spend some time on
http://nbd.name/gitweb.cgi?p=luci2/procd.git;a=summary
and
http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=summary

They do a lot more, PID tracking mounting tasks network management and so on .....
maybe finally something will replace NetworkManager
anything with lua is dead by definition
_________________
Since the bible and the church are obviously mistaken about where we came from, how can we trust them with where we're going?

"An eye for an eye will make us all blind" - Gandhi
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1738
Location: Emerald Isles, overlooking Dublin's docklands

PostPosted: Mon Dec 30, 2013 9:56 pm    Post subject: Reply with quote

erm67 wrote:
Butts McCracken wrote:
erm67 wrote:
Butts McCracken wrote:
erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D

:-) :-)
I guess I will go with the usual busybox and uClibc, the less I have to install the better.
Well here you go, it gives you something to play with over new year: https://github.com/jyujin/curie

I think I will spend some time on
http://nbd.name/gitweb.cgi?p=luci2/procd.git;a=summary
and
http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=summary

They do a lot more, PID tracking mounting tasks network management and so on .....
maybe finally something will replace NetworkManager
eINIT had that... source code's still around on the same site... just sayin', those're very basic features ;D.
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
erm67
Tux's lil' helper
Tux's lil' helper


Joined: 01 Nov 2005
Posts: 130
Location: somewhere in Berlusconia.

PostPosted: Mon Dec 30, 2013 10:22 pm    Post subject: Reply with quote

mdeininger wrote:
erm67 wrote:
Butts McCracken wrote:
erm67 wrote:
Butts McCracken wrote:
erm67, you should try this. I have some pull with the creator if there are any parts you are desperate to have in your router :D

:-) :-)
I guess I will go with the usual busybox and uClibc, the less I have to install the better.
Well here you go, it gives you something to play with over new year: https://github.com/jyujin/curie

I think I will spend some time on
http://nbd.name/gitweb.cgi?p=luci2/procd.git;a=summary
and
http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=summary

They do a lot more, PID tracking mounting tasks network management and so on .....
maybe finally something will replace NetworkManager
eINIT had that... source code's still around on the same site... just sayin', those're very basic features ;D.

You know the times were not ripe for einit, now systemd and upstart raised the bar about what someone wants from an init system ..... maybe it could be the right moment to resurrect the project :-)

What is really incredible is that it took so many years for linux people to realize that the whole initd/rc system needed a refresh. initd was doing the pid tracking, who doesn't remember 'X is spawning too fast disabled for 5 minutes' errors? Having everything simply started from scripts and tell the user that they can easily manually restart it with a simple command worked for some time, but eventually something better should appear.
Why don't you just re-enter the competition?
Openwrt guys are desperately seeking a (really small) tool for the job, just like the openwrt wiki for procd says there is no tool reasonably small (a few kb at most, it needs to be run on systems with 32Mb) around. Possibly that doesn't write anything (beside pids), and log to syslog or to the printk buffer.
The network daemon is probably too complex, it should be able to handle complex networks, several interfaces, not just bring eth0 up :-) probably the openwrt guys knows better :-)

My small router could potentially have 4 wi-fi SSID 802.11n, 4 SSID 802.11a, 4 eth, 1 wan, adsl, 4 atm, 4 ppp, 4 IPSEC vlan; handle that it is not a job for an init system anymore.
_________________
Truck!!
A posse ad esse non valet consequentia
Πάντα ῥεῖ
Back to top
View user's profile Send private message
Subsentient
n00b
n00b


Joined: 09 Dec 2013
Posts: 2
Location: The blue void

PostPosted: Tue Dec 31, 2013 12:50 am    Post subject: Reply with quote

erm67 wrote:

I think I will spend some time on
http://nbd.name/gitweb.cgi?p=luci2/procd.git;a=summary
and
http://nbd.name/gitweb.cgi?p=luci2/netifd.git;a=summary

They do a lot more, PID tracking mounting tasks network management and so on .....

PID tracking: Yes.
Autorestarted services: Yes.
Facilities for service control: Yes.
Networkmanagement: Best left to something else IMHO.
Mounting tasks: I cannot think of a good place in the boot order to put something like that,
so I left it out. If I figure it out, I might add it in Epoch 1.1.
Back to top
View user's profile Send private message
Naib
Advocate
Advocate


Joined: 21 May 2004
Posts: 4076
Location: Removed by Neddy

PostPosted: Tue Dec 31, 2013 1:06 am    Post subject: Reply with quote

does it use XML? no self-respecting program wouldn't
_________________
A free press is the unsleeping guardian of every other right that free men prize; it is the most dangerous foe of tyranny. Where men have the habit of liberty, the Press will continue to be the vigilant guardian of the rights of the ordinary citizen.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Off the Wall All times are GMT
Goto page 1, 2, 3, 4  Next
Page 1 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum