rakudo / rakudo.org

Code for rakudo.org website
https://rakudo.org/
Artistic License 2.0
8 stars 18 forks source link

Discussion PR: remove Rakudo Star if no longer maintained/updated #75

Closed nxadm closed 2 years ago

nxadm commented 2 years ago

This PR is intended as a starting point of a discussion about the prominence of Rakudo Star in the website while the distribution itself is no longer maintained and hasn't had updates for months.

People often pop in for support at #raku (while there isn't much we can do).

So in short, maybe:

Addition: to add to the confusion, there are 2 "official" repos: https://github.com/rakudo/star and https://github.com/Raku/rakudo-star

patrickbkr commented 2 years ago

MSI builds of Rakudo Star are still happening in an automated fashion (set up by @AntonOks at https://github.com/AntonOks/rakudo-star-win). I do regularly forget to upload them to rakudo.org. I did just upload the Windows MSI build of 2021.12. Source release and other compiled releases are currently unmaintained. I looked around a little and did notice https://github.com/rakudo/star/pull/167 So there is work being done, but we fail to delegate well. @AntonOks Can you give an update of your work?

nxadm commented 2 years ago

Thank you for the update, @patrickbkr. Does this mean there will be a 2021.12 Linux release as well or are the releases separated? Did someone take over as a maintainer of Rakudo Star?

patrickbkr commented 2 years ago

It's difficult to say. Currently no one has officially picked up the hat of Rakudo Star maintainer. AntonOks did quite some work on the build infrastructure, but has focused on the Windows MSI files (they are now automated). It's possible rakudo/star#167 is the start of automating the source release as well. I'm not entirely sure.

AntonOks commented 2 years ago

Hi.

AntonOks commented 2 years ago

Thank you for the update, @patrickbkr. Does this mean there will be a 2021.12 Linux release as well or are the releases separated?

https://github.com/AntonOks/star/releases

AntonOks commented 2 years ago

Addition: to add to the confusion, there are 2 "official" repos: https://github.com/rakudo/star and https://github.com/Raku/rakudo-star

https://logs.liz.nl/raku/2021-11-02.html#23:10

AntonOks commented 2 years ago

MSI builds of Rakudo Star are still happening in an automated fashion (set up by @AntonOks at https://github.com/AntonOks/rakudo-star-win). I do regularly forget to upload them to rakudo.org. I did just upload the Windows MSI build of 2021.12. Source release and other compiled releases are currently unmaintained. I looked around a little and did notice rakudo/star#167 So there is work being done, but we fail to delegate well. @AntonOks Can you give an update of your work?

What can I say?

  1. I'm still willing to help to bring the Star repo into a "usable" state... means providing regular updates / builds there.
    • The Linux RSTAR tool is already extended and the GH Actions do work in my clone here
    • The same applies for the Windows MSI build
    • I've never worked with / looked into macOS, so I have no real idea how to tackle this build so far...
  2. I don't mind if Rakudo Star will be discontinued neither. I personally need a MSI package with some additional modules and therefore I will continue to build one and provide a release on GitHub
    • Maybe I'll change it's name then to prevent further confusion here and there...
  3. IF you decide to remove Star from the official rakudo.org, you could still add a hint for people looking for additional packages.. pointing i.e. to your great Linux packages! , my repo and maybe also others?!?? ;)
nxadm commented 2 years ago

@AntonOks,

The reason for the PR is because Rakudo Star is promoted as the official distribution (it has its own tab on the webpage and it's also linked in Downloads), while the last few years the maintainer situation was spotty with long periods without one. That said it certainly has a user base, so I'm rather proposing finding a maintainer and only archive it if no candidate is found.

If you have the time to take it over, it would be great. If not, also OK. If you're not interested in Linux and/or MacOS packages, having a Windows centred distribution would be a great addition if marketed explicitly as such. Linking to this packages from the website sounds very logical to me.

AntonOks commented 2 years ago

@AntonOks,

That said it certainly has a user base, so I'm rather proposing finding a maintainer and only archive it if no candidate is found. If you have the time to take it over, it would be great. If not, also OK.

What is expected from a "maintainer"? I don't have the time to discuss things and align with "users" or other "stake holders", having meetings, participating in... whatever.

If you're not interested in Linux and/or MacOS packages, ....

Well, it's not so much about being interested... it's about not having ever touched macOS... so no system to test, no know-how. I do have some Linux and BASH know-how. Thats why I already extended the STAR BASH script(s) in my clone to build GH releases.

... having a Windows centred distribution would be a great addition if marketed explicitly as such. Linking to this packages from the website sounds very logical to me.

As said, if someone would merge my commits I'd step by step push all the already working changes in my cloned repo to the official one. So there would be Star builds created for Windows and Linux on GH... someone would need to copy them over to "rakudo.org" still.

patrickbkr commented 2 years ago

@AntonOks

What is expected from a "maintainer"? I don't have the time to discuss things and align with "users" or other "stake holders", having meetings, participating in... whatever.

There are no requirements whatsoever except "be good, don't be evil". Being maintainer means nothing more than being trusted access to work on things and being the one who does stuff.

As you already noticed, "no one cares" - this means that there currently is no maintainer feeling responsible for the Star bundle and thus no one who would notice pull requests or similar. There are users interested in Star.

So I propose that instead of creating PRs and waiting for a response from a maintainer that currently doesn't exist, you get write permissions to the star repository and ssh access to rakudo.org. Then you are free to improve the situation as you see fit.

If you agree I'll poke the respective people to give you access.

nxadm commented 2 years ago

I think you've proved you would be a great maintainer and I agree with what @patrickbkr writes.

However, it is important to define what Rakudo Star will be. Will it be the official distribution for the 3 biggest platforms (so all 3 need to have the same level of quality)? Will it be one more distribution (loosing the expectations raised by the official level)? Will it be a Raku counterpart of Strawberry Perl (let's face it, the Windows releases need the most love and prebuilt modules)? Etc.

I think this may be something the RSC may reflect about.

AntonOks commented 2 years ago

So I propose that instead of creating PRs and waiting for a response from a maintainer that currently doesn't exist, you get write permissions to the star repository and ssh access to rakudo.org. Then you are free to improve the situation as you see fit.

If you agree I'll poke the respective people to give you access.

Ok, an try. THANKS!

AntonOks commented 2 years ago

I think you've proved you would be a great maintainer and I agree with what @patrickbkr writes.

Well... THANKS

However, it is important to define what Rakudo Star will be. Will it be the official distribution for the 3 biggest platforms (no all 3 need to have the same level of quality)? Will it be one more distribution (loosing the expectations raised by the official level)? Will it be a Raku counterpart of Strawberry Perl (let's face it, the Windows releases need the most love and prebuilt modules)? Etc.

I think this may be something the RSC may reflect about.

Yeap, I'd say, someone "official" should first / asap decide how to continue with Star. If Star should stay and I get merge / write access to the repo, I'd merge my already done changes to ensure Star MSI ans RSTAR builds are available. And if someone explains how to copy them to rakudo.org, say ssh access, I'll see how to adopt this in the tool chain to also automate this...

patrickbkr commented 2 years ago

@AntonOks Can you send your SSH public key to rba in irc?

patrickbkr commented 2 years ago

@lizmat or @Altai-man Do you know who has admin permissions on rakudo/rakudo.org and rakudo/star? Can you grant write permissions to AntonOks?

Altai-man commented 2 years ago

I have no rights in that repo, no.

rba commented 2 years ago

@AntonOks Please send me pvt IRC message with your ssh public key.

lizmat commented 2 years ago

FWIW, the RSC agrees it would be ok to make Anton Oks R* maintainer.

Is there any other action needed now?

AntonOks commented 2 years ago

@AntonOks Please send me pvt IRC message with your ssh public key.

@rba Will do. Will have to learn first where / how to configure SSH keys in GitHub and how those would then be used in the Actions workflow(s) to later automatically copy the STAR artifacts... IF someone has helpful examples / explanations, I'd appreciate those to shorten my learning ;)

I'd later send half of the public key via a mail to your GitHub configured mail (-its.ch) and the other half over IRC (I guess you talk about the RAKU IRC chat / channel**?!?) => I consider this "split" as at least a bit of "security" ;| and hope it's ok with you this way?!

THANKS a lot!

AntonOks commented 2 years ago

FWIW, the RSC agrees it would be ok to make Anton Oks R* maintainer.

Is there any other action needed now?

THANKS.

I guess the left open topic is then "write / admin access" to https://github.com/rakudo/star?!

lizmat commented 2 years ago

An invite is on its way

nxadm commented 2 years ago

I'd later send half of the public key via a mail to your GitHub configured mail (**-its.ch) and the other half over IRC

The public part of the key is public. You can even post it on a website if you wish. The private part is only available to you and encrypted with a strong (long) passphrase.

AntonOks commented 2 years ago

Addition: to add to the confusion, there are 2 "official" repos: https://github.com/rakudo/star and https://github.com/Raku/rakudo-star

https://logs.liz.nl/raku/2021-11-02.html#23:10

So... WHO can / want to decide what should happen with https://github.com/Raku/rakudo-star finally? I'd still vote for deleting it....

lizmat commented 2 years ago

I will archive it after putting in a reference to https://github.com/rakudo/star, is that a plan?

AntonOks commented 2 years ago

I'd later send half of the public key via a mail to your GitHub configured mail (**-its.ch) and the other half over IRC

The public part of the key is public. You can even post it on a website if you wish. The private part is only available to you and encrypted with a strong (long) passphrase.

I know. Still I prefer to share this "spacial purpose" SSH public key, which I will create only to copy the made Star artifacts, only with as less people as possible / needed... and I don't trust IRC at all (less then mails, believe it or not ;) ).

nxadm commented 2 years ago

I will archive it after putting in a reference to https://github.com/rakudo/star, is that a plan?

Of course, the decision if for the maintainer. However, I would suggest adding the archive to a read-only orphaned branch of the star repository (with an note on the readme). Archiving the repo, and thus keeping its URL, will still confuse people that google for the project. 2c etc

AntonOks commented 2 years ago

I will archive it after putting in a reference to https://github.com/rakudo/star, is that a plan?

@lizmat So, when will the plan be put into reality?

lizmat commented 2 years ago

Done now: https://github.com/Raku/rakudo-star

AntonOks commented 2 years ago

@AntonOks Please send me pvt IRC message with your ssh public key.

@rba

I'm rarely in the IRC... haven't seen you "online" the last 2-3 times I was there... so I did send a mail just now (to your GitHub mail address) and attached my pub. key.

I'd still need some help how / where to upload the binaries and, if needed, how to re-create the rakudo.org/star web page...

patrickbkr commented 2 years ago

@AntonOks I use the following two scripts to publish files. That's all there is to be done. (Prerequisite: Having a gpg key set up and SSH access to the server) If you don't hear back from rba soonish, ping me.

sig.raku:

#!/usr/bin/env raku

unit sub MAIN(*@filenames, :$key?);

for @filenames -> $filename {
    my $unsigned-sig-file = $filename ~ '.checksums.txt.unsigned';
    my $sig-file = $filename ~ '.checksums.txt';

    run <gpg2 --detach-sign --armor>, |(('-u', $key) if $key),  '--', $filename;

    for <md5sum sha1sum sha224sum sha256sum sha384sum sha512sum> -> $tool {
        my $proc = run $tool, '--tag', $filename, :out;
        my $sig = $proc.out.slurp: :close;
        $unsigned-sig-file.IO.spurt: $sig, :append;
    }

    run <gpg2 --clearsign --output>, $sig-file, |(('-u', $key) if $key), '--', $unsigned-sig-file;
    $unsigned-sig-file.IO.unlink;
}

publish-release.raku:

#!/usr/bin/env raku

unit sub MAIN(*@files);

my $dir = $*PROGRAM.parent;

die 'Need at least one file to upload.' unless @files;

for @files -> $file {
    die "$file is not a file." unless $file.IO.f;
    run $dir.add("sig.raku"), $file;
    run |qw[ scp -P2222 ], $file, $file ~ '.asc', $file ~ ".checksums.txt",  qw[ rakudo.org@lavm-perl6infra-1.atikon.io:~/public_html/downloads/star ];
}
rba commented 2 years ago

@patrickbkr brilliant short summary. Thank you. @AntonOks publickey added, so you should be able to upload the release and trigger the update of the website if needed. Let me know if you need something else.