Project import generated by Copybara.

GitOrigin-RevId: 467ce5a9f45aaf96110b41eb863a56866e1c2c3c
This commit is contained in:
Default email 2020-06-02 20:00:15 +02:00
parent 2d8e414bc0
commit e7f069c37c
536 changed files with 19091 additions and 18391 deletions

View file

@ -1,5 +1,5 @@
# EditorConfig configuration for nixpkgs # EditorConfig configuration for nixpkgs
# http://EditorConfig.org # https://EditorConfig.org
# Top-most EditorConfig file # Top-most EditorConfig file
root = true root = true
@ -19,18 +19,56 @@ trim_trailing_whitespace = unset
# see https://nixos.org/nixpkgs/manual/#chap-conventions # see https://nixos.org/nixpkgs/manual/#chap-conventions
# Match nix/perl/python/ruby/shell/docbook files, set indent to spaces # Match json/lockfiles/markdown/nix/perl/python/ruby/shell/docbook files, set indent to spaces
[*.{nix,pl,py,rb,sh,xml}] [*.{json,lock,md,nix,pl,pm,py,rb,sh,xml}]
indent_style = space indent_style = space
# Match docbook files, set indent width of one # Match docbook files, set indent width of one
[*.xml] [*.xml]
indent_size = 1 indent_size = 1
# Match nix/ruby files, set indent width of two # Match json/lockfiles/markdown/nix/ruby files, set indent width of two
[*.{nix,rb}] [*.{json,lock,md,nix,rb}]
indent_size = 2 indent_size = 2
# Match perl/python/shell scripts, set indent width of four # Match perl/python/shell scripts, set indent width of four
[*.{pl,py,sh}] [*.{pl,pm,py,sh}]
indent_size = 4 indent_size = 4
# Match gemfiles, set indent to spaces with width of two
[Gemfile]
indent_size = 2
indent_style = space
# Disable file types or individual files
# some of these files may be auto-generated and/or require significant changes
[*.lock]
indent_size = unset
[gemset.nix]
insert_final_newline = unset
[pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json]
indent_size = unset
[pkgs/development/lisp-modules/quicklisp-to-nix.nix]
indent_size = unset
[pkgs/development/haskell-modules/hackage-packages.nix]
indent_style = unset
indent_size = unset
trim_trailing_whitespace = unset
[pkgs/development/mobile/androidenv/generated/{addons,packages}.nix]
trim_trailing_whitespace = unset
[pkgs/development/node-packages/node-packages.nix]
insert_final_newline = unset
[pkgs/servers/dict/wordnet_structures.py]
indent_size = unset
trim_trailing_whitespace = unset
[pkgs/top-level/perl-packages.nix]
indent_size = unset

View file

@ -1,32 +1,25 @@
# Configuration for probot-stale - https://github.com/probot/stale
# Number of days of inactivity before an issue becomes stale # Number of days of inactivity before an issue becomes stale
daysUntilStale: 180 daysUntilStale: 180
# Number of days of inactivity before a stale issue is closed # Number of days of inactivity before a stale issue is closed
daysUntilClose: false daysUntilClose: false
# Issues with these labels will never be considered stale # Issues with these labels will never be considered stale
exemptLabels: exemptLabels:
- 1.severity: security - "1.severity: security"
# Label to use when marking an issue as stale # Label to use when marking an issue as stale
staleLabel: 2.status: stale staleLabel: "2.status: stale"
# Comment to post when marking an issue as stale. Set to `false` to disable # Comment to post when marking an issue as stale. Set to `false` to disable
markComment: > markComment: |
Thank you for your contributions. Thank you for your contributions.
This has been automatically marked as stale because it has had no This has been automatically marked as stale because it has had no activity for 180 days.
activity for 180 days.
If this is still important to you, we ask that you leave a If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity.
comment below. Your comment can be as simple as "still important
to me". This lets people see that at least one person still cares
about this. Someone will have to do this at most twice a year if
there is no other activity.
Here are suggestions that might help resolve this more quickly: Here are suggestions that might help resolve this more quickly:
1. Search for maintainers and people that previously touched the 1. Search for maintainers and people that previously touched the related code and @ mention them in a comment.
related code and @ mention them in a comment.
2. Ask on the [NixOS Discourse](https://discourse.nixos.org/). 2. Ask on the [NixOS Discourse](https://discourse.nixos.org/).
3. Ask on the [#nixos channel](irc://irc.freenode.net/#nixos) on 3. Ask on the [#nixos channel](irc://irc.freenode.net/#nixos) on [irc.freenode.net](https://freenode.net).
[irc.freenode.net](https://freenode.net).
# Comment to post when closing a stale issue. Set to `false` to disable # Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false closeComment: false

View file

@ -12,10 +12,9 @@ When it is desired to use NPM libraries in a development project, use the
`node2nix` generator directly on the `package.json` configuration file of the `node2nix` generator directly on the `package.json` configuration file of the
project. project.
The package set also provides support for multiple Node.js versions. The policy The package set provides support for the official stable Node.js versions.
is that a new package should be added to the collection for the latest stable LTS The latest stable LTS release in `nodePackages`, as well as the latest stable
release (which is currently 10.x), unless there is an explicit reason to support Current release in `nodePackages_latest`.
a different release.
If your package uses native addons, you need to examine what kind of native If your package uses native addons, you need to examine what kind of native
build system it uses. Here are some examples: build system it uses. Here are some examples:
@ -26,7 +25,7 @@ build system it uses. Here are some examples:
After you have identified the correct system, you need to override your package After you have identified the correct system, you need to override your package
expression while adding in build system as a build input. For example, `dat` expression while adding in build system as a build input. For example, `dat`
requires `node-gyp-build`, so we override its expression in `default-v10.nix`: requires `node-gyp-build`, so we override its expression in `default.nix`:
```nix ```nix
dat = nodePackages.dat.override (oldAttrs: { dat = nodePackages.dat.override (oldAttrs: {
@ -36,14 +35,14 @@ dat = nodePackages.dat.override (oldAttrs: {
To add a package from NPM to nixpkgs: To add a package from NPM to nixpkgs:
1. Modify `pkgs/development/node-packages/node-packages-v10.json` to add, update 1. Modify `pkgs/development/node-packages/node-packages.json` to add, update
or remove package entries. (Or `pkgs/development/node-packages/node-packages-v8.json` or remove package entries to have it included in `nodePackages` and
for packages depending on Node.js 8.x) `nodePackages_latest`.
2. Run the script: `(cd pkgs/development/node-packages && ./generate.sh)`. 2. Run the script: `(cd pkgs/development/node-packages && ./generate.sh)`.
3. Build your new package to test your changes: 3. Build your new package to test your changes:
`cd /path/to/nixpkgs && nix-build -A nodePackages.<new-or-updated-package>`. `cd /path/to/nixpkgs && nix-build -A nodePackages.<new-or-updated-package>`.
To build against a specific Node.js version (e.g. 10.x): To build against the latest stable Current Node.js version (e.g. 14.x):
`nix-build -A nodePackages_10_x.<new-or-updated-package>` `nix-build -A nodePackages_latest.<new-or-updated-package>`
4. Add and commit all modified and generated files. 4. Add and commit all modified and generated files.
For more information about the generation process, consult the For more information about the generation process, consult the

View file

@ -2001,7 +2001,7 @@ addEnvHooks "$hostOffset" myBashFunction
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry xml:id="setup-hook-autopatchelfhook">
<term> <term>
autoPatchelfHook autoPatchelfHook
</term> </term>
@ -2010,15 +2010,13 @@ addEnvHooks "$hostOffset" myBashFunction
This is a special setup hook which helps in packaging proprietary software in that it automatically tries to find missing shared library dependencies of ELF files based on the given <varname>buildInputs</varname> and <varname>nativeBuildInputs</varname>. This is a special setup hook which helps in packaging proprietary software in that it automatically tries to find missing shared library dependencies of ELF files based on the given <varname>buildInputs</varname> and <varname>nativeBuildInputs</varname>.
</para> </para>
<para> <para>
You can also specify a <envar>runtimeDependencies</envar> environment variable which lists dependencies that are unconditionally added to all executables. You can also specify a <varname>runtimeDependencies</varname> variable which lists dependencies to be unconditionally added to <glossterm>rpath</glossterm> of all executables.
</para>
<para>
This is useful for programs that use <citerefentry> This is useful for programs that use <citerefentry>
<refentrytitle>dlopen</refentrytitle> <refentrytitle>dlopen</refentrytitle>
<manvolnum>3</manvolnum> </citerefentry> to load libraries at runtime. <manvolnum>3</manvolnum> </citerefentry> to load libraries at runtime.
</para> </para>
<para> <para>
In certain situations you may want to run the main command (<command>autoPatchelf</command>) of the setup hook on a file or a set of directories instead of unconditionally patching all outputs. This can be done by setting the <envar>dontAutoPatchelf</envar> environment variable to a non-empty value. In certain situations you may want to run the main command (<command>autoPatchelf</command>) of the setup hook on a file or a set of directories instead of unconditionally patching all outputs. This can be done by setting the <varname>dontAutoPatchelf</varname> environment variable to a non-empty value.
</para> </para>
<para> <para>
The <command>autoPatchelf</command> command also recognizes a <parameter class="command">--no-recurse</parameter> command line flag, which prevents it from recursing into subdirectories. The <command>autoPatchelf</command> command also recognizes a <parameter class="command">--no-recurse</parameter> command line flag, which prevents it from recursing into subdirectories.

View file

@ -52,7 +52,7 @@
}]; }];
}; };
"1000101" = { "1000101" = {
email = "jan.hrnko@satoshilabs.com"; email = "b1000101@pm.me";
github = "1000101"; github = "1000101";
githubId = 791309; githubId = 791309;
name = "Jan Hrnko"; name = "Jan Hrnko";
@ -2534,6 +2534,12 @@
githubId = 2817965; githubId = 2817965;
name = "f--t"; name = "f--t";
}; };
f4814n = {
email = "me@f4814n.de";
github = "f4814";
githubId = 11909469;
name = "Fabian Geiselhart";
};
fadenb = { fadenb = {
email = "tristan.helmich+nixos@gmail.com"; email = "tristan.helmich+nixos@gmail.com";
github = "fadenb"; github = "fadenb";
@ -2917,10 +2923,10 @@
name = "Robin Gloster"; name = "Robin Gloster";
}; };
gnidorah = { gnidorah = {
email = "gnidorah@yandex.com"; email = "gnidorah@users.noreply.github.com";
github = "gnidorah"; github = "gnidorah";
githubId = 12064730; githubId = 12064730;
name = "Alex Ivanov"; name = "gnidorah";
}; };
gnxlxnxx = { gnxlxnxx = {
email = "gnxlxnxx@web.de"; email = "gnxlxnxx@web.de";
@ -7426,6 +7432,12 @@
githubId = 1181362; githubId = 1181362;
name = "Stefan Junker"; name = "Stefan Junker";
}; };
stianlagstad = {
email = "stianlagstad@gmail.com";
github = "stianlagstad";
githubId = 4340859;
name = "Stian Lågstad";
};
StijnDW = { StijnDW = {
email = "stekke@airmail.cc"; email = "stekke@airmail.cc";
github = "StijnDW"; github = "StijnDW";
@ -7848,6 +7860,12 @@
githubId = 2845239; githubId = 2845239;
name = "Tim Put"; name = "Tim Put";
}; };
timstott = {
email = "stott.timothy@gmail.com";
github = "timstott";
githubId = 1334474;
name = "Timothy Stott";
};
tiramiseb = { tiramiseb = {
email = "sebastien@maccagnoni.eu"; email = "sebastien@maccagnoni.eu";
github = "tiramiseb"; github = "tiramiseb";
@ -8399,6 +8417,12 @@
githubId = 895853; githubId = 895853;
name = "Frank Doepper"; name = "Frank Doepper";
}; };
wohanley = {
email = "me@wohanley.com";
github = "wohanley";
githubId = 1322287;
name = "William O'Hanley";
};
womfoo = { womfoo = {
email = "kranium@gikos.net"; email = "kranium@gikos.net";
github = "womfoo"; github = "womfoo";
@ -8803,6 +8827,12 @@
github = "ngerstle"; github = "ngerstle";
githubId = 1023752; githubId = 1023752;
}; };
shardy = {
email = "shardul@baral.ca";
github = "shardulbee";
githubId = 16765155;
name = "Shardul Baral";
};
xavierzwirtz = { xavierzwirtz = {
email = "me@xavierzwirtz.com"; email = "me@xavierzwirtz.com";
github = "xavierzwirtz"; github = "xavierzwirtz";

View file

@ -38,6 +38,17 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term>
<literal>boot.debug1devices</literal>
</term>
<listitem>
<para>
Like <literal>boot.debug1</literal>, but runs stage1 until kernel modules are loaded and device nodes are created.
This may help with e.g. making the keyboard work.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term> <term>
<literal>boot.trace</literal> <literal>boot.trace</literal>

View file

@ -373,7 +373,7 @@ start_all()
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term> <term>
<methodname>copy_file_from_host</methodname> <methodname>copy_from_host</methodname>
</term> </term>
<listitem> <listitem>
<para> <para>

View file

@ -598,11 +598,8 @@ class Machine:
shutil.copytree(host_src, host_intermediate) shutil.copytree(host_src, host_intermediate)
else: else:
shutil.copy(host_src, host_intermediate) shutil.copy(host_src, host_intermediate)
self.succeed("sync")
self.succeed(make_command(["mkdir", "-p", vm_target.parent])) self.succeed(make_command(["mkdir", "-p", vm_target.parent]))
self.succeed(make_command(["cp", "-r", vm_intermediate, vm_target])) self.succeed(make_command(["cp", "-r", vm_intermediate, vm_target]))
# Make sure the cleanup is synced into VM
self.succeed("sync")
def copy_from_vm(self, source: str, target_dir: str = "") -> None: def copy_from_vm(self, source: str, target_dir: str = "") -> None:
"""Copy a file from the VM (specified by an in-VM source path) to a path """Copy a file from the VM (specified by an in-VM source path) to a path
@ -620,7 +617,6 @@ class Machine:
# Copy the file to the shared directory inside VM # Copy the file to the shared directory inside VM
self.succeed(make_command(["mkdir", "-p", vm_shared_temp])) self.succeed(make_command(["mkdir", "-p", vm_shared_temp]))
self.succeed(make_command(["cp", "-r", vm_src, vm_intermediate])) self.succeed(make_command(["cp", "-r", vm_src, vm_intermediate]))
self.succeed("sync")
abs_target = out_dir / target_dir / vm_src.name abs_target = out_dir / target_dir / vm_src.name
abs_target.parent.mkdir(exist_ok=True, parents=True) abs_target.parent.mkdir(exist_ok=True, parents=True)
# Copy the file from the shared directory outside VM # Copy the file from the shared directory outside VM
@ -628,8 +624,6 @@ class Machine:
shutil.copytree(intermediate, abs_target) shutil.copytree(intermediate, abs_target)
else: else:
shutil.copy(intermediate, abs_target) shutil.copy(intermediate, abs_target)
# Make sure the cleanup is synced into VM
self.succeed("sync")
def dump_tty_contents(self, tty: str) -> None: def dump_tty_contents(self, tty: str) -> None:
"""Debugging: Dump the contents of the TTY<n> """Debugging: Dump the contents of the TTY<n>

View file

@ -68,7 +68,7 @@ in
default = null; default = null;
example = "14e19a7b-0ae0-484d-9d54-43bd6fdc20c7"; example = "14e19a7b-0ae0-484d-9d54-43bd6fdc20c7";
description = '' description = ''
UUID for the main NixOS partition on the SD card. UUID for the filesystem on the main NixOS partition on the SD card.
''; '';
}; };

View file

@ -462,7 +462,9 @@
./services/misc/lidarr.nix ./services/misc/lidarr.nix
./services/misc/mame.nix ./services/misc/mame.nix
./services/misc/mathics.nix ./services/misc/mathics.nix
./services/misc/matrix-appservice-discord.nix
./services/misc/matrix-synapse.nix ./services/misc/matrix-synapse.nix
./services/misc/mautrix-telegram.nix
./services/misc/mbpfan.nix ./services/misc/mbpfan.nix
./services/misc/mediatomb.nix ./services/misc/mediatomb.nix
./services/misc/mesos-master.nix ./services/misc/mesos-master.nix

View file

@ -69,11 +69,24 @@ in
extraOpts = mkOption { extraOpts = mkOption {
type = types.attrs; type = types.attrs;
description = '' description = ''
Extra chromium policy options, see Extra chromium policy options. A list of available policies
<link xlink:href="https://www.chromium.org/administrators/policy-list-3">https://www.chromium.org/administrators/policy-list-3</link> can be found in the Chrome Enterprise documentation:
for a list of avalible options <link xlink:href="https://cloud.google.com/docs/chrome-enterprise/policies/">https://cloud.google.com/docs/chrome-enterprise/policies/</link>
Make sure the selected policy is supported on Linux and your browser version.
''; '';
default = {}; default = {};
example = literalExample ''
{
"BrowserSignin" = 0;
"SyncDisabled" = true;
"PasswordManagerEnabled" = false;
"SpellcheckEnabled" = true;
"SpellcheckLanguage" = [
"de"
"en-US"
];
}
'';
}; };
}; };
}; };

View file

@ -114,8 +114,9 @@ in
newgrp.source = "${pkgs.shadow.out}/bin/newgrp"; newgrp.source = "${pkgs.shadow.out}/bin/newgrp";
newuidmap.source = "${pkgs.shadow.out}/bin/newuidmap"; newuidmap.source = "${pkgs.shadow.out}/bin/newuidmap";
newgidmap.source = "${pkgs.shadow.out}/bin/newgidmap"; newgidmap.source = "${pkgs.shadow.out}/bin/newgidmap";
} // (if config.users.mutableUsers then { } // lib.optionalAttrs config.users.mutableUsers {
chsh.source = "${pkgs.shadow.out}/bin/chsh";
passwd.source = "${pkgs.shadow.out}/bin/passwd"; passwd.source = "${pkgs.shadow.out}/bin/passwd";
} else {}); };
}; };
} }

View file

@ -129,7 +129,7 @@ let
HOME = "${cfg.statePath}/home"; HOME = "${cfg.statePath}/home";
UNICORN_PATH = "${cfg.statePath}/"; UNICORN_PATH = "${cfg.statePath}/";
GITLAB_PATH = "${cfg.packages.gitlab}/share/gitlab/"; GITLAB_PATH = "${cfg.packages.gitlab}/share/gitlab/";
SCHEMA = "${cfg.statePath}/db/schema.rb"; SCHEMA = "${cfg.statePath}/db/structure.sql";
GITLAB_UPLOADS_PATH = "${cfg.statePath}/uploads"; GITLAB_UPLOADS_PATH = "${cfg.statePath}/uploads";
GITLAB_LOG_PATH = "${cfg.statePath}/log"; GITLAB_LOG_PATH = "${cfg.statePath}/log";
GITLAB_REDIS_CONFIG_FILE = pkgs.writeText "redis.yml" (builtins.toJSON redisConfig); GITLAB_REDIS_CONFIG_FILE = pkgs.writeText "redis.yml" (builtins.toJSON redisConfig);

View file

@ -0,0 +1,162 @@
{ config, pkgs, lib, ... }:
with lib;
let
dataDir = "/var/lib/matrix-appservice-discord";
registrationFile = "${dataDir}/discord-registration.yaml";
appDir = "${pkgs.matrix-appservice-discord}/lib/node_modules/matrix-appservice-discord";
cfg = config.services.matrix-appservice-discord;
# TODO: switch to configGen.json once RFC42 is implemented
settingsFile = pkgs.writeText "matrix-appservice-discord-settings.json" (builtins.toJSON cfg.settings);
in {
options = {
services.matrix-appservice-discord = {
enable = mkEnableOption "a bridge between Matrix and Discord";
settings = mkOption rec {
# TODO: switch to types.config.json as prescribed by RFC42 once it's implemented
type = types.attrs;
apply = recursiveUpdate default;
default = {
database = {
filename = "${dataDir}/discord.db";
# TODO: remove those old config keys once the following issues are solved:
# * https://github.com/Half-Shot/matrix-appservice-discord/issues/490
# * https://github.com/Half-Shot/matrix-appservice-discord/issues/498
userStorePath = "${dataDir}/user-store.db";
roomStorePath = "${dataDir}/room-store.db";
};
# empty values necessary for registration file generation
# actual values defined in environmentFile
auth = {
clientID = "";
botToken = "";
};
};
example = literalExample ''
{
bridge = {
domain = "public-domain.tld";
homeserverUrl = "http://public-domain.tld:8008";
};
}
'';
description = ''
<filename>config.yaml</filename> configuration as a Nix attribute set.
</para>
<para>
Configuration options should match those described in
<link xlink:href="https://github.com/Half-Shot/matrix-appservice-discord/blob/master/config/config.sample.yaml">
config.sample.yaml</link>.
</para>
<para>
<option>config.bridge.domain</option> and <option>config.bridge.homeserverUrl</option>
should be set to match the public host name of the Matrix homeserver for webhooks and avatars to work.
</para>
<para>
Secret tokens should be specified using <option>environmentFile</option>
instead of this world-readable attribute set.
'';
};
environmentFile = mkOption {
type = types.nullOr types.path;
default = null;
description = ''
File containing environment variables to be passed to the matrix-appservice-discord service,
in which secret tokens can be specified securely by defining values for
<literal>APPSERVICE_DISCORD_AUTH_CLIENT_I_D</literal> and
<literal>APPSERVICE_DISCORD_AUTH_BOT_TOKEN</literal>.
'';
};
url = mkOption {
type = types.str;
default = "http://localhost:${toString cfg.port}";
description = ''
The URL where the application service is listening for HS requests.
'';
};
port = mkOption {
type = types.port;
default = 9005; # from https://github.com/Half-Shot/matrix-appservice-discord/blob/master/package.json#L11
description = ''
Port number on which the bridge should listen for internal communication with the Matrix homeserver.
'';
};
localpart = mkOption {
type = with types; nullOr str;
default = null;
description = ''
The user_id localpart to assign to the AS.
'';
};
serviceDependencies = mkOption {
type = with types; listOf str;
default = optional config.services.matrix-synapse.enable "matrix-synapse.service";
description = ''
List of Systemd services to require and wait for when starting the application service,
such as the Matrix homeserver if it's running on the same host.
'';
};
};
};
config = mkIf cfg.enable {
systemd.services.matrix-appservice-discord = {
description = "A bridge between Matrix and Discord.";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ] ++ cfg.serviceDependencies;
after = [ "network-online.target" ] ++ cfg.serviceDependencies;
preStart = ''
if [ ! -f '${registrationFile}' ]; then
${pkgs.matrix-appservice-discord}/bin/matrix-appservice-discord \
--generate-registration \
--url=${escapeShellArg cfg.url} \
${optionalString (cfg.localpart != null) "--localpart=${escapeShellArg cfg.localpart}"} \
--config='${settingsFile}' \
--file='${registrationFile}'
fi
'';
serviceConfig = {
Type = "simple";
Restart = "always";
ProtectSystem = "strict";
ProtectHome = true;
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectControlGroups = true;
DynamicUser = true;
PrivateTmp = true;
WorkingDirectory = appDir;
StateDirectory = baseNameOf dataDir;
UMask = 0027;
EnvironmentFile = cfg.environmentFile;
ExecStart = ''
${pkgs.matrix-appservice-discord}/bin/matrix-appservice-discord \
--file='${registrationFile}' \
--config='${settingsFile}' \
--port='${toString cfg.port}'
'';
};
};
};
meta.maintainers = with maintainers; [ pacien ];
}

View file

@ -0,0 +1,163 @@
{ config, pkgs, lib, ... }:
with lib;
let
dataDir = "/var/lib/mautrix-telegram";
registrationFile = "${dataDir}/telegram-registration.yaml";
cfg = config.services.mautrix-telegram;
# TODO: switch to configGen.json once RFC42 is implemented
settingsFile = pkgs.writeText "mautrix-telegram-settings.json" (builtins.toJSON cfg.settings);
in {
options = {
services.mautrix-telegram = {
enable = mkEnableOption "Mautrix-Telegram, a Matrix-Telegram hybrid puppeting/relaybot bridge";
settings = mkOption rec {
# TODO: switch to types.config.json as prescribed by RFC42 once it's implemented
type = types.attrs;
apply = recursiveUpdate default;
default = {
appservice = rec {
database = "sqlite:///${dataDir}/mautrix-telegram.db";
hostname = "0.0.0.0";
port = 8080;
address = "http://localhost:${toString port}";
};
bridge = {
permissions."*" = "relaybot";
relaybot.whitelist = [ ];
};
logging = {
version = 1;
formatters.precise.format = "[%(levelname)s@%(name)s] %(message)s";
handlers.console = {
class = "logging.StreamHandler";
formatter = "precise";
};
loggers = {
mau.level = "INFO";
telethon.level = "INFO";
# prevent tokens from leaking in the logs:
# https://github.com/tulir/mautrix-telegram/issues/351
aiohttp.level = "WARNING";
};
# log to console/systemd instead of file
root = {
level = "INFO";
handlers = [ "console" ];
};
};
};
example = literalExample ''
{
homeserver = {
address = "http://localhost:8008";
domain = "public-domain.tld";
};
appservice.public = {
prefix = "/public";
external = "https://public-appservice-address/public";
};
bridge.permissions = {
"example.com" = "full";
"@admin:example.com" = "admin";
};
}
'';
description = ''
<filename>config.yaml</filename> configuration as a Nix attribute set.
Configuration options should match those described in
<link xlink:href="https://github.com/tulir/mautrix-telegram/blob/master/example-config.yaml">
example-config.yaml</link>.
</para>
<para>
Secret tokens should be specified using <option>environmentFile</option>
instead of this world-readable attribute set.
'';
};
environmentFile = mkOption {
type = types.nullOr types.path;
default = null;
description = ''
File containing environment variables to be passed to the mautrix-telegram service,
in which secret tokens can be specified securely by defining values for
<literal>MAUTRIX_TELEGRAM_APPSERVICE_AS_TOKEN</literal>,
<literal>MAUTRIX_TELEGRAM_APPSERVICE_HS_TOKEN</literal>,
<literal>MAUTRIX_TELEGRAM_TELEGRAM_API_ID</literal>,
<literal>MAUTRIX_TELEGRAM_TELEGRAM_API_HASH</literal> and optionally
<literal>MAUTRIX_TELEGRAM_TELEGRAM_BOT_TOKEN</literal>.
'';
};
serviceDependencies = mkOption {
type = with types; listOf str;
default = optional config.services.matrix-synapse.enable "matrix-synapse.service";
description = ''
List of Systemd services to require and wait for when starting the application service.
'';
};
};
};
config = mkIf cfg.enable {
systemd.services.mautrix-telegram = {
description = "Mautrix-Telegram, a Matrix-Telegram hybrid puppeting/relaybot bridge.";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ] ++ cfg.serviceDependencies;
after = [ "network-online.target" ] ++ cfg.serviceDependencies;
preStart = ''
# generate the appservice's registration file if absent
if [ ! -f '${registrationFile}' ]; then
${pkgs.mautrix-telegram}/bin/mautrix-telegram \
--generate-registration \
--base-config='${pkgs.mautrix-telegram}/example-config.yaml' \
--config='${settingsFile}' \
--registration='${registrationFile}'
fi
# run automatic database init and migration scripts
${pkgs.mautrix-telegram.alembic}/bin/alembic -x config='${settingsFile}' upgrade head
'';
serviceConfig = {
Type = "simple";
Restart = "always";
ProtectSystem = "strict";
ProtectHome = true;
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectControlGroups = true;
DynamicUser = true;
PrivateTmp = true;
WorkingDirectory = pkgs.mautrix-telegram; # necessary for the database migration scripts to be found
StateDirectory = baseNameOf dataDir;
UMask = 0027;
EnvironmentFile = cfg.environmentFile;
ExecStart = ''
${pkgs.mautrix-telegram}/bin/mautrix-telegram \
--config='${settingsFile}'
'';
};
};
};
meta.maintainers = with maintainers; [ pacien vskilet ];
}

View file

@ -56,6 +56,9 @@ with lib;
message = "You must provide services.haproxy.config."; message = "You must provide services.haproxy.config.";
}]; }];
# configuration file indirection is needed to support reloading
environment.etc."haproxy.cfg".source = haproxyCfg;
systemd.services.haproxy = { systemd.services.haproxy = {
description = "HAProxy"; description = "HAProxy";
after = [ "network.target" ]; after = [ "network.target" ];
@ -64,11 +67,32 @@ with lib;
User = cfg.user; User = cfg.user;
Group = cfg.group; Group = cfg.group;
Type = "notify"; Type = "notify";
# when running the config test, don't be quiet so we can see what goes wrong ExecStartPre = [
ExecStartPre = "${pkgs.haproxy}/sbin/haproxy -c -f ${haproxyCfg}"; # when the master process receives USR2, it reloads itself using exec(argv[0]),
ExecStart = "${pkgs.haproxy}/sbin/haproxy -Ws -f ${haproxyCfg}"; # so we create a symlink there and update it before reloading
Restart = "on-failure"; "${pkgs.coreutils}/bin/ln -sf ${pkgs.haproxy}/sbin/haproxy /run/haproxy/haproxy"
# when running the config test, don't be quiet so we can see what goes wrong
"/run/haproxy/haproxy -c -f ${haproxyCfg}"
];
ExecStart = "/run/haproxy/haproxy -Ws -f /etc/haproxy.cfg -p /run/haproxy/haproxy.pid";
# support reloading
ExecReload = [
"${pkgs.haproxy}/sbin/haproxy -c -f ${haproxyCfg}"
"${pkgs.coreutils}/bin/ln -sf ${pkgs.haproxy}/sbin/haproxy /run/haproxy/haproxy"
"${pkgs.coreutils}/bin/kill -USR2 $MAINPID"
];
KillMode = "mixed";
SuccessExitStatus = "143";
Restart = "always";
RuntimeDirectory = "haproxy"; RuntimeDirectory = "haproxy";
# upstream hardening options
NoNewPrivileges = true;
ProtectHome = true;
ProtectSystem = "strict";
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectControlGroups = true;
SystemCallFilter= "~@cpu-emulation @keyring @module @obsolete @raw-io @reboot @swap @sync";
# needed in case we bind to port < 1024 # needed in case we bind to port < 1024
AmbientCapabilities = "CAP_NET_BIND_SERVICE"; AmbientCapabilities = "CAP_NET_BIND_SERVICE";
}; };

View file

@ -58,7 +58,13 @@ with lib;
cfg = config.services.v2ray; cfg = config.services.v2ray;
configFile = if cfg.configFile != null configFile = if cfg.configFile != null
then cfg.configFile then cfg.configFile
else (pkgs.writeText "v2ray.json" (builtins.toJSON cfg.config)); else pkgs.writeTextFile {
name = "v2ray.json";
text = builtins.toJSON cfg.config;
checkPhase = ''
${pkgs.v2ray}/bin/v2ray -test -config $out
'';
};
in mkIf cfg.enable { in mkIf cfg.enable {
assertions = [ assertions = [

View file

@ -116,7 +116,8 @@ let
userlist_file=${cfg.userlistFile} userlist_file=${cfg.userlistFile}
''} ''}
background=YES background=YES
listen=YES listen=NO
listen_ipv6=YES
nopriv_user=vsftpd nopriv_user=vsftpd
secure_chroot_dir=/var/empty secure_chroot_dir=/var/empty
${optionalString (cfg.localRoot != null) '' ${optionalString (cfg.localRoot != null) ''

View file

@ -24,7 +24,7 @@ negative-time-to-live netgroup 0
shared netgroup yes shared netgroup yes
enable-cache hosts yes enable-cache hosts yes
positive-time-to-live hosts 600 positive-time-to-live hosts 0
negative-time-to-live hosts 0 negative-time-to-live hosts 0
shared hosts yes shared hosts yes

View file

@ -283,7 +283,7 @@ let
default = false; default = false;
type = types.bool; type = types.bool;
description = '' description = ''
Turn on proxy_arp for this device (and proxy_ndp for ipv6). Turn on proxy_arp for this device.
This is mainly useful for creating pseudo-bridges between a real This is mainly useful for creating pseudo-bridges between a real
interface and a virtual network such as VPN or a virtual machine for interface and a virtual network such as VPN or a virtual machine for
interfaces that don't support real bridging (most wlan interfaces). interfaces that don't support real bridging (most wlan interfaces).
@ -1065,11 +1065,11 @@ in
optionalString hasBonds "options bonding max_bonds=0"; optionalString hasBonds "options bonding max_bonds=0";
boot.kernel.sysctl = { boot.kernel.sysctl = {
"net.ipv4.conf.all.forwarding" = mkDefault (any (i: i.proxyARP) interfaces);
"net.ipv6.conf.all.disable_ipv6" = mkDefault (!cfg.enableIPv6); "net.ipv6.conf.all.disable_ipv6" = mkDefault (!cfg.enableIPv6);
"net.ipv6.conf.default.disable_ipv6" = mkDefault (!cfg.enableIPv6); "net.ipv6.conf.default.disable_ipv6" = mkDefault (!cfg.enableIPv6);
"net.ipv6.conf.all.forwarding" = mkDefault (any (i: i.proxyARP) interfaces);
} // listToAttrs (flip concatMap (filter (i: i.proxyARP) interfaces) } // listToAttrs (flip concatMap (filter (i: i.proxyARP) interfaces)
(i: forEach [ "4" "6" ] (v: nameValuePair "net.ipv${v}.conf.${replaceChars ["."] ["/"] i.name}.proxy_arp" true))) (i: [(nameValuePair "net.ipv4.conf.${replaceChars ["."] ["/"] i.name}.proxy_arp" true)]))
// listToAttrs (forEach interfaces // listToAttrs (forEach interfaces
(i: let (i: let
opt = i.tempAddress; opt = i.tempAddress;

View file

@ -9,8 +9,8 @@ let
vgpuOptions = { vgpuOptions = {
uuid = mkOption { uuid = mkOption {
type = types.str; type = with types; listOf str;
description = "UUID of VGPU device. You can generate one with <package>libossp_uuid</package>."; description = "UUID(s) of VGPU device. You can generate one with <package>libossp_uuid</package>.";
}; };
}; };
@ -36,7 +36,7 @@ in {
and find info about device via <command>cat /sys/bus/pci/devices/*/mdev_supported_types/i915-GVTg_V5_4/description</command> and find info about device via <command>cat /sys/bus/pci/devices/*/mdev_supported_types/i915-GVTg_V5_4/description</command>
''; '';
example = { example = {
i915-GVTg_V5_8.uuid = "a297db4a-f4c2-11e6-90f6-d3b88d6c9525"; i915-GVTg_V5_8.uuid = [ "a297db4a-f4c2-11e6-90f6-d3b88d6c9525" ];
}; };
}; };
}; };
@ -51,31 +51,35 @@ in {
boot.kernelModules = [ "kvmgt" ]; boot.kernelModules = [ "kvmgt" ];
boot.kernelParams = [ "i915.enable_gvt=1" ]; boot.kernelParams = [ "i915.enable_gvt=1" ];
systemd.paths = mapAttrs' (name: value:
nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name} path";
wantedBy = [ "multi-user.target" ];
pathConfig = {
PathExists = "/sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${name}/create";
};
}
) cfg.vgpus;
services.udev.extraRules = '' services.udev.extraRules = ''
SUBSYSTEM=="vfio", OWNER="root", GROUP="kvm" SUBSYSTEM=="vfio", OWNER="root", GROUP="kvm"
''; '';
systemd.services = mapAttrs' (name: value: systemd = let
nameValuePair "kvmgt-${name}" { vgpus = listToAttrs (flatten (mapAttrsToList
description = "KVMGT VGPU ${name}"; (mdev: opt: map (id: nameValuePair "kvmgt-${id}" { inherit mdev; uuid = id; }) opt.uuid)
serviceConfig = { cfg.vgpus));
Type = "oneshot"; in {
RemainAfterExit = true; paths = mapAttrs (_: opt:
ExecStart = "${pkgs.runtimeShell} -c 'echo ${value.uuid} > /sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${name}/create'"; {
ExecStop = "${pkgs.runtimeShell} -c 'echo 1 > /sys/bus/pci/devices/${cfg.device}/${value.uuid}/remove'"; description = "KVMGT VGPU ${opt.uuid} path";
}; wantedBy = [ "multi-user.target" ];
} pathConfig = {
) cfg.vgpus; PathExists = "/sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${opt.mdev}/create";
};
}) vgpus;
services = mapAttrs (_: opt:
{
description = "KVMGT VGPU ${opt.uuid}";
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
ExecStart = "${pkgs.runtimeShell} -c 'echo ${opt.uuid} > /sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${opt.mdev}/create'";
ExecStop = "${pkgs.runtimeShell} -c 'echo 1 > /sys/bus/pci/devices/${cfg.device}/${opt.uuid}/remove'";
};
}) vgpus;
};
}; };
meta.maintainers = with maintainers; [ gnidorah ]; meta.maintainers = with maintainers; [ gnidorah ];

View file

@ -114,7 +114,7 @@ in {
Specifies the action to be done to / on the guests when the host boots. Specifies the action to be done to / on the guests when the host boots.
The "start" option starts all guests that were running prior to shutdown The "start" option starts all guests that were running prior to shutdown
regardless of their autostart settings. The "ignore" option will not regardless of their autostart settings. The "ignore" option will not
start the formally running guest on boot. However, any guest marked as start the formerly running guest on boot. However, any guest marked as
autostart will still be automatically started by libvirtd. autostart will still be automatically started by libvirtd.
''; '';
}; };

View file

@ -576,7 +576,7 @@ in
"/tmp/xchg" = "/tmp/xchg" =
{ device = "xchg"; { device = "xchg";
fsType = "9p"; fsType = "9p";
options = [ "trans=virtio" "version=9p2000.L" "cache=loose" ]; options = [ "trans=virtio" "version=9p2000.L" ];
neededForBoot = true; neededForBoot = true;
}; };
"/tmp/shared" = "/tmp/shared" =

View file

@ -43,5 +43,13 @@ import ./make-test-python.nix ({ pkgs, ...}: {
assert "haproxy_process_pool_allocated_bytes" in machine.succeed( assert "haproxy_process_pool_allocated_bytes" in machine.succeed(
"curl -k http://localhost:80/metrics" "curl -k http://localhost:80/metrics"
) )
with subtest("reload"):
machine.succeed("systemctl reload haproxy")
# wait some time to ensure the following request hits the reloaded haproxy
machine.sleep(5)
assert "We are all good!" in machine.succeed(
"curl -k http://localhost:80/index.txt"
)
''; '';
}) })

View file

@ -23,7 +23,10 @@ in {
"user": "testuser", "user": "testuser",
"group": "testgroup", "group": "testgroup",
"root": "${testdir}/www", "root": "${testdir}/www",
"index": "info.php" "index": "info.php",
"options": {
"file": "${pkgs.unit.usedPhp74}/lib/php.ini"
}
} }
} }
} }
@ -42,6 +45,13 @@ in {
}; };
testScript = '' testScript = ''
machine.wait_for_unit("unit.service") machine.wait_for_unit("unit.service")
assert "PHP Version ${pkgs.php74.version}" in machine.succeed("curl -vvv -s http://127.0.0.1:9074/")
# Check so we get an evaluated PHP back
response = machine.succeed("curl -vvv -s http://127.0.0.1:9074/")
assert "PHP Version ${pkgs.unit.usedPhp74.version}" in response, "PHP version not detected"
# Check so we have database and some other extensions loaded
for ext in ["json", "opcache", "pdo_mysql", "pdo_pgsql", "pdo_sqlite"]:
assert ext in response, f"Missing {ext} extension"
''; '';
}) })

View file

@ -0,0 +1,162 @@
{ stdenv
, fetchgit
, alsaLib
, aubio
, boost
, cairomm
, curl
, doxygen
, fftwSinglePrec
, flac
, glibc
, glibmm
, graphviz
, gtkmm2
, libjack2
, liblo
, libogg
, libsamplerate
, libsigcxx
, libsndfile
, libusb1
, fluidsynth_1
, hidapi
, libltc
, qm-dsp
, libxml2
, lilv
, lrdf
, lv2
, perl
, pkg-config
, itstool
, python2
, rubberband
, serd
, sord
, sratom
, taglib
, vamp-plugin-sdk
, dbus
, fftw
, pango
, suil
, libarchive
, wafHook
}:
let
# Ardour git repo uses a mix of annotated and lightweight tags. Annotated
# tags are used for MAJOR.MINOR versioning, and lightweight tags are used
# in-between; MAJOR.MINOR.REV where REV is the number of commits since the
# last annotated tag. A slightly different version string format is needed
# for the 'revision' info that is built into the binary; it is the format of
# "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
# Version to build.
tag = "5.12";
in stdenv.mkDerivation rec {
pname = "ardour_5";
version = "5.12";
src = fetchgit {
url = "git://git.ardour.org/ardour/ardour.git";
rev = "ae0dcdc0c5d13483271065c360e378202d20170a";
sha256 = "0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr";
};
nativeBuildInputs = [
wafHook
pkg-config
itstool
doxygen
graphviz # for dot
perl
python2
];
buildInputs = [
alsaLib
aubio
boost
cairomm
curl
dbus
fftw
fftwSinglePrec
flac
glibmm
gtkmm2
libjack2
liblo
libogg
libsamplerate
libsigcxx
libsndfile
libusb1
fluidsynth_1
hidapi
libltc
qm-dsp
libxml2
lilv
lrdf
lv2
pango
rubberband
serd
sord
sratom
suil
taglib
vamp-plugin-sdk
libarchive
];
wafConfigureFlags = [
"--optimize"
"--docs"
"--use-external-libs"
"--freedesktop"
"--with-backends=jack,alsa,dummy"
];
NIX_CFLAGS_COMPILE = "-I${qm-dsp}/include/qm-dsp";
# ardour's wscript has a "tarball" target but that required the git revision
# be available. Since this is an unzipped tarball fetched from github we
# have to do that ourself.
postPatch = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
patchShebangs ./tools/
'';
postInstall = ''
# wscript does not install these for some reason
install -vDm 644 "build/gtk2_ardour/ardour.xml" \
-t "$out/share/mime/packages"
install -vDm 644 "build/gtk2_ardour/ardour5.desktop" \
-t "$out/share/applications"
for size in 16 22 32 48 256 512; do
install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
"$out/share/icons/hicolor/''${size}x''${size}/apps/ardour5.png"
done
install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
'';
meta = with stdenv.lib; {
description = "Multi-track hard disk recording software";
longDescription = ''
Ardour is a digital audio workstation (DAW), You can use it to
record, edit and mix multi-track audio and midi. Produce your
own CDs. Mix video soundtracks. Experiment with new ideas about
music and sound.
Please consider supporting the ardour project financially:
https://community.ardour.org/donate
'';
homepage = "https://ardour.org/";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ goibhniu fps ];
};
}

View file

@ -0,0 +1,12 @@
--- a/libs/ardour/wscript
+++ b/libs/ardour/wscript
@@ -379,8 +379,7 @@ def build(bld):
# remove '${DEFINES_ST:DEFINES}' from run_str.
# x86_64-w64-mingw32-as (mingw) -D flag is for debug messages
- if bld.env['build_target'] == 'mingw':
- class asm(Task.classes['asm']): run_str = '${AS} ${ASFLAGS} ${ASMPATH_ST:INCPATHS} ${AS_SRC_F}${SRC} ${AS_TGT_F}${TGT}'
+ class asm(Task.classes['asm']): run_str = '${AS} ${ASFLAGS} ${ASMPATH_ST:INCPATHS} ${AS_SRC_F}${SRC} ${AS_TGT_F}${TGT}'
# operate on copy to avoid adding sources twice
sources = list(libardour_sources)

View file

@ -4,75 +4,79 @@
, aubio , aubio
, boost , boost
, cairomm , cairomm
, cppunit
, curl , curl
, dbus
, doxygen , doxygen
, ffmpeg
, fftw
, fftwSinglePrec , fftwSinglePrec
, flac , flac
, fluidsynth
, glibc , glibc
, glibmm , glibmm
, graphviz , graphviz
, gtkmm2 , gtkmm2
, hidapi
, itstool
, libarchive
, libjack2 , libjack2
, liblo , liblo
, libltc
, libogg , libogg
, libpulseaudio
, librdf_raptor
, librdf_rasqal
, libsamplerate , libsamplerate
, libsigcxx , libsigcxx
, libsndfile , libsndfile
, libusb1 , libusb1
, fluidsynth_1 , libuv
, hidapi , libwebsockets
, libltc
, qm-dsp
, libxml2 , libxml2
, libxslt
, lilv , lilv
, lrdf , lrdf
, lv2 , lv2
, makeWrapper , pango
, perl , perl
, pkg-config , pkg-config
, itstool , python3
, python2 , qm-dsp
, readline
, rubberband , rubberband
, serd , serd
, sord , sord
, sratom , sratom
, suil
, taglib , taglib
, vamp-plugin-sdk , vamp-plugin-sdk
, dbus
, fftw
, pango
, suil
, libarchive
, wafHook , wafHook
}: }:
let stdenv.mkDerivation rec {
# Ardour git repo uses a mix of annotated and lightweight tags. Annotated pname = "ardour";
# tags are used for MAJOR.MINOR versioning, and lightweight tags are used version = "6.0";
# in-between; MAJOR.MINOR.REV where REV is the number of commits since the
# last annotated tag. A slightly different version string format is needed
# for the 'revision' info that is built into the binary; it is the format of
# "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
# Version to build.
tag = "5.12";
in stdenv.mkDerivation rec {
name = "ardour-${tag}";
# don't fetch releases from the GitHub mirror, they are broken
src = fetchgit { src = fetchgit {
url = "git://git.ardour.org/ardour/ardour.git"; url = "git://git.ardour.org/ardour/ardour.git";
rev = "ae0dcdc0c5d13483271065c360e378202d20170a"; rev = version;
sha256 = "0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr"; sha256 = "162jd96zahl05fdmjwvpdfjxbhd6ifbav6xqa0vv6rsdl4zk395q";
}; };
patches = [
# AS=as in the environment causes build failure https://tracker.ardour.org/view.php?id=8096
./as-flags.patch
];
nativeBuildInputs = [ nativeBuildInputs = [
wafHook
makeWrapper
pkg-config
itstool
doxygen doxygen
graphviz # for dot graphviz # for dot
itstool
perl perl
python2 pkg-config
python3
wafHook
]; ];
buildInputs = [ buildInputs = [
@ -80,29 +84,42 @@ in stdenv.mkDerivation rec {
aubio aubio
boost boost
cairomm cairomm
cppunit
curl curl
dbus dbus
ffmpeg
fftw fftw
fftwSinglePrec fftwSinglePrec
flac flac
fluidsynth
glibmm glibmm
gtkmm2 gtkmm2
hidapi
itstool
libarchive
libjack2 libjack2
liblo liblo
libltc
libogg libogg
libpulseaudio
librdf_raptor
librdf_rasqal
libsamplerate libsamplerate
libsigcxx libsigcxx
libsndfile libsndfile
libusb1 libusb1
fluidsynth_1 libuv
hidapi libwebsockets
libltc
qm-dsp
libxml2 libxml2
libxslt
lilv lilv
lrdf lrdf
lv2 lv2
pango pango
perl
python3
qm-dsp
readline
rubberband rubberband
serd serd
sord sord
@ -110,40 +127,47 @@ in stdenv.mkDerivation rec {
suil suil
taglib taglib
vamp-plugin-sdk vamp-plugin-sdk
libarchive
]; ];
wafConfigureFlags = [ wafConfigureFlags = [
"--optimize" "--cxx11"
"--docs" "--docs"
"--use-external-libs"
"--freedesktop" "--freedesktop"
"--with-backends=jack,alsa,dummy" "--no-phone-home"
"--optimize"
"--ptformat"
"--qm-dsp-include=${qm-dsp}/include/qm-dsp"
"--run-tests"
"--test"
"--use-external-libs"
]; ];
NIX_CFLAGS_COMPILE = "-I${qm-dsp}/include/qm-dsp"; # Ardour's wscript requires git revision and date to be available.
# Since they are not, let's generate the file manually.
# ardour's wscript has a "tarball" target but that required the git revision
# be available. Since this is an unzipped tarball fetched from github we
# have to do that ourself.
postPatch = '' postPatch = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc
sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
patchShebangs ./tools/ patchShebangs ./tools/
substituteInPlace libs/ardour/video_tools_paths.cc \
--replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \
--replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");'
''; '';
postInstall = '' postInstall = ''
# wscript does not install these for some reason # wscript does not install these for some reason
install -vDm 644 "build/gtk2_ardour/ardour.xml" \ install -vDm 644 "build/gtk2_ardour/ardour.xml" \
-t "$out/share/mime/packages" -t "$out/share/mime/packages"
install -vDm 644 "build/gtk2_ardour/ardour5.desktop" \ install -vDm 644 "build/gtk2_ardour/ardour6.desktop" \
-t "$out/share/applications" -t "$out/share/applications"
for size in 16 22 32 48 256 512; do for size in 16 22 32 48 256 512; do
install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \ install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
"$out/share/icons/hicolor/''${size}x''${size}/apps/ardour5.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour6.png"
done done
install -vDm 644 "ardour.1"* -t "$out/share/man/man1" install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
''; '';
LINKFLAGS = "-lpthread";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Multi-track hard disk recording software"; description = "Multi-track hard disk recording software";
longDescription = '' longDescription = ''
@ -153,11 +177,11 @@ in stdenv.mkDerivation rec {
music and sound. music and sound.
Please consider supporting the ardour project financially: Please consider supporting the ardour project financially:
https://community.ardour.org/node/8288 https://community.ardour.org/donate
''; '';
homepage = "http://ardour.org/"; homepage = "https://ardour.org/";
license = licenses.gpl2; license = licenses.gpl2;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = [ maintainers.goibhniu maintainers.fps ]; maintainers = with maintainers; [ goibhniu magnetophon ];
}; };
} }

View file

@ -0,0 +1,30 @@
{ stdenv, fetchzip }:
stdenv.mkDerivation rec {
pname = "autotalent";
version = "0.2";
src = fetchzip {
url = "http://tombaran.info/${pname}-${version}.tar.gz";
sha256 = "19srnkghsdrxxlv2c7qimvyslxz63r97mkxfq78vbg654l3qz1a6";
};
makeFlags = [
"INSTALL_PLUGINS_DIR=$(out)/lib/ladspa"
];
# To avoid name clashes, plugins should be compiled with symbols hidden, except for `ladspa_descriptor`:
preConfigure = ''
sed -r 's/^CFLAGS.*$/\0 -fvisibility=hidden/' -i Makefile
sed -r 's/^const LADSPA_Descriptor \*/__attribute__ ((visibility ("default"))) \0/' -i autotalent.c
'';
meta = with stdenv.lib; {
homepage = "http://tombaran.info/autotalent.html";
description = "A real-time pitch correction LADSPA plugin (no MIDI control)";
license = licenses.gpl2;
maintainers = [ maintainers.michalrus ];
platforms = platforms.linux;
};
}

View file

@ -17,18 +17,15 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "musikcube"; pname = "musikcube";
version = "0.90.1"; version = "0.92.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "clangen"; owner = "clangen";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "1ff2cgbllrl2pl5zfbf0cd9qbf6hqpwr395sa1k245ar4f1rfwpg"; sha256 = "0l4ncxqxvp5m014j7vlglhzxhhrxl0c2m71xn0i0a27hn4nc72mr";
}; };
# https://github.com/clangen/musikcube/issues/339
patches = [ ./dont-strip.patch ];
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config pkg-config
@ -46,6 +43,10 @@ stdenv.mkDerivation rec {
taglib taglib
] ++ stdenv.lib.optional systemdSupport systemd; ] ++ stdenv.lib.optional systemdSupport systemd;
cmakeFlags = [
"-DDISABLE_STRIP=true"
];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A fully functional terminal-based music player, library, and streaming audio server"; description = "A fully functional terminal-based music player, library, and streaming audio server";
homepage = "https://musikcube.com/"; homepage = "https://musikcube.com/";

View file

@ -1,14 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a3e02666..7c43c7e6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -370,9 +370,3 @@ endif()
# they don't yet exist!
add_custom_target(postbuild ALL DEPENDS musikcube musikcubed)
add_custom_command(TARGET postbuild POST_BUILD COMMAND cmake .)
-
-# strip binaries in release mode
-if (CMAKE_BUILD_TYPE MATCHES Release)
- message(STATUS "stripping binaries...")
- add_custom_command(TARGET postbuild POST_BUILD COMMAND "${CMAKE_SOURCE_DIR}/strip-nix.sh")
-endif()

View file

@ -2,14 +2,14 @@
, usePulseAudio ? config.pulseaudio or false, libpulseaudio }: , usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
let let
version = "0.4.12"; version = "0.5.0";
in stdenv.mkDerivation { in stdenv.mkDerivation {
pname = "openmpt123"; pname = "openmpt123";
inherit version; inherit version;
src = fetchurl { src = fetchurl {
url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz"; url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
sha256 = "0q2yf9g6hcwvr2nk3zggkscyf0np6i03q2g7fx10i2kcdr3n9k8c"; sha256 = "0zl3djy9z7cpqk8g8pxrzmmikxsskb0y5qdabg6c683j7x5abjs3";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -18,7 +18,7 @@ in pythonPackages.buildPythonApplication rec {
owner = "metabrainz"; owner = "metabrainz";
repo = pname; repo = pname;
rev = "release-${version}"; rev = "release-${version}";
sha256 = "sha256-rJbpoPjNMlw4diWjwNQ/DPo3rltvISU4kuRqBbvlBZ0="; sha256 = "1785wnxhasp4j8w2a8bgbfp3gyhc7zac18r5fqw5qcndz2hfk5mc";
}; };
nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ] nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ]

View file

@ -8,19 +8,19 @@ let
inherit (gnome2) GConf gnome_vfs; inherit (gnome2) GConf gnome_vfs;
}; };
stableVersion = { stableVersion = {
version = "3.6.3.0"; # "Android Studio 3.6.3" version = "4.0.0.16"; # "Android Studio 4.0"
build = "192.6392135"; build = "193.6514223";
sha256Hash = "0apxmp341m7mbpm2df3qvsbaifwy6yqq746kbhbwlw8bn9hrzv1k"; sha256Hash = "1sqj64vddwfrr9821habfz7dms9csvbp7b8gf1d027188b2lvh3h";
}; };
betaVersion = { betaVersion = {
version = "4.0.0.14"; # "Android Studio 4.0 Beta 5" version = "4.0.0.16"; # "Android Studio 4.0"
build = "193.6401094"; build = "193.6514223";
sha256Hash = "11fmpf58z44i78ldkapzivz6md65744vqczzbwv8mkjkv9nz95rs"; sha256Hash = "1sqj64vddwfrr9821habfz7dms9csvbp7b8gf1d027188b2lvh3h";
}; };
latestVersion = { # canary & dev latestVersion = { # canary & dev
version = "4.1.0.8"; # "Android Studio 4.1 Canary 8" version = "4.1.0.10"; # "Android Studio 4.1 Canary 10"
build = "193.6423924"; build = "201.6507185";
sha256Hash = "0ksgmhz9vhkw2mxzjapli0w6203ssd8ddgb0dq06rck8v7ysy8bp"; sha256Hash = "19yawwsjsdqc0brr0ahviljv4v4p085k3izdpmm915c0bjm89y72";
}; };
in { in {
# Attributes are named by their corresponding release channels # Attributes are named by their corresponding release channels

View file

@ -138,6 +138,24 @@ let
}; };
}); });
buildMps = { name, version, src, license, description, wmClass, ... }:
(mkJetBrainsProduct rec {
inherit name version src wmClass jdk;
product = "MPS";
meta = with stdenv.lib; {
homepage = https://www.jetbrains.com/mps/;
inherit license description;
longDescription = ''
A metaprogramming system which uses projectional editing
which allows users to overcome the limits of language
parsers, and build DSL editors, such as ones with tables and
diagrams.
'';
maintainers = with maintainers; [ rasendubi ];
platforms = platforms.linux;
};
});
buildPhpStorm = { name, version, src, license, description, wmClass, ... }: buildPhpStorm = { name, version, src, license, description, wmClass, ... }:
(mkJetBrainsProduct { (mkJetBrainsProduct {
inherit name version src wmClass jdk; inherit name version src wmClass jdk;
@ -313,6 +331,19 @@ in
update-channel = "IntelliJ IDEA RELEASE"; update-channel = "IntelliJ IDEA RELEASE";
}; };
mps = buildMps rec {
name = "mps-${version}";
version = "2019.2";
description = "Create your own domain-specific language";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/mps/2019.2/MPS-${version}.tar.gz";
sha256 = "0rph3bibj74ddbyrn0az1npn4san4g1alci8nlq4gaqdlcz6zx22";
};
wmClass = "jetbrains-mps";
update-channel = "MPS RELEASE";
};
phpstorm = buildPhpStorm rec { phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}"; name = "phpstorm-${version}";
version = "2020.1.1"; /* updated by script */ version = "2020.1.1"; /* updated by script */

View file

@ -4,7 +4,7 @@
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "saga"; pname = "saga";
version = "7.6.2"; version = "7.6.3";
# See https://groups.google.com/forum/#!topic/nix-devel/h_vSzEJAPXs # See https://groups.google.com/forum/#!topic/nix-devel/h_vSzEJAPXs
# for why the have additional buildInputs on darwin # for why the have additional buildInputs on darwin
@ -18,8 +18,8 @@ stdenv.mkDerivation {
CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11 -Wno-narrowing"; CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11 -Wno-narrowing";
src = fetchurl { src = fetchurl {
url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.6.2/saga-7.6.2.tar.gz"; url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.6.3/saga-7.6.3.tar.gz";
sha256 = "09j5magmayq2y620kqa490mfd1kpdp3lng2ifcgbrmssc079ybm0"; sha256 = "0f1qy2y929gd9y7h45bkv9x71xapbzyn06v6wqivjaiydsi1qycb";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
owner = "Symbian9"; owner = "Symbian9";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-al87Rnf4HkKdmtN3EqxC0zEHgVWwnVi7WttqT/Qxr0Q="; sha256 = "0i5g67s4ysnvbaxmi7dhan0hfcfk8an14xykkafl47pqfx33npva";
}; };
buildInputs = [ buildInputs = [

View file

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
owner = "eXeC64"; owner = "eXeC64";
repo = "imv"; repo = "imv";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256:0gk8g178i961nn3bls75a8qpv6wvfvav6hd9lxca1skaikd33zdx"; sha256 = "0gk8g178i961nn3bls75a8qpv6wvfvav6hd9lxca1skaikd33zdx";
}; };
preBuild = '' preBuild = ''

View file

@ -52,16 +52,16 @@ let
in in
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "alacritty"; pname = "alacritty";
version = "0.4.2"; version = "0.4.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alacritty"; owner = "alacritty";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "133d8vm7ihlvgw8n1jghhh35h664h0f52h6gci54f11vl6c1spws"; sha256 = "1b6fspcd8yn1857cgn1m8a828bvjspvrfc2giwsa9ai0ighcqbgl";
}; };
cargoSha256 = "07gq63qd11zz229b8jp9wqggz39qfpzd223z1zk1xch7rhqq0pn4"; cargoSha256 = "1zadnwjqk9kklj0p43azd78kgbva2zihh9wh81w4c5y0kypbchyd";
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
@ -135,7 +135,7 @@ rustPlatform.buildRustPackage rec {
description = "A cross-platform, GPU-accelerated terminal emulator"; description = "A cross-platform, GPU-accelerated terminal emulator";
homepage = "https://github.com/alacritty/alacritty"; homepage = "https://github.com/alacritty/alacritty";
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ filalex77 mic92 cole-h ]; maintainers = with maintainers; [ filalex77 mic92 cole-h ma27 ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

View file

@ -0,0 +1,40 @@
{ stdenv, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "dstask";
version = "0.18";
src = fetchFromGitHub {
owner = "naggie";
repo = pname;
rev = "v${version}";
sha256 = "16z5zlfj955pzsj0l58835slvpchdaq2vbyx2fjzi6y9xn1z2nd1";
};
# Set vendorSha256 to null because dstask vendors its dependencies (meaning
# that third party dependencies are stored in the repository).
#
# Ref <https://github.com/NixOS/nixpkgs/pull/87383#issuecomment-633204382>
# and <https://github.com/NixOS/nixpkgs/blob/d4226e3a4b5fcf988027147164e86665d382bbfa/pkgs/development/go-modules/generic/default.nix#L18>
vendorSha256 = null;
# The ldflags reduce the executable size by stripping some debug stuff.
# The other variables are set so that the output of dstask version shows the
# git ref and the release version from github.
# Ref <https://github.com/NixOS/nixpkgs/pull/87383#discussion_r432097657>
buildFlagsArray = [ ''
-ldflags=-w -s
-X "github.com/naggie/dstask.VERSION=${version}"
-X "github.com/naggie/dstask.GIT_COMMIT=v${version}"
'' ];
subPackages = [ "cmd/dstask.go" ];
meta = with stdenv.lib; {
description = "Command line todo list with super-reliable git sync";
homepage = src.meta.homepage;
license = licenses.mit;
maintainers = with maintainers; [ stianlagstad foxit64 ];
platforms = platforms.linux;
};
}

View file

@ -1,22 +1,22 @@
# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 { stdenv, buildGoModule, fetchFromGitHub }:
{ stdenv, buildGoPackage, fetchgit }:
buildGoPackage rec { buildGoModule rec {
pname = "go-jira"; pname = "go-jira";
version = "1.0.17"; version = "1.0.23";
goPackagePath = "gopkg.in/Netflix-Skunkworks/go-jira.v1"; src = fetchFromGitHub {
src = fetchgit {
rev = "v${version}"; rev = "v${version}";
url = "https://gopkg.in/Netflix-Skunkworks/go-jira.v1"; owner = "go-jira";
sha256 = "0ap5dzikp934mawigmv7ighajr5yxpck2gpnb2cmkc1p6qa6gn4v"; repo = "jira";
sha256 = "0qk5ifjxkqisvgv066rw8xj2zszc9mhc0by4338xjd7ng10jkk7b";
}; };
vendorSha256 = "18jwxnkv94lsxfv57ga519knxm077cc8chp5c992ipk58a04nv18";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Simple command line client for Atlassian's Jira service written in Go"; description = "Simple command line client for Atlassian's Jira service written in Go";
homepage = "https://github.com/Netflix-Skunkworks/go-jira"; homepage = "https://github.com/go-jira/jira";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.carlosdagos ]; maintainers = with maintainers; [ carlosdagos timstott ];
}; };
} }

View file

@ -0,0 +1,23 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "gopacked";
version = "0.4.1";
src = fetchFromGitHub {
owner = "tulir";
repo = "gopacked";
rev = "v${version}";
sha256 = "03qr8rlnipziy16nbcpf631jh42gsyv2frdnh8yzsh8lm0p8p4ry";
};
vendorSha256 = "0fklr3lxh8g7gda65wf2wdkqv15869h7m1bwbzbiv8pasrf5b352";
meta = with lib; {
description = "A simple text-based Minecraft modpack manager";
license = licenses.agpl3;
homepage = src.meta.homepage;
maintainers = with maintainers; [ foxit64 ];
};
}

View file

@ -1,18 +1,28 @@
{ stdenv, mkDerivation, fetchFromGitHub, qmake, qttools }: { stdenv, mkDerivation, fetchFromGitHub, qmake, qttools, qttranslations }:
mkDerivation rec { mkDerivation rec {
pname = "gpxsee"; pname = "gpxsee";
version = "7.29"; version = "7.30";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tumic0"; owner = "tumic0";
repo = "GPXSee"; repo = "GPXSee";
rev = version; rev = version;
sha256 = "sha256-OTKyxEu7RZZy3JBHTM7YoH+G4lhoRfb1INLtQEKC5p4="; sha256 = "09gajwqc30r9a2sn972qdx3gx0gki9n0zafq986hn6zsr3z43mfs";
}; };
patches = [
# See https://github.com/NixOS/nixpkgs/issues/86054
./fix-qttranslations-path.diff
];
nativeBuildInputs = [ qmake qttools ]; nativeBuildInputs = [ qmake qttools ];
postPatch = ''
substituteInPlace src/GUI/app.cpp \
--subst-var-by qttranslations ${qttranslations}
'';
preConfigure = '' preConfigure = ''
lrelease gpxsee.pro lrelease gpxsee.pro
''; '';

View file

@ -0,0 +1,18 @@
diff --git i/src/GUI/app.cpp w/src/GUI/app.cpp
index 10e84d5..1e0abbe 100644
--- i/src/GUI/app.cpp
+++ w/src/GUI/app.cpp
@@ -34,11 +34,10 @@ App::App(int &argc, char **argv) : QApplication(argc, argv)
installTranslator(gpxsee);
QTranslator *qt = new QTranslator(this);
-#if defined(Q_OS_WIN32) || defined(Q_OS_MAC)
+#if defined(Q_OS_WIN32)
qt->load(QLocale::system(), "qt", "_", ProgramPaths::translationsDir());
#else // Q_OS_WIN32 || Q_OS_MAC
- qt->load(QLocale::system(), "qt", "_", QLibraryInfo::location(
- QLibraryInfo::TranslationsPath));
+ qt->load(QLocale::system(), "qt", "_", QLatin1String("@qttranslations@/translations"));
#endif // Q_OS_WIN32 || Q_OS_MAC
installTranslator(qt);

View file

@ -2,7 +2,7 @@
buildGoModule rec { buildGoModule rec {
pname = "hugo"; pname = "hugo";
version = "0.71.1"; version = "0.72.0";
buildInputs = [ libsass ]; buildInputs = [ libsass ];
@ -10,7 +10,7 @@ buildGoModule rec {
owner = "gohugoio"; owner = "gohugoio";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0kx3q2i5p8k1dfkh02ns5ns97aqqvdcs0kx4bl9d38jk3lw3jrgh"; sha256 = "05parzx0wm51z4qkvh4k096ykgiyr9i5xy55c0g99j4y96drcybb";
}; };
golibsass = fetchFromGitHub { golibsass = fetchFromGitHub {
@ -27,7 +27,7 @@ buildGoModule rec {
''; '';
}); });
vendorSha256 = "1fz1wvw0jy3rj6pl1w6vpr0xr1v8pnpf76bwdalacqy6r85lxmkl"; vendorSha256 = "07dkmrldsxw59v6r4avj1gr4hsaxybhb14qv61hc777qix2kq9v1";
buildFlags = [ "-tags" "extended" ]; buildFlags = [ "-tags" "extended" ];

View file

@ -11,7 +11,7 @@ let
owner = "pyproj4"; owner = "pyproj4";
repo = "pyproj"; repo = "pyproj";
rev = "v${version}rel"; rev = "v${version}rel";
sha256 = "sha256:18v4h7jx4mcc0x2xy8y7dfjq9bzsyxs8hdb6v67cabvlz2njziqy"; sha256 = "18v4h7jx4mcc0x2xy8y7dfjq9bzsyxs8hdb6v67cabvlz2njziqy";
}; };
nativeBuildInputs = with python.pkgs; [ cython ]; nativeBuildInputs = with python.pkgs; [ cython ];
patches = [ ]; patches = [ ];

View file

@ -0,0 +1,41 @@
{ stdenv, fetchFromGitHub, lib, meson, ninja, pkgconfig, qtbase, qttools
, wrapQtAppsHook
, enableExperimental ? false
, includeMatrixDiscovery ? false
}:
let
version = "0.8.1";
pname = "razergenie";
in stdenv.mkDerivation {
inherit pname version;
src = fetchFromGitHub {
owner = "z3ntu";
repo = "RazerGenie";
rev = "v${version}";
sha256 = "1ggxnaidxbbpkv1h3zwwyci6886sssgslk5adbikbhz9kc9qg239";
};
nativeBuildInputs = [
pkgconfig meson ninja wrapQtAppsHook
];
buildInputs = [
qtbase qttools
];
mesonFlags = [
"-Denable_experimental=${if enableExperimental then "true" else "false"}"
"-Dinclude_matrix_discovery=${if includeMatrixDiscovery then "true" else "false"}"
];
meta = with lib; {
homepage = "https://github.com/z3ntu/RazerGenie";
description = "Qt application for configuring your Razer devices under GNU/Linux";
license = licenses.gpl3;
maintainers = with maintainers; [ f4814n ];
platforms = platforms.linux;
};
}

View file

@ -9,6 +9,7 @@
, withGeolocation ? true , withGeolocation ? true
, withCoreLocation ? withGeolocation && stdenv.isDarwin, CoreLocation, Foundation, Cocoa , withCoreLocation ? withGeolocation && stdenv.isDarwin, CoreLocation, Foundation, Cocoa
, withGeoclue ? withGeolocation && stdenv.isLinux, geoclue , withGeoclue ? withGeolocation && stdenv.isLinux, geoclue
, withAppIndicator ? true, libappindicator
}: }:
let let
@ -50,6 +51,7 @@ let
++ stdenv.lib.optional withDrm libdrm ++ stdenv.lib.optional withDrm libdrm
++ stdenv.lib.optional withQuartz ApplicationServices ++ stdenv.lib.optional withQuartz ApplicationServices
++ stdenv.lib.optionals withCoreLocation [ CoreLocation Foundation Cocoa ] ++ stdenv.lib.optionals withCoreLocation [ CoreLocation Foundation Cocoa ]
++ stdenv.lib.optional withAppIndicator libappindicator
; ;
pythonPath = [ pygobject3 pyxdg ]; pythonPath = [ pygobject3 pyxdg ];

View file

@ -3,12 +3,12 @@
# adding this to services.udev.packages on NixOS # adding this to services.udev.packages on NixOS
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "solaar"; pname = "solaar";
version = "1.0.1"; version = "1.0.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pwr-Solaar"; owner = "pwr-Solaar";
repo = "Solaar"; repo = "Solaar";
rev = "${version}"; rev = "${version}";
sha256 = "1ni3aimpl9vyhwzi61mvm8arkii52cmb6bzjma9cnkjyx328pkid"; sha256 = "0k5z9dap6rawiafkg1x7zjx51ala7wra6j6lvc2nn0y8r79yp7a9";
}; };
propagatedBuildInputs = with python3Packages; [ gobject-introspection gtk3 pygobject3 pyudev ]; propagatedBuildInputs = with python3Packages; [ gobject-introspection gtk3 pygobject3 pyudev ];

View file

@ -4,11 +4,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "todoist-electron"; pname = "todoist-electron";
version = "1.20"; version = "1.22";
src = fetchurl { src = fetchurl {
url = "https://github.com/KryDos/todoist-linux/releases/download/${version}/Todoist_${version}.0_amd64.deb"; url = "https://github.com/KryDos/todoist-linux/releases/download/${version}/Todoist_${version}.0_amd64.deb";
sha256 = "0w885xqy1304cp6b0jll5lvm6b1zd1ciqjl97d2hkdi8c9gv3bqx"; sha256 = "09w2040xkvv78190fmhx99c0dwy7vpab5fvxs67s7yyjwh5n4693";
}; };
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {

View file

@ -6,13 +6,13 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "udiskie"; pname = "udiskie";
version = "2.1.0"; version = "2.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "coldfix"; owner = "coldfix";
repo = "udiskie"; repo = "udiskie";
rev = version; rev = version;
sha256 = "1d8fz0jrnpgldvdwpl27az2kjhpbcjd8nqn3qc2v6682q12p3jqb"; sha256 = "0kn5w6bm3rmbszphzbxpjfnkawb2naa230svzkpmh3n6dcdvk4qa";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -7,16 +7,16 @@
buildGoModule rec { buildGoModule rec {
pname = "wtf"; pname = "wtf";
version = "0.29.0"; version = "0.30.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "wtfutil"; owner = "wtfutil";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0v6yafpz3sycq6yb7w4dyxqclszvdgwbyhqs5ii8ckynqcf6ifn7"; sha256 = "11vy39zygk1gxb1nc1zmxlgs6fn7yq68090fwm2jar0lsxx8a83i";
}; };
vendorSha256 = "1q54bl1z9ljpsf63i5r6vzv7f143slja0n8lyppaxxdcg18h8gn0"; vendorSha256 = "0qfb352gmsmy5glrsjwc3w57di5k2kjdsyfqn4xf7p4v12yg88va";
buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ]; buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
@ -36,4 +36,4 @@ buildGoModule rec {
maintainers = with maintainers; [ kalbasit ]; maintainers = with maintainers; [ kalbasit ];
platforms = platforms.linux ++ platforms.darwin; platforms = platforms.linux ++ platforms.darwin;
}; };
} }

View file

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "Release-${version}"; rev = "Release-${version}";
sha256 = "sha256-IdlRScAy7tCyVCElCceY4PvqPXWfZZ35f+MwCo3nO3s="; sha256 = "0yrvwy6hlc73gzwrsrczflyymyz0k33hj991ajrd1vijq14m3n91";
}; };
buildInputs = [ buildInputs = [

View file

@ -10,7 +10,7 @@ appimageTools.wrapType2 rec {
src = fetchurl { src = fetchurl {
url = "http://download.ag-projects.com/Sylk/Sylk-${version}-x86_64.AppImage"; url = "http://download.ag-projects.com/Sylk/Sylk-${version}-x86_64.AppImage";
hash = "sha256:1hz41jan8hw56ahpaajlb1yy5zjkyxrclzmqhklm5x59b76pd0zx"; sha256 = "1hz41jan8hw56ahpaajlb1yy5zjkyxrclzmqhklm5x59b76pd0zx";
}; };
profile = '' profile = ''

View file

@ -21,12 +21,12 @@ let
in mkDerivationWith python3Packages.buildPythonApplication rec { in mkDerivationWith python3Packages.buildPythonApplication rec {
pname = "qutebrowser"; pname = "qutebrowser";
version = "1.11.1"; version = "1.12.0";
# the release tarballs are different from the git checkout! # the release tarballs are different from the git checkout!
src = fetchurl { src = fetchurl {
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz"; url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
sha256 = "0cxmmw002f5rvxzyhlhzqm2ipf64w4vspf298p6c5kpg535m8cvs"; sha256 = "0pywyhi4v6ymxpn85grrdr1agmcxsnm5jfqf3rlxqx5swbnxbfs1";
}; };
# Needs tox # Needs tox

View file

@ -20,14 +20,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.0.5"; version = "1.1.0";
pname = "cawbird"; pname = "cawbird";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "IBBoard"; owner = "IBBoard";
repo = "cawbird"; repo = "cawbird";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256:0prrrkgmnm78sq2c6yvy86qb3lcl51d250q7gvmqili2ffnjmamf"; sha256 = "0zghryx5y47ff8kxa65lvgmy1cnhvhazxml7r1lxixxj3d88wh7p";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -15,13 +15,13 @@ with lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "kubernetes"; pname = "kubernetes";
version = "1.18.1"; version = "1.18.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kubernetes"; owner = "kubernetes";
repo = "kubernetes"; repo = "kubernetes";
rev = "v${version}"; rev = "v${version}";
sha256 = "1z109h0jqqfxvgyhmxsiggf6fb9kdrwvmv9wdi1n58n4yk65hvl6"; sha256 = "01r6yym74x8ysvs4i23082nm8maisg6ipy9h41y4h8glvnpha0h8";
}; };
nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ]; nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];

View file

@ -11,10 +11,10 @@
buildGoModule rec { buildGoModule rec {
pname = "minikube"; pname = "minikube";
version = "1.10.1"; version = "1.11.0";
# for -ldflags # for -ldflags
commit = "63ab801ac27e5742ae442ce36dff7877dcccb278"; commit = "57e2f55f47effe9ce396cea42a1e0eb4f611ebbd";
vendorSha256 = "1l9dxn7yy21x4b3cg6l5a08wx2ng8qf531ilg8yf1rznwfwjajrv"; vendorSha256 = "1l9dxn7yy21x4b3cg6l5a08wx2ng8qf531ilg8yf1rznwfwjajrv";
@ -22,7 +22,7 @@ buildGoModule rec {
owner = "kubernetes"; owner = "kubernetes";
repo = "minikube"; repo = "minikube";
rev = "v${version}"; rev = "v${version}";
sha256 = "05lv6k0j0l00s2895fryp027aa40whbf1gf3fhfg0z5d3p9sbprk"; sha256 = "0y761svwyrpc4ywdd4vr9hxkg6593wg4wwqzn8n86g0zcz6qg11d";
}; };
nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ]; nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];

