All checks were successful
		
		
	
	Check flake / build-amd64-linux (push) Successful in 1m24s
				
			
		
			
				
	
	
		
			84 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   lib,
 | |
|   buildNpmPackage,
 | |
|   fetchFromGitHub,
 | |
|   nixosTests,
 | |
|   python3,
 | |
|   vaultwarden,
 | |
| }:
 | |
| 
 | |
| let
 | |
|   version = "2025.8.0";
 | |
| 
 | |
|   bw_web_builds = fetchFromGitHub {
 | |
|     owner = "dani-garcia";
 | |
|     repo = "bw_web_builds";
 | |
|     rev = "v${version}";
 | |
|     hash = "sha256-93acGKO3Fq81M1wKPvIynvkTFXPQXypcMb+c4aEtxJc=";
 | |
|   };
 | |
| 
 | |
| in
 | |
| buildNpmPackage rec {
 | |
|   pname = "vaultwarden-webvault";
 | |
|   inherit version;
 | |
| 
 | |
|   src = fetchFromGitHub {
 | |
|     owner = "vaultwarden";
 | |
|     repo = "vw_web_builds";
 | |
|     rev = bw_web_builds.rev;
 | |
|     hash = "sha256-u51EP4I+bUcTeMqfzx1gbZMxpjalt3bpK3QGp5QEpYU=";
 | |
|   };
 | |
| 
 | |
|   npmDepsHash = "sha256-wi7ZDgGKXrtueLob5OVNKCpnzC00UW9zo8KwuoyL1Bo=";
 | |
| 
 | |
|   postPatch = ''
 | |
|     ln -s ${bw_web_builds}/{patches,resources} ..
 | |
|   '';
 | |
| 
 | |
|   nativeBuildInputs = [
 | |
|     python3
 | |
|   ];
 | |
| 
 | |
|   makeCacheWritable = true;
 | |
| 
 | |
|   env = {
 | |
|     ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
 | |
|     npm_config_build_from_source = "true";
 | |
|   };
 | |
| 
 | |
|   npmRebuildFlags = [
 | |
|     # FIXME one of the esbuild versions fails to download @esbuild/linux-x64
 | |
|     "--ignore-scripts"
 | |
|   ];
 | |
| 
 | |
|   npmBuildScript = "dist:oss:selfhost";
 | |
| 
 | |
|   npmBuildFlags = [
 | |
|     "--workspace"
 | |
|     "apps/web"
 | |
|   ];
 | |
| 
 | |
|   npmFlags = [ "--legacy-peer-deps" ];
 | |
| 
 | |
|   installPhase = ''
 | |
|     runHook preInstall
 | |
|     mkdir -p $out/share/vaultwarden
 | |
|     mv apps/web/build $out/share/vaultwarden/vault
 | |
|     runHook postInstall
 | |
|   '';
 | |
| 
 | |
|   passthru = {
 | |
|     inherit bw_web_builds;
 | |
|     tests = nixosTests.vaultwarden;
 | |
|   };
 | |
| 
 | |
|   meta = with lib; {
 | |
|     description = "Integrates the web vault into vaultwarden";
 | |
|     homepage = "https://github.com/dani-garcia/bw_web_builds";
 | |
|     changelog = "https://github.com/dani-garcia/bw_web_builds/releases/tag/v${version}";
 | |
|     platforms = platforms.all;
 | |
|     license = licenses.gpl3Plus;
 | |
|     inherit (vaultwarden.meta) maintainers;
 | |
|   };
 | |
| }
 |