Merge remote-tracking branch 'origin/master' into haskell-updates.
This commit is contained in:
commit
7536a09d30
|
@ -85,19 +85,19 @@
|
|||
<title>Installing packages on unsupported systems</title>
|
||||
|
||||
<para>
|
||||
There are also two ways to try compiling a package which has been marked as unsuported for the given system.
|
||||
There are also two ways to try compiling a package which has been marked as unsupported for the given system.
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
For allowing the build of a broken package once, you can use an environment variable for a single invocation of the nix tools:
|
||||
For allowing the build of an unsupported package once, you can use an environment variable for a single invocation of the nix tools:
|
||||
<programlisting>$ export NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM=1</programlisting>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
For permanently allowing broken packages to be built, you may add <literal>allowUnsupportedSystem = true;</literal> to your user's configuration file, like this:
|
||||
For permanently allowing unsupported packages to be built, you may add <literal>allowUnsupportedSystem = true;</literal> to your user's configuration file, like this:
|
||||
<programlisting>
|
||||
{
|
||||
allowUnsupportedSystem = true;
|
||||
|
|
|
@ -95,6 +95,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
|
|||
fullName = ''BSD 2-clause "Simplified" License'';
|
||||
};
|
||||
|
||||
bsd2Patent = spdx {
|
||||
spdxId = "BSD-2-Clause-Patent";
|
||||
fullName = ''BSD-2-Clause Plus Patent License'';
|
||||
};
|
||||
|
||||
bsd3 = spdx {
|
||||
spdxId = "BSD-3-Clause";
|
||||
fullName = ''BSD 3-clause "New" or "Revised" License'';
|
||||
|
|
|
@ -283,6 +283,12 @@
|
|||
githubId = 273837;
|
||||
name = "Mateusz Czapliński";
|
||||
};
|
||||
akamaus = {
|
||||
email = "dmitryvyal@gmail.com";
|
||||
github = "akamaus";
|
||||
githubId = 58955;
|
||||
name = "Dmitry Vyal";
|
||||
};
|
||||
akaWolf = {
|
||||
email = "akawolf0@gmail.com";
|
||||
github = "akaWolf";
|
||||
|
@ -3716,6 +3722,12 @@
|
|||
githubId = 41977;
|
||||
name = "Joachim Fasting";
|
||||
};
|
||||
joachimschmidt557 = {
|
||||
email = "joachim.schmidt557@outlook.com";
|
||||
github = "joachimschmidt557";
|
||||
githubId = 28556218;
|
||||
name = "Joachim Schmidt";
|
||||
};
|
||||
joamaki = {
|
||||
email = "joamaki@gmail.com";
|
||||
github = "joamaki";
|
||||
|
@ -6314,6 +6326,12 @@
|
|||
fingerprint = "240B 57DE 4271 2480 7CE3 EAC8 4F74 D536 1C4C A31E";
|
||||
}];
|
||||
};
|
||||
priegger = {
|
||||
email = "philipp@riegger.name";
|
||||
github = "priegger";
|
||||
githubId = 228931;
|
||||
name = "Philipp Riegger";
|
||||
};
|
||||
prikhi = {
|
||||
email = "pavan.rikhi@gmail.com";
|
||||
github = "prikhi";
|
||||
|
|
|
@ -74,6 +74,7 @@ moonscript,,,,,arobyn
|
|||
nvim-client,,,,,
|
||||
penlight,,,,,
|
||||
rapidjson,,,,,
|
||||
readline,,,,,
|
||||
say,,,,,
|
||||
std__debug,std._debug,,,,
|
||||
std_normalize,std.normalize,,,,
|
||||
|
|
|
|
@ -360,6 +360,18 @@ start_all()
|
|||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>
|
||||
<methodname>wait_for_console_text</methodname>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
Wait until the supplied regular expressions match a line of the serial
|
||||
console output. This method is useful when OCR is not possibile or
|
||||
accurate enough.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>
|
||||
<methodname>wait_for_window</methodname>
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
partition. It uses the initially reserved 512MiB at the start of the
|
||||
disk.
|
||||
<screen language="commands"><prompt># </prompt>parted /dev/sda -- mkpart ESP fat32 1MiB 512MiB
|
||||
<prompt># </prompt>parted /dev/sda -- set 3 boot on</screen>
|
||||
<prompt># </prompt>parted /dev/sda -- set 3 esp on</screen>
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
@ -513,7 +513,7 @@ Retype new UNIX password: ***</screen>
|
|||
<prompt># </prompt>parted /dev/sda -- mkpart primary 512MiB -8GiB
|
||||
<prompt># </prompt>parted /dev/sda -- mkpart primary linux-swap -8GiB 100%
|
||||
<prompt># </prompt>parted /dev/sda -- mkpart ESP fat32 1MiB 512MiB
|
||||
<prompt># </prompt>parted /dev/sda -- set 3 boot on</screen>
|
||||
<prompt># </prompt>parted /dev/sda -- set 3 esp on</screen>
|
||||
</example>
|
||||
|
||||
<example xml:id="ex-install-sequence">
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
, e2fsprogs
|
||||
, libfaketime
|
||||
, perl
|
||||
, lkl
|
||||
, fakeroot
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -26,7 +26,7 @@ in
|
|||
pkgs.stdenv.mkDerivation {
|
||||
name = "ext4-fs.img${lib.optionalString compressImage ".zst"}";
|
||||
|
||||
nativeBuildInputs = [ e2fsprogs.bin libfaketime perl lkl ]
|
||||
nativeBuildInputs = [ e2fsprogs.bin libfaketime perl fakeroot ]
|
||||
++ lib.optional compressImage zstd;
|
||||
|
||||
buildCommand =
|
||||
|
@ -37,32 +37,31 @@ pkgs.stdenv.mkDerivation {
|
|||
${populateImageCommands}
|
||||
)
|
||||
|
||||
# Add the closures of the top-level store objects.
|
||||
storePaths=$(cat ${sdClosureInfo}/store-paths)
|
||||
echo "Preparing store paths for image..."
|
||||
|
||||
# Create nix/store before copying path
|
||||
mkdir -p ./rootImage/nix/store
|
||||
|
||||
xargs -I % cp -a --reflink=auto % -t ./rootImage/nix/store/ < ${sdClosureInfo}/store-paths
|
||||
(
|
||||
GLOBIGNORE=".:.."
|
||||
shopt -u dotglob
|
||||
cp -a --reflink=auto ./files/* -t ./rootImage/
|
||||
)
|
||||
|
||||
# Also include a manifest of the closures in a format suitable for nix-store --load-db
|
||||
cp ${sdClosureInfo}/registration ./rootImage/nix-path-registration
|
||||
|
||||
# Make a crude approximation of the size of the target image.
|
||||
# If the script starts failing, increase the fudge factors here.
|
||||
numInodes=$(find $storePaths ./files | wc -l)
|
||||
numDataBlocks=$(du -s -c -B 4096 --apparent-size $storePaths ./files | tail -1 | awk '{ print int($1 * 1.10) }')
|
||||
numInodes=$(find ./rootImage | wc -l)
|
||||
numDataBlocks=$(du -s -c -B 4096 --apparent-size ./rootImage | tail -1 | awk '{ print int($1 * 1.10) }')
|
||||
bytes=$((2 * 4096 * $numInodes + 4096 * $numDataBlocks))
|
||||
echo "Creating an EXT4 image of $bytes bytes (numInodes=$numInodes, numDataBlocks=$numDataBlocks)"
|
||||
|
||||
truncate -s $bytes $img
|
||||
faketime -f "1970-01-01 00:00:01" mkfs.ext4 -L ${volumeLabel} -U ${uuid} $img
|
||||
|
||||
# Also include a manifest of the closures in a format suitable for nix-store --load-db.
|
||||
cp ${sdClosureInfo}/registration nix-path-registration
|
||||
cptofs -t ext4 -i $img nix-path-registration /
|
||||
|
||||
# Create nix/store before copying paths
|
||||
faketime -f "1970-01-01 00:00:01" mkdir -p nix/store
|
||||
cptofs -t ext4 -i $img nix /
|
||||
|
||||
echo "copying store paths to image..."
|
||||
cptofs -t ext4 -i $img $storePaths /nix/store/
|
||||
|
||||
echo "copying files to image..."
|
||||
cptofs -t ext4 -i $img ./files/* /
|
||||
faketime -f "1970-01-01 00:00:01" fakeroot mkfs.ext4 -L ${volumeLabel} -U ${uuid} -d ./rootImage $img
|
||||
|
||||
export EXT2FS_NO_MTAB_OK=yes
|
||||
# I have ended up with corrupted images sometimes, I suspect that happens when the build machine's disk gets full during the build.
|
||||
|
|
|
@ -3,6 +3,8 @@ from contextlib import contextmanager, _GeneratorContextManager
|
|||
from queue import Queue, Empty
|
||||
from typing import Tuple, Any, Callable, Dict, Iterator, Optional, List
|
||||
from xml.sax.saxutils import XMLGenerator
|
||||
import queue
|
||||
import io
|
||||
import _thread
|
||||
import argparse
|
||||
import atexit
|
||||
|
@ -672,6 +674,22 @@ class Machine:
|
|||
with self.nested("waiting for {} to appear on screen".format(regex)):
|
||||
retry(screen_matches)
|
||||
|
||||
def wait_for_console_text(self, regex: str) -> None:
|
||||
self.log("waiting for {} to appear on console".format(regex))
|
||||
# Buffer the console output, this is needed
|
||||
# to match multiline regexes.
|
||||
console = io.StringIO()
|
||||
while True:
|
||||
try:
|
||||
console.write(self.last_lines.get())
|
||||
except queue.Empty:
|
||||
self.sleep(1)
|
||||
continue
|
||||
console.seek(0)
|
||||
matches = re.search(regex, console.read())
|
||||
if matches is not None:
|
||||
return
|
||||
|
||||
def send_key(self, key: str) -> None:
|
||||
key = CHAR_TO_KEY.get(key, key)
|
||||
self.send_monitor_command("sendkey {}".format(key))
|
||||
|
@ -735,11 +753,16 @@ class Machine:
|
|||
self.monitor, _ = self.monitor_socket.accept()
|
||||
self.shell, _ = self.shell_socket.accept()
|
||||
|
||||
# Store last serial console lines for use
|
||||
# of wait_for_console_text
|
||||
self.last_lines: Queue = Queue()
|
||||
|
||||
def process_serial_output() -> None:
|
||||
assert self.process.stdout is not None
|
||||
for _line in self.process.stdout:
|
||||
# Ignore undecodable bytes that may occur in boot menus
|
||||
line = _line.decode(errors="ignore").replace("\r", "").rstrip()
|
||||
self.last_lines.put(line)
|
||||
eprint("{} # {}".format(self.name, line))
|
||||
self.logger.enqueue({"msg": line, "machine": self.name})
|
||||
|
||||
|
|
|
@ -114,7 +114,7 @@ rec {
|
|||
|
||||
imagemagick_tiff = imagemagick_light.override { inherit libtiff; };
|
||||
|
||||
# Generate onvenience wrappers for running the test driver
|
||||
# Generate convenience wrappers for running the test driver
|
||||
# interactively with the specified network, and for starting the
|
||||
# VMs from the command line.
|
||||
driver = let warn = if skipLint then lib.warn "Linting is disabled!" else lib.id; in warn (runCommand testDriverName
|
||||
|
|
|
@ -686,6 +686,7 @@
|
|||
./services/networking/ocserv.nix
|
||||
./services/networking/ofono.nix
|
||||
./services/networking/oidentd.nix
|
||||
./services/networking/onedrive.nix
|
||||
./services/networking/openfire.nix
|
||||
./services/networking/openvpn.nix
|
||||
./services/networking/ostinato.nix
|
||||
|
|
|
@ -102,6 +102,9 @@ in
|
|||
|
||||
programs.fish.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
|
||||
|
||||
# Required for man completions
|
||||
documentation.man.generateCaches = true;
|
||||
|
||||
environment.etc."fish/foreign-env/shellInit".text = cfge.shellInit;
|
||||
environment.etc."fish/foreign-env/loginShellInit".text = cfge.loginShellInit;
|
||||
environment.etc."fish/foreign-env/interactiveShellInit".text = cfge.interactiveShellInit;
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
with builtins;
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.gitlab-runner;
|
||||
hasDocker = config.virtualisation.docker.enable;
|
||||
hashedServices = with builtins; (mapAttrs' (name: service: nameValuePair
|
||||
"${name}_${config.networking.hostName}_${
|
||||
hashedServices = mapAttrs'
|
||||
(name: service: nameValuePair
|
||||
"${name}_${config.networking.hostName}_${
|
||||
substring 0 12
|
||||
(hashString "md5" (unsafeDiscardStringContext (toJSON service)))}"
|
||||
service)
|
||||
cfg.services);
|
||||
cfg.services;
|
||||
configPath = "$HOME/.gitlab-runner/config.toml";
|
||||
configureScript = pkgs.writeShellScriptBin "gitlab-runner-configure" (
|
||||
if (cfg.configFile != null) then ''
|
||||
|
@ -76,7 +78,7 @@ let
|
|||
++ map (v: "--docker-allowed-images ${escapeShellArg v}") service.dockerAllowedImages
|
||||
++ map (v: "--docker-allowed-services ${escapeShellArg v}") service.dockerAllowedServices
|
||||
)
|
||||
))} && sleep 1
|
||||
))} && sleep 1 || exit 1
|
||||
fi
|
||||
'') hashedServices)}
|
||||
|
||||
|
@ -89,8 +91,17 @@ let
|
|||
|
||||
# update global options
|
||||
remarshal --if toml --of json ${configPath} \
|
||||
| jq -cM '.check_interval = ${toString cfg.checkInterval} |
|
||||
.concurrent = ${toString cfg.concurrent}' \
|
||||
| jq -cM ${escapeShellArg (concatStringsSep " | " [
|
||||
".check_interval = ${toJSON cfg.checkInterval}"
|
||||
".concurrent = ${toJSON cfg.concurrent}"
|
||||
".sentry_dsn = ${toJSON cfg.sentryDSN}"
|
||||
".listen_address = ${toJSON cfg.prometheusListenAddress}"
|
||||
".session_server.listen_address = ${toJSON cfg.sessionServer.listenAddress}"
|
||||
".session_server.advertise_address = ${toJSON cfg.sessionServer.advertiseAddress}"
|
||||
".session_server.session_timeout = ${toJSON cfg.sessionServer.sessionTimeout}"
|
||||
"del(.[] | nulls)"
|
||||
"del(.session_server[] | nulls)"
|
||||
])} \
|
||||
| remarshal --if json --of toml \
|
||||
| sponge ${configPath}
|
||||
|
||||
|
@ -141,6 +152,66 @@ in
|
|||
0 does not mean unlimited.
|
||||
'';
|
||||
};
|
||||
sentryDSN = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "https://public:private@host:port/1";
|
||||
description = ''
|
||||
Data Source Name for tracking of all system level errors to Sentry.
|
||||
'';
|
||||
};
|
||||
prometheusListenAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "localhost:8080";
|
||||
description = ''
|
||||
Address (<host>:<port>) on which the Prometheus metrics HTTP server
|
||||
should be listening.
|
||||
'';
|
||||
};
|
||||
sessionServer = mkOption {
|
||||
type = types.submodule {
|
||||
options = {
|
||||
listenAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "0.0.0.0:8093";
|
||||
description = ''
|
||||
An internal URL to be used for the session server.
|
||||
'';
|
||||
};
|
||||
advertiseAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "runner-host-name.tld:8093";
|
||||
description = ''
|
||||
The URL that the Runner will expose to GitLab to be used
|
||||
to access the session server.
|
||||
Fallbacks to <option>listenAddress</option> if not defined.
|
||||
'';
|
||||
};
|
||||
sessionTimeout = mkOption {
|
||||
type = types.int;
|
||||
default = 1800;
|
||||
description = ''
|
||||
How long in seconds the session can stay active after
|
||||
the job completes (which will block the job from finishing).
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
default = { };
|
||||
example = literalExample ''
|
||||
{
|
||||
listenAddress = "0.0.0.0:8093";
|
||||
}
|
||||
'';
|
||||
description = ''
|
||||
The session server allows the user to interact with jobs
|
||||
that the Runner is responsible for. A good example of this is the
|
||||
<link xlink:href="https://docs.gitlab.com/ee/ci/interactive_web_terminal/index.html">interactive web terminal</link>.
|
||||
'';
|
||||
};
|
||||
gracefulTermination = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
|
|
|
@ -5,14 +5,14 @@ with lib;
|
|||
let
|
||||
|
||||
cfg = config.services.openldap;
|
||||
openldap = pkgs.openldap;
|
||||
openldap = cfg.package;
|
||||
|
||||
dataFile = pkgs.writeText "ldap-contents.ldif" cfg.declarativeContents;
|
||||
configFile = pkgs.writeText "slapd.conf" ((optionalString cfg.defaultSchemas ''
|
||||
include ${pkgs.openldap.out}/etc/schema/core.schema
|
||||
include ${pkgs.openldap.out}/etc/schema/cosine.schema
|
||||
include ${pkgs.openldap.out}/etc/schema/inetorgperson.schema
|
||||
include ${pkgs.openldap.out}/etc/schema/nis.schema
|
||||
include ${openldap.out}/etc/schema/core.schema
|
||||
include ${openldap.out}/etc/schema/cosine.schema
|
||||
include ${openldap.out}/etc/schema/inetorgperson.schema
|
||||
include ${openldap.out}/etc/schema/nis.schema
|
||||
'') + ''
|
||||
${cfg.extraConfig}
|
||||
database ${cfg.database}
|
||||
|
@ -46,6 +46,18 @@ in
|
|||
";
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.openldap;
|
||||
description = ''
|
||||
OpenLDAP package to use.
|
||||
|
||||
This can be used to, for example, set an OpenLDAP package
|
||||
with custom overrides to enable modules or other
|
||||
functionality.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "openldap";
|
||||
|
@ -152,10 +164,10 @@ in
|
|||
";
|
||||
example = literalExample ''
|
||||
'''
|
||||
include ${pkgs.openldap.out}/etc/schema/core.schema
|
||||
include ${pkgs.openldap.out}/etc/schema/cosine.schema
|
||||
include ${pkgs.openldap.out}/etc/schema/inetorgperson.schema
|
||||
include ${pkgs.openldap.out}/etc/schema/nis.schema
|
||||
include ${openldap.out}/etc/schema/core.schema
|
||||
include ${openldap.out}/etc/schema/cosine.schema
|
||||
include ${openldap.out}/etc/schema/inetorgperson.schema
|
||||
include ${openldap.out}/etc/schema/nis.schema
|
||||
|
||||
database bdb
|
||||
suffix dc=example,dc=org
|
||||
|
|
72
nixos/modules/services/networking/onedrive.nix
Normal file
72
nixos/modules/services/networking/onedrive.nix
Normal file
|
@ -0,0 +1,72 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
cfg = config.services.onedrive;
|
||||
|
||||
onedriveLauncher = pkgs.writeShellScriptBin
|
||||
"onedrive-launcher"
|
||||
''
|
||||
# XDG_CONFIG_HOME is not recognized in the environment here.
|
||||
if [ -f $HOME/.config/onedrive-launcher ]
|
||||
then
|
||||
# Hopefully using underscore boundary helps locate variables
|
||||
for _onedrive_config_dirname_ in $(cat $HOME/.config/onedrive-launcher | grep -v '[ \t]*#' )
|
||||
do
|
||||
systemctl --user start onedrive@$_onedrive_config_dirname_
|
||||
done
|
||||
else
|
||||
systemctl --user start onedrive@onedrive
|
||||
fi
|
||||
''
|
||||
;
|
||||
|
||||
in {
|
||||
### Documentation
|
||||
# meta.doc = ./onedrive.xml;
|
||||
|
||||
### Interface
|
||||
|
||||
options.services.onedrive = {
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = "Enable OneDrive service";
|
||||
};
|
||||
|
||||
package = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.onedrive;
|
||||
defaultText = "pkgs.onedrive";
|
||||
example = lib.literalExample "pkgs.onedrive";
|
||||
description = ''
|
||||
OneDrive package to use.
|
||||
'';
|
||||
};
|
||||
};
|
||||
### Implementation
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
systemd.user.services."onedrive@" = {
|
||||
description = "Onedrive sync service";
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = ''
|
||||
${cfg.package}/bin/onedrive --monitor --verbose --confdir=%h/.config/%i
|
||||
'';
|
||||
Restart="on-failure";
|
||||
RestartSec=3;
|
||||
RestartPreventExitStatus=3;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.onedrive-launcher = {
|
||||
wantedBy = [ "default.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${onedriveLauncher}/bin/onedrive-launcher";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
34
nixos/modules/services/networking/onedrive.xml
Normal file
34
nixos/modules/services/networking/onedrive.xml
Normal file
|
@ -0,0 +1,34 @@
|
|||
<chapter xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
version="5.0"
|
||||
xml:id="onedrive">
|
||||
<title>Microsoft OneDrive</title>
|
||||
<para>
|
||||
Microsoft Onedrive is a popular cloud file-hosting service, used by 85% of Fortune 500 companies. NixOS uses a popular OneDrive client for Linux maintained by github user abraunegg. The Linux client is excellent and allows customization of which files or paths to download, not much unlike the default Windows OneDrive client by Microsoft itself. The client allows syncing with multiple onedrive accounts at the same time, of any type- OneDrive personal, OneDrive business, Office365 and Sharepoint libraries, without any additional charge.
|
||||
</para>
|
||||
<para>
|
||||
For more information, guides and documentation, see <link xlink:href="https://abraunegg.github.io/"/>.
|
||||
</para>
|
||||
<para>
|
||||
To enable OneDrive support, add the following to your <filename>configuration.nix</filename>:
|
||||
<programlisting>
|
||||
<xref linkend="opt-services.onedrive.enable"/> = true;
|
||||
</programlisting>
|
||||
This installs the <literal>onedrive</literal> package and a service <literal>onedriveLauncher</literal> which will instantiate a <literal>onedrive</literal> service for all your OneDrive accounts. Follow the steps in documentation of the onedrive client to setup your accounts. To use the service with multiple accounts, create a file named <filename>onedrive-launcher</filename> in <filename>~/.config</filename> and add the filename of the config directory, relative to <filename>~/.config</filename>. For example, if you have two OneDrive accounts with configs in <filename>~/.config/onedrive_bob_work</filename> and <filename>~/.config/onedrive_bob_personal</filename>, add the following lines:
|
||||
<programlisting>
|
||||
onedrive_bob_work
|
||||
# Not in use:
|
||||
# onedrive_bob_office365
|
||||
onedrive_bob_personal
|
||||
</programlisting>
|
||||
No such file needs to be created if you are using only a single OneDrive account with config in the default location <filename>~/.config/onedrive</filename>, in the absence of <filename>~/.config/onedrive-launcher</filename>, only a single service is instantiated, with default config path.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you wish to use a custom OneDrive package, say from another channel, add the following line:
|
||||
<programlisting>
|
||||
<xref linkend="opt-services.onedrive.package"/> = pkgs.unstable.onedrive;
|
||||
</programlisting>
|
||||
</para>
|
||||
</chapter>
|
|
@ -55,6 +55,7 @@ let
|
|||
storePath = config.boot.loader.grub.storePath;
|
||||
bootloaderId = if args.efiBootloaderId == null then "NixOS${efiSysMountPoint'}" else args.efiBootloaderId;
|
||||
timeout = if config.boot.loader.timeout == null then -1 else config.boot.loader.timeout;
|
||||
users = if cfg.users == {} || cfg.version != 1 then cfg.users else throw "GRUB version 1 does not support user accounts.";
|
||||
inherit efiSysMountPoint;
|
||||
inherit (args) devices;
|
||||
inherit (efi) canTouchEfiVariables;
|
||||
|
@ -137,6 +138,67 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
users = mkOption {
|
||||
default = {};
|
||||
example = {
|
||||
root = { hashedPasswordFile = "/path/to/file"; };
|
||||
};
|
||||
description = ''
|
||||
User accounts for GRUB. When specified, the GRUB command line and
|
||||
all boot options except the default are password-protected.
|
||||
All passwords and hashes provided will be stored in /boot/grub/grub.cfg,
|
||||
and will be visible to any local user who can read this file. Additionally,
|
||||
any passwords and hashes provided directly in a Nix configuration
|
||||
(as opposed to external files) will be copied into the Nix store, and
|
||||
will be visible to all local users.
|
||||
'';
|
||||
type = with types; attrsOf (submodule {
|
||||
options = {
|
||||
hashedPasswordFile = mkOption {
|
||||
example = "/path/to/file";
|
||||
default = null;
|
||||
type = with types; uniq (nullOr str);
|
||||
description = ''
|
||||
Specifies the path to a file containing the password hash
|
||||
for the account, generated with grub-mkpasswd-pbkdf2.
|
||||
This hash will be stored in /boot/grub/grub.cfg, and will
|
||||
be visible to any local user who can read this file.
|
||||
'';
|
||||
};
|
||||
hashedPassword = mkOption {
|
||||
example = "grub.pbkdf2.sha512.10000.674DFFDEF76E13EA...2CC972B102CF4355";
|
||||
default = null;
|
||||
type = with types; uniq (nullOr str);
|
||||
description = ''
|
||||
Specifies the password hash for the account,
|
||||
generated with grub-mkpasswd-pbkdf2.
|
||||
This hash will be copied to the Nix store, and will be visible to all local users.
|
||||
'';
|
||||
};
|
||||
passwordFile = mkOption {
|
||||
example = "/path/to/file";
|
||||
default = null;
|
||||
type = with types; uniq (nullOr str);
|
||||
description = ''
|
||||
Specifies the path to a file containing the
|
||||
clear text password for the account.
|
||||
This password will be stored in /boot/grub/grub.cfg, and will
|
||||
be visible to any local user who can read this file.
|
||||
'';
|
||||
};
|
||||
password = mkOption {
|
||||
example = "Pa$$w0rd!";
|
||||
default = null;
|
||||
type = with types; uniq (nullOr str);
|
||||
description = ''
|
||||
Specifies the clear text password for the account.
|
||||
This password will be copied to the Nix store, and will be visible to all local users.
|
||||
'';
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
mirroredBoots = mkOption {
|
||||
default = [ ];
|
||||
example = [
|
||||
|
|
|
@ -247,6 +247,45 @@ if ($grubVersion == 1) {
|
|||
}
|
||||
|
||||
else {
|
||||
my @users = ();
|
||||
foreach my $user ($dom->findnodes('/expr/attrs/attr[@name = "users"]/attrs/attr')) {
|
||||
my $name = $user->findvalue('@name') or die;
|
||||
my $hashedPassword = $user->findvalue('./attrs/attr[@name = "hashedPassword"]/string/@value');
|
||||
my $hashedPasswordFile = $user->findvalue('./attrs/attr[@name = "hashedPasswordFile"]/string/@value');
|
||||
my $password = $user->findvalue('./attrs/attr[@name = "password"]/string/@value');
|
||||
my $passwordFile = $user->findvalue('./attrs/attr[@name = "passwordFile"]/string/@value');
|
||||
|
||||
if ($hashedPasswordFile) {
|
||||
open(my $f, '<', $hashedPasswordFile) or die "Can't read file '$hashedPasswordFile'!";
|
||||
$hashedPassword = <$f>;
|
||||
chomp $hashedPassword;
|
||||
}
|
||||
if ($passwordFile) {
|
||||
open(my $f, '<', $passwordFile) or die "Can't read file '$passwordFile'!";
|
||||
$password = <$f>;
|
||||
chomp $password;
|
||||
}
|
||||
|
||||
if ($hashedPassword) {
|
||||
if (index($hashedPassword, "grub.pbkdf2.") == 0) {
|
||||
$conf .= "\npassword_pbkdf2 $name $hashedPassword";
|
||||
}
|
||||
else {
|
||||
die "Password hash for GRUB user '$name' is not valid!";
|
||||
}
|
||||
}
|
||||
elsif ($password) {
|
||||
$conf .= "\npassword $name $password";
|
||||
}
|
||||
else {
|
||||
die "GRUB user '$name' has no password!";
|
||||
}
|
||||
push(@users, $name);
|
||||
}
|
||||
if (@users) {
|
||||
$conf .= "\nset superusers=\"" . join(' ',@users) . "\"\n";
|
||||
}
|
||||
|
||||
if ($copyKernels == 0) {
|
||||
$conf .= "
|
||||
" . $grubStore->search;
|
||||
|
@ -350,7 +389,7 @@ sub copyToKernelsDir {
|
|||
}
|
||||
|
||||
sub addEntry {
|
||||
my ($name, $path) = @_;
|
||||
my ($name, $path, $options) = @_;
|
||||
return unless -e "$path/kernel" && -e "$path/initrd";
|
||||
|
||||
my $kernel = copyToKernelsDir(Cwd::abs_path("$path/kernel"));
|
||||
|
@ -396,7 +435,7 @@ sub addEntry {
|
|||
$conf .= " " . ($xen ? "module" : "kernel") . " $kernel $kernelParams\n";
|
||||
$conf .= " " . ($xen ? "module" : "initrd") . " $initrd\n\n";
|
||||
} else {
|
||||
$conf .= "menuentry \"$name\" {\n";
|
||||
$conf .= "menuentry \"$name\" " . ($options||"") . " {\n";
|
||||
$conf .= $grubBoot->search . "\n";
|
||||
if ($copyKernels == 0) {
|
||||
$conf .= $grubStore->search . "\n";
|
||||
|
@ -413,7 +452,7 @@ sub addEntry {
|
|||
# Add default entries.
|
||||
$conf .= "$extraEntries\n" if $extraEntriesBeforeNixOS;
|
||||
|
||||
addEntry("NixOS - Default", $defaultConfig);
|
||||
addEntry("NixOS - Default", $defaultConfig, "--unrestricted");
|
||||
|
||||
$conf .= "$extraEntries\n" unless $extraEntriesBeforeNixOS;
|
||||
|
||||
|
|
|
@ -102,6 +102,8 @@ in
|
|||
systemd.services.plymouth-poweroff.wantedBy = [ "poweroff.target" ];
|
||||
systemd.services.plymouth-reboot.wantedBy = [ "reboot.target" ];
|
||||
systemd.services.plymouth-read-write.wantedBy = [ "sysinit.target" ];
|
||||
systemd.services.systemd-ask-password-plymouth.wantedBy = ["multi-user.target"];
|
||||
systemd.paths.systemd-ask-password-plymouth.wantedBy = ["multi-user.target"];
|
||||
|
||||
boot.initrd.extraUtilsCommands = ''
|
||||
copy_bin_and_libs ${pkgs.plymouth}/bin/plymouthd
|
||||
|
@ -146,6 +148,7 @@ in
|
|||
# We use `mkAfter` to ensure that LUKS password prompt would be shown earlier than the splash screen.
|
||||
boot.initrd.preLVMCommands = mkAfter ''
|
||||
mkdir -p /etc/plymouth
|
||||
mkdir -p /run/plymouth
|
||||
ln -s ${configFile} /etc/plymouth/plymouthd.conf
|
||||
ln -s $extraUtils/share/plymouth/plymouthd.defaults /etc/plymouth/plymouthd.defaults
|
||||
ln -s $extraUtils/share/plymouth/logo.png /etc/plymouth/logo.png
|
||||
|
|
|
@ -197,9 +197,7 @@ in
|
|||
Request encryption keys or passwords for all encrypted datasets on import.
|
||||
For root pools the encryption key can be supplied via both an
|
||||
interactive prompt (keylocation=prompt) and from a file
|
||||
(keylocation=file://). Note that for data pools the encryption key can
|
||||
be only loaded from a file and not via interactive prompt since the
|
||||
import is processed in a background systemd service.
|
||||
(keylocation=file://).
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -490,7 +488,11 @@ in
|
|||
description = "Import ZFS pool \"${pool}\"";
|
||||
# we need systemd-udev-settle until https://github.com/zfsonlinux/zfs/pull/4943 is merged
|
||||
requires = [ "systemd-udev-settle.service" ];
|
||||
after = [ "systemd-udev-settle.service" "systemd-modules-load.service" ];
|
||||
after = [
|
||||
"systemd-udev-settle.service"
|
||||
"systemd-modules-load.service"
|
||||
"systemd-ask-password-console.service"
|
||||
];
|
||||
wantedBy = (getPoolMounts pool) ++ [ "local-fs.target" ];
|
||||
before = (getPoolMounts pool) ++ [ "local-fs.target" ];
|
||||
unitConfig = {
|
||||
|
@ -515,7 +517,20 @@ in
|
|||
done
|
||||
poolImported "${pool}" || poolImport "${pool}" # Try one last time, e.g. to import a degraded pool.
|
||||
if poolImported "${pool}"; then
|
||||
${optionalString cfgZfs.requestEncryptionCredentials "\"${packages.zfsUser}/sbin/zfs\" load-key -r \"${pool}\""}
|
||||
${optionalString cfgZfs.requestEncryptionCredentials ''
|
||||
${packages.zfsUser}/sbin/zfs list -rHo name,keylocation ${pool} | while IFS=$'\t' read ds kl; do
|
||||
(case "$kl" in
|
||||
none )
|
||||
;;
|
||||
prompt )
|
||||
${config.systemd.package}/bin/systemd-ask-password "Enter key for $ds:" | ${packages.zfsUser}/sbin/zfs load-key "$ds"
|
||||
;;
|
||||
* )
|
||||
${packages.zfsUser}/sbin/zfs load-key "$ds"
|
||||
;;
|
||||
esac) < /dev/null # To protect while read ds kl in case anything reads stdin
|
||||
done
|
||||
''}
|
||||
echo "Successfully imported ${pool}"
|
||||
else
|
||||
exit 1
|
||||
|
|
|
@ -126,6 +126,7 @@ in
|
|||
grafana = handleTest ./grafana.nix {};
|
||||
graphite = handleTest ./graphite.nix {};
|
||||
graylog = handleTest ./graylog.nix {};
|
||||
grub = handleTest ./grub.nix {};
|
||||
gvisor = handleTest ./gvisor.nix {};
|
||||
hadoop.hdfs = handleTestOn [ "x86_64-linux" ] ./hadoop/hdfs.nix {};
|
||||
hadoop.yarn = handleTestOn [ "x86_64-linux" ] ./hadoop/yarn.nix {};
|
||||
|
|
|
@ -1,11 +1,6 @@
|
|||
import ./make-test-python.nix ({ pkgs, ... } :
|
||||
{
|
||||
name = "graphite";
|
||||
meta = {
|
||||
# Fails on dependency `python-2.7-Twisted`'s test suite
|
||||
# complaining `ImportError: No module named zope.interface`.
|
||||
broken = true;
|
||||
};
|
||||
nodes = {
|
||||
one =
|
||||
{ ... }: {
|
||||
|
@ -21,7 +16,7 @@ import ./make-test-python.nix ({ pkgs, ... } :
|
|||
api = {
|
||||
enable = true;
|
||||
port = 8082;
|
||||
finders = [ pkgs.python3Packages.influxgraph ];
|
||||
finders = [ ];
|
||||
};
|
||||
carbon.enableCache = true;
|
||||
seyren.enable = false; # Implicitely requires openssl-1.0.2u which is marked insecure
|
||||
|
@ -41,10 +36,14 @@ import ./make-test-python.nix ({ pkgs, ... } :
|
|||
# even if they're still in preStart (which takes quite long for graphiteWeb).
|
||||
# Wait for ports to open so we're sure the services are up and listening.
|
||||
one.wait_for_open_port(8080)
|
||||
one.wait_for_open_port(8082)
|
||||
one.wait_for_open_port(2003)
|
||||
one.succeed('echo "foo 1 `date +%s`" | nc -N localhost 2003')
|
||||
one.wait_until_succeeds(
|
||||
"curl 'http://localhost:8080/metrics/find/?query=foo&format=treejson' --silent | grep foo >&2"
|
||||
)
|
||||
one.wait_until_succeeds(
|
||||
"curl 'http://localhost:8082/metrics/find/?query=foo&format=treejson' --silent | grep foo >&2"
|
||||
)
|
||||
'';
|
||||
})
|
||||
|
|
60
nixos/tests/grub.nix
Normal file
60
nixos/tests/grub.nix
Normal file
|
@ -0,0 +1,60 @@
|
|||
import ./make-test-python.nix ({ lib, ... }: {
|
||||
name = "grub";
|
||||
|
||||
meta = with lib.maintainers; {
|
||||
maintainers = [ rnhmjoj ];
|
||||
};
|
||||
|
||||
machine = { ... }: {
|
||||
virtualisation.useBootLoader = true;
|
||||
|
||||
boot.loader.timeout = null;
|
||||
boot.loader.grub = {
|
||||
enable = true;
|
||||
users.alice.password = "supersecret";
|
||||
|
||||
# OCR is not accurate enough
|
||||
extraConfig = "serial; terminal_output serial";
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
def grub_login_as(user, password):
|
||||
"""
|
||||
Enters user and password to log into GRUB
|
||||
"""
|
||||
machine.wait_for_console_text("Enter username:")
|
||||
machine.send_chars(user + "\n")
|
||||
machine.wait_for_console_text("Enter password:")
|
||||
machine.send_chars(password + "\n")
|
||||
|
||||
|
||||
def grub_select_all_configurations():
|
||||
"""
|
||||
Selects "All configurations" from the GRUB menu
|
||||
to trigger a login request.
|
||||
"""
|
||||
machine.send_monitor_command("sendkey down")
|
||||
machine.send_monitor_command("sendkey ret")
|
||||
|
||||
|
||||
machine.start()
|
||||
|
||||
# wait for grub screen
|
||||
machine.wait_for_console_text("GNU GRUB")
|
||||
|
||||
grub_select_all_configurations()
|
||||
with subtest("Invalid credentials are rejected"):
|
||||
grub_login_as("wronguser", "wrongsecret")
|
||||
machine.wait_for_console_text("error: access denied.")
|
||||
|
||||
grub_select_all_configurations()
|
||||
with subtest("Valid credentials are accepted"):
|
||||
grub_login_as("alice", "supersecret")
|
||||
machine.send_chars("\n") # press enter to boot
|
||||
machine.wait_for_console_text("Linux version")
|
||||
|
||||
with subtest("Machine boots correctly"):
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
})
|
|
@ -18,7 +18,7 @@ import ../make-test-python.nix {
|
|||
machine.wait_until_succeeds("grep --fixed-strings 'ready' lorri.stdout")
|
||||
|
||||
# Ping the daemon
|
||||
machine.succeed("lorri internal__ping shell.nix")
|
||||
machine.succeed("lorri internal ping shell.nix")
|
||||
|
||||
# Wait for the daemon to finish the build
|
||||
machine.wait_until_succeeds("grep --fixed-strings 'Completed' lorri.stdout")
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "aeolus";
|
||||
version = "0.9.8";
|
||||
version = "0.9.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
|
||||
sha256 = "1zfr3567mwbqsfybkhg03n5dvmhllk88c9ayb10qzz2nh6d7g2qn";
|
||||
sha256 = "04y1j36y7vc93bv299vfiawbww4ym6q7avfx8vw6rmxr817zrch3";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "flacon";
|
||||
version = "6.0.0";
|
||||
version = "6.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "flacon";
|
||||
repo = "flacon";
|
||||
rev = "v${version}";
|
||||
sha256 = "0p5z6rwckda0lkljrrvx6i90fazj53cxg9pasfmi8154j1z72dj2";
|
||||
sha256 = "04yp3aym7h70xjni9ancqv5lc4zds5a8dgw3fzgqs8k5nmh074gv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ft2-clone";
|
||||
version = "1.25_fix";
|
||||
version = "1.26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "ft2-clone";
|
||||
rev = "v${version}";
|
||||
sha256 = "0q2mcp3xpgwilmiwzr9nnxlyg9c1kynh6cxzlyd95n520j00s6i7";
|
||||
sha256 = "0fqb4415qy2nwjz7ahi43nk795ifswb2b37sc7p5n9m4yc8h53wv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -18,13 +18,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "giada";
|
||||
version = "0.16.2.2";
|
||||
version = "0.16.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "monocasual";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0rpg5qmw3b76xcra869shb8fwk5wfzpzw216n96hxa5s6k69cm0p";
|
||||
sha256 = "1sysv5d0wq6ib47bqsn3wdzkqzjpzjrgzg15bkllbm67hiz9abhh";
|
||||
};
|
||||
|
||||
configureFlags = [
|
||||
|
|
|
@ -14,16 +14,16 @@ let
|
|||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ncspot";
|
||||
version = "0.1.3";
|
||||
version = "0.1.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hrkfdn";
|
||||
repo = "ncspot";
|
||||
rev = "v${version}";
|
||||
sha256 = "144a7wn5l64fhvj8vgwl7z4bp8lbq0pb0dl38x9y4wkqmdh6wrli";
|
||||
rev = version;
|
||||
sha256 = "02g2lamabkwayhm56498pfvl9g0xx2vsan2j48ssrwjx6rwmlh7n";
|
||||
};
|
||||
|
||||
cargoSha256 = "19gn0v7j1ly3ywgflfj27pnrwjiiy17m3g1z0kzagxpjy2xi2qxy";
|
||||
cargoSha256 = "07gw2az11lpldwpb792l64b7xlarvx77364rn4i8g6a5271zahz3";
|
||||
|
||||
cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
|
||||
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pt2-clone";
|
||||
version = "1.19";
|
||||
version = "1.20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "pt2-clone";
|
||||
rev = "v${version}";
|
||||
sha256 = "0lr8gq4immc5cx1wr5ng6ccxs9afbd2dk6i0n5np25z14dvbvk3k";
|
||||
sha256 = "0s4yk8w19qa58n5p558n6m7d5mslr9h9z5q3ayrgqcchdlm8cfky";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ergo";
|
||||
version = "3.2.6";
|
||||
version = "3.2.7";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
|
||||
sha256 = "1a38j7dy6ax9xvcjbdkiz0z33ln4rlmgrxznvqhdf11j70g1sr6x";
|
||||
sha256 = "1ng2q9yp03j8p2xh7rlqad5h4p82ks1l00401pq7m0y02q90szr8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -268,12 +268,12 @@ in
|
|||
|
||||
clion = buildClion rec {
|
||||
name = "clion-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "C/C++ IDE. New. Intelligent. Cross-platform";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
|
||||
sha256 = "0136hmknkxrsgbygxqzrq1836kg02p14hmv5mzbpp79yglhv2xml"; /* updated by script */
|
||||
sha256 = "0q5bnb0rmsgks7brrdpgah83s2ixa4pyhw8jvg9p2g48b582rmf7"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-clion";
|
||||
update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
|
||||
|
@ -281,12 +281,12 @@ in
|
|||
|
||||
datagrip = buildDataGrip rec {
|
||||
name = "datagrip-${version}";
|
||||
version = "2020.1.3"; /* updated by script */
|
||||
version = "2020.1.5"; /* updated by script */
|
||||
description = "Your Swiss Army Knife for Databases and SQL";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
|
||||
sha256 = "0ivnicpn67mfyhmiwbx80pq5l2xa4g1cpp79mh7rgm2c5klmf201"; /* updated by script */
|
||||
sha256 = "0605d772156lzlz5904px2spdijc92yz6rjvmpyg6vk5zv5k2wm9"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-datagrip";
|
||||
update-channel = "DataGrip RELEASE";
|
||||
|
@ -294,12 +294,12 @@ in
|
|||
|
||||
goland = buildGoland rec {
|
||||
name = "goland-${version}";
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
version = "2020.1.3"; /* updated by script */
|
||||
description = "Up and Coming Go IDE";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/go/${name}.tar.gz";
|
||||
sha256 = "0v6vi6m94fwzsg5s357ymh8604zkv6q0zhyqfh9sj4ynzi7l4fyv"; /* updated by script */
|
||||
sha256 = "0pqwj4gc23gf10xqciwndimb4ml7djmx8m5rh52c07m77y4aniyn"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-goland";
|
||||
update-channel = "GoLand RELEASE";
|
||||
|
@ -307,12 +307,12 @@ in
|
|||
|
||||
idea-community = buildIdea rec {
|
||||
name = "idea-community-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
|
||||
sha256 = "0q848swfg9mjiini5bbjdj1f0qpd1n4glxdpncjj7mbpvp7s2h5k"; /* updated by script */
|
||||
sha256 = "07gfqyp6blbf7v8p106ngpq7c5p0llcjahi205yg2jgzkhshn7ld"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-idea-ce";
|
||||
update-channel = "IntelliJ IDEA RELEASE";
|
||||
|
@ -320,12 +320,12 @@ in
|
|||
|
||||
idea-ultimate = buildIdea rec {
|
||||
name = "idea-ultimate-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
|
||||
sha256 = "13khjc7fp28mpcdn74msdw57nzhicg32xrrvj7s7na2qd9gqz0hf"; /* updated by script */
|
||||
sha256 = "13qj8n5daz0z0pjizyfsvbbr1gxp5479ar3a68ygi0vrpmbdbssd"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-idea";
|
||||
update-channel = "IntelliJ IDEA RELEASE";
|
||||
|
@ -346,12 +346,12 @@ in
|
|||
|
||||
phpstorm = buildPhpStorm rec {
|
||||
name = "phpstorm-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "Professional IDE for Web and PHP developers";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
|
||||
sha256 = "16gclbczd9czqhply0xb2ykv0bw4bgv85fihy1n2szc4rp643qdw"; /* updated by script */
|
||||
sha256 = "00c8vlp125j56v9g9d4rc5g4dhgvl1bhi6qrzvpaf6x77jbq4fv4"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-phpstorm";
|
||||
update-channel = "PhpStorm RELEASE";
|
||||
|
@ -359,12 +359,12 @@ in
|
|||
|
||||
pycharm-community = buildPycharm rec {
|
||||
name = "pycharm-community-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "PyCharm Community Edition";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/python/${name}.tar.gz";
|
||||
sha256 = "0p2q01yragab7c15aicpmaby075y7mpf6iavdfipi033q4gnlnki"; /* updated by script */
|
||||
sha256 = "1s04b9w7sydix1sjqzmby63nwcvzs6iw28wz7441kxgryl9qg0qw"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-pycharm-ce";
|
||||
update-channel = "PyCharm RELEASE";
|
||||
|
@ -372,12 +372,12 @@ in
|
|||
|
||||
pycharm-professional = buildPycharm rec {
|
||||
name = "pycharm-professional-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "PyCharm Professional Edition";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/python/${name}.tar.gz";
|
||||
sha256 = "1lq97aqnibvg483ww7wi8slh302gydd2kdkw6p2516rjcmm6n324"; /* updated by script */
|
||||
sha256 = "1ysj00qbn5ik6i5953b9mln4g456fmn3phdln9m5jmcb0126y235"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-pycharm";
|
||||
update-channel = "PyCharm RELEASE";
|
||||
|
@ -385,12 +385,12 @@ in
|
|||
|
||||
rider = buildRider rec {
|
||||
name = "rider-${version}";
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
version = "2020.1.3"; /* updated by script */
|
||||
description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
|
||||
sha256 = "0flwq61p7827f8nmldqgfpxbfl422imclksw6w97mgzqqhcbgksd"; /* updated by script */
|
||||
sha256 = "1zzkd3b5j3q6jqrvibxz33a4fcm7pgqfx91bqjs615v3499ncng7"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-rider";
|
||||
update-channel = "Rider RELEASE";
|
||||
|
@ -398,12 +398,12 @@ in
|
|||
|
||||
ruby-mine = buildRubyMine rec {
|
||||
name = "ruby-mine-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "The Most Intelligent Ruby and Rails IDE";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
|
||||
sha256 = "0xhx3n2xdk0k0qx7hdiyfga16hjf2j95k219wh7mh0cys20hkrg8"; /* updated by script */
|
||||
sha256 = "1ycwml7fyhjajjfy1fhggmx0mcdcjidkxll7357rv2z51r0yhc9h"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-rubymine";
|
||||
update-channel = "RubyMine RELEASE";
|
||||
|
@ -411,12 +411,12 @@ in
|
|||
|
||||
webstorm = buildWebStorm rec {
|
||||
name = "webstorm-${version}";
|
||||
version = "2020.1.1"; /* updated by script */
|
||||
version = "2020.1.2"; /* updated by script */
|
||||
description = "Professional IDE for Web and JavaScript development";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
|
||||
sha256 = "0d543g06bxpw4q2p19vmvrxpbhqsvspjbs3sqnw6hxni7wcflhkg"; /* updated by script */
|
||||
sha256 = "1szgiccimfk99z9x1k99lgic6ix81fdahf1k3a88rddl8hhncjwv"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-webstorm";
|
||||
update-channel = "WebStorm RELEASE";
|
||||
|
|
|
@ -24,7 +24,7 @@ let
|
|||
) deviceIds;
|
||||
|
||||
quartus = stdenv.mkDerivation rec {
|
||||
version = "19.1.0.670";
|
||||
version = "20.1.0.711";
|
||||
pname = "quartus-prime-lite-unwrapped";
|
||||
|
||||
src = let
|
||||
|
@ -34,12 +34,12 @@ let
|
|||
};
|
||||
|
||||
hashes = {
|
||||
"arria_lite" = "1flj9w0vb2p9f9zll136izr6qvmxn0lg72bvaqxs3sxc9vj06wm1";
|
||||
"cyclonev" = "0bqxpvjgph0y6slk0jq75mcqzglmqkm0jsx10y9xz5llm6zxzqab";
|
||||
"cyclone" = "0pzs8y4s3snxg4g6lrb21qi88abm48g279xzd98qv17qxb2z82rr";
|
||||
"cyclone10lp" = "1ccxq8n20y40y47zddkijcv41w3cddvydddr3m4844q31in3nxha";
|
||||
"max" = "1cxzbqscxvlcy74dpqmvlnxjyyxfwcx3spygpvpwi6dfj3ipgm2z";
|
||||
"max10" = "14k83javivbk65mpb17wdwsyb8xk7x9gzj9x0wnd24mmijrvdy9s";
|
||||
"arria_lite" = "09g2knq23h3vj0s5y7hsdnqbbkr3pnv53dzpqcw2lq9mb5zfs9r0";
|
||||
"cyclonev" = "05hrpysasyfb7xhxg68spdffxyvxcx0iagibd5jz643b7n6aalpa";
|
||||
"cyclone" = "1x3rnwsvzrb5kwdz35sbcabxmcvj8xxpnjlpcjwfc69ybiyr6sgz";
|
||||
"cyclone10lp" = "1x6d4hm697mjgzaxixrw5va8anr6ihhx96x2524r6axpwqf6wcja";
|
||||
"max" = "060b7v0xh86kkjyiix7akfkzhx2kl1b3q117kp7xibnz6yrzwmy3";
|
||||
"max10" = "05840l9pmqa4i1b3ajfaxkqz1hppls556vbq16a42acz2qs2g578";
|
||||
};
|
||||
|
||||
devicePackages = map (id: {
|
||||
|
@ -48,10 +48,10 @@ let
|
|||
}) (lib.attrValues supportedDeviceIds);
|
||||
in map require ([{
|
||||
name = "QuartusLiteSetup-${version}-linux.run";
|
||||
sha256 = "15vxvqxqdk29ahlw3lkm1nzxyhzy4626wb9s5f2h6sjgq64r8m7f";
|
||||
sha256 = "07ssrv8p8kacal6xd80n4h7l5xz13aw1m1gfqqaxig0ivsj971z5";
|
||||
} {
|
||||
name = "ModelSimSetup-${version}-linux.run";
|
||||
sha256 = "0j1vfr91jclv88nam2plx68arxmz4g50sqb840i60wqd5b0l3y6r";
|
||||
sha256 = "0smxasrmr1c8k6hy378knskpjmz4cgpgb35v5jclns0kx68y3c42";
|
||||
}] ++ devicePackages);
|
||||
|
||||
nativeBuildInputs = [ unstick ];
|
||||
|
@ -81,9 +81,6 @@ let
|
|||
--disable-components ${lib.concatStringsSep "," disabledComponents} \
|
||||
--mode unattended --installdir $out --accept_eula 1
|
||||
|
||||
# This patch is from https://wiki.archlinux.org/index.php/Altera_Design_Software
|
||||
patch --force --strip 0 --directory $out < ${./vsim.patch}
|
||||
|
||||
rm -r $out/uninstall $out/logs
|
||||
'';
|
||||
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
--- modelsim_ase/vco 1970-01-01 01:00:01.000000000 +0100
|
||||
+++ modelsim_ase/vco 1970-01-01 01:00:01.000000000 +0100
|
||||
@@ -207,7 +207,7 @@
|
||||
2.[5-9]*) vco="linux" ;;
|
||||
2.[1-9][0-9]*) vco="linux" ;;
|
||||
3.[0-9]*) vco="linux" ;;
|
||||
- *) vco="linux_rh60" ;;
|
||||
+ *) vco="linux" ;;
|
||||
esac
|
||||
if [ ! -x "$dir/$vco/vsim" ]; then
|
||||
if [ -x "$dir/linuxle/vsim" ]; then
|
|
@ -3,13 +3,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "tiled";
|
||||
version = "1.3.5";
|
||||
version = "1.4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bjorn";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0d1bs909vga1k494xnggq1mcjfxjrwa4acc0mj5rv73xqkc9mb2s";
|
||||
sha256 = "1x8jymmc56di1c1wxalsp6qhcban2hahn70ndd097b8mx52gckjr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig qmake ];
|
||||
|
|
|
@ -23,13 +23,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "akira";
|
||||
version = "2019-10-12";
|
||||
version = "2020-05-01";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "akiraux";
|
||||
repo = "Akira";
|
||||
rev = "cab952dee4591b6bde34d670c1f853f5a3ff6b19";
|
||||
sha256 = "1fp3a79hkh6xwwqqdrx4zqq2zhsm236c6fhhl5f2nmi108yxz04q";
|
||||
rev = "87c495fa0a686b1e9b84aff7d9c0a9553da2c466";
|
||||
sha256 = "0ikz6dyx0z2wqskas628hbrbhx3z5gy7i4acrvspfhhg6rk88aqd";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -59,8 +59,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
mesonFlags = [ "-Dprofile=default" ];
|
||||
|
||||
patches = [ ./fix-build-with-vala-0-44-or-later.patch ];
|
||||
|
||||
postPatch = ''
|
||||
chmod +x build-aux/meson/post_install.py
|
||||
patchShebangs build-aux/meson/post_install.py
|
||||
|
|
|
@ -1,88 +0,0 @@
|
|||
From bcda8fd53f6f232db0b6411269ba108af551629f Mon Sep 17 00:00:00 2001
|
||||
From: Alberto Fanjul <albertofanjul@gmail.com>
|
||||
Date: Tue, 9 Apr 2019 09:45:36 +0200
|
||||
Subject: [PATCH] Build on vala >= 0.44.2
|
||||
|
||||
---
|
||||
src/FileFormat/JsonObject.vala | 2 +-
|
||||
src/FileFormat/JsonObjectArray.vala | 2 +-
|
||||
src/FileFormat/ZipArchiveHandler.vala | 18 +++++++++++++++++-
|
||||
3 files changed, 19 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/FileFormat/JsonObject.vala b/src/FileFormat/JsonObject.vala
|
||||
index 7bfe46f..805fbad 100644
|
||||
--- a/src/FileFormat/JsonObject.vala
|
||||
+++ b/src/FileFormat/JsonObject.vala
|
||||
@@ -31,7 +31,7 @@ public abstract class Akira.FileFormat.JsonObject : GLib.Object {
|
||||
|
||||
private ObjectClass obj_class;
|
||||
|
||||
- public JsonObject.from_object (Json.Object object) {
|
||||
+ protected JsonObject.from_object (Json.Object object) {
|
||||
Object (object: object);
|
||||
}
|
||||
|
||||
diff --git a/src/FileFormat/JsonObjectArray.vala b/src/FileFormat/JsonObjectArray.vala
|
||||
index 4f6e573..d0a7dad 100644
|
||||
--- a/src/FileFormat/JsonObjectArray.vala
|
||||
+++ b/src/FileFormat/JsonObjectArray.vala
|
||||
@@ -31,7 +31,7 @@ public abstract class Akira.FileFormat.JsonObjectArray : Object {
|
||||
*
|
||||
* Your JsonObject implementation should have it's own list of items
|
||||
*/
|
||||
- public JsonObjectArray (Json.Object object, string property_name) {
|
||||
+ protected JsonObjectArray (Json.Object object, string property_name) {
|
||||
Object (object: object, property_name: property_name);
|
||||
}
|
||||
|
||||
diff --git a/src/FileFormat/ZipArchiveHandler.vala b/src/FileFormat/ZipArchiveHandler.vala
|
||||
index ca60dd0..5d65aa2 100644
|
||||
--- a/src/FileFormat/ZipArchiveHandler.vala
|
||||
+++ b/src/FileFormat/ZipArchiveHandler.vala
|
||||
@@ -262,11 +262,17 @@ public class Akira.FileFormat.ZipArchiveHandler : GLib.Object {
|
||||
continue;
|
||||
}
|
||||
|
||||
+ Posix.off_t offset;
|
||||
+#if VALA_0_42
|
||||
+ uint8[] buffer;
|
||||
+ while (archive.read_data_block (out buffer, out offset) == Archive.Result.OK) {
|
||||
+ if (extractor.write_data_block (buffer, offset) != Archive.Result.OK) {
|
||||
+#else
|
||||
void* buffer = null;
|
||||
size_t buffer_length;
|
||||
- Posix.off_t offset;
|
||||
while (archive.read_data_block (out buffer, out buffer_length, out offset) == Archive.Result.OK) {
|
||||
if (extractor.write_data_block (buffer, buffer_length, offset) != Archive.Result.OK) {
|
||||
+#endif
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -316,9 +322,15 @@ public class Akira.FileFormat.ZipArchiveHandler : GLib.Object {
|
||||
// Add an entry to the archive
|
||||
Archive.Entry entry = new Archive.Entry ();
|
||||
entry.set_pathname (initial_folder.get_relative_path (current_file));
|
||||
+#if VALA_0_42
|
||||
+ entry.set_size ((Archive.int64_t) file_info.get_size ());
|
||||
+ entry.set_filetype (Archive.FileType.IFREG);
|
||||
+ entry.set_perm (Archive.FileType.IFREG);
|
||||
+#else
|
||||
entry.set_size (file_info.get_size ());
|
||||
entry.set_filetype ((uint) Posix.S_IFREG);
|
||||
entry.set_perm (0644);
|
||||
+#endif
|
||||
|
||||
if (archive.write_header (entry) != Archive.Result.OK) {
|
||||
critical ("Error writing '%s': %s (%d)", current_file.get_path (), archive.error_string (), archive.errno ());
|
||||
@@ -333,7 +345,11 @@ public class Akira.FileFormat.ZipArchiveHandler : GLib.Object {
|
||||
break;
|
||||
}
|
||||
|
||||
+#if VALA_0_42
|
||||
+ archive.write_data (buffer[0:bytes_read]);
|
||||
+#else
|
||||
archive.write_data (buffer, bytes_read);
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
}
|
|
@ -11,11 +11,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "drawio";
|
||||
version = "13.3.1";
|
||||
version = "13.3.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
|
||||
sha256 = "0zvxmqqbgfxad1n9pa4h99l8hys486wziw5yyndxbv1v80p55p0p";
|
||||
sha256 = "16pds6sip90davrlrk17a7ms5nh1bs8js5i0hbci1l8gsfyx22i7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "pdfcpu";
|
||||
version = "0.3.3";
|
||||
version = "0.3.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pdfcpu";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "09z4z2csp7ld47q36x2id5zadaihisbnk7bkdvci826hwm8km7sl";
|
||||
sha256 = "00c4psgfh4hia144zsdhrq83bw3fqda1ancv2gkn5ymxkbpnpyrn";
|
||||
};
|
||||
|
||||
vendorSha256 = "09alkpfyxapycv6zsaz7prgbr0a1jzd78n7w2mh01mg4hhb2j3k7";
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "processing";
|
||||
version = "3.5.3";
|
||||
version = "3.5.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "processing";
|
||||
repo = "processing";
|
||||
rev = "processing-0269-${version}";
|
||||
sha256 = "0ajniy3a0i0rx7is46r85yh3ah4zm4ra1gbllmihw9pmnfjgfajn";
|
||||
rev = "processing-0270-${version}";
|
||||
sha256 = "0cvv8jda9y8qnfcsziasyv3w7h3w22q78ihr23cm4an63ghxci58";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ ant rsync makeWrapper ];
|
||||
|
@ -22,8 +22,10 @@ stdenv.mkDerivation rec {
|
|||
# do not download a file during build
|
||||
${xmlstarlet}/bin/xmlstarlet ed --inplace -P -d '//get[@src="http://download.processing.org/reference.zip"]' build/build.xml
|
||||
install -D -m0444 ${fetchurl {
|
||||
url = "http://download.processing.org/reference.zip";
|
||||
sha256 = "198bpk8mzns6w5h0zdf50wr6iv7sgdi6v7jznj5rbsnpgyilxz35";
|
||||
# Use archive.org link for reproducibility until the following issue is fixed:
|
||||
# https://github.com/processing/processing/issues/5711
|
||||
url = "https://web.archive.org/web/20200406132357/https://download.processing.org/reference.zip";
|
||||
sha256 = "093hc7kc9wfxqgf5dzfmfp68pbsy8x647cj0a25vgjm1swi61zbi";
|
||||
}
|
||||
} ./java/reference.zip
|
||||
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
, rttr
|
||||
, kpurpose
|
||||
, kdeclarative
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
mkDerivation {
|
||||
|
@ -69,6 +70,7 @@ mkDerivation {
|
|||
rttr
|
||||
kpurpose
|
||||
kdeclarative
|
||||
wrapGAppsHook
|
||||
];
|
||||
# Both MLT and FFMpeg paths must be set or Kdenlive will complain that it
|
||||
# doesn't find them. See:
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ArchiSteamFarm";
|
||||
version = "4.2.2.1";
|
||||
version = "4.2.3.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/JustArchiNET/ArchiSteamFarm/releases/download/${version}/ASF-generic.zip";
|
||||
sha256 = "0pr9rrhi44yl99c2i12rimmc4mhbh0ma9jn17cgsh8p0kbj8sq94";
|
||||
sha256 = "0v69rrs5fr1n5llfx42xkiish52al7kb36fjy3ng0j9qfp3g8pj7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip makeWrapper jq ];
|
||||
|
|
|
@ -17,11 +17,11 @@ let python = python3Packages.python; in
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "blender";
|
||||
version = "2.83.0";
|
||||
version = "2.83.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
|
||||
sha256 = "07rzm4xaj94pjxy2vlqfhi1adsqpshfkrzrq8kljmcbnw22vrqhl";
|
||||
sha256 = "1kd74nzqvpcpsb4lghnjj9z3ps93lzqbhkv3lp5p79rqs8y64i23";
|
||||
};
|
||||
|
||||
patches = lib.optional stdenv.isDarwin ./darwin.patch;
|
||||
|
@ -57,6 +57,10 @@ stdenv.mkDerivation rec {
|
|||
--replace '${"$"}{LIBDIR}/python' \
|
||||
'${python}'
|
||||
substituteInPlace build_files/cmake/platform/platform_apple.cmake \
|
||||
--replace 'set(PYTHON_VERSION 3.7)' \
|
||||
'set(PYTHON_VERSION ${python.pythonVersion})' \
|
||||
--replace '${"$"}{PYTHON_VERSION}m' \
|
||||
'${"$"}{PYTHON_VERSION}' \
|
||||
--replace '${"$"}{LIBDIR}/python' \
|
||||
'${python}' \
|
||||
--replace '${"$"}{LIBDIR}/opencollada' \
|
||||
|
|
|
@ -30,11 +30,11 @@ let
|
|||
in
|
||||
mkDerivation rec {
|
||||
pname = "calibre";
|
||||
version = "4.17.0";
|
||||
version = "4.19.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1qgzx2q8a5g102z311ibz4aw1ipn2j1lbndgadig7xvy6zdhknma";
|
||||
sha256 = "1kpj65spwr9m88vshsljpdrw5jy7bbpqgqcrvqb17abh7fnnrb4x";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "cherrytree";
|
||||
version = "0.39.3";
|
||||
version = "0.39.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "giuspen";
|
||||
repo = "cherrytree";
|
||||
rev = version;
|
||||
sha256 = "1k9i7acpphx0if6ij2p9fkmj638ry6hcyr1rdr039a8zi8hq98gz";
|
||||
sha256 = "1wycgn1f3b858qb6kn2bsaabak8n52qkpd24w54xz6fjizlnw7x0";
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "clightd";
|
||||
version = "4.1";
|
||||
version = "4.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FedeDP";
|
||||
repo = "Clightd";
|
||||
rev = version;
|
||||
sha256 = "0pqnn52nn22k49f5cw4jcr8vcbff28n56i8fizg1mmfshy8pn891";
|
||||
sha256 = "07z1m1x7nnczd51sg7m2lb6rb2c37c8glsnbrlq44hx176sj9cmj";
|
||||
};
|
||||
|
||||
# dbus-1.pc has datadir=/etc
|
||||
|
|
|
@ -10,13 +10,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "ddcui";
|
||||
version = "0.1.1";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rockowitz";
|
||||
repo = "ddcui";
|
||||
rev = "v${version}";
|
||||
sha256 = "02qr7i3pdq8p6lnhwihfgd9b7y9zwpdk6gwv626rz32ai6mfrfhl";
|
||||
sha256 = "0myma1zw6dlygv3xbin662d91zcnwss10syf12q2fppkrd8qdgqf";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchFromGitHub, fetchpatch, zlib, which, IOKit, qtbase }:
|
||||
{ lib, stdenv, fetchFromGitHub, fetchpatch, zlib, which, IOKit, qtbase, libusb-compat-0_1 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gpsbabel";
|
||||
|
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
|||
})
|
||||
];
|
||||
|
||||
buildInputs = [ zlib qtbase which ]
|
||||
buildInputs = [ zlib qtbase which libusb-compat-0_1 ]
|
||||
++ lib.optionals stdenv.isDarwin [ IOKit ];
|
||||
|
||||
/* FIXME: Building the documentation, with "make doc", requires this:
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "gpxsee";
|
||||
version = "7.30";
|
||||
version = "7.31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tumic0";
|
||||
repo = "GPXSee";
|
||||
rev = version;
|
||||
sha256 = "09gajwqc30r9a2sn972qdx3gx0gki9n0zafq986hn6zsr3z43mfs";
|
||||
sha256 = "0y60h66p8ydkinxk9x4sp4cm6gq66nc9jcavy135vmycsiq9gphn";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "heimer";
|
||||
version = "1.17.0";
|
||||
version = "1.18.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "juzzlin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1sxdi1an9x62q9vwv7r2761my4dva6nc63n9861swxjjk18hmmar";
|
||||
sha256 = "16p18svfcp201gd624wzmf0gpdvywybxp8539igin6s70k6rpc97";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "minder";
|
||||
version = "1.8.0";
|
||||
version = "1.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phase1geo";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "13klasvrndwsmpcxkgy7kvsl2jqmp2cl52vb4i0hk18lr004scgy";
|
||||
sha256 = "1j3jk76rd0sc9sd9zrd24q3636559wd809yfnb9bv5jmvn9s1bkz";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig meson ninja python3 wrapGAppsHook vala shared-mime-info ];
|
||||
|
|
57
pkgs/applications/misc/nimmm/default.nix
Normal file
57
pkgs/applications/misc/nimmm/default.nix
Normal file
|
@ -0,0 +1,57 @@
|
|||
{ stdenv, fetchFromGitHub, nim, termbox, pcre }:
|
||||
|
||||
let
|
||||
noise = fetchFromGitHub {
|
||||
owner = "jangko";
|
||||
repo = "nim-noise";
|
||||
rev = "db1e86e312413e4348fa82c02340784316a89cc1";
|
||||
sha256 = "0n9l2dww5smrsl1xfqxjnxz3f1srb72lc1wl3pdvs6xfyf44qzlh";
|
||||
};
|
||||
|
||||
nimbox = fetchFromGitHub {
|
||||
owner = "dom96";
|
||||
repo = "nimbox";
|
||||
rev = "6a56e76c01481176f16ae29b7d7c526bd83f229b";
|
||||
sha256 = "15x1sdfxa1xcqnr68705jfnlv83lm0xnp2z9iz3pgc4bz5vwn4x1";
|
||||
};
|
||||
|
||||
lscolors = fetchFromGitHub {
|
||||
owner = "joachimschmidt557";
|
||||
repo = "nim-lscolors";
|
||||
rev = "v0.3.3";
|
||||
sha256 = "0526hqh46lcfsvymb67ldsc8xbfn24vicn3b8wrqnh6mag8wynf4";
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "nimmm";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "joachimschmidt557";
|
||||
repo = "nimmm";
|
||||
rev = "v${version}";
|
||||
sha256 = "1zpq181iz6g7yfi298gjwv33b89l4fpnkjprimykah7py5cpw67w";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ nim ];
|
||||
buildInputs = [ termbox pcre ];
|
||||
|
||||
NIX_LDFLAGS = "-lpcre";
|
||||
|
||||
buildPhase = ''
|
||||
export HOME=$TMPDIR;
|
||||
nim -p:${noise} -p:${nimbox} -p:${lscolors}/src c -d:release src/nimmm.nim
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -Dt $out/bin src/nimmm
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Terminal file manager written in nim";
|
||||
homepage = "https://github.com/joachimschmidt557/nimmm";
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.joachimschmidt557 ];
|
||||
};
|
||||
}
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "pueue";
|
||||
version = "0.6.0";
|
||||
version = "0.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Nukesor";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "06jxj89ya91grrwxfs7l1ahy46y993kxsc8gpkxajc0j5ihax2al";
|
||||
sha256 = "0x8slqxpnk4pis834g11wzp8fqsxwhdf0xnssz1pkkww4dqzali0";
|
||||
};
|
||||
|
||||
cargoSha256 = "191j3lpd24ycissw0y2hv65i1cjzf24draamq3sxv7hv0sxcjw4d";
|
||||
cargoSha256 = "0r110zlzpzg0j5cq9zg0kk46qigp6bzd0kzmpx3ddvhblhxvq5m5";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "rmapi";
|
||||
version = "0.0.11";
|
||||
version = "0.0.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "juruen";
|
||||
repo = "rmapi";
|
||||
rev = "v${version}";
|
||||
sha256 = "0zks1pcj2s2pqkmw0hhm41vgdhfgj2r6dmvpsagbmf64578ww349";
|
||||
sha256 = "049m0p4wbsl822iym8xmc938d4k90iw7wjdzcxfyy8d27hv9mp45";
|
||||
};
|
||||
|
||||
vendorSha256 = "077s13pcql5w2m6wzls1q06r7p501kazbwzxgfh6akwza15kb4is";
|
||||
|
|
|
@ -11,13 +11,13 @@ let
|
|||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "sequeler";
|
||||
version = "0.7.91";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Alecaddd";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "071vfx7bdf7hfa4784xz97vrj9x5aipgjbp30r00kg2zhg8wa2ls";
|
||||
sha256 = "090plqnby2wxzr1waq5kz89w3269j363mgxwfz9g7qg55lddaahz";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkgconfig vala gettext wrapGAppsHook python3 desktop-file-utils ];
|
||||
|
|
|
@ -16,10 +16,10 @@ let
|
|||
|
||||
pname = "simplenote";
|
||||
|
||||
version = "1.17.0";
|
||||
version = "1.19.0";
|
||||
|
||||
sha256 = {
|
||||
x86_64-linux = "14kjx4y3kvw7h8wk8mmkpx1288jscmd8bgl10bw6kcfigcwahpw3";
|
||||
x86_64-linux = "1bvg8xlf2y9nz7dzs5jkr5b48hwmvhvb6m4ia1fyvnqqq46nz9wb";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -1,7 +1,25 @@
|
|||
{ stdenv, fetchFromGitLab, pkgconfig, cmake, gettext, cairo, pango, pcre
|
||||
, glib, imlib2, gtk2, libXinerama, libXrender, libXcomposite, libXdamage
|
||||
, libX11, libXrandr, librsvg, libpthreadstubs, libXdmcp
|
||||
, libstartup_notification, wrapGAppsHook
|
||||
{ stdenv
|
||||
, fetchFromGitLab
|
||||
, pkg-config
|
||||
, cmake
|
||||
, gettext
|
||||
, cairo
|
||||
, pango
|
||||
, pcre
|
||||
, glib
|
||||
, imlib2
|
||||
, gtk2
|
||||
, libXinerama
|
||||
, libXrender
|
||||
, libXcomposite
|
||||
, libXdamage
|
||||
, libX11
|
||||
, libXrandr
|
||||
, librsvg
|
||||
, libpthreadstubs
|
||||
, libXdmcp
|
||||
, libstartup_notification
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -15,13 +33,35 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1937z0kixb6r82izj12jy4x8z4n96dfq1hx05vcsvsg1sx3wxgb0";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
cmake
|
||||
gettext
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig cmake gettext wrapGAppsHook ];
|
||||
buildInputs = [
|
||||
cairo
|
||||
pango
|
||||
pcre
|
||||
glib
|
||||
imlib2
|
||||
gtk2
|
||||
libXinerama
|
||||
libXrender
|
||||
libXcomposite
|
||||
libXdamage
|
||||
libX11
|
||||
libXrandr
|
||||
librsvg
|
||||
libpthreadstubs
|
||||
libXdmcp
|
||||
libstartup_notification
|
||||
];
|
||||
|
||||
buildInputs = [ cairo pango pcre glib imlib2 gtk2 libXinerama libXrender
|
||||
libXcomposite libXdamage libX11 libXrandr librsvg libpthreadstubs
|
||||
libXdmcp libstartup_notification ];
|
||||
cmakeFlags = [
|
||||
"-Ddocdir=share/doc/${pname}"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
for f in ./src/launcher/apps-common.c \
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
{ stdenv, fetchFromGitHub, python3Packages }:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
version = "0.26.0";
|
||||
version = "0.27.0";
|
||||
name = "toot-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ihabunek";
|
||||
repo = "toot";
|
||||
rev = version;
|
||||
sha256 = "146jj83jixahgxwh12bbkfvci2wrz398h5x01kgppdy59m4pa4pl";
|
||||
sha256 = "197g9lvwg8qnsf18kifcqdj3cpfdnxz9vay766rn9bi4nfz0s6j2";
|
||||
};
|
||||
|
||||
checkInputs = with python3Packages; [ pytest ];
|
||||
|
@ -23,7 +23,7 @@ python3Packages.buildPythonApplication rec {
|
|||
meta = with stdenv.lib; {
|
||||
description = "Mastodon CLI interface";
|
||||
homepage = "https://github.com/ihabunek/toot";
|
||||
license = licenses.mit;
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.matthiasbeyer ];
|
||||
};
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
buildGoPackage rec {
|
||||
pname = "tut";
|
||||
version = "0.0.9";
|
||||
version = "0.0.10";
|
||||
|
||||
goPackagePath = "github.com/RasmusLindroth/tut";
|
||||
goDeps = ./deps.nix;
|
||||
|
@ -11,7 +11,7 @@ buildGoPackage rec {
|
|||
owner = "RasmusLindroth";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "19y6brw1d6dlp2gnkdpbp261662h5j46rmiqg73cxhrlws0y0kfk";
|
||||
sha256 = "09l6dmzrvcpix3wg4djs6zk3ql6b6lfhd8z9aglbi6fix4pm8565";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -19,13 +19,13 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "ulauncher";
|
||||
version = "5.7.3";
|
||||
version = "5.8.0";
|
||||
|
||||
disabled = python3Packages.isPy27;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Ulauncher/Ulauncher/releases/download/${version}/ulauncher_${version}.tar.gz";
|
||||
sha256 = "0wq2zsq3496fjfg89q01dsm7sb7kv92sycvqm6ad8z1z2kpisrbh";
|
||||
sha256 = "1czxzcxix9iwv1sir1q64j5aavc7lzjjwqpisgdc1kidkwnk05zp";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoPackage rec {
|
||||
pname = "cni";
|
||||
version = "0.7.1";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containernetworking";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "02qn1br8164d99978acalisy1sx294g1axnii4yh1wji0fc735xz";
|
||||
sha256 = "16i59dhiq7pc7qs32cdk4yv4w9rjx4vvlw7fb6a6jhq6hxxjrgiw";
|
||||
};
|
||||
|
||||
goPackagePath = "github.com/containernetworking/cni";
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
buildGoPackage rec {
|
||||
pname = "kube-router";
|
||||
version = "0.4.0";
|
||||
version = "1.0.0";
|
||||
|
||||
goPackagePath = "github.com/cloudnativelabs/kube-router";
|
||||
|
||||
|
@ -10,7 +10,7 @@ buildGoPackage rec {
|
|||
owner = "cloudnativelabs";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1g1y3l87a4il9g2yrl1ryx8xfd4x220azxhr3rxm5l9vhnnjwswa";
|
||||
sha256 = "0b6rsiq3pwp7wknmblgd8kszh9bd7nhvlsnyyamqnhlfjl97929x";
|
||||
};
|
||||
|
||||
buildFlagsArray = ''
|
||||
|
|
|
@ -1,22 +1,31 @@
|
|||
{ stdenv, buildGoPackage, fetchFromGitHub }:
|
||||
{ stdenv, buildGoPackage, fetchFromGitHub, installShellFiles }:
|
||||
|
||||
buildGoPackage rec {
|
||||
pname = "kubeless";
|
||||
version = "1.0.6";
|
||||
version = "1.0.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubeless";
|
||||
repo = "kubeless";
|
||||
rev = "v${version}";
|
||||
sha256 = "1fcdyd1jf0yibfx9jc16m0vmazm2jymps92llh3vh5zqd36bxbyd";
|
||||
sha256 = "0x2hydywnnlh6arzz71p7gg9yzq5z2y2lppn1jszvkbgh11kkqfr";
|
||||
};
|
||||
|
||||
goPackagePath = "github.com/kubeless/kubeless";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
subPackages = [ "cmd/kubeless" ];
|
||||
|
||||
buildFlagsArray = ''
|
||||
-ldflags=-X github.com/kubeless/kubeless/pkg/version.Version=${version}
|
||||
-ldflags=-s -w -X github.com/kubeless/kubeless/pkg/version.Version=${version}
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
for shell in bash; do
|
||||
$out/bin/kubeless completion $shell > kubeless.$shell
|
||||
installShellCompletion kubeless.$shell
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "qbec";
|
||||
version = "0.12.0";
|
||||
version = "0.12.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "splunk";
|
||||
repo = "qbec";
|
||||
rev = "v${version}";
|
||||
sha256 = "0vy1cqqyga68qjbvyhsgl281qkbsvhvmwbxc93hygsxzm9kczy4p";
|
||||
sha256 = "1g90z155nhcblr48qypw8qw3l8g4dz33iflv4cg4xrhwjp8dfbv9";
|
||||
};
|
||||
|
||||
vendorSha256 = "15hbjghi2ifylg7nr85qlk0alsy97h9zj6hf5w84m76dla2bcjf3";
|
||||
|
|
|
@ -43,18 +43,18 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mattermost-desktop";
|
||||
version = "4.3.1";
|
||||
version = "4.5.0";
|
||||
|
||||
src =
|
||||
if stdenv.hostPlatform.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
|
||||
sha256 = "076nv5h6xscbw1987az00x493qhqgrli87gnn57zbvz0acgvlhfv";
|
||||
sha256 = "1p44vxs7i9f15h4xjyr99g8x73qygv909a32lfkqip1fh8lk7sf4";
|
||||
}
|
||||
else if stdenv.hostPlatform.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-ia32.tar.gz";
|
||||
sha256 = "19ps9g8j6kp4haj6r3yfy4ma2wm6isq5fa8zlcz6g042ajkqq0ij";
|
||||
sha256 = "03pn853z2famqxcsrwayqb94pzghlpfb0qs2nfi8mc5zzsgcic7z";
|
||||
}
|
||||
else
|
||||
throw "Mattermost-Desktop is not currently supported on ${stdenv.hostPlatform.system}";
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{ stdenv, fetchurl, makeWrapper, pkgconfig, gtk2, gtkspell2, aspell
|
||||
{ stdenv, fetchurl, makeWrapper, pkgconfig, gtk2, gtk2-x11
|
||||
, gtkspell2, aspell
|
||||
, gst_all_1, startupnotification, gettext
|
||||
, perlPackages, libxml2, nss, nspr, farstream
|
||||
, libXScrnSaver, ncurses, avahi, dbus, dbus-glib, intltool, libidn
|
||||
|
@ -29,19 +30,24 @@ let unwrapped = stdenv.mkDerivation rec {
|
|||
NIX_CFLAGS_COMPILE = "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0";
|
||||
|
||||
buildInputs = [
|
||||
gtkspell2 aspell startupnotification
|
||||
aspell startupnotification
|
||||
gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
|
||||
libxml2 nss nspr farstream
|
||||
libxml2 nss nspr
|
||||
libXScrnSaver ncurses python
|
||||
avahi dbus dbus-glib intltool libidn
|
||||
libICE libXext libSM cyrus_sasl
|
||||
]
|
||||
++ (lib.optional (openssl != null) openssl)
|
||||
++ (lib.optional (gnutls != null) gnutls)
|
||||
++ (lib.optional (libgcrypt != null) libgcrypt);
|
||||
++ (lib.optional (libgcrypt != null) libgcrypt)
|
||||
++ (lib.optionals (stdenv.isLinux) [gtk2 gtkspell2 farstream])
|
||||
++ (lib.optional (stdenv.isDarwin) gtk2-x11);
|
||||
|
||||
propagatedBuildInputs = [ pkgconfig gtk2 gettext ]
|
||||
++ (with perlPackages; [ perl XMLParser ]);
|
||||
|
||||
propagatedBuildInputs = [ pkgconfig gettext ]
|
||||
++ (with perlPackages; [ perl XMLParser ])
|
||||
++ (lib.optional (stdenv.isLinux) gtk2)
|
||||
++ (lib.optional (stdenv.isDarwin) gtk2-x11);
|
||||
|
||||
patches = [ ./pidgin-makefile.patch ./add-search-path.patch ];
|
||||
|
||||
|
@ -56,7 +62,8 @@ let unwrapped = stdenv.mkDerivation rec {
|
|||
"--disable-tcl"
|
||||
]
|
||||
++ (lib.optionals (cyrus_sasl != null) [ "--enable-cyrus-sasl=yes" ])
|
||||
++ (lib.optionals (gnutls != null) ["--enable-gnutls=yes" "--enable-nss=no"]);
|
||||
++ (lib.optionals (gnutls != null) ["--enable-gnutls=yes" "--enable-nss=no"])
|
||||
++ (lib.optionals (stdenv.isDarwin) ["--disable-gtkspell" "--disable-vv"]);
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
@ -69,7 +76,7 @@ let unwrapped = stdenv.mkDerivation rec {
|
|||
description = "Multi-protocol instant messaging client";
|
||||
homepage = "http://pidgin.im";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.vcunat ];
|
||||
};
|
||||
};
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"name": "riot-desktop",
|
||||
"productName": "Riot",
|
||||
"main": "src/electron-main.js",
|
||||
"version": "1.6.6",
|
||||
"version": "1.6.7",
|
||||
"description": "A feature-rich client for Matrix.org",
|
||||
"author": "New Vector Ltd.",
|
||||
"repository": {
|
||||
|
|
|
@ -8,12 +8,12 @@
|
|||
|
||||
let
|
||||
executableName = "riot-desktop";
|
||||
version = "1.6.6";
|
||||
version = "1.6.7";
|
||||
src = fetchFromGitHub {
|
||||
owner = "vector-im";
|
||||
repo = "riot-desktop";
|
||||
rev = "v${version}";
|
||||
sha256 = "0yrybi6cv3lj0fq4ab4rzjm9l4flfw97hkwzlp7zzixb3z9h09h8";
|
||||
sha256 = "0l1ih7rkb0nnc79607kkg0k69j9kwqrczhgkqzsmvqxjz7pk9kgn";
|
||||
};
|
||||
electron = electron_7;
|
||||
|
||||
|
|
|
@ -12,11 +12,11 @@ let
|
|||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "riot-web";
|
||||
version = "1.6.6";
|
||||
version = "1.6.7";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
|
||||
sha256 = "0j88wcha5rr6qaxik4m90v9mgfcj3r9nb4gpd2dzi7m1zf7kivkw";
|
||||
sha256 = "14g5rbvcw6p0q50slbf0c7s39i54ggv2cjc5iv93yvfrwn3z0f8p";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
|
|
@ -15,11 +15,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
|
|||
let
|
||||
inherit (stdenv.lib) concatStringsSep makeBinPath optional;
|
||||
|
||||
version = "5.1.412382.0614";
|
||||
version = "5.1.418436.0628";
|
||||
srcs = {
|
||||
x86_64-linux = fetchurl {
|
||||
url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
|
||||
sha256 = "07xb3v5i08wq0a3my9id91gizsxj5ppqvxmcbdy04j7yn4i1jm9x";
|
||||
sha256 = "0qgjsc6880i5zn4ck57haidcq40w37sjpdrix4gf09986qcc8gmm";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, mkDerivation, cmake, pkgconfig, qtbase, qtkeychain, sqlite }:
|
||||
{ lib, stdenv, fetchurl, mkDerivation, cmake, pkgconfig, qtbase, qtkeychain, sqlite, libsecret }:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "owncloud-client";
|
||||
|
@ -12,6 +12,10 @@ mkDerivation rec {
|
|||
nativeBuildInputs = [ pkgconfig cmake ];
|
||||
buildInputs = [ qtbase qtkeychain sqlite ];
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libsecret ]}"
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-UCMAKE_INSTALL_LIBDIR"
|
||||
"-DNO_SHIBBOLETH=1"
|
||||
|
|
|
@ -2,19 +2,20 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "protonvpn-cli-ng";
|
||||
version = "2.2.2";
|
||||
version = "2.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "protonvpn";
|
||||
repo = "${pname}";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ixjb02kj4z79whm1izd8mrn2h0rp9cmw4im1qvp93rahqxdd4n8";
|
||||
sha256 = "08yca0a0prrnrc7ir7ajd56yxvxpcs4m1k8f5kf273f5whgr7wzw";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = (with python3Packages; [
|
||||
requests
|
||||
docopt
|
||||
setuptools
|
||||
jinja2
|
||||
pythondialog
|
||||
]) ++ [
|
||||
dialog
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoPackage rec {
|
||||
pname = "rclone";
|
||||
version = "1.52.1";
|
||||
version = "1.52.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1v91c3wydpixi0p0afclp4baxchigy3czlm1mq9hn6cw973z6spf";
|
||||
sha256 = "1da6azr4j5sbzb5xpy2xk4vqi6bdpmzlq3pxrmakaskicz64nnld";
|
||||
};
|
||||
|
||||
goPackagePath = "github.com/rclone/rclone";
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "atlassian-cli";
|
||||
version = "9.2.0";
|
||||
version = "9.3.0";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://bobswift.atlassian.net/wiki/download/attachments/16285777/${pname}-${version}-distribution.zip";
|
||||
sha256 = "0rdnbx3zfz3lpgka7bb8jzapkr81l2yvgsbmn8hrhva5k61xwx3d";
|
||||
sha256 = "1gsyxkkx04vhp8ii0xbln5h8wa8x3dj6xhh2fyjs4z0bil4hlf06";
|
||||
extraPostFetch = "chmod go-w $out";
|
||||
};
|
||||
|
||||
|
|
56
pkgs/applications/office/espanso/default.nix
Normal file
56
pkgs/applications/office/espanso/default.nix
Normal file
|
@ -0,0 +1,56 @@
|
|||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, pkgconfig
|
||||
, extra-cmake-modules
|
||||
, libX11
|
||||
, libXi
|
||||
, libXtst
|
||||
, libnotify
|
||||
, openssl
|
||||
, xclip
|
||||
, xdotool
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "espanso";
|
||||
version = "0.6.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "federico-terzi";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1x5p7hniapggqd18rx26mjvdf33z7rm7zz5vsqm2siv3mcl19033";
|
||||
};
|
||||
|
||||
cargoSha256 = "0liwwdncymjql5dw7rwhhimcr7qdbyvfgmsd0bawvi0ym7m1v408";
|
||||
|
||||
nativeBuildInputs = [
|
||||
extra-cmake-modules
|
||||
pkgconfig
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libX11
|
||||
libXtst
|
||||
libXi
|
||||
libnotify
|
||||
openssl
|
||||
xdotool
|
||||
];
|
||||
|
||||
# Some tests require networking
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Cross-platform Text Expander written in Rust";
|
||||
homepage = "https://espanso.org";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ kimat ];
|
||||
platforms = platforms.all;
|
||||
|
||||
longDescription = ''
|
||||
Espanso detects when you type a keyword and replaces it while you're typing.
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -5,11 +5,11 @@ let
|
|||
in
|
||||
buildPythonApplication rec {
|
||||
pname = "todoman";
|
||||
version = "3.7.0";
|
||||
version = "3.8.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "16brw2zhm5vamffin6qjb0lxjlj3ba40vaficl851nw2xh2mrdhy";
|
||||
sha256 = "1aq7f63bhs9dnwzp15nfr07f2ki6s3lnqfap3b09rhchn6lfznwb";
|
||||
};
|
||||
|
||||
LOCALE_ARCHIVE = stdenv.lib.optionalString stdenv.isLinux
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "picard-tools";
|
||||
version = "2.23.0";
|
||||
version = "2.23.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
|
||||
sha256 = "0yhgfz5jjw55ipgdb32wjdcb01xx2g9ikgvwinnfwswx50iscf5a";
|
||||
sha256 = "1g4539x2081jgrbn207nsimpq9q5izd4z6cx7s8lr8p8ab8spbmk";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lean";
|
||||
version = "3.16.2";
|
||||
version = "3.16.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leanprover-community";
|
||||
repo = "lean";
|
||||
rev = "v${version}";
|
||||
sha256 = "0fvm7gvbr5kn258sqpnxa7dvzz84iv1dx1n066vih5gz80plz4lh";
|
||||
sha256 = "0s1ay6qgpkxhygfbfrl1cw2pd8bpgw2dw71rzhza20ndqwk8nqs5";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "workcraft";
|
||||
version = "3.2.6";
|
||||
version = "3.3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/workcraft/workcraft/releases/download/v${version}/workcraft-v${version}-linux.tar.gz";
|
||||
sha256 = "1sfbxmk71gp7paw4l5azqr0lsgsyp4308gx2jz8w4k3nasfshz25";
|
||||
sha256 = "072i7kan2c9f4s9jxwqr4ccsi9979c12xhwr385sbq06rwyrna85";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -26,7 +26,9 @@ let
|
|||
|
||||
darcs-to-git = callPackage ./darcs-to-git { };
|
||||
|
||||
delta = callPackage ./delta { };
|
||||
delta = callPackage ./delta {
|
||||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
diff-so-fancy = callPackage ./diff-so-fancy { };
|
||||
|
||||
|
|
|
@ -1,25 +1,32 @@
|
|||
{ lib, fetchFromGitHub, rustPlatform, llvmPackages, installShellFiles }:
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, installShellFiles
|
||||
, libiconv
|
||||
, Security
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "delta";
|
||||
version = "0.1.1";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dandavison";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1b5ap468d0gvgwkx6wqxvayzda2xw95lymd0kl38nq1fc0ica6hk";
|
||||
sha256 = "15c7rsmiinnpxh12520jz3wr0j86vgzjq1ss5pf30fa7lcgicb32";
|
||||
};
|
||||
|
||||
LLVM_CONFIG_PATH = "${llvmPackages.llvm}/bin/llvm-config";
|
||||
LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
|
||||
|
||||
cargoSha256 = "07mjl751r9d88fnmnan0ip0m3vxqf51vq2y7k3g3yywcgasj9jgr";
|
||||
cargoSha256 = "0lzz32qh80s4dxr0d4pg0qagkn549lr4vbqknl2l0cmlq1bvvq6g";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --bash --name delta.bash completion/bash/completion.sh
|
||||
installShellCompletion --bash --name delta.bash completion/completion.bash
|
||||
installShellCompletion --zsh --name _delta completion/completion.zsh
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -27,6 +34,6 @@ rustPlatform.buildRustPackage rec {
|
|||
description = "A syntax-highlighting pager for git";
|
||||
changelog = "https://github.com/dandavison/delta/releases/tag/${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ marsam ma27 ];
|
||||
maintainers = with maintainers; [ marsam ma27 zowoq ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "git-machete";
|
||||
version = "2.14.0";
|
||||
version = "2.15.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "01ch4d0r3bi9nl5nknp3dyizc2rl9w46gm1ydnvqbrzhgw65lpp0";
|
||||
sha256 = "0qv08a6xsdmcm8l69m4103vn4crb0ilzx94334xjbdl0sykm55q0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ installShellFiles pbr ];
|
||||
|
|
|
@ -1,17 +1,22 @@
|
|||
{ lib
|
||||
, buildPythonApplication
|
||||
, fetchPypi
|
||||
, fetchFromGitHub
|
||||
, git
|
||||
, pytest
|
||||
, pyyaml
|
||||
, setuptools
|
||||
, installShellFiles
|
||||
}:
|
||||
|
||||
buildPythonApplication rec {
|
||||
version = "0.10.5";
|
||||
version = "0.10.9";
|
||||
pname = "gita";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1xggslmrrfszpl190klkc97fnl88gml1bnkmkzp6aimdch66g4jg";
|
||||
src = fetchFromGitHub {
|
||||
sha256 = "0wilyf4nnn2jyxrfqs8krya3zvhj6x36szsp9xhb6h08g1ihzp5i";
|
||||
rev = "v${version}";
|
||||
repo = "gita";
|
||||
owner = "nosarthur";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -19,6 +24,29 @@ buildPythonApplication rec {
|
|||
setuptools
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
postUnpack = ''
|
||||
for case in "\n" ""; do
|
||||
substituteInPlace source/tests/test_main.py \
|
||||
--replace "'gita$case'" "'source$case'"
|
||||
done
|
||||
'';
|
||||
|
||||
checkInputs = [
|
||||
git
|
||||
pytest
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
git init
|
||||
pytest tests
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --bash --name gita ${src}/.gita-completion.bash
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A command-line tool to manage multiple git repos";
|
||||
homepage = "https://github.com/nosarthur/gita";
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "clipgrab";
|
||||
version = "3.8.12";
|
||||
version = "3.8.13";
|
||||
|
||||
src = fetchurl {
|
||||
sha256 = "1nnph6sn4mpdj20hngwr57ripmdp60w3vrn89s8ssy7cjv500ngd";
|
||||
sha256 = "0ryaha33m41y0xjrspa838qqr4iy2c8vbvhbb334qimpqn1hj3q5";
|
||||
# The .tar.bz2 "Download" link is a binary blob, the source is the .tar.gz!
|
||||
url = "https://download.clipgrab.org/${pname}-${version}.tar.gz";
|
||||
};
|
||||
|
|
|
@ -76,7 +76,7 @@ in buildBazelPackage rec {
|
|||
rm -f "$bazelOut"/java.log "$bazelOut"/java.log.*
|
||||
'';
|
||||
|
||||
sha256 = "0mkgbw08f6kgklvjmlfpyld35q7dvxm9pvrhaf7m7nx69sich6jq";
|
||||
sha256 = "0myffqywbvqhax995z55jymwnwyxmp13r27kpbc7wb5fk9s4skvr";
|
||||
};
|
||||
|
||||
buildAttrs = {
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "umoci";
|
||||
version = "0.4.5";
|
||||
version = "0.4.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openSUSE";
|
||||
owner = "opencontainers";
|
||||
repo = "umoci";
|
||||
rev = "v${version}";
|
||||
sha256 = "1gzj4nnys73wajdwjn5jsskvnhzh8s2vmyl76ax8drpvw19bd5g3";
|
||||
sha256 = "0jaar26l940yh77cs31c3zndiycp85m3fz4zivcibzi68g6n6yzg";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
@ -24,7 +24,7 @@ buildGoModule rec {
|
|||
|
||||
postInstall = ''
|
||||
sed -i '/SHELL =/d' Makefile
|
||||
make local-doc
|
||||
make docs
|
||||
installManPage doc/man/*.[1-9]
|
||||
'';
|
||||
|
||||
|
@ -33,6 +33,6 @@ buildGoModule rec {
|
|||
homepage = "https://umo.ci";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ zokrezyl ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ stdenv.mkDerivation (args // {
|
|||
buildPhase = ''
|
||||
runHook preBuild
|
||||
oasis setup
|
||||
ocaml setup.ml -configure
|
||||
ocaml setup.ml -configure --prefix $OCAMLFIND_DESTDIR --exec-prefix $out
|
||||
ocaml setup.ml -build
|
||||
runHook postBuild
|
||||
'';
|
||||
|
@ -37,9 +37,7 @@ stdenv.mkDerivation (args // {
|
|||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out
|
||||
sed -i s+/usr/local+$out+g setup.ml
|
||||
sed -i s+/usr/local+$out+g setup.data
|
||||
prefix=$OCAMLFIND_DESTDIR ocaml setup.ml -install
|
||||
ocaml setup.ml -install
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
|
|
@ -1,40 +1,44 @@
|
|||
{ stdenv, fetchFromGitHub, cmake, extra-cmake-modules, pkgconfig
|
||||
, qtbase, qtimageformats, qtwebkit, qtx11extras, mkDerivation
|
||||
, qtbase, qtimageformats, qtwebengine, qtx11extras, mkDerivation
|
||||
, libarchive, libXdmcp, libpthreadstubs, xcbutilkeysyms }:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "zeal";
|
||||
version = "0.6.1";
|
||||
version = "0.6.999";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zealdocs";
|
||||
repo = "zeal";
|
||||
rev = "v${version}";
|
||||
sha256 = "05qcjpibakv4ibhxgl5ajbkby3w7bkxsv3nfv2a0kppi1z0f8n8v";
|
||||
owner = "zealdocs";
|
||||
repo = "zeal";
|
||||
rev = "1ce0e2e446232e7647c5588c1f603f1dd88e0f67";
|
||||
sha256 = "0gj5qcm7ck8m5zfmiabay2f7wbxldmrkw8m3xi7v9i8y8hx0jkxr";
|
||||
};
|
||||
|
||||
# while ads can be disabled from the user settings, by default they are not so
|
||||
# we patch it out completely instead
|
||||
patches = [ ./remove_ads.patch ];
|
||||
# we only need this if we are using a version that hasn't been released. We
|
||||
# could also match on the "VERSION x.y.z" bit but then it would have to be
|
||||
# updated based on whatever is the latest release, so instead just rewrite the
|
||||
# line.
|
||||
postPatch = ''
|
||||
sed -i CMakeLists.txt \
|
||||
-e 's@^project.*@project(Zeal VERSION ${version})@'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig ];
|
||||
|
||||
buildInputs = [
|
||||
qtbase qtimageformats qtwebkit qtx11extras
|
||||
qtbase qtimageformats qtwebengine qtx11extras
|
||||
libarchive
|
||||
libXdmcp libpthreadstubs xcbutilkeysyms
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A simple offline API documentation browser";
|
||||
longDescription = ''
|
||||
Zeal is a simple offline API documentation browser inspired by Dash (macOS
|
||||
app), available for Linux and Windows.
|
||||
'';
|
||||
homepage = "https://zealdocs.org/";
|
||||
license = licenses.gpl3;
|
||||
homepage = "https://zealdocs.org/";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ skeidel peterhoeg ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
commit 1b61397175b6e60f23224db463301c9057830859
|
||||
Author: Peter Hoeg <peter@hoeg.com>
|
||||
Date: Mon Feb 19 07:38:03 2018 +0800
|
||||
|
||||
strip container with ads
|
||||
|
||||
diff --git a/src/app/resources/browser/welcome.html b/src/app/resources/browser/welcome.html
|
||||
index bb3f511..67382b2 100644
|
||||
--- a/src/app/resources/browser/welcome.html
|
||||
+++ b/src/app/resources/browser/welcome.html
|
||||
@@ -20,12 +20,6 @@
|
||||
<span id="version" class="has-text-weight-light is-size-5"></span>
|
||||
</p>
|
||||
<p class="subtitle">Docs for everyone</p>
|
||||
- <div id="carboncontainer" style="margin-top: 75px;">
|
||||
- <div id="carbon" class="box">
|
||||
- <script async type="text/javascript" src="https://cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=zealdocsforwindowsorg"
|
||||
- onerror="document.getElementById('carboncontainer').style.display = 'none';" id="_carbonads_js"></script>
|
||||
- </div>
|
||||
- </div>
|
||||
</div>
|
||||
<div class="column">
|
||||
<p class="subtitle is-5">Customize</p>
|
|
@ -7,7 +7,7 @@ let
|
|||
# occasionally suffers from pointless hash changes,
|
||||
# and having stable sources for older versions has advantages, too.
|
||||
urls = map (prefix: prefix + "cc5e14a264912/etc/root.hints") [
|
||||
"https://gitlab.labs.nic.cz/knot/knot-resolver/raw/"
|
||||
"https://gitlab.nic.cz/knot/knot-resolver/raw/"
|
||||
"https://raw.githubusercontent.com/CZ-NIC/knot-resolver/"
|
||||
];
|
||||
sha256 = "0vdrff4l8s8grif52dnh091s8qydhh88k25zqd9rj66sf1qwcwxl";
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
let
|
||||
pname = "baobab";
|
||||
version = "3.34.0";
|
||||
version = "3.34.1";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "01w6m5ylyqs4wslpjn1hg6n6ynwh3rghksak0qs8r9m6dm3dkss6";
|
||||
sha256 = "1i90gc1cpw5507zn54k46hj4mjgdxsq8cvpnlgxq0ksy2d7iv63z";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkgconfig vala gettext itstool libxml2 desktop-file-utils wrapGAppsHook ];
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
mkDerivation,
|
||||
mkDerivation, fetchpatch,
|
||||
extra-cmake-modules, kdoctools,
|
||||
bluez-qt, kactivities, kauth, kconfig, kdbusaddons, kdelibs4support,
|
||||
kglobalaccel, ki18n, kidletime, kio, knotifyconfig, kwayland, libkscreen,
|
||||
|
@ -18,4 +18,14 @@ mkDerivation {
|
|||
cmakeFlags = [
|
||||
"-DHAVE_DDCUTIL=On"
|
||||
];
|
||||
patches = [
|
||||
# This fixes an issue where 'DDCA_Feature_List*' cannot be converted to
|
||||
# 'DDCA_Feature_List'.
|
||||
# This can be dropped with the next release.
|
||||
# https://bugs.kde.org/show_bug.cgi?id=423605
|
||||
(fetchpatch {
|
||||
url = "https://invent.kde.org/plasma/powerdevil/-/commit/fcb26be2fb279e6ad3b7b814d26a5921d16201eb.patch";
|
||||
sha256 = "0gdyaa0nd1c1d6x2h0m933lascm8zm5sikd99wxmkf7hhaby6k2s";
|
||||
})
|
||||
];
|
||||
}
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "closure-compiler";
|
||||
version = "20200517";
|
||||
version = "20200614";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dl.google.com/closure-compiler/compiler-${version}.tar.gz";
|
||||
sha256 = "05bbsrxw2nxjlcfc22w1ympi66jnmzymivg29cvidh5n28jgwba2";
|
||||
sha256 = "0a54y2d9nfg60knfv34kf6sdsh065dzam86l3wprf8gvqffxxcli";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
|
|
@ -13,7 +13,7 @@ buildGoModule rec {
|
|||
|
||||
vendorSha256 = "0nsm4gsbbn8myz4yfi6m7qc3iizhdambsr18iks0clkdn3mi2jn1";
|
||||
|
||||
subPackages = [ "cmd/jsonnet" ];
|
||||
subPackages = [ "cmd/jsonnet" "cmd/jsonnetfmt" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An implementation of Jsonnet in pure Go";
|
||||
|
@ -21,4 +21,4 @@ buildGoModule rec {
|
|||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ nshalman ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "nim";
|
||||
version = "1.2.0";
|
||||
version = "1.2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://nim-lang.org/download/${pname}-${version}.tar.xz";
|
||||
sha256 = "0xf56xb42hc92h4xnvk72q4n3ysjbyhf0rg60lc84r9r6wx5i52f";
|
||||
sha256 = "0dnn60slvp3ynlx3zhv3cjkanv8zglljxws0db8g0rdyz8r8zwgf";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import ./generic.nix {
|
||||
major_version = "4";
|
||||
minor_version = "11";
|
||||
patch_version = "0+alpha3";
|
||||
sha256 = "0c2g8ncq15nx9pdl14hnsc9342j80s7i1bsyiw98cvgic5miyw9b";
|
||||
patch_version = "0+beta1";
|
||||
sha256 = "1xhkwprbnd3wp6bi3k74f42l1mff1ngn7gl4rgad9dk4ly0yzfdr";
|
||||
}
|
||||
|
|
|
@ -10,13 +10,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "souffle";
|
||||
version = "1.7.1";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "souffle-lang";
|
||||
repo = "souffle";
|
||||
rev = version;
|
||||
sha256 = "0px8kh5875q2iyza4ylpa6vxpy6qxg0qvn2idk1j6dcdf5pdryph";
|
||||
sha256 = "1azn32x0xbbk8gagipb34qk3y1srm927j5d34w20isgjxir4xsnz";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook bison flex mcpp doxygen graphviz makeWrapper perl ];
|
||||
|
|
|
@ -33,9 +33,15 @@ let
|
|||
};
|
||||
|
||||
"8.11" = {
|
||||
version = "1.2.1";
|
||||
rev = "v1.2.1-8.11";
|
||||
sha256 = "06k0h7lansxs479is3vj5ikg8s5k4c6svnqcwmxbni4wx8bhmg17";
|
||||
version = "1.2.2";
|
||||
rev = "v1.2.2-8.11";
|
||||
sha256 = "0g2y0s8kb2imbqyrx9hmvjzpwmicid7shv7ma10fnb8dgk2dqkf9";
|
||||
};
|
||||
|
||||
"8.12" = {
|
||||
version = "1.2.2";
|
||||
rev = "v1.2.2-8.12";
|
||||
sha256 = "0fkz78i2gn9x9scfa7n8fl2sq7czppsicy7w5mq919qqfp0w1aj0";
|
||||
};
|
||||
};
|
||||
param = params.${coq.coq-version};
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "janet";
|
||||
version = "1.10.0";
|
||||
version = "1.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "janet-lang";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0kx3c4v0481b4xx239w10ajwp8ngq8smxzh3m77dazd89r997n1g";
|
||||
sha256 = "18k6dzxzr149p0bby4r0z6kybylig87rwj7gk3z6a98zf6k4xmsw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zef";
|
||||
version = "0.8.4";
|
||||
version = "0.8.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ugexe";
|
||||
repo = "zef";
|
||||
rev = "v${version}";
|
||||
sha256 = "02a3awnjr1mgb9275xvp3xms80vcxkq55ffi8sbjzxpwyadj5y5k";
|
||||
sha256 = "17a5ns0ph8626q3b4wv9v2n0zqmhqbqyzjzxa387kr19qs933yy6";
|
||||
};
|
||||
|
||||
buildInputs = [ rakudo makeWrapper ];
|
||||
|
|
|
@ -19,13 +19,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "amdvlk";
|
||||
version = "2020.Q2.5";
|
||||
version = "2020.Q2.6";
|
||||
|
||||
src = fetchRepoProject {
|
||||
name = "${pname}-src";
|
||||
manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
|
||||
rev = "refs/tags/v-${version}";
|
||||
sha256 = "008adby8vx12ma155x64n7aj9vp9ygqgij3mm3q20i187db7d1ab";
|
||||
sha256 = "1h5j4qaqm4kg5jybkkk6v1mdy0jx0k06mrb8n8jl415z08f0pjgj";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue