Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
New startup system: Epoch
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
srs5694
Guru
Guru


Joined: 08 Mar 2004
Posts: 434
Location: Woonsocket, RI

PostPosted: Mon Nov 11, 2013 2:28 pm    Post subject: New startup system: Epoch Reply with quote

Hi,

I ran across an announcement on another forum for a new startup system called Epoch:

http://universe2.us/epoch.html

The developer is looking for beta testers, and knowing how many people on this forum get passionate about startup systems, I thought I'd toss this out as an alternative. Note that I've not tried it myself, and I don't know its developer personally, aside from that post. I just thought that some people here might be interested. The announcement I read advised using the git repository rather than the "Beta 1" download link.
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2282
Location: Adendorf, Germany

PostPosted: Fri Nov 15, 2013 4:14 pm    Post subject: Reply with quote

From the log on https://github.com/Subsentient/epoch it looks like the project is really active! Quite interesting...
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Sat Dec 07, 2013 9:27 pm    Post subject: Reply with quote

Now available in the Portage tree as sys-apps/epoch!

Can boot it on my laptop, just having trouble to set up more difficult parts of a boot (eg. NetworkManager to get my WiFi up); I will probably use this on my Raspberry Pi.
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3509

PostPosted: Sat Dec 07, 2013 9:47 pm    Post subject: Reply with quote

Would someone who knows more care to compare Epoch to the SysV/OpenRC that Gentoo'ers are probably more familar with?

I don't know much of anything about bsd init, other than it exists. If it's a more valid comparison point I'd be curious to hear that, too.
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
Anon-E-moose
Watchman
Watchman


Joined: 23 May 2008
Posts: 6097
Location: Dallas area

PostPosted: Sat Dec 07, 2013 10:39 pm    Post subject: Reply with quote

From the link in the first post

Quote:
Here is a list of notable features Epoch provides:

One file configuration system for easy configuration and unrivaled control.

Built-in optional logging system capable of recording events even before the filesystem is writable, WITHOUT an initial ramdisk.

Epoch provides it's own implementation of killall5 and wall, though use of these is optional.

Epoch has no dependencies besides a linux kernel, libc, and pthreads, and a working /bin/sh is suggested, but Epoch can be built to not require it.

Epoch's MountVirtual configuration attribute can be used to automatically mount filesystems such as /dev/, /proc, /sys, /dev/pts, etc with the correct permissions, before any services are launched.

Epoch has support for automatically restarting stopped services via the AUTORESTART option.

Epoch provides service control through the 'epoch' command, including start and stop, disable and enable, status, runlevel management, and much more, all without dependencies such as dbus or piles of shell scripts.

Epoch tracks the PIDs of all services, supports PID files, and supports sending signals to a PID to stop a service.
Epoch provides support for a boot banner greeting message with color support, and the ability to read the banner from a file.

Epoch provides support for setting the hostname before any services are started, optionally from a file.

Epoch uses a protocol called the membus to send information over shared memory, making communication simple from Epoch's applets to init, and enabling the creation of C/C++ third party configuration GUIs etc.

All Epoch applets besides the root 'epoch' executable are symbolic links, meaning that you can choose which killall5 or wall binary you use, and that by replacing the 'epoch' binary, you update the entire init system.

Epoch does not require a tree of complicated directories scattered across the system to hold it's configuration and data, but rather requires one directory in /etc for it's one configuration file, and, if logging is desired, a location such as /var/log, though these options can be changed at compile time.

Ever have a task get stuck forever when booting or shutting down? Hit CTRL-ALT-DEL once to kill that pesky task, and hit it again within five seconds to reboot. This is, as far as I know, a unique and very useful feature.


Quite interesting features. I may play with this in a qemu virtual arena.
_________________
PRIME x570-pro, 3700x, 6.1 zen kernel
gcc 13, profile 17.0 (custom bare multilib), openrc, wayland
Back to top
View user's profile Send private message
tranquilcool
Veteran
Veteran


Joined: 25 Mar 2005
Posts: 1179

PostPosted: Tue Dec 10, 2013 7:58 am    Post subject: Reply with quote

