Merge remote-tracking branch 'origin/master' into haskell-updates
This commit is contained in:
commit
e122507667
@ -109,6 +109,13 @@
|
||||
removed due to it being an outdated version.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The MoinMoin wiki engine
|
||||
(<literal>services.moinmoin</literal>) has been removed,
|
||||
because Python 2 is being retired from nixpkgs.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>wafHook</literal> hook now honors
|
||||
|
@ -43,6 +43,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- `services.kubernetes.addons.dashboard` was removed due to it being an outdated version.
|
||||
|
||||
- The MoinMoin wiki engine (`services.moinmoin`) has been removed, because Python 2 is being retired from nixpkgs.
|
||||
|
||||
- The `wafHook` hook now honors `NIX_BUILD_CORES` when `enableParallelBuilding` is not set explicitly. Packages can restore the old behaviour by setting `enableParallelBuilding=false`.
|
||||
|
||||
- `pkgs.claws-mail-gtk2`, representing Claws Mail's older release version three, was removed in order to get rid of Python 2.
|
||||
|
@ -1029,7 +1029,6 @@
|
||||
./services/web-apps/pgpkeyserver-lite.nix
|
||||
./services/web-apps/powerdns-admin.nix
|
||||
./services/web-apps/matomo.nix
|
||||
./services/web-apps/moinmoin.nix
|
||||
./services/web-apps/openwebrx.nix
|
||||
./services/web-apps/restya-board.nix
|
||||
./services/web-apps/sogo.nix
|
||||
|
@ -24,6 +24,7 @@ with lib;
|
||||
(mkRemovedOptionModule [ "services" "firefox" "syncserver" "user" ] "")
|
||||
(mkRemovedOptionModule [ "services" "firefox" "syncserver" "group" ] "")
|
||||
(mkRemovedOptionModule [ "services" "marathon" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "moinmoin" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "mesos" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "winstone" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "networking" "vpnc" ] "Use environment.etc.\"vpnc/service.conf\" instead.")
|
||||
|
@ -1,304 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.moinmoin;
|
||||
python = pkgs.python27;
|
||||
pkg = python.pkgs.moinmoin;
|
||||
dataDir = "/var/lib/moin";
|
||||
usingGunicorn = cfg.webServer == "nginx-gunicorn" || cfg.webServer == "gunicorn";
|
||||
usingNginx = cfg.webServer == "nginx-gunicorn";
|
||||
user = "moin";
|
||||
group = "moin";
|
||||
|
||||
uLit = s: ''u"${s}"'';
|
||||
indentLines = n: str: concatMapStrings (line: "${fixedWidthString n " " " "}${line}\n") (splitString "\n" str);
|
||||
|
||||
moinCliWrapper = wikiIdent: pkgs.writeShellScriptBin "moin-${wikiIdent}" ''
|
||||
${pkgs.su}/bin/su -s ${pkgs.runtimeShell} -c "${pkg}/bin/moin --config-dir=/var/lib/moin/${wikiIdent}/config $*" ${user}
|
||||
'';
|
||||
|
||||
wikiConfig = wikiIdent: w: ''
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from MoinMoin.config import multiconfig, url_prefix_static
|
||||
|
||||
class Config(multiconfig.DefaultConfig):
|
||||
${optionalString (w.webLocation != "/") ''
|
||||
url_prefix_static = '${w.webLocation}' + url_prefix_static
|
||||
''}
|
||||
|
||||
sitename = u'${w.siteName}'
|
||||
page_front_page = u'${w.frontPage}'
|
||||
|
||||
data_dir = '${dataDir}/${wikiIdent}/data'
|
||||
data_underlay_dir = '${dataDir}/${wikiIdent}/underlay'
|
||||
|
||||
language_default = u'${w.languageDefault}'
|
||||
${optionalString (w.superUsers != []) ''
|
||||
superuser = [${concatMapStringsSep ", " uLit w.superUsers}]
|
||||
''}
|
||||
|
||||
${indentLines 4 w.extraConfig}
|
||||
'';
|
||||
wikiConfigFile = name: wiki: pkgs.writeText "${name}.py" (wikiConfig name wiki);
|
||||
|
||||
in
|
||||
{
|
||||
options.services.moinmoin = with types; {
|
||||
enable = mkEnableOption "MoinMoin Wiki Engine";
|
||||
|
||||
webServer = mkOption {
|
||||
type = enum [ "nginx-gunicorn" "gunicorn" "none" ];
|
||||
default = "nginx-gunicorn";
|
||||
example = "none";
|
||||
description = ''
|
||||
Which web server to use to serve the wiki.
|
||||
Use <literal>none</literal> if you want to configure this yourself.
|
||||
'';
|
||||
};
|
||||
|
||||
gunicorn.workers = mkOption {
|
||||
type = ints.positive;
|
||||
default = 3;
|
||||
example = 10;
|
||||
description = ''
|
||||
The number of worker processes for handling requests.
|
||||
'';
|
||||
};
|
||||
|
||||
wikis = mkOption {
|
||||
type = attrsOf (submodule ({ name, ... }: {
|
||||
options = {
|
||||
siteName = mkOption {
|
||||
type = str;
|
||||
default = "Untitled Wiki";
|
||||
example = "ExampleWiki";
|
||||
description = ''
|
||||
Short description of your wiki site, displayed below the logo on each page, and
|
||||
used in RSS documents as the channel title.
|
||||
'';
|
||||
};
|
||||
|
||||
webHost = mkOption {
|
||||
type = str;
|
||||
description = "Host part of the wiki URL. If undefined, the name of the attribute set will be used.";
|
||||
example = "wiki.example.org";
|
||||
};
|
||||
|
||||
webLocation = mkOption {
|
||||
type = str;
|
||||
default = "/";
|
||||
example = "/moin";
|
||||
description = "Location part of the wiki URL.";
|
||||
};
|
||||
|
||||
frontPage = mkOption {
|
||||
type = str;
|
||||
default = "LanguageSetup";
|
||||
example = "FrontPage";
|
||||
description = ''
|
||||
Front page name. Set this to something like <literal>FrontPage</literal> once languages are
|
||||
configured.
|
||||
'';
|
||||
};
|
||||
|
||||
superUsers = mkOption {
|
||||
type = listOf str;
|
||||
default = [];
|
||||
example = [ "elvis" ];
|
||||
description = ''
|
||||
List of trusted user names with wiki system administration super powers.
|
||||
|
||||
Please note that accounts for these users need to be created using the <command>moin</command> command-line utility, e.g.:
|
||||
<command>moin-<replaceable>WIKINAME</replaceable> account create --name=<replaceable>NAME</replaceable> --email=<replaceable>EMAIL</replaceable> --password=<replaceable>PASSWORD</replaceable></command>.
|
||||
'';
|
||||
};
|
||||
|
||||
languageDefault = mkOption {
|
||||
type = str;
|
||||
default = "en";
|
||||
example = "de";
|
||||
description = "The ISO-639-1 name of the main wiki language. Languages that MoinMoin does not support are ignored.";
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = lines;
|
||||
default = "";
|
||||
example = ''
|
||||
show_hosts = True
|
||||
search_results_per_page = 100
|
||||
acl_rights_default = u"Known:read,write,delete,revert All:read"
|
||||
logo_string = u"<h2>\U0001f639</h2>"
|
||||
theme_default = u"modernized"
|
||||
|
||||
user_checkbox_defaults = {'show_page_trail': 0, 'edit_on_doubleclick': 0}
|
||||
navi_bar = [u'SomePage'] + multiconfig.DefaultConfig.navi_bar
|
||||
actions_excluded = multiconfig.DefaultConfig.actions_excluded + ['newaccount']
|
||||
|
||||
mail_smarthost = "mail.example.org"
|
||||
mail_from = u"Example.Org Wiki <wiki@example.org>"
|
||||
'';
|
||||
description = ''
|
||||
Additional configuration to be appended verbatim to this wiki's config.
|
||||
|
||||
See <link xlink:href='http://moinmo.in/HelpOnConfiguration' /> for documentation.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
config = {
|
||||
webHost = mkDefault name;
|
||||
};
|
||||
}));
|
||||
example = literalExpression ''
|
||||
{
|
||||
"mywiki" = {
|
||||
siteName = "Example Wiki";
|
||||
webHost = "wiki.example.org";
|
||||
superUsers = [ "admin" ];
|
||||
frontPage = "Index";
|
||||
extraConfig = "page_category_regex = ur'(?P<all>(Category|Kategorie)(?P<key>(?!Template)\S+))'"
|
||||
};
|
||||
}
|
||||
'';
|
||||
description = ''
|
||||
Configurations of the individual wikis. Attribute names must be valid Python
|
||||
identifiers of the form <literal>[A-Za-z_][A-Za-z0-9_]*</literal>.
|
||||
|
||||
For every attribute <replaceable>WIKINAME</replaceable>, a helper script
|
||||
moin-<replaceable>WIKINAME</replaceable> is created which runs the
|
||||
<command>moin</command> command under the <literal>moin</literal> user (to avoid
|
||||
file ownership issues) and with the right configuration directory passed to it.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
assertions = forEach (attrNames cfg.wikis) (wname:
|
||||
{ assertion = builtins.match "[A-Za-z_][A-Za-z0-9_]*" wname != null;
|
||||
message = "${wname} is not valid Python identifier";
|
||||
}
|
||||
);
|
||||
|
||||
users.users = {
|
||||
moin = {
|
||||
description = "MoinMoin wiki";
|
||||
home = dataDir;
|
||||
group = group;
|
||||
isSystemUser = true;
|
||||
};
|
||||
};
|
||||
|
||||
users.groups = {
|
||||
moin = {
|
||||
members = mkIf usingNginx [ config.services.nginx.user ];
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkg ] ++ map moinCliWrapper (attrNames cfg.wikis);
|
||||
|
||||
systemd.services = mkIf usingGunicorn
|
||||
(flip mapAttrs' cfg.wikis (wikiIdent: wiki:
|
||||
nameValuePair "moin-${wikiIdent}"
|
||||
{
|
||||
description = "MoinMoin wiki ${wikiIdent} - gunicorn process";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
restartIfChanged = true;
|
||||
restartTriggers = [ (wikiConfigFile wikiIdent wiki) ];
|
||||
|
||||
environment = let
|
||||
penv = python.buildEnv.override {
|
||||
# setuptools: https://github.com/benoitc/gunicorn/issues/1716
|
||||
extraLibs = [ python.pkgs.eventlet python.pkgs.setuptools pkg ];
|
||||
};
|
||||
in {
|
||||
PYTHONPATH = "${dataDir}/${wikiIdent}/config:${penv}/${python.sitePackages}";
|
||||
};
|
||||
|
||||
preStart = ''
|
||||
umask 0007
|
||||
rm -rf ${dataDir}/${wikiIdent}/underlay
|
||||
cp -r ${pkg}/share/moin/underlay ${dataDir}/${wikiIdent}/
|
||||
chmod -R u+w ${dataDir}/${wikiIdent}/underlay
|
||||
'';
|
||||
|
||||
startLimitIntervalSec = 30;
|
||||
|
||||
serviceConfig = {
|
||||
User = user;
|
||||
Group = group;
|
||||
WorkingDirectory = "${dataDir}/${wikiIdent}";
|
||||
ExecStart = ''${python.pkgs.gunicorn}/bin/gunicorn moin_wsgi \
|
||||
--name gunicorn-${wikiIdent} \
|
||||
--workers ${toString cfg.gunicorn.workers} \
|
||||
--worker-class eventlet \
|
||||
--bind unix:/run/moin/${wikiIdent}/gunicorn.sock
|
||||
'';
|
||||
|
||||
Restart = "on-failure";
|
||||
RestartSec = "2s";
|
||||
|
||||
StateDirectory = "moin/${wikiIdent}";
|
||||
StateDirectoryMode = "0750";
|
||||
RuntimeDirectory = "moin/${wikiIdent}";
|
||||
RuntimeDirectoryMode = "0750";
|
||||
|
||||
NoNewPrivileges = true;
|
||||
ProtectSystem = "strict";
|
||||
ProtectHome = true;
|
||||
PrivateTmp = true;
|
||||
PrivateDevices = true;
|
||||
PrivateNetwork = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectControlGroups = true;
|
||||
RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
|
||||
RestrictNamespaces = true;
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
RestrictRealtime = true;
|
||||
};
|
||||
}
|
||||
));
|
||||
|
||||
services.nginx = mkIf usingNginx {
|
||||
enable = true;
|
||||
virtualHosts = flip mapAttrs' cfg.wikis (name: w: nameValuePair w.webHost {
|
||||
forceSSL = mkDefault true;
|
||||
enableACME = mkDefault true;
|
||||
locations."${w.webLocation}" = {
|
||||
extraConfig = ''
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_set_header X-Forwarded-Server $host;
|
||||
|
||||
proxy_pass http://unix:/run/moin/${name}/gunicorn.sock;
|
||||
'';
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /run/moin 0750 ${user} ${group} - -"
|
||||
"d ${dataDir} 0550 ${user} ${group} - -"
|
||||
]
|
||||
++ (concatLists (flip mapAttrsToList cfg.wikis (wikiIdent: wiki: [
|
||||
"d ${dataDir}/${wikiIdent} 0750 ${user} ${group} - -"
|
||||
"d ${dataDir}/${wikiIdent}/config 0550 ${user} ${group} - -"
|
||||
"L+ ${dataDir}/${wikiIdent}/config/wikiconfig.py - - - - ${wikiConfigFile wikiIdent wiki}"
|
||||
# needed in order to pass module name to gunicorn
|
||||
"L+ ${dataDir}/${wikiIdent}/config/moin_wsgi.py - - - - ${pkg}/share/moin/server/moin.wsgi"
|
||||
# seed data files
|
||||
"C ${dataDir}/${wikiIdent}/data 0770 ${user} ${group} - ${pkg}/share/moin/data"
|
||||
# fix nix store permissions
|
||||
"Z ${dataDir}/${wikiIdent}/data 0770 ${user} ${group} - -"
|
||||
])));
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ mmilata ];
|
||||
}
|
@ -273,7 +273,6 @@ in
|
||||
misc = handleTest ./misc.nix {};
|
||||
mjolnir = handleTest ./matrix/mjolnir.nix {};
|
||||
mod_perl = handleTest ./mod_perl.nix {};
|
||||
moinmoin = handleTest ./moinmoin.nix {};
|
||||
mongodb = handleTest ./mongodb.nix {};
|
||||
moodle = handleTest ./moodle.nix {};
|
||||
morty = handleTest ./morty.nix {};
|
||||
|
@ -1,28 +0,0 @@
|
||||
import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
||||
name = "moinmoin";
|
||||
meta.maintainers = with lib.maintainers; [ mmilata ];
|
||||
|
||||
machine =
|
||||
{ ... }:
|
||||
{ services.moinmoin.enable = true;
|
||||
services.moinmoin.wikis.ExampleWiki.superUsers = [ "admin" ];
|
||||
services.moinmoin.wikis.ExampleWiki.webHost = "localhost";
|
||||
|
||||
services.nginx.virtualHosts.localhost.enableACME = false;
|
||||
services.nginx.virtualHosts.localhost.forceSSL = false;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
machine.wait_for_unit("moin-ExampleWiki.service")
|
||||
machine.wait_for_unit("nginx.service")
|
||||
machine.wait_for_file("/run/moin/ExampleWiki/gunicorn.sock")
|
||||
|
||||
assert "If you have just installed" in machine.succeed("curl -L http://localhost/")
|
||||
|
||||
assert "status success" in machine.succeed(
|
||||
"moin-ExampleWiki account create --name=admin --email=admin@example.com --password=foo 2>&1"
|
||||
)
|
||||
'';
|
||||
})
|
@ -25,7 +25,7 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "lollypop";
|
||||
version = "1.4.23";
|
||||
version = "1.4.26";
|
||||
|
||||
format = "other";
|
||||
doCheck = false;
|
||||
@ -34,7 +34,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
url = "https://gitlab.gnome.org/World/lollypop";
|
||||
rev = "refs/tags/${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-wwdH3gMpYt40VGqrL1XfB1dOfg45zLKtTEI23AwjCis=";
|
||||
sha256 = "sha256-Q/z9oET06DimMRZl03TgjEeheoVHtIkH+Z69qWZetcI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "batsignal";
|
||||
version = "1.3.1";
|
||||
version = "1.3.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "electrickite";
|
||||
repo = "batsignal";
|
||||
rev = version;
|
||||
sha256 = "sha256-ClwI3ZbkLul+l0zzzGxNjSOUTuVzIxtwUPNLOeFT2X0=";
|
||||
sha256 = "sha256-+5yAwBUyhqmoV8l8VwIQMxnSgjNZNbGfGajPhA+IFwA=";
|
||||
};
|
||||
|
||||
buildInputs = [ libnotify glib ];
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "free42";
|
||||
version = "3.0.7";
|
||||
version = "3.0.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "thomasokken";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-wGzZRp+7KBV/sxm08XCkCDx+A8nR9To5MCmcdWdlttM=";
|
||||
sha256 = "sha256-nZCuFumAyeUxRmmtd6/qvXk3LVZgbDhlsDygXMWDfp0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ copyDesktopItems pkg-config ];
|
||||
|
@ -8,14 +8,14 @@
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "vnote";
|
||||
version = "3.10.1";
|
||||
version = "3.11.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vnotex";
|
||||
repo = pname;
|
||||
fetchSubmodules = true;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-juLyKAq21qNCWTpyMJSMw86U/DMbw/QJCr8QwyqVclA=";
|
||||
sha256 = "sha256-JZqV+ZDYRWiuKLSctB2L2SGPmboLeL3HeecMoaNXY+4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ lib, fetchzip }:
|
||||
|
||||
let
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
in
|
||||
fetchzip {
|
||||
name = "victor-mono-${version}";
|
||||
@ -21,7 +21,7 @@ fetchzip {
|
||||
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype
|
||||
'';
|
||||
|
||||
sha256 = "1x3dnkq8awn5zniywap78qwp5nxmf14bq8snzsywk70ah0jmbawi";
|
||||
sha256 = "sha256-FHahUp/Ghjv6fwsjj1giVPlAIXRMSZCSLcVMiMHvV3A=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Free programming font with cursive italics and ligatures";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "v2ray-geoip";
|
||||
version = "202112160030";
|
||||
version = "202112300030";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "v2fly";
|
||||
repo = "geoip";
|
||||
rev = "4d86284b91a444c2ca989207f8f08a1c8798c95c";
|
||||
sha256 = "sha256-pv+oZVMROr7gyGcv60jIP8INt4vBAnUJT0FJNNn+Czc=";
|
||||
rev = "570a09062b1b6dbd3b8cb1785c0ce4a0ed3c50f4";
|
||||
sha256 = "sha256-YGKHruyVShFrMbE0eXzb2Qp3BMfM+4SLaK8pqR2sloM=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "flat-remix-gtk";
|
||||
version = "20211201";
|
||||
version = "20211223";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "daniruiz";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-JxvCdmExDh9t5UZKqF936SiT/PYxAJpGgY1Hgh8ykzw=";
|
||||
sha256 = "sha256-jGE5ud7wEEa4JI1QTaCrOnbDwjQtDOFJX2uMo7t7+Js=";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
|
57
pkgs/development/compilers/zig/0.8.1.nix
Normal file
57
pkgs/development/compilers/zig/0.8.1.nix
Normal file
@ -0,0 +1,57 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, llvmPackages
|
||||
, libxml2
|
||||
, zlib
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (llvmPackages) stdenv;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zig";
|
||||
version = "0.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ziglang";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-zMSOH8ZWcvzHRwOgGIbLO9Q6jf1P5QL5KCMD+frp+JA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
llvmPackages.llvm.dev
|
||||
];
|
||||
buildInputs = [
|
||||
libxml2
|
||||
zlib
|
||||
] ++ (with llvmPackages; [
|
||||
libclang
|
||||
lld
|
||||
llvm
|
||||
]);
|
||||
|
||||
preBuild = ''
|
||||
export HOME=$TMPDIR;
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
./zig test --cache-dir "$TMPDIR" -I $src/test $src/test/behavior.zig
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://ziglang.org/";
|
||||
description =
|
||||
"General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ andrewrk AndersonTorres ];
|
||||
platforms = platforms.unix;
|
||||
broken = stdenv.isDarwin; # See https://github.com/NixOS/nixpkgs/issues/86299
|
||||
};
|
||||
}
|
||||
|
@ -11,13 +11,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zig";
|
||||
version = "0.8.1";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ziglang";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-zMSOH8ZWcvzHRwOgGIbLO9Q6jf1P5QL5KCMD+frp+JA=";
|
||||
hash = "sha256-Hfl1KKtGcopMrn+U9r0/qr/wReWJIgb8+IgwMoguv/0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -54,4 +54,3 @@ stdenv.mkDerivation rec {
|
||||
broken = stdenv.isDarwin; # See https://github.com/NixOS/nixpkgs/issues/86299
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -3316,6 +3316,7 @@ broken-packages:
|
||||
- NaturalSort
|
||||
- naver-translate
|
||||
- nbt
|
||||
- ncurses
|
||||
- neat
|
||||
- needle
|
||||
- neet
|
||||
|
@ -2251,6 +2251,7 @@ dont-distribute-packages:
|
||||
- numhask-histogram
|
||||
- numhask-range
|
||||
- numhask-test
|
||||
- nyan
|
||||
- nymphaea
|
||||
- oath
|
||||
- obd
|
||||
@ -2687,6 +2688,7 @@ dont-distribute-packages:
|
||||
- scp-streams
|
||||
- scrabble-bot
|
||||
- scrapbook
|
||||
- scroll
|
||||
- sde-solver
|
||||
- seakale-postgresql
|
||||
- seakale-tests
|
||||
|
@ -192493,6 +192493,8 @@ self: {
|
||||
libraryToolDepends = [ c2hs ];
|
||||
description = "Modernised bindings to GNU ncurses";
|
||||
license = lib.licenses.gpl3Only;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
broken = true;
|
||||
}) {inherit (pkgs) ncurses;};
|
||||
|
||||
"ndjson-conduit" = callPackage
|
||||
@ -198262,6 +198264,7 @@ self: {
|
||||
executableHaskellDepends = [ base bytestring mtl ncurses text ];
|
||||
description = "Bored? Nyan cat!";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}) {};
|
||||
|
||||
"nylas" = callPackage
|
||||
@ -240432,6 +240435,7 @@ self: {
|
||||
];
|
||||
description = "scroll(6), a roguelike game";
|
||||
license = lib.licenses.gpl2Only;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}) {};
|
||||
|
||||
"scroll-list" = callPackage
|
||||
|
@ -7,14 +7,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "gruut-ipa";
|
||||
version = "0.11.0";
|
||||
version = "0.12.0";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rhasspy";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "08n79v60jhkz5vhychsicjz4bhz8v4gb2djmz5dfdaivyr0h3bsf";
|
||||
sha256 = "sha256-6pMdBKbp++/5321rc8A2euOSXZCHzHg+wmaEaMZ0egw=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -5,11 +5,15 @@
|
||||
, fetchFromGitHub
|
||||
, Babel
|
||||
, gruut-ipa
|
||||
, dateparser
|
||||
, jsonlines
|
||||
, num2words
|
||||
, python-crfsuite
|
||||
, dataclasses
|
||||
, python
|
||||
, networkx
|
||||
, glibcLocales
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
let
|
||||
@ -17,6 +21,7 @@ let
|
||||
"cs"
|
||||
"de"
|
||||
"es"
|
||||
"en"
|
||||
"fr"
|
||||
"it"
|
||||
"nl"
|
||||
@ -28,19 +33,21 @@ let
|
||||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "gruut";
|
||||
version = "1.2.3";
|
||||
version = "2.2.0";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rhasspy";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-qY4xsoVk1hyY9dYmVXaqDRjcShUQmp8VZOzAQNiC6EM=";
|
||||
sha256 = "sha256-9vj3x2IjTso8ksN1cqe5frwg0Y3GhOB6bPWvaBSBOf8=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace requirements.txt \
|
||||
--replace "Babel~=2.8.0" "Babel"
|
||||
--replace "Babel~=2.8.0" "Babel" \
|
||||
--replace "dateparser~=1.0.0" "dateparser" \
|
||||
--replace "gruut_lang_en~=2.0.0" "gruut_lang_en"
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@ -49,16 +56,28 @@ buildPythonPackage rec {
|
||||
jsonlines
|
||||
num2words
|
||||
python-crfsuite
|
||||
dateparser
|
||||
networkx
|
||||
] ++ lib.optionals (pythonOlder "3.7") [
|
||||
dataclasses
|
||||
] ++ (map (lang: callPackage ./language-pack.nix {
|
||||
inherit lang version format src;
|
||||
}) langPkgs);
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
${python.interpreter} -m unittest discover
|
||||
runHook postCheck
|
||||
checkInputs = [ glibcLocales pytestCheckHook ];
|
||||
|
||||
disabledTests = [
|
||||
# https://github.com/rhasspy/gruut/issues/25
|
||||
"test_lexicon_external"
|
||||
|
||||
# requires mishkal library
|
||||
"test_fa"
|
||||
"test_ar"
|
||||
"test_lb"
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export LC_ALL=en_US.utf-8
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [
|
||||
|
@ -1,35 +0,0 @@
|
||||
{ lib, buildPythonPackage, fetchurl, isPy3k
|
||||
, pytest, werkzeug, pygments
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "moinmoin";
|
||||
version = "1.9.11";
|
||||
|
||||
# SyntaxError in setup.py
|
||||
disabled = isPy3k;
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://static.moinmo.in/files/moin-${version}.tar.gz";
|
||||
sha256 = "sha256-Ar4x1V851P4MYlPfi0ngG3bQlWNMvRtW0YX2bh4MPPU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Recommended to install on their download page.
|
||||
./fix_tests.patch
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
sed -i "s/\xfc/ü/" setup.cfg
|
||||
'';
|
||||
|
||||
checkInputs = [ pytest werkzeug pygments ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Advanced, easy to use and extensible WikiEngine";
|
||||
|
||||
homepage = "https://moinmo.in/";
|
||||
|
||||
license = licenses.gpl2Plus;
|
||||
};
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
diff -ru3 moin-1.9.9-old/MoinMoin/conftest.py moin-1.9.9-new/MoinMoin/conftest.py
|
||||
--- moin-1.9.9-old/MoinMoin/conftest.py 2016-10-31 23:44:02.000000000 +0300
|
||||
+++ moin-1.9.9-new/MoinMoin/conftest.py 2018-02-18 12:13:19.551929093 +0300
|
||||
@@ -22,10 +22,11 @@
|
||||
|
||||
import atexit
|
||||
import sys
|
||||
+import os
|
||||
|
||||
import py
|
||||
|
||||
-rootdir = py.magic.autopath().dirpath()
|
||||
+rootdir = os.path.abspath(os.path.dirname(__file__))
|
||||
moindir = rootdir.join("..")
|
||||
sys.path.insert(0, str(moindir))
|
||||
|
@ -16,13 +16,13 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "stumpy";
|
||||
version = "1.10.0";
|
||||
version = "1.10.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TDAmeritrade";
|
||||
repo = "stumpy";
|
||||
rev = "v${version}";
|
||||
sha256 = "1h3mqz570s9rc45d217xrykcy8f4fnpyk178smam2fzynlr90gd8";
|
||||
sha256 = "1v17lxqgvkd3n33c2y1j1zy74xy92vsx2l89yhan89msnnb7aafr";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -1,5 +1,8 @@
|
||||
{ stdenv, lib, fetchFromGitHub
|
||||
, gettext, libpng, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, zlib
|
||||
|
||||
# updater only
|
||||
, nix-update-script
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -29,6 +32,12 @@ stdenv.mkDerivation rec {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script {
|
||||
attrPath = pname;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/ihhub/fheroes2";
|
||||
description = "Free implementation of Heroes of Might and Magic II game engine";
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib, stdenv, fetchFromGitHub, fetchzip
|
||||
, cmake, SDL2, SDL2_mixer
|
||||
, unrar-wrapper, makeWrapper
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
let
|
||||
@ -14,15 +15,24 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "SpaceCadetPinball";
|
||||
version = "unstable-2021-12-02";
|
||||
version = "2.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "k4zmu2a";
|
||||
repo = pname;
|
||||
rev = "de13d4e326b2dfa8e6dfb59815c0a8b9657f942d";
|
||||
sha256 = "sha256-/nk4kNsmL1z2rKgV1dh9gcVjp8xJwovhE6/u2aNl/fA=";
|
||||
rev = "Release_${version}";
|
||||
sha256 = "sha256-LmYplJr1Mg4yNg9eP02FXf9mL1FnzNBhpted3GpmlQ0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# remove when updating past 2.0.1
|
||||
(fetchpatch {
|
||||
name = "fix-install-directories";
|
||||
url = "https://github.com/k4zmu2a/SpaceCadetPinball/commit/d8ee1b9bfeee21d3981a40e735411393392bc1f6.patch";
|
||||
sha256 = "sha256-BtCDJ+a9AFaOM8nyId0eU9GN/gUQT2kFCO4RIVTzZlE=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
SDL2
|
||||
SDL2_mixer
|
||||
|
@ -1,7 +1,6 @@
|
||||
{ lib
|
||||
, python3
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
# USAGE:
|
||||
@ -16,18 +15,19 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "tts";
|
||||
version = "0.4.1";
|
||||
version = "0.4.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "coqui-ai";
|
||||
repo = "TTS";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-ZcQUgr+1XTmXoyf2WNsP8Hept42JTFmKXdo0kcU6QWU=";
|
||||
sha256 = "sha256-8a68iFbqqKwtZvufu1Vnv6hGHIQ3HU34wjuQsmr1NUA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i requirements.txt \
|
||||
-e 's!librosa==[^"]*!librosa!' \
|
||||
-e 's!gruut\[.*\]~=2.0.0!gruut!' \
|
||||
-e 's!mecab-python3==[^"]*!mecab-python3!' \
|
||||
-e 's!numba==[^"]*!numba!' \
|
||||
-e 's!numpy==[^"]*!numpy!' \
|
||||
@ -86,6 +86,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
"test_multiscale_stft_loss"
|
||||
# Requires network acccess to download models
|
||||
"test_synthesize"
|
||||
"test_run_all_models"
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
|
@ -9,16 +9,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "tealdeer";
|
||||
version = "1.4.1";
|
||||
version = "1.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dbrgn";
|
||||
repo = "tealdeer";
|
||||
rev = "v${version}";
|
||||
sha256 = "1f37qlw4nxdhlqlqzzb4j11gsv26abk2nk2qhbzj77kp4v2b125x";
|
||||
sha256 = "sha256-yF46jCdC4UDswKa/83ZrM9VkZXQqzua2/S7y2bqYa+c=";
|
||||
};
|
||||
|
||||
cargoSha256 = "1rjnparpcn8rnqy43xl4gg151p1a0zj9sna600hz01r41g1hgccq";
|
||||
cargoSha256 = "sha256-BIMaVeNSdKl2A9613S+wgmb6YmiF5YJU8pTMVQfjDwI=";
|
||||
|
||||
buildInputs = if stdenv.isDarwin then [ Security ] else [ openssl ];
|
||||
|
||||
|
@ -3614,7 +3614,9 @@ with pkgs;
|
||||
|
||||
reg = callPackage ../tools/virtualization/reg { };
|
||||
|
||||
river = callPackage ../applications/window-managers/river { };
|
||||
river = callPackage ../applications/window-managers/river {
|
||||
zig = zig_0_8_1;
|
||||
};
|
||||
|
||||
rmapi = callPackage ../applications/misc/remarkable/rmapi { };
|
||||
|
||||
@ -15709,7 +15711,9 @@ with pkgs;
|
||||
|
||||
ytt = callPackage ../development/tools/ytt {};
|
||||
|
||||
zls = callPackage ../development/tools/zls { };
|
||||
zls = callPackage ../development/tools/zls {
|
||||
zig = zig_0_8_1;
|
||||
};
|
||||
|
||||
zydis = callPackage ../development/libraries/zydis { };
|
||||
|
||||
@ -20505,6 +20509,9 @@ with pkgs;
|
||||
libzra = callPackage ../development/libraries/libzra { };
|
||||
|
||||
zig = callPackage ../development/compilers/zig {
|
||||
llvmPackages = llvmPackages_13;
|
||||
};
|
||||
zig_0_8_1 = callPackage ../development/compilers/zig/0.8.1.nix {
|
||||
llvmPackages = llvmPackages_12;
|
||||
};
|
||||
|
||||
|
@ -288,9 +288,6 @@ with self; with super; {
|
||||
|
||||
mock = callPackage ../development/python-modules/mock/2.nix { };
|
||||
|
||||
# Needed here because moinmoin is loaded as a Python library.
|
||||
moinmoin = callPackage ../development/python-modules/moinmoin { };
|
||||
|
||||
monosat = disabled super.monosat;
|
||||
|
||||
more-itertools = callPackage ../development/python-modules/more-itertools/2.7.nix { };
|
||||
|
Loading…
Reference in New Issue
Block a user