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

Allow installing outside of ~/.local/bin and allow using no toolchain #208

Open
ethanc8 opened this issue Jan 29, 2025 · 1 comment
Open

Comments

@ethanc8
Copy link

ethanc8 commented Jan 29, 2025

Swift toolchains override system-provided binaries such as lldb and clang, which might not be suitable for non-Swift-related things that people may want to do on the same system. Also, using ~/.local/bin to store the binaries is not ideal since ~/.local/bin is also the place for the user to put their own binaries, so if they want to temporarily go back to the system binaries they can't simply remove ~/.local/bin from the path. Since there's an activation script already, the activation script could be modified to change this to something like ~/.local/share/swiftly/current/bin, so then the user could still have their personal binaries on PATH if they don't source the swiftly activation script. Also, the "use" mechanism might be able to be modified to allow unusing a toolchain.

@cmcgee1024
Copy link
Member

Thank you for reporting this issue.

The next version of swiftly will be changing a number of these things. The swiftly binaries and symlinks no longer go into ~/.local/bin. Instead, they will go into ~/.local/share/swiftly/bin and you have the option of whether or not to automatically add this to your path with a flag at initialization time.

In terms of unusing a toolchain, there is no way to do that currently. Hopefully the mechanism above is enough to allow you to switch between other paths that provide the clang, lldb, and other overlapping tools.

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