generated from GarandPLG/rust-flake-template
Make helpers public and improve Nix packaging
Export `block_title` and `helpers` with `pub mod` for external use. Add Nix improvements: version check hook, update script, install check. Include post‑install step to copy soundtracks and rename binary. Extend meta with platforms, mainProgram, and maintainer handling. Update docs to show required imports for block title helpers.
This commit is contained in:
+42
-17
@@ -1,25 +1,50 @@
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
# fetchFromGitea,
|
||||
pkg-config,
|
||||
alsa-lib,
|
||||
}:
|
||||
rustPlatform.buildRustPackage {
|
||||
name = "war-in-tunnels";
|
||||
pname = "war-in-tunnels";
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}: let
|
||||
version = "0.1.0";
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "war-in-tunnels";
|
||||
inherit version;
|
||||
|
||||
src = ./.;
|
||||
buildInputs = [alsa-lib];
|
||||
nativeBuildInputs = [pkg-config];
|
||||
cargoHash = lib.fakeHash;
|
||||
src = ./.;
|
||||
# src = fetchFromGitea {
|
||||
# domain = "gitea.garandplg.com";
|
||||
# owner = "GarandPLG";
|
||||
# repo = "war-in-tunnels";
|
||||
# tag = "v${version}";
|
||||
# hash = lib.fakeHash;
|
||||
# };
|
||||
|
||||
meta = {
|
||||
description = "TUI underground game";
|
||||
homepage = "https://gitea.garandplg.com/GarandPLG/war-in-tunnels";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [
|
||||
"Garand_PLG"
|
||||
];
|
||||
};
|
||||
}
|
||||
cargoHash = "sha256-Cv/sUzkiQuQS3ybg2glfXucIu+HtPi2brH/D7tqc3Mc=";
|
||||
|
||||
nativeBuildInputs = [pkg-config];
|
||||
buildInputs = [alsa-lib];
|
||||
|
||||
nativeInstallCheckInputs = [versionCheckHook];
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru.updateScript = nix-update-script {};
|
||||
|
||||
postInstall = ''
|
||||
cp -r soundtracks $out/bin
|
||||
mv $out/bin/war_in_tunnels $out/bin/war-in-tunnels
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "TUI underground game";
|
||||
homepage = "https://gitea.garandplg.com/GarandPLG/war-in-tunnels";
|
||||
license = lib.licenses.mit;
|
||||
platforms = ["x86_64-linux"];
|
||||
maintainers = with lib.maintainers; [
|
||||
GarandPLG
|
||||
];
|
||||
mainProgram = "war-in-tunnels";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -44,6 +44,10 @@
|
||||
src = ./.;
|
||||
buildInputs = with pkgs; [alsa-lib];
|
||||
nativeBuildInputs = with pkgs; [pkg-config];
|
||||
postInstall = ''
|
||||
cp -r soundtracks $out/bin
|
||||
mv $out/bin/war_in_tunnels $out/bin/war-in-tunnels
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -31,7 +31,9 @@ use ratatui::{
|
||||
/// # Example
|
||||
///
|
||||
/// ```rust
|
||||
/// use war_in_tunnels::app::helpers::block_title::block_title_helper;
|
||||
/// use ratatui::style::Color;
|
||||
/// use ratatui::text::Line;
|
||||
///
|
||||
/// let title: Line<'_> = block_title_helper(
|
||||
/// &[
|
||||
@@ -89,7 +91,9 @@ pub fn block_title_helper<'a>(texts: &[(&'a str, Color)], separator: Option<&'a
|
||||
/// # Example
|
||||
///
|
||||
/// ```rust
|
||||
/// use war_in_tunnels::app::helpers::block_title::block_single_title_helper;
|
||||
/// use ratatui::style::Color;
|
||||
/// use ratatui::text::Line;
|
||||
///
|
||||
/// let title: Line<'_> = block_single_title_helper("Keybindings", Color::Magenta);
|
||||
/// // `title` now represents: [ Keybindings ] with “Keybindings” coloured magenta.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
mod block_title;
|
||||
pub mod block_title;
|
||||
mod cells_area;
|
||||
mod main_menu_option;
|
||||
mod zoom_level;
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
mod app;
|
||||
mod buildings;
|
||||
mod helpers;
|
||||
pub mod helpers;
|
||||
mod keybind;
|
||||
mod keybindings;
|
||||
mod state;
|
||||
|
||||
Reference in New Issue
Block a user