Merge remote-tracking branch 'upstream/staging-next' into HEAD

This commit is contained in:
Jörg Thalheim 2021-04-17 16:37:04 +02:00
commit b2a1e04eed
No known key found for this signature in database
GPG key ID: B3F5D81B0C6967C4
239 changed files with 7439 additions and 3748 deletions

View file

@ -250,11 +250,19 @@ rec {
# BSDs
amd64-netbsd = {
amd64-netbsd = lib.warn "The amd64-netbsd system example is deprecated. Use x86_64-netbsd instead." x86_64-netbsd;
x86_64-netbsd = {
config = "x86_64-unknown-netbsd";
libc = "nblibc";
};
x86_64-netbsd-llvm = {
config = "x86_64-unknown-netbsd";
libc = "nblibc";
useLLVM = true;
};
#
# WASM
#

View file

@ -4067,6 +4067,12 @@
githubId = 12491746;
name = "Masato Yonekawa";
};
hzeller = {
email = "h.zeller@acm.org";
github = "hzeller";
githubId = 140937;
name = "Henner Zeller";
};
i077 = {
email = "nixpkgs@imranhossa.in";
github = "i077";

View file

@ -955,6 +955,11 @@ environment.systemPackages = [
<link linkend="opt-boot.extraSystemdUnitPaths">boot.extraSystemdUnitPaths</link> list.
</para>
</listitem>
<listitem>
<para>
PostgreSQL 9.5 is scheduled EOL during the 21.05 life cycle and has been removed.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View file

@ -366,6 +366,7 @@
./services/games/minecraft-server.nix
./services/games/minetest-server.nix
./services/games/openarena.nix
./services/games/quake3-server.nix
./services/games/teeworlds.nix
./services/games/terraria.nix
./services/hardware/acpid.nix

View file

@ -295,8 +295,7 @@ in
# systems!
mkDefault (if versionAtLeast config.system.stateVersion "20.03" then pkgs.postgresql_11
else if versionAtLeast config.system.stateVersion "17.09" then pkgs.postgresql_9_6
else if versionAtLeast config.system.stateVersion "16.03" then pkgs.postgresql_9_5
else throw "postgresql_9_4 was removed, please upgrade your postgresql version.");
else throw "postgresql_9_5 was removed, please upgrade your postgresql version.");
services.postgresql.dataDir = mkDefault "/var/lib/postgresql/${cfg.package.psqlSchema}";

View file

@ -0,0 +1,111 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.quake3-server;
configFile = pkgs.writeText "q3ds-extra.cfg" ''
set net_port ${builtins.toString cfg.port}
${cfg.extraConfig}
'';
defaultBaseq3 = pkgs.requireFile rec {
name = "baseq3";
hashMode = "recursive";
sha256 = "5dd8ee09eabd45e80450f31d7a8b69b846f59738726929298d8a813ce5725ed3";
message = ''
Unfortunately, we cannot download ${name} automatically.
Please purchase a legitimate copy of Quake 3 and change into the installation directory.
You can either add all relevant files to the nix-store like this:
mkdir /tmp/baseq3
cp baseq3/pak*.pk3 /tmp/baseq3
nix-store --add-fixed sha256 --recursive /tmp/baseq3
Alternatively you can set services.quake3-server.baseq3 to a path and copy the baseq3 directory into
$services.quake3-server.baseq3/.q3a/
'';
};
home = pkgs.runCommand "quake3-home" {} ''
mkdir -p $out/.q3a/baseq3
for file in ${cfg.baseq3}/*; do
ln -s $file $out/.q3a/baseq3/$(basename $file)
done
ln -s ${configFile} $out/.q3a/baseq3/nix.cfg
'';
in {
options = {
services.quake3-server = {
enable = mkEnableOption "Quake 3 dedicated server";
port = mkOption {
type = types.port;
default = 27960;
description = ''
UDP Port the server should listen on.
'';
};
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Open the firewall.
'';
};
extraConfig = mkOption {
type = types.lines;
default = "";
example = ''
seta rconPassword "superSecret" // sets RCON password for remote console
seta sv_hostname "My Quake 3 server" // name that appears in server list
'';
description = ''
Extra configuration options. Note that options changed via RCON will not be persisted. To list all possible
options, use "cvarlist 1" via RCON.
'';
};
baseq3 = mkOption {
type = types.either types.package types.path;
default = defaultBaseq3;
example = "/var/lib/q3ds";
description = ''
Path to the baseq3 files (pak*.pk3). If this is on the nix store (type = package) all .pk3 files should be saved
in the top-level directory. If this is on another filesystem (e.g /var/lib/baseq3) the .pk3 files are searched in
$baseq3/.q3a/baseq3/
'';
};
};
};
config = let
baseq3InStore = builtins.typeOf cfg.baseq3 == "set";
in mkIf cfg.enable {
networking.firewall.allowedUDPPorts = mkIf cfg.openFirewall [ cfg.port ];
systemd.services.q3ds = {
description = "Quake 3 dedicated server";
wantedBy = [ "multi-user.target" ];
after = [ "networking.target" ];
environment.HOME = if baseq3InStore then home else cfg.baseq3;
serviceConfig = with lib; {
Restart = "always";
DynamicUser = true;
WorkingDirectory = home;
# It is possible to alter configuration files via RCON. To ensure reproducibility we have to prevent this
ReadOnlyPaths = if baseq3InStore then home else cfg.baseq3;
ExecStartPre = optionalString (!baseq3InStore) "+${pkgs.coreutils}/bin/cp ${configFile} ${cfg.baseq3}/.q3a/baseq3/nix.cfg";
ExecStart = "${pkgs.ioquake3}/ioq3ded.x86_64 +exec nix.cfg";
};
};
};
meta.maintainers = with maintainers; [ f4814n ];
}

View file

@ -405,7 +405,7 @@ in
};
} // optionalAttrs (cfg.createMailUser && cfg.mailUser != null) {
${cfg.mailUser} =
{ description = "Virtual Mail User"; } // optionalAttrs (cfg.mailGroup != null)
{ description = "Virtual Mail User"; isSystemUser = true; } // optionalAttrs (cfg.mailGroup != null)
{ group = cfg.mailGroup; };
};

View file

@ -165,7 +165,7 @@ in {
baseUrl = mkOption {
type = types.str;
default = "http://localhost/hyperkitty/";
default = "http://localhost:18507/archives/";
description = ''
Where can Mailman connect to Hyperkitty's internal API, preferably on
localhost?
@ -391,6 +391,7 @@ in {
plugins = ["python3"];
home = pythonEnv;
module = "mailman_web.wsgi";
http = "127.0.0.1:18507";
};
uwsgiConfigFile = pkgs.writeText "uwsgi-mailman.json" (builtins.toJSON uwsgiConfig);
in {
@ -453,7 +454,7 @@ in {
};
meta = {
maintainers = with lib.maintainers; [ lheckemann ];
maintainers = with lib.maintainers; [ lheckemann qyliss ];
doc = ./mailman.xml;
};

View file

@ -204,6 +204,7 @@ with lib;
users.${cfg.user} = {
description = "Nullmailer relay-only mta user";
group = cfg.group;
isSystemUser = true;
};
groups.${cfg.group} = { };

View file

@ -192,8 +192,8 @@ in
# Auto-migrate on first run or if the package has changed
versionFile="${cfg.dataDir}/src-version"
if [[ $(cat "$versionFile" 2>/dev/null) != ${pkgs.etebase-server} ]]; then
${pythonEnv}/bin/etebase-server migrate
${pythonEnv}/bin/etebase-server collectstatic
${pythonEnv}/bin/etebase-server migrate --no-input
${pythonEnv}/bin/etebase-server collectstatic --no-input --clear
echo ${pkgs.etebase-server} > "$versionFile"
fi
'';
@ -211,6 +211,7 @@ in
users = optionalAttrs (cfg.user == defaultUser) {
users.${defaultUser} = {
isSystemUser = true;
group = defaultUser;
home = cfg.dataDir;
};

View file

@ -50,15 +50,10 @@ let
# List of components used in config
extraComponents = filter useComponent availableComponents;
testedPackage = if (cfg.autoExtraComponents && cfg.config != null)
package = if (cfg.autoExtraComponents && cfg.config != null)
then (cfg.package.override { inherit extraComponents; })
else cfg.package;
# overridePythonAttrs has to be applied after override
package = testedPackage.overridePythonAttrs (oldAttrs: {
doCheck = false;
});
# If you are changing this, please update the description in applyDefaultConfig
defaultConfig = {
homeassistant.time_zone = config.time.timeZone;
@ -188,9 +183,13 @@ in {
};
package = mkOption {
default = pkgs.home-assistant;
default = pkgs.home-assistant.overrideAttrs (oldAttrs: {
doInstallCheck = false;
});
defaultText = literalExample ''
pkgs.home-assistant
pkgs.home-assistant.overrideAttrs (oldAttrs: {
doInstallCheck = false;
})
'';
type = types.package;
example = literalExample ''
@ -199,12 +198,11 @@ in {
}
'';
description = ''
Home Assistant package to use. Tests are automatically disabled, as they take a considerable amout of time to complete.
Home Assistant package to use. By default the tests are disabled, as they take a considerable amout of time to complete.
Override <literal>extraPackages</literal> or <literal>extraComponents</literal> in order to add additional dependencies.
If you specify <option>config</option> and do not set <option>autoExtraComponents</option>
to <literal>false</literal>, overriding <literal>extraComponents</literal> will have no effect.
Avoid <literal>home-assistant.overridePythonAttrs</literal> if you use
<literal>autoExtraComponents</literal>.
Avoid <literal>home-assistant.overridePythonAttrs</literal> if you use <literal>autoExtraComponents</literal>.
'';
};

View file

@ -33,11 +33,11 @@
<link xlink:href="https://github.com/matrix-org/synapse#synapse-installation">
installation instructions of Synapse </link>.
<programlisting>
{ pkgs, ... }:
{ pkgs, lib, ... }:
let
fqdn =
let
join = hostName: domain: hostName + optionalString (domain != null) ".${domain}";
join = hostName: domain: hostName + lib.optionalString (domain != null) ".${domain}";
in join config.networking.hostName config.networking.domain;
in {
networking = {
@ -132,7 +132,7 @@ in {
}
];
};
};
}
</programlisting>
</para>

View file

@ -5,6 +5,7 @@ with lib;
let
cfg = config.services.fprintd;
fprintdPkg = if cfg.tod.enable then pkgs.fprintd-tod else pkgs.fprintd;
in
@ -17,25 +18,30 @@ in
services.fprintd = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable fprintd daemon and PAM module for fingerprint readers handling.
'';
};
enable = mkEnableOption "fprintd daemon and PAM module for fingerprint readers handling";
package = mkOption {
type = types.package;
default = pkgs.fprintd;
defaultText = "pkgs.fprintd";
default = fprintdPkg;
defaultText = "if cfg.tod.enable then pkgs.fprintd-tod else pkgs.fprintd";
description = ''
fprintd package to use.
'';
};
};
tod = {
enable = mkEnableOption "Touch OEM Drivers library support";
driver = mkOption {
type = types.package;
example = literalExample "pkgs.libfprint-2-tod1-goodix";
description = ''
Touch OEM Drivers (TOD) package to use.
'';
};
};
};
};
@ -49,6 +55,10 @@ in
systemd.packages = [ cfg.package ];
systemd.services.fprintd.environment = mkIf cfg.tod.enable {
FP_TOD_DRIVERS_DIR = "${cfg.tod.driver}${cfg.tod.driver.driverPath}";
};
};
}

View file

@ -702,7 +702,7 @@ in
cp -r ${cfg.package}/share/discourse/config.dist/* /run/discourse/config/
cp -r ${cfg.package}/share/discourse/public.dist/* /run/discourse/public/
cp -r ${cfg.package}/share/discourse/plugins.dist/* /run/discourse/plugins/
${lib.concatMapStrings (p: "ln -sf ${p} /run/discourse/plugins/") cfg.plugins}
${lib.concatMapStringsSep "\n" (p: "ln -sf ${p} /run/discourse/plugins/") cfg.plugins}
ln -sf /var/lib/discourse/uploads /run/discourse/public/uploads
ln -sf /var/lib/discourse/backups /run/discourse/public/backups
@ -726,7 +726,8 @@ in
export ADMIN_EMAIL="${cfg.admin.email}"
export ADMIN_NAME="${cfg.admin.fullName}"
export ADMIN_USERNAME="${cfg.admin.username}"
export ADMIN_PASSWORD="$(<${cfg.admin.passwordFile})"
ADMIN_PASSWORD="$(<${cfg.admin.passwordFile})"
export ADMIN_PASSWORD
discourse-rake admin:create_noninteractively
discourse-rake themes:update
@ -938,7 +939,8 @@ in
set -o errexit -o pipefail -o nounset -o errtrace
shopt -s inherit_errexit
export api_key=$(<'${apiKeyPath}')
api_key=$(<'${apiKeyPath}')
export api_key
jq <${mail-receiver-json} \
'.DISCOURSE_API_KEY = $ENV.api_key' \

View file

@ -676,6 +676,7 @@ in
Defines the address and other parameters of the upstream servers.
'';
default = {};
example = { "127.0.0.1:8000" = {}; };
};
extraConfig = mkOption {
type = types.lines;
@ -690,6 +691,14 @@ in
Defines a group of servers to use as proxy target.
'';
default = {};
example = literalExample ''
"backend_server" = {
servers = { "127.0.0.1:8000" = {}; };
extraConfig = ''''
keepalive 16;
'''';
};
'';
};
virtualHosts = mkOption {

View file

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }:
{ config, lib, ... }:
with lib;
let
@ -150,9 +150,6 @@ in
wantedBy = [ "multi-user.target" ];
aliases = [ "dbus-org.freedesktop.resolve1.service" ];
restartTriggers = [ config.environment.etc."systemd/resolved.conf".source ];
# Upstream bug: https://github.com/systemd/systemd/issues/18078
# systemd-resolved without libidn2 is broken
environment.LD_LIBRARY_PATH = "${lib.getLib pkgs.libidn2}/lib";
};
environment.etc = {

View file

@ -321,5 +321,48 @@ import ./make-test-python.nix ({ pkgs, ... }: {
docker.succeed(
"docker run --rm ${examples.layeredImageWithFakeRootCommands.imageName} sh -c 'stat -c '%u' /home/jane | grep -E ^1000$'"
)
with subtest("Ensure docker load on merged images loads all of the constituent images"):
docker.succeed(
"docker load --input='${examples.mergedBashAndRedis}'"
)
docker.succeed(
"docker images --format '{{.Repository}}-{{.Tag}}' | grep -F '${examples.bash.imageName}-${examples.bash.imageTag}'"
)
docker.succeed(
"docker images --format '{{.Repository}}-{{.Tag}}' | grep -F '${examples.redis.imageName}-${examples.redis.imageTag}'"
)
docker.succeed("docker run --rm ${examples.bash.imageName} bash --version")
docker.succeed("docker run --rm ${examples.redis.imageName} redis-cli --version")
docker.succeed("docker rmi ${examples.bash.imageName}")
docker.succeed("docker rmi ${examples.redis.imageName}")
with subtest(
"Ensure docker load on merged images loads all of the constituent images (missing tags)"
):
docker.succeed(
"docker load --input='${examples.mergedBashNoTagAndRedis}'"
)
docker.succeed(
"docker images --format '{{.Repository}}-{{.Tag}}' | grep -F '${examples.bashNoTag.imageName}-${examples.bashNoTag.imageTag}'"
)
docker.succeed(
"docker images --format '{{.Repository}}-{{.Tag}}' | grep -F '${examples.redis.imageName}-${examples.redis.imageTag}'"
)
# we need to explicitly specify the generated tag here
docker.succeed(
"docker run --rm ${examples.bashNoTag.imageName}:${examples.bashNoTag.imageTag} bash --version"
)
docker.succeed("docker run --rm ${examples.redis.imageName} redis-cli --version")
docker.succeed("docker rmi ${examples.bashNoTag.imageName}:${examples.bashNoTag.imageTag}")
docker.succeed("docker rmi ${examples.redis.imageName}")
with subtest("mergeImages preserves owners of the original images"):
docker.succeed(
"docker load --input='${examples.mergedBashFakeRoot}'"
)
docker.succeed(
"docker run --rm ${examples.layeredImageWithFakeRootCommands.imageName} sh -c 'stat -c '%u' /home/jane | grep -E ^1000$'"
)
'';
})

View file

@ -8,6 +8,8 @@ import ./make-test-python.nix {
enable = true;
protocols = [ "imap" "pop3" ];
modules = [ pkgs.dovecot_pigeonhole ];
mailUser = "vmail";
mailGroup = "vmail";
};
environment.systemPackages = let
sendTestMail = pkgs.writeScriptBin "send-testmail" ''

View file

@ -15,13 +15,13 @@ assert withGtk3 -> gtk3 != null;
stdenv.mkDerivation rec {
pname = "carla";
version = "2.2.0";
version = "2.3.0";
src = fetchFromGitHub {
owner = "falkTX";
repo = pname;
rev = "v${version}";
sha256 = "B4xoRuNEW4Lz9haP8fqxOTcysGTNEXFOq9UXqUJLSFw=";
sha256 = "sha256-724EFBpbmPMuU1m3T0XMaeohURJA5JcxHfUPYbZ/2LE=";
};
nativeBuildInputs = [

View file

@ -1,6 +1,7 @@
{ mkDerivation
, cmake
, fetchFromGitLab
, nix-update-script
, gst_all_1
, lib
, libpulseaudio
@ -11,17 +12,23 @@
, qttools
, taglib
, zlib
, python3
}:
let
py = python3.withPackages (ps: with ps; [
pydbus
]);
in
mkDerivation rec {
pname = "sayonara-player";
version = "1.6.0-beta6";
pname = "sayonara";
version = "1.6.0-beta7";
src = fetchFromGitLab {
owner = "luciocarreras";
repo = "sayonara-player";
rev = version;
sha256 = "sha256-SbJS0DQvbW++CNXbuDHQxFlLRb1kTtDdIdHOqu0YxeQ=";
sha256 = "14svszfldx32vn937rszd21rgl31vb5kzs0hnrg41ygx0br61rvd";
};
nativeBuildInputs = [ cmake ninja pkg-config qttools ];
@ -32,6 +39,7 @@ mkDerivation rec {
qtbase
taglib
zlib
py
]
++ (with gst_all_1; [
gstreamer
@ -54,6 +62,12 @@ mkDerivation rec {
qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
'';
passthru = {
updateScript = nix-update-script {
attrPath = pname;
};
};
meta = with lib; {
description = "Sayonara music player";
homepage = "https://sayonara-player.com/";

View file

@ -1,40 +1,47 @@
{ stdenv
, lib
, fetchurl
, fetchFromGitHub
, autoreconfHook
, perl
, pkg-config
, libsidplayfp
, alsaSupport ? stdenv.hostPlatform.isLinux
, alsaLib
, pulseSupport ? stdenv.hostPlatform.isLinux
, libpulseaudio
, out123Support ? stdenv.hostPlatform.isDarwin
, mpg123
}:
assert alsaSupport -> alsaLib != null;
assert pulseSupport -> libpulseaudio != null;
let
inherit (lib) optional;
inherit (lib.versions) majorMinor;
in
stdenv.mkDerivation rec {
pname = "sidplayfp";
version = "2.0.2";
version = "2.1.1";
src = fetchurl {
url = "mirror://sourceforge/sidplay-residfp/sidplayfp/${majorMinor version}/${pname}-${version}.tar.gz";
sha256 = "1s2dfs9z1hwarpfzawg11wax9nh0zcqx4cafwq7iysckyg4scz4k";
src = fetchFromGitHub {
owner = "libsidplayfp";
repo = "sidplayfp";
rev = "v${version}";
sha256 = "0s3xmg3yzfqbsnlh2y46w7b5jim5zq7mshs6hx03q8wdr75cvwh4";
};
nativeBuildInputs = [ pkg-config ]
++ optional alsaSupport alsaLib
++ optional pulseSupport libpulseaudio;
nativeBuildInputs = [ autoreconfHook perl pkg-config ];
buildInputs = [ libsidplayfp ];
buildInputs = [ libsidplayfp ]
++ lib.optional alsaSupport alsaLib
++ lib.optional pulseSupport libpulseaudio
++ lib.optional out123Support mpg123;
configureFlags = lib.optionals out123Support [
"--with-out123"
];
enableParallelBuilding = true;
meta = with lib; {
description = "A SID player using libsidplayfp";
homepage = "https://sourceforge.net/projects/sidplay-residfp/";
homepage = "https://github.com/libsidplayfp/sidplayfp";
license = with licenses; [ gpl2Plus ];
maintainers = with maintainers; [ dezgeg ];
platforms = with platforms; linux;
maintainers = with maintainers; [ dezgeg OPNA2608 ];
platforms = platforms.all;
};
}

View file

@ -6,20 +6,20 @@
rustPlatform.buildRustPackage rec {
pname = "electrs";
version = "0.8.7";
version = "0.8.9";
src = fetchFromGitHub {
owner = "romanz";
repo = pname;
rev = "v${version}";
sha256 = "101prhxg7dr701gwm4s15maxb7cf65hf85hc7ai53b404v39vm71";
sha256 = "01fli2k5yh4iwlds97p5c36q19s3zxrqhkzp9dsjbgsf7sv35r3y";
};
# needed for librocksdb-sys
nativeBuildInputs = [ llvmPackages.clang ];
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
cargoSha256 = "12ypx0rkpbjl4awzx8ga30qhiqqd56a24q4jwlxxnfpw9ks1z252";
cargoSha256 = "1rqpadlr9r4z2z825li6vi5a21hivc3bsn5ibxshrdrwiycyyxz8";
meta = with lib; {
description = "An efficient re-implementation of Electrum Server in Rust";

View file

@ -12,16 +12,16 @@
rustPlatform.buildRustPackage rec {
pname = "openethereum";
version = "3.2.1";
version = "3.2.4";
src = fetchFromGitHub {
owner = "openethereum";
repo = "openethereum";
rev = "v${version}";
sha256 = "sha256-+bzMo0s+wdp8T/YjPk6mrPSPid1G8WScB8FJhXdL9JQ=";
sha256 = "143w0b0ff1s73qzr844l25w90d2y2z0b3w2fr5kkbc1wsnpcq7jp";
};
cargoSha256 = "sha256-ibjjJ5zGF6wbO24/RoYKsTYsMNXHb1EdekDwSICPc5g=";
cargoSha256 = "1gm02pcfll362add8a0dcb0sk0mag8z0q23b87yb6fs870bqvhib";
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
nativeBuildInputs = [

View file

@ -1,25 +1,26 @@
{ rust, rustPlatform, stdenv, lib, fetchFromGitHub, autoreconfHook, makeWrapper
, fetchpatch, cargo, pkg-config, curl, coreutils, boost174, db62, hexdump
, libsodium, libevent, utf8cpp, util-linux, withWallet ? true, withDaemon ? true
, withUtils ? true
, cargo, pkg-config, curl, coreutils, boost174, db62, hexdump, libsodium
, libevent, utf8cpp, util-linux, withDaemon ? true, withMining ? true
, withUtils ? true, withWallet ? true, withZmq ? true, zeromq
}:
rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec {
pname = "zcash";
version = "4.3.0";
version = "4.4.0";
src = fetchFromGitHub {
owner = "zcash";
repo = "zcash";
rev = "v${version}";
sha256 = "00pn1jw8j90y7i8nc92b51znz4gczphvdzbkbcjx63cf6vk7v4ks";
sha256 = "19vhblyqkaf1lapx8s4v88xjpslqmrd1jnar46rschzcz0mm9sq4";
};
cargoSha256 = "1rl9sjbvpfrv1mlyb04vw1935qx0kz9cs177xl7izdva1ixk9blr";
cargoSha256 = "1yiy1506ijndxb9bx79p7fkfvw1c5zdsljil4m55xz1mv8dzhbgm";
nativeBuildInputs = [ autoreconfHook cargo hexdump makeWrapper pkg-config ];
buildInputs = [ boost174 libevent libsodium utf8cpp ]
++ lib.optional withWallet db62;
++ lib.optional withWallet db62
++ lib.optional withZmq zeromq;
# Use the stdenv default phases (./configure; make) instead of the
# ones from buildRustPackage.
@ -28,14 +29,6 @@ rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec {
checkPhase = "checkPhase";
installPhase = "installPhase";
patches = [
# See https://github.com/zcash/zcash/pull/5015
(fetchpatch {
url = "https://github.com/zcash/zcash/commit/a0ac27ec6ed434a233c7ad2468258f6e6e7e9688.patch";
sha256 = "0pmx1spql9p8vvpjgw7qf3qy46f4mh9ni16bq4ss1xz1z9zgjc4k";
})
];
postPatch = ''
# Have to do this here instead of in preConfigure because
# cargoDepsCopy gets unset after postPatch.
@ -49,7 +42,8 @@ rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec {
"RUST_TARGET=${rust.toRustTargetSpec stdenv.hostPlatform}"
] ++ lib.optional (!withWallet) "--disable-wallet"
++ lib.optional (!withDaemon) "--without-daemon"
++ lib.optional (!withUtils) "--without-utils";
++ lib.optional (!withUtils) "--without-utils"
++ lib.optional (!withMining) "--disable-mining";
enableParallelBuilding = true;

View file

@ -110,6 +110,21 @@
license = lib.licenses.free;
};
}) {};
aggressive-completion = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "aggressive-completion";
ename = "aggressive-completion";
version = "1.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/aggressive-completion-1.5.tar";
sha256 = "1gy0q5yc1a0w31qpyb92f672zcfgxbp5s104ycgk11jxk4y17nw9";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/aggressive-completion.html";
license = lib.licenses.free;
};
}) {};
aggressive-indent = callPackage ({ cl-lib ? null
, elpaBuild
, emacs
@ -219,16 +234,16 @@
license = lib.licenses.free;
};
}) {};
auctex = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
auctex = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "auctex";
ename = "auctex";
version = "13.0.5";
version = "13.0.6";
src = fetchurl {
url = "https://elpa.gnu.org/packages/auctex-13.0.5.tar";
sha256 = "072wwsqfl8n2gi2inbp0s8k1ydr6fh1zyvc3rgynwzibjjniy319";
url = "https://elpa.gnu.org/packages/auctex-13.0.6.tar";
sha256 = "00wp388rh2nnk8fam53kilykg90jylps31qxv9ijy1lsp1hqdjys";
};
packageRequires = [ cl-lib emacs ];
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/auctex.html";
license = lib.licenses.free;
@ -925,10 +940,10 @@
elpaBuild {
pname = "dts-mode";
ename = "dts-mode";
version = "0.1.0";
version = "0.1.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/dts-mode-0.1.0.el";
sha256 = "08xwqbdg0gwipc3gfacs3gpc6zz6lhkw7pyj7n9qhg020c4qv7hq";
url = "https://elpa.gnu.org/packages/dts-mode-0.1.1.tar";
sha256 = "1hdbf7snfbg3pfg1vhbak1gq5smaklvaqj1y9mjcnxyipqi47q28";
};
packageRequires = [];
meta = {
@ -1133,10 +1148,10 @@
elpaBuild {
pname = "emms";
ename = "emms";
version = "6.3";
version = "7.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/emms-6.3.tar";
sha256 = "12cfq503li0gcqmm5bmqz8yjvfdif5xvz0l9vx3g5jl6ljygwgmf";
url = "https://elpa.gnu.org/packages/emms-7.1.tar";
sha256 = "1dng8dy0w0wsdvvnjnrllwv5a8wq3kj20jik994b7prdx5dn6y52";
};
packageRequires = [ cl-lib seq ];
meta = {
@ -1205,10 +1220,10 @@
elpaBuild {
pname = "excorporate";
ename = "excorporate";
version = "0.9.3";
version = "0.9.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/excorporate-0.9.3.tar";
sha256 = "1ybj0ww7x7l7ymykk6hs720whabavmwnrwq7x8dkn41wma181zzy";
url = "https://elpa.gnu.org/packages/excorporate-0.9.5.tar";
sha256 = "0z5x8lqvxh8zra23nmh36cdnr2yk855i4fc3mlbwaj5sdy9sqpf5";
};
packageRequires = [ emacs fsm nadvice soap-client url-http-ntlm ];
meta = {
@ -1366,16 +1381,16 @@
license = lib.licenses.free;
};
}) {};
ggtags = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
ggtags = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "ggtags";
ename = "ggtags";
version = "0.8.13";
version = "0.9.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/ggtags-0.8.13.el";
sha256 = "1qa7lcrcmf76sf6dy8sxbg4adq7rg59fm0n5848w3qxgsr0h45fg";
url = "https://elpa.gnu.org/packages/ggtags-0.9.0.tar";
sha256 = "0p79x9g94jynl83ndvqp9349vhgkzxzhnc517r8hn44iqxqf6ghg";
};
packageRequires = [ cl-lib emacs ];
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/ggtags.html";
license = lib.licenses.free;
@ -1779,10 +1794,10 @@
elpaBuild {
pname = "ivy-posframe";
ename = "ivy-posframe";
version = "0.5.5";
version = "0.6.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/ivy-posframe-0.5.5.tar";
sha256 = "184730grclxmlw6nfs41d4g6fvz9c6xnclvwgqx1ii0xm7p9xy95";
url = "https://elpa.gnu.org/packages/ivy-posframe-0.6.0.tar";
sha256 = "07dzglrcdl54lkznyphw97xwd9bcwzdcgzkav0vqfk7f5cwh1wkf";
};
packageRequires = [ emacs ivy posframe ];
meta = {
@ -2497,16 +2512,16 @@
license = lib.licenses.free;
};
}) {};
org = callPackage ({ elpaBuild, fetchurl, lib }:
org = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "org";
ename = "org";
version = "9.4.4";
version = "9.4.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/org-9.4.4.tar";
sha256 = "05ma8n6hr10323d85ay8ai0xrpc9q2m93n8avqh7j9fmmb3bhr0b";
url = "https://elpa.gnu.org/packages/org-9.4.5.tar";
sha256 = "0h5qhrd984vf17qc227wz68191xfgbpq32dyhw0lcz2d9i0pl3xk";
};
packageRequires = [];
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/org.html";
license = lib.licenses.free;
@ -2561,10 +2576,10 @@
elpaBuild {
pname = "osc";
ename = "osc";
version = "0.2";
version = "0.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/osc-0.2.el";
sha256 = "1b1ck9kb9mkyd7nlj4cqahsshar6h8mpvqss6n3dp4cl3r6dk1sw";
url = "https://elpa.gnu.org/packages/osc-0.4.tar";
sha256 = "0zfrzxalvvf9wwwhwsqgl3v2ca6m2rfl5hd7sz662s6gmbwawqqa";
};
packageRequires = [];
meta = {
@ -2726,10 +2741,10 @@
elpaBuild {
pname = "posframe";
ename = "posframe";
version = "0.8.8";
version = "1.0.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/posframe-0.8.8.tar";
sha256 = "1ij6brzcxv9viz37qafcinlfx5l20w8x8s6786r1rsda5n1xsmvd";
url = "https://elpa.gnu.org/packages/posframe-1.0.0.tar";
sha256 = "1k06dbh9xqn2vix5qkcapl57v0c21b344r8dx6j5qr4jxirsn2x5";
};
packageRequires = [ emacs ];
meta = {
@ -3676,10 +3691,10 @@
elpaBuild {
pname = "tramp";
ename = "tramp";
version = "2.5.0.2";
version = "2.5.0.3";
src = fetchurl {
url = "https://elpa.gnu.org/packages/tramp-2.5.0.2.tar";
sha256 = "16f782rjkmxxs5sz3wv4d46i7hbl483ashmrkvljf7lpnrl91s93";
url = "https://elpa.gnu.org/packages/tramp-2.5.0.3.tar";
sha256 = "0c77d1ihn17lzk9jb7ss346ryprnbii1zmijl6zj0kk4lm8fpfl3";
};
packageRequires = [ emacs ];
meta = {
@ -3897,10 +3912,10 @@
elpaBuild {
pname = "verilog-mode";
ename = "verilog-mode";
version = "2021.2.2.263931197";
version = "2021.4.12.188864585";
src = fetchurl {
url = "https://elpa.gnu.org/packages/verilog-mode-2021.2.2.263931197.tar";
sha256 = "0rizadyzrsprc3mw3h2ag4760wapx5gxzsr11rgrllwzzqwin1ks";
url = "https://elpa.gnu.org/packages/verilog-mode-2021.4.12.188864585.tar";
sha256 = "0np2q0jhf1fbb1nl5nx1q9hw40yg62bhlddp2raqryxbkvsh0nbv";
};
packageRequires = [];
meta = {
@ -3908,6 +3923,21 @@
license = lib.licenses.free;
};
}) {};
vertico = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "vertico";
ename = "vertico";
version = "0.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/vertico-0.4.tar";
sha256 = "1af9ri51i7pn1pcsmbavnwqafrn46vbxrbqjzfi6a7q6n5yv77im";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/vertico.html";
license = lib.licenses.free;
};
}) {};
vigenere = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "vigenere";
@ -3930,10 +3960,10 @@
elpaBuild {
pname = "visual-filename-abbrev";
ename = "visual-filename-abbrev";
version = "1.0";
version = "1.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/visual-filename-abbrev-1.0.el";
sha256 = "086cmyv08jd3qadjrd14b7c932i8msxjdvxxa36pyac18d3i50kj";
url = "https://elpa.gnu.org/packages/visual-filename-abbrev-1.1.tar";
sha256 = "1l2wq7q28lcl78flxqvsxc9h96whpynqq8kpmbiy3nzlw2mrgr8g";
};
packageRequires = [ emacs ];
meta = {
@ -4268,10 +4298,10 @@
elpaBuild {
pname = "ztree";
ename = "ztree";
version = "1.0.5";
version = "1.0.6";
src = fetchurl {
url = "https://elpa.gnu.org/packages/ztree-1.0.5.tar";
sha256 = "14pbbsyav1dzz8m8waqdcmcx9bhw5g8m2kh1ahpxc3i2lfhdan1x";
url = "https://elpa.gnu.org/packages/ztree-1.0.6.tar";
sha256 = "1cyd31az566dmh3lyp7czw7kkkih7drr4c88b7da1xzbfkvibm2j";
};
packageRequires = [ cl-lib ];
meta = {

View file

@ -4,10 +4,10 @@
elpaBuild {
pname = "org";
ename = "org";
version = "20210322";
version = "20210412";
src = fetchurl {
url = "https://orgmode.org/elpa/org-20210322.tar";
sha256 = "0iv54rhwa0972yr1wqzmlkggs5vc6qajz8mmyfhynp65ap088g6v";
url = "https://orgmode.org/elpa/org-20210412.tar";
sha256 = "17hj4y0c9hjqqa7inzjadz9z64vh621lm4cb0asm13r7d1v186yf";
};
packageRequires = [];
meta = {
@ -19,10 +19,10 @@
elpaBuild {
pname = "org-plus-contrib";
ename = "org-plus-contrib";
version = "20210322";
version = "20210412";
src = fetchurl {
url = "https://orgmode.org/elpa/org-plus-contrib-20210322.tar";
sha256 = "0riswc3ira8hsawm37yypji55z47bw2477kaw3qx7ghz3n62r9nf";
url = "https://orgmode.org/elpa/org-plus-contrib-20210412.tar";
sha256 = "162nl1a62l9d4nazply93sx4lih11845z87hxmpfd0n7i7s290mh";
};
packageRequires = [];
meta = {

View file

@ -17,12 +17,12 @@ let
auto-pairs-kak = buildKakounePluginFrom2Nix {
pname = "auto-pairs-kak";
version = "2020-10-04";
version = "2021-03-28";
src = fetchFromGitHub {
owner = "alexherbo2";
repo = "auto-pairs.kak";
rev = "fd735ec149ef0d9ca5f628a95b1e52858b5afbdc";
sha256 = "07795kv9njlnp6mckwv141ny2ns6wyf5r0dfjaxh9ngd105zgif1";
rev = "526779a26a5cf5f48e7c4f5c5fecca274968a737";
sha256 = "0gkhvwxyh8pdfydrj7zkfidk0drrbhvdi1fq3pkzllna3vz8q181";
};
meta.homepage = "https://github.com/alexherbo2/auto-pairs.kak/";
};
@ -41,12 +41,12 @@ let
fzf-kak = buildKakounePluginFrom2Nix {
pname = "fzf-kak";
version = "2021-03-15";
version = "2021-04-03";
src = fetchFromGitHub {
owner = "andreyorst";
repo = "fzf.kak";
rev = "4e6c9a857511fccdbbc835a1c9acb205b6486a4c";
sha256 = "0syhhdlsm7vg6hcd2n2acag9g562z49rbb5smh5p2gnplhmp93i0";
rev = "1b3a3beebbe7134e671fde2ef2f4242b34ae2c60";
sha256 = "0rsd65zcizbq3isy8576gqw7mcml5ixw84padaz6ndwfif5fv701";
};
meta.homepage = "https://github.com/andreyorst/fzf.kak/";
};
@ -65,12 +65,12 @@ let
kakoune-buffers = buildKakounePluginFrom2Nix {
pname = "kakoune-buffers";
version = "2020-06-11";
version = "2021-04-02";
src = fetchFromGitHub {
owner = "Delapouite";
repo = "kakoune-buffers";
rev = "67959fbad727ba8470fe8cd6361169560f4fb532";
sha256 = "09prhzz4yzf6ryw0npd1gpcfp77681vgawpp1ilfvbf25xgbbz33";
rev = "7832ea7a4528363482f5684f16cbcebcbec0adfd";
sha256 = "196d36jww6asf5zr03l1rwg49kkv16s2d4zyryb2m3zvy7prf2bb";
};
meta.homepage = "https://github.com/Delapouite/kakoune-buffers/";
};
@ -147,14 +147,26 @@ let
meta.homepage = "https://github.com/mayjs/openscad.kak/";
};
pandoc-kak = buildKakounePluginFrom2Nix {
pname = "pandoc-kak";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "basbebe";
repo = "pandoc.kak";
rev = "63979f7e08b86d80436bbe2d9dba173a56057b97";
sha256 = "16pmmnpyxf8r7gpj8g1lwa960nscjmcl52n1a7s6xcqkp9856wxs";
};
meta.homepage = "https://github.com/basbebe/pandoc.kak/";
};
powerline-kak = buildKakounePluginFrom2Nix {
pname = "powerline-kak";
version = "2021-02-25";
version = "2021-04-06";
src = fetchFromGitHub {
owner = "andreyorst";
repo = "powerline.kak";
rev = "64ad98b6c85e63345563671b043960464d51c4b0";
sha256 = "09w2sk19qi64hgsyg4gb407vyppnlgk272mqbinz2r3apy6szkl3";
rev = "6fa5ad383f2884f201d6e3ef07a4687c606df525";
sha256 = "1s7ggjby0bymq48njzhdvkkarmzl44803xv0dlnzrj7q9c3xv27a";
};
meta.homepage = "https://github.com/andreyorst/powerline.kak/";
};
@ -197,12 +209,12 @@ let
tabs-kak = buildKakounePluginFrom2Nix {
pname = "tabs-kak";
version = "2021-02-16";
version = "2021-04-14";
src = fetchFromGitHub {
owner = "enricozb";
repo = "tabs.kak";
rev = "1aaa8cd89e404cbbd76d44ff8089de0951612fbf";
sha256 = "0dfz6j6yxl65jbh4xvpiy2abr2sdjyalynzhl28y7l1gzqv4ni3j";
rev = "048f83455ea7c671ab06e9b9578ac25e5de1d6fb";
sha256 = "0xswpsdf1bj54inl6vf2lzbjkxfc6g0fyv5kd6y9ahlh5irij8z0";
};
meta.homepage = "https://github.com/enricozb/tabs.kak/";
};

View file

@ -3,6 +3,7 @@ alexherbo2/replace-mode.kak
alexherbo2/sleuth.kak
andreyorst/fzf.kak
andreyorst/powerline.kak
basbebe/pandoc.kak
danr/kakoune-easymotion
Delapouite/kakoune-buffers
Delapouite/kakoune-registers

View file

@ -1,25 +1,38 @@
{ mkDerivation, lib, fetchFromGitHub, cmake, ninja, flex, bison, proj, geos, xlibsWrapper, sqlite, gsl
, qwt, fcgi, python3Packages, libspatialindex, libspatialite, postgresql
, txt2tags, openssl, libzip, hdf5, netcdf, exiv2
, qtbase, qtsensors, qca-qt5, qtkeychain, qscintilla, qtserialport, qtxmlpatterns
, withGrass ? true, grass
, withWebKit ? true, qtwebkit
}:
{ mkDerivation, lib, fetchFromGitHub, cmake, ninja, flex, bison, proj, geos
, xlibsWrapper, sqlite, gsl, qwt, fcgi, python3Packages, libspatialindex
, libspatialite, postgresql, txt2tags, openssl, libzip, hdf5, netcdf, exiv2
, protobuf, qtbase, qtsensors, qca-qt5, qtkeychain, qscintilla, qtserialport
, qtxmlpatterns, withGrass ? true, grass, withWebKit ? true, qtwebkit }:
with lib;
let
pythonBuildInputs = with python3Packages;
[ qscintilla-qt5 gdal jinja2 numpy psycopg2
chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
pythonBuildInputs = with python3Packages; [
qscintilla-qt5
gdal
jinja2
numpy
psycopg2
chardet
dateutil
pyyaml
pytz
requests
urllib3
pygments
pyqt5
sip
owslib
six
];
in mkDerivation rec {
version = "3.10.13";
version = "3.16.5";
pname = "qgis";
name = "${pname}-unwrapped-${version}";
src = fetchFromGitHub {
owner = "qgis";
repo = "QGIS";
rev = "final-${lib.replaceStrings ["."] ["_"] version}";
sha256 = "0za77znk1phrxzy2cgxpwrld3d0pi0xvhsg78rg4wkb23vaqv6zb";
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
sha256 = "1xkvgj1v2jgp107jyh9xmk1dzbbqxwkqy69z56vsaa8lf9gwgn5h";
};
passthru = {
@ -27,10 +40,32 @@ in mkDerivation rec {
inherit python3Packages;
};
buildInputs = [ openssl proj geos xlibsWrapper sqlite gsl qwt exiv2
fcgi libspatialindex libspatialite postgresql txt2tags libzip hdf5 netcdf
qtbase qtsensors qca-qt5 qtkeychain qscintilla qtserialport qtxmlpatterns ]
++ lib.optional withGrass grass
buildInputs = [
openssl
proj
geos
xlibsWrapper
sqlite
gsl
qwt
exiv2
protobuf
fcgi
libspatialindex
libspatialite
postgresql
txt2tags
libzip
hdf5
netcdf
qtbase
qtsensors
qca-qt5
qtkeychain
qscintilla
qtserialport
qtxmlpatterns
] ++ lib.optional withGrass grass
++ lib.optional withWebKit qtwebkit
++ pythonBuildInputs;
@ -41,15 +76,16 @@ in mkDerivation rec {
# TODO: Correct PyQt5 to provide the expected directory and fix
# build to use PYQT5_SIP_DIR consistently.
postPatch = ''
substituteInPlace cmake/FindPyQt5.py \
--replace 'sip_dir = cfg.default_sip_dir' 'sip_dir = "${python3Packages.pyqt5}/share/sip/PyQt5"'
'';
substituteInPlace cmake/FindPyQt5.py \
--replace 'sip_dir = cfg.default_sip_dir' 'sip_dir = "${python3Packages.pyqt5}/share/sip/PyQt5"'
'';
cmakeFlags = [ "-DCMAKE_SKIP_BUILD_RPATH=OFF"
"-DPYQT5_SIP_DIR=${python3Packages.pyqt5}/share/sip/PyQt5"
"-DQSCI_SIP_DIR=${python3Packages.qscintilla-qt5}/share/sip/PyQt5" ]
++ lib.optional (!withWebKit) "-DWITH_QTWEBKIT=OFF"
++ lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}";
cmakeFlags = [
"-DCMAKE_SKIP_BUILD_RPATH=OFF"
"-DPYQT5_SIP_DIR=${python3Packages.pyqt5}/share/sip/PyQt5"
"-DQSCI_SIP_DIR=${python3Packages.qscintilla-qt5}/share/sip/PyQt5"
] ++ lib.optional (!withWebKit) "-DWITH_QTWEBKIT=OFF"
++ lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}";
meta = {
description = "A Free and Open Source Geographic Information System";

View file

@ -55,11 +55,11 @@
mkDerivation rec {
pname = "digikam";
version = "7.1.0";
version = "7.2.0";
src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/${pname}-${version}.tar.xz";
sha256 = "1gmblnsm0aida3yynyddm6jdh59hx3w177hrhfar616z793ch0xi";
sha256 = "sha256-zYfs4UOu+gLmkqSvXDw8wQe5pNYYBNefp33S40R5ihc=";
};
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];

View file

@ -1,15 +1,31 @@
{ lib, buildPythonApplication, fetchPypi, appdirs, attrs
, beautifulsoup4, click-plugins, elasticsearch, flask-compress
, flask_login, flask_wtf, html2text, python-dotenv, python-frontmatter
, requests, tinydb, validators, werkzeug, wtforms }:
{ lib
, buildPythonApplication
, fetchPypi
, appdirs
, attrs
, beautifulsoup4
, click-plugins
, elasticsearch
, flask-compress
, flask_login
, flask_wtf
, html2text
, python-dotenv
, python-frontmatter
, requests
, tinydb
, validators
, werkzeug
, wtforms
}:
buildPythonApplication rec {
pname = "archivy";
version = "1.1.1";
version = "1.1.4";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-yUXsTPb5oJYZA9MlHz7eLowRjD/ltq5VLTHeOMqcL/M=";
sha256 = "sha256-oSmwQcKvp9RABmc7aq6fdLOZapMauIi6+7azVTXVb30=";
};
# Relax some dependencies
@ -22,6 +38,7 @@ buildPythonApplication rec {
--replace 'python_frontmatter == 0.5.0' 'python_frontmatter' \
--replace 'requests ==' 'requests >=' \
--replace 'validators ==' 'validators >=' \
--replace 'tinydb ==' 'tinydb >='
'';
propagatedBuildInputs = [

View file

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "dasel";
version = "1.14.0";
version = "1.14.1";
src = fetchFromGitHub {
owner = "TomWright";
repo = pname;
rev = "v${version}";
sha256 = "1g4a001k86myfln0xlzy8w9krwamvfchnvywpr1p3x6iw95z46w8";
sha256 = "0nxdyd0zg4w1zr8p9z2x88h36vbn7ryk7160zszdiwh5qmdlv47v";
};
vendorSha256 = "sha256-BdX4DO77mIf/+aBdkNVFUzClsIml1UMcgvikDbbdgcY=";

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "go-org";
version = "1.4.0";
version = "1.5.0";
src = fetchFromGitHub {
owner = "niklasfasching";
repo = pname;
rev = "v${version}";
sha256 = "sha256-nMZzRbu3lxunIlnnmb49Ljt8oSiYpj+8gZ0u/OFRRDM=";
sha256 = "sha256-Wp8WEfRcrtn+VdcbehYcOJI5FkPQiyo6nLsTDvR7riE=";
};
vendorSha256 = "sha256-njx89Ims7GZql8sbVmH/E9gM/ONRWiPRLVs+FzsCSzI=";

View file

@ -0,0 +1,59 @@
{ lib
, stdenv
, fetchurl
, guile
, guile-commonmark
, guile-reader
, makeWrapper
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "haunt";
version = "0.2.4";
src = fetchurl {
url = "https://files.dthompson.us/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-zOkICg7KmJJhPWPtJRT3C9sYB1Oig1xLtgPNGe0n3xQ=";
};
nativeBuildInputs = [
makeWrapper
pkg-config
];
buildInputs = [
guile
guile-commonmark
guile-reader
];
postInstall = ''
wrapProgram $out/bin/haunt \
--prefix GUILE_LOAD_PATH : "$out/share/guile/site:${guile-commonmark}/share/guile/site:${guile-reader}/share/guile/site" \
--prefix GUILE_LOAD_COMPILED_PATH : "$out/share/guile/site:${guile-commonmark}/share/guile/site:${guile-reader}/share/guile/site"
'';
meta = with lib; {
homepage = "https://dthompson.us/projects/haunt.html";
description = "Guile-based static site generator";
longDescription = ''
Haunt is a simple, functional, hackable static site generator that gives
authors the ability to treat websites as Scheme programs.
By giving authors the full expressive power of Scheme, they are able to
control every aspect of the site generation process. Haunt provides a
simple, functional build system that can be easily extended for this
purpose.
Haunt has no opinion about what markup language authors should use to
write posts, though it comes with support for the popular Markdown
format. Likewise, Haunt has no opinion about how authors structure their
sites. Though it comes with support for building simple blogs or Atom
feeds, authors should feel empowered to tweak, replace, or create builders
to do things that aren't provided out-of-the-box.
'';
license = licenses.gpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = guile.meta.platforms;
};
}

View file

@ -4,8 +4,11 @@
, python3Packages
, gobject-introspection
, gtk3
, itstool
, libwnck3
, keybinder3
, desktop-file-utils
, shared-mime-info
, wrapGAppsHook
, wafHook
}:
@ -14,19 +17,22 @@ with python3Packages;
buildPythonApplication rec {
pname = "kupfer";
version = "319";
version = "321";
format = "other";
src = fetchurl {
url = "https://github.com/kupferlauncher/kupfer/releases/download/v${version}/kupfer-v${version}.tar.xz";
sha256 = "0c9xjx13r8ckfr4az116bhxsd3pk78v04c3lz6lqhraak0rp4d92";
url = "https://github.com/kupferlauncher/kupfer/releases/download/v${version}/kupfer-v${version}.tar.bz2";
sha256 = "0nagjp63gxkvsgzrpjk78cbqx9a7rbnjivj1avzb2fkhrlxa90c7";
};
nativeBuildInputs = [
wrapGAppsHook intltool
# For setup hook
gobject-introspection wafHook
itstool # for help pages
desktop-file-utils # for update-desktop-database
shared-mime-info # for update-mime-info
];
buildInputs = [ docutils libwnck3 keybinder3 ];
propagatedBuildInputs = [ pygobject3 gtk3 pyxdg dbus-python pycairo ];

View file

@ -1,4 +1,5 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, ncurses, readline
{ lib, stdenv, fetchFromGitHub, pkg-config, makeWrapper, ncurses, readline
, archivemount, atool, fzf, libarchive, rclone, sshfs, unzip, vlock
, conf ? null, withIcons ? false, withNerdIcons ? false }:
# Mutually exclusive options
@ -7,19 +8,19 @@ assert withNerdIcons -> withIcons == false;
stdenv.mkDerivation rec {
pname = "nnn";
version = "3.6";
version = "4.0";
src = fetchFromGitHub {
owner = "jarun";
repo = pname;
rev = "v${version}";
sha256 = "1hwv7ncp8pmzdir30877ni4qlmczmb3yjdkbfd1pssr08y1srsc7";
sha256 = "0cbxgss9j0bvsp3czjx1kpm9id7c5xxmjfnvjyk3pfd69ygif2kl";
};
configFile = lib.optionalString (conf != null) (builtins.toFile "nnn.h" conf);
preBuild = lib.optionalString (conf != null) "cp ${configFile} src/nnn.h";
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [ pkg-config makeWrapper ];
buildInputs = [ readline ncurses ];
makeFlags = [ "PREFIX=$(out)" ]
@ -31,6 +32,9 @@ stdenv.mkDerivation rec {
install -Dm555 misc/auto-completion/bash/nnn-completion.bash $out/share/bash-completion/completions/nnn.bash
install -Dm555 misc/auto-completion/zsh/_nnn -t $out/share/zsh/site-functions
install -Dm555 misc/auto-completion/fish/nnn.fish -t $out/share/fish/vendor_completions.d
wrapProgram $out/bin/nnn \
--prefix PATH : ${lib.makeBinPath [ archivemount atool fzf libarchive rclone sshfs unzip vlock ]}
'';
meta = with lib; {

View file

@ -5,18 +5,17 @@
, electron
, common-updater-scripts
, writeShellScript
, jq
, makeDesktopItem
}:
stdenv.mkDerivation rec {
pname = "stretchly";
version = "1.5.0";
version = "1.6.0";
src = fetchurl {
url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
sha256 = "19czwmwqsn82zdzln9zqqyl9sb3dm95gp58dqn1459gyinkzpvda";
sha256 = "1q0ihp6cd65lnscbr7xj3yyb06qds77r4s6m1xbk5l9vs2rw923d";
};
icon = fetchurl {

View file

@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, meson
, pkg-config
, ninja
@ -28,26 +27,15 @@
stdenv.mkDerivation rec {
pname = "waybar";
version = "0.9.5";
version = "0.9.7";
src = fetchFromGitHub {
owner = "Alexays";
repo = "Waybar";
rev = version;
sha256 = "1kzrgqaclfk6gcwhknxn28xl74gm5swipgn8kk8avacb4nsw1l9q";
sha256 = "17cn4d3dx92v40jd9vl41smp8hh3gf5chd1j2f7l1lrpfpnllg5x";
};
patches = [
# XXX: REMOVE ON NEXT VERSION BUMP
# Fixes compatibility of the bluetooth and network modules with linux kernel
# >=5.11
# c.f. https://github.com/Alexays/Waybar/issues/994
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/Alexays/Waybar/pull/1015.patch";
sha256 = "sha256-jQZEM3Yru2yxcXAzapU47DoAv4ZoabrV80dH42I2OFk=";
})
];
nativeBuildInputs = [
meson ninja pkg-config scdoc wrapGAppsHook cmake
] ++ lib.optional withMediaPlayer gobject-introspection;

View file

@ -1,20 +1,76 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation {
name = "with-2016-08-20";
{ lib
, stdenv
, fetchFromGitHub
, installShellFiles
}:
stdenv.mkDerivation rec {
pname = "with";
version = "unstable-2018-03-20";
src = fetchFromGitHub {
owner = "mchav";
repo = "With";
rev = "cc2828bddd92297147d4365765f4ef36385f050a";
sha256 = "10m2xv6icrdp6lfprw3a9hsrzb3bip19ipkbmscap0niddqgcl9b";
rev = "28eb40bbc08d171daabf0210f420477ad75e16d6";
hash = "sha256-mKHsLHs9/I+NUdb1t9wZWkPxXcsBlVWSj8fgZckXFXk=";
};
nativeBuildInputs = [ installShellFiles ];
installPhase = ''
mkdir -p $out/bin
cp with $out/bin/with
runHook preInstall
install -D with $out/bin/with
installShellCompletion --bash --name with.bash with.bash-completion
runHook postInstall
'';
meta = {
meta = with lib; {
homepage = "https://github.com/mchav/With";
description = "Command prefixing for continuous workflow using a single tool";
license = lib.licenses.asl20;
platforms = lib.platforms.unix;
longDescription = ''
with is a Bash script that starts an interactive shell with where every
command is prefixed using <program>.
For example:
$ with git
git> add .
git> commit -a -m "Commited"
git> push
Can also be used for compound commands.
$ with java Primes
java Primes> 1
2
java Primes> 4
7
And to repeat commands:
$ with gcc -o output input.c
gcc -o -output input.c>
<enter>
Compiling...
gcc -o -output input.c>
To execute a shell command proper prefix line with :.
git> :ls
You can also drop, add, and replace different commands.
git> +add
git add> <some file>
git add> !commit
git commit> <arguments and message>
git commit> -
git>
To exit use either :q or :exit.
'';
license = licenses.asl20;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
};
}

View file

@ -1,24 +0,0 @@
From 5eb4d6a384753896d495b09d8651c48672ef234d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
Date: Wed, 25 Nov 2020 11:26:49 +0100
Subject: [PATCH] replace git with normal python package
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
---
requirements.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/requirements.txt b/requirements.txt
index ef25aad..b4246a4 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,2 +1,2 @@
-git+https://github.com/Yubico/yubikey-manager.git
+yubikey-manager
./py/qr
--
2.29.2

View file

@ -6,11 +6,11 @@
mkDerivation rec {
pname = "yubioath-desktop";
version = "5.0.4";
version = "5.0.5";
src = fetchurl {
url = "https://developers.yubico.com/yubioath-desktop/Releases/yubioath-desktop-${version}.tar.gz";
sha256 = "1aw88xvg6gjsfwmmlcrdcgyycn2cp7b8vxjzj14h7igcj02xh84h";
sha256 = "05xs6xh9pi50h0668arirj0gnz11adpixgsdkds072077gasdm0g";
};
doCheck = false;
@ -19,10 +19,6 @@ mkDerivation rec {
nativeBuildInputs = [ qmake makeWrapper python3.pkgs.wrapPython ];
patches = [
./0001-replace-git-with-normal-python-package.patch
];
postPatch = ''
substituteInPlace deployment.pri \
--replace '/usr/bin' "$out/bin"
@ -48,7 +44,7 @@ mkDerivation rec {
cp resources/icons/*.{icns,ico,png,svg} $out/share/yubioath/icons
substituteInPlace $out/share/applications/com.yubico.yubioath.desktop \
--replace 'Exec=yubioath-desktop' "Exec=$out/bin/yubioath-desktop" \
--replace 'Icon=yubioath' "Icon=$out/share/yubioath/icons/com.yubico.yubioath.png"
--replace 'Icon=com.yubico.yubioath' "Icon=$out/share/yubioath/icons/com.yubico.yubioath.png"
'';
meta = with lib; {

View file

@ -1,20 +1,20 @@
{
"stable": {
"version": "89.0.4389.128",
"sha256": "0nysvsck91yxcb3wf6v3nzar77k7j9bby7xfzsvd7wlqxdmflx8s",
"sha256bin64": "07m43yqq6j7mfhdnm127p29b2611l8lmbq87iszlgg6dgkqxa0qr",
"version": "90.0.4430.72",
"sha256": "0hw916j55lm3qnidfp92i8w6zywdd47rhihn9pn23b7ziz58ik55",
"sha256bin64": "0k1m786b94kh7r2c58qj8b9a39yr4m30kkrxk5d9q7dn1abl3wa3",
"deps": {
"gn": {
"version": "2021-01-07",
"version": "2021-02-09",
"url": "https://gn.googlesource.com/gn",
"rev": "595e3be7c8381d4eeefce62a63ec12bae9ce5140",
"sha256": "08y7cjlgjdbzja5ij31wxc9i191845m01v1hc7y176svk9y0hj1d"
"rev": "dfcbc6fed0a8352696f92d67ccad54048ad182b3",
"sha256": "1941bzg37c4dpsk3sh6ga3696gpq6vjzpcw9rsnf6kdr9mcgdxvn"
}
},
"chromedriver": {
"version": "89.0.4389.23",
"sha256_linux": "169inx1xl7750mdd1g7yji72m33kvpk7h1dy4hyj0qignrifdm0r",
"sha256_darwin": "1a84nn4rnd215h4sjghmw03mdr49wyab8j4vlnv3xp516yn07gr3"
"version": "90.0.4430.24",
"sha256_linux": "0byibxrs4ggid8qn5h72mmnw8l4y8xya2q1jbc6z74pmw8r9hkj7",
"sha256_darwin": "0psll7vahj43jkj1wqq7mygf18l7ivp56ckc8wv4w5bnfmqv660k"
}
},
"beta": {
@ -31,9 +31,9 @@
}
},
"dev": {
"version": "91.0.4469.4",
"sha256": "08lffqjfcszniwwshililab553a0dvycaa72h1dklxvxf360nz5f",
"sha256bin64": "14xyzjwzcyp6idscq6i87yh2fibjamkz5xfsb2y0hrf2diaqijw1",
"version": "91.0.4472.10",
"sha256": "168121aznynks5waj3mm2m036mbrlmqmp2kmnn9r4ibq2x01dpxm",
"sha256bin64": "05bk6gmmfsh50jjlb6lmwqhhbs0v0hlijsmxpk9crdx2gw071rlr",
"deps": {
"gn": {
"version": "2021-04-06",

View file

@ -1,5 +1,5 @@
{ lib, fetchpatch, fetchurl, fetchzip, python3
, mkDerivationWith, wrapQtAppsHook, wrapGAppsHook, qtbase, glib-networking
{ lib, fetchurl, fetchzip, fetchpatch, python3
, mkDerivationWith, wrapQtAppsHook, wrapGAppsHook, qtbase, qtwebengine, glib-networking
, asciidoc, docbook_xml_dtd_45, docbook_xsl, libxml2
, libxslt, gst_all_1 ? null
, withPdfReader ? true
@ -12,12 +12,12 @@ assert withMediaPlayback -> gst_all_1 != null;
let
python3Packages = python3.pkgs;
pdfjs = let
version = "2.6.347";
version = "2.8.335";
in
fetchzip rec {
name = "pdfjs-${version}";
url = "https://github.com/mozilla/pdf.js/releases/download/v${version}/${name}-dist.zip";
sha256 = "0d016fyg81cq464li01xlkf9rxrb3rpsvmk5gh9m4d5yzmcakkfm";
sha256 = "1zschfpxnhdinn9nasl5in4s62ad0h1g369cglamjgxx36x27zly";
stripRoot = false;
};
@ -31,12 +31,12 @@ let
in mkDerivationWith python3Packages.buildPythonApplication rec {
pname = "qutebrowser";
version = "2.1.1";
version = "2.2.0";
# the release tarballs are different from the git checkout!
src = fetchurl {
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
sha256 = "sha256-txsArX1JiRGXjlu9FTpt0EUKxq3j5b85j8luFTKDQs4=";
sha256 = "sha256:0anxhrkxqb35mxr7jr820xcfw0v514s92wffsiqap2a2sqaj0pgs";
};
# Needs tox
@ -70,10 +70,9 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
patches = [
./fix-restart.patch
(fetchpatch {
name = "fix-version-parsing.patch";
url = "https://github.com/qutebrowser/qutebrowser/commit/c3d1b71c6f08607f47353f406aca0168bb3062a1.patch";
excludes = [ "doc/changelog.asciidoc" ];
sha256 = "1vm2yjvmrw4cyn8mpwfwvvcihn74f60ql3qh1rjj8n0wak8z1ir6";
name = "add-qtwebengine-version-override.patch";
url = "https://github.com/qutebrowser/qutebrowser/commit/febb921040b6670d9b1694a6ce55ae39384d1306.patch";
sha256 = "15p11kk8via7c7m14jiqgzc63qwxxzayr2bkl93jd10l2gx7pk9v";
})
];
@ -123,6 +122,7 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
"''${gappsWrapperArgs[@]}"
"''${qtWrapperArgs[@]}"
--add-flags '--backend ${backend}'
--set QUTE_QTWEBENGINE_VERSION_OVERRIDE "${lib.getVersion qtwebengine}"
)
'';

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "nerdctl";
version = "0.7.3";
version = "0.8.0";
src = fetchFromGitHub {
owner = "containerd";
repo = pname;
rev = "v${version}";
sha256 = "sha256-4NIyit2HnDXWnHALGzz5KWxe4PU8CwMRwCoIlN/WX78=";
sha256 = "sha256-It/p2Hk4/fkYgHTPynf7p7zs4ajjo0Fv3yTzhrWUusE=";
};
vendorSha256 = "sha256-qwUAC8LURsn6C3zKzcsuFsOTurjPV9V8Z/1Y9G0eohk=";
vendorSha256 = "sha256-Vg6SHyQkeUvd2hT0JV32y+F0t/qb81MrgOFcr785a8M=";
nativeBuildInputs = [ makeWrapper installShellFiles ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "starboard-octant-plugin";
version = "0.9.2";
version = "0.10.0";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-wis2ECCVXQeD7GiCMJQai+wDM8QJ1j5dPnE5O/I3wpM=";
sha256 = "sha256-3BifigdAFuOCrhJRv/w4k7pT4BTHfINuEkeG6zaI0v8=";
};
vendorSha256 = "sha256-T0wDbAl5GXphZIBrM36OwRCojnJ/cbXNqsjtCzUDZ6s=";
vendorSha256 = "sha256-1NTneOGU4R1xzR9hAI9MJWYuYTPgYtLa5vH1H5wyHcM=";
buildFlagsArray = [ "-ldflags=" "-s" "-w" ];

View file

@ -164,6 +164,14 @@ in rec {
passthru = { inherit plugins; };
});
terraform_0_15 = pluggable (generic {
version = "0.15.0";
sha256 = "0d7hai57x6qczacdnzzvs3766180n6grmq0a7rlw5jp3zgzp8bmr";
vendorSha256 = "1l67kkrk8jw7v1rqpwj6n0l7lvmfgf1ir430j1n96459s1dzf0cn";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
});
# Tests that the plugins are being used. Terraform looks at the specific
# file pattern and if the plugin is not found it will try to download it
# from the Internet. With sandboxing enable this test will fail if that is

View file

@ -0,0 +1,23 @@
diff -Naur terraform.old/command/init.go terraform.new/command/init.go
--- terraform.old/command/init.go
+++ terraform.new/command/init.go
@@ -3,6 +3,7 @@
import (
"context"
"fmt"
+ "os"
"log"
"strings"
@@ -55,6 +56,11 @@
var diags tfdiags.Diagnostics
+ val, ok := os.LookupEnv("NIX_TERRAFORM_PLUGIN_DIR")
+ if ok {
+ flagPluginPath = append(flagPluginPath, val)
+ }
+
if len(flagPluginPath) > 0 {
c.pluginPath = flagPluginPath
}

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "terragrunt";
version = "0.28.20";
version = "0.28.24";
src = fetchFromGitHub {
owner = "gruntwork-io";
repo = pname;
rev = "v${version}";
sha256 = "sha256-Hg4eeLFNm2cXUjp3T2VK6q+mgawqkHju9P3Vq9wnB9c=";
sha256 = "sha256-7wfBKXO4uUrFjEklmgfgzIECARsOolwXjNFOFqfn1ds=";
};
vendorSha256 = "sha256-kcRM76xfajtQist1aJTmaRludxRlfvHQ9ucB3LOgnBk=";
vendorSha256 = "sha256-qlSCQtiGHmlk3DyETMoQbbSYhuUSZTsvAnBKuDJI8x8=";
doCheck = false;

View file

@ -2,24 +2,27 @@
buildGoModule rec {
pname = "velero";
version = "1.5.4";
# When updating, change the commit underneath
version = "1.6.0";
commit = "5bd70fd8eef316d220317245e46dc6016c348dce";
src = fetchFromGitHub {
rev = "v${version}";
owner = "vmware-tanzu";
repo = "velero";
sha256 = "sha256-YHBqIM3NV2L13w9WCzldUWmdBMec7ZndzYgGHblS8Dg=";
sha256 = "sha256-2d4xsffh5DpxGahmzXpgUBRFAt5CsDnHCm8xU1ksqyQ=";
};
buildFlagsArray = ''
-ldflags=
-s -w
-X github.com/vmware-tanzu/velero/pkg/buildinfo.Version=${version}
-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitSHA=456eb19668f8da603756353d9179b59b5a7bfa04
-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitSHA=${commit}
-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitTreeState=clean
'';
vendorSha256 = "sha256-m/zShJeclZ1k8Fr9faK2x1Mpwbwun674iMPJhMw/9Mc=";
vendorSha256 = "sha256-aQjtebIyV69nRwc/zvK/9v0mX3pAPKfOunSL/FpFZJU=";
excludedPackages = [ "issue-template-gen" ];

View file

@ -35,16 +35,17 @@
, alsaLib
, pulseaudio
, makeWrapper
, xdg-utils
}:
stdenv.mkDerivation rec {
pname = "bluejeans";
version = "2.19.0";
buildNumber = "61";
version = "2.21.3";
buildNumber = "2";
src = fetchurl {
url = "https://swdl.bluejeans.com/desktop-app/linux/${version}/BlueJeans_${version}.${buildNumber}.rpm";
sha256 = "163p67dqry256d454qzk4k4b692kz8s9fcvaxd6gi7zvnsd48ikr";
sha256 = "sha256-a/REuxkqZmLLa7N3CUgUAdq74VMD9D10a/Sx2jOj1QA=";
};
nativeBuildInputs = [ rpmextract makeWrapper ];
@ -100,6 +101,7 @@ stdenv.mkDerivation rec {
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
--replace-needed libudev.so.0 libudev.so.1 \
opt/BlueJeans/bluejeans-v2
patchelf \
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
opt/BlueJeans/resources/BluejeansHelper
@ -108,7 +110,8 @@ stdenv.mkDerivation rec {
makeWrapper $out/opt/BlueJeans/bluejeans-v2 $out/bin/bluejeans \
--set LD_LIBRARY_PATH "${libPath}":"${placeholder "out"}"/opt/BlueJeans \
--set LD_PRELOAD "$out"/opt/BlueJeans/liblocaltime64_stub.so
--set LD_PRELOAD "$out"/opt/BlueJeans/liblocaltime64_stub.so \
--prefix PATH : ${lib.makeBinPath [ xdg-utils ]}
substituteInPlace "$out"/share/applications/bluejeans-v2.desktop \
--replace "/opt/BlueJeans/bluejeans-v2" "$out/bin/bluejeans"

View file

@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
# Enable feature flags, so that build fail if libs are missing
configureFlags = [ "--enable-c-plugins" "--enable-otr" ]
++ optionals notifySupport [ "--enable-notifications" ]
++ optionals traySupport [ "--enable-icons" ]
++ optionals traySupport [ "--enable-icons-and-clipboard" ]
++ optionals pgpSupport [ "--enable-pgp" ]
++ optionals pythonPluginSupport [ "--enable-python-plugins" ]
++ optionals omemoSupport [ "--enable-omemo" ];

View file

@ -1,39 +1,62 @@
{ mkDerivation, lib, fetchFromGitHub, pkg-config, python3, cmake, ninja
, qtbase, qtimageformats, libdbusmenu, hunspell, xdg-utils, ffmpeg_3, openalSoft
, xz, lz4, xxHash, zlib, minizip, openssl, libtgvoip, microsoft_gsl, tl-expected
, range-v3
{ mkDerivation, lib, fetchFromGitHub, callPackage
, pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook
, qtbase, qtimageformats, gtk3, libsForQt5, lz4, xxHash
, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
, tl-expected, hunspell, glibmm
# Transitive dependencies:
, pcre, xorg, util-linux, libselinux, libsepol, epoxy
, at-spi2-core, libXtst, libthai, libdatrie
}:
with lib;
mkDerivation rec {
let
tg_owt = callPackage ../tdesktop/tg_owt.nix {};
in mkDerivation rec {
pname = "kotatogram-desktop";
version = "1.2";
version = "1.4";
src = fetchFromGitHub {
owner = "kotatogram";
repo = "kotatogram-desktop";
rev = "k${version}";
sha256 = "00pdx3cjhrihf7ihhmszcf159jrzn1bcx20vwiiizs5r1qk8l210";
sha256 = "0nhyjqxrbqiik4sgzplmpgx8msf8rykjiik0c2zr61rjm4fngkb3";
fetchSubmodules = true;
};
nativeBuildInputs = [ pkg-config python3 cmake ninja ];
postPatch = ''
substituteInPlace Telegram/CMakeLists.txt \
--replace '"''${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml"' '"''${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml"'
'';
# We want to run wrapProgram manually (with additional parameters)
dontWrapGApps = true;
dontWrapQtApps = true;
nativeBuildInputs = [ pkg-config cmake ninja python3 wrapGAppsHook wrapQtAppsHook ];
buildInputs = [
qtbase qtimageformats ffmpeg_3 openalSoft xz lz4 xxHash libdbusmenu
zlib minizip openssl hunspell libtgvoip microsoft_gsl tl-expected range-v3
qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu lz4 xxHash
ffmpeg openalSoft minizip libopus alsaLib libpulseaudio range-v3
tl-expected hunspell glibmm
tg_owt
# Transitive dependencies:
pcre xorg.libXdmcp util-linux libselinux libsepol epoxy
at-spi2-core libXtst libthai libdatrie
];
qtWrapperArgs = [
"--prefix PATH : ${xdg-utils}/bin"
];
cmakeFlags = [ "-DTDESKTOP_API_TEST=ON" ];
cmakeFlags = [
"-DTDESKTOP_API_TEST=ON"
"-DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF"
"-DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF"
];
postFixup = ''
# We also use gappsWrapperArgs from wrapGAppsHook.
wrapProgram $out/bin/kotatogram-desktop \
"''${gappsWrapperArgs[@]}" \
"''${qtWrapperArgs[@]}"
'';
passthru = {
inherit tg_owt;
};
meta = {
description = "Kotatogram experimental Telegram Desktop fork";
@ -45,6 +68,7 @@ mkDerivation rec {
license = licenses.gpl3;
platforms = platforms.linux;
homepage = "https://kotatogram.github.io";
changelog = "https://github.com/kotatogram/kotatogram-desktop/releases/tag/k{ver}";
maintainers = with maintainers; [ ilya-fedin ];
};
}

View file

@ -18,11 +18,11 @@
stdenv.mkDerivation rec {
pname = "mailspring";
version = "1.8.0";
version = "1.9.0";
src = fetchurl {
url = "https://github.com/Foundry376/Mailspring/releases/download/${version}/mailspring-${version}-amd64.deb";
sha256 = "BtzYcHN87qH7s3GiBrsDfmuy9v2xdhCeSShu8+T9T3E=";
sha256 = "ISwNFR8M377+J7WoG9MlblF8r5yRTgCxEGszZCjqW/k=";
};
nativeBuildInputs = [
@ -34,9 +34,7 @@ stdenv.mkDerivation rec {
alsaLib
db
glib
# We don't know why with trackerSupport the executable fail to launch, See:
# https://github.com/NixOS/nixpkgs/issues/106732
(gtk3.override {trackerSupport = false; })
gtk3
libkrb5
libsecret
nss
@ -52,10 +50,16 @@ stdenv.mkDerivation rec {
];
unpackPhase = ''
runHook preUnpack
dpkg -x $src .
runHook postUnpack
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,lib}
cp -ar ./usr/share $out
@ -64,11 +68,13 @@ stdenv.mkDerivation rec {
ln -s $out/share/mailspring/mailspring $out/bin/mailspring
ln -s ${openssl.out}/lib/libcrypto.so $out/lib/libcrypto.so.1.0.0
runHook postInstall
'';
postFixup = /* sh */ ''
substituteInPlace $out/share/applications/mailspring.desktop \
--replace /usr/bin $out/bin
substituteInPlace $out/share/applications/Mailspring.desktop \
--replace Exec=mailspring Exec=$out/bin/mailspring
'';
meta = with lib; {
@ -77,8 +83,8 @@ stdenv.mkDerivation rec {
Mailspring is an open-source mail client forked from Nylas Mail and built with Electron.
Mailspring's sync engine runs locally, but its source is not open.
'';
license = licenses.unfree;
maintainers = with maintainers; [ toschmidt ];
license = licenses.gpl3Plus;
maintainers = with maintainers; [ toschmidt doronbehar ];
homepage = "https://getmailspring.com";
downloadPage = "https://github.com/Foundry376/Mailspring";
platforms = platforms.x86_64;

View file

@ -20,6 +20,7 @@
, enableSystemd ? stdenv.isLinux
, enableDaemon ? true
, enableCli ? true
, installLib ? false
}:
let
@ -47,6 +48,7 @@ in stdenv.mkDerivation {
"-DENABLE_QT=${mkFlag enableQt}"
"-DENABLE_DAEMON=${mkFlag enableDaemon}"
"-DENABLE_CLI=${mkFlag enableCli}"
"-DINSTALL_LIB=${mkFlag installLib}"
];
nativeBuildInputs = [

View file

@ -1,4 +1,10 @@
{ lib, stdenv, fetchgit, fetchpatch, cmake, pkg-config, libusb1 }:
{ lib
, stdenv
, fetchgit
, cmake
, pkg-config
, libusb1
}:
stdenv.mkDerivation rec {
pname = "rtl-sdr";
@ -10,34 +16,25 @@ stdenv.mkDerivation rec {
sha256 = "0lmvsnb4xw4hmz6zs0z5ilsah5hjz29g1s0050n59fllskqr3b8k";
};
patches = [ (fetchpatch {
name = "hardened-udev-rules.patch";
url = "https://osmocom.org/projects/rtl-sdr/repository/revisions/b2814731563be4d5a0a68554ece6454a2c63af12/diff?format=diff";
sha256 = "0ns740s2rys4glq4la4bh0sxfv1mn61yfjns2yllhx70rsb2fqrn";
}) ];
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace '/etc/udev/rules.d' "$out/etc/udev/rules.d"
substituteInPlace rtl-sdr.rules \
--replace 'MODE:="0666"' 'ENV{ID_SOFTWARE_RADIO}="1", MODE="0660", GROUP="plugdev"'
'';
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ libusb1 ];
# TODO: get these fixes upstream:
# * Building with -DINSTALL_UDEV_RULES=ON tries to install udev rules to
# /etc/udev/rules.d/, and there is no option to install elsewhere. So install
# rules manually.
# * Propagate libusb-1.0 dependency in pkg-config file.
postInstall = lib.optionalString stdenv.isLinux ''
mkdir -p "$out/etc/udev/rules.d/"
cp ../rtl-sdr.rules "$out/etc/udev/rules.d/99-rtl-sdr.rules"
pcfile="$out"/lib/pkgconfig/librtlsdr.pc
grep -q "Requires:" "$pcfile" && { echo "Upstream has added 'Requires:' in $(basename "$pcfile"); update nix expression."; exit 1; }
echo "Requires: libusb-1.0" >> "$pcfile"
'';
cmakeFlags = lib.optional stdenv.isLinux "-DINSTALL_UDEV_RULES=ON";
meta = with lib; {
description = "Turns your Realtek RTL2832 based DVB dongle into a SDR receiver";
homepage = "http://sdr.osmocom.org/trac/wiki/rtl-sdr";
homepage = "http://github.com/librtlsdr/librtlsdr";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ bjornfor ];
platforms = platforms.linux ++ platforms.darwin;
maintainers = [ maintainers.bjornfor ];
};
}

View file

@ -1,54 +1,78 @@
{
airspy,
boost,
cm256cc,
cmake,
codec2,
fetchFromGitHub,
fftwFloat,
glew,
hackrf,
lib,
ffmpeg,
libiio,
libopus,
libpulseaudio,
libusb1,
limesuite,
libbladeRF,
mkDerivation,
ocl-icd,
opencv3,
pkg-config,
qtbase,
qtmultimedia,
qtserialport,
qtwebsockets,
rtl-sdr,
serialdv,
soapysdr-with-plugins,
uhd
{ airspy
, boost
, cm256cc
, cmake
, codec2
, fetchFromGitHub
, fftwFloat
, glew
, hackrf
, lib
, ffmpeg
, libiio
, libopus
, libpulseaudio
, libusb1
, limesuite
, libbladeRF
, mkDerivation
, ocl-icd
, opencv3
, pkg-config
, qtcharts
, qtlocation
, qtmultimedia
, qtserialport
, qtspeech
, qtwebsockets
, rtl-sdr
, serialdv
, soapysdr-with-plugins
, uhd
}:
mkDerivation rec {
pname = "sdrangel";
version = "6.4.0";
version = "6.8.0";
src = fetchFromGitHub {
owner = "f4exb";
repo = "sdrangel";
rev = "v${version}";
sha256 = "4iJoKs0BHmBR6JRFuTIqs0GW3SjhPRMPRlqdyTI38T4=";
sha256 = "sha256-dFWwEs2nvcaCWpM4tA3/w8PbmNXn/R7JvxP3XEHasSQ=";
fetchSubmodules = false;
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [
glew opencv3 libusb1 boost libopus limesuite ffmpeg libiio libpulseaudio
qtbase qtwebsockets qtmultimedia rtl-sdr airspy hackrf
fftwFloat codec2 cm256cc serialdv qtserialport
libbladeRF uhd soapysdr-with-plugins
airspy
boost
cm256cc
codec2
ffmpeg
fftwFloat
glew
hackrf
libbladeRF
libiio
libopus
libpulseaudio
libusb1
limesuite
opencv3
qtcharts
qtlocation
qtmultimedia
qtserialport
qtspeech
qtwebsockets
rtl-sdr
serialdv
soapysdr-with-plugins
uhd
];
cmakeFlags = [
"-DLIBSERIALDV_INCLUDE_DIR:PATH=${serialdv}/include/serialdv"
"-DLIMESUITE_INCLUDE_DIR:PATH=${limesuite}/include"
@ -61,11 +85,11 @@ mkDerivation rec {
meta = with lib; {
description = "Software defined radio (SDR) software";
longDescription = ''
SDRangel is an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
SDRangel is an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
'';
homepage = "https://github.com/f4exb/sdrangel";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ alkeryn ];
platforms = platforms.linux;
};
}

View file

@ -43,6 +43,7 @@ let
"8.12.2".sha256 = "18gscfm039pqhq4msq01nraig5dm9ab98bjca94zldf8jvdv0x2n";
"8.13.0".sha256 = "0sjbqmz6qcvnz0hv87xha80qbhvmmyd675wyc5z4rgr34j2l1ymd";
"8.13.1".sha256 = "0xx2ns84mlip9bg2mkahy3pmc5zfcgrjxsviq9yijbzy1r95wf0n";
"8.13.2".sha256 = "1884vbmwmqwn9ngibax6dhnqh4cc02l0s2ajc6jb1xgr0i60whjk";
};
releaseRev = v: "V${v}";
fetched = import ../../../../build-support/coq/meta-fetch/default.nix

View file

@ -4,8 +4,8 @@ let
noise = fetchFromGitHub {
owner = "jangko";
repo = "nim-noise";
rev = "db1e86e312413e4348fa82c02340784316a89cc1";
sha256 = "0n9l2dww5smrsl1xfqxjnxz3f1srb72lc1wl3pdvs6xfyf44qzlh";
rev = "v0.1.14";
sha256 = "0wndiphznfyb1pac6zysi3bqljwlfwj6ziarcwnpf00sw2zni449";
};
nimbox = fetchFromGitHub {
@ -24,13 +24,13 @@ let
in stdenv.mkDerivation rec {
pname = "nimmm";
version = "0.1.2";
version = "0.2.0";
src = fetchFromGitHub {
owner = "joachimschmidt557";
repo = "nimmm";
rev = "v${version}";
sha256 = "1zpq181iz6g7yfi298gjwv33b89l4fpnkjprimykah7py5cpw67w";
sha256 = "168n61avphbxsxfq8qzcnlqx6wgvz5yrjvs14g25cg3k46hj4xqg";
};
nativeBuildInputs = [ nim ];

View file

@ -2,25 +2,33 @@
buildGoModule rec {
pname = "gh";
version = "1.8.1";
version = "1.9.1";
src = fetchFromGitHub {
owner = "cli";
repo = "cli";
rev = "v${version}";
sha256 = "1q0vc9wr4n813mxkf7jjj3prw1n7xv4l985qd57pg4a2js1dqa1y";
sha256 = "1nrbz049nizrrfxdpws05gj0bqk47l4mrl4wcvfb6nwispc74ib0";
};
vendorSha256 = "1wv30z0jg195nkpz3rwvhixyw81lg2wzwwajq9g6s3rfjj8gs9v2";
vendorSha256 = "0j2jy7n7hca5ybwwgh7cvm77j96ngaq1a1l5bl70vjpd8hz2qapc";
nativeBuildInputs = [ installShellFiles ];
# upstream unsets these to handle cross but it breaks our build
postPatch = ''
substituteInPlace Makefile \
--replace "GOOS= GOARCH= GOARM= GOFLAGS= CGO_ENABLED=" ""
'';
buildPhase = ''
export GO_LDFLAGS="-s -w"
make GH_VERSION=${version} bin/gh manpages
runHook preBuild
make GO_LDFLAGS="-s -w" GH_VERSION=${version} bin/gh manpages
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dm755 bin/gh -t $out/bin
installManPage share/man/*/*.[1-9]
@ -28,6 +36,7 @@ buildGoModule rec {
$out/bin/gh completion -s $shell > gh.$shell
installShellCompletion gh.$shell
done
runHook postInstall
'';
# fails with `unable to find git executable in PATH`

View file

@ -16,12 +16,12 @@ with lib;
buildGoPackage rec {
pname = "gitea";
version = "1.14.0";
version = "1.14.1";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "sha256-SE+YqcRNkhRQXDzgv72YrQX9bG/URYj4NAFvTg4bE3Y=";
sha256 = "1hpwc5jmkbnn6qf3li8g38qz2l87vk6jq2zxijq92jyfp54kj03p";
};
unpackPhase = ''

View file

@ -122,7 +122,10 @@ stdenv.mkDerivation {
rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler tzdata git nettools
];
patches = [ ./remove-hardcoded-locations.patch ];
patches = [
# Change hardcoded paths to the NixOS equivalent
./remove-hardcoded-locations.patch
];
postPatch = ''
${lib.optionalString (!gitlabEnterprise) ''

View file

@ -7,14 +7,14 @@ buildGoModule rec {
owner = "gitlab-org";
repo = "gitlab-shell";
rev = "v${version}";
sha256 = "sha256-wDZLcCBbWjG6wIcEj02eqwWVfAYy1TuAo/xvJB8tt+0=";
sha256 = "sha256-j/80AIIJdRSisu2fNXcqazb4oIzAQP5CfxHX3l6yijY=";
};
buildInputs = [ ruby ];
patches = [ ./remove-hardcoded-locations.patch ];
vendorSha256 = "16fa3bka0008x2yazahc6xxcv4fa6yqg74kk64v8lrp7snbvjf4d";
vendorSha256 = "sha256-/jJTMtS5fcbQroWuaPPfvYxy6znNS0FOXVN7IcE/spQ=";
postInstall = ''
cp -r "$NIX_BUILD_TOP/source"/bin/* $out/bin

View file

@ -1,34 +1,25 @@
diff --git a/internal/config/config.go b/internal/config/config.go
index 79c2a36..12ba31e 100644
index 36f8625..72ede08 100644
--- a/internal/config/config.go
+++ b/internal/config/config.go
@@ -3,7 +3,6 @@ package config
import (
"io/ioutil"
"net/url"
- "os"
"path"
"path/filepath"
@@ -12,7 +12,7 @@ import (
)
@@ -59,16 +58,13 @@ func (c *Config) GetHttpClient() *client.HttpClient {
}
const (
- configFile = "config.yml"
+ configFile = "shell-config.yml"
defaultSecretFileName = ".gitlab_shell_secret"
)
func New() (*Config, error) {
- dir, err := os.Getwd()
- if err != nil {
- return nil, err
- }
+ dir := "/run/gitlab"
return NewFromDir(dir)
}
func NewFromDir(dir string) (*Config, error) {
- return newFromFile(path.Join(dir, configFile))
+ return newFromFile("/run/gitlab/shell-config.yml")
}
func newFromFile(filename string) (*Config, error) {
@@ -91,7 +91,7 @@ func (c *Config) GetHttpClient() *client.HttpClient {
// NewFromDirExternal returns a new config from a given root dir. It also applies defaults appropriate for
// gitlab-shell running in an external SSH server.
func NewFromDirExternal(dir string) (*Config, error) {
- cfg, err := newFromFile(filepath.Join(dir, configFile))
+ cfg, err := newFromFile(filepath.Join("/run/gitlab", configFile))
if err != nil {
return nil, err
}
diff --git a/internal/keyline/key_line.go b/internal/keyline/key_line.go
index c6f2422..fb0426b 100644
--- a/internal/keyline/key_line.go
@ -55,6 +46,3 @@ index 52ac5ee..d96baa3 100644
end
def auth_file
--
2.28.0

View file

@ -0,0 +1,71 @@
{ lib
, fetchFromGitHub
, mkDerivation
, breeze-icons
, breeze-qt5
, cmake
, extra-cmake-modules
, kcodecs
, kconfig
, kcoreaddons
, kfilemetadata
, ki18n
, kiconthemes
, kio
, kio-extras
, kirigami2
, kxmlgui
, mpv
, pkg-config
, qqc2-desktop-style
, qtbase
, qtquickcontrols2
, qtwayland
, youtube-dl
}:
mkDerivation rec {
pname = "haruna";
version = "0.6.1";
src = fetchFromGitHub {
owner = "g-fb";
repo = "haruna";
rev = version;
sha256 = "sha256-8MauKmvQUwzq4Ssmm6g7/y6ADkye+eg/zyR3v/Wu848=";
};
buildInputs = [
breeze-icons
breeze-qt5
kcodecs
kconfig
kcoreaddons
kfilemetadata
ki18n
kiconthemes
kio
kio-extras
kirigami2
kxmlgui
mpv
qqc2-desktop-style
qtbase
qtquickcontrols2
qtwayland
youtube-dl
];
nativeBuildInputs = [
cmake
extra-cmake-modules
pkg-config
];
meta = with lib; {
homepage = "https://github.com/g-fb/haruna";
description = "Open source video player built with Qt/QML and libmpv";
license = with licenses; [ bsd3 cc-by-40 gpl3Plus wtfpl ];
maintainers = with maintainers; [ jojosch ];
};
}

View file

@ -6,7 +6,7 @@
buildGoPackage rec {
pname = "docker-slim";
version = "1.34.0";
version = "1.35.0";
goPackagePath = "github.com/docker-slim/docker-slim";
@ -14,7 +14,7 @@ buildGoPackage rec {
owner = "docker-slim";
repo = "docker-slim";
rev = version;
sha256 = "1ynpd6yb1xc18y528sshd5k9nkz48h1zifj2w4sjh5n0864lna7b";
sha256 = "0j350rhyav844vhaa1f5idffflgs5h3c5zcazly9s5sf4invm49y";
};
subPackages = [ "cmd/docker-slim" "cmd/docker-slim-sensor" ];

View file

@ -1,7 +1,7 @@
{ fetchurl, lib, stdenv }:
let
version = "0.23.0";
version = "0.24.2";
suffix = {
x86_64-linux = "x86_64";
@ -9,33 +9,28 @@ let
}."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download";
fetchbin = name: sha256: fetchurl {
url = "${baseurl}/v${version}/${name}-v${version}-${suffix}";
dlbin = sha256: fetchurl {
url = "${baseurl}/v${version}/firecracker-v${version}-${suffix}.tgz";
sha256 = sha256."${stdenv.hostPlatform.system}";
};
firecracker-bin = fetchbin "firecracker" {
x86_64-linux = "11h6qkq55y1w0mlkfkbnpxxai73rzxkiz07i747m7a9azbrmldp8";
aarch64-linux = "0zyx7md54w0fhqk1anfyjfdqrkg2mjyy17y9jk17p34yrw8j9y29";
};
jailer-bin = fetchbin "jailer" {
x86_64-linux = "15slr2azqvyqlhvlh7zk1n0rkfq282kj0pllp19r0yl1w8ns1gw5";
aarch64-linux = "1d92jhd6fb7w7ciz15rcfp8jf74r2503w2fl1b6pznpc8h4qscfd";
};
in
stdenv.mkDerivation {
pname = "firecracker";
inherit version;
srcs = [ firecracker-bin jailer-bin ];
unpackPhase = ":";
sourceRoot = ".";
src = dlbin {
x86_64-linux = "0l7x9sfyx52n0mwrmicdcnhm8z10q57kk1a5wf459l8lvp59xw08";
aarch64-linux = "0m7xs12g97z1ipzaf7dgknf3azlah0p6bdr9i454azvzg955238b";
};
configurePhase = ":";
buildPhase = ''
cp ${firecracker-bin} firecracker
cp ${jailer-bin} jailer
mv firecracker-* firecracker
mv jailer-* jailer
chmod +x firecracker jailer
'';

View file

@ -16,13 +16,13 @@
buildGoModule rec {
pname = "podman";
version = "3.1.0";
version = "3.1.1";
src = fetchFromGitHub {
owner = "containers";
repo = "podman";
rev = "v${version}";
sha256 = "sha256-Cql9ikk0lo/LeWNykEJSKgfGnBSUU5vOh/zUIEvMapk=";
sha256 = "1ihpz50c50frw9nrjp0vna2lg50kwlar6y6vr4s5sjiwza1qv2d2";
};
patches = [

View file

@ -43,14 +43,11 @@ stdenv.mkDerivation {
enableParallelBuilding = true;
# Must replace GNU Make by bmake
buildPhase = with lib; concatStringsSep " " (
[ "bmake" "-j$NIX_BUILD_CORES" "PREFIX=$out" ]
makeFlags = with lib; [ "PREFIX=$(out)" ]
++ optional stdenv.isLinux "WITH_POSIX_C_SOURCE=YES"
++ mapAttrsToList (feat: enabled:
optionalString enabled "WITH_${toUpper feat}=YES"
) features
);
) features;
# Can't suid in nix store
# Run hikari as root (it will drop privileges as early as possible), or create
@ -59,13 +56,6 @@ stdenv.mkDerivation {
substituteInPlace Makefile --replace '4555' '555'
'';
installPhase = ''
bmake \
PREFIX=$out \
install
runHook postInstall
'';
meta = with lib; {
description = "Stacking Wayland compositor which is actively developed on FreeBSD but also supports Linux";
homepage = "https://hikari.acmelabs.space";

View file

@ -16,27 +16,30 @@
, libXinerama
, libXrandr
, libXrender
, libXres
, pcre
, pkg-config
}:
let
rev = "v0.6-17-g271e784";
in
stdenv.mkDerivation rec {
pname = "neocomp-unstable";
version = "2019-03-12";
pname = "neocomp";
version = "unstable-2021-04-06";
src = fetchFromGitHub {
inherit rev;
owner = "DelusionalLogic";
repo = "NeoComp";
sha256 = "1mp338vz1jm5pwf7pi5azx4hzykmvpkwzx1kw6a9anj272f32zpg";
owner = "DelusionalLogic";
repo = "NeoComp";
rev = "ccd340d7b2dcd3f828aff958a638cc23686aee6f";
sha256 = "sha256-tLLEwpAGNVTC+N41bM7pfskIli4Yvc95wH2/NT0OZ+8=";
};
buildInputs = [
nativeBuildInputs = [
asciidoc
docbook_xml_dtd_45
docbook_xsl
pkg-config
];
buildInputs = [
freetype
judy
libGL
@ -50,15 +53,15 @@ stdenv.mkDerivation rec {
libXinerama
libXrandr
libXrender
libXres
pcre
pkg-config
];
makeFlags = [
"PREFIX=${placeholder "out"}"
"CFGDIR=${placeholder "out"}/etc/xdg/neocomp"
"ASTDIR=${placeholder "out"}/share/neocomp/assets"
"COMPTON_VERSION=git-${rev}-${version}"
"COMPTON_VERSION=${version}"
];
postPatch = ''
@ -72,8 +75,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://github.com/DelusionalLogic/NeoComp";
license = licenses.gpl3;
maintainers = with maintainers; [ twey ];
license = licenses.gpl3Only;
maintainers = with maintainers; [ twey fortuneteller2k ];
platforms = platforms.linux;
description = "A fork of Compton, a compositor for X11";
longDescription = ''

View file

@ -686,6 +686,42 @@ rec {
in
result;
# Merge the tarballs of images built with buildImage into a single
# tarball that contains all images. Running `docker load` on the resulting
# tarball will load the images into the docker daemon.
mergeImages = images: runCommand "merge-docker-images"
{
inherit images;
nativeBuildInputs = [ pigz jq ];
} ''
mkdir image inputs
# Extract images
repos=()
manifests=()
for item in $images; do
name=$(basename $item)
mkdir inputs/$name
tar -I pigz -xf $item -C inputs/$name
if [ -f inputs/$name/repositories ]; then
repos+=(inputs/$name/repositories)
fi
if [ -f inputs/$name/manifest.json ]; then
manifests+=(inputs/$name/manifest.json)
fi
done
# Copy all layers from input images to output image directory
cp -R --no-clobber inputs/*/* image/
# Merge repositories objects and manifests
jq -s add "''${repos[@]}" > repositories
jq -s add "''${manifests[@]}" > manifest.json
# Replace output image repositories and manifest with merged versions
mv repositories image/repositories
mv manifest.json image/manifest.json
# Create tarball and gzip
tar -C image --hard-dereference --sort=name --mtime="@$SOURCE_DATE_EPOCH" --owner=0 --group=0 --xform s:'^./':: -c . | pigz -nT > $out
'';
# Provide a /etc/passwd and /etc/group that contain root and nobody.
# Useful when packaging binaries that insist on using nss to look up
# username/groups (like nginx).

View file

@ -497,4 +497,23 @@ rec {
chown 1000 ./home/jane
'';
};
# tarball consisting of both bash and redis images
mergedBashAndRedis = pkgs.dockerTools.mergeImages [
bash
redis
];
# tarball consisting of bash (without tag) and redis images
mergedBashNoTagAndRedis = pkgs.dockerTools.mergeImages [
bashNoTag
redis
];
# tarball consisting of bash and layered image with different owner of the
# /home/jane directory
mergedBashFakeRoot = pkgs.dockerTools.mergeImages [
bash
layeredImageWithFakeRootCommands
];
}

View file

@ -1,21 +1,22 @@
{lib, stdenv, fetchurl}:
stdenv.mkDerivation rec {
name = "man-pages-posix-2013-a";
pname = "man-pages-posix";
version = "2017-a";
src = fetchurl {
url = "mirror://kernel/linux/docs/man-pages/man-pages-posix/${name}.tar.xz";
sha256 = "0258j05zdrxpgdj8nndbyi7bvrs8fxdksb0xbfrylzgzfmf3lqqr";
url = "mirror://kernel/linux/docs/man-pages/man-pages-posix/${pname}-${version}.tar.xz";
sha256 = "ce67bb25b5048b20dad772e405a83f4bc70faf051afa289361c81f9660318bc3";
};
preBuild =
''
makeFlagsArray=(MANDIR=$out/share/man)
'';
makeFlags = [
"MANDIR=${placeholder "out"}/share/man"
];
meta = {
description = "POSIX man-pages (0p, 1p, 3p)";
homepage = "https://www.kernel.org/doc/man-pages/";
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.sternenseemann ];
};
}

View file

@ -0,0 +1,24 @@
{ lib, fetchzip }:
let
version = "unstable-2019-12-05";
repo = "CourierPrime";
rev = "7f6d46a766acd9391d899090de467c53fd9c9cb0";
in fetchzip rec {
name = "courier-prime-${version}";
url = "https://github.com/quoteunquoteapps/${repo}/archive/${rev}/${name}.zip";
sha256 = "1xh4pkksm6zrafhb69q4lq093q6pl245zi9qhqw3x6c1ab718704";
postFetch = ''
unzip $downloadedFile
install -m444 -Dt $out/share/fonts/truetype ${repo}-${rev}/fonts/ttf/*.ttf
'';
meta = with lib; {
description = "Monospaced font designed specifically for screenplays";
homepage = "https://github.com/quoteunquoteapps/CourierPrime";
license = licenses.ofl;
maintainers = [ maintainers.austinbutler ];
platforms = platforms.all;
};
}

View file

@ -1,10 +1,10 @@
{ lib, fetchzip, version ? "3.000" }:
{ lib, fetchzip, version ? "3.100" }:
let
new = lib.versionAtLeast version "3.000";
sha256 = {
"2.100" = "1g5f5f9gzamkq3kqyf7vbzvl4rdj3wmjf6chdrbxksrm3rnb926z";
"3.000" = "12sd2mjqb80ijc73y7p0iw6j3wy9i60a3aar3ywrxz4khpya48jw";
"3.100" = "0svnc7l3z3vvm27zx6msyx56n2fpv6ywb5lm75bym48slkccypn7";
}."${version}";
in fetchzip rec {

View file

@ -57,6 +57,7 @@
, gnome-autoar
, asciidoc-full
, bash-completion
, mesa
}:
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
@ -147,6 +148,7 @@ stdenv.mkDerivation rec {
gnome-desktop
gnome-settings-daemon
gobject-introspection
mesa
# recording
pipewire

View file

@ -1,13 +1,13 @@
{ lib, stdenv, gnome3, fetchFromGitHub, xprop, glib }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-unite";
version = "49";
version = "50";
src = fetchFromGitHub {
owner = "hardpixel";
repo = "unite-shell";
rev = "v${version}";
sha256 = "12kjljw253hshaz6x886kg3mc93lb4pxwd05qihww6m5k4lqjcy5";
sha256 = "14n9lrjbxcmvcjnh6zbwlc1paqfhbg81lj0y2d35sh1c2fbsb7d9";
};
uuid = "unite@hardpixel.eu";

View file

@ -25,6 +25,7 @@
, writeTextFile
, writeShellScriptBin
, xkeyboard_config
, xorg
, runCommand
}:
let
@ -101,6 +102,7 @@ let
libcanberra-gtk3
libpulseaudio
libxkbfile
xorg.libXxf86vm
polkit
gdm
gnome-panel

View file

@ -42,6 +42,7 @@ stdenv.mkDerivation rec {
buildInputs = [
xorg.libXres
xorg.libXpresent
xorg.libXdamage
glib
gsettings-desktop-schemas
gtk3

View file

@ -170,6 +170,5 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ ThomasMader lionello ];
platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
# many tests are failing
broken = true;
};
}

View file

@ -1,6 +1,9 @@
/*
How to combine packages for use in development:
dotnetCombined = with dotnetCorePackages; combinePackages [ sdk_3_1 sdk_2_2 sdk_3_0 sdk aspnetcore_2_1 ];
Hashes below are retrived from:
https://dotnet.microsoft.com/download/dotnet
*/
{ callPackage }:
let
@ -124,11 +127,11 @@ rec {
};
sdk_5_0 = buildNetCoreSdk {
version = "5.0.200";
version = "5.0.202";
sha512 = {
x86_64-linux = "0g7zcmkcdwc11h42m6hq8d0w55nnvnsmj3dc16829q55cp7l7kggmjljnd9slx7r7nrsyi7yy8brwh8n4kfi5998pdyb09fzhq5w60d";
aarch64-linux = "2zy6nxiw313g2sbmnkg76r64llbk2w2wcsa6frq535zbviw52zf163jvw2687rpiw4szdizf337l3b0qa0396abw5dhq2czqlxjyjv8";
x86_64-darwin = "2p0yxplafhi5ks38pq8nyi43kpv4l4npa718rvcvl57qs76j0dqlk1s4wdw7msx8g7xxy1aal47zy9rxvlypmgwx4dnp339cmbd6mf6";
x86_64-linux = "Ae1Z8jYYSYdAVnPSSUDVXOKdgw59u8GVVv3AOJMDnmBGcS3m+QHcmREEeg3uT9FTGbfpT4ox32uYH6Nb2T2YOA==";
aarch64-linux = "JuwSWgY35xrK0gOGR034mhAemulIkhtd4M00P0vA6EtOeyMY4Vl4cj6zudMh6Jt5DD8EJKQ8KbABX8byuePp2Q==";
x86_64-darwin = "jxnfTbQUb0dJ2/NX2pu8Pi/F/e4EaDm2Ta5U+6sSYj/s6nNp6NHxtEn7BzhQ9/EVLszl/oXi3lL0d/BPbzldEA==";
};
};
}

View file

@ -11,7 +11,7 @@ let
inherit (lib) optionals optionalString;
version = "1.16.2";
version = "1.16.3";
go_bootstrap = buildPackages.callPackage ./bootstrap.nix { };
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
sha256 = "1sl33wkhp6pi9f15f6khp5a7l7xwmpc3sp1zmji8pjr3g8l19jip";
sha256 = "sha256-spjSnekjbKR6Aj44IxO8wtLu0x36cGtgoEEDzoOnGiU=";
};
# perl is used for testing go vet

View file

@ -30,7 +30,7 @@ stdenv.mkDerivation {
'' + lib.optionalString stdenv.isDarwin ''
export TRIPLE=x86_64-apple-darwin
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-0001-musl-hacks.patch}
patch -p1 -d $(ls -d libcxx-*) -i ${../../libcxx-0001-musl-hacks.patch}
'' + lib.optionalString stdenv.hostPlatform.isWasm ''
patch -p1 -d $(ls -d llvm-*) -i ${./wasm.patch}
'';

View file

@ -31,7 +31,7 @@ stdenv.mkDerivation {
'' + lib.optionalString stdenv.isDarwin ''
export TRIPLE=x86_64-apple-darwin
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
patch -p1 -d libcxx -i ${../libcxx-0001-musl-hacks.patch}
patch -p1 -d libcxx -i ${../../libcxx-0001-musl-hacks.patch}
'' + lib.optionalString stdenv.hostPlatform.isWasm ''
patch -p1 -d llvm -i ${./wasm.patch}
'';

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld
, fixDarwinDylibNames
, enableManpages ? false
}:
@ -8,7 +8,7 @@ let
pname = "clang";
inherit version;
src = fetch "clang" "185r9rr254v75ja33nmm53j85lcnkj7bzsl18wvnd37jmz2nfxa5";
src = fetch "clang" "1vd9rhhrd8ghdg111lac7w8by71y9l14yh5zxfijsm6lj4p4avp2";
inherit clang-tools-extra_src;
unpackPhase = ''
@ -82,11 +82,20 @@ let
inherit llvm;
};
meta = {
description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
homepage = "https://llvm.org/";
license = lib.licenses.ncsa;
platforms = lib.platforms.all;
meta = llvm_meta // {
homepage = "https://clang.llvm.org/";
description = "A C language family frontend for LLVM";
longDescription = ''
The Clang project provides a language front-end and tooling
infrastructure for languages in the C language family (C, C++, Objective
C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
It aims to deliver amazingly fast compiles, extremely useful error and
warning messages and to provide a platform for building great source
level tools. The Clang Static Analyzer and clang-tidy are tools that
automatically find bugs in your code, and are great examples of the sort
of tools that can be built using the Clang frontend as a library to
parse C/C++ code.
'';
};
} // lib.optionalAttrs enableManpages {
pname = "clang-manpages";
@ -105,6 +114,8 @@ let
doCheck = false;
meta.description = "man page for Clang ${version}";
meta = llvm_meta // {
description = "man page for Clang ${version}";
};
});
in self

