diff --git a/CHANGELOG.md b/CHANGELOG.md index b4272fd..3f71dd0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,21 @@ All notable changes to this project will be documented in this file. +## [0.3.5] - 2025-10-17 + +### Added + +- Introduced official **Librius icon and branding assets** + - Added `librius.svg`, `librius.png`, and `librius.ico` in `res/` + - Included build integration for Windows executables +- Prepared cross-platform structure for future GUI integration + +### Changed + +- Updated documentation and README with new logo and asset references + +--- + ## [0.3.0] - 2025-10-16 ### Added diff --git a/Cargo.lock b/Cargo.lock index 4e1b99b..cf29255 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -750,7 +750,7 @@ dependencies = [ [[package]] name = "librius" -version = "0.3.0" +version = "0.3.5" dependencies = [ "chrono", "clap", diff --git a/Cargo.toml b/Cargo.toml index 99a3223..f21e54d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "librius" -version = "0.3.0" +version = "0.3.5" edition = "2024" authors = ["Alessandro Maestri "] description = "A personal library manager CLI written in Rust." @@ -19,6 +19,12 @@ exclude = [ "*.sh", "*.bat", ] +build = "build.rs" + +[package.metadata.bundle] +name = "Librius" +identifier = "eu.umpire274.librius" +icon = ["res/librius.png"] [dependencies] clap = { version = "4.5.48", features = ["derive"] } diff --git a/README.md b/README.md index b6620c2..817bf2d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,7 @@ -# 📚 Librius +

+ Librius Logo + Librius +

