| Crates.io | hysp |
| lib.rs | hysp |
| version | 0.1.2 |
| created_at | 2023-11-21 16:27:49.180007+00 |
| updated_at | 2023-12-13 15:07:45.497672+00 |
| description | ๐ฆ An independent package manager that every hacker deserves. |
| homepage | https://github.com/pwnwriter/hysp.git |
| repository | https://github.com/pwnwriter/hysp |
| max_upload_size | |
| id | 1044394 |
| size | 124,147 |
An independent package manager for unix and linux๐ท
I am a CTF player (Capture the flag) who often finds myself without my main laptop in places that lack the tools I need. Some distros don't carry the packages I require and some doesn't keep them updated. That's why I created my own package manager :). It fetches tool binaries easily, ensuring I always have what I need to compete.
Dont touch my shrug
Hysp or hysp-pkgs. Install Hysp as a single binary, no need for Go, Rust, or any other dependencies. Saves space, storage, and time.metis-os/hysp-pkgs) has all statically compiled binaries, only statically linked binaries that will run anywhere. You can always host dynamic or whatever you want.sha for varifying the binary.7. Security ConsiderationsIt is never a good idea to install random binaries from random sources.
Check these HackerNews Discussions
!# PKG Metadata # Everything is automated via Github Actions & Scripts Repo --> https://github.com/metis-os/hysp-pkgs WorkFlows --> https://github.com/metis-os/hysp-pkgs/tree/main/.github/workflows Scripts --> https://github.com/metis-os/hysp-pkgs/tree/main/.github/scripts !# Upstream Source # Everything is automated via Github Actions & Build Scripts Repo --> https://github.com/Azathothas/Toolpacks WorkFlows --> https://github.com/Azathothas/Toolpacks/tree/main/.github/workflows Build Scripts --> https://github.com/Azathothas/Toolpacks/tree/main/.github/scripts
git clone --depth=1 https://github.com/pwnwriter/hysp --branch=main
cd hysp
cargo build --release
Then go to release dir and ./hysp or move the binary to your any $PATH for instant access from anywhere.
๐ช Binary jq,curl, tar & wgetwget -qO- "$(curl -qfsSL "https://api.github.com/repos/pwnwriter/hysp/releases/latest" | jq -r '.assets[].browser_download_url' | grep -Ei "$(uname -m).*$(uname -s).*musl" | grep -v "\.sha")" | tar -xzf - --strip-components=1
./hysp -h
๐ฎ using Cargo ๐ฉ METIS Linux sudo/doas pacman -Sy hysp
๐ข Arch user repository paru/yay -S hysp-git
Firstly, if you intend to access the binaries installed via hysp over the system, you may want to...
Add the following line to your shellrc. [ zshrc, bashrc etc. ]
export PATH="$HOME/.local/share/hysp/bin/:$PATH"
Help menuhysp |install|uninstall|search| -h # check for help menu
Installing packages hysp install -p <foo,bar,buzz> # use --force to overwrite already installed binary, --quiet to supress console io
Removing packages hysp remove -p <foo,bar,buzz>
Search for available pkgs hysp search -p <pkg>
Checking configuration health hysp health
Hysp provies the following configuration, which can be overwritten by defining a config file in ~/.config/hysp/config.toml
[source]
remote = "https://raw.githubusercontent.com/metis-os/hysp-pkgs/main/data/x86_64"
metadata ="https://raw.githubusercontent.com/metis-os/hysp-pkgs/main/data/metadata.toml"
aarch = "Architecture"
[local]
home="/home/user/.local/share/hysp"
bin="/home/user/.local/share/hysp/bin/"
data="/home/user/.local/share/hysp/data/"
Explanation
| Name | Description | Default |
|---|---|---|
remote |
Package repository | metis-os/hysp-pkgs |
metadata |
Available pkg info | metis-os/hysp-pkgs/metadata.toml |
home |
Home for hysp |
hysp |
bin |
Directory to save the binaries | ~/.local/share/hysp/bin |
data |
Directory to save pkg data | ~/.local/share/hysp/data |
aarch |
Your system Architecture | Only supported X86_64,aarch64 |
๐ Tree view of the repo .
โโโ available.toml # Storing available pkgs info (Optional)
โโโ data
โย โโโ foo.toml # where the package data are stored (needed)
๐ Sample pkg [bin]
name = "$BIN" # Name of the pkg to be installed as
[package]
architecture = "x86_64" # Your aarchitecture
name = "$BIN" # Your package name
description = "$DESCRIPTION" # Description
author = "$AUTHOR" # Author
repo = "$REPO_URL"
stars = "${STARS}"
version = "$PKG_VERSION"
updated = "$PKG_RELEASED"
size = "$SIZE"
sha = "$SHA"
source = "$SOURCE_URL" # Source of the binary wherever it's hosted
language = "$LANGUAGE"
license = "$LICENSE"
[package.conditions]
conflicts = ["$BIN"] # Conflictions
requires = [] # Dependencies
[package.metadata]
keywords = $TOPICS
categories = ["Utilities"]
There is a list of packages available in metis-os/hysp-pkgs . You can confidently utilize the default configuration without any hesitation. However, if you prefer to host your own packages, you have the option to do so by creating your own custom configuration file under ~/.config/hysp/config.toml. See #repo
I am a student currently attending university. I like working for Open Source in my free time. If you find my tool or work beneficial, please consider supporting me via KO-FI or ESEWA* (Nepal only), Or by leaving a star โญ ; I'll appreciate your action :)
Everything is license under the MIT except for the packages...
They hold their own livess :oOO
Copyright © 2023 pwnwriter xyz โ๏ธ