Compare commits
12 Commits
slippi
...
0dd41f4833
| Author | SHA1 | Date | |
|---|---|---|---|
| 0dd41f4833 | |||
| 319dd9fc0a | |||
| 233479ab27 | |||
| 7a3eaf6788 | |||
| ed4942cd58 | |||
| 32fe0d26fa | |||
| 2c56bb6153 | |||
| 7bf331a498 | |||
| b95632af08 | |||
| 5802980437 | |||
| c540e0ab83 | |||
| aa06f12b29 |
Binary file not shown.
17
flake.nix
17
flake.nix
@@ -20,21 +20,6 @@
|
|||||||
(_: v: lib.isDerivation v)
|
(_: v: lib.isDerivation v)
|
||||||
self.legacyPackages.${system});
|
self.legacyPackages.${system});
|
||||||
|
|
||||||
devShells.x86_64-linux.slippi =
|
overlays.default = import ./overlay.nix;
|
||||||
let
|
|
||||||
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; };
|
|
||||||
in self.packages.x86_64-linux.slippi-launcher.env.overrideAttrs
|
|
||||||
(final: prev: {
|
|
||||||
shellHook =
|
|
||||||
builtins.replaceStrings
|
|
||||||
["exec \"\${cmd[@]}\""]
|
|
||||||
[''
|
|
||||||
echo "''${cmd[-1]}"
|
|
||||||
unset cmd[-1]
|
|
||||||
cmd+=("$SHELL")
|
|
||||||
exec "''${cmd[@]}"
|
|
||||||
'']
|
|
||||||
prev.shellHook;
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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})
|
||||||
|
|||||||
32
pkgs/gf-core/default.nix
Normal file
32
pkgs/gf-core/default.nix
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{ haskell
|
||||||
|
, haskellPackages
|
||||||
|
, stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, autoreconfHook
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "3.12";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "GrammaticalFramework";
|
||||||
|
repo = "gf-core";
|
||||||
|
rev = "release-${version}";
|
||||||
|
hash = "sha256-9sB8tt2eOJT43kv2eaUYRQCzyBZOp6HvJdgGJQgiqks=";
|
||||||
|
};
|
||||||
|
pkg = haskellPackages.callCabal2nixWithOptions "gf" src "--flag=-server" {};
|
||||||
|
gf-pgf = stdenv.mkDerivation {
|
||||||
|
pname = "gf-pgf";
|
||||||
|
version = "0.0.1";
|
||||||
|
src = "${src}/src/runtime/c";
|
||||||
|
nativeBuildInputs = [ autoreconfHook ];
|
||||||
|
};
|
||||||
|
in haskell.lib.overrideCabal pkg (prev: {
|
||||||
|
patches = [
|
||||||
|
"${src}/nix/expose-all.patch"
|
||||||
|
"${src}/nix/revert-new-cabal-madness.patch"
|
||||||
|
];
|
||||||
|
jailbreak = true;
|
||||||
|
configureFlags = [ "-f" "c-runtime" ];
|
||||||
|
librarySystemDepends = [ gf-pgf ];
|
||||||
|
passthru = { inherit gf-pgf; };
|
||||||
|
})
|
||||||
4
pkgs/gf/default.nix
Normal file
4
pkgs/gf/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
# Alias for `gf-core`
|
||||||
|
{ gf-core }:
|
||||||
|
|
||||||
|
gf-core
|
||||||
30
pkgs/iropke-batang/default.nix
Normal file
30
pkgs/iropke-batang/default.nix
Normal 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;
|
||||||
|
};
|
||||||
|
})
|
||||||
73
pkgs/quiver/default.nix
Normal file
73
pkgs/quiver/default.nix
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
{ stdenv
|
||||||
|
, fetchNpmDeps
|
||||||
|
, fetchFromGitHub
|
||||||
|
, fetchzip
|
||||||
|
, fetchurl
|
||||||
|
, lib
|
||||||
|
, imagemagick
|
||||||
|
, nodejs_20
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
vendoredKatex = fetchzip {
|
||||||
|
url = "https://github.com/KaTeX/KaTeX/releases/download/v0.16.9/katex.zip";
|
||||||
|
hash = "sha256-Nca52SW4Q0P5/fllDFQEaOQyak7ojCs0ShlqJ1mWZOM=";
|
||||||
|
};
|
||||||
|
vendoredWorkbox = fetchurl {
|
||||||
|
url = "https://storage.googleapis.com/workbox-cdn/releases/7.0.0/workbox-window.prod.mjs";
|
||||||
|
hash = "sha256-YR3m/DqqF+yahPQAk/2k0yRmdoYtQNBEHsL6fQTDmlc=";
|
||||||
|
};
|
||||||
|
vendoredWorkboxMap = fetchurl {
|
||||||
|
url = "https://storage.googleapis.com/workbox-cdn/releases/7.0.0/workbox-window.prod.mjs.map";
|
||||||
|
hash = "sha256-tUBiVoiKi3OCT+wctUYl0FVnT7StsGBDx7EzculcF5I=";
|
||||||
|
};
|
||||||
|
rev = "1816fb788e4d315bf1dc30053a5e1646eb0af9b8";
|
||||||
|
in stdenv.mkDerivation (final: {
|
||||||
|
pname = "quiver";
|
||||||
|
version = lib.substring 0 7 rev;
|
||||||
|
inherit vendoredKatex vendoredWorkbox vendoredWorkboxMap;
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "varkor";
|
||||||
|
repo = "quiver";
|
||||||
|
inherit rev;
|
||||||
|
hash = "sha256-29x2x0fLemkxhv+85wPnDrrlRW2h5qJtF/QTbGa6ghE=";
|
||||||
|
};
|
||||||
|
npmDeps = fetchNpmDeps {
|
||||||
|
src = "${final.src}/service-worker";
|
||||||
|
hash = "sha256-1CdgZFvpyJFyh5x9ljTau6vrR7FeHRYZ1MG/ZOEoou8=";
|
||||||
|
};
|
||||||
|
preBuild = ''
|
||||||
|
cp -r $vendoredKatex src/KaTeX
|
||||||
|
mkdir src/Workbox
|
||||||
|
cp $vendoredWorkbox src/Workbox/workbox-window.prod.mjs
|
||||||
|
cp $vendoredWorkboxMap src/Workbox/workbox-window.prod.mjs.map
|
||||||
|
'';
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
pushd service-worker
|
||||||
|
npm install --cache $npmDeps
|
||||||
|
node build.js
|
||||||
|
popd
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir -p $out/opt
|
||||||
|
cp -r src $out/opt/quiver
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
nativeBuildInputs = [
|
||||||
|
imagemagick
|
||||||
|
];
|
||||||
|
buildInputs = [
|
||||||
|
nodejs_20
|
||||||
|
];
|
||||||
|
meta = {
|
||||||
|
description = ''
|
||||||
|
A modern commutative diagram editor for the web.
|
||||||
|
'';
|
||||||
|
homepage = "https://q.uiver.app/";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
platforms = lib.platforms.unix;
|
||||||
|
};
|
||||||
|
})
|
||||||
Binary file not shown.
@@ -27,11 +27,10 @@ appimageTools.wrapType2 rec {
|
|||||||
pname = "slippi-launcher";
|
pname = "slippi-launcher";
|
||||||
version = "2.11.10";
|
version = "2.11.10";
|
||||||
|
|
||||||
src = ./Slippi-Launcher-2.11.10-x86_64.AppImage;
|
src = fetchurl {
|
||||||
# src = fetchurl {
|
url = "https://github.com/project-slippi/slippi-launcher/releases/download/v${version}/Slippi-Launcher-${version}-x86_64.AppImage";
|
||||||
# url = "https://github.com/project-slippi/slippi-launcher/releases/download/v${version}/Slippi-Launcher-${version}-x86_64.AppImage";
|
hash = "sha256-OrWd0jVqe6CzNbVRNlm2alt2NZ8uBYeHiASaB74ouW4=";
|
||||||
# hash = "sha256-OrWd0jVqe6CzNbVRNlm2alt2NZ8uBYeHiASaB74ouW4=";
|
};
|
||||||
# };
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
makeWrapper
|
makeWrapper
|
||||||
|
|||||||
32
pkgs/syd-plex-latex/default.nix
Normal file
32
pkgs/syd-plex-latex/default.nix
Normal 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
|
||||||
|
'';
|
||||||
|
})
|
||||||
15
pkgs/syd-plex-latex/syd-plex.sty
Executable file
15
pkgs/syd-plex-latex/syd-plex.sty
Executable 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
|
||||||
Reference in New Issue
Block a user