nix package + small tweaks for release

This commit is contained in:
outfoxxed 2024-11-09 01:09:07 -08:00
parent 4546105f21
commit 48b954c410
Signed by: outfoxxed
GPG key ID: 4C88A185FB89301E
8 changed files with 121 additions and 19 deletions

View file

@ -6,6 +6,7 @@
yarn-berry, yarn-berry,
nodejs_22, nodejs_22,
cacert, cacert,
quickshell-types ? null,
}: stdenv.mkDerivation (final: let }: stdenv.mkDerivation (final: let
nodeModules = stdenv.mkDerivation { nodeModules = stdenv.mkDerivation {
pname = "${final.pname}-node_modules"; pname = "${final.pname}-node_modules";
@ -50,7 +51,7 @@
outputHashMode = "recursive"; outputHashMode = "recursive";
outputHashAlgo = "sha256"; outputHashAlgo = "sha256";
outputHash = "rKoDjvG5t+aQRrzAz0eTifPtL3zmWAu/emxXWd1ocxM="; outputHash = "tZ4xuA7uNnMIEpSUmQ5TAWPdvRGFJWIgWyBa1QFFWWU=";
}; };
in { in {
pname = "quickshell-web"; pname = "quickshell-web";
@ -72,9 +73,12 @@ in {
EOF EOF
cp -r ${nodeModules} node_modules cp -r ${nodeModules} node_modules
chmod +rw -R node_modules
''; '';
buildPhase = '' buildPhase = ''
${if quickshell-types != null then "export SECRET_MODULES_PATH=${quickshell-types}" else ""}
echo SECRET_MODULES_PATH: $SECRET_MODULES_PATH
HOME=$(pwd)/garbage-tooling yarn build HOME=$(pwd)/garbage-tooling yarn build
''; '';

View file

@ -2,11 +2,11 @@
"nodes": { "nodes": {
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1727348695, "lastModified": 1730785428,
"narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=", "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784", "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -15,9 +15,52 @@
"type": "indirect" "type": "indirect"
} }
}, },
"quickshell": {
"inputs": {
"nixpkgs": [
"quickshell-docs",
"nixpkgs"
]
},
"locked": {
"lastModified": 1730842284,
"narHash": "sha256-s0doicDkqzCqHvplBnjWPJtGJwajjDdfVkmmPu32l6Q=",
"ref": "refs/heads/master",
"rev": "b528be94260b572919ff47d2f5e3150ebc1ee3e9",
"revCount": 368,
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell"
},
"original": {
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell"
}
},
"quickshell-docs": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"quickshell": "quickshell"
},
"locked": {
"lastModified": 1731140797,
"narHash": "sha256-ovpoYKNzGViJbl8Pqi+gtmKIOKQXS0dCK65pShyS64s=",
"ref": "refs/heads/master",
"rev": "bc2c0d5d2c3941fb4c7ba7fafc91a41a65af6728",
"revCount": 89,
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell-docs"
},
"original": {
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell-docs"
}
},
"root": { "root": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs",
"quickshell-docs": "quickshell-docs"
} }
} }
}, },

View file

