2025-12-21 21:18:17 +01:00
|
|
|
let
|
|
|
|
|
nixpkgs = fetchTarball "https://github.com/NixOS/nixpkgs/tarball/nixos-25.05";
|
|
|
|
|
pkgs = import nixpkgs { config = {}; overlays = []; };
|
|
|
|
|
in
|
|
|
|
|
|
|
|
|
|
pkgs.mkShell {
|
|
|
|
|
buildInputs = with pkgs; [
|
|
|
|
|
rustc
|
|
|
|
|
cargo
|
|
|
|
|
gcc # cc-command for building native dependencies
|
|
|
|
|
pkg-config # useful for C-dependencies
|
|
|
|
|
openssl # if crates are dependent on openssl
|
|
|
|
|
openssl.dev # openssl development headers
|
|
|
|
|
];
|
|
|
|
|
|
2026-01-13 22:00:16 +01:00
|
|
|
shellHook = ''
|
2025-12-21 21:18:17 +01:00
|
|
|
echo "NaviPod Development Environment"
|
|
|
|
|
|
|
|
|
|
# Verify Rust is available
|
|
|
|
|
if command -v rustc &> /dev/null; then
|
|
|
|
|
echo "✓ Rust $(rustc --version) is available"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if command -v cargo &> /dev/null; then
|
|
|
|
|
echo "✓ Cargo $(cargo --version) is available"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
|
echo "Welcome to NaviPod development shell!"
|
|
|
|
|
echo "Run 'cargo build' to build the project."
|
2026-01-13 22:00:16 +01:00
|
|
|
echo "Run 'cargo run' to run the CLI."
|
2025-12-21 21:18:17 +01:00
|
|
|
echo "Run 'cargo check' to check for compilation errors."
|
2026-01-13 22:00:16 +01:00
|
|
|
echo ""
|
|
|
|
|
echo "Available commands:"
|
|
|
|
|
echo " navipod sync [--album ALBUM] [--artist ARTIST] - Sync content to iPod"
|
|
|
|
|
echo " navipod list-albums - List available albums"
|
|
|
|
|
echo " navipod check - Check iPod connection"
|
2025-12-21 21:18:17 +01:00
|
|
|
'';
|
|
|
|
|
}
|