View file

@ -7,7 +7,7 @@ buildGoModule rec {
owner = "vpsfreecz"; owner = "vpsfreecz";
repo = "terraform-provider-vpsadmin"; repo = "terraform-provider-vpsadmin";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-+6jRjcManQdoKh7ewOJI1UaulY5OSbkIUHmtrBI33u4="; sha256 = "1vny6w9arbbra04bjjafisaswinm93ic1phy59l0g78sqf6x3a7v";
}; };
vendorSha256 = "0j90fnzba23mwf9bzf9w5h0hszkl3h61p5i780s9v9c0hbzhbqsh"; vendorSha256 = "0j90fnzba23mwf9bzf9w5h0hszkl3h61p5i780s9v9c0hbzhbqsh";
@ -24,4 +24,4 @@ buildGoModule rec {
license = licenses.mpl20; license = licenses.mpl20;
maintainers = with maintainers; [ zimbatm ]; maintainers = with maintainers; [ zimbatm ];
}; };
} }

View file

@ -22,11 +22,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "filezilla"; pname = "filezilla";
version = "3.48.0"; version = "3.48.1";
src = fetchurl { src = fetchurl {
url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.bz2"; url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.bz2";
sha256 = "0msxl8ihbycd56hmn1q8sl1gzmsxc7j8ar9k4zsryd0ayyz7wv05"; sha256 = "0pgg2gp4x5qmxwin2qhf6skw0z52y29p75g41kjyh1lhzxvxizxb";
}; };
# https://www.linuxquestions.org/questions/slackware-14/trouble-building-filezilla-3-47-2-1-current-4175671182/#post6099769 # https://www.linuxquestions.org/questions/slackware-14/trouble-building-filezilla-3-47-2-1-current-4175671182/#post6099769

View file

@ -8,7 +8,7 @@ let
src = fetchurl { src = fetchurl {
url = url =
"https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage"; "https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
sha256 = "sha256-Mk4OzKcZceRv2IEzf/72VBWEq2RWi6BVzqjfEB5D1/c="; sha256 = "1xyp8cg11px8rras12sncjmq85alyvz7ycw1v1py8w8rlz60wkij";
}; };
appimageContents = appimageTools.extract { inherit name src; }; appimageContents = appimageTools.extract { inherit name src; };

View file

@ -11,7 +11,7 @@ mkDerivation rec {
owner = "QMatrixClient"; owner = "QMatrixClient";
repo = "Quaternion"; repo = "Quaternion";
rev = "${version}"; rev = "${version}";
sha256 = "sha256-2yEiILiitRPj2hCodUDM8UNVq8crb9nyX21ebuh5EEM="; sha256 = "0hqhg7l6wpkdbzrdjvrbqymmahziri07ba0hvbii7dd2p0h248fv";
}; };
buildInputs = [ buildInputs = [

View file

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}b.tar.bz2"; url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}b.tar.bz2";
sha256 = "sha256:03pr1gmiv5y0i92bkhcxr8s311ll91chz19wb96jkixx32xav91d"; sha256 = "03pr1gmiv5y0i92bkhcxr8s311ll91chz19wb96jkixx32xav91d";
}; };
nativeBuildInputs = [ wrapGAppsHook python3Packages.wrapPython intltool pkgconfig ]; nativeBuildInputs = [ wrapGAppsHook python3Packages.wrapPython intltool pkgconfig ];

View file

@ -70,13 +70,13 @@ mkDerivation rec {
}) })
(fetchpatch { (fetchpatch {
url = "https://github.com/scribusproject/scribus/commit/24aba508aac3f672f5f8cd629744a3b71e58ec37.patch"; url = "https://github.com/scribusproject/scribus/commit/24aba508aac3f672f5f8cd629744a3b71e58ec37.patch";
sha256 = "sha256-OY+EIiGBTg2aIAmZOnkI8DPZVZYqFZAKnD7ychge1Dw="; sha256 = "0g6l3qc75wiykh59059ajraxjczh11wkm68942d0skl144i893rr";
includes = [ "scribus/plugins/import/pdf/*" ]; includes = [ "scribus/plugins/import/pdf/*" ];
}) })
# fix build with Poppler 0.86 # fix build with Poppler 0.86
(fetchpatch { (fetchpatch {
url = "https://github.com/scribusproject/scribus/commit/67f8771aaff2f55d61b8246f420e762f4b526944.patch"; url = "https://github.com/scribusproject/scribus/commit/67f8771aaff2f55d61b8246f420e762f4b526944.patch";
sha256 = "51z+BYKhbH8a9dFph8X60NGpiogSb+5tOhW2d+m/X9M="; sha256 = "1lszpzlpgdhm79nywvqji25aklfhzb2qfsfiyld7yv51h82zwp77";
}) })
]; ];

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "dump1090"; pname = "dump1090";
version = "3.8.0"; version = "3.8.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "flightaware"; owner = "flightaware";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0c30x56h79hza9m6b9zp5y28jxx4f4n5xgaaw597l8agcm5iia0p"; sha256 = "0xg8rzrxqklx1m9ncxsd96dlkbjcsxfi2mrb859v50f07xysdyd8";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View file

@ -2,12 +2,12 @@
libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }: libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "4.1.12"; version = "4.1.13";
pname = "fldigi"; pname = "fldigi";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz"; url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
sha256 = "1yjjv2ss84xfiaidypp476mhrbpnw4zf7mb5cdqwhdh604x0svr1"; sha256 = "0mlq4z5k3h466plij8hg9xn5xbjxk557g4pw13cplpf32fhng224";
}; };
buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio

View file

@ -45,13 +45,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnuradio"; pname = "gnuradio";
version = "3.7.13.4"; version = "3.7.14.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gnuradio"; owner = "gnuradio";
repo = "gnuradio"; repo = "gnuradio";
rev = "v${version}"; rev = "v${version}";
sha256 = "0ybfn2zfr9lc1bi3c794l4bzpj8y6vas9c4rbcj4nqlx0zf3p8fn"; sha256 = "1nh4f9dmygprlbqybd3j1byg9fsr6065n140mvc4b0v8qqygmhrc";
fetchSubmodules = true; fetchSubmodules = true;
}; };

View file

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
owner = "arminbiere"; owner = "arminbiere";
repo = "cadical"; repo = "cadical";
rev = "rel-${version}"; rev = "rel-${version}";
hash = "sha256:1a66xkw42ad330fvw8i0sawrmg913m8wrq5c85lw5qandkwvxdi6"; sha256 = "1a66xkw42ad330fvw8i0sawrmg913m8wrq5c85lw5qandkwvxdi6";
}; };
dontAddPrefix = true; dontAddPrefix = true;

View file

@ -3,7 +3,7 @@
, fetchurl , fetchurl
, fetchpatch , fetchpatch
, makeWrapper , makeWrapper
, m4 , readline
, gmp , gmp
# one of # one of
# - "minimal" (~400M): # - "minimal" (~400M):
@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
version = "4.10.2"; version = "4.10.2";
src = fetchurl { src = fetchurl {
url = "https://www.gap-system.org/pub/gap/gap-${lib.versions.major version}.${lib.versions.minor version}/tar.bz2/gap-${version}.tar.bz2"; url = "https://files.gap-system.org/gap-${lib.versions.major version}.${lib.versions.minor version}/tar.bz2/gap-${version}.tar.bz2";
sha256 = "0cp6ddk0469zzv1m1vair6gm27ic6c5m77ri8rn0znq3gaps6x94"; sha256 = "0cp6ddk0469zzv1m1vair6gm27ic6c5m77ri8rn0znq3gaps6x94";
}; };
@ -73,10 +73,8 @@ stdenv.mkDerivation rec {
patchShebangs . patchShebangs .
''; '';
configureFlags = [ "--with-gmp=system" ];
buildInputs = [ buildInputs = [
m4 readline
gmp gmp
]; ];
@ -91,14 +89,31 @@ stdenv.mkDerivation rec {
url = "https://github.com/gap-system/gap/commit/3361c172e6c5ff3bb3f01ba9d6f1dd4ad42cea80.patch"; url = "https://github.com/gap-system/gap/commit/3361c172e6c5ff3bb3f01ba9d6f1dd4ad42cea80.patch";
sha256 = "1kwp9qnfvmlbpf1c3rs6j5m2jz22rj7a4hb5x1gj9vkpiyn5pdyj"; sha256 = "1kwp9qnfvmlbpf1c3rs6j5m2jz22rj7a4hb5x1gj9vkpiyn5pdyj";
}) })
# Fix for locale specific tests causing issues. Already upstream.
# Backport of https://github.com/gap-system/gap/pull/4022
# WHEN REMOVING: also remove the`rm tst/testinstall/strings.tst` line in
# `postPatch` below. That line is necessary since the patch is not intended
# for gap 4.10.
(fetchpatch {
name = "remove-locale-specific-tests.patch";
url = "https://github.com/gap-system/gap/commit/c18b0c4215b5212a2cc4f305e2d5b94ba716bee8.patch";
excludes = ["tst/testinstall/stringobj.tst"];
sha256 = "1mz5b4mbw2jdd1ypp5s0dy6pp0jsvwsxr2dm4kbkls20r1r192sc";
})
]; ];
postPatch = ''
# File not covered by the remove-locale-specific-tests.patch patch above.
rm tst/testinstall/strings.tst
'';
# "teststandard" is a superset of testinstall. It takes ~1h instead of ~1min. # "teststandard" is a superset of testinstall. It takes ~1h instead of ~1min.
# tests are run twice, once with all packages loaded and once without # tests are run twice, once with all packages loaded and once without
# checkTarget = "teststandard"; # checkTarget = "teststandard";
doInstallCheck = true; doInstallCheck = true;
installCheckTarget = "testinstall"; installCheckTarget = "check";
preInstallCheck = '' preInstallCheck = ''
# gap tests check that the home directory exists # gap tests check that the home directory exists
@ -119,16 +134,6 @@ stdenv.mkDerivation rec {
) )
''; '';
postCheck = ''
# The testsuite doesn't exit with a non-zero exit code on failure.
# It leaves its logs in dev/log however.
# grep for error messages
if grep ^##### dev/log/*; then
exit 1
fi
'';
postBuild = '' postBuild = ''
pushd pkg pushd pkg
bash ../bin/BuildPackages.sh bash ../bin/BuildPackages.sh
@ -170,11 +175,11 @@ stdenv.mkDerivation rec {
]; ];
platforms = platforms.all; platforms = platforms.all;
broken = stdenv.isDarwin; broken = stdenv.isDarwin;
# keeping all packages increases the package size considerably, wchich # keeping all packages increases the package size considerably, which is
# is why a local build is preferable in that situation. The timeframe # why a local build is preferable in that situation. The timeframe is
# is reasonable and that way the binary cache doesn't get overloaded. # reasonable and that way the binary cache doesn't get overloaded.
hydraPlatforms = lib.optionals (!keepAllPackages) meta.platforms; hydraPlatforms = lib.optionals (!keepAllPackages) meta.platforms;
license = licenses.gpl2; license = licenses.gpl2;
homepage = "http://gap-system.org/"; homepage = "https://www.gap-system.org";
}; };
} }

View file

@ -12,7 +12,7 @@ buildGoPackage rec {
owner = "isacikgoz"; owner = "isacikgoz";
repo = "gitbatch"; repo = "gitbatch";
rev = "381b0df7f86056c625c0d4d2d979733c1ee5def7"; rev = "381b0df7f86056c625c0d4d2d979733c1ee5def7";
sha256 = "sha256:0613vfqdn3k0w7fm25rqnqdr67w9vii3i56dfslqcn1vqjfrff3q"; sha256 = "0613vfqdn3k0w7fm25rqnqdr67w9vii3i56dfslqcn1vqjfrff3q";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -1,14 +1,14 @@
{ callPackage, stdenv, fetchFromGitHub, ...}: { callPackage, stdenv, fetchFromGitHub, ...}:
stdenv.mkDerivation { stdenv.mkDerivation rec {
pname = "gitstatus"; pname = "gitstatus";
version = "unstable-2020-04-21"; version = "1.1.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "romkatv"; owner = "romkatv";
repo = "gitstatus"; repo = "gitstatus";
rev = "3494f25b0b3b2eac241cf669d1fea2b49ea42fb3"; rev = "v${version}";
sha256 = "0b4g14dkkgih6zps2w1krl9xf44ysj02617zj1k51z127v2lpm1f"; sha256 = "16s09d2kpw0v0kyr2ada99qmsi0pqnsiis22mzq69hay0hdg8p1n";
}; };
buildInputs = [ (callPackage ./romkatv_libgit2.nix {}) ]; buildInputs = [ (callPackage ./romkatv_libgit2.nix {}) ];
@ -24,7 +24,6 @@ stdenv.mkDerivation {
description = "10x faster implementation of `git status` command"; description = "10x faster implementation of `git status` command";
homepage = "https://github.com/romkatv/gitstatus"; homepage = "https://github.com/romkatv/gitstatus";
license = [ licenses.gpl3 ]; license = [ licenses.gpl3 ];
maintainers = with maintainers; [ mmlb hexa ]; maintainers = with maintainers; [ mmlb hexa ];
}; };
} }

View file

@ -6,16 +6,17 @@ libgit2.overrideAttrs (oldAttrs: {
"-DBUILD_SHARED_LIBS=OFF" "-DBUILD_SHARED_LIBS=OFF"
"-DREGEX_BACKEND=builtin" "-DREGEX_BACKEND=builtin"
"-DUSE_BUNDLED_ZLIB=ON" "-DUSE_BUNDLED_ZLIB=ON"
"-DUSE_GSSAPI=OFF"
"-DUSE_HTTPS=OFF" "-DUSE_HTTPS=OFF"
"-DUSE_HTTP_PARSER=builtin" # overwritten from libgit2 "-DUSE_HTTP_PARSER=builtin" # overwritten from libgit2
"-DUSE_ICONV=OFF" "-DUSE_NTLMCLIENT=OFF"
"-DUSE_SSH=OFF" "-DUSE_SSH=OFF"
"-DZERO_NSEC=ON" "-DZERO_NSEC=ON"
]; ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "romkatv"; owner = "romkatv";
repo = "libgit2"; repo = "libgit2";
rev = "bb77509f4436901f3958e30272026f63d2247d7d"; rev = "tag-005f77dca6dbe8788e55139fa1199fc94cc04f9a";
sha256 = "06iypr0sc6g11xipwfbgm6f039d4qy9krmwb3zww8k4y004s5jcv"; sha256 = "1h5bnisk4ljdpfzlv8g41m8js9841xyjhfywc5cn8pmyv58c50il";
}; };
}) })

View file

@ -9,11 +9,11 @@ with stdenv.lib;
buildGoPackage rec { buildGoPackage rec {
pname = "gitea"; pname = "gitea";
version = "1.11.5"; version = "1.11.6";
src = fetchurl { src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz"; url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "0iqxwg53wjwi4vpq2h6fwmniazsi4cf68fcjrs459qbz4d6x8xa9"; sha256 = "11nyq5faq0hy1pi3yhmc6y8is7jyiyfrb162fq9l33pkyw6qihqs";
}; };
unpackPhase = '' unpackPhase = ''
@ -29,10 +29,6 @@ buildGoPackage rec {
url = "https://github.com/go-gitea/gitea/commit/1830d0ed5f4a67e3360ecbb55933b5540b6affce.patch"; url = "https://github.com/go-gitea/gitea/commit/1830d0ed5f4a67e3360ecbb55933b5540b6affce.patch";
sha256 = "163531pcki28qfs56l64vv4xxaavxgksf038da1sn21j5l2jm81i"; sha256 = "163531pcki28qfs56l64vv4xxaavxgksf038da1sn21j5l2jm81i";
}) })
(fetchpatch {
url = "https://github.com/go-gitea/gitea/commit/e1c00bd6af677b944a102d84314eba8c487648b3.patch";
sha256 = "1yf48fvky4as72w38lbrk4qpl4af31i2ckr90h3x5wf61yc105wv";
})
]; ];
postPatch = '' postPatch = ''

View file

@ -1,13 +1,13 @@
{ {
"version": "12.8.10", "version": "12.10.8",
"repo_hash": "1njkihj66d8fnk1l0r5pys38akf5srqlrgj2hzc68l5m8d51dk15", "repo_hash": "189l6l47s5lz0y2qjbai1n9l6yq513d38apyv88c3by3r41m86y1",
"owner": "gitlab-org", "owner": "gitlab-org",
"repo": "gitlab", "repo": "gitlab",
"rev": "v12.8.10-ee", "rev": "v12.10.8-ee",
"passthru": { "passthru": {
"GITALY_SERVER_VERSION": "12.8.10", "GITALY_SERVER_VERSION": "12.10.8",
"GITLAB_PAGES_VERSION": "1.16.0", "GITLAB_PAGES_VERSION": "1.17.0",
"GITLAB_SHELL_VERSION": "11.0.0", "GITLAB_SHELL_VERSION": "12.2.0",
"GITLAB_WORKHORSE_VERSION": "8.21.2" "GITLAB_WORKHORSE_VERSION": "8.30.2"
} }
} }

View file

@ -89,7 +89,7 @@ let
bundle exec rake gettext:po_to_json RAILS_ENV=production NODE_ENV=production bundle exec rake gettext:po_to_json RAILS_ENV=production NODE_ENV=production
bundle exec rake rake:assets:precompile RAILS_ENV=production NODE_ENV=production bundle exec rake rake:assets:precompile RAILS_ENV=production NODE_ENV=production
bundle exec rake webpack:compile RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=2048" bundle exec rake webpack:compile RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=3072"
bundle exec rake gitlab:assets:fix_urls RAILS_ENV=production NODE_ENV=production bundle exec rake gitlab:assets:fix_urls RAILS_ENV=production NODE_ENV=production
runHook postBuild runHook postBuild

View file

@ -8,9 +8,9 @@ gem 'github-linguist', '~> 7.5', require: 'linguist'
gem 'gitlab-markup', '~> 1.7.0' gem 'gitlab-markup', '~> 1.7.0'
gem 'activesupport', '6.0.2' gem 'activesupport', '6.0.2'
gem 'rdoc', '~> 6.0' gem 'rdoc', '~> 6.0'
gem 'gitlab-gollum-lib', '~> 4.2.7.7', require: false gem 'gitlab-gollum-lib', '~> 4.2.7.8', require: false
gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.2', require: false gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.2', require: false
gem 'grpc', '~> 1.24.0' gem 'grpc', '~> 1.27.0'
gem 'sentry-raven', '~> 2.9.0', require: false gem 'sentry-raven', '~> 2.9.0', require: false
gem 'faraday', '~> 0.12' gem 'faraday', '~> 0.12'
gem 'rbtrace', require: false gem 'rbtrace', require: false
@ -22,7 +22,7 @@ gem 'gitlab-labkit', '~> 0.9.1'
# This version needs to be in sync with GitLab CE/EE # This version needs to be in sync with GitLab CE/EE
gem 'licensee', '~> 8.9.0' gem 'licensee', '~> 8.9.0'
gem 'google-protobuf', '~> 3.8.0' gem 'google-protobuf', '~> 3.11.2'
group :development, :test do group :development, :test do
gem 'rubocop', '~> 0.69', require: false gem 'rubocop', '~> 0.69', require: false

View file

@ -56,10 +56,10 @@ GEM
mini_mime (~> 1.0) mini_mime (~> 1.0)
rugged (>= 0.25.1) rugged (>= 0.25.1)
github-markup (1.7.0) github-markup (1.7.0)
gitlab-gollum-lib (4.2.7.7) gitlab-gollum-lib (4.2.7.8)
gemojione (~> 3.2) gemojione (~> 3.2)
github-markup (~> 1.6) github-markup (~> 1.6)
gollum-grit_adapter (~> 1.0) gitlab-gollum-rugged_adapter (~> 0.4.4.2)
nokogiri (>= 1.6.1, < 2.0) nokogiri (>= 1.6.1, < 2.0)
rouge (~> 3.1) rouge (~> 3.1)
sanitize (~> 4.6.4) sanitize (~> 4.6.4)
@ -67,11 +67,6 @@ GEM
gitlab-gollum-rugged_adapter (0.4.4.2) gitlab-gollum-rugged_adapter (0.4.4.2)
mime-types (>= 1.15) mime-types (>= 1.15)
rugged (~> 0.25) rugged (~> 0.25)
gitlab-grit (2.8.2)
charlock_holmes (~> 0.6)
diff-lcs (~> 1.1)
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-labkit (0.9.1) gitlab-labkit (0.9.1)
actionpack (>= 5.0.0, < 6.1.0) actionpack (>= 5.0.0, < 6.1.0)
activesupport (>= 5.0.0, < 6.1.0) activesupport (>= 5.0.0, < 6.1.0)
@ -80,13 +75,11 @@ GEM
opentracing (~> 0.4) opentracing (~> 0.4)
redis (> 3.0.0, < 5.0.0) redis (> 3.0.0, < 5.0.0)
gitlab-markup (1.7.0) gitlab-markup (1.7.0)
gollum-grit_adapter (1.0.1) google-protobuf (3.11.4)
gitlab-grit (~> 2.7, >= 2.7.1)
google-protobuf (3.8.0)
googleapis-common-protos-types (1.0.4) googleapis-common-protos-types (1.0.4)
google-protobuf (~> 3.0) google-protobuf (~> 3.0)
grpc (1.24.0) grpc (1.27.0)
google-protobuf (~> 3.8) google-protobuf (~> 3.11)
googleapis-common-protos-types (~> 1.0) googleapis-common-protos-types (~> 1.0)
hashdiff (0.3.9) hashdiff (0.3.9)
i18n (1.8.2) i18n (1.8.2)
@ -121,9 +114,8 @@ GEM
opentracing (0.5.0) opentracing (0.5.0)
optimist (3.0.0) optimist (3.0.0)
parallel (1.17.0) parallel (1.17.0)
parser (2.6.3.0) parser (2.7.0.5)
ast (~> 2.4.0) ast (~> 2.4.0)
posix-spawn (0.3.13)
proc_to_ast (0.1.0) proc_to_ast (0.1.0)
coderay coderay
parser parser
@ -148,7 +140,7 @@ GEM
optimist (>= 3.0.0) optimist (>= 3.0.0)
rdoc (6.2.0) rdoc (6.2.0)
redis (4.1.3) redis (4.1.3)
rouge (3.15.0) rouge (3.18.0)
rspec (3.8.0) rspec (3.8.0)
rspec-core (~> 3.8.0) rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0) rspec-expectations (~> 3.8.0)
@ -196,13 +188,13 @@ GEM
tzinfo (1.2.6) tzinfo (1.2.6)
thread_safe (~> 0.1) thread_safe (~> 0.1)
unicode-display_width (1.6.0) unicode-display_width (1.6.0)
unparser (0.4.5) unparser (0.4.7)
abstract_type (~> 0.0.7) abstract_type (~> 0.0.7)
adamantium (~> 0.2.0) adamantium (~> 0.2.0)
concord (~> 0.1.5) concord (~> 0.1.5)
diff-lcs (~> 1.3) diff-lcs (~> 1.3)
equalizer (~> 0.0.9) equalizer (~> 0.0.9)
parser (~> 2.6.3) parser (>= 2.6.5)
procto (~> 0.0.2) procto (~> 0.0.2)
vcr (4.0.0) vcr (4.0.0)
webmock (3.4.2) webmock (3.4.2)
@ -220,12 +212,12 @@ DEPENDENCIES
factory_bot factory_bot
faraday (~> 0.12) faraday (~> 0.12)
github-linguist (~> 7.5) github-linguist (~> 7.5)
gitlab-gollum-lib (~> 4.2.7.7) gitlab-gollum-lib (~> 4.2.7.8)
gitlab-gollum-rugged_adapter (~> 0.4.4.2) gitlab-gollum-rugged_adapter (~> 0.4.4.2)
gitlab-labkit (~> 0.9.1) gitlab-labkit (~> 0.9.1)
gitlab-markup (~> 1.7.0) gitlab-markup (~> 1.7.0)
google-protobuf (~> 3.8.0) google-protobuf (~> 3.11.2)
grpc (~> 1.24.0) grpc (~> 1.27.0)
licensee (~> 8.9.0) licensee (~> 8.9.0)
listen (~> 0.5.0) listen (~> 0.5.0)
pry (~> 0.12.2) pry (~> 0.12.2)

View file

@ -19,19 +19,21 @@ let
}; };
}; };
in buildGoPackage rec { in buildGoPackage rec {
version = "12.8.10"; version = "12.10.8";
pname = "gitaly"; pname = "gitaly";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitaly"; repo = "gitaly";
rev = "v${version}"; rev = "v${version}";
sha256 = "1vhnpyggh2ch93i75np11rjzvq8d6pwv2kzvwh7ak3fa02w9qdfs"; sha256 = "02dih35j97q80kzi46pkf9f9r1sffw11i5zmpjs2rr96al426g8q";
}; };
# Fix a check which assumes that hook files are writeable by their # Fix a check which assumes that hook files are writeable by their
# owner. # owner.
patches = [ ./fix-executable-check.patch ]; patches = [
./fix-executable-check.patch
];
goPackagePath = "gitlab.com/gitlab-org/gitaly"; goPackagePath = "gitlab.com/gitlab-org/gitaly";
@ -52,8 +54,8 @@ in buildGoPackage rec {
# code by default which doesn't work in nixos because it's a # code by default which doesn't work in nixos because it's a
# read-only filesystem # read-only filesystem
substituteInPlace $ruby/gitlab-shell/lib/gitlab_config.rb --replace \ substituteInPlace $ruby/gitlab-shell/lib/gitlab_config.rb --replace \
"File.join(ROOT_PATH, 'config.yml')" \ "ROOT_PATH.join('config.yml')" \
"'/run/gitlab/shell-config.yml'" "Pathname.new('/run/gitlab/shell-config.yml')"
''; '';
outputs = [ "out" "ruby" ]; outputs = [ "out" "ruby" ];

View file

@ -5,8 +5,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://code.googlesource.com/gocloud"; url = "https://code.googlesource.com/gocloud";
rev = "v0.26.0"; rev = "v0.50.0";
sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1"; sha256 = "0pbz5migljd5whxh6z1w79cwx93n85mcs3x1bckl27yzaa4lvqsl";
}; };
} }
{ {
@ -18,6 +18,15 @@
sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6"; sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
}; };
} }
{
goPackagePath = "github.com/BurntSushi/xgb";
fetch = {
type = "git";
url = "https://github.com/BurntSushi/xgb";
rev = "27f122750802";
sha256 = "18lp2x8f5bljvlz0r7xn744f0c9rywjsb9ifiszqqdcpwhsa0kvj";
};
}
{ {
goPackagePath = "github.com/Joker/hpp"; goPackagePath = "github.com/Joker/hpp";
fetch = { fetch = {
@ -126,6 +135,33 @@
sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4"; sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
}; };
} }
{
goPackagePath = "github.com/chzyer/logex";
fetch = {
type = "git";
url = "https://github.com/chzyer/logex";
rev = "v1.1.10";
sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
};
}
{
goPackagePath = "github.com/chzyer/readline";
fetch = {
type = "git";
url = "https://github.com/chzyer/readline";
rev = "2972be24d48e";
sha256 = "104q8dazj8yf6b089jjr82fy9h1g80zyyzvp3g8b44a7d8ngjj6r";
};
}
{
goPackagePath = "github.com/chzyer/test";
fetch = {
type = "git";
url = "https://github.com/chzyer/test";
rev = "a1ea475d72b1";
sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
};
}
{ {
goPackagePath = "github.com/client9/misspell"; goPackagePath = "github.com/client9/misspell";
fetch = { fetch = {
@ -342,6 +378,15 @@
sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp"; sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
}; };
} }
{
goPackagePath = "github.com/go-gl/glfw";
fetch = {
type = "git";
url = "https://github.com/go-gl/glfw";
rev = "12ad95a8df72";
sha256 = "0ahw4a1lk7wqn6m0sjngsv2zc08kxxj259ai6g4kf11lmidszm9s";
};
}
{ {
goPackagePath = "github.com/go-kit/kit"; goPackagePath = "github.com/go-kit/kit";
fetch = { fetch = {
@ -451,12 +496,12 @@
}; };
} }
{ {
goPackagePath = "github.com/golang/lint"; goPackagePath = "github.com/golang/groupcache";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/golang/lint"; url = "https://github.com/golang/groupcache";
rev = "06c8688daad7"; rev = "215e87163ea7";
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47"; sha256 = "07555csk49ara636bhl2vbzziayls3qks8964z0q29g065zliy9j";
}; };
} }
{ {
@ -464,8 +509,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/golang/mock"; url = "https://github.com/golang/mock";
rev = "v1.1.1"; rev = "v1.3.1";
sha256 = "0ap8wb6pdl6ccmdb43advjll2ly4sz26wsc3axw0hbrjrybybzgy"; sha256 = "1wnfa8njxdym1qb664dmfnkpm4pmqy22hqjlqpwaaiqhglb5g9d1";
}; };
} }
{ {
@ -477,13 +522,22 @@
sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym"; sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
}; };
} }
{
goPackagePath = "github.com/google/btree";
fetch = {
type = "git";
url = "https://github.com/google/btree";
rev = "v1.0.0";
sha256 = "0ba430m9fbnagacp57krgidsyrgp3ycw5r7dj71brgp5r52g82p6";
};
}
{ {
goPackagePath = "github.com/google/go-cmp"; goPackagePath = "github.com/google/go-cmp";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/google/go-cmp"; url = "https://github.com/google/go-cmp";
rev = "v0.3.0"; rev = "v0.4.0";
sha256 = "1hyxx3434zshl2m9ja78gwlkg1rx9yl6diqa7dnjb31xz5x4gbjj"; sha256 = "1x5pvl3fb5sbyng7i34431xycnhmx8xx94gq2n19g6p0vz68z2v2";
}; };
} }
{ {
@ -495,6 +549,33 @@
sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz"; sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
}; };
} }
{
goPackagePath = "github.com/google/martian";
fetch = {
type = "git";
url = "https://github.com/google/martian";
rev = "v2.1.0";
sha256 = "197hil6vrjk50b9wvwyzf61csid83whsjj6ik8mc9r2lryxlyyrp";
};
}
{
goPackagePath = "github.com/google/pprof";
fetch = {
type = "git";
url = "https://github.com/google/pprof";
rev = "d4f498aebedc";
sha256 = "1r4pn70yy5vfl38jx9v8224n7jkhcm5wg28vv48izgznlgv7h024";
};
}
{
goPackagePath = "github.com/google/renameio";
fetch = {
type = "git";
url = "https://github.com/google/renameio";
rev = "v0.1.0";
sha256 = "1ki2x5a9nrj17sn092d6n4zr29lfg5ydv4xz5cp58z6cw8ip43jx";
};
}
{ {
goPackagePath = "github.com/google/uuid"; goPackagePath = "github.com/google/uuid";
fetch = { fetch = {
@ -504,6 +585,15 @@
sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb"; sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
}; };
} }
{
goPackagePath = "github.com/googleapis/gax-go";
fetch = {
type = "git";
url = "https://github.com/googleapis/gax-go";
rev = "v2.0.5";
sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
};
}
{ {
goPackagePath = "github.com/gopherjs/gopherjs"; goPackagePath = "github.com/gopherjs/gopherjs";
fetch = { fetch = {
@ -558,6 +648,15 @@
sha256 = "00nyn8llqzbfm8aflr9kwsvpzi4kv8v45c141v88xskxp5xf6z49"; sha256 = "00nyn8llqzbfm8aflr9kwsvpzi4kv8v45c141v88xskxp5xf6z49";
}; };
} }
{
goPackagePath = "github.com/hashicorp/golang-lru";
fetch = {
type = "git";
url = "https://github.com/hashicorp/golang-lru";
rev = "v0.5.1";
sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
};
}
{ {
goPackagePath = "github.com/hashicorp/hcl"; goPackagePath = "github.com/hashicorp/hcl";
fetch = { fetch = {
@ -576,6 +675,15 @@
sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0"; sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
}; };
} }
{
goPackagePath = "github.com/ianlancetaylor/demangle";
fetch = {
type = "git";
url = "https://github.com/ianlancetaylor/demangle";
rev = "5e5cf60278f6";
sha256 = "1fhjk11cip9c3jyj1byz9z77n6n2rlxmyz0xjx1zpn1da3cvri75";
};
}
{ {
goPackagePath = "github.com/imkira/go-interpol"; goPackagePath = "github.com/imkira/go-interpol";
fetch = { fetch = {
@ -648,6 +756,15 @@
sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r"; sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
}; };
} }
{
goPackagePath = "github.com/jstemmer/go-junit-report";
fetch = {
type = "git";
url = "https://github.com/jstemmer/go-junit-report";
rev = "v0.9.1";
sha256 = "1knip80yir1cdsjlb3rzy0a4w3kl4ljpiciaz6hjzwqlfhnv7bkw";
};
}
{ {
goPackagePath = "github.com/jtolds/gls"; goPackagePath = "github.com/jtolds/gls";
fetch = { fetch = {
@ -837,15 +954,6 @@
sha256 = "08j1smm6rassdssdks4yh9aspa1dv1g5nvwimmknspvhx8a7waqz"; sha256 = "08j1smm6rassdssdks4yh9aspa1dv1g5nvwimmknspvhx8a7waqz";
}; };
} }
{
goPackagePath = "github.com/libgit2/git2go";
fetch = {
type = "git";
url = "https://github.com/libgit2/git2go";
rev = "ecaeb7a21d47";
sha256 = "14r7ryff93r49g94f6kg66xc0y6rwb31lj22s3qmzmlgywk0pgvr";
};
}
{ {
goPackagePath = "github.com/lightstep/lightstep-tracer-go"; goPackagePath = "github.com/lightstep/lightstep-tracer-go";
fetch = { fetch = {
@ -1094,8 +1202,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/prometheus/client_model"; url = "https://github.com/prometheus/client_model";
rev = "fd36f4220a90"; rev = "14fe0d1b01d4";
sha256 = "1bs5d72k361llflgl94c22n0w53j30rsfh84smgk8mbjbcmjsaa5"; sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
}; };
} }
{ {
@ -1454,8 +1562,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://gitlab.com/gitlab-org/labkit.git"; url = "https://gitlab.com/gitlab-org/labkit.git";
rev = "3253d7975ca7"; rev = "fac94cb428e6";
sha256 = "1q7vqcbwzgwk4n09jnzdh2filv1aqclw9bgf3qjr5qrfk7hby58s"; sha256 = "19wvfjij6zm88fxbx0cngr6ny4yh3fw469d6vlv741b37s07w3j0";
};
}
{
goPackagePath = "go.opencensus.io";
fetch = {
type = "git";
url = "https://github.com/census-instrumentation/opencensus-go";
rev = "v0.22.2";
sha256 = "0lz7fid63pdrcvyzk5kn7vlcva102h61igmw7pz824wvj9k3hy4q";
}; };
} }
{ {
@ -1472,8 +1589,26 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/crypto"; url = "https://go.googlesource.com/crypto";
rev = "4def268fd1a4"; rev = "87dc89f01550";
sha256 = "1bfsnari529gw34cz0zqk3d9mrkcj1ay35kangri8kbgll0ss5a6"; sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
};
}
{
goPackagePath = "golang.org/x/exp";
fetch = {
type = "git";
url = "https://go.googlesource.com/exp";
rev = "da58074b4299";
sha256 = "1pgvdbjm3n47505diw3mm2hisp9b9q2lyvgl9m6xh2wx83b0cj48";
};
}
{
goPackagePath = "golang.org/x/image";
fetch = {
type = "git";
url = "https://go.googlesource.com/image";
rev = "cff245a6509b";
sha256 = "0hiznlkiaay30acwvvyq8g6bm32r7bc6gv47pygrcxqpapasbz84";
}; };
} }
{ {
@ -1481,8 +1616,26 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/lint"; url = "https://go.googlesource.com/lint";
rev = "d0100b6bd8b3"; rev = "fdd1cda4f05f";
sha256 = "0b0amr9x4ji66iv9ayfx7zrfx52k1m5g66qfcxkgj80qrb1y2yn7"; sha256 = "0a23pc90fqar8sm1b480sls15ss20rqk13yrf63b6rnyd2c6z0x2";
};
}
{
goPackagePath = "golang.org/x/mobile";
fetch = {
type = "git";
url = "https://go.googlesource.com/mobile";
rev = "d2bd2a29d028";
sha256 = "1nv6vvhnjr01nx9y06q46ww87dppdwpbqrlsfg1xf2587wxl8xiv";
};
}
{
goPackagePath = "golang.org/x/mod";
fetch = {
type = "git";
url = "https://go.googlesource.com/mod";
rev = "c90efee705ee";
sha256 = "0i5md645rmcy5z5ij9ng428k9rz4g3k1kjy3blsq1264rn426gdf";
}; };
} }
{ {
@ -1490,8 +1643,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/net"; url = "https://go.googlesource.com/net";
rev = "3b0461eec859"; rev = "6afb5195e5aa";
sha256 = "0l00c8l0a8xnv6qdpwfzxxsr58jggacgzdrwiprrfx2xqm37b6d5"; sha256 = "1aiz41q2yxgg3dxfkn33ff54vhaxbiwcps9j3ia1xx4cqxim38zw";
}; };
} }
{ {
@ -1499,8 +1652,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/oauth2"; url = "https://go.googlesource.com/oauth2";
rev = "d2e6202438be"; rev = "bf48bf16ab8d";
sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7"; sha256 = "1sirdib60zwmh93kf9qrx51r8544k1p9rs5mk0797wibz3m4mrdg";
}; };
} }
{ {
@ -1517,8 +1670,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/sys"; url = "https://go.googlesource.com/sys";
rev = "fde4db37ae7a"; rev = "86b910548bc1";
sha256 = "16k4w4pzziq1kln18k5fg01qgk4hpzb5xsm7175kaky6d6gwyhg3"; sha256 = "1z8l2wp27q0bd4nc46j31lc7cr6kiw52zi6ix3i121pd3rcyrw44";
}; };
} }
{ {
@ -1530,13 +1683,22 @@
sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh"; sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
}; };
} }
{
goPackagePath = "golang.org/x/time";
fetch = {
type = "git";
url = "https://go.googlesource.com/time";
rev = "9d24e82272b4";
sha256 = "1f5nkr4vys2vbd8wrwyiq2f5wcaahhpxmia85d1gshcbqjqf8dkb";
};
}
{ {
goPackagePath = "golang.org/x/tools"; goPackagePath = "golang.org/x/tools";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/tools"; url = "https://go.googlesource.com/tools";
rev = "72853e10c5a3"; rev = "43d50277825c";
sha256 = "06v42k857lcivcar3fq8yjc782hny0m5yf20sb7ij5jva0gab026"; sha256 = "1168q4da36wq9w2591iqzsfy5ymwfi2g46bv5dnyyspg155ld19k";
}; };
} }
{ {
@ -1544,8 +1706,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/xerrors"; url = "https://go.googlesource.com/xerrors";
rev = "a985d3407aa7"; rev = "9bdfabe68543";
sha256 = "00wzr5w8aadipgc3rkk8f11i41znskfj9ix5nhhaxyg7isrslgcj"; sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
};
}
{
goPackagePath = "google.golang.org/api";
fetch = {
type = "git";
url = "https://code.googlesource.com/google-api-go-client";
rev = "v0.15.0";
sha256 = "1ljhwv5xsgsbqia70f35q19vwrsm47sh08ljbwdyfa867ff17qdh";
}; };
} }
{ {
@ -1562,8 +1733,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/google/go-genproto"; url = "https://github.com/google/go-genproto";
rev = "bd91e49a0898"; rev = "ca5a22157cba";
sha256 = "1f5q04h03q6fksbfkhz13ai5849rkkb8xrmmi7cxs4lzsi6ixkg8"; sha256 = "0ldkh6f0g0wzfkp09ib15a62bmcbpsxj93saikqmc86242bcxij0";
}; };
} }
{ {
@ -1679,8 +1850,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/dominikh/go-tools"; url = "https://github.com/dominikh/go-tools";
rev = "ea95bdfd59fc"; rev = "v0.0.1-2019.2.3";
sha256 = "1763nw7pwpzkvzfnm63dgzcgbq9hwmq5l1nffchnhh77vgkaq4ic"; sha256 = "1rwwahmbs4dwxncwjj56likir1kps9937vm2id3rygxzzla40zal";
};
}
{
goPackagePath = "rsc.io/binaryregexp";
fetch = {
type = "git";
url = "https://github.com/rsc/binaryregexp";
rev = "v0.2.0";
sha256 = "1kar0myy85waw418zslviwx8846zj0m9cmqkxjx0fvgjdi70nc4b";
}; };
} }
] ]

View file

@ -247,15 +247,15 @@
version = "1.7.0"; version = "1.7.0";
}; };
gitlab-gollum-lib = { gitlab-gollum-lib = {
dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"]; dependencies = ["gemojione" "github-markup" "gitlab-gollum-rugged_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "13m26b32iznp0lbq984dijx7n4ckg99zckwp80gv1knq8n0bpfbf"; sha256 = "0dwrggw38wkadm9i1q8bj15lf0ik5z6qlbbggkgcvmbxb0a4hrmx";
type = "gem"; type = "gem";
}; };
version = "4.2.7.7"; version = "4.2.7.8";
}; };
gitlab-gollum-rugged_adapter = { gitlab-gollum-rugged_adapter = {
dependencies = ["mime-types" "rugged"]; dependencies = ["mime-types" "rugged"];
@ -268,15 +268,6 @@
}; };
version = "0.4.4.2"; version = "0.4.4.2";
}; };
gitlab-grit = {
dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
type = "gem";
};
version = "2.8.2";
};
gitlab-labkit = { gitlab-labkit = {
dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing" "redis"]; dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing" "redis"];
groups = ["default"]; groups = ["default"];
@ -298,24 +289,15 @@
}; };
version = "1.7.0"; version = "1.7.0";
}; };
gollum-grit_adapter = {
dependencies = ["gitlab-grit"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
type = "gem";
};
version = "1.0.1";
};
google-protobuf = { google-protobuf = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0by3289irdklb9gjqw41fq6mg6yja3iyzh99dj8p8z9l4brllqn4"; sha256 = "1swxvka4qcfa986qr5d3hxqlcsraxfb6fsc0mf2ngxmq15wad8br";
type = "gem"; type = "gem";
}; };
version = "3.8.0"; version = "3.11.4";
}; };
googleapis-common-protos-types = { googleapis-common-protos-types = {
dependencies = ["google-protobuf"]; dependencies = ["google-protobuf"];
@ -334,10 +316,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "18wikj9qd4jb4lks55cs2cf3q7fifnanm9z9ywnxhpj57vbnilpf"; sha256 = "0jbfnsdvb9hbqgkh2qkckzxvdwcbhdkwwvlnc5mb8679hxz7b7bs";
type = "gem"; type = "gem";
}; };
version = "1.24.0"; version = "1.27.0";
}; };
hashdiff = { hashdiff = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
@ -563,18 +545,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1pnks149x0fzgqiw53qlmvcd8bi746cxdw03sjljby5s97p1fskn"; sha256 = "0iirjc36irgwpfb58jdf9gli382cj893y9caqhxas8anpzzlikgc";
type = "gem"; type = "gem";
}; };
version = "2.6.3.0"; version = "2.7.0.5";
};
posix-spawn = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
type = "gem";
};
version = "0.3.13";
}; };
proc_to_ast = { proc_to_ast = {
dependencies = ["coderay" "parser" "unparser"]; dependencies = ["coderay" "parser" "unparser"];
@ -695,10 +669,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1ipgdir89a6pp1zscl2fkb99pppa7c513pk4wvis157bn8p9hlrx"; sha256 = "1n9h0ls2a2zq0bcsw31wxci1wdxb8s3vglfadxpcs6b04vkf6nqq";
type = "gem"; type = "gem";
}; };
version = "3.15.0"; version = "3.18.0";
}; };
rspec = { rspec = {
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
@ -908,10 +882,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "03vjj74kj86vlazhiclf63kf6gajs66k8ni34q70fdhf97d7b60c"; sha256 = "0qg1apxlnf4kxfj9jpm6hhv73jsncbs4zpsgyan32p5r331q1gmx";
type = "gem"; type = "gem";
}; };
version = "0.4.5"; version = "0.4.7";
}; };
vcr = { vcr = {
source = { source = {

View file

@ -2,12 +2,12 @@
buildGoPackage rec { buildGoPackage rec {
pname = "gitlab-shell"; pname = "gitlab-shell";
version = "11.0.0"; version = "12.2.0";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitlab-shell"; repo = "gitlab-shell";
rev = "v${version}"; rev = "v${version}";
sha256 = "1ca4yil8gp1cm7w939irp1x2y907z2mkdqiap8ik8mqp8svv1m44"; sha256 = "0zjpjk7iv083ys11sn3hiqawp09zgi9hhhv4hdh13axaw9ld340v";
}; };
buildInputs = [ ruby ]; buildInputs = [ ruby ];

View file

@ -3,13 +3,13 @@
buildGoPackage rec { buildGoPackage rec {
pname = "gitlab-workhorse"; pname = "gitlab-workhorse";
version = "8.21.2"; version = "8.30.2";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitlab-workhorse"; repo = "gitlab-workhorse";
rev = "v${version}"; rev = "v${version}";
sha256 = "065yy8zfxahpybk3mbvc492by1lvssqcbqm8i4yp09m669rk239w"; sha256 = "1ws59ry16kx4nqp92xcqw3fri570pvpdgvy822ndi7rybw5xij7p";
}; };
goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse"; goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";

View file

@ -5,8 +5,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://code.googlesource.com/gocloud"; url = "https://code.googlesource.com/gocloud";
rev = "v0.26.0"; rev = "v0.50.0";
sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1"; sha256 = "0pbz5migljd5whxh6z1w79cwx93n85mcs3x1bckl27yzaa4lvqsl";
}; };
} }
{ {
@ -18,6 +18,15 @@
sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6"; sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
}; };
} }
{
goPackagePath = "github.com/BurntSushi/xgb";
fetch = {
type = "git";
url = "https://github.com/BurntSushi/xgb";
rev = "27f122750802";
sha256 = "18lp2x8f5bljvlz0r7xn744f0c9rywjsb9ifiszqqdcpwhsa0kvj";
};
}
{ {
goPackagePath = "github.com/FZambia/sentinel"; goPackagePath = "github.com/FZambia/sentinel";
fetch = { fetch = {
@ -108,6 +117,33 @@
sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4"; sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
}; };
} }
{
goPackagePath = "github.com/chzyer/logex";
fetch = {
type = "git";
url = "https://github.com/chzyer/logex";
rev = "v1.1.10";
sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
};
}
{
goPackagePath = "github.com/chzyer/readline";
fetch = {
type = "git";
url = "https://github.com/chzyer/readline";
rev = "2972be24d48e";
sha256 = "104q8dazj8yf6b089jjr82fy9h1g80zyyzvp3g8b44a7d8ngjj6r";
};
}
{
goPackagePath = "github.com/chzyer/test";
fetch = {
type = "git";
url = "https://github.com/chzyer/test";
rev = "a1ea475d72b1";
sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
};
}
{ {
goPackagePath = "github.com/client9/misspell"; goPackagePath = "github.com/client9/misspell";
fetch = { fetch = {
@ -270,6 +306,15 @@
sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp"; sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
}; };
} }
{
goPackagePath = "github.com/go-gl/glfw";
fetch = {
type = "git";
url = "https://github.com/go-gl/glfw";
rev = "12ad95a8df72";
sha256 = "0ahw4a1lk7wqn6m0sjngsv2zc08kxxj259ai6g4kf11lmidszm9s";
};
}
{ {
goPackagePath = "github.com/go-kit/kit"; goPackagePath = "github.com/go-kit/kit";
fetch = { fetch = {
@ -333,6 +378,15 @@
sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30"; sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
}; };
} }
{
goPackagePath = "github.com/golang/groupcache";
fetch = {
type = "git";
url = "https://github.com/golang/groupcache";
rev = "215e87163ea7";
sha256 = "07555csk49ara636bhl2vbzziayls3qks8964z0q29g065zliy9j";
};
}
{ {
goPackagePath = "github.com/golang/lint"; goPackagePath = "github.com/golang/lint";
fetch = { fetch = {
@ -347,8 +401,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/golang/mock"; url = "https://github.com/golang/mock";
rev = "v1.1.1"; rev = "v1.3.1";
sha256 = "0ap8wb6pdl6ccmdb43advjll2ly4sz26wsc3axw0hbrjrybybzgy"; sha256 = "1wnfa8njxdym1qb664dmfnkpm4pmqy22hqjlqpwaaiqhglb5g9d1";
}; };
} }
{ {
@ -369,13 +423,22 @@
sha256 = "1kg7s8027b4g1sfw0v3nh30c15j407kv684s53gg281r807dnfpk"; sha256 = "1kg7s8027b4g1sfw0v3nh30c15j407kv684s53gg281r807dnfpk";
}; };
} }
{
goPackagePath = "github.com/google/btree";
fetch = {
type = "git";
url = "https://github.com/google/btree";
rev = "v1.0.0";
sha256 = "0ba430m9fbnagacp57krgidsyrgp3ycw5r7dj71brgp5r52g82p6";
};
}
{ {
goPackagePath = "github.com/google/go-cmp"; goPackagePath = "github.com/google/go-cmp";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/google/go-cmp"; url = "https://github.com/google/go-cmp";
rev = "v0.3.1"; rev = "v0.4.0";
sha256 = "1caw49i0plkjxir7kdf5qhwls3krqwfmi7g4h392rdfwi3kfahx1"; sha256 = "1x5pvl3fb5sbyng7i34431xycnhmx8xx94gq2n19g6p0vz68z2v2";
}; };
} }
{ {
@ -387,6 +450,24 @@
sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz"; sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
}; };
} }
{
goPackagePath = "github.com/google/martian";
fetch = {
type = "git";
url = "https://github.com/google/martian";
rev = "v2.1.0";
sha256 = "197hil6vrjk50b9wvwyzf61csid83whsjj6ik8mc9r2lryxlyyrp";
};
}
{
goPackagePath = "github.com/google/pprof";
fetch = {
type = "git";
url = "https://github.com/google/pprof";
rev = "d4f498aebedc";
sha256 = "1r4pn70yy5vfl38jx9v8224n7jkhcm5wg28vv48izgznlgv7h024";
};
}
{ {
goPackagePath = "github.com/google/renameio"; goPackagePath = "github.com/google/renameio";
fetch = { fetch = {
@ -405,6 +486,15 @@
sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb"; sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
}; };
} }
{
goPackagePath = "github.com/googleapis/gax-go";
fetch = {
type = "git";
url = "https://github.com/googleapis/gax-go";
rev = "v2.0.5";
sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
};
}
{ {
goPackagePath = "github.com/gopherjs/gopherjs"; goPackagePath = "github.com/gopherjs/gopherjs";
fetch = { fetch = {
@ -450,6 +540,15 @@
sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl"; sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
}; };
} }
{
goPackagePath = "github.com/hashicorp/golang-lru";
fetch = {
type = "git";
url = "https://github.com/hashicorp/golang-lru";
rev = "v0.5.1";
sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
};
}
{ {
goPackagePath = "github.com/hpcloud/tail"; goPackagePath = "github.com/hpcloud/tail";
fetch = { fetch = {
@ -459,6 +558,15 @@
sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0"; sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
}; };
} }
{
goPackagePath = "github.com/ianlancetaylor/demangle";
fetch = {
type = "git";
url = "https://github.com/ianlancetaylor/demangle";
rev = "5e5cf60278f6";
sha256 = "1fhjk11cip9c3jyj1byz9z77n6n2rlxmyz0xjx1zpn1da3cvri75";
};
}
{ {
goPackagePath = "github.com/imkira/go-interpol"; goPackagePath = "github.com/imkira/go-interpol";
fetch = { fetch = {
@ -531,6 +639,15 @@
sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r"; sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
}; };
} }
{
goPackagePath = "github.com/jstemmer/go-junit-report";
fetch = {
type = "git";
url = "https://github.com/jstemmer/go-junit-report";
rev = "v0.9.1";
sha256 = "1knip80yir1cdsjlb3rzy0a4w3kl4ljpiciaz6hjzwqlfhnv7bkw";
};
}
{ {
goPackagePath = "github.com/jtolds/gls"; goPackagePath = "github.com/jtolds/gls";
fetch = { fetch = {
@ -905,8 +1022,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/prometheus/client_model"; url = "https://github.com/prometheus/client_model";
rev = "fd36f4220a90"; rev = "14fe0d1b01d4";
sha256 = "1bs5d72k361llflgl94c22n0w53j30rsfh84smgk8mbjbcmjsaa5"; sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
}; };
} }
{ {
@ -1193,8 +1310,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://gitlab.com/gitlab-org/labkit.git"; url = "https://gitlab.com/gitlab-org/labkit.git";
rev = "3253d7975ca7"; rev = "fac94cb428e6";
sha256 = "1q7vqcbwzgwk4n09jnzdh2filv1aqclw9bgf3qjr5qrfk7hby58s"; sha256 = "19wvfjij6zm88fxbx0cngr6ny4yh3fw469d6vlv741b37s07w3j0";
};
}
{
goPackagePath = "go.opencensus.io";
fetch = {
type = "git";
url = "https://github.com/census-instrumentation/opencensus-go";
rev = "v0.22.2";
sha256 = "0lz7fid63pdrcvyzk5kn7vlcva102h61igmw7pz824wvj9k3hy4q";
}; };
} }
{ {
@ -1211,8 +1337,26 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/crypto"; url = "https://go.googlesource.com/crypto";
rev = "4def268fd1a4"; rev = "87dc89f01550";
sha256 = "1bfsnari529gw34cz0zqk3d9mrkcj1ay35kangri8kbgll0ss5a6"; sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
};
}
{
goPackagePath = "golang.org/x/exp";
fetch = {
type = "git";
url = "https://go.googlesource.com/exp";
rev = "da58074b4299";
sha256 = "1pgvdbjm3n47505diw3mm2hisp9b9q2lyvgl9m6xh2wx83b0cj48";
};
}
{
goPackagePath = "golang.org/x/image";
fetch = {
type = "git";
url = "https://go.googlesource.com/image";
rev = "cff245a6509b";
sha256 = "0hiznlkiaay30acwvvyq8g6bm32r7bc6gv47pygrcxqpapasbz84";
}; };
} }
{ {
@ -1220,8 +1364,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/lint"; url = "https://go.googlesource.com/lint";
rev = "d0100b6bd8b3"; rev = "fdd1cda4f05f";
sha256 = "0b0amr9x4ji66iv9ayfx7zrfx52k1m5g66qfcxkgj80qrb1y2yn7"; sha256 = "0a23pc90fqar8sm1b480sls15ss20rqk13yrf63b6rnyd2c6z0x2";
};
}
{
goPackagePath = "golang.org/x/mobile";
fetch = {
type = "git";
url = "https://go.googlesource.com/mobile";
rev = "d2bd2a29d028";
sha256 = "1nv6vvhnjr01nx9y06q46ww87dppdwpbqrlsfg1xf2587wxl8xiv";
}; };
} }
{ {
@ -1229,8 +1382,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/mod"; url = "https://go.googlesource.com/mod";
rev = "4bf6d317e70e"; rev = "c90efee705ee";
sha256 = "19lg1ly3j31anx92p0hynic1gjk417wwxphfdrb2cq1c19kj3r17"; sha256 = "0i5md645rmcy5z5ij9ng428k9rz4g3k1kjy3blsq1264rn426gdf";
}; };
} }
{ {
@ -1238,8 +1391,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/net"; url = "https://go.googlesource.com/net";
rev = "d28f0bde5980"; rev = "6afb5195e5aa";
sha256 = "18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"; sha256 = "1aiz41q2yxgg3dxfkn33ff54vhaxbiwcps9j3ia1xx4cqxim38zw";
}; };
} }
{ {
@ -1247,8 +1400,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/oauth2"; url = "https://go.googlesource.com/oauth2";
rev = "d2e6202438be"; rev = "bf48bf16ab8d";
sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7"; sha256 = "1sirdib60zwmh93kf9qrx51r8544k1p9rs5mk0797wibz3m4mrdg";
}; };
} }
{ {
@ -1256,8 +1409,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/sync"; url = "https://go.googlesource.com/sync";
rev = "112230192c58"; rev = "cd5d95a43a6e";
sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn"; sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
}; };
} }
{ {
@ -1265,8 +1418,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/sys"; url = "https://go.googlesource.com/sys";
rev = "fde4db37ae7a"; rev = "d101bd2416d5";
sha256 = "16k4w4pzziq1kln18k5fg01qgk4hpzb5xsm7175kaky6d6gwyhg3"; sha256 = "1ksxf37b0ym21n8j29m3wgbaiw1kcjw3hgf88kipc1ry2j13l98p";
}; };
} }
{ {
@ -1274,8 +1427,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/text"; url = "https://go.googlesource.com/text";
rev = "v0.3.0"; rev = "v0.3.2";
sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19"; sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
};
}
{
goPackagePath = "golang.org/x/time";
fetch = {
type = "git";
url = "https://go.googlesource.com/time";
rev = "9d24e82272b4";
sha256 = "1f5nkr4vys2vbd8wrwyiq2f5wcaahhpxmia85d1gshcbqjqf8dkb";
}; };
} }
{ {
@ -1283,8 +1445,26 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/tools"; url = "https://go.googlesource.com/tools";
rev = "6e04913cbbac"; rev = "43d50277825c";
sha256 = "1314j8r4cp69a12nqdaljd06r6hmh3b1v4xyrz8prw6gx5jg7h3q"; sha256 = "1168q4da36wq9w2591iqzsfy5ymwfi2g46bv5dnyyspg155ld19k";
};
}
{
goPackagePath = "golang.org/x/xerrors";
fetch = {
type = "git";
url = "https://go.googlesource.com/xerrors";
rev = "9bdfabe68543";
sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
};
}
{
goPackagePath = "google.golang.org/api";
fetch = {
type = "git";
url = "https://code.googlesource.com/google-api-go-client";
rev = "v0.15.0";
sha256 = "1ljhwv5xsgsbqia70f35q19vwrsm47sh08ljbwdyfa867ff17qdh";
}; };
} }
{ {
@ -1292,8 +1472,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/golang/appengine"; url = "https://github.com/golang/appengine";
rev = "v1.1.0"; rev = "v1.6.5";
sha256 = "1pz202zszg8f35dk5pfhwgcdi3r6dx1l4yk6x6ly7nb4j45zi96x"; sha256 = "05hbq4cs7bqw0zl17bx8rzdkszid3nyl92100scg3jjrg70dhm7w";
}; };
} }
{ {
@ -1301,8 +1481,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/google/go-genproto"; url = "https://github.com/google/go-genproto";
rev = "bd91e49a0898"; rev = "ca5a22157cba";
sha256 = "1f5q04h03q6fksbfkhz13ai5849rkkb8xrmmi7cxs4lzsi6ixkg8"; sha256 = "0ldkh6f0g0wzfkp09ib15a62bmcbpsxj93saikqmc86242bcxij0";
}; };
} }
{ {
@ -1409,8 +1589,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/dominikh/go-tools"; url = "https://github.com/dominikh/go-tools";
rev = "v0.0.1-2019.2.2"; rev = "v0.0.1-2019.2.3";
sha256 = "1vndpwg797z2gw9h9378iq99aqy7nalqx82lgvcsaqnkypdmppnd"; sha256 = "1rwwahmbs4dwxncwjj56likir1kps9937vm2id3rygxzzla40zal";
};
}
{
goPackagePath = "rsc.io/binaryregexp";
fetch = {
type = "git";
url = "https://github.com/rsc/binaryregexp";
rev = "v0.2.0";
sha256 = "1kar0myy85waw418zslviwx8846zj0m9cmqkxjx0fvgjdi70nc4b";
}; };
} }
] ]

