7 Commits

6 changed files with 91 additions and 5 deletions

View File

@@ -19,5 +19,7 @@
lib.filterAttrs lib.filterAttrs
(_: v: lib.isDerivation v) (_: v: lib.isDerivation v)
self.legacyPackages.${system}); self.legacyPackages.${system});
overlays.default = import ./overlay.nix;
}; };
} }

View File

@@ -7,7 +7,6 @@ let
isReserved = n: n == "lib" || n == "overlays" || n == "modules"; isReserved = n: n == "lib" || n == "overlays" || n == "modules";
nameValuePair = n: v: { name = n; value = v; }; nameValuePair = n: v: { name = n; value = v; };
nurAttrs = import ./default.nix { pkgs = super; }; nurAttrs = import ./default.nix { pkgs = super; };
in in
builtins.listToAttrs builtins.listToAttrs
(map (n: nameValuePair n nurAttrs.${n}) (map (n: nameValuePair n nurAttrs.${n})

View File

@@ -0,0 +1,30 @@
{ stdenvNoCC
, fetchFromGitHub
, lib
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "iropke-batang";
version = "1.2";
src = fetchFromGitHub {
owner = "iropke";
repo = "font-iropke-batang";
rev = "v${finalAttrs.version}";
hash = "sha256-wsu7JK0hHYn9aegaMeNV9fWvQ6KoMzHwOFWymWHYvxo=";
};
installPhase = ''
runHook preInstall
find . -type f -name '*.otf' \
-exec install -Dm644 {} -t $out/share/fonts/opentype \;
runHook postInstall
'';
meta = {
description = "Korean serif font";
homepage = "http://font.iropke.com/batang/";
changelog = "https://github.com/iropke/font-iropke-batang/releases";
license = lib.licenses.ofl;
platforms = lib.platforms.all;
};
})

View File

@@ -1,4 +1,12 @@
{ stdenv, fetchNpmDeps, fetchFromGitHub, fetchzip, fetchurl, lib, imagemagick, nodejs_20 }: { stdenv
, fetchNpmDeps
, fetchFromGitHub
, fetchzip
, fetchurl
, lib
, imagemagick
, nodejs_20
}:
let let
vendoredKatex = fetchzip { vendoredKatex = fetchzip {
@@ -13,7 +21,7 @@ let
url = "https://storage.googleapis.com/workbox-cdn/releases/7.0.0/workbox-window.prod.mjs.map"; url = "https://storage.googleapis.com/workbox-cdn/releases/7.0.0/workbox-window.prod.mjs.map";
hash = "sha256-tUBiVoiKi3OCT+wctUYl0FVnT7StsGBDx7EzculcF5I="; hash = "sha256-tUBiVoiKi3OCT+wctUYl0FVnT7StsGBDx7EzculcF5I=";
}; };
rev = "9872f3f9265f92643387239e76042c8d3ffeb410"; rev = "1816fb788e4d315bf1dc30053a5e1646eb0af9b8";
in stdenv.mkDerivation (final: { in stdenv.mkDerivation (final: {
pname = "quiver"; pname = "quiver";
version = lib.substring 0 7 rev; version = lib.substring 0 7 rev;
@@ -22,11 +30,11 @@ in stdenv.mkDerivation (final: {
owner = "varkor"; owner = "varkor";
repo = "quiver"; repo = "quiver";
inherit rev; inherit rev;
hash = "sha256-wSyCzUSLUL5nzUe5E4RdWv44WGd4C9WO6udkKY9cyBs="; hash = "sha256-29x2x0fLemkxhv+85wPnDrrlRW2h5qJtF/QTbGa6ghE=";
}; };
npmDeps = fetchNpmDeps { npmDeps = fetchNpmDeps {
src = "${final.src}/service-worker"; src = "${final.src}/service-worker";
hash = "sha256-xlww7Yfle58Qdwn/IcA6E6Fy7ZvH/ltKdlk6hvcC4UM="; hash = "sha256-1CdgZFvpyJFyh5x9ljTau6vrR7FeHRYZ1MG/ZOEoou8=";
}; };
preBuild = '' preBuild = ''
cp -r $vendoredKatex src/KaTeX cp -r $vendoredKatex src/KaTeX

View File

@@ -0,0 +1,32 @@
{ stdenvNoCC
, texlive
}:
stdenvNoCC.mkDerivation (final: {
pname = "syd-plex-latex";
version = "1.0.0";
src = ./.;
nativeBuildInputs = [ texlive.combined.scheme-small ];
passthru = {
pkgs = [ final.finalPackage ];
tlDeps = with texlive; [
plex
plex-otf
fontaxes
unicode-math
xetex
fontspec
xltxtra
realscripts
xecjk
];
tlType = "run";
};
installPhase = ''
runHook preInstall
dir="$out/tex/latex/syd-plex"
mkdir -p "$dir"
mv syd-plex.sty "$dir"
runHook postInstall
'';
})

View File

@@ -0,0 +1,15 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{syd-plex}[2025/12/01 Configure IBM Plex fonts]
% Redefine some commands to make unicode-math work lol. See §3.1 of the
% unicode-math manual.
\renewcommand*{\mathrm}[1]{\symup{#1}}
\RequirePackage{plex-otf}
\RequirePackage{xeCJK}
\setmathfont{IBM Plex Math}
\setmainfont{IBM Plex Serif}
\setCJKmainfont{IBM Plex Sans KR}
% Use sans-serif for \operatorname
\setoperatorfont\mathsf