Go to file
Elara Musayelyan 1133785dbd
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Add helper command
2023-10-09 23:06:48 -07:00
assets Move logo into repo 2022-12-22 13:55:29 -08:00
docs Update lure-web domain to lure.sh 2023-10-07 12:12:00 -07:00
internal Fix packages with 'all' architecture 2023-10-09 18:39:59 -07:00
pkg Look for provides matches before direct matches when finding packages 2023-10-09 20:05:06 -07:00
scripts Update install script 2023-10-07 02:32:40 +00:00
.gitignore Add Dockerfile and docker.sh script 2022-12-20 21:24:15 -08:00
.goreleaser.yaml Fix differences between nfpms and archives in goreleaser file 2023-10-07 14:42:34 -07:00
.woodpecker.yml Set woodpecker platform to amd64 2023-10-07 14:51:43 -07:00
build.go Update import path 2023-10-07 17:34:39 -07:00
fix.go Update import path 2023-10-07 17:34:39 -07:00
go.mod Update import path 2023-10-07 17:34:39 -07:00
go.sum Remove lure-api-server 2023-09-22 15:39:53 -07:00
helper.go Add helper command 2023-10-09 23:06:48 -07:00
info.go Update import path 2023-10-07 17:34:39 -07:00
install.go Update import path 2023-10-07 17:34:39 -07:00
LICENSE Add GPLv3 License 2022-09-26 19:21:39 +00:00
list.go Update import path 2023-10-07 17:34:39 -07:00
main.go Add helper command 2023-10-09 23:06:48 -07:00
Makefile Change ldflags to use internal/config 2023-10-06 15:14:42 -07:00
README.md Update lure-web domain to lure.sh 2023-10-07 12:12:00 -07:00
repo.go Update import path 2023-10-07 17:34:39 -07:00
upgrade.go Update import path 2023-10-07 17:34:39 -07:00

LURE Logo

LURE (Linux User REpository)

Go Report Card status-badge linux-user-repository-bin AUR package

LURE is a distro-agnostic build system for Linux, similar to the AUR. It is currently in beta. Most major bugs have been fixed, and most major features have been added. LURE is ready for general use, but may still break or change occasionally.

LURE is written in pure Go and has zero dependencies after building. The only things LURE requires are a command for privilege elevation such as sudo, doas, etc. as well as a supported package manager. Currently, LURE supports apt, pacman, apk, dnf, yum, and zypper. If a supported package manager exists on your system, it will be detected and used automatically.


Installation

Install script

The LURE install script will automatically download and install the appropriate LURE package on your system. To use it, simply run the following command:

curl -fsSL lure.sh/install | bash

IMPORTANT: This method is not recommended as it executes any code that is stored at that URL. In order to make sure nothing malicious is going to occur, download the script and inspect it before running.

Packages

Distro packages and binary archives are provided at the latest Gitea release: https://gitea.elara.ws/lure/lure/releases/latest

LURE is also available on the AUR as linux-user-repository-bin

Building from source

To build LURE from source, you'll need Go 1.18 or newer. Once Go is installed, clone this repo and run:

sudo make install

Why?

LURE was created because packaging software for multiple Linux distros can be difficult and error-prone, and installing those packages can be a nightmare for users unless they're available in their distro's official repositories. It automates the process of building and installing unofficial packages.


Documentation

The documentation for LURE is in the docs directory in this repo.


Web Interface

LURE has an open source web interface, licensed under the AGPLv3 (https://gitea.elara.ws/lure/lure-web), and it's available at https://lure.sh/.


Repositories

LURE's repos are git repositories that contain a directory for each package, with a lure.sh file inside. The lure.sh file tells LURE how to build the package and information about it. lure.sh scripts are similar to the AUR's PKGBUILD scripts.


Acknowledgements

Thanks to the following projects for making LURE possible: