mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-10-03 05:20:00 +00:00
Merge staging-next into staging
This commit is contained in:
@@ -17018,6 +17018,12 @@
|
||||
fingerprint = "ADF4 C13D 0E36 1240 BD01 9B51 D1DE 6D7F 6936 63A5";
|
||||
}];
|
||||
};
|
||||
Silver-Golden = {
|
||||
name = "Brendan Golden";
|
||||
email = "github+nixpkgs@brendan.ie";
|
||||
github = "Silver-Golden";
|
||||
githubId = 7858375;
|
||||
};
|
||||
simarra = {
|
||||
name = "simarra";
|
||||
email = "loic.martel@protonmail.com";
|
||||
|
||||
@@ -7,8 +7,11 @@ set -eu -o pipefail
|
||||
# Stackage solver to use, LTS or Nightly
|
||||
# (should be capitalized like the display name)
|
||||
SOLVER=LTS
|
||||
# Stackage solver verson, if any. Use latest if empty
|
||||
VERSION=21
|
||||
TMP_TEMPLATE=update-stackage.XXXXXXX
|
||||
readonly SOLVER
|
||||
readonly VERSION
|
||||
readonly TMP_TEMPLATE
|
||||
|
||||
toLower() {
|
||||
@@ -23,7 +26,7 @@ stackage_config="pkgs/development/haskell-modules/configuration-hackage2nix/stac
|
||||
trap 'rm "${tmpfile}" "${tmpfile_new}"' 0
|
||||
touch "$tmpfile" "$tmpfile_new" # Creating files here so that trap creates no errors.
|
||||
|
||||
curl -L -s "https://stackage.org/$(toLower "$SOLVER")/cabal.config" >"$tmpfile"
|
||||
curl -L -s "https://stackage.org/$(toLower "$SOLVER")${VERSION:+-$VERSION}/cabal.config" >"$tmpfile"
|
||||
old_version=$(grep '^# Stackage' $stackage_config | sed -e 's/.\+ \([A-Za-z]\+ [0-9.-]\+\)$/\1/g')
|
||||
version="$SOLVER $(sed -rn "s/^--.*http:..(www.)?stackage.org.snapshot.$(toLower "$SOLVER")-//p" "$tmpfile")"
|
||||
|
||||
|
||||
@@ -97,6 +97,9 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||
|
||||
- `systemd.oomd.enableUserServices` is renamed to `systemd.oomd.enableUserSlices`.
|
||||
|
||||
- `security.pam.enableSSHAgentAuth` now requires `services.openssh.authorizedKeysFiles` to be non-empty,
|
||||
which is the case when `services.openssh.enable` is true. Previously, `pam_ssh_agent_auth` silently failed to work.
|
||||
|
||||
## Other Notable Changes {#sec-release-24.05-notable-changes}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
@@ -497,6 +497,7 @@
|
||||
./services/development/jupyterhub/default.nix
|
||||
./services/development/livebook.nix
|
||||
./services/development/lorri.nix
|
||||
./services/development/nixseparatedebuginfod.nix
|
||||
./services/development/rstudio-server/default.nix
|
||||
./services/development/zammad.nix
|
||||
./services/display-managers/greetd.nix
|
||||
@@ -1175,6 +1176,7 @@
|
||||
./services/search/typesense.nix
|
||||
./services/security/aesmd.nix
|
||||
./services/security/authelia.nix
|
||||
./services/security/bitwarden-directory-connector-cli.nix
|
||||
./services/security/certmgr.nix
|
||||
./services/security/cfssl.nix
|
||||
./services/security/clamav.nix
|
||||
|
||||
@@ -284,6 +284,7 @@ in
|
||||
|
||||
# Preferences are converted into a policy
|
||||
programs.firefox.policies = {
|
||||
DisableAppUpdate = true;
|
||||
Preferences = (mapAttrs
|
||||
(_: value: { Value = value; Status = cfg.preferencesStatus; })
|
||||
cfg.preferences);
|
||||
|
||||
@@ -1456,6 +1456,13 @@ in
|
||||
`security.pam.zfs.enable` requires enabling ZFS (`boot.zfs.enabled` or `boot.zfs.enableUnstable`).
|
||||
'';
|
||||
}
|
||||
{
|
||||
assertion = config.security.pam.enableSSHAgentAuth -> config.services.openssh.authorizedKeysFiles != [];
|
||||
message = ''
|
||||
`security.pam.enableSSHAgentAuth` requires `services.openssh.authorizedKeysFiles` to be a non-empty list.
|
||||
Did you forget to set `services.openssh.enable` ?
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
environment.systemPackages =
|
||||
|
||||
105
nixos/modules/services/development/nixseparatedebuginfod.nix
Normal file
105
nixos/modules/services/development/nixseparatedebuginfod.nix
Normal file
@@ -0,0 +1,105 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
cfg = config.services.nixseparatedebuginfod;
|
||||
url = "127.0.0.1:${toString cfg.port}";
|
||||
in
|
||||
{
|
||||
options = {
|
||||
services.nixseparatedebuginfod = {
|
||||
enable = lib.mkEnableOption "separatedebuginfod, a debuginfod server providing source and debuginfo for nix packages";
|
||||
port = lib.mkOption {
|
||||
description = "port to listen";
|
||||
default = 1949;
|
||||
type = lib.types.port;
|
||||
};
|
||||
nixPackage = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.nix;
|
||||
defaultText = lib.literalExpression "pkgs.nix";
|
||||
description = ''
|
||||
The version of nix that nixseparatedebuginfod should use as client for the nix daemon. It is strongly advised to use nix version >= 2.18, otherwise some debug info may go missing.
|
||||
'';
|
||||
};
|
||||
allowOldNix = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Do not fail evaluation when {option}`services.nixseparatedebuginfod.nixPackage` is older than nix 2.18.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
assertions = [ {
|
||||
assertion = cfg.allowOldNix || (lib.versionAtLeast cfg.nixPackage.version "2.18");
|
||||
message = "nixseparatedebuginfod works better when `services.nixseparatedebuginfod.nixPackage` is set to nix >= 2.18 (instead of ${cfg.nixPackage.name}). Set `services.nixseparatedebuginfod.allowOldNix` to bypass.";
|
||||
} ];
|
||||
|
||||
systemd.services.nixseparatedebuginfod = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "nix-daemon.service" ];
|
||||
after = [ "nix-daemon.service" ];
|
||||
path = [ cfg.nixPackage ];
|
||||
serviceConfig = {
|
||||
ExecStart = [ "${pkgs.nixseparatedebuginfod}/bin/nixseparatedebuginfod -l ${url}" ];
|
||||
Restart = "on-failure";
|
||||
CacheDirectory = "nixseparatedebuginfod";
|
||||
# nix does not like DynamicUsers in allowed-users
|
||||
User = "nixseparatedebuginfod";
|
||||
Group = "nixseparatedebuginfod";
|
||||
|
||||
# hardening
|
||||
# Filesystem stuff
|
||||
ProtectSystem = "strict"; # Prevent writing to most of /
|
||||
ProtectHome = true; # Prevent accessing /home and /root
|
||||
PrivateTmp = true; # Give an own directory under /tmp
|
||||
PrivateDevices = true; # Deny access to most of /dev
|
||||
ProtectKernelTunables = true; # Protect some parts of /sys
|
||||
ProtectControlGroups = true; # Remount cgroups read-only
|
||||
RestrictSUIDSGID = true; # Prevent creating SETUID/SETGID files
|
||||
PrivateMounts = true; # Give an own mount namespace
|
||||
RemoveIPC = true;
|
||||
UMask = "0077";
|
||||
|
||||
# Capabilities
|
||||
CapabilityBoundingSet = ""; # Allow no capabilities at all
|
||||
NoNewPrivileges = true; # Disallow getting more capabilities. This is also implied by other options.
|
||||
|
||||
# Kernel stuff
|
||||
ProtectKernelModules = true; # Prevent loading of kernel modules
|
||||
SystemCallArchitectures = "native"; # Usually no need to disable this
|
||||
ProtectKernelLogs = true; # Prevent access to kernel logs
|
||||
ProtectClock = true; # Prevent setting the RTC
|
||||
|
||||
# Networking
|
||||
RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6";
|
||||
|
||||
# Misc
|
||||
LockPersonality = true; # Prevent change of the personality
|
||||
ProtectHostname = true; # Give an own UTS namespace
|
||||
RestrictRealtime = true; # Prevent switching to RT scheduling
|
||||
MemoryDenyWriteExecute = true; # Maybe disable this for interpreters like python
|
||||
RestrictNamespaces = true;
|
||||
};
|
||||
};
|
||||
|
||||
users.users.nixseparatedebuginfod = {
|
||||
isSystemUser = true;
|
||||
group = "nixseparatedebuginfod";
|
||||
};
|
||||
|
||||
users.groups.nixseparatedebuginfod = { };
|
||||
|
||||
nix.settings.extra-allowed-users = [ "nixseparatedebuginfod" ];
|
||||
|
||||
environment.variables.DEBUGINFOD_URLS = "http://${url}";
|
||||
|
||||
environment.systemPackages = [
|
||||
# valgrind support requires debuginfod-find on PATH
|
||||
(lib.getBin pkgs.elfutils)
|
||||
];
|
||||
|
||||
environment.etc."gdb/gdbinit.d/nixseparatedebuginfod.gdb".text = "set debuginfod enabled on";
|
||||
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,323 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.services.bitwarden-directory-connector-cli;
|
||||
in {
|
||||
options.services.bitwarden-directory-connector-cli = {
|
||||
enable = mkEnableOption "Bitwarden Directory Connector";
|
||||
|
||||
package = mkPackageOption pkgs "bitwarden-directory-connector-cli" {};
|
||||
|
||||
domain = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "The domain the Bitwarden/Vaultwarden is accessible on.";
|
||||
example = "https://vaultwarden.example.com";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "User to run the program.";
|
||||
default = "bwdc";
|
||||
};
|
||||
|
||||
interval = mkOption {
|
||||
type = types.str;
|
||||
default = "*:0,15,30,45";
|
||||
description = lib.mdDoc "The interval when to run the connector. This uses systemd's OnCalendar syntax.";
|
||||
};
|
||||
|
||||
ldap = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Options to configure the LDAP connection.
|
||||
If you used the desktop application to test the configuration you can find the settings by searching for `ldap` in `~/.config/Bitwarden\ Directory\ Connector/data.json`.
|
||||
'';
|
||||
default = {};
|
||||
type = types.submodule ({
|
||||
config,
|
||||
options,
|
||||
...
|
||||
}: {
|
||||
freeformType = types.attrsOf (pkgs.formats.json {}).type;
|
||||
|
||||
config.finalJSON = builtins.toJSON (removeAttrs config (filter (x: x == "finalJSON" || ! options.${x}.isDefined or false) (attrNames options)));
|
||||
|
||||
options = {
|
||||
finalJSON = mkOption {
|
||||
type = (pkgs.formats.json {}).type;
|
||||
internal = true;
|
||||
readOnly = true;
|
||||
visible = false;
|
||||
};
|
||||
|
||||
ssl = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Whether to use TLS.";
|
||||
};
|
||||
startTls = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Whether to use STARTTLS.";
|
||||
};
|
||||
|
||||
hostname = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "The host the LDAP is accessible on.";
|
||||
example = "ldap.example.com";
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
default = 389;
|
||||
description = lib.mdDoc "Port LDAP is accessible on.";
|
||||
};
|
||||
|
||||
ad = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Whether the LDAP Server is an Active Directory.";
|
||||
};
|
||||
|
||||
pagedSearch = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Whether the LDAP server paginates search results.";
|
||||
};
|
||||
|
||||
rootPath = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Root path for LDAP.";
|
||||
example = "dc=example,dc=com";
|
||||
};
|
||||
|
||||
username = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "The user to authenticate as.";
|
||||
example = "cn=admin,dc=example,dc=com";
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
sync = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Options to configure what gets synced.
|
||||
If you used the desktop application to test the configuration you can find the settings by searching for `sync` in `~/.config/Bitwarden\ Directory\ Connector/data.json`.
|
||||
'';
|
||||
default = {};
|
||||
type = types.submodule ({
|
||||
config,
|
||||
options,
|
||||
...
|
||||
}: {
|
||||
freeformType = types.attrsOf (pkgs.formats.json {}).type;
|
||||
|
||||
config.finalJSON = builtins.toJSON (removeAttrs config (filter (x: x == "finalJSON" || ! options.${x}.isDefined or false) (attrNames options)));
|
||||
|
||||
options = {
|
||||
finalJSON = mkOption {
|
||||
type = (pkgs.formats.json {}).type;
|
||||
internal = true;
|
||||
readOnly = true;
|
||||
visible = false;
|
||||
};
|
||||
|
||||
removeDisabled = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = lib.mdDoc "Remove users from bitwarden groups if no longer in the ldap group.";
|
||||
};
|
||||
|
||||
overwriteExisting = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description =
|
||||
lib.mdDoc "Remove and re-add users/groups, See https://bitwarden.com/help/user-group-filters/#overwriting-syncs for more details.";
|
||||
};
|
||||
|
||||
largeImport = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Enable if you are syncing more than 2000 users/groups.";
|
||||
};
|
||||
|
||||
memberAttribute = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Attribute that lists members in a LDAP group.";
|
||||
example = "uniqueMember";
|
||||
};
|
||||
|
||||
creationDateAttribute = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Attribute that lists a user's creation date.";
|
||||
example = "whenCreated";
|
||||
};
|
||||
|
||||
useEmailPrefixSuffix = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "If a user has no email address, combine a username prefix with a suffix value to form an email.";
|
||||
};
|
||||
emailPrefixAttribute = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "The attribute that contains the users username.";
|
||||
example = "accountName";
|
||||
};
|
||||
emailSuffix = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Suffix for the email, normally @example.com.";
|
||||
example = "@example.com";
|
||||
};
|
||||
|
||||
users = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Sync users.";
|
||||
};
|
||||
userPath = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "User directory, relative to root.";
|
||||
default = "ou=users";
|
||||
};
|
||||
userObjectClass = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Class that users must have.";
|
||||
default = "inetOrgPerson";
|
||||
};
|
||||
userEmailAttribute = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Attribute for a users email.";
|
||||
default = "mail";
|
||||
};
|
||||
userFilter = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "LDAP filter for users.";
|
||||
example = "(memberOf=cn=sales,ou=groups,dc=example,dc=com)";
|
||||
default = "";
|
||||
};
|
||||
|
||||
groups = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc "Whether to sync ldap groups into BitWarden.";
|
||||
};
|
||||
groupPath = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Group directory, relative to root.";
|
||||
default = "ou=groups";
|
||||
};
|
||||
groupObjectClass = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "A class that groups will have.";
|
||||
default = "groupOfNames";
|
||||
};
|
||||
groupNameAttribute = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "Attribute for a name of group.";
|
||||
default = "cn";
|
||||
};
|
||||
groupFilter = mkOption {
|
||||
type = types.str;
|
||||
description = lib.mdDoc "LDAP filter for groups.";
|
||||
example = "(cn=sales)";
|
||||
default = "";
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
secrets = {
|
||||
ldap = mkOption {
|
||||
type = types.str;
|
||||
description = "Path to file that contains LDAP password for user in {option}`ldap.username";
|
||||
};
|
||||
|
||||
bitwarden = {
|
||||
client_path_id = mkOption {
|
||||
type = types.str;
|
||||
description = "Path to file that contains Client ID.";
|
||||
};
|
||||
client_path_secret = mkOption {
|
||||
type = types.str;
|
||||
description = "Path to file that contains Client Secret.";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
users.groups."${cfg.user}" = {};
|
||||
users.users."${cfg.user}" = {
|
||||
isSystemUser = true;
|
||||
group = cfg.user;
|
||||
};
|
||||
|
||||
systemd = {
|
||||
timers.bitwarden-directory-connector-cli = {
|
||||
description = "Sync timer for Bitwarden Directory Connector";
|
||||
wantedBy = ["timers.target"];
|
||||
after = ["network-online.target"];
|
||||
timerConfig = {
|
||||
OnCalendar = cfg.interval;
|
||||
Unit = "bitwarden-directory-connector-cli.service";
|
||||
Persistent = true;
|
||||
};
|
||||
};
|
||||
|
||||
services.bitwarden-directory-connector-cli = {
|
||||
description = "Main process for Bitwarden Directory Connector";
|
||||
path = [pkgs.jq];
|
||||
|
||||
environment = {
|
||||
BITWARDENCLI_CONNECTOR_APPDATA_DIR = "/tmp";
|
||||
BITWARDENCLI_CONNECTOR_PLAINTEXT_SECRETS = "true";
|
||||
};
|
||||
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = "${cfg.user}";
|
||||
PrivateTmp = true;
|
||||
preStart = ''
|
||||
set -eo pipefail
|
||||
|
||||
# create the config file
|
||||
${lib.getExe cfg.package} data-file
|
||||
touch /tmp/data.json.tmp
|
||||
chmod 600 /tmp/data.json{,.tmp}
|
||||
|
||||
${lib.getExe cfg.package} config server ${cfg.domain}
|
||||
|
||||
# now login to set credentials
|
||||
export BW_CLIENTID="$(< ${escapeShellArg cfg.secrets.bitwarden.client_path_id})"
|
||||
export BW_CLIENTSECRET="$(< ${escapeShellArg cfg.secrets.bitwarden.client_path_secret})"
|
||||
${lib.getExe cfg.package} login
|
||||
|
||||
jq '.authenticatedAccounts[0] as $account
|
||||
| .[$account].directoryConfigurations.ldap |= $ldap_data
|
||||
| .[$account].directorySettings.organizationId |= $orgID
|
||||
| .[$account].directorySettings.sync |= $sync_data' \
|
||||
--argjson ldap_data ${escapeShellArg cfg.ldap.finalJSON} \
|
||||
--arg orgID "''${BW_CLIENTID//organization.}" \
|
||||
--argjson sync_data ${escapeShellArg cfg.sync.finalJSON} \
|
||||
/tmp/data.json \
|
||||
> /tmp/data.json.tmp
|
||||
|
||||
mv -f /tmp/data.json.tmp /tmp/data.json
|
||||
|
||||
# final config
|
||||
${lib.getExe cfg.package} config directory 0
|
||||
${lib.getExe cfg.package} config ldap.password --secretfile ${cfg.secrets.ldap}
|
||||
'';
|
||||
|
||||
ExecStart = "${lib.getExe cfg.package} sync";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with maintainers; [Silver-Golden];
|
||||
}
|
||||
@@ -605,6 +605,7 @@ in {
|
||||
nixos-rebuild-install-bootloader = handleTestOn ["x86_64-linux"] ./nixos-rebuild-install-bootloader.nix {};
|
||||
nixos-rebuild-specialisations = handleTestOn ["x86_64-linux"] ./nixos-rebuild-specialisations.nix {};
|
||||
nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; };
|
||||
nixseparatedebuginfod = handleTest ./nixseparatedebuginfod.nix {};
|
||||
node-red = handleTest ./node-red.nix {};
|
||||
nomad = handleTest ./nomad.nix {};
|
||||
non-default-filesystems = handleTest ./non-default-filesystems.nix {};
|
||||
|
||||
80
nixos/tests/nixseparatedebuginfod.nix
Normal file
80
nixos/tests/nixseparatedebuginfod.nix
Normal file
@@ -0,0 +1,80 @@
|
||||
import ./make-test-python.nix ({ pkgs, lib, ... }:
|
||||
let
|
||||
secret-key = "key-name:/COlMSRbehSh6YSruJWjL+R0JXQUKuPEn96fIb+pLokEJUjcK/2Gv8Ai96D7JGay5gDeUTx5wdpPgNvum9YtwA==";
|
||||
public-key = "key-name:BCVI3Cv9hr/AIveg+yRmsuYA3lE8ecHaT4Db7pvWLcA=";
|
||||
in
|
||||
{
|
||||
name = "nixseparatedebuginfod";
|
||||
/* A binary cache with debug info and source for nix */
|
||||
nodes.cache = { pkgs, ... }: {
|
||||
services.nix-serve = {
|
||||
enable = true;
|
||||
secretKeyFile = builtins.toFile "secret-key" secret-key;
|
||||
openFirewall = true;
|
||||
};
|
||||
system.extraDependencies = [
|
||||
pkgs.nix.debug
|
||||
pkgs.nix.src
|
||||
pkgs.sl
|
||||
];
|
||||
};
|
||||
/* the machine where we need the debuginfo */
|
||||
nodes.machine = {
|
||||
imports = [
|
||||
../modules/installer/cd-dvd/channel.nix
|
||||
];
|
||||
services.nixseparatedebuginfod.enable = true;
|
||||
nix.settings = {
|
||||
substituters = lib.mkForce [ "http://cache:5000" ];
|
||||
trusted-public-keys = [ public-key ];
|
||||
};
|
||||
environment.systemPackages = [
|
||||
pkgs.valgrind
|
||||
pkgs.gdb
|
||||
(pkgs.writeShellScriptBin "wait_for_indexation" ''
|
||||
set -x
|
||||
while debuginfod-find debuginfo /run/current-system/sw/bin/nix |& grep 'File too large'; do
|
||||
sleep 1;
|
||||
done
|
||||
'')
|
||||
];
|
||||
};
|
||||
testScript = ''
|
||||
start_all()
|
||||
cache.wait_for_unit("nix-serve.service")
|
||||
cache.wait_for_open_port(5000)
|
||||
machine.wait_for_unit("nixseparatedebuginfod.service")
|
||||
machine.wait_for_open_port(1949)
|
||||
|
||||
with subtest("show the config to debug the test"):
|
||||
machine.succeed("nix --extra-experimental-features nix-command show-config |& logger")
|
||||
machine.succeed("cat /etc/nix/nix.conf |& logger")
|
||||
with subtest("check that the binary cache works"):
|
||||
machine.succeed("nix-store -r ${pkgs.sl}")
|
||||
|
||||
# nixseparatedebuginfod needs .drv to associate executable -> source
|
||||
# on regular systems this would be provided by nixos-rebuild
|
||||
machine.succeed("nix-instantiate '<nixpkgs>' -A nix")
|
||||
|
||||
machine.succeed("timeout 600 wait_for_indexation")
|
||||
|
||||
# test debuginfod-find
|
||||
machine.succeed("debuginfod-find debuginfo /run/current-system/sw/bin/nix")
|
||||
|
||||
# test that gdb can fetch source
|
||||
out = machine.succeed("gdb /run/current-system/sw/bin/nix --batch -x ${builtins.toFile "commands" ''
|
||||
start
|
||||
l
|
||||
''}")
|
||||
print(out)
|
||||
assert 'int main(' in out
|
||||
|
||||
# test that valgrind can display location information
|
||||
# this relies on the fact that valgrind complains about nix
|
||||
# libgc helps in this regard, and we also ask valgrind to show leak kinds
|
||||
# which are usually false positives.
|
||||
out = machine.succeed("valgrind --leak-check=full --show-leak-kinds=all nix-env --version 2>&1")
|
||||
print(out)
|
||||
assert 'main.cc' in out
|
||||
'';
|
||||
})
|
||||
@@ -18,6 +18,7 @@ in {
|
||||
testScript = ''
|
||||
machine.wait_for_unit("typesense.service")
|
||||
machine.wait_for_open_port(${toString testPort})
|
||||
assert machine.succeed("curl --fail http://localhost:${toString testPort}/health") == '{"ok":true}'
|
||||
# After waiting for the port, typesense still hasn't initialized the database, so wait until we can connect successfully
|
||||
assert machine.wait_until_succeeds("curl --fail http://localhost:${toString testPort}/health") == '{"ok":true}'
|
||||
'';
|
||||
})
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
, stdenv
|
||||
, fetchgit
|
||||
, fetchzip
|
||||
, fetchpatch
|
||||
, alsa-lib
|
||||
, aubio
|
||||
, boost
|
||||
@@ -79,6 +80,12 @@ stdenv.mkDerivation rec {
|
||||
# AS=as in the environment causes build failure https://tracker.ardour.org/view.php?id=8096
|
||||
./as-flags.patch
|
||||
./default-plugin-search-paths.patch
|
||||
|
||||
# Fix build with libxml2 2.12.
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Ardour/ardour/commit/e995daa37529715214c6c4a2587e4134aaaba02f.patch";
|
||||
hash = "sha256-EpXOIIObOwwcNgNma0E3nvaBad3930sagDjBpa+78WI=";
|
||||
})
|
||||
];
|
||||
|
||||
# Ardour's wscript requires git revision and date to be available.
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# Manually packaged until it is upstreamed to melpa
|
||||
# See https://github.com/devonsparks/wat-mode/issues/1
|
||||
{ lib, trivialBuild, fetchFromGitHub, fetchpatch, emacs }:
|
||||
{ lib, melpaBuild, fetchFromGitHub, writeText }:
|
||||
|
||||
trivialBuild rec {
|
||||
melpaBuild rec {
|
||||
pname = "wat-mode";
|
||||
version = "unstable-2022-07-13";
|
||||
version = "20220713.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "devonsparks";
|
||||
@@ -13,11 +13,16 @@ trivialBuild rec {
|
||||
hash = "sha256-jV5V3TRY+D3cPSz3yFwVWn9yInhGOYIaUTPEhsOBxto=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
commit = "46b4df83e92c585295d659d049560dbf190fe501";
|
||||
|
||||
recipe = writeText "recipe" ''
|
||||
(wat-mode :repo "devonsparks/wat-mode" :fetcher github)
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/devonsparks/wat-mode";
|
||||
description = "An Emacs major mode for WebAssembly's text format";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ nagy ];
|
||||
inherit (emacs.meta) platforms;
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ nagy ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -15,13 +15,13 @@ let
|
||||
in {
|
||||
nightly = qt6Packages.callPackage ./generic.nix rec {
|
||||
pname = "citra-nightly";
|
||||
version = "2043";
|
||||
version = "2070";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citra-emu";
|
||||
repo = "citra-nightly";
|
||||
rev = "nightly-${version}";
|
||||
sha256 = "sha256-26M3uzqp4rUMOhr619UooupZT11B03IJfamUPNkceQk=";
|
||||
sha256 = "1rmc7dk7wzmxgkq7xsmx9wscszhcfr3mkvnykwgamrcb9bm8p5rb";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@@ -30,13 +30,13 @@ in {
|
||||
|
||||
canary = qt6Packages.callPackage ./generic.nix rec {
|
||||
pname = "citra-canary";
|
||||
version = "2695";
|
||||
version = "2740";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citra-emu";
|
||||
repo = "citra-canary";
|
||||
rev = "canary-${version}";
|
||||
sha256 = "sha256-090er4aUGze8bk3DIFZoa+/6EcJhr4bim3nWgZHs1mo=";
|
||||
sha256 = "0m11xy0ad9sy7zsnwnb7vad3g0g78v747a1abp612ybg0aczwf9l";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
, enet
|
||||
, ffmpeg
|
||||
, fmt
|
||||
, gamemode
|
||||
, glslang
|
||||
, httplib
|
||||
, inih
|
||||
@@ -108,6 +109,9 @@ stdenv.mkDerivation {
|
||||
|
||||
# Add versions
|
||||
echo 'set(BUILD_FULLNAME "${branchCaptialized} ${version}")' >> CMakeModules/GenerateBuildInfo.cmake
|
||||
|
||||
# Add gamemode
|
||||
substituteInPlace externals/gamemode/include/gamemode_client.h --replace "libgamemode.so.0" "${lib.getLib gamemode}/lib/libgamemode.so.0"
|
||||
'';
|
||||
|
||||
postInstall = let
|
||||
@@ -124,7 +128,7 @@ stdenv.mkDerivation {
|
||||
meta = with lib; {
|
||||
broken = (stdenv.isLinux && stdenv.isAarch64);
|
||||
homepage = "https://citra-emu.org";
|
||||
description = "The ${branch} branch of an open-source emulator for the Ninteno 3DS";
|
||||
description = "The ${branch} branch of an open-source emulator for the Nintendo 3DS";
|
||||
longDescription = ''
|
||||
A Nintendo 3DS Emulator written in C++
|
||||
Using the nightly branch is recommended for general usage.
|
||||
|
||||
@@ -18,11 +18,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "snapshot";
|
||||
version = "45.1";
|
||||
version = "45.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/snapshot/${lib.versions.major finalAttrs.version}/snapshot-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-/kRifa7zrZbBaaLlRhDmZxj4k9cN/SXUDTBskYQ7zjk=";
|
||||
hash = "sha256-iQd4F/xzXMjonbUWKPUuqKxmwZTfxqekLgA8TCnE3T4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -65,7 +65,7 @@ python3.pkgs.buildPythonApplication {
|
||||
matplotlib
|
||||
pbkdf2
|
||||
protobuf
|
||||
py_scrypt
|
||||
py-scrypt
|
||||
pysocks
|
||||
qrcode
|
||||
requests
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gimoji";
|
||||
version = "0.7.2";
|
||||
version = "0.7.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zeenix";
|
||||
repo = "gimoji";
|
||||
rev = version;
|
||||
hash = "sha256-PF7vjbmoNSBD9C6JOB1s5NHnBEkv1LD/3RZAB0/HFPc=";
|
||||
hash = "sha256-xQ02jmPuu1IHkQCCJn2FVPcJRbwN+k8FhsZyDX0oHaw=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-iJblgcwn9uCl2X0AjG+dlAwdwwyZ321LRBFjDCZOr/A=";
|
||||
cargoHash = "sha256-DSLIH6swVQXHrqKBxlrhNTG5maRmUi6Ndmuuv0Vo3Ak=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.AppKit
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
let
|
||||
pname = "joplin-desktop";
|
||||
version = "2.13.12";
|
||||
version = "2.13.13";
|
||||
|
||||
inherit (stdenv.hostPlatform) system;
|
||||
throwSystem = throw "Unsupported system: ${system}";
|
||||
@@ -16,9 +16,9 @@ let
|
||||
src = fetchurl {
|
||||
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}${suffix}";
|
||||
sha256 = {
|
||||
x86_64-linux = "sha256-h+aprE7D2bZcKgBoOKwPGgiM2Yo05c3TZaR1elOsp70=";
|
||||
x86_64-darwin = "sha256-4VHipPJ3Tkf7NSy7sytk793ApOQm7cRsl5DNO0xjpIw=";
|
||||
aarch64-darwin = "sha256-LW7myTExWblFDke/o/E7tNBRBrkyNkOvnHiztIT7x3Q=";
|
||||
x86_64-linux = "sha256-Cc9NhYrYimj1NjbwnEueQzqC6yCAZi0YUtmJRorarCk=";
|
||||
x86_64-darwin = "sha256-tUdTcr5CkGqEdTuGwZvBmwMW3oCCXwdWnaXjjATHjQg=";
|
||||
aarch64-darwin = "sha256-Xh54WrLbHcbGMkz9ZN07ZuSwelHdj97sH1eQb0cgAQg=";
|
||||
}.${system} or throwSystem;
|
||||
};
|
||||
|
||||
|
||||
@@ -9,16 +9,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "kbt";
|
||||
version = "2.0.6";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bloznelis";
|
||||
repo = "kbt";
|
||||
rev = version;
|
||||
hash = "sha256-G5/Sb/suTUkpR6OGlOawLVGLTthcrp78Y+5mxlndfA4=";
|
||||
hash = "sha256-ROCZDa5eyGF9yE+zdZ4snzdz8+jk+H6ZnqsnCe8JtJw=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-7P93mttZ9W76lpGPKN33cgr4nEaHRlDQWov+TUbDHkM=";
|
||||
cargoHash = "sha256-6zD9WRPWEt0ubppaMRTOusy0zm3z6SGB/5/kMxcJ/Ag=";
|
||||
|
||||
nativeBuildInputs = lib.optionals stdenv.isLinux [
|
||||
pkg-config
|
||||
|
||||
@@ -34,13 +34,13 @@
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "orca";
|
||||
version = "45.1";
|
||||
version = "45.2";
|
||||
|
||||
format = "other";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "v8wGv0vEe70CwVaNHkZL8Wox5iv3A7SaoTsI2zihqMo=";
|
||||
sha256 = "8PLFeaW+7f5WU7x/4kSBxNaqxd0fccHnoghZXzx473Y=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubedb-cli";
|
||||
version = "0.40.0";
|
||||
version = "0.40.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubedb";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-gMSaJM1qDUUHucVMEiN7VyEm2jWDYBPujy3cQ8SRtHk=";
|
||||
sha256 = "sha256-GGZjqXw0Fi5QdQjVrw//sDVA8oRKADCwHeRY22z7bko=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
@@ -11,19 +11,22 @@
|
||||
, pugixml
|
||||
, sqlite
|
||||
, tinyxml
|
||||
, boost
|
||||
, wrapGAppsHook
|
||||
, wxGTK32
|
||||
, gtk3
|
||||
, xdg-utils
|
||||
, CoreServices
|
||||
, Security
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "filezilla";
|
||||
version = "3.63.1";
|
||||
version = "3.66.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.bz2";
|
||||
hash = "sha256-TgtcD3n0+LykuiHnE7qXuG1bRcRyPeZ7nBDSO/QXo38=";
|
||||
url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.xz";
|
||||
hash = "sha256-pA8E4C76rntQ0VFe4cNsSw5EWBhWbEUORAv9bHDpsgM=";
|
||||
};
|
||||
|
||||
configureFlags = [
|
||||
@@ -34,6 +37,7 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
dbus
|
||||
gettext
|
||||
gnutls
|
||||
@@ -46,7 +50,11 @@ stdenv.mkDerivation rec {
|
||||
wxGTK32
|
||||
gtk3
|
||||
xdg-utils
|
||||
];
|
||||
] ++ lib.optionals stdenv.isDarwin [ CoreServices Security ];
|
||||
|
||||
preBuild = lib.optionalString (stdenv.isDarwin) ''
|
||||
export MACOSX_DEPLOYMENT_TARGET=11.0
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
||||
@@ -22,11 +22,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "evolution-ews";
|
||||
version = "3.50.2";
|
||||
version = "3.50.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "gYgjez2TGnOrire1c5/0Pqoky8mtjnK4I5KZ9pizHmY=";
|
||||
sha256 = "4vpZQTdq1X4H0mc/hnbDH38rBo1J9o6g+4uv6rtSm+0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "fava";
|
||||
version = "1.26.4";
|
||||
version = "1.27";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-kQXojI57NYZgu3qXjtOL/a48YnXhuA6FEazhJ7jntqk=";
|
||||
hash = "sha256-M2uE+/hYUP/l9l5zP/lHJsbMzfQ77cEJBFzbmX29gzM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
|
||||
|
||||
@@ -1,20 +1,28 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, python3
|
||||
, runtimeShell
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "snakemake";
|
||||
version = "7.32.4";
|
||||
version = "8.0.1";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "snakemake";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-9KuMPqvM8ZCTuomc0R9MBxsK3KIpukDTrlwU6MHysK0=";
|
||||
hash = "sha256-F4c/lgp7J6LLye+f3FpzaXz3zM7R+jXxTziPlVbxFxA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs --build tests/
|
||||
patchShebangs --host snakemake/executors/jobscript.sh
|
||||
substituteInPlace snakemake/shell.py \
|
||||
--replace "/bin/sh" "${runtimeShell}"
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
appdirs
|
||||
configargparse
|
||||
@@ -23,6 +31,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
docutils
|
||||
gitpython
|
||||
humanfriendly
|
||||
immutables
|
||||
jinja2
|
||||
jsonschema
|
||||
nbformat
|
||||
@@ -32,6 +41,9 @@ python3.pkgs.buildPythonApplication rec {
|
||||
requests
|
||||
reretry
|
||||
smart-open
|
||||
snakemake-interface-executor-plugins
|
||||
snakemake-interface-common
|
||||
snakemake-interface-storage-plugins
|
||||
stopit
|
||||
tabulate
|
||||
throttler
|
||||
@@ -46,31 +58,29 @@ python3.pkgs.buildPythonApplication rec {
|
||||
# setup.
|
||||
|
||||
nativeCheckInputs = with python3.pkgs; [
|
||||
numpy
|
||||
pandas
|
||||
pytestCheckHook
|
||||
requests-mock
|
||||
pillow
|
||||
snakemake-executor-plugin-cluster-generic
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
"tests/test_slurm.py"
|
||||
"tests/test_tes.py"
|
||||
"tests/test_tibanna.py"
|
||||
"tests/test_linting.py"
|
||||
"tests/test_google_lifesciences.py"
|
||||
"tests/test_conda_python_script/test_script.py"
|
||||
"tests/test_conda_python_3_7_script/test_script.py"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# Tests require network access
|
||||
"test_github_issue1396"
|
||||
"test_github_issue1460"
|
||||
"test_deploy_sources"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"snakemake"
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export HOME="$(mktemp -d)"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://snakemake.github.io";
|
||||
license = licenses.mit;
|
||||
|
||||
@@ -45,5 +45,12 @@ buildGoModule rec {
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.schneefux ];
|
||||
mainProgram = "gogs";
|
||||
knownVulnerabilities = [ ''
|
||||
Gogs has known unpatched vulnerabilities and upstream maintainers appears to be unresponsive.
|
||||
|
||||
More information can be found in forgejo's blogpost: https://forgejo.org/2023-11-release-v1-20-5-1/
|
||||
|
||||
You might want to consider migrating to Gitea or forgejo.
|
||||
'' ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -64,6 +64,17 @@ lib.makeOverridable (args: stdenvNoCC.mkDerivation (extendedBy
|
||||
'';
|
||||
|
||||
passthru = { inherit scriptName; };
|
||||
meta.platforms = lib.platforms.all;
|
||||
meta = {
|
||||
platforms = lib.platforms.all;
|
||||
} // (
|
||||
let pos =
|
||||
if (args.meta or {}) ? description then
|
||||
builtins.unsafeGetAttrPos "description" args.meta
|
||||
else
|
||||
builtins.unsafeGetAttrPos "pname" args;
|
||||
in lib.optionalAttrs
|
||||
(pos != null)
|
||||
{ position = "${pos.file}:${toString pos.line}"; }
|
||||
);
|
||||
})
|
||||
))
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, unstableGitUpdater
|
||||
, buildLua }:
|
||||
|
||||
buildLua {
|
||||
@@ -12,6 +13,7 @@ buildLua {
|
||||
rev = "b26825316e3329882206ae78dc903ebc4613f039";
|
||||
hash = "sha256-OTrLQE3rYvPQamEX23D6HttNjx3vafWdTMxTiWpDy90=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
meta = {
|
||||
description = "Automatically skips chapters based on title";
|
||||
|
||||
@@ -1,14 +1,22 @@
|
||||
{ lib, fetchgit, buildLua
|
||||
, yad, mkvtoolnix-cli, libnotify }:
|
||||
{ lib
|
||||
, fetchgit
|
||||
, unstableGitUpdater
|
||||
|
||||
, buildLua
|
||||
, libnotify
|
||||
, mkvtoolnix-cli
|
||||
, yad
|
||||
}:
|
||||
|
||||
buildLua {
|
||||
pname = "mpv-convert-script";
|
||||
version = "2016-03-18";
|
||||
version = "unstable-2015-07-02";
|
||||
src = fetchgit {
|
||||
url = "https://gist.github.com/Zehkul/25ea7ae77b30af959be0";
|
||||
rev = "f95cee43e390e843a47e8ec9d1711a12a8cd343d";
|
||||
sha256 = "13m7l4sy2r8jv2sfrb3vvqvnim4a9ilnv28q5drlg09v298z3mck";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
patches = [ ./convert.patch ];
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, buildLua, fetchFromGitHub, makeWrapper }:
|
||||
{ lib, buildLua, fetchFromGitHub, makeWrapper, unstableGitUpdater }:
|
||||
|
||||
buildLua {
|
||||
pname = "video-cutter";
|
||||
@@ -10,6 +10,7 @@ buildLua {
|
||||
rev = "01a0396c075d5f8bbd1de5b571e6231f8899ab65";
|
||||
sha256 = "sha256-veoRFzUCRH8TrvR7x+WWoycpDyxqrJZ/bnp61dVc0pE=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
|
||||
@@ -72,7 +72,9 @@ let
|
||||
mpv-playlistmanager = callPackage ./mpv-playlistmanager.nix { };
|
||||
mpv-webm = callPackage ./mpv-webm.nix { };
|
||||
mpvacious = callPackage ./mpvacious.nix { };
|
||||
quack = callPackage ./quack.nix { };
|
||||
quality-menu = callPackage ./quality-menu.nix { };
|
||||
reload = callPackage ./reload.nix { };
|
||||
simple-mpv-webui = callPackage ./simple-mpv-webui.nix { };
|
||||
sponsorblock = callPackage ./sponsorblock.nix { };
|
||||
sponsorblock-minimal = callPackage ./sponsorblock-minimal.nix { };
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchFromGitHub, pkg-config, dbus, mpv-unwrapped }:
|
||||
{ lib, stdenv, fetchFromGitHub, gitUpdater, pkg-config, dbus, mpv-unwrapped }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mpv-inhibit-gnome";
|
||||
@@ -10,6 +10,9 @@ stdenv.mkDerivation rec {
|
||||
rev = "v${version}";
|
||||
hash = "sha256-LSGg5gAQE2JpepBqhz6D6d3NlqYaU4bjvYf1F+oLphQ=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchFromGitHub, pkg-config, glib, mpv-unwrapped, ffmpeg }:
|
||||
{ lib, stdenv, fetchFromGitHub, gitUpdater, pkg-config, glib, mpv-unwrapped, ffmpeg }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mpv-mpris";
|
||||
@@ -10,6 +10,7 @@ stdenv.mkDerivation rec {
|
||||
rev = version;
|
||||
hash = "sha256-vZIO6ILatIWa9nJYOp4AMKwvaZLahqYWRLMDOizyBI0=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, buildLua, fetchFromGitHub, yt-dlp }:
|
||||
{ lib, buildLua, fetchFromGitHub, unstableGitUpdater, yt-dlp }:
|
||||
|
||||
buildLua rec {
|
||||
pname = "mpv-playlistmanager";
|
||||
@@ -10,6 +10,7 @@ buildLua rec {
|
||||
rev = "579490c7ae1becc129736b7632deec4f3fb90b99";
|
||||
hash = "sha256-swOtoB8UV/HPTpQRGXswAfUYsyC2Nj/QRIkGP8X1jk0=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace playlistmanager.lua \
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
, buildLua
|
||||
, fetchFromGitHub
|
||||
, luaPackages
|
||||
, nix-update-script
|
||||
, unstableGitUpdater
|
||||
}:
|
||||
|
||||
buildLua {
|
||||
@@ -15,15 +15,12 @@ buildLua {
|
||||
rev = "6b5863f68275b3dc91c2507284c039ec8a4cbd97";
|
||||
hash = "sha256-rJamBm6FyxWcJO7VXXOUTO9piWCkPfEVdqGKGeJ/h0c=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
dontBuild = false;
|
||||
nativeBuildInputs = [ luaPackages.moonscript ];
|
||||
scriptPath = "build/webm.lua";
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
extraArgs = [ "--version=branch" ];
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple WebM maker for mpv, with no external dependencies";
|
||||
homepage = "https://github.com/ekisu/mpv-webm";
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildLua
|
||||
, fetchFromGitHub
|
||||
, gitUpdater
|
||||
, curl
|
||||
, wl-clipboard
|
||||
, xclip
|
||||
@@ -16,6 +17,9 @@ buildLua rec {
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-XTnib4cguWFEvZtmsLfkesbjFbkt2YoyYLT587ajyUM=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace utils/forvo.lua \
|
||||
|
||||
31
pkgs/applications/video/mpv/scripts/quack.nix
Normal file
31
pkgs/applications/video/mpv/scripts/quack.nix
Normal file
@@ -0,0 +1,31 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, unstableGitUpdater
|
||||
, buildLua }:
|
||||
|
||||
buildLua rec {
|
||||
pname = "mpv-quack";
|
||||
|
||||
version = "unstable-2020-05-26";
|
||||
src = fetchFromGitHub {
|
||||
owner = "CounterPillow";
|
||||
repo = pname;
|
||||
rev = "1c87f36f9726d462dd112188c04be54d85692cf3";
|
||||
hash = "sha256-dEnJbS8RJoAxpKINdoMHN4l7vpEdf7+C5JVWpK0VXMw=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
meta = {
|
||||
description = "Reduce audio volume after seeking";
|
||||
longDescription = ''
|
||||
quack is an mpv script to temporarily reduce the volume after a seek,
|
||||
in order to avoid loud noises when scrubbing through a movie.
|
||||
|
||||
The volume is linearly increased back up to its original level.
|
||||
Repeated seeks before the transition is done work as well.
|
||||
'';
|
||||
homepage = "https://github.com/CounterPillow/quack";
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = with lib.maintainers; [ nicoo ];
|
||||
};
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildLua
|
||||
, fetchFromGitHub
|
||||
, gitUpdater
|
||||
, oscSupport ? false
|
||||
}:
|
||||
|
||||
@@ -14,6 +15,9 @@ buildLua rec {
|
||||
rev = "v${version}";
|
||||
hash = "sha256-yrcTxqpLnOI1Tq3khhflO3wzhyeTPuvKifyH5/P57Ns=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
extraScripts = lib.optional oscSupport "quality-menu-osc.lua";
|
||||
|
||||
|
||||
29
pkgs/applications/video/mpv/scripts/reload.nix
Normal file
29
pkgs/applications/video/mpv/scripts/reload.nix
Normal file
@@ -0,0 +1,29 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, unstableGitUpdater
|
||||
, buildLua }:
|
||||
|
||||
buildLua rec {
|
||||
pname = "mpv-reload";
|
||||
|
||||
version = "unstable-2023-12-19";
|
||||
src = fetchFromGitHub {
|
||||
owner = "4e6";
|
||||
repo = pname;
|
||||
rev = "133d596f6d369f320b4595bbed1f4a157b7b9ee5";
|
||||
hash = "sha256-B+4TCmf1T7MuwtbL+hGZoN1ktI31hnO5yayMG1zW8Ng=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
meta = {
|
||||
description = "Manual & automatic reloading of videos";
|
||||
longDescription = ''
|
||||
This script adds reloading of videos, automatically on timers (when stuck
|
||||
buffering etc.) or manually on keybinds, to help with cases where a stream
|
||||
is not loading further due to a network or remote issue.
|
||||
'';
|
||||
homepage = "https://github.com/4e6/mpv-reload";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ nicoo ];
|
||||
};
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
{ lib, buildLua
|
||||
, fetchFromGitHub }:
|
||||
, fetchFromGitHub
|
||||
, gitUpdater
|
||||
}:
|
||||
buildLua rec {
|
||||
pname = "simple-mpv-ui";
|
||||
version = "3.0.0";
|
||||
@@ -11,6 +13,9 @@ buildLua rec {
|
||||
hash = "sha256-I8lwpo3Hfpy3UnPMmHEJCdArVQnNL245NkxsYVmnMF0=";
|
||||
sparseCheckout = [ "main.lua" "webui-page" ];
|
||||
};
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
scriptPath = ".";
|
||||
passthru.scriptName = "webui";
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildLua
|
||||
, fetchFromGitea
|
||||
, unstableGitUpdater
|
||||
, curl
|
||||
}:
|
||||
|
||||
@@ -16,6 +17,7 @@ buildLua {
|
||||
rev = "ca2844b8cf7674bfccd282d389a50427742251d3";
|
||||
hash = "sha256-28HWZ6nOhKiE+5Ya1N3Vscd8aeH9OKS0t72e/xPfFQQ=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace sponsorblock_minimal.lua \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, fetchFromGitHub, buildLua, mpv-unwrapped }:
|
||||
{ lib, fetchFromGitHub, unstableGitUpdater, buildLua, mpv-unwrapped }:
|
||||
|
||||
buildLua {
|
||||
pname = "mpv-thumbfast";
|
||||
@@ -10,6 +10,7 @@ buildLua {
|
||||
rev = "03e93feee5a85bf7c65db953ada41b4826e9f905";
|
||||
hash = "sha256-5u5WBvWOEydJrnr/vilEgW4+fxkxM6wNjb9Fyyxx/1c=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
passthru.extraWrapperArgs = [
|
||||
"--prefix" "PATH" ":" "${lib.getBin mpv-unwrapped}/bin"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, buildLua, fetchFromGitHub, python3 }:
|
||||
{ lib, buildLua, fetchFromGitHub, gitUpdater, python3 }:
|
||||
|
||||
buildLua rec {
|
||||
pname = "mpv-thumbnail-script";
|
||||
@@ -10,6 +10,7 @@ buildLua rec {
|
||||
rev = version;
|
||||
sha256 = "sha256-J24Rou7BTE7zoiPlBkWuO9dtYJiuzkuwB4FROuzXzag=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {};
|
||||
|
||||
nativeBuildInputs = [ python3 ];
|
||||
postPatch = "patchShebangs concat_files.py";
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, gitUpdater
|
||||
, makeFontsConf
|
||||
, buildLua
|
||||
, buildGoModule
|
||||
@@ -17,6 +18,7 @@ buildLua (finalAttrs: {
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-+4k8T1yX3IRXK3XkUShsuJSH9w1Zla7CaRENcIqX4iM=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {};
|
||||
|
||||
tools = buildGoModule {
|
||||
pname = "uosc-bin";
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
buildLua,
|
||||
fetchFromGitHub,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
buildLua {
|
||||
pname = "visualizer";
|
||||
@@ -13,6 +14,7 @@ buildLua {
|
||||
rev = "7dbbfb283508714b73ead2a57b6939da1d139bd3";
|
||||
sha256 = "zzB4uBc1M2Gdr/JKY2uk8MY0hmQl1XeomkfTzuM45oE=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
|
||||
meta = with lib; {
|
||||
description = "various audio visualization";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenvNoCC, fetchFromGitHub, ffmpeg }:
|
||||
{ lib, stdenvNoCC, fetchFromGitHub, gitUpdater, ffmpeg }:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "vr-reversal";
|
||||
@@ -10,6 +10,9 @@ stdenvNoCC.mkDerivation rec {
|
||||
rev = "v${version}";
|
||||
sha256 = "1wn2ngcvn7wcsl3kmj782x5q9130qw951lj6ilrkafp6q6zscpqr";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, buildNpmPackage, fetchFromGitHub, nodejs, python3 }:
|
||||
{ lib, buildNpmPackage, fetchFromGitHub, gitUpdater, nodejs, python3 }:
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "webtorrent-mpv-hook";
|
||||
@@ -10,6 +10,9 @@ buildNpmPackage rec {
|
||||
rev = "v${version}";
|
||||
hash = "sha256-/dMtXcIyfAs++Zgz2CxRW0tkzn5QjS+WVGChlCyrU0U=";
|
||||
};
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/webtorrent.ts --replace "node_path: 'node'" "node_path: '${nodejs}/bin/node'"
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-text-pthread";
|
||||
version = "2.0.2";
|
||||
version = "2.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "norihiro";
|
||||
repo = "obs-text-pthread";
|
||||
rev = version;
|
||||
sha256 = "sha256-HN8tSagxmk6FusDrp7d0fi15ardFgUCZBiYkeBqUI34=";
|
||||
sha256 = "sha256-iwPoFbXkWzwE3smWJ+//ZUayD5OO/3iMSoYUTR3LVks=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
|
||||
@@ -17,6 +17,14 @@ python3.pkgs.buildPythonApplication rec {
|
||||
hash = "sha256-UgZ58WLXq0U3EDt4311kv0kayVU17In4kwnQ+QN1E7A=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# refresh Fedora tree URLs in virt-install-osinfo* expected XMLs
|
||||
(fetchpatch {
|
||||
url = "https://github.com/virt-manager/virt-manager/commit/6e5c1db6b4a0af96afeb09a09fb2fc2b73308f01.patch";
|
||||
hash = "sha256-zivVo6nHvfB7aHadOouQZCBXn5rY12nxFjQ4FFwjgZI=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
intltool file
|
||||
gobject-introspection # for setup hook populating GI_TYPELIB_PATH
|
||||
@@ -77,7 +85,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=.
|
||||
export HOME=$(mktemp -d)
|
||||
''; # <- Required for "tests/test_urldetect.py".
|
||||
|
||||
postCheck = ''
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
{
|
||||
lib,
|
||||
buildNpmPackage,
|
||||
fetchFromGitHub,
|
||||
buildPackages,
|
||||
python3,
|
||||
pkg-config,
|
||||
libsecret,
|
||||
nodejs_18,
|
||||
}:
|
||||
buildNpmPackage rec {
|
||||
pname = "bitwarden-directory-connector-cli";
|
||||
version = "2023.10.0";
|
||||
nodejs = nodejs_18;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bitwarden";
|
||||
repo = "directory-connector";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-PlOtTh+rpTxAv8ajHBDHZuL7yeeLVpbAfKEDPQlejIg=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
${lib.getExe buildPackages.jq} 'del(.scripts.preinstall)' package.json > package.json.tmp
|
||||
mv -f package.json{.tmp,}
|
||||
'';
|
||||
|
||||
npmDepsHash = "sha256-jBAWWY12qeX2EDhUvT3TQpnQvYXRsIilRrXGpVzxYvw=";
|
||||
|
||||
env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
|
||||
|
||||
makeCacheWritable = true;
|
||||
npmBuildScript = "build:cli:prod";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/libexec/bitwarden-directory-connector
|
||||
cp -R {build-cli,node_modules} $out/libexec/bitwarden-directory-connector
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
# needs to be wrapped with nodejs so that it can be executed
|
||||
postInstall = ''
|
||||
chmod +x $out/libexec/bitwarden-directory-connector/build-cli/bwdc.js
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/libexec/bitwarden-directory-connector/build-cli/bwdc.js $out/bin/bitwarden-directory-connector-cli
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
libsecret
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
python3
|
||||
pkg-config
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "LDAP connector for Bitwarden";
|
||||
homepage = "https://github.com/bitwarden/directory-connector";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [Silver-Golden];
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "bitwarden-directory-connector-cli";
|
||||
};
|
||||
}
|
||||
@@ -17,20 +17,20 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "bruno";
|
||||
version = "1.5.1";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "usebruno";
|
||||
repo = "bruno";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GgXnsPEUurPHrijf966x5ldp+1lDrgS1iBinU+EkdYU=b";
|
||||
hash = "sha256-Vf4UHN13eE9W4rekOEGAWIP3x79cVH3vI9sxuIscv8c=";
|
||||
|
||||
postFetch = ''
|
||||
${lib.getExe npm-lockfile-fix} $out/package-lock.json
|
||||
'';
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-R5dEL4QbwCSE9+HHCXlf/pYLmjCaD15tmdSSLbZgmt0=";
|
||||
npmDepsHash = "sha256-pfV9omdJiozJ9VotTImfM/DRsBPNGAEzmSdj3/C//4A=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
(writeShellScriptBin "phantomjs" "echo 2.1.1")
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication {
|
||||
pname = "memtree";
|
||||
version = "unstable-2023-11-22";
|
||||
version = "unstable-2024-01-04";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nbraud";
|
||||
repo = "memtree";
|
||||
rev = "edc09d91dcd72f175d6adc1d08b261dd95cc4fbf";
|
||||
hash = "sha256-YLZm0wjkjaTw/lHY5k4cqPXCgINe+49SGPLZq+eRdI4=";
|
||||
rev = "97615952eabdc5e8e1a4bd590dd1f4971f3c5a24";
|
||||
hash = "sha256-Ifp8hwkuyBw57fGer3GbDiJaRjL4TD3hzj+ecGXWqI0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
|
||||
49
pkgs/by-name/ni/nixseparatedebuginfod/package.nix
Normal file
49
pkgs/by-name/ni/nixseparatedebuginfod/package.nix
Normal file
@@ -0,0 +1,49 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, libarchive
|
||||
, openssl
|
||||
, sqlite
|
||||
, pkg-config
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "nixseparatedebuginfod";
|
||||
version = "0.3.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "symphorien";
|
||||
repo = "nixseparatedebuginfod";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-XSEHNoc3h21foVeR28KgfiBTRHyUh+GJ52LMD2xFHfA=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-t6W6siHuga/T9kmanA735zH2i9eCOT7vD6v7E5LIp9k=";
|
||||
|
||||
# tests need a working nix install with access to the internet
|
||||
doCheck = false;
|
||||
|
||||
buildInputs = [
|
||||
libarchive
|
||||
openssl
|
||||
sqlite
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
passthru = {
|
||||
tests = {
|
||||
inherit (nixosTests) nixseparatedebuginfod;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Downloads and provides debug symbols and source code for nix derivations to gdb and other debuginfod-capable debuggers as needed";
|
||||
homepage = "https://github.com/symphorien/nixseparatedebuginfod";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = [ maintainers.symphorien ];
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "nixseparatedebuginfod";
|
||||
};
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"commit": "6a46f981138e6d012bfcced5f1d2b309b5452766",
|
||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/6a46f981138e6d012bfcced5f1d2b309b5452766.tar.gz",
|
||||
"sha256": "1v297xyfv9nv1bji08gq8s6wrgmxjnhklvf6p0mvslyrj36w7mlj",
|
||||
"msg": "Update from Hackage at 2023-12-04T17:35:08Z"
|
||||
"commit": "d77837f979c4b15fe0eb25cdf8a0463773434c9d",
|
||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/d77837f979c4b15fe0eb25cdf8a0463773434c9d.tar.gz",
|
||||
"sha256": "01ihv1nwp0qqhwll5icl19ij5sb1nvhpnwgvwpcr319rn3b704km",
|
||||
"msg": "Update from Hackage at 2023-12-17T16:07:47Z"
|
||||
}
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "osinfo-db";
|
||||
version = "20230308";
|
||||
version = "20231215";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://releases.pagure.org/libosinfo/${pname}-${version}.tar.xz";
|
||||
sha256 = "sha256-VGugTsxekzui1/PztDM6KYDUrk38UoSYm5xUdY8rkIg=";
|
||||
hash = "sha256-37fFl1zk7//ZKq3QAJSg98WTtBmI/aU5kV9kWfcWRVQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -22,7 +22,7 @@ stdenvNoCC.mkDerivation (self: {
|
||||
sourceRoot = "${self.src.name}/themes";
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
install -Dt $out *.yaml
|
||||
install -Dt $out *.toml
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
||||
@@ -28,11 +28,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gnome-maps";
|
||||
version = "45.2";
|
||||
version = "45.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-maps/${lib.versions.major finalAttrs.version}/gnome-maps-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-6es3CnlxtPhC+qME0xpIXb2P+K7EKnZScvL8GnqAmPI=";
|
||||
hash = "sha256-Lxs6DZZC+MOwyyi3v1ZCgqwspdbE4MBe5gCy9EfxYCo=";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
||||
@@ -31,13 +31,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "eog";
|
||||
version = "45.1";
|
||||
version = "45.2";
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "sha256-wX+GcExyKzbAGhaPHlFDm+C7J58sZkb0i2bp0POiTNI=";
|
||||
sha256 = "sha256-2UzDnYLIDO5ygbgqzkLIIll2rV0MPvmVx+Aw9rqyIZw=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -36,11 +36,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "epiphany";
|
||||
version = "45.1";
|
||||
version = "45.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "fJlO807NYOkV3jMe4SPAiTj5YjzvrabVC5njycWtgTU=";
|
||||
sha256 = "eccUYL/+/M715nvj+1/KZXhT6CFstiY5nSuVDOAyDdw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -40,11 +40,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-settings-daemon";
|
||||
version = "45.0";
|
||||
version = "45.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "u03EaVDiqQ848jIlhIhW0qextxjInQKFzhl7cBa7Hcg=";
|
||||
sha256 = "xiv+yYF+7luD6+kBqShhiaZ+tf8DPF3UFQZXT4Ir8JA=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -46,11 +46,11 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-software";
|
||||
version = "45.2";
|
||||
version = "45.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "C92PwMrs1usBPGAQ28qTB3OXEYpu9eryZOKoIKKS9bc=";
|
||||
sha256 = "1rkkWyIjfae9FzndKMI8yPODX5n6EMEDfZ3XY1M1JRw=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zenity";
|
||||
version = "4.0.0";
|
||||
version = "4.0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/zenity/${lib.versions.majorMinor finalAttrs.version}/zenity-${finalAttrs.version}.tar.xz";
|
||||
sha256 = "C4yN7xjasFzEm9RkuQyn+UWuUv9eCSQtpwKhXZTT6N0=";
|
||||
sha256 = "DC9TeBOxD3KEcNnQXWyVcT2yUS+clQluHoWxpnOWBeY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -21,11 +21,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-sudoku";
|
||||
version = "45.3";
|
||||
version = "45.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "27xURAbO54QRBBeOpKk742EH2dfsplVf0wGJzRQ41ko=";
|
||||
sha256 = "edNZV6oWj0pWPmAW+5dQs1hlJgEkEVg4CkxLebdAAZ0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -47,6 +47,7 @@ let
|
||||
inherit (bootGhcjs) version;
|
||||
isGhcjs = true;
|
||||
|
||||
llvmPackages = null;
|
||||
enableShared = true;
|
||||
|
||||
socket-io = pkgsHostHost.nodePackages."socket.io";
|
||||
|
||||
@@ -8,10 +8,10 @@
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "cabal2nix";
|
||||
version = "unstable-2023-11-02";
|
||||
version = "unstable-2024-01-04";
|
||||
src = fetchzip {
|
||||
url = "https://github.com/NixOS/cabal2nix/archive/2099a1f4594f621bb1a2879b793b860aefe4c027.tar.gz";
|
||||
sha256 = "11j1lzjanhmdkqwnb7hni3wxiixl7fzxk6d633cn7ybr7b8wra9s";
|
||||
url = "https://github.com/NixOS/cabal2nix/archive/e394e96c51cc7a2858145e710fbedbb2cb57f6ec.tar.gz";
|
||||
sha256 = "0rzmyx2i2z3w2ibg4rbaasq0581sa7bf8n1cih6v3j6phzgl3058";
|
||||
};
|
||||
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
|
||||
isLibrary = true;
|
||||
|
||||
@@ -92,6 +92,15 @@ self: super: {
|
||||
guardian
|
||||
;
|
||||
|
||||
# Extensions wants the latest version of Cabal for its list of Haskell
|
||||
# language extensions.
|
||||
extensions = super.extensions.override {
|
||||
Cabal =
|
||||
if versionOlder self.ghc.version "9.6"
|
||||
then self.Cabal_3_10_2_1
|
||||
else null; # use GHC bundled version
|
||||
};
|
||||
|
||||
#######################################
|
||||
### HASKELL-LANGUAGE-SERVER SECTION ###
|
||||
#######################################
|
||||
@@ -121,17 +130,6 @@ self: super: {
|
||||
# For -f-auto see cabal.project in haskell-language-server.
|
||||
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser (disableCabalFlag "auto" super.ghc-lib-parser-ex);
|
||||
|
||||
# 2023-12-03: https://github.com/haskell/haskell-language-server/pull/3867
|
||||
hls-plugin-api = appendPatch (fetchpatch {
|
||||
url = "https://github.com/haskell/haskell-language-server/commit/1c884ea856cceeaa3254a2ef68c8ab3a3c353153.patch";
|
||||
relative = "hls-plugin-api";
|
||||
hash = "sha256-vlXPdEvmuIl+cM+u/GdHi8r72r4+Tqtsvx0CGbWEFCQ=";
|
||||
}) (doJailbreak super.hls-plugin-api);
|
||||
ghcide = appendPatch (fetchpatch {
|
||||
url = "https://github.com/haskell/haskell-language-server/commit/1c884ea856cceeaa3254a2ef68c8ab3a3c353153.patch";
|
||||
relative = "ghcide";
|
||||
hash = "sha256-1URXyQf88v3hjFGvNmcIjHxJ5vExH3iI92XktDrQs0U=";
|
||||
}) (doJailbreak super.ghcide);
|
||||
hls-test-utils = doJailbreak super.hls-test-utils;
|
||||
hls-alternate-number-format-plugin = doJailbreak super.hls-alternate-number-format-plugin;
|
||||
hls-cabal-plugin = doJailbreak super.hls-cabal-plugin;
|
||||
@@ -148,6 +146,12 @@ self: super: {
|
||||
# https://github.com/supki/ldap-client/issues/18
|
||||
ldap-client-og = dontCheck super.ldap-client-og;
|
||||
|
||||
# Support for template-haskell >= 2.16
|
||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
|
||||
sha256 = "0w4y3v69nd3yafpml4gr23l94bdhbmx8xky48a59lckmz5x9fgxv";
|
||||
}) (doJailbreak super.language-haskell-extract);
|
||||
|
||||
vector = overrideCabal (old: {
|
||||
# Too strict bounds on doctest which isn't used, but is part of the configuration
|
||||
jailbreak = true;
|
||||
@@ -189,6 +193,21 @@ self: super: {
|
||||
# 2023-06-28: Test error: https://hydra.nixos.org/build/225565149
|
||||
orbits = dontCheck super.orbits;
|
||||
|
||||
# Fixes the build if Cabal >= 3.10.2 is used for Setup.hs, as it got stricter
|
||||
# about c- vs. cxx-sources: https://github.com/haskell/double-conversion/issues/43
|
||||
double-conversion = overrideCabal (drv: {
|
||||
patches = drv.patches or [ ] ++ [
|
||||
(pkgs.fetchpatch {
|
||||
name = "double-conversion-c-to-cxx-sources.patch";
|
||||
url = "https://github.com/haskell/double-conversion/pull/44/commits/d480fb057c5387251b8cfdeb3666b24087811219.patch";
|
||||
sha256 = "0jw2i2cybmv190bhab0afhz2v3zva2chazhmngh884fsq2p3j1cv";
|
||||
})
|
||||
];
|
||||
prePatch = drv.prePatch or "" + ''
|
||||
${pkgs.buildPackages.dos2unix}/bin/dos2unix *.cabal
|
||||
'';
|
||||
}) super.double-conversion;
|
||||
|
||||
# Allow aeson == 2.1.*
|
||||
# https://github.com/hdgarrood/aeson-better-errors/issues/23
|
||||
aeson-better-errors = doJailbreak super.aeson-better-errors;
|
||||
@@ -297,7 +316,7 @@ self: super: {
|
||||
|
||||
# Overriding the version pandoc dependency uses as the latest release has version bounds
|
||||
# defined as >= 3.1 && < 3.2, can be removed once pandoc gets bumped by Stackage.
|
||||
patat = super.patat.override { pandoc = self.pandoc_3_1_9; };
|
||||
patat = super.patat.override { pandoc = self.pandoc_3_1_11; };
|
||||
|
||||
# http2 also overridden in all-packages.nix for mailctl.
|
||||
# twain is currently only used by mailctl, so the .overrideScope shouldn't
|
||||
@@ -1239,22 +1258,22 @@ self: super: {
|
||||
|
||||
# stack-2.13.1 requires a bunch of the latest packages.
|
||||
(drv: drv.overrideScope (hfinal: hprev: {
|
||||
ansi-terminal = hprev.ansi-terminal_1_0; # needs ansi-terminal >= 1.0
|
||||
crypton = hprev.crypton_0_34; # needs crypton >= 0.33
|
||||
ansi-terminal = hfinal.ansi-terminal_1_0; # needs ansi-terminal >= 1.0
|
||||
crypton = hfinal.crypton_0_34; # needs crypton >= 0.33
|
||||
hedgehog = doJailbreak hprev.hedgehog; # has too strict version bound for ansi-terminal
|
||||
hpack = hprev.hpack_0_36_0; # needs hpack == 0.36.0
|
||||
http-client-tls = hprev.http-client-tls_0_3_6_3; # needs http-client-tls >= 0.3.6.2
|
||||
http-download = dontCheck hprev.http-download_0_2_1_0; # needs http-download >= 0.2.1.0, tests access network
|
||||
optparse-applicative = hprev.optparse-applicative_0_18_1_0; # needs optparse-applicative >= 0.18.1.0
|
||||
pantry = dontCheck hprev.pantry_0_9_3; # needs pantry >= 0.9.2, tests access network
|
||||
hpack = hfinal.hpack_0_36_0; # needs hpack == 0.36.0
|
||||
http-client-tls = hfinal.http-client-tls_0_3_6_3; # needs http-client-tls >= 0.3.6.2
|
||||
http-download = hfinal.http-download_0_2_1_0; # needs http-download >= 0.2.1.0
|
||||
optparse-applicative = hfinal.optparse-applicative_0_18_1_0; # needs optparse-applicative >= 0.18.1.0
|
||||
pantry = hfinal.pantry_0_9_3_1; # needs pantry >= 0.9.2
|
||||
syb = dontCheck hprev.syb; # cyclic dependencies
|
||||
tar-conduit = hprev.tar-conduit_0_4_0; # pantry needs tar-conduit >= 0.4.0
|
||||
tar-conduit = hfinal.tar-conduit_0_4_0; # pantry needs tar-conduit >= 0.4.0
|
||||
temporary = dontCheck hprev.temporary; # cyclic dependencies
|
||||
}))
|
||||
];
|
||||
|
||||
hopenpgp-tools = super.hopenpgp-tools.override {
|
||||
optparse-applicative = self.optparse-applicative_0_18_1_0;
|
||||
optparse-applicative = self.optparse-applicative_0_18_1_0;
|
||||
};
|
||||
|
||||
# musl fixes
|
||||
@@ -1938,7 +1957,7 @@ self: super: {
|
||||
inherit (let
|
||||
pandoc-cli-overlay = self: super: {
|
||||
# pandoc-cli requires pandoc >= 3.1
|
||||
pandoc = self.pandoc_3_1_9;
|
||||
pandoc = self.pandoc_3_1_11;
|
||||
|
||||
# pandoc depends on http-client-tls, which only starts depending
|
||||
# on crypton-connection in http-client-tls-0.3.6.2.
|
||||
@@ -1947,17 +1966,26 @@ self: super: {
|
||||
# pandoc depends on skylighting >= 0.14
|
||||
skylighting = self.skylighting_0_14_1;
|
||||
skylighting-core = self.skylighting-core_0_14_1;
|
||||
|
||||
# pandoc needs up to date typst
|
||||
typst-symbols = self.typst-symbols_0_1_5;
|
||||
# and texmath to match
|
||||
texmath = self.texmath_0_12_8_6;
|
||||
};
|
||||
in {
|
||||
pandoc-cli = super.pandoc-cli.overrideScope pandoc-cli-overlay;
|
||||
pandoc_3_1_9 = doDistribute (super.pandoc_3_1_9.overrideScope pandoc-cli-overlay);
|
||||
pandoc_3_1_11 = doDistribute (super.pandoc_3_1_11.overrideScope pandoc-cli-overlay);
|
||||
pandoc-lua-engine = super.pandoc-lua-engine.overrideScope pandoc-cli-overlay;
|
||||
})
|
||||
pandoc-cli
|
||||
pandoc_3_1_9
|
||||
pandoc_3_1_11
|
||||
pandoc-lua-engine
|
||||
;
|
||||
|
||||
# Doesn't work without typst-symbols >= 0.1.5 which conflicts with Stackage
|
||||
# TODO(@sternenseemann): clean up with Stackage LTS 22
|
||||
typst = dontDistribute super.typst;
|
||||
|
||||
crypton-x509 =
|
||||
lib.pipe
|
||||
super.crypton-x509
|
||||
@@ -2716,7 +2744,7 @@ self: super: {
|
||||
|
||||
# 2023-12-20: Needs newer hasql-pool package and extra dependencies
|
||||
postgrest = lib.pipe (super.postgrest.overrideScope (lself: lsuper: {
|
||||
hasql-pool = lself.hasql-pool_0_10;
|
||||
hasql-pool = lself.hasql-pool_0_10_0_1;
|
||||
})) [
|
||||
(addBuildDepends [ self.extra self.fuzzyset_0_2_4 self.cache self.timeit ])
|
||||
# 2022-12-02: Too strict bounds: https://github.com/PostgREST/postgrest/issues/2580
|
||||
@@ -2762,13 +2790,19 @@ self: super: {
|
||||
# 2023-03-05: restrictive bounds on base https://github.com/diagrams/diagrams-gtk/issues/11
|
||||
diagrams-gtk = doJailbreak super.diagrams-gtk;
|
||||
|
||||
# 2023-03-13: restrictive bounds on validation-selective (>=0.1.0 && <0.2).
|
||||
# Get rid of this in the next release: https://github.com/kowainik/tomland/commit/37f16460a6dfe4606d48b8b86c13635d409442cd
|
||||
tomland = doJailbreak super.tomland;
|
||||
|
||||
llvm-ffi = super.llvm-ffi.override {
|
||||
LLVM = pkgs.llvmPackages_13.libllvm;
|
||||
};
|
||||
tomland = overrideCabal (drv: {
|
||||
# 2023-03-13: restrictive bounds on validation-selective (>=0.1.0 && <0.2).
|
||||
# Get rid of this in the next release: https://github.com/kowainik/tomland/commit/37f16460a6dfe4606d48b8b86c13635d409442cd
|
||||
jailbreak = true;
|
||||
# Fix compilation of test suite with GHC >= 9.8
|
||||
patches = drv.patches or [ ] ++ [
|
||||
(pkgs.fetchpatch {
|
||||
name = "tomland-disambiguate-string-type-for-ghc-9.8.patch";
|
||||
url = "https://github.com/kowainik/tomland/commit/0f107269b8835a8253f618b75930b11d3a3f1337.patch";
|
||||
sha256 = "13ndlfw32xh8jz5g6lpxzn2ks8zchb3y4j1jbbm2x279pdyvvars";
|
||||
})
|
||||
];
|
||||
}) super.tomland;
|
||||
|
||||
# libfuse3 fails to mount fuse file systems within the build environment
|
||||
libfuse3 = dontCheck super.libfuse3;
|
||||
|
||||
@@ -8,7 +8,11 @@ in
|
||||
|
||||
self: super: {
|
||||
|
||||
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
||||
# ghcjs does not use `llvmPackages` and exposes `null` attribute.
|
||||
llvmPackages =
|
||||
if self.ghc.llvmPackages != null
|
||||
then pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages
|
||||
else null;
|
||||
|
||||
# Disable GHC 8.10.x core libraries.
|
||||
array = null;
|
||||
@@ -85,13 +89,6 @@ self: super: {
|
||||
shellmet = doJailbreak super.shellmet;
|
||||
shower = doJailbreak super.shower;
|
||||
|
||||
# Apply patch from https://github.com/finnsson/template-helper/issues/12#issuecomment-611795375 to fix the build.
|
||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||
name = "language-haskell-extract-0.2.4.patch";
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/e48738ee1be774507887a90a0d67ad1319456afc/patches/language-haskell-extract-0.2.4.patch?inline=false";
|
||||
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
|
||||
}) (doJailbreak super.language-haskell-extract);
|
||||
|
||||
# hnix 0.9.0 does not provide an executable for ghc < 8.10, so define completions here for now.
|
||||
hnix = self.generateOptparseApplicativeCompletions [ "hnix" ]
|
||||
(overrideCabal (drv: {
|
||||
|
||||
@@ -95,7 +95,7 @@ self: super: {
|
||||
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
||||
|
||||
# This became a core library in ghc 8.10., so we don’t have an "exception" attribute anymore.
|
||||
exceptions = null;
|
||||
exceptions = self.exceptions_0_10_7;
|
||||
|
||||
# Older compilers need the latest ghc-lib to build this package.
|
||||
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
||||
|
||||
@@ -68,10 +68,6 @@ self: super: {
|
||||
tuple = addBuildDepend self.base-orphans super.tuple;
|
||||
vector-th-unbox = doJailbreak super.vector-th-unbox;
|
||||
|
||||
hls-cabal-plugin = super.hls-cabal-plugin.override {
|
||||
Cabal-syntax = self.Cabal-syntax_3_8_1_0;
|
||||
};
|
||||
|
||||
ormolu = self.ormolu_0_5_2_0.override {
|
||||
Cabal-syntax = self.Cabal-syntax_3_8_1_0;
|
||||
};
|
||||
@@ -79,40 +75,11 @@ self: super: {
|
||||
stylish-haskell = doJailbreak super.stylish-haskell_0_14_4_0;
|
||||
|
||||
doctest = dontCheck super.doctest;
|
||||
# Apply patches from head.hackage.
|
||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
|
||||
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
|
||||
}) (doJailbreak super.language-haskell-extract);
|
||||
|
||||
haskell-language-server = let
|
||||
# These aren't included in hackage-packages.nix because hackage2nix is configured for GHC 9.2, under which these plugins aren't supported.
|
||||
# See https://github.com/NixOS/nixpkgs/pull/205902 for why we use `self.<package>.scope`
|
||||
additionalDeps = with self.haskell-language-server.scope; [
|
||||
(unmarkBroken hls-splice-plugin)
|
||||
];
|
||||
in addBuildDepends additionalDeps (disableCabalFlag "fourmolu" (super.haskell-language-server.overrideScope (lself: lsuper: {
|
||||
# Needed for modern ormolu and fourmolu.
|
||||
# Apply this here and not in common, because other ghc versions offer different Cabal versions.
|
||||
Cabal = lself.Cabal_3_6_3_0;
|
||||
hls-overloaded-record-dot-plugin = null;
|
||||
hls-fourmolu-plugin = null;
|
||||
})));
|
||||
haskell-language-server = throw "haskell-language-server has dropped support for ghc 9.0 in version 2.4.0.0, please use a newer ghc version or an older nixpkgs version";
|
||||
|
||||
# Needs to use ghc-lib due to incompatible GHC
|
||||
ghc-tags = doDistribute (addBuildDepend self.ghc-lib self.ghc-tags_1_5);
|
||||
|
||||
# This package is marked as unbuildable on GHC 9.2, so hackage2nix doesn't include any dependencies.
|
||||
# See https://github.com/NixOS/nixpkgs/pull/205902 for why we use `self.<package>.scope`
|
||||
hls-haddock-comments-plugin = unmarkBroken (addBuildDepends (with self.hls-haddock-comments-plugin.scope; [
|
||||
ghc-exactprint ghcide hls-plugin-api hls-refactor-plugin lsp-types unordered-containers
|
||||
]) super.hls-haddock-comments-plugin);
|
||||
|
||||
hls-tactics-plugin = unmarkBroken (addBuildDepends (with self.hls-tactics-plugin.scope; [
|
||||
aeson extra fingertree generic-lens ghc-exactprint ghc-source-gen ghcide
|
||||
hls-graph hls-plugin-api hls-refactor-plugin hyphenation lens lsp megaparsec
|
||||
parser-combinators prettyprinter refinery retrie syb unagi-chan unordered-containers
|
||||
]) super.hls-tactics-plugin);
|
||||
ghc-tags = doDistribute (addBuildDepend self.ghc-lib self.ghc-tags_1_6);
|
||||
|
||||
# Test suite sometimes segfaults with GHC 9.0.1 and 9.0.2
|
||||
# https://github.com/ekmett/reflection/issues/51
|
||||
@@ -130,10 +97,6 @@ self: super: {
|
||||
libraryHaskellDepends = old.libraryHaskellDepends ++ [self.ghc-api-compat];
|
||||
}) super.hiedb;
|
||||
|
||||
# 2021-09-18: https://github.com/haskell/haskell-language-server/issues/2206
|
||||
# Restrictive upper bound on ormolu
|
||||
hls-ormolu-plugin = doJailbreak super.hls-ormolu-plugin;
|
||||
|
||||
# https://github.com/lspitzner/butcher/issues/7
|
||||
butcher = doJailbreak super.butcher;
|
||||
|
||||
@@ -162,10 +125,6 @@ self: super: {
|
||||
|
||||
apply-refact = self.apply-refact_0_9_3_0;
|
||||
|
||||
hls-hlint-plugin = super.hls-hlint-plugin.override {
|
||||
inherit (self) apply-refact;
|
||||
};
|
||||
|
||||
# Needs OneTuple for ghc < 9.2
|
||||
binary-orphans = addBuildDepends [ self.OneTuple ] super.binary-orphans;
|
||||
|
||||
|
||||
@@ -57,11 +57,12 @@ self: super: {
|
||||
|
||||
# weeder >= 2.5 requires GHC 9.4
|
||||
weeder = doDistribute self.weeder_2_4_1;
|
||||
weeder_2_4_1 = super.weeder_2_4_1.override {
|
||||
# Allow dhall 1.42.*
|
||||
weeder_2_4_1 = doJailbreak (super.weeder_2_4_1.override {
|
||||
# weeder < 2.6 only supports algebraic-graphs < 0.7
|
||||
# We no longer have matching test deps for algebraic-graphs 0.6.1 in the set
|
||||
algebraic-graphs = dontCheck self.algebraic-graphs_0_6_1;
|
||||
};
|
||||
});
|
||||
|
||||
hls-cabal-plugin = super.hls-cabal-plugin.override {
|
||||
Cabal-syntax = self.Cabal-syntax_3_8_1_0;
|
||||
@@ -73,7 +74,11 @@ self: super: {
|
||||
|
||||
stylish-haskell = doJailbreak super.stylish-haskell_0_14_4_0;
|
||||
|
||||
haskell-language-server = disableCabalFlag "fourmolu" (super.haskell-language-server.override { hls-fourmolu-plugin = null; });
|
||||
haskell-language-server = disableCabalFlag "fourmolu" (super.haskell-language-server.override {
|
||||
hls-fourmolu-plugin = null;
|
||||
# Not buildable if GHC > 9.2.3, so we ship no compatible GHC
|
||||
hls-stan-plugin = null;
|
||||
});
|
||||
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
||||
hashable = addBuildDepends [ self.data-array-byte ] super.hashable;
|
||||
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
|
||||
@@ -86,12 +91,6 @@ self: super: {
|
||||
# https://mail.haskell.org/pipermail/haskell-cafe/2022-October/135613.html
|
||||
language-javascript_0_7_0_0 = dontCheck super.language-javascript_0_7_0_0;
|
||||
|
||||
# Apply patches from head.hackage.
|
||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
|
||||
sha256 = "0w4y3v69nd3yafpml4gr23l94bdhbmx8xky48a59lckmz5x9fgxv";
|
||||
}) (doJailbreak super.language-haskell-extract);
|
||||
|
||||
# Tests depend on `parseTime` which is no longer available
|
||||
hourglass = dontCheck super.hourglass;
|
||||
|
||||
|
||||
@@ -76,12 +76,6 @@ in {
|
||||
] ++ drv.testFlags or [];
|
||||
}) (doJailbreak super.hpack);
|
||||
|
||||
# Apply patches from head.hackage.
|
||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
|
||||
sha256 = "0w4y3v69nd3yafpml4gr23l94bdhbmx8xky48a59lckmz5x9fgxv";
|
||||
}) (doJailbreak super.language-haskell-extract);
|
||||
|
||||
# Tests depend on `parseTime` which is no longer available
|
||||
hourglass = dontCheck super.hourglass;
|
||||
|
||||
@@ -122,9 +116,7 @@ in {
|
||||
in
|
||||
lib.mapAttrs (_: pkg: doDistribute (pkg.overrideScope hls_overlay)) {
|
||||
haskell-language-server = allowInconsistentDependencies super.haskell-language-server;
|
||||
# Tests fail due to the newly-build fourmolu not being in PATH
|
||||
# https://github.com/fourmolu/fourmolu/issues/231
|
||||
fourmolu = dontCheck super.fourmolu_0_14_0_0;
|
||||
fourmolu = self.fourmolu_0_14_0_0;
|
||||
ormolu = self.generateOptparseApplicativeCompletions [ "ormolu" ] (enableSeparateBinOutput super.ormolu_0_7_2_0);
|
||||
hlint = super.hlint_3_6_1;
|
||||
stylish-haskell = super.stylish-haskell;
|
||||
|
||||
@@ -95,9 +95,7 @@ self: super: {
|
||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_6_3_20231121;
|
||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_2;
|
||||
|
||||
# Tests fail due to the newly-build fourmolu not being in PATH
|
||||
# https://github.com/fourmolu/fourmolu/issues/231
|
||||
fourmolu = dontCheck super.fourmolu_0_14_0_0;
|
||||
fourmolu = doDistribute self.fourmolu_0_14_0_0;
|
||||
ormolu = self.generateOptparseApplicativeCompletions [ "ormolu" ] (enableSeparateBinOutput super.ormolu_0_7_2_0);
|
||||
hlint = super.hlint_3_6_1;
|
||||
|
||||
@@ -143,12 +141,6 @@ self: super: {
|
||||
# https://github.com/dreixel/syb/issues/40
|
||||
syb = dontCheck super.syb;
|
||||
|
||||
# Support for template-haskell >= 2.16
|
||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
|
||||
sha256 = "0w4y3v69nd3yafpml4gr23l94bdhbmx8xky48a59lckmz5x9fgxv";
|
||||
}) (doJailbreak super.language-haskell-extract);
|
||||
|
||||
# Patch 0.17.1 for support of mtl-2.3
|
||||
xmonad-contrib = appendPatch
|
||||
(pkgs.fetchpatch {
|
||||
@@ -197,8 +189,8 @@ self: super: {
|
||||
hw-prim = dontCheck (doJailbreak super.hw-prim);
|
||||
stm-containers = dontCheck super.stm-containers;
|
||||
regex-tdfa = dontCheck super.regex-tdfa;
|
||||
rebase = doJailbreak super.rebase_1_20_1_1;
|
||||
rerebase = doJailbreak super.rerebase_1_20_1_1;
|
||||
rebase = doJailbreak super.rebase_1_20_2;
|
||||
rerebase = doJailbreak super.rerebase_1_20_2;
|
||||
hiedb = dontCheck super.hiedb;
|
||||
retrie = dontCheck super.retrie;
|
||||
# https://github.com/kowainik/relude/issues/436
|
||||
|
||||
@@ -49,27 +49,71 @@ self: super: {
|
||||
unix = null;
|
||||
xhtml = null;
|
||||
|
||||
# https://github.com/tibbe/unordered-containers/issues/214
|
||||
unordered-containers = dontCheck super.unordered-containers;
|
||||
# HLS
|
||||
# https://haskell-language-server.readthedocs.io/en/latest/support/plugin-support.html
|
||||
haskell-language-server = super.haskell-language-server.override {
|
||||
hls-class-plugin = null;
|
||||
hls-floskell-plugin = null;
|
||||
hls-fourmolu-plugin = null;
|
||||
hls-gadt-plugin = null;
|
||||
hls-hlint-plugin = null;
|
||||
hls-ormolu-plugin = null;
|
||||
hls-refactor-plugin = null;
|
||||
hls-rename-plugin = null;
|
||||
hls-retrie-plugin = null;
|
||||
hls-splice-plugin = null;
|
||||
hls-stylish-haskell-plugin = null;
|
||||
};
|
||||
|
||||
# Test suite does not compile.
|
||||
data-clist = doJailbreak super.data-clist; # won't cope with QuickCheck 2.12.x
|
||||
dates = doJailbreak super.dates; # base >=4.9 && <4.12
|
||||
Diff = dontCheck super.Diff;
|
||||
HaTeX = doJailbreak super.HaTeX; # containers >=0.4 && <0.6 is too tight; https://github.com/Daniel-Diaz/HaTeX/issues/126
|
||||
hpc-coveralls = doJailbreak super.hpc-coveralls; # https://github.com/guillaume-nargeot/hpc-coveralls/issues/82
|
||||
http-api-data = doJailbreak super.http-api-data;
|
||||
persistent-sqlite = dontCheck super.persistent-sqlite;
|
||||
system-fileio = dontCheck super.system-fileio; # avoid dependency on broken "patience"
|
||||
unicode-transforms = dontCheck super.unicode-transforms;
|
||||
wl-pprint-extras = doJailbreak super.wl-pprint-extras; # containers >=0.4 && <0.6 is too tight; https://github.com/ekmett/wl-pprint-extras/issues/17
|
||||
RSA = dontCheck super.RSA; # https://github.com/GaloisInc/RSA/issues/14
|
||||
github = dontCheck super.github; # hspec upper bound exceeded; https://github.com/phadej/github/pull/341
|
||||
binary-orphans = dontCheck super.binary-orphans; # tasty upper bound exceeded; https://github.com/phadej/binary-orphans/commit/8ce857226595dd520236ff4c51fa1a45d8387b33
|
||||
# Version upgrades
|
||||
alex = doDistribute self.alex_3_4_0_1;
|
||||
some = doDistribute self.some_1_0_6;
|
||||
tagged = doDistribute self.tagged_0_8_8;
|
||||
th-abstraction = doDistribute self.th-abstraction_0_6_0_0;
|
||||
hspec-core = doDistribute self.hspec-core_2_11_7;
|
||||
hspec-meta = doDistribute self.hspec-meta_2_11_7;
|
||||
hspec-discover = doDistribute self.hspec-discover_2_11_7;
|
||||
hspec = doDistribute self.hspec_2_11_7;
|
||||
hspec-expectations = doDistribute self.hspec-expectations_0_8_4;
|
||||
bifunctors = doDistribute self.bifunctors_5_6_1;
|
||||
free = doDistribute self.free_5_2;
|
||||
semigroupoids = doDistribute self.semigroupoids_6_0_0_1;
|
||||
doctest = doDistribute self.doctest_0_22_2;
|
||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_1_20231121;
|
||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_0;
|
||||
ghc-lib = doDistribute self.ghc-lib_9_8_1_20231121;
|
||||
megaparsec = doDistribute self.megaparsec_9_6_1;
|
||||
tasty-hspec = doDistribute self.tasty-hspec_1_2_0_4;
|
||||
hedgehog = doDistribute self.hedgehog_1_4;
|
||||
rebase = doDistribute self.rebase_1_20_2;
|
||||
rerebase = doDistribute self.rerebase_1_20_2;
|
||||
aeson = doDistribute self.aeson_2_2_1_0;
|
||||
aeson-pretty = doDistribute self.aeson-pretty_0_8_10;
|
||||
attoparsec-aeson = doDistribute self.attoparsec-aeson_2_2_0_1;
|
||||
ormolu = doDistribute self.ormolu_0_7_3_0;
|
||||
fourmolu = doDistribute (dontCheck self.fourmolu_0_14_1_0);
|
||||
|
||||
# https://github.com/jgm/skylighting/issues/55
|
||||
skylighting-core = dontCheck super.skylighting-core;
|
||||
# Jailbreaks
|
||||
commutative-semigroups = doJailbreak super.commutative-semigroups; # base < 4.19
|
||||
ghc-trace-events = doJailbreak super.ghc-trace-events; # text < 2.1, bytestring < 0.12, base < 4.19
|
||||
primitive-unlifted = doJailbreak super.primitive-unlifted; # bytestring < 0.12
|
||||
newtype-generics = doJailbreak super.newtype-generics; # base < 4.19
|
||||
hw-prim = doJailbreak super.hw-prim; # doctest < 0.22, ghc-prim < 0.11, hedgehog < 1.4
|
||||
hw-fingertree = doJailbreak super.hw-fingertree; # deepseq <1.5, doctest < 0.22, hedgehog < 1.4
|
||||
# Too strict bound on base, believe it or not.
|
||||
# https://github.com/judah/terminfo/pull/55#issuecomment-1876894232
|
||||
terminfo_0_4_1_6 = doJailbreak super.terminfo_0_4_1_6;
|
||||
|
||||
# Break out of "yaml >=0.10.4.0 && <0.11": https://github.com/commercialhaskell/stack/issues/4485
|
||||
stack = doJailbreak super.stack;
|
||||
# Test suite issues
|
||||
unordered-containers = dontCheck super.unordered-containers; # ChasingBottoms doesn't support base 4.20
|
||||
lifted-base = dontCheck super.lifted-base; # doesn't compile with transformers == 0.6.*
|
||||
# https://github.com/wz1000/HieDb/issues/64
|
||||
hiedb = overrideCabal (drv: {
|
||||
testFlags = drv.testFlags or [ ] ++ [
|
||||
"--match" "!/hiedb/Command line/point-info/correctly prints type signatures/"
|
||||
];
|
||||
}) super.hiedb;
|
||||
|
||||
# Unbroken due to hspec* upgrades
|
||||
hspec-api = doDistribute (unmarkBroken super.hspec-api);
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ self: super:
|
||||
|
||||
# GHCJS does not ship with the same core packages as GHC.
|
||||
# https://github.com/ghcjs/ghcjs/issues/676
|
||||
stm = doJailbreak self.stm_2_5_1_0;
|
||||
stm = doJailbreak self.stm_2_5_3_0;
|
||||
exceptions = dontCheck self.exceptions_0_10_7;
|
||||
|
||||
## OTHER PACKAGES
|
||||
|
||||
@@ -49,6 +49,7 @@ broken-packages:
|
||||
- acme-zero # failure in job https://hydra.nixos.org/build/233192937 at 2023-09-02
|
||||
- AC-MiniTest # failure in job https://hydra.nixos.org/build/233216015 at 2023-09-02
|
||||
- acousticbrainz-client # failure in job https://hydra.nixos.org/build/233192638 at 2023-09-02
|
||||
- acquire # failure in job https://hydra.nixos.org/build/245695655 at 2024-01-07
|
||||
- AC-Terminal # failure in job https://hydra.nixos.org/build/233192747 at 2023-09-02
|
||||
- ActionKid # failure in job https://hydra.nixos.org/build/234443624 at 2023-09-13
|
||||
- activehs-base # failure in job https://hydra.nixos.org/build/233254736 at 2023-09-02
|
||||
@@ -81,6 +82,7 @@ broken-packages:
|
||||
- aeson-flatten # failure in job https://hydra.nixos.org/build/233242954 at 2023-09-02
|
||||
- aeson-flowtyped # failure in job https://hydra.nixos.org/build/233245878 at 2023-09-02
|
||||
- aeson-gadt-th # failure in job https://hydra.nixos.org/build/233247060 at 2023-09-02
|
||||
- aeson-generics-typescript # failure in job https://hydra.nixos.org/build/245703304 at 2024-01-07
|
||||
- aeson-injector # failure in job https://hydra.nixos.org/build/233200351 at 2023-09-02
|
||||
- aeson-json-ast # failure in job https://hydra.nixos.org/build/233249406 at 2023-09-02
|
||||
- aeson-lens # failure in job https://hydra.nixos.org/build/233235357 at 2023-09-02
|
||||
@@ -548,7 +550,6 @@ broken-packages:
|
||||
- bytepatch # failure in job https://hydra.nixos.org/build/236678340 at 2023-10-04
|
||||
- bytestring-arbitrary # failure in job https://hydra.nixos.org/build/233195013 at 2023-09-02
|
||||
- bytestring-class # failure in job https://hydra.nixos.org/build/233230793 at 2023-09-02
|
||||
- bytestring-conversion # failure in job https://hydra.nixos.org/build/233211464 at 2023-09-02
|
||||
- bytestring-csv # failure in job https://hydra.nixos.org/build/233215194 at 2023-09-02
|
||||
- bytestring-delta # failure in job https://hydra.nixos.org/build/233207977 at 2023-09-02
|
||||
- bytestring-handle # failure in job https://hydra.nixos.org/build/233192234 at 2023-09-02
|
||||
@@ -613,7 +614,6 @@ broken-packages:
|
||||
- cacophony # failure in job https://hydra.nixos.org/build/233239380 at 2023-09-02
|
||||
- cafeteria-prelude # failure in job https://hydra.nixos.org/build/233254881 at 2023-09-02
|
||||
- cairo-core # failure in job https://hydra.nixos.org/build/233248151 at 2023-09-02
|
||||
- cairo-image # failure in job https://hydra.nixos.org/build/243813080 at 2024-01-01
|
||||
- cake3 # failure in job https://hydra.nixos.org/build/233231662 at 2023-09-02
|
||||
- cal3d # failure in job https://hydra.nixos.org/build/233200357 at 2023-09-02
|
||||
- calamity # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/238601583 at 2023-10-21
|
||||
@@ -828,6 +828,7 @@ broken-packages:
|
||||
- Command # failure in job https://hydra.nixos.org/build/233249718 at 2023-09-02
|
||||
- Commando # failure in job https://hydra.nixos.org/build/233248911 at 2023-09-02
|
||||
- commodities # failure in job https://hydra.nixos.org/build/233239851 at 2023-09-02
|
||||
- commonmark-simple # failure in job https://hydra.nixos.org/build/245703574 at 2024-01-07
|
||||
- Compactable # failure in job https://hydra.nixos.org/build/233227285 at 2023-09-02
|
||||
- compactable # failure in job https://hydra.nixos.org/build/233228106 at 2023-09-02
|
||||
- compact-list # failure in job https://hydra.nixos.org/build/233241961 at 2023-09-02
|
||||
@@ -848,6 +849,7 @@ broken-packages:
|
||||
- compose-trans # failure in job https://hydra.nixos.org/build/233236785 at 2023-09-02
|
||||
- composite-aeson-path # failure in job https://hydra.nixos.org/build/233203114 at 2023-09-02
|
||||
- composite-aeson-refined # failure in job https://hydra.nixos.org/build/233241450 at 2023-09-02
|
||||
- composite-base # failure in job https://hydra.nixos.org/build/245710306 at 2024-01-07
|
||||
- composite-cassava # failure in job https://hydra.nixos.org/build/233241110 at 2023-09-02
|
||||
- composite-dhall # failure in job https://hydra.nixos.org/build/244399630 at 2024-01-01
|
||||
- composite-ekg # failure in job https://hydra.nixos.org/build/233235858 at 2023-09-02
|
||||
@@ -1151,6 +1153,7 @@ broken-packages:
|
||||
- deepseq-magic # failure in job https://hydra.nixos.org/build/233228993 at 2023-09-02
|
||||
- deepseq-th # failure in job https://hydra.nixos.org/build/233233106 at 2023-09-02
|
||||
- definitive-base # failure in job https://hydra.nixos.org/build/233255489 at 2023-09-02
|
||||
- defun-bool # failure in job https://hydra.nixos.org/build/245696015 at 2024-01-07
|
||||
- deiko-config # failure in job https://hydra.nixos.org/build/233210895 at 2023-09-02
|
||||
- deka # failure in job https://hydra.nixos.org/build/233206540 at 2023-09-02
|
||||
- Delta-Lambda # failure in job https://hydra.nixos.org/build/233239406 at 2023-09-02
|
||||
@@ -1513,7 +1516,6 @@ broken-packages:
|
||||
- extensible-data # failure in job https://hydra.nixos.org/build/233198917 at 2023-09-02
|
||||
- extensible-effects-concurrent # failure in job https://hydra.nixos.org/build/233233685 at 2023-09-02
|
||||
- extensioneer # failure in job https://hydra.nixos.org/build/233663099 at 2023-09-02
|
||||
- extensions # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/239249292 at 2023-11-10
|
||||
- external-sort # failure in job https://hydra.nixos.org/build/233244337 at 2023-09-02
|
||||
- extism # failure in job https://hydra.nixos.org/build/233242807 at 2023-09-02
|
||||
- extism-pdk # failure in job https://hydra.nixos.org/build/237239071 at 2023-10-21
|
||||
@@ -2268,6 +2270,7 @@ broken-packages:
|
||||
- hcoap # failure in job https://hydra.nixos.org/build/233233393 at 2023-09-02
|
||||
- hcobs # failure in job https://hydra.nixos.org/build/233230173 at 2023-09-02
|
||||
- hcom # failure in job https://hydra.nixos.org/build/233201664 at 2023-09-02
|
||||
- hcount # failure in job https://hydra.nixos.org/build/245788445 at 2024-01-07
|
||||
- hcron # failure in job https://hydra.nixos.org/build/233235518 at 2023-09-02
|
||||
- hCsound # failure in job https://hydra.nixos.org/build/233254871 at 2023-09-02
|
||||
- hdaemonize-buildfix # failure in job https://hydra.nixos.org/build/233225678 at 2023-09-02
|
||||
@@ -2439,7 +2442,6 @@ broken-packages:
|
||||
- hls-haddock-comments-plugin # failure in job https://hydra.nixos.org/build/233233944 at 2023-09-02
|
||||
- hls-refine-imports-plugin # failure in job https://hydra.nixos.org/build/233211155 at 2023-09-02
|
||||
- hls-selection-range-plugin # failure in job https://hydra.nixos.org/build/233205582 at 2023-09-02
|
||||
- hls-stan-plugin # failure in job https://hydra.nixos.org/build/233246900 at 2023-09-02
|
||||
- hls-tactics-plugin # failure in job https://hydra.nixos.org/build/233238907 at 2023-09-02
|
||||
- hlwm # failure in job https://hydra.nixos.org/build/233235119 at 2023-09-02
|
||||
- hly # failure in job https://hydra.nixos.org/build/233206910 at 2023-09-02
|
||||
@@ -2900,7 +2902,6 @@ broken-packages:
|
||||
- ip-quoter # failure in job https://hydra.nixos.org/build/233234581 at 2023-09-02
|
||||
- iptables-helpers # failure in job https://hydra.nixos.org/build/233198949 at 2023-09-02
|
||||
- IPv6DB # failure in job https://hydra.nixos.org/build/233199983 at 2023-09-02
|
||||
- ircbot # failure in job https://hydra.nixos.org/build/233237219 at 2023-09-02
|
||||
- irc-core # failure in job https://hydra.nixos.org/build/233242138 at 2023-09-02
|
||||
- irc-dcc # failure in job https://hydra.nixos.org/build/233230181 at 2023-09-02
|
||||
- Irc # failure in job https://hydra.nixos.org/build/233230852 at 2023-09-02
|
||||
@@ -3249,6 +3250,7 @@ broken-packages:
|
||||
- linkedhashmap # failure in job https://hydra.nixos.org/build/233234634 at 2023-09-02
|
||||
- linked-list-with-iterator # failure in job https://hydra.nixos.org/build/233220466 at 2023-09-02
|
||||
- linklater # failure in job https://hydra.nixos.org/build/233220508 at 2023-09-02
|
||||
- linnet # failure in job https://hydra.nixos.org/build/245788523 at 2024-01-07
|
||||
- linode # failure in job https://hydra.nixos.org/build/233256512 at 2023-09-02
|
||||
- linode-v4 # failure in job https://hydra.nixos.org/build/233238195 at 2023-09-02
|
||||
- linux-blkid # failure in job https://hydra.nixos.org/build/233220151 at 2023-09-02
|
||||
@@ -3281,7 +3283,6 @@ broken-packages:
|
||||
- ll-picosat # failure in job https://hydra.nixos.org/build/233206257 at 2023-09-02
|
||||
- llsd # failure in job https://hydra.nixos.org/build/233241590 at 2023-09-02
|
||||
- llvm-base # failure in job https://hydra.nixos.org/build/233244366 at 2023-09-02
|
||||
- llvm-ffi # failure in job https://hydra.nixos.org/build/237230725 at 2023-10-21
|
||||
- llvm-general-pure # failure in job https://hydra.nixos.org/build/233246430 at 2023-09-02
|
||||
- llvm-hs # failure in job https://hydra.nixos.org/build/233205149 at 2023-09-02
|
||||
- llvm-ht # failure in job https://hydra.nixos.org/build/233203770 at 2023-09-02
|
||||
@@ -3983,6 +3984,7 @@ broken-packages:
|
||||
- padic # failure in job https://hydra.nixos.org/build/233244747 at 2023-09-02
|
||||
- pads-haskell # failure in job https://hydra.nixos.org/build/233224030 at 2023-09-02
|
||||
- pagarme # failure in job https://hydra.nixos.org/build/233201914 at 2023-09-02
|
||||
- pagerduty # failure in job https://hydra.nixos.org/build/245788462 at 2024-01-07
|
||||
- pagerduty-hs # failure in job https://hydra.nixos.org/build/233220387 at 2023-09-02
|
||||
- pagure-hook-receiver # failure in job https://hydra.nixos.org/build/233245894 at 2023-09-02
|
||||
- PandocAgda # failure in job https://hydra.nixos.org/build/233332745 at 2023-09-02
|
||||
@@ -4680,6 +4682,7 @@ broken-packages:
|
||||
- resource-effect # failure in job https://hydra.nixos.org/build/233253816 at 2023-09-02
|
||||
- resource-embed # failure in job https://hydra.nixos.org/build/233209109 at 2023-09-02
|
||||
- resource-pool-monad # failure in job https://hydra.nixos.org/build/233204199 at 2023-09-02
|
||||
- resourcet-extra # failure in job https://hydra.nixos.org/build/245696134 at 2024-01-07
|
||||
- resourcet-pool # failure in job https://hydra.nixos.org/build/233213894 at 2023-09-02
|
||||
- restartable # failure in job https://hydra.nixos.org/build/233220815 at 2023-09-02
|
||||
- restyle # failure in job https://hydra.nixos.org/build/233199043 at 2023-09-02
|
||||
@@ -4742,6 +4745,7 @@ broken-packages:
|
||||
- rpm # failure in job https://hydra.nixos.org/build/233194513 at 2023-09-02
|
||||
- rpmostree-update # failure in job https://hydra.nixos.org/build/233254709 at 2023-09-02
|
||||
- rrule # failure in job https://hydra.nixos.org/build/233259470 at 2023-09-02
|
||||
- rsi-break # failure in job https://hydra.nixos.org/build/245788743 at 2024-01-07
|
||||
- rspp # failure in job https://hydra.nixos.org/build/233236691 at 2023-09-02
|
||||
- rss2irc # failure in job https://hydra.nixos.org/build/233196081 at 2023-09-02
|
||||
- rstream # failure in job https://hydra.nixos.org/build/233249587 at 2023-09-02
|
||||
@@ -4901,6 +4905,7 @@ broken-packages:
|
||||
- servant-iCalendar # failure in job https://hydra.nixos.org/build/233200493 at 2023-09-02
|
||||
- servant-jquery # failure in job https://hydra.nixos.org/build/233238796 at 2023-09-02
|
||||
- servant-kotlin # failure in job https://hydra.nixos.org/build/233598190 at 2023-09-02
|
||||
- servant-mock # failure in job https://hydra.nixos.org/build/245788431 at 2024-01-07
|
||||
- servant-namedargs # failure in job https://hydra.nixos.org/build/233258674 at 2023-09-02
|
||||
- servant-nix # failure in job https://hydra.nixos.org/build/233236159 at 2023-09-02
|
||||
- servant-pandoc # failure in job https://hydra.nixos.org/build/233203008 at 2023-09-02
|
||||
@@ -4955,6 +4960,7 @@ broken-packages:
|
||||
- shake-cabal-build # failure in job https://hydra.nixos.org/build/233192322 at 2023-09-02
|
||||
- shake-dhall # failure in job https://hydra.nixos.org/build/233246191 at 2023-09-02
|
||||
- shake-extras # failure in job https://hydra.nixos.org/build/233192079 at 2023-09-02
|
||||
- shake-futhark # failure in job https://hydra.nixos.org/build/245711571 at 2024-01-07
|
||||
- shake-minify # failure in job https://hydra.nixos.org/build/233251572 at 2023-09-02
|
||||
- shake-pack # failure in job https://hydra.nixos.org/build/233195211 at 2023-09-02
|
||||
- shake-path # failure in job https://hydra.nixos.org/build/233247617 at 2023-09-02
|
||||
@@ -5010,6 +5016,7 @@ broken-packages:
|
||||
- simple-money # failure in job https://hydra.nixos.org/build/233240744 at 2023-09-02
|
||||
- simple-neural-networks # failure in job https://hydra.nixos.org/build/233226975 at 2023-09-02
|
||||
- simplenote # failure in job https://hydra.nixos.org/build/233225953 at 2023-09-02
|
||||
- simple-pango # failure in job https://hydra.nixos.org/build/245788400 at 2024-01-07
|
||||
- simple-parser # failure in job https://hydra.nixos.org/build/233218275 at 2023-09-02
|
||||
- simple-pipe # failure in job https://hydra.nixos.org/build/233251483 at 2023-09-02
|
||||
- simpleprelude # failure in job https://hydra.nixos.org/build/233259585 at 2023-09-02
|
||||
@@ -5196,7 +5203,6 @@ broken-packages:
|
||||
- staged-gg # failure in job https://hydra.nixos.org/build/233252183 at 2023-09-02
|
||||
- standalone-derive-topdown # failure in job https://hydra.nixos.org/build/233252467 at 2023-09-02
|
||||
- standalone-haddock # failure in job https://hydra.nixos.org/build/233254339 at 2023-09-02
|
||||
- stan # failure in job https://hydra.nixos.org/build/233200000 at 2023-09-02
|
||||
- starling # failure in job https://hydra.nixos.org/build/233255468 at 2023-09-02
|
||||
- starter # failure in job https://hydra.nixos.org/build/233208799 at 2023-09-02
|
||||
- starter-snake-haskell # failure in job https://hydra.nixos.org/build/236685019 at 2023-10-04
|
||||
@@ -5835,6 +5841,7 @@ broken-packages:
|
||||
- uu-cco # failure in job https://hydra.nixos.org/build/233259027 at 2023-09-02
|
||||
- uuid-aeson # failure in job https://hydra.nixos.org/build/233219695 at 2023-09-02
|
||||
- uusi # failure in job https://hydra.nixos.org/build/233201662 at 2023-09-02
|
||||
- uu-tc-error # failure in job https://hydra.nixos.org/build/245696966 at 2024-01-07
|
||||
- uvector # failure in job https://hydra.nixos.org/build/233224782 at 2023-09-02
|
||||
- uxadt # failure in job https://hydra.nixos.org/build/233254972 at 2023-09-02
|
||||
- vabal-lib # failure in job https://hydra.nixos.org/build/233198776 at 2023-09-02
|
||||
@@ -5941,6 +5948,7 @@ broken-packages:
|
||||
- wai-middleware-preprocessor # failure in job https://hydra.nixos.org/build/233227365 at 2023-09-02
|
||||
- wai-middleware-static-caching # failure in job https://hydra.nixos.org/build/233208386 at 2023-09-02
|
||||
- wai-middleware-travisci # failure in job https://hydra.nixos.org/build/233215805 at 2023-09-02
|
||||
- wai-predicates # failure in job https://hydra.nixos.org/build/245788559 at 2024-01-07
|
||||
- wai-problem-details # failure in job https://hydra.nixos.org/build/233227727 at 2023-09-02
|
||||
- wai-rate-limit-postgres # failure in job https://hydra.nixos.org/build/233244097 at 2023-09-02
|
||||
- wai-rate-limit-redis # failure in job https://hydra.nixos.org/build/233207860 at 2023-09-02
|
||||
|
||||
@@ -77,8 +77,6 @@ extra-packages:
|
||||
- crackNum < 3.0 # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
|
||||
- dependent-map == 0.2.4.0 # required by Hasura 1.3.1, 2020-08-20
|
||||
- dependent-sum == 0.4 # required by Hasura 1.3.1, 2020-08-20
|
||||
- dhall == 1.29.0 # required for ats-pkg
|
||||
- dhall == 1.38.1 # required for spago
|
||||
- doctest == 0.18.* # 2021-11-19: closest to stackage version for GHC 9.*
|
||||
- foundation < 0.0.29 # 2022-08-30: last version to support GHC < 8.10
|
||||
- ghc-api-compat == 8.10.7 # 2022-02-17: preserve for GHC 8.10.7
|
||||
@@ -128,7 +126,6 @@ extra-packages:
|
||||
- fourmolu == 0.14.0.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
||||
- ormolu == 0.5.2.0 # 2023-08-08: for hls on ghc 9.0 and 9.2
|
||||
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
||||
- pantry == 0.5.2.1 # needed for stack-2.7.3
|
||||
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
|
||||
- resolv < 0.2 # required to build cabal-install-3.10.1.0 with Stackage LTS 21
|
||||
- sbv == 7.13 # required for pkgs.petrinizer
|
||||
@@ -521,6 +518,7 @@ package-maintainers:
|
||||
- latex
|
||||
- lazyio
|
||||
- linear-programming
|
||||
- llvm-ffi
|
||||
- markov-chain
|
||||
- midi
|
||||
- midi-alsa
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Stackage LTS 21.23
|
||||
# Stackage LTS 21.25
|
||||
# This file is auto-generated by
|
||||
# maintainers/scripts/haskell/update-stackage.sh
|
||||
default-package-overrides:
|
||||
@@ -10,12 +10,12 @@ default-package-overrides:
|
||||
- ace ==0.6
|
||||
- acid-state ==0.16.1.3
|
||||
- action-permutations ==0.0.0.1
|
||||
- active ==0.2.0.18
|
||||
- active ==0.2.1
|
||||
- ad ==4.5.4
|
||||
- ad-delcont ==0.3.0.0
|
||||
- adjunctions ==4.4.2
|
||||
- adler32 ==0.1.2.0
|
||||
- advent-of-code-api ==0.2.8.4
|
||||
- advent-of-code-api ==0.2.9.1
|
||||
- aern2-mp ==0.2.15.1
|
||||
- aern2-real ==0.2.15
|
||||
- aeson ==2.1.2.1
|
||||
@@ -31,8 +31,8 @@ default-package-overrides:
|
||||
- aeson-pretty ==0.8.9
|
||||
- aeson-qq ==0.8.4
|
||||
- aeson-schemas ==1.4.1.0
|
||||
- aeson-typescript ==0.6.0.0
|
||||
- aeson-value-parser ==0.19.7.1
|
||||
- aeson-typescript ==0.6.1.0
|
||||
- aeson-value-parser ==0.19.7.2
|
||||
- aeson-yak ==0.1.1.3
|
||||
- aeson-yaml ==1.1.0.1
|
||||
- agda2lagda ==0.2023.6.9
|
||||
@@ -46,7 +46,7 @@ default-package-overrides:
|
||||
- Allure ==0.11.0.0
|
||||
- almost-fix ==0.0.2
|
||||
- alsa-core ==0.5.0.1
|
||||
- alsa-mixer ==0.3.0
|
||||
- alsa-mixer ==0.3.0.1
|
||||
- alsa-pcm ==0.6.1.1
|
||||
- alsa-seq ==0.6.0.9
|
||||
- alternative-vector ==0.0.0
|
||||
@@ -107,13 +107,13 @@ default-package-overrides:
|
||||
- attoparsec-aeson ==2.1.0.0
|
||||
- attoparsec-base64 ==0.0.0
|
||||
- attoparsec-binary ==0.2
|
||||
- attoparsec-data ==1.0.5.3
|
||||
- attoparsec-data ==1.0.5.4
|
||||
- attoparsec-expr ==0.1.1.2
|
||||
- attoparsec-framer ==0.1.0.1
|
||||
- attoparsec-iso8601 ==1.1.0.0
|
||||
- attoparsec-path ==0.0.0.1
|
||||
- attoparsec-run ==0.0.2.0
|
||||
- attoparsec-time ==1.0.3
|
||||
- attoparsec-time ==1.0.3.1
|
||||
- audacity ==0.0.2.1
|
||||
- authenticate ==1.3.5.2
|
||||
- authenticate-oauth ==1.7
|
||||
@@ -182,7 +182,7 @@ default-package-overrides:
|
||||
- binary-instances ==1.0.4
|
||||
- binary-list ==1.1.1.2
|
||||
- binary-orphans ==1.0.4.1
|
||||
- binary-parser ==0.5.7.4
|
||||
- binary-parser ==0.5.7.5
|
||||
- binary-search ==2.0.0
|
||||
- binary-shared ==0.8.3
|
||||
- binary-tagged ==0.3.1
|
||||
@@ -231,7 +231,7 @@ default-package-overrides:
|
||||
- BoundedChan ==1.0.3.0
|
||||
- bounded-queue ==1.0.0
|
||||
- boundingboxes ==0.2.3
|
||||
- box ==0.9.2.0
|
||||
- box ==0.9.2.1
|
||||
- boxes ==0.1.5
|
||||
- breakpoint ==0.1.2.2
|
||||
- brick ==1.9
|
||||
@@ -260,7 +260,7 @@ default-package-overrides:
|
||||
- byteorder ==1.0.4
|
||||
- bytes ==0.17.3
|
||||
- byteset ==0.1.1.1
|
||||
- byteslice ==0.2.11.1
|
||||
- byteslice ==0.2.12.0
|
||||
- bytesmith ==0.3.10.0
|
||||
- bytestring-builder ==0.10.8.2.0
|
||||
- bytestring-lexing ==0.5.0.11
|
||||
@@ -287,7 +287,7 @@ default-package-overrides:
|
||||
- calendar-recycling ==0.0.0.1
|
||||
- call-alloy ==0.4.0.3
|
||||
- calligraphy ==0.1.6
|
||||
- call-plantuml ==0.0.1.2
|
||||
- call-plantuml ==0.0.1.3
|
||||
- call-stack ==0.4.0
|
||||
- can-i-haz ==0.3.1.1
|
||||
- capability ==0.5.0.1
|
||||
@@ -311,7 +311,7 @@ default-package-overrides:
|
||||
- cereal ==0.5.8.3
|
||||
- cereal-conduit ==0.8.0
|
||||
- cereal-text ==0.1.0.2
|
||||
- cereal-unordered-containers ==0.1
|
||||
- cereal-unordered-containers ==0.1.0.1
|
||||
- cereal-vector ==0.2.0.1
|
||||
- cfenv ==0.1.0.0
|
||||
- cgi ==3001.5.0.1
|
||||
@@ -371,9 +371,9 @@ default-package-overrides:
|
||||
- comfort-fftw ==0.0.0.1
|
||||
- comfort-glpk ==0.1
|
||||
- comfort-graph ==0.0.4
|
||||
- commonmark ==0.2.4
|
||||
- commonmark-extensions ==0.2.4
|
||||
- commonmark-pandoc ==0.2.1.3
|
||||
- commonmark ==0.2.4.1
|
||||
- commonmark-extensions ==0.2.5.1
|
||||
- commonmark-pandoc ==0.2.2
|
||||
- commutative ==0.0.2
|
||||
- commutative-semigroups ==0.1.0.1
|
||||
- comonad ==5.0.8
|
||||
@@ -394,7 +394,7 @@ default-package-overrides:
|
||||
- concurrent-output ==1.10.20
|
||||
- concurrent-split ==0.0.1.1
|
||||
- cond ==0.4.1.1
|
||||
- conduino ==0.2.2.0
|
||||
- conduino ==0.2.4.0
|
||||
- conduit ==1.3.5
|
||||
- conduit-aeson ==0.1.0.1
|
||||
- conduit-algorithms ==0.0.13.0
|
||||
@@ -416,7 +416,7 @@ default-package-overrides:
|
||||
- constraints ==0.13.4
|
||||
- constraints-extras ==0.4.0.0
|
||||
- constraint-tuples ==0.1.2
|
||||
- context ==0.2.0.2
|
||||
- context ==0.2.0.3
|
||||
- context-http-client ==0.2.0.2
|
||||
- context-resource ==0.2.0.2
|
||||
- context-wai-middleware ==0.2.0.2
|
||||
@@ -546,7 +546,7 @@ default-package-overrides:
|
||||
- Decimal ==0.5.2
|
||||
- declarative ==0.5.4
|
||||
- deepseq-generics ==0.2.0.0
|
||||
- deferred-folds ==0.9.18.5
|
||||
- deferred-folds ==0.9.18.6
|
||||
- dejafu ==2.4.0.5
|
||||
- dense-linear-algebra ==0.1.0.0
|
||||
- dependent-map ==0.4.0.0
|
||||
@@ -579,7 +579,7 @@ default-package-overrides:
|
||||
- di-df1 ==1.2.1
|
||||
- Diff ==0.4.1
|
||||
- diff-loc ==0.1.0.0
|
||||
- digest ==0.0.1.7
|
||||
- digest ==0.0.2.0
|
||||
- digits ==0.3.1
|
||||
- di-handle ==1.0.1
|
||||
- dimensional ==1.5
|
||||
@@ -613,11 +613,11 @@ default-package-overrides:
|
||||
- doctest-parallel ==0.3.1
|
||||
- doldol ==0.4.1.2
|
||||
- do-list ==1.0.1
|
||||
- domain ==0.1.1.4
|
||||
- domain-aeson ==0.1.1.1
|
||||
- domain-cereal ==0.1
|
||||
- domain-core ==0.1.0.3
|
||||
- domain-optics ==0.1.0.3
|
||||
- domain ==0.1.1.5
|
||||
- domain-aeson ==0.1.1.2
|
||||
- domain-cereal ==0.1.0.1
|
||||
- domain-core ==0.1.0.4
|
||||
- domain-optics ==0.1.0.4
|
||||
- do-notation ==0.1.0.2
|
||||
- dot ==0.3
|
||||
- dotenv ==0.11.0.2
|
||||
@@ -662,7 +662,7 @@ default-package-overrides:
|
||||
- elerea ==2.9.0
|
||||
- elf ==0.31
|
||||
- eliminators ==0.9.2
|
||||
- elm2nix ==0.3.0
|
||||
- elm2nix ==0.3.1
|
||||
- elm-bridge ==0.8.2
|
||||
- elm-core-sources ==1.0.0
|
||||
- elm-export ==0.6.0.1
|
||||
@@ -799,7 +799,7 @@ default-package-overrides:
|
||||
- foreign-store ==0.2
|
||||
- ForestStructures ==0.0.1.1
|
||||
- forkable-monad ==0.2.0.3
|
||||
- formatn ==0.3.0
|
||||
- formatn ==0.3.0.1
|
||||
- format-numbers ==0.1.0.1
|
||||
- formatting ==7.2.0
|
||||
- foundation ==0.0.30
|
||||
@@ -963,7 +963,7 @@ default-package-overrides:
|
||||
- graphql-client ==1.2.2
|
||||
- graphs ==0.7.2
|
||||
- graphula ==2.0.2.2
|
||||
- graphviz ==2999.20.1.0
|
||||
- graphviz ==2999.20.2.0
|
||||
- graph-wrapper ==0.2.6.0
|
||||
- gravatar ==0.8.1
|
||||
- gridtables ==0.1.0.0
|
||||
@@ -982,7 +982,7 @@ default-package-overrides:
|
||||
- haddock-library ==1.11.0
|
||||
- haha ==0.3.1.1
|
||||
- hakyll ==4.16.2.0
|
||||
- hal ==1.0.0.1
|
||||
- hal ==1.0.1
|
||||
- half ==0.3.1
|
||||
- hall-symbols ==0.1.0.6
|
||||
- hamlet ==1.2.0
|
||||
@@ -997,7 +997,7 @@ default-package-overrides:
|
||||
- happy-meta ==0.2.1.0
|
||||
- harp ==0.4.3.6
|
||||
- HasBigDecimal ==0.2.0.0
|
||||
- hasbolt ==0.1.6.3
|
||||
- hasbolt ==0.1.7.0
|
||||
- hashable ==1.4.3.0
|
||||
- hashing ==0.1.1.0
|
||||
- hashmap ==1.3.3
|
||||
@@ -1027,7 +1027,7 @@ default-package-overrides:
|
||||
- hasql-optparse-applicative ==0.7
|
||||
- hasql-pool ==0.9.0.1
|
||||
- hasql-queue ==1.2.0.2
|
||||
- hasql-th ==0.4.0.18
|
||||
- hasql-th ==0.4.0.19
|
||||
- hasql-transaction ==1.0.1.2
|
||||
- has-transformers ==0.1.0.4
|
||||
- hasty-hamiltonian ==1.3.4
|
||||
@@ -1038,7 +1038,7 @@ default-package-overrides:
|
||||
- hdaemonize ==0.5.7
|
||||
- HDBC ==2.4.0.4
|
||||
- HDBC-session ==0.1.2.1
|
||||
- headed-megaparsec ==0.2.1.2
|
||||
- headed-megaparsec ==0.2.1.3
|
||||
- heap ==1.0.4
|
||||
- heaps ==0.4
|
||||
- heatshrink ==0.1.0.0
|
||||
@@ -1208,7 +1208,7 @@ default-package-overrides:
|
||||
- http-link-header ==1.2.1
|
||||
- http-media ==0.8.1.1
|
||||
- http-query ==0.1.3
|
||||
- http-reverse-proxy ==0.6.0.1
|
||||
- http-reverse-proxy ==0.6.0.2
|
||||
- http-streams ==0.8.9.9
|
||||
- http-types ==0.12.4
|
||||
- human-readable-duration ==0.2.1.4
|
||||
@@ -1321,7 +1321,7 @@ default-package-overrides:
|
||||
- IPv6Addr ==2.0.5.1
|
||||
- ipynb ==0.2
|
||||
- ipython-kernel ==0.10.3.0
|
||||
- irc ==0.6.1.0
|
||||
- irc ==0.6.1.1
|
||||
- irc-ctcp ==0.1.3.1
|
||||
- isbn ==1.1.0.4
|
||||
- islink ==0.1.0.0
|
||||
@@ -1329,7 +1329,7 @@ default-package-overrides:
|
||||
- iso639 ==0.1.0.3
|
||||
- iso8601-time ==0.1.5
|
||||
- isocline ==1.0.9
|
||||
- isomorphism-class ==0.1.0.11
|
||||
- isomorphism-class ==0.1.0.12
|
||||
- iterable ==3.0
|
||||
- ix-shapable ==0.1.0
|
||||
- jack ==0.7.2.2
|
||||
@@ -1445,7 +1445,7 @@ default-package-overrides:
|
||||
- linear-base ==0.3.1
|
||||
- linear-circuit ==0.1.0.4
|
||||
- linear-generics ==0.2.1
|
||||
- linear-programming ==0.0
|
||||
- linear-programming ==0.0.0.1
|
||||
- linebreak ==1.1.0.4
|
||||
- linux-capabilities ==0.1.1.0
|
||||
- linux-file-extents ==0.2.0.0
|
||||
@@ -1593,7 +1593,7 @@ default-package-overrides:
|
||||
- monadlist ==0.0.2
|
||||
- monadloc ==0.7.1
|
||||
- monad-logger ==0.3.40
|
||||
- monad-logger-aeson ==0.4.1.1
|
||||
- monad-logger-aeson ==0.4.1.2
|
||||
- monad-logger-json ==0.1.0.0
|
||||
- monad-logger-logstash ==0.2.0.2
|
||||
- monad-loops ==0.4.3
|
||||
@@ -1709,7 +1709,7 @@ default-package-overrides:
|
||||
- nonce ==1.0.7
|
||||
- nondeterminism ==1.5
|
||||
- non-empty ==0.3.5
|
||||
- nonempty-containers ==0.3.4.4
|
||||
- nonempty-containers ==0.3.4.5
|
||||
- nonemptymap ==0.0.6.0
|
||||
- non-empty-sequence ==0.2.0.4
|
||||
- nonempty-vector ==0.2.3
|
||||
@@ -1720,7 +1720,7 @@ default-package-overrides:
|
||||
- nothunks ==0.1.5
|
||||
- no-value ==1.0.0.0
|
||||
- nowdoc ==0.1.1.0
|
||||
- nqe ==0.6.4
|
||||
- nqe ==0.6.5
|
||||
- nsis ==0.3.3
|
||||
- numbers ==3000.2.0.2
|
||||
- numeric-extras ==0.1
|
||||
@@ -1742,7 +1742,7 @@ default-package-overrides:
|
||||
- ofx ==0.4.4.0
|
||||
- oidc-client ==0.7.0.1
|
||||
- old-locale ==1.0.0.7
|
||||
- old-time ==1.1.0.3
|
||||
- old-time ==1.1.0.4
|
||||
- once ==0.4
|
||||
- one-liner ==2.1
|
||||
- one-liner-instances ==0.1.3.0
|
||||
@@ -1774,7 +1774,7 @@ default-package-overrides:
|
||||
- optics-operators ==0.1.0.1
|
||||
- optics-th ==0.4.1
|
||||
- optics-vl ==0.2.1
|
||||
- optima ==0.4.0.4
|
||||
- optima ==0.4.0.5
|
||||
- optional-args ==1.0.2
|
||||
- options ==1.2.1.1
|
||||
- optparse-applicative ==0.17.1.0
|
||||
@@ -1856,13 +1856,13 @@ default-package-overrides:
|
||||
- persistent-lens ==1.0.0
|
||||
- persistent-mongoDB ==2.13.0.1
|
||||
- persistent-mtl ==0.5.0.1
|
||||
- persistent-mysql ==2.13.1.4
|
||||
- persistent-mysql ==2.13.1.5
|
||||
- persistent-pagination ==0.1.1.2
|
||||
- persistent-postgresql ==2.13.6.1
|
||||
- persistent-qq ==2.12.0.6
|
||||
- persistent-redis ==2.13.0.1
|
||||
- persistent-refs ==0.4
|
||||
- persistent-sqlite ==2.13.2.0
|
||||
- persistent-sqlite ==2.13.3.0
|
||||
- persistent-template ==2.12.0.0
|
||||
- persistent-test ==2.13.1.3
|
||||
- persistent-typed-db ==0.1.0.7
|
||||
@@ -1917,14 +1917,14 @@ default-package-overrides:
|
||||
- posix-pty ==0.2.2
|
||||
- possibly ==1.0.0.0
|
||||
- postgres-options ==0.2.1.0
|
||||
- postgresql-binary ==0.13.1.1
|
||||
- postgresql-binary ==0.13.1.2
|
||||
- postgresql-libpq ==0.9.5.0
|
||||
- postgresql-libpq-notify ==0.2.0.0
|
||||
- postgresql-migration ==0.2.1.7
|
||||
- postgresql-schema ==0.1.14
|
||||
- postgresql-simple ==0.6.5.1
|
||||
- postgresql-simple-url ==0.2.1.0
|
||||
- postgresql-syntax ==0.4.1
|
||||
- postgresql-syntax ==0.4.1.1
|
||||
- postgresql-typed ==0.6.2.2
|
||||
- post-mess-age ==0.2.1.0
|
||||
- pptable ==0.3.0.0
|
||||
@@ -1984,7 +1984,7 @@ default-package-overrides:
|
||||
- psqueues ==0.2.8.0
|
||||
- pthread ==0.2.1
|
||||
- ptr ==0.16.8.5
|
||||
- ptr-poker ==0.1.2.13
|
||||
- ptr-poker ==0.1.2.14
|
||||
- pulse-simple ==0.1.14
|
||||
- pureMD5 ==2.1.4
|
||||
- purescript-bridge ==0.15.0.0
|
||||
@@ -2144,7 +2144,7 @@ default-package-overrides:
|
||||
- s3-signer ==0.5.0.0
|
||||
- safe ==0.3.19
|
||||
- safe-coloured-text ==0.2.0.1
|
||||
- safe-coloured-text-gen ==0.0.0.1
|
||||
- safe-coloured-text-gen ==0.0.0.2
|
||||
- safe-coloured-text-layout ==0.0.0.0
|
||||
- safe-coloured-text-layout-gen ==0.0.0.0
|
||||
- safe-coloured-text-terminfo ==0.1.0.0
|
||||
@@ -2172,8 +2172,8 @@ default-package-overrides:
|
||||
- say ==0.1.0.1
|
||||
- sbp ==4.15.0
|
||||
- sbv ==10.2
|
||||
- scalpel ==0.6.2.1
|
||||
- scalpel-core ==0.6.2.1
|
||||
- scalpel ==0.6.2.2
|
||||
- scalpel-core ==0.6.2.2
|
||||
- scanf ==0.1.0.0
|
||||
- scanner ==0.3.1
|
||||
- scheduler ==2.0.0.1
|
||||
@@ -2199,7 +2199,7 @@ default-package-overrides:
|
||||
- semirings ==0.6
|
||||
- semiring-simple ==1.0.0.1
|
||||
- semver ==0.4.0.1
|
||||
- sendfile ==0.7.11.4
|
||||
- sendfile ==0.7.11.5
|
||||
- sendgrid-v3 ==1.0.0.1
|
||||
- seqalign ==0.2.0.4
|
||||
- seqid ==0.6.3
|
||||
@@ -2577,7 +2577,7 @@ default-package-overrides:
|
||||
- these-optics ==1.0.1.2
|
||||
- these-skinny ==0.7.5
|
||||
- th-expand-syns ==0.4.11.0
|
||||
- th-lego ==0.3.0.2
|
||||
- th-lego ==0.3.0.3
|
||||
- th-lift ==0.8.4
|
||||
- th-lift-instances ==0.1.20
|
||||
- th-nowq ==0.1.0.5
|
||||
@@ -2595,7 +2595,7 @@ default-package-overrides:
|
||||
- th-utilities ==0.2.5.0
|
||||
- thyme ==0.4
|
||||
- tidal ==1.9.4
|
||||
- tidal-link ==1.0.1
|
||||
- tidal-link ==1.0.2
|
||||
- tile ==0.3.0.0
|
||||
- time-compat ==1.9.6.1
|
||||
- time-domain ==0.1.0.2
|
||||
@@ -2724,7 +2724,7 @@ default-package-overrides:
|
||||
- universe-some ==1.2.1
|
||||
- universum ==1.8.2
|
||||
- unix-bytestring ==0.4.0
|
||||
- unix-compat ==0.7
|
||||
- unix-compat ==0.7.1
|
||||
- unix-time ==0.4.11
|
||||
- unjson ==0.15.4
|
||||
- unliftio ==0.2.25.0
|
||||
@@ -2772,10 +2772,10 @@ default-package-overrides:
|
||||
- vector-algorithms ==0.9.0.1
|
||||
- vector-binary-instances ==0.2.5.2
|
||||
- vector-buffer ==0.4.1
|
||||
- vector-builder ==0.3.8.4
|
||||
- vector-builder ==0.3.8.5
|
||||
- vector-bytes-instances ==0.1.1
|
||||
- vector-extras ==0.2.8.1
|
||||
- vector-hashtables ==0.1.1.3
|
||||
- vector-hashtables ==0.1.1.4
|
||||
- vector-instances ==3.4.2
|
||||
- vector-mmap ==0.0.3
|
||||
- vector-rotcev ==0.1.0.2
|
||||
@@ -2796,7 +2796,7 @@ default-package-overrides:
|
||||
- vivid-supercollider ==0.4.1.2
|
||||
- void ==0.7.3
|
||||
- vty ==5.38
|
||||
- wai ==3.2.3
|
||||
- wai ==3.2.4
|
||||
- wai-app-static ==3.1.8
|
||||
- wai-cli ==0.2.3
|
||||
- wai-conduit ==3.0.0.4
|
||||
@@ -2913,8 +2913,8 @@ default-package-overrides:
|
||||
- xss-sanitize ==0.3.7.2
|
||||
- xxhash-ffi ==0.2.0.0
|
||||
- yaml ==0.11.11.2
|
||||
- yaml-unscrambler ==0.1.0.17
|
||||
- Yampa ==0.14.5
|
||||
- yaml-unscrambler ==0.1.0.18
|
||||
- Yampa ==0.14.6
|
||||
- yarn-lock ==0.6.5
|
||||
- yeshql-core ==4.2.0.0
|
||||
- yesod ==1.6.2.1
|
||||
|
||||
@@ -806,6 +806,7 @@ dont-distribute-packages:
|
||||
- chart-svg
|
||||
- chart-svg-various
|
||||
- chart-unit
|
||||
- chassis
|
||||
- cheapskate-highlight
|
||||
- cheapskate-lucid
|
||||
- cheapskate-terminal
|
||||
@@ -911,7 +912,20 @@ dont-distribute-packages:
|
||||
- comonad-random
|
||||
- compaREST
|
||||
- compact-mutable
|
||||
- compdoc
|
||||
- compdoc-dhall-decoder
|
||||
- complexity
|
||||
- composite-aeson
|
||||
- composite-aeson-cofree-list
|
||||
- composite-aeson-throw
|
||||
- composite-aeson-writeonly
|
||||
- composite-binary
|
||||
- composite-hashable
|
||||
- composite-ix
|
||||
- composite-lens-extra
|
||||
- composite-tuple
|
||||
- composite-xml
|
||||
- composite-xstep
|
||||
- comprehensions-ghc
|
||||
- computational-algebra
|
||||
- concraft
|
||||
@@ -1071,6 +1085,7 @@ dont-distribute-packages:
|
||||
- definitive-parser
|
||||
- definitive-reactive
|
||||
- definitive-sound
|
||||
- defun
|
||||
- deka-tests
|
||||
- delaunay
|
||||
- delicious
|
||||
@@ -1983,7 +1998,6 @@ dont-distribute-packages:
|
||||
- hcg-minus-cairo
|
||||
- hcheat
|
||||
- hcheckers
|
||||
- hcount
|
||||
- hcube
|
||||
- hdbi
|
||||
- hdbi-conduit
|
||||
@@ -2161,6 +2175,7 @@ dont-distribute-packages:
|
||||
- hslogstash
|
||||
- hsparql
|
||||
- hspec-expectations-pretty
|
||||
- hspec-formatter-github
|
||||
- hspec-pg-transact
|
||||
- hspec-setup
|
||||
- hspec-shouldbe
|
||||
@@ -2242,6 +2257,7 @@ dont-distribute-packages:
|
||||
- hyena
|
||||
- hylotab
|
||||
- hyloutils
|
||||
- hyperbole
|
||||
- hyperpublic
|
||||
- i
|
||||
- iException
|
||||
@@ -2529,7 +2545,6 @@ dont-distribute-packages:
|
||||
- linearscan-hoopl
|
||||
- linkchk
|
||||
- linkcore
|
||||
- linnet
|
||||
- linnet-aeson
|
||||
- linnet-conduit
|
||||
- linux-ptrace
|
||||
@@ -2715,6 +2730,8 @@ dont-distribute-packages:
|
||||
- modular-prelude-classy
|
||||
- modularity
|
||||
- modulo
|
||||
- moffy-samples-gtk4
|
||||
- moffy-samples-gtk4-run
|
||||
- mole
|
||||
- monad-exception
|
||||
- monad-http
|
||||
@@ -2745,7 +2762,6 @@ dont-distribute-packages:
|
||||
- mpretty
|
||||
- mprover
|
||||
- mps
|
||||
- mptcp
|
||||
- mptcp-pm
|
||||
- mptcpanalyzer
|
||||
- msgpack-aeson
|
||||
@@ -2947,7 +2963,6 @@ dont-distribute-packages:
|
||||
- overload
|
||||
- package-o-tron
|
||||
- padKONTROL
|
||||
- pagerduty
|
||||
- pairing
|
||||
- panda
|
||||
- pandoc-highlighting-extensions
|
||||
@@ -3229,7 +3244,6 @@ dont-distribute-packages:
|
||||
- quiver-interleave
|
||||
- quiver-sort
|
||||
- qux
|
||||
- rabocsv2qif
|
||||
- rail-compiler-editor
|
||||
- rails-session
|
||||
- rainbow-tests
|
||||
@@ -3281,7 +3295,6 @@ dont-distribute-packages:
|
||||
- redHandlers
|
||||
- reddit
|
||||
- redis-io
|
||||
- redis-resp
|
||||
- rediscaching-haxl
|
||||
- reduce-equations
|
||||
- refh
|
||||
@@ -3524,6 +3537,7 @@ dont-distribute-packages:
|
||||
- serpentine
|
||||
- serv
|
||||
- serv-wai
|
||||
- servant-aeson-generics-typescript
|
||||
- servant-auth-hmac
|
||||
- servant-auth-token
|
||||
- servant-auth-token-acid
|
||||
@@ -3540,7 +3554,6 @@ dont-distribute-packages:
|
||||
- servant-haxl-client
|
||||
- servant-http2-client
|
||||
- servant-matrix-param
|
||||
- servant-mock
|
||||
- servant-oauth2
|
||||
- servant-oauth2-examples
|
||||
- servant-openapi3
|
||||
@@ -3596,12 +3609,10 @@ dont-distribute-packages:
|
||||
- silvi
|
||||
- simgi
|
||||
- simple-c-value
|
||||
- simple-cairo
|
||||
- simple-firewire
|
||||
- simple-log-syslog
|
||||
- simple-logging
|
||||
- simple-nix
|
||||
- simple-pango
|
||||
- simple-pascal
|
||||
- simple-postgresql-orm
|
||||
- simpleirc-lens
|
||||
@@ -4127,7 +4138,6 @@ dont-distribute-packages:
|
||||
- wai-middleware-route
|
||||
- wai-middleware-validation
|
||||
- wai-middleware-verbs
|
||||
- wai-predicates
|
||||
- wai-route
|
||||
- wai-routing
|
||||
- wai-session-alt
|
||||
@@ -4157,7 +4167,6 @@ dont-distribute-packages:
|
||||
- webcrank-wai
|
||||
- webdriver-w3c
|
||||
- webgear-openapi
|
||||
- webgear-server
|
||||
- webify
|
||||
- webserver
|
||||
- websockets-rpc
|
||||
|
||||
@@ -114,6 +114,7 @@ self: super: builtins.intersectAttrs super {
|
||||
}))
|
||||
super)
|
||||
hls-brittany-plugin
|
||||
hls-stan-plugin
|
||||
hls-floskell-plugin
|
||||
hls-fourmolu-plugin
|
||||
hls-overloaded-record-dot-plugin
|
||||
@@ -328,6 +329,11 @@ self: super: builtins.intersectAttrs super {
|
||||
# Heist's test suite requires system pandoc
|
||||
heist = addTestToolDepend pkgs.pandoc super.heist;
|
||||
|
||||
# Use Nixpkgs' double-conversion library
|
||||
double-conversion = disableCabalFlag "embedded_double_conversion" (
|
||||
addBuildDepends [ pkgs.double-conversion ] super.double-conversion
|
||||
);
|
||||
|
||||
# https://github.com/NixOS/cabal2nix/issues/136 and https://github.com/NixOS/cabal2nix/issues/216
|
||||
gio = lib.pipe super.gio
|
||||
[ (disableHardening ["fortify"])
|
||||
@@ -422,7 +428,7 @@ self: super: builtins.intersectAttrs super {
|
||||
hasql-interpolate = dontCheck super.hasql-interpolate;
|
||||
hasql-notifications = dontCheck super.hasql-notifications;
|
||||
hasql-pool = dontCheck super.hasql-pool;
|
||||
hasql-pool_0_10 = dontCheck super.hasql-pool_0_10;
|
||||
hasql-pool_0_10_0_1 = doDistribute (dontCheck super.hasql-pool_0_10_0_1);
|
||||
hasql-transaction = dontCheck super.hasql-transaction;
|
||||
|
||||
# Test suite requires a running postgresql server,
|
||||
@@ -447,9 +453,8 @@ self: super: builtins.intersectAttrs super {
|
||||
mime-mail = appendConfigureFlag "--ghc-option=-DMIME_MAIL_SENDMAIL_PATH=\"sendmail\"" super.mime-mail;
|
||||
|
||||
# Help the test suite find system timezone data.
|
||||
tz = overrideCabal (drv: {
|
||||
preConfigure = "export TZDIR=${pkgs.tzdata}/share/zoneinfo";
|
||||
}) super.tz;
|
||||
tz = addBuildDepends [ pkgs.tzdata ] super.tz;
|
||||
tzdata = addBuildDepends [ pkgs.tzdata ] super.tzdata;
|
||||
|
||||
# https://hydra.nixos.org/build/128665302/nixlog/3
|
||||
# Disable tests because they require a running dbus session
|
||||
@@ -490,6 +495,17 @@ self: super: builtins.intersectAttrs super {
|
||||
# requires llvm 9 specifically https://github.com/llvm-hs/llvm-hs/#building-from-source
|
||||
llvm-hs = super.llvm-hs.override { llvm-config = pkgs.llvm_9; };
|
||||
|
||||
# llvm-ffi needs a specific version of LLVM which we hard code here. Since we
|
||||
# can't use pkg-config (LLVM has no official .pc files), we need to pass the
|
||||
# `dev` and `lib` output in, or Cabal will have trouble finding the library.
|
||||
# Since it looks a bit neater having it in a list, we circumvent the singular
|
||||
# LLVM input here.
|
||||
llvm-ffi =
|
||||
addBuildDepends [
|
||||
pkgs.llvmPackages_16.llvm.lib
|
||||
pkgs.llvmPackages_16.llvm.dev
|
||||
] (super.llvm-ffi.override { LLVM = null; });
|
||||
|
||||
# Needs help finding LLVM.
|
||||
spaceprobe = addBuildTool self.buildHaskellPackages.llvmPackages.llvm super.spaceprobe;
|
||||
|
||||
@@ -814,8 +830,9 @@ self: super: builtins.intersectAttrs super {
|
||||
|
||||
# Tests require internet
|
||||
http-download = dontCheck super.http-download;
|
||||
http-download_0_2_1_0 = doDistribute (dontCheck super.http-download_0_2_1_0);
|
||||
pantry = dontCheck super.pantry;
|
||||
pantry_0_5_2_1 = dontCheck super.pantry_0_5_2_1;
|
||||
pantry_0_9_3_1 = dontCheck super.pantry_0_9_3_1;
|
||||
|
||||
# gtk2hs-buildtools is listed in setupHaskellDepends, but we
|
||||
# need it during the build itself, too.
|
||||
@@ -1199,18 +1216,25 @@ self: super: builtins.intersectAttrs super {
|
||||
}) super.procex;
|
||||
|
||||
# Test suite wants to run main executable
|
||||
fourmolu = overrideCabal (drv: {
|
||||
preCheck = drv.preCheck or "" + ''
|
||||
export PATH="$PWD/dist/build/fourmolu:$PATH"
|
||||
'';
|
||||
}) super.fourmolu;
|
||||
# https://github.com/fourmolu/fourmolu/issues/231
|
||||
inherit (
|
||||
let
|
||||
fourmoluTestFix = overrideCabal (drv: {
|
||||
preCheck = drv.preCheck or "" + ''
|
||||
export PATH="$PWD/dist/build/fourmolu:$PATH"
|
||||
'';
|
||||
});
|
||||
in
|
||||
|
||||
# Test suite wants to run main executable
|
||||
fourmolu_0_10_1_0 = overrideCabal (drv: {
|
||||
preCheck = drv.preCheck or "" + ''
|
||||
export PATH="$PWD/dist/build/fourmolu:$PATH"
|
||||
'';
|
||||
}) super.fourmolu_0_10_1_0;
|
||||
{
|
||||
fourmolu = fourmoluTestFix super.fourmolu;
|
||||
fourmolu_0_14_0_0 = fourmoluTestFix super.fourmolu_0_14_0_0;
|
||||
fourmolu_0_14_1_0 = fourmoluTestFix super.fourmolu_0_14_1_0;
|
||||
})
|
||||
fourmolu
|
||||
fourmolu_0_14_0_0
|
||||
fourmolu_0_14_1_0
|
||||
;
|
||||
|
||||
# Test suite needs to execute 'disco' binary
|
||||
disco = overrideCabal (drv: {
|
||||
|
||||
1950
pkgs/development/haskell-modules/hackage-packages.nix
generated
1950
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load Diff
3
pkgs/development/julia-modules/tests/.gitignore
vendored
Normal file
3
pkgs/development/julia-modules/tests/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
test_runs/
|
||||
.stack-work/
|
||||
*~
|
||||
25
pkgs/development/julia-modules/tests/README.md
Normal file
25
pkgs/development/julia-modules/tests/README.md
Normal file
@@ -0,0 +1,25 @@
|
||||
|
||||
# Testing `julia.withPackages`
|
||||
|
||||
This folder contains a test suite for ensuring that the top N most popular Julia packages (as measured by download count) work properly. The key parts are
|
||||
|
||||
* `top-julia-packages.nix`: an impure derivation for fetching Julia download data and processing it into a file called `top-julia-packages.yaml`. This YAML file contains an array of objects with fields "name", "uuid", and "count", and is sorted in decreasing order of count.
|
||||
* `julia-top-n`: a small Haskell program which reads `top-julia-packages.yaml` and builds a `julia.withPackages` environment for each package, with a nice interactive display and configurable parallelism. It also tests whether evaluating `using <package-name>` works in the resulting environment.
|
||||
|
||||
> **Warning:**
|
||||
> These tests should only be run on maintainer machines, not Hydra! `julia.withPackages` uses IFD, which is not allowed in Hydra.
|
||||
|
||||
## Quick start
|
||||
|
||||
``` shell
|
||||
# Test the top 100 Julia packages
|
||||
./run_tests.sh -n 100
|
||||
```
|
||||
|
||||
## Options
|
||||
|
||||
You can run `./run_tests.sh --help` to see additional options for the test harness. The main ones are
|
||||
|
||||
* `-n`/`--top-n`: how many of the top packages to build (default: 100).
|
||||
* `-p`/`--parallelism`: how many builds to run at once (default: 10).
|
||||
* `-c`/`--count-file`: path to `top-julia-packages.yaml`.
|
||||
89
pkgs/development/julia-modules/tests/julia-top-n/app/Main.hs
Normal file
89
pkgs/development/julia-modules/tests/julia-top-n/app/Main.hs
Normal file
@@ -0,0 +1,89 @@
|
||||
{-# LANGUAGE DataKinds #-}
|
||||
{-# LANGUAGE DeriveAnyClass #-}
|
||||
{-# LANGUAGE DeriveGeneric #-}
|
||||
{-# LANGUAGE FlexibleContexts #-}
|
||||
{-# LANGUAGE LambdaCase #-}
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
{-# LANGUAGE RecordWildCards #-}
|
||||
{-# LANGUAGE ScopedTypeVariables #-}
|
||||
{-# LANGUAGE ViewPatterns #-}
|
||||
|
||||
module Main (main) where
|
||||
|
||||
import Control.Exception
|
||||
import Control.Monad
|
||||
import Data.Aeson as A hiding (Options, defaultOptions)
|
||||
import qualified Data.Aeson.Key as A
|
||||
import qualified Data.Aeson.KeyMap as HM
|
||||
import qualified Data.ByteString.Lazy.Char8 as BL8
|
||||
import qualified Data.List as L
|
||||
import Data.Text as T
|
||||
import qualified Data.Vector as V
|
||||
import qualified Data.Yaml as Yaml
|
||||
import GHC.Generics
|
||||
import Options.Applicative
|
||||
import System.Exit
|
||||
import System.FilePath
|
||||
import Test.Sandwich hiding (info)
|
||||
import UnliftIO.MVar
|
||||
import UnliftIO.Process
|
||||
|
||||
|
||||
data Args = Args {
|
||||
countFilePath :: FilePath
|
||||
, topN :: Int
|
||||
, parallelism :: Int
|
||||
}
|
||||
|
||||
argsParser :: Parser Args
|
||||
argsParser = Args
|
||||
<$> strOption (long "count-file" <> short 'c' <> help "YAML file containing package names and counts")
|
||||
<*> option auto (long "top-n" <> short 'n' <> help "How many of the top packages to build" <> showDefault <> value 100 <> metavar "INT")
|
||||
<*> option auto (long "parallelism" <> short 'p' <> help "How many builds to run at once" <> showDefault <> value 10 <> metavar "INT")
|
||||
|
||||
data NameAndCount = NameAndCount {
|
||||
name :: Text
|
||||
, count :: Int
|
||||
, uuid :: Text
|
||||
} deriving (Show, Eq, Generic, FromJSON)
|
||||
|
||||
newtype JuliaPath = JuliaPath FilePath
|
||||
deriving Show
|
||||
|
||||
julia :: Label "julia" (MVar (Maybe JuliaPath))
|
||||
julia = Label
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
clo <- parseCommandLineArgs argsParser (return ())
|
||||
let Args {..} = optUserOptions clo
|
||||
|
||||
namesAndCounts :: [NameAndCount] <- Yaml.decodeFileEither countFilePath >>= \case
|
||||
Left err -> throwIO $ userError ("Couldn't decode names and counts YAML file: " <> show err)
|
||||
Right x -> pure x
|
||||
|
||||
runSandwichWithCommandLineArgs' defaultOptions argsParser $
|
||||
describe ("Building environments for top " <> show topN <> " Julia packages") $
|
||||
parallelN parallelism $
|
||||
forM_ (L.take topN namesAndCounts) $ \(NameAndCount {..}) ->
|
||||
introduce' (defaultNodeOptions { nodeOptionsVisibilityThreshold = 0 }) (T.unpack name) julia (newMVar Nothing) (const $ return ()) $ do
|
||||
it "Builds" $ do
|
||||
let cp = proc "nix" ["build", "--impure", "--no-link", "--json", "--expr"
|
||||
, "with import ../../../../. {}; julia.withPackages [\"" <> T.unpack name <> "\"]"
|
||||
]
|
||||
output <- readCreateProcessWithLogging cp ""
|
||||
juliaPath <- case A.eitherDecode (BL8.pack output) of
|
||||
Right (A.Array ((V.!? 0) -> Just (A.Object (aesonLookup "outputs" -> Just (A.Object (aesonLookup "out" -> Just (A.String t))))))) -> pure (JuliaPath ((T.unpack t) </> "bin" </> "julia"))
|
||||
x -> expectationFailure ("Couldn't parse output: " <> show x)
|
||||
|
||||
getContext julia >>= flip modifyMVar_ (const $ return (Just juliaPath))
|
||||
|
||||
it "Uses" $ do
|
||||
getContext julia >>= readMVar >>= \case
|
||||
Nothing -> expectationFailure "Build step failed."
|
||||
Just (JuliaPath juliaPath) -> do
|
||||
let cp = proc juliaPath ["-e", "using " <> T.unpack name]
|
||||
createProcessWithLogging cp >>= waitForProcess >>= (`shouldBe` ExitSuccess)
|
||||
|
||||
aesonLookup :: Text -> HM.KeyMap v -> Maybe v
|
||||
aesonLookup = HM.lookup . A.fromText
|
||||
16
pkgs/development/julia-modules/tests/julia-top-n/default.nix
Normal file
16
pkgs/development/julia-modules/tests/julia-top-n/default.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{ mkDerivation, aeson, base, filepath, lib, optparse-applicative
|
||||
, sandwich, text, unliftio, yaml
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "julia-top-n";
|
||||
version = "0.1.0.0";
|
||||
src = ./.;
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
executableHaskellDepends = [
|
||||
aeson base filepath optparse-applicative sandwich text unliftio
|
||||
yaml
|
||||
];
|
||||
license = lib.licenses.bsd3;
|
||||
mainProgram = "julia-top-n-exe";
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
cabal-version: 2.2
|
||||
|
||||
-- This file has been generated from package.yaml by hpack version 0.36.0.
|
||||
--
|
||||
-- see: https://github.com/sol/hpack
|
||||
|
||||
name: julia-top-n
|
||||
version: 0.1.0.0
|
||||
author: Tom McLaughlin
|
||||
maintainer: tom@codedown.io
|
||||
license: BSD-3-Clause
|
||||
build-type: Simple
|
||||
|
||||
executable julia-top-n-exe
|
||||
main-is: Main.hs
|
||||
other-modules:
|
||||
Paths_julia_top_n
|
||||
autogen-modules:
|
||||
Paths_julia_top_n
|
||||
hs-source-dirs:
|
||||
app
|
||||
ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N
|
||||
build-depends:
|
||||
aeson
|
||||
, base >=4.7 && <5
|
||||
, bytestring
|
||||
, filepath
|
||||
, optparse-applicative
|
||||
, sandwich
|
||||
, text
|
||||
, unliftio
|
||||
, vector
|
||||
, yaml
|
||||
default-language: Haskell2010
|
||||
@@ -0,0 +1,37 @@
|
||||
name: julia-top-n
|
||||
version: 0.1.0.0
|
||||
license: BSD-3-Clause
|
||||
author: "Tom McLaughlin"
|
||||
maintainer: "tom@codedown.io"
|
||||
|
||||
dependencies:
|
||||
- aeson
|
||||
- base >= 4.7 && < 5
|
||||
- bytestring
|
||||
- filepath
|
||||
- optparse-applicative
|
||||
- sandwich
|
||||
- text
|
||||
- unliftio
|
||||
- vector
|
||||
- yaml
|
||||
|
||||
ghc-options:
|
||||
- -Wall
|
||||
- -Wcompat
|
||||
- -Widentities
|
||||
- -Wincomplete-record-updates
|
||||
- -Wincomplete-uni-patterns
|
||||
- -Wmissing-export-lists
|
||||
- -Wmissing-home-modules
|
||||
- -Wpartial-fields
|
||||
- -Wredundant-constraints
|
||||
|
||||
executables:
|
||||
julia-top-n-exe:
|
||||
main: Main.hs
|
||||
source-dirs: app
|
||||
ghc-options:
|
||||
- -threaded
|
||||
- -rtsopts
|
||||
- -with-rtsopts=-N
|
||||
11
pkgs/development/julia-modules/tests/julia-top-n/stack.yaml
Normal file
11
pkgs/development/julia-modules/tests/julia-top-n/stack.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
|
||||
resolver:
|
||||
url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/4.yaml
|
||||
|
||||
packages:
|
||||
- .
|
||||
|
||||
nix:
|
||||
pure: false
|
||||
packages:
|
||||
- zlib
|
||||
@@ -0,0 +1,13 @@
|
||||
# This file was autogenerated by Stack.
|
||||
# You should not edit this file by hand.
|
||||
# For more information, please see the documentation at:
|
||||
# https://docs.haskellstack.org/en/stable/lock_files
|
||||
|
||||
packages: []
|
||||
snapshots:
|
||||
- completed:
|
||||
sha256: 8b211c5a6aad3787e023dfddaf7de7868968e4f240ecedf14ad1c5b2199046ca
|
||||
size: 714097
|
||||
url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/4.yaml
|
||||
original:
|
||||
url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/4.yaml
|
||||
33
pkgs/development/julia-modules/tests/process_top_n.py
Executable file
33
pkgs/development/julia-modules/tests/process_top_n.py
Executable file
@@ -0,0 +1,33 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i python3 -p "python3.withPackages(ps: with ps; [ pyyaml toml ])"
|
||||
|
||||
import csv
|
||||
from pathlib import Path
|
||||
import sys
|
||||
import toml
|
||||
import yaml
|
||||
|
||||
requests_csv_path = Path(sys.argv[1])
|
||||
registry_path = Path(sys.argv[2])
|
||||
|
||||
# Generate list of tuples (UUID, count)
|
||||
rows = []
|
||||
with open(requests_csv_path) as f:
|
||||
reader = csv.reader(f)
|
||||
for row in reader:
|
||||
if row[2] == "user":
|
||||
# Get UUID and request_count
|
||||
rows.append((row[0], int(row[4])))
|
||||
rows.sort(key=(lambda x: x[1]), reverse=True)
|
||||
|
||||
# Build a map from UUID -> name
|
||||
registry = toml.load(registry_path / "Registry.toml")
|
||||
uuid_to_name = {k: v["name"] for k, v in registry["packages"].items()}
|
||||
|
||||
results = []
|
||||
for (uuid, count) in rows:
|
||||
name = uuid_to_name.get(uuid)
|
||||
if not name: continue
|
||||
results.append({ "uuid": uuid, "name": uuid_to_name.get(uuid), "count": count })
|
||||
|
||||
yaml.dump(results, sys.stdout, default_flow_style=False)
|
||||
15
pkgs/development/julia-modules/tests/run_tests.sh
Executable file
15
pkgs/development/julia-modules/tests/run_tests.sh
Executable file
@@ -0,0 +1,15 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p jq
|
||||
|
||||
set -eo pipefail
|
||||
|
||||
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
cd $SCRIPTDIR
|
||||
|
||||
TOP_N_FILE=$(nix build --impure -f top-julia-packages.nix --no-link --json | jq -r '.[0].outputs.out')
|
||||
echo "Got top Julia packages: $TOP_N_FILE"
|
||||
|
||||
TESTER_PROGRAM=$(nix build --impure --expr 'with import ../../../../. {}; haskellPackages.callPackage ./julia-top-n {}' --no-link --json | jq -r '.[0].outputs.out')/bin/julia-top-n-exe
|
||||
echo "Built tester program: $TESTER_PROGRAM"
|
||||
|
||||
"$TESTER_PROGRAM" --tui -c "$TOP_N_FILE" $*
|
||||
28
pkgs/development/julia-modules/tests/top-julia-packages.nix
Normal file
28
pkgs/development/julia-modules/tests/top-julia-packages.nix
Normal file
@@ -0,0 +1,28 @@
|
||||
with import ../../../../. {};
|
||||
|
||||
let
|
||||
package-requests = stdenv.mkDerivation {
|
||||
name = "julia-package-requests.csv";
|
||||
|
||||
__impure = true;
|
||||
|
||||
buildInputs = [cacert gzip wget];
|
||||
|
||||
buildCommand = ''
|
||||
wget https://julialang-logs.s3.amazonaws.com/public_outputs/current/package_requests.csv.gz
|
||||
gunzip package_requests.csv.gz
|
||||
ls -lh
|
||||
cp package_requests.csv $out
|
||||
'';
|
||||
};
|
||||
|
||||
registry = callPackage ../registry.nix {};
|
||||
|
||||
in
|
||||
|
||||
runCommand "top-julia-packages.yaml" {
|
||||
__impure = true;
|
||||
nativeBuildInputs = [(python3.withPackages (ps: with ps; [pyyaml toml]))];
|
||||
} ''
|
||||
python ${./process_top_n.py} ${package-requests} ${registry} > $out
|
||||
''
|
||||
@@ -46,11 +46,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gvfs";
|
||||
version = "1.52.1";
|
||||
version = "1.52.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gvfs/${lib.versions.majorMinor version}/gvfs-${version}.tar.xz";
|
||||
hash = "sha256-zb1EQPbQh5Km51ISRMFzhuIL1TfTdRFwmfyPto/pF0E=";
|
||||
hash = "sha256-pkOs6qBTyqwNjv+aAV9jbkvRuwnP4nhk40fbZ0YOe5E=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libfilezilla";
|
||||
version = "0.41.0";
|
||||
version = "0.45.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.filezilla-project.org/${pname}/${pname}-${version}.tar.bz2";
|
||||
hash = "sha256-rCodDYKOpgB4fOoefuUNIfDTvZFSzs5hh7ivyQBiKqA=";
|
||||
url = "https://download.filezilla-project.org/${pname}/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-PBRUvBWG0Xd29ix1BdQ6BtOr0uLjVkLMpHf6IvJ9mC8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||
@@ -24,8 +24,8 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ gettext gnutls nettle libxcrypt ]
|
||||
++ lib.optionals stdenv.isDarwin [ libiconv ApplicationServices ];
|
||||
|
||||
preBuild = lib.optionalString (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "11") ''
|
||||
export MACOSX_DEPLOYMENT_TARGET=10.13 # for futimens()
|
||||
preBuild = lib.optionalString (stdenv.isDarwin) ''
|
||||
export MACOSX_DEPLOYMENT_TARGET=11.0
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
@@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
|
||||
description = "A modern C++ library, offering some basic functionality to build high-performing, platform-independent programs";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ pSub ];
|
||||
platforms = platforms.unix;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -61,6 +61,12 @@ stdenv.mkDerivation rec {
|
||||
src = ./osinfo-db-data-dir.patch;
|
||||
osinfo_db_data_dir = "${osinfo-db}/share";
|
||||
})
|
||||
|
||||
# Fix build with libxml 2.12
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/libosinfo/libosinfo/-/commit/5bbdd06503456784c5ffa22409e8bab50470d673.patch";
|
||||
hash = "sha256-KqgHXI+lD5VYp2wtA58Drp15TgNK1O3xCaYBy4/B9wc=";
|
||||
})
|
||||
];
|
||||
|
||||
mesonFlags = [
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fastnlo_toolkit";
|
||||
pname = "fastnlo-toolkit";
|
||||
version = "2.5.0-2826";
|
||||
|
||||
src = fetchurl {
|
||||
@@ -11,14 +11,14 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libxisf";
|
||||
version = "0.2.10";
|
||||
version = "0.2.11";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "gitea.nouspiro.space";
|
||||
owner = "nou";
|
||||
repo = "libXISF";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-ME0x+1VyfuhJCldwJfjQCtfe9XQk1ptmhv4ghOyNuGA=";
|
||||
hash = "sha256-wXIbU9/xUyECluL6k1oKS3NBpoC/qjQdW9e485qmlgo=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -36,6 +36,14 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
url = "https://github.com/valhalla/valhalla/commit/e4845b68e8ef8de9eabb359b23bf34c879e21f2b.patch";
|
||||
hash = "sha256-xCufmXHGj1JxaMwm64JT9FPY+o0+x4glfJSYLdvHI8U=";
|
||||
})
|
||||
|
||||
# Fix gcc-13 build:
|
||||
# https://github.com/valhalla/valhalla/pull/4154
|
||||
(fetchpatch {
|
||||
name = "gcc-13.patch";
|
||||
url = "https://github.com/valhalla/valhalla/commit/ed93f30272377cc6803533a1bb94fe81d14af81c.patch";
|
||||
hash = "sha256-w4pnOqk/Jj3unVuesE64QSecrUIVSqwK69t9xNVc4GA=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, libxml2, gnutls, libxslt, pkg-config, libgcrypt, libtool
|
||||
{ stdenv, fetchurl, fetchpatch, libxml2, gnutls, libxslt, pkg-config, libgcrypt, libtool
|
||||
, openssl, nss, lib, runCommandCC, writeText }:
|
||||
|
||||
lib.fix (self:
|
||||
@@ -13,6 +13,12 @@ stdenv.mkDerivation rec {
|
||||
|
||||
patches = [
|
||||
./lt_dladdsearchdir.patch
|
||||
|
||||
# Fix build with libxml2 2.12
|
||||
(fetchpatch {
|
||||
url = "https://github.com/lsh123/xmlsec/commit/ffb327376f5bb69e8dfe7f805529e45a40118c2b.patch";
|
||||
hash = "sha256-o8CLemOiGIHJsYfVQtNzJNVyk03fdmCbvgA8c3OYxo4=";
|
||||
})
|
||||
] ++ lib.optionals stdenv.isDarwin [ ./remove_bsd_base64_decode_flag.patch ];
|
||||
postPatch = ''
|
||||
substituteAllInPlace src/dl.c
|
||||
|
||||
@@ -31,14 +31,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dbt-core";
|
||||
version = "1.7.3";
|
||||
version = "1.7.4";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dbt-labs";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-sz5d5tV6OP8TJMq73gYwCas+jizGzGEnywmOddgpSJQ=";
|
||||
hash = "sha256-+2tmLclBZrY9SDCKvQ4QNbI4665BtsrEI1sBSY3GVGM=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/core";
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user