From 2750241e61e01f252978edf659ccef6a5717ba1c Mon Sep 17 00:00:00 2001 From: krateng Date: Wed, 15 Jan 2025 21:19:39 +0100 Subject: [PATCH] Fix build (maybe) --- .github/workflows/pypi.yml | 4 +++- README.md | 44 +++----------------------------------- dev/releases/3.2.yml | 1 + pyproject.toml | 6 +++--- 4 files changed, 10 insertions(+), 45 deletions(-) diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index b06cc9c..1749c11 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -9,6 +9,8 @@ jobs: publish_to_pypi: name: Push Package to PyPI runs-on: ubuntu-latest + permissions: + id-token: write steps: - name: Check out the repo uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 @@ -25,7 +27,7 @@ jobs: run: python -m build - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@b7f401de30cb6434a1e19f805ff006643653240e + uses: pypa/gh-action-pypi-publish@67339c736fd9354cd4f8cb0b744f2b82a74b5c70 with: user: __token__ password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/README.md b/README.md index d78ad5d..9aa558d 100644 --- a/README.md +++ b/README.md @@ -40,15 +40,8 @@ You can check [my own Maloja page](https://maloja.krateng.ch) as an example inst ## How to install -### Requirements - -Maloja should run on any x86 or ARM machine that runs Python. - -It is highly recommended to use **Docker** or **Podman**. - -Your CPU should have a single core passmark score of at the very least 1500. 500 MB RAM should give you a decent experience, but performance will benefit greatly from up to 2 GB. - -### Docker / Podman +To avoid issues with version / dependency mismatches, Maloja should only be used in **Docker** or **Podman**, not on bare metal. +I cannot offer any help for bare metal installations. Pull the [latest image](https://hub.docker.com/r/krateng/maloja) or check out the repository and use the included Containerfile. @@ -67,11 +60,7 @@ An example of a minimum run configuration to access maloja via `localhost:42010` docker run -p 42010:42010 -v $PWD/malojadata:/mljdata -e MALOJA_DATA_DIRECTORY=/mljdata krateng/maloja ``` -#### Linux Host - -**NOTE:** If you are using [rootless containers with Podman](https://developers.redhat.com/blog/2020/09/25/rootless-containers-with-podman-the-basics#why_podman_) this DOES NOT apply to you. - -If you are running Docker on a **Linux Host** you should specify `user:group` ids of the user who owns the folder on the host machine bound to `MALOJA_DATA_DIRECTORY` in order to avoid [docker file permission problems.](https://ikriv.com/blog/?p=4698) These can be specified using the [environmental variables **PUID** and **PGID**.](https://docs.linuxserver.io/general/understanding-puid-and-pgid) +If you are using [rootless containers with Podman](https://developers.redhat.com/blog/2020/09/25/rootless-containers-with-podman-the-basics#why_podman_) the following DOES NOT apply to you, but if you are running **Docker** on a **Linux Host** you should specify `user:group` ids of the user who owns the folder on the host machine bound to `MALOJA_DATA_DIRECTORY` in order to avoid [docker file permission problems.](https://ikriv.com/blog/?p=4698) These can be specified using the [environmental variables **PUID** and **PGID**.](https://docs.linuxserver.io/general/understanding-puid-and-pgid) To get the UID and GID for the current user run these commands from a terminal: @@ -84,33 +73,6 @@ The modified run command with these variables would look like: docker run -e PUID=1000 -e PGID=1001 -p 42010:42010 -v $PWD/malojadata:/mljdata -e MALOJA_DATA_DIRECTORY=/mljdata krateng/maloja ``` -### PyPI - -You can install Maloja with - -```console - pip install malojaserver -``` - -To make sure all dependencies are installed, you can also use one of the included scripts in the `install` folder. - -### From Source - -Clone this repository and enter the directory with - -```console - git clone https://github.com/krateng/maloja - cd maloja -``` - -Then install all the requirements and build the package, e.g.: - -```console - sh ./install/install_dependencies_alpine.sh - pip install -r requirements.txt - pip install . -``` - ### Extras diff --git a/dev/releases/3.2.yml b/dev/releases/3.2.yml index 6a154f9..cf2dbed 100644 --- a/dev/releases/3.2.yml +++ b/dev/releases/3.2.yml @@ -39,6 +39,7 @@ minor_release_name: "Nicole" - "[Feature] Added option to show scrobbles on tile charts" - "[Bugfix] Fixed Last.fm authentication" 3.2.3: + commit: "a7dcd3df8a6b051a1f6d0b7d10cc5af83502445c" notes: - "[Architecture] Upgraded doreah, significant rework of authentication" - "[Bugfix] Fixed initial permission check" diff --git a/pyproject.toml b/pyproject.toml index 8a4a220..b80a311 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,9 +2,9 @@ name = "malojaserver" version = "3.2.3" description = "Self-hosted music scrobble database" -readme = "./README.md" +readme = "README.md" requires-python = ">=3.11" -license = { file="./LICENSE" } +license = { file="LICENSE" } authors = [ { name="Johannes Krattenmacher", email="maloja@dev.krateng.ch" } ] urls.repository = "https://github.com/krateng/maloja" @@ -45,7 +45,7 @@ full = [ maloja = "maloja.__main__:main" [build-system] -requires = ["flit_core >=3.2,<4"] +requires = ["flit_core >=3.10,<4"] build-backend = "flit_core.buildapi" [tool.flit.module]