Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2022-10-04 00:21:27 +00:00 committed by GitHub
commit ed251f3eb4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
173 changed files with 3443 additions and 920 deletions

View file

@ -174,6 +174,11 @@ in mkLicense lset) ({
free = false;
};
cal10 = {
fullName = "Cryptographic Autonomy License version 1.0 (CAL-1.0)";
url = "https://opensource.org/licenses/CAL-1.0";
};
capec = {
fullName = "Common Attack Pattern Enumeration and Classification";
url = "https://capec.mitre.org/about/termsofuse.html";

View file

@ -4833,6 +4833,15 @@
fingerprint = "386E D1BF 848A BB4A 6B4A 3C45 FC83 907C 125B C2BC";
}];
};
georgesalkhouri = {
name = "Georges Alkhouri";
email = "incense.stitch_0w@icloud.com";
github = "GeorgesAlkhouri";
githubId = 6077574;
keys = [{
fingerprint = "1608 9E8D 7C59 54F2 6A7A 7BD0 8BD2 09DC C54F D339";
}];
};
georgewhewell = {
email = "georgerw@gmail.com";
github = "georgewhewell";
@ -9534,6 +9543,12 @@
github = "nessdoor";
githubId = 25993494;
};
net-mist = {
email = "archimist.linux@gmail.com";
github = "Net-Mist";
githubId = 13920346;
name = "Sébastien Iooss";
};
netali = {
name = "Jennifer Graul";
email = "me@netali.de";
@ -15396,6 +15411,12 @@
github = "jali-clarke";
githubId = 17733984;
};
wesleyjrz = {
email = "wesleyjr2002@gmail.com";
name = "Wesley V. Santos Jr.";
github = "wesleyjrz";
githubId = 60184588;
};
npatsakula = {
email = "nikita.patsakula@gmail.com";
name = "Patsakula Nikita";

View file

@ -15,6 +15,8 @@
- `scope` describes the scope of the group.
- `shortName` short human-readable name
- `enableFeatureFreezePing` will ping this team during the Feature Freeze announcements on releases
- There is limited mention capacity in a single post, so this should be reserved for critical components
or larger ecosystems within nixpkgs.
- `githubTeams` will ping specified GitHub teams as well
More fields may be added in the future.
@ -38,6 +40,7 @@ with lib.maintainers; {
];
scope = "Maintain ACME-related packages and modules.";
shortName = "ACME";
enableFeatureFreezePing = true;
};
bazel = {
@ -90,7 +93,6 @@ with lib.maintainers; {
];
scope = "Maintain Blockchain packages and modules.";
shortName = "Blockchains";
enableFeatureFreezePing = true;
};
c = {
@ -111,7 +113,6 @@ with lib.maintainers; {
];
scope = "Maintain packages used in the C3D2 hackspace";
shortName = "c3d2";
enableFeatureFreezePing = true;
};
cinnamon = {
@ -202,7 +203,6 @@ with lib.maintainers; {
];
scope = "Maintain Docker and related tools.";
shortName = "DockerTools";
enableFeatureFreezePing = true;
};
docs = {
@ -220,7 +220,6 @@ with lib.maintainers; {
];
scope = "Maintain the Emacs editor and packages.";
shortName = "Emacs";
enableFeatureFreezePing = true;
};
enlightenment = {
@ -426,6 +425,7 @@ with lib.maintainers; {
];
scope = "Maintain Mate desktop environment and related packages.";
shortName = "MATE";
enableFeatureFreezePing = true;
};
matrix = {
@ -448,7 +448,6 @@ with lib.maintainers; {
];
scope = "Maintain Mobile NixOS.";
shortName = "Mobile";
enableFeatureFreezePing = true;
};
nix = {
@ -483,7 +482,6 @@ with lib.maintainers; {
tazjin
zimbatm
];
enableFeatureFreezePing = true;
scope = "Group registration for Numtide team members who collectively maintain packages.";
shortName = "Numtide team";
};
@ -548,7 +546,6 @@ with lib.maintainers; {
];
scope = "Maintain Podman and CRI-O related packages and modules.";
shortName = "Podman";
enableFeatureFreezePing = true;
};
postgres = {
@ -557,7 +554,6 @@ with lib.maintainers; {
];
scope = "Maintain the PostgreSQL package and plugins along with the NixOS module.";
shortName = "PostgreSQL";
enableFeatureFreezePing = true;
};
python = {
@ -610,7 +606,6 @@ with lib.maintainers; {
];
scope = "Manage the current nixpkgs/NixOS release.";
shortName = "Release";
enableFeatureFreezePing = true;
};
ruby = {
@ -699,7 +694,6 @@ with lib.maintainers; {
];
scope = "Maintain the vim and neovim text editors and related packages.";
shortName = "Vim/Neovim";
enableFeatureFreezePing = true;
};
xfce = {
@ -708,5 +702,6 @@ with lib.maintainers; {
];
scope = "Maintain Xfce desktop environment and related packages.";
shortName = "Xfce";
enableFeatureFreezePing = true;
};
}

View file

@ -194,6 +194,13 @@
<link linkend="opt-services.komga.enable">services.komga</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://tandoor.dev">Tandoor Recipes</link>,
a self-hosted multi-tenant recipe collection. Available as
<link xlink:href="options.html#opt-services.tandoor-recipes.enable">services.tandoor-recipes</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://hbase.apache.org/">HBase

View file

@ -72,6 +72,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [Komga](https://komga.org/), a free and open source comics/mangas media server. Available as [services.komga](#opt-services.komga.enable).
- [Tandoor Recipes](https://tandoor.dev), a self-hosted multi-tenant recipe collection. Available as [services.tandoor-recipes](options.html#opt-services.tandoor-recipes.enable).
- [HBase cluster](https://hbase.apache.org/), a distributed, scalable, big data store. Available as [services.hadoop.hbase](options.html#opt-services.hadoop.hbase.enable).
- [Sachet](https://github.com/messagebird/sachet/), an SMS alerting tool for the Prometheus Alertmanager. Available as [services.prometheus.sachet](#opt-services.prometheus.sachet.enable).

View file

@ -653,6 +653,7 @@
./services/misc/svnserve.nix
./services/misc/synergy.nix
./services/misc/sysprof.nix
./services/misc/tandoor-recipes.nix
./services/misc/taskserver
./services/misc/tiddlywiki.nix
./services/misc/tp-auto-kbbl.nix
@ -721,7 +722,7 @@
./services/network-filesystems/drbd.nix
./services/network-filesystems/glusterfs.nix
./services/network-filesystems/kbfs.nix
./services/network-filesystems/ipfs.nix
./services/network-filesystems/kubo.nix
./services/network-filesystems/litestream/default.nix
./services/network-filesystems/netatalk.nix
./services/network-filesystems/nfsd.nix

View file

@ -0,0 +1,144 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.tandoor-recipes;
pkg = cfg.package;
# SECRET_KEY through an env file
env = {
GUNICORN_CMD_ARGS = "--bind=${cfg.address}:${toString cfg.port}";
DEBUG = "0";
MEDIA_ROOT = "/var/lib/tandoor-recipes";
} // optionalAttrs (config.time.timeZone != null) {
TIMEZONE = config.time.timeZone;
} // (
lib.mapAttrs (_: toString) cfg.extraConfig
);
manage =
let
setupEnv = lib.concatStringsSep "\n" (mapAttrsToList (name: val: "export ${name}=\"${val}\"") env);
in
pkgs.writeShellScript "manage" ''
${setupEnv}
exec ${pkg}/bin/tandoor-recipes "$@"
'';
in
{
meta.maintainers = with maintainers; [ ambroisie ];
options.services.tandoor-recipes = {
enable = mkOption {
type = lib.types.bool;
default = false;
description = lib.mdDoc ''
Enable Tandoor Recipes.
When started, the Tandoor Recipes database is automatically created if
it doesn't exist and updated if the package has changed. Both tasks are
achieved by running a Django migration.
A script to manage the instance (by wrapping Django's manage.py) is linked to
`/var/lib/tandoor-recipes/tandoor-recipes-manage`.
'';
};
address = mkOption {
type = types.str;
default = "localhost";
description = lib.mdDoc "Web interface address.";
};
port = mkOption {
type = types.port;
default = 8080;
description = lib.mdDoc "Web interface port.";
};
extraConfig = mkOption {
type = types.attrs;
default = { };
description = lib.mdDoc ''
Extra tandoor recipes config options.
See [the example dot-env file](https://raw.githubusercontent.com/vabene1111/recipes/master/.env.template)
for available options.
'';
example = {
ENABLE_SIGNUP = "1";
};
};
package = mkOption {
type = types.package;
default = pkgs.tandoor-recipes;
defaultText = literalExpression "pkgs.tandoor-recipes";
description = lib.mdDoc "The Tandoor Recipes package to use.";
};
};
config = mkIf cfg.enable {
systemd.services.tandoor-recipes = {
description = "Tandoor Recipes server";
serviceConfig = {
ExecStart = ''
${pkg.python.pkgs.gunicorn}/bin/gunicorn recipes.wsgi
'';
Restart = "on-failure";
User = "tandoor_recipes";
DynamicUser = true;
StateDirectory = "tandoor-recipes";
WorkingDirectory = "/var/lib/tandoor-recipes";
RuntimeDirectory = "tandoor-recipes";
BindReadOnlyPaths = [
"${config.environment.etc."ssl/certs/ca-certificates.crt".source}:/etc/ssl/certs/ca-certificates.crt"
builtins.storeDir
"-/etc/resolv.conf"
"-/etc/nsswitch.conf"
"-/etc/hosts"
"-/etc/localtime"
"-/run/postgresql"
];
CapabilityBoundingSet = "";
LockPersonality = true;
MemoryDenyWriteExecute = true;
PrivateDevices = true;
PrivateUsers = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
RestrictNamespaces = true;
RestrictRealtime = true;
SystemCallArchitectures = "native";
# gunicorn needs setuid
SystemCallFilter = [ "@system-service" "~@privileged" "@resources" "@setuid" "@keyring" ];
UMask = "0066";
} // lib.optionalAttrs (cfg.port < 1024) {
AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ];
CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" ];
};
wantedBy = [ "multi-user.target" ];
preStart = ''
ln -sf ${manage} tandoor-recipes-manage
# Let django migrate the DB as needed
${pkg}/bin/tandoor-recipes migrate
'';
environment = env // {
PYTHONPATH = "${pkg.python.pkgs.makePythonPath pkg.propagatedBuildInputs}:${pkg}/lib/tandoor-recipes";
};
};
};
}

View file

@ -1,9 +1,9 @@
{ config, lib, pkgs, utils, ... }:
with lib;
let
cfg = config.services.ipfs;
cfg = config.services.kubo;
ipfsFlags = utils.escapeSystemdExecArgs (
kuboFlags = utils.escapeSystemdExecArgs (
optional cfg.autoMount "--mount" ++
optional cfg.enableGC "--enable-gc" ++
optional (cfg.serviceFdlimit != null) "--manage-fdlimit=false" ++
@ -50,27 +50,27 @@ in
options = {
services.ipfs = {
services.kubo = {
enable = mkEnableOption (lib.mdDoc "Interplanetary File System (WARNING: may cause severe network degredation)");
package = mkOption {
type = types.package;
default = pkgs.ipfs;
defaultText = literalExpression "pkgs.ipfs";
description = lib.mdDoc "Which IPFS package to use.";
default = pkgs.kubo;
defaultText = literalExpression "pkgs.kubo";
description = lib.mdDoc "Which Kubo package to use.";
};
user = mkOption {
type = types.str;
default = "ipfs";
description = lib.mdDoc "User under which the IPFS daemon runs";
description = lib.mdDoc "User under which the Kubo daemon runs";
};
group = mkOption {
type = types.str;
default = "ipfs";
description = lib.mdDoc "Group under which the IPFS daemon runs";
description = lib.mdDoc "Group under which the Kubo daemon runs";
};
dataDir = mkOption {
@ -84,7 +84,7 @@ in
then "/var/lib/ipfs"
else "/var/lib/ipfs/.ipfs"
'';
description = lib.mdDoc "The data dir for IPFS";
description = lib.mdDoc "The data dir for Kubo";
};
defaultMode = mkOption {
@ -96,13 +96,13 @@ in
autoMount = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc "Whether IPFS should try to mount /ipfs and /ipns at startup.";
description = lib.mdDoc "Whether Kubo should try to mount /ipfs and /ipns at startup.";
};
autoMigrate = mkOption {
type = types.bool;
default = true;
description = lib.mdDoc "Whether IPFS should try to run the fs-repo-migration at startup.";
description = lib.mdDoc "Whether Kubo should try to run the fs-repo-migration at startup.";
};
ipfsMountDir = mkOption {
@ -126,7 +126,7 @@ in
apiAddress = mkOption {
type = types.str;
default = "/ip4/127.0.0.1/tcp/5001";
description = lib.mdDoc "Where IPFS exposes its API to";
description = lib.mdDoc "Where Kubo exposes its API to";
};
swarmAddress = mkOption {
@ -137,7 +137,7 @@ in
"/ip4/0.0.0.0/udp/4001/quic"
"/ip6/::/udp/4001/quic"
];
description = lib.mdDoc "Where IPFS listens for incoming p2p connections";
description = lib.mdDoc "Where Kubo listens for incoming p2p connections";
};
enableGC = mkOption {
@ -174,14 +174,14 @@ in
extraFlags = mkOption {
type = types.listOf types.str;
description = lib.mdDoc "Extra flags passed to the IPFS daemon";
description = lib.mdDoc "Extra flags passed to the Kubo daemon";
default = [ ];
};
localDiscovery = mkOption {
type = types.bool;
description = lib.mdDoc ''Whether to enable local discovery for the ipfs daemon.
This will allow ipfs to scan ports on your local network. Some hosting services will ban you if you do this.
description = lib.mdDoc ''Whether to enable local discovery for the Kubo daemon.
This will allow Kubo to scan ports on your local network. Some hosting services will ban you if you do this.
'';
default = false;
};
@ -189,14 +189,14 @@ in
serviceFdlimit = mkOption {
type = types.nullOr types.int;
default = null;
description = lib.mdDoc "The fdlimit for the IPFS systemd unit or `null` to have the daemon attempt to manage it";
description = lib.mdDoc "The fdlimit for the Kubo systemd unit or `null` to have the daemon attempt to manage it";
example = 64 * 1024;
};
startWhenNeeded = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc "Whether to use socket activation to start IPFS when needed.";
description = lib.mdDoc "Whether to use socket activation to start Kubo when needed.";
};
};
@ -223,7 +223,7 @@ in
uid = config.ids.uids.ipfs;
description = "IPFS daemon user";
packages = [
pkgs.ipfs-migrator
pkgs.kubo-migrator
];
};
};
@ -255,7 +255,7 @@ in
# After an unclean shutdown this file may exist which will cause the config command to attempt to talk to the daemon. This will hang forever if systemd is holding our sockets open.
rm -vf "$IPFS_PATH/api"
'' + optionalString cfg.autoMigrate ''
${pkgs.ipfs-migrator}/bin/fs-repo-migrations -to '${cfg.package.repoVersion}' -y
${pkgs.kubo-migrator}/bin/fs-repo-migrations -to '${cfg.package.repoVersion}' -y
'' + ''
ipfs --offline config profile apply ${profile} >/dev/null
fi
@ -279,7 +279,7 @@ in
| ipfs --offline config replace -
'';
serviceConfig = {
ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${ipfsFlags}" ];
ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${kuboFlags}" ];
User = cfg.user;
Group = cfg.group;
StateDirectory = "";
@ -320,4 +320,27 @@ in
meta = {
maintainers = with lib.maintainers; [ Luflosi ];
};
imports = [
(mkRenamedOptionModule [ "services" "ipfs" "enable" ] [ "services" "kubo" "enable" ])
(mkRenamedOptionModule [ "services" "ipfs" "package" ] [ "services" "kubo" "package" ])
(mkRenamedOptionModule [ "services" "ipfs" "user" ] [ "services" "kubo" "user" ])
(mkRenamedOptionModule [ "services" "ipfs" "group" ] [ "services" "kubo" "group" ])
(mkRenamedOptionModule [ "services" "ipfs" "dataDir" ] [ "services" "kubo" "dataDir" ])
(mkRenamedOptionModule [ "services" "ipfs" "defaultMode" ] [ "services" "kubo" "defaultMode" ])
(mkRenamedOptionModule [ "services" "ipfs" "autoMount" ] [ "services" "kubo" "autoMount" ])
(mkRenamedOptionModule [ "services" "ipfs" "autoMigrate" ] [ "services" "kubo" "autoMigrate" ])
(mkRenamedOptionModule [ "services" "ipfs" "ipfsMountDir" ] [ "services" "kubo" "ipfsMountDir" ])
(mkRenamedOptionModule [ "services" "ipfs" "ipnsMountDir" ] [ "services" "kubo" "ipnsMountDir" ])
(mkRenamedOptionModule [ "services" "ipfs" "gatewayAddress" ] [ "services" "kubo" "gatewayAddress" ])
(mkRenamedOptionModule [ "services" "ipfs" "apiAddress" ] [ "services" "kubo" "apiAddress" ])
(mkRenamedOptionModule [ "services" "ipfs" "swarmAddress" ] [ "services" "kubo" "swarmAddress" ])
(mkRenamedOptionModule [ "services" "ipfs" "enableGC" ] [ "services" "kubo" "enableGC" ])
(mkRenamedOptionModule [ "services" "ipfs" "emptyRepo" ] [ "services" "kubo" "emptyRepo" ])
(mkRenamedOptionModule [ "services" "ipfs" "extraConfig" ] [ "services" "kubo" "extraConfig" ])
(mkRenamedOptionModule [ "services" "ipfs" "extraFlags" ] [ "services" "kubo" "extraFlags" ])
(mkRenamedOptionModule [ "services" "ipfs" "localDiscovery" ] [ "services" "kubo" "localDiscovery" ])
(mkRenamedOptionModule [ "services" "ipfs" "serviceFdlimit" ] [ "services" "kubo" "serviceFdlimit" ])
(mkRenamedOptionModule [ "services" "ipfs" "startWhenNeeded" ] [ "services" "kubo" "startWhenNeeded" ])
];
}

View file

@ -22,42 +22,14 @@ let
favorite-apps=[ 'org.gnome.Epiphany.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop' ]
'';
nixos-background-ligtht = pkgs.nixos-artwork.wallpapers.simple-blue;
nixos-background-light = pkgs.nixos-artwork.wallpapers.simple-blue;
nixos-background-dark = pkgs.nixos-artwork.wallpapers.simple-dark-gray;
nixos-gsettings-desktop-schemas = let
defaultPackages = with pkgs; [ gsettings-desktop-schemas gnome.gnome-shell ];
in
pkgs.runCommand "nixos-gsettings-desktop-schemas" { preferLocalBuild = true; }
''
mkdir -p $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
${concatMapStrings
(pkg: "cp -rf ${pkg}/share/gsettings-schemas/*/glib-2.0/schemas/*.xml $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas\n")
(defaultPackages ++ cfg.extraGSettingsOverridePackages)}
cp -f ${pkgs.gnome.gnome-shell}/share/gsettings-schemas/*/glib-2.0/schemas/*.gschema.override $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
${optionalString flashbackEnabled ''
cp -f ${pkgs.gnome.gnome-flashback}/share/gsettings-schemas/*/glib-2.0/schemas/*.gschema.override $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
''}
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
[org.gnome.desktop.background]
picture-uri='file://${nixos-background-ligtht.gnomeFilePath}'
picture-uri-dark='file://${nixos-background-dark.gnomeFilePath}'
[org.gnome.desktop.screensaver]
picture-uri='file://${nixos-background-dark.gnomeFilePath}'
${cfg.favoriteAppsOverride}
${cfg.extraGSettingsOverrides}
EOF
${pkgs.glib.dev}/bin/glib-compile-schemas $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/
'';
# TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
nixos-gsettings-desktop-schemas = pkgs.gnome.nixos-gsettings-overrides.override {
inherit (cfg) extraGSettingsOverrides extraGSettingsOverridePackages favoriteAppsOverride;
inherit flashbackEnabled nixos-background-dark nixos-background-light;
};
nixos-background-info = pkgs.writeTextFile rec {
name = "nixos-background-info";
@ -67,7 +39,7 @@ let
<wallpapers>
<wallpaper deleted="false">
<name>Blobs</name>
<filename>${nixos-background-ligtht.gnomeFilePath}</filename>
<filename>${nixos-background-light.gnomeFilePath}</filename>
<filename-dark>${nixos-background-dark.gnomeFilePath}</filename-dark>
<options>zoom</options>
<shade_type>solid</shade_type>

View file

@ -156,6 +156,14 @@ let cfg = config.services.xserver.libinput;
'';
};
tappingButtonMap = mkOption {
type = types.nullOr (types.enum [ "lrm" "lmr" ]);
default = null;
description = lib.mdDoc ''
Set the button mapping for 1/2/3-finger taps to left/right/middle or left/middle/right, respectively.
'';
};
tappingDragLock = mkOption {
type = types.bool;
default = true;
@ -220,6 +228,7 @@ let cfg = config.services.xserver.libinput;
Option "HorizontalScrolling" "${xorgBool cfg.${deviceType}.horizontalScrolling}"
Option "SendEventsMode" "${cfg.${deviceType}.sendEventsMode}"
Option "Tapping" "${xorgBool cfg.${deviceType}.tapping}"
${optionalString (cfg.${deviceType}.tappingButtonMap != null) ''Option "TappingButtonMap" "${cfg.${deviceType}.tappingButtonMap}"''}
Option "TappingDragLock" "${xorgBool cfg.${deviceType}.tappingDragLock}"
Option "DisableWhileTyping" "${xorgBool cfg.${deviceType}.disableWhileTyping}"
${cfg.${deviceType}.additionalOptions}
@ -241,6 +250,7 @@ in {
"horizontalScrolling"
"sendEventsMode"
"tapping"
"tappingButtonMap"
"tappingDragLock"
"transformationMatrix"
"disableWhileTyping"

View file

@ -325,8 +325,8 @@ in
type = types.lines;
example = "DefaultLimitCORE=infinity";
description = lib.mdDoc ''
Extra config options for systemd. See man systemd-system.conf for
available options.
Extra config options for systemd. See systemd-system.conf(5) man page
for available options.
'';
};

View file

@ -284,7 +284,6 @@ in {
installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix {};
invoiceplane = handleTest ./invoiceplane.nix {};
iodine = handleTest ./iodine.nix {};
ipfs = handleTest ./ipfs.nix {};
ipv6 = handleTest ./ipv6.nix {};
iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix {};
iscsi-root = handleTest ./iscsi-root.nix {};
@ -317,6 +316,7 @@ in {
ksm = handleTest ./ksm.nix {};
kthxbye = handleTest ./kthxbye.nix {};
kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {};
kubo = handleTest ./kubo.nix {};
ladybird = handleTest ./ladybird.nix {};
languagetool = handleTest ./languagetool.nix {};
latestKernel.login = handleTest ./login.nix { latestKernel = true; };
@ -612,6 +612,7 @@ in {
systemd-shutdown = handleTest ./systemd-shutdown.nix {};
systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
systemd-misc = handleTest ./systemd-misc.nix {};
tandoor-recipes = handleTest ./tandoor-recipes.nix {};
taskserver = handleTest ./taskserver.nix {};
teeworlds = handleTest ./teeworlds.nix {};
telegraf = handleTest ./telegraf.nix {};

View file

@ -1,11 +1,11 @@
import ./make-test-python.nix ({ pkgs, ...} : {
name = "ipfs";
name = "kubo";
meta = with pkgs.lib.maintainers; {
maintainers = [ mguentner ];
};
nodes.machine = { ... }: {
services.ipfs = {
services.kubo = {
enable = true;
# Also will add a unix domain socket socket API address, see module.
startWhenNeeded = true;
@ -15,7 +15,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
};
nodes.fuse = { ... }: {
services.ipfs = {
services.kubo = {
enable = true;
apiAddress = "/ip4/127.0.0.1/tcp/2324";
autoMount = true;

View file

@ -0,0 +1,43 @@
import ./make-test-python.nix ({ lib, ... }: {
name = "tandoor-recipes";
meta.maintainers = with lib.maintainers; [ ambroisie ];
nodes.machine = { pkgs, ... }: {
# Setup using Postgres
services.tandoor-recipes = {
enable = true;
extraConfig = {
DB_ENGINE = "django.db.backends.postgresql";
POSTGRES_HOST = "/run/postgresql";
POSTGRES_USER = "tandoor_recipes";
POSTGRES_DB = "tandoor_recipes";
};
};
services.postgresql = {
enable = true;
ensureDatabases = [ "tandoor_recipes" ];
ensureUsers = [
{
name = "tandoor_recipes";
ensurePermissions."DATABASE tandoor_recipes" = "ALL PRIVILEGES";
}
];
};
systemd.services = {
tandoor-recipes = {
after = [ "postgresql.service" ];
};
};
};
testScript = ''
machine.wait_for_unit("tandoor-recipes.service")
with subtest("Web interface gets ready"):
# Wait until server accepts connections
machine.wait_until_succeeds("curl -fs localhost:8080")
'';
})

View file

@ -1,32 +0,0 @@
{ appimageTools, lib, fetchurl }:
let
pname = "apple-music-electron";
version = "1.5.5";
name = "Apple.Music-${version}";
src = fetchurl {
url = "https://github.com/cryptofyre/Apple-Music-Electron/releases/download/v${version}/${name}.AppImage";
sha256 = "1gb6j3nvam9fcpsgiv56jccg9a4y14vzsyw11h3hckaigy90knpx";
};
appimageContents = appimageTools.extract { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
meta = with lib; {
description = "Unofficial Apple Music application without having to bother with a Web Browser or iTunes";
homepage = "https://github.com/iiFir3z/Apple-Music-Electron";
license = licenses.mit;
maintainers = [ maintainers.ivar ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -2,6 +2,7 @@
, libid3tag, liblo, libmad, liboggz, libpulseaudio, libsamplerate
, libsndfile, lrdf, opusfile, portaudio, rubberband, serd, sord, capnproto
, wrapQtAppsHook, pkg-config
, libjack2
}:
stdenv.mkDerivation rec {
@ -17,6 +18,7 @@ stdenv.mkDerivation rec {
[ alsa-lib boost bzip2 fftw fftwFloat libfishsound libid3tag liblo
libmad liboggz libpulseaudio libsamplerate libsndfile lrdf opusfile
portaudio rubberband serd sord capnproto
libjack2
];
nativeBuildInputs = [ pkg-config wrapQtAppsHook ];
@ -34,5 +36,7 @@ stdenv.mkDerivation rec {
license = licenses.gpl2Plus;
maintainers = [ maintainers.vandenoever ];
platforms = platforms.linux;
# undefined reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29'
broken = true; # at 2022-09-30
};
}

View file

@ -3,12 +3,12 @@
, libGLU, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
stdenv.mkDerivation rec {
version = "20220714";
version = "20220923";
pname = "x42-plugins";
src = fetchurl {
url = "https://gareus.org/misc/x42-plugins/${pname}-${version}.tar.xz";
sha256 = "sha256-myrHOfgpCwuW8YX0jZ3RutoqtXysU0ejBNcuxN3stXU=";
sha256 = "sha256-9Y9up5Ziipm6ums1wESfcADKgMwas2SESgGPn74RTt4=";
};
nativeBuildInputs = [ pkg-config ];

View file

@ -38,13 +38,13 @@ let
in
stdenv.mkDerivation rec {
pname = "cudatext";
version = "1.171.0";
version = "1.172.0";
src = fetchFromGitHub {
owner = "Alexey-T";
repo = "CudaText";
rev = version;
hash = "sha256-+NTxZ5UkmaFDcTYliNi/5c8xGztVu6P8C7Ga99MHSFM=";
hash = "sha256-AYIgYLrOVutsv0cHUd/TwNAyLbog6xjcepV9/3fTshc=";
};
postPatch = ''

View file

@ -16,13 +16,13 @@
},
"ATSynEdit": {
"owner": "Alexey-T",
"rev": "2022.09.18",
"hash": "sha256-HjW4V7MctQoHbDYIlMv7VS0nS7FFG6Qir0sCju+isI0="
"rev": "2022.10.01",
"hash": "sha256-cfjpPTOc8KjhaD1wVY3Tb/lQwEeT3Rq22lJ1MKdTNF0="
},
"ATSynEdit_Cmp": {
"owner": "Alexey-T",
"rev": "2022.09.18",
"hash": "sha256-yIbIRo4hpwbCdH+3fIhjnQPtdvuFmfJSqloKjWqKEuY="
"rev": "2022.10.03",
"hash": "sha256-2XP3LyB18ZHLQOxzP4lBuhlUA8u1+wHl97cxmRYa7Xg="
},
"EControl": {
"owner": "Alexey-T",

File diff suppressed because it is too large Load diff

View file

@ -53,6 +53,7 @@
, zsh
# command-t dependencies
, getconf
, ruby
# cpsm dependencies
@ -239,10 +240,11 @@ self: super: {
};
command-t = super.command-t.overrideAttrs (old: {
buildInputs = [ ruby ];
nativeBuildInputs = [ getconf ruby ];
buildPhase = ''
substituteInPlace lua/wincent/commandt/lib/Makefile \
--replace '/bin/bash' 'bash'
--replace '/bin/bash' 'bash' \
--replace xcrun ""
make build
rm ruby/command-t/ext/command-t/*.o
'';
@ -983,7 +985,7 @@ self: super: {
libiconv
];
cargoSha256 = "sha256-g5yNqDCN1O9x7/HcM8NsZlMwLudDTuPLE5gSpScNQnY=";
cargoSha256 = "sha256-AY14YEdMpHXmiHwEA9hwSwwwJ8hYIomAuIuCJv1OUDw=";
};
in
''

View file

@ -60,6 +60,7 @@ https://github.com/vmchale/ats-vim/,,
https://github.com/ray-x/aurora/,,
https://github.com/hotwatermorning/auto-git-diff/,,
https://github.com/jiangmiao/auto-pairs/,,
https://github.com/pocco81/auto-save.nvim/,HEAD,
https://github.com/rmagatti/auto-session/,,
https://github.com/vim-scripts/autoload_cscope.vim/,,
https://github.com/rafi/awesome-vim-colorschemes/,,
@ -460,6 +461,7 @@ https://github.com/vijaymarupudi/nvim-fzf/,,
https://github.com/vijaymarupudi/nvim-fzf-commands/,,
https://github.com/sakhnik/nvim-gdb/,,
https://github.com/smiteshp/nvim-gps/,,
https://github.com/brenoprata10/nvim-highlight-colors/,HEAD,
https://github.com/Iron-E/nvim-highlite/,,
https://github.com/kevinhwang91/nvim-hlslens/,,
https://github.com/neovimhaskell/nvim-hs.vim/,,
@ -479,6 +481,7 @@ https://github.com/AckslD/nvim-neoclip.lua/,,
https://github.com/yamatsum/nvim-nonicons/,,
https://github.com/rcarriga/nvim-notify/,,
https://github.com/gennaro-tedesco/nvim-peekup/,,
https://github.com/olrtg/nvim-rename-state/,HEAD,
https://github.com/dstein64/nvim-scrollview/,,
https://github.com/dcampos/nvim-snippy/,HEAD,
https://github.com/ishan9299/nvim-solarized-lua/,,
@ -636,6 +639,7 @@ https://github.com/tom-anders/telescope-vim-bookmarks.nvim/,,
https://github.com/nvim-telescope/telescope-z.nvim/,,
https://github.com/jvgrootveld/telescope-zoxide/,,
https://github.com/nvim-telescope/telescope.nvim/,,
https://github.com/axelvc/template-string.nvim/,HEAD,
https://github.com/jacoborus/tender.vim/,,
https://github.com/wincent/terminus/,,
https://github.com/oberblastmeister/termwrapper.nvim/,,
@ -1071,6 +1075,7 @@ https://github.com/mattn/webapi-vim/,,
https://github.com/folke/which-key.nvim/,,
https://github.com/gelguy/wilder.nvim/,,
https://github.com/gcmt/wildfire.vim/,,
https://github.com/anuvyklack/windows.nvim/,,
https://github.com/sindrets/winshift.nvim/,,
https://github.com/wannesm/wmgraphviz.vim/,,
https://github.com/vim-scripts/wombat256.vim/,,
@ -1087,4 +1092,3 @@ https://github.com/ziglang/zig.vim/,,
https://github.com/mickael-menu/zk-nvim/,HEAD,
https://github.com/troydm/zoomwintab.vim/,,
https://github.com/nanotee/zoxide.vim/,,
https://github.com/anuvyklack/windows.nvim/,,

View file

@ -120,8 +120,8 @@ in stdenv.mkDerivation rec {
cp -a resources/icons $out/share
interp="$(cat $NIX_CC/nix-support/dynamic-linker)"
patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper,op-ssh-sign}
patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper,op-ssh-sign}
for file in $(find $out -type f -name \*.so\* ); do
patchelf --set-rpath ${rpath}:$out/share/1password $file
done

View file

@ -120,8 +120,8 @@ in stdenv.mkDerivation rec {
cp -a resources/icons $out/share
interp="$(cat $NIX_CC/nix-support/dynamic-linker)"
patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper,op-ssh-sign}
patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper,op-ssh-sign}
for file in $(find $out -type f -name \*.so\* ); do
patchelf --set-rpath ${rpath}:$out/share/1password $file
done

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "cubiomes-viewer";
version = "2.4.1";
version = "2.5.0";
src = fetchFromGitHub {
owner = "Cubitect";
repo = pname;
rev = version;
sha256 = "sha256-vneX3Wo1DUK1WIwBP3nMUDV26EN2A7XIqMcTZQ4UI4A=";
sha256 = "sha256-VZsq2HMvhFB6DR+Z3bVtyIJ2O984QaryYWCcP/a7paw=";
fetchSubmodules = true;
};

View file

@ -0,0 +1,163 @@
{ lib, stdenv, fetchFromGitHub, fetchsvn
, scons, pkg-config, python3
, glib, libxml2, gtk2, libGLU, gnome2
, runCommand, writeScriptBin, runtimeShell
, makeDesktopItem, copyDesktopItems
}:
let
q3Pack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/Q3Pack/trunk";
rev = 144;
sha256 = "sha256-U1GtMv775JEOAJ1W2kSaRNPDCnW39W+KqVDTTG2yISY=";
};
urtPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/UrTPack/trunk";
rev = 144;
sha256 = "sha256-DQjENyQa1kEieU3ZWyMt2e4oEN0X2K3lxP79sBI91iI=";
};
etPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/ETPack/trunk";
rev = 144;
sha256 = "sha256-mqaWOYfF/F6ABh7nKA36YvsywZIdwJ9IitFi2Xp5rgk=";
};
qlPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/QLPack/trunk";
rev = 144;
sha256 = "sha256-lrn4nu3JI7j+t9jYd+UFE55GOCbc6+Sh2fZfVlEr1WM=";
};
q2Pack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/Q2Pack/trunk";
rev = 144;
sha256 = "sha256-ad8dRV+28Zz5yQsJU7hvteSIn9wWpehuqxMspw3yvvU=";
};
quetooPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/QuetooPack/trunk";
rev = 144;
sha256 = "sha256-SOblPJgdVEZrTYtvDlcF7paIm3UitSVFQ9+RahXkO64=";
};
jaPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/JAPack/trunk";
rev = 144;
sha256 = "sha256-P6lI+nNrPwoWJl5ThUHIA3Iw1nWVo2djaaWHAF5HuDo=";
};
stvefPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/STVEFPack/trunk";
rev = 144;
sha256 = "sha256-quNyVC6fg1FIBsLWx0LzRK2JfxKMNJeUEIkWGhGJHhI=";
};
wolfPack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/WolfPack/trunk";
rev = 144;
sha256 = "sha256-693k6KiIchQddVGBhRJf7ikv6ut5L9rcLt0FTZ7pSvw=";
};
unvanquishedPack = fetchsvn {
url = "https://github.com/Unvanquished/unvanquished-mapeditor-support.git/trunk/build/gtkradiant/";
rev = 212;
sha256 = "sha256-weBlnSBezPppbhsMOT66vubioTxpDC+AcKIOC2Xitdo=";
};
q1Pack = fetchsvn {
url = "svn://svn.icculus.org/gtkradiant-gamepacks/Q1Pack/trunk";
rev = 144;
sha256 = "sha256-JfmDIUoDY7dYdMgwwUMgcwNhWxuxsdkv1taw8DXhPY4=";
};
packs = runCommand "gtkradiant-packs" {} ''
mkdir -p $out
ln -s ${q3Pack} $out/Q3Pack
ln -s ${urtPack} $out/UrTPack
ln -s ${etPack} $out/ETPack
ln -s ${qlPack} $out/QLPack
ln -s ${q2Pack} $out/Q2Pack
ln -s ${quetooPack} $out/QuetooPack
ln -s ${jaPack} $out/JAPack
ln -s ${stvefPack} $out/STVEFPack
ln -s ${wolfPack} $out/WolfPack
ln -s ${unvanquishedPack} $out/UnvanquishedPack
ln -s ${q1Pack} $out/Q1Pack
'';
in
stdenv.mkDerivation rec {
pname = "gtkradiant";
version = "unstable-2022-07-31";
src = fetchFromGitHub {
owner = "TTimo";
repo = "GtkRadiant";
rev = "5b498bfa01bde6c2c9eb60fb94cf04666e52d22d";
sha256 = "sha256-407faeQnhxqbWgOUunQKj2JhHeqIzPPgrhz2K5O4CaM=";
};
# patch paths so that .game settings are put into the user's home instead of the read-only /nix/store
postPatch = ''
substituteInPlace radiant/preferences.cpp \
--replace 'gameFilePath += "games/";' 'gameFilePath = g_get_home_dir(); gameFilePath += "/.cache/radiant/games/";printf("gameFilePath: %s\\n", gameFilePath);' \
--replace 'radCreateDirectory( gameFilePath );' 'if (g_mkdir_with_parents( gameFilePath, 0777 ) == -1) {radCreateDirectory( gameFilePath );};' \
--replace 'strGamesPath = g_strAppPath.GetBuffer();' 'strGamesPath = g_get_home_dir();' \
--replace 'strGamesPath += "games";' 'strGamesPath += "/.cache/radiant/games";'
'';
nativeBuildInputs =
let
python = python3.withPackages (ps: with ps; [
urllib3
]);
svn = writeScriptBin "svn" ''
#!${runtimeShell} -e
if [ "$1" = checkout ]; then
# link predownloaded pack to destination
mkdir -p $(dirname $3)
ln -s ${packs}/$(basename $3) $3
# verify existence
test -e $(readlink $3)
elif [ "$1" = update ]; then
# verify existence
test -e $(readlink $3)
else
echo "$@"
exit 1
fi
'';
in [
scons
pkg-config
python
svn
copyDesktopItems
];
buildInputs = [ glib libxml2 gtk2 libGLU gnome2.gtkglext ];
enableParallelBuilding = true;
desktopItems = [ (makeDesktopItem {
name = "gtkradiant";
exec = "gtkradiant";
desktopName = "GtkRadiant";
comment = meta.description;
categories = [ "Development" ];
icon = "gtkradiant";
# includes its own splash screen
startupNotify = false;
}) ];
postInstall = ''
mkdir -p $out/{bin,lib}
cp -ar install $out/lib/gtkradiant
ln -s ../lib/gtkradiant/radiant.bin $out/bin/gtkradiant
ln -s ../lib/gtkradiant/{q3map2,q3map2_urt,q3data} $out/bin/
mkdir -p $out/share/pixmaps
ln -s ../../lib/gtkradiant/bitmaps/icon.png $out/share/pixmaps/gtkradiant.png
'';
meta = with lib; {
description = "Level editor for idTech games";
homepage = "https://icculus.org/gtkradiant/";
license = with licenses; [ gpl2Only bsdOriginal lgpl21Only ];
maintainers = with maintainers; [ astro ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,52 @@
{ stdenv
, lib
, fetchurl
, autoPatchelfHook
, pkg-config
, dpkg
, openssl
, webkitgtk
, libappindicator
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
name = "holochain-launcher";
version = "0.6.0";
src = fetchurl {
url = "https://github.com/holochain/launcher/releases/download/v${version}/holochain-launcher_${version}_amd64.deb";
sha256 = "sha256-o9cUFtq5XUkbC3yFRFiV2k4uWjb+szlE8qV+G9Gve5E=";
};
nativeBuildInputs = [
autoPatchelfHook
dpkg
wrapGAppsHook # required for FileChooser
];
buildInputs = [
openssl
webkitgtk
libappindicator
];
unpackCmd = "dpkg-deb -x $curSrc source";
installPhase = ''
mv usr $out
'';
preFixup = ''
patchelf --add-needed "libappindicator3.so" "$out/bin/holochain-launcher"
'';
meta = with lib; {
description = "A cross-platform executable that launches a local Holochain conductor, and installs and opens apps";
homepage = "https://github.com/holochain/launcher";
maintainers = [ maintainers.steveej ];
license = licenses.cal10;
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,19 @@
{ lib, fetchFromGitHub }:
rec {
version = "1.4.1";
src = fetchFromGitHub {
owner = "TandoorRecipes";
repo = "recipes";
rev = version;
sha256 = "sha256-Q/IwjSByCUXVYxhk3U7oWvlMxrJxyajhpsRyq67PVHY=";
};
yarnSha256 = "sha256-gH0q3pJ2BC5pAU9KSo3C9DDRUnpypoyLOEqKSrkxYrk=";
meta = with lib; {
homepage = "https://tandoor.dev/";
license = licenses.agpl3Only;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -0,0 +1,140 @@
{ callPackage
, nixosTests
, python3
}:
let
python = python3.override {
packageOverrides = self: super: {
django = super.django_4;
# Tests are incompatible with Django 4
django-js-reverse = super.django-js-reverse.overridePythonAttrs (_: {
doCheck = false;
});
};
};
common = callPackage ./common.nix { };
frontend = callPackage ./frontend.nix { };
in
python.pkgs.pythonPackages.buildPythonPackage rec {
pname = "tandoor-recipes";
inherit (common) version src;
format = "other";
patches = [
# Allow setting MEDIA_ROOT through environment variable
./media-root.patch
];
propagatedBuildInputs = with python.pkgs; [
beautifulsoup4
bleach
bleach-allowlist
boto3
cryptography
django
django-allauth
django-annoying
django-auth-ldap
django-autocomplete-light
django-cleanup
django-cors-headers
django-crispy-forms
django-hcaptcha
django-js-reverse
django-oauth-toolkit
django-prometheus
django-scopes
django-storages
django-tables2
django-webpack-loader
django_treebeard
djangorestframework
drf-writable-nested
gunicorn
icalendar
jinja2
lxml
markdown
microdata
pillow
psycopg2
pyppeteer
python-dotenv
pytube
pyyaml
recipe-scrapers
requests
six
uritemplate
validators
webdavclient3
whitenoise
];
configurePhase = ''
runHook preConfigure
ln -sf ${frontend}/ cookbook/static/vue
cp ${frontend}/webpack-stats.json vue/
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
# Avoid dependency on django debug toolbar
export DEBUG=0
# See https://github.com/TandoorRecipes/recipes/issues/2043
mkdir cookbook/static/themes/maps/
touch cookbook/static/themes/maps/style.min.css.map
touch cookbook/static/themes/bootstrap.min.css.map
touch cookbook/static/css/bootstrap-vue.min.css.map
${python.pythonForBuild.interpreter} manage.py collectstatic_js_reverse
${python.pythonForBuild.interpreter} manage.py collectstatic
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/lib
cp -r . $out/lib/tandoor-recipes
chmod +x $out/lib/tandoor-recipes/manage.py
makeWrapper $out/lib/tandoor-recipes/manage.py $out/bin/tandoor-recipes \
--prefix PYTHONPATH : "$PYTHONPATH"
runHook postInstall
'';
checkInputs = with python.pkgs; [
pytestCheckHook
pytest-django
pytest-factoryboy
];
passthru = {
inherit frontend python;
updateScript = ./update.sh;
tests = {
inherit (nixosTests) tandoor-recipes;
};
};
meta = common.meta // {
description = ''
Application for managing recipes, planning meals, building shopping lists
and much much more!
'';
};
}

View file

@ -0,0 +1,57 @@
{ stdenv, fetchYarnDeps, fixup_yarn_lock, callPackage, nodejs-16_x }:
let
common = callPackage ./common.nix { };
in
stdenv.mkDerivation {
pname = "tandoor-recipes-frontend";
inherit (common) version;
src = "${common.src}/vue";
yarnOfflineCache = fetchYarnDeps {
yarnLock = "${common.src}/vue/yarn.lock";
sha256 = common.yarnSha256;
};
nativeBuildInputs = [
fixup_yarn_lock
# Use Node JS 16 because of @achrinza/node-ipc@9.2.2
nodejs-16_x
nodejs-16_x.pkgs.yarn
];
configurePhase = ''
runHook preConfigure
export HOME=$(mktemp -d)
yarn config --offline set yarn-offline-mirror "$yarnOfflineCache"
fixup_yarn_lock yarn.lock
command -v yarn
yarn install --frozen-lockfile --offline --no-progress --non-interactive
patchShebangs node_modules/
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
yarn --offline run build
runHook postBuild
'';
installPhase = ''
runHook preInstall
cp -R ../cookbook/static/vue/ $out
cp webpack-stats.json $out
echo "${common.version}" > "$out/version"
runHook postInstall
'';
meta = common.meta // {
description = "Tandoor Recipes frontend";
};
}

View file

@ -0,0 +1,17 @@
diff --git a/recipes/settings.py b/recipes/settings.py
index 5676fe0a..6c6f1747 100644
--- a/recipes/settings.py
+++ b/recipes/settings.py
@@ -426,10 +426,10 @@ if os.getenv('S3_ACCESS_KEY', ''):
AWS_S3_CUSTOM_DOMAIN = os.getenv('S3_CUSTOM_DOMAIN', '')
MEDIA_URL = os.getenv('MEDIA_URL', '/media/')
- MEDIA_ROOT = os.path.join(BASE_DIR, "mediafiles")
+ MEDIA_ROOT = os.getenv('MEDIA_ROOT', os.path.join(BASE_DIR, "mediafiles"))
else:
MEDIA_URL = os.getenv('MEDIA_URL', '/media/')
- MEDIA_ROOT = os.path.join(BASE_DIR, "mediafiles")
+ MEDIA_ROOT = os.getenv('MEDIA_ROOT', os.path.join(BASE_DIR, "mediafiles"))
# Serve static files with gzip
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

View file

@ -0,0 +1,42 @@
#!/usr/bin/env nix-shell
#!nix-shell -I nixpkgs=../../../../ -i bash -p nix wget prefetch-yarn-deps nix-prefetch-github jq
# shellcheck shell=bash
if [ -n "$GITHUB_TOKEN" ]; then
TOKEN_ARGS=(--header "Authorization: token $GITHUB_TOKEN")
fi
if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
echo "Regenerates packaging data for the tandoor-recipes package."
echo "Usage: $0 [git release tag]"
exit 1
fi
version="$1"
set -euo pipefail
if [ -z "$version" ]; then
version="$(wget -O- "${TOKEN_ARGS[@]}" "https://api.github.com/repos/TandoorRecipes/recipes/releases?per_page=1" | jq -r '.[0].tag_name')"
fi
package_src="https://raw.githubusercontent.com/TandoorRecipes/recipes/$version"
src_hash=$(nix-prefetch-github TandoorRecipes recipes --rev "${version}" | jq -r .sha256)
tmpdir=$(mktemp -d)
trap 'rm -rf "$tmpdir"' EXIT
pushd "$tmpdir"
wget "${TOKEN_ARGS[@]}" "$package_src/vue/yarn.lock"
yarn_hash=$(prefetch-yarn-deps yarn.lock)
popd
# Use friendlier hashes
src_hash=$(nix hash to-sri --type sha256 "$src_hash")
yarn_hash=$(nix hash to-sri --type sha256 "$yarn_hash")
sed -i -E -e "s#version = \".*\"#version = \"$version\"#" common.nix
sed -i -E -e "s#sha256 = \".*\"#sha256 = \"$src_hash\"#" common.nix
sed -i -E -e "s#yarnSha256 = \".*\"#yarnSha256 = \"$yarn_hash\"#" common.nix

View file

@ -144,14 +144,15 @@ stdenv.mkDerivation {
inherit gtk3;
buildInputs = [ wrapGAppsHook gtk3 adwaita-icon-theme ];
nativeBuildInputs = [ wrapGAppsHook ];
buildInputs = [ gtk3 adwaita-icon-theme ];
# "strip" after "patchelf" may break binaries.
# See: https://github.com/NixOS/patchelf/issues/10
dontStrip = true;
dontPatchELF = true;
patchPhase = ''
postPatch = ''
# Don't download updates from Mozilla directly
echo 'pref("app.update.auto", "false");' >> defaults/pref/channel-prefs.js
'';

View file

@ -1,5 +1,5 @@
{ stdenv, lib, makeDesktopItem, makeWrapper, makeBinaryWrapper, lndir, config
, fetchurl, zip, unzip, jq, xdg-utils, writeText
, jq, xdg-utils, writeText
## various stuff that can be plugged in
, ffmpeg_5, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify, opensc

View file

@ -0,0 +1,41 @@
{ lib, fetchurl, appimageTools }:
let
pname = "polypane";
version = "10.0.1";
src = fetchurl {
url = "https://github.com/firstversionist/${pname}/releases/download/v${version}/${pname}-${version}.AppImage";
name = "${pname}-${version}.AppImage";
sha256 = "eujv99L5svMhDIKHFOfm7sOwNZ4xiUaIsimfOf4BBik=";
};
appimageContents = appimageTools.extractType2 {
inherit pname src version;
};
in appimageTools.wrapType2 {
inherit pname src version;
multiPkgs = null;
extraPkgs = pkgs: appimageTools.defaultFhsEnvArgs.multiPkgs pkgs ++ [ pkgs.bash ];
extraInstallCommands = ''
ln -s $out/bin/${pname}-${version} $out/bin/${pname}
install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
install -m 444 -D ${appimageContents}/${pname}.png \
$out/share/icons/hicolor/512x512/apps/${pname}.png
'';
meta = with lib; {
description = "Browser with unified devtools targeting responsability and acessibility";
longDescription = ''
The stand-alone browser for ambitious developers that want to build responsive,
accessible and performant websites in a fraction of the time it takes with other browsers.
'';
homepage = "https://polypane.app/";
maintainers = with maintainers; [ zoedsoupe ];
platforms = [ "x86_64-linux" ];
changelog = "https://polypane.app/docs/changelog/";
license = licenses.unfree;
};
}

View file

@ -0,0 +1,25 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "hashi-up";
version = "0.16.0";
src = fetchFromGitHub {
owner = "jsiebens";
repo = pname;
rev = "v${version}";
sha256 = "sha256-PdZ8X2pJ5TfT0bJ4/P/XbMTv+yyL5/1AxIFHnL/qNcg=";
};
vendorSha256 = "sha256-dircE3WlDPsPnF+0wT5RG/c4hC8qPs8NaSGM5wpvVlM=";
meta = with lib; {
description = "A lightweight utility to install HashiCorp Consul, Nomad, or Vault on any remote Linux host";
homepage = "https://github.com/jsiebens/hashi-up";
license = licenses.mit;
maintainers = with maintainers; [ lucperkins ];
};
}

View file

@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
pname = "signal-cli";
version = "0.10.11";
version = "0.11.0";
# Building from source would be preferred, but is much more involved.
src = fetchurl {
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}-Linux.tar.gz";
sha256 = "sha256-tBgtSYKSoyze9qFWpy6IUdwMU9KCLZGEIpOkjLdHsHM=";
sha256 = "sha256-BIVeY4H5pn8hdjUkSDrlVMTXy5wuMskkSlccfgCWc6Q=";
};
buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];

View file

@ -47,23 +47,23 @@ let
# and often with different versions. We write them on three lines
# like this (rather than using {}) so that the updater script can
# find where to edit them.
versions.aarch64-darwin = "5.11.9.10046";
versions.x86_64-darwin = "5.11.9.10046";
versions.x86_64-linux = "5.11.10.4400";
versions.aarch64-darwin = "5.12.0.11129";
versions.x86_64-darwin = "5.12.0.11129";
versions.x86_64-linux = "5.12.0.4682";
srcs = {
aarch64-darwin = fetchurl {
url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64";
name = "zoomusInstallerFull.pkg";
hash = "sha256-Z+K811azMRnhptZ1UvM+o5IgE0F4p9BrntJC9IgPU7U=";
hash = "sha256-0XhqJrls4X8wO9VNmmmUGexJkA9NDkwJkYRjmyV1kAU=";
};
x86_64-darwin = fetchurl {
url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg";
hash = "sha256-7U7qT3xlm5LqcJByMWxhZnqs6XBzylEGhqTNUgiaXJY=";
hash = "sha256-E7+zMrW4y1RfsR1LrxCJRRVlA+BuhzwMI/sfzqNHObo=";
};
x86_64-linux = fetchurl {
url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz";
hash = "sha256-Pi1MtuCHzkQACamsNOIS6pbM03L1CmyosbpdrYVNCkQ=";
hash = "sha256-UNtxyR4SMCP9c1Dre/arfdSVZbAV8qoHyHlvj3ZbXIs=";
};
};

View file

@ -1,23 +0,0 @@
{ lib
, buildEnv
, makeWrapper
, ipfs-migrator-unwrapped
, ipfs-migrator-all-fs-repo-migrations
}:
buildEnv {
name = "ipfs-migrator-${ipfs-migrator-unwrapped.version}";
nativeBuildInputs = [ makeWrapper ];
paths = [ ipfs-migrator-unwrapped ];
pathsToLink = [ "/bin" ];
postBuild = ''
wrapProgram "$out/bin/fs-repo-migrations" \
--prefix PATH ':' '${lib.makeBinPath [ ipfs-migrator-all-fs-repo-migrations ]}'
'';
inherit (ipfs-migrator-unwrapped) meta;
}

View file

@ -20,13 +20,13 @@
stdenv.mkDerivation rec {
pname = "srain";
version = "1.4.1";
version = "1.5.0";
src = fetchFromGitHub {
owner = "SrainApp";
repo = "srain";
rev = version;
sha256 = "sha256-zkSePzmbi/QnUYJO/henkxfhuN+BXTXtKGPW7M2QyBY=";
sha256 = "sha256-AJ02S5+A/n8kO6lic8EbPYqNDmHL/tKbXhIkHTrcXOM=";
};
nativeBuildInputs = [

View file

@ -2,23 +2,23 @@
, stdenv
, symlinkJoin
, buildGoModule
, ipfs-migrator-unwrapped
, kubo-migrator-unwrapped
}:
# This package contains all the individual migrations in the bin directory.
# This is used by fs-repo-migrations and could also be used by IPFS itself
# This is used by fs-repo-migrations and could also be used by Kubo itself
# when starting it like this: ipfs daemon --migrate
let
fs-repo-common = pname: version: buildGoModule {
inherit pname version;
inherit (ipfs-migrator-unwrapped) src;
inherit (kubo-migrator-unwrapped) src;
sourceRoot = "source/${pname}";
vendorSha256 = null;
doCheck = false;
meta = ipfs-migrator-unwrapped.meta // {
meta = kubo-migrator-unwrapped.meta // {
mainProgram = pname;
description = "Individual migration for the filesystem repository of ipfs clients";
description = "Individual migration for the filesystem repository of Kubo clients";
};
};
@ -58,6 +58,6 @@ let
in
symlinkJoin {
name = "ipfs-migrator-all-fs-repo-migrations-${version}";
name = "kubo-migrator-all-fs-repo-migrations-${version}";
paths = all-migrations;
}

View file

@ -0,0 +1,23 @@
{ lib
, buildEnv
, makeWrapper
, kubo-migrator-unwrapped
, kubo-migrator-all-fs-repo-migrations
}:
buildEnv {
name = "kubo-migrator-${kubo-migrator-unwrapped.version}";
nativeBuildInputs = [ makeWrapper ];
paths = [ kubo-migrator-unwrapped ];
pathsToLink = [ "/bin" ];
postBuild = ''
wrapProgram "$out/bin/fs-repo-migrations" \
--prefix PATH ':' '${lib.makeBinPath [ kubo-migrator-all-fs-repo-migrations ]}'
'';
inherit (kubo-migrator-unwrapped) meta;
}

View file

@ -4,7 +4,7 @@
}:
buildGoModule rec {
pname = "ipfs-migrator";
pname = "kubo-migrator";
version = "2.0.2";
src = fetchFromGitHub {
@ -26,7 +26,7 @@ buildGoModule rec {
doCheck = false;
meta = with lib; {
description = "Migrations for the filesystem repository of ipfs clients";
description = "Migrations for the filesystem repository of Kubo clients";
homepage = "https://github.com/ipfs/fs-repo-migrations";
license = licenses.mit;
maintainers = with maintainers; [ Luflosi elitak ];

View file

@ -1,13 +1,13 @@
{ lib, buildGoModule, fetchurl, nixosTests, openssl, pkg-config }:
buildGoModule rec {
pname = "ipfs";
pname = "kubo";
version = "0.15.0"; # When updating, also check if the repo version changed and adjust repoVersion below
rev = "v${version}";
passthru.repoVersion = "12"; # Also update ipfs-migrator when changing the repo version
passthru.repoVersion = "12"; # Also update kubo-migrator when changing the repo version
# go-ipfs makes changes to it's source tarball that don't match the git source.
# Kubo makes changes to it's source tarball that don't match the git source.
src = fetchurl {
url = "https://github.com/ipfs/kubo/releases/download/${rev}/kubo-source.tar.gz";
hash = "sha256-GkOY1G2CKXbMbHXkw5v27HmfkJIl2nZOmjjZbzuaRWs=";
@ -15,10 +15,10 @@ buildGoModule rec {
# tarball contains multiple files/directories
postUnpack = ''
mkdir ipfs-src
mkdir kubo-src
shopt -s extglob
mv !(ipfs-src) ipfs-src || true
cd ipfs-src
mv !(kubo-src) kubo-src || true
cd kubo-src
'';
sourceRoot = ".";
@ -29,7 +29,7 @@ buildGoModule rec {
nativeBuildInputs = [ pkg-config ];
tags = [ "openssl" ];
passthru.tests.ipfs = nixosTests.ipfs;
passthru.tests.kubo = nixosTests.kubo;
vendorSha256 = null;
@ -57,6 +57,7 @@ buildGoModule rec {
homepage = "https://ipfs.io/";
license = licenses.mit;
platforms = platforms.unix;
mainProgram = "ipfs";
maintainers = with maintainers; [ fpletz ];
};
}

View file

@ -27,13 +27,13 @@
stdenv.mkDerivation rec {
pname = "beamerpresenter";
version = "0.2.3";
version = "0.2.3-1";
src = fetchFromGitHub {
owner = "stiglers-eponym";
repo = "BeamerPresenter";
rev = "v${version}";
sha256 = "1n9d0i0j67ymnghn8zkqf52c88zby6rqin8aicbw8cpn35fqf5a6";
rev = "dd41a00b3c6c8b881fa62945165c965634df66f0";
sha256 = "11yj1zl8hdnqbynkbyzg8kwyx1jl8c87x8f8qyllpk0s6cg304d0";
};
nativeBuildInputs = [

View file

@ -11,13 +11,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
stdenv.mkDerivation rec {
pname = "octopus";
version = "11.4";
version = "12.0";
src = fetchFromGitLab {
owner = "octopus-code";
repo = "octopus";
rev = version;
sha256 = "1z423sjpc4ajjy3s7623z3rfwmp2hgis7iiiy8gb5apw73k33dyv";
sha256 = "sha256-OF6zcyxtWXxMUIAB8YxQ3453JAmw6Q3RnNMjr4HgTmE=";
};
nativeBuildInputs = [

View file

@ -7,12 +7,11 @@
, netcdf
, glew
, glm
, freeglut
, libpng
, libxml2
, tk
, freetype
, msgpack
, qt5
}:
let
pname = "pymol";
@ -47,12 +46,11 @@ python3Packages.buildPythonApplication rec {
sha256 = "sha256-JdsgcVF1w1xFPZxVcyS+GcWg4a1Bd4SvxFOuSdlz9SM=";
};
buildInputs = [ python3Packages.numpy glew glm freeglut libpng libxml2 tk freetype msgpack netcdf ];
nativeBuildInputs = [ qt5.wrapQtAppsHook ];
buildInputs = [ python3Packages.numpy python3Packages.pyqt5 glew glm libpng libxml2 freetype msgpack netcdf ];
NIX_CFLAGS_COMPILE = "-I ${libxml2.dev}/include/libxml2";
hardeningDisable = [ "format" ];
setupPyBuildFlags = [ "--glut" ];
installPhase = ''
python setup.py install --home="$out"
runHook postInstall
@ -60,13 +58,17 @@ python3Packages.buildPythonApplication rec {
postInstall = with python3Packages; ''
wrapProgram $out/bin/pymol \
--prefix PYTHONPATH : ${lib.makeSearchPathOutput "lib" python3.sitePackages [ Pmw tkinter ]}
--prefix PYTHONPATH : ${lib.makeSearchPathOutput "lib" python3.sitePackages [ pyqt5 pyqt5.pyqt5_sip ]}
mkdir -p "$out/share/icons/"
ln -s ../../lib/python/pymol/pymol_path/data/pymol/icons/icon2.svg "$out/share/icons/pymol.svg"
cp -r "${desktopItem}/share/applications/" "$out/share/"
'';
preFixup = ''
wrapQtApp "$out/bin/pymol"
'';
meta = with lib; {
broken = stdenv.isDarwin;
inherit description;

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "librepcb";
version = "0.1.6";
version = "0.1.7";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "0gzf3asdgdicpikb412134ybqnbbark948yrfhvba2w4i9cwbk2r";
sha256 = "sha256-zqvvc3CHqdRWVUFt4BkH5Vq50/FKNvMNW2NvGyfWwFM=";
fetchSubmodules = true;
};

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "verilator";
version = "4.224";
version = "4.226";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "sha256-Kn44yWkNcOLkc79HLDTxx5zQn/vqft+hhbvsoUAKR7I=";
sha256 = "sha256-X6Kwpcm+ugu+4gVkWfsqdCPFTESHzJ1jjCPnGqE3/vo=";
};
enableParallelBuilding = true;

View file

@ -0,0 +1,22 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config }:
stdenv.mkDerivation rec {
name = "readstat";
version = "1.1.8";
src = fetchFromGitHub {
owner = "WizardMac";
repo = "ReadStat";
rev = "v${version}";
sha256 = "1r04lq45h1yn34v1mgfiqjfzyaqv4axqlby0nkandamcsqyhc7y4";
};
nativeBuildInputs = [ pkg-config autoreconfHook ];
meta = {
homepage = "https://github.com/WizardMac/ReadStat";
description = "Command-line tool (+ C library) for converting SAS, Stata, and SPSS files";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ swflint ];
};
}

View file

@ -0,0 +1,33 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook, gtk3, vte, lua5_3, pcre2 }:
stdenv.mkDerivation rec {
pname = "tym";
version = "3.3.0";
src = fetchFromGitHub {
owner = "endaaman";
repo = "${pname}";
rev = "${version}";
sha256 = "sha256-ufIYJgbHmSJJbnx4hyDx0DmIjaGCxKXtiekcXcyka14=";
};
nativeBuildInputs = [
pkg-config
autoreconfHook
];
buildInputs = [
gtk3
vte
lua5_3
pcre2
];
meta = with lib; {
description = "Lua-configurable terminal emulator";
homepage = "https://github.com/endaaman/tym";
license = licenses.mit;
maintainers = [ maintainers.wesleyjrz ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,25 @@
{ lib, rel, buildKodiBinaryAddon, fetchFromGitHub, pkg-config, glm, libGL }:
buildKodiBinaryAddon rec {
pname = "visualization-waveform";
namespace = "visualization.waveform";
version = "19.0.2";
src = fetchFromGitHub {
owner = "xbmc";
repo = namespace;
rev = "${version}-${rel}";
hash = "sha256-IQLW4CDNtt/ptE679hnoXbharq61Ru9S2m7QbJLtNSI=";
};
extraBuildInputs = [ pkg-config libGL ];
propagatedBuildInputs = [ glm ];
meta = with lib; {
homepage = "https://github.com/xbmc/visualization.waveform";
description = "Waveform visualization for kodi";
platforms = platforms.all;
license = licenses.gpl2Only;
maintainers = teams.kodi.members;
};
}

View file

@ -50,7 +50,7 @@
homepage = "http://www.tvdr.de/";
description = "Video Disc Recorder";
maintainers = [ maintainers.ck3d ];
platforms = [ "i686-linux" "x86_64-linux" ];
platforms = platforms.linux;
license = licenses.gpl2Plus;
};
}

View file

@ -32,9 +32,11 @@ in {
buildInputs = [ vdr ];
src = fetchurl {
url = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${pname}-${version}.tgz";
sha256 = "1hra1xslj8s68zbyr8zdqp8yap0aj1p6rxyc6cwy1j122kwcnapp";
src = fetchFromGitHub {
repo = "vdr-plugin-femon";
owner = "rofafor";
sha256 = "sha256-0qBMYgNKk7N9Bj8fAoOokUo+G9gfj16N5e7dhoKRBqs=";
rev = "v${version}";
};
postPatch = "substituteInPlace Makefile --replace /bin/true true";
@ -42,23 +44,23 @@ in {
makeFlags = [ "DESTDIR=$(out)" ];
meta = with lib; {
homepage = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/";
inherit (src.meta) homepage;
description = "DVB Frontend Status Monitor plugin for VDR";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
};
markad = stdenv.mkDerivation rec {
pname = "vdr-markad";
version = "3.0.25";
version = "3.0.26";
src = fetchFromGitHub {
repo = "vdr-plugin-markad";
owner = "kfb77";
sha256 = "sha256-m7cUAxwXj62spelHYH6uTIoViSavSR0d4psr7+KLJg8=";
sha256 = "sha256-0J6XeLgr9IZSWsheQZWVNRLIxp8iyCvR9Y0z/yrbTnI=";
rev = "v${version}";
};
@ -88,11 +90,11 @@ in {
installFlags = buildFlags;
meta = with lib; {
homepage = "https://github.com/kfb77/vdr-plugin-markad";
inherit (src.meta) homepage;
description = "MarkAd marks advertisements in VDR recordings.";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
};
@ -101,8 +103,9 @@ in {
pname = "vdr-epgsearch";
version = "2.4.1";
src = fetchgit {
url = "git://projects.vdr-developer.org/vdr-plugin-epgsearch.git";
src = fetchFromGitHub {
repo = "vdr-plugin-epgsearch";
owner = "vdr-projects";
sha256 = "sha256-UlbPCkUFN0Gyxjw9xq2STFTDZRVcPPNjadSQd4o2o9U=";
rev = "v${version}";
};
@ -136,18 +139,18 @@ in {
outputs = [ "out" "man" ];
meta = with lib; {
homepage = "http://winni.vdr-developer.org/epgsearch";
inherit (src.meta) homepage;
description = "Searchtimer and replacement of the VDR program menu";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
};
vnsiserver = stdenv.mkDerivation rec {
pname = "vdr-vnsiserver";
version = "1.8.0";
version = "1.8.1";
buildInputs = [ vdr ];
@ -155,17 +158,17 @@ in {
src = fetchFromGitHub {
repo = "vdr-plugin-vnsiserver";
owner = "FernetMenta";
rev = "v${version}";
sha256 = "0n7idpxqx7ayd63scl6xwdx828ik4kb2mwz0c30cfjnmnxxd45lw";
owner = "vdr-projects";
rev = version;
sha256 = "sha256-1C0Z7NoU+FNch4BhrAcbJdzVvGuH1YDaxJ+9PflR78E=";
};
meta = with lib; {
homepage = "https://github.com/FernetMenta/vdr-plugin-vnsiserver";
inherit (src.meta) homepage;
description = "VDR plugin to handle KODI clients.";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
};
@ -201,7 +204,7 @@ in {
description = "VDR Text2Skin Plugin";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
};
@ -222,11 +225,11 @@ in {
installFlags = [ "DESTDIR=$(out)" ];
meta = with lib; {
homepage = "https://github.com/jowi24/vdr-fritz";
inherit (src.meta) homepage;
description = "A plugin for VDR to access AVMs Fritz Box routers";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
};
}

View file

@ -12,12 +12,12 @@
}:
stdenv.mkDerivation rec {
pname = "vdr-softhddevice";
version = "1.9.0";
version = "1.9.2";
src = fetchFromGitHub {
owner = "ua0lnj";
repo = "vdr-plugin-softhddevice";
sha256 = "sha256-IqG1Jr+fV4MMyTTOUGY34HNqS8qvAH+CSi2IEyVGVFo=";
sha256 = "sha256-2kh8qMxaAjekvgjMVRmm1nPzlN2wjY/6qYjFyo6CLlg=";
rev = "v${version}";
};
@ -40,11 +40,11 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
homepage = "https://github.com/ua0lnj/vdr-plugin-softhddevice";
inherit (src.meta) homepage;
description = "VDR SoftHDDevice Plug-in";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;
platforms = [ "i686-linux" "x86_64-linux" ];
inherit (vdr.meta) platforms;
};
}

View file

@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
];
meta = with lib;{
homepage = "https://github.com/vdr-projects/vdr-plugin-streamdev";
inherit (src.meta) homepage;
description = "This PlugIn is a VDR implementation of the VTP (Video Transfer Protocol) Version 0.0.3 (see file PROTOCOL) and a basic HTTP Streaming Protocol.";
maintainers = [ maintainers.ck3d ];
license = licenses.gpl2;

View file

@ -128,7 +128,7 @@ in
};
noto-fonts-emoji = let
version = "2.034";
version = "2.038";
emojiPythonEnv =
buildPackages.python3.withPackages (p: with p; [ fonttools nototools ]);
in stdenvNoCC.mkDerivation {
@ -139,7 +139,7 @@ in
owner = "googlefonts";
repo = "noto-emoji";
rev = "v${version}";
sha256 = "1d6zzk0ii43iqfnjbldwp8sasyx99lbjp1nfgqjla7ixld6yp98l";
sha256 = "1rgmcc6nqq805iqr8kvxxlk5cf50q714xaxk3ld6rjrd69kb8ix9";
};
depsBuildBuild = [
@ -171,8 +171,10 @@ in
enableParallelBuilding = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/fonts/noto
cp NotoColorEmoji.ttf fonts/NotoEmoji-Regular.ttf $out/share/fonts/noto
cp NotoColorEmoji.ttf $out/share/fonts/noto
runHook postInstall
'';
meta = with lib; {

View file

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "nototools";
version = "0.2.16";
version = "0.2.17";
disabled = pythonOlder "3.6";
@ -15,7 +15,7 @@ buildPythonPackage rec {
owner = "googlefonts";
repo = "nototools";
rev = "v${version}";
sha256 = "14rrdamkmhrykff8ln07fq9cm8zwj3k113lzwjcy0lgz23g51jyl";
sha256 = "0jxydivqzggirc31jv7b4mrsjkg646zmra5m4h0pk4amgy65rvyp";
};
postPatch = ''

View file

@ -20,6 +20,8 @@
let
inherit (lib) concatMapStringsSep;
gsettingsOverridePackages = [
# from
mint-artwork
@ -38,22 +40,21 @@ let
in
with lib;
# TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
runCommand "cinnamon-gsettings-overrides" { }
runCommand "cinnamon-gsettings-overrides" { preferLocalBuild = true; }
''
schema_dir=$out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
schema_dir="$data_dir/glib-2.0/schemas"
mkdir -p $schema_dir
mkdir -p "$schema_dir"
${concatMapStrings (pkg: "cp -rf ${glib.getSchemaPath pkg}/*.xml ${glib.getSchemaPath pkg}/*.gschema.override $schema_dir\n") gsettingsOverridePackages}
${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"") gsettingsOverridePackages}
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
chmod -R a+w "$data_dir"
cat - > $schema_dir/nixos-defaults.gschema.override <<- EOF
cat - > "$schema_dir/nixos-defaults.gschema.override" <<- EOF
${extraGSettingsOverrides}
EOF
${glib.dev}/bin/glib-compile-schemas $schema_dir
${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir"
''

View file

@ -123,6 +123,8 @@ lib.makeScope pkgs.newScope (self: with self; {
withGnome = true;
};
nixos-gsettings-overrides = callPackage ./nixos/gsettings-overrides { };
rygel = callPackage ./core/rygel { };
simple-scan = callPackage ./core/simple-scan { };

View file

@ -0,0 +1,55 @@
{ lib
, runCommand
, gsettings-desktop-schemas
, gnome-shell
, glib
, gnome-flashback
, nixos-artwork
, nixos-background-light ? nixos-artwork.wallpapers.simple-blue
, nixos-background-dark ? nixos-artwork.wallpapers.simple-dark-gray
, extraGSettingsOverrides ? ""
, extraGSettingsOverridePackages ? [ ]
, favoriteAppsOverride ? ""
, flashbackEnabled ? false
}:
let
inherit (lib) concatMapStringsSep;
gsettingsOverridePackages = [
gsettings-desktop-schemas
gnome-shell
] ++ lib.optionals flashbackEnabled [
gnome-flashback
] ++ extraGSettingsOverridePackages;
gsettingsOverrides = ''
[org.gnome.desktop.background]
picture-uri='file://${nixos-background-light.gnomeFilePath}'
picture-uri-dark='file://${nixos-background-dark.gnomeFilePath}'
[org.gnome.desktop.screensaver]
picture-uri='file://${nixos-background-dark.gnomeFilePath}'
${favoriteAppsOverride}
${extraGSettingsOverrides}
'';
in
runCommand "gnome-gsettings-overrides" { preferLocalBuild = true; } ''
data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
schema_dir="$data_dir/glib-2.0/schemas"
mkdir -p "$schema_dir"
${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"") gsettingsOverridePackages}
chmod -R a+w "$data_dir"
cat - > "$schema_dir/nixos-defaults.gschema.override" <<- EOF
${gsettingsOverrides}
EOF
${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir"
''

View file

@ -10,11 +10,13 @@
, elementary-dock
, gsettings-desktop-schemas
, extraGSettingsOverrides ? ""
, extraGSettingsOverridePackages ? []
, extraGSettingsOverridePackages ? [ ]
}:
let
inherit (lib) concatMapStringsSep;
gsettingsOverridePackages = [
elementary-dock
gnome-settings-daemon
@ -27,25 +29,24 @@ let
in
with lib;
# TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
runCommand "elementary-gsettings-desktop-schemas" {}
runCommand "elementary-gsettings-desktop-schemas" { preferLocalBuild = true; }
''
schema_dir=$out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
schema_dir="$data_dir/glib-2.0/schemas"
mkdir -p $schema_dir
mkdir -p "$schema_dir"
cp -rf "${glib.getSchemaPath gala}"/*.gschema.override "$schema_dir"
cp -rf ${glib.getSchemaPath gala}/*.gschema.override $schema_dir
${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"$schema_dir\"") gsettingsOverridePackages}
${concatMapStrings (pkg: "cp -rf ${glib.getSchemaPath pkg}/*.xml $schema_dir\n") gsettingsOverridePackages}
chmod -R a+w "$data_dir"
cp "${glib.getSchemaPath elementary-default-settings}"/* "$schema_dir"
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
cp ${glib.getSchemaPath elementary-default-settings}/* $schema_dir
cat - > "$schema_dir/nixos-defaults.gschema.override" <<- EOF
${extraGSettingsOverrides}
EOF
cat - > $schema_dir/nixos-defaults.gschema.override <<- EOF
${extraGSettingsOverrides}
EOF
${glib.dev}/bin/glib-compile-schemas $schema_dir
${glib.dev}/bin/glib-compile-schemas $schema_dir
''

View file

@ -2,16 +2,16 @@
stdenv.mkDerivation rec {
pname = "julia-bin";
version = "1.8.1";
version = "1.8.2";
src = {
x86_64-linux = fetchurl {
url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz";
sha256 = "sha256-MwVO5kfuik+1T8BREOB+C1PgRZH+U9Cky0x+16BekfE=";
sha256 = "sha256-ZxzzpFC2OnF+Hu3X9pCH44VvAVsuFGy1SSjxmjwF55Y=";
};
aarch64-linux = fetchurl {
url = "https://julialang-s3.julialang.org/bin/linux/aarch64/${lib.versions.majorMinor version}/julia-${version}-linux-aarch64.tar.gz";
sha256 = "sha256-ugaDesKJlUe7t5mYnxFGT+zWeCImhxw7ekhhlIEEJnk=";
sha256 = "sha256-+RwnZCj/swrMIJ4Os+cLHJEmDoh+EdS2b1VFCEtTBUc=";
};
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");

View file

@ -28,11 +28,11 @@
stdenv.mkDerivation rec {
pname = "julia";
version = "1.8.1";
version = "1.8.2";
src = fetchurl {
url = "https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz";
sha256 = "sha256-MeRlX0s3fnPW9YPFOdAiHte0gKPqCRgz0ABTFhhcW2E=";
sha256 = "sha256-5Xz8Lm2JF1Ckf3zwNVmk6PchK/VJAPJqnxL9bQCdTKk=";
};
patches =
@ -44,10 +44,6 @@ stdenv.mkDerivation rec {
url = path "julia-hardcoded-libs.patch";
sha256 = "sha256-kppSpVA7bRohd0wXDs4Jgct9ocHnpbeiiSz7ElFom1U=";
})
(fetchurl {
url = path "julia-libgit-1.4.patch";
sha256 = "sha256-rcVXYoGpAxwAbAl33n0/Rkwsi8ZJz8cnHQ5CalUx+1o=";
})
(fetchurl {
url = path "julia-libunwind-1.6.patch";
sha256 = "sha256-zqMh9+Fjgd15XuINe9Xtpk+bRTwB0T6WCWLrJyOQfiQ=";

View file

@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "${passthru.prettyName}-unwrapped";
version = "unstable-2022-08-02";
version = "unstable-2022-10-03";
src = fetchFromGitHub {
owner = "open-watcom";
repo = "open-watcom-v2";
rev = "4bdb73995b871982dd106838296903701ded29c2";
sha256 = "sha256-Ay/f+gnj8EklN8T/uP0a+Zji6HEHAoPLdkrSTQaC9Rs=";
rev = "61538429a501a09f369366d832799f2e3b196a02";
sha256 = "sha256-YvqRw0klSqOxIuO5QFKjcUp6aRWlO2j3L+T1ekx8SfA=";
};
postPatch = ''

View file

@ -1,11 +1,11 @@
From fcae473c4b6ac2120ec75c321d6db850d8ecd6a9 Mon Sep 17 00:00:00 2001
From ef066db7f5cb7f551f88fb218c82fc947e464425 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= <muscaln@protonmail.com>
Date: Sat, 30 Apr 2022 16:37:44 +0300
Date: Sun, 3 Jul 2022 14:30:51 +0300
Subject: [PATCH 1/3] Makefile
diff --git a/Makefile b/Makefile
index dc388c21..7efc9901 100644
index 60a5a574..904d2db5 100644
--- a/Makefile
+++ b/Makefile
@@ -14,11 +14,6 @@ LLVM_VERSIONS = 14 13 12 11
@ -20,7 +20,7 @@ index dc388c21..7efc9901 100644
# First search for a custom built copy, then move on to explicitly version-tagged binaries, then just see if the tool is in path with its normal name.
findLLVMTool = $(call detect,$(1),$(abspath llvm-build/bin/$(1)) $(foreach ver,$(LLVM_VERSIONS),$(call toolSearchPathsVersion,$(1),$(ver))) $(1))
CLANG ?= $(call findLLVMTool,clang)
@@ -644,9 +639,8 @@ endif
@@ -707,9 +702,8 @@ endif
wasmtest:
$(GO) test ./tests/wasm
@ -31,8 +31,13 @@ index dc388c21..7efc9901 100644
@mkdir -p build/release/tinygo/lib/CMSIS/CMSIS
@mkdir -p build/release/tinygo/lib/macos-minimal-sdk
@mkdir -p build/release/tinygo/lib/mingw-w64/mingw-w64-crt/lib-common
@@ -663,10 +657,6 @@ build/release: tinygo gen-device wasi-libc $(if $(filter 1,$(USE_SYSTEM_BINARYEN
@mkdir -p build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4
@@ -721,15 +715,8 @@ build/release: tinygo gen-device wasi-libc $(if $(filter 1,$(USE_SYSTEM_BINARYEN
@mkdir -p build/release/tinygo/lib/picolibc/newlib/libc
@mkdir -p build/release/tinygo/lib/picolibc/newlib/libm
@mkdir -p build/release/tinygo/lib/wasi-libc
- @mkdir -p build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0
- @mkdir -p build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus
- @mkdir -p build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4
@echo copying source files
@cp -p build/tinygo$(EXE) build/release/tinygo/bin
-ifneq ($(USE_SYSTEM_BINARYEN),1)
@ -42,7 +47,7 @@ index dc388c21..7efc9901 100644
@cp -rp lib/CMSIS/CMSIS/Include build/release/tinygo/lib/CMSIS/CMSIS
@cp -rp lib/CMSIS/README.md build/release/tinygo/lib/CMSIS
@cp -rp lib/macos-minimal-sdk/* build/release/tinygo/lib/macos-minimal-sdk
@@ -705,8 +695,7 @@ endif
@@ -768,16 +755,9 @@ endif
@cp -rp lib/picolibc/newlib/libm/common build/release/tinygo/lib/picolibc/newlib/libm
@cp -rp lib/picolibc-stdio.c build/release/tinygo/lib
@cp -rp lib/wasi-libc/sysroot build/release/tinygo/lib/wasi-libc/sysroot
@ -51,7 +56,15 @@ index dc388c21..7efc9901 100644
+ @cp -rp lib/compiler-rt-builtins build/release/tinygo/lib/compiler-rt-builtins
@cp -rp src build/release/tinygo/src
@cp -rp targets build/release/tinygo/targets
./build/tinygo build-library -target=cortex-m0 -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/compiler-rt compiler-rt
- ./build/release/tinygo/bin/tinygo build-library -target=cortex-m0 -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/compiler-rt compiler-rt
- ./build/release/tinygo/bin/tinygo build-library -target=cortex-m0plus -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus/compiler-rt compiler-rt
- ./build/release/tinygo/bin/tinygo build-library -target=cortex-m4 -o build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4/compiler-rt compiler-rt
- ./build/release/tinygo/bin/tinygo build-library -target=cortex-m0 -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/picolibc picolibc
- ./build/release/tinygo/bin/tinygo build-library -target=cortex-m0plus -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus/picolibc picolibc
- ./build/release/tinygo/bin/tinygo build-library -target=cortex-m4 -o build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4/picolibc picolibc
release:
tar -czf build/release.tar.gz -C build/release tinygo
--
2.36.0
2.37.2

View file

@ -1,14 +1,14 @@
From 4ee942ccc7cdb06ee51490e9cb44ecb36b25378a Mon Sep 17 00:00:00 2001
From 301b2d82cdbfaffe4dfba1d2cfed068a4115f730 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= <muscaln@protonmail.com>
Date: Sat, 30 Apr 2022 16:18:31 +0300
Subject: [PATCH 2/3] Add clang header path
diff --git a/builder/builtins.go b/builder/builtins.go
index 479b541d..b35283c6 100644
index 121398fa..a589988b 100644
--- a/builder/builtins.go
+++ b/builder/builtins.go
@@ -164,7 +164,7 @@ var aeabiBuiltins = []string{
@@ -170,7 +170,7 @@ var aeabiBuiltins = []string{
var CompilerRT = Library{
name: "compiler-rt",
cflags: func(target, headerPath string) []string {
@ -31,10 +31,10 @@ index f1b061ae..159f90cf 100644
"-I" + picolibcDir + "/tinystdio",
"-I" + headerPath,
diff --git a/compileopts/config.go b/compileopts/config.go
index b30e653e..7561b3f2 100644
index a006b673..3a105b49 100644
--- a/compileopts/config.go
+++ b/compileopts/config.go
@@ -288,6 +288,7 @@ func (c *Config) CFlags() []string {
@@ -279,6 +279,7 @@ func (c *Config) CFlags() []string {
path, _ := c.LibcPath("picolibc")
cflags = append(cflags,
"--sysroot="+path,
@ -42,7 +42,7 @@ index b30e653e..7561b3f2 100644
"-isystem", filepath.Join(path, "include"), // necessary for Xtensa
"-isystem", filepath.Join(picolibcDir, "include"),
"-isystem", filepath.Join(picolibcDir, "tinystdio"),
@@ -297,7 +298,6 @@ func (c *Config) CFlags() []string {
@@ -288,7 +289,6 @@ func (c *Config) CFlags() []string {
path, _ := c.LibcPath("musl")
arch := MuslArchitecture(c.Triple())
cflags = append(cflags,
@ -51,5 +51,5 @@ index b30e653e..7561b3f2 100644
"-isystem", filepath.Join(root, "lib", "musl", "arch", arch),
"-isystem", filepath.Join(root, "lib", "musl", "include"),
--
2.36.0
2.37.2

View file

@ -0,0 +1,56 @@
From e7357c383188dd735592bd9f2202d2afcfffa39d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= <muscaln@protonmail.com>
Date: Sun, 11 Sep 2022 17:08:33 +0300
Subject: [PATCH 3/3] Use out path as build id on darwin
diff --git a/builder/buildid.go b/builder/buildid.go
index e6527700..65cb08e8 100644
--- a/builder/buildid.go
+++ b/builder/buildid.go
@@ -3,8 +3,6 @@ package builder
import (
"bytes"
"debug/elf"
- "debug/macho"
- "encoding/binary"
"fmt"
"io"
"os"
@@ -53,30 +51,9 @@ func ReadBuildID() ([]byte, error) {
return goID, nil
}
case "darwin":
- // Read the LC_UUID load command, which contains the equivalent of a
- // build ID.
- file, err := macho.NewFile(f)
- if err != nil {
- return nil, err
- }
- for _, load := range file.Loads {
- // Unfortunately, the debug/macho package doesn't support the
- // LC_UUID command directly. So we have to read it from
- // macho.LoadBytes.
- load, ok := load.(macho.LoadBytes)
- if !ok {
- continue
- }
- raw := load.Raw()
- command := binary.LittleEndian.Uint32(raw)
- if command != 0x1b {
- // Looking for the LC_UUID load command.
- // LC_UUID is defined here as 0x1b:
- // https://opensource.apple.com/source/xnu/xnu-4570.71.2/EXTERNAL_HEADERS/mach-o/loader.h.auto.html
- continue
- }
- return raw[4:], nil
- }
+ // On darwin, os.Executable() returns broken path in nix build environment
+ // So we are using $out path as build id since its also unique
+ return []byte("OUT_PATH"), nil
default:
// On other platforms (such as Windows) there isn't such a convenient
// build ID. Luckily, Go does have an equivalent of the build ID, which
--
2.37.2

View file

@ -18,6 +18,7 @@
, avrdude
, gdb
, openocd
, tinygoTests ? [ "smoketest" ]
}:
let
@ -27,17 +28,17 @@ in
buildGoModule rec {
pname = "tinygo";
version = "0.23.0";
version = "0.25.0";
src = fetchFromGitHub {
owner = "tinygo-org";
repo = "tinygo";
rev = "v${version}";
sha256 = "sha256-YgQGAQJw9Xyw5BF2d9uZTQHfjHsu2evZGo4RV9DtStE=";
sha256 = "sha256-Rxdxum1UIaz8tpEAGqpLvKd25nHdj4Se+IoN29EJEHg=";
fetchSubmodules = true;
};
vendorSha256 = "sha256-fK8BlCh+1NtHW6MwW68iSIB+Sw6AK+g3y4lMyMYrXkk=";
vendorSha256 = "sha256-QxLY4KT05PtA/W7d1vKxsq5w35YZ6MJL3Lh726b+E9w=";
patches = [
./0001-Makefile.patch
@ -46,17 +47,22 @@ buildGoModule rec {
src = ./0002-Add-clang-header-path.patch;
clang_include = "${clang.cc.lib}/lib/clang/${clang.cc.version}/include";
})
#TODO(muscaln): Find a better way to fix build ID on darwin
./0003-Use-out-path-as-build-id-on-darwin.patch
];
checkInputs = [ avrgcc binaryen ];
nativeBuildInputs = [ go makeWrapper ];
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ llvm clang.cc ]
++ lib.optionals stdenv.isDarwin [ zlib ncurses libffi libxml2 xar ];
doCheck = stdenv.buildPlatform == stdenv.hostPlatform;
doCheck = (stdenv.buildPlatform.canExecute stdenv.hostPlatform);
inherit tinygoTests;
allowGoReference = true;
tags = [ "llvm${llvmMajor}" ];
ldflags = [ "-X github.com/tinygo-org/tinygo/goenv.TINYGOROOT=${placeholder "out"}/share/tinygo" ];
subPackages = [ "." ];
# Output contains static libraries for different arm cpus
@ -83,9 +89,13 @@ buildGoModule rec {
substituteInPlace Makefile \
--replace "\$(TINYGO)" "$(pwd)/build/tinygo" \
--replace "@\$(MD5SUM)" "md5sum" \
--replace "build/release/tinygo/bin" "$out/bin" \
--replace "build/release/" "$out/share/"
substituteInPlace builder/buildid.go \
--replace "OUT_PATH" "$out"
# TODO: Fix mingw and darwin
# Disable windows and darwin cross-compile tests
sed -i "/GOOS=windows/d" Makefile
@ -103,24 +113,34 @@ buildGoModule rec {
'';
preBuild = ''
export HOME=$TMPDIR
export GOCACHE=$TMPDIR/go-cache
export GOPATH=$TMPDIR/go
export PATH=$out/libexec/tinygo:$PATH
export HOME=$TMPDIR
'';
postBuild = ''
postBuild = let
tinygoForBuild = if (stdenv.buildPlatform.canExecute stdenv.hostPlatform)
then "build/tinygo"
else "${buildPackages.tinygo}/bin/tinygo";
in ''
# Move binary
mkdir -p build
mv $GOPATH/bin/tinygo build/tinygo
make gen-device
export TINYGOROOT=$(pwd)
finalRoot=$out/share/tinygo
for target in thumbv6m-unknown-unknown-eabi-cortex-m0 thumbv6m-unknown-unknown-eabi-cortex-m0plus thumbv7em-unknown-unknown-eabi-cortex-m4; do
mkdir -p $finalRoot/pkg/$target
for lib in compiler-rt picolibc; do
${tinygoForBuild} build-library -target=''${target#*eabi-} -o $finalRoot/pkg/$target/$lib $lib
done
done
'';
checkPhase = ''
runHook preCheck
make smoketest XTENSA=0
runHook postCheck
checkPhase = lib.optionalString (tinygoTests != [ ] && tinygoTests != null) ''
make ''${tinygoTests[@]} XTENSA=0 ${lib.optionalString stdenv.isDarwin "AVR=0"}
'';
installPhase = ''
@ -129,7 +149,6 @@ buildGoModule rec {
make build/release
wrapProgram $out/bin/tinygo \
--set TINYGOROOT $out/share/tinygo \
--prefix PATH : ${lib.makeBinPath [ go avrdude openocd avrgcc binaryen ]}:$out/libexec/tinygo
runHook postInstall
@ -142,6 +161,5 @@ buildGoModule rec {
description = "Go compiler for small places";
license = licenses.bsd3;
maintainers = with maintainers; [ Madouura muscaln ];
broken = stdenv.isDarwin;
};
}

View file

@ -21,6 +21,7 @@ base.withExtensions ({ all, ... }: with all; ([
gettext
gmp
iconv
imap
intl
ldap
mbstring
@ -49,4 +50,4 @@ base.withExtensions ({ all, ... }: with all; ([
xmlwriter
zip
zlib
] ++ lib.optionals (!stdenv.isDarwin) [ imap ]))
]))

View file

@ -21,6 +21,7 @@ base.withExtensions ({ all, ... }: with all; ([
gettext
gmp
iconv
imap
intl
ldap
mbstring
@ -49,4 +50,4 @@ base.withExtensions ({ all, ... }: with all; ([
xmlwriter
zip
zlib
] ++ lib.optionals (!stdenv.isDarwin) [ imap ]))
]))

View file

@ -1,4 +1,13 @@
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, udev, libcec_platform, libraspberrypi ? null }:
{ lib
, stdenv
, fetchFromGitHub
, cmake
, pkg-config
, udev
, libcec_platform
, withLibraspberrypi ? false
, libraspberrypi
}:
stdenv.mkDerivation rec {
pname = "libcec";
@ -11,17 +20,17 @@ stdenv.mkDerivation rec {
sha256 = "sha256-OWqCn7Z0KG8sLlfMWd0btJIFJs79ET3Y1AV/y/Kj2TU=";
};
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ udev libcec_platform ] ++
lib.optional (libraspberrypi != null) libraspberrypi;
cmakeFlags = [ "-DBUILD_SHARED_LIBS=1" ];
# Fix dlopen path
patchPhase = ''
postPatch = ''
substituteInPlace include/cecloader.h --replace "libcec.so" "$out/lib/libcec.so"
'';
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ udev libcec_platform ] ++
lib.optional withLibraspberrypi libraspberrypi;
cmakeFlags = [ "-DBUILD_SHARED_LIBS=1" ];
meta = with lib; {
description = "Allows you (with the right hardware) to control your device with your TV remote control using existing HDMI cabling";
homepage = "http://libcec.pulse-eight.com";

View file

@ -6,24 +6,26 @@
stdenv.mkDerivation rec {
pname = "nsync";
version = "1.24.0";
version = "1.25.0";
src = fetchFromGitHub {
owner = "google";
repo = pname;
rev = version;
sha256 = "sha256-jQJtlBDR6efBe1tFOUOZ6awaMTT33qM/GbvbwiWTZxw=";
sha256 = "sha256-bdnYrMnBnpnEKGuMlDLILfzgwfu/e5tyMdSDWqreyto=";
};
nativeBuildInputs = [ cmake ];
# Needed for case-insensitive filesystems like on macOS
# because a file named BUILD exists already.
cmakeBuildDir = "build_dir";
meta = {
homepage = "https://github.com/google/nsync";
description = "C library that exports various synchronization primitives";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ puffnfresh ];
# On macOS we get an error for some reason:
# > mkdir: cannot create directory 'build': File exists
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ puffnfresh Luflosi ];
platforms = lib.platforms.unix;
};
}

View file

@ -53,6 +53,8 @@ let
url = "https://github.com/protocolbuffers/protobuf/commit/a7324f88e92bc16b57f3683403b6c993bf68070b.patch";
sha256 = "sha256-SmwaUjOjjZulg/wgNmR/F5b8rhYA2wkKAjHIOxjcQdQ=";
})
] ++ lib.optionals stdenv.hostPlatform.isStatic [
./static-executables-have-no-rpath.patch
];
nativeBuildInputs = let

View file

@ -0,0 +1,18 @@
diff --git a/cmake/install.cmake b/cmake/install.cmake
index 26a55be8b..b6823c3f9 100644
--- a/cmake/install.cmake
+++ b/cmake/install.cmake
@@ -32,13 +32,6 @@ if (protobuf_BUILD_PROTOC_BINARIES)
install(TARGETS protoc EXPORT protobuf-targets
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc
BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc)
- if (UNIX AND NOT APPLE)
- set_property(TARGET protoc
- PROPERTY INSTALL_RPATH "$ORIGIN/../${CMAKE_INSTALL_LIBDIR}")
- elseif (APPLE)
- set_property(TARGET protoc
- PROPERTY INSTALL_RPATH "@loader_path/../lib")
- endif()
endif (protobuf_BUILD_PROTOC_BINARIES)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc ${CMAKE_CURRENT_BINARY_DIR}/protobuf-lite.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "simdjson";
version = "2.2.2";
version = "2.2.3";
src = fetchFromGitHub {
owner = "simdjson";
repo = "simdjson";
rev = "v${version}";
sha256 = "sha256-PU6yTA2FXHcuSwr6oIU+cP7uYxkgggnj3FV2LbkS69w=";
sha256 = "sha256-OAjPSTSQap2m2gsC3mTae7UZ3Bq4qjK2eShdVTZUzFM=";
};
nativeBuildInputs = [ cmake ];

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "aioesphomeapi";
version = "11.0.0";
version = "11.1.0";
format = "setuptools";
disabled = pythonOlder "3.9";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "esphome";
repo = pname;
rev = "refs/tags/v${version}";
sha256 = "sha256-HHVA/eH6Ucn1shQy6QzcxvHWRQqjv/OEgHgq0ITS23Q=";
sha256 = "sha256-jD/VAxehUvR98SpGQD04Qqrsr8k2L8SLw/1vd9zzku0=";
};
postPatch = ''

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "aiounifi";
version = "35";
version = "36";
disabled = pythonOlder "3.9";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "Kane610";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-mKAg6LNtHEmF223xIrZM7rSxE2+B4jUPCv0dCtHmHXc=";
hash = "sha256-ko3lfFitY6fFomh4dLSHdY6moeG2k11fmdcViT3IKGU=";
};
propagatedBuildInputs = [

View file

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "azure-mgmt-containerservice";
version = "20.3.0";
version = "20.4.0";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -19,7 +19,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
extension = "zip";
sha256 = "sha256-p2q1fzpPrwYKUAilPTGzRDlkT9OKqnjZVN2jslY/WSw=";
sha256 = "sha256-X2Pz7Rx5utwOfiG2wLbdloQF7wM9bF80J5EOaB4k6jQ=";
};
propagatedBuildInputs = [

View file

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "azure-mgmt-monitor";
version = "4.0.1";
version = "5.0.1";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -18,7 +18,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
extension = "zip";
hash = "sha256-rwUhKm9arvUW3EWAgv3+SdJYR54Hob2RmMDA6IjEpn4=";
hash = "sha256-U5OSFnOZV7/eXUEDU1TQBywrXjxwQ8qiEQJVFd3y57Q=";
};
propagatedBuildInputs = [

View file

@ -0,0 +1,31 @@
{ lib
, buildPythonPackage
, fetchPypi
, bleach
}:
buildPythonPackage rec {
pname = "bleach-allowlist";
version = "1.0.3";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-VuIghgeaDmoxAK6Z5NuvIOslhUhlmOsOmUAIoRQo2ps=";
};
propagatedBuildInputs = [
bleach
];
# No tests
doCheck = false;
pythonImportsCheck = [ "bleach_allowlist" ];
meta = with lib; {
description = "Curated lists of tags and attributes for sanitizing html";
homepage = "https://github.com/yourcelf/bleach-allowlist";
license = licenses.bsd2;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -1,11 +1,11 @@
{ buildPythonPackage, fetchFromGitHub, fetchpatch, lib, pythonOlder
, clang_7, python2
{ buildPythonPackage, fetchFromGitHub, lib, pythonOlder
, clang_12, python2, python
, graphviz, matplotlib, numpy, pandas, plotly, scipy, six
, withCuda ? false, cudatoolkit }:
buildPythonPackage rec {
pname = "catboost";
version = "0.24.4";
version = "1.0.5";
disabled = pythonOlder "3.4";
@ -13,26 +13,26 @@ buildPythonPackage rec {
owner = "catboost";
repo = "catboost";
rev = "v${version}";
sha256 = "sha256-pzmwEiKziB4ldnKgeCsP2HdnisX8sOkLssAzNfcSEx8=";
sha256 = "ILemeZUBI9jPb9G6F7QX/T1HaVhQ+g6y7YmsT6DFCJk=";
};
nativeBuildInputs = [ clang_7 python2 ];
nativeBuildInputs = [ clang_12 python2 ];
propagatedBuildInputs = [ graphviz matplotlib numpy pandas scipy plotly six ]
++ lib.optional withCuda [ cudatoolkit ];
patches = [
./nix-support.patch
(fetchpatch {
name = "format.patch";
url = "https://github.com/catboost/catboost/pull/1528/commits/a692ba42e5c0f62e5da82b2f6fccfa77deb3419c.patch";
sha256 = "sha256-fNGucHxsSDFRLk3hFH7rm+zzTdDpY9/QjRs8K+AzVvo=";
})
];
postPatch = ''
# substituteInPlace is too slow for these large files, and the target has lots of numbers in it that change often.
sed -e 's|\$(YMAKE_PYTHON3-.*)/python3|${python.interpreter}|' -i make/*.makefile
'';
preBuild = ''
cd catboost/python-package
'';
'';
setupPyBuildFlags = [ "--with-ymake=no" ];
CUDA_ROOT = lib.optional withCuda cudatoolkit;
enableParallelBuilding = true;

View file

@ -1,5 +1,5 @@
diff --git a/catboost/python-package/setup.py b/catboost/python-package/setup.py
index 17f1d8ff14..07da618cd1 100644
index fe9251a21f..86b880c5d0 100644
--- a/catboost/python-package/setup.py
+++ b/catboost/python-package/setup.py
@@ -80,7 +80,7 @@ class Helper(object):
@ -15,23 +15,23 @@ index 17f1d8ff14..07da618cd1 100644
def build_with_make(self, topsrc_dir, build_dir, catboost_ext, put_dir, verbose, dry_run):
logging.info('Buildling {} with gnu make'.format(catboost_ext))
- makefile = 'python{}.{}CLANG50-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
+ makefile = 'python{}.{}CLANG7-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
- makefile = 'python{}.{}CLANG11-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
+ makefile = 'python{}.{}CLANG12-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
make_cmd = [
'make', '-f', '../../make/' + makefile,
- 'CC=clang-5.0',
- 'CXX=clang++-5.0',
- 'CC=clang-11',
- 'CXX=clang++-11',
+ 'CC=clang',
+ 'CXX=clang++',
+ 'PYTHON=python2',
+ 'PYTHON=python{}'.format(python_version()[0]),
'BUILD_ROOT=' + build_dir,
'SOURCE_ROOT=' + topsrc_dir,
]
diff --git a/make/python2.CLANG7-LINUX-X86_64.makefile b/make/python2.CLANG7-LINUX-X86_64.makefile
index e54b7078e8..fb7b208af9 100644
--- a/make/python2.CLANG7-LINUX-X86_64.makefile
+++ b/make/python2.CLANG7-LINUX-X86_64.makefile
@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
diff --git a/make/python2.CLANG12-LINUX-X86_64.makefile b/make/python2.CLANG12-LINUX-X86_64.makefile
index b49a36fb3f..33996af995 100644
--- a/make/python2.CLANG12-LINUX-X86_64.makefile
+++ b/make/python2.CLANG12-LINUX-X86_64.makefile
@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
SOURCE_ROOT = $(shell pwd)
PYTHON = $(shell which python)
@ -43,8 +43,8 @@ index e54b7078e8..fb7b208af9 100644
-_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
-$(info _CC_VERSION = '$(_CC_VERSION)')
-
-ifneq '$(_CC_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CC_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
@ -56,20 +56,18 @@ index e54b7078e8..fb7b208af9 100644
-_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
-$(info _CXX_VERSION = '$(_CXX_VERSION)')
-
-ifneq '$(_CXX_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CXX_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
-
all\
::\
$(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
diff --git a/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile b/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile
index 2a22a79b25..522fb54a7c 100644
--- a/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile
+++ b/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile
@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
diff --git a/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile b/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile
index 82935b297e..093cc86532 100644
--- a/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile
+++ b/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile
@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
SOURCE_ROOT = $(shell pwd)
PYTHON = $(shell which python)
@ -81,8 +79,8 @@ index 2a22a79b25..522fb54a7c 100644
-_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
-$(info _CC_VERSION = '$(_CC_VERSION)')
-
-ifneq '$(_CC_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CC_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
@ -94,20 +92,18 @@ index 2a22a79b25..522fb54a7c 100644
-_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
-$(info _CXX_VERSION = '$(_CXX_VERSION)')
-
-ifneq '$(_CXX_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CXX_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
-
all\
::\
$(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
diff --git a/make/python3.CLANG7-LINUX-X86_64.makefile b/make/python3.CLANG7-LINUX-X86_64.makefile
index fee6750bcb..dc55908371 100644
--- a/make/python3.CLANG7-LINUX-X86_64.makefile
+++ b/make/python3.CLANG7-LINUX-X86_64.makefile
@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
diff --git a/make/python3.CLANG12-LINUX-X86_64.makefile b/make/python3.CLANG12-LINUX-X86_64.makefile
index 1c5d646ae4..6c091fbe17 100644
--- a/make/python3.CLANG12-LINUX-X86_64.makefile
+++ b/make/python3.CLANG12-LINUX-X86_64.makefile
@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
SOURCE_ROOT = $(shell pwd)
PYTHON = $(shell which python)
@ -119,8 +115,8 @@ index fee6750bcb..dc55908371 100644
-_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
-$(info _CC_VERSION = '$(_CC_VERSION)')
-
-ifneq '$(_CC_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CC_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
@ -132,20 +128,18 @@ index fee6750bcb..dc55908371 100644
-_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
-$(info _CXX_VERSION = '$(_CXX_VERSION)')
-
-ifneq '$(_CXX_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CXX_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
-
all\
::\
$(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
diff --git a/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile b/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile
index 5146830476..ff8535b03e 100644
--- a/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile
+++ b/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile
@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
diff --git a/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile b/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile
index fcdb75a719..4e1dbc3cd7 100644
--- a/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile
+++ b/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile
@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
SOURCE_ROOT = $(shell pwd)
PYTHON = $(shell which python)
@ -157,8 +151,8 @@ index 5146830476..ff8535b03e 100644
-_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
-$(info _CC_VERSION = '$(_CC_VERSION)')
-
-ifneq '$(_CC_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CC_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
@ -170,12 +164,10 @@ index 5146830476..ff8535b03e 100644
-_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
-$(info _CXX_VERSION = '$(_CXX_VERSION)')
-
-ifneq '$(_CXX_VERSION)' '7 0'
- $(error clang 7.0 is required)
-ifneq '$(_CXX_VERSION)' '12 0'
- $(error clang 12.0 is required)
-endif
-endif
-
-
all\
::\
$(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\

View file

@ -30,6 +30,10 @@ buildPythonPackage {
hash = "sha256-WBFsQuGnpqOiQW7VFfsk0t7qEBs1ScOChfQFpLmqTz4=";
};
postPatch = ''
sed -i 's/^protobuf.*/protobuf/' requirements.txt
'';
propagatedBuildInputs = [
coqpit
fsspec

View file

@ -0,0 +1,48 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, django
, six
, pytest-django
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "django-annoying";
version = "0.10.6";
src = fetchFromGitHub {
owner = "skorokithakis";
repo = "django-annoying";
rev = "v${version}";
sha256 = "sha256-M1zOLr1Vjf2U0xlW66Mpno+S+b4IKLklN+kYxRaj6cA=";
};
patches = [
(fetchpatch {
name = "django-4-compatibility.patch";
url = "https://github.com/skorokithakis/django-annoying/pull/101/commits/51b5bd7bc8bb7a410400667e00d0813603df32bd.patch";
sha256 = "sha256-gLRlAtIHHJ85I88af3C3y+ZT+nXrj2KrV7QgOuEqspk=";
})
];
propagatedBuildInputs = [
django
six
];
DJANGO_SETTINGS_MODULE = "tests.settings";
checkInputs = [
pytest-django
pytestCheckHook
];
meta = with lib; {
description = "A django application that tries to eliminate annoying things in the Django framework";
homepage = "https://skorokithakis.github.io/django-annoying/";
license = licenses.bsd3;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -0,0 +1,73 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, django
, six
, pytestCheckHook
, django-debug-toolbar
, django-extensions
, django-taggit
, django_tagging
, mock
, pytest-django
, selenium
, splinter
, sqlparse
, tenacity
, whitenoise
}:
buildPythonPackage rec {
pname = "django-autocomplete-light";
version = "3.9.4";
src = fetchFromGitHub {
owner = "yourlabs";
repo = "django-autocomplete-light";
rev = version;
sha256 = "sha256-YUiGN6q7ARM/rg7d+ykeDEYZDYjB+DHxMCmdme6QccU=";
};
propagatedBuildInputs = [
django
six
];
# Too many un-packaged dependencies
doCheck = false;
checkInputs = [
pytestCheckHook
django-debug-toolbar
django-extensions
django-taggit
django_tagging
mock
pytest-django
selenium
splinter
sqlparse
tenacity
whitenoise
# FIXME: not packaged
# django-generic-m2m
# django-gm2m
# django-querysetsequence
# pytest-splinter
# dango-nested-admin
# djhacker
];
# Taken from tox.ini
preCheck = "cd test_project";
pythonImportsCheck = [ "dal" ];
meta = with lib; {
description = "A fresh approach to autocomplete implementations, specially for Django";
homepage = "https://django-autocomplete-light.readthedocs.io";
license = licenses.bsd3;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -8,13 +8,13 @@
buildPythonPackage rec {
pname = "django-cors-headers";
version = "3.7.0";
version = "3.13.0";
src = fetchFromGitHub {
owner = "adamchainz";
repo = "django-cors-headers";
rev = version;
sha256 = "1wc8cs1gpg9v98bq5qwnd4pcv043za50wd63gwkm86lbvjxyxynz";
sha256 = "sha256-pIyf4poW8/slxj4PVvmXpuYp//v5w00yU0Vz6Jiy2yM=";
};
propagatedBuildInputs = [

View file

@ -0,0 +1,45 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, django
, pytestCheckHook
, pytest-django
}:
buildPythonPackage rec {
pname = "django-crispy-forms";
version = "1.14.0";
src = fetchFromGitHub {
owner = "django-crispy-forms";
repo = "django-crispy-forms";
rev = version;
sha256 = "sha256-NZ2lWxsQHc7Qc4HDoWgjJTZ/bJHmjpBf3q1LVLtzA+8=";
};
propagatedBuildInputs = [
django
];
# FIXME: RuntimeError: Model class source.crispy_forms.tests.forms.CrispyTestModel doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
doCheck = false;
checkInputs = [
pytest-django
pytestCheckHook
];
pytestFlagsArray = [
"--ds=crispy_forms.tests.test_settings"
"crispy_forms/tests/"
];
pythonImportsCheck = [ "crispy_forms" ];
meta = with lib; {
description = "The best way to have DRY Django forms.";
homepage = "https://django-crispy-forms.readthedocs.io/en/latest/";
license = licenses.mit;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -0,0 +1,32 @@
{ lib
, buildPythonPackage
, fetchPypi
, django
}:
buildPythonPackage rec {
pname = "django-hcaptcha";
version = "0.2.0";
src = fetchPypi {
inherit version;
pname = "django-hCaptcha";
sha256 = "sha256-slGerwzJeGWscvglMBEixc9h4eSFLWiVmUFgIirLbBo=";
};
propagatedBuildInputs = [
django
];
# No tests
doCheck = false;
pythonImportsCheck = [ "hcaptcha" ];
meta = with lib; {
description = "Django hCaptcha provides a simple way to protect your django forms using hCaptcha";
homepage = "https://github.com/AndrejZbin/django-hcaptcha";
license = licenses.bsd3;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -0,0 +1,54 @@
{ lib
, buildPythonPackage
, fetchpatch
, fetchFromGitHub
, python
, django
, nodejs
, js2py
, six
}:
buildPythonPackage rec {
pname = "django-js-reverse";
# Support for Django 4.0 not yet released
version = "unstable-2022-09-16";
src = fetchFromGitHub {
owner = "ierror";
repo = "django-js-reverse";
rev = "7cab78c4531780ab4b32033d5104ccd5be1a246a";
sha256 = "sha256-oA4R5MciDMcSsb+GAgWB5jhj+nl7E8t69u0qlx2G93E=";
};
patches = [
(fetchpatch {
name = "fix-requires_system_checks-list-or-tuple";
url = "https://github.com/ierror/django-js-reverse/commit/1477ba44b62c419d12ebec86e56973f1ae56f712.patch";
sha256 = "sha256-xUtCziewVhnCOaNWddJBH4/Vvhwjjq/wcQDvh2YzWMQ=";
})
];
propagatedBuildInputs = [
django
];
checkInputs = [
nodejs
js2py
six
];
checkPhase = ''
${python.interpreter} django_js_reverse/tests/unit_tests.py
'';
pythonImportsCheck = [ "django_js_reverse" ];
meta = with lib; {
description = "Javascript url handling for Django that doesn't hurt";
homepage = "https://django-js-reverse.readthedocs.io/en/latest/";
license = licenses.mit;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonRelaxDepsHook
# propagates
, django
@ -39,6 +40,11 @@ buildPythonPackage rec {
requests
];
nativeBuildInputs = [ pythonRelaxDepsHook ];
pythonRelaxDeps = [
"django"
];
DJANGO_SETTINGS_MODULE = "tests.settings";
checkInputs = [

View file

@ -0,0 +1,38 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, django
, pytestCheckHook
, pytest-django
}:
buildPythonPackage rec {
pname = "django-scopes";
version = "1.2.0.post1";
src = fetchFromGitHub {
owner = "raphaelm";
repo = "django-scopes";
# No 1.2.0.post1 tag, see https://github.com/raphaelm/django-scopes/issues/27
rev = "0b93cdb6a8335cb02a8ea7296511358ba841d137";
sha256 = "sha256-djptJRkW1pfVbxhhs58fJA4d8dKZuvYRy01Aa3Btr+k=";
};
propagatedBuildInputs = [
django
];
checkInputs = [
pytest-django
pytestCheckHook
];
pythonImportsCheck = [ "django_scopes" ];
meta = with lib; {
description = "Safely separate multiple tenants in a Django database";
homepage = "https://github.com/raphaelm/django-scopes";
license = licenses.asl20;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -5,17 +5,21 @@
, fetchPypi
, pyjwt
, python-jose
, pythonOlder
, setuptools-scm
}:
buildPythonPackage rec {
pname = "djangorestframework-simplejwt";
version = "5.2.0";
version = "5.2.1";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
pname = "djangorestframework_simplejwt";
inherit version;
sha256 = "sha256-pgsJr7J9ka0deskEzGMr1Szs6tjzifD6FTLOsPt1enQ=";
hash = "sha256-dhOHTDIqP24zDMEY+fAKPblX/qf4477YG6RRhTzR29U=";
};
nativeBuildInputs = [

View file

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, coreapi
, django
, django-guardian
@ -24,6 +25,15 @@ buildPythonPackage rec {
sha256 = "sha256-XmX6DZBZYzVCe72GERplAWt5jIjV/cYercZGb0pYjoc=";
};
patches = [
# See https://github.com/encode/django-rest-framework/issues/8608
# and https://github.com/encode/django-rest-framework/pull/8591/
(fetchpatch {
name = "fix-django-collect-static.patch";
url = "https://github.com/encode/django-rest-framework/pull/8591/commits/65943bb58deba6ee1a89fe4504f270ab1806fce6.patch";
sha256 = "sha256-wI7EzX9tlyyXAPrJEr+/2uTg7dVY98IKgh7Cc/NZo5k=";
})
];
propagatedBuildInputs = [
django

View file

@ -0,0 +1,37 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, django
, djangorestframework
, pytestCheckHook
, pytest-django
}:
buildPythonPackage rec {
pname = "drf-writable-nested";
version = "0.6.4";
src = fetchFromGitHub {
owner = "beda-software";
repo = "drf-writable-nested";
rev = "v${version}";
sha256 = "sha256-RybtXZ5HipQHaA2RV6TOKIpl6aI9V49mqXDhCH6lg58=";
};
propagatedBuildInputs = [
django
djangorestframework
];
checkInputs = [
pytest-django
pytestCheckHook
];
meta = with lib; {
description = "Writable nested model serializer for Django REST Framework";
homepage = "https://github.com/beda-software/drf-writable-nested";
license = licenses.bsd2;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, nose
, numpy
, pythonOlder
@ -22,6 +23,15 @@ buildPythonPackage rec {
fetchSubmodules = true;
};
patches = [
# Fix for test_interface_bb.py tests
(fetchpatch {
name = "test_interface_bb_use_nparray.patch";
url = "https://github.com/embotech/ecos-python/commit/4440dcb7ddbd92217bc83d8916b72b61537dffbf.patch";
hash = "sha256-pcTPviK916jzCLllRhopbC9wDHv+aS6GmV/92sUwzHc=";
})
];
propagatedBuildInputs = [
numpy
scipy

View file

@ -0,0 +1,61 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonRelaxDepsHook
, html-text
, jstyleson
, lxml
, mf2py
, pyrdfa3
, rdflib
, six
, w3lib
, pytestCheckHook
, mock
}:
buildPythonPackage rec {
pname = "extruct";
version = "0.13.0";
src = fetchFromGitHub {
owner = "scrapinghub";
repo = "extruct";
rev = "v${version}";
sha256 = "sha256-hf6b/tZLggHzgFmZ6aldZIBd17Ni7vCTIIzhNlyjvxw=";
};
nativeBuildInputs = [
pythonRelaxDepsHook
];
# rdflib-jsonld functionality is part of rdblib from version 6 onwards
pythonRemoveDeps = [
"rdflib-jsonld"
];
propagatedBuildInputs = [
html-text
jstyleson
lxml
mf2py
pyrdfa3
rdflib
six
w3lib
];
checkInputs = [
mock
pytestCheckHook
];
pythonImportsCheck = [ "extruct" ];
meta = with lib; {
description = "Extract embedded metadata from HTML markup";
homepage = "https://github.com/scrapinghub/extruct";
license = licenses.bsd3;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -0,0 +1,37 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, lxml
, six
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "html-text";
version = "0.5.2";
src = fetchFromGitHub {
owner = "TeamHG-Memex";
repo = "html-text";
rev = version;
sha256 = "sha256-jw/hpz0QfcgP5OEJcmre0h1OzOfpPtaROxHm+YUqces=";
};
propagatedBuildInputs = [
lxml
];
checkInputs = [
pytestCheckHook
six
];
pythonImportsCheck = [ "html_text" ];
meta = with lib; {
description = "Extract text from HTML";
homepage = "https://github.com/TeamHG-Memex/html-text";
license = licenses.mit;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "huawei-lte-api";
version = "1.6.1";
version = "1.6.2";
disabled = pythonOlder "3.4";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "Salamek";
repo = "huawei-lte-api";
rev = "refs/tags/${version}";
hash = "sha256-ZjSD+/okbFF14YQgCzzH1+FDS+MZQZb1JUINOKdSshs=";
hash = "sha256-BZn9iBMOd1vyukxiLd8GPKrq/H+gqQtSYvIgniWJLNM=";
};
postPatch = ''

View file

@ -0,0 +1,51 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, home-assistant-bluetooth
, poetry-core
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "ibeacon-ble";
version = "0.7.3";
format = "pyproject";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "Bluetooth-Devices";
repo = pname;
rev = "v${version}";
hash = "sha256-+DPbIIarEAaH1bNzo+FvLp0QpNUPhaJ8nPLdKJKfz0k=";
};
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
home-assistant-bluetooth
];
checkInputs = [
pytestCheckHook
];
postPatch = ''
substituteInPlace pyproject.toml \
--replace " --cov=ibeacon_ble --cov-report=term-missing:skip-covered" ""
'';
pythonImportsCheck = [
"ibeacon_ble"
];
meta = with lib; {
description = "Library for iBeacon BLE devices";
homepage = "https://github.com/Bluetooth-Devices/ibeacon-ble";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}

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