diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 00000000..b67055d1 --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,56 @@ +name: "CodeQL" + +on: + push: + branches: [ "master", "develop" ] + pull_request: + branches: [ "master", "develop" ] + schedule: + - cron: "48 10 * * 4" + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + + strategy: + fail-fast: false + matrix: + language: [ javascript, cpp ] + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Install Packages (cpp) + if: ${{ matrix.language == 'cpp' }} + run: | + sudo apt-get update + sudo apt-get install --yes build-essential cmake libboost-all-dev libconfig++-dev libavcodec-dev libavutil-dev libavformat-dev libstb-dev libtag1-dev libpam0g-dev libgtest-dev + export WT_VERSION=4.7.2 + export WT_INSTALL_PREFIX=/usr + git clone https://github.com/emweb/wt.git wt + pushd wt + git checkout ${WT_VERSION} + cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${WT_INSTALL_PREFIX} -DBUILD_EXAMPLES=OFF -DENABLE_LIBWTTEST=OFF -DCONNECTOR_FCGI=OFF + make + sudo make install + popd + + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + with: + languages: ${{ matrix.language }} + queries: +security-and-quality + + - name: Autobuild + uses: github/codeql-action/autobuild@v2 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 + with: + category: "/language:${{ matrix.language }}" diff --git a/README.md b/README.md index 628ed696..c0fabf8a 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,15 @@ # LMS - Lightweight Music Server -[![Last Release](https://img.shields.io/github/v/release/epoupon/lms?logo=github&label=latest)](https://github.com/epoupon/lms/releases) [![Build](https://img.shields.io/github/workflow/status/epoupon/lms/Build?logo=github)](https://github.com/epoupon/lms/actions) [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/epoupon/lms.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/epoupon/lms/context:cpp) +[![Last Release](https://img.shields.io/github/v/release/epoupon/lms?logo=github&label=latest)](https://github.com/epoupon/lms/releases) [![Build](https://img.shields.io/github/workflow/status/epoupon/lms/Build?logo=github)](https://github.com/epoupon/lms/actions) _LMS_ is a self-hosted music streaming software: access your music collection from anywhere using a web interface! A [demo instance](http://lms-demo.poupon.dev) is available. Note the administration panel is not available. ## Main features -* Low memory requirements: the demo instance runs on a _Raspberry Pi Zero W_ * Recommendation engine * Audio transcode for maximum interoperability and low bandwith requirements -* Multi-value tags: artists, genres, composers, lyricists, moods, ... +* Multi-value tags: `artist`, `genre`, `composer`, `lyricist`, `mood`, `performer`, ... * [MusicBrainz Identifier](https://musicbrainz.org/doc/MusicBrainz_Identifier) support to handle duplicated artist and release names * [ListenBrainz](https://listenbrainz.org) support for: * Scrobbling and synchronizing listens diff --git a/approot/artist.xml b/approot/artist.xml index 67d65f0a..add9a9e7 100644 --- a/approot/artist.xml +++ b/approot/artist.xml @@ -21,15 +21,15 @@ ${} - ${}

${tr:Lms.Explore.releases}

${
} + ${}

${tr:Lms.Explore.releases}

${
} ${releases class="mb-3"} ${
} ${} - ${}

${tr:Lms.Explore.Artist.appears-on}

${
} +

${tr:Lms.Explore.Artist.appears-on}

${appears-on-releases class="mb-3"} ${
} ${} - ${}

${tr:Lms.Explore.tracks}

${
} +

${tr:Lms.Explore.tracks}

${tracks class="mb-3"} ${
} ${} diff --git a/approot/explore.xml b/approot/explore.xml index 38d64d00..342621dc 100644 --- a/approot/explore.xml +++ b/approot/explore.xml @@ -43,7 +43,7 @@
-
+
${type}
diff --git a/approot/messages.xml b/approot/messages.xml index f805b9fa..241caf7a 100644 --- a/approot/messages.xml +++ b/approot/messages.xml @@ -175,6 +175,10 @@ Mixer Mixers + + Performer + Performers + Producer Producers diff --git a/approot/messages_fr.xml b/approot/messages_fr.xml index 1c32c26b..0439a9e5 100644 --- a/approot/messages_fr.xml +++ b/approot/messages_fr.xml @@ -175,6 +175,10 @@ Mixeur Mixeurs + + Interprète + Interprètes + Producteur Producteurs diff --git a/approot/messages_it.xml b/approot/messages_it.xml index 0f000814..57d57209 100644 --- a/approot/messages_it.xml +++ b/approot/messages_it.xml @@ -183,6 +183,10 @@ + + + + diff --git a/approot/messages_zh.xml b/approot/messages_zh.xml index 9472f65a..e685897f 100644 --- a/approot/messages_zh.xml +++ b/approot/messages_zh.xml @@ -183,6 +183,10 @@ + + + + diff --git a/approot/release.xml b/approot/release.xml index 16545709..79e3c0d1 100644 --- a/approot/release.xml +++ b/approot/release.xml @@ -87,7 +87,7 @@