diff options
| author | dacctal <donotcontactmevia@email.invalid> | 2026-08-26 02:01:45 +0000 |
|---|---|---|
| committer | dacctal <donotcontactmevia@email.invalid> | 2026-08-26 02:01:45 +0000 |
| commit | 2e9448622883af3c5aacd233846d68202c76d708 (patch) | |
| tree | 415d37af1745af9ac3b4e55dabcccaa1b37a910b /config/init.lua | |
| parent | fa9e048dc65f246c165d820b983baf62d201c264 (diff) | |
fixed configindev
Diffstat (limited to 'config/init.lua')
| -rw-r--r-- | config/init.lua | 65 |
1 files changed, 35 insertions, 30 deletions
diff --git a/config/init.lua b/config/init.lua index a6a2044..dfaa68d 100644 --- a/config/init.lua +++ b/config/init.lua @@ -2,65 +2,70 @@ local pkgit = require("pkgit") local cfg = {} local prefix = os.getenv("HOME").."/.local" -cfg.dirs = { +cfg.dirs = { -- where everything is downloaded/installed to prefix = prefix, - src = prefix.."/share/pkgit", + src = prefix.."/share/pkgit", -- source code (before compile/install) is downloaded here bin = prefix.."/bin", lib = prefix.."/lib", include = prefix.."/include", } -cfg.fetchers = {} +cfg.fetchers = {} -- fetches the source code and newest version of any given package cfg.fetchers.git = { - get_source = function(url, version) return pkgit.run({ - "git clone --branch "..version.." --recursive --depth 1 "..url + -- returns the exit code. 0 is success, anything else is failure. + get_source = function(url, version, name) return pkgit.run({ + "git clone --branch "..version.." --recursive --depth 1 "..url.. + " "..cfg.dirs.src.."/"..name.."/"..version }) end, + + -- returns a string get_version = function(url) return io.popen( - "git -c 'versionsort.suffix=-' \ - ls-remote --exit-code --refs --sort='version:refname' \ - --tags "..url.." '*.*.*' \ - | tail --lines=1 \ - | cut --delimiter='/' --fields=3" + "git -c 'versionsort.suffix=-' ls-remote --exit-code --refs --sort='version:refname' --tags "..url.." '*.*.*' | tail --lines=1 | cut --delimiter='/' --fields=3" ):read("*a") end, } +-- the default fetch method (used when you don't provide one in pkgs) cfg.fetchers.default = cfg.fetchers.git cfg.recipes = {} cfg.recipes.make = { + --setup = function() + -- return 0 + --end, build = function(bldit_build) - return pkgit.run({"make"}) + return pkgit.run({"make"}, true) end, install = function(bldit_install) - return pkgit.run({"make install PREFIX="..prefix}) + return pkgit.run({"make install PREFIX="..cfg.dirs.prefix}, true) end, remove = function(bldit_remove) - return pkgit.run({"make uninstall PREFIX="..prefix}) + return pkgit.run({"make uninstall PREFIX="..cfg.dirs.prefix}, true) end, } -local builds = { - make = { - files = { - "makefile", - "Makefile", - "Makefile.am", - }, - recipe = cfg.recipes.make - } +cfg.recipes.meson = { + setup = function() + return pkgit.run({"meson setup build --prefix "..cfg.dirs.prefix}, true) + end, + build = function() + return pkgit.run({"meson compile -C build"}, true) + end, + install = function() + return pkgit.run({"cd build && meson install"}, true) + end, + remove = function() + return pkgit.run({"cd build && ninja uninstall"}, true) + end, } -cfg.recipes.default = function(final_dir) return pkgit.autodetect(builds, final_dir) end cfg.pkgs = {} cfg.pkgs.pkgit = { url = "https://git.symlinx.net/pkgit", version = "HEAD", fetcher = cfg.fetchers.git, - dependencies = { - luajit = { - url = "https://luajit.org/git/luajit.git", - version = "v2.1", - fetcher = cfg.fetchers.git, - } - }, + dependencies = { luajit = { + url = "https://luajit.org/git/luajit.git", + version = "v2.1", + fetcher = cfg.fetchers.git, + }}, opts = {}, recipe = cfg.recipes.make, } |
