Merge branch 'master' into haskell-updates

This commit is contained in:
Malte Brandy 2022-02-06 23:09:03 +01:00
commit 3d9faff0b0
199 changed files with 4146 additions and 2743 deletions

View file

@ -21,35 +21,13 @@
nixos = import ./nixos/lib { lib = final; };
nixosSystem = { modules, ... } @ args:
nixosSystem = args:
import ./nixos/lib/eval-config.nix (args // {
modules =
let
moduleDeclarationFile =
let
# Even though `modules` is a mandatory argument for `nixosSystem`, it doesn't
# mean that the evaluator always keeps track of its position. If there
# are too many levels of indirection, the position gets lost at some point.
intermediatePos = builtins.unsafeGetAttrPos "modules" args;
in
if intermediatePos == null then null else intermediatePos.file;
# Add the invoking file as error message location for modules
# that don't have their own locations; presumably inline modules.
addModuleDeclarationFile =
m: if moduleDeclarationFile == null then m else {
_file = moduleDeclarationFile;
imports = [ m ];
};
in
map addModuleDeclarationFile modules ++ [
{
system.nixos.versionSuffix =
".${final.substring 0 8 (self.lastModifiedDate or self.lastModified or "19700101")}.${self.shortRev or "dirty"}";
system.nixos.revision = final.mkIf (self ? rev) self.rev;
}
];
modules = args.modules ++ [ {
system.nixos.versionSuffix =
".${final.substring 0 8 (self.lastModifiedDate or self.lastModified or "19700101")}.${self.shortRev or "dirty"}";
system.nixos.revision = final.mkIf (self ? rev) self.rev;
} ];
});
});

View file

@ -111,8 +111,8 @@ let
cleanSource sourceByRegex sourceFilesBySuffices
commitIdFromGitRepo cleanSourceWith pathHasContext
canCleanSource pathIsRegularFile pathIsGitRepo;
inherit (self.modules) evalModules unifyModuleSyntax
applyIfFunction mergeModules
inherit (self.modules) evalModules setDefaultModuleLocation
unifyModuleSyntax applyIfFunction mergeModules
mergeModules' mergeOptionDecls evalOptionValue mergeDefinitions
pushDownProperties dischargeProperties filterOverrides
sortProperties fixupOptionType mkIf mkAssert mkMerge mkOverride

View file

@ -334,6 +334,10 @@ rec {
in modulesPath: initialModules: args:
filterModules modulesPath (collectStructuredModules unknownModule "" initialModules args);
/* Wrap a module with a default location for reporting errors. */
setDefaultModuleLocation = file: m:
{ _file = file; imports = [ m ]; };
/* Massage a module into canonical form, that is, a set consisting
of options, config and imports attributes. */
unifyModuleSyntax = file: key: m:
@ -534,11 +538,9 @@ rec {
correspond to the definition of 'loc' in 'opt.file'. */
mergeOptionDecls =
let
packSubmodule = file: m:
{ _file = file; imports = [ m ]; };
coerceOption = file: opt:
if isFunction opt then packSubmodule file opt
else packSubmodule file { options = opt; };
if isFunction opt then setDefaultModuleLocation file opt
else setDefaultModuleLocation file { options = opt; };
in loc: opts:
foldl' (res: opt:
let t = res.type;
@ -568,7 +570,7 @@ rec {
getSubModules = opt.options.type.getSubModules or null;
submodules =
if getSubModules != null then map (packSubmodule opt._file) getSubModules ++ res.options
if getSubModules != null then map (setDefaultModuleLocation opt._file) getSubModules ++ res.options
else if opt.options ? options then map (coerceOption opt._file) options' ++ res.options
else res.options;
in opt.options // res //

View file

@ -20,17 +20,26 @@ let
readFile
;
# Returns the type of a path: regular (for file), symlink, or directory
pathType = p: getAttr (baseNameOf p) (readDir (dirOf p));
/*
Returns the type of a path: regular (for file), symlink, or directory.
*/
pathType = path: getAttr (baseNameOf path) (readDir (dirOf path));
# Returns true if the path exists and is a directory, false otherwise
pathIsDirectory = p: if pathExists p then (pathType p) == "directory" else false;
/*
Returns true if the path exists and is a directory, false otherwise.
*/
pathIsDirectory = path: if pathExists path then (pathType path) == "directory" else false;
# Returns true if the path exists and is a regular file, false otherwise
pathIsRegularFile = p: if pathExists p then (pathType p) == "regular" else false;
/*
Returns true if the path exists and is a regular file, false otherwise.
*/
pathIsRegularFile = path: if pathExists path then (pathType path) == "regular" else false;
# Bring in a path as a source, filtering out all Subversion and CVS
# directories, as well as backup files (*~).
/*
A basic filter for `cleanSourceWith` that removes
directories of version control system, backup files (*~)
and some generated files.
*/
cleanSourceFilter = name: type: let baseName = baseNameOf (toString name); in ! (
# Filter out version control software files/directories
(baseName == ".git" || type == "directory" && (baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
@ -48,43 +57,48 @@ let
(type == "unknown")
);
# Filters a source tree removing version control files and directories using cleanSourceWith
#
# Example:
# cleanSource ./.
/*
Filters a source tree removing version control files and directories using cleanSourceFilter.
Example:
cleanSource ./.
*/
cleanSource = src: cleanSourceWith { filter = cleanSourceFilter; inherit src; };
# Like `builtins.filterSource`, except it will compose with itself,
# allowing you to chain multiple calls together without any
# intermediate copies being put in the nix store.
#
# lib.cleanSourceWith {
# filter = f;
# src = lib.cleanSourceWith {
# filter = g;
# src = ./.;
# };
# }
# # Succeeds!
#
# builtins.filterSource f (builtins.filterSource g ./.)
# # Fails!
#
# Parameters:
#
# src: A path or cleanSourceWith result to filter and/or rename.
#
# filter: A function (path -> type -> bool)
# Optional with default value: constant true (include everything)
# The function will be combined with the && operator such
# that src.filter is called lazily.
# For implementing a filter, see
# https://nixos.org/nix/manual/#builtin-filterSource
#
# name: Optional name to use as part of the store path.
# This defaults to `src.name` or otherwise `"source"`.
#
cleanSourceWith = { filter ? _path: _type: true, src, name ? null }:
/*
Like `builtins.filterSource`, except it will compose with itself,
allowing you to chain multiple calls together without any
intermediate copies being put in the nix store.
Example:
lib.cleanSourceWith {
filter = f;
src = lib.cleanSourceWith {
filter = g;
src = ./.;
};
}
# Succeeds!
builtins.filterSource f (builtins.filterSource g ./.)
# Fails!
*/
cleanSourceWith =
{
# A path or cleanSourceWith result to filter and/or rename.
src,
# Optional with default value: constant true (include everything)
# The function will be combined with the && operator such
# that src.filter is called lazily.
# For implementing a filter, see
# https://nixos.org/nix/manual/#builtin-filterSource
# Type: A function (path -> type -> bool)
filter ? _path: _type: true,
# Optional name to use as part of the store path.
# This defaults to `src.name` or otherwise `"source"`.
name ? null
}:
let
orig = toSourceAttributes src;
in fromSourceAttributes {
@ -116,9 +130,11 @@ let
satisfiesSubpathInvariant = src ? satisfiesSubpathInvariant && src.satisfiesSubpathInvariant;
};
# Filter sources by a list of regular expressions.
#
# E.g. `src = sourceByRegex ./my-subproject [".*\.py$" "^database.sql$"]`
/*
Filter sources by a list of regular expressions.
Example: src = sourceByRegex ./my-subproject [".*\.py$" "^database.sql$"]
*/
sourceByRegex = src: regexes:
let
isFiltered = src ? _isLibCleanSourceWith;
@ -153,8 +169,11 @@ let
pathIsGitRepo = path: (tryEval (commitIdFromGitRepo path)).success;
# Get the commit id of a git repo
# Example: commitIdFromGitRepo <nixpkgs/.git>
/*
Get the commit id of a git repo.
Example: commitIdFromGitRepo <nixpkgs/.git>
*/
commitIdFromGitRepo =
let readCommitFromFile = file: path:
let fileName = toString path + "/" + file;

View file

@ -61,11 +61,11 @@ rec {
pipe = val: functions:
let reverseApply = x: f: f x;
in builtins.foldl' reverseApply val functions;
/* note please dont add a function like `compose = flip pipe`.
This would confuse users, because the order of the functions
in the list is not clear. With pipe, its obvious that it
goes first-to-last. With `compose`, not so much.
*/
# note please dont add a function like `compose = flip pipe`.
# This would confuse users, because the order of the functions
# in the list is not clear. With pipe, its obvious that it
# goes first-to-last. With `compose`, not so much.
## Named versions corresponding to some builtin operators.

View file

@ -13824,4 +13824,10 @@
fingerprint = "3586 3350 BFEA C101 DB1A 4AF0 1F81 112D 62A9 ADCE";
}];
};
ameer = {
name = "Ameer Taweel";
email = "ameertaweel2002@gmail.com";
github = "AmeerTaweel";
githubId = 20538273;
};
}

View file

@ -21,6 +21,7 @@ evalConfigArgs@
, # !!! See comment about args in lib/modules.nix
specialArgs ? {}
, modules
, modulesLocation ? (builtins.unsafeGetAttrPos "modules" evalConfigArgs).file or null
, # !!! See comment about check in lib/modules.nix
check ? true
, prefix ? []
@ -74,7 +75,18 @@ let
_module.check = lib.mkDefault check;
};
};
allUserModules = modules ++ legacyModules;
allUserModules =
let
# Add the invoking file (or specified modulesLocation) as error message location
# for modules that don't have their own locations; presumably inline modules.
locatedModules =
if modulesLocation == null then
modules
else
map (lib.setDefaultModuleLocation modulesLocation) modules;
in
locatedModules ++ legacyModules;
noUserModules = evalModulesMinimal ({
inherit prefix specialArgs;

View file

@ -1156,7 +1156,7 @@
./system/boot/systemd-nspawn.nix
./system/boot/timesyncd.nix
./system/boot/tmp.nix
./system/etc/etc.nix
./system/etc/etc-activation.nix
./tasks/auto-upgrade.nix
./tasks/bcache.nix
./tasks/cpu-freq.nix

View file

@ -5,7 +5,7 @@ with lib;
let
cfg = config.security.googleOsLogin;
package = pkgs.google-compute-engine-oslogin;
package = pkgs.google-guest-oslogin;
in
@ -17,7 +17,7 @@ in
type = types.bool;
default = false;
description = ''
Whether to enable Google OS Login
Whether to enable Google OS Login.
The OS Login package enables the following components:
AuthorizedKeysCommand to query valid SSH keys from the user's OS Login
@ -36,7 +36,7 @@ in
security.pam.services.sshd = {
makeHomeDir = true;
googleOsLoginAccountVerification = true;
# disabled for now: googleOsLoginAuthentication = true;
googleOsLoginAuthentication = true;
};
security.sudo.extraConfig = ''
@ -47,6 +47,9 @@ in
"d /var/google-users.d 750 root root -"
];
systemd.packages = [ package ];
systemd.timers.google-oslogin-cache.wantedBy = [ "timers.target" ];
# enable the nss module, so user lookups etc. work
system.nssModules = [ package ];
system.nssDatabases.passwd = [ "cache_oslogin" "oslogin" ];

View file

@ -444,15 +444,15 @@ let
account sufficient ${pam_krb5}/lib/security/pam_krb5.so
'' +
optionalString cfg.googleOsLoginAccountVerification ''
account [success=ok ignore=ignore default=die] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so
account [success=ok default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_admin.so
account [success=ok ignore=ignore default=die] ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so
account [success=ok default=ignore] ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_admin.so
'' +
''
# Authentication management.
'' +
optionalString cfg.googleOsLoginAuthentication ''
auth [success=done perm_denied=bad default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so
auth [success=done perm_denied=die default=ignore] ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so
'' +
optionalString cfg.rootOK ''
auth sufficient pam_rootok.so
@ -1091,11 +1091,11 @@ in
mr ${pam_ccreds}/lib/security/pam_ccreds.so,
'' +
optionalString (isEnabled (cfg: cfg.googleOsLoginAccountVerification)) ''
mr ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so,
mr ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_admin.so,
mr ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so,
mr ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_admin.so,
'' +
optionalString (isEnabled (cfg: cfg.googleOsLoginAuthentication)) ''
mr ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so,
mr ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so,
'' +
optionalString (config.security.pam.enableSSHAgentAuth
&& isEnabled (cfg: cfg.sshAgentAuth)) ''

View file

@ -208,6 +208,7 @@ in
token=$(< "$STATE_DIRECTORY"/${newConfigTokenFilename})
RUNNER_ROOT="$STATE_DIRECTORY" ${cfg.package}/bin/config.sh \
--unattended \
--disableupdate \
--work "$RUNTIME_DIRECTORY" \
--url ${escapeShellArg cfg.url} \
--token "$token" \

View file

@ -0,0 +1,12 @@
{ config, lib, ... }:
let
inherit (lib) stringAfter;
in {
imports = [ ./etc.nix ];
config = {
system.activationScripts.etc =
stringAfter [ "users" "groups" ] config.system.build.etcActivationCommands;
};
}

View file

@ -66,6 +66,8 @@ in
{
imports = [ ../build.nix ];
###### interface
options = {
@ -188,14 +190,12 @@ in
config = {
system.build.etc = etc;
system.activationScripts.etc = stringAfter [ "users" "groups" ]
system.build.etcActivationCommands =
''
# Set up the statically computed bits of /etc.
echo "setting up /etc..."
${pkgs.perl.withPackages (p: [ p.FileSlurp ])}/bin/perl ${./setup-etc.pl} ${etc}/etc
'';
};
}

View file

@ -0,0 +1,70 @@
{ lib
, coreutils
, fakechroot
, fakeroot
, evalMinimalConfig
, pkgsModule
, runCommand
, util-linux
, vmTools
, writeText
}:
let
node = evalMinimalConfig ({ config, ... }: {
imports = [ pkgsModule ../etc/etc.nix ];
environment.etc."passwd" = {
text = passwdText;
};
environment.etc."hosts" = {
text = hostsText;
mode = "0751";
};
});
passwdText = ''
root:x:0:0:System administrator:/root:/run/current-system/sw/bin/bash
'';
hostsText = ''
127.0.0.1 localhost
::1 localhost
# testing...
'';
in
lib.recurseIntoAttrs {
test-etc-vm =
vmTools.runInLinuxVM (runCommand "test-etc-vm" { } ''
mkdir -p /etc
${node.config.system.build.etcActivationCommands}
set -x
[[ -L /etc/passwd ]]
diff /etc/passwd ${writeText "expected-passwd" passwdText}
[[ 751 = $(stat --format %a /etc/hosts) ]]
diff /etc/hosts ${writeText "expected-hosts" hostsText}
set +x
touch $out
'');
# fakeroot is behaving weird
test-etc-fakeroot =
runCommand "test-etc"
{
nativeBuildInputs = [
fakeroot
fakechroot
# for chroot
coreutils
# fakechroot needs getopt, which is provided by util-linux
util-linux
];
fakeRootCommands = ''
mkdir -p /etc
${node.config.system.build.etcActivationCommands}
diff /etc/hosts ${writeText "expected-hosts" hostsText}
touch $out
'';
} ''
mkdir fake-root
export FAKECHROOT_EXCLUDE_PATH=/dev:/proc:/sys:${builtins.storeDir}:$out
fakechroot fakeroot chroot $PWD/fake-root bash -c 'source $stdenv/setup; eval "$fakeRootCommands"'
'';
}

View file

@ -1,36 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
WGET() {
wget --retry-connrefused -t 15 --waitretry=10 --header='Metadata-Flavor: Google' "$@"
}
# When dealing with cryptographic keys, we want to keep things private.
umask 077
mkdir -p /root/.ssh
echo "Fetching authorized keys..."
WGET -O /tmp/auth_keys http://metadata.google.internal/computeMetadata/v1/instance/attributes/sshKeys
# Read keys one by one, split in case Google decided
# to append metadata (it does sometimes) and add to
# authorized_keys if not already present.
touch /root/.ssh/authorized_keys
while IFS='' read -r line || [[ -n "$line" ]]; do
keyLine=$(echo -n "$line" | cut -d ':' -f2)
IFS=' ' read -r -a array <<<"$keyLine"
if [[ ${#array[@]} -ge 3 ]]; then
echo "${array[@]:0:3}" >>/tmp/new_keys
echo "Added ${array[*]:2} to authorized_keys"
fi
done </tmp/auth_keys
mv /tmp/new_keys /root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys
echo "Fetching host keys..."
WGET -O /tmp/ssh_host_ed25519_key http://metadata.google.internal/computeMetadata/v1/instance/attributes/ssh_host_ed25519_key
WGET -O /tmp/ssh_host_ed25519_key.pub http://metadata.google.internal/computeMetadata/v1/instance/attributes/ssh_host_ed25519_key_pub
mv -f /tmp/ssh_host_ed25519_key* /etc/ssh/
chmod 600 /etc/ssh/ssh_host_ed25519_key
chmod 644 /etc/ssh/ssh_host_ed25519_key.pub

View file

@ -1,8 +1,5 @@
{ config, lib, pkgs, ... }:
with lib;
let
gce = pkgs.google-compute-engine;
in
{
imports = [
../profiles/headless.nix
@ -40,7 +37,8 @@ in
security.googleOsLogin.enable = true;
# Use GCE udev rules for dynamic disk volumes
services.udev.packages = [ gce ];
services.udev.packages = [ pkgs.google-guest-configs ];
services.udev.path = [ pkgs.google-guest-configs ];
# Force getting the hostname from Google Compute.
networking.hostName = mkDefault "";
@ -48,12 +46,6 @@ in
# Always include cryptsetup so that NixOps can use it.
environment.systemPackages = [ pkgs.cryptsetup ];
# Make sure GCE image does not replace host key that NixOps sets
environment.etc."default/instance_configs.cfg".text = lib.mkDefault ''
[InstanceSetup]
set_host_keys = false
'';
# Rely on GCP's firewall instead
networking.firewall.enable = mkDefault false;
@ -69,105 +61,42 @@ in
# GC has 1460 MTU
networking.interfaces.eth0.mtu = 1460;
# Used by NixOps
systemd.services.fetch-instance-ssh-keys = {
description = "Fetch host keys and authorized_keys for root user";
wantedBy = [ "sshd.service" ];
before = [ "sshd.service" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
path = [ pkgs.wget ];
serviceConfig = {
Type = "oneshot";
ExecStart = pkgs.runCommand "fetch-instance-ssh-keys" { } ''
cp ${./fetch-instance-ssh-keys.bash} $out
chmod +x $out
${pkgs.shfmt}/bin/shfmt -i 4 -d $out
${pkgs.shellcheck}/bin/shellcheck $out
patchShebangs $out
'';
PrivateTmp = true;
StandardError = "journal+console";
StandardOutput = "journal+console";
};
};
systemd.services.google-instance-setup = {
description = "Google Compute Engine Instance Setup";
after = [ "network-online.target" "network.target" "rsyslog.service" ];
before = [ "sshd.service" ];
path = with pkgs; [ coreutils ethtool openssh ];
serviceConfig = {
ExecStart = "${gce}/bin/google_instance_setup";
StandardOutput="journal+console";
Type = "oneshot";
};
wantedBy = [ "sshd.service" "multi-user.target" ];
};
systemd.services.google-network-daemon = {
description = "Google Compute Engine Network Daemon";
after = [ "network-online.target" "network.target" "google-instance-setup.service" ];
path = with pkgs; [ iproute2 ];
serviceConfig = {
ExecStart = "${gce}/bin/google_network_daemon";
StandardOutput="journal+console";
Type="simple";
};
systemd.packages = [ pkgs.google-guest-agent ];
systemd.services.google-guest-agent = {
wantedBy = [ "multi-user.target" ];
restartTriggers = [ config.environment.etc."default/instance_configs.cfg".source ];
path = lib.optional config.users.mutableUsers pkgs.shadow;
};
systemd.services.google-startup-scripts.wantedBy = [ "multi-user.target" ];
systemd.services.google-shutdown-scripts.wantedBy = [ "multi-user.target" ];
systemd.services.google-clock-skew-daemon = {
description = "Google Compute Engine Clock Skew Daemon";
after = [ "network.target" "google-instance-setup.service" "google-network-daemon.service" ];
serviceConfig = {
ExecStart = "${gce}/bin/google_clock_skew_daemon";
StandardOutput="journal+console";
Type = "simple";
};
wantedBy = ["multi-user.target"];
};
security.sudo.extraRules = mkIf config.users.mutableUsers [
{ groups = [ "google-sudoers" ]; commands = [ { command = "ALL"; options = [ "NOPASSWD" ]; } ]; }
];
users.groups.google-sudoers = mkIf config.users.mutableUsers { };
systemd.services.google-shutdown-scripts = {
description = "Google Compute Engine Shutdown Scripts";
after = [
"network-online.target"
"network.target"
"rsyslog.service"
"google-instance-setup.service"
"google-network-daemon.service"
];
serviceConfig = {
ExecStart = "${pkgs.coreutils}/bin/true";
ExecStop = "${gce}/bin/google_metadata_script_runner --script-type shutdown";
RemainAfterExit = true;
StandardOutput="journal+console";
TimeoutStopSec = "0";
Type = "oneshot";
};
wantedBy = [ "multi-user.target" ];
};
boot.extraModprobeConfig = lib.readFile "${pkgs.google-guest-configs}/etc/modprobe.d/gce-blacklist.conf";
systemd.services.google-startup-scripts = {
description = "Google Compute Engine Startup Scripts";
after = [
"network-online.target"
"network.target"
"rsyslog.service"
"google-instance-setup.service"
"google-network-daemon.service"
];
serviceConfig = {
ExecStart = "${gce}/bin/google_metadata_script_runner --script-type startup";
KillMode = "process";
StandardOutput = "journal+console";
Type = "oneshot";
};
wantedBy = [ "multi-user.target" ];
};
environment.etc."sysctl.d/60-gce-network-security.conf".source = "${pkgs.google-guest-configs}/etc/sysctl.d/60-gce-network-security.conf";
environment.etc."sysctl.d/11-gce-network-security.conf".source = "${gce}/sysctl.d/11-gce-network-security.conf";
environment.etc."default/instance_configs.cfg".text = ''
[Accounts]
useradd_cmd = useradd -m -s /run/current-system/sw/bin/bash -p * {user}
[Daemons]
accounts_daemon = ${boolToString config.users.mutableUsers}
[InstanceSetup]
# Make sure GCE image does not replace host key that NixOps sets.
set_host_keys = false
[MetadataScripts]
default_shell = ${pkgs.stdenv.shell}
[NetworkInterfaces]
dhclient_script = ${pkgs.google-guest-configs}/bin/google-dhclient-script
# We set up network interfaces declaratively.
setup = false
'';
}

View file

@ -632,6 +632,15 @@ in
Enable the Qemu guest agent.
'';
};
virtioKeyboard =
mkOption {
type = types.bool;
default = true;
description = ''
Enable the virtio-keyboard device.
'';
};
};
virtualisation.useNixStoreImage =
@ -835,7 +844,9 @@ in
# FIXME: Consolidate this one day.
virtualisation.qemu.options = mkMerge [
[ "-device virtio-keyboard" ]
(mkIf cfg.qemu.virtioKeyboard [
"-device virtio-keyboard"
])
(mkIf pkgs.stdenv.hostPlatform.isx86 [
"-usb" "-device usb-tablet,bus=usb-bus.0"
])

View file

@ -141,6 +141,7 @@ in
env = handleTest ./env.nix {};
ergo = handleTest ./ergo.nix {};
ergochat = handleTest ./ergochat.nix {};
etc = pkgs.callPackage ../modules/system/etc/test.nix { inherit evalMinimalConfig; };
etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {};
etcd-cluster = handleTestOn ["x86_64-linux"] ./etcd-cluster.nix {};
etebase-server = handleTest ./etebase-server.nix {};

View file

@ -31,10 +31,10 @@ in {
# mockserver should return a non-expired ssh key for both mockuser and mockadmin
server.succeed(
f'${pkgs.google-compute-engine-oslogin}/bin/google_authorized_keys {MOCKUSER} | grep -q "${snakeOilPublicKey}"'
f'${pkgs.google-guest-oslogin}/bin/google_authorized_keys {MOCKUSER} | grep -q "${snakeOilPublicKey}"'
)
server.succeed(
f'${pkgs.google-compute-engine-oslogin}/bin/google_authorized_keys {MOCKADMIN} | grep -q "${snakeOilPublicKey}"'
f'${pkgs.google-guest-oslogin}/bin/google_authorized_keys {MOCKADMIN} | grep -q "${snakeOilPublicKey}"'
)
# install snakeoil ssh key on the client, and provision .ssh/config file

View file

@ -23,7 +23,5 @@ in {
security.googleOsLogin.enable = true;
# Mock google service
networking.extraHosts = ''
127.0.0.1 metadata.google.internal
'';
networking.interfaces.lo.ipv4.addresses = [ { address = "169.254.169.254"; prefixLength = 32; } ];
}

0
nixos/tests/google-oslogin/server.py Normal file → Executable file
View file

View file

@ -10,6 +10,6 @@ pkgs:
snakeOilPublicKey = pkgs.lib.concatStrings [
"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHA"
"yNTYAAABBBChdA2BmwcG49OrQN33f/sj+OHL5sJhwVl2Qim0vkUJQCry1zFpKTa"
"9ZcDMiWaEhoAR6FGoaGI04ff7CS+1yybQ= sakeoil"
"9ZcDMiWaEhoAR6FGoaGI04ff7CS+1yybQ= snakeoil"
];
}

View file

@ -57,7 +57,7 @@ in mkDerivation rec {
there are basic functionalities to align the signals in time and
amplitude, this software does not aim to be an audio editor.
'';
homepage = "http://gillesdegottex.github.io/dfasma/";
homepage = "https://gillesdegottex.gitlab.io/dfasma-website/";
license = [ licenses.gpl3Plus reaperFork.meta.license ];
platforms = platforms.linux;
};

View file

@ -13,9 +13,9 @@ stdenv.mkDerivation rec {
buildInputs = [ lv2 python3 ];
meta = with lib; {
homepage = "http://drobilla.net/software/fomp/";
homepage = "https://drobilla.net/software/fomp.html";
description = "An LV2 port of the MCP, VCO, FIL, and WAH plugins by Fons Adriaensen";
license = licenses.gpl2;
license = licenses.gpl2Plus;
maintainers = [ maintainers.magnetophon ];
platforms = platforms.linux;
};

View file

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
url = "https://bitbucket.org/mpyne/game-music-emu/downloads/${pname}-${version}.tar.xz";
sha256 = "07857vdkak306d9s5g6fhmjyxk7vijzjhkmqb15s7ihfxx9lx8xb";
};
cmakeFlags = lib.optionals stdenv.isDarwin [ "-DENABLE_UBSAN=OFF" ];
nativeBuildInputs = [ cmake ];
meta = with lib; {

View file

@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
homepage = "http://www2.ika.ruhr-uni-bochum.de/HybridReverb2";
homepage = "https://github.com/jpcima/HybridReverb2";
description = "Reverb effect using hybrid impulse convolution";
license = licenses.gpl2Plus;
maintainers = [ maintainers.magnetophon ];

View file

@ -12,6 +12,12 @@ stdenv.mkDerivation rec {
sha256 = "025fj34gq2kmkpwcswcyx7wdxb89vm944dh685zi4bxx0hz16vvk";
};
postPatch = ''
# https://github.com/milkytracker/MilkyTracker/issues/262
substituteInPlace CMakeLists.txt \
--replace 'CMAKE_CXX_STANDARD 98' 'CMAKE_CXX_STANDARD 11'
'';
nativeBuildInputs = [ cmake pkg-config makeWrapper ];
buildInputs = [ SDL2 alsa-lib libjack2 lhasa perl rtmidi zlib zziplib ];

View file

@ -3,28 +3,22 @@
buildDotnetModule rec {
pname = "btcpayserver";
version = "1.3.7";
version = "1.4.3";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "sha256-W8WRw42hMNUaQZlfrl73REGIvLcj6Vso9Axx53ENkx0=";
sha256 = "sha256-CMa0+Djx07q77W/ezMhU+JP5EPXz4nfZ35TN8O6R/nc=";
};
projectFile = "BTCPayServer/BTCPayServer.csproj";
nugetDeps = ./deps.nix;
dotnet-sdk = dotnetCorePackages.sdk_3_1;
dotnet-runtime = dotnetCorePackages.aspnetcore_3_1;
dotnet-sdk = dotnetCorePackages.sdk_6_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_6_0;
dotnetFlags = lib.optionals altcoinSupport [ "/p:Configuration=Altcoins-Release" ];
# btcpayserver requires the publish directory as its working dir
# https://github.com/btcpayserver/btcpayserver/issues/1894
preInstall = ''
makeWrapperArgs+=(--run "cd $out/lib/btcpayserver")
'';
buildType = if altcoinSupport then "Altcoins-Release" else "Release";
postFixup = ''
mv $out/bin/{BTCPayServer,btcpayserver}

File diff suppressed because it is too large Load diff

View file

@ -2,20 +2,20 @@
buildDotnetModule rec {
pname = "nbxplorer";
version = "2.2.18";
version = "2.2.20";
src = fetchFromGitHub {
owner = "dgarage";
repo = "NBXplorer";
rev = "v${version}";
sha256 = "sha256-zjSHgMdK417bm1Z/B2kvloDnPTqzM9jEVkZvoKeBkzM=";
sha256 = "sha256-C3REnfecNwf3dtk6aLYAEsedHRlIrQZAokXtf6KI8U0=";
};
projectFile = "NBXplorer/NBXplorer.csproj";
nugetDeps = ./deps.nix;
dotnet-sdk = dotnetCorePackages.sdk_3_1;
dotnet-runtime = dotnetCorePackages.aspnetcore_3_1;
dotnet-sdk = dotnetCorePackages.sdk_6_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_6_0;
postFixup = ''
mv $out/bin/{NBXplorer,nbxplorer}

View file

@ -6,13 +6,13 @@
})
(fetchNuGet {
pname = "Microsoft.AspNetCore.JsonPatch";
version = "3.1.19";
sha256 = "1fh3k85k988jw35sf5hvm6jwmvzmslzpfvf3jk3sn3f3s6gyk0an";
version = "6.0.1";
sha256 = "0rsqng2b8a3zaha9c2x1195das5wwvmnz31xf14ancgha4lxq68r";
})
(fetchNuGet {
pname = "Microsoft.AspNetCore.Mvc.NewtonsoftJson";
version = "3.1.19";
sha256 = "1nh08kjdc152m85ycwxn1q8r69f0l02p6cac6q57nzlyy5gyj2rs";
version = "6.0.1";
sha256 = "179b2774s68im71r32lv4nydcp586x86zggs8ml6jcfjrd9fs5b1";
})
(fetchNuGet {
pname = "Microsoft.Azure.Amqp";
@ -226,8 +226,8 @@
})
(fetchNuGet {
pname = "Newtonsoft.Json";
version = "12.0.2";
sha256 = "0w2fbji1smd2y7x25qqibf1qrznmv4s6s0jvrbvr6alb7mfyqvh5";
version = "13.0.1";
sha256 = "0fijg0w6iwap8gvzyjnndds0q4b8anwxxvik7y8vgq97dram4srb";
})
(fetchNuGet {
pname = "Newtonsoft.Json";

View file

@ -234,10 +234,10 @@
elpaBuild {
pname = "auctex";
ename = "auctex";
version = "13.0.15";
version = "13.0.16";
src = fetchurl {
url = "https://elpa.gnu.org/packages/auctex-13.0.15.tar";
sha256 = "1rm8s02d1mx5sw7yj65zlr07xhimnmvqav7f45nz2h8bwka02c3c";
url = "https://elpa.gnu.org/packages/auctex-13.0.16.tar";
sha256 = "1r9piq4js45knw8sf73kk8jjinmx4m2mdinc98xrklnwcffw7hjf";
};
packageRequires = [ emacs ];
meta = {
@ -459,6 +459,21 @@
license = lib.licenses.free;
};
}) {};
cape = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "cape";
ename = "cape";
version = "0.6";
src = fetchurl {
url = "https://elpa.gnu.org/packages/cape-0.6.tar";
sha256 = "0pc0vvdb0pczz9n50wry6k6wkdaz3bqin07nmlxm8w1aqvapb2pr";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/cape.html";
license = lib.licenses.free;
};
}) {};
capf-autosuggest = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "capf-autosuggest";
@ -696,10 +711,10 @@
elpaBuild {
pname = "consult";
ename = "consult";
version = "0.14";
version = "0.15";
src = fetchurl {
url = "https://elpa.gnu.org/packages/consult-0.14.tar";
sha256 = "0lb72j4nxvaar2vip6jlyn62b9z2p2vsmijk3m9nsrshbqnlf0rc";
url = "https://elpa.gnu.org/packages/consult-0.15.tar";
sha256 = "0hsmxaiadb8smi1hk90n9napqrygh9rvj7g9a3d9isi47yrbg693";
};
packageRequires = [ emacs ];
meta = {
@ -726,10 +741,10 @@
elpaBuild {
pname = "corfu";
ename = "corfu";
version = "0.17";
version = "0.18";
src = fetchurl {
url = "https://elpa.gnu.org/packages/corfu-0.17.tar";
sha256 = "13nmbyrsvglzv57n9srl0kz75y07v8imr6c99nbf1mssli3h6n7y";
url = "https://elpa.gnu.org/packages/corfu-0.18.tar";
sha256 = "1g1b05wc9qql5qw3diprx0ay2rmq7963gdgyh7bi5i0xlfaspbgi";
};
packageRequires = [ emacs ];
meta = {
@ -741,10 +756,10 @@
elpaBuild {
pname = "coterm";
ename = "coterm";
version = "1.3";
version = "1.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/coterm-1.3.tar";
sha256 = "078rrc776mdzb4nczp1h8p0pymzds76kz3g2h78ri95k3wpy5ksj";
url = "https://elpa.gnu.org/packages/coterm-1.4.tar";
sha256 = "0cs9hqffkzlkkpcfhdh67gg3vzvffrjawmi89q7x9p52fk9rcxp6";
};
packageRequires = [ emacs ];
meta = {
@ -906,10 +921,10 @@
elpaBuild {
pname = "debbugs";
ename = "debbugs";
version = "0.29";
version = "0.30";
src = fetchurl {
url = "https://elpa.gnu.org/packages/debbugs-0.29.tar";
sha256 = "1bn21d9dr9pb3vdak3v07x056xafym89kdpxavjf4avy6bry6s4d";
url = "https://elpa.gnu.org/packages/debbugs-0.30.tar";
sha256 = "05yy1hhxd59rhricb14iai71w681222sv0i703yrgg868mphl7sb";
};
packageRequires = [ emacs soap-client ];
meta = {
@ -992,6 +1007,21 @@
license = lib.licenses.free;
};
}) {};
diminish = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "diminish";
ename = "diminish";
version = "0.46";
src = fetchurl {
url = "https://elpa.gnu.org/packages/diminish-0.46.tar";
sha256 = "17lsm5khp7cqrva13kn252ab57lw28sibf14615wdjvfqwlwwha4";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/diminish.html";
license = lib.licenses.free;
};
}) {};
dired-du = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "dired-du";
@ -1082,6 +1112,21 @@
license = lib.licenses.free;
};
}) {};
dtache = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "dtache";
ename = "dtache";
version = "0.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/dtache-0.5.tar";
sha256 = "10gcnkajpw7szd41l6ykkysv00yp93y1z9ajhcmk4wzni93w21z2";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/dtache.html";
license = lib.licenses.free;
};
}) {};
dts-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "dts-mode";
@ -1131,10 +1176,10 @@
elpaBuild {
pname = "ebdb";
ename = "ebdb";
version = "0.8.8";
version = "0.8.10";
src = fetchurl {
url = "https://elpa.gnu.org/packages/ebdb-0.8.8.tar";
sha256 = "035xakji5vypdpc06qp9yhg8ny7qn80h8kax6cl80p0lljplzrnn";
url = "https://elpa.gnu.org/packages/ebdb-0.8.10.tar";
sha256 = "1763zk75a85803wbn68sz4n3yvkhzh3a8571syd1r2npb59b40ad";
};
packageRequires = [ emacs seq ];
meta = {
@ -1191,10 +1236,10 @@
elpaBuild {
pname = "eev";
ename = "eev";
version = "20211226";
version = "20220120";
src = fetchurl {
url = "https://elpa.gnu.org/packages/eev-20211226.tar";
sha256 = "15ggg7sv4m5yc8ldyyffz7vgaj00xbw15zga0x2lpdfmahh6y2as";
url = "https://elpa.gnu.org/packages/eev-20220120.tar";
sha256 = "0wbm7bd48vl66vhraqfwycz989hd36whris1xa5rbhfbxgz2d1sx";
};
packageRequires = [ emacs ];
meta = {
@ -1214,10 +1259,10 @@
elpaBuild {
pname = "eglot";
ename = "eglot";
version = "1.7";
version = "1.8";
src = fetchurl {
url = "https://elpa.gnu.org/packages/eglot-1.7.tar";
sha256 = "1zvs144hxq2mmq1h0ynx9hy7yyccb46f3pjg9mgq8v9cw5y678vk";
url = "https://elpa.gnu.org/packages/eglot-1.8.tar";
sha256 = "1n04jnf3wwpxafrzfd02l53wf90brjc8p835f84k0n0rjxin99k5";
};
packageRequires = [ eldoc emacs flymake jsonrpc project xref ];
meta = {
@ -1264,10 +1309,10 @@
elpaBuild {
pname = "eldoc-eval";
ename = "eldoc-eval";
version = "0.1";
version = "0.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/eldoc-eval-0.1.el";
sha256 = "1mnhxdsn9h43iq941yqmg92v3hbzwyg7acqfnz14q5g52bnagg19";
url = "https://elpa.gnu.org/packages/eldoc-eval-0.2.tar";
sha256 = "09g9y1w1dlq3s8sqzczgaj02y53x616ak9w3kynq53pwgaxq14j4";
};
packageRequires = [];
meta = {
@ -1309,10 +1354,10 @@
elpaBuild {
pname = "embark";
ename = "embark";
version = "0.14";
version = "0.15";
src = fetchurl {
url = "https://elpa.gnu.org/packages/embark-0.14.tar";
sha256 = "12d4lza54sf493z9hx1fqlrhrx19girrdh560syi4gg03kg8s7nr";
url = "https://elpa.gnu.org/packages/embark-0.15.tar";
sha256 = "0dr97549xrs9j1fhnqpdspvbfxnzqvzvpi8qc91fd2v4jsfwlklh";
};
packageRequires = [ emacs ];
meta = {
@ -1329,10 +1374,10 @@
elpaBuild {
pname = "embark-consult";
ename = "embark-consult";
version = "0.3";
version = "0.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/embark-consult-0.3.tar";
sha256 = "1l38bnphfq65r2fjy8zi7a8l4h361bfz756sswa3r7446jhd48rv";
url = "https://elpa.gnu.org/packages/embark-consult-0.4.tar";
sha256 = "1z0xc11y59lagfsd2raps4iz68hvw132ff0qynbmvgw63mp1w4yy";
};
packageRequires = [ consult emacs embark ];
meta = {
@ -1349,10 +1394,10 @@
elpaBuild {
pname = "emms";
ename = "emms";
version = "8";
version = "9";
src = fetchurl {
url = "https://elpa.gnu.org/packages/emms-8.tar";
sha256 = "1iffh6n8q9xag25m9bgnpywa27bkdvvz2gr500hdgwwddgdm4pq8";
url = "https://elpa.gnu.org/packages/emms-9.tar";
sha256 = "12p9nigzyrlpkfvg7v76jmcfs08z84gggnx7h4frdaim3kx5y6xf";
};
packageRequires = [ cl-lib nadvice seq ];
meta = {
@ -2168,10 +2213,10 @@
elpaBuild {
pname = "jsonrpc";
ename = "jsonrpc";
version = "1.0.14";
version = "1.0.15";
src = fetchurl {
url = "https://elpa.gnu.org/packages/jsonrpc-1.0.14.el";
sha256 = "069l0sqkambam4ikj9id36kdw1jdjna8v586d51m64hiz96rmvm6";
url = "https://elpa.gnu.org/packages/jsonrpc-1.0.15.tar";
sha256 = "1hx378rg12jz2zm105cvrqk0nqyzsn04l59d903l98d6lbd96rsw";
};
packageRequires = [ emacs ];
meta = {
@ -2258,10 +2303,10 @@
elpaBuild {
pname = "leaf";
ename = "leaf";
version = "4.5.2";
version = "4.5.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/leaf-4.5.2.tar";
sha256 = "0i90shhhkpdcwmfi8zv0008qgmg4g3cqd2yvpycfv9n2axvhag54";
url = "https://elpa.gnu.org/packages/leaf-4.5.5.tar";
sha256 = "1rdbrf84ijapiqhq72gy8r5xgk54sf0jy31pgd3w4rl1wywh5cas";
};
packageRequires = [ emacs ];
meta = {
@ -2393,10 +2438,10 @@
elpaBuild {
pname = "marginalia";
ename = "marginalia";
version = "0.11";
version = "0.12";
src = fetchurl {
url = "https://elpa.gnu.org/packages/marginalia-0.11.tar";
sha256 = "0mri8awary11hwg6lib903q5jcv2isnf8mi62mgndiki5s9cgrbs";
url = "https://elpa.gnu.org/packages/marginalia-0.12.tar";
sha256 = "01dy9dg2ac6s84ffcxn2pw1y75pinkdvxg1j2g3vijwjd5hpfakq";
};
packageRequires = [ emacs ];
meta = {
@ -2438,10 +2483,10 @@
elpaBuild {
pname = "mct";
ename = "mct";
version = "0.3.0";
version = "0.4.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/mct-0.3.0.tar";
sha256 = "07wywk5zadcinjpx9hvag8ndzb426lq5jlg42rqdgrv92ka7n16b";
url = "https://elpa.gnu.org/packages/mct-0.4.2.tar";
sha256 = "0as8298mb136az555zag5q3xvc7d0z508d3siii60wmzs9dyb8dx";
};
packageRequires = [ emacs ];
meta = {
@ -2751,10 +2796,10 @@
elpaBuild {
pname = "nano-theme";
ename = "nano-theme";
version = "0.2.1";
version = "0.3.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/nano-theme-0.2.1.tar";
sha256 = "0m98kq40dhbrn55x4bp2x5d5j1gps4y7z4086mgnj8wr1y3w8kdl";
url = "https://elpa.gnu.org/packages/nano-theme-0.3.0.tar";
sha256 = "1nq5x46467vnsfg3fzb0qyg97xpnwsvbqg8frdjil5zq5fhsgmrz";
};
packageRequires = [ emacs ];
meta = {
@ -2916,6 +2961,21 @@
license = lib.licenses.free;
};
}) {};
orderless = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "orderless";
ename = "orderless";
version = "0.7";
src = fetchurl {
url = "https://elpa.gnu.org/packages/orderless-0.7.tar";
sha256 = "0hvfqxpazan1djpn0qxh609r53jgddpcdih6chkn2zvx29mhdkgg";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/orderless.html";
license = lib.licenses.free;
};
}) {};
org = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "org";
@ -2965,10 +3025,10 @@
elpaBuild {
pname = "org-transclusion";
ename = "org-transclusion";
version = "1.1.1";
version = "1.2.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/org-transclusion-1.1.1.tar";
sha256 = "12dp5fc7iw78qx2f501ch8mvhvw90bxg8hhvx0kz3y24gf2h8d4d";
url = "https://elpa.gnu.org/packages/org-transclusion-1.2.0.tar";
sha256 = "1q36nqxynzh8ygvgw5nmg49c4yq8pgp6lcb6mdqs9paw8pglxcjf";
};
packageRequires = [ emacs org ];
meta = {
@ -3145,10 +3205,10 @@
elpaBuild {
pname = "phps-mode";
ename = "phps-mode";
version = "0.4.13";
version = "0.4.16";
src = fetchurl {
url = "https://elpa.gnu.org/packages/phps-mode-0.4.13.tar";
sha256 = "03j5ck0pk88kdl7br1rkdqmnjd8418y9w9m27gk63hqbi3p8diy6";
url = "https://elpa.gnu.org/packages/phps-mode-0.4.16.tar";
sha256 = "0k8n2pa20nkqd8w4c86p1f5cgn93favxxhws62i4w16934x6w07j";
};
packageRequires = [ emacs ];
meta = {
@ -3190,10 +3250,10 @@
elpaBuild {
pname = "posframe";
ename = "posframe";
version = "1.1.5";
version = "1.1.7";
src = fetchurl {
url = "https://elpa.gnu.org/packages/posframe-1.1.5.tar";
sha256 = "1kyd3r926hhs03mmpyvbjjyqcbvqrxk62rrscgfyl7rqi9ar56i0";
url = "https://elpa.gnu.org/packages/posframe-1.1.7.tar";
sha256 = "13i2wxx079gfq0vbq0iwmsig5b7x4aspd1q02yqc79846f1dsx4w";
};
packageRequires = [ emacs ];
meta = {
@ -3250,10 +3310,10 @@
elpaBuild {
pname = "pyim";
ename = "pyim";
version = "4.0.3";
version = "4.1.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/pyim-4.0.3.tar";
sha256 = "110d9d8xglnyv0cn0slwk3msgqq8rs01xq2qmx5ya7i2v77gd5ql";
url = "https://elpa.gnu.org/packages/pyim-4.1.0.tar";
sha256 = "1q4b3y72gbkl5z31brlnjqjl30lgqm2d1zlqrbkqnnfy5hjgazk9";
};
packageRequires = [ async emacs xr ];
meta = {
@ -3560,10 +3620,10 @@
elpaBuild {
pname = "relint";
ename = "relint";
version = "1.19";
version = "1.20";
src = fetchurl {
url = "https://elpa.gnu.org/packages/relint-1.19.tar";
sha256 = "14z3i01pq5ljhjf5yfcjw7hxljcrwjnizkrdc1qyh9b6h3ic1bbi";
url = "https://elpa.gnu.org/packages/relint-1.20.tar";
sha256 = "0r20dim2r4a4bv0fmgbnq3graa7hhlai55h9qyknapqbr2j1v1h7";
};
packageRequires = [ emacs xr ];
meta = {
@ -3620,10 +3680,10 @@
elpaBuild {
pname = "rt-liberation";
ename = "rt-liberation";
version = "2.4";
version = "4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/rt-liberation-2.4.tar";
sha256 = "1qfd0dy4n04gf3vx0pbwfgmp4wm2a64sh3m6mlfhinqgmasajh6r";
url = "https://elpa.gnu.org/packages/rt-liberation-4.tar";
sha256 = "15vs982cxpc3g8cq2gj3a6dfn9i2r9b44x38ydvcmiy2brkd3psj";
};
packageRequires = [];
meta = {
@ -3742,6 +3802,7 @@
license = lib.licenses.free;
};
}) {};
# removed duplicated shell-command-plus
shell-command-plus = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "shell-command-plus";
@ -3892,16 +3953,20 @@
license = lib.licenses.free;
};
}) {};
soap-client = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
soap-client = callPackage ({ cl-lib ? null
, elpaBuild
, emacs
, fetchurl
, lib }:
elpaBuild {
pname = "soap-client";
ename = "soap-client";
version = "3.2.0";
version = "3.2.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/soap-client-3.2.0.tar";
sha256 = "1s0bwnip22nj6kgjadd4zlj9j729hiyyjb66sr51i2mddnf9i95s";
url = "https://elpa.gnu.org/packages/soap-client-3.2.1.tar";
sha256 = "0ajv6l1p8dinnlybwzvv4c2i6291is6isjxb2h4apg27g66qbcki";
};
packageRequires = [ cl-lib ];
packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/soap-client.html";
license = lib.licenses.free;
@ -4046,10 +4111,10 @@
elpaBuild {
pname = "svg-lib";
ename = "svg-lib";
version = "0.2.4";
version = "0.2.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/svg-lib-0.2.4.tar";
sha256 = "0vcf3vbrzhgwssf6mi4xyic32yzjsrllp2zaqdk3c0qjvq9w4wxa";
url = "https://elpa.gnu.org/packages/svg-lib-0.2.5.tar";
sha256 = "022jp54w14sv0d71j0z76bnir9bgvysmcpcxpzpiiz77da6rg393";
};
packageRequires = [ emacs ];
meta = {
@ -4147,6 +4212,21 @@
license = lib.licenses.free;
};
}) {};
tempel = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "tempel";
ename = "tempel";
version = "0.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/tempel-0.2.tar";
sha256 = "0xn2vqaxqv04zmlp5hpb9vxkbs3bv4dk22xs5j5fqjid2hcv3714";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/tempel.html";
license = lib.licenses.free;
};
}) {};
test-simple = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "test-simple";
@ -4200,10 +4280,10 @@
elpaBuild {
pname = "tramp";
ename = "tramp";
version = "2.5.2";
version = "2.5.2.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/tramp-2.5.2.tar";
sha256 = "1j71x3q6x9xyf21capjxcp85b7z2x9khrqsd2sy2s3qwxz3jbg5n";
url = "https://elpa.gnu.org/packages/tramp-2.5.2.1.tar";
sha256 = "1101nb0raiivrv1z4w442688cxj5mpf4h4zxzy6mhirgsbayk91p";
};
packageRequires = [ emacs ];
meta = {
@ -4290,10 +4370,10 @@
elpaBuild {
pname = "uni-confusables";
ename = "uni-confusables";
version = "0.2";
version = "0.3";
src = fetchurl {
url = "https://elpa.gnu.org/packages/uni-confusables-0.2.tar";
sha256 = "1an2l7f8lqhp3hq511a371isv1q00nx431g2a7266pp6pn2sndj1";
url = "https://elpa.gnu.org/packages/uni-confusables-0.3.tar";
sha256 = "1grmppbyzvjjz0yiv5vvgpykhalisj9jnh6p9ip9vbnnll63iz4w";
};
packageRequires = [];
meta = {
@ -4389,10 +4469,10 @@
elpaBuild {
pname = "vc-got";
ename = "vc-got";
version = "1.0";
version = "1.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/vc-got-1.0.tar";
sha256 = "1lx52g261zr52gy63vjll8mvczcbdzbsx3wa47qdajrq9bwmj99j";
url = "https://elpa.gnu.org/packages/vc-got-1.1.tar";
sha256 = "1myck30ybq8ggf4yk3s2sqjqj8m1kfl8qxygkk3ynfa6jxxy4x1r";
};
packageRequires = [ emacs ];
meta = {
@ -4481,10 +4561,10 @@
elpaBuild {
pname = "vertico";
ename = "vertico";
version = "0.19";
version = "0.20";
src = fetchurl {
url = "https://elpa.gnu.org/packages/vertico-0.19.tar";
sha256 = "1i9aqxsplmzyy7nv4czspa66a6v33lnng1d8zsgjf1m9sz0kyzxp";
url = "https://elpa.gnu.org/packages/vertico-0.20.tar";
sha256 = "1hg91f74klbwisxzp74d020v42l28wik9y1lg3hrbdspnhlhsdrl";
};
packageRequires = [ emacs ];
meta = {
@ -4501,10 +4581,10 @@
elpaBuild {
pname = "vertico-posframe";
ename = "vertico-posframe";
version = "0.4.8";
version = "0.5.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/vertico-posframe-0.4.8.tar";
sha256 = "1cvihfj59qycd3kifxbg9ndrmiihc62si8q5b8fxc1p20acw4f69";
url = "https://elpa.gnu.org/packages/vertico-posframe-0.5.2.tar";
sha256 = "0gzvm0la706kg3aqgrd6crz6353sp47dnpxdj9l2avb31avyqmv9";
};
packageRequires = [ emacs posframe vertico ];
meta = {
@ -4749,10 +4829,10 @@
elpaBuild {
pname = "xclip";
ename = "xclip";
version = "1.10";
version = "1.11";
src = fetchurl {
url = "https://elpa.gnu.org/packages/xclip-1.10.el";
sha256 = "0i3i9kwfg8qmhcmqhhnrb1kljgwkccv63s9q1mjwqfjldyfh8j8i";
url = "https://elpa.gnu.org/packages/xclip-1.11.tar";
sha256 = "0hgblj8ng7vfsdb7g1mm9m2qhzfprycdd77836l59prpak5kp55q";
};
packageRequires = [];
meta = {
@ -4794,10 +4874,10 @@
elpaBuild {
pname = "xr";
ename = "xr";
version = "1.21";
version = "1.22";
src = fetchurl {
url = "https://elpa.gnu.org/packages/xr-1.21.tar";
sha256 = "0mc10d33lsqs0ihcja8w78jzh2pk0dfm9m86kap6r3hi6wkr1cmi";
url = "https://elpa.gnu.org/packages/xr-1.22.tar";
sha256 = "1l3bqgzvbamfs4n628kg789g7vjn4v81q570gzbw2cwjgk4s6xbj";
};
packageRequires = [ emacs ];
meta = {

View file

@ -45,6 +45,21 @@
license = lib.licenses.free;
};
}) {};
annotate = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "annotate";
ename = "annotate";
version = "1.5.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/annotate-1.5.0.tar";
sha256 = "0ba91yy2id5jsl9bg8cfjm2sqbqp9jwwdikwkdj5v6xz6ggh134b";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/annotate.html";
license = lib.licenses.free;
};
}) {};
anti-zenburn-theme = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "anti-zenburn-theme";
@ -155,6 +170,21 @@
license = lib.licenses.free;
};
}) {};
bind-map = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "bind-map";
ename = "bind-map";
version = "1.1.2";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/bind-map-1.1.2.tar";
sha256 = "1x98pgalnpl45h63yw6zz6q16x00phijyx2pf4jrf93s18lx33z5";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/bind-map.html";
license = lib.licenses.free;
};
}) {};
bison-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "bison-mode";
@ -340,6 +370,21 @@
license = lib.licenses.free;
};
}) {};
dockerfile-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "dockerfile-mode";
ename = "dockerfile-mode";
version = "1.5";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/dockerfile-mode-1.5.tar";
sha256 = "0dz91i4ak3v0x1v75ibhjjz211k9g6qimz4lxn3x424j7dlpa9f3";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/dockerfile-mode.html";
license = lib.licenses.free;
};
}) {};
dracula-theme = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "dracula-theme";
@ -355,6 +400,21 @@
license = lib.licenses.free;
};
}) {};
drupal-mode = callPackage ({ elpaBuild, fetchurl, lib, php-mode }:
elpaBuild {
pname = "drupal-mode";
ename = "drupal-mode";
version = "0.7.4";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/drupal-mode-0.7.4.tar";
sha256 = "1cglipmwx5v8vaqkkc7f5ka3dpxlrmmqrqhi885mm625kh2r27j1";
};
packageRequires = [ php-mode ];
meta = {
homepage = "https://elpa.gnu.org/packages/drupal-mode.html";
license = lib.licenses.free;
};
}) {};
editorconfig = callPackage ({ cl-lib ? null
, elpaBuild
, emacs
@ -375,6 +435,36 @@
license = lib.licenses.free;
};
}) {};
elixir-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "elixir-mode";
ename = "elixir-mode";
version = "2.4.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/elixir-mode-2.4.0.tar";
sha256 = "0h3ypyxmcpfh8kcwd08rsild4jy8s4mr3zr8va03bbh81pd3nm1m";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/elixir-mode.html";
license = lib.licenses.free;
};
}) {};
elpher = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "elpher";
ename = "elpher";
version = "3.3.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/elpher-3.3.1.tar";
sha256 = "056z3ryj2288wgl8h4b33v9hybm8n2kfrqyb22bmlq1npcixyjl7";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/elpher.html";
license = lib.licenses.free;
};
}) {};
evil = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "evil";
@ -405,6 +495,21 @@
license = lib.licenses.free;
};
}) {};
evil-args = callPackage ({ elpaBuild, evil, fetchurl, lib }:
elpaBuild {
pname = "evil-args";
ename = "evil-args";
version = "1.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/evil-args-1.1.tar";
sha256 = "0lgwrhjsy098h2lhsiasm39kzkdfqcjnapc2q6f2gyf7zll37761";
};
packageRequires = [ evil ];
meta = {
homepage = "https://elpa.gnu.org/packages/evil-args.html";
license = lib.licenses.free;
};
}) {};
evil-exchange = callPackage ({ cl-lib ? null
, elpaBuild
, evil
@ -553,14 +658,44 @@
license = lib.licenses.free;
};
}) {};
forth-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "forth-mode";
ename = "forth-mode";
version = "0.2";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/forth-mode-0.2.tar";
sha256 = "0qk6kg8d38fcvbxa4gfsdyllzrrp9712w74sj29b90fppa11b530";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/forth-mode.html";
license = lib.licenses.free;
};
}) {};
free-keys = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "free-keys";
ename = "free-keys";
version = "1.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/free-keys-1.0.tar";
sha256 = "1w0dslygz098bddap1shwa8pn55ggavz2jn131rmdnbfjy6plglv";
};
packageRequires = [ cl-lib ];
meta = {
homepage = "https://elpa.gnu.org/packages/free-keys.html";
license = lib.licenses.free;
};
}) {};
geiser = callPackage ({ elpaBuild, emacs, fetchurl, lib, transient }:
elpaBuild {
pname = "geiser";
ename = "geiser";
version = "0.22";
version = "0.22.2";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/geiser-0.22.tar";
sha256 = "0jcxjfn9d7cnsir2pva0axaz180d01sn0l9f175sj57ws8spj2h2";
url = "https://elpa.nongnu.org/nongnu/geiser-0.22.2.tar";
sha256 = "0mva8arcxj1kf6g7s6f6ik70gradmbnhhiaf7rdkycxdd8kdqn7i";
};
packageRequires = [ emacs transient ];
meta = {
@ -647,10 +782,10 @@
elpaBuild {
pname = "geiser-guile";
ename = "geiser-guile";
version = "0.21.1";
version = "0.21.2";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/geiser-guile-0.21.1.tar";
sha256 = "1sm19jmaxzxkxd4jksgvc064jv90bc6q0yf8zz0s77y0aldw8sf5";
url = "https://elpa.nongnu.org/nongnu/geiser-guile-0.21.2.tar";
sha256 = "06mr8clsk8fj73q4ln90i28xs8axl4sd68wiyl41kgg9w5y78cb7";
};
packageRequires = [ emacs geiser ];
meta = {
@ -814,6 +949,21 @@
license = lib.licenses.free;
};
}) {};
graphql-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "graphql-mode";
ename = "graphql-mode";
version = "1.0.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/graphql-mode-1.0.0.tar";
sha256 = "11vn02vwiqbkzl9gxsm3gvybkbac13xnzzv2y227j3y8aq5kbwss";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/graphql-mode.html";
license = lib.licenses.free;
};
}) {};
gruvbox-theme = callPackage ({ autothemer, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "gruvbox-theme";
@ -889,6 +1039,36 @@
license = lib.licenses.free;
};
}) {};
helm = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "helm";
ename = "helm";
version = "3.8.3";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/helm-3.8.3.tar";
sha256 = "00qjcv4qxjw50zp5dzvn79c0xpyla4h41fxkr2jjszq6qzgd92cv";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/helm.html";
license = lib.licenses.free;
};
}) {};
helm-core = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "helm-core";
ename = "helm-core";
version = "3.8.3";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/helm-core-3.8.3.tar";
sha256 = "11ggn1fmi8wbg2igs5lqppyccgpz8kyfzl17wqkr5xy69lr1jn5g";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/helm-core.html";
license = lib.licenses.free;
};
}) {};
highlight-parentheses = callPackage ({ elpaBuild
, emacs
, fetchurl
@ -991,6 +1171,21 @@
license = lib.licenses.free;
};
}) {};
jade-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "jade-mode";
ename = "jade-mode";
version = "1.0.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/jade-mode-1.0.1.tar";
sha256 = "1kkf5ayqzs1rs7b3jqwb21r2mikds3lillfrs3pkcca7lj76313n";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/jade-mode.html";
license = lib.licenses.free;
};
}) {};
jinja2-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "jinja2-mode";
@ -1036,6 +1231,21 @@
license = lib.licenses.free;
};
}) {};
kotlin-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "kotlin-mode";
ename = "kotlin-mode";
version = "1.0.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/kotlin-mode-1.0.0.tar";
sha256 = "0ajnnsh6a8psfh7gd34d2wfii08jxr7x7k6na0assjldsxy7afwj";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/kotlin-mode.html";
license = lib.licenses.free;
};
}) {};
lua-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "lua-mode";
@ -1259,6 +1469,26 @@
license = lib.licenses.free;
};
}) {};
nix-mode = callPackage ({ elpaBuild
, emacs
, fetchurl
, lib
, magit-section
, transient }:
elpaBuild {
pname = "nix-mode";
ename = "nix-mode";
version = "1.4.4";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/nix-mode-1.4.4.tar";
sha256 = "1nn74671273s5mjxzbdqvpwqx6w12zya21sxhzw51k2fs68vwh23";
};
packageRequires = [ emacs magit-section transient ];
meta = {
homepage = "https://elpa.gnu.org/packages/nix-mode.html";
license = lib.licenses.free;
};
}) {};
org-contrib = callPackage ({ elpaBuild, emacs, fetchurl, lib, org }:
elpaBuild {
pname = "org-contrib";
@ -1314,10 +1544,10 @@
elpaBuild {
pname = "org-mime";
ename = "org-mime";
version = "0.2.4";
version = "0.2.6";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/org-mime-0.2.4.tar";
sha256 = "048psi5h8ln83pra4f24iq794w00b8p8pk67cylbd8afjdhh2x1r";
url = "https://elpa.nongnu.org/nongnu/org-mime-0.2.6.tar";
sha256 = "1l6mniyhmw3vbkvahw24038isd4ysbx505c3r0ar1rh7fbdf58cf";
};
packageRequires = [ emacs ];
meta = {
@ -1436,6 +1666,21 @@
license = lib.licenses.free;
};
}) {};
pcmpl-args = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "pcmpl-args";
ename = "pcmpl-args";
version = "0.1.3";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/pcmpl-args-0.1.3.tar";
sha256 = "1p9y80k2rb9vlkqbmwdmzw279wlk8yk8ii5kqgkyr1yg224qpaw7";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/pcmpl-args.html";
license = lib.licenses.free;
};
}) {};
pdf-tools = callPackage ({ elpaBuild
, emacs
, fetchurl
@ -1531,6 +1776,21 @@
license = lib.licenses.free;
};
}) {};
raku-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "raku-mode";
ename = "raku-mode";
version = "0.2.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/raku-mode-0.2.1.tar";
sha256 = "01ygn20pbq18rciczbb0mkszr33pifs6i74rajxz03bcgx2j3q6f";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/raku-mode.html";
license = lib.licenses.free;
};
}) {};
request = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "request";
@ -1715,14 +1975,29 @@
license = lib.licenses.free;
};
}) {};
stylus-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "stylus-mode";
ename = "stylus-mode";
version = "1.0.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/stylus-mode-1.0.1.tar";
sha256 = "0vihp241msg8f0ph8w3w9fkad9b12pmpwg0q5la8nbw7gfy41mz5";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/stylus-mode.html";
license = lib.licenses.free;
};
}) {};
subatomic-theme = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "subatomic-theme";
ename = "subatomic-theme";
version = "1.8.1";
version = "1.8.2";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/subatomic-theme-1.8.1.tar";
sha256 = "0j496l7c2rwgxk2srcf1a70z63y48q5bs9cpx95212q7rl20zhip";
url = "https://elpa.nongnu.org/nongnu/subatomic-theme-1.8.2.tar";
sha256 = "0h2ln37ir6w4q44vznlkw4kzaisfpvkgs02dnb2x9b1wdg5qfqw4";
};
packageRequires = [];
meta = {
@ -1734,10 +2009,10 @@
elpaBuild {
pname = "subed";
ename = "subed";
version = "0.0.3";
version = "1.0.2";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/subed-0.0.3.tar";
sha256 = "1qwpzj9j5fbis6vlgnqyilc49gbnxf48wcrjl8kljwzna3hsk7bx";
url = "https://elpa.nongnu.org/nongnu/subed-1.0.2.tar";
sha256 = "187ksczrqqzjnbvh8px3xvqyf38i7ac24z1qxzybd4vx2n071v64";
};
packageRequires = [ emacs ];
meta = {
@ -1826,6 +2101,21 @@
license = lib.licenses.free;
};
}) {};
textile-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "textile-mode";
ename = "textile-mode";
version = "1.0.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/textile-mode-1.0.0.tar";
sha256 = "14ssqiw8x1pvjlw76h12vrk2w5qmhvp11v4h3cddqi96fddr95sq";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/textile-mode.html";
license = lib.licenses.free;
};
}) {};
toc-org = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "toc-org";

View file

@ -49,9 +49,9 @@ in mkDerivation rec {
meta = with lib; {
description = "Pixel-oriented paint program, modelled on Deluxe Paint";
homepage = "http://evilpixie.scumways.com/";
homepage = "https://github.com/bcampbell/evilpixie"; # http://evilpixie.scumways.com/ is gone
downloadPage = "https://github.com/bcampbell/evilpixie/releases";
license = licenses.gpl3;
license = licenses.gpl3Only;
maintainers = with maintainers; [ fgaz ];
platforms = platforms.all;
};

View file

@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Create labels and business cards";
homepage = "https://glabels.org/";
homepage = "https://github.com/jimevins/glabels";
license = with licenses; [ gpl3Plus lgpl3Plus ];
platforms = platforms.unix;
maintainers = [ maintainers.nico202 ];

View file

@ -19,14 +19,14 @@
stdenv.mkDerivation rec {
pname = "fnott";
version = "1.1.2";
version = "1.2.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "dnkl";
repo = "fnott";
rev = version;
sha256 = "sha256-+x3uN7Uj0fqO0kpHlOVnsshgEJA1z/6ZElKSTyLzfG4=";
sha256 = "1qmxzpv2xy79aznzzr9fay61mzf1pdzv85ah3w3q2kl2i7pskfxb";
};
nativeBuildInputs = [

View file

@ -23,14 +23,14 @@
stdenv.mkDerivation rec {
pname = "fuzzel";
version = "1.6.5";
version = "1.7.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "dnkl";
repo = "fuzzel";
rev = version;
sha256 = "SWt46YSXI6Dsv0ed3H4sN8kbEzQDL4U6jxFSbMyspJ0=";
sha256 = "1261gwxiky37pvzmmbrpml1psa22kkglb141ybj1fbnwg6j7jvlf";
};
nativeBuildInputs = [

View file

@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
version = "3.4.3";
src = fetchurl {
url = "http://homepages.ihug.co.nz/~trmusson/stuff/${pname}-${version}.tar.gz";
url = "https://trmusson.dreamhosters.com/stuff/${pname}-${version}.tar.gz";
sha256 = "db4e1655fc58f31e5770a17dfca4e6c89028ad8b2c8e043febc87a0beedeef05";
};
@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
meta = {
description = "A GTK enabled dropin replacement for xmessage";
homepage = "http://homepages.ihug.co.nz/~trmusson/programs.html#gxmessage";
license = lib.licenses.gpl3;
homepage = "https://trmusson.dreamhosters.com/programs.html#gxmessage";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [jfb];
platforms = with lib.platforms; linux;
};

View file

@ -9,11 +9,11 @@
stdenv.mkDerivation rec {
pname = "hello";
version = "2.12";
version = "2.10";
src = fetchurl {
url = "mirror://gnu/hello/${pname}-${version}.tar.gz";
sha256 = "1ayhp9v4m4rdhjmnl2bq3cibrbqqkgjbl3s7yk2nhlh8vj3ay16g";
sha256 = "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i";
};
doCheck = true;

View file

@ -223,13 +223,13 @@ let
self: super: {
octoprint = self.buildPythonPackage rec {
pname = "OctoPrint";
version = "1.7.2";
version = "1.7.3";
src = fetchFromGitHub {
owner = "OctoPrint";
repo = "OctoPrint";
rev = version;
sha256 = "sha256-jCfzUx3LQ7TlXKQU8qbhyS1P4Wew/SSgJHVSc1VLdx4=";
sha256 = "sha256-U6g7WysHHOlZ4p5BM4tw3GGAxQmxv6ltYgAp1rO/eCg=";
};
propagatedBuildInputs = with super; [

View file

@ -5,19 +5,19 @@
rustPlatform.buildRustPackage rec {
pname = "taskwarrior-tui";
version = "0.13.35";
version = "0.18.5";
src = fetchFromGitHub {
owner = "kdheepak";
repo = "taskwarrior-tui";
rev = "v${version}";
sha256 = "sha256-sXJto2YygPz2B5y7m8uUfOhuRCbKkZGoCmzHOhvH2MU=";
sha256 = "sha256-Rztz/qye+VsZ0czPt6xk4PwK0e6Aq1GC404+843W55Y=";
};
# Because there's a test that requires terminal access
doCheck = false;
cargoSha256 = "sha256-mUlwpH2XhVDtjV7ChEqlEUXffOIbips4FzQyGejFvWk=";
cargoSha256 = "sha256-H2A78ACz4TxHxCCtcOuzrfAk4awU6/HC/TlHLNtb/bk=";
meta = with lib; {
description = "A terminal user interface for taskwarrior ";

View file

@ -31,14 +31,14 @@ let
in
stdenv.mkDerivation rec {
pname = "yambar";
version = "1.7.0";
version = "1.8.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "dnkl";
repo = "yambar";
rev = version;
sha256 = "sha256-NzJrlPOkzstMbw37yBTah/uFYezlPB/1hrxCiXduSmc=";
sha256 = "0d8n9hvmxj7759pfqssqcl9wvb986qsph8bnjsjm9bf97mflhy6d";
};
nativeBuildInputs = [

View file

@ -30,4 +30,4 @@ let
};
};
in self.zathuraWrapper
in self

View file

@ -11,7 +11,7 @@ symlinkJoin {
in ''
makeWrapper ${zathura_core.bin}/bin/zathura $out/bin/zathura \
--prefix PATH ":" "${lib.makeBinPath [ file ]}" \
--add-flags --plugins-dir="$out/lib/zathura"
--prefix ZATHURA_PLUGINS_PATH : "$out/lib/zathura"
# zathura fish completion references the zathura_core derivation to
# check for supported plugins which live in the wrapper derivation,

View file

@ -292,7 +292,6 @@ let
enable_hangout_services_extension = false;
enable_js_type_check = false;
enable_mdns = false;
enable_nacl_nonsfi = false;
enable_one_click_signin = false;
enable_reading_list = false;
enable_remoting = false;

View file

@ -118,6 +118,9 @@ in stdenv.mkDerivation {
cp -a opt/* $out/share
cp -a usr/share/* $out/share
substituteInPlace $out/share/google/$appname/google-$appname \
--replace 'CHROME_WRAPPER' 'WRAPPER'
substituteInPlace $out/share/applications/google-$appname.desktop \
--replace /usr/bin/google-chrome-$dist $exe
substituteInPlace $out/share/gnome-control-center/default-apps/google-$appname.xml \
@ -143,6 +146,7 @@ in stdenv.mkDerivation {
--prefix LD_LIBRARY_PATH : "$rpath" \
--prefix PATH : "$binpath" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:${addOpenGLRunpath.driverLink}/share" \
--set CHROME_WRAPPER "google-chrome-$dist" \
--add-flags ${escapeShellArg commandLineArgs} \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "tanka";
version = "0.19.0";
version = "0.20.0";
src = fetchFromGitHub {
owner = "grafana";
repo = pname;
rev = "v${version}";
sha256 = "sha256-SMPStxqzoeooBoqUJdFK6Zg3dzbNHrB/tv8iwa8GdbM=";
sha256 = "sha256-Wtfn9ffUNKuwByRbeCYq27xvr2DuzxSSQMH9Sv5a7rU=";
};
vendorSha256 = "sha256-1zdXc+Osqy17APcG5ou/UL/3Hcalmb1OZ2kZnWLSVIg=";
vendorSha256 = "sha256-ed6rC+wrZHDViGfJrSBl5VUqX/o6RKytXbTKqxb3ZtU=";
doCheck = false;

View file

@ -56,28 +56,27 @@ let
version = {
x86_64-darwin = x86_64-darwin-version;
aarch64-darwin = aarch64-darwin-version;
x86_64-linux = x86_64-linux-version;
aarch64-darwin = aarch64-darwin-version;
}.${system} or throwSystem;
src =
let
base = "https://downloads.slack-edge.com";
in
{
x86_64-darwin = fetchurl {
url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg";
sha256 = x86_64-darwin-sha256;
};
aarch64-darwin = fetchurl {
url = "${base}/releases/macos/${version}/prod/arm64/Slack-${version}-macOS.dmg";
sha256 = aarch64-darwin-sha256;
};
x86_64-linux = fetchurl {
url = "${base}/releases/linux/${version}/prod/x64/slack-desktop-${version}-amd64.deb";
sha256 = x86_64-linux-sha256;
};
}.${system} or throwSystem;
src = let
base = "https://downloads.slack-edge.com";
in {
x86_64-darwin = fetchurl {
url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg";
sha256 = x86_64-darwin-sha256;
};
x86_64-linux = fetchurl {
url = "${base}/linux_releases/slack-desktop-${version}-amd64.deb";
sha256 = x86_64-linux-sha256;
};
aarch64-darwin = fetchurl {
url = "${base}/releases/macos/${version}/prod/arm64/Slack-${version}-macOS.dmg";
sha256 = aarch64-darwin-sha256;
};
}.${system} or throwSystem;
meta = with lib; {
description = "Desktop client for Slack";
@ -195,7 +194,10 @@ let
runHook preInstall
mkdir -p $out/Applications/Slack.app
cp -R . $out/Applications/Slack.app
/usr/bin/defaults write com.tinyspeck.slackmacgap SlackNoAutoUpdates -bool YES
'' + lib.optionalString (!stdenv.isAarch64) ''
# on aarch64-darwin we get: Could not write domain com.tinyspeck.slackmacgap; exiting
/usr/bin/defaults write com.tinyspeck.slackmacgap SlackNoAutoUpdates -Bool YES
'' + ''
runHook postInstall
'';
};

View file

@ -16,6 +16,7 @@ nixpkgs="$(git rev-parse --show-toplevel)"
slack_nix="$nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix"
nixpkgs_linux_version=$(cat "$slack_nix" | sed -n 's/.*x86_64-linux-version = \"\([0-9\.]\+\)\";.*/\1/p')
nixpkgs_mac_version=$(cat "$slack_nix" | sed -n 's/.*x86_64-darwin-version = \"\([0-9\.]\+\)\";.*/\1/p')
nixpkgs_mac_arm_version=$(cat "$slack_nix" | sed -n 's/.*aarch64-darwin-version = \"\([0-9\.]\+\)\";.*/\1/p')
if [[ "$nixpkgs_linux_version" == "$latest_linux_version" && "$nixpkgs_mac_version" == "$latest_mac_version" ]]; then
echo "nixpkgs versions are all up to date!"
@ -24,13 +25,17 @@ fi
linux_url="https://downloads.slack-edge.com/releases/linux/${latest_linux_version}/prod/x64/slack-desktop-${latest_linux_version}-amd64.deb"
mac_url="https://downloads.slack-edge.com/releases/macos/${latest_mac_version}/prod/x64/Slack-${latest_mac_version}-macOS.dmg"
mac_arm_url="https://downloads.slack-edge.com/releases/macos/${latest_mac_version}/prod/arm64/Slack-${latest_mac_version}-macOS.dmg"
linux_sha256=$(nix-prefetch-url ${linux_url})
mac_sha256=$(nix-prefetch-url ${mac_url})
mac_arm_sha256=$(nix-prefetch-url ${mac_arm_url})
sed -i "s/x86_64-linux-version = \".*\"/x86_64-linux-version = \"${latest_linux_version}\"/" "$slack_nix"
sed -i "s/x86_64-darwin-version = \".*\"/x86_64-darwin-version = \"${latest_mac_version}\"/" "$slack_nix"
sed -i "s/aarch64-darwin-version = \".*\"/aarch64-darwin-version = \"${latest_mac_version}\"/" "$slack_nix"
sed -i "s/x86_64-linux-sha256 = \".*\"/x86_64-linux-sha256 = \"${linux_sha256}\"/" "$slack_nix"
sed -i "s/x86_64-darwin-sha256 = \".*\"/x86_64-darwin-sha256 = \"${mac_sha256}\"/" "$slack_nix"
sed -i "s/x86_64-darwin-sha256 = \".*\"/x86_64-darwin-sha256 = \"${mac_arm_sha256}\"/" "$slack_nix"
sed -i "s/aarch64-darwin-sha256 = \".*\"/aarch64-darwin-sha256 = \"${mac_arm_sha256}\"/" "$slack_nix"
if ! nix-build -A slack "$nixpkgs"; then
echo "The updated slack failed to build."

View file

@ -1,17 +1,27 @@
{ lib, stdenv, fetchurl, pkg-config, ncurses, glib, openssl, perl, libintl, libgcrypt, libotr }:
{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config, ncurses, glib, openssl, perl, libintl, libgcrypt, libotr, git }:
stdenv.mkDerivation rec {
pname = "irssi";
version = "1.2.3";
src = fetchurl {
url = "https://github.com/irssi/irssi/releases/download/${version}/${pname}-${version}.tar.gz";
sha256 = "09cwz5ff1i5lp35qhhmw6kbw5dwcn9pl16gpzkc92xg5sx3bgjr9";
src = fetchFromGitHub {
"owner" = "irssi";
"repo" = "irssi";
"rev" = "91dc3e4dfa1a9558c5a7fe0ea982cb9df0e2de65";
"sha256" = "efnE4vuDd7TnOBxMPduiV0/nez1jVhTjbJ0vzN4ZMcg=";
"leaveDotGit" = true;
};
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [ pkg-config autoconf automake libtool git ];
buildInputs = [ ncurses glib openssl perl libintl libgcrypt libotr ];
enableParallelBuilding = true;
preConfigure = ''
NOCONFIGURE=1 ./autogen.sh
'';
configureFlags = [
"--with-proxy"
"--with-bot"

View file

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
};
preConfigure = ''
tar xf ${irssi.src}
cp -a "${irssi.src}" "./${irssi.name}"
configureFlags="$configureFlags --with-irssi-source=`pwd`/${irssi.name}"
./regen.sh

View file

@ -1,12 +1,14 @@
{ lib, stdenv, fetchurl, SDL, SDL_ttf, SDL_image, libSM, libICE, libGLU, libGL, libpng, lua5, autoconf, automake }:
{ lib, stdenv, fetchFromGitHub, SDL, SDL_ttf, SDL_image, libSM, libICE, libGLU, libGL, libpng, lua5, autoconf, automake }:
stdenv.mkDerivation rec {
pname = "gravit";
version = "0.5.1";
src = fetchurl {
url = "https://gravit.slowchop.com/media/downloads/gravit-${version}.tgz";
sha256 = "14vf7zj2bgrl96wsl3f1knsggc8h9624354ajzd72l46y09x5ky7";
src = fetchFromGitHub {
owner = "gak";
repo = pname;
rev = version;
hash = "sha256-JuqnLLD5+Ec8kQI0SK98V1O6TTbGM6+yKn5KCHe85eM=";
};
buildInputs = [ libGLU libGL SDL SDL_ttf SDL_image lua5 libpng libSM libICE ];
@ -23,9 +25,9 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
meta = {
homepage = "https://gravit.slowchop.com";
homepage = "https://github.com/gak/gravit";
description = "Beautiful OpenGL-based gravity simulator";
license = lib.licenses.gpl2;
license = lib.licenses.gpl2Plus;
longDescription = ''
Gravit is a gravity simulator which runs under Linux, Windows and

View file

@ -37,8 +37,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Graph based aligner";
license = licenses.gpl3;
homepage = "https://ccb.jhu.edu/software/hisat2/index.shtml";
license = licenses.gpl3Plus;
homepage = "https://daehwankimlab.github.io/hisat2/";
maintainers = with maintainers; [ jbedo ];
platforms = [ "x86_64-linux" "i686-linux" ];
};

View file

@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Schematic editor and PCB layout tool from CadSoft";
homepage = "http://www.cadsoftusa.com/";
homepage = "https://www.autodesk.com/products/eagle/overview";
license = licenses.unfree;
platforms = platforms.linux;
maintainers = [ maintainers.bjornfor ];

View file

@ -204,5 +204,6 @@ self = stdenv.mkDerivation {
branch = coq-version;
maintainers = with maintainers; [ roconnor thoughtpolice vbgl Zimmi48 ];
platforms = platforms.unix;
mainProgram = "coqide";
};
}; in self

View file

@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
];
meta = with lib; {
homepage = "http://www.eterm.org";
homepage = "https://github.com/mej/Eterm"; # http://www.eterm.org is gone
description = "Terminal emulator";
license = licenses.bsd2;
maintainers = [ maintainers.AndersonTorres ];

View file

@ -27,7 +27,7 @@
}:
let
version = "1.10.3";
version = "1.11.0";
# build stimuli file for PGO build and the script to generate it
# independently of the foot's build, so we can cache the result
@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
owner = "dnkl";
repo = pname;
rev = version;
sha256 = "13v6xqaw3xn1x84dn4gnkiimcsllb19mrbvcdj2fnm8klnrys3gs";
sha256 = "1d9bk8lhmw5lc8k0mw80g0vbwgxyh3gw5c7ppy3sir07s9y0y0fn";
};
depsBuildBuild = [
@ -163,6 +163,7 @@ stdenv.mkDerivation rec {
# make sure there is _some_ profiling data on all binaries
./footclient --version
./foot --version
./tests/test-config
# generate pgo data of wayland independent code
./pgo ${stimuliFile} ${stimuliFile} ${stimuliFile}
meson configure -Db_pgo=use

View file

@ -0,0 +1,41 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, gtk3
, pcre
, pkg-config
, vte
}:
stdenv.mkDerivation rec {
pname = "kermit";
version = "3.7";
src = fetchFromGitHub {
name = "${pname}-${version}-src";
owner = "orhun";
repo = pname;
rev = version;
hash = "sha256-O5jpiQ+aaOTPst4/Z+H5e7ylA8CNBevqNoH50p4uEA4=";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
gtk3
pcre
vte
];
meta = with lib; {
homepage = "https://github.com/orhun/kermit";
description = "A VTE-based, simple and froggy terminal emulator";
license = licenses.gpl3Only;
maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; unix;
};
}

View file

@ -8,7 +8,7 @@ pypy2Packages.buildPythonApplication rec {
version = "2.5.0";
src = fetchurl {
url = "http://cvs2svn.tigris.org/files/documents/1462/49543/${pname}-${version}.tar.gz";
url = "https://github.com/mhagger/cvs2svn/releases/download/${version}/${pname}-${version}.tar.gz";
sha256 = "1ska0z15sjhyfi860rjazz9ya1gxbf5c0h8dfqwz88h7fccd22b4";
};
@ -29,7 +29,7 @@ pypy2Packages.buildPythonApplication rec {
meta = with lib; {
description = "A tool to convert CVS repositories to Subversion repositories";
homepage = "http://cvs2svn.tigris.org/";
homepage = "https://github.com/mhagger/cvs2svn";
maintainers = [ maintainers.makefu ];
platforms = platforms.unix;
license = licenses.asl20;

View file

@ -34,7 +34,7 @@ buildPythonPackage rec {
pythonImportsCheck = [ "dispatchsrht" ];
meta = with lib; {
homepage = "https://dispatch.sr.ht/~sircmpwn/dispatch.sr.ht";
homepage = "https://git.sr.ht/~sircmpwn/dispatch.sr.ht";
description = "Task dispatcher and service integration tool for the sr.ht network";
license = licenses.agpl3Only;
maintainers = with maintainers; [ eadwu ];

View file

@ -1,12 +1,12 @@
{ lib, stdenv, fetchFromGitHub, makeWrapper, nx-libs, xorg, getopt, gnugrep, gawk, ps, mount, iproute2 }:
stdenv.mkDerivation rec {
pname = "x11docker";
version = "6.10.0";
version = "7.0.1";
src = fetchFromGitHub {
owner = "mviereck";
repo = "x11docker";
rev = "v${version}";
sha256 = "sha256-cPCtxfLzg1RDh3vKFfxAkcCMytu0mDsGp9CLJQmXATA=";
sha256 = "sha256-ojKloMFbpBsr8fykMbLIBAzrlVaJDv+4BL0lozXsgC4=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
homepage = "https://www.ice-wm.org/";
homepage = "https://ice-wm.org/";
description = "A simple, lightweight X window manager";
longDescription = ''
IceWM is a window manager for the X Window System. The goal of IceWM is

View file

@ -16,7 +16,7 @@ in fetchzip rec {
sha256 = "1rzz7yhqq3lljyqxbg46jfzfd09qgpgx865lijr4sgc94riy1ypn";
meta = with lib; {
homepage = "http://canopus.iacp.dvo.ru/~panov/cm-unicode/";
homepage = "https://cm-unicode.sourceforge.io/";
description = "Computer Modern Unicode fonts";
maintainers = with maintainers; [ raskin rycee ];
license = licenses.ofl;

View file

@ -16,7 +16,7 @@ in fetchzip rec {
sha256 = "0mg65f0ydyfmb43jqr1f34njpd10w8npw15cbb7z0nxmy4nkl842";
meta = with lib; {
homepage = "https://aldusleaf.org/crimson.html";
homepage = "https://github.com/skosch/Crimson";
description = "A font family inspired by beautiful oldstyle typefaces";
license = licenses.ofl;
platforms = platforms.all;

View file

@ -12,7 +12,7 @@ let
This package includes DejaVu Sans, DejaVu Serif, DejaVu Sans Mono, and
the TeX Gyre DejaVu Math font.
'';
homepage = "http://dejavu-fonts.org/wiki/Main_Page";
homepage = "https://dejavu-fonts.github.io/";
# Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved.
# Copyright (c) 2006 by Tavmjong Bah. All Rights Reserved.

View file

@ -23,7 +23,7 @@ fetchzip rec {
Designed by Pablo Impallari and Andres Torresi.
'';
homepage = "http://www.impallari.com/projects/overview/encode";
homepage = "https://github.com/impallari/Encode-Sans";
license = licenses.ofl;
maintainers = with maintainers; [ cmfwyp ];
platforms = platforms.all;

View file

@ -3,7 +3,7 @@
fetchzip {
name = "ipafont-003.03";
url = "http://ipafont.ipa.go.jp/old/ipafont/IPAfont00303.php";
url = "https://moji.or.jp/wp-content/ipafont/IPAfont/IPAfont00303.zip";
postFetch = ''
mkdir -p $out/share/fonts
@ -19,7 +19,7 @@ fetchzip {
Promotion Agency of Japan. It provides both Mincho and Gothic fonts,
suitable for both display and printing.
'';
homepage = "http://ipafont.ipa.go.jp/ipafont/";
homepage = "https://moji.or.jp/ipafont/";
license = lib.licenses.ipa;
maintainers = [ lib.maintainers.auntie ];
};

View file

@ -14,7 +14,7 @@ stdenvNoCC.mkDerivation rec {
installPhase = ''
runHook preInstall
mkdir -p $out/share/icons
cp -r ./ $out/share/icons
cp -r ./phinger-cursors* $out/share/icons
runHook postInstall
'';

View file

@ -3,12 +3,12 @@
let
generator = pkgsBuildBuild.buildGoModule rec {
pname = "v2ray-domain-list-community";
version = "20220114024213";
version = "20220201175515";
src = fetchFromGitHub {
owner = "v2fly";
repo = "domain-list-community";
rev = version;
sha256 = "sha256-sF9WvXhyfMUvSXmFjkfGq4cZE/MiAnOKbkpv2CHSV3Q=";
sha256 = "sha256-vgw6i8djBQDV+fmkVe5CuKMwES/PXGoVe8cTgB5tflo=";
};
vendorSha256 = "sha256-QUbnUnxG1tsNbR49HTl55aiLkBM/ae9mCtzWeN4Ju78=";
meta = with lib; {

View file

@ -63,8 +63,9 @@ let
'';
meta = {
homepage = "http://wiki.docbook.org/topic/DocBookXslStylesheets";
homepage = "https://github.com/docbook/wiki/wiki/DocBookXslStylesheets";
description = "XSL stylesheets for transforming DocBook documents into HTML and various other formats";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.eelco ];
platforms = lib.platforms.all;
};

View file

@ -16,7 +16,7 @@
, makeWrapper
, numactl
, perl
, python2
, python3
, rocclr
, rocm-comgr
, rocm-device-libs
@ -56,7 +56,7 @@ let
substituteInPlace bin/hip_embed_pch.sh \
--replace '$LLVM_DIR/bin/' ""
sed 's,#!/usr/bin/python,#!${python2}/bin/python,' -i hip_prof_gen.py
sed 's,#!/usr/bin/python,#!${python3.interpreter},' -i hip_prof_gen.py
sed -e 's,$ROCM_AGENT_ENUM = "''${ROCM_PATH}/bin/rocm_agent_enumerator";,$ROCM_AGENT_ENUM = "${rocminfo}/bin/rocm_agent_enumerator";,' \
-e 's,^\($DEVICE_LIB_PATH=\).*$,\1"${rocm-device-libs}/amdgcn/bitcode";,' \
@ -111,7 +111,7 @@ stdenv.mkDerivation rec {
sha256 = "WvOuQu/EN81Kwcoc3ZtGlhb996edQJ3OWFsmPuqeNXE=";
};
nativeBuildInputs = [ cmake python2 makeWrapper perl ];
nativeBuildInputs = [ cmake python3 makeWrapper perl ];
buildInputs = [ libxml2 numactl libglvnd libX11 ];
propagatedBuildInputs = [
clang

View file

@ -42,6 +42,6 @@ stdenv.mkDerivation rec {
homepage = "https://unisonweb.org/";
license = with licenses; [ mit bsd3 ];
maintainers = [ maintainers.virusdave ];
platforms = [ "x86_64-darwin" "x86_64-linux" ];
platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-darwin" ];
};
}

View file

@ -9,6 +9,7 @@ mkCoqDerivation {
repo = "coq-dpdgraph";
inherit version;
defaultVersion = switch coq.coq-version [
{ case = "8.15"; out = "1.0+8.15"; }
{ case = "8.14"; out = "1.0+8.14"; }
{ case = "8.13"; out = "1.0+8.13"; }
{ case = "8.12"; out = "0.6.8"; }
@ -21,6 +22,7 @@ mkCoqDerivation {
{ case = "8.5"; out = "0.6"; }
] null;
release."1.0+8.15".sha256 = "sha256:1pxr0gakcz297y8hhrnssv5j07ccd58pv7rh7qv5g7855pfqrkg7";
release."1.0+8.14".sha256 = "sha256:01pmi7jcc77431jii6x6nd4m8jg4vycachiyi1h6dx9rp3a2508s";
release."1.0+8.13".sha256 = "sha256:0f8lj8b99n8nsq2jf5m0snblfs8yz50hmlqqq9nlw4qklq7j4z5z";
release."0.6.9".sha256 = "11mbydpcgk7y8pqzickbzx0ig7g9k9al71i9yfrcscd2xj8fwj8z";

View file

@ -1,6 +1,6 @@
{ lib
, stdenv
, fetchurl
, fetchFromGitHub
, guile
, pkg-config
, texinfo
@ -10,9 +10,11 @@ stdenv.mkDerivation rec {
pname = "guile-xcb";
version = "1.3";
src = fetchurl {
url = "http://www.markwitmer.com/dist/${pname}-${version}.tar.gz";
hash = "sha256-iYR6AYSTgUsURAEJTWcdHlc0f8LzEftAIsfonBteuxE=";
src = fetchFromGitHub {
owner = "mwitmer";
repo = pname;
rev = version;
hash = "sha256-8iaYil2wiqnu9p7Gj93GE5akta1A0zqyApRwHct5RSs=";
};
nativeBuildInputs = [
@ -29,7 +31,7 @@ stdenv.mkDerivation rec {
];
meta = with lib; {
homepage = "http://www.markwitmer.com/guile-xcb/guile-xcb.html";
homepage = "https://github.com/mwitmer/guile-xcb";
description = "XCB bindings for Guile";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];

View file

@ -61,8 +61,8 @@ in stdenv.mkDerivation rec {
meta = with lib; {
description = "OS abstraction functions used by aqbanking and related tools";
homepage = "http://www2.aquamaniac.de/sites/download/packages.php?package=01&showall=1";
license = licenses.lgpl21;
homepage = "https://www.aquamaniac.de/rdm/projects/gwenhywfar";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ goibhniu ];
platforms = platforms.linux;
};

View file

@ -0,0 +1,24 @@
From abdfbb94df98fe88be4dd92ca587500126558411 Mon Sep 17 00:00:00 2001
From: Victor Gaydov <victor@enise.org>
Date: Sun, 26 Jul 2020 11:54:52 +0300
Subject: [PATCH] Remove deprecated scons call
---
SConstruct | 1 -
1 file changed, 1 deletion(-)
diff --git a/SConstruct b/SConstruct
index 407025d8..04afa91f 100644
--- a/SConstruct
+++ b/SConstruct
@@ -49,7 +49,6 @@ env = Environment(ENV=os.environ, tools=[
# performance tuning
env.Decider('MD5-timestamp')
env.SetOption('implicit_cache', 1)
-env.SourceCode('.', None)
# provide absolute path to force single sconsign file
# per-directory sconsign files seems to be buggy with generated sources
--
2.34.1

View file

@ -0,0 +1,31 @@
From 15b37bb12a362c7889ac431eca4a47d6b2bdb97c Mon Sep 17 00:00:00 2001
From: Victor Gaydov <victor@enise.org>
Date: Sat, 5 Dec 2020 18:38:36 +0300
Subject: [PATCH] Fix compatibility with new SCons
---
site_scons/site_tools/roc/config.py | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/site_scons/site_tools/roc/config.py b/site_scons/site_tools/roc/config.py
index b42b3adb..03b76be7 100644
--- a/site_scons/site_tools/roc/config.py
+++ b/site_scons/site_tools/roc/config.py
@@ -13,7 +13,13 @@ def _run_prog(context, src, suffix):
# RunProg may incorrectly use cached results from a previous run saved for
# different file contents but the same invocation number. To prevent this, we
# monkey patch its global counter with a hashsum of the file contents.
- SCons.SConf._ac_build_counter = int(hashlib.md5(src.encode()).hexdigest(), 16)
+ # The workaround is needed only for older versions of SCons, where
+ # _ac_build_counter was an integer.
+ try:
+ if type(SCons.SConf._ac_build_counter) is int:
+ SCons.SConf._ac_build_counter = int(hashlib.md5(src.encode()).hexdigest(), 16)
+ except:
+ pass
return context.RunProg(src, suffix)
def CheckLibWithHeaderExt(context, libs, headers, language, expr='1', run=True):
--
2.34.1

View file

@ -1,7 +1,7 @@
{ stdenv,
lib,
fetchFromGitHub,
sconsPackages,
scons,
ragel,
gengetopt,
pkg-config,
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [
sconsPackages.scons_3_0_1
scons
ragel
gengetopt
pkg-config
@ -44,6 +44,7 @@ stdenv.mkDerivation rec {
"--host=${stdenv.hostPlatform.config}"
"--prefix=${placeholder "out"}"
"--disable-sox"
"--disable-doc"
"--disable-tests" ] ++
lib.optional (!libunwindSupport) "--disable-libunwind" ++
lib.optional (!pulseaudioSupport) "--disable-pulseaudio" ++
@ -55,6 +56,12 @@ stdenv.mkDerivation rec {
prePatch = lib.optionalString stdenv.isAarch64
"sed -i 's/c++98/c++11/g' SConstruct";
# TODO: Remove these patches in the next version.
patches = [
./0001-Remove-deprecated-scons-call.patch
./0002-Fix-compatibility-with-new-SCons.patch
];
meta = with lib; {
description = "Roc is a toolkit for real-time audio streaming over the network";
homepage = "https://github.com/roc-streaming/roc-toolkit";

View file

@ -15,43 +15,31 @@
}:
stdenv.mkDerivation rec {
version = "4.0.0";
pname = "rtmidi";
version = "5.0.0";
src = fetchFromGitHub {
owner = "thestk";
repo = "rtmidi";
rev = version;
sha256 = "1g31p6a96djlbk9jh5r4pjly3x76lhccva9hrw6xzdma8dsjzgyq";
sha256 = "1r1sqmdi499zfh6z6kjkab6d4a7kz3il5kkcdfz9saa6ry992211";
};
patches = [
# PR #230, fix CMake problems
# Remove when https://github.com/thestk/rtmidi/pull/278 merged
(fetchpatch {
name = "RtMidi-Fix-JACK_HAS_PORT_RENAME-define.patch";
url = "https://github.com/thestk/rtmidi/pull/230/commits/768a30a61b60240b66cc2d43bc27a544ff9f1622.patch";
sha256 = "1sym4f7nb2qyyxfhi1l0xsm2hfh6gddn81y36qvfq4mcs33vvid0";
name = "0001-rtmidi-Use-posix-sched_yield-instead-of-pthread_yield.patch";
url = "https://github.com/thestk/rtmidi/pull/278/commits/cfe34c02112c256235b62b45895fc2c401fd874d.patch";
sha256 = "0yzq7zbdkl5r4i0r6vy2kq986cqdxz2cpzb7s977mvh09kdikrw1";
})
# Remove when https://github.com/thestk/rtmidi/pull/277 merged
(fetchpatch {
name = "RtMidi-Add-prefix-define-for-pkgconfig.patch";
url = "https://github.com/thestk/rtmidi/pull/230/commits/7a32e23e3f6cb43c0d2d58443ce205d438e76f44.patch";
sha256 = "06im8mb05wah6bnkadw2gpkhmilxb8p84pxqr50b205cchpq304w";
name = "0002-rtmidi-include-TargetConditionals.h-on-Apple-platforms.patch";
url = "https://github.com/thestk/rtmidi/pull/277/commits/9d863beb28f03ec53f3e4c22cc0d3c34a1e1789b.patch";
sha256 = "1hlrg23c1ycnwdvxpic8wvypiril04rlph0g820qn1naf92imfjg";
})
(fetchpatch {
name = "RtMidi-Adjust-public-header-installs-to-match-autotools.patch";
url = "https://github.com/thestk/rtmidi/pull/230/commits/892fe5492f0e787484fa4a37027b08c265ce001f.patch";
sha256 = "0ca9m42xa3gmycimzvzvl67wa266xq9pfp1b4v555rh2fp52kbcj";
})
# https://github.com/thestk/rtmidi/pull/277
./macos_include_targetconditionals.patch
];
postPatch = ''
substituteInPlace rtmidi.pc.in \
--replace 'Requires:' 'Requires.private:'
'';
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = lib.optional alsaSupport alsa-lib

View file

@ -21,7 +21,7 @@ stdenv.mkDerivation {
meta = with lib; {
description = "Ultra-low delay audio codec";
homepage = "http://www.celt-codec.org/";
homepage = "https://gitlab.xiph.org/xiph/celt"; # http://www.celt-codec.org/ is gone
license = licenses.bsd2;
maintainers = with maintainers; [ codyopel raskin ];
platforms = platforms.unix;

View file

@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
pname = "easyloggingpp";
version = "9.97.0";
src = fetchFromGitHub {
owner = "muflihun";
owner = "amrayn";
repo = "easyloggingpp";
rev = "v${version}";
sha256 = "sha256-sFWmZMnucMuvpwDzuowni21KiD3bx0lH1Ts+yhusOYs=";
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
'';
meta = {
description = "C++ logging library";
homepage = "https://muflihun.github.io/easyloggingpp/";
homepage = "https://github.com/amrayn/easyloggingpp";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [acowley];
platforms = lib.platforms.all;

View file

@ -20,14 +20,14 @@ in
stdenv.mkDerivation rec {
pname = "fcft";
version = "2.5.1";
version = "3.0.1";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "dnkl";
repo = "fcft";
rev = version;
sha256 = "0dn0ic2ddi5qz6nqscsn7nlih67ad8vpclppbqwas6xavdfq6va2";
sha256 = "0jxy92ny8b7s7yvz1mr8zpf7l2zsn506fi9f98pvh9k25jprg0cx";
};
depsBuildBuild = [ pkg-config ];

View file

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A language independent, scalable, open extension to CG";
homepage = "http://www.fastcgi.com/";
homepage = "https://fastcgi-archives.github.io/"; # Formerly http://www.fastcgi.com/
license = "FastCGI see LICENSE.TERMS";
platforms = platforms.all;
};

View file

@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
buildInputs = lib.optionals enablePython [ python3 ];
meta = {
homepage = "http://people.cs.ubc.ca/~mariusm/flann/";
homepage = "https://github.com/flann-lib/flann";
license = lib.licenses.bsd3;
description = "Fast approximate nearest neighbor searches in high dimensional spaces";
maintainers = with lib.maintainers; [viric];

View file

@ -12,9 +12,12 @@ stdenv.mkDerivation rec {
buildInputs = [ libiconv ];
meta = with lib; {
homepage = "https://www.nic.ad.jp/ja/idn/idnkit";
homepage = "https://jprs.co.jp/idn/index-e.html";
description = "Provides functionalities about i18n domain name processing";
license = "idnkit-2 license";
license = {
fullName = "Open Source Code License version 1.1";
url = "https://jprs.co.jp/idn/idnkit2-OSCL.txt";
};
platforms = platforms.linux;
};
}

View file

@ -1,18 +1,18 @@
{ lib, stdenv, fetchurl, texinfo }:
{ lib, stdenv, fetchurl, texinfo, lzip }:
stdenv.mkDerivation rec {
pname = "lzlib";
version = "1.12";
version = "1.13";
outputs = [ "out" "info" ];
nativeBuildInputs = [ texinfo ];
nativeBuildInputs = [ texinfo lzip ];
src = fetchurl {
url = "mirror://savannah/lzip/${pname}/${pname}-${version}.tar.gz";
sha256 = "sha256-jl2EJC61LPHcyY5YvZuo7xrvpQFDGr3QJzoiv0zjN7E=";
url = "mirror://savannah/lzip/${pname}/${pname}-${version}.tar.lz";
sha256 = "sha256-3ea9WzJTXxeyjJrCS2ZgfgJQUGrBQypBEso8c/XWYsM=";
};
makeFlags = [ "AR:=$(AR)" "CC:=$(CC)" ];
makeFlags = [ "CC:=$(CC)" ];
doCheck = true;
meta = with lib; {

View file

@ -1,6 +1,6 @@
{ lib, stdenv, fetchFromGitHub
, autoreconfHook, pkg-config
, cunit, file
, cunit, file, ncurses
}:
stdenv.mkDerivation rec {
@ -14,7 +14,8 @@ stdenv.mkDerivation rec {
sha256 = "sha256-pV1xdQa5RBz17jDINC2uN1Q+jpa2edDwqTqf8D5VU3E=";
};
nativeBuildInputs = [ autoreconfHook pkg-config cunit file ];
nativeBuildInputs = [ autoreconfHook pkg-config file ];
checkInputs = [ cunit ncurses ];
preConfigure = ''
substituteInPlace ./configure --replace /usr/bin/file ${file}/bin/file
@ -23,12 +24,13 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
doCheck = true;
enableParallelBuilding = true;
meta = with lib; {
homepage = "https://github.com/ngtcp2/nghttp3";
description = "nghttp3 is an implementation of HTTP/3 mapping over QUIC and QPACK in C.";
license = licenses.mit;
platforms = platforms.linux;
platforms = platforms.unix;
maintainers = with maintainers; [ izorkin ];
};
}

View file

@ -1,7 +1,8 @@
{ lib, stdenv, fetchFromGitHub
, autoreconfHook, pkg-config
, cunit, file
, jemalloc, libev, nghttp3, quictls
, cunit, file, ncurses
, libev, nghttp3, quictls
, withJemalloc ? false, jemalloc
}:
stdenv.mkDerivation rec {
@ -15,8 +16,9 @@ stdenv.mkDerivation rec {
sha256 = "sha256-uBmD26EYT8zxmHD5FuHCbEuTdWxer/3uhRp8PhUT87M=";
};
nativeBuildInputs = [ autoreconfHook pkg-config cunit file ];
buildInputs = [ jemalloc libev nghttp3 quictls ];
nativeBuildInputs = [ autoreconfHook pkg-config file ];
buildInputs = [ libev nghttp3 quictls ] ++ lib.optional withJemalloc jemalloc;
checkInputs = [ cunit ncurses ];
preConfigure = ''
substituteInPlace ./configure --replace /usr/bin/file ${file}/bin/file
@ -25,12 +27,13 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
doCheck = true;
enableParallelBuilding = true;
meta = with lib; {
homepage = "https://github.com/ngtcp2/ngtcp2";
description = "ngtcp2 project is an effort to implement QUIC protocol which is now being discussed in IETF QUICWG for its standardization.";
license = licenses.mit;
platforms = platforms.linux;
platforms = platforms.unix;
maintainers = with maintainers; [ izorkin ];
};
}

View file

@ -1,4 +1,5 @@
{ stdenv, lib, fetchurl, buildDunePackage, ocaml, dune-configurator, pkg-config, cairo }:
{ stdenv, lib, fetchurl, buildDunePackage, ocaml, dune-configurator, pkg-config, cairo
, ApplicationServices }:
buildDunePackage rec {
pname = "cairo2";
@ -13,7 +14,7 @@ buildDunePackage rec {
useDune2 = true;
nativeBuildInputs = [ pkg-config ];
buildInputs = [ cairo dune-configurator ];
buildInputs = [ cairo dune-configurator ] ++ lib.optionals stdenv.isDarwin [ ApplicationServices ];
doCheck = !(stdenv.isDarwin
# https://github.com/Chris00/ocaml-cairo/issues/19

View file

@ -13,7 +13,7 @@ stdenv.mkDerivation {
owner = "johnwhitington";
repo = "cpdf-source";
rev = "v${version}";
sha256 = "sha256:0ps6d78i5mp1gcigxfp9rxmjr1k00nkr37vllhr0rdyph97w41s1";
sha256 = "sha256:1qmx229nij7g6qmiacmyy4mcgx3k9509p4slahivshqm79d6wiwl";
};
buildInputs = [ ocaml findlib ncurses ];

View file

@ -37,7 +37,7 @@ buildDunePackage rec {
ocaml_pcre xml-light
];
configureFlags = [ "--root $(out)" "--prefix /" ];
configureFlags = [ "--root $(out)" "--prefix /" "--temproot ''" ];
dontAddPrefix = true;
dontAddStaticConfigureFlags = true;
@ -47,6 +47,10 @@ buildDunePackage rec {
make -C src confs
'';
postInstall = ''
make install.files
'';
postFixup =
''
rm -rf $out/var/run

View file

@ -3,37 +3,48 @@
, aiofiles
, buildPythonPackage
, fetchFromGitHub
, isPy3k
, mock
, pure-python-adb
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "androidtv";
version = "0.0.60";
version = "0.0.63";
format = "setuptools";
disabled = pythonOlder "3.7";
# pypi does not contain tests, using github sources instead
src = fetchFromGitHub {
owner = "JeffLIrion";
repo = "python-androidtv";
rev = "v${version}";
sha256 = "sha256-GWCiRxZ6pHrcVkOKNGxSK8lUD0RohtED8czXIWUoVaM=";
hash = "sha256-Peg/agAb1lUBUBK1OkYVovE4pzM8iaQHVaSk/hr1plw=";
};
propagatedBuildInputs = [ adb-shell pure-python-adb ]
++ lib.optionals (isPy3k) [ aiofiles ];
propagatedBuildInputs = [
adb-shell
aiofiles
pure-python-adb
];
checkInputs = [
mock
pytestCheckHook
];
pythonImportsCheck = [ "androidtv" ];
disabledTests = [
# Requires git but fails anyway
"test_no_underscores"
];
pythonImportsCheck = [
"androidtv"
];
meta = with lib; {
description =
"Communicate with an Android TV or Fire TV device via ADB over a network";
description = "Communicate with an Android TV or Fire TV device via ADB over a network";
homepage = "https://github.com/JeffLIrion/python-androidtv/";
license = licenses.mit;
maintainers = with maintainers; [ jamiemagee ];

View file

@ -1,39 +1,75 @@
{ lib, buildPythonPackage, fetchPypi, installShellFiles
, Babel, requests, requests_oauthlib, six, click, markdown, pyyaml, cryptography
, pytest-runner, coverage, flake8, mock, pytestCheckHook, pytest-cov, tox, gntp, sleekxmpp
{ lib
, Babel
, buildPythonPackage
, click
, cryptography
, fetchPypi
, gntp
, installShellFiles
, markdown
, mock
, paho-mqtt
, pytestCheckHook
, pythonOlder
, pyyaml
, requests
, requests_oauthlib
, six
, slixmpp
}:
buildPythonPackage rec {
pname = "apprise";
version = "0.9.7";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-BOMeSvwmGiZvA95+e2bceCGXRwowU5+zJAl7Sn4wKqM=";
hash = "sha256-BOMeSvwmGiZvA95+e2bceCGXRwowU5+zJAl7Sn4wKqM=";
};
nativeBuildInputs = [ Babel installShellFiles ];
nativeBuildInputs = [
Babel
installShellFiles
];
propagatedBuildInputs = [
cryptography requests requests_oauthlib six click markdown pyyaml
click
cryptography
markdown
pyyaml
requests
requests_oauthlib
six
];
checkInputs = [
pytest-runner coverage flake8 mock pytestCheckHook pytest-cov tox gntp sleekxmpp
gntp
mock
paho-mqtt
pytestCheckHook
slixmpp
];
disabledTests = [ "test_apprise_cli_nux_env" ];
disabledTests = [
"test_apprise_cli_nux_env"
"test_plugin_mqtt_general"
];
postInstall = ''
installManPage packaging/man/apprise.1
'';
pythonImportsCheck = [ "apprise" ];
pythonImportsCheck = [
"apprise"
];
meta = with lib; {
description = "Push Notifications that work with just about every platform";
homepage = "https://github.com/caronc/apprise";
description = "Push Notifications that work with just about every platform!";
license = licenses.mit;
maintainers = [ maintainers.marsam ];
maintainers = with maintainers; [ marsam ];
};
}

View file

@ -1,14 +1,21 @@
{ lib, isPy3k, fetchPypi, buildPythonPackage
, uvloop, postgresql }:
{ lib
, fetchPypi
, buildPythonPackage
, uvloop
, postgresql
, pythonOlder
}:
buildPythonPackage rec {
pname = "asyncpg";
version = "0.25.0";
disabled = !isPy3k;
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "63f8e6a69733b285497c2855464a34de657f2cccd25aeaeeb5071872e9382540";
hash = "sha256-Y/jmppczsoVJfChVRko03mV/LMzSWurutQcYcuk4JUA=";
};
checkInputs = [
@ -16,15 +23,17 @@ buildPythonPackage rec {
postgresql
];
pythonImportsCheck = [ "asyncpg" ];
pythonImportsCheck = [
"asyncpg"
];
meta = with lib; {
description = "Asyncio PosgtreSQL driver";
homepage = "https://github.com/MagicStack/asyncpg";
description = "An asyncio PosgtreSQL driver";
longDescription = ''
Asyncpg is a database interface library designed specifically for
PostgreSQL and Python/asyncio. asyncpg is an efficient, clean
implementation of PostgreSQL server binary protocol for use with Pythons
implementation of PostgreSQL server binary protocol for use with Python's
asyncio framework.
'';
license = licenses.asl20;

View file

@ -1,31 +1,32 @@
{ lib
, buildPythonPackage
, fetchPypi
, pythonOlder
, cryptography
, bcrypt
, gssapi
, buildPythonPackage
, cryptography
, fetchPypi
, fido2
, gssapi
, libnacl
, libsodium
, nettle
, python-pkcs11
, pyopenssl
, openssl
, openssh
, openssl
, pyopenssl
, pytestCheckHook
, python-pkcs11
, pythonOlder
, typing-extensions
}:
buildPythonPackage rec {
pname = "asyncssh";
version = "2.8.1";
version = "2.9.0";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "0648eba58d72653755f28e26c9bd83147d9652c1f2f5e87fbf5a87d7f8fbf83a";
sha256 = "sha256-PMM32AZhlGVFW/GH6KkeP1dUI3GBhOI4+a6MQcTzOvE=";
};
propagatedBuildInputs = [
@ -36,8 +37,9 @@ buildPythonPackage rec {
libnacl
libsodium
nettle
python-pkcs11
pyopenssl
python-pkcs11
typing-extensions
];
checkInputs = [
@ -66,6 +68,8 @@ buildPythonPackage rec {
"TestSKAuthCTAP2"
# Requires network access
"test_connect_timeout_exceeded"
# Fails in the sandbox
"test_forward_remote"
];
pythonImportsCheck = [

View file

@ -7,14 +7,14 @@
buildPythonPackage rec {
pname = "asysocks";
version = "0.1.6";
version = "0.1.7";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-uXrJBc1Moeeo58KV+csiztXf0/F+iI5xy/BaHWek05M=";
sha256 = "sha256-I9X8+ucadYJsPteHvZsbw7GJ7DdliWG86DyemUVeNUw=";
};
propagatedBuildInputs = [

View file

@ -5,18 +5,21 @@
, oauthlib
, python-dateutil
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "discogs-client";
version = "2.3.12";
version = "2.3.13";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "joalla";
repo = "discogs_client";
rev = "v${version}";
sha256 = "0y553x8rkgmqqg980n62pwdxbp75xalkhlb6k5g0cms42ggy5fsc";
sha256 = "sha256-TOja0pCJv8TAI0ns8M/tamZ5Pp8k5sSKDnvN4SeKtW8=";
};
propagatedBuildInputs = [
@ -29,7 +32,9 @@ buildPythonPackage rec {
pytestCheckHook
];
pythonImportsCheck = [ "discogs_client" ];
pythonImportsCheck = [
"discogs_client"
];
meta = with lib; {
description = "Unofficial Python API client for Discogs";

View file

@ -5,12 +5,12 @@
}:
buildPythonPackage rec {
version = "1.0.4";
version = "1.0.5";
pname = "dj-email-url";
src = fetchPypi {
inherit pname version;
sha256 = "7ee35df51065d17ac7b55e98ad8eda3a1f6c5d65fc89cdc5de7a96e534942553";
sha256 = "sha256-7zb4oyTsV8875cen70TtaQDKAghiSpGKszrcHPZCezk=";
};
checkPhase = ''

View file

@ -13,13 +13,13 @@
buildPythonPackage rec {
pname = "flax";
version = "0.3.6";
version = "0.4.0";
src = fetchFromGitHub {
owner = "google";
repo = pname;
rev = "v${version}";
sha256 = "0zvq0vl88hiwmss49bnm7gdmndr1dfza2bcs1fj88a9r7w9dmlsr";
sha256 = "0rvdaxyf68qmm5d77gbizpcibyz2ic2pb2x7rgf7p8qwijyc39ws";
};
buildInputs = [ jaxlib ];

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