Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
"convert to openrc-run" on stable
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 1:24 am    Post subject: "convert to openrc-run" on stable Reply with quote

Hi. I just synced to latest on stable and updated openrc. An immediate problem is the "convert to openrc-run" warnings rolling off the screen.

After some searching, it seems that the warnings are just a tweak on openrc and not to be worried about, at least for now. However I do like to raise a few concerns and hear the community about this subject.

My observations: (correct me if im wrong)
1 gentoo is one of the few popular distros offering openrc; the majority have adopted systemd exclusively
2 openrc is maintained by debian maintainers
3 debian switched to systemd

This seems like a perfect formula for disaster. If i know anything about software development (admittedly i don't know very much), when maintainers are not responsible for their project and potentially have incentives to screw it, we are gonna end up with a poorly maintained if not intentionally screwed project. In this case, the project might be openrc.

Or maybe im cutting out paper dinosaurs.
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9679
Location: almost Mile High in the USA

PostPosted: Mon Aug 15, 2016 1:56 am    Post subject: Reply with quote

Gentoo is supporting openrc and I thought Gentoo was now the maintainers of OpenRC so if you keep using Gentoo, OpenRC will be kept up to date. However there will be limited support for binary packages that require systemd for no good reason. There's not much that can be done here depending on the package.

Please report bugs and the exact packages that generate warnings on bugs.gentoo.org. They may need to be brought upstream to the particular package but I thought most of them were managed by the Gentoo package maintainers.
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 2:11 am    Post subject: Reply with quote

eccerr0r wrote:
Gentoo is supporting openrc and I thought Gentoo was now the maintainers of OpenRC so if you keep using Gentoo, OpenRC will be kept up to date. However there will be limited support for binary packages that require systemd for no good reason. There's not much that can be done here depending on the package.

Please report bugs and the exact packages that generate warnings on bugs.gentoo.org. They may need to be brought upstream to the particular package but I thought most of them were managed by the Gentoo package maintainers.


You got me wrong. I didn't mean openrc should be replaced or anything. I am worried about openrc being screwed by people who don't care about it. You see, I am using openrc, and hope that it does not fail.

Another note. The cause of the warnings is upstream and arguably not even a bug on their part. They just swapped a naming convention. And as a result all the init scripts generates warnings. I have not investigated enough to see any further implications.
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9679
Location: almost Mile High in the USA

PostPosted: Mon Aug 15, 2016 2:50 am    Post subject: Reply with quote

Actually you got me wrong, and seems your facts are skewed. Gentoo maintains OpenRC and has / will keep vested interest in it.

But Gentoo does not have the clout to force packages to update their packages to the new standard. I'm sure that OpenRC will continue to support the existing standards for a long time because too much will break for no good reason, other than making the OpenRC interface look better/work faster.
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 2:57 am    Post subject: Reply with quote

eccerr0r wrote:
Actually you got me wrong, and seems your facts are skewed. Gentoo maintains OpenRC and has / will keep vested interest in it.

But Gentoo does not have the clout to force packages to update their packages to the new standard. I'm sure that OpenRC will continue to support the existing standards for a long time because too much will break for no good reason, other than making the OpenRC interface look better/work faster.

so gentoo maintainer introduced the switch from runscript to openrc-run? even more disturbing....
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9679
Location: almost Mile High in the USA

PostPosted: Mon Aug 15, 2016 5:33 am    Post subject: Reply with quote

Apparently so, but is it a problem when the old standards are still maintained, at least for the time being?

Or are you suggesting that software should stay static and never improve?

Systemd clearly has some benefits to standard init. Those who deny that fact are simply people who think the drawbacks outweigh the benefits. They see these benefits and want to try to incorporate some of these advantages into older init systems. However some of these features that systemd provides cannot simply be patched in, it requires a paradigm shift.

Some of these hacks to openrc are probably due to these improvements, trying to ensure that openrc service status tracking matches that of systemd when possible. Traditional sysvinit scripts simply don't care if services die or stopped, and that actually can be a problem that could be simply an annoyance to major dependency problems that can be tough to debug.
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 6:28 am    Post subject: Reply with quote

eccerr0r wrote:
Apparently so, but is it a problem when the old standards are still maintained, at least for the time being?

Or are you suggesting that software should stay static and never improve?

Systemd clearly has some benefits to standard init. Those who deny that fact are simply people who think the drawbacks outweigh the benefits. They see these benefits and want to try to incorporate some of these advantages into older init systems. However some of these features that systemd provides cannot simply be patched in, it requires a paradigm shift.

Some of these hacks to openrc are probably due to these improvements, trying to ensure that openrc service status tracking matches that of systemd when possible. Traditional sysvinit scripts simply don't care if services die or stopped, and that actually can be a problem that could be simply an annoyance to major dependency problems that can be tough to debug.

sigh. just google "gentoo convert to openrc-run" and you will see what i am talking about and what i am not.

Switch from runscript to openrc-run is hardly a feature, or at most a trivial one. You are welcome to talk about systemd and its benefits or otherwise, but that's irrelevant to these warnings. These are caused by a name switch, nothing more (I think).

This is not about systemd or grand improvements. This is about a trivial change that causes potentially thousands of init scripts to issue warnings. It's like a bottom saying "don't push, danger" and somehow someone pushed it and made into the stable repo.
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9679
Location: almost Mile High in the USA

PostPosted: Mon Aug 15, 2016 7:10 am    Post subject: Reply with quote

No it isn't, but it is about software progress to change APIs...
Name change is an API change, most likely due to making all API calls consistent, making a cleaner interface to openrc.

I guess it has been discussed: https://forums.gentoo.org/viewtopic-t-1007118-start-0-postdays-0-postorder-asc-highlight-runscript.html Turns out to be filename collision. Goes to show who gets to change filenames when there's a collision with some other package...Gentoo bends :(
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Mon Aug 15, 2016 7:24 am    Post subject: Reply with quote

tert wrote:
"gentoo convert to openrc-run"

Meanwhile practically all packages in the gentoo tree have been converted; the only exception I am aware of is sys-power/hibernate-script-2.0-r6.
Some of the packages have been fixed without a revbump, and some others like net-misc/netifrc still need a current testing version, but you can already now remove all the warnings generated by gentoo/upstream scripts by just reemerging offending packages or installing them in a new enough version. You only have to fix your own scripts.
Quote:
Switch from runscript to openrc-run is hardly a feature

It's sort of a bugfix: Consistent and presumably collision-free names should have chosen from the very beginning. Also other projects like eix had undergone a similar bugfix.
The earlier it is done, the less painful it is. For openrc, it was already quite late, but a fix is still better than cementing a bad convention even further.
Back to top
View user's profile Send private message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 7:40 am    Post subject: Reply with quote

eccerr0r wrote:
No it isn't, but it is about software progress to change APIs...
Name change is an API change, most likely due to making all API calls consistent, making a cleaner interface to openrc.

I guess it has been discussed: https://forums.gentoo.org/viewtopic-t-1007118-start-0-postdays-0-postorder-asc-highlight-runscript.html Turns out to be filename collision.

Ok. So it is about avoiding a debian name conflict in openrc which debian do not use any more... and every gentoo maintainer who has anything to do with init process must patch their packages; every user who uses a unpatched package must understand the reasoning behind it and agree?

It might be a API change or might not be. I don't think categorically. Practically, it means wasting our maintainers precious time for debian who now don't bother to give a sh*t about openrc or gentoo for that matter.

Ok. I got the naming convention rational better after washing off the debian bitterness from my mouth. There will always be name conflicts in software engineering. Usually the less important yields. Apparantly not for debian folks. I don't have problems with improvements. but I will remember this as debian swinging its giant body part at gentoo maintainers' face.
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


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

PostPosted: Mon Aug 15, 2016 10:08 am    Post subject: Reply with quote

tert wrote:
openrc is maintained by debian maintainers
I do not understand where the "openrc is debian stuff" issue originated from.
OpenRC History wrote:
This history of OpenRC was written by Daniel Robbins, Roy Marples, William Hubbs and others.

The Gentoo modular init scripts were developed by Daniel Robbins for Gentoo Linux 1.0_rc6 during most of 2001 and released in September 2001. After their development, the dependency-based init script system was maintained by a number of senior developers, starting with Azarah (Martin Schlemmer), with migration to the new init system assisted by Woodchip (Donnie Davies) who converted all ebuild init scripts to work with the new system.
(...)
Where does this start with Debian in the first place?

And further:
https://wiki.debian.org/OpenRC wrote:
OpenRC is a dependency based init system originated from Gentoo base system, while being kernel and distro neutral by using only C(ISO/IEC 9899:1999, aka. C99) and POSIX shell script.

This page records the on-going progress of packaging OpenRC for debian as an alternative to sysv-rc.
And for the reason, why /sbin/runscript is substituted, the naming conflict is with Minicom. A program that is referenced in several other distros wikis like ubuntu and Arch, so the "do not use any more..." conclusion might be a bit rash. ;-)
_________________
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
Naib
Watchman
Watchman


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

