A simple package manager for Linux, macOs and Windows.
Sage is a cross-platform system package manager that helps you download, install, update and remove software packages at will, and you can do so with just a couple commands.
But wait, you may be telling yourself:
"What even is a system package manager?"
Well, it's quite like your typical package managers, like
node's npm or rust's cargo. The difference is that it's not associated to a
specific programming language, but rather to your operating system.
With things like npm and cargo you would install libraries or binaries
written in their associated programming language, but with a system package
manager, like Sage, you can install anything that you want, from tools like
cat
or grep
to programming language SDKs like openjdk
, provided that it is somehow available to the package manager.
If you are familiar with Linux, and to some extent with macOs, then you have probably used a package manager of this sort before. Debian's apt, Arch's pacman and macOs's homebrew are a couple of examples of system package managers that people which use those OSes interact with all the time.
I know that by now you may be thinking: "If there are so many system package managers out there, then why bother creating a new one? This sounds like a waste of time, I'll just leave". Wait! Don't go anywhere just yet and hear me out, because there is a very good reason for another package manager to exist.
Most package managers out there only work for a specific platform: apt only works on debian based systems, pacman only works on the mighty Arch system, and homebrew only works on unix-based systems. That means that if you are one of those people that uses several operating systems at the same time, you would have to get used to working with two to three different pieces of software to manage every single program that you use.
Sage, on the other hand, works fine on every mayor OS out there. Linux? Check. MacOs? Check. Windows? Check. And, the best part of it is that it works the same no matter the platform.
Sage was built using the Rust programming language.
- Rust: To get Sage up and running in your system you first have to install Rust. I recommend using the rustup tool provided by the Rust developers.
Then, after that you should run the following command:
$ cargo install --git https://github.com/rvillegasm/sage
That will clone the repo, compile it and add it to your PATH.
$ sage info <name-of-package>
$ sage details <name-of-package>@<version>
$ sage download <name-of-package>@<version>
$ sage install <name-of-package>@<version>
See the open issues for a list of proposed features (and known issues).
The proyect is still in early development, and MANY more features and helpful documentation will be introduced in the comming months.
Please, if you have an idea about some new feature, and you want to add it to Sage, please do so!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Rafael Villegas Michel - rafa.villegas.michel@gmail.com
Project Link: https://github.com/rvillegasm/sage