View file

@ -2,7 +2,7 @@ source 'https://rubygems.org'
gem 'rails', '6.0.2' gem 'rails', '6.0.2'
gem 'bootsnap', '~> 1.4' gem 'bootsnap', '~> 1.4.6'
# Improves copy-on-write performance for MRI # Improves copy-on-write performance for MRI
gem 'nakayoshi_fork', '~> 0.0.4' gem 'nakayoshi_fork', '~> 0.0.4'
@ -58,7 +58,7 @@ gem 'akismet', '~> 3.0'
gem 'invisible_captcha', '~> 0.12.1' gem 'invisible_captcha', '~> 0.12.1'
# Two-factor authentication # Two-factor authentication
gem 'devise-two-factor', '~> 3.0.0' gem 'devise-two-factor', '~> 3.1.0'
gem 'rqrcode-rails3', '~> 0.1.7' gem 'rqrcode-rails3', '~> 0.1.7'
gem 'attr_encrypted', '~> 3.1.0' gem 'attr_encrypted', '~> 3.1.0'
gem 'u2f', '~> 0.2.1' gem 'u2f', '~> 0.2.1'
@ -87,7 +87,7 @@ gem 'grape-entity', '~> 0.7.1'
gem 'rack-cors', '~> 1.0.6', require: 'rack/cors' gem 'rack-cors', '~> 1.0.6', require: 'rack/cors'
# GraphQL API # GraphQL API
gem 'graphql', '~> 1.9.12' gem 'graphql', '~> 1.10.5'
# NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab/issues/31771 # NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab/issues/31771
# TODO: remove app/views/graphiql/rails/editors/show.html.erb when https://github.com/rmosolgo/graphiql-rails/pull/71 is released: # TODO: remove app/views/graphiql/rails/editors/show.html.erb when https://github.com/rmosolgo/graphiql-rails/pull/71 is released:
# https://gitlab.com/gitlab-org/gitlab/issues/31747 # https://gitlab.com/gitlab-org/gitlab/issues/31747
@ -149,7 +149,7 @@ gem 'wikicloth', '0.8.1'
gem 'asciidoctor', '~> 2.0.10' gem 'asciidoctor', '~> 2.0.10'
gem 'asciidoctor-include-ext', '~> 0.3.1', require: false gem 'asciidoctor-include-ext', '~> 0.3.1', require: false
gem 'asciidoctor-plantuml', '0.0.10' gem 'asciidoctor-plantuml', '0.0.10'
gem 'rouge', '~> 3.15.0' gem 'rouge', '~> 3.18.0'
gem 'truncato', '~> 0.7.11' gem 'truncato', '~> 0.7.11'
gem 'bootstrap_form', '~> 4.2.0' gem 'bootstrap_form', '~> 4.2.0'
gem 'nokogiri', '~> 1.10.5' gem 'nokogiri', '~> 1.10.5'
@ -159,7 +159,7 @@ gem 'escape_utils', '~> 1.1'
gem 'icalendar' gem 'icalendar'
# Diffs # Diffs
gem 'diffy', '~> 3.1.0' gem 'diffy', '~> 3.3'
gem 'diff_match_patch', '~> 0.1.0' gem 'diff_match_patch', '~> 0.1.0'
# Application server # Application server
@ -171,7 +171,7 @@ group :unicorn do
end end
group :puma do group :puma do
gem 'gitlab-puma', '~> 4.3.1.gitlab.2', require: false gem 'gitlab-puma', '~> 4.3.3.gitlab.2', require: false
gem 'gitlab-puma_worker_killer', '~> 0.1.1.gitlab.1', require: false gem 'gitlab-puma_worker_killer', '~> 0.1.1.gitlab.1', require: false
gem 'rack-timeout', require: false gem 'rack-timeout', require: false
end end
@ -237,7 +237,7 @@ gem 'atlassian-jwt', '~> 0.2.0'
gem 'flowdock', '~> 0.7' gem 'flowdock', '~> 0.7'
# Slack integration # Slack integration
gem 'slack-notifier', '~> 1.5.1' gem 'slack-messenger', '~> 2.3.3'
# Hangouts Chat integration # Hangouts Chat integration
gem 'hangouts-chat', '~> 0.0.5' gem 'hangouts-chat', '~> 0.0.5'
@ -301,7 +301,7 @@ gem 'sentry-raven', '~> 2.9'
gem 'premailer-rails', '~> 1.10.3' gem 'premailer-rails', '~> 1.10.3'
# LabKit: Tracing and Correlation # LabKit: Tracing and Correlation
gem 'gitlab-labkit', '0.9.1' gem 'gitlab-labkit', '0.12.0'
# I18n # I18n
gem 'ruby_parser', '~> 3.8', require: false gem 'ruby_parser', '~> 3.8', require: false
@ -355,7 +355,7 @@ group :development, :test do
gem 'database_cleaner', '~> 1.7.0' gem 'database_cleaner', '~> 1.7.0'
gem 'factory_bot_rails', '~> 5.1.0' gem 'factory_bot_rails', '~> 5.1.0'
gem 'rspec-rails', '~> 4.0.0.beta3' gem 'rspec-rails', '~> 4.0.0.beta4'
# Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826) # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
gem 'minitest', '~> 5.11.0' gem 'minitest', '~> 5.11.0'
@ -366,7 +366,7 @@ group :development, :test do
gem 'spring', '~> 2.0.0' gem 'spring', '~> 2.0.0'
gem 'spring-commands-rspec', '~> 1.0.4' gem 'spring-commands-rspec', '~> 1.0.4'
gem 'gitlab-styles', '~> 3.1.0', require: false gem 'gitlab-styles', '~> 3.2.0', require: false
# Pin these dependencies, otherwise a new rule could break the CI pipelines # Pin these dependencies, otherwise a new rule could break the CI pipelines
gem 'rubocop', '~> 0.74.0' gem 'rubocop', '~> 0.74.0'
gem 'rubocop-performance', '~> 1.4.1' gem 'rubocop-performance', '~> 1.4.1'
@ -374,8 +374,8 @@ group :development, :test do
gem 'scss_lint', '~> 0.56.0', require: false gem 'scss_lint', '~> 0.56.0', require: false
gem 'haml_lint', '~> 0.34.0', require: false gem 'haml_lint', '~> 0.34.0', require: false
gem 'simplecov', '~> 0.16.1', require: false gem 'simplecov', '~> 0.18.5', require: false
gem 'bundler-audit', '~> 0.5.0', require: false gem 'bundler-audit', '~> 0.6.1', require: false
gem 'benchmark-ips', '~> 2.3.0', require: false gem 'benchmark-ips', '~> 2.3.0', require: false
@ -383,7 +383,7 @@ group :development, :test do
gem 'simple_po_parser', '~> 1.1.2', require: false gem 'simple_po_parser', '~> 1.1.2', require: false
gem 'timecop', '~> 0.8.0' gem 'timecop', '~> 0.9.1'
gem 'png_quantizator', '~> 0.2.1', require: false gem 'png_quantizator', '~> 0.2.1', require: false
@ -399,7 +399,6 @@ group :test do
gem 'fuubar', '~> 2.2.0' gem 'fuubar', '~> 2.2.0'
gem 'rspec-retry', '~> 0.6.1' gem 'rspec-retry', '~> 0.6.1'
gem 'rspec_profiling', '~> 0.0.5' gem 'rspec_profiling', '~> 0.0.5'
gem 'rspec-set', '~> 0.1.3'
gem 'rspec-parameterized', require: false gem 'rspec-parameterized', require: false
gem 'capybara', '~> 3.22.0' gem 'capybara', '~> 3.22.0'
@ -419,12 +418,13 @@ end
gem 'octokit', '~> 4.15' gem 'octokit', '~> 4.15'
gem 'mail_room', '~> 0.10.0' # https://gitlab.com/gitlab-org/gitlab/issues/207207
gem 'gitlab-mail_room', '~> 0.0.3', require: 'mail_room'
gem 'email_reply_trimmer', '~> 0.1' gem 'email_reply_trimmer', '~> 0.1'
gem 'html2text' gem 'html2text'
gem 'ruby-prof', '~> 1.0.0' gem 'ruby-prof', '~> 1.3.0'
gem 'stackprof', '~> 0.2.15', require: false gem 'stackprof', '~> 0.2.15', require: false
gem 'rbtrace', '~> 0.4', require: false gem 'rbtrace', '~> 0.4', require: false
gem 'memory_profiler', '~> 0.9', require: false gem 'memory_profiler', '~> 0.9', require: false
@ -455,7 +455,7 @@ group :ed25519 do
end end
# Gitaly GRPC protocol definitions # Gitaly GRPC protocol definitions
gem 'gitaly', '~> 1.86.0' gem 'gitaly', '~> 12.9.0.pre.rc4'
gem 'grpc', '~> 1.24.0' gem 'grpc', '~> 1.24.0'
@ -492,3 +492,6 @@ gem 'erubi', '~> 1.9.0'
# Monkey-patched in `config/initializers/mail_encoding_patch.rb` # Monkey-patched in `config/initializers/mail_encoding_patch.rb`
# See https://gitlab.com/gitlab-org/gitlab/issues/197386 # See https://gitlab.com/gitlab-org/gitlab/issues/197386
gem 'mail', '= 2.7.1' gem 'mail', '= 2.7.1'
# File encryption
gem 'lockbox', '~> 0.3.3'

View file