PostPosted: Mon Aug 15, 2016 10:31 am    Post subject: Reply with quote

Yamakuzure wrote:
tert wrote:
openrc is maintained by debian maintainers
I do not understand where the "openrc is debian stuff" issue originated from.
OpenRC History wrote:
This history of OpenRC was written by Daniel Robbins, Roy Marples, William Hubbs and others.

The Gentoo modular init scripts were developed by Daniel Robbins for Gentoo Linux 1.0_rc6 during most of 2001 and released in September 2001. After their development, the dependency-based init script system was maintained by a number of senior developers, starting with Azarah (Martin Schlemmer), with migration to the new init system assisted by Woodchip (Donnie Davies) who converted all ebuild init scripts to work with the new system.
(...)
Where does this start with Debian in the first place?

And further:
https://wiki.debian.org/OpenRC wrote:
OpenRC is a dependency based init system originated from Gentoo base system, while being kernel and distro neutral by using only C(ISO/IEC 9899:1999, aka. C99) and POSIX shell script.

This page records the on-going progress of packaging OpenRC for debian as an alternative to sysv-rc.
And for the reason, why /sbin/runscript is substituted, the naming conflict is with Minicom. A program that is referenced in several other distros wikis like ubuntu and Arch, so the "do not use any more..." conclusion might be a bit rash. ;-)
Exactly :) the OP seems to have mixed two concerns.

