Merge branch 'master' into staging-next
~5k rebuilds per platform. Hydra nixpkgs: ?compare=1518759
This commit is contained in:
commit
e8f4ad0169
13
doc/meta.xml
13
doc/meta.xml
|
@ -150,6 +150,19 @@ hello-2.3 A program that produces a familiar, friendly greeting
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>
|
||||
<varname>changelog</varname>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
A link or a list of links to the location of Changelog for a package.
|
||||
A link may use expansion to refer to the correct changelog version.
|
||||
Example:
|
||||
<literal>"https://git.savannah.gnu.org/cgit/hello.git/plain/NEWS?h=v${version}"</literal>
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>
|
||||
<varname>license</varname>
|
||||
|
|
|
@ -2643,9 +2643,7 @@ addEnvHooks "$hostOffset" myBashFunction
|
|||
At <filename>/var/lib/cntr</filename> the sandboxed filesystem is
|
||||
mounted. All commands and files of the system are still accessible
|
||||
within the shell. To execute commands from the sandbox use the cntr exec
|
||||
subcommand. Note that <command>cntr</command> also needs to be executed
|
||||
on the machine that is doing the build, which might not be the case when
|
||||
remote builders are enabled. <command>cntr</command> is only supported
|
||||
subcommand. <command>cntr</command> is only supported
|
||||
on Linux-based platforms. To use it first add <literal>cntr</literal> to
|
||||
your <literal>environment.systemPackages</literal> on NixOS or
|
||||
alternatively to the root user on non-NixOS systems. Then in the package
|
||||
|
@ -2657,6 +2655,16 @@ addEnvHooks "$hostOffset" myBashFunction
|
|||
When a build failure happens there will be an instruction printed that
|
||||
shows how to attach with <literal>cntr</literal> to the build sandbox.
|
||||
</para>
|
||||
<note>
|
||||
<title>Caution with remote builds</title>
|
||||
<para>
|
||||
This won't work with remote builds as the build environment is on
|
||||
a different machine and can't be accessed by <command>cntr</command>.
|
||||
Remote builds can be turned off by setting <literal>--option builders ''</literal>
|
||||
for <command>nix-build</command> or <literal>--builders ''</literal> for
|
||||
<command>nix build</command>.
|
||||
</para>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
|
|
|
@ -88,6 +88,9 @@ rec {
|
|||
config = "aarch64-unknown-linux-musl";
|
||||
};
|
||||
|
||||
gnu64 = { config = "x86_64-unknown-linux-gnu"; };
|
||||
gnu32 = { config = "i686-unknown-linux-gnu"; };
|
||||
|
||||
musl64 = { config = "x86_64-unknown-linux-musl"; };
|
||||
musl32 = { config = "i686-unknown-linux-musl"; };
|
||||
|
||||
|
|
|
@ -1100,6 +1100,11 @@
|
|||
github = "cwoac";
|
||||
name = "Oliver Matthews";
|
||||
};
|
||||
dalance = {
|
||||
email = "dalance@gmail.com";
|
||||
github = "dalance";
|
||||
name = "Naoya Hatta";
|
||||
};
|
||||
DamienCassou = {
|
||||
email = "damien@cassou.me";
|
||||
github = "DamienCassou";
|
||||
|
@ -1164,6 +1169,11 @@
|
|||
github = "davorb";
|
||||
name = "Davor Babic";
|
||||
};
|
||||
dawidsowa = {
|
||||
email = "dawid_sowa@posteo.net";
|
||||
github = "dawidsowa";
|
||||
name = "Dawid Sowa";
|
||||
};
|
||||
dbohdan = {
|
||||
email = "dbohdan@dbohdan.com";
|
||||
github = "dbohdan";
|
||||
|
@ -1531,6 +1541,11 @@
|
|||
github = "eqyiel";
|
||||
name = "Ruben Maher";
|
||||
};
|
||||
eraserhd = {
|
||||
email = "jason.m.felice@gmail.com";
|
||||
github = "eraserhd";
|
||||
name = "Jason Felice";
|
||||
};
|
||||
ericbmerritt = {
|
||||
email = "eric@afiniate.com";
|
||||
github = "ericbmerritt";
|
||||
|
@ -2588,6 +2603,11 @@
|
|||
github = "knl";
|
||||
name = "Nikola Knežević";
|
||||
};
|
||||
kolaente = {
|
||||
email = "k@knt.li";
|
||||
github = "kolaente";
|
||||
name = "Konrad Langenberg";
|
||||
};
|
||||
konimex = {
|
||||
email = "herdiansyah@netc.eu";
|
||||
github = "konimex";
|
||||
|
@ -4111,6 +4131,11 @@
|
|||
github = "retrry";
|
||||
name = "Tadas Barzdžius";
|
||||
};
|
||||
rexim = {
|
||||
email = "reximkut@gmail.com";
|
||||
github = "rexim";
|
||||
name = "Alexey Kutepov";
|
||||
};
|
||||
rht = {
|
||||
email = "rhtbot@protonmail.com";
|
||||
github = "rht";
|
||||
|
|
|
@ -5,6 +5,7 @@ basexx,
|
|||
dkjson
|
||||
fifo
|
||||
inspect
|
||||
ldoc
|
||||
lgi
|
||||
lpeg_patterns
|
||||
lpty
|
||||
|
@ -22,6 +23,7 @@ luaevent,
|
|||
luacheck
|
||||
luaffi,,http://luarocks.org/dev,
|
||||
luuid,
|
||||
markdown,
|
||||
penlight,
|
||||
rapidjson,
|
||||
say,
|
||||
|
|
|
|
@ -76,11 +76,7 @@ FOOTER="
|
|||
function convert_pkg () {
|
||||
nix_pkg_name="$1"
|
||||
lua_pkg_name="$2"
|
||||
server=""
|
||||
if [ ! -z "$3" ]; then
|
||||
server=" --server=$3"
|
||||
fi
|
||||
|
||||
server="${3:+--server=$3}"
|
||||
version="${4:-}"
|
||||
|
||||
echo "looking at $lua_pkg_name (version $version) from server [$server]" >&2
|
||||
|
@ -101,15 +97,15 @@ echo "$HEADER" | tee "$TMP_FILE"
|
|||
# name,server,version
|
||||
while IFS=, read -r nix_pkg_name lua_pkg_name server version
|
||||
do
|
||||
if [ "${nix_pkg_name:0:1}" == "#" ]; then
|
||||
echo "Skipping comment ${nix_pkg_name}" >&2
|
||||
continue
|
||||
fi
|
||||
if [ -z "$lua_pkg_name" ]; then
|
||||
echo "Using nix_name as lua_pkg_name" >&2
|
||||
lua_pkg_name="$nix_pkg_name"
|
||||
fi
|
||||
convert_pkg "$nix_pkg_name" "$lua_pkg_name" "$server" "$version"
|
||||
if [ "${nix_pkg_name:0:1}" == "#" ]; then
|
||||
echo "Skipping comment ${nix_pkg_name}" >&2
|
||||
continue
|
||||
fi
|
||||
if [ -z "$lua_pkg_name" ]; then
|
||||
echo "Using nix_name as lua_pkg_name" >&2
|
||||
lua_pkg_name="$nix_pkg_name"
|
||||
fi
|
||||
convert_pkg "$nix_pkg_name" "$lua_pkg_name" "$server" "$version"
|
||||
done < "$CSV_FILE"
|
||||
|
||||
# close the set
|
||||
|
|
|
@ -339,6 +339,7 @@
|
|||
rss2email = 312;
|
||||
cockroachdb = 313;
|
||||
zoneminder = 314;
|
||||
paperless = 315;
|
||||
|
||||
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
|
||||
|
||||
|
@ -638,6 +639,7 @@
|
|||
rss2email = 312;
|
||||
cockroachdb = 313;
|
||||
zoneminder = 314;
|
||||
paperless = 315;
|
||||
|
||||
# When adding a gid, make sure it doesn't match an existing
|
||||
# uid. Users and groups with the same name should have equal
|
||||
|
|
|
@ -144,6 +144,7 @@
|
|||
./programs/xonsh.nix
|
||||
./programs/xss-lock.nix
|
||||
./programs/yabar.nix
|
||||
./programs/zmap.nix
|
||||
./programs/zsh/oh-my-zsh.nix
|
||||
./programs/zsh/zsh.nix
|
||||
./programs/zsh/zsh-autoenv.nix
|
||||
|
@ -435,6 +436,7 @@
|
|||
./services/misc/octoprint.nix
|
||||
./services/misc/osrm.nix
|
||||
./services/misc/packagekit.nix
|
||||
./services/misc/paperless.nix
|
||||
./services/misc/parsoid.nix
|
||||
./services/misc/phd.nix
|
||||
./services/misc/plex.nix
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
{ pkgs, config, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.programs.zmap;
|
||||
in {
|
||||
options.programs.zmap = {
|
||||
enable = mkEnableOption "ZMap";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.zmap ];
|
||||
|
||||
environment.etc."zmap/blacklist.conf".source = "${pkgs.zmap}/etc/zmap/blacklist.conf";
|
||||
environment.etc."zmap/zmap.conf".source = "${pkgs.zmap}/etc/zmap.conf";
|
||||
};
|
||||
}
|
|
@ -2,20 +2,30 @@
|
|||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.security.rngd;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
security.rngd.enable = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
Whether to enable the rng daemon, which adds entropy from
|
||||
hardware sources of randomness to the kernel entropy pool when
|
||||
available.
|
||||
'';
|
||||
security.rngd = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
Whether to enable the rng daemon, which adds entropy from
|
||||
hardware sources of randomness to the kernel entropy pool when
|
||||
available.
|
||||
'';
|
||||
};
|
||||
debug = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Whether to enable debug output (-d).";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf config.security.rngd.enable {
|
||||
config = mkIf cfg.enable {
|
||||
services.udev.extraRules = ''
|
||||
KERNEL=="random", TAG+="systemd"
|
||||
SUBSYSTEM=="cpu", ENV{MODALIAS}=="cpu:type:x86,*feature:*009E*", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
|
||||
|
@ -29,7 +39,10 @@ with lib;
|
|||
|
||||
description = "Hardware RNG Entropy Gatherer Daemon";
|
||||
|
||||
serviceConfig.ExecStart = "${pkgs.rng-tools}/sbin/rngd -f";
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.rng-tools}/sbin/rngd -f"
|
||||
+ optionalString cfg.debug " -d";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -5,11 +5,13 @@ with lib;
|
|||
let
|
||||
cfg = config.services.journalbeat;
|
||||
|
||||
lt6 = builtins.compareVersions cfg.package.version "6" < 0;
|
||||
|
||||
journalbeatYml = pkgs.writeText "journalbeat.yml" ''
|
||||
name: ${cfg.name}
|
||||
tags: ${builtins.toJSON cfg.tags}
|
||||
|
||||
journalbeat.cursor_state_file: ${cfg.stateDir}/cursor-state
|
||||
${optionalString lt6 "journalbeat.cursor_state_file: /var/lib/${cfg.stateDir}/cursor-state"}
|
||||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
|
@ -22,6 +24,16 @@ in
|
|||
|
||||
enable = mkEnableOption "journalbeat";
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.journalbeat;
|
||||
defaultText = "pkgs.journalbeat";
|
||||
example = literalExample "pkgs.journalbeat7";
|
||||
description = ''
|
||||
The journalbeat package to use
|
||||
'';
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "journalbeat";
|
||||
|
@ -36,13 +48,17 @@ in
|
|||
|
||||
stateDir = mkOption {
|
||||
type = types.str;
|
||||
default = "/var/lib/journalbeat";
|
||||
description = "The state directory. Journalbeat's own logs and other data are stored here.";
|
||||
default = "journalbeat";
|
||||
description = ''
|
||||
Directory below <literal>/var/lib/</literal> to store journalbeat's
|
||||
own logs and other data. This directory will be created automatically
|
||||
using systemd's StateDirectory mechanism.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = ''
|
||||
default = optionalString lt6 ''
|
||||
journalbeat:
|
||||
seek_position: cursor
|
||||
cursor_seek_fallback: tail
|
||||
|
@ -61,7 +77,16 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
systemd.services.journalbeat = with pkgs; {
|
||||
assertions = [
|
||||
{
|
||||
assertion = !hasPrefix "/" cfg.stateDir;
|
||||
message =
|
||||
"The option services.journalbeat.stateDir shouldn't be an absolute directory." +
|
||||
" It should be a directory relative to /var/lib/.";
|
||||
}
|
||||
];
|
||||
|
||||
systemd.services.journalbeat = {
|
||||
description = "Journalbeat log shipper";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
preStart = ''
|
||||
|
@ -69,7 +94,13 @@ in
|
|||
mkdir -p ${cfg.stateDir}/logs
|
||||
'';
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.journalbeat}/bin/journalbeat -c ${journalbeatYml} -path.data ${cfg.stateDir}/data -path.logs ${cfg.stateDir}/logs";
|
||||
StateDirectory = cfg.stateDir;
|
||||
ExecStart = ''
|
||||
${cfg.package}/bin/journalbeat \
|
||||
-c ${journalbeatYml} \
|
||||
-path.data /var/lib/${cfg.stateDir}/data \
|
||||
-path.logs /var/lib/${cfg.stateDir}/logs'';
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -0,0 +1,185 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.paperless;
|
||||
|
||||
defaultUser = "paperless";
|
||||
|
||||
manage = cfg.package.withConfig {
|
||||
config = {
|
||||
PAPERLESS_CONSUMPTION_DIR = cfg.consumptionDir;
|
||||
PAPERLESS_INLINE_DOC = "true";
|
||||
PAPERLESS_DISABLE_LOGIN = "true";
|
||||
} // cfg.extraConfig;
|
||||
inherit (cfg) dataDir ocrLanguages;
|
||||
paperlessPkg = cfg.package;
|
||||
};
|
||||
in
|
||||
{
|
||||
options.services.paperless = {
|
||||
enable = mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable Paperless.
|
||||
|
||||
When started, the Paperless database is automatically created if it doesn't
|
||||
exist and updated if the Paperless package has changed.
|
||||
Both tasks are achieved by running a Django migration.
|
||||
'';
|
||||
};
|
||||
|
||||
dataDir = mkOption {
|
||||
type = types.str;
|
||||
default = "/var/lib/paperless";
|
||||
description = "Directory to store the Paperless data.";
|
||||
};
|
||||
|
||||
consumptionDir = mkOption {
|
||||
type = types.str;
|
||||
default = "${cfg.dataDir}/consume";
|
||||
defaultText = "\${dataDir}/consume";
|
||||
description = "Directory from which new documents are imported.";
|
||||
};
|
||||
|
||||
consumptionDirIsPublic = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Whether all users can write to the consumption dir.";
|
||||
};
|
||||
|
||||
ocrLanguages = mkOption {
|
||||
type = with types; nullOr (listOf string);
|
||||
default = null;
|
||||
description = ''
|
||||
Languages available for OCR via Tesseract, specified as
|
||||
<literal>ISO 639-2/T</literal> language codes.
|
||||
If unset, defaults to all available languages.
|
||||
'';
|
||||
example = [ "eng" "spa" "jpn" ];
|
||||
};
|
||||
|
||||
address = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost";
|
||||
description = "Server listening address.";
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.int;
|
||||
default = 28981;
|
||||
description = "Server port to listen on.";
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.attrs;
|
||||
default = {};
|
||||
description = ''
|
||||
Extra paperless config options.
|
||||
|
||||
The config values are evaluated as double-quoted Bash string literals.
|
||||
|
||||
See <literal>paperless-src/paperless.conf.example</literal> for available options.
|
||||
|
||||
To enable user authentication, set <literal>PAPERLESS_DISABLE_LOGIN = "false"</literal>
|
||||
and run the shell command <literal>$dataDir/paperless-manage createsuperuser</literal>.
|
||||
|
||||
To define secret options without storing them in /nix/store, use the following pattern:
|
||||
<literal>PAPERLESS_PASSPHRASE = "$(< /etc/my_passphrase_file)"</literal>
|
||||
'';
|
||||
example = literalExample ''
|
||||
{
|
||||
PAPERLESS_OCR_LANGUAGE = "deu";
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = defaultUser;
|
||||
description = "User under which Paperless runs.";
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.paperless;
|
||||
defaultText = "pkgs.paperless";
|
||||
description = "The Paperless package to use.";
|
||||
};
|
||||
|
||||
manage = mkOption {
|
||||
type = types.package;
|
||||
readOnly = true;
|
||||
default = manage;
|
||||
description = ''
|
||||
A script to manage the Paperless instance.
|
||||
It wraps Django's manage.py and is also available at
|
||||
<literal>$dataDir/manage-paperless</literal>
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d '${cfg.dataDir}' - ${cfg.user} ${cfg.user} - -"
|
||||
] ++ (optional cfg.consumptionDirIsPublic
|
||||
"d '${cfg.consumptionDir}' 777 ${cfg.user} ${cfg.user} - -"
|
||||
# If the consumption dir is not created here, it's automatically created by
|
||||
# 'manage' with the default permissions.
|
||||
);
|
||||
|
||||
systemd.services.paperless-consumer = {
|
||||
description = "Paperless document consumer";
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
ExecStart = "${manage} document_consumer";
|
||||
Restart = "always";
|
||||
};
|
||||
after = [ "systemd-tmpfiles-setup.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
preStart = ''
|
||||
if [[ $(readlink ${cfg.dataDir}/paperless-manage) != ${manage} ]]; then
|
||||
ln -sf ${manage} ${cfg.dataDir}/paperless-manage
|
||||
fi
|
||||
|
||||
${manage.setupEnv}
|
||||
# Auto-migrate on first run or if the package has changed
|
||||
versionFile="$PAPERLESS_DBDIR/src-version"
|
||||
if [[ $(cat "$versionFile" 2>/dev/null) != ${cfg.package} ]]; then
|
||||
python $paperlessSrc/manage.py migrate
|
||||
echo ${cfg.package} > "$versionFile"
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
systemd.services.paperless-server = {
|
||||
description = "Paperless document server";
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
ExecStart = "${manage} runserver --noreload ${cfg.address}:${toString cfg.port}";
|
||||
Restart = "always";
|
||||
};
|
||||
# Bind to `paperless-consumer` so that the server never runs
|
||||
# during migrations
|
||||
bindsTo = [ "paperless-consumer.service" ];
|
||||
after = [ "paperless-consumer.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
|
||||
users = optionalAttrs (cfg.user == defaultUser) {
|
||||
users = [{
|
||||
name = defaultUser;
|
||||
group = defaultUser;
|
||||
uid = config.ids.uids.paperless;
|
||||
home = cfg.dataDir;
|
||||
}];
|
||||
|
||||
groups = [{
|
||||
name = defaultUser;
|
||||
gid = config.ids.gids.paperless;
|
||||
}];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -28,14 +28,29 @@ in {
|
|||
path = [ pkgs.coreutils ];
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
unitConfig.documentation = "man:vnstatd(1) man:vnstat(1) man:vnstat.conf(5)";
|
||||
documentation = [
|
||||
"man:vnstatd(1)"
|
||||
"man:vnstat(1)"
|
||||
"man:vnstat.conf(5)"
|
||||
];
|
||||
preStart = "chmod 755 /var/lib/vnstat";
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.vnstat}/bin/vnstatd -n";
|
||||
ExecReload = "${pkgs.procps}/bin/kill -HUP $MAINPID";
|
||||
ProtectHome = true;
|
||||
|
||||
# Hardening (from upstream example service)
|
||||
ProtectSystem = "strict";
|
||||
StateDirectory = "vnstat";
|
||||
PrivateDevices = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectKernelModules = true;
|
||||
PrivateTmp = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictNamespaces = true;
|
||||
|
||||
User = "vnstatd";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -189,6 +189,11 @@ in
|
|||
config = mkIf cfg.enable {
|
||||
|
||||
assertions = [
|
||||
{ assertion = xcfg.enable;
|
||||
message = ''
|
||||
LightDM requires services.xserver.enable to be true
|
||||
'';
|
||||
}
|
||||
{ assertion = cfg.autoLogin.enable -> cfg.autoLogin.user != null;
|
||||
message = ''
|
||||
LightDM auto-login requires services.xserver.displayManager.lightdm.autoLogin.user to be set
|
||||
|
|
|
@ -195,6 +195,11 @@ in
|
|||
config = mkIf cfg.enable {
|
||||
|
||||
assertions = [
|
||||
{ assertion = xcfg.enable;
|
||||
message = ''
|
||||
SDDM requires services.xserver.enable to be true
|
||||
'';
|
||||
}
|
||||
{ assertion = cfg.autoLogin.enable -> cfg.autoLogin.user != null;
|
||||
message = ''
|
||||
SDDM auto-login requires services.xserver.displayManager.sddm.autoLogin.user to be set
|
||||
|
@ -264,8 +269,8 @@ in
|
|||
};
|
||||
|
||||
environment.etc."sddm.conf".source = cfgFile;
|
||||
environment.pathsToLink = [
|
||||
"/share/sddm"
|
||||
environment.pathsToLink = [
|
||||
"/share/sddm"
|
||||
];
|
||||
|
||||
users.groups.sddm.gid = config.ids.gids.sddm;
|
||||
|
|
|
@ -104,7 +104,7 @@ in
|
|||
"VBoxNetNAT"
|
||||
"VBoxSDL"
|
||||
"VBoxVolInfo"
|
||||
"VirtualBox"
|
||||
"VirtualBoxVM"
|
||||
]));
|
||||
|
||||
users.groups.vboxusers.gid = config.ids.gids.vboxusers;
|
||||
|
|
|
@ -189,6 +189,7 @@ in
|
|||
pam-oath-login = handleTest ./pam-oath-login.nix {};
|
||||
pam-u2f = handleTest ./pam-u2f.nix {};
|
||||
pantheon = handleTest ./pantheon.nix {};
|
||||
paperless = handleTest ./paperless.nix {};
|
||||
peerflix = handleTest ./peerflix.nix {};
|
||||
pgjwt = handleTest ./pgjwt.nix {};
|
||||
pgmanage = handleTest ./pgmanage.nix {};
|
||||
|
|
|
@ -12,6 +12,11 @@ with pkgs.lib;
|
|||
let
|
||||
esUrl = "http://localhost:9200";
|
||||
|
||||
totalHits = message :
|
||||
"curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' " +
|
||||
''-d '{\"query\" : { \"match\" : { \"message\" : \"${message}\"}}}' '' +
|
||||
"| jq .hits.total";
|
||||
|
||||
mkElkTest = name : elk :
|
||||
let elasticsearchGe7 = builtins.compareVersions elk.elasticsearch.version "7" >= 0;
|
||||
in makeTest {
|
||||
|
@ -21,7 +26,7 @@ let
|
|||
};
|
||||
nodes = {
|
||||
one =
|
||||
{ pkgs, ... }: {
|
||||
{ pkgs, lib, ... }: {
|
||||
# Not giving the machine at least 2060MB results in elasticsearch failing with the following error:
|
||||
#
|
||||
# OpenJDK 64-Bit Server VM warning:
|
||||
|
@ -40,6 +45,26 @@ let
|
|||
environment.systemPackages = [ pkgs.jq ];
|
||||
|
||||
services = {
|
||||
|
||||
journalbeat = let lt6 = builtins.compareVersions
|
||||
elk.journalbeat.version "6" < 0; in {
|
||||
enable = true;
|
||||
package = elk.journalbeat;
|
||||
extraConfig = mkOptionDefault (''
|
||||
logging:
|
||||
to_syslog: true
|
||||
level: warning
|
||||
metrics.enabled: false
|
||||
output.elasticsearch:
|
||||
hosts: [ "127.0.0.1:9200" ]
|
||||
${optionalString lt6 "template.enabled: false"}
|
||||
'' + optionalString (!lt6) ''
|
||||
journalbeat.inputs:
|
||||
- paths: []
|
||||
seek: cursor
|
||||
'');
|
||||
};
|
||||
|
||||
logstash = {
|
||||
enable = true;
|
||||
package = elk.logstash;
|
||||
|
@ -107,14 +132,19 @@ let
|
|||
testScript = ''
|
||||
startAll;
|
||||
|
||||
# Wait until elasticsearch is listening for connections.
|
||||
$one->waitForUnit("elasticsearch.service");
|
||||
$one->waitForOpenPort(9200);
|
||||
|
||||
# Continue as long as the status is not "red". The status is probably
|
||||
# "yellow" instead of "green" because we are using a single elasticsearch
|
||||
# node which elasticsearch considers risky.
|
||||
#
|
||||
# TODO: extend this test with multiple elasticsearch nodes and see if the status turns "green".
|
||||
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_cluster/health' | jq .status | grep -v red");
|
||||
# TODO: extend this test with multiple elasticsearch nodes
|
||||
# and see if the status turns "green".
|
||||
$one->waitUntilSucceeds(
|
||||
"curl --silent --show-error '${esUrl}/_cluster/health' " .
|
||||
"| jq .status | grep -v red");
|
||||
|
||||
# Perform some simple logstash tests.
|
||||
$one->waitForUnit("logstash.service");
|
||||
|
@ -123,16 +153,28 @@ let
|
|||
|
||||
# See if kibana is healthy.
|
||||
$one->waitForUnit("kibana.service");
|
||||
$one->waitUntilSucceeds("curl --silent --show-error 'http://localhost:5601/api/status' | jq .status.overall.state | grep green");
|
||||
$one->waitUntilSucceeds(
|
||||
"curl --silent --show-error 'http://localhost:5601/api/status' " .
|
||||
"| jq .status.overall.state | grep green");
|
||||
|
||||
# See if logstash messages arive in elasticsearch.
|
||||
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' -d '{\"query\" : { \"match\" : { \"message\" : \"flowers\"}}}' | jq .hits.total | grep -v 0");
|
||||
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' -d '{\"query\" : { \"match\" : { \"message\" : \"dragons\"}}}' | jq .hits.total | grep 0");
|
||||
$one->waitUntilSucceeds("${totalHits "flowers"} | grep -v 0");
|
||||
$one->waitUntilSucceeds("${totalHits "dragons"} | grep 0");
|
||||
|
||||
# Test if a message logged to the journal
|
||||
# is ingested by elasticsearch via journalbeat.
|
||||
$one->waitForUnit("journalbeat.service");
|
||||
$one->execute("echo 'Supercalifragilisticexpialidocious' | systemd-cat");
|
||||
$one->waitUntilSucceeds(
|
||||
"${totalHits "Supercalifragilisticexpialidocious"} | grep -v 0");
|
||||
|
||||
'' + optionalString (!elasticsearchGe7) ''
|
||||
# Test elasticsearch-curator.
|
||||
$one->systemctl("stop logstash");
|
||||
$one->systemctl("start elasticsearch-curator");
|
||||
$one->waitUntilSucceeds("! curl --silent --show-error '${esUrl}/_cat/indices' | grep logstash | grep -q ^$1");
|
||||
$one->waitUntilSucceeds(
|
||||
"! curl --silent --show-error '${esUrl}/_cat/indices' " .
|
||||
"| grep logstash | grep -q ^$1");
|
||||
'';
|
||||
};
|
||||
in mapAttrs mkElkTest {
|
||||
|
@ -140,6 +182,7 @@ in mapAttrs mkElkTest {
|
|||
elasticsearch = pkgs.elasticsearch5;
|
||||
logstash = pkgs.logstash5;
|
||||
kibana = pkgs.kibana5;
|
||||
journalbeat = pkgs.journalbeat5;
|
||||
};
|
||||
"ELK-6" =
|
||||
if enableUnfree
|
||||
|
@ -147,11 +190,13 @@ in mapAttrs mkElkTest {
|
|||
elasticsearch = pkgs.elasticsearch6;
|
||||
logstash = pkgs.logstash6;
|
||||
kibana = pkgs.kibana6;
|
||||
journalbeat = pkgs.journalbeat6;
|
||||
}
|
||||
else {
|
||||
elasticsearch = pkgs.elasticsearch6-oss;
|
||||
logstash = pkgs.logstash6-oss;
|
||||
kibana = pkgs.kibana6-oss;
|
||||
journalbeat = pkgs.journalbeat6;
|
||||
};
|
||||
"ELK-7" =
|
||||
if enableUnfree
|
||||
|
@ -159,10 +204,12 @@ in mapAttrs mkElkTest {
|
|||
elasticsearch = pkgs.elasticsearch7;
|
||||
logstash = pkgs.logstash7;
|
||||
kibana = pkgs.kibana7;
|
||||
journalbeat = pkgs.journalbeat7;
|
||||
}
|
||||
else {
|
||||
elasticsearch = pkgs.elasticsearch7-oss;
|
||||
logstash = pkgs.logstash7-oss;
|
||||
kibana = pkgs.kibana7-oss;
|
||||
journalbeat = pkgs.journalbeat7;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@ with pkgs.lib;
|
|||
{
|
||||
mysql = makeTest {
|
||||
name = "gitea-mysql";
|
||||
meta.maintainers = [ maintainers.aanderse ];
|
||||
meta.maintainers = with maintainers; [ aanderse kolaente ];
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
import ./make-test.nix ({ lib, ... } : {
|
||||
name = "paperless";
|
||||
meta = with lib.maintainers; {
|
||||
maintainers = [ earvstedt ];
|
||||
};
|
||||
|
||||
machine = { pkgs, ... }: {
|
||||
environment.systemPackages = with pkgs; [ imagemagick jq ];
|
||||
services.paperless = {
|
||||
enable = true;
|
||||
ocrLanguages = [ "eng" ];
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
$machine->waitForUnit("paperless-consumer.service");
|
||||
# Create test doc
|
||||
$machine->succeed('convert -size 400x40 xc:white -font "DejaVu-Sans" -pointsize 20 -fill black \
|
||||
-annotate +5+20 "hello world 16-10-2005" /var/lib/paperless/consume/doc.png');
|
||||
|
||||
$machine->waitForUnit("paperless-server.service");
|
||||
# Wait until server accepts connections
|
||||
$machine->waitUntilSucceeds("curl -s localhost:28981");
|
||||
# Wait until document is consumed
|
||||
$machine->waitUntilSucceeds('(($(curl -s localhost:28981/api/documents/ | jq .count) == 1))');
|
||||
$machine->succeed("curl -s localhost:28981/api/documents/ | jq '.results | .[0] | .created'")
|
||||
=~ /2005-10-16/ or die;
|
||||
'';
|
||||
})
|
|
@ -2,9 +2,26 @@
|
|||
config ? {},
|
||||
pkgs ? import ../.. { inherit system config; },
|
||||
debug ? false,
|
||||
enableUnfree ? false
|
||||
enableUnfree ? false,
|
||||
# Nested KVM virtualization (https://www.linux-kvm.org/page/Nested_Guests)
|
||||
# requires a modprobe flag on the build machine: (kvm-amd for AMD CPUs)
|
||||
# boot.extraModprobeConfig = "options kvm-intel nested=Y";
|
||||
# Without this VirtualBox will use SW virtualization and will only be able
|
||||
# to run 32-bit guests.
|
||||
useKvmNestedVirt ? false,
|
||||
# Whether to run 64-bit guests instead of 32-bit. Requires nested KVM.
|
||||
use64bitGuest ? false,
|
||||
# Whether to enable the virtual UART in VirtualBox guests, allowing to see
|
||||
# the guest console. There is currently a bug in VirtualBox where this will
|
||||
# cause a crash if running with SW virtualization
|
||||
# (https://www.virtualbox.org/ticket/18632). If you need to debug the tests
|
||||
# then enable this and nested KVM to work around the crash (see above).
|
||||
enableVBoxUART ? false
|
||||
}:
|
||||
|
||||
assert use64bitGuest -> useKvmNestedVirt;
|
||||
assert enableVBoxUART -> useKvmNestedVirt; # VirtualBox bug, see above
|
||||
|
||||
with import ../lib/testing.nix { inherit system pkgs; };
|
||||
with pkgs.lib;
|
||||
|
||||
|
@ -94,7 +111,7 @@ let
|
|||
|
||||
testVM = vmName: vmScript: let
|
||||
cfg = (import ../lib/eval-config.nix {
|
||||
system = "i686-linux";
|
||||
system = if use64bitGuest then "x86_64-linux" else "i686-linux";
|
||||
modules = [
|
||||
../modules/profiles/minimal.nix
|
||||
(testVMConfig vmName vmScript)
|
||||
|
@ -141,13 +158,15 @@ let
|
|||
sharePath = "/home/alice/vboxshare-${name}";
|
||||
|
||||
createFlags = mkFlags [
|
||||
"--ostype Linux26"
|
||||
"--ostype ${if use64bitGuest then "Linux26_64" else "Linux26"}"
|
||||
"--register"
|
||||
];
|
||||
|
||||
vmFlags = mkFlags ([
|
||||
"--uart1 0x3F8 4"
|
||||
"--uartmode1 client /run/virtualbox-log-${name}.sock"
|
||||
vmFlags = mkFlags (
|
||||
(optionals enableVBoxUART [
|
||||
"--uart1 0x3F8 4"
|
||||
"--uartmode1 client /run/virtualbox-log-${name}.sock"
|
||||
]) ++ [
|
||||
"--memory 768"
|
||||
"--audio none"
|
||||
] ++ (attrs.vmFlags or []));
|
||||
|
@ -180,7 +199,7 @@ let
|
|||
];
|
||||
in {
|
||||
machine = {
|
||||
systemd.sockets."vboxtestlog-${name}" = {
|
||||
systemd.sockets."vboxtestlog-${name}" = mkIf enableVBoxUART {
|
||||
description = "VirtualBox Test Machine Log Socket For ${name}";
|
||||
wantedBy = [ "sockets.target" ];
|
||||
before = [ "multi-user.target" ];
|
||||
|
@ -188,7 +207,7 @@ let
|
|||
socketConfig.Accept = true;
|
||||
};
|
||||
|
||||
systemd.services."vboxtestlog-${name}@" = {
|
||||
systemd.services."vboxtestlog-${name}@" = mkIf enableVBoxUART {
|
||||
description = "VirtualBox Test Machine Log For ${name}";
|
||||
serviceConfig.StandardInput = "socket";
|
||||
serviceConfig.StandardOutput = "syslog";
|
||||
|
@ -346,6 +365,8 @@ let
|
|||
vmConfigs = mapAttrsToList mkVMConf vms;
|
||||
in [ ./common/user-account.nix ./common/x11.nix ] ++ vmConfigs;
|
||||
virtualisation.memorySize = 2048;
|
||||
virtualisation.qemu.options =
|
||||
if useKvmNestedVirt then ["-cpu" "kvm64,vmx=on"] else [];
|
||||
virtualisation.virtualbox.host.enable = true;
|
||||
services.xserver.displayManager.auto.user = "alice";
|
||||
users.users.alice.extraGroups = let
|
||||
|
@ -412,9 +433,14 @@ in mapAttrs (mkVBoxTest false vboxVMs) {
|
|||
);
|
||||
$machine->sleep(5);
|
||||
$machine->screenshot("gui_manager_started");
|
||||
# Home to select Tools, down to move to the VM, enter to start it.
|
||||
$machine->sendKeys("home");
|
||||
$machine->sendKeys("down");
|
||||
$machine->sendKeys("ret");
|
||||
$machine->screenshot("gui_manager_sent_startup");
|
||||
waitForStartup_simple (sub {
|
||||
$machine->sendKeys("home");
|
||||
$machine->sendKeys("down");
|
||||
$machine->sendKeys("ret");
|
||||
});
|
||||
$machine->screenshot("gui_started");
|
||||
|
|
|
@ -1,40 +0,0 @@
|
|||
--- code-r100/configure.ac 2014-09-25 23:44:41.059174904 +0200
|
||||
+++ code-r100.new/configure.ac 2014-09-26 01:37:18.507017390 +0200
|
||||
@@ -44,6 +44,8 @@
|
||||
[AC_MSG_ERROR(CONFIG: You need libxml2-dev installed.
|
||||
http://www.xmlsoft.org/)])
|
||||
|
||||
+PKG_CHECK_MODULES([libxml], [libxml-2.0])
|
||||
+
|
||||
AC_CHECK_LIB([m], [sqrt], , [AC_MSG_ERROR(CORE: You need libm installed)])
|
||||
AC_CHECK_LIB([pthread], [pthread_self], , [AC_MSG_ERROR(CORE: You need libpthread installed)])
|
||||
|
||||
@@ -79,12 +81,12 @@
|
||||
echo "--- Enabling USB LCD display --";
|
||||
fi
|
||||
|
||||
-#SDL_VERSION=1.2.4
|
||||
-#AM_PATH_SDL($SDL_VERSION,
|
||||
-# :,
|
||||
-# AC_MSG_ERROR([VIDEO: *** SDL version $SDL_VERSION not found!
|
||||
-# http://www.libsdl.org/])
|
||||
-#)
|
||||
+SDL_VERSION=1.2.4
|
||||
+AM_PATH_SDL($SDL_VERSION,
|
||||
+ :,
|
||||
+ AC_MSG_ERROR([VIDEO: *** SDL version $SDL_VERSION not found!
|
||||
+ http://www.libsdl.org/])
|
||||
+)
|
||||
|
||||
AC_CHECK_LIB([vorbis], [main], ,
|
||||
[AC_MSG_ERROR(AUDIO: You need libvorbis-dev installed.
|
||||
@@ -95,6 +97,9 @@
|
||||
AC_CHECK_LIB([vorbisenc], [main], ,
|
||||
[AC_MSG_ERROR(AUDIO: You need libvorbis-dev installed.
|
||||
http://www.xiph.org/ogg/vorbis/)])
|
||||
+AC_CHECK_LIB([ogg], [main], ,
|
||||
+ [AC_MSG_ERROR(AUDIO: You need libogg-dev installed.
|
||||
+ http://www.xiph.org/ogg/)])
|
||||
|
||||
AC_CHECK_LIB([sndfile], [main], ,
|
||||
[AC_MSG_ERROR(AUDIO: you need libsndfile installed.
|
|
@ -1,13 +0,0 @@
|
|||
--- code-r100/src/Makefile.am 2014-09-25 23:44:41.043174832 +0200
|
||||
+++ code-r100.new/src/Makefile.am 2014-09-26 01:21:03.750015888 +0200
|
||||
@@ -24,7 +24,8 @@
|
||||
|
||||
fweelindir = $(datadir)/fweelin
|
||||
|
||||
-FWEELIN_CFLAGS = -I. -g -Wall -Wno-write-strings -Wno-non-virtual-dtor -D_REENTRANT -DPTHREADS -DNDEBUG -DVERSION=\"$(VERSION)\" -DFWEELIN_DATADIR=\"$(fweelindir)\" -DADDON_DIR=\"/usr/local/lib/jack\" -I/usr/include/freetype2 -I/usr/include/libxml2 -funroll-loops -finline-functions -fomit-frame-pointer -ffast-math -fexpensive-optimizations -fstrict-aliasing -falign-loops=2 -falign-jumps=2 -falign-functions=2 -O9
|
||||
+XML_CFLAGS = `xml2-config --cflags`
|
||||
+FWEELIN_CFLAGS = -I. -g -Wall -Wno-write-strings -Wno-non-virtual-dtor -D_REENTRANT -DPTHREADS -DNDEBUG -DVERSION=\"$(VERSION)\" -DFWEELIN_DATADIR=\"$(fweelindir)\" -DADDON_DIR=\"/usr/local/lib/jack\" -I/usr/include/freetype2 $(XML_CFLAGS) -funroll-loops -finline-functions -fomit-frame-pointer -ffast-math -fexpensive-optimizations -fstrict-aliasing -falign-loops=2 -falign-jumps=2 -falign-functions=2 -O9
|
||||
|
||||
AM_CFLAGS = $(CFLAGS) $(FWEELIN_CFLAGS)
|
||||
-AM_CXXFLAGS = $(CFLAGS) $(CXXFLAGS) $(FWEELIN_CFLAGS)
|
||||
+AM_CXXFLAGS = $(CFLAGS) $(CXXFLAGS) $(FWEELIN_CFLAGS) ${libxml2_CFLAGS}
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "Mopidy-Iris";
|
||||
version = "3.37.0";
|
||||
version = "3.37.1";
|
||||
|
||||
src = pythonPackages.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1fy802jx3817ldrm3g5inrfjbi7s8xcx96pnglbq54nvp41lzyh5";
|
||||
sha256 = "0qcg456k7av0anymmmnlcn0v4642gbgk0nhic6w9bg9v5m0nj9ll";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -12,11 +12,11 @@ let
|
|||
build = "183.5452501";
|
||||
sha256Hash = "0i8wz9v6nxzr27a07cv2330i84v94pcl13gjwvpglp55hyzd8axd";
|
||||
};
|
||||
betaVersion = stableVersion;
|
||||
betaVersion = latestVersion;
|
||||
latestVersion = { # canary & dev
|
||||
version = "3.5.0.12"; # "Android Studio 3.5 Canary 13"
|
||||
build = "191.5487692";
|
||||
sha256Hash = "0iwd2qa551rs9b0w4rs7wmzdbh3r4j76xvs815l6i5pilk0s47gz";
|
||||
version = "3.5.0.13"; # "Android Studio 3.5 Beta 1"
|
||||
build = "191.5529924";
|
||||
sha256Hash = "0i710n2wr0a8lvxf1mg6a5pmdh1l72wa0hwyricyixi0mylwwc6l";
|
||||
};
|
||||
in rec {
|
||||
# Attributes are named by their corresponding release channels
|
||||
|
|
|
@ -4,12 +4,12 @@ with stdenv.lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "howl-${version}";
|
||||
version = "0.5.3";
|
||||
version = "0.6";
|
||||
|
||||
# Use the release tarball containing pre-downloaded dependencies sources
|
||||
src = fetchurl {
|
||||
url = "https://github.com/howl-editor/howl/releases/download/0.5.3/howl-0.5.3.tgz";
|
||||
sha256 = "0gnc8vr5h8mwapbcqc1zr9la62rb633awyqgy8q7pwjpiy85a03v";
|
||||
url = "https://github.com/howl-editor/howl/releases/download/${version}/howl-${version}.tgz";
|
||||
sha256 = "1qc58l3rkr37cj6vhf8c7bnwbz93nscyraz7jxqwjq6k4gj0cjw3";
|
||||
};
|
||||
|
||||
sourceRoot = "./howl-${version}/src";
|
||||
|
|
|
@ -263,12 +263,12 @@ in
|
|||
|
||||
datagrip = buildDataGrip rec {
|
||||
name = "datagrip-${version}";
|
||||
version = "2019.1.1"; /* updated by script */
|
||||
version = "2019.1.2"; /* 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 = "0w6hasb8vcbxdqmb0pngwr2jg0w14prqb4v7blraa5jf1xyyiayd"; /* updated by script */
|
||||
sha256 = "0157ccc94pwk4a8r1pvvjzd0g4liqqns6b0cmimfjhxsh6bnarww"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-datagrip";
|
||||
update-channel = "DataGrip RELEASE";
|
||||
|
@ -354,12 +354,12 @@ in
|
|||
|
||||
rider = buildRider rec {
|
||||
name = "rider-${version}";
|
||||
version = "2018.3.4"; /* updated by script */
|
||||
version = "2019.1.1"; /* 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 = "1klmg8wgj3shp4s0n2nn7n39zsk1mch6g9ifhwn5cgywpbzgam4p"; /* updated by script */
|
||||
sha256 = "0441y92b3xqf7xh8k4vc0m7dfm91psnrwlv3mjzbsv09jrk1kbq7"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-rider";
|
||||
update-channel = "Rider RELEASE";
|
||||
|
|
|
@ -21,13 +21,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "neovim-unwrapped-${version}";
|
||||
version = "0.3.4";
|
||||
version = "0.3.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "neovim";
|
||||
repo = "neovim";
|
||||
rev = "v${version}";
|
||||
sha256 = "07ncvgp6xfhiwc6hd7qf7zk28n3yj47p26qj1ji29vqkwnk28y3s";
|
||||
sha256 = "113lrr9gwimvvzlkwlishm4cjqcf30xq9jfxn7vh41ckgnbiwf3w";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
diff --git a/src/cpp/desktop/CMakeLists.txt b/src/cpp/desktop/CMakeLists.txt
|
||||
index f5701bf735..27af4148ff 100644
|
||||
--- a/src/cpp/desktop/CMakeLists.txt
|
||||
+++ b/src/cpp/desktop/CMakeLists.txt
|
||||
@@ -112,6 +112,7 @@ find_package(Qt5WebEngine REQUIRED)
|
||||
find_package(Qt5WebEngineWidgets REQUIRED)
|
||||
find_package(Qt5PrintSupport REQUIRED)
|
||||
find_package(Qt5Quick REQUIRED)
|
||||
+find_package(Qt5QuickWidgets REQUIRED)
|
||||
find_package(Qt5Positioning REQUIRED)
|
||||
find_package(Qt5Sensors REQUIRED)
|
||||
find_package(Qt5Svg REQUIRED)
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -8,6 +8,7 @@
|
|||
, qtsvg
|
||||
, qtwebengine
|
||||
|
||||
, akonadi-contacts
|
||||
, kcalcore
|
||||
, kconfigwidgets
|
||||
, kcoreaddons
|
||||
|
@ -50,14 +51,14 @@
|
|||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
name = "digikam-${version}";
|
||||
version = "6.0.0";
|
||||
pname = "digikam";
|
||||
version = "6.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KDE";
|
||||
repo = "digikam";
|
||||
rev = "v${version}";
|
||||
sha256 = "1ifvrn0bm7fp07d059rl4dy146qzdxafl36ipxg1fg00dkv95hh4";
|
||||
sha256 = "0h0jqfgpanhxfi3r7cgip58ppypqx79z6c5jj7i7f19hp2zziip8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
|
||||
|
@ -88,6 +89,7 @@ mkDerivation rec {
|
|||
qtsvg
|
||||
qtwebengine
|
||||
|
||||
akonadi-contacts
|
||||
kcalcore
|
||||
kconfigwidgets
|
||||
kcoreaddons
|
||||
|
@ -112,6 +114,7 @@ mkDerivation rec {
|
|||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ gnumake hugin enblend-enfuse ]})
|
||||
gappsWrapperArgs+=(--suffix DK_PLUGIN_PATH : ${placeholder "out"}/${qtbase.qtPluginPrefix}/${pname})
|
||||
substituteInPlace $out/bin/digitaglinktree \
|
||||
--replace "/usr/bin/perl" "${perl}/bin/perl" \
|
||||
--replace "/usr/bin/sqlite3" "${sqlite}/bin/sqlite3"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, lib, symlinkJoin, gimp, makeWrapper, gimpPlugins, plugins ? null}:
|
||||
{ stdenv, lib, symlinkJoin, gimp, makeWrapper, gimpPlugins, gnome3, plugins ? null}:
|
||||
|
||||
let
|
||||
allPlugins = lib.filter (pkg: builtins.isAttrs pkg && pkg.type == "derivation" && !pkg.meta.broken or false) (lib.attrValues gimpPlugins);
|
||||
|
@ -17,6 +17,7 @@ in symlinkJoin {
|
|||
for each in gimp-${versionBranch} gimp-console-${versionBranch}; do
|
||||
wrapProgram $out/bin/$each \
|
||||
--set GIMP2_PLUGINDIR "$out/lib/gimp/2.0" \
|
||||
--prefix GTK_PATH : "${gnome3.gnome-themes-extra}/lib/gtk-2.0" \
|
||||
${toString extraArgs}
|
||||
done
|
||||
set +x
|
||||
|
|
|
@ -12,14 +12,14 @@ let
|
|||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.2";
|
||||
version = "1.4";
|
||||
name = "renderdoc-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "baldurk";
|
||||
repo = "renderdoc";
|
||||
rev = "v${version}";
|
||||
sha256 = "0s1q5d58x18yz3nf94pv5i1qd2hc0a4gdj4qkpcn8s6ms2x05pz4";
|
||||
sha256 = "1iann73r4yzkwnm13h4zqipqrp5i5cnkv27yyap0axz6h3npw94r";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
{ config, lib, stdenv, fetchurl, CoreAudio
|
||||
{ config, lib, stdenv, fetchurl, pkgconfig, CoreAudio
|
||||
, enableAlsa ? true, alsaLib ? null
|
||||
, enableLibao ? true, libao ? null
|
||||
, enableLame ? config.sox.enableLame or false, lame ? null
|
||||
, enableLibmad ? true, libmad ? null
|
||||
, enableLibogg ? true, libogg ? null, libvorbis ? null
|
||||
, enableOpusfile ? true, opusfile ? null
|
||||
, enableFLAC ? true, flac ? null
|
||||
, enablePNG ? true, libpng ? null
|
||||
, enableLibsndfile ? true, libsndfile ? null
|
||||
|
@ -22,12 +23,16 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0v2znlxkxxcd3f48hf3dx9pq7i6fdhb62kgj7wv8xggz8f35jpxl";
|
||||
};
|
||||
|
||||
# configure.ac uses pkg-config only to locate libopusfile
|
||||
nativeBuildInputs = optional enableOpusfile pkgconfig;
|
||||
|
||||
buildInputs =
|
||||
optional (enableAlsa && stdenv.isLinux) alsaLib ++
|
||||
optional enableLibao libao ++
|
||||
optional enableLame lame ++
|
||||
optional enableLibmad libmad ++
|
||||
optionals enableLibogg [ libogg libvorbis ] ++
|
||||
optional enableOpusfile opusfile ++
|
||||
optional enableFLAC flac ++
|
||||
optional enablePNG libpng ++
|
||||
optional enableLibsndfile libsndfile ++
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
{ lib, python3Packages }:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "gallery_dl";
|
||||
version = "1.8.3";
|
||||
|
||||
src = python3Packages.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "671ee6ff7baa3d63393d9856686313b4e0146f875dd937326942dd2fff605a72";
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
propagatedBuildInputs = with python3Packages; [ requests ];
|
||||
|
||||
meta = {
|
||||
description = "Command-line program to download image-galleries and -collections from several image hosting sites";
|
||||
homepage = https://github.com/mikf/gallery-dl;
|
||||
license = lib.licenses.gpl2;
|
||||
maintainers = with lib.maintainers; [ dawidsowa ];
|
||||
};
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
diff --git a/bushnell.cc b/bushnell.cc
|
||||
index 8fa844d..40707c4 100644
|
||||
--- a/bushnell.cc
|
||||
+++ b/bushnell.cc
|
||||
@@ -135,7 +135,7 @@ bushnell_get_icon_from_name(QString name)
|
||||
name = "Waypoint";
|
||||
}
|
||||
|
||||
- for (t = bushnell_icons; t->icon > 0; t++) {
|
||||
+ for (t = bushnell_icons; t->icon != 0; t++) {
|
||||
if (0 == name.compare(t->icon, Qt::CaseInsensitive)) {
|
||||
return t->symbol;
|
||||
}
|
||||
@@ -147,7 +147,7 @@ static const char*
|
||||
bushnell_get_name_from_symbol(signed int s)
|
||||
{
|
||||
icon_mapping_t* t;
|
||||
- for (t = bushnell_icons; t->icon > 0; t++) {
|
||||
+ for (t = bushnell_icons; t->icon != 0; t++) {
|
||||
if (s == t->symbol) {
|
||||
return t->icon;
|
||||
}
|
|
@ -2,17 +2,16 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gpsbabel-${version}";
|
||||
version = "1.5.4";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gpsbabel";
|
||||
repo = "gpsbabel";
|
||||
rev = "gpsbabel_${lib.replaceStrings ["."] ["_"] version}";
|
||||
sha256 = "0v6wpp14zkfbarmksf9dn3wmpj1araxd7xi5xp7gpl7kafb9aiwi";
|
||||
sha256 = "0q17jhmaf7z5lld2ff7h6jb3v1yz8hbwd2rmaq2dsamc53dls8iw";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./clang-4.patch
|
||||
(fetchpatch {
|
||||
url = https://sources.debian.net/data/main/g/gpsbabel/1.5.3-2/debian/patches/use_minizip;
|
||||
sha256 = "03fpsmlx1wc48d1j405zkzp8j64hcp0z72islf4mk1immql3ibcr";
|
||||
|
|
|
@ -18,6 +18,7 @@ stdenv.mkDerivation rec {
|
|||
It is fully customizable.
|
||||
'';
|
||||
homepage = https://www.gnu.org/software/hello/manual/;
|
||||
changelog = "https://git.savannah.gnu.org/cgit/hello.git/plain/NEWS?h=v${version}";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ maintainers.eelco ];
|
||||
platforms = platforms.all;
|
||||
|
|
|
@ -5,7 +5,9 @@
|
|||
|
||||
let
|
||||
|
||||
version = "1.3.1-ff75f26";
|
||||
data = builtins.fromJSON (builtins.readFile ./revision.json);
|
||||
|
||||
inherit (data) version url sha256;
|
||||
|
||||
rpath = stdenv.lib.makeLibraryPath
|
||||
[ libX11 zlib libSM libICE libXext freetype libXrender fontconfig libXft
|
||||
|
@ -17,10 +19,7 @@ in
|
|||
stdenv.mkDerivation {
|
||||
name = "hubstaff-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/${version}/Hubstaff-${version}.sh";
|
||||
sha256 = "0jm5l34r6lkfkg8vsdfqbr0axngxznhagwcl9y184lnyji91fmdl";
|
||||
};
|
||||
src = fetchurl { inherit sha256 url; };
|
||||
|
||||
nativeBuildInputs = [ unzip makeWrapper ];
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"url": "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.4.5-c5b459ea/Hubstaff-1.4.5-c5b459ea.sh",
|
||||
"version": "1.4.5-c5b459ea",
|
||||
"sha256": "180qglbj175wln0kh8d5czhjvy7z503zxn4w6522hkz4ddz201nz"
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p nix-prefetch-git curl
|
||||
|
||||
SCRIPT_DIR=$(dirname "$(readlink -f "$BASH_SOURCE")")
|
||||
|
||||
installation_script_url=$(curl --fail --head --location --silent --output /dev/null --write-out %{url_effective} https://app.hubstaff.com/download/linux)
|
||||
|
||||
version=$(echo "$installation_script_url" | sed -r 's/^https:\/\/hubstaff\-production\.s3\.amazonaws\.com\/downloads\/HubstaffClient\/Builds\/Release\/([^\/]+)\/Hubstaff.+$/\1/')
|
||||
|
||||
sha256=$(nix-prefetch-url "$installation_script_url")
|
||||
|
||||
cat <<EOT > $SCRIPT_DIR/revision.json
|
||||
{
|
||||
"url": "$installation_script_url",
|
||||
"version": "$version",
|
||||
"sha256": "$sha256"
|
||||
}
|
||||
EOT
|
|
@ -1,25 +0,0 @@
|
|||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pstree-2.39";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"http://www.sfr-fresh.com/unix/misc/${name}.tar.gz"
|
||||
"https://distfiles.macports.org/pstree/${name}.tar.gz"
|
||||
];
|
||||
sha256 = "17s7v15c4gryjpi11y1xq75022nkg4ggzvjlq2dkmyg67ssc76vw";
|
||||
};
|
||||
|
||||
unpackPhase = "unpackFile \$src; sourceRoot=.";
|
||||
|
||||
buildPhase = "pwd; $CC -o pstree pstree.c";
|
||||
installPhase = "mkdir -p \$out/bin; cp pstree \$out/bin";
|
||||
|
||||
meta = {
|
||||
description = "Show the set of running processes as a tree";
|
||||
license = "GPL";
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
|
@ -1,8 +1,8 @@
|
|||
{ haskell, lib, haskellPackages, fetchFromGitHub }:
|
||||
|
||||
let
|
||||
version = "1.3.2";
|
||||
sha256 = "0cyysvkl8m1ldlprmw9mpvch3r244nl25yv74dwcykga3g5mw4aa";
|
||||
version = "1.4.2";
|
||||
sha256 = "1kpzjsbx2xbp43hd62nq03jcknp0dqvdlxjc9gc3fagaqfbfzny2";
|
||||
|
||||
in (haskellPackages.mkDerivation {
|
||||
pname = "taskell";
|
||||
|
@ -35,10 +35,12 @@ in (haskellPackages.mkDerivation {
|
|||
# containers
|
||||
# directory
|
||||
file-embed
|
||||
fold-debounce
|
||||
http-conduit
|
||||
http-client
|
||||
http-types
|
||||
lens
|
||||
raw-strings-qq
|
||||
# mtl
|
||||
# template-haskell
|
||||
# text
|
||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -1,77 +0,0 @@
|
|||
|
||||
# HG changeset patch
|
||||
# User Michelangelo De Simone <mdesimone@mozilla.com>
|
||||
# Date 1479198095 28800
|
||||
# Node ID fde6e9ccfc72fbc0fcd93af7a40436b216e7ea1a
|
||||
# Parent 687eac6845a77d2cac5505da9c8912885c2a9e57
|
||||
Bug 1013882 - TestInterfaceJS should be packaged only if it's available. r=glandium, a=jcristau
|
||||
|
||||
MozReview-Commit-ID: IEHesdoU4Sz
|
||||
|
||||
diff --git a/b2g/installer/package-manifest.in b/b2g/installer/package-manifest.in
|
||||
--- a/b2g/installer/package-manifest.in
|
||||
+++ b/b2g/installer/package-manifest.in
|
||||
@@ -570,17 +570,17 @@
|
||||
@RESPATH@/components/InputMethod.manifest
|
||||
#ifdef MOZ_B2G
|
||||
@RESPATH@/components/inputmethod.xpt
|
||||
#endif
|
||||
|
||||
@RESPATH@/components/SystemUpdate.manifest
|
||||
@RESPATH@/components/SystemUpdateManager.js
|
||||
|
||||
-#ifdef MOZ_DEBUG
|
||||
+#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG)
|
||||
@RESPATH@/components/TestInterfaceJS.js
|
||||
@RESPATH@/components/TestInterfaceJS.manifest
|
||||
@RESPATH@/components/TestInterfaceJSMaplike.js
|
||||
#endif
|
||||
|
||||
; Modules
|
||||
@RESPATH@/modules/*
|
||||
|
||||
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
||||
--- a/browser/installer/package-manifest.in
|
||||
+++ b/browser/installer/package-manifest.in
|
||||
@@ -554,17 +554,17 @@
|
||||
@RESPATH@/components/PresentationControlService.js
|
||||
@RESPATH@/components/PresentationDataChannelSessionTransport.js
|
||||
@RESPATH@/components/PresentationDataChannelSessionTransport.manifest
|
||||
|
||||
; InputMethod API
|
||||
@RESPATH@/components/MozKeyboard.js
|
||||
@RESPATH@/components/InputMethod.manifest
|
||||
|
||||
-#ifdef MOZ_DEBUG
|
||||
+#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG)
|
||||
@RESPATH@/components/TestInterfaceJS.js
|
||||
@RESPATH@/components/TestInterfaceJS.manifest
|
||||
@RESPATH@/components/TestInterfaceJSMaplike.js
|
||||
#endif
|
||||
|
||||
; [Extensions]
|
||||
@RESPATH@/components/extensions-toolkit.manifest
|
||||
@RESPATH@/browser/components/extensions-browser.manifest
|
||||
diff --git a/mobile/android/installer/package-manifest.in b/mobile/android/installer/package-manifest.in
|
||||
--- a/mobile/android/installer/package-manifest.in
|
||||
+++ b/mobile/android/installer/package-manifest.in
|
||||
@@ -381,17 +381,17 @@
|
||||
|
||||
@BINPATH@/components/CaptivePortalDetectComponents.manifest
|
||||
@BINPATH@/components/captivedetect.js
|
||||
|
||||
#ifdef MOZ_WEBSPEECH
|
||||
@BINPATH@/components/dom_webspeechsynth.xpt
|
||||
#endif
|
||||
|
||||
-#ifdef MOZ_DEBUG
|
||||
+#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG)
|
||||
@BINPATH@/components/TestInterfaceJS.js
|
||||
@BINPATH@/components/TestInterfaceJS.manifest
|
||||
@BINPATH@/components/TestInterfaceJSMaplike.js
|
||||
#endif
|
||||
|
||||
@BINPATH@/components/nsAsyncShutdown.manifest
|
||||
@BINPATH@/components/nsAsyncShutdown.js
|
||||
|
||||
|
|
@ -17,10 +17,10 @@ rec {
|
|||
|
||||
firefox = common rec {
|
||||
pname = "firefox";
|
||||
ffversion = "66.0.4";
|
||||
ffversion = "66.0.5";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
||||
sha512 = "0mz2xrznma3hwb2b36hlv4qmnzbfcfhrxbxqhc8yyqxnc0fm4vxbbzh1pzvghp4182n98l1dignw95v11pfgi3gss7sz1zkiywz47sw";
|
||||
sha512 = "18bcpbwzhc2fi6cqhxhh6jiw5akhzr7qqs6s8irjbvh7q8f3z2n046vrlvpblhbkc2kv1n0s14n49yzv432adqwa9qi8d57jnxyfqkf";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -72,10 +72,10 @@ rec {
|
|||
|
||||
firefox-esr-60 = common rec {
|
||||
pname = "firefox-esr";
|
||||
ffversion = "60.6.2esr";
|
||||
ffversion = "60.6.3esr";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
||||
sha512 = "2gk11kffwmyq3m8dsjc86f7zfagl15msb8byrb4db4w4ssn335wax2p8m221xi4qnzf20fl0p1b30g5z8ivrxx2n19yknnwalazcjzd";
|
||||
sha512 = "3zg75djd7mbr9alhkp7zqrky7g41apyf6ka0acv500dmpnhvn5v5i0wy9ks8v6vh7kcgw7bngf6msb7vbbps6whwdcqv3v4dqbg6yr2";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -246,15 +246,15 @@ in rec {
|
|||
|
||||
tor-browser-8-0 = tbcommon rec {
|
||||
ffversion = "60.6.1esr";
|
||||
tbversion = "8.0.8";
|
||||
tbversion = "8.0.9";
|
||||
|
||||
# FIXME: fetchFromGitHub is not ideal, unpacked source is >900Mb
|
||||
src = fetchFromGitHub {
|
||||
owner = "SLNOS";
|
||||
repo = "tor-browser";
|
||||
# branch "tor-browser-60.6.1esr-8.0-1-slnos"
|
||||
rev = "dda14213c550afc522ef0bb0bb1643289c298736";
|
||||
sha256 = "0lj79nczcix9mx6d0isbizg0f8apf6vgkp7r0q7id92691frj7fz";
|
||||
# branch "tor-browser-60.6.1esr-8.0-1-r2-slnos"
|
||||
rev = "d311540ce07f1f4f5e5789f9107f6e6ecc23988d";
|
||||
sha256 = "0nz8vxv53vnqyk3ahakrr5xg6sgapvlmsb6s1pwwsb86fxk6pm5f";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -21,12 +21,12 @@ let
|
|||
|
||||
in python3Packages.buildPythonApplication rec {
|
||||
pname = "qutebrowser";
|
||||
version = "1.6.1";
|
||||
version = "1.6.2";
|
||||
|
||||
# the release tarballs are different from the git checkout!
|
||||
src = fetchurl {
|
||||
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1sckfp9l2jgg29p2p4vmd0g7yzbldimqy0a0jvf488yp47qj310p";
|
||||
sha256 = "1yzwrpqpghlpy2d7pbjgcb73dbngw835l4xbimz5aa90mvqkbwg1";
|
||||
};
|
||||
|
||||
# Needs tox
|
||||
|
|
|
@ -16,11 +16,11 @@ let
|
|||
vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "vivaldi";
|
||||
version = "2.4.1488.40-1";
|
||||
version = "2.5.1525.40-1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
|
||||
sha256 = "0w084mamy72v1kkfgg8nn2q3hmfj7v216kkvqb52f1nyycqqzb37";
|
||||
sha256 = "1samrhavjz21vynv1vz8qnv9bf30mcy0da0qkpa1vhbgkga5flgy";
|
||||
};
|
||||
|
||||
unpackPhase = ''
|
||||
|
|
|
@ -4,22 +4,22 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-acme";
|
||||
version = "1.1.1";
|
||||
sha256 = "0fva2kw82s94r4s4dpk38kcmssmcr71ia9jyg1rqmc00ifilfrzj";
|
||||
version = "1.1.2";
|
||||
sha256 = "1l77pckiwa72lwbwbqkjzy6m9xsgp13spmzc80gfl4q0gd3d46an";
|
||||
};
|
||||
alicloud =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-alicloud";
|
||||
version = "1.39.0";
|
||||
sha256 = "0m5fvqrvnb7v5iii67l743j3hq32rljrvnkgc7fcd46zrf38yl2h";
|
||||
version = "1.41.0";
|
||||
sha256 = "0bl24mgk0rangwwbz43ybymcivn3kjjg35rrvv7ashvhmx58qcf8";
|
||||
};
|
||||
archive =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-archive";
|
||||
version = "1.2.1";
|
||||
sha256 = "1avx3m0dkld0kmsi8ifqcla8254p1izh5wrziffr7r05s152r8qf";
|
||||
version = "1.2.2";
|
||||
sha256 = "1saprj2r74b63z03n80m3mfj3vhgvlm4gp2hzqzjbdgibxsz4jaw";
|
||||
};
|
||||
arukas =
|
||||
{
|
||||
|
@ -39,36 +39,36 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-aws";
|
||||
version = "2.6.0";
|
||||
sha256 = "0hpnyid5w33n8ypwcz3a43gazbvk6m60b57qll2qgx6bm1q75b19";
|
||||
version = "2.9.0";
|
||||
sha256 = "1gkw60ihc2b3qhb110m0mckfvb21lqgx4vc4x249mfxxk25i26s7";
|
||||
};
|
||||
azuread =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-azuread";
|
||||
version = "0.2.0";
|
||||
sha256 = "01aiynw905gbn6dv23971yhwv0kfcbckcqp4f65sypn1l8szqyjg";
|
||||
version = "0.3.1";
|
||||
sha256 = "1bs4m9hwdag58by49zsjpys3xvxg98nq8qims17mc82pbsz6mpag";
|
||||
};
|
||||
azurerm =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-azurerm";
|
||||
version = "1.25.0";
|
||||
sha256 = "1fhcljxz6cb5q1kd7aprxv1bga53x6fg65q5wkp985aaqnl42b8k";
|
||||
version = "1.27.1";
|
||||
sha256 = "0lxa84j9kzinblz7zp4gizizj0sy0vidkjvgnb99sr3861rak1x5";
|
||||
};
|
||||
azurestack =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-azurestack";
|
||||
version = "0.5.0";
|
||||
sha256 = "0pi8hjl6350ibkiz5pi86p58gkj8jf0a27ar04npsrn2wcz90k8z";
|
||||
version = "0.6.0";
|
||||
sha256 = "0lh0an3bz3kh2s6ncadikivr08fj8cvq7zm20csmjbgwgicq4gl8";
|
||||
};
|
||||
bigip =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-bigip";
|
||||
version = "0.12.0";
|
||||
sha256 = "0fmmlx757hph45ffm19zafjfkldg41qkw83vz0jjmvxicza1afbd";
|
||||
version = "0.12.2";
|
||||
sha256 = "0pplv5hi1kjli0jpya12crb5dkc6bkzvm8094rwhjbxb4f65ca5d";
|
||||
};
|
||||
bitbucket =
|
||||
{
|
||||
|
@ -81,8 +81,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-brightbox";
|
||||
version = "1.1.1";
|
||||
sha256 = "03fh287fmbg9jxsiniwj3sn6nsjdm46qv82b5aaqny3qmhjddjvq";
|
||||
version = "1.1.2";
|
||||
sha256 = "0k9qs7kpjznascads5llajzx2xkm4hdil2n4wl0fqy43s6dkvbbf";
|
||||
};
|
||||
chef =
|
||||
{
|
||||
|
@ -144,15 +144,15 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-datadog";
|
||||
version = "1.8.0";
|
||||
sha256 = "1pmz4gxhfynj7mjcl07n2ggz00vccw4bv6cmp7na3ssbpnjiy1wx";
|
||||
version = "1.9.0";
|
||||
sha256 = "0c5s9ywd6p4qjd964y33rcqcgfqz225x5rp0jlsqxbv9i2r91fb0";
|
||||
};
|
||||
digitalocean =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-digitalocean";
|
||||
version = "1.1.0";
|
||||
sha256 = "1w5xslm8939rz13bsiv9hfcl8cyvi03gr0h24c0ybwj8alxmxhb4";
|
||||
version = "1.3.0";
|
||||
sha256 = "1bi482s6s3v7sqknwwchscwwncwrhr4jl4gl4l25bngp1kd7cp7i";
|
||||
};
|
||||
dme =
|
||||
{
|
||||
|
@ -165,8 +165,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-dns";
|
||||
version = "2.0.0";
|
||||
sha256 = "1km0pq1wp0bdccb612z9n0kj9w7hn1yvhk7xszwp2mzs8qmd7flv";
|
||||
version = "2.1.1";
|
||||
sha256 = "1iyfsx1fbpvp3zjrkq8c46nr6d80z40mzkfc4axfpqyrp9xqiy8j";
|
||||
};
|
||||
dnsimple =
|
||||
{
|
||||
|
@ -193,8 +193,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-external";
|
||||
version = "1.1.1";
|
||||
sha256 = "110kqp4gsag3l8h9hwjdq98s9rz9f5w31mrs50rygdc0yd43hq8z";
|
||||
version = "1.1.2";
|
||||
sha256 = "12wdzm3y0fd840bdf0dczvvmdmfwpfwfwnf0j4g6n9asdcvjaqlh";
|
||||
};
|
||||
fastly =
|
||||
{
|
||||
|
@ -207,36 +207,36 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-flexibleengine";
|
||||
version = "1.4.0";
|
||||
sha256 = "1gj3y9xw9zzh2fs2i6q0afw591lhy1lvcn80xac4da08r5l3si6g";
|
||||
version = "1.5.0";
|
||||
sha256 = "17dksrqkh35wf0clqcd4v6ggmzc7xmrw8q7q0qa9n9zqyg1zibqk";
|
||||
};
|
||||
github =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-github";
|
||||
version = "1.3.0";
|
||||
sha256 = "1k7816dbpsjjbm3pa6l0qlrxw5hh8z5iwdr8mp1mp5liidhl6bqs";
|
||||
version = "2.0.0";
|
||||
sha256 = "1lvizak27qxgggp5xb15s8f504cjgr633889cv2jsr2rn64z4jv5";
|
||||
};
|
||||
gitlab =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-gitlab";
|
||||
version = "1.2.0";
|
||||
sha256 = "11j84kyw2lsqsn6ya070hx0k6igb3hhjl8zlnr4q3gpmv51y23qc";
|
||||
version = "1.3.0";
|
||||
sha256 = "0lh1v20msahcfjc22v7yf1cwinaq0zy2m8f7sl5jfn294j9nbam8";
|
||||
};
|
||||
google =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-google";
|
||||
version = "2.4.0";
|
||||
sha256 = "153pr01m7clvdq9c09xhvlivagn12nlxhykh1x9yya9ixkg0zrrv";
|
||||
version = "2.6.0";
|
||||
sha256 = "0y93hfwhzbk7dl7cw5lw2gwf5hdbc7rs9gh10b39vxgv9jrj4kqv";
|
||||
};
|
||||
google-beta =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-google-beta";
|
||||
version = "2.4.0";
|
||||
sha256 = "08vbj9m6x0byf7x77a5b5isg0kmlxvc9gswgilzi6djgwg0j6wwd";
|
||||
version = "2.6.0";
|
||||
sha256 = "1bm3nrv2pa6mf6l4vn5b0hads7bhp67bnhc5y72yingfky7kva5h";
|
||||
};
|
||||
grafana =
|
||||
{
|
||||
|
@ -263,8 +263,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-helm";
|
||||
version = "0.9.0";
|
||||
sha256 = "1psqabifb1kabg268ca1x4l79z1xga1pr2sf8x9lrd7z856v18l9";
|
||||
version = "0.9.1";
|
||||
sha256 = "189w8zz2fv0qfggzxmppaw8814c7kylgb11m1r9mqii3phsgnlz1";
|
||||
};
|
||||
heroku =
|
||||
{
|
||||
|
@ -277,8 +277,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-http";
|
||||
version = "1.0.1";
|
||||
sha256 = "1bnqrx4xya3lm5wp4byy6npazll6w1g6bv4rawgncswsgx08zqng";
|
||||
version = "1.1.1";
|
||||
sha256 = "0ah4wi9gm5m7z0wyy6vn3baz2iw2sq7ah7q0lb9srwr887aai3x0";
|
||||
};
|
||||
huaweicloud =
|
||||
{
|
||||
|
@ -312,8 +312,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-kubernetes";
|
||||
version = "1.5.2";
|
||||
sha256 = "0g1f5cbmzrd46abwd0rdyrf8wj8w9bx1251gf4s9z41adrxjy2lp";
|
||||
version = "1.6.2";
|
||||
sha256 = "14jql78a1rw1wl97myry29lgmqkcdn44qgmzjrfky958afnkgiig";
|
||||
};
|
||||
librato =
|
||||
{
|
||||
|
@ -333,8 +333,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-local";
|
||||
version = "1.2.1";
|
||||
sha256 = "1hi2bxa79fbdf2n6z59xdfs7bx8cg7q2l84hrxdh3cqbnb8jvsbr";
|
||||
version = "1.2.2";
|
||||
sha256 = "0azrw62clki002nlv7ws3kzfsbqkadm713534i4xgvix2m08d1cx";
|
||||
};
|
||||
logentries =
|
||||
{
|
||||
|
@ -389,8 +389,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-ns1";
|
||||
version = "1.3.0";
|
||||
sha256 = "1h21a4z7js2iwg0gj217lq4d7wccxhjmi5k37asfj18ch0x37c7v";
|
||||
version = "1.3.1";
|
||||
sha256 = "04ibq5dgxqb5lpnvqxg4xkb498w77p2sbjfyy9zj7m5i62xrwg79";
|
||||
};
|
||||
nsxt =
|
||||
{
|
||||
|
@ -403,22 +403,22 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-null";
|
||||
version = "2.1.1";
|
||||
sha256 = "0sw7j2cz9d5207l1v32ahqahmsk1dzzsf83zqivaa5jk3w4bfnjz";
|
||||
version = "2.1.2";
|
||||
sha256 = "0di1hxmd3s80sz8hl5q2i425by8fbk15f0r4jmnm6vra0cq89jw2";
|
||||
};
|
||||
nutanix =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-nutanix";
|
||||
version = "1.0.0";
|
||||
sha256 = "16nky5ryyjvv7vny18ymxvy20ivwmqw7lagnz48pq8mnwwrp5541";
|
||||
version = "1.0.1";
|
||||
sha256 = "1g7p6qg32g75x8fgspgxcdsa086mz3yabdgv1k68rykhw3zbri5d";
|
||||
};
|
||||
oci =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-oci";
|
||||
version = "3.23.0-rc1";
|
||||
sha256 = "11h8na7czj4iqm9z3pd8im06qqp3mng62h8ha5afvz2phv1g096h";
|
||||
version = "3.24.1";
|
||||
sha256 = "1yhcxwg3ivrgzasdsf5yq8v6h4j1lprnm881xfm4h1rpq465y1mj";
|
||||
};
|
||||
oneandone =
|
||||
{
|
||||
|
@ -431,22 +431,22 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-opc";
|
||||
version = "1.3.3";
|
||||
sha256 = "1hwbwyhjrs16cy66przs44znni0x3nwfsx18glxbikb2zx1ph93n";
|
||||
version = "1.3.6";
|
||||
sha256 = "1b11837j0d8s59pjkankbm3p5l87aw1s17mn2q7nvy65kgzalsra";
|
||||
};
|
||||
openstack =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-openstack";
|
||||
version = "1.17.0";
|
||||
sha256 = "1a3asmkf3w1ndy5rpyn09msp5l1sm2cdm3ca7cx5v00pjvww9f52";
|
||||
version = "1.18.0";
|
||||
sha256 = "05sr6vra4fsrysrz7a77vaa5zklhxf4hl8g029y9l1fln7vdpssg";
|
||||
};
|
||||
opentelekomcloud =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-opentelekomcloud";
|
||||
version = "1.7.0";
|
||||
sha256 = "15p5xvl6ryj5silpd2yrmjjh0d4qf89v8x6zbq8x7j351a1fljak";
|
||||
version = "1.8.0";
|
||||
sha256 = "068ap0sw17xmrfvri1yx70qdi8i5h0qhsm9bakm532xjxlgmaxpv";
|
||||
};
|
||||
opsgenie =
|
||||
{
|
||||
|
@ -459,8 +459,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-oraclepaas";
|
||||
version = "1.5.1";
|
||||
sha256 = "0xyyhr2n1aw1qn90535llv72cdgdqpni9l4gn8sj0ligpjhba7qz";
|
||||
version = "1.5.2";
|
||||
sha256 = "0m886wfg5ski8s1zr7g1h1m6q5ai08jk35ymipxpb6ipx781qvvk";
|
||||
};
|
||||
ovh =
|
||||
{
|
||||
|
@ -473,8 +473,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-packet";
|
||||
version = "1.7.2";
|
||||
sha256 = "103r0k626ham8wh7rwlx1hald4rik17mv2mcfjz9za65v7z139vr";
|
||||
version = "2.1.0";
|
||||
sha256 = "0hj8av0yry0wsi8fwgs0z9x9jxcnxz8imsanbdsrhb8lsj70n25v";
|
||||
};
|
||||
pagerduty =
|
||||
{
|
||||
|
@ -529,8 +529,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-random";
|
||||
version = "2.1.1";
|
||||
sha256 = "0ivmxacb9pzz7av2rr6jal5vwdv24689a2806nqvvzdy2s8mlzd3";
|
||||
version = "2.1.2";
|
||||
sha256 = "102bgd8s9yhm2ny2akv04mhwf5mphqhsxx9vxjbg7ygqnz9ka5nw";
|
||||
};
|
||||
rightscale =
|
||||
{
|
||||
|
@ -585,8 +585,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-spotinst";
|
||||
version = "1.11.0";
|
||||
sha256 = "10q1w66gbx6863797n6n15xx4llflmavrz2qk23pb8qd5pbni9bk";
|
||||
version = "1.13.2";
|
||||
sha256 = "1v3vgnspg3g0hvwzfplyvl37jxpc9m6hcsnmw6lkfqr57dy4dhlc";
|
||||
};
|
||||
statuscake =
|
||||
{
|
||||
|
@ -606,15 +606,15 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-template";
|
||||
version = "2.1.1";
|
||||
sha256 = "182kdkbmnihpawvgfpxavg8vbczizw5mlkwp828ap0baqs09ai8i";
|
||||
version = "2.1.2";
|
||||
sha256 = "18w1mmma81m9j7yf6q500w8v9ss28w6sw2ynssl99pyw2gwmd04q";
|
||||
};
|
||||
tencentcloud =
|
||||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-tencentcloud";
|
||||
version = "1.4.0";
|
||||
sha256 = "1gqxvd5ss2cg49856nj3srirny1298l3fla506r7v8xf9ybkzpb4";
|
||||
version = "1.5.0";
|
||||
sha256 = "04psgirl78klbpzllcvzl510j66jcavxmi9zxnwmmmw128a3dig2";
|
||||
};
|
||||
terraform =
|
||||
{
|
||||
|
@ -634,8 +634,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-tls";
|
||||
version = "1.2.0";
|
||||
sha256 = "0hvj00j8a820j18yi90xzhd635pkffivp1116d84wyqxya5acd4p";
|
||||
version = "2.0.1";
|
||||
sha256 = "08fh4k5fvkijl2ds8mxdc5fxlwhs11y5s48vvxdskklvkjhygzc7";
|
||||
};
|
||||
triton =
|
||||
{
|
||||
|
@ -662,8 +662,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-vault";
|
||||
version = "1.7.0";
|
||||
sha256 = "133ximk510kchr34zicpnp4da27nxvzab2nd8dqpf4sqg2z83i0y";
|
||||
version = "1.8.0";
|
||||
sha256 = "1g9cw14mzslb445yhj04dzs0s4cbhi4cxycd50vc3f9yyg6sz1rr";
|
||||
};
|
||||
vcd =
|
||||
{
|
||||
|
@ -683,8 +683,8 @@
|
|||
{
|
||||
owner = "terraform-providers";
|
||||
repo = "terraform-provider-yandex";
|
||||
version = "0.4.1";
|
||||
sha256 = "0lvj7xlzqc6wfv1xpc4qc1gnk3wvcvnifbf4mqgjglz35cf697bb";
|
||||
version = "0.5.2";
|
||||
sha256 = "1fa1jicirww0zxg5kw4343ndzq86x0m7gkfj8yx7l6lb6gcrkbic";
|
||||
};
|
||||
matchbox =
|
||||
{
|
||||
|
|
|
@ -97,8 +97,8 @@ in rec {
|
|||
terraform_0_11-full = terraform_0_11.full;
|
||||
|
||||
terraform_0_12 = pluggable (generic {
|
||||
version = "0.12.0-beta1";
|
||||
sha256 = "0djakf2agbhpfqis4x0lf2i8s1ahvrdyfkcgr6lzp0nsks652rcm";
|
||||
version = "0.12.0-rc1";
|
||||
sha256 = "1ap1q5bixkzshnwy8xyfh768qwg3y4pcjzaiajzn2icjf4ay5nqm";
|
||||
patches = [ ./provider-path.patch ];
|
||||
passthru = { inherit plugins; };
|
||||
});
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
{ stdenv, pkgconfig, fetchFromGitHub, qtbase, qtsvg, qtmultimedia, qmake, boost, openssl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "chatterino2";
|
||||
version = "unstable-2019-05-11";
|
||||
src = fetchFromGitHub {
|
||||
owner = "fourtf";
|
||||
repo = pname;
|
||||
rev = "8c46cbf571dc8fd77287bf3186445ff52b1d1aaf";
|
||||
sha256 = "0i2385hamhd9i7jdy906cfrd81cybw524j92l87c8pzrkxphignk";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
nativeBuildInputs = [ qmake pkgconfig ];
|
||||
buildInputs = [ qtbase qtsvg qtmultimedia boost openssl ];
|
||||
meta = with stdenv.lib; {
|
||||
description = "A chat client for Twitch chat";
|
||||
longDescription = ''
|
||||
Chatterino is a chat client for Twitch chat. It aims to be an
|
||||
improved/extended version of the Twitch web chat. Chatterino 2 is
|
||||
the second installment of the Twitch chat client series
|
||||
"Chatterino".
|
||||
'';
|
||||
homepage = "https://github.com/fourtf/chatterino2";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ rexim ];
|
||||
};
|
||||
}
|
|
@ -3,13 +3,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rambox-bare-${version}";
|
||||
version = "0.6.6";
|
||||
version = "0.6.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ramboxapp";
|
||||
repo = "community-edition";
|
||||
rev = version;
|
||||
sha256 = "15cy8krzl66b6sfazhff41adq4kf2857sj4h0qvzmadv85dy301v";
|
||||
sha256 = "1fsp4jxiypl6zkh5wgf9amyiyx9dqv6h8rsjn5xjp9bna27s0d3b";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ nodejs-8_x ruby sencha ];
|
||||
|
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
|||
inherit src;
|
||||
|
||||
nodejs = nodejs-8_x;
|
||||
sha256 = "0ifk0fzw4zhi4195jlmiq5k57bdmf912372r4bwa4z500wipikq3";
|
||||
sha256 = "0qsgr8cq81yismal5sqr02skakqpynwwzk5s98dr5bg91y361fgy";
|
||||
};
|
||||
|
||||
patches = [ ./isDev.patch ];
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ darkMode ? false, stdenv, fetchurl, dpkg, makeWrapper
|
||||
, alsaLib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, glib
|
||||
, gnome2, gtk3, gdk_pixbuf, libnotify, libxcb, nspr, nss, pango
|
||||
, systemd, xorg, at-spi2-atk }:
|
||||
{ darkMode ? false, stdenv, fetchurl, dpkg, makeWrapper , alsaLib, atk, cairo,
|
||||
cups, curl, dbus, expat, fontconfig, freetype, glib , gnome2, gtk3, gdk_pixbuf,
|
||||
libappindicator-gtk3, libnotify, libxcb, nspr, nss, pango , systemd, xorg,
|
||||
at-spi2-atk }:
|
||||
|
||||
let
|
||||
|
||||
|
@ -25,6 +25,7 @@ let
|
|||
pango
|
||||
libnotify
|
||||
libxcb
|
||||
libappindicator-gtk3
|
||||
nspr
|
||||
nss
|
||||
stdenv.cc.cc
|
||||
|
|
|
@ -4,11 +4,11 @@ let
|
|||
mkTelegram = args: qt5.callPackage (import ./generic.nix args) { };
|
||||
stableVersion = {
|
||||
stable = true;
|
||||
version = "1.6.7";
|
||||
sha256Hash = "1537div6pky7wz3lansz67vsx2h6b653cx91xg9sswnxfsf8nrql";
|
||||
version = "1.7.0";
|
||||
sha256Hash = "1plfby243hf65wjmppq1qnqmp25pgi4x3awqd4h83ly9hn8qdwfk";
|
||||
# svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
|
||||
archPatchesRevision = "429149";
|
||||
archPatchesHash = "1ylpi9kb6hk27x9wmna4ing8vzn9b7247iya91pyxxrpxrcrhpli";
|
||||
archPatchesRevision = "464796";
|
||||
archPatchesHash = "1bq7r69k3i9p1csdsca0w41jyz6fbyn4qriv3lg7s28j9s803kw8";
|
||||
};
|
||||
in {
|
||||
stable = mkTelegram stableVersion;
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.28.3";
|
||||
version = "0.28.4"; # not really, git
|
||||
name = "notmuch-${version}";
|
||||
|
||||
passthru = {
|
||||
|
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://notmuchmail.org/releases/${name}.tar.gz";
|
||||
sha256 = "1v0ff6qqwj42p3n6qw30czzqi52nvgf3dn05vd7a03g39a5js8af";
|
||||
sha256 = "1jjnhs4xs4gksvg0a9qn68rxrj41im5bh58snka2pkj20nxwmcds";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
@ -52,13 +52,13 @@ stdenv.mkDerivation rec {
|
|||
--replace '-install_name $(libdir)' "-install_name $out/lib"
|
||||
'';
|
||||
|
||||
configureFlags = [ "--zshcompletiondir=$(out)/share/zsh/site-functions" ];
|
||||
configureFlags = [ "--zshcompletiondir=${placeholder "out"}/share/zsh/site-functions" ];
|
||||
|
||||
# Notmuch doesn't use autoconf and consequently doesn't tag --bindir and
|
||||
# friends
|
||||
setOutputFlags = false;
|
||||
enableParallelBuilding = true;
|
||||
makeFlags = "V=1";
|
||||
makeFlags = [ "V=1" ];
|
||||
|
||||
preCheck = let
|
||||
test-database = fetchurl {
|
||||
|
@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
|
|||
gdb man
|
||||
];
|
||||
|
||||
installTargets = "install install-man";
|
||||
installTargets = [ "install" "install-man" ];
|
||||
|
||||
dontGzipMan = true; # already compressed
|
||||
|
||||
|
|
|
@ -1,20 +1,25 @@
|
|||
{ stdenv, fetchurl, gd, ncurses, sqlite }:
|
||||
{ stdenv, fetchurl, pkgconfig, gd, ncurses, sqlite, check }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vnstat-${version}";
|
||||
pname = "vnstat";
|
||||
version = "2.2";
|
||||
|
||||
src = fetchurl {
|
||||
sha256 = "0b7020rlc568pz6vkiy28kl8493z88wzrn18wv9b0iq2bv1pn2n6";
|
||||
url = "https://humdi.net/vnstat/${name}.tar.gz";
|
||||
url = "https://humdi.net/${pname}/${pname}-${version}.tar.gz";
|
||||
};
|
||||
|
||||
buildInputs = [ gd ncurses sqlite ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/cfg.c --replace /usr/local $out
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ gd ncurses sqlite ];
|
||||
|
||||
checkInputs = [ check ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Console-based network statistics utility for Linux";
|
||||
longDescription = ''
|
||||
|
|
|
@ -5,6 +5,8 @@
|
|||
, kcmutils, kcontacts, kdewebkit, kdiagram, kholidays, kidentitymanagement
|
||||
, kitemmodels, libical, libofx, qgpgme
|
||||
|
||||
, sqlcipher
|
||||
|
||||
# Needed for running tests:
|
||||
, qtbase, xvfb_run
|
||||
|
||||
|
@ -14,20 +16,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kmymoney-${version}";
|
||||
version = "5.0.1";
|
||||
version = "5.0.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/kmymoney/${version}/src/${name}.tar.xz";
|
||||
sha256 = "1c9apnvc07y17pzy4vygry1dai5ass2z7j354lrcppa85b18yvnx";
|
||||
sha256 = "06lbavhl9b8cybnss2mmy3g5w8qn2vl6zhipvbl11lsr3j9bsa8q";
|
||||
};
|
||||
|
||||
# Fix build with Qt 5.11.
|
||||
patches = lib.singleton (fetchpatch {
|
||||
url = "https://cgit.kde.org/kmymoney.git/patch/?id="
|
||||
+ "e5198a902996b27bf9abde0ad24af82d55ab5dc1";
|
||||
sha256 = "1h2f1xznf7343s26fh94x8n2ci0pijk5j86f24lvghawsw848316";
|
||||
});
|
||||
|
||||
# Hidden dependency that wasn't included in CMakeLists.txt:
|
||||
NIX_CFLAGS_COMPILE = "-I${kitemmodels.dev}/include/KF5";
|
||||
|
||||
|
@ -41,6 +36,7 @@ stdenv.mkDerivation rec {
|
|||
akonadi alkimia aqbanking gmp gwenhywfar kactivities karchive kcmutils
|
||||
kcontacts kdewebkit kdiagram kholidays kidentitymanagement kitemmodels
|
||||
libical libofx qgpgme
|
||||
sqlcipher
|
||||
|
||||
# Put it into buildInputs so that CMake can find it, even though we patch
|
||||
# it into the interface later.
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
diff --git a/shell/source/unix/exec/shellexec.cxx b/shell/source/unix/exec/shellexec.cxx
|
||||
--- a/shell/source/unix/exec/shellexec.cxx
|
||||
+++ b/shell/source/unix/exec/shellexec.cxx
|
||||
@@ -150,7 +150,7 @@ void SAL_CALL ShellExec::execute( const OUString& aCommand, const OUString& aPar
|
||||
if (std::getenv("LIBO_FLATPAK") != nullptr) {
|
||||
aBuffer.append("/app/bin/xdg-open");
|
||||
} else {
|
||||
- aBuffer.append("/usr/bin/xdg-open");
|
||||
+ aBuffer.append("xdg-open");
|
||||
}
|
||||
#endif
|
||||
aBuffer.append(" ");
|
||||
diff --git a/shell/source/unix/misc/senddoc.sh b/shell/source/unix/misc/senddoc.sh
|
||||
index 4519e01f26e2..8985711a2c01 100755
|
||||
--- a/shell/source/unix/misc/senddoc.sh
|
||||
+++ b/shell/source/unix/misc/senddoc.sh
|
||||
@@ -393,6 +393,8 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
|
||||
MAILER=/usr/bin/kde-open
|
||||
elif [ -x /usr/bin/xdg-open ] ; then
|
||||
MAILER=/usr/bin/xdg-open
|
||||
+ elif type -p xdg-open >/dev/null 2>&1 ; then
|
||||
+ MAILER="$(type -p xdg-open)"
|
||||
else
|
||||
echo "Unsupported mail client: `basename $MAILER | sed 's/-.*^//'`"
|
||||
exit 2
|
|
@ -42,14 +42,14 @@ let
|
|||
then "i386"
|
||||
else "amd64";
|
||||
|
||||
shortVersion = "1.19.1-stable";
|
||||
shortVersion = "1.19.5-stable";
|
||||
|
||||
version = "${shortVersion}_${arch}";
|
||||
|
||||
url = "http://desktop-download.mendeley.com/download/apt/pool/main/m/mendeleydesktop/mendeleydesktop_${version}.deb";
|
||||
sha256 = if stdenv.hostPlatform.system == arch32
|
||||
then "0fcyl5i8xdgb5j0x1643qc0j74d8p11jczvqmgqkqh0wgid1y1ad"
|
||||
else "1dzwa2cnn9xakrhhq159fhh71gw5wlbf017rrikdlia694m8akq6";
|
||||
then "01x83a44qlxi937b128y8y0px0q4w37g72z652lc42kv50dhyy3f"
|
||||
else "1cagqq0xziznaj97z30bqfhrwjv3a4h83ckhwigq35nhk1ggq1ry";
|
||||
|
||||
deps = [
|
||||
qtbase
|
||||
|
|
|
@ -0,0 +1,170 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, makeWrapper
|
||||
, callPackage
|
||||
|
||||
, python3
|
||||
, file
|
||||
, imagemagick7
|
||||
, ghostscript
|
||||
, optipng
|
||||
, poppler
|
||||
, tesseract
|
||||
, unpaper
|
||||
}:
|
||||
|
||||
## Usage
|
||||
|
||||
# ${paperless}/bin/paperless wraps manage.py
|
||||
|
||||
# ${paperless}/share/paperless/setup-env.sh can be sourced from a
|
||||
# shell script to setup a Paperless environment
|
||||
|
||||
# paperless.withConfig is a convenience function to setup a
|
||||
# configured Paperless instance. (See ./withConfig.nix)
|
||||
|
||||
# For WSGI with gunicorn, use a shell script like this:
|
||||
# let
|
||||
# pythonEnv = paperless.python.withPackages (ps: paperless.runtimePackages ++ [ ps.gunicorn ]);
|
||||
# in
|
||||
# writers.writeBash "run-gunicorn" ''
|
||||
# source ${paperless}/share/paperless/setup-env.sh
|
||||
# PYTHONPATH=$paperlessSrc ${pythonEnv}/bin/gunicorn paperless.wsgi
|
||||
# ''
|
||||
|
||||
let
|
||||
paperless = stdenv.mkDerivation rec {
|
||||
name = "paperless-${version}";
|
||||
version = "2.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "the-paperless-project";
|
||||
repo = "paperless";
|
||||
rev = version;
|
||||
sha256 = "0pkmyky1crjnsg7r0gfk0fadisfsgzlsq6afpz16wx4hp6yvkkf7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
doCheck = true;
|
||||
dontInstall = true;
|
||||
|
||||
pythonEnv = python.withPackages (_: runtimePackages);
|
||||
pythonCheckEnv = python.withPackages (_: (runtimePackages ++ checkPackages));
|
||||
|
||||
unpackPhase = ''
|
||||
srcDir=$out/share/paperless
|
||||
mkdir -p $srcDir
|
||||
cp -r --no-preserve=mode $src/src/* $src/LICENSE $srcDir
|
||||
'';
|
||||
|
||||
buildPhase = let
|
||||
# Paperless has explicit runtime checks that expect these binaries to be in PATH
|
||||
extraBin = lib.makeBinPath [ imagemagick7 ghostscript optipng tesseract unpaper ];
|
||||
in ''
|
||||
${python.interpreter} -m compileall $srcDir
|
||||
|
||||
makeWrapper $pythonEnv/bin/python $out/bin/paperless \
|
||||
--set PATH ${extraBin} --add-flags $out/share/paperless/manage.py
|
||||
|
||||
# A shell snippet that can be sourced to setup a paperless env
|
||||
cat > $out/share/paperless/setup-env.sh <<EOF
|
||||
export PATH="$pythonEnv/bin:${extraBin}''${PATH:+:}$PATH"
|
||||
export paperlessSrc=$out/share/paperless
|
||||
EOF
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
source $out/share/paperless/setup-env.sh
|
||||
tmpDir=$(realpath testsTmp)
|
||||
mkdir $tmpDir
|
||||
export HOME=$tmpDir
|
||||
export PAPERLESS_MEDIADIR=$tmpDir
|
||||
cd $paperlessSrc
|
||||
# Prevent tests from writing to the derivation output
|
||||
chmod -R -w $out
|
||||
# Disable cache to silence a pytest warning ("could not create cache")
|
||||
$pythonCheckEnv/bin/pytest -p no:cacheprovider
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
withConfig = callPackage ./withConfig.nix {};
|
||||
inherit python runtimePackages checkPackages tesseract;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Scan, index, and archive all of your paper documents";
|
||||
homepage = https://github.com/the-paperless-project/paperless;
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.earvstedt ];
|
||||
};
|
||||
};
|
||||
|
||||
python = python3.override {
|
||||
packageOverrides = self: super: {
|
||||
# Paperless only supports Django 2.0
|
||||
django = django_2_0 super;
|
||||
pyocr = pyocrWithUserTesseract super;
|
||||
# These are pre-release versions, hence they are private to this pkg
|
||||
django-filter = self.callPackage ./python-modules/django-filter.nix {};
|
||||
django-crispy-forms = self.callPackage ./python-modules/django-crispy-forms.nix {};
|
||||
};
|
||||
};
|
||||
|
||||
django_2_0 = pyPkgs: pyPkgs.django_2_1.overrideDerivation (_: rec {
|
||||
pname = "Django";
|
||||
version = "2.0.12";
|
||||
name = "${pname}-${version}";
|
||||
src = pyPkgs.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "15s8z54k0gf9brnz06521bikm60ddw5pn6v3nbvnl47j1jjsvwz2";
|
||||
};
|
||||
});
|
||||
|
||||
runtimePackages = with python.pkgs; [
|
||||
dateparser
|
||||
dateutil
|
||||
django
|
||||
django-cors-headers
|
||||
django-crispy-forms
|
||||
django-filter
|
||||
django_extensions
|
||||
djangoql
|
||||
djangorestframework
|
||||
factory_boy
|
||||
filemagic
|
||||
fuzzywuzzy
|
||||
langdetect
|
||||
pdftotext
|
||||
pillow
|
||||
psycopg2
|
||||
pyocr
|
||||
python-dotenv
|
||||
python-gnupg
|
||||
pytz
|
||||
termcolor
|
||||
] ++ (lib.optional stdenv.isLinux inotify-simple);
|
||||
|
||||
checkPackages = with python.pkgs; [
|
||||
pytest
|
||||
pytest-django
|
||||
pytest-env
|
||||
pytest_xdist
|
||||
];
|
||||
|
||||
pyocrWithUserTesseract = pyPkgs:
|
||||
let
|
||||
pyocr = pyPkgs.pyocr.override { inherit tesseract; };
|
||||
in
|
||||
if pyocr.outPath == pyPkgs.pyocr.outPath then
|
||||
pyocr
|
||||
else
|
||||
# The user has provided a custom tesseract derivation that might be
|
||||
# missing some languages that are required for PyOCR's tests. Disable them to
|
||||
# avoid build errors.
|
||||
pyocr.overridePythonAttrs (attrs: {
|
||||
doCheck = false;
|
||||
});
|
||||
in
|
||||
paperless
|
|
@ -0,0 +1,36 @@
|
|||
{ lib, buildPythonPackage, fetchFromGitHub
|
||||
, pytest, pytest-django, django }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-crispy-forms";
|
||||
version = "2019.04.21";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "django-crispy-forms";
|
||||
repo = "django-crispy-forms";
|
||||
rev = "e25a5326697e5b545689b3a914e516404a6911bb";
|
||||
sha256 = "12zqa76q6i7j47aqvhilivpbdplgp9zw2q8zfcjzlgclrqafaj39";
|
||||
};
|
||||
|
||||
# For reasons unknown, the source dir must contain a dash
|
||||
# for the tests to run successfully
|
||||
postUnpack = ''
|
||||
mv $sourceRoot source-
|
||||
export sourceRoot=source-
|
||||
'';
|
||||
|
||||
checkInputs = [ pytest pytest-django django ];
|
||||
|
||||
checkPhase = ''
|
||||
PYTHONPATH="$(pwd):$PYTHONPATH" \
|
||||
DJANGO_SETTINGS_MODULE=crispy_forms.tests.test_settings \
|
||||
pytest crispy_forms/tests
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "The best way to have DRY Django forms";
|
||||
homepage = https://github.com/maraujop/django-crispy-forms;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ earvstedt ];
|
||||
};
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
{ lib, buildPythonPackage, python, pythonOlder, fetchFromGitHub
|
||||
, django, django-crispy-forms, djangorestframework, mock, pytz }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-filter";
|
||||
version = "2.1.0-pre";
|
||||
disabled = pythonOlder "3.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "carltongibson";
|
||||
repo = pname;
|
||||
rev = "24adad8c48bc9e7c7539b6510ffde4ce4effdc29";
|
||||
sha256 = "0hv4w95jnlzp9vdximl6bb27fyi75001jhvsbs0ikkd8amq8iaj7";
|
||||
};
|
||||
|
||||
checkInputs = [ django django-crispy-forms djangorestframework mock pytz ];
|
||||
|
||||
checkPhase = "${python.interpreter} runtests.py";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A reusable Django application for allowing users to filter querysets dynamically.";
|
||||
homepage = https://github.com/carltongibson/django-filter;
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ earvstedt ];
|
||||
};
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
{ paperless, lib, writers }:
|
||||
|
||||
## Usage
|
||||
#
|
||||
# nix-build --out-link ./paperless -E '
|
||||
# (import <nixpkgs> {}).paperless.withConfig {
|
||||
# dataDir = /tmp/paperless-data;
|
||||
# config = {
|
||||
# PAPERLESS_DISABLE_LOGIN = "true";
|
||||
# };
|
||||
# }'
|
||||
#
|
||||
# Setup DB
|
||||
# ./paperless migrate
|
||||
#
|
||||
# Consume documents in ${dataDir}/consume
|
||||
# ./paperless document_consumer --oneshot
|
||||
#
|
||||
# Start web interface
|
||||
# ./paperless runserver --noreload localhost:8000
|
||||
|
||||
{ config ? {}, dataDir ? null, ocrLanguages ? null
|
||||
, paperlessPkg ? paperless, extraCmds ? "" }:
|
||||
with lib;
|
||||
let
|
||||
paperless = if ocrLanguages == null then
|
||||
paperlessPkg
|
||||
else
|
||||
(paperlessPkg.override {
|
||||
tesseract = paperlessPkg.tesseract.override {
|
||||
enableLanguages = ocrLanguages;
|
||||
};
|
||||
}).overrideDerivation (_: {
|
||||
# `ocrLanguages` might be missing some languages required by the tests.
|
||||
doCheck = false;
|
||||
});
|
||||
|
||||
envVars = (optionalAttrs (dataDir != null) {
|
||||
PAPERLESS_CONSUMPTION_DIR = "${dataDir}/consume";
|
||||
PAPERLESS_MEDIADIR = "${dataDir}/media";
|
||||
PAPERLESS_STATICDIR = "${dataDir}/static";
|
||||
PAPERLESS_DBDIR = "${dataDir}";
|
||||
}) // config;
|
||||
|
||||
envVarDefs = mapAttrsToList (n: v: ''export ${n}="${toString v}"'') envVars;
|
||||
setupEnvVars = builtins.concatStringsSep "\n" envVarDefs;
|
||||
|
||||
setupEnv = ''
|
||||
source ${paperless}/share/paperless/setup-env.sh
|
||||
${setupEnvVars}
|
||||
${optionalString (dataDir != null) ''
|
||||
mkdir -p "$PAPERLESS_CONSUMPTION_DIR" \
|
||||
"$PAPERLESS_MEDIADIR" \
|
||||
"$PAPERLESS_STATICDIR" \
|
||||
"$PAPERLESS_DBDIR"
|
||||
''}
|
||||
'';
|
||||
|
||||
runPaperless = writers.writeBash "paperless" ''
|
||||
set -e
|
||||
${setupEnv}
|
||||
${extraCmds}
|
||||
exec python $paperlessSrc/manage.py "$@"
|
||||
'';
|
||||
in
|
||||
runPaperless // {
|
||||
inherit paperless setupEnv;
|
||||
}
|
|
@ -6,8 +6,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"http://www.cs.miami.edu/~tptp/TPTP/Distribution/TPTP-v${version}.tgz"
|
||||
"http://www.cs.miami.edu/~tptp/TPTP/Archive/TPTP-v${version}.tgz"
|
||||
"http://tptp.cs.miami.edu/TPTP/Distribution/TPTP-v${version}.tgz"
|
||||
"http://tptp.cs.miami.edu/TPTP/Archive/TPTP-v${version}.tgz"
|
||||
];
|
||||
sha256 = "0yq8452b6mym4yscy46pshg0z2my8xi74b5bp2qlxd5bjwcrg6rl";
|
||||
};
|
||||
|
|
|
@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
|
|||
owner = "vprover";
|
||||
repo = "vampire";
|
||||
rev = version;
|
||||
sha256 = "0d1klprlgqrcn8r5ywgvsahr4qz96ayl67ry5jks946v0k94m1k1";
|
||||
fetchSubmodules = true;
|
||||
leaveDotGit = true;
|
||||
sha256 = "03dqjxr3cwz4h6sn9074kc6b6wjz12kpsvsi0mq2w0j5l9f8d80y";
|
||||
#fetchSubmodules = true;
|
||||
#leaveDotGit = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ git ];
|
||||
|
|
|
@ -1,140 +0,0 @@
|
|||
From fffc383c10c7c194e427d78c83802c3b910fa1c2 Mon Sep 17 00:00:00 2001
|
||||
From: Patrick Callahan <pxcallahan@gmail.com>
|
||||
Date: Thu, 24 Mar 2016 18:17:57 -0700
|
||||
Subject: [PATCH] fix gcc cmath namespace issues
|
||||
|
||||
---
|
||||
src/Vehicle/Vehicle.cc | 6 +++---
|
||||
src/comm/QGCFlightGearLink.cc | 4 ++--
|
||||
src/comm/QGCJSBSimLink.cc | 4 ++--
|
||||
src/uas/UAS.cc | 8 ++++----
|
||||
src/ui/QGCDataPlot2D.cc | 4 ++--
|
||||
5 files changed, 13 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/src/Vehicle/Vehicle.cc b/src/Vehicle/Vehicle.cc
|
||||
index a0d3605..205b1de 100644
|
||||
--- a/src/Vehicle/Vehicle.cc
|
||||
+++ b/src/Vehicle/Vehicle.cc
|
||||
@@ -638,17 +638,17 @@ void Vehicle::setLongitude(double longitude){
|
||||
|
||||
void Vehicle::_updateAttitude(UASInterface*, double roll, double pitch, double yaw, quint64)
|
||||
{
|
||||
- if (isinf(roll)) {
|
||||
+ if (std::isinf(roll)) {
|
||||
_rollFact.setRawValue(0);
|
||||
} else {
|
||||
_rollFact.setRawValue(roll * (180.0 / M_PI));
|
||||
}
|
||||
- if (isinf(pitch)) {
|
||||
+ if (std::isinf(pitch)) {
|
||||
_pitchFact.setRawValue(0);
|
||||
} else {
|
||||
_pitchFact.setRawValue(pitch * (180.0 / M_PI));
|
||||
}
|
||||
- if (isinf(yaw)) {
|
||||
+ if (std::isinf(yaw)) {
|
||||
_headingFact.setRawValue(0);
|
||||
} else {
|
||||
yaw = yaw * (180.0 / M_PI);
|
||||
diff --git a/src/comm/QGCFlightGearLink.cc b/src/comm/QGCFlightGearLink.cc
|
||||
index 2a520fb..886aecf 100644
|
||||
--- a/src/comm/QGCFlightGearLink.cc
|
||||
+++ b/src/comm/QGCFlightGearLink.cc
|
||||
@@ -230,7 +230,7 @@ void QGCFlightGearLink::updateControls(quint64 time, float rollAilerons, float p
|
||||
Q_UNUSED(systemMode);
|
||||
Q_UNUSED(navMode);
|
||||
|
||||
- if(!isnan(rollAilerons) && !isnan(pitchElevator) && !isnan(yawRudder) && !isnan(throttle))
|
||||
+ if(!std::isnan(rollAilerons) && !std::isnan(pitchElevator) && !std::isnan(yawRudder) && !std::isnan(throttle))
|
||||
{
|
||||
QString state("%1\t%2\t%3\t%4\t%5\n");
|
||||
state = state.arg(rollAilerons).arg(pitchElevator).arg(yawRudder).arg(true).arg(throttle);
|
||||
@@ -240,7 +240,7 @@ void QGCFlightGearLink::updateControls(quint64 time, float rollAilerons, float p
|
||||
}
|
||||
else
|
||||
{
|
||||
- qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << isnan(rollAilerons) << ", pitch: " << isnan(pitchElevator) << ", yaw: " << isnan(yawRudder) << ", throttle: " << isnan(throttle);
|
||||
+ qDebug() << "HIL: Got NaN values from the hardware: std::isnan output: roll: " << std::isnan(rollAilerons) << ", pitch: " << std::isnan(pitchElevator) << ", yaw: " << std::isnan(yawRudder) << ", throttle: " << std::isnan(throttle);
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/src/comm/QGCJSBSimLink.cc b/src/comm/QGCJSBSimLink.cc
|
||||
index 1210621..89db371 100644
|
||||
--- a/src/comm/QGCJSBSimLink.cc
|
||||
+++ b/src/comm/QGCJSBSimLink.cc
|
||||
@@ -242,7 +242,7 @@ void QGCJSBSimLink::updateControls(quint64 time, float rollAilerons, float pitch
|
||||
Q_UNUSED(systemMode);
|
||||
Q_UNUSED(navMode);
|
||||
|
||||
- if(!isnan(rollAilerons) && !isnan(pitchElevator) && !isnan(yawRudder) && !isnan(throttle))
|
||||
+ if(!std::isnan(rollAilerons) && !std::isnan(pitchElevator) && !std::isnan(yawRudder) && !std::isnan(throttle))
|
||||
{
|
||||
QString state("%1\t%2\t%3\t%4\t%5\n");
|
||||
state = state.arg(rollAilerons).arg(pitchElevator).arg(yawRudder).arg(true).arg(throttle);
|
||||
@@ -250,7 +250,7 @@ void QGCJSBSimLink::updateControls(quint64 time, float rollAilerons, float pitch
|
||||
}
|
||||
else
|
||||
{
|
||||
- qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << isnan(rollAilerons) << ", pitch: " << isnan(pitchElevator) << ", yaw: " << isnan(yawRudder) << ", throttle: " << isnan(throttle);
|
||||
+ qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << std::isnan(rollAilerons) << ", pitch: " << std::isnan(pitchElevator) << ", yaw: " << std::isnan(yawRudder) << ", throttle: " << std::isnan(throttle);
|
||||
}
|
||||
//qDebug() << "Updated controls" << state;
|
||||
}
|
||||
diff --git a/src/uas/UAS.cc b/src/uas/UAS.cc
|
||||
index 4d5c1c2..ac88852 100644
|
||||
--- a/src/uas/UAS.cc
|
||||
+++ b/src/uas/UAS.cc
|
||||
@@ -558,7 +558,7 @@ void UAS::receiveMessage(mavlink_message_t message)
|
||||
|
||||
setAltitudeAMSL(hud.alt);
|
||||
setGroundSpeed(hud.groundspeed);
|
||||
- if (!isnan(hud.airspeed))
|
||||
+ if (!std::isnan(hud.airspeed))
|
||||
setAirSpeed(hud.airspeed);
|
||||
speedZ = -hud.climb;
|
||||
emit altitudeChanged(this, altitudeAMSL, altitudeRelative, -speedZ, time);
|
||||
@@ -654,7 +654,7 @@ void UAS::receiveMessage(mavlink_message_t message)
|
||||
|
||||
float vel = pos.vel/100.0f;
|
||||
// Smaller than threshold and not NaN
|
||||
- if ((vel < 1000000) && !isnan(vel) && !isinf(vel)) {
|
||||
+ if ((vel < 1000000) && !std::isnan(vel) && !std::isinf(vel)) {
|
||||
setGroundSpeed(vel);
|
||||
emit speedChanged(this, groundSpeed, airSpeed, time);
|
||||
} else {
|
||||
@@ -1439,8 +1439,8 @@ void UAS::setExternalControlSetpoint(float roll, float pitch, float yaw, float t
|
||||
if (countSinceLastTransmission++ >= 5) {
|
||||
sendCommand = true;
|
||||
countSinceLastTransmission = 0;
|
||||
- } else if ((!isnan(roll) && roll != manualRollAngle) || (!isnan(pitch) && pitch != manualPitchAngle) ||
|
||||
- (!isnan(yaw) && yaw != manualYawAngle) || (!isnan(thrust) && thrust != manualThrust) ||
|
||||
+ } else if ((!std::isnan(roll) && roll != manualRollAngle) || (!std::isnan(pitch) && pitch != manualPitchAngle) ||
|
||||
+ (!std::isnan(yaw) && yaw != manualYawAngle) || (!std::isnan(thrust) && thrust != manualThrust) ||
|
||||
buttons != manualButtons) {
|
||||
sendCommand = true;
|
||||
|
||||
diff --git a/src/ui/QGCDataPlot2D.cc b/src/ui/QGCDataPlot2D.cc
|
||||
index 2e530b2..9d5a774 100644
|
||||
--- a/src/ui/QGCDataPlot2D.cc
|
||||
+++ b/src/ui/QGCDataPlot2D.cc
|
||||
@@ -535,7 +535,7 @@ void QGCDataPlot2D::loadCsvLog(QString file, QString xAxisName, QString yAxisFil
|
||||
{
|
||||
bool okx = true;
|
||||
x = text.toDouble(&okx);
|
||||
- if (okx && !isnan(x) && !isinf(x))
|
||||
+ if (okx && !std::isnan(x) && !std::isinf(x))
|
||||
{
|
||||
headerfound = true;
|
||||
}
|
||||
@@ -561,7 +561,7 @@ void QGCDataPlot2D::loadCsvLog(QString file, QString xAxisName, QString yAxisFil
|
||||
y = text.toDouble(&oky);
|
||||
// Only INF is really an issue for the plot
|
||||
// NaN is fine
|
||||
- if (oky && !isnan(y) && !isinf(y) && text.length() > 0 && text != " " && text != "\n" && text != "\r" && text != "\t")
|
||||
+ if (oky && !std::isnan(y) && !std::isinf(y) && text.length() > 0 && text != " " && text != "\n" && text != "\r" && text != "\t")
|
||||
{
|
||||
// Only append definitely valid values
|
||||
xValues.value(curveName)->append(x);
|
||||
--
|
||||
2.7.4
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
diff -ru recoll-1.21.3-orig/recollinstall.in recoll-1.21.3/recollinstall.in
|
||||
--- recoll-1.21.3-orig/recollinstall.in 2015-09-28 08:08:42.000000000 +0100
|
||||
+++ recoll-1.21.3/recollinstall.in 2015-12-13 22:48:30.361776374 +0000
|
||||
@@ -45,9 +45,6 @@
|
||||
mandir=$DESTDIR/$mandir
|
||||
ROOTFORPYTHON="--root=${DESTDIR}"
|
||||
fi
|
||||
-if test -f /etc/debian_version ; then
|
||||
- OPTSFORPYTHON=--install-layout=deb
|
||||
-fi
|
||||
|
||||
echo "Installing to $PREFIX"
|
|
@ -1,12 +0,0 @@
|
|||
diff -ru recoll-1.21.3-orig/filters/rclpdf recoll-1.21.3/filters/rclpdf
|
||||
--- recoll-1.21.3-orig/filters/rclpdf 2015-09-28 08:08:15.000000000 +0100
|
||||
+++ recoll-1.21.3/filters/rclpdf 2015-12-14 21:37:01.984945925 +0000
|
||||
@@ -129,7 +129,7 @@
|
||||
{
|
||||
# Test poppler version: at some point before 0.24, poppler began
|
||||
# to properly escape text inside the header (but not the body).
|
||||
- XYZ=`pdftotext -v 2>&1 | awk '/pdftotext/{print $3}'`
|
||||
+ XYZ=`pdftotext -v 2>&1 | awk '/version/{print $3}'`
|
||||
MAJOR=`echo $XYZ | cut -d. -f 1`
|
||||
MINOR=`echo $XYZ | cut -d. -f 2`
|
||||
escapeheader=1
|
|
@ -8,13 +8,13 @@ with stdenv.lib;
|
|||
|
||||
buildGoPackage rec {
|
||||
pname = "gitea";
|
||||
version = "1.8.0";
|
||||
version = "1.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "go-gitea";
|
||||
repo = "gitea";
|
||||
rev = "v${version}";
|
||||
sha256 = "1x5r732rh1g23smgvvk10nlqbv14m7cf3y6zgwwl2bwkvax4z49b";
|
||||
sha256 = "1gsismjhcgz7zk8zvyva4cgnq4wsh4cs7mdabpas9djz34sa1nr1";
|
||||
# Required to generate the same checksum on MacOS due to unicode encoding differences
|
||||
# More information: https://github.com/NixOS/nixpkgs/pull/48128
|
||||
extraPostFetch = ''
|
||||
|
@ -64,6 +64,6 @@ buildGoPackage rec {
|
|||
description = "Git with a cup of tea";
|
||||
homepage = https://gitea.io;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.disassembler ];
|
||||
maintainers = with maintainers; [ disassembler kolaente ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -38,9 +38,10 @@ let
|
|||
|
||||
patches = [ ./apr-1.patch ];
|
||||
|
||||
# SVN build seems broken on gcc5:
|
||||
# https://gcc.gnu.org/gcc-5/porting_to.html
|
||||
CPPFLAGS = "-P";
|
||||
# We are hitting the following issue even with APR 1.6.x
|
||||
# -> https://issues.apache.org/jira/browse/SVN-4813
|
||||
# "-P" CPPFLAG is needed to build Python bindings and subversionClient
|
||||
CPPFLAGS = [ "-P" ];
|
||||
|
||||
configureFlags = [
|
||||
(stdenv.lib.withFeature bdbSupport "berkeley-db")
|
||||
|
@ -110,14 +111,9 @@ let
|
|||
});
|
||||
|
||||
in {
|
||||
subversion18 = common {
|
||||
version = "1.8.19";
|
||||
sha256 = "1gp6426gkdza6ni2whgifjcmjb4nq34ljy07yxkrhlarvfq6ks2n";
|
||||
};
|
||||
|
||||
subversion19 = common {
|
||||
version = "1.9.9";
|
||||
sha256 = "1ll13ychbkp367c7zsrrpda5nygkryma5k18qfr8wbaq7dbvxzcd";
|
||||
version = "1.9.10";
|
||||
sha256 = "1mwwbjs8nqr8qyc0xzy7chnylh4q3saycvly8rzq32swadbcca5f";
|
||||
};
|
||||
|
||||
subversion_1_10 = common {
|
||||
|
@ -126,9 +122,9 @@ in {
|
|||
extraBuildInputs = [ lz4 utf8proc ];
|
||||
};
|
||||
|
||||
subversion_1_11 = common {
|
||||
version = "1.11.1";
|
||||
sha256 = "1fv0psjxx5nxb4zmddyrma2bnv1bfff4p8ii6j8fqwjdr982gzcy";
|
||||
subversion = common {
|
||||
version = "1.12.0";
|
||||
sha256 = "1prfbrd1jnndb5fcsvwnzvdi7c0bpirb6pmfq03w21x0v1rprbkz";
|
||||
extraBuildInputs = [ lz4 utf8proc ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
{ stdenv, fetchFromGitHub, pkgconfig, which, qmake,
|
||||
qtbase, qtmultimedia, frei0r, opencolorio, hicolor-icon-theme, ffmpeg-full,
|
||||
CoreFoundation }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "olive-editor";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "olive-editor";
|
||||
repo = "olive";
|
||||
rev = version;
|
||||
sha256 = "191nk4c35gys4iypykcidn6h27c3sbjfy117q7h9h1qilz2wm94z";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
which
|
||||
qmake
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
ffmpeg-full
|
||||
frei0r
|
||||
opencolorio
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtmultimedia.dev
|
||||
hicolor-icon-theme
|
||||
] ++ stdenv.lib.optional stdenv.isDarwin CoreFoundation;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Professional open-source NLE video editor";
|
||||
homepage = "https://www.olivevideoeditor.org/";
|
||||
downloadPage = "https://www.olivevideoeditor.org/download.php";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.balsoft ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
|
@ -1,11 +1,11 @@
|
|||
{ config, stdenv, fetchurl, lib, fetchpatch, iasl, dev86, pam, libxslt, libxml2
|
||||
{ config, stdenv, fetchurl, lib, iasl, dev86, pam, libxslt, libxml2
|
||||
, libX11, xorgproto, libXext, libXcursor, libXmu, qt5, libIDL, SDL, libcap
|
||||
, libpng, glib, lvm2, libXrandr, libXinerama, libopus
|
||||
, pkgconfig, which, docbook_xsl, docbook_xml_dtd_43
|
||||
, alsaLib, curl, libvpx, nettools, dbus
|
||||
, makeself, perl
|
||||
, javaBindings ? false, jdk ? null
|
||||
, pythonBindings ? false, python2 ? null
|
||||
, pythonBindings ? false, python3 ? null
|
||||
, extensionPack ? null, fakeroot ? null
|
||||
, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
|
||||
, enableHardening ? false
|
||||
|
@ -17,12 +17,12 @@
|
|||
with stdenv.lib;
|
||||
|
||||
let
|
||||
python = python2;
|
||||
python = python3;
|
||||
buildType = "release";
|
||||
# Remember to change the extpackRev and version in extpack.nix and
|
||||
# guest-additions/default.nix as well.
|
||||
main = "0jmrbyhs92lyarpvylxqn2ajxdg9b290w5nd4g0i4h83d28bwbw0";
|
||||
version = "5.2.28";
|
||||
main = "0lp584a350ya1zn03lhgmdbi91yp8yfja9hlg2jz1xyfj2dc869l";
|
||||
version = "6.0.6";
|
||||
in stdenv.mkDerivation {
|
||||
name = "virtualbox-${version}";
|
||||
|
||||
|
@ -76,11 +76,12 @@ in stdenv.mkDerivation {
|
|||
optional enableHardening ./hardened.patch
|
||||
++ [
|
||||
./qtx11extras.patch
|
||||
(fetchpatch {
|
||||
name = "010-qt-5.11.patch";
|
||||
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/010-qt-5.11.patch?h=packages/virtualbox";
|
||||
sha256 = "0hjx99pg40wqyggnrpylrp5zngva4xrnk7r90i0ynrqc7n84g9pn";
|
||||
})
|
||||
# https://www.virtualbox.org/ticket/18620
|
||||
./fix_kbuild.patch
|
||||
# https://www.virtualbox.org/ticket/18621
|
||||
./fix_module_makefile_sed.patch
|
||||
# https://forums.virtualbox.org/viewtopic.php?f=7&t=92815
|
||||
./fix_printk_test.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -192,6 +193,6 @@ in stdenv.mkDerivation {
|
|||
license = licenses.gpl2;
|
||||
homepage = https://www.virtualbox.org/;
|
||||
maintainers = with maintainers; [ flokli sander ];
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
with lib;
|
||||
|
||||
let version = "5.2.28";
|
||||
let version = "6.0.6";
|
||||
in
|
||||
fetchurl rec {
|
||||
name = "Oracle_VM_VirtualBox_Extension_Pack-${version}.vbox-extpack";
|
||||
|
@ -10,7 +10,7 @@ fetchurl rec {
|
|||
sha256 =
|
||||
# Manually sha256sum the extensionPack file, must be hex!
|
||||
# Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`.
|
||||
let value = "376e07cbf2ff2844c95c800346c8e4697d7bc671ae0e21e46153b2e7b4ccc1d6";
|
||||
let value = "794f023a186bd217c29c3d30bd1434b6e9de3b242c7bf740d06d10f2d3d981c6";
|
||||
in assert (builtins.stringLength value) == 64; value;
|
||||
|
||||
meta = {
|
||||
|
@ -18,6 +18,6 @@ fetchurl rec {
|
|||
license = licenses.virtualbox-puel;
|
||||
homepage = https://www.virtualbox.org/;
|
||||
maintainers = with maintainers; [ flokli sander cdepillabout ];
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
diff -urN a/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile b/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile
|
||||
--- a/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile
|
||||
+++ b/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile
|
||||
@@ -58,7 +58,7 @@
|
||||
RT_WITH_VBOX \
|
||||
VBOX_WITH_HARDENING \
|
||||
VBOX_WITH_64_BITS_GUESTS # <-- must be consistent with Config.kmk!
|
||||
-VBOXMOD_CFLAGS = -include $(KBUILD_EXTMOD)/include/VBox/SUPDrvMangling.h -fno-pie -Wno-declaration-after-statement
|
||||
+VBOXMOD_CFLAGS = -include $(VBOXNETADPT_DIR)include/VBox/SUPDrvMangling.h -fno-pie -Wno-declaration-after-statement
|
||||
|
||||
include $(obj)/Makefile-footer.gmk
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
diff -urN VirtualBox-6.0.6/src/VBox/HostDrivers/VBoxNetAdp/Makefile.kmk VirtualBox-6.0.6.new/src/VBox/HostDrivers/VBoxNetAdp/Makefile.kmk
|
||||
--- VirtualBox-6.0.6/src/VBox/HostDrivers/VBoxNetAdp/Makefile.kmk 2019-04-16 12:16:38.000000000 +0200
|
||||
+++ VirtualBox-6.0.6.new/src/VBox/HostDrivers/VBoxNetAdp/Makefile.kmk 2019-05-04 15:19:14.545497602 +0200
|
||||
@@ -175,7 +175,7 @@
|
||||
| $$(dir $$@)
|
||||
$(QUIET)$(RM) -f -- $@
|
||||
ifndef VBOX_WITH_HARDENING
|
||||
- $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@ $<
|
||||
+ $(QUIET)$(SED) -e "s;VBOX_WITH_HARDENING;;g" --output $@ $<
|
||||
else
|
||||
$(QUIET)$(CP) -f $< $@
|
||||
endif
|
||||
diff -urN VirtualBox-6.0.6/src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk VirtualBox-6.0.6.new/src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk
|
||||
--- VirtualBox-6.0.6/src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk 2019-04-16 12:16:39.000000000 +0200
|
||||
+++ VirtualBox-6.0.6.new/src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk 2019-05-04 15:19:13.809493324 +0200
|
||||
@@ -525,7 +525,7 @@
|
||||
| $$(dir $$@)
|
||||
$(QUIET)$(RM) -f -- $@
|
||||
ifndef VBOX_WITH_HARDENING
|
||||
- $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@ $<
|
||||
+ $(QUIET)$(SED) -e "s;VBOX_WITH_HARDENING;;g" --output $@ $<
|
||||
else
|
||||
$(QUIET)$(CP) -f $< $@
|
||||
endif
|
||||
diff -urN VirtualBox-6.0.6/src/VBox/HostDrivers/VBoxPci/Makefile.kmk VirtualBox-6.0.6.new/src/VBox/HostDrivers/VBoxPci/Makefile.kmk
|
||||
--- VirtualBox-6.0.6/src/VBox/HostDrivers/VBoxPci/Makefile.kmk 2019-04-16 12:16:40.000000000 +0200
|
||||
+++ VirtualBox-6.0.6.new/src/VBox/HostDrivers/VBoxPci/Makefile.kmk 2019-05-04 15:42:12.029664987 +0200
|
||||
@@ -67,7 +67,7 @@
|
||||
| $$(dir $$@)
|
||||
$(QUIET)$(RM) -f -- $@
|
||||
ifndef VBOX_WITH_HARDENING
|
||||
- $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@ $<
|
||||
+ $(QUIET)$(SED) -e "s;VBOX_WITH_HARDENING;;g" --output $@ $<
|
||||
else
|
||||
$(QUIET)$(CP) -f $< $@
|
||||
endif
|
|
@ -0,0 +1,14 @@
|
|||
diff -urN VirtualBox-6.0.6/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c VirtualBox-6.0.6.new/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
|
||||
--- VirtualBox-6.0.6/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c 2019-04-16 12:16:37.000000000 +0200
|
||||
+++ VirtualBox-6.0.6.new/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c 2019-05-04 15:59:44.439905223 +0200
|
||||
@@ -426,10 +426,8 @@
|
||||
int rc;
|
||||
PSUPDRVSESSION pSession;
|
||||
Log(("VBoxDrvLinuxCreate: pFilp=%p pid=%d/%d %s\n", pFilp, RTProcSelf(), current->pid, current->comm));
|
||||
- printk("test1\n");
|
||||
|
||||
#ifdef VBOX_WITH_HARDENING
|
||||
- printk("test2\n");
|
||||
/*
|
||||
* Only root is allowed to access the unrestricted device, enforce it!
|
||||
*/
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv, fetchurl, lib, patchelf, cdrkit, kernel, which, makeWrapper
|
||||
, xorg, dbus, virtualbox }:
|
||||
, zlib, xorg, dbus, virtualbox }:
|
||||
|
||||
let
|
||||
version = virtualbox.version;
|
||||
|
@ -19,32 +19,23 @@ stdenv.mkDerivation {
|
|||
|
||||
src = fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
|
||||
sha256 = "0cwdmdgcd1jysyw7c9b3cdk1ngk5nq7slh1zkhxkvvq142cnm1v9";
|
||||
sha256 = "1srcsf9264l5yxbq2x83z66j38blbfrywq5lkzwb5kih6sv548c3";
|
||||
};
|
||||
|
||||
KERN_DIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
|
||||
KERN_INCL = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/source/include";
|
||||
|
||||
patchFlags = [ "-p1" "-d" "install/src/vboxguest-${version}" ];
|
||||
|
||||
patches = [
|
||||
./fix_kerndir.patch
|
||||
./fix_kernincl.patch
|
||||
];
|
||||
# If you add a patch you probably need this.
|
||||
#patchFlags = [ "-p1" "-d" "install/src/vboxguest-${version}" ];
|
||||
|
||||
hardeningDisable = [ "pic" ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types -Wno-error=implicit-function-declaration";
|
||||
|
||||
nativeBuildInputs = [ patchelf makeWrapper ];
|
||||
buildInputs = [ cdrkit dbus ] ++ kernel.moduleBuildDependencies;
|
||||
buildInputs = [ cdrkit ] ++ kernel.moduleBuildDependencies;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r install/* $out
|
||||
'';
|
||||
|
||||
buildCommand = with xorg; ''
|
||||
unpackPhase = ''
|
||||
${if stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux" then ''
|
||||
isoinfo -J -i $src -x /VBoxLinuxAdditions.run > ./VBoxLinuxAdditions.run
|
||||
chmod 755 ./VBoxLinuxAdditions.run
|
||||
|
@ -63,39 +54,30 @@ stdenv.mkDerivation {
|
|||
''
|
||||
else throw ("Architecture: "+stdenv.hostPlatform.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
'';
|
||||
|
||||
cd ../
|
||||
patchPhase
|
||||
cd install/src
|
||||
|
||||
# Build kernel modules
|
||||
export INSTALL_MOD_PATH=$out
|
||||
doConfigure = false;
|
||||
|
||||
buildPhase = ''
|
||||
# Build kernel modules.
|
||||
cd src
|
||||
find . -type f | xargs sed 's/depmod -a/true/' -i
|
||||
|
||||
cd vboxguest-${version}
|
||||
|
||||
# Run just make first. If we only did make install, we get symbol warnings during build.
|
||||
make
|
||||
|
||||
cd ../..
|
||||
|
||||
# Change the interpreter for various binaries
|
||||
for i in sbin/VBoxService bin/{VBoxClient,VBoxControl} other/mount.vboxsf
|
||||
do
|
||||
${if stdenv.hostPlatform.system == "i686-linux" then ''
|
||||
patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux.so.2 $i
|
||||
''
|
||||
else if stdenv.hostPlatform.system == "x86_64-linux" then ''
|
||||
patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux-x86-64.so.2 $i
|
||||
''
|
||||
else throw ("Architecture: "+stdenv.hostPlatform.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
patchelf --set-rpath ${lib.makeLibraryPath [ stdenv.cc.cc dbus libX11 libXt libXext libXmu libXfixes libXrandr libXcursor ]} $i
|
||||
for i in sbin/VBoxService bin/{VBoxClient,VBoxControl} other/mount.vboxsf; do
|
||||
patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} $i
|
||||
patchelf --set-rpath ${lib.makeLibraryPath [ stdenv.cc.cc stdenv.cc.libc zlib
|
||||
xorg.libX11 xorg.libXt xorg.libXext xorg.libXmu xorg.libXfixes xorg.libXrandr xorg.libXcursor ]} $i
|
||||
done
|
||||
|
||||
for i in lib/VBoxOGL*.so
|
||||
do
|
||||
patchelf --set-rpath ${lib.makeLibraryPath [ "$out" dbus libXcomposite libXdamage libXext libXfixes ]} $i
|
||||
patchelf --set-rpath ${lib.makeLibraryPath [ "$out"
|
||||
xorg.libXcomposite xorg.libXdamage xorg.libXext xorg.libXfixes ]} $i
|
||||
done
|
||||
|
||||
# FIXME: Virtualbox 4.3.22 moved VBoxClient-all (required by Guest Additions
|
||||
|
@ -105,6 +87,13 @@ stdenv.mkDerivation {
|
|||
# Remove references to /usr from various scripts and files
|
||||
sed -i -e "s|/usr/bin|$out/bin|" other/vboxclient.desktop
|
||||
sed -i -e "s|/usr/bin|$out/bin|" bin/VBoxClient-all
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
# Install kernel modules.
|
||||
cd src/vboxguest-${version}
|
||||
make install INSTALL_MOD_PATH=$out
|
||||
cd ../..
|
||||
|
||||
# Install binaries
|
||||
install -D -m 755 other/mount.vboxsf $out/bin/mount.vboxsf
|
||||
|
@ -131,21 +120,18 @@ stdenv.mkDerivation {
|
|||
# Install Xorg drivers
|
||||
mkdir -p $out/lib/xorg/modules/{drivers,input}
|
||||
install -m 644 other/vboxvideo_drv_${xserverABI}.so $out/lib/xorg/modules/drivers/vboxvideo_drv.so
|
||||
'';
|
||||
|
||||
# Install kernel modules
|
||||
cd src
|
||||
# Stripping breaks these binaries for some reason.
|
||||
dontStrip = true;
|
||||
|
||||
for i in *
|
||||
do
|
||||
cd $i
|
||||
kernelVersion=$(cd ${kernel.dev}/lib/modules; ls)
|
||||
export MODULE_DIR=$out/lib/modules/$kernelVersion/misc
|
||||
find . -type f | xargs sed -i -e "s|-o root||g" \
|
||||
-e "s|-g root||g"
|
||||
make install
|
||||
cd ..
|
||||
# Some code dlopen() libdbus, patch RUNPATH in fixupPhase so it isn't stripped.
|
||||
postFixup = ''
|
||||
for i in $(grep -F libdbus-1.so -l -r $out/{lib,bin}); do
|
||||
origRpath=$(patchelf --print-rpath "$i")
|
||||
patchelf --set-rpath "$origRpath:${lib.makeLibraryPath [ dbus ]}" "$i"
|
||||
done
|
||||
''; # */
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Guest additions for VirtualBox";
|
||||
|
|
|
@ -1,38 +0,0 @@
|
|||
diff --git a/vboxsf/Makefile.include.header b/vboxsf/Makefile.include.header
|
||||
index 8df1eb4d25..5a3e5604e7 100644
|
||||
--- a/vboxsf/Makefile.include.header
|
||||
+++ b/vboxsf/Makefile.include.header
|
||||
@@ -117,7 +117,6 @@ else # neq($(KERNELRELEASE),)
|
||||
endif # neq($(KERNELRELEASE),)
|
||||
|
||||
# Kernel build folder
|
||||
-KERN_DIR := /lib/modules/$(KERN_VER)/build
|
||||
ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
|
||||
$(error Error: unable to find the headers of the Linux kernel to build against. \
|
||||
Specify KERN_VER=<version> and run Make again)
|
||||
|
||||
diff --git a/vboxguest/Makefile.include.header b/vboxguest/Makefile.include.header
|
||||
index 8df1eb4d25..5a3e5604e7 100644
|
||||
--- a/vboxguest/Makefile.include.header
|
||||
+++ b/vboxguest/Makefile.include.header
|
||||
@@ -117,7 +117,6 @@ else # neq($(KERNELRELEASE),)
|
||||
endif # neq($(KERNELRELEASE),)
|
||||
|
||||
# Kernel build folder
|
||||
-KERN_DIR := /lib/modules/$(KERN_VER)/build
|
||||
ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
|
||||
$(error Error: unable to find the headers of the Linux kernel to build against. \
|
||||
Specify KERN_VER=<version> and run Make again)
|
||||
|
||||
diff --git a/vboxvideo/Makefile.include.header b/vboxvideo/Makefile.include.header
|
||||
index 8df1eb4d25..5a3e5604e7 100644
|
||||
--- a/vboxvideo/Makefile.include.header
|
||||
+++ b/vboxvideo/Makefile.include.header
|
||||
@@ -117,7 +117,6 @@ else # neq($(KERNELRELEASE),)
|
||||
endif # neq($(KERNELRELEASE),)
|
||||
|
||||
# Kernel build folder
|
||||
-KERN_DIR := /lib/modules/$(KERN_VER)/build
|
||||
ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
|
||||
$(error Error: unable to find the headers of the Linux kernel to build against. \
|
||||
Specify KERN_VER=<version> and run Make again)
|
|
@ -1,12 +0,0 @@
|
|||
diff --git a/vboxvideo/Makefile.include.header b/vboxvideo/Makefile.include.header
|
||||
index 8df1eb4d25..5a3e5604e7 100644
|
||||
--- a/vboxvideo/Makefile.include.header
|
||||
+++ b/vboxvideo/Makefile.include.header
|
||||
@@ -122,7 +122,6 @@ ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
|
||||
Specify KERN_VER=<version> and run Make again)
|
||||
endif
|
||||
# Kernel include folder
|
||||
-KERN_INCL := $(KERN_DIR)/include
|
||||
# module install folder
|
||||
INSTALL_MOD_DIR ?= misc
|
||||
MODULE_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KERN_VER)/$(INSTALL_MOD_DIR)
|
|
@ -2,30 +2,15 @@ diff --git a/kBuild/units/qt5.kmk b/kBuild/units/qt5.kmk
|
|||
index 71b96a3..73391f0 100644
|
||||
--- a/kBuild/units/qt5.kmk
|
||||
+++ b/kBuild/units/qt5.kmk
|
||||
@@ -1019,9 +1019,10 @@ else
|
||||
@@ -1054,9 +1054,9 @@ else
|
||||
$(eval $(target)_LIBS += $(PATH_SDK_QT5_LIB)/$(qt_prefix)qtmain$(qt_infix)$(SUFF_LIB) )
|
||||
endif
|
||||
else
|
||||
- $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(PATH_SDK_QT5_LIB)/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) )
|
||||
+ $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(PATH_SDK_QT5_LIB)/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) \
|
||||
+ $(PATH_QT5_X11_EXTRAS_LIB)/lib$(qt_prefix)Qt5X11Extras$(qt_infix)$(SUFF_DLL))
|
||||
+ $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(if $(filter X11Extras,$(module)),$(PATH_QT5_X11_EXTRAS_LIB),$(PATH_SDK_QT5_LIB))/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) )
|
||||
endif
|
||||
- $(eval $(target)_INCS += $(addprefix $(PATH_SDK_QT5_INC)/Qt,$(qt_modules)) $(PATH_SDK_QT5_INC) )
|
||||
+ $(eval $(target)_INCS += $(addprefix $(PATH_SDK_QT5_INC)/Qt,$(qt_modules)) $(PATH_SDK_QT5_INC) $(PATH_QT5_X11_EXTRAS_INC)/QtX11Extras )
|
||||
endif
|
||||
$(eval $(target)_DEFS += $(foreach module,$(toupper $(qt_modules)), QT_$(module)_LIB) )
|
||||
|
||||
diff --git a/src/VBox/Frontends/VirtualBox/Makefile.kmk b/src/VBox/Frontends/VirtualBox/Makefile.kmk
|
||||
index 3295bfefe7..796370623c 100644
|
||||
--- a/src/VBox/Frontends/VirtualBox/Makefile.kmk
|
||||
+++ b/src/VBox/Frontends/VirtualBox/Makefile.kmk
|
||||
@@ -916,9 +916,6 @@ endif
|
||||
# The Qt modules we're using.
|
||||
# (The include directory and lib/framework for each module will be added by the Qt unit.)
|
||||
VirtualBox_QT_MODULES = Core Gui Widgets PrintSupport
|
||||
-VirtualBox_QT_MODULES.linux += X11Extras
|
||||
-VirtualBox_QT_MODULES.solaris += X11Extras
|
||||
-VirtualBox_QT_MODULES.freebsd += X11Extras
|
||||
VirtualBox_QT_MODULES.darwin += MacExtras
|
||||
VirtualBox_QT_MODULES.win += WinExtras
|
||||
if defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
, xmlto, docbook_xml_dtd_45, docbook_xsl, findXMLCatalogs
|
||||
, libxkbcommon, xcbutilxrm, hicolor-icon-theme
|
||||
, asciidoctor
|
||||
, fontsConf
|
||||
}:
|
||||
|
||||
with luaPackages; stdenv.mkDerivation rec {
|
||||
|
@ -27,8 +28,13 @@ with luaPackages; stdenv.mkDerivation rec {
|
|||
xmlto docbook_xml_dtd_45
|
||||
docbook_xsl findXMLCatalogs
|
||||
asciidoctor
|
||||
ldoc
|
||||
];
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
|
||||
FONTCONFIG_FILE = toString fontsConf;
|
||||
|
||||
propagatedUserEnvPkgs = [ hicolor-icon-theme ];
|
||||
buildInputs = [ cairo librsvg dbus gdk_pixbuf gobject-introspection
|
||||
git lgi libpthreadstubs libstartup_notification
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, libmatchbox, pkgconfig}:
|
||||
{ stdenv, fetchurl, pkgconfig, libmatchbox, libX11, libXext }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "matchbox-${version}";
|
||||
|
@ -6,6 +6,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ libmatchbox ];
|
||||
NIX_LDFLAGS = "-lX11 -L${libX11}/lib -lXext -L${libXext}/lib";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.yoctoproject.org/releases/matchbox/matchbox-window-manager/${version}/matchbox-window-manager-${version}.tar.bz2";
|
||||
|
@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = {
|
||||
description = "X window manager for non-desktop embedded systems";
|
||||
homepage = http://matchbox-project.org/;
|
||||
homepage = "https://www.yoctoproject.org/software-item/matchbox/";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,234 +0,0 @@
|
|||
diff --git a/config.def.h b/config.def.h
|
||||
index b3da7f0..ce43686 100644
|
||||
--- a/config.def.h
|
||||
+++ b/config.def.h
|
||||
@@ -1,7 +1,7 @@
|
||||
/* See LICENSE file for copyright and license details. */
|
||||
|
||||
/* appearance */
|
||||
-static const char font[] = "-*-*-medium-*-*-*-14-*-*-*-*-*-*-*";
|
||||
+static const char font[] = "monospace-9";
|
||||
static const char* normbgcolor = "#222222";
|
||||
static const char* normfgcolor = "#cccccc";
|
||||
static const char* selbgcolor = "#555555";
|
||||
diff --git a/config.mk b/config.mk
|
||||
index dd741e4..ed3a2e9 100644
|
||||
--- a/config.mk
|
||||
+++ b/config.mk
|
||||
@@ -9,7 +9,7 @@ MANPREFIX = ${PREFIX}/share/man
|
||||
|
||||
# includes and libs
|
||||
INCS = -I. -I/usr/include
|
||||
-LIBS = -L/usr/lib -lc -lX11
|
||||
+LIBS = -L/usr/lib -lc -lXft -lX11
|
||||
|
||||
# flags
|
||||
CPPFLAGS = -DVERSION=\"${VERSION}\" -D_DEFAULT_SOURCE
|
||||
diff --git a/tabbed.c b/tabbed.c
|
||||
index b15f9cb..6e50c41 100644
|
||||
--- a/tabbed.c
|
||||
+++ b/tabbed.c
|
||||
@@ -15,6 +15,7 @@
|
||||
#include <X11/Xproto.h>
|
||||
#include <X11/Xutil.h>
|
||||
#include <X11/XKBlib.h>
|
||||
+#include <X11/Xft/Xft.h>
|
||||
|
||||
#include "arg.h"
|
||||
|
||||
@@ -64,17 +65,16 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
int x, y, w, h;
|
||||
- unsigned long norm[ColLast];
|
||||
- unsigned long sel[ColLast];
|
||||
- unsigned long urg[ColLast];
|
||||
+ XftColor norm[ColLast];
|
||||
+ XftColor sel[ColLast];
|
||||
+ XftColor urg[ColLast];
|
||||
Drawable drawable;
|
||||
GC gc;
|
||||
struct {
|
||||
int ascent;
|
||||
int descent;
|
||||
int height;
|
||||
- XFontSet set;
|
||||
- XFontStruct *xfont;
|
||||
+ XftFont *xfont;
|
||||
} font;
|
||||
} DC; /* draw context */
|
||||
|
||||
@@ -97,7 +97,7 @@ static void unmapnotify(const XEvent *e);
|
||||
static void destroynotify(const XEvent *e);
|
||||
static void die(const char *errstr, ...);
|
||||
static void drawbar(void);
|
||||
-static void drawtext(const char *text, unsigned long col[ColLast]);
|
||||
+static void drawtext(const char *text, XftColor col[ColLast]);
|
||||
static void *ecalloc(size_t n, size_t size);
|
||||
static void *erealloc(void *o, size_t size);
|
||||
static void expose(const XEvent *e);
|
||||
@@ -107,7 +107,7 @@ static void focusonce(const Arg *arg);
|
||||
static void fullscreen(const Arg *arg);
|
||||
static char* getatom(int a);
|
||||
static int getclient(Window w);
|
||||
-static unsigned long getcolor(const char *colstr);
|
||||
+static XftColor getcolor(const char *colstr);
|
||||
static int getfirsttab(void);
|
||||
static Bool gettextprop(Window w, Atom atom, char *text, unsigned int size);
|
||||
static void initfont(const char *fontstr);
|
||||
@@ -220,12 +220,6 @@ cleanup(void) {
|
||||
free(clients);
|
||||
clients = NULL;
|
||||
|
||||
- if(dc.font.set) {
|
||||
- XFreeFontSet(dpy, dc.font.set);
|
||||
- } else {
|
||||
- XFreeFont(dpy, dc.font.xfont);
|
||||
- }
|
||||
-
|
||||
XFreePixmap(dpy, dc.drawable);
|
||||
XFreeGC(dpy, dc.gc);
|
||||
XDestroyWindow(dpy, win);
|
||||
@@ -315,7 +309,7 @@ die(const char *errstr, ...) {
|
||||
|
||||
void
|
||||
drawbar(void) {
|
||||
- unsigned long *col;
|
||||
+ XftColor *col;
|
||||
int c, cc, fc, width;
|
||||
char *name = NULL;
|
||||
|
||||
@@ -368,12 +362,13 @@ drawbar(void) {
|
||||
}
|
||||
|
||||
void
|
||||
-drawtext(const char *text, unsigned long col[ColLast]) {
|
||||
+drawtext(const char *text, XftColor col[ColLast]) {
|
||||
int i, x, y, h, len, olen;
|
||||
char buf[256];
|
||||
+ XftDraw *d;
|
||||
XRectangle r = { dc.x, dc.y, dc.w, dc.h };
|
||||
|
||||
- XSetForeground(dpy, dc.gc, col[ColBG]);
|
||||
+ XSetForeground(dpy, dc.gc, col[ColBG].pixel);
|
||||
XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
|
||||
if(!text)
|
||||
return;
|
||||
@@ -394,13 +389,12 @@ drawtext(const char *text, unsigned long col[ColLast]) {
|
||||
for(i = len; i && i > len - 3; buf[--i] = '.');
|
||||
}
|
||||
|
||||
- XSetForeground(dpy, dc.gc, col[ColFG]);
|
||||
- if(dc.font.set) {
|
||||
- XmbDrawString(dpy, dc.drawable, dc.font.set,
|
||||
- dc.gc, x, y, buf, len);
|
||||
- } else {
|
||||
- XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
|
||||
- }
|
||||
+ XSetForeground(dpy, dc.gc, col[ColFG].pixel);
|
||||
+
|
||||
+ d = XftDrawCreate(dpy, dc.drawable, DefaultVisual(dpy, screen), DefaultColormap(dpy,screen));
|
||||
+
|
||||
+ XftDrawStringUtf8(d, &col[ColFG], dc.font.xfont, x, y, (XftChar8 *) buf, len);
|
||||
+ XftDrawDestroy(d);
|
||||
}
|
||||
|
||||
void *
|
||||
@@ -537,15 +531,14 @@ getclient(Window w) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
-unsigned long
|
||||
+XftColor
|
||||
getcolor(const char *colstr) {
|
||||
- Colormap cmap = DefaultColormap(dpy, screen);
|
||||
- XColor color;
|
||||
+ XftColor color;
|
||||
|
||||
- if(!XAllocNamedColor(dpy, cmap, colstr, &color, &color))
|
||||
+ if(!XftColorAllocName(dpy, DefaultVisual(dpy, screen), DefaultColormap(dpy, screen), colstr, &color))
|
||||
die("tabbed: cannot allocate color '%s'\n", colstr);
|
||||
|
||||
- return color.pixel;
|
||||
+ return color;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -594,41 +587,11 @@ gettextprop(Window w, Atom atom, char *text, unsigned int size) {
|
||||
|
||||
void
|
||||
initfont(const char *fontstr) {
|
||||
- char *def, **missing, **font_names;
|
||||
- int i, n;
|
||||
- XFontStruct **xfonts;
|
||||
-
|
||||
- missing = NULL;
|
||||
- if(dc.font.set)
|
||||
- XFreeFontSet(dpy, dc.font.set);
|
||||
-
|
||||
- dc.font.set = XCreateFontSet(dpy, fontstr, &missing, &n, &def);
|
||||
- if(missing) {
|
||||
- while(n--)
|
||||
- fprintf(stderr, "tabbed: missing fontset: %s\n", missing[n]);
|
||||
- XFreeStringList(missing);
|
||||
- }
|
||||
-
|
||||
- if(dc.font.set) {
|
||||
- dc.font.ascent = dc.font.descent = 0;
|
||||
- n = XFontsOfFontSet(dc.font.set, &xfonts, &font_names);
|
||||
- for(i = 0, dc.font.ascent = 0, dc.font.descent = 0; i < n; i++) {
|
||||
- dc.font.ascent = MAX(dc.font.ascent, (*xfonts)->ascent);
|
||||
- dc.font.descent = MAX(dc.font.descent,(*xfonts)->descent);
|
||||
- xfonts++;
|
||||
- }
|
||||
- } else {
|
||||
- if(dc.font.xfont)
|
||||
- XFreeFont(dpy, dc.font.xfont);
|
||||
- dc.font.xfont = NULL;
|
||||
- if(!(dc.font.xfont = XLoadQueryFont(dpy, fontstr))
|
||||
- && !(dc.font.xfont = XLoadQueryFont(dpy, "fixed"))) {
|
||||
- die("tabbed: cannot load font: '%s'\n", fontstr);
|
||||
- }
|
||||
+ if(!(dc.font.xfont = XftFontOpenName(dpy,screen,fontstr)) && !(dc.font.xfont = XftFontOpenName(dpy,screen,"fixed")))
|
||||
+ die("error, cannot load font: '%s'\n", fontstr);
|
||||
|
||||
- dc.font.ascent = dc.font.xfont->ascent;
|
||||
- dc.font.descent = dc.font.xfont->descent;
|
||||
- }
|
||||
+ dc.font.ascent = dc.font.xfont->ascent;
|
||||
+ dc.font.descent = dc.font.xfont->descent;
|
||||
dc.font.height = dc.font.ascent + dc.font.descent;
|
||||
}
|
||||
|
||||
@@ -1000,11 +963,9 @@ setup(void) {
|
||||
dc.drawable = XCreatePixmap(dpy, root, ww, wh,
|
||||
DefaultDepth(dpy, screen));
|
||||
dc.gc = XCreateGC(dpy, root, 0, 0);
|
||||
- if(!dc.font.set)
|
||||
- XSetFont(dpy, dc.gc, dc.font.xfont->fid);
|
||||
|
||||
win = XCreateSimpleWindow(dpy, root, wx, wy, ww, wh, 0,
|
||||
- dc.norm[ColFG], dc.norm[ColBG]);
|
||||
+ dc.norm[ColFG].pixel, dc.norm[ColBG].pixel);
|
||||
XMapRaised(dpy, win);
|
||||
XSelectInput(dpy, win, SubstructureNotifyMask|FocusChangeMask|
|
||||
ButtonPressMask|ExposureMask|KeyPressMask|PropertyChangeMask|
|
||||
@@ -1070,15 +1031,9 @@ spawn(const Arg *arg) {
|
||||
|
||||
int
|
||||
textnw(const char *text, unsigned int len) {
|
||||
- XRectangle r;
|
||||
-
|
||||
- if(dc.font.set) {
|
||||
- XmbTextExtents(dc.font.set, text, len, NULL, &r);
|
||||
-
|
||||
- return r.width;
|
||||
- }
|
||||
-
|
||||
- return XTextWidth(dc.font.xfont, text, len);
|
||||
+ XGlyphInfo ext;
|
||||
+ XftTextExtentsUtf8(dpy, dc.font.xfont, (XftChar8 *) text, len, &ext);
|
||||
+ return ext.xOff;
|
||||
}
|
||||
|
||||
void
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "man-pages-${version}";
|
||||
version = "5.00";
|
||||
version = "5.01";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/docs/man-pages/${name}.tar.xz";
|
||||
sha256 = "006rcqhs4ay9q8wip2kbgk3065gwvfbzrqgv2dsydwvcnwv50bss";
|
||||
sha256 = "09xn8d8xxwgms6h1bvjlgn3mxz51vxf3ra0ry9f5dqi29qry3z3x";
|
||||
};
|
||||
|
||||
makeFlags = [ "MANDIR=$(out)/share/man" ];
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ stdenv, fetchzip }:
|
||||
|
||||
let
|
||||
version = "5.8.1";
|
||||
version = "5.8.2";
|
||||
in fetchzip rec {
|
||||
name = "font-awesome-${version}";
|
||||
|
||||
|
@ -12,7 +12,7 @@ in fetchzip rec {
|
|||
unzip -j $downloadedFile "Font-Awesome-${version}/otfs/*.otf" -d $out/share/fonts/opentype
|
||||
'';
|
||||
|
||||
sha256 = "1fc177sgf4qd231dmpr7cwr1j03wzb927ylpng2gn94iksln924d";
|
||||
sha256 = "1h0qhvkfyfs4579jvrk3gwc7dp4i9s46bkj406b493dvmxxhv986";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Font Awesome - OTF font";
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
{ stdenv, fetchzip }:
|
||||
|
||||
let
|
||||
version = "1.003";
|
||||
in fetchzip rec {
|
||||
name = "public-sans-${version}";
|
||||
|
||||
url = "https://github.com/uswds/public-sans/releases/download/v${version}/public-sans-v${version}.zip";
|
||||
|
||||
postFetch = ''
|
||||
mkdir -p $out/share
|
||||
unzip $downloadedFile fonts/{otf,variable}/\*.\[ot\]tf -d $out/share/
|
||||
'';
|
||||
|
||||
sha256 = "02ranwr1bw4n9n1ljw234nzhj2a0hgradniib37nh10maark5wg3";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A strong, neutral, principles-driven, open source typeface for text or display";
|
||||
homepage = https://public-sans.digital.gov/;
|
||||
license = licenses.ofl;
|
||||
maintainers = with maintainers; [ dtzWill ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{ fetchurl }:
|
||||
|
||||
fetchurl {
|
||||
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/3f0c3944190bf34286e4e80620fede11dd688f68.tar.gz";
|
||||
sha256 = "1i4k4wjm6w8hgwia1axwdr3ij0ckxh3ikc1f0nlk8sb0j3yrmxa6";
|
||||
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/00d16ba60110e6956b6f7d31d520d0a34377b047.tar.gz";
|
||||
sha256 = "1f6d0a06g51r01mgg6fm9b8nd2bzkijf6jm6ljm5c62qgi4fkc7k";
|
||||
}
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "osinfo-db";
|
||||
version = "20190301";
|
||||
version = "20190504";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://releases.pagure.org/libosinfo/${pname}-${version}.tar.xz";
|
||||
sha256 = "1rjqizsglgdcjxi7kpbwm26krdkrlxacinjp9684sfzhqwdqi4as";
|
||||
sha256 = "1yik26gbm3y3wviyabfpyx7pnqx72z5j7267hdgfscdvrwwmyi5z";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ osinfo-db-tools intltool libxml2 ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "matcha-${version}";
|
||||
version = "2018-12-24";
|
||||
version = "2019_05_09";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vinceliuice";
|
||||
repo = "matcha";
|
||||
rev = version;
|
||||
sha256 = "178y5s5jfprkw8y6clqb8ss4kvfswivfrh6cn67fk4z7wg72i3yc";
|
||||
sha256 = "0xnv89appivrnbppyjqaa35pls120mkz253p2lblyxzbvi5kgn73";
|
||||
};
|
||||
|
||||
buildInputs = [ gdk_pixbuf librsvg ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "shades-of-gray-theme";
|
||||
version = "1.1.6";
|
||||
version = "1.1.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "WernerFP";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0jp4p0wdmac5dkz1hqhzqmn59zgxqd77gn0napy3wbqr5yc60pp1";
|
||||
sha256 = "09r26izbx9sj9czc95cn4r0c1v9yj2qm84zdl047fiqa49czwbzq";
|
||||
};
|
||||
|
||||
buildInputs = [ gtk_engines ];
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, vala, gnome3,
|
||||
bamf, clutter-gtk, pantheon, libgee, libcanberra-gtk3, libwnck3,
|
||||
deepin-menu, deepin-mutter, deepin-wallpapers,
|
||||
dbus, bamf, clutter-gtk, pantheon, libgee, libcanberra-gtk3,
|
||||
libwnck3, deepin-menu, deepin-mutter, deepin-wallpapers,
|
||||
deepin-desktop-schemas, wrapGAppsHook, deepin }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
|
|||
buildInputs = [
|
||||
bamf
|
||||
clutter-gtk
|
||||
dbus
|
||||
deepin-desktop-schemas
|
||||
deepin-menu
|
||||
deepin-mutter
|
||||
|
@ -40,10 +41,15 @@ stdenv.mkDerivation rec {
|
|||
];
|
||||
|
||||
postPatch = ''
|
||||
searchHardCodedPaths
|
||||
fixPath ${deepin-wallpapers} /usr/share/backgrounds src/Background/BackgroundSource.vala
|
||||
searchHardCodedPaths # debugging
|
||||
|
||||
# fix background path
|
||||
fixPath ${deepin-wallpapers} /usr/share/backgrounds src/Background/BackgroundSource.vala
|
||||
sed -i 's|default_background.jpg|deepin/desktop.jpg|' src/Background/BackgroundSource.vala
|
||||
|
||||
# fix executable paths in desktop files
|
||||
sed -i -e "s,Exec=dbus-send,Exec=${dbus}/bin/dbus-send," data/gala-multitaskingview.desktop.in
|
||||
sed -i -e "s,Exec=deepin-wm,Exec=$out/bin/deepin-wm," data/gala.desktop
|
||||
'';
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-DWNCK_I_KNOW_THIS_IS_UNSTABLE";
|
||||
|
@ -52,6 +58,10 @@ stdenv.mkDerivation rec {
|
|||
NOCONFIGURE=1 ./autogen.sh
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
searchHardCodedPaths $out # debugging
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru.updateScript = deepin.updateScript { inherit name; };
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
--- a/elementary.pc.in 2015-05-16 21:08:14.321148417 +0200
|
||||
+++ b/elementary.pc.in 2015-05-16 21:08:30.643412725 +0200
|
||||
@@ -14,4 +14,4 @@
|
||||
Requires.private: @requirement_elm_pc@
|
||||
Version: @VERSION@
|
||||
Libs: -L${libdir} -lelementary @ELEMENTARY_PC_LIBS@
|
||||
-Cflags: -I${includedir}/elementary-@VMAJ@
|
||||
+Cflags: -I${includedir}/elementary-@VMAJ@ @ELEMENTARY_PC_CFLAGS@
|
||||
--- a/Makefile.am 2015-05-16 21:08:14.322148433 +0200
|
||||
+++ b/Makefile.am 2015-05-16 21:08:30.643412725 +0200
|
||||
@@ -84,6 +84,7 @@
|
||||
-e 's,@requirement_elm_pc\@,$(requirement_elm_pc),g' \
|
||||
-e 's,@ELEMENTARY_LIBS\@,$(ELEMENTARY_LIBS),g' \
|
||||
-e 's,@ELEMENTARY_PC_LIBS\@,$(ELEMENTARY_PC_LIBS),g' \
|
||||
+-e 's,@ELEMENTARY_PC_CFLAGS\@,$(ELEMENTARY_PC_CFLAGS),g' \
|
||||
< $< > $@ || rm $@
|
||||
|
||||
pc_verbose = $(pc_verbose_@AM_V@)
|
|
@ -1,14 +0,0 @@
|
|||
diff -c gnustep-back-0.24.0/Tools/GNUmakefile.preamble gnustep-back-0.24.0.patched/Tools/GNUmakefile.preamble
|
||||
--- gnustep-back-0.24.0/Tools/GNUmakefile.preamble 2013-07-04 22:44:28.000000000 +0600
|
||||
+++ gnustep-back-0.24.0.patched/Tools/GNUmakefile.preamble 2014-12-01 16:40:37.000000000 +0600
|
||||
@@ -52,6 +52,9 @@
|
||||
# Additional libraries when linking applications
|
||||
#ADDITIONAL_GUI_LIBS +=
|
||||
|
||||
+# Additional libraries when linking tools
|
||||
+gpbs_TOOL_LIBS += -lgnustep-gui -lgnustep-base $(SYSTEM_LIBS)
|
||||
+
|
||||
#
|
||||
# Flags dealing with installing and uninstalling
|
||||
#
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
--- gnustep-base-1.24.7/Makefile.postamble 2011-07-15 19:53:45.000000000 +0600
|
||||
+++ gnustep-base-1.24.7.patched/Makefile.postamble 2014-11-29 22:25:07.000000000 +0600
|
||||
@@ -38,13 +38,13 @@
|
||||
# Things to do after compiling
|
||||
# after-all::
|
||||
|
||||
-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional:
|
||||
- $(ECHO_CREATING)$(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional$(END_ECHO)
|
||||
+$(DESTDIR_GNUSTEP_MAKEFILES)/Additional:
|
||||
+ $(ECHO_CREATING)$(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional$(END_ECHO)
|
||||
|
||||
# Things to do before installing
|
||||
-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional
|
||||
+before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional
|
||||
$(ECHO_NOTHING)$(INSTALL_DATA) base.make \
|
||||
- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
||||
+ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
||||
|
||||
# Things to do after installing
|
||||
# after-install::
|
||||
@@ -54,7 +54,7 @@
|
||||
|
||||
# Things to do after uninstalling
|
||||
after-uninstall::
|
||||
- $(ECHO_NOTHING)rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
||||
+ $(ECHO_NOTHING)rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
||||
|
||||
# Things to do before cleaning
|
||||
# before-clean::
|
|
@ -1,27 +0,0 @@
|
|||
diff -ru gorm-1.2.20/GNUmakefile gorm-1.2.20.patched/GNUmakefile
|
||||
--- gorm-1.2.20/GNUmakefile 2010-05-30 12:55:26.000000000 +0600
|
||||
+++ gorm-1.2.20.patched/GNUmakefile 2014-12-10 22:21:18.000000000 +0600
|
||||
@@ -24,6 +24,23 @@
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
|
||||
+ifeq ($(GNUSTEP_MAKEFILES),)
|
||||
+ GNUSTEP_MAKEFILES := $(shell gnustep-config --variable=GNUSTEP_MAKEFILES 2>/dev/null)
|
||||
+ ifeq ($(GNUSTEP_MAKEFILES),)
|
||||
+ $(warning )
|
||||
+ $(warning Unable to obtain GNUSTEP_MAKEFILES setting from gnustep-config!)
|
||||
+ $(warning Perhaps gnustep-make is not properly installed,)
|
||||
+ $(warning so gnustep-config is not in your PATH.)
|
||||
+ $(warning )
|
||||
+ $(warning Your PATH is currently $(PATH))
|
||||
+ $(warning )
|
||||
+ endif
|
||||
+endif
|
||||
+
|
||||
+ifeq ($(GNUSTEP_MAKEFILES),)
|
||||
+ $(error You need to set GNUSTEP_MAKEFILES before compiling!)
|
||||
+endif
|
||||
+
|
||||
PACKAGE_NAME = gorm
|
||||
export PACKAGE_NAME
|
||||
include $(GNUSTEP_MAKEFILES)/common.make
|
|
@ -1,28 +0,0 @@
|
|||
--- gnustep-gui-0.24.0/GNUmakefile.postamble 2010-05-17 22:38:59.000000000 +0600
|
||||
+++ gnustep-gui-0.24.0.patched/GNUmakefile.postamble 2014-12-01 13:44:05.000000000 +0600
|
||||
@@ -40,20 +40,20 @@
|
||||
# The following rule is important mainly for packaging, because in that case
|
||||
# you install into a fake system tree, and the directory is not there.
|
||||
#
|
||||
-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional:
|
||||
- $(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional
|
||||
+$(DESTDIR_GNUSTEP_MAKEFILES)/Additional:
|
||||
+ $(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional
|
||||
|
||||
# Things to do before installing
|
||||
-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional
|
||||
+before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional
|
||||
$(INSTALL_DATA) gui.make \
|
||||
- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/gui.make
|
||||
+ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/gui.make
|
||||
|
||||
# Things to do after installing
|
||||
# after-install::
|
||||
|
||||
# Things to do before uninstalling
|
||||
before-uninstall::
|
||||
- rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/gui.make
|
||||
+ rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/gui.make
|
||||
|
||||
# Things to do after uninstalling
|
||||
# after-uninstall::
|
|
@ -1,11 +0,0 @@
|
|||
--- gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble 2008-06-10 10:01:49.000000000 +0600
|
||||
+++ gnustep-gui-0.24.0.patched/TextConverters/RTF/GNUmakefile.preamble 2014-12-01 13:02:11.000000000 +0600
|
||||
@@ -49,7 +49,7 @@
|
||||
ADDITIONAL_INCLUDE_DIRS +=-I../../Headers/Additions -I../../Headers
|
||||
|
||||
# Additional LDFLAGS to pass to the linker
|
||||
-#ADDITIONAL_LDFLAGS +=
|
||||
+ADDITIONAL_LDFLAGS += -lgnustep-gui
|
||||
|
||||
# Additional library directories the linker should search
|
||||
ADDITIONAL_LIB_DIRS += -L../../Source/$(GNUSTEP_OBJ_DIR)
|
|
@ -1,14 +0,0 @@
|
|||
--- gnustep-gui-0.24.0/Tools/GNUmakefile.preamble 2006-02-22 12:43:48.000000000 +0600
|
||||
+++ gnustep-gui-0.24.0.patched/Tools/GNUmakefile.preamble 2014-12-01 12:52:41.000000000 +0600
|
||||
@@ -32,9 +32,11 @@
|
||||
ADDITIONAL_LIB_DIRS += -L../Source/$(GNUSTEP_OBJ_DIR) -L../Model/$(GNUSTEP_OBJ_DIR)
|
||||
|
||||
# Additional libraries when linking tools
|
||||
+make_services_TOOL_LIBS += -lgnustep-base
|
||||
gpbs_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS)
|
||||
set_show_service_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS)
|
||||
gopen_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS)
|
||||
+gclose_TOOL_LIBS += -lgnustep-base
|
||||
gcloseall_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS)
|
||||
GSspell_TOOL_LIBS += $(ADDITIONAL_DEPENDS)
|
||||
|
|
@ -1,145 +0,0 @@
|
|||
diff -ru gnustep-make-2.6.6/common.make gnustep-make-2.6.6.patched/common.make
|
||||
--- gnustep-make-2.6.6/common.make 2013-03-04 17:21:55.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/common.make 2014-12-09 21:29:10.000000000 +0600
|
||||
@@ -135,7 +135,9 @@
|
||||
endif
|
||||
# Then include makefiles with flags/config options installed by the
|
||||
# libraries themselves
|
||||
--include $(GNUSTEP_MAKEFILES)/Additional/*.make
|
||||
+ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),)
|
||||
+-include $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)
|
||||
+endif
|
||||
|
||||
#
|
||||
# Determine target specific settings
|
||||
diff -ru gnustep-make-2.6.6/GNUmakefile.in gnustep-make-2.6.6.patched/GNUmakefile.in
|
||||
--- gnustep-make-2.6.6/GNUmakefile.in 2013-09-20 12:13:15.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/GNUmakefile.in 2014-12-07 20:35:27.000000000 +0600
|
||||
@@ -173,7 +173,6 @@
|
||||
"$(makedir)/$(GNUSTEP_TARGET_CPU)" \
|
||||
"$(makedir)/$(GNUSTEP_TARGET_DIR)" \
|
||||
"$(makedir)/$(GNUSTEP_TARGET_LDIR)" \
|
||||
- "$(makedir)/Additional" \
|
||||
"$(makedir)/Auxiliary" \
|
||||
"$(makedir)/Master" \
|
||||
"$(makedir)/Instance" \
|
||||
@@ -314,7 +313,6 @@
|
||||
-rmdir "$(makedir)/Instance"
|
||||
-rmdir "$(makedir)/Master"
|
||||
-rmdir "$(makedir)/Auxiliary"
|
||||
- -rmdir "$(makedir)/Additional"
|
||||
-rmdir "$(makedir)/$(GNUSTEP_TARGET_LDIR)"
|
||||
-rmdir "$(makedir)/$(GNUSTEP_TARGET_DIR)"
|
||||
-rmdir "$(makedir)/$(GNUSTEP_TARGET_CPU)"
|
||||
diff -ru gnustep-make-2.6.6/gnustep-config.in gnustep-make-2.6.6.patched/gnustep-config.in
|
||||
--- gnustep-make-2.6.6/gnustep-config.in 2013-07-02 16:06:24.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/gnustep-config.in 2014-12-09 21:29:49.000000000 +0600
|
||||
@@ -66,6 +66,7 @@
|
||||
echo " --variable=OBJCXX"
|
||||
echo " --variable=GNUMAKE"
|
||||
echo " --variable=GNUSTEP_MAKEFILES"
|
||||
+ echo " --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL"
|
||||
echo " --variable=GNUSTEP_USER_DEFAULTS_DIR"
|
||||
echo " --variable=GNUSTEP_HOST"
|
||||
echo " --variable=GNUSTEP_HOST_CPU"
|
||||
@@ -153,6 +154,8 @@
|
||||
|
||||
export GNUSTEP_MAKEFILES
|
||||
|
||||
+export NIX_GNUSTEP_MAKEFILES_ADDITIONAL
|
||||
+
|
||||
#
|
||||
# If all they want to know if GNUSTEP_MAKEFILES or anything that
|
||||
# we can compute only using GNUSTEP_MAKEFILES, we can print it out
|
||||
@@ -168,6 +171,8 @@
|
||||
exit 0;;
|
||||
--variable=GNUSTEP_MAKEFILES) echo "$GNUSTEP_MAKEFILES"
|
||||
exit 0;;
|
||||
+ --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL) echo "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL"
|
||||
+ exit 0;;
|
||||
--variable=GNUMAKE) echo "@GNUMAKE@"
|
||||
exit 0;;
|
||||
--debug-flags) @GNUMAKE@ -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-objc-flags quiet=yes debug=yes 2>/dev/null
|
||||
diff -ru gnustep-make-2.6.6/GNUstep.csh.in gnustep-make-2.6.6.patched/GNUstep.csh.in
|
||||
--- gnustep-make-2.6.6/GNUstep.csh.in 2011-05-03 13:40:10.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/GNUstep.csh.in 2014-12-09 20:14:05.000000000 +0600
|
||||
@@ -130,6 +130,10 @@
|
||||
setenv GNUSTEP_MAKEFILES "@GNUSTEP_MAKEFILES@"
|
||||
endif
|
||||
|
||||
+if ( ! ${?NIX_GNUSTEP_MAKEFILES_ADDITIONAL} ) then
|
||||
+ setenv NIX_GNUSTEP_MAKEFILES_ADDITIONAL "@NIX_GNUSTEP_MAKEFILES_ADDITIONAL@"
|
||||
+endif
|
||||
+
|
||||
if ( "${GNUSTEP_MAKE_STRICT_V2_MODE}" == "yes" ) then
|
||||
unsetenv GNUSTEP_USER_DIR
|
||||
unsetenv GNUSTEP_USER_ROOT
|
||||
diff -ru gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.sh.in
|
||||
--- gnustep-make-2.6.6/GNUstep.sh.in 2012-02-21 20:21:38.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/GNUstep.sh.in 2014-12-09 20:14:19.000000000 +0600
|
||||
@@ -173,6 +173,10 @@
|
||||
fi
|
||||
export GNUSTEP_MAKEFILES
|
||||
|
||||
+if [ -z "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL" ]; then
|
||||
+ NIX_GNUSTEP_MAKEFILES_ADDITIONAL=@NIX_GNUSTEP_MAKEFILES_ADDITIONAL@
|
||||
+fi
|
||||
+export NIX_GNUSTEP_MAKEFILES_ADDITIONAL
|
||||
|
||||
if [ "$GNUSTEP_MAKE_STRICT_V2_MODE" = "yes" ]; then
|
||||
# Make sure this is never set in gnustep-make v2 strict mode; it
|
||||
diff -ru gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in
|
||||
--- gnustep-make-2.6.6/GNUstep-strict-v2.conf.in 2008-01-15 20:35:36.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in 2014-12-07 22:04:56.000000000 +0600
|
||||
@@ -47,7 +47,6 @@
|
||||
# Traditionally, this is /usr/GNUstep/System/Library/Makefiles
|
||||
GNUSTEP_MAKEFILES=@GNUSTEP_MAKEFILES@
|
||||
|
||||
-
|
||||
# This is where the user home directories are. Only used to provide
|
||||
# NSUserDirectory in gnustep-base. Never used anywhere else.
|
||||
GNUSTEP_SYSTEM_USERS_DIR=@GNUSTEP_SYSTEM_USERS_DIR@
|
||||
diff -ru gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/library-combo.make
|
||||
--- gnustep-make-2.6.6/library-combo.make 2012-02-21 19:53:02.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/library-combo.make 2014-12-09 20:15:05.000000000 +0600
|
||||
@@ -142,7 +142,7 @@
|
||||
#
|
||||
# Third-party foundations not using make package
|
||||
# Our own foundation will install a base.make file into
|
||||
-# $GNUSTEP_MAKEFILES/Additional/ to set the needed flags
|
||||
+# $NIX_GNUSTEP_MAKEFILES_ADDITIONAL to set the needed flags
|
||||
#
|
||||
ifeq ($(FOUNDATION_LIB), nx)
|
||||
# -framework Foundation is used both to find headers, and to link
|
||||
@@ -166,7 +166,7 @@
|
||||
|
||||
#
|
||||
# FIXME - Ask Helge to move this inside his libFoundation, and have
|
||||
-# it installed as a $(GNUSTEP_MAKEFILES)/Additional/libFoundation.make
|
||||
+# it installed as a $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/libFoundation.make
|
||||
#
|
||||
ifeq ($(FOUNDATION_LIB),fd)
|
||||
-include $(GNUSTEP_MAKEFILES)/libFoundation.make
|
||||
@@ -193,7 +193,7 @@
|
||||
GUI_LIBS =
|
||||
#
|
||||
# Third-party GUI libraries - our own sets its flags into
|
||||
-# $(GNUSTEP_MAKEFILES)/Additional/gui.make
|
||||
+# $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/gui.make
|
||||
#
|
||||
ifeq ($(GUI_LIB), nx)
|
||||
GUI_DEFINE = -DNeXT_GUI_LIBRARY=1
|
||||
diff -ru gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make
|
||||
--- gnustep-make-2.6.6/rules.make 2013-07-04 16:05:44.000000000 +0600
|
||||
+++ gnustep-make-2.6.6.patched/rules.make 2014-12-09 21:31:04.000000000 +0600
|
||||
@@ -667,7 +667,9 @@
|
||||
exit 1$(END_ECHO)
|
||||
endif
|
||||
|
||||
-$(GNUSTEP_MAKEFILES)/Additional/*.make: ;
|
||||
+ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),)
|
||||
+$(NIX_GNUSTEP_MAKEFILES_ADDITIONAL): ;
|
||||
+endif
|
||||
|
||||
$(GNUSTEP_MAKEFILES)/Master/*.make: ;
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
diff -c ProjectCenter-0.6.2/GNUmakefile.preamble ProjectCenter-0.6.2.patched/GNUmakefile.preamble
|
||||
--- ProjectCenter-0.6.2/GNUmakefile.preamble 2010-08-08 03:56:04.000000000 +0600
|
||||
+++ artyom/ProjectCenter-0.6.2.patched/GNUmakefile.preamble 2014-12-01 20:08:31.000000000 +0600
|
||||
@@ -39,7 +39,7 @@
|
||||
ADDITIONAL_INCLUDE_DIRS += -I./ -I./Headers
|
||||
|
||||
# Additional LDFLAGS to pass to the linker
|
||||
-ADDITIONAL_LDFLAGS +=
|
||||
+ADDITIONAL_LDFLAGS += -lgnustep-base -lgnustep-gui
|
||||
|
||||
# Additional library directories the linker should search
|
||||
ADDITIONAL_LIB_DIRS += -L./Framework/ProjectCenter.framework/$(GNUSTEP_TARGET_LDIR)
|
||||
|
||||
Diff finished. Mon Dec 1 20:08:50 2014
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue