add configs

This commit is contained in:
Aire-One 2024-10-31 21:18:37 +01:00
parent 48b83f444d
commit f147f9b4c8
12 changed files with 239 additions and 8 deletions

26
.cspell.json Normal file
View File

@ -0,0 +1,26 @@
{
"words": [
"Aire-One",
"berlam",
"constructorfct",
"dbus",
"drawin",
"dryrun",
"fatalwarnings",
"freedesktop",
"JohnnyMorganz",
"keygrabber",
"ldoc",
"luacheck",
"luacheckrc",
"luadoc",
"luarocks",
"mktemp",
"mousegrabber",
"rockspec",
"staticfct",
"stylua",
"upower",
"wibox"
]
}

19
.editorconfig Normal file
View File

@ -0,0 +1,19 @@
# EditorConfig is awesome: https://EditorConfig.org
# top-most EditorConfig file
root = true
[*]
indent_style = space
indent_size = 3
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
[*.{json,yaml}]
indent_size = 2
[Makefile]
indent_style = tab

38
.github/workflows/doc.yaml vendored Normal file
View File

@ -0,0 +1,38 @@
name: Build doc
on:
push:
branches:
- master
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: lunarmodules/ldoc@v1.5.0
- uses: actions/upload-pages-artifact@v3
id: deployment
with:
path: doc/
deploy:
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/deploy-pages@v4
id: deployment

51
.github/workflows/lint.yaml vendored Normal file
View File

@ -0,0 +1,51 @@
name: Lint
on:
push:
branches:
- master
pull_request:
jobs:
luacheck:
needs: []
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: lunarmodules/luacheck@v1
stylua:
needs: []
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: JohnnyMorganz/stylua-action@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
version: v0.20.0
args: --check .
ldoc:
needs: []
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: lunarmodules/ldoc@v1.5.0
with:
args: --fatalwarnings .
spellcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: streetsidesoftware/cspell-action@v6
with:
incremental_files_only: false
rockspec:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: leafo/gh-actions-lua@v9
- uses: leafo/gh-actions-luarocks@v4
- run: luarocks lint awesome-slot-dev-1.rockspec

21
.github/workflows/rock.yaml vendored Normal file
View File

@ -0,0 +1,21 @@
name: Upload rock to LuaRocks
on:
push:
jobs:
affected:
uses: lunarmodules/.github/.github/workflows/list_affected_rockspecs.yml@main
upload:
needs: affected
if: >-
${{
github.repository == 'Aire-One/awesome-slot' &&
( github.ref_name == 'master' || startsWith(github.ref, 'refs/tags/') ) &&
needs.affected.outputs.rockspecs
}}
uses: lunarmodules/.github/.github/workflows/upload_to_luarocks.yml@main
with:
rockspecs: ${{ needs.affected.outputs.rockspecs }}
secrets:
apikey: ${{ secrets.LUAROCKS_APIKEY }}

2
.gitignore vendored
View File

@ -1 +1 @@
doc/ /doc

31
.luacheckrc Normal file
View File

@ -0,0 +1,31 @@
std = "min"
include_files = {
".busted",
".luacheckrc",
"*.rockspec",
"src/",
}
read_globals = {
"awesome",
"button",
"dbus",
"drawable",
"drawin",
"key",
"keygrabber",
"mousegrabber",
"selection",
"tag",
"window",
"table.unpack",
"math.atan2",
}
globals = {
"screen",
"mouse",
"root",
"client",
}

6
.stylua.toml Normal file
View File

@ -0,0 +1,6 @@
indent_type = "Spaces"
indent_width = 3
call_parentheses = "None"
[sort_requires]
enabled = true

16
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,16 @@
{
"Lua.runtime.path": [
"/usr/share/awesome/lib/?.lua",
"/usr/share/awesome/lib/?/init.lua"
],
"[lua]": {
"editor.defaultFormatter": "JohnnyMorganz.stylua"
},
"stylua.targetReleaseVersion": "latest",
"files.associations": {
".busted": "lua",
".luacheckrc": "lua",
"*.rockspec": "lua",
"config.ld": "lua"
}
}

24
Makefile Normal file
View File

@ -0,0 +1,24 @@
install:
luarocks --local build
luacheck:
luacheck .
stylua:
stylua --check .
ldoc-dryrun:
$(eval TMP := $(shell mktemp -d))
ldoc --fatalwarnings --dir $(TMP) .
rm -rf $(TMP)
cspell:
cspell lint .
lint-rockspec:
luarocks lint awesome-battery_widget-dev-1.rockspec
lint: luacheck stylua ldoc-dryrun cspell lint-rockspec
ldoc:
ldoc .

View File

@ -1,6 +1,6 @@
# UPower Battery Widget # UPower Battery Widget
This is my re-implementation of the [awesome-upower-battery][awesome-upower-battery-repository] by [berlam][berlam]. This widget has a lot of potencial for the [Awesome WM][AwesomeWM] and I wanted to hack it a bit for my personal use. This is my re-implementation of the [awesome-upower-battery][awesome-upower-battery-repository] by [berlam][berlam]. This widget has a lot of potential for the [Awesome WM][AwesomeWM] and I wanted to hack it a bit for my personal use.
UPower is an abstraction for power devices. You can use it to access advanced statistics about your power devices. UPower is an abstraction for power devices. You can use it to access advanced statistics about your power devices.
UPowerGlib is a Glib interface to access data exposed by UPower. UPowerGlib is a Glib interface to access data exposed by UPower.

View File

@ -1,12 +1,12 @@
-- Configuration file for ldoc -- Configuration file for ldoc
project = 'battery_widget' project = "battery_widget"
title = 'Awesome WM - Battery Widget' title = "A UPowerGlib based battery widget for the Awesome WM with a basic widget template mechanism! 🔋"
all = false all = false
dir = 'doc' dir = "doc"
format='markdown' format = "markdown"
pretty = 'lua' pretty = "lua"
prettify_files = true prettify_files = true
backtick_references = true backtick_references = true
merge = true merge = true
@ -15,7 +15,6 @@ wrap = true
sort_modules = true sort_modules = true
not_luadoc = true not_luadoc = true
-- Define some new ldoc tags from the AwesomeWM doc -- Define some new ldoc tags from the AwesomeWM doc
new_type("staticfct", "Static functions", false, "Parameters") new_type("staticfct", "Static functions", false, "Parameters")
new_type("constructorfct", "Constructor", false, "Parameters") new_type("constructorfct", "Constructor", false, "Parameters")