OpenRC was conceived and written by a Gentoo developer (politics aside as to why he left, I agree with Roy on his reasons)
It is maintained by Gentoo

While teh direction the present Gentoo dev is taking OpenRC is questionable, it doesn't change it is a Gentoo project. Debian raised concerns about namespace conflict some time ago and it was ... accommodated
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
miket
Guru
Guru


Joined: 28 Apr 2007
Posts: 488
Location: Gainesville, FL, USA

PostPosted: Mon Aug 15, 2016 3:44 pm    Post subject: Reply with quote

The connection to Debian came indirectly via using the name runscript as an executable. The serial-communication program Minicom (net-dialup/minicom) has a scripting feature. The program is useful and the script feature is helpful. The problem is that the executable that runs the scripts is called runscript. That's wayy too generic of a name. Running a script? What kind of script do you mean? Tons of packages have their own scripting languages. The name runscript carries no implication of which package's script it will run. It is a poor choice of a name. Minicom, however, has been around a long time. Even if most people's systems don't have minicom installed, the program has a long tail.

Debian, by the way, is the Minicom upstream.

While the execution of scripts is only ancillary to the use of Minicom, it's a central requirement of the use of OpenRC. An early decision in the development of OpenRC was to repeat the same mistake in naming the executable to run its scripts (which, by the way, are entirely unlike Minicom scripts). Most of the time, this was not a problem because of the infrequent deployment of Minicom and the fact that the executables have always been installed in different places.
  • OpenRC: /sbin/runscript
  • Minicom: /usr/bin/runscript

For almost anyone at the command prompt, this was not a problem: root using runscript from the Bash prompt would run an OpenRC script; a normal user entering the same command would run a Minicom script. The only hangup would be if root wanted to run a Minicom script from the command line (probably not a good idea anyway). Script shebang lines would be unaffected in either case:

Code:
   #!/sbin/runscript
   # What follows is an OpenRC runscript
Code:
   #!/usr/bin/runscript
   # What follows is a Minicom script



