diff options
author | Ian M. Jones <ian@ianmjones.com> | 2022-03-06 00:34:46 +0000 |
---|---|---|
committer | Ian M. Jones <ian@ianmjones.com> | 2022-03-09 21:57:28 +0000 |
commit | 6e3286cc63654d3c279424f55ba4118f6fccf6a8 (patch) | |
tree | 88fb4df50101e10ba03a2a08b9304729a4640452 | |
parent | a173e92ee458878651356b9bcfb1e2b5145f76af (diff) | |
download | nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.tar nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.tar.gz nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.tar.bz2 nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.tar.lz nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.tar.xz nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.tar.zst nixpkgs-6e3286cc63654d3c279424f55ba4118f6fccf6a8.zip |
wails: init at 2.0.0-beta.33
-rw-r--r-- | pkgs/development/tools/wails/default.nix | 78 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
2 files changed, 80 insertions, 0 deletions
diff --git a/pkgs/development/tools/wails/default.nix b/pkgs/development/tools/wails/default.nix new file mode 100644 index 00000000000..2d0576592ec --- /dev/null +++ b/pkgs/development/tools/wails/default.nix @@ -0,0 +1,78 @@ +{ lib +, stdenv +, buildGoModule +, fetchFromGitHub +, pkg-config +, makeWrapper +, go +, gcc +, gtk3 +, webkitgtk +, nodejs +, upx +, zlib +}: + +buildGoModule rec { + pname = "wails"; + version = "2.0.0-beta.33"; + + src = fetchFromGitHub { + owner = "wailsapp"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-efxOL/FllToum0P4JyAJt0fbrznTFYh7czTWpZu3uk0="; + } + "/v2"; + + vendorSha256 = "sha256-qPMVsvud2L7hpXUOfYYMiO32JXff8ZZC34EsxFoSJ0g="; + + proxyVendor = true; + + subPackages = [ "cmd/wails" ]; + + # These packages are needed to build wails + # and will also need to be used when building a wails app. + nativeBuildInputs = [ + pkg-config + makeWrapper + ]; + + # Wails apps are built with Go, so we need to be able to + # add it in propagatedBuildInputs. + allowGoReference = true; + + # Following packages are required when wails used as a builder. + propagatedBuildInputs = [ + pkg-config + go + gcc + gtk3 + webkitgtk + nodejs + upx + ]; + + ldflags = [ + "-s" + "-w" + ]; + + # As Wails calls a compiler, certain apps and libraries need to be made available. + postFixup = '' + wrapProgram $out/bin/wails \ + --prefix PATH : ${lib.makeBinPath [ pkg-config go gcc nodejs upx ]} \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gtk3 webkitgtk ]} \ + --set PKG_CONFIG_PATH "$PKG_CONFIG_PATH" \ + --set CGO_LDFLAGS "-L${lib.makeLibraryPath [ zlib ]}" + ''; + + doCheck = true; + + meta = with lib; { + description = "Build applications using Go + HTML + CSS + JS"; + homepage = "https://wails.io"; + license = licenses.mit; + maintainers = with maintainers; [ ianmjones ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 575ca2a4c02..d847a5034ee 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15882,6 +15882,8 @@ with pkgs; vtable-dumper = callPackage ../development/tools/misc/vtable-dumper { }; + wails = callPackage ../development/tools/wails { }; + whatsapp-for-linux = callPackage ../applications/networking/instant-messengers/whatsapp-for-linux { }; whatstyle = callPackage ../development/tools/misc/whatstyle { |