Compare commits

..

31 commits

Author SHA1 Message Date
103be9d13d
nix: setup sccache
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I375e0d41d42939b63a01a59d41b3fd426a6a6964
2026-03-22 22:05:05 +03:00
f1eacc8484
pinakes-server: add more route tests
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ief16a2b3181bfa50193fb69a5ad4a9166a6a6964
2026-03-22 22:05:04 +03:00
d26f237828
meta: configure gitattributes; don't diff churn
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I9d22892a5f90a95c29fa8979512b13646a6a6964
2026-03-22 22:05:03 +03:00
7ed66f1d3f
various: autofix Clippy warnings
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ia355e5626b5db7760c8dbb571cb552c46a6a6964
2026-03-22 22:05:02 +03:00
c1a1f4a600
pinakes-ui: use system player for HLS streams
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0255e79e25cde100a063476de2c8fe0d6a6a6964
2026-03-22 22:05:01 +03:00
bac79a2c08
pinakes-server: add more integration tests
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7c6c8eaad569404c7a13cfa8114d84516a6a6964
2026-03-22 22:05:00 +03:00
b1ddb32ff0
pinakes-server: fix subtitle list response and registration
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I22c7237877862acbf931ce4c662bd2816a6a6964
2026-03-22 22:04:59 +03:00
76a48250e9
pinakes-ui: update styles for media widgets
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ia380cb749d3aafc15ffc242e43eefa106a6a6964
2026-03-22 22:04:58 +03:00
3948872042
pinakes-ui: playlists view and settings updates
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7f39eca04360e78cd76c7cb43c2ad2776a6a6964
2026-03-22 22:04:57 +03:00
67019cad4c
pinakes-ui: add rustdoc to ApiClient types and methods
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I4b25ba66e695a870a753bdc6276c113d6a6a6964
2026-03-22 22:04:56 +03:00
0feb51d7b4
pinakes-ui: add playlists; expand detail/settings/player components
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ifb9c9da6fec0a9152b54ccf48705088e6a6a6964
2026-03-22 22:04:55 +03:00
bb69f2fa37
pinakes-tui: cover more API routes in the TUI crate
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Id14b6f82d3b9f3c27bee9c214a1bdedc6a6a6964
2026-03-22 22:04:54 +03:00
0dda2aec8f
chore: add cargo xtask alias
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iaf5e1365e825e88a6cde49a50624c7736a6a6964
2026-03-22 22:04:53 +03:00
934691c0f9
docs: auto-generate API route documentation
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Id0d1f9769b7ccdbf83d5fa78adef62e46a6a6964
2026-03-22 22:04:52 +03:00
9d58927cb4
pinakes-server: add utoipa annotations to all routes; fix tests
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I28cf5b7b7cff8e90e123d624d97cf9656a6a6964
2026-03-22 22:04:51 +03:00
67b8322705
pinakes-server: add utoipa annotations; manage embedded subtitle data
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I30d4b23f09113628dea245404b0a31bd6a6a6964
2026-03-22 22:04:50 +03:00
aa68d742c9
pinakes-core: fix minor clippy warnings; add toggle for Swagger UI generation
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ie33a5d17b774289023e3855789d3adc86a6a6964
2026-03-22 22:04:49 +03:00
5e0f404fc7
pinakes-core: initial subtitle management
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Id2f9b87b1cc903462539ab8ea47099696a6a6964
2026-03-22 22:04:48 +03:00
2daa1e4395
pinakes-core: add error variants for external tool calls and subtitle ops
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I9c9f4a7de065e176e16b108411c3d44b6a6a6964
2026-03-22 22:04:47 +03:00
ee5df288bc
pinakes-server: expand test coverage for server features
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ia09d2d3ad7f6613e21d20321e0877bc16a6a6964
2026-03-22 22:04:46 +03:00
60b6aa1fe8
pinakes-plugin-api: suppress enum_variant_names lint
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I01367dea28dd7b47cf765b6f33782a5e6a6a6964
2026-03-22 22:04:45 +03:00
1ee225201a
pinakes-plugin-api: suppress struct_field_names lint; minor doc tweaks
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I90f1cc46303564a61bdefe76d21045066a6a6964
2026-03-22 22:04:44 +03:00
2f43279dd7
pinakes-server: consolidate helpers for the tests
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ifbc07ced09014391bc264a36be27dc8c6a6a6964
2026-03-22 22:04:43 +03:00
6b8444f19c
pinakes-plugin-api: fix hasher usage in tests
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I8ee475aef2d1f81cf6af6f5e247f5e386a6a6964
2026-03-22 22:04:42 +03:00
5b817e0b3e
pinakes-core: fix hasher usage in tests
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ied03277d450e39299470667ef479c3526a6a6964
2026-03-22 22:04:41 +03:00
e15dad208e
pinakes-core: clarify backup support for postgresql
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7f7d5dcb1d973c8615aacbfc0a5a44576a6a6964
2026-03-22 22:04:40 +03:00
8023dc606b
migrations/postgres: add missing sequence counter for sqlite parity
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iaf993250bff02b3d02aece62876b5ee56a6a6964
2026-03-22 22:04:39 +03:00
c6efd3661f
treewide: replace std hashers with rustc_hash alternatives; fix clippy
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I766c36cb53d3d7f9e85b91a67c4131a66a6a6964
2026-03-22 22:04:38 +03:00
0e79ba0518
meta: ignore Nix build results properly
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iccbf2928b43e8b519d84884e801e4f206a6a6964
2026-03-22 22:04:37 +03:00
cf735b4278
chore: enforce rustc_hash over std hashers
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I228093b5da57d6fa3a6249e06de2f5776a6a6964
2026-03-22 22:04:36 +03:00
ede8a26e59
pinakes-ui: get rid of the build wrapper; let Dioxus compile its own stylesheets
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I8e83a7d9e592b0770b22c5832da6a5586a6a6964
2026-03-22 21:58:53 +03:00
4 changed files with 2 additions and 39 deletions

BIN
Cargo.lock generated

Binary file not shown.

View file

@ -38,6 +38,3 @@ default = ["web"]
web = ["dioxus/web"] web = ["dioxus/web"]
desktop = ["dioxus/desktop"] desktop = ["dioxus/desktop"]
mobile = ["dioxus/mobile"] mobile = ["dioxus/mobile"]
[build-dependencies]
grass = "0.13"

View file

@ -1,33 +0,0 @@
#![expect(
clippy::expect_used,
reason = "build scripts conventionally panic on failure; there is no caller \
to propagate errors to"
)]
use std::{fs, path::Path};
fn main() {
// Compile SCSS to CSS
let scss_dir = Path::new("assets/styles");
let css_dir = Path::new("assets/css");
// Create CSS output directory if it doesn't exist
fs::create_dir_all(css_dir).expect("Failed to create CSS directory");
// Compile main.scss
let scss_input = scss_dir.join("main.scss");
let css_output = css_dir.join("main.css");
if scss_input.exists() {
let css = grass::from_path(
&scss_input,
&grass::Options::default().style(grass::OutputStyle::Compressed),
)
.expect("Failed to compile SCSS");
fs::write(&css_output, css).expect("Failed to write CSS");
// Tell cargo to rerun if SCSS files change
println!("cargo:rerun-if-changed=assets/styles");
}
}

View file

@ -1,8 +1,7 @@
//! Styles module for Pinakes UI //! Styles module for Pinakes UI
//! //!
//! Exports the CSS asset for use with Dioxus. //! Exports the SCSS asset for use with Dioxus.
//! SCSS files are compiled to CSS via build.rs.
use dioxus::prelude::*; use dioxus::prelude::*;
pub static STYLES: Asset = asset!("/assets/css/main.css"); pub static STYLES: Asset = asset!("/assets/styles/main.scss");