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

Request: asdf/mise plugin #499

Open
AndydeCleyre opened this issue May 16, 2024 · 2 comments
Open

Request: asdf/mise plugin #499

AndydeCleyre opened this issue May 16, 2024 · 2 comments

Comments

@AndydeCleyre
Copy link

Hello, and thanks for tup!

Unfortunately many distros have only pretty old releases packaged in their repos, while new releases have some important and appreciated features. To make it easier to install new versions across distros, it would be super handy to have a plugin available for asdf/mise, so this is a a request for such a plugin.

@gittup
Copy link
Owner

gittup commented May 20, 2024

I haven't heard of asdf/mise before - do distros use them to update packages? I haven't been involved in the packaging-things-on-distros side of the equation, and largely leave that up to interested users of those distros to package tup for them. However, I'm not at all opposed to including things in tup that make that easier (eg: the contrib/debian/ set of files). Can you clarify what you're looking for here? Or is there something tup should model itself after?

@AndydeCleyre
Copy link
Author

AndydeCleyre commented May 20, 2024

do distros use them to update packages?

Rather, users use them to manage development runtimes independently of whatever versions are available in the distro repos. So a git repo or individual user might have a text file .tool-versions with a single line:

python 3.12 3.11 3.10 3.9 3.8 3.7

Other lines could be added for other runtimes (node, go, make, etc.).

If they are using the asdf or mise shell plugins, shims or the PATH will be updated when they are inside the containing folder, so that the runtimes are installed and at those expected versions, regardless of the larger system/distro versions.

Mise has an alternative file format, .mise.toml.

Mise is newer and in my opinion much better than asdf, but they use the same "plugin" format and ecosystem. Here's an example of setting up a newer-than-distro-repo make for a new project:

$ mkdir newproj && cd newproj
$ which make && make --version
/usr/bin/make
GNU Make 4.3
$ mise use make@latest
mise ⚠️ make is a community-developed plugin
mise url: https://github.com/yacchi/asdf-make
 Would you like to install make? Yes
mise plugin:make ✓ https://github.com/yacchi/asdf-make.git#2f12c4d                                                                                            mise ~/Code/newproj/.mise.toml tools: [email protected]
$ which make && make --version
/home/andy/.local/share/mise/installs/make/latest/bin/make
GNU Make 4.4.1
$ cat .mise.toml
[tools]
make = "latest"

These configuration files can also be used by CI systems.

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

No branches or pull requests

2 participants