View file

@ -1,4 +1,4 @@
{ lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
let
@ -11,7 +11,7 @@ in
stdenv.mkDerivation rec {
pname = "compiler-rt";
inherit version;
src = fetch pname "1x0z875nbdpzhr4qb7linm6r9swvdf6dvwqy1s22pbn4wdcw0cvf";
src = fetch pname "0d444qihq9jhqnfv003cr704v363va72zl6qaw2algj1c85cva45";
nativeBuildInputs = [ cmake python3 llvm ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
@ -87,4 +87,19 @@ stdenv.mkDerivation rec {
ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
'';
meta = llvm_meta // {
homepage = "https://compiler-rt.llvm.org/";
description = "Compiler runtime libraries";
longDescription = ''
The compiler-rt project provides highly tuned implementations of the
low-level code generator support routines like "__fixunsdfdi" and other
calls generated when a target doesn't have a short sequence of native
instructions to implement a core IR operation. It also provides
implementations of run-time libraries for dynamic testing tools such as
AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
'';
# "All of the code in the compiler-rt project is dual licensed under the MIT
# license and the UIUC License (a BSD-like license)":
license = with lib.licenses; [ mit ncsa ];
};
}

View file

@ -8,7 +8,7 @@
let
release_version = "12.0.0";
candidate = "rc5"; # empty or "rcN"
candidate = ""; # empty or "rcN"
dash-candidate = lib.optionalString (candidate != "") "-${candidate}";
version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs
targetConfig = stdenv.targetPlatform.config;
@ -18,7 +18,13 @@ let
inherit sha256;
};
clang-tools-extra_src = fetch "clang-tools-extra" "1hga9k5m60ywmr7m69jf1v6vj1ra1n6ybv1abzlz94f5q22i1a02";
clang-tools-extra_src = fetch "clang-tools-extra" "0p3dzr0qa7mar83y66xa5m5apynf6ia0lsdsq6axwnm64ysy0hdd";
llvm_meta = {
license = lib.licenses.ncsa;
maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ];
platforms = lib.platforms.all;
};
tools = lib.makeExtensible (tools: let
callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
@ -30,13 +36,16 @@ let
ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
'';
in {
llvm = callPackage ./llvm.nix { };
llvm = callPackage ./llvm {
inherit llvm_meta;
};
clang-unwrapped = callPackage ./clang {
inherit (tools) lld;
inherit clang-tools-extra_src;
inherit clang-tools-extra_src llvm_meta;
};
# disabled until recommonmark supports sphinx 3
@ -80,11 +89,13 @@ let
extraBuildCommands = mkExtraBuildCommands cc;
};
lld = callPackage ./lld.nix {
lld = callPackage ./lld {
inherit llvm_meta;
libunwind = libraries.libunwind;
};
lldb = callPackage ./lldb.nix {
lldb = callPackage ./lldb {
inherit llvm_meta;
inherit (darwin) libobjc bootstrap_cmds;
inherit (darwin.apple_sdk.libs) xpc;
inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
@ -172,7 +183,7 @@ let
callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
in {
compiler-rt = callPackage ./compiler-rt.nix ({} //
compiler-rt = callPackage ./compiler-rt ({ inherit llvm_meta; } //
(lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt;
}));
@ -181,20 +192,20 @@ let
libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
libcxx = callPackage ./libc++ ({} //
libcxx = callPackage ./libc++ ({ inherit llvm_meta; } //
(lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
}));
libcxxabi = callPackage ./libc++abi.nix ({} //
libcxxabi = callPackage ./libc++abi ({ inherit llvm_meta; } //
(lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
libunwind = libraries.libunwind;
}));
openmp = callPackage ./openmp.nix {};
openmp = callPackage ./openmp.nix { inherit llvm_meta; };
libunwind = callPackage ./libunwind.nix ({} //
libunwind = callPackage ./libunwind ({ inherit llvm_meta; } //
(lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) {
stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx;
}));

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetch, fetchpatch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version
{ lib, stdenv, llvm_meta, fetch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version
, enableShared ? !stdenv.hostPlatform.isStatic
}:
@ -6,7 +6,7 @@ stdenv.mkDerivation {
pname = "libc++";
inherit version;
src = fetch "libcxx" "01abh553dvjgk5cjzzp0ghmg00laqbr4ar4frdhyhpbwhhmwc880";
src = fetch "libcxx" "1wf3ww29xkx7prs7pdwicy5qqfapib26110jgmkjrbka9z57bjvx";
postUnpack = ''
unpackFile ${libcxxabi.src}
@ -40,10 +40,15 @@ stdenv.mkDerivation {
isLLVM = true;
};
meta = {
meta = llvm_meta // {
homepage = "https://libcxx.llvm.org/";
description = "A new implementation of the C++ standard library, targeting C++11";
license = with lib.licenses; [ ncsa mit ];
platforms = lib.platforms.all;
description = "C++ standard library";
longDescription = ''
libc++ is an implementation of the C++ standard library, targeting C++11,
C++14 and above.
'';
# "All of the code in libc++ is dual licensed under the MIT license and the
# UIUC License (a BSD-like license)":
license = with lib.licenses; [ mit ncsa ];
};
}

View file

@ -1,4 +1,4 @@
{ lib, stdenv, cmake, python3, fetch, libcxx, libunwind, llvm, version
{ lib, stdenv, llvm_meta, cmake, python3, fetch, libcxx, libunwind, llvm, version
, enableShared ? !stdenv.hostPlatform.isStatic
}:
@ -6,7 +6,7 @@ stdenv.mkDerivation {
pname = "libc++abi";
inherit version;
src = fetch "libcxxabi" "0mjj4f63ix4j1b72bgzpcki7mzf3qszrq7snqhiq0c5s73skkwx0";
src = fetch "libcxxabi" "1cbmzspwjlr8f6sp73pw6ivf4dpg6rpc61by0q1m2zca2k6yif3a";
nativeBuildInputs = [ cmake python3 ];
buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
@ -29,7 +29,7 @@ stdenv.mkDerivation {
'' + lib.optionalString stdenv.isDarwin ''
export TRIPLE=x86_64-apple-darwin
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
patch -p1 -d libcxx -i ${../libcxx-0001-musl-hacks.patch}
patch -p1 -d libcxx -i ${../../libcxx-0001-musl-hacks.patch}
'' + lib.optionalString stdenv.hostPlatform.isWasm ''
patch -p1 -d llvm -i ${./libcxxabi-wasm.patch}
'';
@ -57,11 +57,15 @@ stdenv.mkDerivation {
ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
'';
meta = {
meta = llvm_meta // {
homepage = "https://libcxxabi.llvm.org/";
description = "A new implementation of low level support for a standard C++ library";
license = with lib.licenses; [ ncsa mit ];
maintainers = with lib.maintainers; [ vlstill ];
platforms = lib.platforms.all;
description = "Provides C++ standard library support";
longDescription = ''
libc++abi is a new implementation of low level support for a standard C++ library.
'';
# "All of the code in libc++abi is dual licensed under the MIT license and
# the UIUC License (a BSD-like license)":
license = with lib.licenses; [ mit ncsa ];
maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
};
}

View file

@ -1,21 +0,0 @@
{ lib, stdenv, version, fetch, libcxx, llvm, cmake
, enableShared ? !stdenv.hostPlatform.isStatic
}:
stdenv.mkDerivation rec {
pname = "libunwind";
inherit version;
src = fetch pname "0kaq75ygzv9dqfsx27pi5a0clipdjq6a9vghhb89d8k1rf20lslh";
postUnpack = ''
unpackFile ${libcxx.src}
mv libcxx-* libcxx
unpackFile ${llvm.src}
mv llvm-* llvm
'';
nativeBuildInputs = [ cmake ];
cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
}

View file

@ -0,0 +1,33 @@
{ lib, stdenv, llvm_meta, version, fetch, libcxx, llvm, cmake
, enableShared ? !stdenv.hostPlatform.isStatic
}:
stdenv.mkDerivation rec {
pname = "libunwind";
inherit version;
src = fetch pname "1x8wpmsrsgnwj2v5ih52ylni7r6n8gzkcj6hx65zbxski2rablly";
postUnpack = ''
unpackFile ${libcxx.src}
mv libcxx-* libcxx
unpackFile ${llvm.src}
mv llvm-* llvm
'';
nativeBuildInputs = [ cmake ];
cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
meta = llvm_meta // {
# Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
description = "LLVM's unwinder library";
longDescription = ''
The unwind library provides a family of _Unwind_* functions implementing
the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
I). It is a dependency of the C++ ABI library, and sometimes is a
dependency of other runtimes.
'';
};
}

View file

@ -1,39 +0,0 @@
{ lib, stdenv
, fetch
, libunwind
, cmake
, libxml2
, llvm
, version
}:
stdenv.mkDerivation rec {
pname = "lld";
inherit version;
src = fetch pname "044lv1d9am2xmbc3pvssxkkiyxyv72n2xkgk8z3p9k72h3ay00q3";
nativeBuildInputs = [ cmake ];
buildInputs = [ llvm libxml2 ];
postPatch = ''
substituteInPlace MachO/CMakeLists.txt --replace \
'(''${LLVM_MAIN_SRC_DIR}/' '('
mkdir -p libunwind/include
tar -xf "${libunwind.src}" --wildcards -C libunwind/include --strip-components=2 "libunwind-*/include/"
'';
outputs = [ "out" "dev" ];
postInstall = ''
moveToOutput include "$dev"
moveToOutput lib "$dev"
'';
meta = {
description = "The LLVM Linker";
homepage = "https://lld.llvm.org/";
license = lib.licenses.ncsa;
platforms = lib.platforms.all;
};
}

View file

@ -0,0 +1,45 @@
{ lib, stdenv, llvm_meta
, fetch
, libunwind
, cmake
, libxml2
, llvm
, version
}:
stdenv.mkDerivation rec {
pname = "lld";
inherit version;
src = fetch pname "1zakyxk5bwnh7jarckcd4rbmzi58jgn2dbah5j5cwcyfyfbx9drc";
nativeBuildInputs = [ cmake ];
buildInputs = [ llvm libxml2 ];
postPatch = ''
substituteInPlace MachO/CMakeLists.txt --replace \
'(''${LLVM_MAIN_SRC_DIR}/' '('
mkdir -p libunwind/include
tar -xf "${libunwind.src}" --wildcards -C libunwind/include --strip-components=2 "libunwind-*/include/"
'';
outputs = [ "out" "dev" ];
postInstall = ''
moveToOutput include "$dev"
moveToOutput lib "$dev"
'';
meta = llvm_meta // {
homepage = "https://lld.llvm.org/";
description = "The LLVM linker";
longDescription = ''
LLD is a linker from the LLVM project that is a drop-in replacement for
system linkers and runs much faster than them. It also provides features
that are useful for toolchain developers.
The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS) and
WebAssembly in descending order of completeness. Internally, LLD consists
of several different linkers.
'';
};
}

View file

@ -1,4 +1,4 @@
{ lib, stdenv
{ lib, stdenv, llvm_meta
, fetch
, cmake
, zlib
@ -25,7 +25,7 @@ stdenv.mkDerivation (rec {
pname = "lldb";
inherit version;
src = fetch pname "0q4p4s5ws1zszs3i4da5w5fnxkpny0q3fr1s1sh7jp9wcwxbxiqq";
src = fetch pname "1v85qyq3snk81vjmwq5q7xikyyqsfpqy2c4qmr81mps4avsw1g0l";
patches = [ ./lldb-procfs.patch ];
@ -72,11 +72,15 @@ stdenv.mkDerivation (rec {
ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
'';
meta = with lib; {
meta = llvm_meta // {
homepage = "https://lldb.llvm.org/";
description = "A next-generation high-performance debugger";
homepage = "https://lldb.llvm.org";
license = licenses.ncsa;
platforms = platforms.all;
longDescription = ''
LLDB is a next generation, high-performance debugger. It is built as a set
of reusable components which highly leverage existing libraries in the
larger LLVM Project, such as the Clang expression parser and LLVM
disassembler.
'';
};
} // lib.optionalAttrs enableManpages {
pname = "lldb-manpages";
@ -99,5 +103,7 @@ stdenv.mkDerivation (rec {
doCheck = false;
meta.description = "man pages for LLDB ${version}";
meta = llvm_meta // {
description = "man pages for LLDB ${version}";
};
})

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