Skip to content

Commit

Permalink
feat: luarocks/rocks.nvim support
Browse files Browse the repository at this point in the history
  • Loading branch information
mrcjkb committed Jun 18, 2024
1 parent 242ee15 commit 3d248a6
Show file tree
Hide file tree
Showing 6 changed files with 137 additions and 0 deletions.
31 changes: 31 additions & 0 deletions .github/workflows/luarocks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
name: Push to Luarocks

on:
push:
tags:
- '*'
release:
types:
- created
pull_request: # Test luarocks install without publishing on PR
workflow_dispatch:

jobs:
luarocks-upload:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Required to count the commits
- name: Get Version
run: echo "LUAROCKS_VERSION=$(git describe --abbrev=0 --tags)" >> $GITHUB_ENV
- name: LuaRocks Upload
uses: nvim-neorocks/luarocks-tag-release@v6
env:
LUAROCKS_API_KEY: ${{ secrets.LUAROCKS_API_KEY }}
with:
version: ${{ env.LUAROCKS_VERSION }}
dependencies: |
telescope.nvim
template: .github/workflows/rockspec.template
22 changes: 22 additions & 0 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
permissions:
contents: write
pull-requests: write

name: Release Please

on:
workflow_dispatch:
push:
branches:
- master

jobs:
release:
name: release
runs-on: ubuntu-latest
steps:
- uses: google-github-actions/release-please-action@v4
with:
release-type: simple
token: ${{ secrets.PAT }}
33 changes: 33 additions & 0 deletions .github/workflows/rockspec.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
local git_ref = '$git_ref'
local modrev = '$modrev'
local specrev = '$specrev'

local repo_url = '$repo_url'

rockspec_format = '3.0'
package = '$package'
version = modrev ..'-'.. specrev

description = {
summary = '$summary',
labels = $labels,
homepage = '$homepage',
$license
}

source = {
url = repo_url .. '/archive/' .. git_ref .. '.zip',
dir = '$repo_name-' .. '$archive_dir_suffix',
}

build = {
type = 'make',
build_pass = false,
install_variables = {
INST_PREFIX='$(PREFIX)',
INST_BINDIR='$(BINDIR)',
INST_LIBDIR='$(LIBDIR)',
INST_LUADIR='$(LUADIR)',
INST_CONFDIR='$(CONFDIR)',
},
}
8 changes: 8 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
build:
echo "Do nothing"

install:
mkdir -p $(INST_LUADIR)
mkdir -p $(INST_LIBDIR)
cp -r lua/* $(INST_LUADIR)
cp -r lib/* $(INST_LIBDIR)
4 changes: 4 additions & 0 deletions lua/zf.lua
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ M.get_path = function()
ext = "so"
end

local libzf_path = package.searchpath(string.format("libzf-%s-%s", os, arch), package.cpath)
if libzf_path then
return libzf_path
end
local dirname = string.sub(debug.getinfo(1).source, 2, #"/zf.lua" * -1)
return dirname .. string.format("../lib/libzf-%s-%s.%s", os, arch, ext)
end
Expand Down
39 changes: 39 additions & 0 deletions telescope-zf-native.nvim-scm-1.rockspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
local MODREV, SPECREV = 'scm', '-1'
rockspec_format = '3.0'
package = 'telescope-zf-native.nvim'
version = MODREV .. SPECREV

description = {
summary = 'native telescope bindings to zf for sorting results',
labels = { 'neovim', 'plugin', 'telescope', 'zf' },
homepage = 'https://github.com/natecraddock/telescope-zf-native.nvim',
license = 'MIT',
}

dependencies = {
'lua >= 5.1',
'telescope.nvim',
}

source = {
url = 'https://github.com/natecraddock/telescope-zf-native.nvim/archive/refs/tags/' .. MODREV .. '.zip',
dir = 'telescope-fzf-native.nvim-' .. MODREV
}

if MODREV == 'scm' then
source = {
url = 'git://github.com/natecraddock/telescope-zf-native.nvim',
}
end

build = {
type = 'make',
build_pass = false,
install_variables = {
INST_PREFIX='$(PREFIX)',
INST_BINDIR='$(BINDIR)',
INST_LIBDIR='$(LIBDIR)',
INST_LUADIR='$(LUADIR)',
INST_CONFDIR='$(CONFDIR)',
},
}

0 comments on commit 3d248a6

Please sign in to comment.