Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make rakubrew available via winget #82

Open
ugexe opened this issue Jan 19, 2025 · 1 comment
Open

Make rakubrew available via winget #82

ugexe opened this issue Jan 19, 2025 · 1 comment
Labels
enhancement New feature or request

Comments

@ugexe
Copy link
Contributor

ugexe commented Jan 19, 2025

It seems like winget comes installed by default on Windows 11. It would be nice if rakubrew could be installed via winget since that might allow automatically handling the init stuff the user otherwise has to manually figure out. For example right now I can install rakubrew (capable of compiling) from a bare windows install using just winget by doing:

1) Install Parallels desktop
2) Open Parallels and choose install Windows 11
3) Open PowerShell terminal
4) Run `winget install -e --id Git.Git`
5) Run `winget install -e --id StrawberryPerl.StrawberryPerl`
6) Run `winget install --id Microsoft.VisualStudio.2022.BuildTools --override "--add Microsoft.VisualStudio.Workload.VCTools --includeRecommended --passive"`
7) Open Developer PowerShell for VS 2022 (use this as your command prompt from now on)
8) Run `. {iwr -useb https://rakubrew.org/install-on-powershell.ps1 } | iex`
9) ? (see https://github.com/Raku/App-Rakubrew/issues/81)

I'm not sure how winget dependencies work but that could be even shorter if winget rakubrew was capable of automatically installing (or telling the user ot install) git, perl, and vs build tools.

(Ultimately I'm trying to put together the steps a raku developer on apple silicon needs to follow to build and test rakudo on Windows, and so far the most difficult part is surprisingly getting the rakubrew command available after it is installed)

@ugexe ugexe added the enhancement New feature or request label Jan 19, 2025
@patrickbkr
Copy link
Member

patrickbkr commented Jan 20, 2025

Quick braindump. We'd need:

  • An MSI. Probably created by WiX. (Oh man. I dislike writing WiX XML files sooooo much...)
  • Since we'll need an MSI, we're probably depending on Installation warning on windows 10  rakudo/rakudo#4611 getting resolved (I'm on it, but after three years it's slowly getting exhausting.)
  • Figure out how we want to deal with upgrades / how winget deals with upgrades.
  • Figure out whether we want to depend on the winget Perl or keep using the monofile packaged Perl we're currently doing.
  • I sadly have low hopes that we'll be able to automate the init stuff away. The init stuff basically consists of adding a few lines of code to the users PowerShell or CMD profile. That's user and even PowerShell version specific. I'm unsure if doing it directly in an installer is a sensible choice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants