nitter: build with buildNimPackage

This commit is contained in:
Emery Hemingway 2023-10-31 00:19:36 +00:00
parent ee21b61658
commit cab3fd4d50
6 changed files with 214 additions and 43 deletions

View File

@ -0,0 +1,194 @@
{
"depends": [
{
"method": "fetchzip",
"packages": [
"asynctools"
],
"path": "/nix/store/ahig7j046p8mc01jgidvvvba0afccilr-source",
"rev": "pr_fix_compilation",
"sha256": "0lip4qzc49ffa9byx65n7pmsy020a589vhnly373xrfhk2zw9jmd",
"srcDir": "",
"url": "https://github.com/timotheecour/asynctools/archive/pr_fix_compilation.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"dotenv"
],
"path": "/nix/store/9hxi0hvds11agbmpaha8zp1bgzf7vypv-source",
"ref": "2.0.1",
"rev": "48315332fe79ffce87c81b9d0bec992ba19b6966",
"sha256": "08y8xvpiqk75v0hxhgbhxfbxz7l95vavh1lv8kxkid8rb9p92zr4",
"srcDir": "src",
"url": "https://github.com/euantorano/dotenv.nim/archive/48315332fe79ffce87c81b9d0bec992ba19b6966.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"flatty"
],
"path": "/nix/store/21380smf8kyxzc4zf0qjsjx0dp5lv5rj-source",
"rev": "e668085",
"sha256": "0886lk20rg1pq56jsz1jjd8vrdz46lgdaxvp97az06mcawhbabbz",
"srcDir": "src",
"url": "https://github.com/treeform/flatty/archive/e668085.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"httpbeast"
],
"path": "/nix/store/hx85br48sjcridmda4l35cx7c9imxabg-source",
"ref": "v0.4.1",
"rev": "abc13d11c210b614960fe8760e581d44cfb2e3e9",
"sha256": "1x12ypfj341gjg3rh7zjq1wns8rngfyky6gqgb92lyhlvs7h4xzj",
"srcDir": "src",
"url": "https://github.com/dom96/httpbeast/archive/abc13d11c210b614960fe8760e581d44cfb2e3e9.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"jester"
],
"path": "/nix/store/jz86cks97is931hwsq5wf35kjwfypp6x-source",
"rev": "baca3f",
"sha256": "0i8rxsbp5yd9dasis650vqppika43mzfsls4fc7cz8k5j8xpd6zc",
"srcDir": "",
"url": "https://github.com/dom96/jester/archive/baca3f.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"jsony"
],
"path": "/nix/store/bzcq8q439rdsqhhihikzv3rsx4l4ybdm-source",
"rev": "ea811be",
"sha256": "1720iqsxjhqmhw1zhhs7d2ncdz25r8fqadls1p1iry1wfikjlnba",
"srcDir": "src",
"url": "https://github.com/treeform/jsony/archive/ea811be.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"karax"
],
"path": "/nix/store/5vghbi3cfpf7zvbkn0mk9chrf0rsx4yf-source",
"rev": "5cf360c",
"sha256": "1fh0jcjlw0vfqmr5dmhk436g569qvcpml9f981x28wmvm1511z2c",
"srcDir": "",
"url": "https://github.com/karaxnim/karax/archive/5cf360c.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"markdown"
],
"path": "/nix/store/6jpq2dp02mhjl8pkxzs0a1sjvgyg5h1r-source",
"rev": "158efe3",
"sha256": "1701q0i8yd9rrjraf5fzgcvilwnwgw3wyzzfwpr2drmn3x9pd8fj",
"srcDir": "src",
"url": "https://github.com/soasme/nim-markdown/archive/158efe3.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"nimcrypto"
],
"path": "/nix/store/dnj20qh97ylf57nka9wbxs735wbw7yxv-source",
"rev": "4014ef9",
"sha256": "1kgqr2lqaffglc1fgbanwcvhkqcbbd20d5b6w4lf0nksfl9c357a",
"srcDir": "",
"url": "https://github.com/cheatfate/nimcrypto/archive/4014ef9.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"packedjson"
],
"path": "/nix/store/c6wn9azj0kyvl818a40hzqzis0im8gnb-source",
"rev": "9e6fbb6",
"sha256": "09yxshkfpacgl6x8f77snjcwz37r519vh7rrnqrnh5npvgk3h24j",
"srcDir": "",
"url": "https://github.com/Araq/packedjson/archive/9e6fbb6.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"redis"
],
"path": "/nix/store/x6l3kz5950fb3d0pr5hmldh0xqkqrl62-source",
"rev": "d0a0e6f",
"sha256": "166kzflb3wgwvqnv9flyynp8b35xby617lxmk0yas8i4m6vjl00f",
"srcDir": "src",
"url": "https://github.com/zedeus/redis/archive/d0a0e6f.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"redis"
],
"path": "/nix/store/x6l3kz5950fb3d0pr5hmldh0xqkqrl62-source",
"rev": "d0a0e6f",
"sha256": "166kzflb3wgwvqnv9flyynp8b35xby617lxmk0yas8i4m6vjl00f",
"srcDir": "src",
"url": "https://github.com/zedeus/redis/archive/d0a0e6f.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"redpool"
],
"path": "/nix/store/pkwc61k47vzvxfdhsckbyx52rrbav0gz-source",
"rev": "8b7c1db",
"sha256": "10xh5fhwnahnq1nf6j69vvnbi55kixa0ari630gr6cdx80arvbs6",
"srcDir": "src",
"url": "https://github.com/zedeus/redpool/archive/8b7c1db.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"sass"
],
"path": "/nix/store/2nk90ab1k14px5zi8jwa30x8b8sfnbnm-source",
"rev": "7dfdd03",
"sha256": "19d78787k97l5cis81800hxa9qjr0yzjshlzdp727gh6pn8kc8fj",
"srcDir": "src",
"url": "https://github.com/dom96/sass/archive/7dfdd03.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"supersnappy"
],
"path": "/nix/store/kibhdjpd3mvn9adsp67amj35a7zrnk6y-source",
"rev": "6c94198",
"sha256": "0gxy7ijm4d2i4dkb64wwq51gns0i2d3d3rrd9cra7fyiahaph4xi",
"srcDir": "src",
"url": "https://github.com/guzba/supersnappy/archive/6c94198.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"ws"
],
"path": "/nix/store/zd51j4dphs6h1hyhdbzdv840c8813ai8-source",
"ref": "0.5.0",
"rev": "9536bf99ddf5948db221ccb7bb3663aa238a8e21",
"sha256": "0j8z9jlvzb1h60v7rryvh2wx6vg99lra6i62whf3fknc53l641fz",
"srcDir": "src",
"url": "https://github.com/treeform/ws/archive/9536bf99ddf5948db221ccb7bb3663aa238a8e21.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"zippy"
],
"path": "/nix/store/lhkc989wrk27wwglrxs0ahhxp2c650y5-source",
"rev": "ca5989a",
"sha256": "0rk31ispck48ilvzs0lxpp7z6y238a7d7dh7lmlfwi5i7hx13la6",
"srcDir": "src",
"url": "https://github.com/guzba/zippy/archive/ca5989a.tar.gz"
}
]
}

View File

@ -1,26 +1,12 @@
{ lib
, buildNimPackage
, fetchFromGitHub
, nimPackages
, nixosTests
, substituteAll
, unstableGitUpdater
, flatty
, jester
, jsony
, karax
, markdown
, nimcrypto
, openssl
, packedjson
, redis
, redpool
, sass
, supersnappy
, zippy
}:
buildNimPackage rec {
buildNimPackage (finalAttrs: prevAttrs: {
pname = "nitter";
version = "unstable-2023-10-31";
@ -31,38 +17,20 @@ buildNimPackage rec {
hash = "sha256-yCD7FbqWZMY0fyFf9Q3Ka06nw5Ha7jYLpmPONAhEVIM=";
};
lockFile = ./lock.json;
patches = [
(substituteAll {
src = ./nitter-version.patch;
inherit version;
inherit (src) rev;
url = builtins.replaceStrings [ "archive" ".tar.gz" ] [ "commit" "" ] src.url;
inherit (finalAttrs) version;
inherit (finalAttrs.src) rev;
url = builtins.replaceStrings [ "archive" ".tar.gz" ] [ "commit" "" ] finalAttrs.src.url;
})
];
buildInputs = [
flatty
jester
jsony
karax
markdown
nimcrypto
openssl
packedjson
redis
redpool
sass
supersnappy
zippy
];
nimBinOnly = true;
nimFlags = [ "--mm:refc" ];
postBuild = ''
nim c --hint[Processing]:off -r tools/gencss
nim c --hint[Processing]:off -r tools/rendermd
nim compile ${toString finalAttrs.nimFlags} -r tools/gencss
nim compile ${toString finalAttrs.nimFlags} -r tools/rendermd
'';
postInstall = ''
@ -82,4 +50,4 @@ buildNimPackage rec {
maintainers = with maintainers; [ erdnaxe infinidoge ];
mainProgram = "nitter";
};
}
})

View File

@ -11225,8 +11225,6 @@ with pkgs;
nifi = callPackage ../servers/web-apps/nifi { };
nitter = nim2Packages.callPackage ../servers/nitter { };
noip = callPackage ../tools/networking/noip { };
inherit (callPackage ../applications/networking/cluster/nomad { })

View File

@ -1,5 +1,7 @@
{ lib
, stdenv
, libsass
, openssl
, SDL2
}:
@ -8,6 +10,15 @@
# - finalAttrs: - final arguments to the depender package
# - prevAttrs: - preceding arguments to the depender package
{
jester = lockAttrs: finalAttrs:
{ buildInputs ? [ ], ... }: {
buildInputs = buildInputs ++ [ openssl ];
};
sass = lockAttrs: finalAttrs:
{ buildInputs ? [ ], ... }: {
buildInputs = buildInputs ++ [ libsass ];
};
sdl2 = lockAttrs: finalAttrs:
{ buildInputs ? [ ], ... }: {