Re: default gems in ruby deployment

2022-06-02 Thread Tim Meusel

Hi!

On 01.06.22 23:05, Andreas 'Segaja' Schleifer wrote:

On 6/1/22 20:31, Anatol Pomozov wrote:

Hello Andreas

Thank you for your research.

The standard gems are indeed a source of confusion both in Ruby 
distribution and in Arch packages.


One thing that could really help here is a working proposal with a 
patch to PKGBUILD. If you can come up with one please file an arch bug 
and share it with me so I can look at it.



Hi again,

The problem is that in order to get this fully working we need to 
package all 74 stdlib ruby gems. Currently we have only packaged 9 of 
them from which 5 are in the AUR.


My proposal to get this into a working state are these steps:

- remove all gems from the ruby package which are already packaged as 
dedicated packages in [extra] or [community]
- create a ruby-stdlib meta package which requires the existing ruby 
stdlib packages

- make the ruby package require the new ruby-stdlib package



I talked to Segaja about this a lot on IRC before he submitted it to the 
ML. I think this is a very good approach to fix our slightly broken Ruby 
ecosystem. I also think that the ruby PKGBUILD should be updated before 
the Ruby 3.1 Rebuild. I'm happy to help packaging the stdlib gems.


Cheers,
Tim
These steps should clear up the situation for the few existing separate 
builds of the stdlib packages.
Then we can successively package the other stdlib packages and once one 
is done remove it from the ruby package and add it as dependency to the 
ruby-stdlib package.


Next week I can prepare the ruby-stdlib package and a patch to the ruby 
package to get the first steps of this plan working.


Best regards
Segaja


OpenPGP_signature
Description: OpenPGP digital signature


Re: default gems in ruby deployment

2022-06-19 Thread Tim Meusel

Hi,

On 14.06.22 21:18, Andreas 'Segaja' Schleifer wrote:

On 6/14/22 10:17, David Runge wrote:

Hi Andreas,

first off: Thanks for looking into this! I guess not all of the
packagers knows how complicated and time-consuming packaging ruby can
be.

On 2022-06-01 23:05:45 (+0200), Andreas 'Segaja' Schleifer wrote:
The problem is that in order to get this fully working we need to 
package

all 74 stdlib ruby gems. Currently we have only packaged 9 of them from
which 5 are in the AUR.


If you have created a list somewhere and if I have some spare time, I'd
be glad to help package some.


My proposal to get this into a working state are these steps:

- remove all gems from the ruby package which are already packaged as
dedicated packages in [extra] or [community]
- create a ruby-stdlib meta package which requires the existing ruby 
stdlib

packages
- make the ruby package require the new ruby-stdlib package

These steps should clear up the situation for the few existing separate
builds of the stdlib packages.
Then we can successively package the other stdlib packages and once 
one is

done remove it from the ruby package and add it as dependency to the
ruby-stdlib package.

Next week I can prepare the ruby-stdlib package and a patch to the ruby
package to get the first steps of this plan working.


As the ruby sources will drag in the vendored dependencies it could
prove beneficial to have ruby's PKGBUILD carry ruby-stdlib as a split
package (unless you think that complicates things).
That way it is easy to determine if a new vendored dep is added or
removed as well.

Best,
David





Hello everyone,

thanks for the words of support. Once we agree on a way to go I can 
generate some kind of TODO list (not in archweb) so that we know what we 
need to do. Also I would recommend that any new packaged gems should be 
source builds and if possible have tests enabled.




I highly agree with this. We should move away from downloading blobs 
from rubygems.org.



As to the state of things and a patch for the PKGBUILD:

I have a diff of the ruby PKGBUILD ready [0]. I’m adding another split 
package to the mix called ruby-stdlib which is defining the dependencies 
we already have.
Furthermore I’m removing the stdlib gem from the base ruby package which 
we already have as a dedicated package.


In the end we need to do this for all of the stdlib and bundled gems 
once they are packaged. Afterwards we can simplify the cleanup logic 
that happens in `package_ruby()` again.


sounds good to me.



One more point I would like to bring up is that currently the ruby 
package [1] only has one maintainer (Anatol) and I think we should 
increase the bus factor for this package. I don’t consider myself an 
expert for ruby packaging, but I would be happy to help out.
The only problem is that the package is currently located in [extra] 
where I don’t have write permissions to as a TU. What would be the 
effort / impact of moving this package (and other related ruby packages) 
to [community] to have more people (maybe also David or Tim) maintain it?


As mentioned on IRC: I'm happy to help out and I think it would be good 
for our package quality if more people could work on the Ruby package. 
If that means it needs to be moved to community I'm +1 for the idea (not 
that I could decide this).


We also should update the comments at the beginning of the PKGBUILD 
file, as it currently only lists people as “Contributor” and no one as 
“Maintainer”.


Best regards
Segaja

[0] https://paste.xinu.at/Fve7R/
[1] https://archlinux.org/packages/extra/x86_64/ruby/



OpenPGP_signature
Description: OpenPGP digital signature


Re: default gems in ruby deployment

2022-07-16 Thread Tim Meusel

Hi,
I did some testing with the new packages, everything worked fine. I 
think we're fine moving them to Community.


Cheers,
Tim

On 13.07.22 22:57, Andreas 'Segaja' Schleifer wrote:

Hello,

I have applied my patch and pushed the changes to [community-testing].

It would be nice if some people could test it and report back to me.

If anyone has any points what we still should change in the package then 
please voice them.



Best regards
Andreas


OpenPGP_signature
Description: OpenPGP digital signature