@ -123,7 +123,7 @@ GEM
binding_ninja (0.2.3) binding_ninja (0.2.3)
binding_of_caller (0.8.0) binding_of_caller (0.8.0)
debug_inspector (>= 0.0.1) debug_inspector (>= 0.0.1)
bootsnap (1.4.5) bootsnap (1.4.6)
msgpack (~> 1.0) msgpack (~> 1.0)
bootstrap_form (4.2.0) bootstrap_form (4.2.0)
actionpack (>= 5.0) actionpack (>= 5.0)
@ -134,8 +134,8 @@ GEM
bullet (6.0.2) bullet (6.0.2)
activesupport (>= 3.0.0) activesupport (>= 3.0.0)
uniform_notifier (~> 1.11) uniform_notifier (~> 1.11)
bundler-audit (0.5.0) bundler-audit (0.6.1)
bundler (~> 1.2) bundler (>= 1.2.0, < 3)
thor (~> 0.18) thor (~> 0.18)
byebug (9.1.0) byebug (9.1.0)
capybara (3.22.0) capybara (3.22.0)
@ -211,15 +211,17 @@ GEM
declarative-option (0.1.0) declarative-option (0.1.0)
default_value_for (3.3.0) default_value_for (3.3.0)
activerecord (>= 3.2.0, < 6.1) activerecord (>= 3.2.0, < 6.1)
derailed_benchmarks (1.4.2) derailed_benchmarks (1.7.0)
benchmark-ips (~> 2) benchmark-ips (~> 2)
get_process_mem (~> 0) get_process_mem (~> 0)
heapy (~> 0) heapy (~> 0)
memory_profiler (~> 0) memory_profiler (~> 0)
mini_histogram (~> 0)
rack (>= 1) rack (>= 1)
rake (> 10, < 14) rake (> 10, < 14)
ruby-statistics (>= 2.1) ruby-statistics (>= 2.1)
thor (~> 0.19) thor (>= 0.19, < 2)
unicode_plot (>= 0.0.4, < 1.0.0)
descendants_tracker (0.0.4) descendants_tracker (0.0.4)
thread_safe (~> 0.3, >= 0.3.1) thread_safe (~> 0.3, >= 0.3.1)
device_detector (1.0.0) device_detector (1.0.0)
@ -229,18 +231,18 @@ GEM
railties (>= 4.1.0) railties (>= 4.1.0)
responders responders
warden (~> 1.2.3) warden (~> 1.2.3)
devise-two-factor (3.0.0) devise-two-factor (3.1.0)
activesupport activesupport (< 6.1)
attr_encrypted (>= 1.3, < 4, != 2) attr_encrypted (>= 1.3, < 4, != 2)
devise (~> 4.0) devise (~> 4.0)
railties railties (< 6.1)
rotp (~> 2.0) rotp (~> 2.0)
diff-lcs (1.3) diff-lcs (1.3)
diff_match_patch (0.1.0) diff_match_patch (0.1.0)
diffy (3.1.0) diffy (3.3.0)
discordrb-webhooks-blackst0ne (3.3.0) discordrb-webhooks-blackst0ne (3.3.0)
rest-client (~> 2.0) rest-client (~> 2.0)
docile (1.3.1) docile (1.3.2)
domain_name (0.5.20180417) domain_name (0.5.20180417)
unf (>= 0.0.5, < 1.0.0) unf (>= 0.0.5, < 1.0.0)
doorkeeper (5.0.2) doorkeeper (5.0.2)
@ -268,6 +270,7 @@ GEM
launchy (~> 2.1) launchy (~> 2.1)
mail (~> 2.7) mail (~> 2.7)
encryptor (3.0.0) encryptor (3.0.0)
enumerable-statistics (2.0.1)
equalizer (0.0.11) equalizer (0.0.11)
erubi (1.9.0) erubi (1.9.0)
escape_utils (1.2.1) escape_utils (1.2.1)
@ -299,7 +302,7 @@ GEM
fast_blank (1.0.0) fast_blank (1.0.0)
fast_gettext (1.6.0) fast_gettext (1.6.0)
ffaker (2.10.0) ffaker (2.10.0)
ffi (1.11.3) ffi (1.12.2)
ffi-compiler (1.0.1) ffi-compiler (1.0.1)
ffi (>= 1.0.0) ffi (>= 1.0.0)
rake rake
@ -375,12 +378,12 @@ GEM
po_to_json (>= 1.0.0) po_to_json (>= 1.0.0)
rails (>= 3.2.0) rails (>= 3.2.0)
git (1.5.0) git (1.5.0)
gitaly (1.86.0) gitaly (12.9.0.pre.rc4)
grpc (~> 1.0) grpc (~> 1.0)
github-markup (1.7.0) github-markup (1.7.0)
gitlab-chronic (0.10.5) gitlab-chronic (0.10.5)
numerizer (~> 0.2) numerizer (~> 0.2)
gitlab-labkit (0.9.1) gitlab-labkit (0.12.0)
actionpack (>= 5.0.0, < 6.1.0) actionpack (>= 5.0.0, < 6.1.0)
activesupport (>= 5.0.0, < 6.1.0) activesupport (>= 5.0.0, < 6.1.0)
grpc (~> 1.19) grpc (~> 1.19)
@ -388,16 +391,17 @@ GEM
opentracing (~> 0.4) opentracing (~> 0.4)
redis (> 3.0.0, < 5.0.0) redis (> 3.0.0, < 5.0.0)
gitlab-license (1.0.0) gitlab-license (1.0.0)
gitlab-mail_room (0.0.3)
gitlab-markup (1.7.0) gitlab-markup (1.7.0)
gitlab-net-dns (0.9.1) gitlab-net-dns (0.9.1)
gitlab-puma (4.3.1.gitlab.2) gitlab-puma (4.3.3.gitlab.2)
nio4r (~> 2.0) nio4r (~> 2.0)
gitlab-puma_worker_killer (0.1.1.gitlab.1) gitlab-puma_worker_killer (0.1.1.gitlab.1)
get_process_mem (~> 0.2) get_process_mem (~> 0.2)
gitlab-puma (>= 2.7, < 5) gitlab-puma (>= 2.7, < 5)
gitlab-sidekiq-fetcher (0.5.2) gitlab-sidekiq-fetcher (0.5.2)
sidekiq (~> 5) sidekiq (~> 5)
gitlab-styles (3.1.0) gitlab-styles (3.2.0)
rubocop (~> 0.74.0) rubocop (~> 0.74.0)
rubocop-gitlab-security (~> 0.1.0) rubocop-gitlab-security (~> 0.1.0)
rubocop-performance (~> 1.4.1) rubocop-performance (~> 1.4.1)
@ -433,7 +437,7 @@ GEM
multi_json (~> 1.11) multi_json (~> 1.11)
os (>= 0.9, < 2.0) os (>= 0.9, < 2.0)
signet (~> 0.7) signet (~> 0.7)
gpgme (2.0.19) gpgme (2.0.20)
mini_portile2 (~> 2.3) mini_portile2 (~> 2.3)
grape (1.1.0) grape (1.1.0)
activesupport activesupport
@ -455,7 +459,7 @@ GEM
graphiql-rails (1.4.10) graphiql-rails (1.4.10)
railties railties
sprockets-rails sprockets-rails
graphql (1.9.12) graphql (1.10.5)
graphql-docs (1.6.0) graphql-docs (1.6.0)
commonmarker (~> 0.16) commonmarker (~> 0.16)
escape_utils (~> 1.2) escape_utils (~> 1.2)
@ -604,6 +608,7 @@ GEM
rb-inotify (~> 0.9, >= 0.9.7) rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2) ruby_dep (~> 1.2)
locale (2.1.2) locale (2.1.2)
lockbox (0.3.3)
lograge (0.10.0) lograge (0.10.0)
actionpack (>= 4) actionpack (>= 4)
activesupport (>= 4) activesupport (>= 4)
@ -616,7 +621,6 @@ GEM
lumberjack (1.0.13) lumberjack (1.0.13)
mail (2.7.1) mail (2.7.1)
mini_mime (>= 0.1.1) mini_mime (>= 0.1.1)
mail_room (0.10.0)
marcel (0.3.3) marcel (0.3.3)
mimemagic (~> 0.3.2) mimemagic (~> 0.3.2)
marginalia (1.8.0) marginalia (1.8.0)
@ -631,6 +635,7 @@ GEM
mime-types-data (~> 3.2015) mime-types-data (~> 3.2015)
mime-types-data (3.2019.0331) mime-types-data (3.2019.0331)
mimemagic (0.3.3) mimemagic (0.3.3)
mini_histogram (0.1.3)
mini_magick (4.9.5) mini_magick (4.9.5)
mini_mime (1.0.2) mini_mime (1.0.2)
mini_portile2 (2.4.0) mini_portile2 (2.4.0)
@ -750,7 +755,7 @@ GEM
orm_adapter (0.5.0) orm_adapter (0.5.0)
os (1.0.0) os (1.0.0)
parallel (1.19.1) parallel (1.19.1)
parser (2.6.5.0) parser (2.7.0.4)
ast (~> 2.4.0) ast (~> 2.4.0)
parslet (1.8.2) parslet (1.8.2)
peek (1.1.0) peek (1.1.0)
@ -889,41 +894,40 @@ GEM
retriable (3.1.2) retriable (3.1.2)
rinku (2.0.0) rinku (2.0.0)
rotp (2.1.2) rotp (2.1.2)
rouge (3.15.0) rouge (3.18.0)
rqrcode (0.7.0) rqrcode (0.7.0)
chunky_png chunky_png
rqrcode-rails3 (0.1.7) rqrcode-rails3 (0.1.7)
rqrcode (>= 0.4.2) rqrcode (>= 0.4.2)
rspec (3.8.0) rspec (3.9.0)
rspec-core (~> 3.8.0) rspec-core (~> 3.9.0)
rspec-expectations (~> 3.8.0) rspec-expectations (~> 3.9.0)
rspec-mocks (~> 3.8.0) rspec-mocks (~> 3.9.0)
rspec-core (3.8.2) rspec-core (3.9.1)
rspec-support (~> 3.8.0) rspec-support (~> 3.9.1)
rspec-expectations (3.8.4) rspec-expectations (3.9.0)
diff-lcs (>= 1.2.0, < 2.0) diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0) rspec-support (~> 3.9.0)
rspec-mocks (3.8.1) rspec-mocks (3.9.1)
diff-lcs (>= 1.2.0, < 2.0) diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0) rspec-support (~> 3.9.0)
rspec-parameterized (0.4.2) rspec-parameterized (0.4.2)
binding_ninja (>= 0.2.3) binding_ninja (>= 0.2.3)
parser parser
proc_to_ast proc_to_ast
rspec (>= 2.13, < 4) rspec (>= 2.13, < 4)
unparser unparser
rspec-rails (4.0.0.beta3) rspec-rails (4.0.0.beta4)
actionpack (>= 4.2) actionpack (>= 4.2)
activesupport (>= 4.2) activesupport (>= 4.2)
railties (>= 4.2) railties (>= 4.2)
rspec-core (~> 3.8) rspec-core (~> 3.9)
rspec-expectations (~> 3.8) rspec-expectations (~> 3.9)
rspec-mocks (~> 3.8) rspec-mocks (~> 3.9)
rspec-support (~> 3.8) rspec-support (~> 3.9)
rspec-retry (0.6.1) rspec-retry (0.6.1)
rspec-core (> 3.3) rspec-core (> 3.3)
rspec-set (0.1.3) rspec-support (3.9.2)
rspec-support (3.8.2)
rspec_junit_formatter (0.4.1) rspec_junit_formatter (0.4.1)
rspec-core (>= 2, < 4, != 2.12.0) rspec-core (>= 2, < 4, != 2.12.0)
rspec_profiling (0.0.5) rspec_profiling (0.0.5)
@ -951,11 +955,11 @@ GEM
i18n i18n
ruby-fogbugz (0.2.1) ruby-fogbugz (0.2.1)
crack (~> 0.4) crack (~> 0.4)
ruby-prof (1.0.0) ruby-prof (1.3.1)
ruby-progressbar (1.10.1) ruby-progressbar (1.10.1)
ruby-saml (1.7.2) ruby-saml (1.7.2)
nokogiri (>= 1.5.10) nokogiri (>= 1.5.10)
ruby-statistics (2.1.1) ruby-statistics (2.1.2)
ruby_dep (1.5.0) ruby_dep (1.5.0)
ruby_parser (3.13.1) ruby_parser (3.13.1)
sexp_processor (~> 4.9) sexp_processor (~> 4.9)
@ -1015,13 +1019,12 @@ GEM
jwt (>= 1.5, < 3.0) jwt (>= 1.5, < 3.0)
multi_json (~> 1.10) multi_json (~> 1.10)
simple_po_parser (1.1.2) simple_po_parser (1.1.2)
simplecov (0.16.1) simplecov (0.18.5)
docile (~> 1.1) docile (~> 1.1)
json (>= 1.8, < 3) simplecov-html (~> 0.11)
simplecov-html (~> 0.10.0) simplecov-html (0.12.2)
simplecov-html (0.10.2)
sixarm_ruby_unaccent (1.2.0) sixarm_ruby_unaccent (1.2.0)
slack-notifier (1.5.1) slack-messenger (2.3.3)
snowplow-tracker (0.6.1) snowplow-tracker (0.6.1)
contracts (~> 0.7, <= 0.11) contracts (~> 0.7, <= 0.11)
spring (2.0.2) spring (2.0.2)
@ -1065,7 +1068,7 @@ GEM
thread_safe (0.3.6) thread_safe (0.3.6)
thrift (0.11.0.0) thrift (0.11.0.0)
tilt (2.0.10) tilt (2.0.10)
timecop (0.8.1) timecop (0.9.1)
timfel-krb5-auth (0.8.3) timfel-krb5-auth (0.8.3)
toml (0.2.0) toml (0.2.0)
parslet (~> 1.8.0) parslet (~> 1.8.0)
@ -1085,6 +1088,8 @@ GEM
unf_ext unf_ext
unf_ext (0.0.7.5) unf_ext (0.0.7.5)
unicode-display_width (1.6.0) unicode-display_width (1.6.0)
unicode_plot (0.0.4)
enumerable-statistics (>= 2.0.1)
unicode_utils (1.4.0) unicode_utils (1.4.0)
unicorn (5.4.1) unicorn (5.4.1)
kgio (~> 2.6) kgio (~> 2.6)
@ -1095,13 +1100,13 @@ GEM
uniform_notifier (1.13.0) uniform_notifier (1.13.0)
unleash (0.1.5) unleash (0.1.5)
murmurhash3 (~> 0.1.6) murmurhash3 (~> 0.1.6)
unparser (0.4.5) unparser (0.4.7)
abstract_type (~> 0.0.7) abstract_type (~> 0.0.7)
adamantium (~> 0.2.0) adamantium (~> 0.2.0)
concord (~> 0.1.5) concord (~> 0.1.5)
diff-lcs (~> 1.3) diff-lcs (~> 1.3)
equalizer (~> 0.0.9) equalizer (~> 0.0.9)
parser (~> 2.6.3) parser (>= 2.6.5)
procto (~> 0.0.2) procto (~> 0.0.2)
validate_email (0.1.6) validate_email (0.1.6)
activemodel (>= 3.0) activemodel (>= 3.0)
@ -1171,12 +1176,12 @@ DEPENDENCIES
benchmark-memory (~> 0.1) benchmark-memory (~> 0.1)
better_errors (~> 2.5.0) better_errors (~> 2.5.0)
binding_of_caller (~> 0.8.0) binding_of_caller (~> 0.8.0)
bootsnap (~> 1.4) bootsnap (~> 1.4.6)
bootstrap_form (~> 4.2.0) bootstrap_form (~> 4.2.0)
brakeman (~> 4.2) brakeman (~> 4.2)
browser (~> 2.5) browser (~> 2.5)
bullet (~> 6.0.2) bullet (~> 6.0.2)
bundler-audit (~> 0.5.0) bundler-audit (~> 0.6.1)
capybara (~> 3.22.0) capybara (~> 3.22.0)
capybara-screenshot (~> 1.0.22) capybara-screenshot (~> 1.0.22)
carrierwave (~> 1.3) carrierwave (~> 1.3)
@ -1193,9 +1198,9 @@ DEPENDENCIES
derailed_benchmarks derailed_benchmarks
device_detector device_detector
devise (~> 4.6) devise (~> 4.6)
devise-two-factor (~> 3.0.0) devise-two-factor (~> 3.1.0)
diff_match_patch (~> 0.1.0) diff_match_patch (~> 0.1.0)
diffy (~> 3.1.0) diffy (~> 3.3)
discordrb-webhooks-blackst0ne (~> 3.3) discordrb-webhooks-blackst0ne (~> 3.3)
doorkeeper (~> 5.0.2) doorkeeper (~> 5.0.2)
doorkeeper-openid_connect (~> 1.6.3) doorkeeper-openid_connect (~> 1.6.3)
@ -1230,17 +1235,18 @@ DEPENDENCIES
gettext (~> 3.2.2) gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0) gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.3) gettext_i18n_rails_js (~> 1.3)
gitaly (~> 1.86.0) gitaly (~> 12.9.0.pre.rc4)
github-markup (~> 1.7.0) github-markup (~> 1.7.0)
gitlab-chronic (~> 0.10.5) gitlab-chronic (~> 0.10.5)
gitlab-labkit (= 0.9.1) gitlab-labkit (= 0.12.0)
gitlab-license (~> 1.0) gitlab-license (~> 1.0)
gitlab-mail_room (~> 0.0.3)
gitlab-markup (~> 1.7.0) gitlab-markup (~> 1.7.0)
gitlab-net-dns (~> 0.9.1) gitlab-net-dns (~> 0.9.1)
gitlab-puma (~> 4.3.1.gitlab.2) gitlab-puma (~> 4.3.3.gitlab.2)
gitlab-puma_worker_killer (~> 0.1.1.gitlab.1) gitlab-puma_worker_killer (~> 0.1.1.gitlab.1)
gitlab-sidekiq-fetcher (= 0.5.2) gitlab-sidekiq-fetcher (= 0.5.2)
gitlab-styles (~> 3.1.0) gitlab-styles (~> 3.2.0)
gitlab_chronic_duration (~> 0.10.6.2) gitlab_chronic_duration (~> 0.10.6.2)
gitlab_omniauth-ldap (~> 2.1.1) gitlab_omniauth-ldap (~> 2.1.1)
gon (~> 6.2) gon (~> 6.2)
@ -1252,7 +1258,7 @@ DEPENDENCIES
grape-path-helpers (~> 1.2) grape-path-helpers (~> 1.2)
grape_logging (~> 1.7) grape_logging (~> 1.7)
graphiql-rails (~> 1.4.10) graphiql-rails (~> 1.4.10)
graphql (~> 1.9.12) graphql (~> 1.10.5)
graphql-docs (~> 1.6.0) graphql-docs (~> 1.6.0)
grpc (~> 1.24.0) grpc (~> 1.24.0)
gssapi gssapi
@ -1280,11 +1286,11 @@ DEPENDENCIES
license_finder (~> 5.4) license_finder (~> 5.4)
licensee (~> 8.9) licensee (~> 8.9)
liquid (~> 4.0) liquid (~> 4.0)
lockbox (~> 0.3.3)
lograge (~> 0.5) lograge (~> 0.5)
loofah (~> 2.2) loofah (~> 2.2)
lru_redux lru_redux
mail (= 2.7.1) mail (= 2.7.1)
mail_room (~> 0.10.0)
marginalia (~> 1.8.0) marginalia (~> 1.8.0)
memory_profiler (~> 0.9) memory_profiler (~> 0.9)
method_source (~> 0.8) method_source (~> 0.8)
@ -1347,19 +1353,18 @@ DEPENDENCIES
request_store (~> 1.3) request_store (~> 1.3)
responders (~> 3.0) responders (~> 3.0)
retriable (~> 3.1.2) retriable (~> 3.1.2)
rouge (~> 3.15.0) rouge (~> 3.18.0)
rqrcode-rails3 (~> 0.1.7) rqrcode-rails3 (~> 0.1.7)
rspec-parameterized rspec-parameterized
rspec-rails (~> 4.0.0.beta3) rspec-rails (~> 4.0.0.beta4)
rspec-retry (~> 0.6.1) rspec-retry (~> 0.6.1)
rspec-set (~> 0.1.3)
rspec_junit_formatter rspec_junit_formatter
rspec_profiling (~> 0.0.5) rspec_profiling (~> 0.0.5)
rubocop (~> 0.74.0) rubocop (~> 0.74.0)
rubocop-performance (~> 1.4.1) rubocop-performance (~> 1.4.1)
rubocop-rspec (~> 1.37.0) rubocop-rspec (~> 1.37.0)
ruby-fogbugz (~> 0.2.1) ruby-fogbugz (~> 0.2.1)
ruby-prof (~> 1.0.0) ruby-prof (~> 1.3.0)
ruby-progressbar ruby-progressbar
ruby_parser (~> 3.8) ruby_parser (~> 3.8)
rubyzip (~> 2.0.0) rubyzip (~> 2.0.0)
@ -1375,8 +1380,8 @@ DEPENDENCIES
sidekiq (~> 5.2.7) sidekiq (~> 5.2.7)
sidekiq-cron (~> 1.0) sidekiq-cron (~> 1.0)
simple_po_parser (~> 1.1.2) simple_po_parser (~> 1.1.2)
simplecov (~> 0.16.1) simplecov (~> 0.18.5)
slack-notifier (~> 1.5.1) slack-messenger (~> 2.3.3)
snowplow-tracker (~> 0.6.1) snowplow-tracker (~> 0.6.1)
spring (~> 2.0.0) spring (~> 2.0.0)
spring-commands-rspec (~> 1.0.4) spring-commands-rspec (~> 1.0.4)
@ -1387,7 +1392,7 @@ DEPENDENCIES
sys-filesystem (~> 1.1.6) sys-filesystem (~> 1.1.6)
test-prof (~> 0.10.0) test-prof (~> 0.10.0)
thin (~> 1.7.0) thin (~> 1.7.0)
timecop (~> 0.8.0) timecop (~> 0.9.1)
toml-rb (~> 1.0.0) toml-rb (~> 1.0.0)
truncato (~> 0.7.11) truncato (~> 0.7.11)
u2f (~> 0.2.1) u2f (~> 0.2.1)

View file

@ -505,10 +505,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0dyjk2irr0d3d3am2dzipg1zyv2nz69a16g8xkprxfa0na07wvs0"; sha256 = "0bz62p9vc7lcrmzhiz4pf7myww086mq287cw3jjj7fyc7jhmamw0";
type = "gem"; type = "gem";
}; };
version = "1.4.5"; version = "1.4.6";
}; };
bootstrap_form = { bootstrap_form = {
dependencies = ["actionpack" "activemodel"]; dependencies = ["actionpack" "activemodel"];
@ -568,10 +568,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1gr7k6m9fda7m66irxzydm8v9xbmlryjj65cagwm1zyi5f317srb"; sha256 = "0pm22xpn3xyymsainixnrk8v3l3xi9bzwkjkspx00cfzp84xvxbq";
type = "gem"; type = "gem";
}; };
version = "0.5.0"; version = "0.6.1";
}; };
byebug = { byebug = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
@ -950,15 +950,15 @@
version = "3.3.0"; version = "3.3.0";
}; };
derailed_benchmarks = { derailed_benchmarks = {
dependencies = ["benchmark-ips" "get_process_mem" "heapy" "memory_profiler" "rack" "rake" "ruby-statistics" "thor"]; dependencies = ["benchmark-ips" "get_process_mem" "heapy" "memory_profiler" "mini_histogram" "rack" "rake" "ruby-statistics" "thor" "unicode_plot"];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1bsxrmrjhjvvxpl3sgq0c6yyzspazgmxcpdkfipqknd7p8r0hd53"; sha256 = "03lrvzvdjy6wyrnb3nw7nqn9jbhn6lncach58pj6m4l76b2n6jpr";
type = "gem"; type = "gem";
}; };
version = "1.4.2"; version = "1.7.0";
}; };
descendants_tracker = { descendants_tracker = {
dependencies = ["thread_safe"]; dependencies = ["thread_safe"];
@ -998,10 +998,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1pkldws5lga4mlv4xmcrfb0yivl6qad0l8qyb2hdb50adv6ny4gs"; sha256 = "0gzk7phrryxlq4k3jrcxm8faifmbqrbfxq7jx089ncsixwd69bn4";
type = "gem"; type = "gem";
}; };
version = "3.0.0"; version = "3.1.0";
}; };
diff-lcs = { diff-lcs = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
@ -1028,10 +1028,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1azibizfv91sjbzhjqj1pg2xcv8z9b8a7z6kb3wpl4hpj5hil5kj"; sha256 = "0qhx743lcx61r2d3925jk61c6r8clfjmpf5g93cdy5sq00ig76lh";
type = "gem"; type = "gem";
}; };
version = "3.1.0"; version = "3.3.0";
}; };
discordrb-webhooks-blackst0ne = { discordrb-webhooks-blackst0ne = {
dependencies = ["rest-client"]; dependencies = ["rest-client"];
@ -1049,10 +1049,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "04d2izkna3ahfn6fwq4xrcafa715d3bbqczxm16fq40fqy87xn17"; sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif";
type = "gem"; type = "gem";
}; };
version = "1.3.1"; version = "1.3.2";
}; };
domain_name = { domain_name = {
dependencies = ["unf"]; dependencies = ["unf"];
@ -1182,6 +1182,16 @@
}; };
version = "3.0.0"; version = "3.0.0";
}; };
enumerable-statistics = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ac2f5g4m58l6bmap1ak6vgqykz2hy9n3c8r6dmlr2xjybdryc1f";
type = "gem";
};
version = "2.0.1";
};
equalizer = { equalizer = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
platforms = []; platforms = [];
@ -1382,14 +1392,14 @@
version = "2.10.0"; version = "2.10.0";
}; };
ffi = { ffi = {
groups = ["default" "development" "kerberos" "test"]; groups = ["default" "development" "kerberos" "puma" "test" "unicorn"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "10ay35dm0lkcqprsiya6q2kwvyid884102ryipr4vrk790yfp8kd"; sha256 = "10lfhahnnc91v63xpvk65apn61pib086zha3z5sp1xk9acfx12h4";
type = "gem"; type = "gem";
}; };
version = "1.11.3"; version = "1.12.2";
}; };
ffi-compiler = { ffi-compiler = {
dependencies = ["ffi" "rake"]; dependencies = ["ffi" "rake"];
@ -1668,10 +1678,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "14ihiw3xsr3r7pk4mbwarasakhq31vzg87bm8g4qaym9ihpf7y77"; sha256 = "19aqxxgq8d9jqvzz36jciqb54nrb8w2b85abpy98cq7ldj1lh497";
type = "gem"; type = "gem";
}; };
version = "1.86.0"; version = "12.9.0.pre.rc4";
}; };
github-markup = { github-markup = {
groups = ["default"]; groups = ["default"];
@ -1700,10 +1710,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1s1cgnnzlnfglsh5r0iihgvyasa2zbqkyrrnbxshvnkddb10i94z"; sha256 = "0a63zgjll83b25hiq8m4sk75jci2rj8z46lss0j3bc6zi3pxnzax";
type = "gem"; type = "gem";
}; };
version = "0.9.1"; version = "0.12.0";
}; };
gitlab-license = { gitlab-license = {
groups = ["default"]; groups = ["default"];
@ -1715,6 +1725,16 @@
}; };
version = "1.0.0"; version = "1.0.0";
}; };
gitlab-mail_room = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0q4z5p8hxyzrwr93r4mqr794fvqppi7ijcnp5nw9m4vd076hp4vh";
type = "gem";
};
version = "0.0.3";
};
gitlab-markup = { gitlab-markup = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
@ -1741,10 +1761,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0a0kihx7ps6hc1a5xbpbssqnh1k0gzfvln7xkjinpqipvk53l094"; sha256 = "0i1gv7mgjpa46v6jr97rjk0zv3jny3gc3q3bq8wd6rv59lv5s4wi";
type = "gem"; type = "gem";
}; };
version = "4.3.1.gitlab.2"; version = "4.3.3.gitlab.2";
}; };
gitlab-puma_worker_killer = { gitlab-puma_worker_killer = {
dependencies = ["get_process_mem" "gitlab-puma"]; dependencies = ["get_process_mem" "gitlab-puma"];
@ -1774,10 +1794,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "07qh80nxwxgk76bhwrxw0a0jjcfvyxzmcd773k6axwklp5wvas7x"; sha256 = "1il4jqvz7b2l6pcxw6pfjvljpngn92mghfm47g0mfickih1i2r55";
type = "gem"; type = "gem";
}; };
version = "3.1.0"; version = "3.2.0";
}; };
gitlab_chronic_duration = { gitlab_chronic_duration = {
dependencies = ["numerizer"]; dependencies = ["numerizer"];
@ -1872,10 +1892,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0jbqajngi5ndqfarw9dxkhbphva0j71jav5wfym3fsiisvk5gg6p"; sha256 = "0xbgh9d8nbvsvyzqnd0mzhz0nr9hx4qn025kmz6d837lry4lc6gw";
type = "gem"; type = "gem";
}; };
version = "2.0.19"; version = "2.0.20";
}; };
grape = { grape = {
dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"]; dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"];
@ -1937,10 +1957,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "17p5c1432fxcqpj7yl70a1667n9774chmam6zswdm021vn8cfwmv"; sha256 = "0zj729kxig2klhm4naqsgrfi4xgba4vh2pazvvi7iaikaa3vfh48";
type = "gem"; type = "gem";
}; };
version = "1.9.12"; version = "1.10.5";
}; };
graphql-docs = { graphql-docs = {
dependencies = ["commonmarker" "escape_utils" "extended-markdown-filter" "gemoji" "graphql" "html-pipeline" "sass"]; dependencies = ["commonmarker" "escape_utils" "extended-markdown-filter" "gemoji" "graphql" "html-pipeline" "sass"];
@ -2559,6 +2579,16 @@
}; };
version = "2.1.2"; version = "2.1.2";
}; };
lockbox = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0sgbs0frk601yc7bb33pz5z9cyadvj077vwy9k5zapsbn2rxf5aj";
type = "gem";
};
version = "0.3.3";
};
lograge = { lograge = {
dependencies = ["actionpack" "activesupport" "railties" "request_store"]; dependencies = ["actionpack" "activesupport" "railties" "request_store"];
groups = ["default"]; groups = ["default"];
@ -2612,16 +2642,6 @@
}; };
version = "2.7.1"; version = "2.7.1";
}; };
mail_room = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0q06fkv6wka68gbva17jknm57jnjwk57f9ng1lvyvwki2v4jnkz4";
type = "gem";
};
version = "0.10.0";
};
marcel = { marcel = {
dependencies = ["mimemagic"]; dependencies = ["mimemagic"];
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
@ -2720,6 +2740,16 @@
}; };
version = "0.3.3"; version = "0.3.3";
}; };
mini_histogram = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "127vmd85kwi85qjbb1431bi4j5gdy0pp6wrq1f88ja1pf3mlb50y";
type = "gem";
};
version = "0.1.3";
};
mini_magick = { mini_magick = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
@ -3315,10 +3345,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "09davv4ld6caqlczw64vhwf8hr41apys3cj8v2h96yxs4qg1m2iw"; sha256 = "19nxgcl6fbnr6da958hyvnycv441ryp2dw4ccmldah5bm8885z39";
type = "gem"; type = "gem";
}; };
version = "2.6.5.0"; version = "2.7.0.4";
}; };
parslet = { parslet = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
@ -3961,10 +3991,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1ipgdir89a6pp1zscl2fkb99pppa7c513pk4wvis157bn8p9hlrx"; sha256 = "1n9h0ls2a2zq0bcsw31wxci1wdxb8s3vglfadxpcs6b04vkf6nqq";
type = "gem"; type = "gem";
}; };
version = "3.15.0"; version = "3.18.0";
}; };
rqrcode = { rqrcode = {
dependencies = ["chunky_png"]; dependencies = ["chunky_png"];
@ -3990,14 +4020,14 @@
}; };
rspec = { rspec = {
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
groups = ["default" "development" "test"]; groups = ["default" "test"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3"; sha256 = "1hzsig4pi9ybr0xl5540m1swiyxa74c8h09225y5sdh2rjkkg84h";
type = "gem"; type = "gem";
}; };
version = "3.8.0"; version = "3.9.0";
}; };
rspec-core = { rspec-core = {
dependencies = ["rspec-support"]; dependencies = ["rspec-support"];
@ -4005,10 +4035,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0spjgmd3yx6q28q950r32bi0cs8h2si53zn6rq8s7n1i4zp4zwbf"; sha256 = "1qzc1wdjb1qnbimjl8i1q1r1z5hdv2lmcw7ysz7jawj4d1cvpqvd";
type = "gem"; type = "gem";
}; };
version = "3.8.2"; version = "3.9.1";
}; };
rspec-expectations = { rspec-expectations = {
dependencies = ["diff-lcs" "rspec-support"]; dependencies = ["diff-lcs" "rspec-support"];
@ -4016,10 +4046,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0x3iddjjaramqb0yb51c79p2qajgi9wb5b59bzv25czddigyk49r"; sha256 = "1gjqfb39da6gywdcp4h77738r7khbrn2v4y45589z25bj4z9paf0";
type = "gem"; type = "gem";
}; };
version = "3.8.4"; version = "3.9.0";
}; };
rspec-mocks = { rspec-mocks = {
dependencies = ["diff-lcs" "rspec-support"]; dependencies = ["diff-lcs" "rspec-support"];
@ -4027,10 +4057,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "12zplnsv4p6wvvxsk8xn6nm87a5qadxlkk497zlxfczd0jfawrni"; sha256 = "19vmdqym1v2g1zbdnq37zwmyj87y9yc9ijwc8js55igvbb9hx0mr";
type = "gem"; type = "gem";
}; };
version = "3.8.1"; version = "3.9.1";
}; };
rspec-parameterized = { rspec-parameterized = {
dependencies = ["binding_ninja" "parser" "proc_to_ast" "rspec" "unparser"]; dependencies = ["binding_ninja" "parser" "proc_to_ast" "rspec" "unparser"];
@ -4049,10 +4079,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "164dni69b9imgv33rxzsy3272ni10xny0f4dbx6k90zr1cgzmj5s"; sha256 = "0p2ji21avixi0sf9xlgrdz319kvs4pjhlbz7kj4anmx5s25w1x7j";
type = "gem"; type = "gem";
}; };
version = "4.0.0.beta3"; version = "4.0.0.beta4";
}; };
rspec-retry = { rspec-retry = {
dependencies = ["rspec-core"]; dependencies = ["rspec-core"];
@ -4065,25 +4095,15 @@
}; };
version = "0.6.1"; version = "0.6.1";
}; };
rspec-set = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "06vw8b5w1a58838cw9ssmy3r6f8vrjh54h7dp97rwv831gn5zlyk";
type = "gem";
};
version = "0.1.3";
};
rspec-support = { rspec-support = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "139mbhfdr10flm2ffryvxkyqgqs1gjdclc1xhyh7i7njfqayxk7g"; sha256 = "1zwpyq1na23pvgacpxs2v9nwfbjbw6x3arca5j3l1xagigqmzhc3";
type = "gem"; type = "gem";
}; };
version = "3.8.2"; version = "3.9.2";
}; };
rspec_junit_formatter = { rspec_junit_formatter = {
dependencies = ["rspec-core"]; dependencies = ["rspec-core"];
@ -4189,10 +4209,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0ac3mv3x468s820f6wnp5whzl59y5844wmdjg47a8mbp0kkmnn58"; sha256 = "0g1j37fy53ly6351asfcnik033gwkp4kjma7lji1yklmj86d4dg7";
type = "gem"; type = "gem";
}; };
version = "1.0.0"; version = "1.3.1";
}; };
ruby-progressbar = { ruby-progressbar = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
@ -4220,10 +4240,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1f5mpzb1way683klgggsj029a4kw7krj72i17ggmvlp83804s6a3"; sha256 = "0xmd9dk1fcmii38apwn3py00qfqxd5yzylafm49n24plzwv913nh";
type = "gem"; type = "gem";
}; };
version = "2.1.1"; version = "2.1.2";
}; };
ruby_dep = { ruby_dep = {
groups = ["default" "test"]; groups = ["default" "test"];
@ -4491,25 +4511,25 @@
version = "1.1.2"; version = "1.1.2";
}; };
simplecov = { simplecov = {
dependencies = ["docile" "json" "simplecov-html"]; dependencies = ["docile" "simplecov-html"];
groups = ["development" "test"]; groups = ["development" "test"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1sfyfgf7zrp2n42v7rswkqgk3bbwk1bnsphm24y7laxv3f8z0947"; sha256 = "0ycx5q699ycbjhp28sjbkrd62vwxlrb7fh4v2m7sjsp2qhi6cf6r";
type = "gem"; type = "gem";
}; };
version = "0.16.1"; version = "0.18.5";
}; };
simplecov-html = { simplecov-html = {
groups = ["default" "development" "test"]; groups = ["default" "development" "test"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1lihraa4rgxk8wbfl77fy9sf0ypk31iivly8vl3w04srd7i0clzn"; sha256 = "1v7b4mf7njw8kv4ghl4q7mwz3q0flbld7v8blp4m4m3n3aq11bn9";
type = "gem"; type = "gem";
}; };
version = "0.10.2"; version = "0.12.2";
}; };
sixarm_ruby_unaccent = { sixarm_ruby_unaccent = {
groups = ["default"]; groups = ["default"];
@ -4521,15 +4541,15 @@
}; };
version = "1.2.0"; version = "1.2.0";
}; };
slack-notifier = { slack-messenger = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0xavibxh00gy62mm79l6id9l2fldjmdqifk8alqfqy5z38ffwah6"; sha256 = "1s2bff13nd21r28528vfb2ly5718r812izww2g0vxksjq7xgr2c7";
type = "gem"; type = "gem";
}; };
version = "1.5.1"; version = "2.3.3";
}; };
snowplow-tracker = { snowplow-tracker = {
dependencies = ["contracts"]; dependencies = ["contracts"];
@ -4777,10 +4797,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0vwbkwqyxhavzvr1820hqwz43ylnfcf6w4x6sag0nghi44sr9kmx"; sha256 = "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp";
type = "gem"; type = "gem";
}; };
version = "0.8.1"; version = "0.9.1";
}; };
timfel-krb5-auth = { timfel-krb5-auth = {
groups = ["default" "kerberos"]; groups = ["default" "kerberos"];
@ -4898,6 +4918,17 @@
}; };
version = "1.6.0"; version = "1.6.0";
}; };
unicode_plot = {
dependencies = ["enumerable-statistics"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "09cv90pi414ns1knbi0zjbn59071qjgym974jpsgj7yjh70dpj0g";
type = "gem";
};
version = "0.0.4";
};
unicode_utils = { unicode_utils = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
@ -4953,14 +4984,14 @@
}; };
unparser = { unparser = {
dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"]; dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
groups = ["default" "development" "test"]; groups = ["default" "test"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "03vjj74kj86vlazhiclf63kf6gajs66k8ni34q70fdhf97d7b60c"; sha256 = "0qg1apxlnf4kxfj9jpm6hhv73jsncbs4zpsgyan32p5r331q1gmx";
type = "gem"; type = "gem";
}; };
version = "0.4.5"; version = "0.4.7";
}; };
validate_email = { validate_email = {
dependencies = ["activemodel" "mail"]; dependencies = ["activemodel" "mail"];

View file

@ -177,7 +177,7 @@ def update_gitaly():
subprocess.check_output(['bundix'], cwd=gitaly_dir) subprocess.check_output(['bundix'], cwd=gitaly_dir)
os.environ['GOROOT'] = "" os.environ['GOROOT'] = ""
subprocess.check_output(['vgo2nix'], cwd=gitaly_dir) subprocess.check_output(['vgo2nix', '--keep-going'], cwd=gitaly_dir)
for fn in ['go.mod', 'go.sum']: for fn in ['go.mod', 'go.sum']:
os.unlink(gitaly_dir / fn) os.unlink(gitaly_dir / fn)
@ -200,7 +200,7 @@ def update_gitlab_shell():
f.write(repo.get_file(fn, f"v{gitlab_shell_version}")) f.write(repo.get_file(fn, f"v{gitlab_shell_version}"))
os.environ['GOROOT'] = "" os.environ['GOROOT'] = ""
subprocess.check_output(['vgo2nix'], cwd=gitlab_shell_dir) subprocess.check_output(['vgo2nix', '--keep-going'], cwd=gitlab_shell_dir)
for fn in ['go.mod', 'go.sum']: for fn in ['go.mod', 'go.sum']:
os.unlink(gitlab_shell_dir / fn) os.unlink(gitlab_shell_dir / fn)
@ -221,7 +221,7 @@ def update_gitlab_workhorse():
f.write(repo.get_file(fn, f"v{gitlab_workhorse_version}")) f.write(repo.get_file(fn, f"v{gitlab_workhorse_version}"))
os.environ['GOROOT'] = "" os.environ['GOROOT'] = ""
subprocess.check_output(['vgo2nix'], cwd=gitlab_workhorse_dir) subprocess.check_output(['vgo2nix', '--keep-going'], cwd=gitlab_workhorse_dir)
for fn in ['go.mod', 'go.sum']: for fn in ['go.mod', 'go.sum']:
os.unlink(gitlab_workhorse_dir / fn) os.unlink(gitlab_workhorse_dir / fn)

File diff suppressed because it is too large Load diff

View file

@ -12,7 +12,7 @@ buildPythonApplication rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256:1vq1wg79b7855za6v6bsfgypm0v3b4wakap4rash45mhzbgjj0kq"; sha256 = "1vq1wg79b7855za6v6bsfgypm0v3b4wakap4rash45mhzbgjj0kq";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -0,0 +1,13 @@
diff --git a/platform/qt/MLVApp.pro b/platform/qt/MLVApp.pro
index ebdc552..3e37573 100644
--- a/platform/qt/MLVApp.pro
+++ b/platform/qt/MLVApp.pro
@@ -84,7 +84,7 @@ win32{
# Linux
linux-g++*{
- QMAKE_CFLAGS += -O3 -fopenmp -msse4.1 -mssse3 -msse3 -msse2 -msse -std=c99
+ QMAKE_CFLAGS += -O3 -fopenmp -march=native -std=c99
QMAKE_CXXFLAGS += -fopenmp
LIBS += -lgomp
}

View file

@ -0,0 +1,62 @@
{ fetchFromGitHub
, lib
, mkDerivation
, qmake
, qtbase
, qtmultimedia
, stdenv
}:
mkDerivation rec {
pname = "mlv-app";
version = "1.11";
src = fetchFromGitHub {
owner = "ilia3101";
repo = "MLV-App";
rev = "QTv${version}";
sha256 = "0s5sjdxi8a17ddvih4ara7mlb2xrc9xqx52jmhfaca6ng341gi4x";
};
patches = if stdenv.isAarch64 then ./aarch64-flags.patch else null;
installPhase = ''
runHook preInstall
install -Dm555 -t $out/bin mlvapp
install -Dm444 -t $out/share/applications mlvapp.desktop
install -Dm444 -t $out/share/icons/hicolor/512x512/apps RetinaIMG/MLVAPP.png
runHook postInstall
'';
qmakeFlags = [ "MLVApp.pro" ];
preConfigure = ''
export HOME=$TMPDIR
cd platform/qt/
'';
buildInputs = [
qtmultimedia
qtbase
];
dontWrapQtApps = true;
preFixup = ''
wrapQtApp "$out/bin/mlvapp"
'';
nativeBuildInputs = [
qmake
];
meta = with lib; {
description = "All in one MLV processing app that is pretty great";
homepage = "https://mlv.app";
license = licenses.gpl3;
maintainers = with maintainers; [
kiwi
];
platforms = platforms.linux;
};
}

View file

@ -1,4 +1,5 @@
{ stdenv, buildPythonApplication, fetchPypi, pythonOlder { stdenv, buildPythonApplication, fetchPypi, pythonOlder
, installShellFiles
, mock, pytest, nose , mock, pytest, nose
, pyyaml, backports_ssl_match_hostname, colorama, docopt , pyyaml, backports_ssl_match_hostname, colorama, docopt
, dockerpty, docker, ipaddress, jsonschema, requests , dockerpty, docker, ipaddress, jsonschema, requests
@ -17,6 +18,7 @@ buildPythonApplication rec {
# lots of networking and other fails # lots of networking and other fails
doCheck = false; doCheck = false;
nativeBuildInputs = [ installShellFiles ];
checkInputs = [ mock pytest nose ]; checkInputs = [ mock pytest nose ];
propagatedBuildInputs = [ propagatedBuildInputs = [
pyyaml backports_ssl_match_hostname colorama dockerpty docker pyyaml backports_ssl_match_hostname colorama dockerpty docker
@ -33,11 +35,8 @@ buildPythonApplication rec {
''; '';
postInstall = '' postInstall = ''
install -D -m 0444 contrib/completion/bash/docker-compose \ installShellCompletion --bash contrib/completion/bash/docker-compose
$out/share/bash-completion/completions/docker-compose installShellCompletion --zsh contrib/completion/zsh/_docker-compose
install -D -m 0444 contrib/completion/zsh/_docker-compose \
$out/share/zsh-completion/zsh/site-functions/_docker-compose
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -197,9 +197,9 @@ rec {
}; };
docker_19_03 = makeOverridable dockerGen { docker_19_03 = makeOverridable dockerGen {
version = "19.03.9"; version = "19.03.11";
rev = "9d988398e765e4b97f27f93c4d04b272ac64c9c7"; rev = "42e35e61f352e527082521280d5ea3761f0dee50";
sha256 = "0g2jpmqryfpvhdkapl8syi4hccx6czpihp1p1gsp1mfwz9aycsqv"; sha256 = "0q4l4z2bg269hj1dqaq02f84zgp3p8idw1cxczw383cjl0ra8xgq";
runcRev = "dc9208a3303feef5b3839f4323d9beb36df0a9dd"; # v1.0.0-rc10 runcRev = "dc9208a3303feef5b3839f4323d9beb36df0a9dd"; # v1.0.0-rc10
runcSha256 = "0pi3rvj585997m4z9ljkxz2z9yxf9p2jr0pmqbqrc7bc95f5hagk"; runcSha256 = "0pi3rvj585997m4z9ljkxz2z9yxf9p2jr0pmqbqrc7bc95f5hagk";
containerdRev = "7ad184331fa3e55e52b890ea95e65ba581ae3429"; # v1.2.13 containerdRev = "7ad184331fa3e55e52b890ea95e65ba581ae3429"; # v1.2.13

View file

@ -76,7 +76,7 @@ in buildBazelPackage rec {
rm -f "$bazelOut"/java.log "$bazelOut"/java.log.* rm -f "$bazelOut"/java.log "$bazelOut"/java.log.*
''; '';
sha256 = "0r11kbyp1ambgcj35gvjjmxrsrdg7b9jb9sq3kih4lik7zyljp25"; sha256 = "164r8m95g7njh232xfc7zcn1nssaw9bnin9k7ssj9mk6z7z9zy5v";
}; };
buildAttrs = { buildAttrs = {

View file

@ -14,7 +14,7 @@
buildGoPackage rec { buildGoPackage rec {
pname = "runc"; pname = "runc";
version = "1.0.0-rc10"; version = "1.0.0-rc90";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "opencontainers"; owner = "opencontainers";

View file

@ -8,7 +8,7 @@ stdenv.mkDerivation {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "xorg62"; owner = "xorg62";
repo = "wmfs"; repo = "wmfs";
sha256 = "sha256:1m7dsmmlhq2qipim659cp9aqlriz1cwrrgspl8baa5pncln0gd5c"; sha256 = "1m7dsmmlhq2qipim659cp9aqlriz1cwrrgspl8baa5pncln0gd5c";
rev = "b7b8ff812d28c79cb22a73db2739989996fdc6c2"; rev = "b7b8ff812d28c79cb22a73db2739989996fdc6c2";
}; };

View file

@ -6,58 +6,55 @@ fi
PATH="@path@:$PATH" PATH="@path@:$PATH"
apprun_opt=true apprun_opt=true
#DEBUG=0
# src : AppImage # src : AppImage
# dest : let's unpack() create the directory # dest : let's unpack() create the directory
unpack() { unpack() {
local src=$1 local src="$1"
local out=$2 local out="$2"
local appimageSignature=""
local appimageType=0
# https://github.com/AppImage/libappimage/blob/ca8d4b53bed5cbc0f3d0398e30806e0d3adeaaab/src/libappimage/utils/MagicBytesChecker.cpp#L45-L63 # https://github.com/AppImage/libappimage/blob/ca8d4b53bed5cbc0f3d0398e30806e0d3adeaaab/src/libappimage/utils/MagicBytesChecker.cpp#L45-L63
eval "$(r2 -nn -Nqc "p8j 3 @ 8" "$src"| local appimageSignature=$(readelf -h "$src" | awk 'NR==2{print $10$11;}')
jq -r '{appimageSignature: (.[:-1]|implode), appimageType: .[-1]}| local appimageType=$(readelf -h "$src" | awk 'NR==2{print $12;}')
@sh "appimageSignature=\(.appimageSignature) appimageType=\(.appimageType)"')"
# check AppImage signature # check AppImage signature
if [[ "$appimageSignature" != "AI" ]]; then if [ "$appimageSignature" != "4149" ]; then
echo "Not an appimage." echo "Not an AppImage file"
exit exit
fi fi
case "$appimageType" in case "$appimageType" in
1 ) echo "Uncompress $(basename "$src") of type $appimageType." "01")
mkdir "$out" echo "Uncompress $(basename "$src") of type $appimageType"
pv "$src" | bsdtar -x -C "$out" -f - mkdir "$out"
;; pv "$src" | bsdtar -x -C "$out" -f -
2) ;;
# This method avoid issues with non executable appimages,
# non-native packer, packer patching and squashfs-root destination prefix.
# multiarch offset one-liner using same method as AppImage "02")
# see https://gist.github.com/probonopd/a490ba3401b5ef7b881d5e603fa20c93 # This method avoid issues with non executable appimages,
offset=$(r2 -nn -Nqc "pfj.elf_header @ 0" "$src"|\ # non-native packer, packer patching and squashfs-root destination prefix.
jq 'map({(.name): .value}) | add | .shoff + (.shnum * .shentsize)')
echo "Uncompress $(basename "$src") of type $appimageType @ offset $offset." # multiarch offset one-liner using same method as AppImage
unsquashfs -q -d "$out" -o "$offset" "$src" # see https://gist.github.com/probonopd/a490ba3401b5ef7b881d5e603fa20c93
chmod go-w "$out" offset=$(readelf -h "$src" | awk 'NR==13{e_shoff=$5} NR==18{e_shentsize=$5} NR==19{e_shnum=$5} END{print e_shoff+e_shentsize*e_shnum}')
;; echo "Uncompress $(basename "$src") of type $appimageType @ offset $offset"
unsquashfs -q -d "$out" -o "$offset" "$src"
chmod go-w "$out"
;;
# 3) get ready, https://github.com/TheAssassin/type3-runtime # "03")
*) echo Unsupported AppImage Type: "$appimageType" # get ready, https://github.com/TheAssassin/type3-runtime
exit
;; *)
echo Unsupported AppImage Type: "$appimageType"
exit
;;
esac esac
echo "$(basename "$src") is now installed in $out" echo "$(basename "$src") is now installed in $out"
} }
apprun() { apprun() {
eval "$(rahash2 "$APPIMAGE" -j | jq -r '.[] | @sh "SHA256=\(.hash)"')" SHA256=$(sha256sum "$APPIMAGE" | awk '{print $1}')
echo sha256 = \""$SHA256"\"\;
export APPDIR="${XDG_CACHE_HOME:-$HOME/.cache}/appimage-run/$SHA256" export APPDIR="${XDG_CACHE_HOME:-$HOME/.cache}/appimage-run/$SHA256"
#compatibility #compatibility
@ -102,27 +99,26 @@ EOF
} }
while getopts "x:w:dh" option; do while getopts "x:w:dh" option; do
case "${option}" in case "${option}" in
d) set -x d) set -x
;; ;;
x) # eXtract x) # eXtract
unpack_opt=true unpack_opt=true
APPDIR=${OPTARG} APPDIR=${OPTARG}
;; ;;
w) # WrapAppImage w) # WrapAppImage
export APPDIR=${OPTARG} export APPDIR=${OPTARG}
wrap_opt=true wrap_opt=true
;; ;;
h) usage h) usage
;; ;;
*) *) usage
usage ;;
;; esac
esac
done done
shift $((OPTIND-1)) shift "$((OPTIND-1))"
if [[ $wrap_opt = true ]] && [[ -d "$APPDIR" ]]; then if [ -n "$wrap_opt" ] && [ -d "$APPDIR" ]; then
wrap "$@" wrap "$@"
exit exit
else else
@ -130,12 +126,12 @@ else
shift shift
fi fi
if [[ $unpack_opt = true ]] && [[ -f "$APPIMAGE" ]]; then if [ -n "$unpack_opt" ] && [ -f "$APPIMAGE" ]; then
unpack "$APPIMAGE" "$APPDIR" unpack "$APPIMAGE" "$APPDIR"
exit exit
fi fi
if [[ $apprun_opt = true ]] && [[ -f "$APPIMAGE" ]]; then if [ -n "$apprun_opt" ] && [ -f "$APPIMAGE" ]; then
apprun apprun
wrap "$@" wrap "$@"
exit exit

View file

@ -1,40 +1,57 @@
{ stdenv, buildFHSUserEnv, writeScript, pkgs { stdenv
, bash, radare2, jq, squashfsTools, ripgrep , bash
, coreutils, libarchive, file, runtimeShell, pv , binutils-unwrapped
, lib, runCommand }: , coreutils
, gawk
, libarchive
, pv
, squashfsTools
, buildFHSUserEnv
, pkgs
}:
rec { rec {
appimage-exec = pkgs.substituteAll { appimage-exec = pkgs.substituteAll {
src = ./appimage-exec.sh; src = ./appimage-exec.sh;
isExecutable = true; isExecutable = true;
dir = "bin"; dir = "bin";
path = with pkgs; lib.makeBinPath [ pv ripgrep file radare2 libarchive jq squashfsTools coreutils bash ]; path = with pkgs; stdenv.lib.makeBinPath [
bash
binutils-unwrapped
coreutils
gawk
libarchive
pv
squashfsTools
];
}; };
extract = { name, src }: runCommand "${name}-extracted" { extract = { name, src }: pkgs.runCommand "${name}-extracted" {
buildInputs = [ appimage-exec ]; buildInputs = [ appimage-exec ];
} '' } ''
appimage-exec.sh -x $out ${src} appimage-exec.sh -x $out ${src}
''; '';
# for compatibility, deprecated # for compatibility, deprecated
extractType1 = extract; extractType1 = extract;
extractType2 = extract; extractType2 = extract;
wrapType1 = wrapType2; wrapType1 = wrapType2;
wrapAppImage = args@{ name, src, extraPkgs, ... }: buildFHSUserEnv (defaultFhsEnvArgs // { wrapAppImage = args@{ name, src, extraPkgs, ... }: buildFHSUserEnv
inherit name; (defaultFhsEnvArgs // {
inherit name;
targetPkgs = pkgs: [ appimage-exec ] targetPkgs = pkgs: [ appimage-exec ]
++ defaultFhsEnvArgs.targetPkgs pkgs ++ extraPkgs pkgs; ++ defaultFhsEnvArgs.targetPkgs pkgs ++ extraPkgs pkgs;
runScript = "appimage-exec.sh -w ${src}"; runScript = "appimage-exec.sh -w ${src}";
} // (removeAttrs args (builtins.attrNames (builtins.functionArgs wrapAppImage)))); } // (removeAttrs args (builtins.attrNames (builtins.functionArgs wrapAppImage))));
wrapType2 = args@{ name, src, extraPkgs ? pkgs: [], ... }: wrapAppImage (args // { wrapType2 = args@{ name, src, extraPkgs ? pkgs: [ ], ... }: wrapAppImage
inherit name extraPkgs; (args // {
src = extract { inherit name src; }; inherit name extraPkgs;
}); src = extract { inherit name src; };
});
defaultFhsEnvArgs = { defaultFhsEnvArgs = {
name = "appimage-env"; name = "appimage-env";

View file

@ -115,7 +115,7 @@ rec {
echo "mounting host's temporary directory..." echo "mounting host's temporary directory..."
mkdir -p /fs/tmp/xchg mkdir -p /fs/tmp/xchg
mount -t 9p xchg /fs/tmp/xchg -o trans=virtio,version=9p2000.L,cache=loose mount -t 9p xchg /fs/tmp/xchg -o trans=virtio,version=9p2000.L
mkdir -p /fs/proc mkdir -p /fs/proc
mount -t proc none /fs/proc mount -t proc none /fs/proc

View file

@ -53,7 +53,7 @@ let
store /fs/nix/store store /fs/nix/store
mount -t 9p \ mount -t 9p \
-o trans=virtio,version=9p2000.L,cache=loose \ -o trans=virtio,version=9p2000.L \
xchg /fs/xchg xchg /fs/xchg
echo root:x:0:0::/root:/bin/false > /fs/etc/passwd echo root:x:0:0::/root:/bin/false > /fs/etc/passwd

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