TomWij wrote:
Now available in the Portage tree as sys-apps/epoch!

Can boot it on my laptop, just having trouble to set up more difficult parts of a boot (eg. NetworkManager to get my WiFi up); I will probably use this on my Raspberry Pi.



could you please post your epoch.config file?
thanks.
_________________
this is a strange strange world.
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Tue Dec 10, 2013 6:09 pm    Post subject: Reply with quote

tranquilcool wrote:
could you please post your epoch.config file?


Most of what is in my config is the example config that sys-apps/epoch installs to /etc/epoch/epoch.conf; my local one additionally sets the Dvorak keyboard layout and I am trying to get networking to work properly, you can find it at https://gist.github.com/TomWij/0dce576f81708350104c

Preferably I would like to get NetworkManager to work, but as a fallback I'm trying to get wpa_supplicant working again instead; I think I'm missing a piece somewhere as it connects but then disconnects, but I'll guess I'll discover the problem once I have another take at it during spare time. Will first try to get this working on my Raspberry Pi as that is a wired connection and I don't need a DE there.
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3509

PostPosted: Tue Dec 10, 2013 8:41 pm    Post subject: Reply with quote

TomWij wrote:
tranquilcool wrote:
could you please post your epoch.config file?


Most of what is in my config is the example config that sys-apps/epoch installs to /etc/epoch/epoch.conf; my local one additionally sets the Dvorak keyboard layout and I am trying to get networking to work properly, you can find it at https://gist.github.com/TomWij/0dce576f81708350104c

Preferably I would like to get NetworkManager to work, but as a fallback I'm trying to get wpa_supplicant working again instead; I think I'm missing a piece somewhere as it connects but then disconnects, but I'll guess I'll discover the problem once I have another take at it during spare time. Will first try to get this working on my Raspberry Pi as that is a wired connection and I don't need a DE there.


Shouldn't you be running wpa_supplicant after dhcpcd, instead of before? Seems to me that wpa_supplicant might succeed at associating, then give up because dhcpcd isn't there to have the conversation to get an IP. (This is presuming that either order matters, or lower priority numbers are higher priority.)
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Tue Dec 10, 2013 9:59 pm    Post subject: Reply with quote

Ah right, because the DHCP client does the "waiting for carrier" thing; I now see, I'll try that later. :)
Back to top
View user's profile Send private message
Subsentient
n00b
n00b


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

PostPosted: Thu Dec 12, 2013 3:55 am    Post subject: Reply with quote

Well, I use Epoch on all my systems because that's better for debugging since I have to maintain it, but I run git/master.
I also cannot get NetworkManager to run under the normal user, but I'm on Fedora on most machines which have their love for systemd which loves dbus.
You can start nm-applet as root and that works OK.
NetworkManager needs dbus, btw, so make sure dbus starts before NetworkManager.

@TomWij: Take a look at my current config file for some ideas. http://universe2.us/collector/epoch.conf

BTW: If you find bugs, please PM me, because RC1 was not as bug-free as I thought.
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Thu Dec 12, 2013 11:15 am    Post subject: Reply with quote

Subsentient:
This looks like a nice tools, alas, your faq is a stopper.

Q: I have a patch to contribute. Will you accept it?
Why should i adapt my system to epoch ; if it's to finally see its maintainer refuse patch from other and limit its grow speed / bugfixes / improvment?
It's also dangerous to put your bet on an init that is maintain by one person only, once he gets bored, he could drop the project without notice.

Q: Is the Epoch Init System compliant with the I.T.S.U.K.X 1932 UNIX standard
This mean epoch is like systemd, a regression.
It's not like one cannot make a program that is portable but still add some extensions only support by a system. Like if #ifdef doesn't exist...

So to me it looks like a hobby project, that could be of some use in embed linux system with a blur future. This is too limiting, specially for an init system.

I'm sure you takes fun making it, but as user, playing with init is not funny.
It might be interesting for systemd users, as at least the portability is no more in balance, but vs openrc or even sysv, it looks too tight.
With all great features it have, it kinda looks like a poisoned cake : omg it looks so nice, i want eat it : but i can't eat it.
Back to top
View user's profile Send private message
Subsentient
n00b
n00b


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

