From 5e7aab598257d7f0cde7c9fe2617c8801e224b9d Mon Sep 17 00:00:00 2001 From: happysalada Date: Sun, 3 Oct 2021 14:51:06 +0900 Subject: [PATCH] lemmy-ui: add static assets folder to out --- pkgs/servers/web-apps/lemmy/ui.nix | 97 +++++++++++++++--------------- 1 file changed, 48 insertions(+), 49 deletions(-) diff --git a/pkgs/servers/web-apps/lemmy/ui.nix b/pkgs/servers/web-apps/lemmy/ui.nix index 0d2deda53871..e554a1213e70 100644 --- a/pkgs/servers/web-apps/lemmy/ui.nix +++ b/pkgs/servers/web-apps/lemmy/ui.nix @@ -4,7 +4,6 @@ , nodejs , python3 , pkg-config -, writeShellScriptBin , fetchFromGitHub }: @@ -22,53 +21,53 @@ let name = "lemmy-ui"; version = "0.12.2"; - unwrapped = mkYarnPackage { - - src = fetchFromGitHub { - owner = "LemmyNet"; - repo = name; - rev = version; - fetchSubmodules = true; - sha256 = "sha256-iFLJqUnz4m9/JTSaJSUugzY5KkiKtH0sMYY4ALm2Ebk="; - }; - - inherit pkgConfig name version; - - extraBuildInputs = [ libsass ]; - - yarnNix = ./yarn.nix; - - # Fails mysteriously on source/package.json - # Upstream package.json is missing a newline at the end - packageJSON = ./package.json; - - yarnPreBuild = '' - export npm_config_nodedir=${nodejs} - ''; - - buildPhase = '' - # Yarn writes cache directories etc to $HOME. - export HOME=$PWD/yarn_home - - ln -sf $PWD/node_modules $PWD/deps/lemmy-ui/ - - yarn --offline build:prod - ''; - - distPhase = "true"; - - meta = with lib; { - description = "Building a federated alternative to reddit in rust"; - homepage = "https://join-lemmy.org/"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ happysalada billewanick ]; - platforms = platforms.linux; - }; - }; in -(writeShellScriptBin "lemmy-ui" '' - ${nodejs}/bin/node ${unwrapped}/libexec/lemmy-ui/node_modules/lemmy-ui/dist/js/server.js -'').overrideAttrs (oldAttrs: { - passthru = { inherit unwrapped; }; -}) +mkYarnPackage { + + src = fetchFromGitHub { + owner = "LemmyNet"; + repo = name; + rev = version; + fetchSubmodules = true; + sha256 = "sha256-iFLJqUnz4m9/JTSaJSUugzY5KkiKtH0sMYY4ALm2Ebk="; + }; + + inherit pkgConfig name version; + + extraBuildInputs = [ libsass ]; + + yarnNix = ./yarn.nix; + + # Fails mysteriously on source/package.json + # Upstream package.json is missing a newline at the end + packageJSON = ./package.json; + + yarnPreBuild = '' + export npm_config_nodedir=${nodejs} + ''; + + buildPhase = '' + # Yarn writes cache directories etc to $HOME. + export HOME=$PWD/yarn_home + + ln -sf $PWD/node_modules $PWD/deps/lemmy-ui/ + + yarn --offline build:prod + ''; + + preInstall = '' + mkdir $out + cp -R ./deps/lemmy-ui/dist/assets $out + ''; + + distPhase = "true"; + + meta = with lib; { + description = "Building a federated alternative to reddit in rust"; + homepage = "https://join-lemmy.org/"; + license = licenses.agpl3Only; + maintainers = with maintainers; [ happysalada billewanick ]; + platforms = platforms.linux; + }; +}