Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2022-10-20 00:21:41 +00:00 committed by GitHub
commit 419ac5695d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
149 changed files with 4180 additions and 2858 deletions

View file

@ -78,6 +78,12 @@ in mkLicense lset) ({
url = "https://aomedia.org/license/patent-license/";
};
apsl10 = {
spdxId = "APSL-1.0";
fullName = "Apple Public Source License 1.0";
url = "https://web.archive.org/web/20040701000000*/http://www.opensource.apple.com/apsl/1.0.txt";
};
apsl20 = {
spdxId = "APSL-2.0";
fullName = "Apple Public Source License 2.0";

View file

@ -9078,6 +9078,15 @@
fingerprint = "E90C BA34 55B3 6236 740C 038F 0D94 8CE1 9CF4 9C5F";
}];
};
mktip = {
email = "mo.issa.ok+nix@gmail.com";
github = "mktip";
githubId = 45905717;
name = "Mohammad Issa";
keys = [{
fingerprint = "64BE BF11 96C3 DD7A 443E 8314 1DC0 82FA DE5B A863";
}];
};
mlieberman85 = {
email = "mlieberman85@gmail.com";
github = "mlieberman85";
@ -14474,6 +14483,12 @@
fingerprint = "2145 955E 3F5E 0C95 3458 41B5 11F7 BAEA 8567 43FF";
}];
};
wentam = {
name = "Matt Egeler";
email = "wentam42@gmail.com";
github = "wentam";
githubId = 901583;
};
wentasah = {
name = "Michal Sojka";
email = "wsh@2x.cz";

View file

@ -1501,18 +1501,18 @@
</listitem>
<listitem>
<para>
MultiMC has been replaced with the fork PolyMC due to upstream
developers being hostile to 3rd party package maintainers.
PolyMC removes all MultiMC branding and is aimed at providing
proper 3rd party packages like the one contained in Nixpkgs.
This change affects the data folder where game instances and
other save and configuration files are stored. Users with
existing installations should rename
MultiMC has been replaced with the fork PrismLauncher due to
upstream developers being hostile to 3rd party package
maintainers. PrismLauncher removes all MultiMC branding and is
aimed at providing proper 3rd party packages like the one
contained in Nixpkgs. This change affects the data folder
where game instances and other save and configuration files
are stored. Users with existing installations should rename
<literal>~/.local/share/multimc</literal> to
<literal>~/.local/share/polymc</literal>. The main config
files path has also moved from
<literal>~/.local/share/PrismLauncher</literal>. The main
config files path has also moved from
<literal>~/.local/share/multimc/multimc.cfg</literal> to
<literal>~/.local/share/polymc/polymc.cfg</literal>.
<literal>~/.local/share/PrismLauncher/prismlauncher.cfg</literal>.
</para>
</listitem>
<listitem>

View file

@ -38,6 +38,24 @@
<literal>stdenv.buildPlatform.canExecute stdenv.hostPlatform</literal>.
</para>
</listitem>
<listitem>
<para>
The <literal>polymc</literal> package has been removed due to
a rogue maintainer. It has been replaced by
<literal>prismlauncher</literal>, a fork by the rest of the
maintainers. For more details, see
<link xlink:href="https://github.com/NixOS/nixpkgs/pull/196624">the
pull request that made this change</link> and
<link xlink:href="https://github.com/NixOS/nixpkgs/issues/196460">this
issue detailing the vulnerability</link>. Users with existing
installations should rename
<literal>~/.local/share/polymc</literal> to
<literal>~/.local/share/PrismLauncher</literal>. The main
config files path has also moved from
<literal>~/.local/share/polymc/polymc.cfg</literal> to
<literal>~/.local/share/PrismLauncher/prismlauncher.cfg</literal>.
</para>
</listitem>
<listitem>
<para>
The <literal>nixpkgs.hostPlatform</literal> and

View file

@ -581,7 +581,15 @@ In addition to numerous new and upgraded packages, this release has the followin
- The `miller` package has been upgraded from 5.10.3 to [6.2.0](https://github.com/johnkerl/miller/releases/tag/v6.2.0). See [What's new in Miller 6](https://miller.readthedocs.io/en/latest/new-in-miller-6).
- MultiMC has been replaced with the fork PolyMC due to upstream developers being hostile to 3rd party package maintainers. PolyMC removes all MultiMC branding and is aimed at providing proper 3rd party packages like the one contained in Nixpkgs. This change affects the data folder where game instances and other save and configuration files are stored. Users with existing installations should rename `~/.local/share/multimc` to `~/.local/share/polymc`. The main config file's path has also moved from `~/.local/share/multimc/multimc.cfg` to `~/.local/share/polymc/polymc.cfg`.
- MultiMC has been replaced with the fork PrismLauncher due to upstream
developers being hostile to 3rd party package maintainers. PrismLauncher
removes all MultiMC branding and is aimed at providing proper 3rd party
packages like the one contained in Nixpkgs. This change affects the data
folder where game instances and other save and configuration files are stored.
Users with existing installations should rename `~/.local/share/multimc` to
`~/.local/share/PrismLauncher`. The main config file's path has also moved
from `~/.local/share/multimc/multimc.cfg` to
`~/.local/share/PrismLauncher/prismlauncher.cfg`.
- `systemd-nspawn@.service` settings have been reverted to the default systemd behaviour. User namespaces are now activated by default. If you want to keep running nspawn containers without user namespaces you need to set `systemd.nspawn.<name>.execConfig.PrivateUsers = false`

View file

@ -20,6 +20,16 @@ In addition to numerous new and upgraded packages, this release has the followin
built for `stdenv.hostPlatform` (i.e. produced by `stdenv.cc`) by evaluating
`stdenv.buildPlatform.canExecute stdenv.hostPlatform`.
- The `polymc` package has been removed due to a rogue maintainer. It has been
replaced by `prismlauncher`, a fork by the rest of the maintainers. For more
details, see [the pull request that made this
change](https://github.com/NixOS/nixpkgs/pull/196624) and [this issue
detailing the vulnerability](https://github.com/NixOS/nixpkgs/issues/196460).
Users with existing installations should rename `~/.local/share/polymc` to
`~/.local/share/PrismLauncher`. The main config file's path has also moved
from `~/.local/share/polymc/polymc.cfg` to
`~/.local/share/PrismLauncher/prismlauncher.cfg`.
- The `nixpkgs.hostPlatform` and `nixpkgs.buildPlatform` options have been added.
These cover and override the `nixpkgs.{system,localSystem,crossSystem}` options.

View file

@ -347,6 +347,7 @@
./services/continuous-integration/hercules-ci-agent/default.nix
./services/continuous-integration/hydra/default.nix
./services/continuous-integration/github-runner.nix
./services/continuous-integration/github-runners.nix
./services/continuous-integration/gitlab-runner.nix
./services/continuous-integration/gocd-agent/default.nix
./services/continuous-integration/gocd-server/default.nix

View file

@ -1,396 +1,23 @@
{ config, pkgs, lib, ... }:
{ config
, pkgs
, lib
, ...
}@args:
with lib;
let
cfg = config.services.github-runner;
svcName = "github-runner";
systemdDir = "${svcName}/${cfg.name}";
# %t: Runtime directory root (usually /run); see systemd.unit(5)
runtimeDir = "%t/${systemdDir}";
# %S: State directory root (usually /var/lib); see systemd.unit(5)
stateDir = "%S/${systemdDir}";
# %L: Log directory root (usually /var/log); see systemd.unit(5)
logsDir = "%L/${systemdDir}";
# Name of file stored in service state directory
currentConfigTokenFilename = ".current-token";
in
{
options.services.github-runner = {
enable = mkOption {
default = false;
example = true;
description = lib.mdDoc ''
Whether to enable GitHub Actions runner.
Note: GitHub recommends using self-hosted runners with private repositories only. Learn more here:
[About self-hosted runners](https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners).
'';
type = lib.types.bool;
};
url = mkOption {
type = types.str;
description = lib.mdDoc ''
Repository to add the runner to.
Changing this option triggers a new runner registration.
IMPORTANT: If your token is org-wide (not per repository), you need to
provide a github org link, not a single repository, so do it like this
`https://github.com/nixos`, not like this
`https://github.com/nixos/nixpkgs`.
Otherwise, you are going to get a `404 NotFound`
from `POST https://api.github.com/actions/runner-registration`
in the configure script.
'';
example = "https://github.com/nixos/nixpkgs";
};
tokenFile = mkOption {
type = types.path;
description = lib.mdDoc ''
The full path to a file which contains either a runner registration token or a
personal access token (PAT).
The file should contain exactly one line with the token without any newline.
If a registration token is given, it can be used to re-register a runner of the same
name but is time-limited. If the file contains a PAT, the service creates a new
registration token on startup as needed. Make sure the PAT has a scope of
`admin:org` for organization-wide registrations or a scope of
`repo` for a single repository.
Changing this option or the file's content triggers a new runner registration.
'';
example = "/run/secrets/github-runner/nixos.token";
};
name = mkOption {
# Same pattern as for `networking.hostName`
type = types.strMatching "^$|^[[:alnum:]]([[:alnum:]_-]{0,61}[[:alnum:]])?$";
description = lib.mdDoc ''
Name of the runner to configure. Defaults to the hostname.
Changing this option triggers a new runner registration.
'';
example = "nixos";
default = config.networking.hostName;
defaultText = literalExpression "config.networking.hostName";
};
runnerGroup = mkOption {
type = types.nullOr types.str;
description = lib.mdDoc ''
Name of the runner group to add this runner to (defaults to the default runner group).
Changing this option triggers a new runner registration.
'';
default = null;
};
extraLabels = mkOption {
type = types.listOf types.str;
description = lib.mdDoc ''
Extra labels in addition to the default (`["self-hosted", "Linux", "X64"]`).
Changing this option triggers a new runner registration.
'';
example = literalExpression ''[ "nixos" ]'';
default = [ ];
};
replace = mkOption {
type = types.bool;
description = lib.mdDoc ''
Replace any existing runner with the same name.
Without this flag, registering a new runner with the same name fails.
'';
default = false;
};
extraPackages = mkOption {
type = types.listOf types.package;
description = lib.mdDoc ''
Extra packages to add to `PATH` of the service to make them available to workflows.
'';
default = [ ];
};
package = mkOption {
type = types.package;
description = lib.mdDoc ''
Which github-runner derivation to use.
'';
default = pkgs.github-runner;
defaultText = literalExpression "pkgs.github-runner";
};
ephemeral = mkOption {
type = types.bool;
description = lib.mdDoc ''
If enabled, causes the following behavior:
- Passes the `--ephemeral` flag to the runner configuration script
- De-registers and stops the runner with GitHub after it has processed one job
- On stop, systemd wipes the runtime directory (this always happens, even without using the ephemeral option)
- Restarts the service after its successful exit
- On start, wipes the state directory and configures a new runner
You should only enable this option if `tokenFile` points to a file which contains a
personal access token (PAT). If you're using the option with a registration token, restarting the
service will fail as soon as the registration token expired.
'';
default = false;
};
};
options.services.github-runner = import ./github-runner/options.nix (args // {
# Users don't need to specify options.services.github-runner.name; it will default
# to the hostname.
includeNameDefault = true;
});
config = mkIf cfg.enable {
warnings = optionals (isStorePath cfg.tokenFile) [
''
`services.github-runner.tokenFile` points to the Nix store and, therefore, is world-readable.
Consider using a path outside of the Nix store to keep the token private.
''
];
systemd.services.${svcName} = {
description = "GitHub Actions runner";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network.target" "network-online.target" ];
environment = {
HOME = runtimeDir;
RUNNER_ROOT = stateDir;
};
path = (with pkgs; [
bash
coreutils
git
gnutar
gzip
]) ++ [
config.nix.package
] ++ cfg.extraPackages;
serviceConfig = rec {
ExecStart = "${cfg.package}/bin/Runner.Listener run --startuptype service";
# Does the following, sequentially:
# - If the module configuration or the token has changed, purge the state directory,
# and create the current and the new token file with the contents of the configured
# token. While both files have the same content, only the later is accessible by
# the service user.
# - Configure the runner using the new token file. When finished, delete it.
# - Set up the directory structure by creating the necessary symlinks.
ExecStartPre =
let
# Wrapper script which expects the full path of the state, runtime and logs
# directory as arguments. Overrides the respective systemd variables to provide
# unambiguous directory names. This becomes relevant, for example, if the
# caller overrides any of the StateDirectory=, RuntimeDirectory= or LogDirectory=
# to contain more than one directory. This causes systemd to set the respective
# environment variables with the path of all of the given directories, separated
# by a colon.
writeScript = name: lines: pkgs.writeShellScript "${svcName}-${name}.sh" ''
set -euo pipefail
STATE_DIRECTORY="$1"
RUNTIME_DIRECTORY="$2"
LOGS_DIRECTORY="$3"
${lines}
'';
runnerRegistrationConfig = getAttrs [ "name" "tokenFile" "url" "runnerGroup" "extraLabels" "ephemeral" ] cfg;
newConfigPath = builtins.toFile "${svcName}-config.json" (builtins.toJSON runnerRegistrationConfig);
currentConfigPath = "$STATE_DIRECTORY/.nixos-current-config.json";
newConfigTokenPath= "$STATE_DIRECTORY/.new-token";
currentConfigTokenPath = "$STATE_DIRECTORY/${currentConfigTokenFilename}";
runnerCredFiles = [
".credentials"
".credentials_rsaparams"
".runner"
];
unconfigureRunner = writeScript "unconfigure" ''
copy_tokens() {
# Copy the configured token file to the state dir and allow the service user to read the file
install --mode=666 ${escapeShellArg cfg.tokenFile} "${newConfigTokenPath}"
# Also copy current file to allow for a diff on the next start
install --mode=600 ${escapeShellArg cfg.tokenFile} "${currentConfigTokenPath}"
}
clean_state() {
find "$STATE_DIRECTORY/" -mindepth 1 -delete
copy_tokens
}
diff_config() {
changed=0
# Check for module config changes
[[ -f "${currentConfigPath}" ]] \
&& ${pkgs.diffutils}/bin/diff -q '${newConfigPath}' "${currentConfigPath}" >/dev/null 2>&1 \
|| changed=1
# Also check the content of the token file
[[ -f "${currentConfigTokenPath}" ]] \
&& ${pkgs.diffutils}/bin/diff -q "${currentConfigTokenPath}" ${escapeShellArg cfg.tokenFile} >/dev/null 2>&1 \
|| changed=1
# If the config has changed, remove old state and copy tokens
if [[ "$changed" -eq 1 ]]; then
echo "Config has changed, removing old runner state."
echo "The old runner will still appear in the GitHub Actions UI." \
"You have to remove it manually."
clean_state
fi
}
if [[ "${optionalString cfg.ephemeral "1"}" ]]; then
# In ephemeral mode, we always want to start with a clean state
clean_state
elif [[ "$(ls -A "$STATE_DIRECTORY")" ]]; then
# There are state files from a previous run; diff them to decide if we need a new registration
diff_config
else
# The state directory is entirely empty which indicates a first start
copy_tokens
fi
'';
configureRunner = writeScript "configure" ''
if [[ -e "${newConfigTokenPath}" ]]; then
echo "Configuring GitHub Actions Runner"
args=(
--unattended
--disableupdate
--work "$RUNTIME_DIRECTORY"
--url ${escapeShellArg cfg.url}
--labels ${escapeShellArg (concatStringsSep "," cfg.extraLabels)}
--name ${escapeShellArg cfg.name}
${optionalString cfg.replace "--replace"}
${optionalString (cfg.runnerGroup != null) "--runnergroup ${escapeShellArg cfg.runnerGroup}"}
${optionalString cfg.ephemeral "--ephemeral"}
)
# If the token file contains a PAT (i.e., it starts with "ghp_"), we have to use the --pat option,
# if it is not a PAT, we assume it contains a registration token and use the --token option
token=$(<"${newConfigTokenPath}")
if [[ "$token" =~ ^ghp_* ]]; then
args+=(--pat "$token")
else
args+=(--token "$token")
fi
${cfg.package}/bin/config.sh "''${args[@]}"
# Move the automatically created _diag dir to the logs dir
mkdir -p "$STATE_DIRECTORY/_diag"
cp -r "$STATE_DIRECTORY/_diag/." "$LOGS_DIRECTORY/"
rm -rf "$STATE_DIRECTORY/_diag/"
# Cleanup token from config
rm "${newConfigTokenPath}"
# Symlink to new config
ln -s '${newConfigPath}' "${currentConfigPath}"
fi
'';
setupRuntimeDir = writeScript "setup-runtime-dirs" ''
# Link _diag dir
ln -s "$LOGS_DIRECTORY" "$RUNTIME_DIRECTORY/_diag"
# Link the runner credentials to the runtime dir
ln -s "$STATE_DIRECTORY"/{${lib.concatStringsSep "," runnerCredFiles}} "$RUNTIME_DIRECTORY/"
'';
in
map (x: "${x} ${escapeShellArgs [ stateDir runtimeDir logsDir ]}") [
"+${unconfigureRunner}" # runs as root
configureRunner
setupRuntimeDir
];
# If running in ephemeral mode, restart the service on-exit (i.e., successful de-registration of the runner)
# to trigger a fresh registration.
Restart = if cfg.ephemeral then "on-success" else "no";
# Contains _diag
LogsDirectory = [ systemdDir ];
# Default RUNNER_ROOT which contains ephemeral Runner data
RuntimeDirectory = [ systemdDir ];
# Home of persistent runner data, e.g., credentials
StateDirectory = [ systemdDir ];
StateDirectoryMode = "0700";
WorkingDirectory = runtimeDir;
InaccessiblePaths = [
# Token file path given in the configuration, if visible to the service
"-${cfg.tokenFile}"
# Token file in the state directory
"${stateDir}/${currentConfigTokenFilename}"
];
# By default, use a dynamically allocated user
DynamicUser = true;
KillSignal = "SIGINT";
# Hardening (may overlap with DynamicUser=)
# The following options are only for optimizing:
# systemd-analyze security github-runner
AmbientCapabilities = "";
CapabilityBoundingSet = "";
# ProtectClock= adds DeviceAllow=char-rtc r
DeviceAllow = "";
NoNewPrivileges = true;
PrivateDevices = true;
PrivateMounts = true;
PrivateTmp = true;
PrivateUsers = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectSystem = "strict";
RemoveIPC = true;
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
UMask = "0066";
ProtectProc = "invisible";
SystemCallFilter = [
"~@clock"
"~@cpu-emulation"
"~@module"
"~@mount"
"~@obsolete"
"~@raw-io"
"~@reboot"
"~capset"
"~setdomainname"
"~sethostname"
];
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" "AF_UNIX" "AF_NETLINK" ];
# Needs network access
PrivateNetwork = false;
# Cannot be true due to Node
MemoryDenyWriteExecute = false;
# The more restrictive "pid" option makes `nix` commands in CI emit
# "GC Warning: Couldn't read /proc/stat"
# You may want to set this to "pid" if not using `nix` commands
ProcSubset = "all";
# Coverage programs for compiled code such as `cargo-tarpaulin` disable
# ASLR (address space layout randomization) which requires the
# `personality` syscall
# You may want to set this to `true` if not using coverage tooling on
# compiled code
LockPersonality = false;
};
};
services.github-runners.${cfg.name} = cfg;
};
}

View file

@ -0,0 +1,173 @@
{ config
, lib
, pkgs
, includeNameDefault
, ...
}:
with lib;
{
enable = mkOption {
default = false;
example = true;
description = lib.mdDoc ''
Whether to enable GitHub Actions runner.
Note: GitHub recommends using self-hosted runners with private repositories only. Learn more here:
[About self-hosted runners](https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners).
'';
type = lib.types.bool;
};
url = mkOption {
type = types.str;
description = lib.mdDoc ''
Repository to add the runner to.
Changing this option triggers a new runner registration.
IMPORTANT: If your token is org-wide (not per repository), you need to
provide a github org link, not a single repository, so do it like this
`https://github.com/nixos`, not like this
`https://github.com/nixos/nixpkgs`.
Otherwise, you are going to get a `404 NotFound`
from `POST https://api.github.com/actions/runner-registration`
in the configure script.
'';
example = "https://github.com/nixos/nixpkgs";
};
tokenFile = mkOption {
type = types.path;
description = lib.mdDoc ''
The full path to a file which contains either a runner registration token or a
(fine-grained) personal access token (PAT).
The file should contain exactly one line with the token without any newline.
If a registration token is given, it can be used to re-register a runner of the same
name but is time-limited. If the file contains a PAT, the service creates a new
registration token on startup as needed. Make sure the PAT has a scope of
`admin:org` for organization-wide registrations or a scope of
`repo` for a single repository. Fine-grained PATs need read and write permission
to the "Adminstration" resources.
Changing this option or the file's content triggers a new runner registration.
'';
example = "/run/secrets/github-runner/nixos.token";
};
name = let
# Same pattern as for `networking.hostName`
baseType = types.strMatching "^$|^[[:alnum:]]([[:alnum:]_-]{0,61}[[:alnum:]])?$";
in mkOption {
type = if includeNameDefault then baseType else types.nullOr baseType;
description = lib.mdDoc ''
Name of the runner to configure. Defaults to the hostname.
Changing this option triggers a new runner registration.
'';
example = "nixos";
} // (if includeNameDefault then {
default = config.networking.hostName;
defaultText = literalExpression "config.networking.hostName";
} else {
default = null;
});
runnerGroup = mkOption {
type = types.nullOr types.str;
description = lib.mdDoc ''
Name of the runner group to add this runner to (defaults to the default runner group).
Changing this option triggers a new runner registration.
'';
default = null;
};
extraLabels = mkOption {
type = types.listOf types.str;
description = lib.mdDoc ''
Extra labels in addition to the default (`["self-hosted", "Linux", "X64"]`).
Changing this option triggers a new runner registration.
'';
example = literalExpression ''[ "nixos" ]'';
default = [ ];
};
replace = mkOption {
type = types.bool;
description = lib.mdDoc ''
Replace any existing runner with the same name.
Without this flag, registering a new runner with the same name fails.
'';
default = false;
};
extraPackages = mkOption {
type = types.listOf types.package;
description = lib.mdDoc ''
Extra packages to add to `PATH` of the service to make them available to workflows.
'';
default = [ ];
};
extraEnvironment = mkOption {
type = types.attrs;
description = lib.mdDoc ''
Extra environment variables to set for the runner, as an attrset.
'';
example = {
GIT_CONFIG = "/path/to/git/config";
};
default = {};
};
serviceOverrides = mkOption {
type = types.attrs;
description = lib.mdDoc ''
Overrides for the systemd service. Can be used to adjust the sandboxing options.
'';
example = {
ProtectHome = false;
};
default = {};
};
package = mkOption {
type = types.package;
description = lib.mdDoc ''
Which github-runner derivation to use.
'';
default = pkgs.github-runner;
defaultText = literalExpression "pkgs.github-runner";
};
ephemeral = mkOption {
type = types.bool;
description = lib.mdDoc ''
If enabled, causes the following behavior:
- Passes the `--ephemeral` flag to the runner configuration script
- De-registers and stops the runner with GitHub after it has processed one job
- On stop, systemd wipes the runtime directory (this always happens, even without using the ephemeral option)
- Restarts the service after its successful exit
- On start, wipes the state directory and configures a new runner
You should only enable this option if `tokenFile` points to a file which contains a
personal access token (PAT). If you're using the option with a registration token, restarting the
service will fail as soon as the registration token expired.
'';
default = false;
};
user = mkOption {
type = types.nullOr types.str;
description = lib.mdDoc ''
User under which to run the service. If null, will use a systemd dynamic user.
'';
default = null;
defaultText = literalExpression "username";
};
}

View file

@ -0,0 +1,254 @@
{ config
, lib
, pkgs
, cfg ? config.services.github-runner
, svcName
, systemdDir ? "${svcName}/${cfg.name}"
# %t: Runtime directory root (usually /run); see systemd.unit(5)
, runtimeDir ? "%t/${systemdDir}"
# %S: State directory root (usually /var/lib); see systemd.unit(5)
, stateDir ? "%S/${systemdDir}"
# %L: Log directory root (usually /var/log); see systemd.unit(5)
, logsDir ? "%L/${systemdDir}"
# Name of file stored in service state directory
, currentConfigTokenFilename ? ".current-token"
, ...
}:
with lib;
{
description = "GitHub Actions runner";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network.target" "network-online.target" ];
environment = {
HOME = runtimeDir;
RUNNER_ROOT = stateDir;
} // cfg.extraEnvironment;
path = (with pkgs; [
bash
coreutils
git
gnutar
gzip
]) ++ [
config.nix.package
] ++ cfg.extraPackages;
serviceConfig = rec {
ExecStart = "${cfg.package}/bin/Runner.Listener run --startuptype service";
# Does the following, sequentially:
# - If the module configuration or the token has changed, purge the state directory,
# and create the current and the new token file with the contents of the configured
# token. While both files have the same content, only the later is accessible by
# the service user.
# - Configure the runner using the new token file. When finished, delete it.
# - Set up the directory structure by creating the necessary symlinks.
ExecStartPre =
let
# Wrapper script which expects the full path of the state, runtime and logs
# directory as arguments. Overrides the respective systemd variables to provide
# unambiguous directory names. This becomes relevant, for example, if the
# caller overrides any of the StateDirectory=, RuntimeDirectory= or LogDirectory=
# to contain more than one directory. This causes systemd to set the respective
# environment variables with the path of all of the given directories, separated
# by a colon.
writeScript = name: lines: pkgs.writeShellScript "${svcName}-${name}.sh" ''
set -euo pipefail
STATE_DIRECTORY="$1"
RUNTIME_DIRECTORY="$2"
LOGS_DIRECTORY="$3"
${lines}
'';
runnerRegistrationConfig = getAttrs [ "name" "tokenFile" "url" "runnerGroup" "extraLabels" "ephemeral" ] cfg;
newConfigPath = builtins.toFile "${svcName}-config.json" (builtins.toJSON runnerRegistrationConfig);
currentConfigPath = "$STATE_DIRECTORY/.nixos-current-config.json";
newConfigTokenPath= "$STATE_DIRECTORY/.new-token";
currentConfigTokenPath = "$STATE_DIRECTORY/${currentConfigTokenFilename}";
runnerCredFiles = [
".credentials"
".credentials_rsaparams"
".runner"
];
unconfigureRunner = writeScript "unconfigure" ''
copy_tokens() {
# Copy the configured token file to the state dir and allow the service user to read the file
install --mode=666 ${escapeShellArg cfg.tokenFile} "${newConfigTokenPath}"
# Also copy current file to allow for a diff on the next start
install --mode=600 ${escapeShellArg cfg.tokenFile} "${currentConfigTokenPath}"
}
clean_state() {
find "$STATE_DIRECTORY/" -mindepth 1 -delete
copy_tokens
}
diff_config() {
changed=0
# Check for module config changes
[[ -f "${currentConfigPath}" ]] \
&& ${pkgs.diffutils}/bin/diff -q '${newConfigPath}' "${currentConfigPath}" >/dev/null 2>&1 \
|| changed=1
# Also check the content of the token file
[[ -f "${currentConfigTokenPath}" ]] \
&& ${pkgs.diffutils}/bin/diff -q "${currentConfigTokenPath}" ${escapeShellArg cfg.tokenFile} >/dev/null 2>&1 \
|| changed=1
# If the config has changed, remove old state and copy tokens
if [[ "$changed" -eq 1 ]]; then
echo "Config has changed, removing old runner state."
echo "The old runner will still appear in the GitHub Actions UI." \
"You have to remove it manually."
clean_state
fi
}
if [[ "${optionalString cfg.ephemeral "1"}" ]]; then
# In ephemeral mode, we always want to start with a clean state
clean_state
elif [[ "$(ls -A "$STATE_DIRECTORY")" ]]; then
# There are state files from a previous run; diff them to decide if we need a new registration
diff_config
else
# The state directory is entirely empty which indicates a first start
copy_tokens
fi '';
configureRunner = writeScript "configure" ''
if [[ -e "${newConfigTokenPath}" ]]; then
echo "Configuring GitHub Actions Runner"
args=(
--unattended
--disableupdate
--work "$RUNTIME_DIRECTORY"
--url ${escapeShellArg cfg.url}
--labels ${escapeShellArg (concatStringsSep "," cfg.extraLabels)}
--name ${escapeShellArg cfg.name}
${optionalString cfg.replace "--replace"}
${optionalString (cfg.runnerGroup != null) "--runnergroup ${escapeShellArg cfg.runnerGroup}"}
${optionalString cfg.ephemeral "--ephemeral"}
)
# If the token file contains a PAT (i.e., it starts with "ghp_" or "github_pat_"), we have to use the --pat option,
# if it is not a PAT, we assume it contains a registration token and use the --token option
token=$(<"${newConfigTokenPath}")
if [[ "$token" =~ ^ghp_* ]] || [[ "$token" =~ ^github_pat_* ]]; then
args+=(--pat "$token")
else
args+=(--token "$token")
fi
${cfg.package}/bin/config.sh "''${args[@]}"
# Move the automatically created _diag dir to the logs dir
mkdir -p "$STATE_DIRECTORY/_diag"
cp -r "$STATE_DIRECTORY/_diag/." "$LOGS_DIRECTORY/"
rm -rf "$STATE_DIRECTORY/_diag/"
# Cleanup token from config
rm "${newConfigTokenPath}"
# Symlink to new config
ln -s '${newConfigPath}' "${currentConfigPath}"
fi
'';
setupRuntimeDir = writeScript "setup-runtime-dirs" ''
# Link _diag dir
ln -s "$LOGS_DIRECTORY" "$RUNTIME_DIRECTORY/_diag"
# Link the runner credentials to the runtime dir
ln -s "$STATE_DIRECTORY"/{${lib.concatStringsSep "," runnerCredFiles}} "$RUNTIME_DIRECTORY/"
'';
in
map (x: "${x} ${escapeShellArgs [ stateDir runtimeDir logsDir ]}") [
"+${unconfigureRunner}" # runs as root
configureRunner
setupRuntimeDir
];
# If running in ephemeral mode, restart the service on-exit (i.e., successful de-registration of the runner)
# to trigger a fresh registration.
Restart = if cfg.ephemeral then "on-success" else "no";
# Contains _diag
LogsDirectory = [ systemdDir ];
# Default RUNNER_ROOT which contains ephemeral Runner data
RuntimeDirectory = [ systemdDir ];
# Home of persistent runner data, e.g., credentials
StateDirectory = [ systemdDir ];
StateDirectoryMode = "0700";
WorkingDirectory = runtimeDir;
InaccessiblePaths = [
# Token file path given in the configuration, if visible to the service
"-${cfg.tokenFile}"
# Token file in the state directory
"${stateDir}/${currentConfigTokenFilename}"
];
KillSignal = "SIGINT";
# Hardening (may overlap with DynamicUser=)
# The following options are only for optimizing:
# systemd-analyze security github-runner
AmbientCapabilities = "";
CapabilityBoundingSet = "";
# ProtectClock= adds DeviceAllow=char-rtc r
DeviceAllow = "";
NoNewPrivileges = true;
PrivateDevices = true;
PrivateMounts = true;
PrivateTmp = true;
PrivateUsers = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectSystem = "strict";
RemoveIPC = true;
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
UMask = "0066";
ProtectProc = "invisible";
SystemCallFilter = [
"~@clock"
"~@cpu-emulation"
"~@module"
"~@mount"
"~@obsolete"
"~@raw-io"
"~@reboot"
"~capset"
"~setdomainname"
"~sethostname"
];
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" "AF_UNIX" "AF_NETLINK" ];
# Needs network access
PrivateNetwork = false;
# Cannot be true due to Node
MemoryDenyWriteExecute = false;
# The more restrictive "pid" option makes `nix` commands in CI emit
# "GC Warning: Couldn't read /proc/stat"
# You may want to set this to "pid" if not using `nix` commands
ProcSubset = "all";
# Coverage programs for compiled code such as `cargo-tarpaulin` disable
# ASLR (address space layout randomization) which requires the
# `personality` syscall
# You may want to set this to `true` if not using coverage tooling on
# compiled code
LockPersonality = false;
# Note that this has some interactions with the User setting; so you may
# want to consult the systemd docs if using both.
DynamicUser = true;
} // (
lib.optionalAttrs (cfg.user != null) { User = cfg.user; }
) // cfg.serviceOverrides;
}

View file

@ -0,0 +1,56 @@
{ config
, pkgs
, lib
, ...
}@args:
with lib;
let
cfg = config.services.github-runners;
in
{
options.services.github-runners = mkOption {
default = {};
type = with types; attrsOf (submodule { options = import ./github-runner/options.nix (args // {
# services.github-runners.${name}.name doesn't have a default; it falls back to ${name} below.
includeNameDefault = false;
}); });
example = {
runner1 = {
enable = true;
url = "https://github.com/owner/repo";
name = "runner1";
tokenFile = "/secrets/token1";
};
runner2 = {
enable = true;
url = "https://github.com/owner/repo";
name = "runner2";
tokenFile = "/secrets/token2";
};
};
description = lib.mdDoc ''
Multiple GitHub Runners.
'';
};
config = {
systemd.services = flip mapAttrs' cfg (n: v:
let
svcName = "github-runner-${n}";
in
nameValuePair svcName
(import ./github-runner/service.nix (args // {
inherit svcName;
cfg = v // {
name = if v.name != null then v.name else n;
};
systemdDir = "github-runner/${n}";
}))
);
};
}

View file

@ -35,7 +35,7 @@ in {
${pkgs.prometheus-kea-exporter}/bin/kea-exporter \
--address ${cfg.listenAddress} \
--port ${toString cfg.port} \
${concatStringsSep " \\n" cfg.controlSocketPaths}
${concatStringsSep " " cfg.controlSocketPaths}
'';
SupplementaryGroups = [ "kea" ];
RestrictAddressFamilies = [

View file

@ -238,17 +238,17 @@ in
# do installation or reconfigure
if test -f ${cfg.dataDir}/config.php; then
# reconfigure with settings
${pkgs.php}/bin/php ./cli/reconfigure.php ${settingsFlags}
${pkgs.php}/bin/php ./cli/update-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
./cli/reconfigure.php ${settingsFlags}
./cli/update-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
else
# Copy the user data template directory
cp -r ./data ${cfg.dataDir}
# check correct folders in data folder
${pkgs.php}/bin/php ./cli/prepare.php
./cli/prepare.php
# install with settings
${pkgs.php}/bin/php ./cli/do-install.php ${settingsFlags}
${pkgs.php}/bin/php ./cli/create-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
./cli/do-install.php ${settingsFlags}
./cli/create-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
fi
'';
};
@ -267,7 +267,7 @@ in
Group = "freshrss";
StateDirectory = "freshrss";
WorkingDirectory = cfg.package;
ExecStart = "${pkgs.php}/bin/php ./app/actualize_script.php";
ExecStart = "./app/actualize_script.php";
} // systemd-hardening;
};
};

View file

@ -374,25 +374,34 @@ let
};
kea = let
controlSocketPath = "/run/kea/dhcp6.sock";
controlSocketPathV4 = "/run/kea/dhcp4.sock";
controlSocketPathV6 = "/run/kea/dhcp6.sock";
in
{
exporterConfig = {
enable = true;
controlSocketPaths = [
controlSocketPath
controlSocketPathV4
controlSocketPathV6
];
};
metricProvider = {
systemd.services.prometheus-kea-exporter.after = [ "kea-dhcp6-server.service" ];
services.kea = {
dhcp4 = {
enable = true;
settings = {
control-socket = {
socket-type = "unix";
socket-name = controlSocketPathV4;
};
};
};
dhcp6 = {
enable = true;
settings = {
control-socket = {
socket-type = "unix";
socket-name = controlSocketPath;
socket-name = controlSocketPathV6;
};
};
};
@ -400,8 +409,10 @@ let
};
exporterTest = ''
wait_for_unit("kea-dhcp4-server.service")
wait_for_unit("kea-dhcp6-server.service")
wait_for_file("${controlSocketPath}")
wait_for_file("${controlSocketPathV4}")
wait_for_file("${controlSocketPathV6}")
wait_for_unit("prometheus-kea-exporter.service")
wait_for_open_port(9547)
succeed(

View file

@ -10,13 +10,13 @@
}:
rustPlatform.buildRustPackage rec {
pname = "polkadot";
version = "0.9.29";
version = "0.9.30";
src = fetchFromGitHub {
owner = "paritytech";
repo = "polkadot";
rev = "v${version}";
sha256 = "sha256-/IJs3153KzhGf5I6LueljzRhDl/PYYlPseF6wCh+u3M=";
sha256 = "sha256-lnClnra69vfszPjnrOldSkd3kgC34bgociicC6Kpupw=";
# the build process of polkadot requires a .git folder in order to determine
# the git commit hash that is being built and add it to the version string.
@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
'';
};
cargoSha256 = "sha256-mI8VvTlM9ynstDBC0ubQkzg3D2ZXuWqJGS/Y23D6dU0=";
cargoSha256 = "sha256-mnfA0ecfmMMAy1TZeydbep6hCIu9yZQY7/c5hb1OMGc=";
buildInputs = lib.optional stdenv.isDarwin [ Security ];

View file

@ -3,11 +3,11 @@
"clion": {
"update-channel": "CLion RELEASE",
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.tar.gz",
"version": "2022.2.3",
"sha256": "e0338107115231c4b354870dfcf537ba6ad1741a0d310e4e50c48dfc24ff9cce",
"url": "https://download.jetbrains.com/cpp/CLion-2022.2.3.tar.gz",
"version-major-minor": "2022.1",
"build_number": "222.4167.35"
"version": "2022.2.4",
"sha256": "d88794c698d7bf4d970ba102b85166d5f8c3cb08c4ed5b4cbc150bb505320fab",
"url": "https://download.jetbrains.com/cpp/CLion-2022.2.4.tar.gz",
"version-major-minor": "2022.2",
"build_number": "222.4345.21"
},
"datagrip": {
"update-channel": "DataGrip RELEASE",
@ -30,11 +30,11 @@
"goland": {
"update-channel": "GoLand RELEASE",
"url-template": "https://download.jetbrains.com/go/goland-{version}.tar.gz",
"version": "2022.2.3",
"sha256": "fda47d9939b95d8995d1a375443025599cd74b1b5a2966273477ecfafa9ce4f1",
"url": "https://download.jetbrains.com/go/goland-2022.2.3.tar.gz",
"version-major-minor": "2022.1",
"build_number": "222.4167.25"
"version": "2022.2.4",
"sha256": "e39aaae39e6021e87cece7622c51860d23e2a5b5ac2683fb67d369ec7d609084",
"url": "https://download.jetbrains.com/go/goland-2022.2.4.tar.gz",
"version-major-minor": "2022.2",
"build_number": "222.4345.24"
},
"idea-community": {
"update-channel": "IntelliJ IDEA RELEASE",
@ -75,20 +75,20 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.tar.gz",
"version": "2022.2.2",
"sha256": "2f361c5f59c685c9f8d1385029ed753eabe5b688a82acef6e83a50f0d2b9d7a8",
"url": "https://download.jetbrains.com/python/pycharm-community-2022.2.2.tar.gz",
"version-major-minor": "2022.1",
"build_number": "222.4167.33"
"version": "2022.2.3",
"sha256": "cb03d44599a03419c0c63fc917846fca28c9ea664ed2b2a1c36240dcffb2a387",
"url": "https://download.jetbrains.com/python/pycharm-community-2022.2.3.tar.gz",
"version-major-minor": "2022.2",
"build_number": "222.4345.23"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.tar.gz",
"version": "2022.2.2",
"sha256": "b7bfb86026fba669bb22429ab0840afba5047680202762070cfbb1f181d53d0e",
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.2.2.tar.gz",
"version-major-minor": "2022.1",
"build_number": "222.4167.33"
"version": "2022.2.3",
"sha256": "c73750a2e27ed2410741a739071a920cca9844608a81f07735ed2e35a024cca1",
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.2.3.tar.gz",
"version-major-minor": "2022.2",
"build_number": "222.4345.23"
},
"rider": {
"update-channel": "Rider RELEASE",
@ -122,11 +122,11 @@
"clion": {
"update-channel": "CLion RELEASE",
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.dmg",
"version": "2022.2.3",
"sha256": "d7e0dcbb3c28f383d1365f5cb6d2b55afbb8c638fd9f100b8040f72b394a1aed",
"url": "https://download.jetbrains.com/cpp/CLion-2022.2.3.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.35"
"version": "2022.2.4",
"sha256": "b72fae2bee3bd10374d10a4efb86888d289931080d5321385ede30373d31a55a",
"url": "https://download.jetbrains.com/cpp/CLion-2022.2.4.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.21"
},
"datagrip": {
"update-channel": "DataGrip RELEASE",
@ -149,11 +149,11 @@
"goland": {
"update-channel": "GoLand RELEASE",
"url-template": "https://download.jetbrains.com/go/goland-{version}.dmg",
"version": "2022.2.3",
"sha256": "f2e9f2455cf2e13f3b7ed28c18507aa758742c533cb1c07a1ebe62172a939b47",
"url": "https://download.jetbrains.com/go/goland-2022.2.3.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.25"
"version": "2022.2.4",
"sha256": "456957075636f7f9ccffbd8d3bd37d2218547289a2cbce043bb9e32c436654f6",
"url": "https://download.jetbrains.com/go/goland-2022.2.4.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.24"
},
"idea-community": {
"update-channel": "IntelliJ IDEA RELEASE",
@ -194,20 +194,20 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.dmg",
"version": "2022.2.2",
"sha256": "a7fbc83ea01e96c79a75fd061669fa0156b770e92c1153a03681fb67ee4a59ea",
"url": "https://download.jetbrains.com/python/pycharm-community-2022.2.2.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.33"
"version": "2022.2.3",
"sha256": "01eec651f6e8d92e1bfe5688aeb179ad5eb92e77ef77d102793d4848f8efc0d4",
"url": "https://download.jetbrains.com/python/pycharm-community-2022.2.3.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.23"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.dmg",
"version": "2022.2.2",
"sha256": "9b2f5841fa5741881600fbf3b0d5686f2593a6771bb70454d4cb0cc3acd1e43a",
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.2.2.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.33"
"version": "2022.2.3",
"sha256": "920326a35589fee80e70b84d23184daf1d3efc8ecf4ec8c273c2bf2ec764a5b7",
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.2.3.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.23"
},
"rider": {
"update-channel": "Rider RELEASE",
@ -241,11 +241,11 @@
"clion": {
"update-channel": "CLion RELEASE",
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}-aarch64.dmg",
"version": "2022.2.3",
"sha256": "d921c83ee6b444520e7fdb9fdae4ec0e67cea6dfcaa720e6b36d85c17a4df39c",
"url": "https://download.jetbrains.com/cpp/CLion-2022.2.3-aarch64.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.35"
"version": "2022.2.4",
"sha256": "2b95358770cd56b94b46e4bcb86080e2c97771c0f34ad50543de206bb3c81d47",
"url": "https://download.jetbrains.com/cpp/CLion-2022.2.4-aarch64.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.21"
},
"datagrip": {
"update-channel": "DataGrip RELEASE",
@ -268,11 +268,11 @@
"goland": {
"update-channel": "GoLand RELEASE",
"url-template": "https://download.jetbrains.com/go/goland-{version}-aarch64.dmg",
"version": "2022.2.3",
"sha256": "c3c790a45b36af006f743a70fb114782a9c4a2076d025de65894d0f39b0f48a5",
"url": "https://download.jetbrains.com/go/goland-2022.2.3-aarch64.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.25"
"version": "2022.2.4",
"sha256": "f1b1bb4f28a09b23a185fc2437792a3125b2c8856fa533c9bcb09b7eef16fe09",
"url": "https://download.jetbrains.com/go/goland-2022.2.4-aarch64.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.24"
},
"idea-community": {
"update-channel": "IntelliJ IDEA RELEASE",
@ -313,20 +313,20 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.dmg",
"version": "2022.2.2",
"sha256": "8a6f1440cfc9aa47a89a8dda7d19bf50c9790fc12153f97d11e975327703d6e0",
"url": "https://download.jetbrains.com/python/pycharm-community-2022.2.2-aarch64.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.33"
"version": "2022.2.3",
"sha256": "6b87c85f6b5b3262904b34d0bbb6775d2654610685a8bca9977b147644b113ea",
"url": "https://download.jetbrains.com/python/pycharm-community-2022.2.3-aarch64.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.23"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.dmg",
"version": "2022.2.2",
"sha256": "30915c13c4ba2907f083dfa092bc3734e98a4ab83e2180221e52b9b04a93a1e2",
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.2.2-aarch64.dmg",
"version-major-minor": "2022.1",
"build_number": "222.4167.33"
"version": "2022.2.3",
"sha256": "59d9553ab01de9460984f082c12fb0586aeb84eb00a4501bab358e516f1f6847",
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.2.3-aarch64.dmg",
"version-major-minor": "2022.2",
"build_number": "222.4345.23"
},
"rider": {
"update-channel": "Rider RELEASE",

View file

@ -12,7 +12,7 @@
"new": "vim-gist"
},
"lua-dev-nvim": {
"date": "2022-10-17",
"date": "2022-10-18",
"new": "neodev-nvim"
},
"nvim-bufferline-lua": {

View file

@ -341,12 +341,12 @@ final: prev:
SpaceVim = buildVimPluginFrom2Nix {
pname = "SpaceVim";
version = "2022-10-17";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "SpaceVim";
repo = "SpaceVim";
rev = "e38955a63515e6d912fa1c70eb215a118d2d6a2e";
sha256 = "02rryivbs2q95lyf2nc1y3cjj2j995x52pp09s39kjf435mdqq62";
rev = "2b95b6dcdeedc2ddca399f7fef4e3cd8b7c94e3e";
sha256 = "01iy43zc974znadbrlvg5zbx5yhy3rd0kymabshxcs10k1lpgmgp";
};
meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
};
@ -990,12 +990,12 @@ final: prev:
ccc-nvim = buildVimPluginFrom2Nix {
pname = "ccc.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "uga-rosa";
repo = "ccc.nvim";
rev = "ea5d9cebb87b1dc14c9c055ea5d0a3be4514fd85";
sha256 = "0mzsscasrcpbigw09rj99zsrp4sknbasq4x06y268m3awaqn42q4";
rev = "316b272cc01d450414651cf070bcc8c6beb0c144";
sha256 = "0z7g2bv1yajw8f1gwk3a24k8aczib7fpk3xivw7c6i5kkp4h02cw";
};
meta.homepage = "https://github.com/uga-rosa/ccc.nvim/";
};
@ -1722,12 +1722,12 @@ final: prev:
coc-nvim = buildVimPluginFrom2Nix {
pname = "coc.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "neoclide";
repo = "coc.nvim";
rev = "e0372fc196fd0b89cab849d2f09e659714207554";
sha256 = "1jhli3xgbsb5yg1rvakiwx8ispsidxs2ymiiyf71y0h2jgmsq6rr";
rev = "b2048d3a5a0195819c406bdbe1af9a7e418c48e4";
sha256 = "1zs6zhs0k8kki6jccjqc23yvdnj4gqpwqqk6i9l50b4gwx86zfcd";
};
meta.homepage = "https://github.com/neoclide/coc.nvim/";
};
@ -2010,24 +2010,24 @@ final: prev:
coq-artifacts = buildVimPluginFrom2Nix {
pname = "coq.artifacts";
version = "2022-10-17";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "coq.artifacts";
rev = "dee45e1caed9ef377cd54eda3afd40ab02ad580a";
sha256 = "1lygw38ihalridjxz7zykg290dxpv88fk96pbmkbysk5chnqf4qq";
rev = "e45bdaa4bd5d2348a64c51596b91ab58b58bc2cf";
sha256 = "0033d4z0sjm4397wna1yb87vjm0gmjwr4b46pxv69zjikb38mxw3";
};
meta.homepage = "https://github.com/ms-jpq/coq.artifacts/";
};
coq-thirdparty = buildVimPluginFrom2Nix {
pname = "coq.thirdparty";
version = "2022-10-17";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "coq.thirdparty";
rev = "f1a70272a8af317054bd51bccbf9d385a0a10be0";
sha256 = "1w2xwh7ppld8y4xv7s8l5g2l4i21d2xnb9kv7nszkvjcp4z7bd1c";
rev = "86ad87b631b207fa34e088fec3e8935a3e2c9120";
sha256 = "0qspw4as1fc0w3w7vr5hsw4p7rlcls9md653w68qxsbdyyhid69q";
};
meta.homepage = "https://github.com/ms-jpq/coq.thirdparty/";
};
@ -2046,12 +2046,12 @@ final: prev:
coq_nvim = buildVimPluginFrom2Nix {
pname = "coq_nvim";
version = "2022-10-17";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "coq_nvim";
rev = "406d45b883588c81852cf28b01c4ec616778705c";
sha256 = "176n1qlz2pkv3mqrfiq71w15dziwz9wgj45k3gc7p0r7fdb123dz";
rev = "5d3d020720f49cf86c52a1bf2d132a37e07ad6b1";
sha256 = "0a0g1qi412cprj9gggiwaf43ld2s87m2c5wk5gpfk4y6zj8pawb1";
};
meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
};
@ -2564,12 +2564,12 @@ final: prev:
dial-nvim = buildVimPluginFrom2Nix {
pname = "dial.nvim";
version = "2022-10-16";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "monaqa";
repo = "dial.nvim";
rev = "54b503f906bc9e5ab85288414840a1b86d40769f";
sha256 = "1hz3xg3xbgq760sxjnvyi9k2r03illgb4yl9423aw32nk7hfgmpf";
rev = "fa74b74732520e224ed05cb8bc938806258011ce";
sha256 = "10yp92776vn8g19bdn7m9rrb8vx5p2r326xz6ssy6s140g3sg0hc";
};
meta.homepage = "https://github.com/monaqa/dial.nvim/";
};
@ -2806,12 +2806,12 @@ final: prev:
fern-vim = buildVimPluginFrom2Nix {
pname = "fern.vim";
version = "2022-08-25";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "lambdalisue";
repo = "fern.vim";
rev = "d134808916cb7ccd0800830032d07a0757ed68ee";
sha256 = "0234020pb2xpii4g0flsjs9y4vrlrckgnj9d52bw4qf53a79j630";
rev = "d0ada5bb5981d154e8c63a6eac7cca58750280bb";
sha256 = "06pli4rpalr5bgk33inj2dk278rjjsxyp2sc2j7sdcgy5qzcaf90";
};
meta.homepage = "https://github.com/lambdalisue/fern.vim/";
};
@ -3059,12 +3059,12 @@ final: prev:
fzf-lua = buildVimPluginFrom2Nix {
pname = "fzf-lua";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "ibhagwan";
repo = "fzf-lua";
rev = "c90a88b354ae12736760f623000d91b438b04234";
sha256 = "0xdadi1skck52rzj3a742jnqazjchjnx09ddqg42xyfggs0hqapv";
rev = "5427104f8b7a7b24ea4a66d1d661b0560b159d99";
sha256 = "1wvvq5assplm4bbgpjv0q077b00rxvcajbd28r67b96zwsk0bp54";
};
meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
};
@ -3851,12 +3851,12 @@ final: prev:
kanagawa-nvim = buildVimPluginFrom2Nix {
pname = "kanagawa.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "rebelot";
repo = "kanagawa.nvim";
rev = "631e0aa4012924d1874ced20f9ed5c7175a5a94c";
sha256 = "1n103zs5hvc9svz7kmhjvdd9ykhj84fvv8kihq61llbgbq696c8l";
rev = "6f692e38ef2852ac146124ff9bcd28b8d8c1b1de";
sha256 = "1lhz3x4mwwiz36hkxf8gv782j8218zfq86pav72dryvsjrfxyblc";
};
meta.homepage = "https://github.com/rebelot/kanagawa.nvim/";
};
@ -4402,12 +4402,12 @@ final: prev:
lua-dev-nvim = buildVimPluginFrom2Nix {
pname = "lua-dev.nvim";
version = "2022-10-17";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "folke";
repo = "neodev.nvim";
rev = "fe344de34475fbe7e3c679b591820f55cb545128";
sha256 = "1ns6ivaycf7p1h0asfhgvi9v4zgiqv1s0gi0l792rz5pd8j9vv0q";
rev = "dbd7bc1da13522eaad4022325f578c8c2d94d9a1";
sha256 = "101h55bal3bd25n8fjkz7djz1as1i94glcpikgjw94hcv95hvwk2";
};
meta.homepage = "https://github.com/folke/neodev.nvim/";
};
@ -4523,12 +4523,12 @@ final: prev:
material-nvim = buildVimPluginFrom2Nix {
pname = "material.nvim";
version = "2022-10-06";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "marko-cerovac";
repo = "material.nvim";
rev = "de33236e23cab880a1ab3d1cfdc828d3eedbddf8";
sha256 = "1qww1rl7aw4n9766asbdz765wllxkhygm0azdkic7j8hb95dr94x";
rev = "e2bd86883263c1b009daf1fef1f5f2b2ea42024e";
sha256 = "1l9a2557ykdqngzwq7jqff2kp9apd0aqzq124675acjwcc1wam1h";
};
meta.homepage = "https://github.com/marko-cerovac/material.nvim/";
};
@ -5207,12 +5207,12 @@ final: prev:
noice-nvim = buildVimPluginFrom2Nix {
pname = "noice.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "folke";
repo = "noice.nvim";
rev = "373959cd5d982e5216a6f8e46ce3b99fe24e1024";
sha256 = "0i4daaw2yfnxvhis6zh909sj3vqwb7g5vckri8b0487pgn825vmv";
rev = "57d68bff549860b30f22bd2e77b68f68593ad162";
sha256 = "1yq5lp0z9qll9rzjy7a5wa94iyxn53yk10ibxpikqi52q158267x";
};
meta.homepage = "https://github.com/folke/noice.nvim/";
};
@ -5771,12 +5771,12 @@ final: prev:
nvim-metals = buildVimPluginFrom2Nix {
pname = "nvim-metals";
version = "2022-10-03";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "scalameta";
repo = "nvim-metals";
rev = "1284bbf8d79fe010909e65abdd849f047ff51914";
sha256 = "121h5whwdyv3svby6qsjp893lwc98b6bs18jy58y5xzdzqv2lrd3";
rev = "8f838ebbdc4e3078e178f1cf0474858a014f490e";
sha256 = "008kjzyb0nj2g1kmpir6ayxpmy7cpprhidzzsqyqra4kgsicbscd";
};
meta.homepage = "https://github.com/scalameta/nvim-metals/";
};
@ -5939,24 +5939,24 @@ final: prev:
nvim-tree-lua = buildVimPluginFrom2Nix {
pname = "nvim-tree.lua";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "nvim-tree";
repo = "nvim-tree.lua";
rev = "4e24505e2b30c4a8c35a3dfb4f564f14f6d9bfd4";
sha256 = "098fbz1b33jai2nlvijhw8zqsrk7zg02dls139ws219b72cpipnv";
rev = "2b970635d1ef531355a380258372411576ecad4d";
sha256 = "0n0qxhl0jn5xr0xqh02vfj0zizqfpgcpykxxa84a13jmmbg0ypmv";
};
meta.homepage = "https://github.com/nvim-tree/nvim-tree.lua/";
};
nvim-treesitter = buildVimPluginFrom2Nix {
pname = "nvim-treesitter";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "nvim-treesitter";
rev = "8fa3ec03988544232f5a2ca91fefacb4844d63ef";
sha256 = "001p4db0h9wbxf87bqgsn6vqsyv1zqklq0qcsqislc2r7fr0k2m9";
rev = "e06da64459e97ccbbf08a5a9e86d21a3663592be";
sha256 = "0swfiwpk3fq5f3r7dfw8wy3pp1nqk4xc48g6jsv5p43am6nzkdz3";
};
meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
};
@ -6131,12 +6131,12 @@ final: prev:
octo-nvim = buildVimPluginFrom2Nix {
pname = "octo.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "pwntester";
repo = "octo.nvim";
rev = "769709afcb4db2946426689d7228c1f7fc50f44f";
sha256 = "1ylhk5g6ig8phdcxc9mnd4za2ry5v5ckad1kz3njbdvhd9il3hax";
rev = "b75630f93822a569f3fc2360bb2066ec1b205bd0";
sha256 = "1wddcdgy8gs3449ww9kgh4kd5y3xwcsi6rm14z3wsqxc03m2ji7i";
};
meta.homepage = "https://github.com/pwntester/octo.nvim/";
};
@ -6167,12 +6167,12 @@ final: prev:
onedark-nvim = buildVimPluginFrom2Nix {
pname = "onedark.nvim";
version = "2022-09-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "navarasu";
repo = "onedark.nvim";
rev = "6c72a9c5681e0ce00e75848d9426b59ba21539a7";
sha256 = "10q5312pdfa5s7gc6pzgzdxgfjrdf380nilx7750pqdbvdiqgp2s";
rev = "64fc4bc348e52e8e578beca26021d47c4d272a2a";
sha256 = "1b4rwap0dva67xg2vf2dj35522wjkfm061bpa6inbyg9waidf480";
};
meta.homepage = "https://github.com/navarasu/onedark.nvim/";
};
@ -6191,12 +6191,12 @@ final: prev:
onedarkpro-nvim = buildVimPluginFrom2Nix {
pname = "onedarkpro.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "olimorris";
repo = "onedarkpro.nvim";
rev = "99a063542524f90b11c611114439b8870e7ce120";
sha256 = "05f6kqj3hn2kry0vq2ldp7x5wjgfwa9cxk34kdhl81wdrcy5brw9";
rev = "55b2a219fd56f1984abf4c64913f32e89c80d890";
sha256 = "10lqlpcxgj8bxqh8hzqd8qzrphlai88zmi7ra6970lwg3g0y5484";
};
meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
};
@ -6215,12 +6215,12 @@ final: prev:
onenord-nvim = buildVimPluginFrom2Nix {
pname = "onenord.nvim";
version = "2022-10-01";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "rmehri01";
repo = "onenord.nvim";
rev = "749ee2f7fdeb9a02f25195d4850d2ff16240c863";
sha256 = "0zagysrszabwfxr942dhj4aqdsnbr15qsvq6pvnd99nc3rs05w45";
rev = "98c64654375bc087e96bca08fd194066d778717c";
sha256 = "1k49wjlxbh2dsbmmp15www2fny9xjnq7z9ic95rfb8c9r6aipqx9";
};
meta.homepage = "https://github.com/rmehri01/onenord.nvim/";
};
@ -6841,16 +6841,28 @@ final: prev:
satellite-nvim = buildVimPluginFrom2Nix {
pname = "satellite.nvim";
version = "2022-08-31";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "lewis6991";
repo = "satellite.nvim";
rev = "25d0c59edab4892363c3cec47fc5f34769e5a242";
sha256 = "1frnkh6ny4dxia793jkmv95wvvivmyp5296sg68vbf043hwny4a3";
rev = "609623c88ef9a1e6869dd20443a2027c10502b92";
sha256 = "15jkzdzfhlr7892k9g00qnrn6yffc6fjlx5xpn1jmh28mq7fix9n";
};
meta.homepage = "https://github.com/lewis6991/satellite.nvim/";
};
scope-nvim = buildVimPluginFrom2Nix {
pname = "scope.nvim";
version = "2022-06-27";
src = fetchFromGitHub {
owner = "tiagovla";
repo = "scope.nvim";
rev = "2db6d31de8e3a98d2b41c0f0d1f5dc299ee76875";
sha256 = "10l7avsjcgzh0s29az4zzskqcp9jw5xpvdiih02rf7c1j85zxm85";
};
meta.homepage = "https://github.com/tiagovla/scope.nvim/";
};
scrollbar-nvim = buildVimPluginFrom2Nix {
pname = "scrollbar.nvim";
version = "2022-06-16";
@ -7263,12 +7275,12 @@ final: prev:
suda-vim = buildVimPluginFrom2Nix {
pname = "suda.vim";
version = "2022-02-10";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "lambdalisue";
repo = "suda.vim";
rev = "6bffe36862faa601d2de7e54f6e85c1435e832d0";
sha256 = "147ql1wpg543lyglhx47d79qii6d0dxw0vjwpwzvbxzrnwi50d56";
rev = "2fc45dc4bcafb245b613ebd6847a244924735cc6";
sha256 = "1k8cx22p2xb1bvnz5zcwrxd8qnhdcwlrs9xqhjry5y4jpb16hdzc";
};
meta.homepage = "https://github.com/lambdalisue/suda.vim/";
};
@ -7951,12 +7963,12 @@ final: prev:
tokyonight-nvim = buildVimPluginFrom2Nix {
pname = "tokyonight.nvim";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "folke";
repo = "tokyonight.nvim";
rev = "9fba0cdd05382a427dafaa2b8ebb4aba99126bc0";
sha256 = "11qs1habsnnqynadw54f0ys58mmjvsa9vhf3ikd6ywgn8dxja8hd";
rev = "2a2ce9bdb76d7a2104bbfa5cfbcadcd15de0d7e9";
sha256 = "0mxd15x2scx4a6w3vwdsx6h5zhlipi4ycckidv6ipqibf8k1gcf6";
};
meta.homepage = "https://github.com/folke/tokyonight.nvim/";
};
@ -7999,12 +8011,12 @@ final: prev:
trim-nvim = buildVimPluginFrom2Nix {
pname = "trim.nvim";
version = "2022-06-16";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "cappyzawa";
repo = "trim.nvim";
rev = "ab366eb0dd7b3faeaf90a0ec40c993ff18d8c068";
sha256 = "0lxc593rys5yi35iabqgqxi18lsk2jp78f3wdksmkxclf9j7xmbw";
rev = "909150606eab44979eb9595145796f5bcb067955";
sha256 = "0fd7cknf1cwbn3hlsf94323m6k2g4a9kiil4dqmkazvllqn83pg7";
};
meta.homepage = "https://github.com/cappyzawa/trim.nvim/";
};
@ -9048,7 +9060,7 @@ final: prev:
owner = "flazz";
repo = "vim-colorschemes";
rev = "fd8f122cef604330c96a6a6e434682dbdfb878c9";
sha256 = "1cg8q7w0vgl73aw1b9zz0zh5vw5d2pm8pm54fhfzva4azg56f416";
sha256 = "0kpsf6j20fgblc8vhqn7ymr52v2d1h52vc7rbxmxfwdm80nvv3g5";
};
meta.homepage = "https://github.com/flazz/vim-colorschemes/";
};
@ -12311,12 +12323,12 @@ final: prev:
vim-tpipeline = buildVimPluginFrom2Nix {
pname = "vim-tpipeline";
version = "2022-10-16";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "vimpostor";
repo = "vim-tpipeline";
rev = "ec034b5a867843a5785ad90d7126d71fc29ac2e2";
sha256 = "1hrlg4z1m8y66azs9ifhh76vqhr82cwvjk0b7yhi7a5xc9f9qvp7";
rev = "79e759d919c95b415f72714456b2a78ce73e106b";
sha256 = "0ch52ya12niz4wr5njrg71lqa6fhgcjphidg1n7dcyy4l0zvs9ny";
};
meta.homepage = "https://github.com/vimpostor/vim-tpipeline/";
};
@ -12816,12 +12828,12 @@ final: prev:
vimtex = buildVimPluginFrom2Nix {
pname = "vimtex";
version = "2022-10-17";
version = "2022-10-18";
src = fetchFromGitHub {
owner = "lervag";
repo = "vimtex";
rev = "f17f00660b2509dafa11acc516be0a70bc7b7ac2";
sha256 = "1r6802r41sb79kg2sia0mmqxfdn7yjlqbpx757d3ik6sk95z20gp";
rev = "aacc06295f4790ebeec166462cc775d716c1b0e7";
sha256 = "0jfmzf6yqzp7css82ihjci4rcxsjc5laf3rbkabvd6dsa5qjbbl7";
};
meta.homepage = "https://github.com/lervag/vimtex/";
};
@ -13117,12 +13129,12 @@ final: prev:
zig-vim = buildVimPluginFrom2Nix {
pname = "zig.vim";
version = "2022-07-28";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "ziglang";
repo = "zig.vim";
rev = "3538ae95b469bab6dc15d93067798c87f8968010";
sha256 = "05hxwc9j60hn0f95vybp1327mi5z3w4ja5y2mm97r6zwb4a8rccs";
rev = "c33e1e312fc0f9523d09d7ddb845ea5d52db41d0";
sha256 = "17iwx87n8w2ksi9f8ravsa69ng7gzn0px0d5pd58n3lsdvhcsm59";
};
meta.homepage = "https://github.com/ziglang/zig.vim/";
};
@ -13189,12 +13201,12 @@ final: prev:
chad = buildVimPluginFrom2Nix {
pname = "chad";
version = "2022-10-17";
version = "2022-10-19";
src = fetchFromGitHub {
owner = "ms-jpq";
repo = "chadtree";
rev = "07f3d71a42f874a3cbf868e20c7864fba7d98dab";
sha256 = "0dcjqw4dd5fajjzcq5kcciqzqlz98mmqr88pjndi9pz11j4k5sng";
rev = "0fca048835601f00f3fa9c8566de304350edf4ea";
sha256 = "01jfq0cr7agp98adsyi4i0hmawz9v5g0n7xrlxqv88jvjawws637";
};
meta.homepage = "https://github.com/ms-jpq/chadtree/";
};

View file

@ -575,6 +575,7 @@ https://github.com/rust-lang/rust.vim/,,
https://github.com/hauleth/sad.vim/,,
https://github.com/vmware-archive/salt-vim/,,
https://github.com/lewis6991/satellite.nvim/,HEAD,
https://github.com/tiagovla/scope.nvim/,HEAD,
https://github.com/Xuyuanp/scrollbar.nvim/,,
https://github.com/cakebaker/scss-syntax.vim/,,
https://github.com/RobertAudi/securemodelines/,,

View file

@ -55,7 +55,7 @@ let
, stdenvOverride ? stdenv
, src ? (getCoreSrc core)
, broken ? false
, version ? "unstable-2022-10-01"
, version ? "unstable-2022-10-18"
, platforms ? retroarch.meta.platforms
# The resulting core file is based on core name
# Setting `normalizeCore` to `true` will convert `-` to `_` on the core filename

View file

@ -4,6 +4,7 @@
, enableNvidiaCgToolkit ? false
, withGamemode ? stdenv.isLinux
, withVulkan ? stdenv.isLinux
, withWayland ? stdenv.isLinux
, alsa-lib
, AppKit
, dbus
@ -33,19 +34,20 @@
, udev
, vulkan-loader
, wayland
, which
}:
let
version = "1.11.0";
version = "1.12.0";
libretroCoreInfo = fetchFromGitHub {
owner = "libretro";
repo = "libretro-core-info";
sha256 = "sha256-46T87BpzWUQHD7CsCF2sZo065Sl8Y4Sj1zwzBWmCiiU=";
rev = "v${version}";
sha256 = "sha256-9Sfp/JkMJIe34YGNRxf93fONOBuQxR2pduoJU+xtuF0=";
# Upstream didn't tag a new libretro-core-info in 1.12.0 release
rev = "v1.11.1";
};
runtimeLibs = lib.optional withVulkan vulkan-loader
++ lib.optional withGamemode gamemode.lib;
runtimeLibs =
lib.optional withVulkan vulkan-loader ++
lib.optional withGamemode (lib.getLib gamemode);
in
stdenv.mkDerivation rec {
pname = "retroarch-bare";
@ -54,60 +56,77 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "libretro";
repo = "RetroArch";
sha256 = "sha256-/rOf85TQTXbY9kIETaO5E58f2ZvKPqEFLsbNne/+/lw=";
sha256 = "sha256-doLWNA8aTAllxx3zABtvZaegBQEPIi8276zbytPSdBU=";
rev = "v${version}";
};
patches = [
./disable-menu_show_core_updater.patch
./use-fixed-paths-on-libretro_info_path.patch
./use-fixed-paths.patch
];
postPatch = ''
substituteInPlace "frontend/drivers/platform_unix.c" \
--replace "@libretro_directory@" "$out/lib" \
--replace "@libretro_info_path@" "$out/share/libretro/info"
--subst-var-by libretro_directory "$out/lib" \
--subst-var-by libretro_info_path "$out/share/libretro/info" \
--subst-var-by out "$out"
substituteInPlace "frontend/drivers/platform_darwin.m" \
--replace "@libretro_directory@" "$out/lib" \
--replace "@libretro_info_path@" "$out/share/libretro/info"
--subst-var-by libretro_directory "$out/lib" \
--subst-var-by libretro_info_path "$out/share/libretro/info"
'';
nativeBuildInputs = [ pkg-config ] ++
lib.optional stdenv.isLinux wayland ++
lib.optional withWayland wayland ++
lib.optional (runtimeLibs != [ ]) makeWrapper;
buildInputs = [ ffmpeg_4 freetype libxml2 libGLU libGL python3 SDL2 which ] ++
lib.optional enableNvidiaCgToolkit nvidia_cg_toolkit ++
lib.optional withVulkan vulkan-loader ++
lib.optionals stdenv.isDarwin [ libobjc AppKit Foundation ] ++
lib.optionals stdenv.isLinux [
alsa-lib
dbus
libX11
libXdmcp
libXext
libXxf86vm
libdrm
libpulseaudio
libv4l
libxkbcommon
mesa
udev
wayland
];
buildInputs = [
ffmpeg_4
freetype
libGL
libGLU
libxml2
python3
SDL2
] ++
lib.optional enableNvidiaCgToolkit nvidia_cg_toolkit ++
lib.optional withVulkan vulkan-loader ++
lib.optional withWayland wayland ++
lib.optionals stdenv.isDarwin [ libobjc AppKit Foundation ] ++
lib.optionals stdenv.isLinux [
alsa-lib
dbus
libX11
libXdmcp
libXext
libXxf86vm
libdrm
libpulseaudio
libv4l
libxkbcommon
mesa
udev
];
enableParallelBuilding = true;
configureFlags = lib.optionals stdenv.isLinux [ "--enable-kms" "--enable-egl" "--enable-dbus" ];
configureFlags = [
"--disable-update_cores"
] ++
lib.optionals stdenv.isLinux [
"--enable-dbus"
"--enable-egl"
"--enable-kms"
];
postInstall = ''
mkdir -p $out/share/libretro/info
# TODO: ideally each core should have its own core information
mkdir -p $out/share/libretro/info
cp -r ${libretroCoreInfo}/* $out/share/libretro/info
'' + lib.optionalString (runtimeLibs != [ ]) ''
'' +
lib.optionalString (runtimeLibs != [ ]) ''
wrapProgram $out/bin/retroarch \
--prefix LD_LIBRARY_PATH ':' ${lib.makeLibraryPath runtimeLibs}
'' + lib.optionalString stdenv.isDarwin ''
'' +
lib.optionalString stdenv.isDarwin ''
# https://github.com/libretro/RetroArch/blob/master/retroarch-apple-packaging.sh
app=$out/Applications/RetroArch.app
mkdir -p $app/Contents/MacOS

View file

@ -1,25 +0,0 @@
From 546b343294209abbb193883ab76b679b7f99c6d3 Mon Sep 17 00:00:00 2001
From: Thiago Kenji Okada <thiagokokada@gmail.com>
Date: Sat, 20 Nov 2021 16:03:50 -0300
Subject: [PATCH] Disable "menu_show_core_updater"
---
retroarch.cfg | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/retroarch.cfg b/retroarch.cfg
index cdcb199c9f..ab72f3920f 100644
--- a/retroarch.cfg
+++ b/retroarch.cfg
@@ -681,7 +681,7 @@
# menu_show_online_updater = true
# If disabled, will hide the ability to update cores (and core info files) inside the menu.
-# menu_show_core_updater = true
+menu_show_core_updater = false
# If disabled, the libretro core will keep running in the background when we
# are in the menu.
--
2.31.1

View file

@ -1,26 +0,0 @@
diff --git a/retroarch.cfg b/retroarch.cfg
index cdcb199c9f..08b9b1cf10 100644
--- a/retroarch.cfg
+++ b/retroarch.cfg
@@ -681,7 +681,7 @@
# menu_show_online_updater = true
# If disabled, will hide the ability to update cores (and core info files) inside the menu.
-# menu_show_core_updater = true
+menu_show_core_updater = false
# If disabled, the libretro core will keep running in the background when we
# are in the menu.
@@ -823,10 +823,10 @@
# rgui_browser_directory =
# Core directory for libretro core implementations.
-# libretro_directory =
+libretro_directory = @libretro_directory@
# Core info directory for libretro core information.
-# libretro_info_path =
+libretro_info_path = @libretro_info_path@
# Path to content database directory.
# content_database_path =

View file

@ -1,28 +0,0 @@
diff --git a/configuration.c b/configuration.c
index e6a3841324..afb1d6e2ce 100644
--- a/configuration.c
+++ b/configuration.c
@@ -1456,7 +1456,7 @@ static struct config_path_setting *populate_settings_path(
SETTING_PATH("core_options_path",
settings->paths.path_core_options, false, NULL, true);
SETTING_PATH("libretro_info_path",
- settings->paths.path_libretro_info, false, NULL, true);
+ settings->paths.path_libretro_info, false, NULL, false);
SETTING_PATH("content_database_path",
settings->paths.path_content_database, false, NULL, true);
SETTING_PATH("cheat_database_path",
diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c
index 722e1c595c..e7313ee038 100644
--- a/frontend/drivers/platform_unix.c
+++ b/frontend/drivers/platform_unix.c
@@ -1825,8 +1825,8 @@ static void frontend_unix_get_env(int *argc,
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
"core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
#else
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@",
+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
#endif
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path,
"autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG]));

View file

@ -153,8 +153,8 @@
"fbneo": {
"owner": "libretro",
"repo": "fbneo",
"rev": "8678b0fcd02c4049c0cfa40a0ab87fded1bbedd8",
"sha256": "MiLYaURj17Sq8V31SDFQ93XH4DAYMQQelVq+4EBmtro="
"rev": "758f24740d81ff833c1868befd98ccd11909255f",
"sha256": "VhfsvohRWICWqKWry0fgUS76kiXBsnjY9DytxEvulKA="
},
"fceumm": {
"owner": "libretro",
@ -219,8 +219,8 @@
"mame": {
"owner": "libretro",
"repo": "mame",
"rev": "fcacbc7811a9b69874fd09b91e7217e44c6a0980",
"sha256": "WiBmqBcqxXmeQOmTN4FDDUv680uqAkpYUOnvJ7FXn4k="
"rev": "0d935696dce53a13eaf0705f4a108ee348f3c613",
"sha256": "HnJ3eHzTpR7Lsi1ATn3B314y0KNKJ0+qNGcDbFvmZEA="
},
"mame2000": {
"owner": "libretro",
@ -237,8 +237,8 @@
"mame2003-plus": {
"owner": "libretro",
"repo": "mame2003-plus-libretro",
"rev": "982db57b325b54aa90a60bd2e512b624d3b6642c",
"sha256": "uyysUD/PULHyaOw42GJoBsT9fYdYuAl4eLCVNRU8/Sw="
"rev": "d88d5c118e8d7075ec0a4e6deebb4cd3f18a8dd1",
"sha256": "9offucQMCpMqo4StYscS6kivXCYHy4Sn+Cs/3MoNwsw="
},
"mame2010": {
"owner": "libretro",
@ -261,8 +261,8 @@
"melonds": {
"owner": "libretro",
"repo": "melonds",
"rev": "6a03f3f11a729dbf698ec53954c735a0680aca01",
"sha256": "GH/G/UzwjNqHwtIwx6VohP4XsJKe+EFU2n+GX43IByM="
"rev": "5e52c245fb38cabe881fbfa6513280ee44fc5bd8",
"sha256": "jWBZ5wg1dKEgoEV09VTGJ+I4+8uiivAHhpTiD9tPaYg="
},
"mesen": {
"owner": "libretro",
@ -285,8 +285,8 @@
"mgba": {
"owner": "libretro",
"repo": "mgba",
"rev": "db7ace387cdc87d9f2bd4f9f5211c26ce0b07867",
"sha256": "i/U5yrnGQBRHqBu8c/mQ7Eov43+6IOOs+H8pSKXNM1E="
"rev": "199a03e719436018779fe9299706c597fb2e9231",
"sha256": "3Q3MBzezCvl1Er45AeUM/QI0a+JiGn/PfYpqMaaiuds="
},
"mupen64plus": {
"owner": "libretro",
@ -346,28 +346,28 @@
"pcsx_rearmed": {
"owner": "libretro",
"repo": "pcsx_rearmed",
"rev": "5b406fd9567c0829171af44b3325dae6dd155732",
"sha256": "V+z58fRSaLurDiu4Y/xQjndkMKPSmEGjay3foDkppM0="
"rev": "5ced3945423cda0010597b27b7da6bce77b12baa",
"sha256": "8O2XyEr40HqQf8mHxmvB6/UT837HZw8SrKBy/JH66p4="
},
"picodrive": {
"owner": "libretro",
"repo": "picodrive",
"rev": "26719f348eb579a8372e2c58ef0132d95d9dc817",
"sha256": "xD8RxFHeKOltIc35Zudj29x+vkq2AXfSKu0/ZzQQHi4=",
"rev": "0a4ec83cbfaebb65fb1c40f26ffaf28131f9003b",
"sha256": "NOMQoDmXGrxrquAcSLo6Otcz8bH4gnhqcG/zzet3Dtk=",
"fetchSubmodules": true
},
"play": {
"owner": "jpd002",
"repo": "Play-",
"rev": "1129440ab6ede8263275dc3a5eec1624d20442fb",
"sha256": "nTJjxVPGOofnIZbjGe3GZDIj4YnC73IbSdGsSuVIjEA=",
"rev": "1126c39cd8ebf56af347c475139d4db97fc7cc19",
"sha256": "H/cYFWl8rA/ZdoygEjr7h1y6Z0n29Z+OCzzVMvIuVyo=",
"fetchSubmodules": true
},
"ppsspp": {
"owner": "hrydgard",
"repo": "ppsspp",
"rev": "16f93a26844b26e11cf9becfd275c4a637bfd1ab",
"sha256": "k1URDPE4kRMY1LUeR2zcLJFGt0Gnt5N8gTQHpIxDdRw=",
"rev": "4af4b0dddc638b00205d9943f17a2806e438fe83",
"sha256": "5n+Mg2ZDTJd5fk1OZAiYnCT13G3LAWahXPA+MwaOF08=",
"fetchSubmodules": true
},
"prboom": {
@ -385,8 +385,8 @@
"puae": {
"owner": "libretro",
"repo": "libretro-uae",
"rev": "1b7dd443ff89d667d99f8c44454a91ed59bcabd9",
"sha256": "YJiZEtB0rBFffEZj/hB7zEFBUp02kCzblq4CtCmygKo="
"rev": "4d8ebafe3f91c4998e8d73940e9558d863ecf93b",
"sha256": "dzfZFm7L+Qe3WwSYiMLp3cQm8zk0pWVB68nBe/H1Hvc="
},
"quicknes": {
"owner": "libretro",
@ -439,8 +439,8 @@
"stella": {
"owner": "stella-emu",
"repo": "stella",
"rev": "65115cc3a133d68979f3096bdecb067bcaedb493",
"sha256": "letOnjaIGIjC9xwj5C156VkBhMPFtVq12FG7SuC5+OY="
"rev": "7193c405327e0f2156d24d53836162f4b44af079",
"sha256": "A9icQON+0WrknjGp/0wiFNSWs2ot2s0X5lucCdk4O/s="
},
"stella2014": {
"owner": "libretro",
@ -451,8 +451,8 @@
"swanstation": {
"owner": "libretro",
"repo": "swanstation",
"rev": "b6a18318bd7bf0d3b28b50d2b554810ea11b30cb",
"sha256": "jZ6SfiHFJyaTFvINrEe61yhUtWYoqRzaAi0vLuDnMuo="
"rev": "ff0b451a573885a5b3a4f291f7b22f3ffc667a17",
"sha256": "jz8tkvgonc4icRt12tt1BBCCiwec0ucix7Hp7PNPl8E="
},
"tgbdual": {
"owner": "libretro",
@ -476,8 +476,8 @@
"vba-m": {
"owner": "libretro",
"repo": "vbam-libretro",
"rev": "7c25d64d6903c6d859cce781c52da0671c4f7d3e",
"sha256": "U+jBM34sZxny9lpuegQ8YDKBwYrWOAyLBMKumoQCok4="
"rev": "7e30b038893de63e674944f75581d57c7685ea3a",
"sha256": "CmmiKiy0mFqAiagUHFV5wRSZ0MkzADrHRAG+h82dWAQ="
},
"vba-next": {
"owner": "libretro",

View file

@ -1,84 +0,0 @@
From 7bf021529ff15ca2580b15b3c0bfdc137d5beffe Mon Sep 17 00:00:00 2001
From: Thiago Kenji Okada <thiagokokada@gmail.com>
Date: Wed, 9 Mar 2022 18:24:15 +0000
Subject: [PATCH] Use fixed paths on "libretro_info_path"
This patch sets "libretro_info_path" to `handle = false`, so instead of
using the values from `retroarch.cfg`, it will always use the default.
Also, it patches the default "libretro_info_path" to the
`@libretro_info_path` string, so we can substitute it with the full path
to it during build.
---
configuration.c | 2 +-
frontend/drivers/platform_darwin.m | 9 ++-------
frontend/drivers/platform_unix.c | 12 ++++--------
3 files changed, 7 insertions(+), 16 deletions(-)
diff --git a/configuration.c b/configuration.c
index 7e346ff6e9..c4b2100203 100644
--- a/configuration.c
+++ b/configuration.c
@@ -1466,7 +1466,7 @@ static struct config_path_setting *populate_settings_path(
SETTING_PATH("core_options_path",
settings->paths.path_core_options, false, NULL, true);
SETTING_PATH("libretro_info_path",
- settings->paths.path_libretro_info, false, NULL, true);
+ settings->paths.path_libretro_info, false, NULL, false);
SETTING_PATH("content_database_path",
settings->paths.path_content_database, false, NULL, true);
SETTING_PATH("cheat_database_path",
diff --git a/frontend/drivers/platform_darwin.m b/frontend/drivers/platform_darwin.m
index 6c5fdca400..552dcb7e2b 100644
--- a/frontend/drivers/platform_darwin.m
+++ b/frontend/drivers/platform_darwin.m
@@ -388,14 +388,9 @@ static void frontend_darwin_get_env(int *argc, char *argv[],
home_dir_buf, "shaders_glsl",
sizeof(g_defaults.dirs[DEFAULT_DIR_SHADER]));
#endif
-#ifdef HAVE_UPDATE_CORES
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE],
- home_dir_buf, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-#else
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE],
- bundle_path_buf, "modules", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
-#endif
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], home_dir_buf, "info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ "@libretro_directory@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], home_dir_buf, "overlays", sizeof(g_defaults.dirs[DEFAULT_DIR_OVERLAY]));
#ifdef HAVE_VIDEO_LAYOUT
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT], home_dir_buf, "layouts", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT]));
diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c
index b3b5dad173..7f1561e523 100644
--- a/frontend/drivers/platform_unix.c
+++ b/frontend/drivers/platform_unix.c
@@ -1820,12 +1820,8 @@ static void frontend_unix_get_env(int *argc,
strcpy_literal(base_path, "retroarch");
#endif
- if (!string_is_empty(libretro_directory))
- strlcpy(g_defaults.dirs[DEFAULT_DIR_CORE], libretro_directory,
- sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
- else
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], base_path,
- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], "@libretro_directory@",
+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
#if defined(DINGUX)
/* On platforms that require manual core installation/
* removal, placing core info files in the same directory
@@ -1834,8 +1830,8 @@ static void frontend_unix_get_env(int *argc,
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
"core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
#else
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@",
+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
#endif
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path,
"autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG]));
--
2.32.0

View file

@ -0,0 +1,154 @@
From 8a1cffebb23f9d2a28228cd8cbf4fd80836157e8 Mon Sep 17 00:00:00 2001
From: Thiago Kenji Okada <thiagokokada@gmail.com>
Date: Tue, 18 Oct 2022 17:41:33 +0100
Subject: [PATCH] Use fixed paths
---
configuration.c | 2 +-
frontend/drivers/platform_darwin.m | 4 +--
frontend/drivers/platform_unix.c | 56 +++++++++++++++---------------
3 files changed, 31 insertions(+), 31 deletions(-)
diff --git a/configuration.c b/configuration.c
index ac4779b2d7..d980892dda 100644
--- a/configuration.c
+++ b/configuration.c
@@ -1468,7 +1468,7 @@ static struct config_path_setting *populate_settings_path(
SETTING_PATH("core_options_path",
settings->paths.path_core_options, false, NULL, true);
SETTING_PATH("libretro_info_path",
- settings->paths.path_libretro_info, false, NULL, true);
+ settings->paths.path_libretro_info, false, NULL, false);
SETTING_PATH("content_database_path",
settings->paths.path_content_database, false, NULL, true);
SETTING_PATH("cheat_database_path",
diff --git a/frontend/drivers/platform_darwin.m b/frontend/drivers/platform_darwin.m
index c771ec0f55..d5e21a1f4d 100644
--- a/frontend/drivers/platform_darwin.m
+++ b/frontend/drivers/platform_darwin.m
@@ -400,9 +400,9 @@ static void frontend_darwin_get_env(int *argc, char *argv[],
home_dir_buf, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
#else
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE],
- bundle_path_buf, "modules", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
+ "@libretro_directory@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
#endif
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], home_dir_buf, "info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], home_dir_buf, "overlays", sizeof(g_defaults.dirs[DEFAULT_DIR_OVERLAY]));
#ifdef HAVE_VIDEO_LAYOUT
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT], home_dir_buf, "layouts", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT]));
diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c
index 29e9a0d633..dba8abe941 100644
--- a/frontend/drivers/platform_unix.c
+++ b/frontend/drivers/platform_unix.c
@@ -1792,8 +1792,8 @@ static void frontend_unix_get_env(int *argc,
strlcpy(g_defaults.dirs[DEFAULT_DIR_CORE], libretro_directory,
sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
else
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], base_path,
- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], "@libretro_directory@",
+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE]));
#if defined(DINGUX)
/* On platforms that require manual core installation/
* removal, placing core info files in the same directory
@@ -1802,27 +1802,27 @@ static void frontend_unix_get_env(int *argc,
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
"core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
#else
- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path,
- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@",
+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO]));
#endif
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path,
"autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG]));
- if (path_is_directory("/usr/local/share/retroarch/assets"))
+ if (path_is_directory("@out@/local/share/retroarch/assets"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
- "/usr/local/share/retroarch",
+ "@out@/local/share/retroarch",
"assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
- else if (path_is_directory("/usr/share/retroarch/assets"))
+ else if (path_is_directory("@out@/share/retroarch/assets"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
- "/usr/share/retroarch",
+ "@out@/share/retroarch",
"assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
- else if (path_is_directory("/usr/local/share/games/retroarch/assets"))
+ else if (path_is_directory("@out@/local/share/games/retroarch/assets"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
- "/usr/local/share/games/retroarch",
+ "@out@/local/share/games/retroarch",
"assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
- else if (path_is_directory("/usr/share/games/retroarch/assets"))
+ else if (path_is_directory("@out@/share/games/retroarch/assets"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS],
- "/usr/share/games/retroarch",
+ "@out@/share/games/retroarch",
"assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS]));
else
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], base_path,
@@ -1834,41 +1834,41 @@ static void frontend_unix_get_env(int *argc,
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], base_path,
"filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
#else
- if (path_is_directory("/usr/local/share/retroarch/filters/audio"))
+ if (path_is_directory("@out@/local/share/retroarch/filters/audio"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
- "/usr/local/share/retroarch",
+ "@out@/local/share/retroarch",
"filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
- else if (path_is_directory("/usr/share/retroarch/filters/audio"))
+ else if (path_is_directory("@out@/share/retroarch/filters/audio"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
- "/usr/share/retroarch",
+ "@out@/share/retroarch",
"filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
- else if (path_is_directory("/usr/local/share/games/retroarch/filters/audio"))
+ else if (path_is_directory("@out@/local/share/games/retroarch/filters/audio"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
- "/usr/local/share/games/retroarch",
+ "@out@/local/share/games/retroarch",
"filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
- else if (path_is_directory("/usr/share/games/retroarch/filters/audio"))
+ else if (path_is_directory("@out@/share/games/retroarch/filters/audio"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER],
- "/usr/share/games/retroarch",
+ "@out@/share/games/retroarch",
"filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
else
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], base_path,
"filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER]));
- if (path_is_directory("/usr/local/share/retroarch/filters/video"))
+ if (path_is_directory("@out@/local/share/retroarch/filters/video"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
- "/usr/local/share/retroarch",
+ "@out@/local/share/retroarch",
"filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
- else if (path_is_directory("/usr/share/retroarch/filters/video"))
+ else if (path_is_directory("@out@/share/retroarch/filters/video"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
- "/usr/share/retroarch",
+ "@out@/share/retroarch",
"filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
- else if (path_is_directory("/usr/local/share/games/retroarch/filters/video"))
+ else if (path_is_directory("@out@/local/share/games/retroarch/filters/video"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
- "/usr/local/share/games/retroarch",
+ "@out@/local/share/games/retroarch",
"filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
- else if (path_is_directory("/usr/share/games/retroarch/filters/video"))
+ else if (path_is_directory("@out@/share/games/retroarch/filters/video"))
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER],
- "/usr/share/games/retroarch",
+ "@out@/share/games/retroarch",
"filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER]));
else
fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], base_path,
--
2.37.3

View file

@ -2,44 +2,47 @@
, rustPlatform
, fetchFromGitHub
, stdenv
, python3
, pkg-config
, expat
, fontconfig
, freetype
, libGL
, xorg
, libxkbcommon
, darwin
, AppKit
, IOKit
}:
rustPlatform.buildRustPackage rec {
pname = "epick";
version = "0.8.2";
version = "0.9.0";
src = fetchFromGitHub {
owner = "vv9k";
repo = pname;
rev = version;
sha256 = "sha256-b4if2ggJY+8CsCX8jbnnWXy16k7sfB88CLlYYCrtltk=";
sha256 = "sha256-k0WQu1n1sAHVor58jr060vD5/2rDrt1k5zzJlrK9WrU=";
};
cargoSha256 = "sha256-HyGSmeLJ+2Twkg94p1QqXZDix0mU2jGFfEot6hgUg34=";
cargoSha256 = "sha256-OQZPOiMTpoWabxHa3TJG8L3zq8WxMeFttw8xggSXsMA=";
nativeBuildInputs = lib.optional stdenv.isLinux python3;
nativeBuildInputs = lib.optionals stdenv.isLinux [
pkg-config
];
buildInputs = lib.optionals stdenv.isLinux [
libGL
expat
fontconfig
freetype
xorg.libX11
xorg.libXcursor
xorg.libXi
xorg.libXrandr
xorg.libxcb
libxkbcommon
] ++ lib.optionals stdenv.isDarwin [
AppKit
IOKit
];
postFixup = lib.optionalString stdenv.isLinux ''
patchelf --set-rpath ${lib.makeLibraryPath buildInputs} $out/bin/epick
patchelf $out/bin/epick --add-rpath ${lib.makeLibraryPath [ libGL ]}
'';
meta = with lib; {

View file

@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/release-service/22.08.1/src -A '*.tar.xz' )
WGET_ARGS=( https://download.kde.org/stable/release-service/22.08.2/src -A '*.tar.xz' )

File diff suppressed because it is too large Load diff

View file

@ -74,13 +74,13 @@ let
self: super: {
octoprint = self.buildPythonPackage rec {
pname = "OctoPrint";
version = "1.8.4";
version = "1.8.6";
src = fetchFromGitHub {
owner = "OctoPrint";
repo = "OctoPrint";
rev = version;
hash = "sha256-oYP+K7WBkYP7gajXZdbZso17u+GeyrIgEbhNjwRXbAo=";
hash = "sha256-DCUesPy4/g7DYN/9CDRvwAWHcv4dFsF+gsysg5UWThQ=";
};
propagatedBuildInputs = with super; [

View file

@ -14,13 +14,13 @@
stdenv.mkDerivation rec {
pname = "warpd";
version = "1.3.3";
version = "1.3.4";
src = fetchFromGitHub {
owner = "rvaiya";
repo = "warpd";
rev = "v${version}";
sha256 = "sha256-QzMtPzuFVN8b4O250G38HAxerZewEu8MV/MDib7gh5A=";
sha256 = "sha256-aNv2/+tREvKlpTAsbvmFxkXzONNt73/061i4E3fPFBM=";
leaveDotGit = true;
};

View file

@ -0,0 +1,30 @@
{ lib, less, ncurses, buildGoModule, fetchFromGitHub, makeWrapper }:
buildGoModule rec {
pname = "circumflex";
version = "2.6";
src = fetchFromGitHub {
owner = "bensadeh";
repo = "circumflex";
rev = version;
hash = "sha256-pcY2PXiOazKAi8mAAbmftXDae01fcUw/u9JPOHQVclI=";
};
vendorHash = "sha256-rF1Hu4Pf9AF2MTx4GAPmzSn0M38uTxPS1bsAkO23SdI=";
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram $out/bin/clx \
--prefix PATH : ${lib.makeBinPath [ less ncurses ]}
'';
meta = with lib; {
description = "A command line tool for browsing Hacker News in your terminal";
homepage = "https://github.com/bensadeh/circumflex";
license = licenses.agpl3;
maintainers = with maintainers; [ mktip ];
mainProgram = "clx";
};
}

View file

@ -222,13 +222,13 @@
"version": "1.19.3"
},
"cloudflare": {
"hash": "sha256-nHA9z7IziBpMgR9ooCt6pGjE1CaxjNHQMpUdxl0l3ns=",
"hash": "sha256-uItV3BTB3bY8NrjD63oUWZMB0gEscEN4Y6aDTuDQW7c=",
"owner": "cloudflare",
"provider-source-address": "registry.terraform.io/cloudflare/cloudflare",
"repo": "terraform-provider-cloudflare",
"rev": "v3.25.0",
"vendorHash": "sha256-9LZ8KjobPSSyZ02oYUrn1gftNYtui/zezfIYD9mkhQc=",
"version": "3.25.0"
"rev": "v3.26.0",
"vendorHash": "sha256-pifWJoCbV0bIDzDihdvpC3k5d615HTsYHqVV3s50euk=",
"version": "3.26.0"
},
"cloudfoundry": {
"hash": "sha256-VfGB0NkT36oYT5F1fh1N/2rlZdfhk+K76AXNh0NkO50=",

View file

@ -3,7 +3,7 @@ let
versions = if stdenv.isLinux then {
stable = "0.0.20";
ptb = "0.0.29";
canary = "0.0.139";
canary = "0.0.140";
} else {
stable = "0.0.264";
ptb = "0.0.59";
@ -22,7 +22,7 @@ let
};
canary = fetchurl {
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
sha256 = "sha256-/PfO0TWRxMrK+V1XkYmdaXQ6SfyJNBFETaR9oV90itI=";
sha256 = "sha256-AEbjkAMeOJ48RVgbVj35Rp26klCsCsDCX+VD5u1xCM0=";
};
};
aarch64-darwin = {

View file

@ -46,6 +46,7 @@
, libthai
, libdatrie
, xdg-utils
, xorg
, libsysprof-capture
, libpsl
, brotli
@ -170,7 +171,8 @@ env.mkDerivation rec {
wrapProgram $out/bin/telegram-desktop \
"''${gappsWrapperArgs[@]}" \
"''${qtWrapperArgs[@]}" \
--suffix PATH : ${lib.makeBinPath [ xdg-utils]} \
--prefix LD_LIBRARY_PATH : "${xorg.libXcursor}/lib" \
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
--set XDG_RUNTIME_DIR "XDG-RUNTIME-DIR"
sed -i $out/bin/telegram-desktop \
-e "s,'XDG-RUNTIME-DIR',\"\''${XDG_RUNTIME_DIR:-/run/user/\$(id --user)}\","

View file

@ -26,7 +26,7 @@
mkDerivation rec {
pname = "nextcloud-client";
version = "3.6.0";
version = "3.6.1";
outputs = [ "out" "dev" ];
@ -34,7 +34,7 @@ mkDerivation rec {
owner = "nextcloud";
repo = "desktop";
rev = "v${version}";
sha256 = "sha256-wAxq5xFlofn2xEguvewMvGcel9O+CN/1AycR3tv/xMA=";
sha256 = "sha256-RCYiUxTZSuZbDocueW0d8PdsRTR9bTjDgx0H53UGDP4=";
};
patches = [

View file

@ -94,6 +94,7 @@
, ncurses
, libepoxy
, gpgme
, libwebp
, abseil-cpp
, langs ? [ "ca" "cs" "da" "de" "en-GB" "en-US" "eo" "es" "fr" "hu" "it" "ja" "nl" "pl" "pt" "pt-BR" "ro" "ru" "sl" "uk" "zh-CN" ]
, withHelp ? true
@ -116,7 +117,7 @@ assert builtins.elem variant [ "fresh" "still" ];
let
inherit (lib)
flatten flip
concatMapStrings concatMapStringsSep concatStringsSep
concatMapStrings concatStringsSep
getDev getLib
optional optionals optionalString;
@ -128,7 +129,7 @@ let
primary-src = importVariant "primary.nix" { inherit fetchurl; };
inherit (primary-src) major minor subdir version;
inherit (primary-src) major minor version;
langsSpaces = concatStringsSep " " langs;
@ -194,20 +195,8 @@ in
tar -xf ${srcs.translations}
'';
patches = [
./skip-failed-test-with-icu70.patch
# Fix build with poppler 22.03
(fetchurl {
url = "https://github.com/archlinux/svntogit-packages/raw/f82958b9538f86e41b51f1ba7134968d2f3788d1/trunk/poppler-22.03.0.patch";
sha256 = "5h4qJmx6Q3Q3dHUlSi8JXBziN2mAswGVWk5aDTLTwls=";
})
# Fix build with poppler 22.04
./poppler-22-04-0.patch
./gpgme-1.18.patch
];
patches = optional (variant == "still") [ ./skip-failed-test-with-icu70.patch ./gpgme-1.18.patch ]
;
### QT/KDE
#
@ -226,7 +215,7 @@ in
# add the missing dependencies to it).
postPatch = ''
substituteInPlace shell/source/unix/exec/shellexec.cxx \
--replace /usr/bin/xdg-open ${if kdeIntegration then "kde-open5" else "xdg-open"}
--replace xdg-open ${if kdeIntegration then "kde-open5" else "xdg-open"}
# configure checks for header 'gpgme++/gpgmepp_version.h',
# and if it is found (no matter where) uses a hardcoded path
@ -341,6 +330,7 @@ in
sed -e '/CPPUNIT_TEST(testEmbeddedDataSource);/d' -i './sw/qa/extras/uiwriter/uiwriter.cxx'
sed -e '/CPPUNIT_TEST(testTdf96479);/d' -i './sw/qa/extras/uiwriter/uiwriter.cxx'
sed -e '/CPPUNIT_TEST(testInconsistentBookmark);/d' -i './sw/qa/extras/uiwriter/uiwriter.cxx'
sed -e /CppunitTest_sw_layoutwriter/d -i sw/Module_sw.mk
sed -e "s/DECLARE_SW_ROUNDTRIP_TEST(\([_a-zA-Z0-9.]\+\)[, ].*, *\([_a-zA-Z0-9.]\+\))/class \\1: public \\2 { public: void verify() override; }; void \\1::verify() /" -i "sw/qa/extras/ooxmlexport/ooxmlexport9.cxx"
sed -e "s/DECLARE_SW_ROUNDTRIP_TEST(\([_a-zA-Z0-9.]\+\)[, ].*, *\([_a-zA-Z0-9.]\+\))/class \\1: public \\2 { public: void verify() override; }; void \\1::verify() /" -i "sw/qa/extras/ooxmlexport/ooxmlencryption.cxx"
sed -e "s/DECLARE_SW_ROUNDTRIP_TEST(\([_a-zA-Z0-9.]\+\)[, ].*, *\([_a-zA-Z0-9.]\+\))/class \\1: public \\2 { public: void verify() override; }; void \\1::verify() /" -i "sw/qa/extras/odfexport/odfexport.cxx"
@ -374,12 +364,6 @@ in
ln -s $out/bin/soffice $out/bin/libreoffice
ln -s $out/lib/libreoffice/share/xdg $out/share/applications
for f in $out/share/applications/*.desktop; do
substituteInPlace "$f" \
--replace "Exec=libreofficedev${major}.${minor}" "Exec=libreoffice" \
--replace "Exec=libreoffice${major}.${minor}" "Exec=libreoffice"
done
cp -r sysui/desktop/icons "$out/share"
sed -re 's@Icon=libreoffice(dev)?[0-9.]*-?@Icon=@' -i "$out/share/applications/"*.desktop
@ -432,7 +416,6 @@ in
"--disable-postgresql-sdbc"
"--disable-firebird-sdbc"
"--without-fonts"
"--without-myspell-dicts"
"--without-doxygen"
# TODO: package these as system libraries
@ -449,10 +432,12 @@ in
"--without-system-libstaroffice"
"--without-system-libepubgen"
"--without-system-libqxp"
"--without-system-mdds" # we have mdds but our version is too new
"--with-system-mdds"
# https://github.com/NixOS/nixpkgs/commit/5c5362427a3fa9aefccfca9e531492a8735d4e6f
"--without-system-orcus"
"--without-system-xmlsec"
"--without-system-cuckoo"
"--without-system-zxing"
] ++ optionals kdeIntegration [
"--enable-kf5"
"--enable-qt5"
@ -573,7 +558,8 @@ in
gst-plugins-ugly
gstreamer
])
++ optionals kdeIntegration [ qtbase qtx11extras kcoreaddons kio ];
++ optionals kdeIntegration [ qtbase qtx11extras kcoreaddons kio ]
++ optionals (lib.versionAtLeast (lib.versions.majorMinor version) "7.4") [ libwebp ];
passthru = {
inherit srcs;

View file

@ -7,32 +7,18 @@
md5name = "e763a9dc21c3d2667402d66e202e3f8ef4db51b34b79ef41f56cacb86dcd6eed-libabw-0.1.3.tar.xz";
}
{
name = "apr-1.5.2.tar.gz";
url = "https://dev-www.libreoffice.org/src/apr-1.5.2.tar.gz";
sha256 = "1af06e1720a58851d90694a984af18355b65bb0d047be03ec7d659c746d6dbdb";
name = "boost_1_79_0.tar.xz";
url = "https://dev-www.libreoffice.org/src/boost_1_79_0.tar.xz";
sha256 = "2058aa88758a0e1aaac1759b3c4bad2526f899c6ecc6eeea79aa5e8fd3ea95dc";
md5 = "";
md5name = "1af06e1720a58851d90694a984af18355b65bb0d047be03ec7d659c746d6dbdb-apr-1.5.2.tar.gz";
md5name = "2058aa88758a0e1aaac1759b3c4bad2526f899c6ecc6eeea79aa5e8fd3ea95dc-boost_1_79_0.tar.xz";
}
{
name = "apr-util-1.5.4.tar.gz";
url = "https://dev-www.libreoffice.org/src/apr-util-1.5.4.tar.gz";
sha256 = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19";
name = "box2d-2.4.1.tar.gz";
url = "https://dev-www.libreoffice.org/src/box2d-2.4.1.tar.gz";
sha256 = "d6b4650ff897ee1ead27cf77a5933ea197cbeef6705638dd181adc2e816b23c2";
md5 = "";
md5name = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19-apr-util-1.5.4.tar.gz";
}
{
name = "boost_1_77_0.tar.xz";
url = "https://dev-www.libreoffice.org/src/boost_1_77_0.tar.xz";
sha256 = "9b334d6c6d7af5a0687280788cd84444398b8e0b472cd88e52bbc3c3ef11d98e";
md5 = "";
md5name = "9b334d6c6d7af5a0687280788cd84444398b8e0b472cd88e52bbc3c3ef11d98e-boost_1_77_0.tar.xz";
}
{
name = "box2d-2.3.1.tar.gz";
url = "https://dev-www.libreoffice.org/src/box2d-2.3.1.tar.gz";
sha256 = "58ffc8475a8650aadc351345aef696937747b40501ab78d72c197c5ff5b3035c";
md5 = "";
md5name = "58ffc8475a8650aadc351345aef696937747b40501ab78d72c197c5ff5b3035c-box2d-2.3.1.tar.gz";
md5name = "d6b4650ff897ee1ead27cf77a5933ea197cbeef6705638dd181adc2e816b23c2-box2d-2.4.1.tar.gz";
}
{
name = "breakpad-b324760c7f53667af128a6b77b790323da04fcb9.tar.xz";
@ -56,11 +42,11 @@
md5name = "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269-bzip2-1.0.8.tar.gz";
}
{
name = "cairo-1.17.4.tar.xz";
url = "https://dev-www.libreoffice.org/src/cairo-1.17.4.tar.xz";
sha256 = "74b24c1ed436bbe87499179a3b27c43f4143b8676d8ad237a6fa787401959705";
name = "cairo-1.17.6.tar.xz";
url = "https://dev-www.libreoffice.org/src/cairo-1.17.6.tar.xz";
sha256 = "4eebc4c2bad0402bc3f501db184417094657d111fb6c06f076a82ea191fe1faf";
md5 = "";
md5name = "74b24c1ed436bbe87499179a3b27c43f4143b8676d8ad237a6fa787401959705-cairo-1.17.4.tar.xz";
md5name = "4eebc4c2bad0402bc3f501db184417094657d111fb6c06f076a82ea191fe1faf-cairo-1.17.6.tar.xz";
}
{
name = "libcdr-0.1.7.tar.xz";
@ -76,6 +62,13 @@
md5 = "48d647fbd8ef8889e5a7f422c1bfda94";
md5name = "48d647fbd8ef8889e5a7f422c1bfda94-clucene-core-2.3.3.4.tar.gz";
}
{
name = "dragonbox-1.1.0.tar.gz";
url = "https://dev-www.libreoffice.org/src/dragonbox-1.1.0.tar.gz";
sha256 = "293247ccba995ec47ae3abb52c3e83904a7d71efb7093d4c0d2c6367c1cc1e20";
md5 = "";
md5name = "293247ccba995ec47ae3abb52c3e83904a7d71efb7093d4c0d2c6367c1cc1e20-dragonbox-1.1.0.tar.gz";
}
{
name = "dtoa-20180411.tgz";
url = "https://dev-www.libreoffice.org/src/dtoa-20180411.tgz";
@ -105,18 +98,11 @@
md5name = "89c5c6665337f56fd2db36bc3805a5619709d51fb136e51937072f63fcc717a7-cppunit-1.15.1.tar.gz";
}
{
name = "converttexttonumber-1-5-0.oxt";
url = "https://dev-www.libreoffice.org/src/1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt";
sha256 = "71b238efd2734be9800af07566daea8d6685aeed28db5eb5fa0e6453f4d85de3";
md5 = "1f467e5bb703f12cbbb09d5cf67ecf4a";
md5name = "1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt";
}
{
name = "curl-7.79.1.tar.xz";
url = "https://dev-www.libreoffice.org/src/curl-7.79.1.tar.xz";
sha256 = "0606f74b1182ab732a17c11613cbbaf7084f2e6cca432642d0e3ad7c224c3689";
name = "curl-7.85.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/curl-7.85.0.tar.xz";
sha256 = "88b54a6d4b9a48cb4d873c7056dcba997ddd5b7be5a2d537a4acb55c20b04be6";
md5 = "";
md5name = "0606f74b1182ab732a17c11613cbbaf7084f2e6cca432642d0e3ad7c224c3689-curl-7.79.1.tar.xz";
md5name = "88b54a6d4b9a48cb4d873c7056dcba997ddd5b7be5a2d537a4acb55c20b04be6-curl-7.85.0.tar.xz";
}
{
name = "libe-book-0.1.3.tar.xz";
@ -154,11 +140,11 @@
md5name = "b430435a6e8487888b761dc848b7981626eb814884963ffe25eb26a139301e9a-libetonyek-0.1.10.tar.xz";
}
{
name = "expat-2.4.6.tar.xz";
url = "https://dev-www.libreoffice.org/src/expat-2.4.6.tar.xz";
sha256 = "de55794b7a9bc214852fdc075beaaecd854efe1361597e6268ee87946951289b";
name = "expat-2.4.9.tar.xz";
url = "https://dev-www.libreoffice.org/src/expat-2.4.9.tar.xz";
sha256 = "6e8c0728fe5c7cd3f93a6acce43046c5e4736c7b4b68e032e9350daa0efc0354";
md5 = "";
md5name = "de55794b7a9bc214852fdc075beaaecd854efe1361597e6268ee87946951289b-expat-2.4.6.tar.xz";
md5name = "6e8c0728fe5c7cd3f93a6acce43046c5e4736c7b4b68e032e9350daa0efc0354-expat-2.4.9.tar.xz";
}
{
name = "Firebird-3.0.7.33374-0.tar.bz2";
@ -280,11 +266,11 @@
md5name = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52-alef-1.001.tar.gz";
}
{
name = "Amiri-0.111.zip";
url = "https://dev-www.libreoffice.org/src/Amiri-0.111.zip";
sha256 = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166";
name = "Amiri-0.117.zip";
url = "https://dev-www.libreoffice.org/src/Amiri-0.117.zip";
sha256 = "9c4e768893e0023a0ad6f488d5c84bd5add6565d3dcadb838ba5b20e75fcc9a7";
md5 = "";
md5name = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166-Amiri-0.111.zip";
md5name = "9c4e768893e0023a0ad6f488d5c84bd5add6565d3dcadb838ba5b20e75fcc9a7-Amiri-0.117.zip";
}
{
name = "ttf-kacst_2.01+mry.tar.gz";
@ -294,11 +280,11 @@
md5name = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56-ttf-kacst_2.01+mry.tar.gz";
}
{
name = "ReemKufi-0.7.zip";
url = "https://dev-www.libreoffice.org/src/ReemKufi-0.7.zip";
sha256 = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f";
name = "ReemKufi-1.2.zip";
url = "https://dev-www.libreoffice.org/src/ReemKufi-1.2.zip";
sha256 = "c4fd68a23c0ea471cc084ae7efe888da372b925cb208eeb0322c26792d2ef413";
md5 = "";
md5name = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f-ReemKufi-0.7.zip";
md5name = "c4fd68a23c0ea471cc084ae7efe888da372b925cb208eeb0322c26792d2ef413-ReemKufi-1.2.zip";
}
{
name = "Scheherazade-2.100.zip";
@ -315,11 +301,11 @@
md5name = "0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac-libfreehand-0.1.2.tar.xz";
}
{
name = "freetype-2.11.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/freetype-2.11.0.tar.xz";
sha256 = "8bee39bd3968c4804b70614a0a3ad597299ad0e824bc8aad5ce8aaf48067bde7";
name = "freetype-2.11.1.tar.xz";
url = "https://dev-www.libreoffice.org/src/freetype-2.11.1.tar.xz";
sha256 = "3333ae7cfda88429c97a7ae63b7d01ab398076c3b67182e960e5684050f2c5c8";
md5 = "";
md5name = "8bee39bd3968c4804b70614a0a3ad597299ad0e824bc8aad5ce8aaf48067bde7-freetype-2.11.0.tar.xz";
md5name = "3333ae7cfda88429c97a7ae63b7d01ab398076c3b67182e960e5684050f2c5c8-freetype-2.11.1.tar.xz";
}
{
name = "glm-0.9.9.8.zip";
@ -343,11 +329,11 @@
md5name = "b8e892d8627c41888ff121e921455b9e2d26836978f2359173d19825da62b8fc-graphite2-minimal-1.3.14.tgz";
}
{
name = "harfbuzz-2.8.2.tar.xz";
url = "https://dev-www.libreoffice.org/src/harfbuzz-2.8.2.tar.xz";
sha256 = "d58461395ce28b9dc03903254374dd70c38c8c28c5046db123c08f7ab9417be7";
name = "harfbuzz-4.3.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/harfbuzz-4.3.0.tar.xz";
sha256 = "a49628f4c4c8e6d8df95ef44935a93446cf2e46366915b0e3ca30df21fffb530";
md5 = "";
md5name = "d58461395ce28b9dc03903254374dd70c38c8c28c5046db123c08f7ab9417be7-harfbuzz-2.8.2.tar.xz";
md5name = "a49628f4c4c8e6d8df95ef44935a93446cf2e46366915b0e3ca30df21fffb530-harfbuzz-4.3.0.tar.xz";
}
{
name = "hsqldb_1_8_0.zip";
@ -371,18 +357,18 @@
md5name = "5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz";
}
{
name = "icu4c-70_1-src.tgz";
url = "https://dev-www.libreoffice.org/src/icu4c-70_1-src.tgz";
sha256 = "8d205428c17bf13bb535300669ed28b338a157b1c01ae66d31d0d3e2d47c3fd5";
name = "icu4c-71_1-src.tgz";
url = "https://dev-www.libreoffice.org/src/icu4c-71_1-src.tgz";
sha256 = "67a7e6e51f61faf1306b6935333e13b2c48abd8da6d2f46ce6adca24b1e21ebf";
md5 = "";
md5name = "8d205428c17bf13bb535300669ed28b338a157b1c01ae66d31d0d3e2d47c3fd5-icu4c-70_1-src.tgz";
md5name = "67a7e6e51f61faf1306b6935333e13b2c48abd8da6d2f46ce6adca24b1e21ebf-icu4c-71_1-src.tgz";
}
{
name = "icu4c-70_1-data.zip";
url = "https://dev-www.libreoffice.org/src/icu4c-70_1-data.zip";
sha256 = "c72723ddba3300ffb231d6b09e2a728ea6e89de10ed5927f74bacbd77042336e";
name = "icu4c-71_1-data.zip";
url = "https://dev-www.libreoffice.org/src/icu4c-71_1-data.zip";
sha256 = "e3882b4fece6e5e039f22c3189b7ba224180fd26fdbfa9db284617455b93e804";
md5 = "";
md5name = "c72723ddba3300ffb231d6b09e2a728ea6e89de10ed5927f74bacbd77042336e-icu4c-70_1-data.zip";
md5name = "e3882b4fece6e5e039f22c3189b7ba224180fd26fdbfa9db284617455b93e804-icu4c-71_1-data.zip";
}
{
name = "flow-engine-0.9.4.zip";
@ -462,25 +448,18 @@
md5name = "39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip";
}
{
name = "libjpeg-turbo-2.1.1.tar.gz";
url = "https://dev-www.libreoffice.org/src/libjpeg-turbo-2.1.1.tar.gz";
sha256 = "20e9cd3e5f517950dfb7a300ad344543d88719c254407ffb5ad88d891bf701c4";
name = "libjpeg-turbo-2.1.2.tar.gz";
url = "https://dev-www.libreoffice.org/src/libjpeg-turbo-2.1.2.tar.gz";
sha256 = "09b96cb8cbff9ea556a9c2d173485fd19488844d55276ed4f42240e1e2073ce5";
md5 = "";
md5name = "20e9cd3e5f517950dfb7a300ad344543d88719c254407ffb5ad88d891bf701c4-libjpeg-turbo-2.1.1.tar.gz";
md5name = "09b96cb8cbff9ea556a9c2d173485fd19488844d55276ed4f42240e1e2073ce5-libjpeg-turbo-2.1.2.tar.gz";
}
{
name = "language-subtag-registry-2021-12-29.tar.bz2";
url = "https://dev-www.libreoffice.org/src/language-subtag-registry-2021-12-29.tar.bz2";
sha256 = "d9dcf20be5ad4856daef023087421bedc1477f9b4247fc8ea53bb32e07c97837";
name = "language-subtag-registry-2022-08-08.tar.bz2";
url = "https://dev-www.libreoffice.org/src/language-subtag-registry-2022-08-08.tar.bz2";
sha256 = "e2d9224e0e50fc8ad12a3cf47396bbcadf45b2515839d4770432653a88972c00";
md5 = "";
md5name = "d9dcf20be5ad4856daef023087421bedc1477f9b4247fc8ea53bb32e07c97837-language-subtag-registry-2021-12-29.tar.bz2";
}
{
name = "JLanguageTool-1.7.0.tar.bz2";
url = "https://dev-www.libreoffice.org/src/b63e6340a02ff1cacfeadb2c42286161-JLanguageTool-1.7.0.tar.bz2";
sha256 = "48c87e41636783bba438b65fd895821e369ed139e1465fac654323ad93c5a82d";
md5 = "b63e6340a02ff1cacfeadb2c42286161";
md5name = "b63e6340a02ff1cacfeadb2c42286161-JLanguageTool-1.7.0.tar.bz2";
md5name = "e2d9224e0e50fc8ad12a3cf47396bbcadf45b2515839d4770432653a88972c00-language-subtag-registry-2022-08-08.tar.bz2";
}
{
name = "lcms2-2.12.tar.gz";
@ -553,18 +532,25 @@
md5name = "083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483-ltm-1.0.zip";
}
{
name = "xmlsec1-1.2.33.tar.gz";
url = "https://dev-www.libreoffice.org/src/xmlsec1-1.2.33.tar.gz";
sha256 = "26041d35a20a245ed5a2fb9ee075f10825664d274220cb5190340fa87a4d0931";
name = "libwebp-1.2.4.tar.gz";
url = "https://dev-www.libreoffice.org/src/libwebp-1.2.4.tar.gz";
sha256 = "7bf5a8a28cc69bcfa8cb214f2c3095703c6b73ac5fba4d5480c205331d9494df";
md5 = "";
md5name = "26041d35a20a245ed5a2fb9ee075f10825664d274220cb5190340fa87a4d0931-xmlsec1-1.2.33.tar.gz";
md5name = "7bf5a8a28cc69bcfa8cb214f2c3095703c6b73ac5fba4d5480c205331d9494df-libwebp-1.2.4.tar.gz";
}
{
name = "libxml2-2.9.13.tar.xz";
url = "https://dev-www.libreoffice.org/src/libxml2-2.9.13.tar.xz";
sha256 = "276130602d12fe484ecc03447ee5e759d0465558fbc9d6bd144e3745306ebf0e";
name = "xmlsec1-1.2.34.tar.gz";
url = "https://dev-www.libreoffice.org/src/xmlsec1-1.2.34.tar.gz";
sha256 = "52ced4943f35bd7d0818a38298c1528ca4ac8a54440fd71134a07d2d1370a262";
md5 = "";
md5name = "276130602d12fe484ecc03447ee5e759d0465558fbc9d6bd144e3745306ebf0e-libxml2-2.9.13.tar.xz";
md5name = "52ced4943f35bd7d0818a38298c1528ca4ac8a54440fd71134a07d2d1370a262-xmlsec1-1.2.34.tar.gz";
}
{
name = "libxml2-2.10.2.tar.xz";
url = "https://dev-www.libreoffice.org/src/libxml2-2.10.2.tar.xz";
sha256 = "d240abe6da9c65cb1900dd9bf3a3501ccf88b3c2a1cb98317d03f272dda5b265";
md5 = "";
md5name = "d240abe6da9c65cb1900dd9bf3a3501ccf88b3c2a1cb98317d03f272dda5b265-libxml2-2.10.2.tar.xz";
}
{
name = "libxslt-1.1.35.tar.xz";
@ -595,11 +581,11 @@
md5name = "431434d3926f4bcce2e5c97240609983f60d7ff50df5a72083934759bb863f7b-mariadb-connector-c-3.1.8-src.tar.gz";
}
{
name = "mdds-2.0.1.tar.bz2";
url = "https://dev-www.libreoffice.org/src/mdds-2.0.1.tar.bz2";
sha256 = "3ab33fce58e6acf9540cc1a52264be6863ef80f55ac287194cc98cda48e71fe6";
name = "mdds-2.0.3.tar.bz2";
url = "https://dev-www.libreoffice.org/src/mdds-2.0.3.tar.bz2";
sha256 = "9771fe42e133443c13ca187253763e17c8bc96a1a02aec9e1e8893367ffa9ce5";
md5 = "";
md5name = "3ab33fce58e6acf9540cc1a52264be6863ef80f55ac287194cc98cda48e71fe6-mdds-2.0.1.tar.bz2";
md5name = "9771fe42e133443c13ca187253763e17c8bc96a1a02aec9e1e8893367ffa9ce5-mdds-2.0.3.tar.bz2";
}
{
name = "mDNSResponder-878.200.35.tar.gz";
@ -630,18 +616,11 @@
md5name = "a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz";
}
{
name = "neon-0.31.2.tar.gz";
url = "https://dev-www.libreoffice.org/src/neon-0.31.2.tar.gz";
sha256 = "cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678";
name = "nss-3.83-with-nspr-4.34.1.tar.gz";
url = "https://dev-www.libreoffice.org/src/nss-3.83-with-nspr-4.34.1.tar.gz";
sha256 = "b1e1198fa7ee4e0fe4fa6937245c94820fd3c3c6897779493858af1bf6310b30";
md5 = "";
md5name = "cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678-neon-0.31.2.tar.gz";
}
{
name = "nss-3.73-with-nspr-4.32.tar.gz";
url = "https://dev-www.libreoffice.org/src/nss-3.73-with-nspr-4.32.tar.gz";
sha256 = "07a9e5b70f121a62706140d4cacc3006d3efb869da40f3a2bf7a65d37847f4d9";
md5 = "";
md5name = "07a9e5b70f121a62706140d4cacc3006d3efb869da40f3a2bf7a65d37847f4d9-nss-3.73-with-nspr-4.32.tar.gz";
md5name = "b1e1198fa7ee4e0fe4fa6937245c94820fd3c3c6897779493858af1bf6310b30-nss-3.83-with-nspr-4.34.1.tar.gz";
}
{
name = "libodfgen-0.1.8.tar.xz";
@ -672,11 +651,11 @@
md5name = "99f37d6747d88206c470067eda624d5e48c1011e943ec0ab217bae8712e22f34-openldap-2.4.59.tgz";
}
{
name = "openssl-1.1.1l.tar.gz";
url = "https://dev-www.libreoffice.org/src/openssl-1.1.1l.tar.gz";
sha256 = "0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1";
name = "openssl-1.1.1q.tar.gz";
url = "https://dev-www.libreoffice.org/src/openssl-1.1.1q.tar.gz";
sha256 = "d7939ce614029cdff0b6c20f0e2e5703158a489a72b2507b8bd51bf8c8fd10ca";
md5 = "";
md5name = "0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1-openssl-1.1.1l.tar.gz";
md5name = "d7939ce614029cdff0b6c20f0e2e5703158a489a72b2507b8bd51bf8c8fd10ca-openssl-1.1.1q.tar.gz";
}
{
name = "liborcus-0.17.2.tar.bz2";
@ -693,11 +672,11 @@
md5name = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d-libpagemaker-0.0.4.tar.xz";
}
{
name = "pdfium-4699.tar.bz2";
url = "https://dev-www.libreoffice.org/src/pdfium-4699.tar.bz2";
sha256 = "ee80fe0a3b20ef5c5babc494cd655d1b1a0bdec710acb04524789df500c563bf";
name = "pdfium-5058.tar.bz2";
url = "https://dev-www.libreoffice.org/src/pdfium-5058.tar.bz2";
sha256 = "eaf4ce9fad32b5d951c524139df23119b66c67720057defb97acab2dfb2582ac";
md5 = "";
md5name = "ee80fe0a3b20ef5c5babc494cd655d1b1a0bdec710acb04524789df500c563bf-pdfium-4699.tar.bz2";
md5name = "eaf4ce9fad32b5d951c524139df23119b66c67720057defb97acab2dfb2582ac-pdfium-5058.tar.bz2";
}
{
name = "pixman-0.40.0.tar.gz";
@ -714,18 +693,25 @@
md5name = "505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca-libpng-1.6.37.tar.xz";
}
{
name = "poppler-21.11.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/poppler-21.11.0.tar.xz";
sha256 = "31b76b5cac0a48612fdd154c02d9eca01fd38fb8eaa77c1196840ecdeb53a584";
name = "tiff-4.4.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/tiff-4.4.0.tar.xz";
sha256 = "49307b510048ccc7bc40f2cba6e8439182fe6e654057c1a1683139bf2ecb1dc1";
md5 = "";
md5name = "31b76b5cac0a48612fdd154c02d9eca01fd38fb8eaa77c1196840ecdeb53a584-poppler-21.11.0.tar.xz";
md5name = "49307b510048ccc7bc40f2cba6e8439182fe6e654057c1a1683139bf2ecb1dc1-tiff-4.4.0.tar.xz";
}
{
name = "poppler-data-0.4.10.tar.gz";
url = "https://dev-www.libreoffice.org/src/poppler-data-0.4.10.tar.gz";
sha256 = "6e2fcef66ec8c44625f94292ccf8af9f1d918b410d5aa69c274ce67387967b30";
name = "poppler-22.09.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/poppler-22.09.0.tar.xz";
sha256 = "d7a8f748211359cadb774ba3e18ecda6464b34027045c0648eb30d5852a41e2e";
md5 = "";
md5name = "6e2fcef66ec8c44625f94292ccf8af9f1d918b410d5aa69c274ce67387967b30-poppler-data-0.4.10.tar.gz";
md5name = "d7a8f748211359cadb774ba3e18ecda6464b34027045c0648eb30d5852a41e2e-poppler-22.09.0.tar.xz";
}
{
name = "poppler-data-0.4.11.tar.gz";
url = "https://dev-www.libreoffice.org/src/poppler-data-0.4.11.tar.gz";
sha256 = "2cec05cd1bb03af98a8b06a1e22f6e6e1a65b1e2f3816cb3069bb0874825f08c";
md5 = "";
md5name = "2cec05cd1bb03af98a8b06a1e22f6e6e1a65b1e2f3816cb3069bb0874825f08c-poppler-data-0.4.11.tar.gz";
}
{
name = "postgresql-13.5.tar.bz2";
@ -735,11 +721,11 @@
md5name = "9b81067a55edbaabc418aacef457dd8477642827499560b00615a6ea6c13f6b3-postgresql-13.5.tar.bz2";
}
{
name = "Python-3.8.10.tar.xz";
url = "https://dev-www.libreoffice.org/src/Python-3.8.10.tar.xz";
sha256 = "6af24a66093dd840bcccf371d4044a3027e655cf24591ce26e48022bc79219d9";
name = "Python-3.8.14.tar.xz";
url = "https://dev-www.libreoffice.org/src/Python-3.8.14.tar.xz";
sha256 = "5d77e278271ba803e9909a41a4f3baca006181c93ada682a5e5fe8dc4a24c5f3";
md5 = "";
md5name = "6af24a66093dd840bcccf371d4044a3027e655cf24591ce26e48022bc79219d9-Python-3.8.10.tar.xz";
md5name = "5d77e278271ba803e9909a41a4f3baca006181c93ada682a5e5fe8dc4a24c5f3-Python-3.8.14.tar.xz";
}
{
name = "libqxp-0.0.2.tar.xz";
@ -784,18 +770,11 @@
md5name = "798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip";
}
{
name = "serf-1.3.9.tar.bz2";
url = "https://dev-www.libreoffice.org/src/serf-1.3.9.tar.bz2";
sha256 = "549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc";
name = "skia-m103-b301ff025004c9cd82816c86c547588e6c24b466.tar.xz";
url = "https://dev-www.libreoffice.org/src/skia-m103-b301ff025004c9cd82816c86c547588e6c24b466.tar.xz";
sha256 = "c094a6247e44104beaaa0d00c825beb6baf1a8e532dc22214747495317a65bd9";
md5 = "";
md5name = "549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc-serf-1.3.9.tar.bz2";
}
{
name = "skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz";
url = "https://dev-www.libreoffice.org/src/skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz";
sha256 = "97e859e8467eca9d2441cd23079b61c2c3863b5687620f18cc31a9f966740177";
md5 = "";
md5name = "97e859e8467eca9d2441cd23079b61c2c3863b5687620f18cc31a9f966740177-skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz";
md5name = "c094a6247e44104beaaa0d00c825beb6baf1a8e532dc22214747495317a65bd9-skia-m103-b301ff025004c9cd82816c86c547588e6c24b466.tar.xz";
}
{
name = "libstaroffice-0.0.7.tar.xz";
@ -881,11 +860,4 @@
md5 = "";
md5name = "653d9e44195d86cf64a36af9ff3a1978ec5599df3882439fefa56e7064f55e8a-zxing-cpp-1.2.0.tar.gz";
}
{
name = "libcuckoo-93217f8d391718380c508a722ab9acd5e9081233.tar.gz";
url = "https://dev-www.libreoffice.org/src/libcuckoo-93217f8d391718380c508a722ab9acd5e9081233.tar.gz";
sha256 = "471dd83a813ed2816c2246c373004470ad0f6612c7ce72038929dc5161cdd58e";
md5 = "";
md5name = "471dd83a813ed2816c2246c373004470ad0f6612c7ce72038929dc5161cdd58e-libcuckoo-93217f8d391718380c508a722ab9acd5e9081233.tar.gz";
}
]

View file

@ -16,8 +16,7 @@ attrs:
sed -e '/CPPUNIT_ASSERT_EQUAL(22, nEndRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
'';
configureFlags = attrs.configureFlags ++ [
(lib.enableFeature kdeIntegration "kf5")
"--without-system-zxing"
"--without-system-cuckoo"
"--without-system-dragonbox"
"--without-system-libfixmath"
];
}

View file

@ -7,9 +7,9 @@ rec {
};
major = "7";
minor = "3";
patch = "3";
tweak = "2";
minor = "4";
patch = "2";
tweak = "3";
subdir = "${major}.${minor}.${patch}";
@ -17,13 +17,13 @@ rec {
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
sha256 = "sha256-7hK9vhYhwg4nRLxbbFlngQ8lpXYLmKxYEtVQqwCWhoU=";
hash = "sha256-gsH/4C8u2O4UUan2fDUzWyemONtZH5vFOe/4arFN2Vo=";
};
# FIXME rename
translations = fetchSrc {
name = "translations";
sha256 = "sha256-uRsKSC+kLVnhYF85o5FxZuf/dr+o6bYtbu8KmwSzNRw=";
sha256 = "sha256-yAU/hjyVwxqDoHm7Lu/Ztmb/1Z5AxDRAmMBKkkpU9uE=";
};
# the "dictionaries" archive is not used for LO build because we already build hunspellDicts packages from
@ -31,6 +31,6 @@ rec {
help = fetchSrc {
name = "help";
sha256 = "sha256-aIY07MuALBVklhJLOUwOxeIQWam2zQCVkw+edvnu/ps=";
sha256 = "sha256-T57V3Z2LOUvkQt24b1fLeHRigtiG4Nw1rdNuizQXD1w=";
};
}

View file

@ -21,11 +21,11 @@
md5name = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19-apr-util-1.5.4.tar.gz";
}
{
name = "boost_1_75_0.tar.xz";
url = "https://dev-www.libreoffice.org/src/boost_1_75_0.tar.xz";
sha256 = "cc378a036a1cfd3af289f3da24deeb8dba7a729f61ab104c7b018a622e22d21b";
name = "boost_1_77_0.tar.xz";
url = "https://dev-www.libreoffice.org/src/boost_1_77_0.tar.xz";
sha256 = "9b334d6c6d7af5a0687280788cd84444398b8e0b472cd88e52bbc3c3ef11d98e";
md5 = "";
md5name = "cc378a036a1cfd3af289f3da24deeb8dba7a729f61ab104c7b018a622e22d21b-boost_1_75_0.tar.xz";
md5name = "9b334d6c6d7af5a0687280788cd84444398b8e0b472cd88e52bbc3c3ef11d98e-boost_1_77_0.tar.xz";
}
{
name = "box2d-2.3.1.tar.gz";
@ -56,11 +56,11 @@
md5name = "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269-bzip2-1.0.8.tar.gz";
}
{
name = "cairo-1.16.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/cairo-1.16.0.tar.xz";
sha256 = "5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331";
name = "cairo-1.17.4.tar.xz";
url = "https://dev-www.libreoffice.org/src/cairo-1.17.4.tar.xz";
sha256 = "74b24c1ed436bbe87499179a3b27c43f4143b8676d8ad237a6fa787401959705";
md5 = "";
md5name = "5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331-cairo-1.16.0.tar.xz";
md5name = "74b24c1ed436bbe87499179a3b27c43f4143b8676d8ad237a6fa787401959705-cairo-1.17.4.tar.xz";
}
{
name = "libcdr-0.1.7.tar.xz";
@ -112,11 +112,11 @@
md5name = "1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt";
}
{
name = "curl-7.79.1.tar.xz";
url = "https://dev-www.libreoffice.org/src/curl-7.79.1.tar.xz";
sha256 = "0606f74b1182ab732a17c11613cbbaf7084f2e6cca432642d0e3ad7c224c3689";
name = "curl-7.83.1.tar.xz";
url = "https://dev-www.libreoffice.org/src/curl-7.83.1.tar.xz";
sha256 = "2cb9c2356e7263a1272fd1435ef7cdebf2cd21400ec287b068396deb705c22c4";
md5 = "";
md5name = "0606f74b1182ab732a17c11613cbbaf7084f2e6cca432642d0e3ad7c224c3689-curl-7.79.1.tar.xz";
md5name = "2cb9c2356e7263a1272fd1435ef7cdebf2cd21400ec287b068396deb705c22c4-curl-7.83.1.tar.xz";
}
{
name = "libe-book-0.1.3.tar.xz";
@ -126,11 +126,11 @@
md5name = "7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9-libe-book-0.1.3.tar.xz";
}
{
name = "libepoxy-1.5.3.tar.xz";
url = "https://dev-www.libreoffice.org/src/libepoxy-1.5.3.tar.xz";
sha256 = "002958c5528321edd53440235d3c44e71b5b1e09b9177e8daf677450b6c4433d";
name = "libepoxy-1.5.9.tar.xz";
url = "https://dev-www.libreoffice.org/src/libepoxy-1.5.9.tar.xz";
sha256 = "d168a19a6edfdd9977fef1308ccf516079856a4275cf876de688fb7927e365e4";
md5 = "";
md5name = "002958c5528321edd53440235d3c44e71b5b1e09b9177e8daf677450b6c4433d-libepoxy-1.5.3.tar.xz";
md5name = "d168a19a6edfdd9977fef1308ccf516079856a4275cf876de688fb7927e365e4-libepoxy-1.5.9.tar.xz";
}
{
name = "epm-3.7.tar.gz";
@ -168,11 +168,11 @@
md5name = "acb85cedafa10ce106b1823fb236b1b3e5d942a5741e8f8435cc8ccfec0afe76-Firebird-3.0.7.33374-0.tar.bz2";
}
{
name = "fontconfig-2.13.91.tar.gz";
url = "https://dev-www.libreoffice.org/src/fontconfig-2.13.91.tar.gz";
sha256 = "19e5b1bc9d013a52063a44e1307629711f0bfef35b9aca16f9c793971e2eb1e5";
name = "fontconfig-2.13.94.tar.xz";
url = "https://dev-www.libreoffice.org/src/fontconfig-2.13.94.tar.xz";
sha256 = "a5f052cb73fd479ffb7b697980510903b563bbb55b8f7a2b001fcfb94026003c";
md5 = "";
md5name = "19e5b1bc9d013a52063a44e1307629711f0bfef35b9aca16f9c793971e2eb1e5-fontconfig-2.13.91.tar.gz";
md5name = "a5f052cb73fd479ffb7b697980510903b563bbb55b8f7a2b001fcfb94026003c-fontconfig-2.13.94.tar.xz";
}
{
name = "crosextrafonts-20130214.tar.gz";
@ -280,11 +280,11 @@
md5name = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52-alef-1.001.tar.gz";
}
{
name = "Amiri-0.111.zip";
url = "https://dev-www.libreoffice.org/src/Amiri-0.111.zip";
sha256 = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166";
name = "Amiri-0.117.zip";
url = "https://dev-www.libreoffice.org/src/Amiri-0.117.zip";
sha256 = "9c4e768893e0023a0ad6f488d5c84bd5add6565d3dcadb838ba5b20e75fcc9a7";
md5 = "";
md5name = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166-Amiri-0.111.zip";
md5name = "9c4e768893e0023a0ad6f488d5c84bd5add6565d3dcadb838ba5b20e75fcc9a7-Amiri-0.117.zip";
}
{
name = "ttf-kacst_2.01+mry.tar.gz";
@ -294,11 +294,11 @@
md5name = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56-ttf-kacst_2.01+mry.tar.gz";
}
{
name = "ReemKufi-0.7.zip";
url = "https://dev-www.libreoffice.org/src/ReemKufi-0.7.zip";
sha256 = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f";
name = "ReemKufi-1.2.zip";
url = "https://dev-www.libreoffice.org/src/ReemKufi-1.2.zip";
sha256 = "c4fd68a23c0ea471cc084ae7efe888da372b925cb208eeb0322c26792d2ef413";
md5 = "";
md5name = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f-ReemKufi-0.7.zip";
md5name = "c4fd68a23c0ea471cc084ae7efe888da372b925cb208eeb0322c26792d2ef413-ReemKufi-1.2.zip";
}
{
name = "Scheherazade-2.100.zip";
@ -315,25 +315,25 @@
md5name = "0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac-libfreehand-0.1.2.tar.xz";
}
{
name = "freetype-2.9.1.tar.bz2";
url = "https://dev-www.libreoffice.org/src/freetype-2.9.1.tar.bz2";
sha256 = "db8d87ea720ea9d5edc5388fc7a0497bb11ba9fe972245e0f7f4c7e8b1e1e84d";
name = "freetype-2.11.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/freetype-2.11.0.tar.xz";
sha256 = "8bee39bd3968c4804b70614a0a3ad597299ad0e824bc8aad5ce8aaf48067bde7";
md5 = "";
md5name = "db8d87ea720ea9d5edc5388fc7a0497bb11ba9fe972245e0f7f4c7e8b1e1e84d-freetype-2.9.1.tar.bz2";
md5name = "8bee39bd3968c4804b70614a0a3ad597299ad0e824bc8aad5ce8aaf48067bde7-freetype-2.11.0.tar.xz";
}
{
name = "glm-0.9.9.7.zip";
url = "https://dev-www.libreoffice.org/src/glm-0.9.9.7.zip";
sha256 = "c5e167c042afd2d7ad642ace6b643863baeb33880781983563e1ab68a30d3e95";
name = "glm-0.9.9.8.zip";
url = "https://dev-www.libreoffice.org/src/glm-0.9.9.8.zip";
sha256 = "6bba5f032bed47c73ad9397f2313b9acbfb56253d0d0576b5873d3dcb25e99ad";
md5 = "";
md5name = "c5e167c042afd2d7ad642ace6b643863baeb33880781983563e1ab68a30d3e95-glm-0.9.9.7.zip";
md5name = "6bba5f032bed47c73ad9397f2313b9acbfb56253d0d0576b5873d3dcb25e99ad-glm-0.9.9.8.zip";
}
{
name = "gpgme-1.13.1.tar.bz2";
url = "https://dev-www.libreoffice.org/src/gpgme-1.13.1.tar.bz2";
sha256 = "c4e30b227682374c23cddc7fdb9324a99694d907e79242a25a4deeedb393be46";
name = "gpgme-1.16.0.tar.bz2";
url = "https://dev-www.libreoffice.org/src/gpgme-1.16.0.tar.bz2";
sha256 = "6c8cc4aedb10d5d4c905894ba1d850544619ee765606ac43df7405865de29ed0";
md5 = "";
md5name = "c4e30b227682374c23cddc7fdb9324a99694d907e79242a25a4deeedb393be46-gpgme-1.13.1.tar.bz2";
md5name = "6c8cc4aedb10d5d4c905894ba1d850544619ee765606ac43df7405865de29ed0-gpgme-1.16.0.tar.bz2";
}
{
name = "graphite2-minimal-1.3.14.tgz";
@ -343,11 +343,11 @@
md5name = "b8e892d8627c41888ff121e921455b9e2d26836978f2359173d19825da62b8fc-graphite2-minimal-1.3.14.tgz";
}
{
name = "harfbuzz-2.6.0.tar.xz";
url = "https://dev-www.libreoffice.org/src/harfbuzz-2.6.0.tar.xz";
sha256 = "9cf7d117548265f95ca884e2f4c9fafaf4e17d45a67b11107147b79eed76c966";
name = "harfbuzz-2.8.2.tar.xz";
url = "https://dev-www.libreoffice.org/src/harfbuzz-2.8.2.tar.xz";
sha256 = "d58461395ce28b9dc03903254374dd70c38c8c28c5046db123c08f7ab9417be7";
md5 = "";
md5name = "9cf7d117548265f95ca884e2f4c9fafaf4e17d45a67b11107147b79eed76c966-harfbuzz-2.6.0.tar.xz";
md5name = "d58461395ce28b9dc03903254374dd70c38c8c28c5046db123c08f7ab9417be7-harfbuzz-2.8.2.tar.xz";
}
{
name = "hsqldb_1_8_0.zip";
@ -371,18 +371,18 @@
md5name = "5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz";
}
{
name = "icu4c-69_1-src.tgz";
url = "https://dev-www.libreoffice.org/src/icu4c-69_1-src.tgz";
sha256 = "4cba7b7acd1d3c42c44bb0c14be6637098c7faf2b330ce876bc5f3b915d09745";
name = "icu4c-70_1-src.tgz";
url = "https://dev-www.libreoffice.org/src/icu4c-70_1-src.tgz";
sha256 = "8d205428c17bf13bb535300669ed28b338a157b1c01ae66d31d0d3e2d47c3fd5";
md5 = "";
md5name = "4cba7b7acd1d3c42c44bb0c14be6637098c7faf2b330ce876bc5f3b915d09745-icu4c-69_1-src.tgz";
md5name = "8d205428c17bf13bb535300669ed28b338a157b1c01ae66d31d0d3e2d47c3fd5-icu4c-70_1-src.tgz";
}
{
name = "icu4c-69_1-data.zip";
url = "https://dev-www.libreoffice.org/src/icu4c-69_1-data.zip";
sha256 = "4fc2d8cfc3343673123586fca3967404abd4e346fba5515829204533b3bae4bf";
name = "icu4c-70_1-data.zip";
url = "https://dev-www.libreoffice.org/src/icu4c-70_1-data.zip";
sha256 = "c72723ddba3300ffb231d6b09e2a728ea6e89de10ed5927f74bacbd77042336e";
md5 = "";
md5name = "4fc2d8cfc3343673123586fca3967404abd4e346fba5515829204533b3bae4bf-icu4c-69_1-data.zip";
md5name = "c72723ddba3300ffb231d6b09e2a728ea6e89de10ed5927f74bacbd77042336e-icu4c-70_1-data.zip";
}
{
name = "flow-engine-0.9.4.zip";
@ -462,11 +462,11 @@
md5name = "39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip";
}
{
name = "libjpeg-turbo-1.5.3.tar.gz";
url = "https://dev-www.libreoffice.org/src/libjpeg-turbo-1.5.3.tar.gz";
sha256 = "b24890e2bb46e12e72a79f7e965f409f4e16466d00e1dd15d93d73ee6b592523";
name = "libjpeg-turbo-2.1.1.tar.gz";
url = "https://dev-www.libreoffice.org/src/libjpeg-turbo-2.1.1.tar.gz";
sha256 = "20e9cd3e5f517950dfb7a300ad344543d88719c254407ffb5ad88d891bf701c4";
md5 = "";
md5name = "b24890e2bb46e12e72a79f7e965f409f4e16466d00e1dd15d93d73ee6b592523-libjpeg-turbo-1.5.3.tar.gz";
md5name = "20e9cd3e5f517950dfb7a300ad344543d88719c254407ffb5ad88d891bf701c4-libjpeg-turbo-2.1.1.tar.gz";
}
{
name = "language-subtag-registry-2021-12-29.tar.bz2";
@ -483,18 +483,18 @@
md5name = "b63e6340a02ff1cacfeadb2c42286161-JLanguageTool-1.7.0.tar.bz2";
}
{
name = "lcms2-2.11.tar.gz";
url = "https://dev-www.libreoffice.org/src/lcms2-2.11.tar.gz";
sha256 = "dc49b9c8e4d7cdff376040571a722902b682a795bf92985a85b48854c270772e";
name = "lcms2-2.12.tar.gz";
url = "https://dev-www.libreoffice.org/src/lcms2-2.12.tar.gz";
sha256 = "18663985e864100455ac3e507625c438c3710354d85e5cbb7cd4043e11fe10f5";
md5 = "";
md5name = "dc49b9c8e4d7cdff376040571a722902b682a795bf92985a85b48854c270772e-lcms2-2.11.tar.gz";
md5name = "18663985e864100455ac3e507625c438c3710354d85e5cbb7cd4043e11fe10f5-lcms2-2.12.tar.gz";
}
{
name = "libassuan-2.5.3.tar.bz2";
url = "https://dev-www.libreoffice.org/src/libassuan-2.5.3.tar.bz2";
sha256 = "91bcb0403866b4e7c4bc1cc52ed4c364a9b5414b3994f718c70303f7f765e702";
name = "libassuan-2.5.5.tar.bz2";
url = "https://dev-www.libreoffice.org/src/libassuan-2.5.5.tar.bz2";
sha256 = "8e8c2fcc982f9ca67dcbb1d95e2dc746b1739a4668bc20b3a3c5be632edb34e4";
md5 = "";
md5name = "91bcb0403866b4e7c4bc1cc52ed4c364a9b5414b3994f718c70303f7f765e702-libassuan-2.5.3.tar.bz2";
md5name = "8e8c2fcc982f9ca67dcbb1d95e2dc746b1739a4668bc20b3a3c5be632edb34e4-libassuan-2.5.5.tar.bz2";
}
{
name = "libatomic_ops-7.6.8.tar.gz";
@ -511,11 +511,11 @@
md5name = "cf5091fa8e7dcdbe667335eb90a2cfdd0a3fe8f8c7c8d1ece44d9d055736a06a-libeot-0.01.tar.bz2";
}
{
name = "libexttextcat-3.4.5.tar.xz";
url = "https://dev-www.libreoffice.org/src/libexttextcat-3.4.5.tar.xz";
sha256 = "13fdbc9d4c489a4d0519e51933a1aa21fe3fb9eb7da191b87f7a63e82797dac8";
name = "libexttextcat-3.4.6.tar.xz";
url = "https://dev-www.libreoffice.org/src/libexttextcat-3.4.6.tar.xz";
sha256 = "6d77eace20e9ea106c1330e268ede70c9a4a89744ddc25715682754eca3368df";
md5 = "";
md5name = "13fdbc9d4c489a4d0519e51933a1aa21fe3fb9eb7da191b87f7a63e82797dac8-libexttextcat-3.4.5.tar.xz";
md5name = "6d77eace20e9ea106c1330e268ede70c9a4a89744ddc25715682754eca3368df-libexttextcat-3.4.6.tar.xz";
}
{
name = "libffi-3.3.tar.gz";
@ -525,25 +525,25 @@
md5name = "72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056-libffi-3.3.tar.gz";
}
{
name = "libgpg-error-1.37.tar.bz2";
url = "https://dev-www.libreoffice.org/src/libgpg-error-1.37.tar.bz2";
sha256 = "b32d6ff72a73cf79797f7f2d039e95e9c6f92f0c1450215410840ab62aea9763";
name = "libgpg-error-1.43.tar.bz2";
url = "https://dev-www.libreoffice.org/src/libgpg-error-1.43.tar.bz2";
sha256 = "a9ab83ca7acc442a5bd846a75b920285ff79bdb4e3d34aa382be88ed2c3aebaf";
md5 = "";
md5name = "b32d6ff72a73cf79797f7f2d039e95e9c6f92f0c1450215410840ab62aea9763-libgpg-error-1.37.tar.bz2";
md5name = "a9ab83ca7acc442a5bd846a75b920285ff79bdb4e3d34aa382be88ed2c3aebaf-libgpg-error-1.43.tar.bz2";
}
{
name = "liblangtag-0.6.2.tar.bz2";
url = "https://dev-www.libreoffice.org/src/liblangtag-0.6.2.tar.bz2";
sha256 = "d6242790324f1432fb0a6fae71b6851f520b2c5a87675497cf8ea14c2924d52e";
name = "liblangtag-0.6.3.tar.bz2";
url = "https://dev-www.libreoffice.org/src/liblangtag-0.6.3.tar.bz2";
sha256 = "1f12a20a02ec3a8d22e54dedb8b683a43c9c160bda1ba337bf1060607ae733bd";
md5 = "";
md5name = "d6242790324f1432fb0a6fae71b6851f520b2c5a87675497cf8ea14c2924d52e-liblangtag-0.6.2.tar.bz2";
md5name = "1f12a20a02ec3a8d22e54dedb8b683a43c9c160bda1ba337bf1060607ae733bd-liblangtag-0.6.3.tar.bz2";
}
{
name = "libnumbertext-1.0.7.tar.xz";
url = "https://dev-www.libreoffice.org/src/libnumbertext-1.0.7.tar.xz";
sha256 = "17b8249cb89ae11ae15a85612d2665626c0e0e3e56b35654363ba6566d8b61fc";
name = "libnumbertext-1.0.10.tar.xz";
url = "https://dev-www.libreoffice.org/src/libnumbertext-1.0.10.tar.xz";
sha256 = "a285573864eaac8d36a0f66d946e9b1d3cf01c5d93d31fda00264a76f2633beb";
md5 = "";
md5name = "17b8249cb89ae11ae15a85612d2665626c0e0e3e56b35654363ba6566d8b61fc-libnumbertext-1.0.7.tar.xz";
md5name = "a285573864eaac8d36a0f66d946e9b1d3cf01c5d93d31fda00264a76f2633beb-libnumbertext-1.0.10.tar.xz";
}
{
name = "ltm-1.0.zip";
@ -553,18 +553,18 @@
md5name = "083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483-ltm-1.0.zip";
}
{
name = "xmlsec1-1.2.32.tar.gz";
url = "https://dev-www.libreoffice.org/src/xmlsec1-1.2.32.tar.gz";
sha256 = "e383702853236004e5b08e424b8afe9b53fe9f31aaa7a5382f39d9533eb7c043";
name = "xmlsec1-1.2.33.tar.gz";
url = "https://dev-www.libreoffice.org/src/xmlsec1-1.2.33.tar.gz";
sha256 = "26041d35a20a245ed5a2fb9ee075f10825664d274220cb5190340fa87a4d0931";
md5 = "";
md5name = "e383702853236004e5b08e424b8afe9b53fe9f31aaa7a5382f39d9533eb7c043-xmlsec1-1.2.32.tar.gz";
md5name = "26041d35a20a245ed5a2fb9ee075f10825664d274220cb5190340fa87a4d0931-xmlsec1-1.2.33.tar.gz";
}
{
name = "libxml2-2.9.13.tar.xz";
url = "https://dev-www.libreoffice.org/src/libxml2-2.9.13.tar.xz";
sha256 = "276130602d12fe484ecc03447ee5e759d0465558fbc9d6bd144e3745306ebf0e";
name = "libxml2-2.9.14.tar.xz";
url = "https://dev-www.libreoffice.org/src/libxml2-2.9.14.tar.xz";
sha256 = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee";
md5 = "";
md5name = "276130602d12fe484ecc03447ee5e759d0465558fbc9d6bd144e3745306ebf0e-libxml2-2.9.13.tar.xz";
md5name = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee-libxml2-2.9.14.tar.xz";
}
{
name = "libxslt-1.1.35.tar.xz";
@ -595,11 +595,11 @@
md5name = "431434d3926f4bcce2e5c97240609983f60d7ff50df5a72083934759bb863f7b-mariadb-connector-c-3.1.8-src.tar.gz";
}
{
name = "mdds-1.7.0.tar.bz2";
url = "https://dev-www.libreoffice.org/src/mdds-1.7.0.tar.bz2";
sha256 = "a66a2a8293a3abc6cd9baff7c236156e2666935cbfb69a15d64d38141638fecf";
name = "mdds-2.0.3.tar.bz2";
url = "https://dev-www.libreoffice.org/src/mdds-2.0.3.tar.bz2";
sha256 = "9771fe42e133443c13ca187253763e17c8bc96a1a02aec9e1e8893367ffa9ce5";
md5 = "";
md5name = "a66a2a8293a3abc6cd9baff7c236156e2666935cbfb69a15d64d38141638fecf-mdds-1.7.0.tar.bz2";
md5name = "9771fe42e133443c13ca187253763e17c8bc96a1a02aec9e1e8893367ffa9ce5-mdds-2.0.3.tar.bz2";
}
{
name = "mDNSResponder-878.200.35.tar.gz";
@ -616,11 +616,11 @@
md5name = "ef36c1a1aabb2ba3b0bedaaafe717bf4480be2ba8de6f3894be5fd3702b013ba-libmspub-0.1.4.tar.xz";
}
{
name = "libmwaw-0.3.19.tar.xz";
url = "https://dev-www.libreoffice.org/src/libmwaw-0.3.19.tar.xz";
sha256 = "b272e234eefc828c4bb8344af0f047a62e070f530e9e2fba11b04c8db8eda5af";
name = "libmwaw-0.3.21.tar.xz";
url = "https://dev-www.libreoffice.org/src/libmwaw-0.3.21.tar.xz";
sha256 = "e8750123a78d61b943cef78b7736c8a7f20bb0a649aa112402124fba794fc21c";
md5 = "";
md5name = "b272e234eefc828c4bb8344af0f047a62e070f530e9e2fba11b04c8db8eda5af-libmwaw-0.3.19.tar.xz";
md5name = "e8750123a78d61b943cef78b7736c8a7f20bb0a649aa112402124fba794fc21c-libmwaw-0.3.21.tar.xz";
}
{
name = "mythes-1.2.4.tar.gz";
@ -637,11 +637,11 @@
md5name = "cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678-neon-0.31.2.tar.gz";
}
{
name = "nss-3.73-with-nspr-4.32.tar.gz";
url = "https://dev-www.libreoffice.org/src/nss-3.73-with-nspr-4.32.tar.gz";
sha256 = "07a9e5b70f121a62706140d4cacc3006d3efb869da40f3a2bf7a65d37847f4d9";
name = "nss-3.79-with-nspr-4.34.tar.gz";
url = "https://dev-www.libreoffice.org/src/nss-3.79-with-nspr-4.34.tar.gz";
sha256 = "5369ed274a19f480ec94e1faef04da63e3cbac1a82e15bb1751e58b2f274b835";
md5 = "";
md5name = "07a9e5b70f121a62706140d4cacc3006d3efb869da40f3a2bf7a65d37847f4d9-nss-3.73-with-nspr-4.32.tar.gz";
md5name = "5369ed274a19f480ec94e1faef04da63e3cbac1a82e15bb1751e58b2f274b835-nss-3.79-with-nspr-4.34.tar.gz";
}
{
name = "libodfgen-0.1.8.tar.xz";
@ -679,11 +679,11 @@
md5name = "0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1-openssl-1.1.1l.tar.gz";
}
{
name = "liborcus-0.16.1.tar.bz2";
url = "https://dev-www.libreoffice.org/src/liborcus-0.16.1.tar.bz2";
sha256 = "c700d1325f744104d9fca0d5a019434901e9d51a16eedfb05792f90a298587a4";
name = "liborcus-0.17.2.tar.bz2";
url = "https://dev-www.libreoffice.org/src/liborcus-0.17.2.tar.bz2";
sha256 = "2a86c405a5929f749b27637509596421d46805753364ab258b035fd01fbde143";
md5 = "";
md5name = "c700d1325f744104d9fca0d5a019434901e9d51a16eedfb05792f90a298587a4-liborcus-0.16.1.tar.bz2";
md5name = "2a86c405a5929f749b27637509596421d46805753364ab258b035fd01fbde143-liborcus-0.17.2.tar.bz2";
}
{
name = "libpagemaker-0.0.4.tar.xz";
@ -693,18 +693,18 @@
md5name = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d-libpagemaker-0.0.4.tar.xz";
}
{
name = "pdfium-4500.tar.bz2";
url = "https://dev-www.libreoffice.org/src/pdfium-4500.tar.bz2";
sha256 = "26a03dd60e5ed0979cdaba9cc848242895110ddfdf347d40989ce2f14020f304";
name = "pdfium-4699.tar.bz2";
url = "https://dev-www.libreoffice.org/src/pdfium-4699.tar.bz2";
sha256 = "ee80fe0a3b20ef5c5babc494cd655d1b1a0bdec710acb04524789df500c563bf";
md5 = "";
md5name = "26a03dd60e5ed0979cdaba9cc848242895110ddfdf347d40989ce2f14020f304-pdfium-4500.tar.bz2";
md5name = "ee80fe0a3b20ef5c5babc494cd655d1b1a0bdec710acb04524789df500c563bf-pdfium-4699.tar.bz2";
}
{
name = "pixman-0.34.0.tar.gz";
url = "https://dev-www.libreoffice.org/src/e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz";
sha256 = "21b6b249b51c6800dc9553b65106e1e37d0e25df942c90531d4c3997aa20a88e";
md5 = "e80ebae4da01e77f68744319f01d52a3";
md5name = "e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz";
name = "pixman-0.40.0.tar.gz";
url = "https://dev-www.libreoffice.org/src/pixman-0.40.0.tar.gz";
sha256 = "6d200dec3740d9ec4ec8d1180e25779c00bc749f94278c8b9021f5534db223fc";
md5 = "";
md5name = "6d200dec3740d9ec4ec8d1180e25779c00bc749f94278c8b9021f5534db223fc-pixman-0.40.0.tar.gz";
}
{
name = "libpng-1.6.37.tar.xz";
@ -791,11 +791,11 @@
md5name = "549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc-serf-1.3.9.tar.bz2";
}
{
name = "skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz";
url = "https://dev-www.libreoffice.org/src/skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz";
sha256 = "abe0b94d54edb717c58d74263f4ed3d27824d2ce9e9f2ce85a21ab38d993f94d";
name = "skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz";
url = "https://dev-www.libreoffice.org/src/skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz";
sha256 = "97e859e8467eca9d2441cd23079b61c2c3863b5687620f18cc31a9f966740177";
md5 = "";
md5name = "abe0b94d54edb717c58d74263f4ed3d27824d2ce9e9f2ce85a21ab38d993f94d-skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz";
md5name = "97e859e8467eca9d2441cd23079b61c2c3863b5687620f18cc31a9f966740177-skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz";
}
{
name = "libstaroffice-0.0.7.tar.xz";
@ -861,11 +861,11 @@
md5name = "a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip";
}
{
name = "zlib-1.2.11.tar.xz";
url = "https://dev-www.libreoffice.org/src/zlib-1.2.11.tar.xz";
sha256 = "4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066";
name = "zlib-1.2.12.tar.xz";
url = "https://dev-www.libreoffice.org/src/zlib-1.2.12.tar.xz";
sha256 = "7db46b8d7726232a621befaab4a1c870f00a90805511c0e0090441dac57def18";
md5 = "";
md5name = "4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066-zlib-1.2.11.tar.xz";
md5name = "7db46b8d7726232a621befaab4a1c870f00a90805511c0e0090441dac57def18-zlib-1.2.12.tar.xz";
}
{
name = "libzmf-0.0.2.tar.xz";
@ -875,10 +875,10 @@
md5name = "27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22-libzmf-0.0.2.tar.xz";
}
{
name = "zxing-cpp-1.1.1.tar.gz";
url = "https://dev-www.libreoffice.org/src/zxing-cpp-1.1.1.tar.gz";
sha256 = "e595b3fa2ec320beb0b28f6af56b1141853257c2611686685639cebb3b248c86";
name = "zxing-cpp-1.2.0.tar.gz";
url = "https://dev-www.libreoffice.org/src/zxing-cpp-1.2.0.tar.gz";
sha256 = "653d9e44195d86cf64a36af9ff3a1978ec5599df3882439fefa56e7064f55e8a";
md5 = "";
md5name = "e595b3fa2ec320beb0b28f6af56b1141853257c2611686685639cebb3b248c86-zxing-cpp-1.1.1.tar.gz";
md5name = "653d9e44195d86cf64a36af9ff3a1978ec5599df3882439fefa56e7064f55e8a-zxing-cpp-1.2.0.tar.gz";
}
]

View file

@ -3,46 +3,19 @@ attrs:
{
postConfigure = attrs.postConfigure + ''
sed -e '/CPPUNIT_TEST(Import_Export_Import);/d' -i './sw/qa/inc/swmodeltestbase.hxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(test);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testConditionalFormatExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testProtectionKeyODS_UTF16LErtlSHA1);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testProtectionKeyODS_UTF8SHA1);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testProtectionKeyODS_UTF8SHA256ODF12);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testProtectionKeyODS_UTF8SHA256W3C);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testProtectionKeyODS_XL_SHA1);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testColorScaleExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testDataBarExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testNamedRangeBugfdo62729);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testRichTextExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testFormulaRefSheetNameODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testCellValuesExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testCellNoteExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testFormatExportODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testEmbeddedChartODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testCellAnchoredGroupXLS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testCeilingFloorODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testRelativePathsODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testSheetProtectionODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testSwappedOutImageExport);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testLinkedGraphicRT);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testImageWithSpecialID);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testAbsNamedRangeHTML);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testMoveCellAnchoredShapesODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testRefStringUnspecified);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testHeaderImageODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testTdf88657ODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testExponentWithoutSignFormatXLSX);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testHiddenRepeatedRowsODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_TEST(testHyperlinkTargetFrameODS);/d' -i './sc/qa/unit/subsequent_export-test.cxx'
sed -e '/CPPUNIT_ASSERT(!bRTL);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(0, nMinRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(4, nMinRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(11, nMinRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(18, nMinRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(3, nEndRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(9, nEndRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(17, nEndRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
sed -e '/CPPUNIT_ASSERT_EQUAL(22, nEndRunPos);/d' -i './vcl/qa/cppunit/text.cxx'
'';
configureFlags = attrs.configureFlags ++ [
(lib.enableFeature kdeIntegration "kf5")
"--without-system-zxing"
];
configureFlags = attrs.configureFlags;
patches = attrs.patches or [];
}

View file

@ -7,7 +7,7 @@ rec {
};
major = "7";
minor = "2";
minor = "3";
patch = "6";
tweak = "2";
@ -17,13 +17,13 @@ rec {
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
sha256 = "sha256-SDdlqYuS2Q6MjHNeCNM8KjS1/h+8jn9rH5x0rRoUHjE=";
hash = "sha256-MwPWr2/7vFg0UFGgCQwTNvi5PEnHhhxlNLzuogWu1aM=";
};
# FIXME rename
translations = fetchSrc {
name = "translations";
sha256 = "sha256-fUZflmrCi4mOa6iZTm+K9IvRTlSjcI4UJ4EoyK/HHck=";
sha256 = "sha256-vjthXfBP6vRY3lMBlithJM7b5SX3uvBwEpi30IeW/Dg=";
};
# the "dictionaries" archive is not used for LO build because we already build hunspellDicts packages from
@ -31,6 +31,6 @@ rec {
help = fetchSrc {
name = "help";
sha256 = "sha256-TjAgz7yV7y5VNrEuT2eElkNGZzh6J58T1TC3u2Ap2o4=";
sha256 = "sha256-b3VvaNEfnytWqJekAWOKokNoCnefXdQgYB7Hpptra0s=";
};
}

View file

@ -7,8 +7,8 @@ let
in
stdenv.mkDerivation rec {
srcVersion = "nov21a";
version = "20211101_a";
srcVersion = "oct22b";
version = "20221001_b";
pname = "gildas";
src = fetchurl {
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
# source code of the previous release to a different directory
urls = [ "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.xz"
"http://www.iram.fr/~gildas/dist/archive/gildas/gildas-src-${srcVersion}.tar.xz" ];
sha256 = "0fb6iqwh4hm7v7sib7sx98vxdavn3d6q2gq6y6vxg2z29g31f8g2";
sha256 = "sha256-MGfU2gzBbJ8ITpU7OiwCaHbi8s9Y6gvcAvSUuEZjfqk=";
};
nativeBuildInputs = [ pkg-config groff perl getopt gfortran which ];
@ -50,7 +50,6 @@ stdenv.mkDerivation rec {
'';
meta = {
broken = stdenv.isDarwin;
description = "Radioastronomy data analysis software";
longDescription = ''
GILDAS is a collection of state-of-the-art software
@ -66,6 +65,7 @@ stdenv.mkDerivation rec {
license = lib.licenses.free;
maintainers = [ lib.maintainers.bzizou lib.maintainers.smaret ];
platforms = lib.platforms.all;
broken = stdenv.isDarwin && stdenv.isAarch64;
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "ANTs";
version = "2.4.1";
version = "2.4.2";
src = fetchFromGitHub {
owner = "ANTsX";
repo = "ANTs";
rev = "v${version}";
sha256 = "sha256-sRZwRRqqU0xiu4K6xlLQV4xzVNnzMlnRsk+TPiv0wD0=";
sha256 = "sha256-edkvTkgBNaC87Q0N/Fsebr9nRLMhDo4mrSGoMICdnwU=";
};
nativeBuildInputs = [ cmake makeWrapper ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "qalculate-qt";
version = "4.3.0";
version = "4.4.0";
src = fetchFromGitHub {
owner = "qalculate";
repo = "qalculate-qt";
rev = "v${version}";
sha256 = "sha256-zznLCTbHX7VDMgW3b709snxSEtoF8k4xJBk3MdgFPNk=";
sha256 = "sha256-C3alvl8hLxUy+soSjfxlNQ++QTcU9Gong1ydVpu8xGs=";
};
nativeBuildInputs = [ qmake intltool pkg-config wrapQtAppsHook ];

View file

@ -1,79 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, pkg-config
, libdrm
, libinput
, libxcb
, libxkbcommon
, mesa
, pango
, wayland
, wayland-protocols
, wayland-scanner
, wlroots
, xcbutilwm
}:
stdenv.mkDerivation rec {
pname = "hyprland";
version = "0.6.1beta";
# When updating Hyprland, the overridden wlroots commit must be bumped to match the commit upstream uses.
src = fetchFromGitHub {
owner = "hyprwm";
repo = pname;
rev = "v${version}";
sha256 = "sha256-0Msqe2ErAJvnO1zHoB2k6TkDhTYnHRGkvJrfSG12dTU=";
};
nativeBuildInputs = [
cmake
pkg-config
wayland-scanner
];
buildInputs = [
libdrm
libinput
libxcb
libxkbcommon
mesa
pango
wayland
wayland-protocols
wlroots
xcbutilwm
];
# build with system wlroots
postPatch = ''
sed -Ei 's/"\.\.\/wlroots\/include\/([a-zA-Z0-9./_-]+)"/<\1>/g' src/includes.hpp
'';
preConfigure = ''
make protocols
'';
postBuild = ''
pushd ../hyprctl
$CXX -std=c++20 -w ./main.cpp -o ./hyprctl
popd
'';
installPhase = ''
mkdir -p $out/bin
install -m755 ./Hyprland $out/bin
install -m755 ../hyprctl/hyprctl $out/bin
'';
meta = with lib; {
homepage = "https://github.com/vaxerski/Hyprland";
description = "A dynamic tiling Wayland compositor that doesn't sacrifice on its looks";
license = licenses.bsd3;
platforms = platforms.linux;
maintainers = with maintainers; [ wozeparrot ];
mainProgram = "Hyprland";
};
}

View file

@ -0,0 +1,96 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchFromGitLab
, cmake
, libdrm
, libinput
, libxcb
, libxkbcommon
, mesa
, pango
, pkg-config
, wayland
, wayland-protocols
, wayland-scanner
, wlroots
, xcbutilwm
}:
stdenv.mkDerivation (finalAttrs: {
pname = "hyprland";
version = "0.6.1beta";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "Hyprland";
rev = "v${finalAttrs.version}";
hash = "sha256-0Msqe2ErAJvnO1zHoB2k6TkDhTYnHRGkvJrfSG12dTU=";
};
nativeBuildInputs = [
cmake
pkg-config
wayland-scanner
];
buildInputs = [
libdrm
libinput
libxcb
libxkbcommon
mesa
pango
wayland
wayland-protocols
xcbutilwm
]
++ [
# INFO: When updating src, remember to synchronize this wlroots with the
# exact commit used by upstream
(wlroots.overrideAttrs (_: {
version = "unstable-2022-06-07";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "wlroots";
repo = "wlroots";
rev = "b89ed9015c3fbe8d339e9d65cf70fdca6e5645bc";
hash = "sha256-8y3u8CoigjoZOVbA2wCWBHlDNEakv0AVxU46/cOC00s=";
};
}))
];
# build with system wlroots
postPatch = ''
sed -Ei 's|"\.\./wlroots/include/([a-zA-Z0-9./_-]+)"|<\1>|g' src/includes.hpp
'';
preConfigure = ''
make protocols
'';
postBuild = ''
pushd ../hyprctl
${stdenv.cc.targetPrefix}c++ -std=c++20 -w ./main.cpp -o ./hyprctl
popd
'';
installPhase = ''
runHook preInstall
install -Dm755 ../hyprctl/hyprctl ./Hyprland -t $out/bin
runHook postInstall
'';
meta = with lib; {
inherit (finalAttrs.src.meta) homepage;
description = "A dynamic tiling Wayland compositor that doesn't sacrifice on its looks";
license = licenses.bsd3;
maintainers = with maintainers; [ wozeparrot ];
inherit (wayland.meta) platforms;
mainProgram = "Hyprland";
# ofborg failure: g++ does not recognize '-std=c++23'
broken = stdenv.isAarch64;
};
})

View file

@ -2,24 +2,24 @@
, stdenv
, fetchFromGitHub
, cmake
, pkg-config
, libjpeg
, mesa
, pango
, pkg-config
, wayland
, wayland-protocols
, wayland-scanner
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "hyprpaper";
version = "unstable-2022-07-24";
version = "unstable-2022-09-30";
src = fetchFromGitHub {
owner = "hyprwm";
repo = pname;
rev = "f75fcf01d1f652d55f79032a40d821d2ff78520e";
sha256 = "sha256-M2g4NeDoYt32j02cimCR4vWzAzauIzQVQaWgBWXDAtk=";
repo = "hyprpaper";
rev = "8f4c712950ad6a9bc7c7281c15a63f5fa06ba92b";
hash = "sha256-KojBifIOkJ2WmO/lRjQIgPgUnX5Eu10U4VDg+1MB2co=";
};
nativeBuildInputs = [
@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace src/main.cpp \
--replace GIT_COMMIT_HASH '"${src.rev}"'
--replace GIT_COMMIT_HASH '"${finalAttrs.src.rev}"'
'';
preConfigure = ''
@ -46,15 +46,20 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
mkdir -p $out/bin
install -m755 ./hyprpaper $out/bin
runHook preInstall
install -Dm755 ./hyprpaper -t $out/bin
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/hyprwm/hyprpaper";
inherit (finalAttrs.src.meta) homepage;
description = "A blazing fast wayland wallpaper utility";
license = licenses.bsd3;
platforms = platforms.linux;
maintainers = with maintainers; [ wozeparrot ];
inherit (wayland.meta) platforms;
# ofborg failure: g++ does not recognize '-std=c++23'
broken = stdenv.isAarch64;
};
}
})

View file

@ -13,35 +13,37 @@ args@{
, bazel ? bazelPkg
, bazelFlags ? []
, bazelBuildFlags ? []
, bazelTestFlags ? []
, bazelFetchFlags ? []
, bazelTarget
, bazelTestTargets ? []
, buildAttrs
, fetchAttrs
# Newer versions of Bazel are moving away from built-in rules_cc and instead
# allow fetching it as an external dependency in a WORKSPACE file[1]. If
# removed in the fixed-output fetch phase, building will fail to download it.
# This can be seen e.g. in #73097
#
# This option allows configuring the removal of rules_cc in cases where a
# project depends on it via an external dependency.
#
# [1]: https://github.com/bazelbuild/rules_cc
# Newer versions of Bazel are moving away from built-in rules_cc and instead
# allow fetching it as an external dependency in a WORKSPACE file[1]. If
# removed in the fixed-output fetch phase, building will fail to download it.
# This can be seen e.g. in #73097
#
# This option allows configuring the removal of rules_cc in cases where a
# project depends on it via an external dependency.
#
# [1]: https://github.com/bazelbuild/rules_cc
, removeRulesCC ? true
, removeLocalConfigCc ? true
, removeLocal ? true
# Use build --nobuild instead of fetch. This allows fetching the dependencies
# required for the build as configured, rather than fetching all the dependencies
# which may not work in some situations (e.g. Java code which ends up relying on
# Debian-specific /usr/share/java paths, but doesn't in the configured build).
# Use build --nobuild instead of fetch. This allows fetching the dependencies
# required for the build as configured, rather than fetching all the dependencies
# which may not work in some situations (e.g. Java code which ends up relying on
# Debian-specific /usr/share/java paths, but doesn't in the configured build).
, fetchConfigured ? true
# Dont add Bazel --copt and --linkopt from NIX_CFLAGS_COMPILE /
# NIX_LDFLAGS. This is necessary when using a custom toolchain which
# Bazel wants all headers / libraries to come from, like when using
# CROSSTOOL. Weirdly, we can still get the flags through the wrapped
# compiler.
# Dont add Bazel --copt and --linkopt from NIX_CFLAGS_COMPILE /
# NIX_LDFLAGS. This is necessary when using a custom toolchain which
# Bazel wants all headers / libraries to come from, like when using
# CROSSTOOL. Weirdly, we can still get the flags through the wrapped
# compiler.
, dontAddBazelOpts ? false
, ...
}:
@ -50,13 +52,33 @@ let
fArgs = removeAttrs args [ "buildAttrs" "fetchAttrs" "removeRulesCC" ];
fBuildAttrs = fArgs // buildAttrs;
fFetchAttrs = fArgs // removeAttrs fetchAttrs [ "sha256" ];
in stdenv.mkDerivation (fBuildAttrs // {
inherit name bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
bazelCmd = { cmd, additionalFlags, targets }:
lib.optionalString (targets != [ ]) ''
# See footnote called [USER and BAZEL_USE_CPP_ONLY_TOOLCHAIN variables]
BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
USER=homeless-shelter \
bazel \
--batch \
--output_base="$bazelOut" \
--output_user_root="$bazelUserRoot" \
${cmd} \
--curses=no \
-j $NIX_BUILD_CORES \
"''${copts[@]}" \
"''${host_copts[@]}" \
"''${linkopts[@]}" \
"''${host_linkopts[@]}" \
$bazelFlags \
${lib.strings.concatStringsSep " " additionalFlags} \
${lib.strings.concatStringsSep " " targets}
'';
in
stdenv.mkDerivation (fBuildAttrs // {
inherit name bazelFlags bazelBuildFlags bazelTestFlags bazelFetchFlags bazelTarget bazelTestTargets;
deps = stdenv.mkDerivation (fFetchAttrs // {
name = "${name}-deps.tar.gz";
inherit bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
inherit bazelFlags bazelBuildFlags bazelTestFlags bazelFetchFlags bazelTarget bazelTestTargets;
impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ fFetchAttrs.impureEnvVars or [];
@ -77,14 +99,7 @@ in stdenv.mkDerivation (fBuildAttrs // {
buildPhase = fFetchAttrs.buildPhase or ''
runHook preBuild
# Bazel computes the default value of output_user_root before parsing the
# flag. The computation of the default value involves getting the $USER
# from the environment. I don't have that variable when building with
# sandbox enabled. Code here
# https://github.com/bazelbuild/bazel/blob/9323c57607d37f9c949b60e293b573584906da46/src/main/cpp/startup_options.cc#L123-L124
#
# On macOS Bazel will use the system installed Xcode or CLT toolchain instead of the one in the PATH unless we pass BAZEL_USE_CPP_ONLY_TOOLCHAIN
# See footnote called [USER and BAZEL_USE_CPP_ONLY_TOOLCHAIN variables].
# We disable multithreading for the fetching phase since it can lead to timeouts with many dependencies/threads:
# https://github.com/bazelbuild/bazel/issues/6502
BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
@ -97,7 +112,8 @@ in stdenv.mkDerivation (fBuildAttrs // {
--loading_phase_threads=1 \
$bazelFlags \
$bazelFetchFlags \
$bazelTarget
${bazelTarget} \
${lib.strings.concatStringsSep " " bazelTestTargets}
runHook postBuild
'';
@ -189,7 +205,7 @@ in stdenv.mkDerivation (fBuildAttrs // {
# the wrappers are expecting will not be set. So instead of relying on the
# wrappers picking them up, pass them in explicitly via `--copt`, `--linkopt`
# and related flags.
#
copts=()
host_copts=()
linkopts=()
@ -209,23 +225,29 @@ in stdenv.mkDerivation (fBuildAttrs // {
done
fi
BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
USER=homeless-shelter \
bazel \
--batch \
--output_base="$bazelOut" \
--output_user_root="$bazelUserRoot" \
build \
--curses=no \
-j $NIX_BUILD_CORES \
"''${copts[@]}" \
"''${host_copts[@]}" \
"''${linkopts[@]}" \
"''${host_linkopts[@]}" \
$bazelFlags \
$bazelBuildFlags \
$bazelTarget
${
bazelCmd {
cmd = "test";
additionalFlags =
["--test_output=errors"] ++ bazelTestFlags;
targets = bazelTestTargets;
}
}
${
bazelCmd {
cmd = "build";
additionalFlags = bazelBuildFlags;
targets = [bazelTarget];
}
}
runHook postBuild
'';
})
# [USER and BAZEL_USE_CPP_ONLY_TOOLCHAIN variables]:
# Bazel computes the default value of output_user_root before parsing the
# flag. The computation of the default value involves getting the $USER
# from the environment. Code here :
# https://github.com/bazelbuild/bazel/blob/9323c57607d37f9c949b60e293b573584906da46/src/main/cpp/startup_options.cc#L123-L124
#
# On macOS Bazel will use the system installed Xcode or CLT toolchain instead of the one in the PATH unless we pass BAZEL_USE_CPP_ONLY_TOOLCHAIN.

View file

@ -34,6 +34,7 @@ let
"static"
"nix" # mainly for nixUnstable users, but also for access to nix/netrc
# Shells
"shells"
"bashrc"
"zshenv"
"zshrc"
@ -71,7 +72,7 @@ let
"pki"
];
in concatStringsSep "\n "
(map (file: "--ro-bind-try $(${coreutils}/bin/readlink -f /etc/${file}) /etc/${file}") files);
(map (file: "--ro-bind-try $(${coreutils}/bin/readlink -m /etc/${file}) /etc/${file}") files);
# Create this on the fly instead of linking from /nix
# The container might have to modify it and re-run ldconfig if there are

View file

@ -1,23 +1,25 @@
{ fetchzip, lib }:
let
version = "1.500";
version = "2.100";
in
fetchzip {
fetchzip rec {
name = "sil-abyssinica-${version}";
url = "mirror://debian/pool/main/f/fonts-sil-abyssinica/fonts-sil-abyssinica_${version}.orig.tar.xz";
sha256 = "sha256-fCa88wG2JfHTaHaBkuvoncbcbrh3XNzc8ewS3W+W/fM=";
url = "https://software.sil.org/downloads/r/abyssinica/AbyssinicaSIL-${version}.zip";
sha256 = "sha256-06olbIdSlhJ4hgblzzabqIs57FpsyWIdPDFXb9vK31A=";
postFetch = ''
mkdir -p $out/share/fonts
tar xf $downloadedFile --strip-components=1 -C $out/share/fonts AbyssinicaSIL-${version}/AbyssinicaSIL-R.ttf
rm -rf $out/web
mkdir -p $out/share/{fonts/truetype,doc/${name}}
mv $out/*.ttf $out/share/fonts/truetype/
mv $out/*.txt $out/documentation $out/share/doc/${name}/
'';
meta = with lib; {
description = "Unicode font for Ethiopian and Erythrean scripts (Amharic et al.)";
homepage = "https://software.sil.org/abyssinica/";
license = licenses.ofl;
maintainers = with lib.maintainers; [ serge ];
maintainers = with maintainers; [ serge ];
platforms = platforms.all;
};
}

View file

@ -1,27 +1,26 @@
{ fetchzip, lib }:
let
version = "3.003";
version = "5.001";
in
fetchzip {
fetchzip rec {
name = "sil-padauk-${version}";
url = "mirror://debian/pool/main/f/fonts-sil-padauk/fonts-sil-padauk_${version}.orig.tar.xz";
sha256 = "sha256-oK+EufbvsqXunTgcWj+DiNdfpRl+VPO60Wc9KYjZv5A=";
url = "https://software.sil.org/downloads/r/padauk/Padauk-${version}.zip";
sha256 = "sha256-6H9EDmXr1Ox2fgLw9sG5JrCAllK3tbjvMfLi8DTF1f0=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
mkdir -p $out/share/fonts/truetype
rm -rf $out/{manifest.json,web/}
mv $out/*.ttf $out/share/fonts/truetype/
mkdir -p $out/share/doc/${name}
mv $out/*.txt $out/documentation/ $out/share/doc/${name}/
'';
meta = with lib; {
description = "Burmese Unicode 6 TrueType font";
description = "A Unicode-based font family with broad support for writing systems that use the Myanmar script";
homepage = "https://software.sil.org/padauk";
license = licenses.ofl;
maintainers = with lib.maintainers; [ serge ];
maintainers = with maintainers; [ serge ];
platforms = platforms.all;
};
}

View file

@ -15,11 +15,12 @@ stdenv.mkDerivation ({
dontUnpack = true;
dontConfigure = true;
dontBuild = true;
dontFixup = true;
prePhases = ''
cp ${src} .
buildPhase = ''
cp -r ${src} src
chmod -R u+w src
cd src
HOME='.' DEBUG=1 ${rebar3}/bin/rebar3 get-deps
'';

View file

@ -9,14 +9,14 @@
rustPlatform.buildRustPackage rec {
pname = "hvm";
version = "0.1.88";
version = "0.1.89";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-VnVyTUOtoplt0Zd5VkCe/h85/Mqcz7lgeIiZVD+Vrxk=";
sha256 = "sha256-xPF8HW4QFXLLjg2HO5Pl+uQ44XCdAHc6koVpVXxN6dE=";
};
cargoSha256 = "sha256-4D63OEz7/2pJGPXiFEwl6ggaV2DNZcoN//BM7H0Sp7I=";
cargoSha256 = "sha256-dDSmiMwDbVDfStXamQvOMBBO5MiuDFhgzWPx0oYwzcM=";
nativeBuildInputs = [ pkg-config ];

View file

@ -1,15 +1,32 @@
{ lib, rustPlatform, fetchCrate }:
{ lib
, rustPlatform
, fetchCrate
, pkg-config
, openssl
, stdenv
, Security
}:
rustPlatform.buildRustPackage rec {
pname = "kind2";
version = "0.2.77";
version = "0.2.79";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-drWAWiSALq8rb3J2phNE/dt4e6xmJY7Ob8cES1kYEPo=";
sha256 = "sha256-QRPk7BpGVvhGHcDxCWJtJp5d3QOq72ESt5VbaSq5jBU=";
};
cargoSha256 = "sha256-rF0TvNWE90sUqslBGPnGmD6mZFPlCCkM1jyuFt8n8Nw=";
cargoSha256 = "sha256-i7RAJmhUQzjMe9w7z7hPrpiap64L12Shu4DL+e5A6oc=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ] ++ lib.optional stdenv.isDarwin Security;
# these tests are flaky
checkFlags = [
"--skip=test_checker"
"--skip=test_run_hvm"
];
meta = with lib; {
description = "A functional programming language and proof assistant";

View file

@ -18,7 +18,7 @@ let
in stdenv.mkDerivation rec {
pname = "purescript";
version = "0.15.5";
version = "0.15.6";
# These hashes can be updated automatically by running the ./update.sh script.
src =
@ -26,12 +26,12 @@ in stdenv.mkDerivation rec {
then
fetchurl {
url = "https://github.com/${pname}/${pname}/releases/download/v${version}/macos.tar.gz";
sha256 = "1q67yg1i8xd0pjx82lp2lkk95ah86r46gmxnliy0r4lllyr4x4fv";
sha256 = "14l4m9xgp9slg4hfaqkwvzdvmg26qj2livldni3lmivvcagjgb2x";
}
else
fetchurl {
url = "https://github.com/${pname}/${pname}/releases/download/v${version}/linux64.tar.gz";
sha256 = "17cczln5gdbg274h16l82hgnnwfb1ylvxd2h7119ig834dcbppxn";
sha256 = "1vw3igxv4zr5gf1ml5ls17w9cc9shdn8fvbk6dkfnxrs93cwrq0k";
};

View file

@ -299,6 +299,15 @@ self: super: ({
# https://github.com/haskell-crypto/cryptonite/issues/360
cryptonite = appendPatch ./patches/cryptonite-remove-argon2.patch super.cryptonite;
# Build segfaults unless `fixity-th` is disabled.
# https://github.com/tweag/ormolu/issues/927
ormolu_0_5_0_1 = overrideCabal (drv: {
libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.file-embed ];
}) (disableCabalFlag "fixity-th" super.ormolu_0_5_0_1);
fourmolu_0_8_2_0 = overrideCabal (drv: {
libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.file-embed ];
}) (disableCabalFlag "fixity-th" super.fourmolu_0_8_2_0);
} // lib.optionalAttrs pkgs.stdenv.isx86_64 { # x86_64-darwin
# tests appear to be failing to link or something:

View file

@ -2,11 +2,11 @@
buildGraalvmNativeImage rec {
pname = "babashka";
version = "0.10.163";
version = "1.0.164";
src = fetchurl {
url = "https://github.com/babashka/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
sha256 = "sha256-54RqqjhKBNSmIIomyhgjujC4CsY33Mkd3QSIc2w9fRg=";
sha256 = "sha256-ckC6QL8pCnenSWYCBKwEx0JrwOnmWAaQhFvw6qQFCv4=";
};
executable = "bb";

View file

@ -81,7 +81,9 @@ let
"-sEXPAT_LIBPATH=${expat.out}/lib"
# TODO: make this unconditional
] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform ||
# required on mips; see 61d9f201baeef4c4bb91ad8a8f5f89b747e0dfe4
(stdenv.hostPlatform.isMips && versionAtLeast version "1.79")) [
"address-model=${toString stdenv.hostPlatform.parsed.cpu.bits}"
"architecture=${if stdenv.hostPlatform.isMips64
then if versionOlder version "1.78" then "mips1" else "mips"

View file

@ -412,7 +412,7 @@ final: prev: {
src = fetchurl {
url = "https://registry.npmjs.org/prisma/-/prisma-${version}.tgz";
sha512 = "sha512-l/QKLmLcKJQFuc+X02LyICo0NWTUVaNNZ00jKJBqwDyhwMAhboD1FWwYV50rkH4Wls0RviAJSFzkC2ZrfawpfA==";
sha512 = "sha512-9Aeg4qiKlv9Wsjz4NO8k2CzRzlvS3A4FYVJ5+28sBBZ0eEwbiVOE/Jj7v6rZC1tFW2s4GSICQOAyuOjc6WsNew==";
};
postInstall = with pkgs; ''
wrapProgram "$out/bin/prisma" \

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "adlfs";
version = "2022.9.1";
version = "2022.10.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "fsspec";
repo = pname;
rev = version;
hash = "sha256-7gL0B4rOMsMYYqElY9hSZeAICWA+mO5N+Xe357DWgu8=";
hash = "sha256-h/xcqb7G4uj4WNVE8is/s2LQ2NfzP1negh15G8B9YCs=";
};
propagatedBuildInputs = [

View file

@ -8,19 +8,22 @@
, pytest-resource-path
, pytest-sugar
, pytestCheckHook
, pythonOlder
, time-machine
}:
buildPythonPackage rec {
pname = "aioswitcher";
version = "3.0.3";
version = "3.1.0";
format = "pyproject";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "TomerFi";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-CHyJuIqJpO7wUmOyeDXa4oBvxMthC96OCECtg13gqe0=";
hash = "sha256-UnKi9/+BmQoJcv/Mlv9C9FYUgMy3J8KCGRrWPMGrM8Y=";
};
nativeBuildInputs = [

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "aiounifi";
version = "39";
version = "40";
disabled = pythonOlder "3.9";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "Kane610";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-FZ8Pu0PHSBC7azzVoSN+UM4UsVG/HRSS01Ys+DTfxRU=";
hash = "sha256-PJ3AIoqu0cUs8IZqY9O2e+GuPd4vjLn9VruKyPxVe4A=";
};
propagatedBuildInputs = [

View file

@ -5,18 +5,21 @@
, future
, cppy
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "atom";
version = "0.8.1";
version = "0.8.2";
format = "pyproject";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "nucleic";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-odthydKmgbOXYT8YAIn5MlFfH/BD8MMkuRYaiI8OZD4=";
hash = "sha256-45c17lewJPo39ZWMaE8kyOo6n0A9f0m58TbMAiNAqeg=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
@ -43,8 +46,8 @@ buildPythonPackage rec {
meta = with lib; {
description = "Memory efficient Python objects";
maintainers = [ maintainers.bhipple ];
homepage = "https://github.com/nucleic/atom";
license = licenses.bsd3;
maintainers = with maintainers; [ bhipple ];
};
}

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "aws-lambda-builders";
version = "1.19.0";
version = "1.20.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "awslabs";
repo = "aws-lambda-builders";
rev = "refs/tags/v${version}";
hash = "sha256-mWb/24/9O8HvzblgudbVaLDR1igTkYpWZn53VqN2vbg=";
hash = "sha256-+XOxz3xWIYacfUizztd4mH5kvBw/dkN9WiS38dONs7Y=";
};
propagatedBuildInputs = [

View file

@ -11,15 +11,15 @@
buildPythonPackage rec {
pname = "azure-mgmt-containerservice";
version = "20.4.0";
version = "20.5.0";
format = "setuptools";
disabled = pythonOlder "3.6";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
extension = "zip";
sha256 = "sha256-X2Pz7Rx5utwOfiG2wLbdloQF7wM9bF80J5EOaB4k6jQ=";
hash = "sha256-tSlupPxnMkvBDBXAvZUGlzUhkODPpL31jAPTvjrKUFg=";
};
propagatedBuildInputs = [

View file

@ -2,30 +2,32 @@
, buildPythonPackage
, fetchPypi
, pythonOlder
# pythonPackages
, azure-core
, cryptography
, isodate
, msrest
, typing-extensions
}:
buildPythonPackage rec {
pname = "azure-storage-file-share";
version = "12.10.0";
version = "12.10.1";
format = "setuptools";
disabled = pythonOlder "3.6";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
extension = "zip";
hash = "sha256-ANp31hkDL4TGoeP6Or9fI0LjYGyVMQJfuzd8RLrYZxI=";
hash = "sha256-Vnm72cdg/9P+J3Scnj5jcG6kLCdIVMGnxnU9an2oxGQ=";
};
propagatedBuildInputs = [
azure-core
cryptography
isodate
msrest
typing-extensions
];
# requires checkout from monorepo

View file

@ -1,42 +1,30 @@
{ lib
, buildPythonPackage
, fetchPypi
# build
, setuptools
# propagtes
, sigtools
, six
, attrs
, od
, buildPythonPackage
, docutils
# extras: datetime
, python-dateutil
# tests
, fetchPypi
, od
, pygments
, unittest2
, pytestCheckHook
, pythonOlder
, python-dateutil
, setuptools
, sigtools
, unittest2
}:
buildPythonPackage rec {
pname = "clize";
version = "4.2.1";
version = "5.0.0";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "3177a028e4169d8865c79af82bdd441b24311d4bd9c0ae8803641882d340a51d";
hash = "sha256-/cFpEvAN/Movd38xaE53Y+D9EYg/SFyHeqtlVUo1D0I=";
};
postPatch = ''
substituteInPlace setup.py \
--replace "docutils ~= 0.17.0" "docutils" \
--replace "attrs>=19.1.0,<22" "attrs>=19.1.0"
'';
nativeBuildInputs = [
setuptools
];
@ -46,7 +34,6 @@ buildPythonPackage rec {
docutils
od
sigtools
six
];
passthru.optional-dependencies = {
@ -65,7 +52,9 @@ buildPythonPackage rec {
unittest2
];
pythonImportsCheck = [ "clize" ];
pythonImportsCheck = [
"clize"
];
meta = with lib; {
description = "Command-line argument parsing for Python";

View file

@ -0,0 +1,32 @@
{ buildPythonPackage
, fetchFromGitHub
, requests
, click
, lib
}:
buildPythonPackage rec {
pname = "cvelib";
version = "1.0.0";
src = fetchFromGitHub {
owner = "RedHatProductSecurity";
repo = "cvelib";
rev = "tags/${version}";
sha256 = "sha256-KUj9Cnvl7r8NMmZvVj5CB0uZvLNK5aHcLc+NzxFrv0I=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
propagatedBuildInputs = [ requests click ];
pythonImportsCheck = [
"cvelib"
];
meta = with lib; {
description = "A library and a command line interface for the CVE Services API";
homepage = "https://github.com/RedHatProductSecurity/cvelib";
license = licenses.mit;
maintainers = with maintainers; [ raboof ];
};
}

View file

@ -1,6 +1,7 @@
{ stdenv
, lib
, buildPythonPackage
, cryptography
, dask
, distributed
, docrep
@ -12,14 +13,14 @@
buildPythonPackage rec {
pname = "dask-jobqueue";
version = "0.8.0";
version = "0.8.1";
format = "setuptools";
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-VCD6Oos9aSkbrzymQnqm2RV5uFzTj05VgPuhJ5PpyAk=";
hash = "sha256-Fv0bZGoHOtPedd3hKg3+UpuDbyGjvbzuKoi+8k6REqc=";
};
propagatedBuildInputs = [
@ -29,18 +30,47 @@ buildPythonPackage rec {
];
checkInputs = [
cryptography
pytest-asyncio
pytestCheckHook
];
pytestFlagsArray = [
# Do not run entire tests suite (requires slurm, sge, etc.)
"dask_jobqueue/tests/test_jobqueue_core.py"
];
disabledTests = [
# Tests have additional requirements (e.g., sge, etc.)
"test_adapt_parameters"
"test_adapt"
"test_adaptive_cores_mem"
"test_adaptive_grouped"
"test_adaptive"
"test_basic"
"test_basic_scale_edge_cases"
"test_cluster_error_scheduler_arguments_should_use_scheduler_options"
"test_cluster_has_cores_and_memory"
"test_cluster"
"test_command_template"
"test_complex_cancel_command"
"test_config"
"test_dashboard_link"
"test_default_number_of_worker_processes"
"test_deprecation_env_extra"
"test_deprecation_extra"
"test_deprecation_job_extra"
"test_different_interfaces_on_scheduler_and_workers"
"test_docstring_cluster"
"test_extra_args_broken_cancel"
"test_forward_ip"
"test_import_scheduler_options_from_config"
"test_job"
"test_log_directory"
"test_scale_cores_memory"
"test_scale_grouped"
"test_scheduler_options_interface"
"test_scheduler_options"
"test_security"
"test_shebang_settings"
"test_use_stdin"
"test_worker_name_uses_cluster_name"
"test_wrong_parameter_error"
];
pythonImportsCheck = [

View file

@ -9,15 +9,20 @@
, pytest-timeout
, pytest-django
, case
, pytestCheckHook }:
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "django-celery-beat";
version = "2.3.0";
version = "2.4.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-uiT4btlWug7itDI3pJMD6/Wqfg+wzLfgVCt+MaRj3Lo=";
hash = "sha256-WO/pRg5Dc6JBwrPYOVGPKaKK4ZvICo26INogTH6lBhM=";
};
propagatedBuildInputs = [
@ -40,7 +45,9 @@ buildPythonPackage rec {
"t/unit/test_schedulers.py"
];
pythonImportsCheck = [ "django_celery_beat" ];
pythonImportsCheck = [
"django_celery_beat"
];
meta = with lib; {
description = "Celery Periodic Tasks backed by the Django ORM";

View file

@ -1,30 +0,0 @@
{ lib
, buildPythonPackage
, fetchPypi
, pythonOlder
, setuptools-scm
}:
buildPythonPackage rec {
pname = "dnspythonchia";
version = "2.2.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-iYaPYqOZ33R2DUXgIHxsewLi79iB5ja0WHOGkamffZk=";
};
nativeBuildInputs = [ setuptools-scm ];
# needs networking for some tests
doCheck = false;
pythonImportsCheck = [ "dns" ];
meta = with lib; {
description = "A DNS toolkit for Python (Chia Network fork)";
homepage = "https://www.chia.net/";
license = with licenses; [ isc ];
maintainers = teams.chia.members;
};
}

View file

@ -1,14 +1,14 @@
{ buildPythonPackage
{ lib
, buildPythonPackage
, cloudpickle
, deepdish
, deepmerge
, dm-haiku
, fetchFromGitHub
, jaxlib
, lib
, poetry
, pytestCheckHook
, torch
, pythonOlder
, pyyaml
, sh
, tables
@ -16,6 +16,7 @@
, tensorboardx
, tensorflow
, toolz
, torch
, treex
, typing-extensions
}:
@ -25,6 +26,8 @@ buildPythonPackage rec {
version = "0.8.6";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "poets-ai";
repo = pname;
@ -34,8 +37,10 @@ buildPythonPackage rec {
# The cloudpickle constraint is too strict. wandb is marked as an optional
# dependency but `buildPythonPackage` doesn't seem to respect that setting.
# Python constraint: https://github.com/poets-ai/elegy/issues/244
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'python = ">=3.7,<3.10"' 'python = ">=3.7"' \
--replace 'cloudpickle = "^1.5.0"' 'cloudpickle = "*"' \
--replace 'wandb = { version = "^0.12.10", optional = true }' ""
'';
@ -44,7 +49,9 @@ buildPythonPackage rec {
poetry
];
buildInputs = [ jaxlib ];
buildInputs = [
jaxlib
];
propagatedBuildInputs = [
cloudpickle
@ -75,6 +82,8 @@ buildPythonPackage rec {
# Fails with `Could not find compiler for platform Host: NOT_FOUND: could not find registered compiler for platform Host -- check target linkage`.
# Runs fine in docker with Ubuntu 22.04. I suspect the issue is the sandboxing in `nixpkgs` but not sure.
"test_saved_model_poly"
# AttributeError: module 'jax' has no attribute 'tree_multimap'
"DataLoaderTestCase"
];
meta = with lib; {

View file

@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "fastbencode";
version = "0.0.13";
version = "0.0.15";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-jwAXWJwrybcV6CrDBlsKY/KL3xdTw016pJUZnAXmxsk=";
hash = "sha256-A1XfgjNV9k4iA3HYf0HlA1CvpwzFh52OaN7f6YLgU+I=";
};
nativeBuildInputs = [

View file

@ -12,14 +12,14 @@
buildPythonApplication rec {
pname = "gdown";
version = "4.5.2";
version = "4.5.3";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-YhYzlsBJegYXOnuV/IH0feIXl//EY79GFskHmSZsYcM=";
hash = "sha256-bL991BCFiMc0qliBMdjh1S5k8Ic4cPcfdMusGV8MYO8=";
};
propagatedBuildInputs = [

View file

@ -61,7 +61,14 @@ buildPythonPackage rec {
# For backwards compatibility with removed pkgs/development/interpreters/hy
# Example usage:
# hy.withPackages (ps: with ps; [ hyrule requests ])
withPackages = python-packages: python.withPackages (ps: (python-packages ps) ++ [ ps.hy ]);
withPackages = python-packages:
(python.withPackages
(ps: (python-packages ps) ++ [ ps.hy ])).overrideAttrs (old: {
name = "${hy.name}-env";
meta = lib.mergeAttrs (builtins.removeAttrs hy.meta [ "license" ]) {
mainProgram = "hy";
};
});
};
meta = with lib; {

View file

@ -1,37 +1,77 @@
{ lib
, argon2-cffi
, buildPythonPackage
, fetchPypi
, ipykernel
, ipython_genutils
, jinja2
, jupyter-client
, jupyter_core
, jupyter_server
, nbconvert
, nbformat
, nest-asyncio
, notebook
, notebook-shim
, pythonOlder
, jupyter_server
, pytestCheckHook
, prometheus-client
, pytest-tornasync
, pytestCheckHook
, pythonOlder
, pyzmq
, send2trash
, terminado
, tornado
, traitlets
}:
buildPythonPackage rec {
pname = "nbclassic";
version = "0.4.5";
disabled = pythonOlder "3.6";
version = "0.4.6";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-BXBMbN2DAb9S5A7Z+uOegNa8XS1EfcZ4McFFtN2Sh3k=";
hash = "sha256-PBjTQ7KS+TjvyTIFdh5nTyDsoG6tJeDu3Bf3riUr9W0=";
};
propagatedBuildInputs = [ jupyter_server notebook notebook-shim ];
propagatedBuildInputs = [
argon2-cffi
ipykernel
ipython_genutils
jinja2
jupyter-client
jupyter_core
jupyter_server
nbconvert
nbformat
nest-asyncio
notebook
notebook-shim
prometheus-client
pyzmq
send2trash
terminado
tornado
traitlets
];
checkInputs = [
pytestCheckHook
pytest-tornasync
pytestCheckHook
];
pythonImportsCheck = [
"nbclassic"
];
__darwinAllowLocalNetworking = true;
meta = with lib; {
description = "Jupyter lab environment notebook server extension.";
license = with licenses; [ bsd3 ];
description = "Jupyter lab environment notebook server extension";
homepage = "https://github.com/jupyterlab/nbclassic";
maintainers = [ maintainers.elohmeier ];
license = with licenses; [ bsd3 ];
maintainers = with maintainers; [ elohmeier ];
};
}

View file

@ -0,0 +1,30 @@
{ lib
, buildPythonPackage
, fetchPypi
, requests
}:
buildPythonPackage rec {
pname = "nc-dnsapi";
version = "0.1.5";
src = fetchPypi {
inherit version;
pname = "nc_dnsapi";
hash = "sha256-1fvzr3e0ZAbSDOovhLz5GHJCS6l+K89fbYHoaWxO9cA=";
};
propagatedBuildInputs = [ requests ];
pythonImportsCheck = [ "nc_dnsapi" ];
# no tests
doCheck = false;
meta = with lib; {
description = "API wrapper for the netcup DNS api";
homepage = "https://github.com/nbuchwitz/nc_dnsapi";
license = licenses.gpl3;
maintainers = with maintainers; [ veehaitch trundle ];
};
}

View file

@ -11,16 +11,16 @@
buildPythonPackage rec {
pname = "NiaARM";
version = "0.2.0";
version = "0.2.2";
format = "pyproject";
disabled = pythonOlder "3.6";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "firefly-cpp";
repo = pname;
rev = version;
sha256 = "sha256-tO/9dDgPPL5fkFm/U9AhyydXW+dtem+Q3H2uKPAXzno=";
hash = "sha256-IY72hDklPkGjb2zo7Wf0MBiPn/jHtyUKW9D0jxA0P54=";
};
nativeBuildInputs = [

View file

@ -7,11 +7,11 @@
buildPythonPackage rec {
pname = "progressbar2";
version = "4.0.0";
version = "4.1.1";
src = fetchPypi {
inherit pname version;
sha256 = "14d3165a1781d053ffaa117daf27cc706128d2ec1d2977fdb05b6bb079888013";
sha256 = "sha256-Y5odWSJ4RIg5kwvf/SQrTU6pzgyeZWrqgQKCwtNrwSE=";
};
propagatedBuildInputs = [ python-utils ];

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "pylutron-caseta";
version = "0.16.0";
version = "0.17.0";
format = "pyproject";
disabled = pythonOlder "3.8";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "gurumitts";
repo = pname;
rev = "v${version}";
hash = "sha256-QASVifbDh9nsgKi0cT4VaUX0d6inVS8rddr/rsbJ7/I=";
hash = "sha256-8keKhwbvqIMxbfmd9GGF7uacOyvqb8G/ifq+pr4Z700=";
};
nativeBuildInputs = [

View file

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "pyotgw";
version = "2.1.0";
version = "2.1.1";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "mvn23";
repo = pname;
rev = version;
hash = "sha256-1kUL0fY+L8HZIdQki0KK5RstfZSd/ylaqV7m1z40yM8=";
hash = "sha256-gMrLoITDBO7T9JtY4O43aMKF88zhwnJ/rlw8U3yvG8k=";
};
propagatedBuildInputs = [

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "pytibber";
version = "0.25.3";
version = "0.25.4";
format = "setuptools";
disabled = pythonOlder "3.9";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "Danielhiversen";
repo = "pyTibber";
rev = "refs/tags/${version}";
hash = "sha256-QpKPGAksaKfdLpiBn4fbVxTsoBUd8S6loSKF+EE443g=";
hash = "sha256-K8QIs5N5dTZmVYS0QbwsSVl5yObhjrNwka4y6SCE8Wc=";
};
propagatedBuildInputs = [

View file

@ -8,26 +8,26 @@
buildPythonPackage rec {
pname = "pyupgrade";
version = "3.0.0";
version = "3.1.0";
format = "setuptools";
disabled = pythonOlder "3.6";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "asottile";
repo = pname;
rev = "v${version}";
sha256 = "sha256-x85bu0dnhYwQU1l7mPH6lr9p6aO7AHG0wLvI/6MYe88=";
hash = "sha256-OzU3Qv6qdEw0hJdbQ7Q3T6zOGpUt2uZyfy1Fxm3GT0Q=";
};
checkInputs = [
pytestCheckHook
];
propagatedBuildInputs = [
tokenize-rt
];
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"pyupgrade"
];

View file

@ -6,13 +6,13 @@
buildPythonPackage rec {
pname = "pyx";
version = "0.15";
version = "0.16";
disabled = !isPy3k;
src = fetchPypi {
pname = "PyX";
inherit version;
sha256 = "0xs9brmk9fvfmnsvi0haf13xwz994kv9afznzfpg9dkzbq6b1hqg";
sha256 = "sha256-TY4+RxzT6am9E9UIbN98CvGww/PhledPX2MxjcQKZtg=";
};
# No tests in archive

View file

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "restfly";
version = "1.4.6";
version = "1.4.7";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "stevemcgrath";
repo = pname;
rev = version;
hash = "sha256-nCubAn9AASnCsvlYdk4gmkoORRlsYEbJ8JmlT11xYWU=";
hash = "sha256-PPXJHatJKve9fIjveVYRnTSIDHFmnSDWTnkgO91twJs=";
};
propagatedBuildInputs = [

View file

@ -19,8 +19,8 @@
, urllib3
, wget
, deepdiff
, pytestCheckHook
, pytest-cov
, pytestCheckHook
, pythonOlder
, websocket-client
}:
@ -28,13 +28,15 @@
buildPythonPackage rec {
pname = "runway-python";
version = "0.6.1";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "runwayml";
repo = "model-sdk";
rev = version;
sha256 = "1ww2wai1qnly8i7g42vhkkbs4yp7wi9x4fjdxsg9fl3izjra0zs2";
hash = "sha256-Qn+gsvxxUJee7k060lPk53qi15xwC/JORJ5aHKLigvM=";
};
propagatedBuildInputs = [
@ -54,32 +56,39 @@ buildPythonPackage rec {
unidecode
urllib3
wget
];
pythonImportsCheck = [
"runway"
];
] ++ urllib3.optional-dependencies.secure;
checkInputs = [
deepdiff
pytestCheckHook
pytest-cov
pytestCheckHook
websocket-client
];
postPatch = ''
# Build fails with:
# ERROR: No matching distribution found for urllib3-secure-extra; extra == "secure"
substituteInPlace requirements.txt \
--replace "urllib3[secure]>=1.25.7" "urllib3"
'';
disabledTests = [
# these tests require network
# These tests require network
"test_file_deserialization_remote"
"test_file_deserialization_absolute_directory"
"test_file_deserialization_remote_directory"
# Fails with a decoding error at the moment
"test_inference_async"
] ++ lib.optionals (pythonAtLeast "3.9") [
# AttributeError: module 'base64' has no attribute 'decodestring
# https://github.com/runwayml/model-sdk/issues/99
"test_image_serialize_and_deserialize"
"test_segmentation_serialize_and_deserialize_colormap"
"test_segmentation_serialize_and_deserialize_labelmap"
# AttributeError: module 'base64' has no attribute 'decodestring
# https://github.com/runwayml/model-sdk/issues/99
"test_image_serialize_and_deserialize"
"test_segmentation_serialize_and_deserialize_colormap"
"test_segmentation_serialize_and_deserialize_labelmap"
];
pythonImportsCheck = [
"runway"
];
meta = {

View file

@ -13,12 +13,12 @@
buildPythonPackage rec {
pname = "sigtools";
version = "4.0.0";
version = "4.0.1";
format = "pyproject";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-fMhKC6VuNLfxXkM3RCaPEODEp21r/s6JzswaHKkROLY=";
sha256 = "sha256-S44TWpzU0uoA2mcMCTNy105nK6OruH9MmNjnPepURFw=";
};
nativeBuildInputs = [

View file

@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "snowflake-sqlalchemy";
version = "1.4.2";
version = "1.4.3";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-zKWDQSd8G1H+EFMYHHSVyAtJNxZ6+z1rkESi5dsVpVc=";
hash = "sha256-sBnkztxqTz7MQ0eYvkAvYWPojxBy6ek1qZxMppLTTM4=";
};
propagatedBuildInputs = [

View file

@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "spacy-pkuseg";
version = "0.0.31";
version = "0.0.32";
disabled = !isPy3k;
src = fetchPypi {
inherit version;
pname = "spacy_pkuseg";
hash = "sha256-C/6uYeXjmmZiWFIvk/2P8+CEX4ZBhYNnRX1T4rD75N8=";
hash = "sha256-9y2TZROOkIOl54u6jocZD4WtP5Ct3bVfacWKqGLISEw=";
};
# Does not seem to have actual tests, but unittest discover

View file

@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "sphinxcontrib-spelling";
version = "7.6.1";
version = "7.6.2";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-REhXV53WGRTzlwrRBGx0v2dYE29+FEtGypwoEIhw9Qg=";
hash = "sha256-oSnV3QwAydQUvN9Zmv3bVbrgHx1UNjbn67CUkborq9Q=";
};
nativeBuildInputs = [

View file

@ -8,11 +8,11 @@
buildPythonPackage rec {
pname = "streamdeck";
version = "0.9.2";
version = "0.9.3";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-XhNB/flNju2XdOMbVo7X4dhGCqNEV1314PDFC9Ma3nw=";
sha256 = "sha256-9bNWsNEW5Di2EZ3z+p8y4Q7GTfIG66b05pTiQcff7HE=";
};
patches = [

View file

@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "trimesh";
version = "3.15.4";
version = "3.15.5";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-D9hgnaX9YdYvYApIc5IB2hHyJSJFm9Tgia5KlwM56Rw=";
sha256 = "sha256-jzQEsrCwSB+OY9XGmztkvbM2ZzT4mUkuYvO86ed6XUc=";
};
propagatedBuildInputs = [ numpy ];

View file

@ -5,13 +5,13 @@
buildPythonPackage rec {
pname = "types-dateutil";
version = "2.8.19";
version = "2.8.19.2";
format = "setuptools";
src = fetchPypi {
pname = "types-python-dateutil";
inherit version;
hash = "sha256-v9PrOcclOupLojsQ9psBfTCwE2YrtL5KtIsgu9dj8wk=";
hash = "sha256-5uMs4Y83dlsIxGYiKHvI2BNtwMVi2a1bj9FYxZlj16c=";
};
pythonImportsCheck = [

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-pytz";
version = "2022.4.0.0";
version = "2022.5.0.0";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-F9ZuSxboDOrgeHcm86IiiN99P5/evrCR3GS5LA5OoJ0=";
sha256 = "sha256-DBY7FdPlmObMcHSpnKnscrJdwbRGrMEzuCdmevC3sJo=";
};
# Modules doesn't have tests

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-redis";
version = "4.3.21.1";
version = "4.3.21.2";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-STgUgpZD/AShRZXtpszWm9wGBkd1QczaVCOM4/YLyZM=";
sha256 = "sha256-q1QiSaR9OQO5QWLmOVrmvgzA9WL9GE7VGgo02KcCGjk=";
};
# Module doesn't have tests

View file

@ -18,11 +18,11 @@
buildPythonPackage rec {
pname = "vowpalwabbit";
version = "9.3.0";
version = "9.5.0";
src = fetchPypi{
inherit pname version;
sha256 = "sha256-lIvSpgnXHiFEMrdObAODh5/T/J8rXsPVIRyWCnt2w7Q=";
sha256 = "sha256-LfEP0T/dYFuLPgz8cBtO6iajfnTt9GXCuor0NibP0qY=";
};
nativeBuildInputs = [

View file

@ -3,14 +3,14 @@
stdenv.mkDerivation rec {
pname = "sbt-extras";
rev = "52fa7de64091bc687fe11e3a8c660bbbfb42742f";
version = "2022-10-03";
rev = "14623b935766e11a0a3f6ab1f686bb1c5d244b21";
version = "2022-10-17";
src = fetchFromGitHub {
owner = "paulp";
repo = "sbt-extras";
inherit rev;
sha256 = "TMp5qxUf7U3re8HKXvtArEJMtn4iZy4zs4SqFTxX5X4=";
sha256 = "nwhNevyLOzkYdpm1AK5I4ByJ7VdnlgwcSjXV11pzZkw=";
};
dontBuild = true;

Some files were not shown because too many files have changed in this diff Show more