Add flake.nix
This commit is contained in:
87
flake.nix
Normal file
87
flake.nix
Normal file
@@ -0,0 +1,87 @@
|
||||
{
|
||||
description = "Quad4 Linking Tool development environment";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, flake-utils }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
};
|
||||
|
||||
go = pkgs.go_1_25;
|
||||
|
||||
task = pkgs.buildGoModule rec {
|
||||
pname = "task";
|
||||
version = "3.46.3";
|
||||
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "go-task";
|
||||
repo = "task";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-163b9ce6ab8afaf0247b60c742f7d7d66fbf1d1f64d91d5cdbf6d75b1dd54b52";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = with pkgs.lib; {
|
||||
description = "A task runner / simpler Make alternative written in Go";
|
||||
homepage = "https://taskfile.dev/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
};
|
||||
|
||||
wails = pkgs.buildGoModule rec {
|
||||
pname = "wails";
|
||||
version = "2.11.0";
|
||||
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "wailsapp";
|
||||
repo = "wails";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-3dbdf683ce67968c1319436950e6da1f27e6d64802d477105fc4d7a60be19860";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = with pkgs.lib; {
|
||||
description = "Build applications using Go + HTML + CSS + JS";
|
||||
homepage = "https://wails.io/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
go
|
||||
task
|
||||
nodejs_20
|
||||
nodePackages.pnpm
|
||||
wails
|
||||
gcc
|
||||
pkg-config
|
||||
];
|
||||
|
||||
shellHook = ''
|
||||
echo "Quad4 Linking Tool Development Environment"
|
||||
echo "Go version: $(go version)"
|
||||
echo "Task version: $(task --version 2>/dev/null || echo 'installed')"
|
||||
echo "Node version: $(node --version)"
|
||||
echo "pnpm version: $(pnpm --version)"
|
||||
echo "Wails version: $(wails version 2>/dev/null || echo 'installed')"
|
||||
'';
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user