[![Build Status](https://github.com/umpire274/librius/actions/workflows/ci.yml/badge.svg)](https://github.com/umpire274/librius/actions) [![Docs.rs](https://docs.rs/librius/badge.svg)](https://docs.rs/librius) diff --git a/build.rs b/build.rs new file mode 100644 index 0000000..f816630 --- /dev/null +++ b/build.rs @@ -0,0 +1,43 @@ +#[cfg(windows)] +use std::path::Path; +#[cfg(windows)] +use std::process::Command; + +fn main() { + #[cfg(windows)] + { + let rc_path = Path::new("res/librius.rc"); + + // Rebuild only if the .rc file changes + println!("cargo:rerun-if-changed=res/librius.rc"); + + if rc_path.exists() { + // Compile the .rc file into a .res file using windres + // For MSVC toolchains, ensure MinGW is available in PATH + let result = Command::new("windres") + .env("PATH", "X:\\mingw64\\bin") // Adjust path if MinGW is installed elsewhere + .args(["res/librius.rc", "-O", "coff", "-o", "res/librius.res"]) + .status(); + + match result { + Ok(status) if status.success() => { + // Link the compiled resource file into the final executable + println!("cargo:rustc-link-arg=res/librius.res"); + } + Ok(status) => { + println!( + "cargo:warning=windres exited with non-zero status: {:?}", + status.code() + ); + } + Err(_) => { + println!("cargo:warning=windres not found or failed to execute."); + } + } + } else { + println!("cargo:warning=res/librius.rc not found, skipping icon embedding."); + } + } + + // Non-Windows platforms: no resource embedding required. +} diff --git a/res/favicon/android-icon-144x144.png b/res/favicon/android-icon-144x144.png new file mode 100644 index 0000000..a4146f3 Binary files /dev/null and b/res/favicon/android-icon-144x144.png differ diff --git a/res/favicon/android-icon-192x192.png b/res/favicon/android-icon-192x192.png new file mode 100644 index 0000000..aa6f358 Binary files /dev/null and b/res/favicon/android-icon-192x192.png differ diff --git a/res/favicon/android-icon-36x36.png b/res/favicon/android-icon-36x36.png new file mode 100644 index 0000000..29b261e Binary files /dev/null and b/res/favicon/android-icon-36x36.png differ diff --git a/res/favicon/android-icon-48x48.png b/res/favicon/android-icon-48x48.png new file mode 100644 index 0000000..4e006d8 Binary files /dev/null and b/res/favicon/android-icon-48x48.png differ diff --git a/res/favicon/android-icon-72x72.png b/res/favicon/android-icon-72x72.png new file mode 100644 index 0000000..93a4367 Binary files /dev/null and b/res/favicon/android-icon-72x72.png differ diff --git a/res/favicon/android-icon-96x96.png b/res/favicon/android-icon-96x96.png new file mode 100644 index 0000000..5006c4b Binary files /dev/null and b/res/favicon/android-icon-96x96.png differ diff --git a/res/favicon/apple-icon-114x114.png b/res/favicon/apple-icon-114x114.png new file mode 100644 index 0000000..dde3943 Binary files /dev/null and b/res/favicon/apple-icon-114x114.png differ diff --git a/res/favicon/apple-icon-120x120.png b/res/favicon/apple-icon-120x120.png new file mode 100644 index 0000000..290caec Binary files /dev/null and b/res/favicon/apple-icon-120x120.png differ diff --git a/res/favicon/apple-icon-144x144.png b/res/favicon/apple-icon-144x144.png new file mode 100644 index 0000000..a4146f3 Binary files /dev/null and b/res/favicon/apple-icon-144x144.png differ diff --git a/res/favicon/apple-icon-152x152.png b/res/favicon/apple-icon-152x152.png new file mode 100644 index 0000000..a550acb Binary files /dev/null and b/res/favicon/apple-icon-152x152.png differ diff --git a/res/favicon/apple-icon-180x180.png b/res/favicon/apple-icon-180x180.png new file mode 100644 index 0000000..fb3829b Binary files /dev/null and b/res/favicon/apple-icon-180x180.png differ diff --git a/res/favicon/apple-icon-57x57.png b/res/favicon/apple-icon-57x57.png new file mode 100644 index 0000000..b7fc7ae Binary files /dev/null and b/res/favicon/apple-icon-57x57.png differ diff --git a/res/favicon/apple-icon-60x60.png b/res/favicon/apple-icon-60x60.png new file mode 100644 index 0000000..c5678ed Binary files /dev/null and b/res/favicon/apple-icon-60x60.png differ diff --git a/res/favicon/apple-icon-72x72.png b/res/favicon/apple-icon-72x72.png new file mode 100644 index 0000000..93a4367 Binary files /dev/null and b/res/favicon/apple-icon-72x72.png differ diff --git a/res/favicon/apple-icon-76x76.png b/res/favicon/apple-icon-76x76.png new file mode 100644 index 0000000..013ee0b Binary files /dev/null and b/res/favicon/apple-icon-76x76.png differ diff --git a/res/favicon/apple-icon-precomposed.png b/res/favicon/apple-icon-precomposed.png new file mode 100644 index 0000000..620a4e7 Binary files /dev/null and b/res/favicon/apple-icon-precomposed.png differ diff --git a/res/favicon/apple-icon.png b/res/favicon/apple-icon.png new file mode 100644 index 0000000..620a4e7 Binary files /dev/null and b/res/favicon/apple-icon.png differ diff --git a/res/favicon/browserconfig.xml b/res/favicon/browserconfig.xml new file mode 100644 index 0000000..c554148 --- /dev/null +++ b/res/favicon/browserconfig.xml @@ -0,0 +1,2 @@ + +#ffffff \ No newline at end of file diff --git a/res/favicon/favicon-16x16.png b/res/favicon/favicon-16x16.png new file mode 100644 index 0000000..32c0883 Binary files /dev/null and b/res/favicon/favicon-16x16.png differ diff --git a/res/favicon/favicon-32x32.png b/res/favicon/favicon-32x32.png new file mode 100644 index 0000000..ef2cccb Binary files /dev/null and b/res/favicon/favicon-32x32.png differ diff --git a/res/favicon/favicon-96x96.png b/res/favicon/favicon-96x96.png new file mode 100644 index 0000000..5006c4b Binary files /dev/null and b/res/favicon/favicon-96x96.png differ diff --git a/res/favicon/favicon.ico b/res/favicon/favicon.ico new file mode 100644 index 0000000..62583b7 Binary files /dev/null and b/res/favicon/favicon.ico differ diff --git a/res/favicon/manifest.json b/res/favicon/manifest.json new file mode 100644 index 0000000..013d4a6 --- /dev/null +++ b/res/favicon/manifest.json @@ -0,0 +1,41 @@ +{ + "name": "App", + "icons": [ + { + "src": "\/android-icon-36x36.png", + "sizes": "36x36", + "type": "image\/png", + "density": "0.75" + }, + { + "src": "\/android-icon-48x48.png", + "sizes": "48x48", + "type": "image\/png", + "density": "1.0" + }, + { + "src": "\/android-icon-72x72.png", + "sizes": "72x72", + "type": "image\/png", + "density": "1.5" + }, + { + "src": "\/android-icon-96x96.png", + "sizes": "96x96", + "type": "image\/png", + "density": "2.0" + }, + { + "src": "\/android-icon-144x144.png", + "sizes": "144x144", + "type": "image\/png", + "density": "3.0" + }, + { + "src": "\/android-icon-192x192.png", + "sizes": "192x192", + "type": "image\/png", + "density": "4.0" + } + ] +} \ No newline at end of file diff --git a/res/favicon/ms-icon-144x144.png b/res/favicon/ms-icon-144x144.png new file mode 100644 index 0000000..a4146f3 Binary files /dev/null and b/res/favicon/ms-icon-144x144.png differ diff --git a/res/favicon/ms-icon-150x150.png b/res/favicon/ms-icon-150x150.png new file mode 100644 index 0000000..171fb33 Binary files /dev/null and b/res/favicon/ms-icon-150x150.png differ diff --git a/res/favicon/ms-icon-310x310.png b/res/favicon/ms-icon-310x310.png new file mode 100644 index 0000000..8b0f683 Binary files /dev/null and b/res/favicon/ms-icon-310x310.png differ diff --git a/res/favicon/ms-icon-70x70.png b/res/favicon/ms-icon-70x70.png new file mode 100644 index 0000000..b43f649 Binary files /dev/null and b/res/favicon/ms-icon-70x70.png differ diff --git a/res/librius.ico b/res/librius.ico new file mode 100644 index 0000000..e457bde Binary files /dev/null and b/res/librius.ico differ diff --git a/res/librius.png b/res/librius.png new file mode 100644 index 0000000..4c9b916 Binary files /dev/null and b/res/librius.png differ diff --git a/res/librius.rc b/res/librius.rc new file mode 100644 index 0000000..60821f2 --- /dev/null +++ b/res/librius.rc @@ -0,0 +1 @@ +1 ICON "res/librius.ico" diff --git a/res/librius.res b/res/librius.res new file mode 100644 index 0000000..5980b5f Binary files /dev/null and b/res/librius.res differ diff --git a/res/librius.svg b/res/librius.svg new file mode 100644 index 0000000..92b3ded --- /dev/null +++ b/res/librius.svg @@ -0,0 +1 @@ + \ No newline at end of file