PostPosted: Fri Dec 13, 2013 6:21 am    Post subject: Reply with quote

@krinn: I suppose that honesty is best expressed by immediately writing a response without reviewing it, so you can take this seriously :^)

I tell people I'm not going to accept patches because once upon a time, I started a project. It was a fork of one of my favorite games. For months, it progressed, became excellent, and surpassed all my hopes. Then, I hit a bug I wasn't able to fix, because I'm no good at math. I enlisted the help of another. He accepted. Within two weeks, the codebase had been turned into a pile of semi-illegal unreadable trash so severe I had to reset the git branch to a month in the past to recover. I was unable to recover the project to it's former glory after that, and while it's still technically active, I don't know how I can fix this.

For this reason, I am incredibly wary of outside contributors. I will fix bugs that are reported to me and add features if I think they are a good idea, but I cannot guarantee I will implement YOUR version of the patch, and I really don't want to sound too friendly about patches, because that's exactly what ruined my last project.
Maybe I'm not thinking clearly and clinging to rage and fear, but there is a lot of it over what was done, and I don't want history to repeat itself.


As for Epoch being a hobbyist project, no. It's not a hobby. I've spent months on this project and put the rest of my life on hold because I believe that Epoch can be something very worthwhile, not only for me, but for the Linux world, if I handle things correctly. I won't abandon this project and I won't leave it to rot. If I don't have time for it I'll find someone who does. I've seen developers abandon useful projects before to everyone's detriment, the Tiny C Compiler being a prominent example that pissed me off, and I don't intend to follow in their selfish and negligent footsteps.

As far as standards go, they can hold you back. Severely. Systemd had some very good ideas and some good features, but their mistake was attempting to assimilate your system. It gets in the way, attempts to remove all alternatives to itself by eating core components, and is a disaster for small rescue/hobby distributions like ttylinux due to the fact they need to pull udev out of systemd's git, and the fact they need to increase the size of their kernel just to execute /sbin/init. Epoch won't do anything particularly stupid, but if a standard must be broken to add something worthwhile, and no true ill effects are visible, so be it. If it's just paper, oh well. If it's going to break something, I'll conform.

I hope that clarifies my intentions and thoughts.

-Subsentient
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Fri Dec 13, 2013 2:01 pm    Post subject: Reply with quote

Thank you for your answers.
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 3334
Location: Rasi, Finland

PostPosted: Fri Mar 24, 2017 2:22 pm    Post subject: Reply with quote

Let's bump this topic back up.

Has anyone been using epoch?
Does Gentoo provide service/init -files for epoch too? This table tells that it's supported. But does it only mean that it's in gentoo repository/overlay and nothing else?
_________________
..: Zucca :..
Gentoo IRC channels reside on Libera.Chat.
--
Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Fri Mar 24, 2017 8:31 pm    Post subject: Reply with quote

It's impossible to provide service files for this, because unlike every other service manager in existence it chose to lump everything into a single config file. There's a reason every other system daemon moved away from the "1000 lines, 1 ini file" model years ago...
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10587
Location: Somewhere over Atlanta, Georgia

PostPosted: Fri Mar 24, 2017 8:59 pm    Post subject: Reply with quote

From the web page:
Quote:
Single or multiple configuration file setup, your choice.
so he appears to have fixed that particular wart. It's not too active, though, as the last commit was 9 months ago.

- John
_________________
I can confirm that I have received between 0 and 499 National Security Letters.
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 3334
Location: Rasi, Finland

PostPosted: Sat Mar 25, 2017 8:06 am    Post subject: Reply with quote

Maybe it's "ready". :P

Anyway. I kinda like the configuration minimalism. I would have maybe tested this, but creating configuration files to replace ~every /etc/init.d/* entry manually seems a bit too much on the systems I have currently up.
I could, however, try this out eventually on my Raspberry Pi...
_________________
..: Zucca :..
Gentoo IRC channels reside on Libera.Chat.
--
Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
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