Revamp nix packaging
This commit is contained in:
parent
07e842660b
commit
bbe4cf05cb
3
.gitignore
vendored
3
.gitignore
vendored
@ -1 +1,4 @@
|
||||
/target
|
||||
|
||||
result
|
||||
result-*
|
||||
|
31
default.nix
31
default.nix
@ -1,22 +1,35 @@
|
||||
{
|
||||
lib
|
||||
, fetchFromGitHub
|
||||
, stdenv
|
||||
, buildPackages
|
||||
, rustPlatform
|
||||
, makeWrapper
|
||||
, mpv
|
||||
, installShellFiles
|
||||
}:
|
||||
|
||||
let
|
||||
cargoToml = builtins.fromTOML (builtins.readFile ./Cargo.toml);
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "thumbctl";
|
||||
version = "0.1.0";
|
||||
pname = cargoToml.package.name;
|
||||
version = cargoToml.package.version;
|
||||
src = lib.cleanSource ./.;
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
cargoLock.lockFile = ./Cargo.lock;
|
||||
|
||||
cargoHash = "";
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
postInstall = let
|
||||
emulator = stdenv.hostPlatform.emulator buildPackages;
|
||||
in ''
|
||||
installShellCompletion --cmd thumbctl \
|
||||
--bash <(${emulator} $out/bin/thumbctl generate-completions --shell bash) \
|
||||
--zsh <(${emulator} $out/bin/thumbctl generate-completions --shell zsh) \
|
||||
--fish <(${emulator} $out/bin/thumbctl generate-completions --shell fish)
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
license = licenses.mit;
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ h7x4 ];
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "thumbctl";
|
||||
|
10
flake.nix
10
flake.nix
@ -25,7 +25,9 @@
|
||||
};
|
||||
|
||||
rust-bin = rust-overlay.lib.mkRustBin { } pkgs.buildPackages;
|
||||
toolchain = rust-bin.stable.latest.default;
|
||||
toolchain = rust-bin.stable.latest.default.override {
|
||||
extensions = [ "rust-src" "rust-analyzer" "rust-std" ];
|
||||
};
|
||||
in f system pkgs toolchain);
|
||||
in {
|
||||
apps = forAllSystems (system: pkgs: _: {
|
||||
@ -42,12 +44,6 @@
|
||||
default = pkgs.mkShell {
|
||||
nativeBuildInputs = [
|
||||
toolchain
|
||||
pkgs.pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
# pkgs.systemdLibs.dev
|
||||
pkgs.dbus.dev
|
||||
];
|
||||
|
||||
RUST_SRC_PATH = "${toolchain}/lib/rustlib/src/rust/library";
|
||||
|
Loading…
x
Reference in New Issue
Block a user