Files
tasksquire/flake.nix
2026-02-23 21:30:53 +01:00

57 lines
1.4 KiB
Nix

{
description = "Tasksquire";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-parts.url = "github:hercules-ci/flake-parts";
};
outputs = inputs@{ self, nixpkgs, flake-parts, ... }:
flake-parts.lib.mkFlake { inherit inputs; } {
systems = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" "x86_64-darwin" ];
perSystem = { config, self', inputs', pkgs, system, ... }: {
packages.tasksquire = pkgs.buildGoModule {
pname = "tasksquire";
version = "0.1.0";
src = ./.;
vendorHash = "sha256-fDzQuKBZPkOATMMnYcFv/aJP62XDhL9LjM/UYre9JQ4=";
ldflags = [ "-s" "-w" ];
nativeBuildInputs = with pkgs; [
taskwarrior3
timewarrior
];
meta = with pkgs.lib; {
description = "A Terminal User Interface (TUI) for Taskwarrior";
mainProgram = "tasksquire";
};
};
# Set the default package
packages.default = self'.packages.tasksquire;
# Development shell
devShells.default = pkgs.mkShell {
inputsFrom = [ self'.packages.tasksquire ];
buildInputs = with pkgs; [
go_1_24
gcc
gotools
golangci-lint
gopls
go-outline
gopkgs
go-tools
gotests
delve
];
CGO_CFLAGS = "-O";
};
};
};
}