The rise of systemd complicated this situation.

There was a big debate in Debian about what init system to use. There was a strong case for OpenRC. Even though Debian itself went with systemd as the default, they left OpenRC available as an option. This means that Debian supports OpenRC, but now there was an evident conflict between its own Minicom and OpenRC.

For whatever reason, they didn't like Gentoo's way out of the name collision. It could have been a philosophical stance against directory tricks or maybe it was because they anticipated Lennart Poettering's intimations that he'd like to merge /bin/, /usr/bin/, /sbin/, and /usr/sbin/ into a single directory. (That's a whole 'nother discussion that I'll leave aside in this thread.)

In any event, Debian requested that OpenRC be the one to budge since Minicom was there first. Given Gentoo's solution to the naming problem, I don't know if a change on our part was warranted, but regardless of that, our maintainer blinked.
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9679
Location: almost Mile High in the USA

PostPosted: Mon Aug 15, 2016 4:13 pm    Post subject: Reply with quote

I happen to still use minicom (but don't use its runscript) so it is not a useless package. While I don't like the fact that the later and more popular OpenRC must change, I think it was the right call to change it versus minicom.

Glad there's no lawsuit on this, if there was a trademark lawsuit, minicom would have won due to being first, so the effect would have been the same.

I don't think running minicom as root is that big a deal, usually it's only used for debugging embedded devices where it's probably a very guarded environment anyway. Getting the permissions just right on minicom is probably the other pain anyway for something that's not going to be used by general users (who ever dials up BBSes anymore?) Granted if the device is sending zmodem requests then it could be a cause for alarm...
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
Myu
Apprentice
Apprentice


Joined: 22 Oct 2014
Posts: 164
Location: Belgium

PostPosted: Mon Aug 15, 2016 4:40 pm    Post subject: Reply with quote

Hello there,

I don't know if I should open a bug for it but openrc-0.21.3 render my LUKS home partition unmountable at boot time, same "convert to openrc-run" issue, I had to downgrade to 0.19.x
_________________
Gentoo stable with bits of ~amd64 // Xfce 4.13 + Compiz Reloaded.
Back to top
View user's profile Send private message
Naib
Watchman
Watchman


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

PostPosted: Mon Aug 15, 2016 4:51 pm    Post subject: Reply with quote

runscript is too generic in itself to exist system wide. for a binary called "runscript" within some openrc directory sure
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Mon Aug 15, 2016 4:55 pm    Post subject: Reply with quote

Myu wrote:
I don't know if I should open a bug for it but openrc-0.21.3 render my LUKS home partition unmountable at boot time, same "convert to openrc-run" issue

The two things are certainly unrelated. For the former, perhaps you should immediately open a bug if it had worked before.
Back to top
View user's profile Send private message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 8:36 pm    Post subject: Reply with quote

Thanks for the reply everyone. This thing turns out to be quite fishy. It is a relief to know that openrc is maintained by gentoo.
Back to top
View user's profile Send private message
tert
n00b
n00b


Joined: 18 May 2016
Posts: 11

PostPosted: Mon Aug 15, 2016 9:07 pm    Post subject: Reply with quote

miket wrote:
There was a big debate in Debian about what init system to use. There was a strong case for OpenRC. Even though Debian itself went with systemd as the default, they left OpenRC available as an option. This means that Debian supports OpenRC, but now there was an evident conflict between its own Minicom and OpenRC.

For whatever reason, they didn't like Gentoo's way out of the name collision. It could have been a philosophical stance against directory tricks or maybe it was because they anticipated Lennart Poettering's intimations that he'd like to merge /bin/, /usr/bin/, /sbin/, and /usr/sbin/ into a single directory. (That's a whole 'nother discussion that I'll leave aside in this thread.)

In any event, Debian requested that OpenRC be the one to budge since Minicom was there first. Given Gentoo's solution to the naming problem, I don't know if a change on our part was warranted, but regardless of that, our maintainer blinked.

C'mon. I don't have to be seasoned in opensource development to know that Option = Almost Never. This is certainly the case for openrc under debian and its derivatives.

My guess is that back in 2013 or so, gentoo maintainers saw that there might still be chance for openrc in debian to repel sysd, and accordingly they were willing to skew openrc to make the way because of the long term benefits staying in debian.
Back to top
View user's profile Send private message
Myu
Apprentice
Apprentice


Joined: 22 Oct 2014
Posts: 164
Location: Belgium

PostPosted: Tue Aug 16, 2016 11:19 am    Post subject: Reply with quote

Quote:
The two things are certainly unrelated. For the former, perhaps you should immediately open a bug if it had worked before.


Aren't they ? The only thing I've updated is openrc and now my previously working config doesn't work anymore so it looks like a regression.

I'll make sure to open a bug when I get some time to re-upgrade to 0.21.x and note down the error(s) messages :)
_________________
Gentoo stable with bits of ~amd64 // Xfce 4.13 + Compiz Reloaded.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Tue Aug 16, 2016 3:32 pm    Post subject: Reply with quote

Myu wrote:
Quote:
The two things are certainly unrelated. For the former, perhaps you should immediately open a bug if it had worked before.

Aren't they ? The only thing I've updated is openrc and now my previously working config doesn't work anymore so it looks like a regression.

I agree that it looks like a regression. That's why I recommended to open a bug immediately (if it worked before).
What I meant is that this regression is certainly unrelated with the warning concerning the runscript->openrc-run switch: The latter is just a warning, still.
Back to top
View user's profile Send private message
Myu
Apprentice
Apprentice


Joined: 22 Oct 2014
Posts: 164
Location: Belgium

PostPosted: Tue Aug 16, 2016 4:17 pm    Post subject: Reply with quote

Hello mv, thanks for your input :)

I've made a test with openrc-0.21.3 and upon reboot, I'm prompt to enter my LUKS password as usualy but the upper line says :

Code:
/etc/init.d/dmcrypt uses runscript, please convert ...


Here's the bug report
_________________
Gentoo stable with bits of ~amd64 // Xfce 4.13 + Compiz Reloaded.


Last edited by Myu on Tue Aug 16, 2016 4:27 pm; edited 1 time in total
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9679
Location: almost Mile High in the USA

PostPosted: Tue Aug 16, 2016 4:22 pm    Post subject: Reply with quote

You can hack /etc/init.d/dmcrypt to use openrc-run and try again, then you can say whether it really was the issue...
Looks like some deeper debug is needed.
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
Myu
Apprentice
Apprentice


Joined: 22 Oct 2014
Posts: 164
Location: Belgium

PostPosted: Tue Aug 16, 2016 4:44 pm    Post subject: Reply with quote

Quote:
You can hack /etc/init.d/dmcrypt to use openrc-run and try again, then you can say whether it really was the issue...


That was worth a try, no luck though (or is it ... no luks :mrgreen:), the message disappears but the drive isn't mounted.
_________________
Gentoo stable with bits of ~amd64 // Xfce 4.13 + Compiz Reloaded.
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Tue Aug 16, 2016 4:58 pm    Post subject: Reply with quote

Like mostly all changes done in a sane way, before dropping /sbin/runscript support, you should have a transition step, where you keep item1 and in the same time have item2 set ; after some time you drop item1 and keep using item2, a delay that allow anyone to stop using item1.
Code:
equery f openrc | grep sbin| grep run
/sbin/openrc-run
/sbin/runscript


Only when /sbin/runscript will be gone, "old" scripts will have trouble.

You should look at another change in openrc instead, read the nofail news.
When you boot if the device doesn't exists and you didn't set it as nofail, openrc will stop.
And because /dev/sdb2 exists, but /dev/mapper/homedir only exists because of dm-crypt, your fstab entry is bad if dm-crypt is start after openrc has handle your fstab ; which by logic should be the case.
Note that your dm-crypt "started" assumption in your bug report is bad: it's not because dm-crypt is set to start as default that it was start ; it will start only if services it depend were started, and it could have just never start waiting them to do so.
If you want the "weird" logic behind that:
no-nofail on drive -> try mounting drive -> fail -> all services that depend on it to be mount are stopped waiting for you to fix it
nofail on drive -> try mounting drive -> fail -> services assume it was ok and continue, so depending services will be loaded.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
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