Skip to content
Neonwave175Public

About

A rolling release package manager

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

47 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Luna Package Manager

Fast, quirky and experimental like Luna Lovegood

Logo

Instalation

Requirements: Zsh as the shell, python3 (3.10+), pip, wget, git, all the stuff needed to compule the software you install (cmake, swift, cargo, go and so on)

How to install: Kinda simple: Just run curl https://raw.githubusercontent.com/Neonwave175/Luna/refs/heads/main/setup.sh | zsh

CLI

  • luna install <package name>: installs the package or lunfile
  • luna remove <package name>: removes the package name
  • luna add <package name> <git url> <compile command> <configure command> <install command>: adds the originfile for a new package
  • luna list: lists all packages
  • luna update: updates all packages
  • luna-update: alias to update luna itself

GUI

launch from the terminal by using luna-gui This is self-explanatory hopefully If not, don't use it

NOTE SwiftUI based GUI comming in the future, that is the reason for the C API

API

Python

from luna import lunaapi as luna
packagelist = luna.list_packages() #returns a list
luna.install("neovim", log_cb=print) #Installs
luna.add("tokei", "https://github.com/XAMPPRocky/tokei.git", "cargo build --release", "mkdir -p ~/.local/luna && cp target/release/tokei ~/.local/luna/") #adds originfile
luna.remove("cmatrix") #removes
btop = luna.get("btop") #returns info
commitofbtop = luna.get_remote_commit(btop["url"]) #takes in URL
checkupdate = luna.needs_update("argon2") #Yes the hashing algorithm, returns false of not on the latest version
luna.update_all() #updates all
luna.version() #returns the current verion

About

A rolling release package manager

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages