Merge branch 'master' into staging-next

This commit is contained in:
Jan Tojnar 2021-03-18 13:35:59 +01:00
commit 0136206b12
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4
206 changed files with 3936 additions and 1371 deletions

View File

@ -2889,6 +2889,12 @@
githubId = 3787281; githubId = 3787281;
name = "Erik Rybakken"; name = "Erik Rybakken";
}; };
erin = {
name = "Erin van der Veen";
email = "erin@erinvanderveen.nl";
github = "ErinvanderVeen";
githubId = 10973664;
};
erosennin = { erosennin = {
email = "ag@sologoc.com"; email = "ag@sologoc.com";
github = "erosennin"; github = "erosennin";
@ -6987,6 +6993,12 @@
githubId = 3359345; githubId = 3359345;
name = "obadz"; name = "obadz";
}; };
obsidian-systems-maintainence = {
name = "Obsidian Systems Maintenance";
email = "maintainer@obsidian.systems";
github = "obsidian-systems-maintenance";
githubId = 80847921;
};
odi = { odi = {
email = "oliver.dunkl@gmail.com"; email = "oliver.dunkl@gmail.com";
github = "odi"; github = "odi";

View File

@ -514,7 +514,7 @@ def update_plugins(editor: Editor):
) )
for plugin_line in args.add_plugins: for plugin_line in args.add_plugins:
rewrite_input(args.input_fil, editor.deprecated, append=(plugin_line + "\n",)) rewrite_input(args.input_file, editor.deprecated, append=(plugin_line + "\n",))
update() update()
plugin = fetch_plugin_from_pluginline(plugin_line) plugin = fetch_plugin_from_pluginline(plugin_line)
commit( commit(

View File

@ -288,7 +288,7 @@ foreach my $u (values %usersOut) {
push @shadowNew, join(":", $u->{name}, $hashedPassword, "1::::::") . "\n"; push @shadowNew, join(":", $u->{name}, $hashedPassword, "1::::::") . "\n";
} }
updateFile("/etc/shadow", \@shadowNew, 0600); updateFile("/etc/shadow", \@shadowNew, 0640);
{ {
my $uid = getpwnam "root"; my $uid = getpwnam "root";
my $gid = getgrnam "shadow"; my $gid = getgrnam "shadow";

View File

@ -882,6 +882,7 @@
./services/web-apps/atlassian/confluence.nix ./services/web-apps/atlassian/confluence.nix
./services/web-apps/atlassian/crowd.nix ./services/web-apps/atlassian/crowd.nix
./services/web-apps/atlassian/jira.nix ./services/web-apps/atlassian/jira.nix
./services/web-apps/bookstack.nix
./services/web-apps/convos.nix ./services/web-apps/convos.nix
./services/web-apps/cryptpad.nix ./services/web-apps/cryptpad.nix
./services/web-apps/documize.nix ./services/web-apps/documize.nix

View File

@ -90,7 +90,7 @@ in {
rxvt-unicode # For backward compatibility (old default terminal) rxvt-unicode # For backward compatibility (old default terminal)
]; ];
defaultText = literalExample '' defaultText = literalExample ''
with pkgs; [ swaylock swayidle xwayland rxvt-unicode dmenu ]; with pkgs; [ swaylock swayidle rxvt-unicode alacritty dmenu ];
''; '';
example = literalExample '' example = literalExample ''
with pkgs; [ with pkgs; [

View File

@ -30,12 +30,49 @@ in
Whether to run the exporter as the local 'postgres' super user. Whether to run the exporter as the local 'postgres' super user.
''; '';
}; };
# TODO perhaps LoadCredential would be more appropriate
environmentFile = mkOption {
type = types.nullOr types.path;
default = null;
example = "/root/prometheus-postgres-exporter.env";
description = ''
Environment file as defined in <citerefentry>
<refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum>
</citerefentry>.
Secrets may be passed to the service without adding them to the
world-readable Nix store, by specifying placeholder variables as
the option value in Nix and setting these variables accordingly in the
environment file.
Environment variables from this file will be interpolated into the
config file using envsubst with this syntax:
<literal>$ENVIRONMENT ''${VARIABLE}</literal>
The main use is to set the DATA_SOURCE_NAME that contains the
postgres password
note that contents from this file will override dataSourceName
if you have set it from nix.
<programlisting>
# Content of the environment file
DATA_SOURCE_NAME=postgresql://username:password@localhost:5432/postgres?sslmode=disable
</programlisting>
Note that this file needs to be available on the host on which
this exporter is running.
'';
};
}; };
serviceOpts = { serviceOpts = {
environment.DATA_SOURCE_NAME = cfg.dataSourceName; environment.DATA_SOURCE_NAME = cfg.dataSourceName;
serviceConfig = { serviceConfig = {
DynamicUser = false; DynamicUser = false;
User = mkIf cfg.runAsLocalSuperUser (mkForce "postgres"); User = mkIf cfg.runAsLocalSuperUser (mkForce "postgres");
EnvironmentFile = mkIf (cfg.environmentFile != null) [ cfg.environmentFile ];
ExecStart = '' ExecStart = ''
${pkgs.prometheus-postgres-exporter}/bin/postgres_exporter \ ${pkgs.prometheus-postgres-exporter}/bin/postgres_exporter \
--web.listen-address ${cfg.listenAddress}:${toString cfg.port} \ --web.listen-address ${cfg.listenAddress}:${toString cfg.port} \

View File

@ -0,0 +1,365 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.bookstack;
bookstack = pkgs.bookstack.override {
dataDir = cfg.dataDir;
};
db = cfg.database;
mail = cfg.mail;
user = cfg.user;
group = cfg.group;
# shell script for local administration
artisan = pkgs.writeScriptBin "bookstack" ''
#! ${pkgs.runtimeShell}
cd ${bookstack}
sudo=exec
if [[ "$USER" != ${user} ]]; then
sudo='exec /run/wrappers/bin/sudo -u ${user}'
fi
$sudo ${pkgs.php}/bin/php artisan $*
'';
in {
options.services.bookstack = {
enable = mkEnableOption "BookStack";
user = mkOption {
default = "bookstack";
description = "User bookstack runs as.";
type = types.str;
};
group = mkOption {
default = "bookstack";
description = "Group bookstack runs as.";
type = types.str;
};
appKeyFile = mkOption {
description = ''
A file containing the AppKey.
Used for encryption where needed. Can be generated with <code>head -c 32 /dev/urandom| base64</code> and must be prefixed with <literal>base64:</literal>.
'';
example = "/run/keys/bookstack-appkey";
type = types.path;
};
appURL = mkOption {
description = ''
The root URL that you want to host BookStack on. All URLs in BookStack will be generated using this value.
If you change this in the future you may need to run a command to update stored URLs in the database. Command example: <code>php artisan bookstack:update-url https://old.example.com https://new.example.com</code>
'';
example = "https://example.com";
type = types.str;
};
cacheDir = mkOption {
description = "BookStack cache directory";
default = "/var/cache/bookstack";
type = types.path;
};
dataDir = mkOption {
description = "BookStack data directory";
default = "/var/lib/bookstack";
type = types.path;
};
database = {
host = mkOption {
type = types.str;
default = "localhost";
description = "Database host address.";
};
port = mkOption {
type = types.port;
default = 3306;
description = "Database host port.";
};
name = mkOption {
type = types.str;
default = "bookstack";
description = "Database name.";
};
user = mkOption {
type = types.str;
default = user;
defaultText = "\${user}";
description = "Database username.";
};
passwordFile = mkOption {
type = with types; nullOr path;
default = null;
example = "/run/keys/bookstack-dbpassword";
description = ''
A file containing the password corresponding to
<option>database.user</option>.
'';
};
createLocally = mkOption {
type = types.bool;
default = false;
description = "Create the database and database user locally.";
};
};
mail = {
driver = mkOption {
type = types.enum [ "smtp" "sendmail" ];
default = "smtp";
description = "Mail driver to use.";
};
host = mkOption {
type = types.str;
default = "localhost";
description = "Mail host address.";
};
port = mkOption {
type = types.port;
default = 1025;
description = "Mail host port.";
};
fromName = mkOption {
type = types.str;
default = "BookStack";
description = "Mail \"from\" name.";
};
from = mkOption {
type = types.str;
default = "mail@bookstackapp.com";
description = "Mail \"from\" email.";
};
user = mkOption {
type = with types; nullOr str;
default = null;
example = "bookstack";
description = "Mail username.";
};
passwordFile = mkOption {
type = with types; nullOr path;
default = null;
example = "/run/keys/bookstack-mailpassword";
description = ''
A file containing the password corresponding to
<option>mail.user</option>.
'';
};
encryption = mkOption {
type = with types; nullOr (enum [ "tls" ]);
default = null;
description = "SMTP encryption mechanism to use.";
};
};
maxUploadSize = mkOption {
type = types.str;
default = "18M";
example = "1G";
description = "The maximum size for uploads (e.g. images).";
};
poolConfig = mkOption {
type = with types; attrsOf (oneOf [ str int bool ]);
default = {
"pm" = "dynamic";
"pm.max_children" = 32;
"pm.start_servers" = 2;
"pm.min_spare_servers" = 2;
"pm.max_spare_servers" = 4;
"pm.max_requests" = 500;
};
description = ''
Options for the bookstack PHP pool. See the documentation on <literal>php-fpm.conf</literal>
for details on configuration directives.
'';
};
nginx = mkOption {
type = types.submodule (
recursiveUpdate
(import ../web-servers/nginx/vhost-options.nix { inherit config lib; }) {}
);
default = {};
example = {
serverAliases = [
"bookstack.\${config.networking.domain}"
];
# To enable encryption and let let's encrypt take care of certificate
forceSSL = true;
enableACME = true;
};
description = ''
With this option, you can customize the nginx virtualHost settings.
'';
};
extraConfig = mkOption {
type = types.nullOr types.lines;
default = null;
example = ''
ALLOWED_IFRAME_HOSTS="https://example.com"
WKHTMLTOPDF=/home/user/bins/wkhtmltopdf
'';
description = ''
Lines to be appended verbatim to the BookStack configuration.
Refer to <link xlink:href="https://www.bookstackapp.com/docs/"/> for details on supported values.
'';
};
};
config = mkIf cfg.enable {
assertions = [
{ assertion = db.createLocally -> db.user == user;
message = "services.bookstack.database.user must be set to ${user} if services.mediawiki.database.createLocally is set true.";
}
{ assertion = db.createLocally -> db.passwordFile == null;
message = "services.bookstack.database.passwordFile cannot be specified if services.bookstack.database.createLocally is set to true.";
}
];
environment.systemPackages = [ artisan ];
services.mysql = mkIf db.createLocally {
enable = true;
package = mkDefault pkgs.mariadb;
ensureDatabases = [ db.name ];
ensureUsers = [
{ name = db.user;
ensurePermissions = { "${db.name}.*" = "ALL PRIVILEGES"; };
}
];
};
services.phpfpm.pools.bookstack = {
inherit user;
inherit group;
phpOptions = ''
log_errors = on
post_max_size = ${cfg.maxUploadSize}
upload_max_filesize = ${cfg.maxUploadSize}
'';
settings = {
"listen.mode" = "0660";
"listen.owner" = user;
"listen.group" = group;
} // cfg.poolConfig;
};
services.nginx = {
enable = mkDefault true;
virtualHosts.bookstack = mkMerge [ cfg.nginx {
root = mkForce "${bookstack}/public";
extraConfig = optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "fastcgi_param HTTPS on;";
locations = {
"/" = {
index = "index.php";
extraConfig = ''try_files $uri $uri/ /index.php?$query_string;'';
};
"~ \.php$" = {
extraConfig = ''
try_files $uri $uri/ /index.php?$query_string;
include ${pkgs.nginx}/conf/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param REDIRECT_STATUS 200;
fastcgi_pass unix:${config.services.phpfpm.pools."bookstack".socket};
${optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "fastcgi_param HTTPS on;"}
'';
};
"~ \.(js|css|gif|png|ico|jpg|jpeg)$" = {
extraConfig = "expires 365d;";
};
};
}];
};
systemd.services.bookstack-setup = {
description = "Preperation tasks for BookStack";
before = [ "phpfpm-bookstack.service" ];
after = optional db.createLocally "mysql.service";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "oneshot";
User = user;
WorkingDirectory = "${bookstack}";
};
script = ''
# create .env file
echo "
APP_KEY=base64:$(head -n1 ${cfg.appKeyFile})
APP_URL=${cfg.appURL}
DB_HOST=${db.host}
DB_PORT=${toString db.port}
DB_DATABASE=${db.name}
DB_USERNAME=${db.user}
MAIL_DRIVER=${mail.driver}
MAIL_FROM_NAME=\"${mail.fromName}\"
MAIL_FROM=${mail.from}
MAIL_HOST=${mail.host}
MAIL_PORT=${toString mail.port}
${optionalString (mail.user != null) "MAIL_USERNAME=${mail.user};"}
${optionalString (mail.encryption != null) "MAIL_ENCRYPTION=${mail.encryption};"}
${optionalString (db.passwordFile != null) "DB_PASSWORD=$(head -n1 ${db.passwordFile})"}
${optionalString (mail.passwordFile != null) "MAIL_PASSWORD=$(head -n1 ${mail.passwordFile})"}
APP_SERVICES_CACHE=${cfg.cacheDir}/services.php
APP_PACKAGES_CACHE=${cfg.cacheDir}/packages.php
APP_CONFIG_CACHE=${cfg.cacheDir}/config.php
APP_ROUTES_CACHE=${cfg.cacheDir}/routes-v7.php
APP_EVENTS_CACHE=${cfg.cacheDir}/events.php
${optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "SESSION_SECURE_COOKIE=true"}
${toString cfg.extraConfig}
" > "${cfg.dataDir}/.env"
# set permissions
chmod 700 "${cfg.dataDir}/.env"
# migrate db
${pkgs.php}/bin/php artisan migrate --force
# create caches
${pkgs.php}/bin/php artisan config:cache
${pkgs.php}/bin/php artisan route:cache
${pkgs.php}/bin/php artisan view:cache
'';
};
systemd.tmpfiles.rules = [
"d ${cfg.cacheDir} 0700 ${user} ${group} - -"
"d ${cfg.dataDir} 0710 ${user} ${group} - -"
"d ${cfg.dataDir}/public 0750 ${user} ${group} - -"
"d ${cfg.dataDir}/public/uploads 0750 ${user} ${group} - -"
"d ${cfg.dataDir}/storage 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/app 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/fonts 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/framework 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/framework/cache 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/framework/sessions 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/framework/views 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/logs 0700 ${user} ${group} - -"
"d ${cfg.dataDir}/storage/uploads 0700 ${user} ${group} - -"
];
users = {
users = mkIf (user == "bookstack") {
bookstack = {
inherit group;
isSystemUser = true;
};
"${config.services.nginx.user}".extraGroups = [ group ];
};
groups = mkIf (group == "bookstack") {
bookstack = {};
};
};
};
meta.maintainers = with maintainers; [ ymarkus ];
}

View File

@ -182,7 +182,18 @@ in rec {
# upstream unit. # upstream unit.
for i in ${toString (mapAttrsToList (n: v: v.unit) units)}; do for i in ${toString (mapAttrsToList (n: v: v.unit) units)}; do
fn=$(basename $i/*) fn=$(basename $i/*)
if [ -e $out/$fn ]; then
case $fn in
# if file name is a template specialization, use the template's name
*@?*.service)
# remove @foo.service and replace it with @.service
ofn="''${fn%@*.service}@.service"
;;
*)
ofn="$fn"
esac
if [ -e $out/$ofn ]; then
if [ "$(readlink -f $i/$fn)" = /dev/null ]; then if [ "$(readlink -f $i/$fn)" = /dev/null ]; then
ln -sfn /dev/null $out/$fn ln -sfn /dev/null $out/$fn
else else

View File

@ -0,0 +1,41 @@
import ./make-test-python.nix {
name = "systemd-template-override";
machine = { pkgs, lib, ... }: let
touchTmp = pkgs.writeTextFile {
name = "touch-tmp@.service";
text = ''
[Service]
Type=oneshot
ExecStart=${pkgs.coreutils}/bin/touch /tmp/%I
'';
destination = "/etc/systemd/system/touch-tmp@.service";
};
in {
systemd.packages = [ touchTmp ];
systemd.services."touch-tmp@forbidden" = {
serviceConfig.ExecStart = [ "" ''
${pkgs.coreutils}/bin/true
''];
};
systemd.services."touch-tmp@intercept" = {
serviceConfig.ExecStart = [ "" ''
${pkgs.coreutils}/bin/touch /tmp/renamed
''];
};
};
testScript = ''
machine.wait_for_unit("default.target")
machine.succeed("systemctl start touch-tmp@normal")
machine.succeed("systemctl start touch-tmp@forbbidden")
machine.succeed("systemctl start touch-tmp@intercept")
machine.succeed("[ -e /tmp/normal ]")
machine.succeed("[ ! -e /tmp/forbidden ]")
machine.succeed("[ -e /tmp/renamed ]")
'';
}

View File

@ -11,14 +11,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "callaudiod"; pname = "callaudiod";
version = "0.0.4"; version = "0.1.0";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "gitlab.com"; domain = "gitlab.com";
owner = "mobian1"; owner = "mobian1";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "07k7xp5a9c4d4lq7amaj6cg6b3gsd77x9wvf7nzcf4vpaph4yiyj"; sha256 = "087589z45xvldn2m1g79y0xbwzylwkjmfk83s5xjixyq0wqmfppd";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
let let
pname = "plexamp"; pname = "plexamp";
version = "3.4.3"; version = "3.4.4";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage"; url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage";
name="${pname}-${version}.AppImage"; name="${pname}-${version}.AppImage";
sha256 = "1rzhrc5yr5f6bxydgmcjwrg85vkbkn6lqj72512lyhq5gg7zmm1w"; sha256 = "1iz6qi12ljafb49l73rba5rwi5sdbd8ck5h2r6jiy260lgr2iiyk";
}; };
appimageContents = appimageTools.extractType2 { appimageContents = appimageTools.extractType2 {
@ -32,7 +32,7 @@ in appimageTools.wrapType2 {
meta = with lib; { meta = with lib; {
description = "A beautiful Plex music player for audiophiles, curators, and hipsters"; description = "A beautiful Plex music player for audiophiles, curators, and hipsters";
homepage = "https://plexamp.com/"; homepage = "https://plexamp.com/";
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/25"; changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/26";
license = licenses.unfree; license = licenses.unfree;
maintainers = with maintainers; [ killercup synthetica ]; maintainers = with maintainers; [ killercup synthetica ];
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" ];

View File

@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
} }
else else
releasePath releasePath
else throw "Platform is not supported by Renoise"; else throw "Platform is not supported. Use instalation native to your platform https://www.renoise.com/";
buildInputs = [ alsaLib libjack2 libX11 libXcursor libXext libXrandr ]; buildInputs = [ alsaLib libjack2 libX11 libXcursor libXext libXrandr ];
@ -47,6 +47,16 @@ stdenv.mkDerivation rec {
mkdir $out/bin mkdir $out/bin
ln -s $out/renoise $out/bin/renoise ln -s $out/renoise $out/bin/renoise
# Desktop item
mkdir -p $out/share/applications
cp -r Installer/renoise.desktop $out/share/applications/renoise.desktop
# Desktop item icons
mkdir -p $out/share/icons/hicolor/{48x48,64x64,128x128}/apps
cp Installer/renoise-48.png $out/share/icons/hicolor/48x48/apps/renoise.png
cp Installer/renoise-64.png $out/share/icons/hicolor/64x64/apps/renoise.png
cp Installer/renoise-128.png $out/share/icons/hicolor/128x128/apps/renoise.png
''; '';
postFixup = '' postFixup = ''
@ -61,6 +71,9 @@ stdenv.mkDerivation rec {
--set-rpath $out/lib \ --set-rpath $out/lib \
$path $path
done done
substituteInPlace $out/share/applications/renoise.desktop \
--replace Exec=renoise Exec=$out/bin/renoise
''; '';
meta = { meta = {

View File

@ -35,13 +35,13 @@
mkDerivation rec { mkDerivation rec {
pname = "strawberry"; pname = "strawberry";
version = "0.8.5"; version = "0.9.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jonaski"; owner = "jonaski";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-+ZQ80J94Teqt4Gy6fw/pS7FwILK/TPehtJDy72Bdy1E="; sha256 = "sha256-1aXHMvjLK5WiE0mut/a3ynuMfNHgPbUzAZdmaVJBDXQ=";
}; };
buildInputs = [ buildInputs = [

View File

@ -4,13 +4,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "surge"; pname = "surge";
version = "1.7.1"; version = "1.8.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "surge-synthesizer"; owner = "surge-synthesizer";
repo = pname; repo = pname;
rev = "release_${version}"; rev = "release_${version}";
sha256 = "1b3ccc78vrpzy18w7070zfa250dnd1bww147xxcnj457vd6n065s"; sha256 = "0lla860g7zgn9n1zgy14g4j72d5n5y7isyxz2w5xy2fzdpdg24ql";
leaveDotGit = true; # for SURGE_VERSION leaveDotGit = true; # for SURGE_VERSION
fetchSubmodules = true; fetchSubmodules = true;
}; };
@ -20,9 +20,10 @@ stdenv.mkDerivation rec {
postPatch = '' postPatch = ''
substituteInPlace src/common/SurgeStorage.cpp --replace "/usr/share/Surge" "$out/share/surge" substituteInPlace src/common/SurgeStorage.cpp --replace "/usr/share/Surge" "$out/share/surge"
substituteInPlace src/common/gui/PopupEditorDialog.cpp --replace '"zenity' '"${zenity}/bin/zenity'
substituteInPlace src/linux/UserInteractionsLinux.cpp --replace '"zenity' '"${zenity}/bin/zenity' substituteInPlace src/linux/UserInteractionsLinux.cpp --replace '"zenity' '"${zenity}/bin/zenity'
substituteInPlace vstgui.surge/vstgui/lib/platform/linux/x11fileselector.cpp --replace /usr/bin/zenity ${zenity}/bin/zenity substituteInPlace vstgui.surge/vstgui/lib/platform/linux/x11fileselector.cpp --replace /usr/bin/zenity ${zenity}/bin/zenity
patchShebangs scripts/linux/emit-vector-piggy
patchShebangs scripts/linux/generate-lv2-ttl
''; '';
installPhase = '' installPhase = ''

View File

@ -2,12 +2,12 @@
let let
pname = "ledger-live-desktop"; pname = "ledger-live-desktop";
version = "2.23.0"; version = "2.24.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage"; url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
sha256 = "0id9zbpfq3knv8qwkhplbl9pwrvdkn212pafwh4vpjbbp4yimhq5"; sha256 = "1xdqj825vwh3kg35v7568zr1jhvldb4wcazzgzcaawkr4qzfdb2n";
}; };
appimageContents = appimageTools.extractType2 { appimageContents = appimageTools.extractType2 {

View File

@ -337,7 +337,7 @@ in
name = "mps-${version}"; name = "mps-${version}";
version = "2020.3.1"; /* updated by script */ version = "2020.3.1"; /* updated by script */
description = "Create your own domain-specific language"; description = "Create your own domain-specific language";
license = lib.licenses.unfree; license = lib.licenses.asl20;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/mps/2020.3/MPS-${version}.tar.gz"; url = "https://download.jetbrains.com/mps/2020.3/MPS-${version}.tar.gz";
sha256 = "0qvl724mm53rxfhafl6561rhpwppcadmwr9sh0hpsfgsprh2xznv"; /* updated by script */ sha256 = "0qvl724mm53rxfhafl6561rhpwppcadmwr9sh0hpsfgsprh2xznv"; /* updated by script */

View File

@ -1,5 +1,5 @@
#!/usr/bin/env nix-shell #!/usr/bin/env nix-shell
#!nix-shell -i perl -p perl perlPackages.LWPProtocolhttps perlPackages.FileSlurp #!nix-shell -i perl -p perl perlPackages.LWPProtocolHttps perlPackages.FileSlurp
use strict; use strict;
use List::Util qw(reduce); use List::Util qw(reduce);

View File

@ -1,5 +1,5 @@
{ stdenv, lib, makeDesktopItem { stdenv, lib, makeDesktopItem
, unzip, libsecret, libXScrnSaver, wrapGAppsHook , unzip, libsecret, libXScrnSaver, libxshmfence, wrapGAppsHook
, gtk2, atomEnv, at-spi2-atk, autoPatchelfHook , gtk2, atomEnv, at-spi2-atk, autoPatchelfHook
, systemd, fontconfig, libdbusmenu , systemd, fontconfig, libdbusmenu
@ -60,7 +60,7 @@ in
''; '';
}; };
buildInputs = [ libsecret libXScrnSaver ] buildInputs = [ libsecret libXScrnSaver libxshmfence ]
++ lib.optionals (!stdenv.isDarwin) ([ gtk2 at-spi2-atk wrapGAppsHook ] ++ atomEnv.packages); ++ lib.optionals (!stdenv.isDarwin) ([ gtk2 at-spi2-atk wrapGAppsHook ] ++ atomEnv.packages);
runtimeDependencies = lib.optional (stdenv.isLinux) [ (lib.getLib systemd) fontconfig.lib libdbusmenu ]; runtimeDependencies = lib.optional (stdenv.isLinux) [ (lib.getLib systemd) fontconfig.lib libdbusmenu ];

View File

@ -21,13 +21,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "fondo"; pname = "fondo";
version = "1.5.1"; version = "1.5.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "calo001"; owner = "calo001";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-eGHgZm9Q6JnY6OQNAyrFvRsuyuFnruMJNckOCCiO4Ug="; sha256 = "sha256-EATZRmYSGUzWYaPqFT4mLTGGvwUp+Mn93yMF2JsPaYo=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -1,48 +1,113 @@
{ lib, mkDerivation, fetchFromGitHub, fetchpatch, cmake, ninja, coin3d, { lib
xercesc, ode, eigen, qtbase, qttools, qtwebengine, qtxmlpatterns, wrapQtAppsHook, , mkDerivation
opencascade-occt, gts, hdf5, vtk, medfile, zlib, python3Packages, swig, , fetchFromGitHub
gfortran, libXmu, soqt, libf2c, libGLU, makeWrapper, pkg-config, mpi, , fetchpatch
spaceNavSupport ? true, libspnav, qtx11extras }: , cmake
, ninja
, GitPython
, boost
, coin3d
, eigen
, gfortran
, gts
, hdf5
, libGLU
, libXmu
, libf2c
, libspnav
, matplotlib
, medfile
, mpi
, ode
, opencascade-occt
, pivy
, pkg-config
, pycollada
, pyside2
, pyside2-tools
, python
, pyyaml
, qtbase
, qttools
, qtwebengine
, qtx11extras
, qtxmlpatterns
, scipy
, shiboken2
, soqt
, spaceNavSupport ? true
, swig
, vtk
, wrapQtAppsHook
, xercesc
, zlib
}:
let mkDerivation rec {
pythonPackages = python3Packages; pname = "freecad";
in mkDerivation rec { version = "0.19.1";
pname = "freecad-unstable";
version = "2020-12-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "FreeCAD"; owner = "FreeCAD";
repo = "FreeCAD"; repo = "FreeCAD";
rev = "daea30341ea2d5eaf2bfb65614128a5fa2abc8b7"; rev = version;
sha256 = "1fza64lygqq35v7kzgqmiq5dvl5rpgkhlzv06f9dszdz44hznina"; hash = "sha256-itIrO+/mKXOPNs+2POKT8u4YZuqx/QAwVBWrHgKP1qQ=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
ninja ninja
pkg-config pkg-config
pythonPackages.pyside2-tools pyside2-tools
wrapQtAppsHook wrapQtAppsHook
]; ];
buildInputs = [ buildInputs = [
coin3d xercesc ode eigen opencascade-occt gts
zlib swig gfortran soqt libf2c makeWrapper mpi vtk hdf5 medfile
libGLU libXmu qtbase qttools qtwebengine qtxmlpatterns
] ++ (with pythonPackages; [
matplotlib pycollada shiboken2 pyside2 pyside2-tools pivy python boost
GitPython # for addon manager GitPython # for addon manager
scipy pyyaml # (at least for) PyrateWorkbench boost
]) ++ lib.optionals spaceNavSupport [ libspnav qtx11extras ]; coin3d
eigen
gfortran
gts
hdf5
libGLU
libXmu
libf2c
matplotlib
medfile
mpi
ode
opencascade-occt
pivy
pycollada
pyside2
pyside2-tools
python
pyyaml # (at least for) PyrateWorkbench
qtbase
qttools
qtwebengine
qtxmlpatterns
scipy
shiboken2
soqt
swig
vtk
xercesc
zlib
] ++ lib.optionals spaceNavSupport [
libspnav
qtx11extras
];
cmakeFlags = [ cmakeFlags = [
"-DBUILD_QT5=ON" "-DBUILD_QT5=ON"
"-DSHIBOKEN_INCLUDE_DIR=${pythonPackages.shiboken2}/include" "-DSHIBOKEN_INCLUDE_DIR=${shiboken2}/include"
"-DSHIBOKEN_LIBRARY=Shiboken2::libshiboken" "-DSHIBOKEN_LIBRARY=Shiboken2::libshiboken"
("-DPYSIDE_INCLUDE_DIR=${pythonPackages.pyside2}/include" ("-DPYSIDE_INCLUDE_DIR=${pyside2}/include"
+ ";${pythonPackages.pyside2}/include/PySide2/QtCore" + ";${pyside2}/include/PySide2/QtCore"
+ ";${pythonPackages.pyside2}/include/PySide2/QtWidgets" + ";${pyside2}/include/PySide2/QtWidgets"
+ ";${pythonPackages.pyside2}/include/PySide2/QtGui" + ";${pyside2}/include/PySide2/QtGui"
) )
"-DPYSIDE_LIBRARY=PySide2::pyside2" "-DPYSIDE_LIBRARY=PySide2::pyside2"
]; ];
@ -68,10 +133,26 @@ in mkDerivation rec {
''; '';
meta = with lib; { meta = with lib; {
description = "General purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM modeler";
homepage = "https://www.freecadweb.org/"; homepage = "https://www.freecadweb.org/";
description = "General purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM modeler";
longDescription = ''
FreeCAD is an open-source parametric 3D modeler made primarily to design
real-life objects of any size. Parametric modeling allows you to easily
modify your design by going back into your model history and changing its
parameters.
FreeCAD allows you to sketch geometry constrained 2D shapes and use them
as a base to build other objects. It contains many components to adjust
dimensions or extract design details from 3D models to create high quality
production ready drawings.
FreeCAD is designed to fit a wide range of uses including product design,
mechanical engineering and architecture. Whether you are a hobbyist, a
programmer, an experienced CAD user, a student or a teacher, you will feel
right at home with FreeCAD.
'';
license = licenses.lgpl2Plus; license = licenses.lgpl2Plus;
maintainers = with maintainers; [ viric gebner ]; maintainers = with maintainers; [ viric gebner AndersonTorres ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -1,31 +1,53 @@
{ lib
, mkDerivation
, fetchFromGitHub
, fetchurl
, qmake
, qttools
, zlib
}:
/* /*
To use aditional parts libraries To use aditional parts libraries
set the variable LEOCAD_LIB=/path/to/libs/ or use option -l /path/to/libs/ set the variable LEOCAD_LIB=/path/to/libs/ or use option -l /path/to/libs/
*/ */
{ lib, stdenv, fetchFromGitHub, qt4, qmake4Hook, zlib }: let
parts = fetchurl {
url = "https://web.archive.org/web/20190715142541/https://www.ldraw.org/library/updates/complete.zip";
sha256 = "sha256-PW3XCbFwRaNkx4EgCnl2rXH7QgmpNgjTi17kZ5bladA=";
};
stdenv.mkDerivation rec { in
mkDerivation rec {
pname = "leocad"; pname = "leocad";
version = "19.07.1"; version = "21.03";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "leozide"; owner = "leozide";
repo = "leocad"; repo = "leocad";
rev = "v${version}"; rev = "v${version}";
sha256 = "02kv1m18g6s4dady9jv4sjivfkrp192bmdw2a3d9lzlp60zks0p2"; sha256 = "sha256-69Ocfk5dBXwcRqAZWEP9Xg41o/tAQo76dIOk9oYhCUE=";
}; };
nativeBuildInputs = [ qmake4Hook ]; nativeBuildInputs = [ qmake qttools ];
buildInputs = [ qt4 zlib ];
postPatch = '' buildInputs = [ zlib ];
export qmakeFlags="$qmakeFlags INSTALL_PREFIX=$out"
''; qmakeFlags = [
"INSTALL_PREFIX=${placeholder "out"}"
"DISABLE_UPDATE_CHECK=1"
];
qtWrapperArgs = [
"--set-default LEOCAD_LIB ${parts}"
];
meta = with lib; { meta = with lib; {
description = "CAD program for creating virtual LEGO models"; description = "CAD program for creating virtual LEGO models";
homepage = "https://www.leocad.org/"; homepage = "https://www.leocad.org/";
license = licenses.gpl2; license = licenses.gpl2Only;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -2,12 +2,12 @@
, pango, fribidi, harfbuzz, pcre, pkg-config , pango, fribidi, harfbuzz, pcre, pkg-config
, ncursesSupport ? true, ncurses ? null , ncursesSupport ? true, ncurses ? null
, waylandSupport ? true, wayland ? null, wayland-protocols ? null , waylandSupport ? true, wayland ? null, wayland-protocols ? null
, x11Support ? true, xlibs ? null, xorg ? null , x11Support ? true, xorg ? null
}: }:
assert ncursesSupport -> ncurses != null; assert ncursesSupport -> ncurses != null;
assert waylandSupport -> ! lib.elem null [wayland wayland-protocols]; assert waylandSupport -> ! lib.elem null [wayland wayland-protocols];
assert x11Support -> xlibs != null && xorg != null; assert x11Support -> xorg != null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "bemenu"; pname = "bemenu";
@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
] ++ optional ncursesSupport ncurses ] ++ optional ncursesSupport ncurses
++ optionals waylandSupport [ wayland wayland-protocols ] ++ optionals waylandSupport [ wayland wayland-protocols ]
++ optionals x11Support [ ++ optionals x11Support [
xlibs.libX11 xlibs.libXinerama xlibs.libXft xorg.libX11 xorg.libXinerama xorg.libXft
xorg.libXdmcp xorg.libpthreadstubs xorg.libxcb xorg.libXdmcp xorg.libpthreadstubs xorg.libxcb
]; ];

View File

@ -36,11 +36,15 @@ mkDerivation rec {
--subst-var-by qttranslations ${qttranslations} --subst-var-by qttranslations ${qttranslations}
''; '';
# Wayland support is broken.
# https://github.com/gyunaev/birdtray/issues/113#issuecomment-621742315
qtWrapperArgs = [ "--set QT_QPA_PLATFORM xcb" ];
meta = with lib; { meta = with lib; {
description = "Mail system tray notification icon for Thunderbird"; description = "Mail system tray notification icon for Thunderbird";
homepage = "https://github.com/gyunaev/birdtray"; homepage = "https://github.com/gyunaev/birdtray";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
maintainers = with maintainers; [ Flakebi ]; maintainers = with maintainers; [ Flakebi oxalica ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -5,7 +5,7 @@
let let
perlDeps = perlDeps =
[ perlPackages.MIMEtools perlPackages.HTMLParser ] [ perlPackages.MIMETools perlPackages.HTMLParser ]
++ lib.optional cursesSupport perlPackages.CursesUI ++ lib.optional cursesSupport perlPackages.CursesUI
++ lib.optional uriFindSupport perlPackages.URIFind; ++ lib.optional uriFindSupport perlPackages.URIFind;

View File

@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
JSON JSON
ImageExifTool ImageExifTool
librelative librelative
LWPUserAgent LWP
LWPProtocolHttps LWPProtocolHttps
MP3Info MP3Info
MP3Tag MP3Tag

View File

@ -18,14 +18,14 @@
buildPythonApplication rec { buildPythonApplication rec {
pname = "jrnl"; pname = "jrnl";
version = "2.7"; version = "2.7.1";
format = "pyproject"; format = "pyproject";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jrnl-org"; owner = "jrnl-org";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1hyjjw9mxy73n3pkliaaif135h2sd4iy43pw9d5zynid5abnr3yz"; sha256 = "1m1shgnvwzzs0g6ph7rprwxd7w8zj0x4sbgiqsv9z41k6li7xj4r";
}; };
nativeBuildInputs = [ poetry ]; nativeBuildInputs = [ poetry ];

View File

@ -25,7 +25,7 @@ appimageTools.wrapType2 rec {
multiPkgs = null; # no 32bit needed multiPkgs = null; # no 32bit needed
extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [ extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [
p.libsecret p.libsecret
p.xlibs.libxkbfile p.xorg.libxkbfile
]; ];
# Strip version from binary name. # Strip version from binary name.

View File

@ -15,16 +15,17 @@
mkDerivationWith stdenv.mkDerivation rec { mkDerivationWith stdenv.mkDerivation rec {
pname = "qcad"; pname = "qcad";
version = "3.25.2.0"; version = "3.26.0.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "qcad"; owner = "qcad";
repo = "qcad"; repo = "qcad";
rev = "v${version}"; rev = "v${version}";
sha256 = "1lz6q9n2p0l7k8rwqsdj6av9p3426423g5avc4y6s7nbk36280mz"; sha256 = "sha256-V+QlwM8BWmcarwZtqJfc+MYHOZgIH1W5R8m2EHhNJls=";
}; };
patches = [ patches = [
# Patch directory lookup, remove __DATE__ and executable name
./application-dir.patch ./application-dir.patch
]; ];
@ -90,12 +91,10 @@ mkDerivationWith stdenv.mkDerivation rec {
qttools qttools
]; ];
enableParallelBuilding = true;
meta = with lib; { meta = with lib; {
description = "2D CAD package based on Qt"; description = "2D CAD package based on Qt";
homepage = "https://qcad.org"; homepage = "https://qcad.org";
license = licenses.gpl3; license = licenses.gpl3Only;
maintainers = with maintainers; [ yvesf ]; maintainers = with maintainers; [ yvesf ];
platforms = qtbase.meta.platforms; platforms = qtbase.meta.platforms;
}; };

View File

@ -6,7 +6,7 @@
, pkg-config , pkg-config
, glib , glib
, gtk3 , gtk3
, gnome3 , libgee
, meson , meson
, ninja , ninja
, gobject-introspection , gobject-introspection
@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
pantheon.elementary-icon-theme pantheon.elementary-icon-theme
pantheon.granite pantheon.granite
glib glib
gnome3.libgee libgee
gsettings-desktop-schemas gsettings-desktop-schemas
gtk3 gtk3
]; ];

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "tickrs"; pname = "tickrs";
version = "0.14.2"; version = "0.14.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tarkah"; owner = "tarkah";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-8m4mIXTqc6rDMIjODbHJL7ipH5Y4WwgsWcSmw/SaiIo="; sha256 = "sha256-mHMBhYI9pJkuK/6tCg1fXPjTfGFe0gkMzplesuFvl5M=";
}; };
cargoSha256 = "sha256-ZcRFQT2CxqpO35UqK79g2Jq5SPOLZ88WiG36issC5kY="; cargoSha256 = "sha256-XmLobbVTYO8dA8YVtI/ntlD1RB9sO3poP6NBdDOPIlE=";
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];

View File

@ -6,7 +6,7 @@
, jbig2dec , jbig2dec
, libjpeg , libjpeg
, mupdf , mupdf
, openjpeg_2 , openjpeg
, pkg-config , pkg-config
, zathura_core , zathura_core
}: }:
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
jbig2dec jbig2dec
libjpeg libjpeg
mupdf mupdf
openjpeg_2 openjpeg
zathura_core zathura_core
] ++ lib.optional stdenv.isDarwin gtk-mac-integration; ] ++ lib.optional stdenv.isDarwin gtk-mac-integration;

View File

@ -90,11 +90,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "brave"; pname = "brave";
version = "1.21.76"; version = "1.21.77";
src = fetchurl { src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb"; url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "JFZaPS9NmwZeyEdDqOrKG9VEQP7wIyqkR/Sk44GVxps="; sha256 = "Q7paeGAvdmc4+FP28ASLlJhN1ui7M5fDpxnrh+gbEm4=";
}; };
dontConfigure = true; dontConfigure = true;

View File

@ -89,5 +89,6 @@ mkChromiumDerivation (base: rec {
then ["aarch64-linux" "x86_64-linux"] then ["aarch64-linux" "x86_64-linux"]
else []; else [];
timeout = 172800; # 48 hours (increased from the Hydra default of 10h) timeout = 172800; # 48 hours (increased from the Hydra default of 10h)
broken = elem channel [ "beta" "dev" ]; # Build requires LLVM 12
}; };
}) })

