Compare commits

...

5 Commits

Author SHA1 Message Date
bf00b68ac7 Fix
All checks were successful
Test Commit / test (push) Successful in 17s
2026-02-17 16:11:22 +01:00
7322e58dfe Add CI/CD for gitea
Some checks failed
Test Commit / test (push) Failing after 6s
2026-02-17 15:58:37 +01:00
9512dcd28e Explicitly add TBC support
Some checks failed
Test Commit / create-release (push) Failing after 1m5s
2026-02-17 14:29:59 +01:00
4da5c93c02 Fix typo in default background paths 2026-02-17 14:29:13 +01:00
e461245ca6 Update formatting to use stylua 2026-02-17 14:28:20 +01:00
6 changed files with 63 additions and 99 deletions

View File

@@ -0,0 +1,25 @@
name: Create Release
on:
push:
tags:
- 'v*'
jobs:
create-release:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: build release archives
run: make
- name: create release and upload assets
uses: softprops/action-gh-release@v2
with:
name: LibFreeMedia ${{ github.ref_name }}
body: LibFreeMedia ${{ github.ref_name }}
files: |
release/LibFreeMedia-embed.zip
release/LibFreeMedia-embed.tar.gz
release/LibFreeMedia-embed.tar.xz
release/LibFreeMedia-standalone.zip
release/LibFreeMedia-standalone.tar.gz
release/LibFreeMedia-standalone.tar.xz

View File

@@ -0,0 +1,15 @@
name: Test Commit
on:
push:
branches:
- '*'
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: install dependencies
run: apt-get update && apt-get install -y p7zip-full
- name: build release archives
run: make

View File

@@ -1,84 +0,0 @@
stages:
- test
- package
- release
# Run the tests only on commits, never on tags for now this just builds the
# release archives to make sure that works
test:
stage: test
rules:
- if: $CI_COMMIT_BRANCH
image: alpine:3
before_script:
- echo PACKAGE_JOB_ID=$CI_JOB_ID >> package.env
- apk add xz 7zip make
script:
- make
# Build the release archives and keep them forever as an artifact. Only runs on
# tag pushes
package:
stage: package
rules:
- if: $CI_COMMIT_TAG
image: alpine:3
before_script:
- echo PACKAGE_JOB_ID=$CI_JOB_ID >> package.env
- apk add xz 7zip make
script:
- make
image: alpine:3
before_script:
- echo PACKAGE_JOB_ID=$CI_JOB_ID >> package.env
- apk add xz 7zip make
script:
- make
artifacts:
expire_in: never
paths:
- release/LibFreeMedia-embed.tar.gz
- release/LibFreeMedia-embed.tar.xz
- release/LibFreeMedia-embed.zip
- release/LibFreeMedia-standalone.tar.gz
- release/LibFreeMedia-standalone.tar.xz
- release/LibFreeMedia-standalone.zip
reports:
dotenv: package.env
# Create a release with the previously generated artifacts. Only runs on tag
# pushes
release:
stage: release
rules:
- if: $CI_COMMIT_TAG
image: registry.gitlab.com/gitlab-org/release-cli:latest
script:
- echo 'Creating release'
needs:
- job: package
artifacts: true
release:
tag_name: $CI_COMMIT_TAG
name: 'LibFreeMedia $CI_COMMIT_TAG'
description: 'LibFreeMedia $CI_COMMIT_TAG'
assets:
links:
- name: 'LibFreeMedia embedable release'
url: 'https://gitlab.com/omicron-oss/wow/libfreemedia/-/jobs/${PACKAGE_JOB_ID}/artifacts/raw/release/LibFreeMedia-embed.zip'
filepath: '/archive/freemedia-embed-zip'
- name: 'LibFreeMedia embedable release (tar.xz archive)'
url: 'https://gitlab.com/omicron-oss/wow/libfreemedia/-/jobs/${PACKAGE_JOB_ID}/artifacts/raw/release/LibFreeMedia-embed.tar.xz'
filepath: '/archive/freemedia-embed-tarxz'
- name: 'LibFreeMedia embedable release (tar.gz archive)'
url: 'https://gitlab.com/omicron-oss/wow/libfreemedia/-/jobs/${PACKAGE_JOB_ID}/artifacts/raw/release/LibFreeMedia-embed.tar.gz'
filepath: '/archive/freemedia-embed-targz'
- name: 'LibFreeMedia standalone addon'
url: 'https://gitlab.com/omicron-oss/wow/libfreemedia/-/jobs/${PACKAGE_JOB_ID}/artifacts/raw/release/LibFreeMedia-standalone.zip'
filepath: '/archive/freemedia-standalone-zip'
- name: 'LibFreeMedia standalone addon (tar.xz archive)'
url: 'https://gitlab.com/omicron-oss/wow/libfreemedia/-/jobs/${PACKAGE_JOB_ID}/artifacts/raw/release/LibFreeMedia-standalone.tar.xz'
filepath: '/archive/freemedia-standalone-tarxz'
- name: 'LibFreeMedia standalone addon (tar.gz archive)'
url: 'https://gitlab.com/omicron-oss/wow/libfreemedia/-/jobs/${PACKAGE_JOB_ID}/artifacts/raw/release/LibFreeMedia-standalone.tar.gz'
filepath: '/archive/freemedia-standalone-targz'