@ -1,15 +1,23 @@
{ {
inputs = { inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable"; nixpkgs.url = "nixpkgs/nixos-unstable";
quickshell-docs = {
url = "git+https://git.outfoxxed.me/quickshell/quickshell-docs";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { self, nixpkgs }: let outputs = { self, nixpkgs, quickshell-docs }: let
forEachSystem = fn: nixpkgs.lib.genAttrs forEachSystem = fn: nixpkgs.lib.genAttrs
[ "x86_64-linux" "aarch64-linux" ] [ "x86_64-linux" "aarch64-linux" ]
(system: fn system nixpkgs.legacyPackages.${system}); (system: fn system nixpkgs.legacyPackages.${system});
in { in {
packages = forEachSystem (system: pkgs: rec { packages = forEachSystem (system: pkgs: rec {
quickshell-web = pkgs.callPackage ./default.nix {}; quickshell-web = pkgs.callPackage ./default.nix {
quickshell-types = quickshell-docs.packages.${system}.quickshell-types;
};
default = quickshell-web; default = quickshell-web;
}); });
}; };

View file

@ -13,8 +13,8 @@ export default function pagefind(): AstroIntegration {
const relativeDir = relative(cwd, targetDir); const relativeDir = relative(cwd, targetDir);
return new Promise<void>(resolve => { return new Promise<void>(resolve => {
spawn( spawn(
"yarn dlx", "yarn",
["-q", "pagefind", "--site", relativeDir], ["pagefind", "--site", relativeDir],
{ {
stdio: "inherit", stdio: "inherit",
shell: true, shell: true,

View file

@ -1 +1,25 @@
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="0 0 100 100"><rect width="100" height="100" rx="20" fill="#24ff70"></rect><path d="M50.41 76.74L41.38 76.74Q40.27 76.74 39.68 76.15Q39.10 75.56 38.75 75.15L38.75 75.15L36.41 72.05Q33.72 72.94 30.27 72.94L30.27 72.94Q23.92 72.94 19.26 70.87Q14.60 68.80 11.95 64.63Q9.29 60.45 9.08 54.17L9.08 54.17Q9.01 51.21 9.01 48.21Q9.01 45.20 9.08 42.24L9.08 42.24Q9.29 36.03 11.98 31.78Q14.67 27.54 19.36 25.40Q24.06 23.26 30.27 23.26L30.27 23.26Q36.54 23.26 41.24 25.40Q45.93 27.54 48.65 31.78Q51.38 36.03 51.52 42.24L51.52 42.24Q51.66 45.20 51.66 48.21Q51.66 51.21 51.52 54.17L51.52 54.17Q51.17 62.73 46.55 67.42L46.55 67.42L51.59 74.60Q51.66 74.67 51.72 74.87Q51.79 75.08 51.79 75.29L51.79 75.29Q51.86 75.84 51.45 76.29Q51.03 76.74 50.41 76.74L50.41 76.74ZM30.27 63.01L30.27 63.01Q33.92 63.01 36.23 60.80Q38.55 58.59 38.68 53.76L38.68 53.76Q38.82 50.72 38.82 48.03Q38.82 45.34 38.68 42.44L38.68 42.44Q38.61 39.20 37.51 37.17Q36.41 35.13 34.58 34.16Q32.75 33.20 30.27 33.20L30.27 33.20Q27.92 33.20 26.06 34.16Q24.19 35.13 23.12 37.17Q22.05 39.20 21.92 42.44L21.92 42.44Q21.85 45.34 21.85 48.03Q21.85 50.72 21.92 53.76L21.92 53.76Q22.12 58.59 24.40 60.80Q26.68 63.01 30.27 63.01ZM73.74 72.94L73.74 72.94Q69.25 72.94 66.11 71.94Q62.97 70.94 61.01 69.49Q59.04 68.04 58.07 66.49Q57.11 64.94 57.04 63.77L57.04 63.77Q56.97 63.01 57.52 62.52Q58.07 62.04 58.69 62.04L58.69 62.04L66.56 62.04Q66.77 62.04 66.94 62.11Q67.11 62.18 67.32 62.39L67.32 62.39Q68.22 62.87 69.11 63.59Q70.01 64.32 71.18 64.87Q72.36 65.42 74.01 65.42L74.01 65.42Q75.94 65.42 77.25 64.63Q78.57 63.83 78.57 62.39L78.57 62.39Q78.57 61.28 77.95 60.56Q77.32 59.83 75.43 59.14Q73.53 58.45 69.73 57.76L69.73 57.76Q66.15 56.93 63.45 55.59Q60.76 54.24 59.31 52.07Q57.87 49.90 57.87 46.79L57.87 46.79Q57.87 44.03 59.66 41.48Q61.45 38.93 64.90 37.30Q68.35 35.68 73.46 35.68L73.46 35.68Q77.39 35.68 80.36 36.61Q83.33 37.55 85.33 38.99Q87.33 40.44 88.36 41.96Q89.40 43.48 89.47 44.72L89.47 44.72Q89.54 45.41 89.05 45.93Q88.57 46.45 87.95 46.45L87.95 46.45L80.77 46.45Q80.50 46.45 80.22 46.34Q79.95 46.24 79.74 46.10L79.74 46.10Q78.91 45.69 78.08 45.00Q77.25 44.31 76.15 43.76Q75.05 43.20 73.39 43.20L73.39 43.20Q71.53 43.20 70.49 44.03Q69.46 44.86 69.46 46.17L69.46 46.17Q69.46 47.07 70.04 47.83Q70.63 48.59 72.46 49.21Q74.29 49.83 78.15 50.59L78.15 50.59Q82.91 51.35 85.74 53.04Q88.57 54.73 89.78 56.97Q90.99 59.21 90.99 61.70L90.99 61.70Q90.99 65.01 88.99 67.56Q86.98 70.11 83.15 71.53Q79.33 72.94 73.74 72.94Z" fill="#fff"></path></svg> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="256"
height="256"
viewBox="0 0 100 100"
version="1.1"
id="svg1"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<rect
width="100"
height="78.125"
fill="#24ff70"
id="rect1"
style="fill:#2db45c;fill-opacity:1"
x="0"
y="10.9375"
rx="15.625" />
<path
d="m 50.41,76.74 h -9.03 q -1.11,0 -1.7,-0.59 -0.58,-0.59 -0.93,-1 v 0 l -2.34,-3.1 q -2.69,0.89 -6.14,0.89 v 0 q -6.35,0 -11.01,-2.07 Q 14.6,68.8 11.95,64.63 9.29,60.45 9.08,54.17 v 0 q -0.07,-2.96 -0.07,-5.96 0,-3.01 0.07,-5.97 v 0 q 0.21,-6.21 2.9,-10.46 2.69,-4.24 7.38,-6.38 4.7,-2.14 10.91,-2.14 v 0 q 6.27,0 10.97,2.14 4.69,2.14 7.41,6.38 2.73,4.25 2.87,10.46 v 0 q 0.14,2.96 0.14,5.97 0,3 -0.14,5.96 v 0 q -0.35,8.56 -4.97,13.25 v 0 l 5.04,7.18 q 0.07,0.07 0.13,0.27 0.07,0.21 0.07,0.42 v 0 q 0.07,0.55 -0.34,1 -0.42,0.45 -1.04,0.45 z M 30.27,63.01 v 0 q 3.65,0 5.96,-2.21 2.32,-2.21 2.45,-7.04 v 0 q 0.14,-3.04 0.14,-5.73 0,-2.69 -0.14,-5.59 v 0 Q 38.61,39.2 37.51,37.17 36.41,35.13 34.58,34.16 32.75,33.2 30.27,33.2 v 0 q -2.35,0 -4.21,0.96 -1.87,0.97 -2.94,3.01 -1.07,2.03 -1.2,5.27 v 0 q -0.07,2.9 -0.07,5.59 0,2.69 0.07,5.73 v 0 q 0.2,4.83 2.48,7.04 2.28,2.21 5.87,2.21 z m 43.47,9.93 v 0 q -4.49,0 -7.63,-1 -3.14,-1 -5.1,-2.45 -1.97,-1.45 -2.94,-3 -0.96,-1.55 -1.03,-2.72 v 0 q -0.07,-0.76 0.48,-1.25 0.55,-0.48 1.17,-0.48 v 0 h 7.87 q 0.21,0 0.38,0.07 0.17,0.07 0.38,0.28 v 0 q 0.9,0.48 1.79,1.2 0.9,0.73 2.07,1.28 1.18,0.55 2.83,0.55 v 0 q 1.93,0 3.24,-0.79 1.32,-0.8 1.32,-2.24 v 0 q 0,-1.11 -0.62,-1.83 -0.63,-0.73 -2.52,-1.42 -1.9,-0.69 -5.7,-1.38 v 0 Q 66.15,56.93 63.45,55.59 60.76,54.24 59.31,52.07 57.87,49.9 57.87,46.79 v 0 q 0,-2.76 1.79,-5.31 1.79,-2.55 5.24,-4.18 3.45,-1.62 8.56,-1.62 v 0 q 3.93,0 6.9,0.93 2.97,0.94 4.97,2.38 2,1.45 3.03,2.97 1.04,1.52 1.11,2.76 v 0 q 0.07,0.69 -0.42,1.21 -0.48,0.52 -1.1,0.52 v 0 h -7.18 q -0.27,0 -0.55,-0.11 -0.27,-0.1 -0.48,-0.24 v 0 Q 78.91,45.69 78.08,45 77.25,44.31 76.15,43.76 75.05,43.2 73.39,43.2 v 0 q -1.86,0 -2.9,0.83 -1.03,0.83 -1.03,2.14 v 0 q 0,0.9 0.58,1.66 0.59,0.76 2.42,1.38 1.83,0.62 5.69,1.38 v 0 q 4.76,0.76 7.59,2.45 2.83,1.69 4.04,3.93 1.21,2.24 1.21,4.73 v 0 q 0,3.31 -2,5.86 -2.01,2.55 -5.84,3.97 -3.82,1.41 -9.41,1.41 z"
fill="#ffffff"
id="path1" />
</svg>

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

View file

@ -3,8 +3,20 @@ import path from "node:path";
import type { RouteData, dirData } from "./types"; import type { RouteData, dirData } from "./types";
function modulesPath() {
const modulesPath = import.meta.env.SECRET_MODULES_PATH;
if (!modulesPath || modulesPath === "") {
throw new Error(
"Cannot generate types, missing SECRET_MODULES_PATH"
);
}
return modulesPath;
}
async function readSubdir(subdir: string): Promise<dirData[]> { async function readSubdir(subdir: string): Promise<dirData[]> {
const fullpath = path.join(process.cwd(), "modules", subdir); const fullpath = path.join(modulesPath(), subdir);
const filenames = await fs.readdir(fullpath); const filenames = await fs.readdir(fullpath);
const data = await Promise.all( const data = await Promise.all(
@ -31,13 +43,7 @@ async function readSubdir(subdir: string): Promise<dirData[]> {
} }
async function generateTypeData(): Promise<RouteData[]> { async function generateTypeData(): Promise<RouteData[]> {
const mainDir = import.meta.env.SECRET_MODULES_PATH; const mainDir = modulesPath();
if (!mainDir || mainDir === "") {
throw new Error(
"Cannot generate types, missing SECRET_MODULES_PATH"
);
}
const subdirs = await fs.readdir(mainDir, { const subdirs = await fs.readdir(mainDir, {
withFileTypes: true, withFileTypes: true,

View file

@ -121,7 +121,7 @@ html.dark .main-page_hero-text {
} }
} }
html.dark .main-page_link-card { /*html.dark .main-page_link-card {
background-color: transparent; background-color: transparent;
border-color: transparent; border-color: transparent;
@ -168,6 +168,23 @@ html.dark .main-page_link-card {
} }
} }
} }
}*/
html.dark .main-page_link-card {
background-color: hsl(var(--green) 38 25);
color: hsl(194 0 100);
&:hover {
background-color: hsl(var(--green) 48 35);
}
&.main-page_bluecard {
background-color: hsl(var(--blue) 38 25);
&:hover {
background-color: hsl(var(--blue) 48 35);
}
}
} }
.baselayout footer { .baselayout footer {