View File

@ -3,7 +3,6 @@
, fetchFromGitLab , fetchFromGitLab
, meson , meson
, ninja , ninja
, cmake
, pkg-config , pkg-config
, libhandy , libhandy
, modemmanager , modemmanager
@ -13,35 +12,46 @@
, feedbackd , feedbackd
, callaudiod , callaudiod
, evolution-data-server , evolution-data-server
, glib
, folks , folks
, desktop-file-utils , desktop-file-utils
, appstream-glib
, libpeas , libpeas
, dbus , dbus
, vala , vala
, wrapGAppsHook , wrapGAppsHook
, xvfb_run , xvfb_run
, gtk-doc
, docbook-xsl-nons
, docbook_xml_dtd_43
, gobject-introspection
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "calls"; pname = "calls";
version = "0.2.0"; version = "0.3.1";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "source.puri.sm"; domain = "source.puri.sm";
owner = "Librem5"; owner = "Librem5";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1qmjdhnr95dawccw1ss8hc3lk0cypj86xg2amjq7avzn86ryd76l"; sha256 = "0igap5ynq269xqaky6fqhdg2dpsvxa008z953ywa4s5b5g5dk3dd";
}; };
outputs = [ "out" "devdoc" ];
nativeBuildInputs = [ nativeBuildInputs = [
meson meson
ninja ninja
pkg-config pkg-config
desktop-file-utils desktop-file-utils
appstream-glib
vala vala
cmake
wrapGAppsHook wrapGAppsHook
gtk-doc
docbook-xsl-nons
docbook_xml_dtd_43
]; ];
buildInputs = [ buildInputs = [
@ -62,10 +72,10 @@ stdenv.mkDerivation rec {
xvfb_run xvfb_run
]; ];
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
mesonFlags = [ mesonFlags = [
# docs fail to build "-Dgtk_doc=true"
# https://source.puri.sm/Librem5/calls/issues/99
"-Dgtk_doc=false"
]; ];
doCheck = true; doCheck = true;
@ -73,6 +83,7 @@ stdenv.mkDerivation rec {
checkPhase = '' checkPhase = ''
runHook preCheck runHook preCheck
NO_AT_BRIDGE=1 \ NO_AT_BRIDGE=1 \
XDG_DATA_DIRS=${folks}/share/gsettings-schemas/${folks.name} \
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
--config-file=${dbus.daemon}/share/dbus-1/session.conf \ --config-file=${dbus.daemon}/share/dbus-1/session.conf \
meson test --print-errorlogs meson test --print-errorlogs

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "fluxctl"; pname = "fluxctl";
version = "1.21.2"; version = "1.22.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "weaveworks"; owner = "weaveworks";
repo = "flux"; repo = "flux";
rev = version; rev = version;
sha256 = "sha256-pI/LGAjTWFXiDKSV+dZl0wXK/TZmN9DuWf5Nu8EYNYc="; sha256 = "sha256-7uS8704YZ7lQTSSnbVvc6T5iadl02TeVpwVPf2uS9L4=";
}; };
vendorSha256 = "sha256-Q8gIhJSZqdjBXrIcJfCd25BniDScwVzUwZ9Vc8p/z3c="; vendorSha256 = "sha256-oqfJaQA8ybh0UNWYJ2ukoWkwdgORwvXzRCquGstwA4M=";
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];

View File

@ -3,7 +3,7 @@
pkgs.mkShell { pkgs.mkShell {
buildInputs = [ buildInputs = [
pkgs.poetry2nix.cli pkgs.poetry2nix.cli
pkgs.pkgconfig pkgs.pkg-config
pkgs.libvirt pkgs.libvirt
pkgs.poetry pkgs.poetry
]; ];

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "terragrunt"; pname = "terragrunt";
version = "0.28.12"; version = "0.28.15";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gruntwork-io"; owner = "gruntwork-io";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-oHujPgnS76FYihzZV5ZzPP+4+77zNtYozH9jhqJJyVI="; sha256 = "sha256-PhTFgYoSaGv54uak8QB7p963OBSgo9s1UM9/XBmYC8g=";
}; };
vendorSha256 = "sha256-SVrDBDGK809O+RaE3gOa9U1agY6hSGI/k3FUCgm+5PA="; vendorSha256 = "sha256-vHKqowc3euQQyvgfaTbIgSXOhPcf2nSoteQK0a574Kc=";
doCheck = false; doCheck = false;

View File

@ -2,7 +2,7 @@
"name": "element-desktop", "name": "element-desktop",
"productName": "Element", "productName": "Element",
"main": "src/electron-main.js", "main": "src/electron-main.js",
"version": "1.7.22", "version": "1.7.23",
"description": "A feature-rich client for Matrix.org", "description": "A feature-rich client for Matrix.org",
"author": "Element", "author": "Element",
"repository": { "repository": {

View File

@ -8,12 +8,12 @@
let let
executableName = "element-desktop"; executableName = "element-desktop";
version = "1.7.22"; version = "1.7.23";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "vector-im"; owner = "vector-im";
repo = "element-desktop"; repo = "element-desktop";
rev = "v${version}"; rev = "v${version}";
sha256 = "152ggkkk997pg3xdcdzn3samv3vsb6qifgkyl82bnwchy8y3611d"; sha256 = "0vvjbh81h6sg6dbm9d6ffav0dim9sadvs67jcm702677qgigkc53";
}; };
in mkYarnPackage rec { in mkYarnPackage rec {
name = "element-desktop-${version}"; name = "element-desktop-${version}";

View File

@ -12,11 +12,11 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "element-web"; pname = "element-web";
version = "1.7.22"; version = "1.7.23";
src = fetchurl { src = fetchurl {
url = "https://github.com/vector-im/element-web/releases/download/v${version}/element-v${version}.tar.gz"; url = "https://github.com/vector-im/element-web/releases/download/v${version}/element-v${version}.tar.gz";
sha256 = "1aaa986h38kkrnyhb1y65d73idsxmkmi201511az9zlz9210ih59"; sha256 = "10n899gc3qcjy2cskk0whwz60pnvh500x1b57kn22l9bhkg9xkvp";
}; };
installPhase = '' installPhase = ''

View File

@ -4,7 +4,7 @@
, autoAwaySupport ? true, libXScrnSaver ? null, libX11 ? null , autoAwaySupport ? true, libXScrnSaver ? null, libX11 ? null
, notifySupport ? true, libnotify ? null, gdk-pixbuf ? null , notifySupport ? true, libnotify ? null, gdk-pixbuf ? null
, traySupport ? true, gnome2 ? null , traySupport ? true, gtk2 ? null
, pgpSupport ? true, gpgme ? null , pgpSupport ? true, gpgme ? null
, pythonPluginSupport ? true, python ? null , pythonPluginSupport ? true, python ? null
, omemoSupport ? true, libsignal-protocol-c ? null, libgcrypt ? null , omemoSupport ? true, libsignal-protocol-c ? null, libgcrypt ? null
@ -12,7 +12,7 @@
assert autoAwaySupport -> libXScrnSaver != null && libX11 != null; assert autoAwaySupport -> libXScrnSaver != null && libX11 != null;
assert notifySupport -> libnotify != null && gdk-pixbuf != null; assert notifySupport -> libnotify != null && gdk-pixbuf != null;
assert traySupport -> gnome2 != null; assert traySupport -> gtk2 != null;
assert pgpSupport -> gpgme != null; assert pgpSupport -> gpgme != null;
assert pythonPluginSupport -> python != null; assert pythonPluginSupport -> python != null;
assert omemoSupport -> libsignal-protocol-c != null && libgcrypt != null; assert omemoSupport -> libsignal-protocol-c != null && libgcrypt != null;
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
curl libmesode cmocka libmicrohttpd sqlite curl libmesode cmocka libmicrohttpd sqlite
] ++ optionals autoAwaySupport [ libXScrnSaver libX11 ] ] ++ optionals autoAwaySupport [ libXScrnSaver libX11 ]
++ optionals notifySupport [ libnotify gdk-pixbuf ] ++ optionals notifySupport [ libnotify gdk-pixbuf ]
++ optionals traySupport [ gnome2.gtk ] ++ optionals traySupport [ gtk2 ]
++ optionals pgpSupport [ gpgme ] ++ optionals pgpSupport [ gpgme ]
++ optionals pythonPluginSupport [ python ] ++ optionals pythonPluginSupport [ python ]
++ optionals omemoSupport [ libsignal-protocol-c libgcrypt ]; ++ optionals omemoSupport [ libsignal-protocol-c libgcrypt ];

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchurl, dpkg, alsaLib, atk, cairo, cups, dbus, expat, fontconfig { lib, stdenv, fetchurl, dpkg, alsaLib, atk, cairo, cups, dbus, expat, fontconfig
, freetype, gdk-pixbuf, glib, gnome2, nspr, nss, pango, udev, xorg }: , freetype, gdk-pixbuf, glib, gnome2, gtk2, nspr, nss, pango, udev, xorg }:
let let
fullPath = lib.makeLibraryPath [ fullPath = lib.makeLibraryPath [
alsaLib alsaLib
@ -13,7 +13,7 @@ let
gdk-pixbuf gdk-pixbuf
glib glib
gnome2.GConf gnome2.GConf
gnome2.gtk gtk2
nspr nspr
nss nss
pango pango

View File

@ -82,6 +82,11 @@ stdenv.mkDerivation rec {
echo "Adding runtime dependencies to RPATH of Node module $mod" echo "Adding runtime dependencies to RPATH of Node module $mod"
patchelf --set-rpath "$runtime_rpath:$mod_rpath" "$mod" patchelf --set-rpath "$runtime_rpath:$mod_rpath" "$mod"
done; done;
# fix for https://docs.microsoft.com/en-us/answers/questions/298724/open-teams-meeting-link-on-linux-doens39t-work.html?childToView=309406#comment-309406
# while we create the wrapper ourselves, gappsWrapperArgs leads to the same issue
# another option would be to introduce gappsWrapperAppendedArgs, to allow control of positioning
substituteInPlace "$out/bin/teams" --replace '.teams-wrapped" --disable-namespace-sandbox --disable-setuid-sandbox "$@"' '.teams-wrapped" "$@" --disable-namespace-sandbox --disable-setuid-sandbox'
''; '';
meta = with lib; { meta = with lib; {

View File

@ -22,13 +22,13 @@ let
pname = "wire-desktop"; pname = "wire-desktop";
version = { version = {
x86_64-darwin = "3.21.3959"; x86_64-darwin = "3.23.4046";
x86_64-linux = "3.22.2937"; x86_64-linux = "3.23.2938";
}.${system} or throwSystem; }.${system} or throwSystem;
sha256 = { sha256 = {
x86_64-darwin = "0fgzzqf1wnkjbcr0j0vjn6sggkz0z1kx6w4gi7gk4c4markdicm1"; x86_64-darwin = "19k8102chh4yphk89kiz83yarawnzdnsq0hbsqpjdhbmarqjcd9s";
x86_64-linux = "1pl2dsrgckkd8mm0cpxrz8i8rn4jfx7b9lvdyc8392sbq4chjcb7"; x86_64-linux = "1cx5azl5dvya1hf0gayafm4rg6ccmmq978xsgm6lf0rlb4kirj65";
}.${system} or throwSystem; }.${system} or throwSystem;
meta = with lib; { meta = with lib; {

View File

@ -28,7 +28,7 @@ perlPackages.buildPerlPackage rec {
propagatedBuildInputs = [ openssl ]; propagatedBuildInputs = [ openssl ];
checkInputs = with perlPackages; [ TestDeep TestMore ]; checkInputs = with perlPackages; [ TestDeep ];
postPatch = '' postPatch = ''
patchShebangs script/convos patchShebangs script/convos

View File

@ -9,11 +9,11 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "msmtp"; pname = "msmtp";
version = "1.8.14"; version = "1.8.15";
src = fetchurl { src = fetchurl {
url = "https://marlam.de/${pname}/releases/${pname}-${version}.tar.xz"; url = "https://marlam.de/${pname}/releases/${pname}-${version}.tar.xz";
sha256 = "1W8GXXEUhunCNGGFFaAqSKSNq0BRs08+EI++y2+3c7Q="; sha256 = "sha256-ImXcY56/Lt8waf/+CjvXZ0n4tY9AAdXN6uGYc5SQmc4=";
}; };
patches = [ patches = [

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl { stdenv, fetchurl
, gnome3 , glade
, gnunet , gnunet
, gnutls , gnutls
, gtk3 , gtk3
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = [ buildInputs = [
gnome3.glade glade
gnunet gnunet
gnutls gnutls
gtk3 gtk3

View File

@ -12,7 +12,7 @@
, pcre , pcre
# Build options # Build options
, enableGTK3 ? false , enableGTK3 ? false
, gnome3 , gtk3
, xorg , xorg
, wrapGAppsHook , wrapGAppsHook
, enableQt ? false , enableQt ? false
@ -65,7 +65,7 @@ in stdenv.mkDerivation {
pcre pcre
] ]
++ lib.optionals enableQt [ qt5.qttools qt5.qtbase ] ++ lib.optionals enableQt [ qt5.qttools qt5.qtbase ]
++ lib.optionals enableGTK3 [ gnome3.gtk xorg.libpthreadstubs ] ++ lib.optionals enableGTK3 [ gtk3 xorg.libpthreadstubs ]
++ lib.optionals enableSystemd [ systemd ] ++ lib.optionals enableSystemd [ systemd ]
++ lib.optionals stdenv.isLinux [ inotify-tools ] ++ lib.optionals stdenv.isLinux [ inotify-tools ]
; ;

View File

@ -85,5 +85,6 @@ stdenv.mkDerivation rec {
description = "A completely decentralised P2P filesharing client based on the Bittorrent protocol"; description = "A completely decentralised P2P filesharing client based on the Bittorrent protocol";
license = licenses.lgpl21; license = licenses.lgpl21;
platforms = platforms.linux; platforms = platforms.linux;
broken = true; # 2021-03-17 see https://github.com/NixOS/nixpkgs/issues/93053
}; };
} }

View File

@ -21,7 +21,7 @@
# Runtime dependencies; # Runtime dependencies;
# A few additional ones (e.g. Node) are already shipped together with the # A few additional ones (e.g. Node) are already shipped together with the
# AppImage, so we don't have to duplicate them here. # AppImage, so we don't have to duplicate them here.
alsaLib, dbus-glib, fuse, gnome3, libdbusmenu-gtk2, udev, nss alsaLib, dbus-glib, fuse, gnome3, gtk3, libdbusmenu-gtk2, udev, nss
}: }:
let let
@ -56,7 +56,7 @@ in stdenv.mkDerivation {
alsaLib alsaLib
dbus-glib dbus-glib
fuse fuse
gnome3.gtk gtk3
libdbusmenu-gtk2 libdbusmenu-gtk2
nss nss
udev udev
@ -92,7 +92,7 @@ in stdenv.mkDerivation {
# This is required for the file picker dialog - otherwise pcloud just # This is required for the file picker dialog - otherwise pcloud just
# crashes # crashes
export XDG_DATA_DIRS="${gnome3.gsettings-desktop-schemas}/share/gsettings-schemas/${gnome3.gsettings-desktop-schemas.name}:${gnome3.gtk}/share/gsettings-schemas/${gnome3.gtk.name}:$XDG_DATA_DIRS" export XDG_DATA_DIRS="${gnome3.gsettings-desktop-schemas}/share/gsettings-schemas/${gnome3.gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS"
exec "$out/app/pcloud" exec "$out/app/pcloud"
EOF EOF

View File

@ -15,7 +15,7 @@
, gdk-pixbuf , gdk-pixbuf
, glib , glib
, glibc , glibc
, gnome3 , gsettings-desktop-schemas
, gst_all_1 , gst_all_1
, gtk2 , gtk2
, gtk3 , gtk3
@ -95,7 +95,7 @@ in stdenv.mkDerivation rec {
fontconfig fontconfig
gdk-pixbuf gdk-pixbuf
glib glib
gnome3.gsettings_desktop_schemas gsettings-desktop-schemas
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-base
gst_all_1.gstreamer gst_all_1.gstreamer
gtk2 gtk2

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config { lib, stdenv, fetchFromGitHub, cmake, pkg-config
, mpg123, SDL2, gnome3, faad2, pcre , mpg123, SDL2, gtkmm3, faad2, pcre
} : } :
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake pkg-config ]; nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ faad2 mpg123 SDL2 gnome3.gtkmm pcre ]; buildInputs = [ faad2 mpg123 SDL2 gtkmm3 pcre ];
meta = with lib; { meta = with lib; {
description = "Play DAB/DAB+ from ETI-NI aligned stream"; description = "Play DAB/DAB+ from ETI-NI aligned stream";

View File

@ -6,7 +6,7 @@
, epoxy , epoxy
, fetchFromGitHub , fetchFromGitHub
, glm , glm
, gnome3 , gtkmm3
, lib , lib
, libgit2 , libgit2
, librsvg , librsvg
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
curl curl
epoxy epoxy
glm glm
gnome3.gtkmm gtkmm3
libgit2 libgit2
librsvg librsvg
libuuid libuuid

View File

@ -1,6 +1,7 @@
{ lib, stdenv { lib, stdenv
, fetchFromGitLab , fetchFromGitLab
, gnome3 , gnome3
, dconf
, wxGTK30 , wxGTK30
, wxGTK31 , wxGTK31
, makeWrapper , makeWrapper
@ -186,12 +187,12 @@ stdenv.mkDerivation rec {
makeWrapperArgs = with passthru.libraries; [ makeWrapperArgs = with passthru.libraries; [
"--prefix XDG_DATA_DIRS : ${base}/share" "--prefix XDG_DATA_DIRS : ${base}/share"
"--prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share" "--prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share"
"--prefix XDG_DATA_DIRS : ${gnome3.defaultIconTheme}/share" "--prefix XDG_DATA_DIRS : ${gnome3.adwaita-icon-theme}/share"
"--prefix XDG_DATA_DIRS : ${wxGTK.gtk}/share/gsettings-schemas/${wxGTK.gtk.name}" "--prefix XDG_DATA_DIRS : ${wxGTK.gtk}/share/gsettings-schemas/${wxGTK.gtk.name}"
"--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" "--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}"
# wrapGAppsHook did these two as well, no idea if it matters... # wrapGAppsHook did these two as well, no idea if it matters...
"--prefix XDG_DATA_DIRS : ${cups}/share" "--prefix XDG_DATA_DIRS : ${cups}/share"
"--prefix GIO_EXTRA_MODULES : ${gnome3.dconf}/lib/gio/modules" "--prefix GIO_EXTRA_MODULES : ${dconf}/lib/gio/modules"
"--set-default KISYSMOD ${footprints}/share/kicad/modules" "--set-default KISYSMOD ${footprints}/share/kicad/modules"
"--set-default KICAD_SYMBOL_DIR ${symbols}/share/kicad/library" "--set-default KICAD_SYMBOL_DIR ${symbols}/share/kicad/library"

View File

@ -127,7 +127,7 @@ self = stdenv.mkDerivation {
buildInputs = [ ncurses ] ++ ocamlBuildInputs buildInputs = [ ncurses ] ++ ocamlBuildInputs
++ optionals buildIde ++ optionals buildIde
(if versionAtLeast "8.10" (if versionAtLeast "8.10"
then [ ocamlPackages.lablgtk3-sourceview3 glib gnome3.defaultIconTheme wrapGAppsHook ] then [ ocamlPackages.lablgtk3-sourceview3 glib gnome3.adwaita-icon-theme wrapGAppsHook ]
else [ ocamlPackages.lablgtk ]); else [ ocamlPackages.lablgtk ]);
postPatch = '' postPatch = ''

View File

@ -5,6 +5,7 @@
, pkg-config , pkg-config
, autoreconfHook , autoreconfHook
, gnome2 , gnome2
, gtk2
, glib , glib
, libtifiles2 , libtifiles2
, libticables2 , libticables2
@ -32,7 +33,7 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = [ buildInputs = [
gnome2.gtk gtk2
gnome2.libglade gnome2.libglade
glib glib
libtifiles2 libtifiles2

View File

@ -32,7 +32,6 @@
, ntl , ntl
, numpy , numpy
, pari , pari
, pkgconfig
, pkg-config , pkg-config
, planarity , planarity
, ppl , ppl
@ -86,7 +85,6 @@ buildPythonPackage rec {
cypari2 cypari2
jinja2 jinja2
numpy numpy
pkgconfig
boost boost
arb arb
brial brial

View File

@ -7,6 +7,7 @@
, intltool , intltool
, glib , glib
, gnome2 , gnome2
, gtk2
, gfm , gfm
, libticables2 , libticables2
, libticalcs2 , libticalcs2
@ -36,7 +37,7 @@ stdenv.mkDerivation rec {
buildInputs = [ buildInputs = [
glib glib
gnome2.gtk gtk2
gnome2.libglade gnome2.libglade
gfm gfm
libticables2 libticables2

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchgit, makeWrapper, pkg-config, { lib, stdenv, fetchgit, makeWrapper, pkg-config,
gnome2, glib, pango, cairo, gdk-pixbuf, atk, freetype, xorg, gnome2, gtk2, glib, pango, cairo, gdk-pixbuf, atk, freetype, xorg,
configH ? "" configH ? ""
}: }:
@ -14,7 +14,7 @@ stdenv.mkDerivation {
}; };
buildInputs = [ buildInputs = [
gnome2.vte glib pango gnome2.gtk cairo gdk-pixbuf atk freetype xorg.libX11 gnome2.vte glib pango gtk2 cairo gdk-pixbuf atk freetype xorg.libX11
xorg.xorgproto xorg.libXext makeWrapper pkg-config xorg.xorgproto xorg.libXext makeWrapper pkg-config
]; ];

View File

@ -4,6 +4,7 @@
, fetchFromGitLab , fetchFromGitLab
, gettext , gettext
, gnome3 , gnome3
, libgtop
, gtk3 , gtk3
, libhandy , libhandy
, pcre2 , pcre2
@ -33,7 +34,7 @@ stdenv.mkDerivation {
buildInputs = [ buildInputs = [
gettext gettext
gnome3.libgtop libgtop
gnome3.nautilus gnome3.nautilus
gtk3 gtk3
libhandy libhandy

View File

@ -2,18 +2,18 @@
buildGoModule rec { buildGoModule rec {
pname = "lab"; pname = "lab";
version = "0.20.0"; version = "0.21.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zaquestion"; owner = "zaquestion";
repo = "lab"; repo = "lab";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-EQqbWM/4CInFNndfD+k7embPUFLXgxRT44e/+Ik2TDs="; sha256 = "sha256-mkhJmrKpIISd0m0m8fQ9vKuEr6h23BBxK6yo5fB+xcA=";
}; };
subPackages = [ "." ]; subPackages = [ "." ];
vendorSha256 = "sha256-T6kGhje3K2HnR8xRuio6AsYbSwIdbWvAk3ZSnbm1NsA="; vendorSha256 = "sha256-cf+DVnGjSNV2eZ8S/Vk+VPlykoSjngrQuPeA9IshBUg=";
doCheck = false; doCheck = false;

View File

@ -1,6 +1,6 @@
{ {
alsaLib, atk, cairo, cups, dbus, dpkg, expat, fetchurl, fetchzip, fontconfig, freetype, alsaLib, atk, cairo, cups, dbus, dpkg, expat, fetchurl, fetchzip, fontconfig, freetype,
gdk-pixbuf, glib, gnome3, libX11, libXScrnSaver, libXcomposite, libXcursor, gdk-pixbuf, glib, gtk3, libX11, libXScrnSaver, libXcomposite, libXcursor,
libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst, libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst,
libxcb, nspr, nss, lib, stdenv, udev, libuuid, pango, at-spi2-atk, at-spi2-core libxcb, nspr, nss, lib, stdenv, udev, libuuid, pango, at-spi2-atk, at-spi2-core
}: }:
@ -19,7 +19,7 @@
freetype freetype
gdk-pixbuf gdk-pixbuf
glib glib
gnome3.gtk gtk3
pango pango
libuuid libuuid
libX11 libX11

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchurl, meson, ninja, pkg-config, wayland, wrapGAppsHook { stdenv, lib, fetchurl, meson, ninja, pkg-config, wayland, wrapGAppsHook
, gnome3, libevdev, libxml2, wayfire, wayland-protocols, wf-config, wf-shell , gtk3, libevdev, libxml2, wayfire, wayland-protocols, wf-config, wf-shell
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ meson ninja pkg-config wayland wrapGAppsHook ]; nativeBuildInputs = [ meson ninja pkg-config wayland wrapGAppsHook ];
buildInputs = [ buildInputs = [
gnome3.gtk libevdev libxml2 wayfire wayland gtk3 libevdev libxml2 wayfire wayland
wayland-protocols wf-config wf-shell wayland-protocols wf-config wf-shell
]; ];

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchurl, meson, ninja, pkg-config, wayland, git { stdenv, lib, fetchurl, meson, ninja, pkg-config, wayland, git
, alsaLib, gnome3, gtk-layer-shell, pulseaudio, wayfire, wf-config , alsaLib, gtkmm3, gtk-layer-shell, pulseaudio, wayfire, wf-config
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ meson ninja pkg-config wayland ]; nativeBuildInputs = [ meson ninja pkg-config wayland ];
buildInputs = [ buildInputs = [
alsaLib gnome3.gtkmm gtk-layer-shell pulseaudio wayfire wf-config alsaLib gtkmm3 gtk-layer-shell pulseaudio wayfire wf-config
]; ];
mesonFlags = [ "--sysconfdir" "/etc" ]; mesonFlags = [ "--sysconfdir" "/etc" ];

View File

@ -1,7 +1,8 @@
{ lib, stdenv, fetchurl }: { lib, stdenv, fetchurl }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "clean-3.0"; pname = "clean";
version = "3.0";
src = src =
if stdenv.hostPlatform.system == "i686-linux" then (fetchurl { if stdenv.hostPlatform.system == "i686-linux" then (fetchurl {
@ -45,8 +46,8 @@ stdenv.mkDerivation {
''; '';
homepage = "http://wiki.clean.cs.ru.nl/Clean"; homepage = "http://wiki.clean.cs.ru.nl/Clean";
license = lib.licenses.lgpl21; license = lib.licenses.bsd2;
maintainers = [ lib.maintainers.kkallio ]; maintainers = [ lib.maintainers.erin ];
platforms = [ "i686-linux" "x86_64-linux" ]; platforms = [ "i686-linux" "x86_64-linux" ];
}; };
} }

View File

@ -1,6 +1,6 @@
{ config, lib, stdenv, fetchurl, pkg-config, libtool { config, lib, stdenv, fetchurl, pkg-config, libtool
, zip, libffi, libsigsegv, readline, gmp , zip, libffi, libsigsegv, readline, gmp
, gnutls, gnome2, cairo, SDL, sqlite , gnutls, gtk2, cairo, SDL, sqlite
, emacsSupport ? config.emacsSupport or false, emacs ? null }: , emacsSupport ? config.emacsSupport or false, emacs ? null }:
assert emacsSupport -> (emacs != null); assert emacsSupport -> (emacs != null);
@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
# http://smalltalk.gnu.org/download # http://smalltalk.gnu.org/download
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
buildInputs = [ buildInputs = [
libtool zip libffi libsigsegv-shared readline gmp gnutls gnome2.gtk libtool zip libffi libsigsegv-shared readline gmp gnutls gtk2
cairo SDL sqlite cairo SDL sqlite
] ]
++ lib.optional emacsSupport emacs; ++ lib.optional emacsSupport emacs;

View File

@ -8,8 +8,8 @@ let
"i686" = "386"; "i686" = "386";
"x86_64" = "amd64"; "x86_64" = "amd64";
"aarch64" = "arm64"; "aarch64" = "arm64";
"armv6l" = "arm"; "armv6l" = "armv6l";
"armv7l" = "arm"; "armv7l" = "armv6l";
"powerpc64le" = "ppc64le"; "powerpc64le" = "ppc64le";
}.${platform.parsed.cpu.name} or (throw "Unsupported CPU ${platform.parsed.cpu.name}"); }.${platform.parsed.cpu.name} or (throw "Unsupported CPU ${platform.parsed.cpu.name}");

View File

@ -18,9 +18,8 @@ stdenv.mkDerivation rec {
dontConfigure = true; dontConfigure = true;
postPatch = '' postPatch = ''
substituteInPlace \ substituteInPlace Makefile \
--replace "CC = gcc" "CC = cc' \ --replace "CC = gcc" "CC = ${stdenv.cc.targetPrefix}cc"
Makefile
''; '';
installPhase = '' installPhase = ''

View File

@ -15,13 +15,12 @@ stdenv.mkDerivation rec {
dontConfigure = true; dontConfigure = true;
postPatch = '' postPatch = ''
substitueInPlace \ substituteInPlace Makefile \
--replace "DESTDIR" "PREFIX" \ --replace "DESTDIR" "PREFIX" \
--replace "CC = gcc" "CC = cc" \ --replace "CC = gcc" "CC = ${stdenv.cc.targetPrefix}cc" \
--replace "LDD = gcc" "LDD = ld" \ --replace "LDD = gcc" "LDD = ${stdenv.cc.targetPrefix}cc" \
--replace "CFLAGS = -O2" "CFLAGS ?=" \ --replace "CFLAGS = -O2" "CFLAGS ?=" \
--replace "LDFLAGS = -lc" "LDFLAGS ?= -lc" \ --replace "LDFLAGS = -lc" "LDFLAGS ?= -lc"
Makefile
''; '';
makeFlags = [ "PREFIX=${placeholder "out"}" ]; makeFlags = [ "PREFIX=${placeholder "out"}" ];

View File

@ -12,10 +12,11 @@ in mkCoqDerivation {
owner = "LPCIC"; owner = "LPCIC";
inherit version; inherit version;
defaultVersion = lib.switch coq.coq-version [ defaultVersion = lib.switch coq.coq-version [
{ case = "8.13"; out = "1.9.3"; } { case = "8.13"; out = "1.9.4"; }
{ case = "8.12"; out = "1.8.0"; } { case = "8.12"; out = "1.8.0"; }
{ case = "8.11"; out = "1.6.0_8.11"; } { case = "8.11"; out = "1.6.0_8.11"; }
] null; ] null;
release."1.9.4".sha256 = "0nii7238mya74f9g6147qmpg6gv6ic9b54x5v85nb6q60d9jh0jq";
release."1.9.3".sha256 = "198irm800fx3n8n56vx1c6f626cizp1d7jfkrc6ba4iqhb62ma0z"; release."1.9.3".sha256 = "198irm800fx3n8n56vx1c6f626cizp1d7jfkrc6ba4iqhb62ma0z";
release."1.9.2".sha256 = "1rr2fr8vjkc0is7vh1461aidz2iwkigdkp6bqss4hhv0c3ijnn07"; release."1.9.2".sha256 = "1rr2fr8vjkc0is7vh1461aidz2iwkigdkp6bqss4hhv0c3ijnn07";
release."1.8.1".sha256 = "1fbbdccdmr8g4wwpihzp4r2xacynjznf817lhijw6kqfav75zd0r"; release."1.8.1".sha256 = "1fbbdccdmr8g4wwpihzp4r2xacynjznf817lhijw6kqfav75zd0r";

View File

@ -3,7 +3,7 @@
# How to obtain `sha256`: # How to obtain `sha256`:
# nix-prefetch-url --unpack https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz # nix-prefetch-url --unpack https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz
mkDerivation { mkDerivation {
version = "1.11.3"; version = "1.11.4";
sha256 = "sha256-DqmKpMLxrXn23fsX/hrjDsYCmhD5jbVtvOX8EwKBakc="; sha256 = "sha256-qCX6hRWUbW+E5xaUhcYxRAnhnvncASUJck8lESlcDvk=";
minimumOTPVersion = "21"; minimumOTPVersion = "21";
} }

View File

@ -1,24 +0,0 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = "concurrencykit";
version = "0.6.0";
src = fetchurl {
url = "http://concurrencykit.org/releases/ck-${version}.tar.gz";
sha256 = "1pv21p7sjwwmbs2xblpy1lqk53r2i212yrqyjlr5dr3rlv87vqnp";
};
#Deleting this line causes "Unknown option --disable-static"
configurePhase = "./configure --prefix=$out";
enableParallelBuilding = true;
meta = with lib; {
description = "A library of safe, high-performance concurrent data structures";
homepage = "http://concurrencykit.org";
license = licenses.bsd2;
platforms = platforms.unix;
maintainers = [ maintainers.thoughtpolice ];
};
}

View File

@ -1,40 +1,47 @@
{ lib, stdenv, fetchurl, freetype, libGL, libGLU, OpenGL }: { lib
, stdenv
, fetchurl
, freetype
, libGL
, libGLU
, OpenGL
}:
let stdenv.mkDerivation rec {
name = "ftgl-2.1.3-rc5"; pname = "ftgl";
in version = "2.1.3-rc5";
stdenv.mkDerivation {
inherit name;
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/ftgl/${name}.tar.gz"; url = "mirror://sourceforge/${pname}-${version}.tar.gz";
sha256 = "0nsn4s6vnv5xcgxcw6q031amvh2zfj2smy1r5mbnjj2548hxcn2l"; hash = "sha256-VFjWISJFSGlXLTn4qoV0X8BdVRgAG876Y71su40mVls=";
}; };
buildInputs = [ freetype ] buildInputs = [
++ (if stdenv.isDarwin then freetype
[ OpenGL ] ] ++ (if stdenv.isDarwin then [
else OpenGL
[ libGL libGLU ]) ] else [
; libGL
libGLU
]);
configureFlags = [ "--with-ft-prefix=${lib.getDev freetype}" ]; configureFlags = [
"--with-ft-prefix=${lib.getDev freetype}"
];
enableParallelBuilding = true; enableParallelBuilding = true;
meta = { meta = with lib; {
homepage = "https://sourceforge.net/apps/mediawiki/ftgl/"; homepage = "https://sourceforge.net/apps/mediawiki/ftgl/";
description = "Font rendering library for OpenGL applications"; description = "Font rendering library for OpenGL applications";
license = lib.licenses.gpl3Plus;
longDescription = '' longDescription = ''
FTGL is a free cross-platform Open Source C++ library that uses FTGL is a free cross-platform Open Source C++ library that uses Freetype2
Freetype2 to simplify rendering fonts in OpenGL applications. FTGL to simplify rendering fonts in OpenGL applications. FTGL supports bitmaps,
supports bitmaps, pixmaps, texture maps, outlines, polygon mesh, pixmaps, texture maps, outlines, polygon mesh, and extruded polygon
and extruded polygon rendering modes. rendering modes.
''; '';
license = licenses.gpl3Plus;
platforms = lib.platforms.unix; maintainers = with maintainers; [ AndersonTorres ];
maintainers = []; platforms = platforms.unix;
}; };
} }

View File

@ -0,0 +1,38 @@
{ lib
, stdenv
, fetchFromRepoOrCz
, cmake
, libGL
, libpng
, pkg-config
, zlib
}:
stdenv.mkDerivation rec {
pname = "glpng";
version = "1.46";
src = fetchFromRepoOrCz {
repo = "glpng";
rev = "v${version}";
hash = "sha256-C7EHaBN0PE/HJB6zcIaYU63+o7/MEz4WU1xr/kIOanM=";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
libGL
libpng
zlib
];
meta = with lib; {
homepage = "https://repo.or.cz/glpng.git/blob_plain/HEAD:/glpng.htm";
description = "PNG loader for OpenGL";
license = licenses.mit;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
};
}

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, python2, perl, yacc, flex { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, python3, perl, yacc, flex
, texinfo, perlPackages , texinfo, perlPackages
, openldap, libcap_ng, sqlite, openssl, db, libedit, pam , openldap, libcap_ng, sqlite, openssl, db, libedit, pam
, CoreFoundation, Security, SystemConfiguration , CoreFoundation, Security, SystemConfiguration
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
patches = [ ./heimdal-make-missing-headers.patch ]; patches = [ ./heimdal-make-missing-headers.patch ];
nativeBuildInputs = [ autoreconfHook pkg-config python2 perl yacc flex texinfo ] nativeBuildInputs = [ autoreconfHook pkg-config python3 perl yacc flex texinfo ]
++ (with perlPackages; [ JSON ]); ++ (with perlPackages; [ JSON ]);
buildInputs = optionals (stdenv.isLinux) [ libcap_ng ] buildInputs = optionals (stdenv.isLinux) [ libcap_ng ]
++ [ db sqlite openssl libedit openldap pam] ++ [ db sqlite openssl libedit openldap pam]

View File

@ -4,7 +4,7 @@
, gtkVersion ? "3" , gtkVersion ? "3"
, gtk2, libayatana-indicator-gtk2, libdbusmenu-gtk2 , gtk2, libayatana-indicator-gtk2, libdbusmenu-gtk2
, gtk3, libayatana-indicator-gtk3, libdbusmenu-gtk3 , gtk3, libayatana-indicator-gtk3, libdbusmenu-gtk3
, dbus-glib, python2, python2Packages , dbus-glib,
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
sha256 = "1sba0w455rdkadkhxrx4fr63m0d9blsbb1q1hcshxw1k1z2nh1gk"; sha256 = "1sba0w455rdkadkhxrx4fr63m0d9blsbb1q1hcshxw1k1z2nh1gk";
}; };
nativeBuildInputs = [ pkg-config autoreconfHook gtk-doc gobject-introspection python2 python2Packages.pygtk dbus-glib ]; nativeBuildInputs = [ pkg-config autoreconfHook gtk-doc gobject-introspection dbus-glib ];
buildInputs = buildInputs =
lib.lists.optional (gtkVersion == "2") libayatana-indicator-gtk2 lib.lists.optional (gtkVersion == "2") libayatana-indicator-gtk2

View File

@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
license = with licenses; [ asl20 bsd2 ]; license = with licenses; [ asl20 bsd2 ];
homepage = "http://concurrencykit.org/"; homepage = "http://concurrencykit.org/";
platforms = platforms.unix; platforms = platforms.unix;
maintainers = with maintainers; [ chessai ]; maintainers = with maintainers; [ chessai thoughtpolice ];
}; };
} }

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchurl, pkg-config, meson, ninja, makeFontsConf, vala, fetchpatch { lib, stdenv, fetchurl, pkg-config, meson, ninja, makeFontsConf, vala, fetchpatch
, gnome3, glib, json-glib, libarchive, libsoup, gobject-introspection }: , gnome3, libgee, glib, json-glib, libarchive, libsoup, gobject-introspection }:
let let
pname = "libhttpseverywhere"; pname = "libhttpseverywhere";
@ -13,7 +13,7 @@ in stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ vala gobject-introspection meson ninja pkg-config ]; nativeBuildInputs = [ vala gobject-introspection meson ninja pkg-config ];
buildInputs = [ glib gnome3.libgee json-glib libsoup libarchive ]; buildInputs = [ glib libgee json-glib libsoup libarchive ];
# Fixes build with vala >=0.42 # Fixes build with vala >=0.42
patches = [ patches = [

View File

@ -64,7 +64,12 @@ let
in { in {
libressl_3_1 = generic { libressl_3_1 = generic {
version = "3.1.4"; version = "3.1.5";
sha256 = "1dnbbnr43jashxivnafmh9gnn57c7ayva788ba03z633k6f18k21"; sha256 = "1504a1sf43frw43j14pij0q1f48rm5q86ggrlxxhw708qp7ds4rc";
};
libressl_3_2 = generic {
version = "3.2.5";
sha256 = "1zkwrs3b19s1ybz4q9hrb7pqsbsi8vxcs44qanfy11fkc7ynb2kr";
}; };
} }

View File

@ -0,0 +1,59 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "md4c";
version = "0.4.7";
src = fetchFromGitHub {
owner = "mity";
repo = pname;
rev = "release-${version}";
hash = "sha256-nfMXUP1wu3ifn1QVTO/+XcfFRsThG8PlmYRv+b8AYlQ=";
};
nativeBuildInputs = [
cmake
pkg-config
];
meta = with lib; {
homepage = "https://github.com/mity/md4c";
description = "Markdown parser made in C";
longDescription = ''
MD4C is Markdown parser implementation in C, with the following features:
- Compliance: Generally, MD4C aims to be compliant to the latest version
of CommonMark specification. Currently, we are fully compliant to
CommonMark 0.29.
- Extensions: MD4C supports some commonly requested and accepted
extensions. See below.
- Performance: MD4C is very fast.
- Compactness: MD4C parser is implemented in one source file and one
header file. There are no dependencies other than standard C library.
- Embedding: MD4C parser is easy to reuse in other projects, its API is
very straightforward: There is actually just one function, md_parse().
- Push model: MD4C parses the complete document and calls few callback
functions provided by the application to inform it about a start/end of
every block, a start/end of every span, and with any textual contents.
- Portability: MD4C builds and works on Windows and POSIX-compliant
OSes. (It should be simple to make it run also on most other platforms,
at least as long as the platform provides C standard library, including
a heap memory management.)
- Encoding: MD4C by default expects UTF-8 encoding of the input
document. But it can be compiled to recognize ASCII-only control
characters (i.e. to disable all Unicode-specific code), or (on Windows)
to expect UTF-16 (i.e. what is on Windows commonly called just
"Unicode"). See more details below.
- Permissive license: MD4C is available under the MIT license.
'';
license = licenses.mit;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.all;
};
}
# TODO: enable tests (needs Python)

View File

@ -1,4 +1,15 @@
{ lib, stdenv, fetchurl, boost, fastjet, gfortran, lhapdf, python2, root, yoda, zlib }: { lib
, stdenv
, fetchurl
, boost
, fastjet
, gfortran
, lhapdf
, python2
, root
, yoda
, zlib
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "fastnlo_toolkit"; pname = "fastnlo_toolkit";
@ -9,8 +20,19 @@ stdenv.mkDerivation rec {
sha256 = "1h41xnqcz401x3zbs8i2dsb4xlhbv8i5ps0561p6y7gcyridgcbl"; sha256 = "1h41xnqcz401x3zbs8i2dsb4xlhbv8i5ps0561p6y7gcyridgcbl";
}; };
buildInputs = [ boost fastjet gfortran gfortran.cc.lib lhapdf python2 root yoda ]; buildInputs = [
propagatedBuildInputs = [ zlib ]; boost
fastjet
gfortran
gfortran.cc.lib
lhapdf
python2
root
yoda
];
propagatedBuildInputs = [
zlib
];
preConfigure = '' preConfigure = ''
substituteInPlace ./fastnlotoolkit/Makefile.in \ substituteInPlace ./fastnlotoolkit/Makefile.in \
@ -23,11 +45,22 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
meta = { meta = with lib; {
description = "A computer code to create and evaluate fast interpolation tables of pre-computed coefficients in perturbation theory for observables in hadron-induced processes"; homepage = "http://fastnlo.hepforge.org";
license = lib.licenses.gpl3; description = "Fast pQCD calculations for hadron-induced processes";
homepage = "http://fastnlo.hepforge.org"; longDescription = ''
platforms = lib.platforms.unix; The fastNLO project provides computer code to create and evaluate fast
maintainers = with lib.maintainers; [ veprbl ]; interpolation tables of pre-computed coefficients in perturbation theory
for observables in hadron-induced processes.
This allows fast theory predictions of these observables for arbitrary
parton distribution functions (of regular shape), renormalization or
factorization scale choices, and/or values of alpha_s(Mz) as e.g. needed
in PDF fits or in systematic studies. Very time consuming complete
recalculations are thus avoided.
'';
license = licenses.gpl3Plus;
maintainers = with maintainers; [ veprbl ];
platforms = platforms.unix;
}; };
} }

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, zlib, perl, pkg-config, python, openssl }: { lib, stdenv, fetchFromGitHub, zlib, pkg-config, python3, openssl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rdkafka"; pname = "rdkafka";
@ -11,9 +11,9 @@ stdenv.mkDerivation rec {
sha256 = "sha256-EoNzxwuLiYi6sMhyqD/x+ku6BKA+i5og4XsUy2JBN0U="; sha256 = "sha256-EoNzxwuLiYi6sMhyqD/x+ku6BKA+i5og4XsUy2JBN0U=";
}; };
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config python3 ];
buildInputs = [ zlib perl python openssl ]; buildInputs = [ zlib openssl ];
NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow"; NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";

View File

@ -8,6 +8,14 @@
, cudatoolkit , cudatoolkit
, fetchurl , fetchurl
, addOpenGLRunpath , addOpenGLRunpath
, # The distributed version of CUDNN includes both dynamically liked .so files,
# as well as statically linked .a files. However, CUDNN is quite large
# (multiple gigabytes), so you can save some space in your nix store by
# removing the statically linked libraries if you are not using them.
#
# Setting this to true removes the statically linked .a files.
# Setting this to false keeps these statically linked .a files.
removeStatic ? false
}: }:
stdenv.mkDerivation { stdenv.mkDerivation {
@ -23,6 +31,8 @@ stdenv.mkDerivation {
nativeBuildInputs = [ addOpenGLRunpath ]; nativeBuildInputs = [ addOpenGLRunpath ];
installPhase = '' installPhase = ''
runHook preInstall
function fixRunPath { function fixRunPath {
p=$(patchelf --print-rpath $1) p=$(patchelf --print-rpath $1)
patchelf --set-rpath "''${p:+$p:}${lib.makeLibraryPath [ stdenv.cc.cc ]}:\$ORIGIN/" $1 patchelf --set-rpath "''${p:+$p:}${lib.makeLibraryPath [ stdenv.cc.cc ]}:\$ORIGIN/" $1
@ -35,6 +45,10 @@ stdenv.mkDerivation {
mkdir -p $out mkdir -p $out
cp -a include $out/include cp -a include $out/include
cp -a lib64 $out/lib64 cp -a lib64 $out/lib64
'' + lib.optionalString removeStatic ''
rm -f $out/lib64/*.a
'' + ''
runHook postInstall
''; '';
# Set RUNPATH so that libcuda in /run/opengl-driver(-32)/lib can be found. # Set RUNPATH so that libcuda in /run/opengl-driver(-32)/lib can be found.

View File

@ -8,8 +8,8 @@
, fixDarwinDylibNames , fixDarwinDylibNames
, cudaSupport , cudaSupport
, cudatoolkit_10_2 , cudatoolkit_11_1
, cudnn_cudatoolkit_10_2 , cudnn_cudatoolkit_11_1
}: }:
let let
@ -38,7 +38,7 @@ in stdenv.mkDerivation {
installPhase = '' installPhase = ''
# Copy headers and CMake files. # Copy headers and CMake files.
install -Dm755 -t $dev/lib lib/*.a mkdir -p $dev
cp -r include $dev cp -r include $dev
cp -r share $dev cp -r share $dev
@ -109,8 +109,8 @@ in stdenv.mkDerivation {
passthru.tests.cmake = callPackage ./test { passthru.tests.cmake = callPackage ./test {
inherit cudaSupport; inherit cudaSupport;
cudatoolkit = cudatoolkit_10_2; cudatoolkit = cudatoolkit_11_1;
cudnn = cudnn_cudatoolkit_10_2; cudnn = cudnn_cudatoolkit_11_1;
}; };
meta = with lib; { meta = with lib; {

View File

@ -8,7 +8,7 @@ version: {
hash = "sha256-xBaNyI7eiQnSArHMITonrQQLZnZCZK/SWKOTWnxzdpc="; hash = "sha256-xBaNyI7eiQnSArHMITonrQQLZnZCZK/SWKOTWnxzdpc=";
}; };
x86_64-linux-cuda = { x86_64-linux-cuda = {
url = "https://download.pytorch.org/libtorch/cu102/libtorch-cxx11-abi-shared-with-deps-${version}.zip"; url = "https://download.pytorch.org/libtorch/cu111/libtorch-cxx11-abi-shared-with-deps-${version}%2Bcu111.zip";
hash = "sha256-rNEyE4+jfeX7cU0aNYd5b0pZGYT0PNPnDnS1PIsrMeM="; hash = "sha256-uQ7ptOuzowJ0JSPIvJHyNotBfpsqAnxpMDLq7Vl6L00=";
}; };
} }

View File

@ -225,7 +225,7 @@ $out/lib/common-lisp/query-fs"
x.deps; x.deps;
}; };
cl-cffi-gtk-glib = addNativeLibs [pkgs.glib]; cl-cffi-gtk-glib = addNativeLibs [pkgs.glib];
cl-cffi-gtk-gdk-pixbuf = addNativeLibs [pkgs.gdk_pixbuf]; cl-cffi-gtk-gdk-pixbuf = addNativeLibs [pkgs.gdk-pixbuf];
cl-cffi-gtk-cairo = addNativeLibs [pkgs.cairo]; cl-cffi-gtk-cairo = addNativeLibs [pkgs.cairo];
cl-cffi-gtk-pango = addNativeLibs [pkgs.pango]; cl-cffi-gtk-pango = addNativeLibs [pkgs.pango];
cl-cffi-gtk-gdk = addNativeLibs [pkgs.gtk3]; cl-cffi-gtk-gdk = addNativeLibs [pkgs.gtk3];

View File

@ -11,6 +11,6 @@ self = rec {
lispPackages.quicklisp-to-nix lispPackages.quicklisp-to-nix-system-info lispPackages.quicklisp-to-nix lispPackages.quicklisp-to-nix-system-info
]; ];
CPATH = "${libfixposix}/include"; CPATH = "${libfixposix}/include";
LD_LIBRARY_PATH = "${openssl.out}/lib:${fuse}/lib:${libuv}/lib:${libev}/lib:${libmysqlclient}/lib:${libmysqlclient}/lib/mysql:${postgresql.lib}/lib:${sqlite.out}/lib:${libfixposix}/lib:${freetds}/lib:${openssl_lib_marked}/lib:${glib.out}/lib:${gdk_pixbuf}/lib:${cairo}/lib:${pango.out}/lib:${gtk3}/lib:${webkitgtk}/lib"; LD_LIBRARY_PATH = "${openssl.out}/lib:${fuse}/lib:${libuv}/lib:${libev}/lib:${libmysqlclient}/lib:${libmysqlclient}/lib/mysql:${postgresql.lib}/lib:${sqlite.out}/lib:${libfixposix}/lib:${freetds}/lib:${openssl_lib_marked}/lib:${glib.out}/lib:${gdk-pixbuf}/lib:${cairo}/lib:${pango.out}/lib:${gtk3}/lib:${webkitgtk}/lib";
}; };
in stdenv.mkDerivation self in stdenv.mkDerivation self

View File

@ -5,16 +5,16 @@ deployAndroidPackage {
buildInputs = [ autoPatchelfHook makeWrapper ] buildInputs = [ autoPatchelfHook makeWrapper ]
++ lib.optional (os == "linux") [ ++ lib.optional (os == "linux") [
pkgs.glibc pkgs.glibc
pkgs.xlibs.libX11 pkgs.xorg.libX11
pkgs.xlibs.libXext pkgs.xorg.libXext
pkgs.xlibs.libXdamage pkgs.xorg.libXdamage
pkgs.xlibs.libXfixes pkgs.xorg.libXfixes
pkgs.xlibs.libxcb pkgs.xorg.libxcb
pkgs.xlibs.libXcomposite pkgs.xorg.libXcomposite
pkgs.xlibs.libXcursor pkgs.xorg.libXcursor
pkgs.xlibs.libXi pkgs.xorg.libXi
pkgs.xlibs.libXrender pkgs.xorg.libXrender
pkgs.xlibs.libXtst pkgs.xorg.libXtst
pkgs.libcxx pkgs.libcxx
pkgs.libGL pkgs.libGL
pkgs.libpulseaudio pkgs.libpulseaudio

View File

@ -4,7 +4,7 @@ deployAndroidPackage {
name = "androidsdk"; name = "androidsdk";
inherit os package; inherit os package;
buildInputs = [ autoPatchelfHook makeWrapper ] buildInputs = [ autoPatchelfHook makeWrapper ]
++ lib.optional (os == "linux") [ pkgs.glibc pkgs.xlibs.libX11 pkgs.xlibs.libXrender pkgs.xlibs.libXext pkgs.fontconfig pkgs.freetype pkgs_i686.glibc pkgs_i686.xlibs.libX11 pkgs_i686.xlibs.libXrender pkgs_i686.xlibs.libXext pkgs_i686.fontconfig.lib pkgs_i686.freetype pkgs_i686.zlib pkgs.fontconfig.lib ]; ++ lib.optional (os == "linux") [ pkgs.glibc pkgs.xorg.libX11 pkgs.xorg.libXrender pkgs.xorg.libXext pkgs.fontconfig pkgs.freetype pkgs_i686.glibc pkgs_i686.xorg.libX11 pkgs_i686.xorg.libXrender pkgs_i686.xorg.libXext pkgs_i686.fontconfig.lib pkgs_i686.freetype pkgs_i686.zlib pkgs.fontconfig.lib ];
patchInstructions = '' patchInstructions = ''
${lib.optionalString (os == "linux") '' ${lib.optionalString (os == "linux") ''
@ -27,7 +27,7 @@ deployAndroidPackage {
# Wrap monitor script # Wrap monitor script
wrapProgram $PWD/monitor \ wrapProgram $PWD/monitor \
--prefix PATH : ${pkgs.jdk8}/bin \ --prefix PATH : ${pkgs.jdk8}/bin \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.xlibs.libX11 pkgs.xlibs.libXtst ]} --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.xorg.libX11 pkgs.xorg.libXtst ]}
# Patch all script shebangs # Patch all script shebangs
patchShebangs . patchShebangs .

View File

@ -107,7 +107,7 @@ let
mirakurun = super.mirakurun.override rec { mirakurun = super.mirakurun.override rec {
nativeBuildInputs = with pkgs; [ makeWrapper ]; nativeBuildInputs = with pkgs; [ makeWrapper ];
postInstall = let postInstall = let
runtimeDeps = [ nodejs ] ++ (with pkgs; [ bash which v4l_utils ]); runtimeDeps = [ nodejs ] ++ (with pkgs; [ bash which v4l-utils ]);
in in
'' ''
substituteInPlace $out/lib/node_modules/mirakurun/processes.json \ substituteInPlace $out/lib/node_modules/mirakurun/processes.json \

View File

@ -3,13 +3,13 @@
buildDunePackage rec { buildDunePackage rec {
pname = "encore"; pname = "encore";
version = "0.7"; version = "0.8";
minimumOCamlVersion = "4.07"; minimumOCamlVersion = "4.07";
src = fetchurl { src = fetchurl {
url = "https://github.com/mirage/encore/releases/download/v${version}/encore-v${version}.tbz"; url = "https://github.com/mirage/encore/releases/download/v${version}/encore-v${version}.tbz";
sha256 = "0cwmhkj5jmk3z5y0agmkf5ygpgxynjkq2d7d50jgzmnqs7f6g7nh"; sha256 = "a406bc9863b04bb424692045939d6c170a2bb65a98521ae5608d25b0559344f6";
}; };
useDune2 = true; useDune2 = true;

View File

@ -1,9 +1,11 @@
{ lib, fetchurl, buildDunePackage, psq }: { lib, fetchurl, buildDunePackage, ocaml, psq, qcheck-alcotest }:
buildDunePackage rec { buildDunePackage rec {
pname = "lru"; pname = "lru";
version = "0.3.0"; version = "0.3.0";
useDune2 = true;
src = fetchurl { src = fetchurl {
url = "https://github.com/pqwy/lru/releases/download/v${version}/lru-v${version}.tbz"; url = "https://github.com/pqwy/lru/releases/download/v${version}/lru-v${version}.tbz";
sha256 = "1ab9rd7cq15ml8x0wjl44wy99h5z7x4g9vkkz4i2d7n84ghy7vw4"; sha256 = "1ab9rd7cq15ml8x0wjl44wy99h5z7x4g9vkkz4i2d7n84ghy7vw4";
@ -11,6 +13,9 @@ buildDunePackage rec {
propagatedBuildInputs = [ psq ]; propagatedBuildInputs = [ psq ];
doCheck = lib.versionAtLeast ocaml.version "4.05";
checkInputs = [ qcheck-alcotest ];
meta = { meta = {
homepage = "https://github.com/pqwy/lru"; homepage = "https://github.com/pqwy/lru";
description = "Scalable LRU caches for OCaml"; description = "Scalable LRU caches for OCaml";

View File

@ -14,10 +14,10 @@
, lib , lib
}: }:
let let
version = "1.4.0"; version = "1.4.1";
src = fetchzip { src = fetchzip {
url = "https://github.com/ocaml/ocaml-lsp/releases/download/${version}/jsonrpc-${version}.tbz"; url = "https://github.com/ocaml/ocaml-lsp/releases/download/${version}/jsonrpc-${version}.tbz";
sha256 = "16vvwq3d9xmr91r6yv5i2gyqcdliji7asyq4g6iygi617233fa33"; sha256 = "0hzpw17qfhb0cxgwah1fv4k300r363dy1kv0977anl44dlanx1v5";
}; };
# unvendor some (not all) dependencies. # unvendor some (not all) dependencies.
@ -73,6 +73,6 @@ buildDunePackage {
description = "OCaml Language Server Protocol implementation"; description = "OCaml Language Server Protocol implementation";
license = lib.licenses.isc; license = lib.licenses.isc;
platforms = platforms.unix; platforms = platforms.unix;
maintainers = [ maintainers.symphorien ]; maintainers = [ maintainers.symphorien maintainers.marsam ];
}; };
} }

View File

@ -1,5 +1,5 @@
{ lib, buildDunePackage, fetchurl { lib, buildDunePackage, fetchurl
, bisect_ppx, ppx_cstruct , bisect_ppx, ppx_cstruct, pkg-config
, rresult, cstruct, cstruct-lwt, mirage-net, mirage-clock , rresult, cstruct, cstruct-lwt, mirage-net, mirage-clock
, mirage-random, mirage-stack, mirage-protocols, mirage-time , mirage-random, mirage-stack, mirage-protocols, mirage-time
, ipaddr, macaddr, macaddr-cstruct, mirage-profile, fmt , ipaddr, macaddr, macaddr-cstruct, mirage-profile, fmt
@ -11,18 +11,23 @@
buildDunePackage rec { buildDunePackage rec {
pname = "tcpip"; pname = "tcpip";
version = "6.0.0"; version = "6.1.0";
useDune2 = true; useDune2 = true;
src = fetchurl { src = fetchurl {
url = "https://github.com/mirage/mirage-${pname}/releases/download/v${version}/${pname}-v${version}.tbz"; url = "https://github.com/mirage/mirage-${pname}/releases/download/v${version}/${pname}-v${version}.tbz";
sha256 = "0wbrs8jz1vw3zdrqmqcwawxh4yhc2gy30rw7gz4w116cblkvnb8s"; sha256 = "e81c98a6e80e05f9fa4e5fbee50e6c247f6011254c7b1d9a0e58bae318c1f0c8";
}; };
patches = [
./no-opam-pkg-config-path.patch
];
nativeBuildInputs = [ nativeBuildInputs = [
bisect_ppx bisect_ppx
ppx_cstruct ppx_cstruct
pkg-config
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -0,0 +1,21 @@
diff --git a/freestanding/Makefile b/freestanding/Makefile
index f22d220d..4bb3ac57 100644
--- a/freestanding/Makefile
+++ b/freestanding/Makefile
@@ -1,6 +1,4 @@
-PKG_CONFIG_PATH := $(shell opam config var prefix)/lib/pkgconfig
-
-EXISTS := $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --exists ocaml-freestanding; echo $$?)
+EXISTS := $(shell pkg-config --exists ocaml-freestanding; echo $$?)
.PHONY: all clean
all: libtcpip_freestanding_stubs.a
@@ -10,7 +8,7 @@ libtcpip_freestanding_stubs.a:
touch $@
else
CC ?= cc
-FREESTANDING_CFLAGS := $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --cflags ocaml-freestanding)
+FREESTANDING_CFLAGS := $(shell pkg-config --cflags ocaml-freestanding)
CFLAGS := $(FREESTANDING_CFLAGS)
OBJS=checksum_stubs.o

View File

@ -8,14 +8,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiolyric"; pname = "aiolyric";
version = "1.0.5"; version = "1.0.6";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "timmo001"; owner = "timmo001";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "00kq3dsjcfhjzn585phb3g168dbg53wrqq7g8a4gljs49c2mf5qx"; sha256 = "1lnzsdw6kvgk0762f3vyw4xfzn7qkvsff16q61gm0ryjqg9j8whx";
}; };
propagatedBuildInputs = [ aiohttp ]; propagatedBuildInputs = [ aiohttp ];

View File

@ -1,25 +1,24 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchFromGitHub , fetchFromGitHub
, isPy27 , pythonOlder
, pygments , pygments
, pytestCheckHook , pytestCheckHook
, pytestcov , pytest-cov
, uvloop , uvloop
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiorun"; pname = "aiorun";
version = "2020.6.1"; version = "2020.12.1";
format = "flit"; format = "flit";
disabled = pythonOlder "3.5";
disabled = isPy27;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cjrh"; owner = "cjrh";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "00mq5ylhhdfdqrh7zdqabf3wy85jrkqvgfb1421ll46fsjim2d14"; sha256 = "sha256-ktc2cmoPNYcsVyKCWs+ivhV5onywFIrdDRBiBKrdiF4=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -28,7 +27,7 @@ buildPythonPackage rec {
checkInputs = [ checkInputs = [
pytestCheckHook pytestCheckHook
pytestcov pytest-cov
uvloop uvloop
]; ];
@ -43,6 +42,6 @@ buildPythonPackage rec {
description = "Boilerplate for asyncio applications"; description = "Boilerplate for asyncio applications";
homepage = "https://github.com/cjrh/aiorun"; homepage = "https://github.com/cjrh/aiorun";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.costrouc ]; maintainers = with maintainers; [ costrouc ];
}; };
} }

View File

@ -10,14 +10,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "asyncwhois"; pname = "asyncwhois";
version = "0.3.0"; version = "0.3.1";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pogzyb"; owner = "pogzyb";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1514fz942yix7fh4yg982mxjp8c0qb6a0i4fw5wsc3xx4g86zcdg"; sha256 = "1wp6pwnc1inzzn9nhkwq9m9ab1aylw0hzq94w6p2dsm2njfqma8h";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -11,12 +11,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "azure-mgmt-datafactory"; pname = "azure-mgmt-datafactory";
version = "1.0.0"; version = "1.1.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
extension = "zip"; extension = "zip";
sha256 = "d4f3984eca74b1e3691467aadc09626e578ed1fc5ef410872d474f3e7653916a"; sha256 = "433ad8e83bd8df4abc5af47a0e3a7a4515f79931db4036f2bccd65b5a9e88bfb";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

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