3
.stylua.toml Normal file
View File

@@ -0,0 +1,3 @@
indent_type = "Spaces"
indent_width = 4
column_width = 120

View File

@@ -3,20 +3,21 @@ if not lib then
return
end
-- stylua: ignore
local DEFAULT_MEDIA_TABLE = {
background = {
["Blizzard Dialog Background"] = "Interfacee\\DialogFrame\\UI-DialogBox-Background",
["Blizzard Dialog Background Dark"] = "Interfacee\\DialogFrame\\UI-DialogBox-Background-Dark",
["Blizzard Dialog Background Gold"] = "Interfacee\\DialogFrame\\UI-DialogBox-Gold-Background",
["Blizzard Low Health"] = "Interfacee\\FullScreenTextures\\LowHealth",
["Blizzard Marble"] = "Interfacee\\FrameGeneral\\UI-Background-Marble",
["Blizzard Out of Control"] = "Interfacee\\FullScreenTextures\\OutOfControl",
["Blizzard Parchment"] = "Interfacee\\AchievementFrame\\UI-Achievement-Parchment-Horizontal",
["Blizzard Parchment 2"] = "Interfacee\\AchievementFrame\\UI-GuildAchievement-Parchment-Horizontal",
["Blizzard Rock"] = "Interfacee\\FrameGeneral\\UI-Background-Rock",
["Blizzard Tabard Background"] = "Interfacee\\TabardFrame\\TabardFrameBackground",
["Blizzard Tooltip"] = "Interfacee\\Tooltips\\UI-Tooltip-Background",
["Solid"] = "Interfacee\\Buttons\\WHITE8X8",
["Blizzard Dialog Background"] = "Interface\\DialogFrame\\UI-DialogBox-Background",
["Blizzard Dialog Background Dark"] = "Interface\\DialogFrame\\UI-DialogBox-Background-Dark",
["Blizzard Dialog Background Gold"] = "Interface\\DialogFrame\\UI-DialogBox-Gold-Background",
["Blizzard Low Health"] = "Interface\\FullScreenTextures\\LowHealth",
["Blizzard Marble"] = "Interface\\FrameGeneral\\UI-Background-Marble",
["Blizzard Out of Control"] = "Interface\\FullScreenTextures\\OutOfControl",
["Blizzard Parchment"] = "Interface\\AchievementFrame\\UI-Achievement-Parchment-Horizontal",
["Blizzard Parchment 2"] = "Interface\\AchievementFrame\\UI-GuildAchievement-Parchment-Horizontal",
["Blizzard Rock"] = "Interface\\FrameGeneral\\UI-Background-Rock",
["Blizzard Tabard Background"] = "Interface\\TabardFrame\\TabardFrameBackground",
["Blizzard Tooltip"] = "Interface\\Tooltips\\UI-Tooltip-Background",
["Solid"] = "Interface\\Buttons\\WHITE8X8",
},
font = {
["Arial Narrow"] = "Fonts\\ARIALN.TTF",
@@ -58,7 +59,6 @@ end
local DEFAULT_MEDIA_LIST = MakeDefaultList()
-- Interopability with a proprietary alternative is contained in this block
do
local libsm = LibStub:GetLibrary("LibSharedMedia-3.0", true)
@@ -87,7 +87,6 @@ do
lib.mediaList = libsm.MediaList
end
---@param kind string The kind of media you are registering. E.g. "font" or "background"
---@param identifier string Named identifier for the media
---@param data any
@@ -111,7 +110,6 @@ local function RegisterOne(kind, identifier, data)
return true
end
---@param kind string The kind of media you are registering. E.g. "font" or "background"
---@param identifier string Named identifier for the media
---@param data any

7
src/LibFreeMedia_TBC.toc Normal file
View File

@@ -0,0 +1,7 @@
## Interface: 20505
## Title: LibFreeMedia
## Notes: Freely share media between addons
## Version: 0.1.1
libs/LibStub.lua
LibFreeMedia.lua