mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-21 05:00:16 +00:00
Merge branch 'staging-next' into staging
This commit is contained in:
commit
986fbf4799
|
@ -7318,6 +7318,12 @@
|
|||
githubId = 8547242;
|
||||
name = "Stefan Rohrbacher";
|
||||
};
|
||||
"thelegy" = {
|
||||
email = "mail+nixos@0jb.de";
|
||||
github = "thelegy";
|
||||
githubId = 3105057;
|
||||
name = "Jan Beinke";
|
||||
};
|
||||
thesola10 = {
|
||||
email = "thesola10@bobile.fr";
|
||||
github = "thesola10";
|
||||
|
|
|
@ -96,6 +96,18 @@
|
|||
<option>systemd.services.supybot.serviceConfig</option>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>security.duosec.skey</literal> option, which stored a secret in the
|
||||
nix store, has been replaced by a new
|
||||
<link linkend="opt-security.duosec.secretKeyFile">security.duosec.secretKeyFile</link>
|
||||
option for better security.
|
||||
</para>
|
||||
<para>
|
||||
<literal>security.duosec.ikey</literal> has been renamed to
|
||||
<link linkend="opt-security.duosec.integrationKey">security.duosec.integrationKey</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
|
|
|
@ -9,8 +9,7 @@ let
|
|||
|
||||
configFilePam = ''
|
||||
[duo]
|
||||
ikey=${cfg.ikey}
|
||||
skey=${cfg.skey}
|
||||
ikey=${cfg.integrationKey}
|
||||
host=${cfg.host}
|
||||
${optionalString (cfg.groups != "") ("groups="+cfg.groups)}
|
||||
failmode=${cfg.failmode}
|
||||
|
@ -24,26 +23,12 @@ let
|
|||
motd=${boolToStr cfg.motd}
|
||||
accept_env_factor=${boolToStr cfg.acceptEnvFactor}
|
||||
'';
|
||||
|
||||
loginCfgFile = optionalAttrs cfg.ssh.enable {
|
||||
"duo/login_duo.conf" =
|
||||
{ source = pkgs.writeText "login_duo.conf" configFileLogin;
|
||||
mode = "0600";
|
||||
user = "sshd";
|
||||
};
|
||||
};
|
||||
|
||||
pamCfgFile = optional cfg.pam.enable {
|
||||
"duo/pam_duo.conf" =
|
||||
{ source = pkgs.writeText "pam_duo.conf" configFilePam;
|
||||
mode = "0600";
|
||||
user = "sshd";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
(mkRenamedOptionModule [ "security" "duosec" "group" ] [ "security" "duosec" "groups" ])
|
||||
(mkRenamedOptionModule [ "security" "duosec" "ikey" ] [ "security" "duosec" "integrationKey" ])
|
||||
(mkRemovedOptionModule [ "security" "duosec" "skey" ] "The insecure security.duosec.skey option has been replaced by a new security.duosec.secretKeyFile option. Use this new option to store a secure copy of your key instead.")
|
||||
];
|
||||
|
||||
options = {
|
||||
|
@ -60,14 +45,18 @@ in
|
|||
description = "If enabled, protect logins with Duo Security using PAM support.";
|
||||
};
|
||||
|
||||
ikey = mkOption {
|
||||
integrationKey = mkOption {
|
||||
type = types.str;
|
||||
description = "Integration key.";
|
||||
};
|
||||
|
||||
skey = mkOption {
|
||||
type = types.str;
|
||||
description = "Secret key.";
|
||||
secretKeyFile = mkOption {
|
||||
type = types.path;
|
||||
default = null;
|
||||
description = ''
|
||||
A file containing your secret key. The security of your Duo application is tied to the security of your secret key.
|
||||
'';
|
||||
example = "/run/keys/duo-skey";
|
||||
};
|
||||
|
||||
host = mkOption {
|
||||
|
@ -195,21 +184,52 @@ in
|
|||
};
|
||||
|
||||
config = mkIf (cfg.ssh.enable || cfg.pam.enable) {
|
||||
environment.systemPackages = [ pkgs.duo-unix ];
|
||||
environment.systemPackages = [ pkgs.duo-unix ];
|
||||
|
||||
security.wrappers.login_duo.source = "${pkgs.duo-unix.out}/bin/login_duo";
|
||||
environment.etc = loginCfgFile // pamCfgFile;
|
||||
security.wrappers.login_duo.source = "${pkgs.duo-unix.out}/bin/login_duo";
|
||||
|
||||
/* If PAM *and* SSH are enabled, then don't do anything special.
|
||||
If PAM isn't used, set the default SSH-only options. */
|
||||
services.openssh.extraConfig = mkIf (cfg.ssh.enable || cfg.pam.enable) (
|
||||
if cfg.pam.enable then "UseDNS no" else ''
|
||||
# Duo Security configuration
|
||||
ForceCommand ${config.security.wrapperDir}/login_duo
|
||||
PermitTunnel no
|
||||
${optionalString (!cfg.allowTcpForwarding) ''
|
||||
AllowTcpForwarding no
|
||||
''}
|
||||
'');
|
||||
system.activationScripts = {
|
||||
login_duo = mkIf cfg.ssh.enable ''
|
||||
if test -f "${cfg.secretKeyFile}"; then
|
||||
mkdir -m 0755 -p /etc/duo
|
||||
|
||||
umask 0077
|
||||
conf="$(mktemp)"
|
||||
{
|
||||
cat ${pkgs.writeText "login_duo.conf" configFileLogin}
|
||||
printf 'skey = %s\n' "$(cat ${cfg.secretKeyFile})"
|
||||
} >"$conf"
|
||||
|
||||
chown sshd "$conf"
|
||||
mv -fT "$conf" /etc/duo/login_duo.conf
|
||||
fi
|
||||
'';
|
||||
pam_duo = mkIf cfg.pam.enable ''
|
||||
if test -f "${cfg.secretKeyFile}"; then
|
||||
mkdir -m 0755 -p /etc/duo
|
||||
|
||||
umask 0077
|
||||
conf="$(mktemp)"
|
||||
{
|
||||
cat ${pkgs.writeText "login_duo.conf" configFilePam}
|
||||
printf 'skey = %s\n' "$(cat ${cfg.secretKeyFile})"
|
||||
} >"$conf"
|
||||
|
||||
mv -fT "$conf" /etc/duo/pam_duo.conf
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
/* If PAM *and* SSH are enabled, then don't do anything special.
|
||||
If PAM isn't used, set the default SSH-only options. */
|
||||
services.openssh.extraConfig = mkIf (cfg.ssh.enable || cfg.pam.enable) (
|
||||
if cfg.pam.enable then "UseDNS no" else ''
|
||||
# Duo Security configuration
|
||||
ForceCommand ${config.security.wrapperDir}/login_duo
|
||||
PermitTunnel no
|
||||
${optionalString (!cfg.allowTcpForwarding) ''
|
||||
AllowTcpForwarding no
|
||||
''}
|
||||
'');
|
||||
};
|
||||
}
|
||||
|
|
|
@ -10,16 +10,8 @@ let
|
|||
|
||||
isMariaDB = lib.getName mysql == lib.getName pkgs.mariadb;
|
||||
|
||||
isMysqlAtLeast57 =
|
||||
(lib.getName mysql == lib.getName pkgs.mysql57)
|
||||
&& (builtins.compareVersions mysql.version "5.7" >= 0);
|
||||
|
||||
mysqldOptions =
|
||||
"--user=${cfg.user} --datadir=${cfg.dataDir} --basedir=${mysql}";
|
||||
# For MySQL 5.7+, --insecure creates the root user without password
|
||||
# (earlier versions and MariaDB do this by default).
|
||||
installOptions =
|
||||
"${mysqldOptions} ${lib.optionalString isMysqlAtLeast57 "--insecure"}";
|
||||
|
||||
settingsFile = pkgs.writeText "my.cnf" (
|
||||
generators.toINI { listsAsDuplicateKeys = true; } cfg.settings +
|
||||
|
@ -366,9 +358,14 @@ in
|
|||
pkgs.nettools
|
||||
];
|
||||
|
||||
preStart = ''
|
||||
preStart = if isMariaDB then ''
|
||||
if ! test -e ${cfg.dataDir}/mysql; then
|
||||
${mysql}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${installOptions}
|
||||
${mysql}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${mysqldOptions}
|
||||
touch /tmp/mysql_init
|
||||
fi
|
||||
'' else ''
|
||||
if ! test -e ${cfg.dataDir}/mysql; then
|
||||
${mysql}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} --initialize-insecure
|
||||
touch /tmp/mysql_init
|
||||
fi
|
||||
'';
|
||||
|
|
|
@ -39,8 +39,6 @@ let
|
|||
GRAPHITE_URL = cfg.seyren.graphiteUrl;
|
||||
} // cfg.seyren.extraConfig;
|
||||
|
||||
pagerConfig = pkgs.writeText "alarms.yaml" cfg.pager.alerts;
|
||||
|
||||
configDir = pkgs.buildEnv {
|
||||
name = "graphite-config";
|
||||
paths = lists.filter (el: el != null) [
|
||||
|
@ -61,12 +59,10 @@ let
|
|||
|
||||
carbonEnv = {
|
||||
PYTHONPATH = let
|
||||
cenv = pkgs.python.buildEnv.override {
|
||||
extraLibs = [ pkgs.python27Packages.carbon ];
|
||||
cenv = pkgs.python3.buildEnv.override {
|
||||
extraLibs = [ pkgs.python3Packages.carbon ];
|
||||
};
|
||||
cenvPack = "${cenv}/${pkgs.python.sitePackages}";
|
||||
# opt/graphite/lib contains twisted.plugins.carbon-cache
|
||||
in "${cenvPack}/opt/graphite/lib:${cenvPack}";
|
||||
in "${cenv}/${pkgs.python3.sitePackages}";
|
||||
GRAPHITE_ROOT = dataDir;
|
||||
GRAPHITE_CONF_DIR = configDir;
|
||||
GRAPHITE_STORAGE_DIR = dataDir;
|
||||
|
@ -74,6 +70,10 @@ let
|
|||
|
||||
in {
|
||||
|
||||
imports = [
|
||||
(mkRemovedOptionModule ["services" "graphite" "pager"] "")
|
||||
];
|
||||
|
||||
###### interface
|
||||
|
||||
options.services.graphite = {
|
||||
|
@ -132,7 +132,7 @@ in {
|
|||
finders = mkOption {
|
||||
description = "List of finder plugins to load.";
|
||||
default = [];
|
||||
example = literalExample "[ pkgs.python27Packages.influxgraph ]";
|
||||
example = literalExample "[ pkgs.python3Packages.influxgraph ]";
|
||||
type = types.listOf types.package;
|
||||
};
|
||||
|
||||
|
@ -159,8 +159,8 @@ in {
|
|||
|
||||
package = mkOption {
|
||||
description = "Package to use for graphite api.";
|
||||
default = pkgs.python27Packages.graphite_api;
|
||||
defaultText = "pkgs.python27Packages.graphite_api";
|
||||
default = pkgs.python3Packages.graphite_api;
|
||||
defaultText = "pkgs.python3Packages.graphite_api";
|
||||
type = types.package;
|
||||
};
|
||||
|
||||
|
@ -344,49 +344,6 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
pager = {
|
||||
enable = mkOption {
|
||||
description = ''
|
||||
Whether to enable graphite-pager service. For more information visit
|
||||
<link xlink:href="https://github.com/seatgeek/graphite-pager"/>
|
||||
'';
|
||||
default = false;
|
||||
type = types.bool;
|
||||
};
|
||||
|
||||
redisUrl = mkOption {
|
||||
description = "Redis connection string.";
|
||||
default = "redis://localhost:${toString config.services.redis.port}/";
|
||||
type = types.str;
|
||||
};
|
||||
|
||||
graphiteUrl = mkOption {
|
||||
description = "URL to your graphite service.";
|
||||
default = "http://${cfg.web.listenAddress}:${toString cfg.web.port}";
|
||||
type = types.str;
|
||||
};
|
||||
|
||||
alerts = mkOption {
|
||||
description = "Alerts configuration for graphite-pager.";
|
||||
default = ''
|
||||
alerts:
|
||||
- target: constantLine(100)
|
||||
warning: 90
|
||||
critical: 200
|
||||
name: Test
|
||||
'';
|
||||
example = ''
|
||||
pushbullet_key: pushbullet_api_key
|
||||
alerts:
|
||||
- target: stats.seatgeek.app.deal_quality.venue_info_cache.hit
|
||||
warning: .5
|
||||
critical: 1
|
||||
name: Deal quality venue cache hits
|
||||
'';
|
||||
type = types.lines;
|
||||
};
|
||||
};
|
||||
|
||||
beacon = {
|
||||
enable = mkEnableOption "graphite beacon";
|
||||
|
||||
|
@ -409,7 +366,7 @@ in {
|
|||
environment = carbonEnv;
|
||||
serviceConfig = {
|
||||
RuntimeDirectory = name;
|
||||
ExecStart = "${pkgs.pythonPackages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
ExecStart = "${pkgs.python3Packages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
PermissionsStartOnly = true;
|
||||
|
@ -431,7 +388,7 @@ in {
|
|||
environment = carbonEnv;
|
||||
serviceConfig = {
|
||||
RuntimeDirectory = name;
|
||||
ExecStart = "${pkgs.pythonPackages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
ExecStart = "${pkgs.python3Packages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
PIDFile="/run/${name}/${name}.pid";
|
||||
|
@ -447,7 +404,7 @@ in {
|
|||
environment = carbonEnv;
|
||||
serviceConfig = {
|
||||
RuntimeDirectory = name;
|
||||
ExecStart = "${pkgs.pythonPackages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
ExecStart = "${pkgs.python3Packages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
PIDFile="/run/${name}/${name}.pid";
|
||||
|
@ -457,19 +414,11 @@ in {
|
|||
|
||||
(mkIf (cfg.carbon.enableCache || cfg.carbon.enableAggregator || cfg.carbon.enableRelay) {
|
||||
environment.systemPackages = [
|
||||
pkgs.pythonPackages.carbon
|
||||
pkgs.python3Packages.carbon
|
||||
];
|
||||
})
|
||||
|
||||
(mkIf cfg.web.enable (let
|
||||
python27' = pkgs.python27.override {
|
||||
packageOverrides = self: super: {
|
||||
django = self.django_1_8;
|
||||
django_tagging = self.django_tagging_0_4_3;
|
||||
};
|
||||
};
|
||||
pythonPackages = python27'.pkgs;
|
||||
in {
|
||||
(mkIf cfg.web.enable ({
|
||||
systemd.services.graphiteWeb = {
|
||||
description = "Graphite Web Interface";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
@ -477,28 +426,27 @@ in {
|
|||
path = [ pkgs.perl ];
|
||||
environment = {
|
||||
PYTHONPATH = let
|
||||
penv = pkgs.python.buildEnv.override {
|
||||
penv = pkgs.python3.buildEnv.override {
|
||||
extraLibs = [
|
||||
pythonPackages.graphite-web
|
||||
pythonPackages.pysqlite
|
||||
pkgs.python3Packages.graphite-web
|
||||
];
|
||||
};
|
||||
penvPack = "${penv}/${pkgs.python.sitePackages}";
|
||||
penvPack = "${penv}/${pkgs.python3.sitePackages}";
|
||||
in concatStringsSep ":" [
|
||||
"${graphiteLocalSettingsDir}"
|
||||
"${penvPack}/opt/graphite/webapp"
|
||||
"${penvPack}"
|
||||
# explicitly adding pycairo in path because it cannot be imported via buildEnv
|
||||
"${pkgs.pythonPackages.pycairo}/${pkgs.python.sitePackages}"
|
||||
"${pkgs.python3Packages.pycairo}/${pkgs.python3.sitePackages}"
|
||||
];
|
||||
DJANGO_SETTINGS_MODULE = "graphite.settings";
|
||||
GRAPHITE_SETTINGS_MODULE = "graphite_local_settings";
|
||||
GRAPHITE_CONF_DIR = configDir;
|
||||
GRAPHITE_STORAGE_DIR = dataDir;
|
||||
LD_LIBRARY_PATH = "${pkgs.cairo.out}/lib";
|
||||
};
|
||||
serviceConfig = {
|
||||
ExecStart = ''
|
||||
${pkgs.python27Packages.waitress-django}/bin/waitress-serve-django \
|
||||
${pkgs.python3Packages.waitress-django}/bin/waitress-serve-django \
|
||||
--host=${cfg.web.listenAddress} --port=${toString cfg.web.port}
|
||||
'';
|
||||
User = "graphite";
|
||||
|
@ -510,7 +458,7 @@ in {
|
|||
mkdir -p ${dataDir}/{whisper/,log/webapp/}
|
||||
chmod 0700 ${dataDir}/{whisper/,log/webapp/}
|
||||
|
||||
${pkgs.pythonPackages.django_1_8}/bin/django-admin.py migrate --noinput
|
||||
${pkgs.python3Packages.django}/bin/django-admin.py migrate --noinput
|
||||
|
||||
chown -R graphite:graphite ${dataDir}
|
||||
|
||||
|
@ -518,16 +466,16 @@ in {
|
|||
fi
|
||||
|
||||
# Only collect static files when graphite_web changes.
|
||||
if ! [ "${dataDir}/current_graphite_web" -ef "${pythonPackages.graphite-web}" ]; then
|
||||
if ! [ "${dataDir}/current_graphite_web" -ef "${pkgs.python3Packages.graphite-web}" ]; then
|
||||
mkdir -p ${staticDir}
|
||||
${pkgs.pythonPackages.django_1_8}/bin/django-admin.py collectstatic --noinput --clear
|
||||
${pkgs.python3Packages.django}/bin/django-admin.py collectstatic --noinput --clear
|
||||
chown -R graphite:graphite ${staticDir}
|
||||
ln -sfT "${pythonPackages.graphite-web}" "${dataDir}/current_graphite_web"
|
||||
ln -sfT "${pkgs.python3Packages.graphite-web}" "${dataDir}/current_graphite_web"
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pythonPackages.graphite-web ];
|
||||
environment.systemPackages = [ pkgs.python3Packages.graphite-web ];
|
||||
}))
|
||||
|
||||
(mkIf cfg.api.enable {
|
||||
|
@ -537,16 +485,16 @@ in {
|
|||
after = [ "network.target" ];
|
||||
environment = {
|
||||
PYTHONPATH = let
|
||||
aenv = pkgs.python.buildEnv.override {
|
||||
extraLibs = [ cfg.api.package pkgs.cairo pkgs.pythonPackages.cffi ] ++ cfg.api.finders;
|
||||
aenv = pkgs.python3.buildEnv.override {
|
||||
extraLibs = [ cfg.api.package pkgs.cairo pkgs.python3Packages.cffi ] ++ cfg.api.finders;
|
||||
};
|
||||
in "${aenv}/${pkgs.python.sitePackages}";
|
||||
in "${aenv}/${pkgs.python3.sitePackages}";
|
||||
GRAPHITE_API_CONFIG = graphiteApiConfig;
|
||||
LD_LIBRARY_PATH = "${pkgs.cairo.out}/lib";
|
||||
};
|
||||
serviceConfig = {
|
||||
ExecStart = ''
|
||||
${pkgs.python27Packages.waitress}/bin/waitress-serve \
|
||||
${pkgs.python3Packages.waitress}/bin/waitress-serve \
|
||||
--host=${cfg.api.listenAddress} --port=${toString cfg.api.port} \
|
||||
graphite_api.app:app
|
||||
'';
|
||||
|
@ -591,34 +539,13 @@ in {
|
|||
services.mongodb.enable = mkDefault true;
|
||||
})
|
||||
|
||||
(mkIf cfg.pager.enable {
|
||||
systemd.services.graphitePager = {
|
||||
description = "Graphite Pager Alerting Daemon";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" "redis.service" ];
|
||||
environment = {
|
||||
REDIS_URL = cfg.pager.redisUrl;
|
||||
GRAPHITE_URL = cfg.pager.graphiteUrl;
|
||||
};
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.pythonPackages.graphitepager}/bin/graphite-pager --config ${pagerConfig}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
};
|
||||
};
|
||||
|
||||
services.redis.enable = mkDefault true;
|
||||
|
||||
environment.systemPackages = [ pkgs.pythonPackages.graphitepager ];
|
||||
})
|
||||
|
||||
(mkIf cfg.beacon.enable {
|
||||
systemd.services.graphite-beacon = {
|
||||
description = "Grpahite Beacon Alerting Daemon";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = ''
|
||||
${pkgs.pythonPackages.graphite_beacon}/bin/graphite-beacon \
|
||||
${pkgs.python3Packages.graphite_beacon}/bin/graphite-beacon \
|
||||
--config=${pkgs.writeText "graphite-beacon.json" (builtins.toJSON cfg.beacon.config)}
|
||||
'';
|
||||
User = "graphite";
|
||||
|
@ -630,7 +557,7 @@ in {
|
|||
(mkIf (
|
||||
cfg.carbon.enableCache || cfg.carbon.enableAggregator || cfg.carbon.enableRelay ||
|
||||
cfg.web.enable || cfg.api.enable ||
|
||||
cfg.seyren.enable || cfg.pager.enable || cfg.beacon.enable
|
||||
cfg.seyren.enable || cfg.beacon.enable
|
||||
) {
|
||||
users.users.graphite = {
|
||||
uid = config.ids.uids.graphite;
|
||||
|
|
|
@ -9,6 +9,8 @@ let
|
|||
mkdir -p $out/libexec/netdata/plugins.d
|
||||
ln -s /run/wrappers/bin/apps.plugin $out/libexec/netdata/plugins.d/apps.plugin
|
||||
ln -s /run/wrappers/bin/freeipmi.plugin $out/libexec/netdata/plugins.d/freeipmi.plugin
|
||||
ln -s /run/wrappers/bin/perf.plugin $out/libexec/netdata/plugins.d/perf.plugin
|
||||
ln -s /run/wrappers/bin/slabinfo.plugin $out/libexec/netdata/plugins.d/slabinfo.plugin
|
||||
'';
|
||||
|
||||
plugins = [
|
||||
|
@ -181,6 +183,22 @@ in {
|
|||
permissions = "u+rx,g+rx,o-rwx";
|
||||
};
|
||||
|
||||
security.wrappers."perf.plugin" = {
|
||||
source = "${cfg.package}/libexec/netdata/plugins.d/perf.plugin.org";
|
||||
capabilities = "cap_sys_admin+ep";
|
||||
owner = cfg.user;
|
||||
group = cfg.group;
|
||||
permissions = "u+rx,g+rx,o-rx";
|
||||
};
|
||||
|
||||
security.wrappers."slabinfo.plugin" = {
|
||||
source = "${cfg.package}/libexec/netdata/plugins.d/slabinfo.plugin.org";
|
||||
capabilities = "cap_dac_override+ep";
|
||||
owner = cfg.user;
|
||||
group = cfg.group;
|
||||
permissions = "u+rx,g+rx,o-rx";
|
||||
};
|
||||
|
||||
security.pam.loginLimits = [
|
||||
{ domain = "netdata"; type = "soft"; item = "nofile"; value = "10000"; }
|
||||
{ domain = "netdata"; type = "hard"; item = "nofile"; value = "30000"; }
|
||||
|
|
|
@ -44,35 +44,35 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
services.xserver.desktopManager.session = singleton {
|
||||
name = "mate";
|
||||
bgSupport = true;
|
||||
start = ''
|
||||
export XDG_MENU_PREFIX=mate-
|
||||
services.xserver.displayManager.sessionPackages = [
|
||||
pkgs.mate.mate-session-manager
|
||||
];
|
||||
|
||||
# Let caja find extensions
|
||||
export CAJA_EXTENSION_DIRS=$CAJA_EXTENSION_DIRS''${CAJA_EXTENSION_DIRS:+:}${config.system.path}/lib/caja/extensions-2.0
|
||||
services.xserver.displayManager.sessionCommands = ''
|
||||
if test "$XDG_CURRENT_DESKTOP" = "MATE"; then
|
||||
export XDG_MENU_PREFIX=mate-
|
||||
|
||||
# Let caja extensions find gsettings schemas
|
||||
${concatMapStrings (p: ''
|
||||
# Let caja find extensions
|
||||
export CAJA_EXTENSION_DIRS=$CAJA_EXTENSION_DIRS''${CAJA_EXTENSION_DIRS:+:}${config.system.path}/lib/caja/extensions-2.0
|
||||
|
||||
# Let caja extensions find gsettings schemas
|
||||
${concatMapStrings (p: ''
|
||||
if [ -d "${p}/lib/caja/extensions-2.0" ]; then
|
||||
${addToXDGDirs p}
|
||||
${addToXDGDirs p}
|
||||
fi
|
||||
'')
|
||||
config.environment.systemPackages
|
||||
}
|
||||
'') config.environment.systemPackages}
|
||||
|
||||
# Let mate-panel find applets
|
||||
export MATE_PANEL_APPLETS_DIR=$MATE_PANEL_APPLETS_DIR''${MATE_PANEL_APPLETS_DIR:+:}${config.system.path}/share/mate-panel/applets
|
||||
export MATE_PANEL_EXTRA_MODULES=$MATE_PANEL_EXTRA_MODULES''${MATE_PANEL_EXTRA_MODULES:+:}${config.system.path}/lib/mate-panel/applets
|
||||
# Add mate-control-center paths to some XDG variables because its schemas are needed by mate-settings-daemon, and mate-settings-daemon is a dependency for mate-control-center (that is, they are mutually recursive)
|
||||
${addToXDGDirs pkgs.mate.mate-control-center}
|
||||
fi
|
||||
'';
|
||||
|
||||
# Add mate-control-center paths to some XDG variables because its schemas are needed by mate-settings-daemon, and mate-settings-daemon is a dependency for mate-control-center (that is, they are mutually recursive)
|
||||
${addToXDGDirs pkgs.mate.mate-control-center}
|
||||
# Let mate-panel find applets
|
||||
environment.sessionVariables."MATE_PANEL_APPLETS_DIR" = "${config.system.path}/share/mate-panel/applets";
|
||||
environment.sessionVariables."MATE_PANEL_EXTRA_MODULES" = "${config.system.path}/lib/mate-panel/applets";
|
||||
|
||||
${pkgs.mate.mate-session-manager}/bin/mate-session ${optionalString cfg.debug "--debug"} &
|
||||
waitPID=$!
|
||||
'';
|
||||
};
|
||||
# Debugging
|
||||
environment.sessionVariables.MATE_SESSION_DEBUG = mkIf cfg.debug "1";
|
||||
|
||||
environment.systemPackages =
|
||||
pkgs.mate.basePackages ++
|
||||
|
|
|
@ -12,15 +12,19 @@ import ./make-test-python.nix ({ pkgs, ... } :
|
|||
virtualisation.memorySize = 1024;
|
||||
time.timeZone = "UTC";
|
||||
services.graphite = {
|
||||
web.enable = true;
|
||||
web = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
SECRET_KEY = "abcd";
|
||||
'';
|
||||
};
|
||||
api = {
|
||||
enable = true;
|
||||
port = 8082;
|
||||
finders = [ pkgs.python27Packages.influxgraph ];
|
||||
finders = [ pkgs.python3Packages.influxgraph ];
|
||||
};
|
||||
carbon.enableCache = true;
|
||||
seyren.enable = true;
|
||||
pager.enable = true;
|
||||
seyren.enable = false; # Implicitely requires openssl-1.0.2u which is marked insecure
|
||||
beacon.enable = true;
|
||||
};
|
||||
};
|
||||
|
@ -31,16 +35,16 @@ import ./make-test-python.nix ({ pkgs, ... } :
|
|||
one.wait_for_unit("default.target")
|
||||
one.wait_for_unit("graphiteWeb.service")
|
||||
one.wait_for_unit("graphiteApi.service")
|
||||
one.wait_for_unit("graphitePager.service")
|
||||
one.wait_for_unit("graphite-beacon.service")
|
||||
one.wait_for_unit("carbonCache.service")
|
||||
one.wait_for_unit("seyren.service")
|
||||
# The services above are of type "simple". systemd considers them active immediately
|
||||
# even if they're still in preStart (which takes quite long for graphiteWeb).
|
||||
# Wait for ports to open so we're sure the services are up and listening.
|
||||
one.wait_for_open_port(8080)
|
||||
one.wait_for_open_port(2003)
|
||||
one.succeed('echo "foo 1 `date +%s`" | nc -N localhost 2003')
|
||||
one.wait_until_succeeds("curl 'http://localhost:8080/metrics/find/?query=foo&format=treejson' --silent | grep foo >&2")
|
||||
one.wait_until_succeeds(
|
||||
"curl 'http://localhost:8080/metrics/find/?query=foo&format=treejson' --silent | grep foo >&2"
|
||||
)
|
||||
'';
|
||||
})
|
||||
|
|
|
@ -22,6 +22,27 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
|||
services.mysql.package = pkgs.mysql57;
|
||||
};
|
||||
|
||||
mysql80 =
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
# prevent oom:
|
||||
# Kernel panic - not syncing: Out of memory: compulsory panic_on_oom is enabled
|
||||
virtualisation.memorySize = 1024;
|
||||
|
||||
services.mysql.enable = true;
|
||||
services.mysql.initialDatabases = [
|
||||
{ name = "testdb"; schema = ./testdb.sql; }
|
||||
{ name = "empty_testdb"; }
|
||||
];
|
||||
# note that using pkgs.writeText here is generally not a good idea,
|
||||
# as it will store the password in world-readable /nix/store ;)
|
||||
services.mysql.initialScript = pkgs.writeText "mysql-init.sql" ''
|
||||
CREATE USER 'passworduser'@'localhost' IDENTIFIED BY 'password123';
|
||||
'';
|
||||
services.mysql.package = pkgs.mysql80;
|
||||
};
|
||||
|
||||
mariadb =
|
||||
{ pkgs, ... }:
|
||||
|
||||
|
@ -61,6 +82,12 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
|||
# ';' acts as no-op, just check whether login succeeds with the user created from the initialScript
|
||||
mysql.succeed("echo ';' | mysql -u passworduser --password=password123")
|
||||
|
||||
mysql80.wait_for_unit("mysql")
|
||||
mysql80.succeed("echo 'use empty_testdb;' | mysql -u root")
|
||||
mysql80.succeed("echo 'use testdb; select * from tests;' | mysql -u root -N | grep 4")
|
||||
# ';' acts as no-op, just check whether login succeeds with the user created from the initialScript
|
||||
mysql80.succeed("echo ';' | mysql -u passworduser --password=password123")
|
||||
|
||||
mariadb.wait_for_unit("mysql")
|
||||
mariadb.succeed(
|
||||
"echo 'use testdb; create table tests (test_id INT, PRIMARY KEY (test_id));' | sudo -u testuser mysql -u testuser"
|
||||
|
|
|
@ -1,25 +1,33 @@
|
|||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, libjack2
|
||||
, wrapQtAppsHook
|
||||
, qtsvg
|
||||
, qttools
|
||||
, cmake
|
||||
, libsndfile
|
||||
, libsamplerate
|
||||
, ladspaH
|
||||
, fluidsynth
|
||||
, alsaLib
|
||||
, rtaudio
|
||||
, lash
|
||||
, dssi
|
||||
, liblo
|
||||
, pkgconfig
|
||||
{ stdenv, fetchFromGitHub, cmake, pkgconfig, qttools, wrapQtAppsHook
|
||||
, alsaLib, dssi, fluidsynth, ladspaH, lash, libinstpatch, libjack2, liblo
|
||||
, libsamplerate, libsndfile, lilv, lrdf, lv2, qtsvg, rtaudio, rubberband, sord
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "muse-sequencer";
|
||||
version = "3.1pre1";
|
||||
version = "3.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "muse-sequencer";
|
||||
repo = "muse";
|
||||
rev = "muse_${builtins.replaceStrings ["."] ["_"] version}";
|
||||
sha256 = "08k25652w88xf2i79lw305x1phpk7idrww9jkqwcs8q6wzgmz8aq";
|
||||
};
|
||||
|
||||
sourceRoot = "source/muse3";
|
||||
|
||||
prePatch = ''
|
||||
chmod u+w $NIX_BUILD_TOP
|
||||
'';
|
||||
|
||||
patches = [ ./fix-parallel-building.patch ];
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig qttools wrapQtAppsHook ];
|
||||
|
||||
buildInputs = [
|
||||
alsaLib dssi fluidsynth ladspaH lash libinstpatch libjack2 liblo
|
||||
libsamplerate libsndfile lilv lrdf lv2 qtsvg rtaudio rubberband sord
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://www.muse-sequencer.org/";
|
||||
|
@ -32,38 +40,7 @@ stdenv.mkDerivation {
|
|||
MusE aims to be a complete multitrack virtual studio for Linux,
|
||||
it is published under the GNU General Public License.
|
||||
'';
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ orivej ];
|
||||
};
|
||||
|
||||
src =
|
||||
fetchFromGitHub {
|
||||
owner = "muse-sequencer";
|
||||
repo = "muse";
|
||||
rev = "2167ae053c16a633d8377acdb1debaac10932838";
|
||||
sha256 = "0rsdx8lvcbz5bapnjvypw8h8bq587s9z8cf2znqrk6ah38s6fsrf";
|
||||
};
|
||||
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
wrapQtAppsHook
|
||||
qttools
|
||||
cmake
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libjack2
|
||||
qtsvg
|
||||
libsndfile
|
||||
libsamplerate
|
||||
ladspaH
|
||||
fluidsynth
|
||||
alsaLib
|
||||
rtaudio
|
||||
lash
|
||||
dssi
|
||||
liblo
|
||||
];
|
||||
|
||||
sourceRoot = "source/muse3";
|
||||
}
|
||||
|
|
78
pkgs/applications/audio/muse/fix-parallel-building.patch
Normal file
78
pkgs/applications/audio/muse/fix-parallel-building.patch
Normal file
|
@ -0,0 +1,78 @@
|
|||
To confirm these dependencies, run in a fresh build tree:
|
||||
|
||||
|
||||
ninja muse/components/CMakeFiles/components.dir/confmport.o
|
||||
|
||||
In file included from ../muse/components/confmport.cpp:48:
|
||||
../muse/mplugins/midifilterimpl.h:28:10: fatal error:
|
||||
ui_midifilter.h: No such file or directory
|
||||
|
||||
|
||||
ninja muse/waveedit/CMakeFiles/waveedit.dir/wavecanvas.o
|
||||
|
||||
In file included from ../muse/waveedit/wavecanvas.cpp:72:
|
||||
../muse/components/copy_on_write.h:26:10: fatal error:
|
||||
ui_copy_on_write_base.h: No such file or directory
|
||||
|
||||
|
||||
ninja muse/instruments/CMakeFiles/instruments.dir/editinstrument.o
|
||||
|
||||
In file included from ../muse/instruments/editinstrument.cpp:58:
|
||||
../muse/components/editevent.h:26:10: fatal error:
|
||||
ui_editnotedialogbase.h: No such file or directory
|
||||
|
||||
|
||||
ninja muse/liste/CMakeFiles/liste.dir/listedit.o
|
||||
|
||||
In file included from ../muse/liste/listedit.cpp:37:
|
||||
../muse/components/editevent.h:26:10: fatal error:
|
||||
ui_editnotedialogbase.h: No such file or directory
|
||||
|
||||
|
||||
ninja muse/mixer/CMakeFiles/mixer.dir/rack.o
|
||||
|
||||
In file included from ../muse/mixer/rack.cpp:49:
|
||||
../muse/components/plugindialog.h:4:10: fatal error:
|
||||
ui_plugindialogbase.h: No such file or directory
|
||||
|
||||
|
||||
--- a/muse/components/CMakeLists.txt
|
||||
+++ b/muse/components/CMakeLists.txt
|
||||
@@ -343,4 +343,5 @@ set_target_properties( components
|
||||
target_link_libraries ( components
|
||||
${QT_LIBRARIES}
|
||||
+ mplugins
|
||||
widgets
|
||||
xml_module
|
||||
--- a/muse/waveedit/CMakeLists.txt
|
||||
+++ b/muse/waveedit/CMakeLists.txt
|
||||
@@ -79,4 +79,5 @@ set_target_properties( waveedit
|
||||
target_link_libraries( waveedit
|
||||
${QT_LIBRARIES}
|
||||
+ components
|
||||
widgets
|
||||
)
|
||||
--- a/muse/instruments/CMakeLists.txt
|
||||
+++ b/muse/instruments/CMakeLists.txt
|
||||
@@ -78,4 +78,5 @@ set_target_properties( instruments
|
||||
target_link_libraries ( instruments
|
||||
${QT_LIBRARIES}
|
||||
+ components
|
||||
icons
|
||||
widgets
|
||||
--- a/muse/liste/CMakeLists.txt
|
||||
+++ b/muse/liste/CMakeLists.txt
|
||||
@@ -65,4 +65,5 @@ set_target_properties( liste
|
||||
target_link_libraries ( liste
|
||||
${QT_LIBRARIES}
|
||||
+ components
|
||||
awl
|
||||
widgets
|
||||
--- a/muse/mixer/CMakeLists.txt
|
||||
+++ b/muse/mixer/CMakeLists.txt
|
||||
@@ -87,4 +87,5 @@ set_target_properties ( mixer
|
||||
target_link_libraries ( mixer
|
||||
${QT_LIBRARIES}
|
||||
+ components
|
||||
widgets
|
||||
)
|
|
@ -13,10 +13,10 @@ assert stdenv ? glibc;
|
|||
|
||||
let
|
||||
platform_major = "4";
|
||||
platform_minor = "14";
|
||||
year = "2019";
|
||||
month = "12";
|
||||
timestamp = "201912100610";
|
||||
platform_minor = "15";
|
||||
year = "2020";
|
||||
month = "03";
|
||||
timestamp = "${year}${month}050155";
|
||||
in rec {
|
||||
|
||||
buildEclipse = import ./build-eclipse.nix {
|
||||
|
@ -32,8 +32,8 @@ in rec {
|
|||
description = "Eclipse IDE for C/C++ Developers";
|
||||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
sha512 = "28h8z45j7zlcbvvabzsniwqls1lns21isx69y6l207a869rknp9vzg6506q6zalj9b49j8c7ynkn379xgbzp07i6zw3dzk3pqp2rgam";
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-incubation-linux-gtk-x86_64.tar.gz";
|
||||
sha512 = "2wy4a3p347fajr9zsfz1zlvz6jpy3vficdry27m5fs0azfmxmy2cfns5hh18sin4xqq3jvqppfqxh41rzcpcmiq12zhc6cz42brqgxw";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -45,7 +45,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
sha512 = "1g1zsz3c2kx4vs1mjpcisbk81lk4hsr1z2fw46lih825c53vwf59snp8d97c8yw2i25y0ml48nc1nskib6qnif8m2h6rpah7kgmi8ay";
|
||||
sha512 = "0qccsclay9000sqrymm8hkg70a4jcvd70vymw1kkxsklcs7dnrhch55an98gbzf9r0jgd1ap62a4hyxlnm6hdqqniwcgdza0i4nwwgj";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -57,7 +57,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
|
||||
sha512 = "05nsldw937l1g9fj964njivgkf2ipk1rh1jg5w8svdhpp3v1pp3iinfm2mz9kk8namwfkx8krsvsxcgvqyzgrkhf42wqh53vqrjf70h";
|
||||
sha512 = "01rv5x7qqm0a2p30828z2snms3nb2kjx9si63sr5rdkdgr3vbh6xq8n8fn757dqazmpz9zskmwxxmbxnwycfllhgb8msb77pcy3fpg7";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -87,7 +87,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
|
||||
sha512 = "0dcbxzjqc27v1faz16yxqcm6zrbna4kkd32xy7paadiwn125y6ijx8zvda4kc7bih6v5b9ch2i0z5ndra1lcjcc88z6cklh0vngjkh1";
|
||||
sha512 = "33ra8qslwz73240xzjvr751lpl94drlcf425a7kxngq1qla2cda7gxr71bxlr9fm2hrqq0h097ihmg0ix9hv2dmwnc76gp4hwwrlk41";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -99,7 +99,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
sha512 = "21lhgv3z23mn8q0gffgxlfwhyxb348zjnzv716zsys7h7kj5vigl45q9mz0qrl11524rxx7jwi901jjd4l258w9kp7wzlq0d5n1r39m";
|
||||
sha512 = "0ffa1q19z31j8i552mp9zg4v0p4iv002cvlzh49ia8hi0hgk75pbkp6vxlr75jz0as03n71f0ww8xbflji31qgwfmy6rs1rzqihfff9";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -254,12 +254,12 @@ rec {
|
|||
|
||||
cdt = buildEclipseUpdateSite rec {
|
||||
name = "cdt-${version}";
|
||||
version = "9.10.0";
|
||||
version = "9.11.0";
|
||||
|
||||
src = fetchzip {
|
||||
stripRoot = false;
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.10/${name}/${name}.zip";
|
||||
sha256 = "11nbrcvgbg9l3cmp3v3y8y0vldzcf6qlpp185a6dzabdcij6gz5m";
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.11/${name}/${name}.zip";
|
||||
sha256 = "1730w6rbv649nzfalfd10p2ph0z9rbrrcflga0n1dpmg181xh9lk";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -474,12 +474,12 @@ rec {
|
|||
|
||||
jdt = buildEclipseUpdateSite rec {
|
||||
name = "jdt-${version}";
|
||||
version = "4.14";
|
||||
version = "4.15";
|
||||
|
||||
src = fetchzip {
|
||||
stripRoot = false;
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.14-201912100610/org.eclipse.jdt-4.14.zip;
|
||||
sha256 = "1c2a23qviv58xljpq3yb37ra8cqw7jh52hmzqlg1nij2sdxb6hm5";
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-${version}-202003050155/org.eclipse.jdt-${version}.zip";
|
||||
sha256 = "1dm4qgfb6rm7w0dk8br071c7wy0ybp7zrwvr3i02c2bxzy2psz7q";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "dbeaver-ce";
|
||||
version = "7.0.0";
|
||||
version = "7.0.1";
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "dbeaver";
|
||||
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
|
||||
sha256 = "1fnvwndzny51z0zmdnlafdcxawsyz435g712mc4bjjj29qy0inzm";
|
||||
sha256 = "1kq0ingzfl6q2yz3y5nj9k35y9f1izg1idgbgvpz784gn7937m64";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://dbeaver.io/;
|
||||
homepage = "https://dbeaver.io/";
|
||||
description = "Universal SQL Client for developers, DBA and analysts. Supports MySQL, PostgreSQL, MariaDB, SQLite, and more";
|
||||
longDescription = ''
|
||||
Free multi-platform database tool for developers, SQL programmers, database
|
||||
|
|
|
@ -5,10 +5,10 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "jotta-cli";
|
||||
version = "0.6.21799";
|
||||
version = "0.6.24251";
|
||||
src = fetchzip {
|
||||
url = "https://repo.jotta.us/archives/linux/${arch}/jotta-cli-${version}_linux_${arch}.tar.gz";
|
||||
sha256 = "19axrcfmycmdfgphkfwl9qgwd9xj8g37gmwi4ynb45w7nhfid5vm";
|
||||
sha256 = "0f26fg5fqpz0f6jxp72cj5f2kf76jah5iaqlqsl87250y0hm330g";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,5 +1,16 @@
|
|||
{ buildPythonApplication, lib, fetchFromGitHub
|
||||
, dateutil, pyyaml, openpyxl, xlrd, h5py, fonttools, lxml, pandas, pyshp
|
||||
{ buildPythonApplication
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, dateutil
|
||||
, pyyaml
|
||||
, openpyxl
|
||||
, xlrd
|
||||
, h5py
|
||||
, fonttools
|
||||
, lxml
|
||||
, pandas
|
||||
, pyshp
|
||||
, setuptools
|
||||
}:
|
||||
buildPythonApplication rec {
|
||||
pname = "visidata";
|
||||
|
@ -12,16 +23,26 @@ buildPythonApplication rec {
|
|||
sha256 = "19gs8i6chrrwibz706gib5sixx1cjgfzh7v011kp3izcrn524mc0";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [dateutil pyyaml openpyxl xlrd h5py fonttools
|
||||
lxml pandas pyshp ];
|
||||
propagatedBuildInputs = [
|
||||
dateutil
|
||||
pyyaml
|
||||
openpyxl
|
||||
xlrd
|
||||
h5py
|
||||
fonttools
|
||||
lxml
|
||||
pandas
|
||||
pyshp
|
||||
setuptools
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
inherit version;
|
||||
description = "Interactive terminal multitool for tabular data";
|
||||
license = lib.licenses.gpl3 ;
|
||||
maintainers = [lib.maintainers.raskin];
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = [ lib.maintainers.raskin ];
|
||||
platforms = lib.platforms.linux;
|
||||
homepage = "http://visidata.org/";
|
||||
};
|
||||
|
|
|
@ -3,14 +3,14 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xterm-351";
|
||||
name = "xterm-353";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"ftp://ftp.invisible-island.net/xterm/${name}.tgz"
|
||||
"https://invisible-mirror.net/archives/xterm/${name}.tgz"
|
||||
];
|
||||
sha256 = "05kf586my4irrzz2bxgmwjdvynyrg9ybhvfqmx29g70w4888l2kn";
|
||||
sha256 = "0s5pkfn4r8iy09s1q1y78zhnr9f3sm6wgbqir7azaqggkppd68g5";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
|
|
@ -26,7 +26,7 @@ in buildGoPackage rec {
|
|||
sha256 = "0gvf5k1gm81xxg7ha309kgfkgl5357dli0fbc4z01rmfgbl0rfa0";
|
||||
};
|
||||
|
||||
buildInputs = [ go-bindata ];
|
||||
nativeBuildInputs = [ go-bindata ];
|
||||
|
||||
# embed the web extension in a go file and place it where it's supposed to
|
||||
# be. See
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
, xdg_utils, yasm, minizip, libwebp
|
||||
, libusb1, pciutils, nss, re2, zlib
|
||||
|
||||
, python2Packages, perl, pkgconfig, clang-tools
|
||||
, python2Packages, perl, pkgconfig
|
||||
, nspr, systemd, kerberos
|
||||
, utillinux, alsaLib
|
||||
, bison, gperf
|
||||
|
@ -104,8 +104,6 @@ let
|
|||
result
|
||||
else result;
|
||||
|
||||
llvm-clang-tools = clang-tools.override { inherit llvmPackages; };
|
||||
|
||||
base = rec {
|
||||
name = "${packageName}-unwrapped-${version}";
|
||||
inherit (upstream-info) channel version;
|
||||
|
@ -151,6 +149,8 @@ let
|
|||
] ++ optionals (useVaapi) [
|
||||
# source: https://aur.archlinux.org/cgit/aur.git/tree/vaapi-fix.patch?h=chromium-vaapi
|
||||
./patches/vaapi-fix.patch
|
||||
# fix race condition in the interaction with pulseaudio
|
||||
./patches/webrtc-pulse.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -216,8 +216,6 @@ let
|
|||
ln -s ${stdenv.cc}/bin/clang third_party/llvm-build/Release+Asserts/bin/clang
|
||||
ln -s ${stdenv.cc}/bin/clang++ third_party/llvm-build/Release+Asserts/bin/clang++
|
||||
ln -s ${llvmPackages.llvm}/bin/llvm-ar third_party/llvm-build/Release+Asserts/bin/llvm-ar
|
||||
'' + optionalString (stdenv.lib.versionAtLeast version "82") ''
|
||||
ln -s ${llvm-clang-tools}/bin/clang-format buildtools/linux64/clang-format
|
||||
'';
|
||||
|
||||
gnFlags = mkGnFlags ({
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
From 704dc99bd05a94eb61202e6127df94ddfd571e85 Mon Sep 17 00:00:00 2001
|
||||
From: Dale Curtis <dalecurtis@chromium.org>
|
||||
Date: Mon, 02 Mar 2020 22:12:22 +0000
|
||||
Subject: [PATCH] Hold PulseAudio mainloop lock while querying input device info.
|
||||
|
||||
a22cc23955cb3d58b7525c5103314226b3ce0137 moved this section out of
|
||||
UpdateNativeAudioHardwareInfo(), but forgot to bring the lock along.
|
||||
|
||||
R=guidou
|
||||
|
||||
Bug: 1043040
|
||||
Change-Id: I5b17a2cf0ad55d61c0811db1dae7045af4a91370
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2083814
|
||||
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
|
||||
Commit-Queue: Guido Urdaneta <guidou@chromium.org>
|
||||
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
|
||||
Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#746115}
|
||||
---
|
||||
|
||||
diff --git a/media/audio/pulse/audio_manager_pulse.cc b/media/audio/pulse/audio_manager_pulse.cc
|
||||
index 90e9317..829846f 100644
|
||||
--- a/media/audio/pulse/audio_manager_pulse.cc
|
||||
+++ b/media/audio/pulse/audio_manager_pulse.cc
|
||||
@@ -104,22 +104,27 @@
|
||||
|
||||
AudioParameters AudioManagerPulse::GetInputStreamParameters(
|
||||
const std::string& device_id) {
|
||||
- int user_buffer_size = GetUserBufferSize();
|
||||
- int buffer_size =
|
||||
- user_buffer_size ? user_buffer_size : kDefaultInputBufferSize;
|
||||
-
|
||||
UpdateNativeAudioHardwareInfo();
|
||||
- auto* operation = pa_context_get_source_info_by_name(
|
||||
- input_context_, default_source_name_.c_str(), DefaultSourceInfoCallback,
|
||||
- this);
|
||||
- WaitForOperationCompletion(input_mainloop_, operation, input_context_);
|
||||
+
|
||||
+ {
|
||||
+ AutoPulseLock auto_lock(input_mainloop_);
|
||||
+ auto* operation = pa_context_get_source_info_by_name(
|
||||
+ input_context_, default_source_name_.c_str(), DefaultSourceInfoCallback,
|
||||
+ this);
|
||||
+ WaitForOperationCompletion(input_mainloop_, operation, input_context_);
|
||||
+ }
|
||||
|
||||
// We don't want to accidentally open a monitor device, so return invalid
|
||||
- // parameters for those.
|
||||
+ // parameters for those. Note: The value of |default_source_is_monitor_|
|
||||
+ // depends on the the call to pa_context_get_source_info_by_name() above.
|
||||
if (device_id == AudioDeviceDescription::kDefaultDeviceId &&
|
||||
default_source_is_monitor_) {
|
||||
return AudioParameters();
|
||||
}
|
||||
+
|
||||
+ const int user_buffer_size = GetUserBufferSize();
|
||||
+ const int buffer_size =
|
||||
+ user_buffer_size ? user_buffer_size : kDefaultInputBufferSize;
|
||||
return AudioParameters(AudioParameters::AUDIO_PCM_LOW_LATENCY,
|
||||
CHANNEL_LAYOUT_STEREO,
|
||||
native_input_sample_rate_ ? native_input_sample_rate_
|
|
@ -18,8 +18,8 @@ let
|
|||
inherit sha256;
|
||||
};
|
||||
|
||||
buildInputs = [go-bindata];
|
||||
subPackages = ["cmd/kops"];
|
||||
nativeBuildInputs = [ go-bindata ];
|
||||
subPackages = [ "cmd/kops" ];
|
||||
|
||||
buildFlagsArray = ''
|
||||
-ldflags=
|
||||
|
@ -43,7 +43,7 @@ let
|
|||
description = "Easiest way to get a production Kubernetes up and running";
|
||||
homepage = https://github.com/kubernetes/kops;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [offline zimbatm kampka];
|
||||
maintainers = with maintainers; [ offline zimbatm kampka ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
} // attrs';
|
||||
|
@ -60,7 +60,7 @@ in rec {
|
|||
version = "1.13.2";
|
||||
sha256 = "0lkkg34vn020r62ga8vg5d3a8jwvq00xlv3p1s01nkz33f6salng";
|
||||
};
|
||||
|
||||
|
||||
kops_1_14 = mkKops {
|
||||
version = "1.14.1";
|
||||
sha256 = "0ikd8qwrjh8s1sc95g18sm0q6p33swz2m1rjd8zw34mb2w9jv76n";
|
||||
|
|
|
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0caqczz8hrwqb8j94158hz6919i7c9v1v0zknh9m2zbbng4b1awi";
|
||||
};
|
||||
|
||||
buildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
|
||||
nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
|
||||
|
||||
outputs = ["out" "man" "pause"];
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
, buildGoPackage
|
||||
, fetchFromGitHub
|
||||
, callPackage
|
||||
, buildGo112Module
|
||||
, Security
|
||||
}:
|
||||
let
|
||||
|
@ -26,11 +25,7 @@ let
|
|||
in
|
||||
{
|
||||
elasticsearch = callPackage ./elasticsearch {
|
||||
# Version 0.7.0 fails to build with go 1.13 due to dependencies:
|
||||
# verifying git.apache.org/thrift.git@v0.12.0/go.mod: git.apache.org/thrift.git@v0.12.0/go.mod: Get https://sum.golang.org/lookup/git.apache.org/thrift.git@v0.12.0: dial tcp: lookup sum.golang.org on [::1]:53: read udp [::1]:52968->[::1]:53: read: connection refused
|
||||
# verifying github.com/hashicorp/terraform@v0.12.0/go.mod: github.com/hashicorp/terraform@v0.12.0/go.mod: Get https://sum.golang.org/lookup/github.com/hashicorp/terraform@v0.12.0: dial tcp: lookup sum.golang.org on [::1]:53: read udp [::1]:52968->[::1]:53: read: connection refused
|
||||
buildGoModule = buildGo112Module;
|
||||
inherit Security;
|
||||
inherit Security;
|
||||
};
|
||||
gandi = callPackage ./gandi {};
|
||||
ibm = callPackage ./ibm {};
|
||||
|
|
|
@ -30,7 +30,9 @@ buildGoPackage rec {
|
|||
sha256 = "1l2n97nj6g44n7bhnbjwmv36xi6754p4iq2qnpkdh39x4384a0zz";
|
||||
};
|
||||
|
||||
buildInputs = [ libvirt pkgconfig makeWrapper ];
|
||||
nativeBuildInputs = [ pkgconfig makeWrapper ];
|
||||
|
||||
buildInputs = [ libvirt ];
|
||||
|
||||
# mkisofs needed to create ISOs holding cloud-init data,
|
||||
# and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630
|
||||
|
@ -48,4 +50,3 @@ buildGoPackage rec {
|
|||
maintainers = with maintainers; [ mic92 ];
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -14,7 +14,9 @@ buildGoPackage rec {
|
|||
sha256 = "1g8nf56j17rdhhj7pv3ha1rb2mfc0mdvyzl35pgcki08w7iw08j3";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig wrapGAppsHook glib cairo gdk-pixbuf gtk3 gnome3.adwaita-icon-theme ];
|
||||
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
|
||||
|
||||
buildInputs = [ glib cairo gdk-pixbuf gtk3 gnome3.adwaita-icon-theme ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "a safe and secure chat client";
|
||||
|
|
|
@ -3,18 +3,18 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "0.7.3";
|
||||
version = "0.7.4";
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "rambox";
|
||||
inherit version;
|
||||
src = {
|
||||
x86_64-linux = fetchurl {
|
||||
url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-amd64.deb";
|
||||
sha256 = "09v8zlayas906zhqy2aw4wkvyl87ykr09sjf0nmgmf69piwmjgg6";
|
||||
sha256 = "0m9627bcwfg9aximv7ifsmspm8xi231pcnnd4p46lahb2qp19vbd";
|
||||
};
|
||||
i686-linux = fetchurl {
|
||||
url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-i386.deb";
|
||||
sha256 = "0gv4pf3vhrw4xyccm24ivv92d9qy4zpwsh0m82ib1w764lyxmyrz";
|
||||
sha256 = "162p6x400w3pny38adinp53rcifvbkjbs12cwrpf7s3b0yml8qxr";
|
||||
};
|
||||
}.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
|
||||
|
||||
|
@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
|
|||
description = "Free and Open Source messaging and emailing app that combines common web applications into one";
|
||||
homepage = http://rambox.pro;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.gnidorah ];
|
||||
maintainers = with maintainers; [ gnidorah ma27 ];
|
||||
platforms = ["i686-linux" "x86_64-linux"];
|
||||
hydraPlatforms = [];
|
||||
};
|
||||
|
|
|
@ -13,13 +13,13 @@ with stdenv.lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "remmina";
|
||||
version = "1.3.10";
|
||||
version = "1.4.1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "Remmina";
|
||||
repo = "Remmina";
|
||||
rev = "v${version}";
|
||||
sha256 = "0gc7b88129avl9sbax3ncvm7zf2qvq35ixvvpr2zj74g3qnphl08";
|
||||
sha256 = "084yw0fd3qmzzd6xinhf4plv5bg8gfj4jnfac7zi1nif8zilf456";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja pkgconfig wrapGAppsHook ];
|
||||
|
@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = {
|
||||
license = licenses.gpl2;
|
||||
homepage = https://gitlab.com/Remmina/Remmina;
|
||||
homepage = "https://gitlab.com/Remmina/Remmina";
|
||||
description = "Remote desktop client written in GTK";
|
||||
maintainers = with maintainers; [ melsigl ryantm ];
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lean";
|
||||
version = "3.7.0";
|
||||
version = "3.7.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leanprover-community";
|
||||
repo = "lean";
|
||||
rev = "v${version}";
|
||||
sha256 = "1khy41zv4bjbpy3949j7y7d4qal53w4679iqlhm2l8jxd7y46nvi";
|
||||
sha256 = "0d9lz0mbxyaaykkvk2p8w2hcif9cx0ksihgh7qhxf417bz6msgc1";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "git-machete";
|
||||
version = "2.13.5";
|
||||
version = "2.13.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1ll5l1f3vcib9a8qsqm8bfzz4g4q1dnr389x7x26kl13n6a50wib";
|
||||
sha256 = "0n07gm05676vgfh6vlym59jwwzym9xmibhr0zpf0drlx02fr47qy";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ installShellFiles pbr ];
|
||||
|
@ -25,7 +25,7 @@ buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
homepage = https://github.com/VirtusLab/git-machete;
|
||||
description = "Git repository organizer and rebase workflow automation tool";
|
||||
description = "Git repository organizer and rebase/merge workflow automation tool";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.blitz ];
|
||||
|
|
|
@ -29,8 +29,9 @@ buildGoPackage rec {
|
|||
substituteInPlace modules/setting/setting.go --subst-var data
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ optional pamSupport pam;
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = optional pamSupport pam;
|
||||
|
||||
preBuild = let
|
||||
tags = optional pamSupport "pam"
|
||||
|
|
|
@ -24,8 +24,9 @@ buildGoPackage rec {
|
|||
substituteInPlace pkg/setting/setting.go --subst-var data
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ optional pamSupport pam;
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = optional pamSupport pam;
|
||||
|
||||
buildFlags = [ "-tags" ];
|
||||
|
||||
|
|
|
@ -37,13 +37,13 @@ let
|
|||
inherit (stdenv.lib) optional optionals;
|
||||
in mkDerivation rec {
|
||||
pname = "obs-studio";
|
||||
version = "25.0.0";
|
||||
version = "25.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "obsproject";
|
||||
repo = "obs-studio";
|
||||
rev = version;
|
||||
sha256 = "1xbvj69zk1x2sv39wqjp5s929c61szn32d3d0ykhxr6jxb0sih4w";
|
||||
sha256 = "12c2p179fijz5606h3bp4g88479gwgr7d5f8vk6j2n0rlzs76nsn";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
|
|
@ -2,26 +2,17 @@
|
|||
, doxygen, python3Packages, libopenshot
|
||||
, wrapGAppsHook, gtk3 }:
|
||||
|
||||
let
|
||||
fixPermissions = fetchpatch rec {
|
||||
url = https://github.com/OpenShot/openshot-qt/pull/2973.patch;
|
||||
sha256 = "037rh0p3k4sdzprlpyb73byjq3qhqk5zd0d4iin6bq602r8bbp0n";
|
||||
};
|
||||
in
|
||||
|
||||
mkDerivationWith python3Packages.buildPythonApplication rec {
|
||||
pname = "openshot-qt";
|
||||
version = "2.4.4";
|
||||
version = "2.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpenShot";
|
||||
repo = "openshot-qt";
|
||||
rev = "v${version}";
|
||||
sha256 = "0mg63v36h7l8kv2sgf6x8c1n3ygddkqqwlciz7ccxpbm4x1idqba";
|
||||
sha256 = "0qc5i0ay6j2wab1whl41sjb71cj02pg6y79drf7asrprq8b2rmfq";
|
||||
};
|
||||
|
||||
patches = [ fixPermissions ];
|
||||
|
||||
nativeBuildInputs = [ doxygen wrapGAppsHook ];
|
||||
|
||||
buildInputs = [ gtk3 ];
|
||||
|
|
|
@ -3,13 +3,13 @@
|
|||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libopenshot-audio";
|
||||
version = "0.1.8";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpenShot";
|
||||
repo = "libopenshot-audio";
|
||||
rev = "v${version}";
|
||||
sha256 = "1fvp6nmf30xzkmcznakh8dv5vn9d7nq051pqcqv638hsfppkmcrl";
|
||||
sha256 = "13if0m5mvlqly8gmbhschzb9papkgp3yqivklhb949dhy16m8zgf";
|
||||
};
|
||||
|
||||
nativeBuildInputs =
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libopenshot";
|
||||
version = "0.2.3";
|
||||
version = "0.2.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpenShot";
|
||||
repo = "libopenshot";
|
||||
rev = "v${version}";
|
||||
sha256 = "0r1qmr8ar5n72603xkj9h065vbpznrqsq88kxxmn9n8djyyvk03k";
|
||||
sha256 = "1mxjkgjmjzgf628y3rscc6rqf55hxgjpmvwxlncfk1216i5xskwp";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
|
|
@ -1,21 +1,26 @@
|
|||
{ stdenv, fetchurl, lib, vdr
|
||||
, libav, libcap, libvdpau
|
||||
, xineLib, libjpeg, libextractor, mesa, libGLU
|
||||
, xineLib, libjpeg, libextractor, libglvnd, libGLU
|
||||
, libX11, libXext, libXrender, libXrandr
|
||||
, makeWrapper
|
||||
}: let
|
||||
name = "vdr-xineliboutput-2.1.0";
|
||||
|
||||
makeXinePluginPath = l: lib.concatStringsSep ":" (map (p: "${p}/lib/xine/plugins") l);
|
||||
|
||||
self = stdenv.mkDerivation {
|
||||
inherit name;
|
||||
self = stdenv.mkDerivation rec {
|
||||
pname = "vdr-xineliboutput";
|
||||
version = "2.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/xineliboutput/xineliboutput/${name}/${name}.tgz";
|
||||
sha256 = "1phrxpaz8li7z0qy241spawalhcmwkv5hh3gdijbv4h7mm899yba";
|
||||
url = "mirror://sourceforge/project/xineliboutput/xineliboutput/${pname}-${version}/${pname}-${version}.tgz";
|
||||
sha256 = "0a24hs5nr7ncf51c5agyfn1xrvb4p70y3i0s6dlyyd9bwbfjldns";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# pkg-config is called with opengl, which do not contain needed glx symbols
|
||||
substituteInPlace configure \
|
||||
--replace "X11 opengl" "X11 gl"
|
||||
'';
|
||||
|
||||
# configure don't accept argument --prefix
|
||||
dontAddPrefix = true;
|
||||
|
||||
|
@ -40,13 +45,13 @@
|
|||
libcap
|
||||
libextractor
|
||||
libjpeg
|
||||
libglvnd
|
||||
libGLU
|
||||
libvdpau
|
||||
libXext
|
||||
libXrandr
|
||||
libXrender
|
||||
libX11
|
||||
mesa
|
||||
vdr
|
||||
xineLib
|
||||
];
|
||||
|
|
|
@ -16,7 +16,10 @@ buildGoPackage rec {
|
|||
goPackagePath = "github.com/containerd/containerd";
|
||||
outputs = [ "bin" "out" "man" ];
|
||||
|
||||
buildInputs = [ btrfs-progs go-md2man utillinux ];
|
||||
nativeBuildInputs = [ go-md2man utillinux ];
|
||||
|
||||
buildInputs = [ btrfs-progs ];
|
||||
|
||||
buildFlags = [ "VERSION=v${version}" ];
|
||||
|
||||
BUILDTAGS = []
|
||||
|
|
|
@ -27,8 +27,8 @@ buildGoPackage rec {
|
|||
goPackagePath = "github.com/sylabs/singularity";
|
||||
goDeps = ./deps.nix;
|
||||
|
||||
buildInputs = [ openssl ];
|
||||
nativeBuildInputs = [ removeReferencesTo utillinux which makeWrapper ];
|
||||
buildInputs = [ openssl utillinux ];
|
||||
nativeBuildInputs = [ removeReferencesTo which makeWrapper ];
|
||||
propagatedBuildInputs = [ coreutils squashfsTools ];
|
||||
|
||||
prePatch = ''
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ stdenv, ocaml, findlib, dune, opaline }:
|
||||
{ stdenv, ocaml, findlib, dune, dune_2, opaline }:
|
||||
|
||||
{ pname, version, buildInputs ? [], ... }@args:
|
||||
|
||||
let Dune = if args.useDune2 or false then dune_2 else dune; in
|
||||
|
||||
if args ? minimumOCamlVersion &&
|
||||
! stdenv.lib.versionAtLeast ocaml.version args.minimumOCamlVersion
|
||||
then throw "${pname}-${version} is not available for OCaml ${ocaml.version}"
|
||||
|
@ -29,7 +31,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
|
||||
buildInputs = [ ocaml dune findlib ] ++ buildInputs;
|
||||
buildInputs = [ ocaml Dune findlib ] ++ buildInputs;
|
||||
|
||||
meta = (args.meta or {}) // { platforms = args.meta.platforms or ocaml.meta.platforms; };
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "greybird";
|
||||
version = "3.22.11";
|
||||
version = "3.22.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shimmerproject";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "00x7dcjldph9k0nmvc8hyh3k4lhbmwk791rywd89ry6jivrx40pc";
|
||||
sha256 = "1j66ddvl3pmwh2v8ajm8r5g5nbsr7r262ff1qn2nf3i0gy8b3lq8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -8,6 +8,7 @@ lib.makeScope pkgs.newScope (self: with self; {
|
|||
cinnamon-settings-daemon = callPackage ./cinnamon-settings-daemon { };
|
||||
cjs = callPackage ./cjs { };
|
||||
nemo = callPackage ./nemo { };
|
||||
mint-themes = callPackage ./mint-themes { };
|
||||
muffin = callPackage ./muffin { };
|
||||
xapps = callPackage ./xapps { };
|
||||
})
|
||||
|
|
41
pkgs/desktops/cinnamon/mint-themes/default.nix
Normal file
41
pkgs/desktops/cinnamon/mint-themes/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{ fetchFromGitHub
|
||||
, stdenv
|
||||
, python3
|
||||
, sassc
|
||||
, sass
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mint-themes";
|
||||
version = "1.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxmint";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0a8f2cmcl00y4607v5qr2zdcdjc0z74ixm2yakscvw6qzgsh9fac";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
python3
|
||||
sassc
|
||||
sass
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
mv usr/share $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://github.com/linuxmint/mint-themes";
|
||||
description = "Mint-X and Mint-Y themes for the cinnamon desktop";
|
||||
license = licenses.gpl3; # from debian/copyright
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.mkg20001 ];
|
||||
};
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, fetchurl, pkgconfig, gettext, xtrans, dbus-glib, systemd,
|
||||
libSM, libXtst, gtk3, epoxy, polkit, hicolor-icon-theme, mate,
|
||||
wrapGAppsHook
|
||||
wrapGAppsHook, fetchpatch
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "01scj5d1xlri9b2id8gm9kfni9nzhdjdf7rag7fvcxwqp7baz3h3";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# allow turning on debugging from environment variable
|
||||
(fetchpatch {
|
||||
url = "https://github.com/mate-desktop/mate-session-manager/commit/3ab6fbfc811d00100d7a2959f8bbb157b536690d.patch";
|
||||
sha256 = "0yjaklq0mp44clymyhy240kxlw95z3azmravh4f5pfm9dys33sg0";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
gettext
|
||||
|
@ -33,6 +41,14 @@ stdenv.mkDerivation rec {
|
|||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace $out/share/xsessions/mate.desktop \
|
||||
--replace "Exec=mate-session" "Exec=$out/bin/mate-session" \
|
||||
--replace "TryExec=mate-session" "TryExec=$out/bin/mate-session"
|
||||
'';
|
||||
|
||||
passthru.providedSessions = [ "mate" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "MATE Desktop session manager";
|
||||
homepage = "https://github.com/mate-desktop/mate-session-manager";
|
||||
|
|
|
@ -11,7 +11,7 @@ let
|
|||
in
|
||||
|
||||
{ stdenv, fetchurl, ncurses, buildEnv
|
||||
, libX11, xorgproto, useX11 ? safeX11 stdenv
|
||||
, libX11, xorgproto, useX11 ? safeX11 stdenv && !stdenv.lib.versionAtLeast version "4.09"
|
||||
, aflSupport ? false
|
||||
, flambdaSupport ? false
|
||||
}:
|
||||
|
|
|
@ -6,18 +6,18 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rgbds";
|
||||
version = "0.3.9";
|
||||
version = "0.3.10";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rednex";
|
||||
repo = "rgbds";
|
||||
rev = "v${version}";
|
||||
sha256 = "0pzd9ig3ahpgq7jbj82grllxx1v01d620insr2m8h0c6jj25n5hv";
|
||||
sha256 = "0752fbffxgxyf3jw2iij88l05dqhppgcxy7dvk82hp4wdg4cflpq";
|
||||
};
|
||||
nativeBuildInputs = [ bison flex pkg-config libpng ];
|
||||
installFlags = [ "PREFIX=\${out}" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://rednex.github.io/rgbds/;
|
||||
homepage = "https://rednex.github.io/rgbds/";
|
||||
description = "A free assembler/linker package for the Game Boy and Game Boy Color";
|
||||
license = licenses.mit;
|
||||
longDescription =
|
||||
|
|
|
@ -49,6 +49,8 @@
|
|||
# - JIT compiler for loops:
|
||||
, enableJIT ? false
|
||||
, llvm ? null
|
||||
, libiconv
|
||||
, darwin
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -107,10 +109,13 @@ stdenv.mkDerivation rec {
|
|||
++ (stdenv.lib.optional (gnuplot != null) gnuplot)
|
||||
++ (stdenv.lib.optional (python != null) python)
|
||||
++ (stdenv.lib.optionals (!stdenv.isDarwin) [ libGL libGLU libX11 ])
|
||||
++ (stdenv.lib.optionals (stdenv.isDarwin) [ libiconv
|
||||
darwin.apple_sdk.frameworks.Accelerate
|
||||
darwin.apple_sdk.frameworks.Cocoa ])
|
||||
;
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
gfortran
|
||||
gfortran
|
||||
# Listed here as well because it's outputs are split
|
||||
fftw
|
||||
fftwSinglePrec
|
||||
|
@ -135,6 +140,7 @@ stdenv.mkDerivation rec {
|
|||
"--with-blas=openblas"
|
||||
"--with-lapack=openblas"
|
||||
]
|
||||
++ (if stdenv.isDarwin then [ "--enable-link-all-dependencies" ] else [ ])
|
||||
++ stdenv.lib.optionals enableReadline [ "--enable-readline" ]
|
||||
++ stdenv.lib.optionals openblas.blas64 [ "--enable-64" ]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ "--with-x=no" ]
|
||||
|
@ -161,7 +167,7 @@ stdenv.mkDerivation rec {
|
|||
# https://savannah.gnu.org/bugs/?func=detailitem&item_id=56425 is the best attempt to fix JIT
|
||||
broken = enableJIT;
|
||||
platforms = if overridePlatforms == null then
|
||||
(with stdenv.lib.platforms; linux ++ darwin)
|
||||
(with stdenv.lib; platforms.linux ++ platforms.darwin)
|
||||
else overridePlatforms;
|
||||
};
|
||||
}
|
||||
|
|
29
pkgs/development/libraries/audio/libinstpatch/default.nix
Normal file
29
pkgs/development/libraries/audio/libinstpatch/default.nix
Normal file
|
@ -0,0 +1,29 @@
|
|||
{ stdenv, fetchFromGitHub, cmake, pkg-config, glib, libsndfile }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libinstpatch";
|
||||
version = "1.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "swami";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0ksilyszcm7mwb6m8qyrgalvh4h2vkyz7wzj0xczcqkj15bcl4lw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
|
||||
propagatedBuildInputs = [ glib libsndfile ]; # Both are needed for includes.
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIB_SUFFIX=" # Install in $out/lib.
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.swamiproject.org/;
|
||||
description = "MIDI instrument patch files support library";
|
||||
license = licenses.lgpl21;
|
||||
maintainers = with maintainers; [ orivej ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -9,8 +9,11 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1p3hafsxgs5d4za7n66lf5nz74qssfqpmk520cm7iq2njvvlqm2z";
|
||||
};
|
||||
|
||||
patches = [ ./lilv-pkgconfig.patch ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig python3 wafHook ];
|
||||
buildInputs = [ lv2 serd sord sratom ];
|
||||
buildInputs = [ serd sord sratom ];
|
||||
propagatedBuildInputs = [ lv2 ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://drobilla.net/software/lilv;
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
--- a/lilv.pc.in
|
||||
+++ b/lilv.pc.in
|
||||
@@ -9 +9,2 @@ Description: Simple C library for hosting LV2 plugins
|
||||
-Requires: @LILV_PKG_DEPS@
|
||||
+Requires: lv2
|
||||
+Requires.private: @LILV_PKG_DEPS@
|
|
@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1pglnjz907ajlhnlnig3p0sx7hdkpggr8ss7b3wzf1lykzgv9l52";
|
||||
};
|
||||
|
||||
patches = [ ./rtaudio-pkgconfig.patch ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ autoconf automake libtool libjack2 alsaLib pulseaudio rtmidi ];
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
--- a/rtaudio.pc.in
|
||||
+++ b/rtaudio.pc.in
|
||||
@@ -9 +9 @@ Version: @PACKAGE_VERSION@
|
||||
-Requires: @req@
|
||||
+Requires.private: @req@
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "hiredis";
|
||||
version = "0.14.0";
|
||||
version = "0.14.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "redis";
|
||||
repo = "hiredis";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ik38lwpmm780jqrry95ckf6flmvd172444p3q8d1k9n99jwij9c";
|
||||
sha256 = "1r93ssniiv610pj6d78i1cngism0cdv2k8cmzy7jf9klf76jiwfq";
|
||||
};
|
||||
|
||||
PREFIX = "\${out}";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/redis/hiredis;
|
||||
homepage = "https://github.com/redis/hiredis";
|
||||
description = "Minimalistic C client for Redis >= 1.2";
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
|
|
|
@ -10,7 +10,8 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig python3 wafHook ];
|
||||
buildInputs = [ serd pcre ];
|
||||
buildInputs = [ pcre ];
|
||||
propagatedBuildInputs = [ serd ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://drobilla.net/software/sord;
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
buildDunePackage rec {
|
||||
pname = "dune-configurator";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
inherit (dune_2) src version;
|
||||
|
||||
dontAddPrefix = true;
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
buildDunePackage rec {
|
||||
pname = "dune-private-libs";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
inherit (dune_2) src version;
|
||||
|
||||
dontAddPrefix = true;
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
{ stdenv, buildDune2Package, fetchFromGitHub, ctypes, libcxx }:
|
||||
{ stdenv, buildDunePackage, fetchFromGitHub, ctypes, libcxx }:
|
||||
|
||||
buildDune2Package rec {
|
||||
buildDunePackage rec {
|
||||
pname = "eigen";
|
||||
version = "0.2.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "owlbarn";
|
||||
repo = pname;
|
||||
|
|
23
pkgs/development/ocaml-modules/graphics/default.nix
Normal file
23
pkgs/development/ocaml-modules/graphics/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, fetchurl, buildDunePackage, dune-configurator, libX11 }:
|
||||
|
||||
buildDunePackage rec {
|
||||
|
||||
pname = "graphics";
|
||||
version = "5.1.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml/graphics/releases/download/${version}/graphics-${version}.tbz";
|
||||
sha256 = "16z997mp0ccilaqqvmz3wp7vx0ghaf4ik9qklgd4piklcl1yv5n5";
|
||||
};
|
||||
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ libX11 ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/ocaml/graphics";
|
||||
description = "A set of portable drawing primitives";
|
||||
license = lib.licenses.lgpl2;
|
||||
};
|
||||
}
|
|
@ -1,9 +1,11 @@
|
|||
{ stdenv, buildDune2Package, fetchFromGitHub, stdlib-shims }:
|
||||
{ stdenv, buildDunePackage, fetchFromGitHub, stdlib-shims }:
|
||||
|
||||
buildDune2Package rec {
|
||||
buildDunePackage rec {
|
||||
pname = "owl-base";
|
||||
version = "0.8.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "owlbarn";
|
||||
repo = "owl";
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv
|
||||
, buildDune2Package
|
||||
, buildDunePackage
|
||||
, dune-configurator
|
||||
, fetchFromGitHub
|
||||
, alcotest
|
||||
|
@ -11,10 +11,10 @@
|
|||
, npy
|
||||
}:
|
||||
|
||||
buildDune2Package rec {
|
||||
buildDunePackage rec {
|
||||
pname = "owl";
|
||||
|
||||
inherit (owl-base) version src meta;
|
||||
inherit (owl-base) version src meta useDune2;
|
||||
|
||||
checkInputs = [ alcotest ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
{ stdenv, buildDune2Package, fetchFromGitHub, ppx_deriving
|
||||
{ stdenv, buildDunePackage, fetchFromGitHub, ppx_deriving
|
||||
, alcotest, biocaml, gnuplot, lacaml, menhir, owl }:
|
||||
|
||||
buildDune2Package rec {
|
||||
buildDunePackage rec {
|
||||
pname = "phylogenetics";
|
||||
version = "unstable-2019-11-15";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "biocaml";
|
||||
repo = pname;
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
# wrapped to be able to find aioconsole and any other packages.
|
||||
buildPythonPackage rec {
|
||||
pname = "aioconsole";
|
||||
version = "0.1.15";
|
||||
version = "0.1.16";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0gbl08p89959g8dqy2vainppg3kyf948xlh18p7iwk5p0mw5d3j9";
|
||||
sha256 = "0yk4ghvg47drfvdrrcw7nk14pg4shccmyhln9d8hy1lyafcqmnd5";
|
||||
};
|
||||
|
||||
# hardcodes a test dependency on an old version of pytest-asyncio
|
||||
|
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
|||
|
||||
meta = {
|
||||
description = "Asynchronous console and interfaces for asyncio";
|
||||
homepage = https://github.com/vxgmichel/aioconsole;
|
||||
homepage = "https://github.com/vxgmichel/aioconsole";
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = [ lib.maintainers.catern ];
|
||||
};
|
||||
|
|
|
@ -11,12 +11,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "azure-mgmt-monitor";
|
||||
version = "0.7.0";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
extension = "zip";
|
||||
sha256 = "1pprvk5255b6brbw73g0g13zygwa7a2px5x08wy3153rqlzan5l2";
|
||||
sha256 = "09bhk6kpf1j1kgsyfdrfmfixrdj0iikx25dr1mh9dc6lci07i1cx";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -10,12 +10,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "azure-mgmt-web";
|
||||
version = "0.44.0";
|
||||
version = "0.45.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
extension = "zip";
|
||||
sha256 = "05dqakhfi301k2jnvccxdkigqvwnf9xz858pqg9vsri3dq69f1rw";
|
||||
sha256 = "04wdb7vksjhcvv0gkjjr37lmb5ads5pr00cjac8r3szimr64zspr";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "zc.buildout";
|
||||
version = "2.13.2";
|
||||
version = "2.13.3";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "5dd4de86dda684c46ef8ee9cc84e335ca7f6275d4363a684de82225270d1e328";
|
||||
sha256 = "1dyc5g3yv7wm3hf3fcsh6y1wivzjj1bspafr5qqb653z9a31lsfn";
|
||||
};
|
||||
|
||||
patches = [ ./nix.patch ];
|
||||
|
@ -14,7 +14,7 @@ buildPythonPackage rec {
|
|||
postInstall = "mv $out/bin/buildout{,-nix}";
|
||||
|
||||
meta = {
|
||||
homepage = http://www.buildout.org;
|
||||
homepage = "http://www.buildout.org";
|
||||
description = "A software build and configuration system";
|
||||
license = stdenv.lib.licenses.zpl21;
|
||||
maintainers = [ stdenv.lib.maintainers.goibhniu ];
|
||||
|
|
|
@ -6,17 +6,19 @@ buildPythonPackage rec {
|
|||
pname = "carbon";
|
||||
version = "1.1.6";
|
||||
|
||||
disabled = isPy3k;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "9ecda1469e497e3fed346b23ac94fd576e1bd9962677ab88975f4f598186e851";
|
||||
};
|
||||
|
||||
# Carbon-s default installation is /opt/graphite. This env variable ensures
|
||||
# carbon is installed as a regular python module.
|
||||
GRAPHITE_NO_PREFIX="True";
|
||||
|
||||
propagatedBuildInputs = [ twisted whisper txamqp cachetools urllib3 ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://graphite.wikidot.com/;
|
||||
homepage = "http://graphiteapp.org/";
|
||||
description = "Backend data caching and persistence daemon for Graphite";
|
||||
maintainers = with maintainers; [ offline basvandijk ];
|
||||
license = licenses.asl20;
|
||||
|
|
|
@ -7,11 +7,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "cchardet";
|
||||
version = "2.1.5";
|
||||
version = "2.1.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "240efe3f255f916769458343840b9c6403cf3192720bc5129792cbcb88bf72fb";
|
||||
sha256 = "1cs6y59qhbal8fgbyjk2lpjykh8kfjhq16clfssylsddb4hgnsmp";
|
||||
};
|
||||
|
||||
checkInputs = [ nose ];
|
||||
|
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||
|
||||
meta = {
|
||||
description = "High-speed universal character encoding detector";
|
||||
homepage = https://github.com/PyYoshi/cChardet;
|
||||
homepage = "https://github.com/PyYoshi/cChardet";
|
||||
license = lib.licenses.mpl11;
|
||||
maintainers = with lib.maintainers; [ ivan ];
|
||||
};
|
||||
|
|
|
@ -1,32 +0,0 @@
|
|||
{ stdenv
|
||||
, buildPythonPackage
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Django";
|
||||
version = "1.8.19";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.djangoproject.com/m/releases/1.8/${pname}-${version}.tar.gz";
|
||||
sha256 = "0iy0ni9j1rnx9b06ycgbg2dkrf3qid3y2jipk9x28cykz5f4mm1k";
|
||||
};
|
||||
|
||||
# too complicated to setup
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A high-level Python Web framework";
|
||||
homepage = https://www.djangoproject.com/;
|
||||
license = licenses.bsd0;
|
||||
knownVulnerabilities = [
|
||||
# The patches were not backported due to Django 1.8 having reached EOL
|
||||
https://www.djangoproject.com/weblog/2018/aug/01/security-releases/
|
||||
https://www.djangoproject.com/weblog/2019/jan/04/security-releases/
|
||||
https://www.djangoproject.com/weblog/2019/feb/11/security-releases/
|
||||
https://www.djangoproject.com/weblog/2019/jun/03/security-releases/
|
||||
https://www.djangoproject.com/weblog/2019/jul/01/security-releases/
|
||||
];
|
||||
};
|
||||
|
||||
}
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "dropbox";
|
||||
version = "9.4.0";
|
||||
version = "9.5.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0qid094qna6bl4zpd08f6snvipwjls1yadacvmwri11djgp0wvj3";
|
||||
sha256 = "0iz9hg1j7q9chka6fyzgpzqg2v4nbjx61xfvn9ixprxrdhvhr2hi";
|
||||
};
|
||||
|
||||
# Set DROPBOX_TOKEN environment variable to a valid token.
|
||||
|
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A Python library for Dropbox's HTTP-based Core and Datastore APIs";
|
||||
homepage = https://www.dropbox.com/developers/core/docs;
|
||||
homepage = "https://www.dropbox.com/developers/core/docs";
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,11 +6,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "Fiona";
|
||||
version = "1.8.13";
|
||||
version = "1.8.13.post1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "5ec34898c8b983a723fb4e949dd3e0ed7e691c303e51f6bfd61e52ac9ac813ae";
|
||||
sha256 = "00366f2j21b5r4r8310sadf7jjhdr44s0381dhjqkw2nzpwjnhqs";
|
||||
};
|
||||
|
||||
CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
|
||||
|
|
|
@ -1,30 +1,27 @@
|
|||
{ lib, fetchFromGitHub, buildPythonPackage, fetchpatch, flake8, six }:
|
||||
{ lib, isPy27, fetchFromGitHub, buildPythonPackage, fetchpatch, flake8, six }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flake8-future-import";
|
||||
version = "0.4.5";
|
||||
version = "0.4.6";
|
||||
|
||||
# PyPI tarball doesn't include the test suite
|
||||
src = fetchFromGitHub {
|
||||
owner = "xZise";
|
||||
repo = "flake8-future-import";
|
||||
rev = version;
|
||||
sha256 = "00fpxa6g8cabybnciwnpsbg60zhgydc966jgwyyggw1pcg0frdqr";
|
||||
sha256 = "00q8n15xdnvqj454arn7xxksyrzh0dw996kjyy7g9rdk0rf8x82z";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Add Python 3.7 support. Remove with the next release
|
||||
(fetchpatch {
|
||||
url = https://github.com/xZise/flake8-future-import/commit/cace194a44d3b95c9c1ed96640bae49183acca04.patch;
|
||||
sha256 = "17pkqnh035j5s5c53afs8bk49bq7lnmdwqp5k7izx7sw80z73p9r";
|
||||
})
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [ flake8 six ];
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/xZise/flake8-future-import;
|
||||
# Upstream disables this test case naturally on python 3, but it also fails
|
||||
# inside NixPkgs for python 2. Since it's going to be deleted, we just skip it
|
||||
# on py2 as well.
|
||||
patches = lib.optionals isPy27 [ ./skip-test.patch ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A flake8 extension to check for the imported __future__ modules to make it easier to have a consistent code base";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://github.com/xZise/flake8-future-import";
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/test_flake8_future_import.py b/test_flake8_future_import.py
|
||||
index 84fde59..345f23f 100644
|
||||
--- a/test_flake8_future_import.py
|
||||
+++ b/test_flake8_future_import.py
|
||||
@@ -230,7 +230,7 @@ class TestBadSyntax(TestCaseBase):
|
||||
"""Test using various bad syntax examples from Python's library."""
|
||||
|
||||
|
||||
-@unittest.skipIf(sys.version_info[:2] >= (3, 7), 'flake8 supports up to 3.6')
|
||||
+@unittest.skip("Has issue with installed path for flake8 in python2")
|
||||
class Flake8TestCase(TestCaseBase):
|
||||
|
||||
"""
|
|
@ -1,52 +1,35 @@
|
|||
{ stdenv, buildPythonPackage, fetchPypi, isPy3k, which
|
||||
{ stdenv, buildPythonPackage, fetchPypi, isPy3k
|
||||
, django, django_tagging, whisper, pycairo, cairocffi, ldap, memcached, pytz, urllib3, scandir
|
||||
}:
|
||||
if django.version != "1.8.19"
|
||||
|| django_tagging.version != "0.4.3"
|
||||
then throw "graphite-web should be build with django_1_8 and django_tagging_0_4_3"
|
||||
else buildPythonPackage rec {
|
||||
buildPythonPackage rec {
|
||||
pname = "graphite-web";
|
||||
version = "1.1.6";
|
||||
|
||||
disabled = isPy3k;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "f4c293008ad588456397cd125cdad7f47f4bab5b6dd82b5fb69f5467e7346a2a";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./update-django-tagging.patch
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
django django_tagging whisper pycairo cairocffi
|
||||
ldap memcached pytz urllib3 scandir
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/run-graphite-devel-server.py \
|
||||
--prefix PATH : ${which}/bin
|
||||
'';
|
||||
# Carbon-s default installation is /opt/graphite. This env variable ensures
|
||||
# carbon is installed as a regular python module.
|
||||
GRAPHITE_NO_PREFIX="True";
|
||||
|
||||
preConfigure = ''
|
||||
# graphite is configured by storing a local_settings.py file inside the
|
||||
# graphite python package. Since that package is stored in the immutable
|
||||
# Nix store we can't modify it. So how do we configure graphite?
|
||||
#
|
||||
# First of all we rename "graphite.local_settings" to
|
||||
# "graphite_local_settings" so that the settings are not looked up in the
|
||||
# graphite package anymore. Secondly we place a directory containing a
|
||||
# graphite_local_settings.py on the PYTHONPATH in the graphite module
|
||||
# <nixpkgs/nixos/modules/services/monitoring/graphite.nix>.
|
||||
substituteInPlace webapp/graphite/settings.py \
|
||||
--replace "graphite.local_settings" " graphite_local_settings"
|
||||
|
||||
substituteInPlace webapp/graphite/settings.py \
|
||||
--replace "join(WEBAPP_DIR, 'content')" "join('$out', 'webapp', 'content')"
|
||||
'';
|
||||
|
||||
# error: invalid command 'test'
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://graphite.wikidot.com/;
|
||||
homepage = "http://graphiteapp.org/";
|
||||
description = "Enterprise scalable realtime graphing";
|
||||
maintainers = with maintainers; [ offline basvandijk ];
|
||||
license = licenses.asl20;
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
diff -Nur a/setup.py b/setup.py
|
||||
--- a/setup.py 2020-03-12 18:45:34.654296302 +0100
|
||||
+++ b/setup.py 2020-03-12 18:46:17.476893828 +0100
|
||||
@@ -115,7 +115,7 @@
|
||||
['templates/*', 'local_settings.py.example']},
|
||||
scripts=glob('bin/*'),
|
||||
data_files=list(webapp_content.items()) + storage_dirs + conf_files + examples,
|
||||
- install_requires=['Django>=1.8,<2.3', 'django-tagging==0.4.3', 'pytz', 'pyparsing', 'cairocffi', 'urllib3', 'scandir', 'six'],
|
||||
+ install_requires=['Django>=1.8,<2.3', 'django-tagging==0.4.6', 'pytz', 'pyparsing', 'cairocffi', 'urllib3', 'scandir', 'six'],
|
||||
classifiers=[
|
||||
'Intended Audience :: Developers',
|
||||
'Natural Language :: English',
|
|
@ -1,32 +0,0 @@
|
|||
{ stdenv, buildPythonPackage, fetchPypi
|
||||
, jinja2, markupsafe, pagerduty, pushbullet, python_magic, python-simple-hipchat
|
||||
, pyyaml, redis, requests, six, websocket_client, nose
|
||||
}:
|
||||
buildPythonPackage rec {
|
||||
pname = "graphitepager";
|
||||
version = "0.2.11";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0v3g1qcgnkpgjzh6phnv13lnk8qjrcs9sq2qg6k0dk5ik31jfk3d";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
jinja2 markupsafe pagerduty pushbullet python_magic python-simple-hipchat
|
||||
pyyaml redis requests six websocket_client
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace requirements.txt --replace "==" ">="
|
||||
'';
|
||||
|
||||
checkInputs = [ nose ];
|
||||
checkPhase = "nosetests";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A simple alerting application for Graphite metrics";
|
||||
homepage = https://github.com/seatgeek/graphite-pager;
|
||||
maintainers = with maintainers; [ offline basvandijk ];
|
||||
license = licenses.bsd2;
|
||||
};
|
||||
}
|
|
@ -7,12 +7,12 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "4.0.4";
|
||||
version = "4.0.5";
|
||||
pname = "icalendar";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "16gjvqv0n05jrb9g228pdjgzd3amz2pdhvcgsn1jypszjg5m2w9l";
|
||||
sha256 = "14ynjj65kfmlcvpb7k097w789wvxncd3cr3xz5m1jz9yl9v6vv5q";
|
||||
};
|
||||
|
||||
buildInputs = [ setuptools ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "mkl-service";
|
||||
version = "2.1.0";
|
||||
version = "2.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "IntelPython";
|
||||
repo = "mkl-service";
|
||||
rev = "v${version}";
|
||||
sha256 = "1bnpgx629rxqf0yhn0jn68ypj3dqv6njc3981j1g8j8rsm5lycrn";
|
||||
sha256 = "1b4dkkl439rfaa86ywzc2zf9ifawhvdlaiqcg0il83cn5bzs7g5z";
|
||||
};
|
||||
|
||||
MKLROOT = mkl;
|
||||
|
|
39
pkgs/development/python-modules/opuslib/default.nix
Normal file
39
pkgs/development/python-modules/opuslib/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
|||
{ buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
isPy27,
|
||||
libopus,
|
||||
nose,
|
||||
stdenv,
|
||||
substituteAll,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "opuslib";
|
||||
version = "3.0.3";
|
||||
|
||||
disabled = isPy27;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "orion-labs";
|
||||
repo = "opuslib";
|
||||
rev = "92109c528f9f6c550df5e5325ca0fcd4f86b0909";
|
||||
sha256 = "0kd37wimwd1g6c0w5hq2hiiljgbi1zg3rk5prval086khkzq469p";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./opuslib-paths.patch;
|
||||
opusLibPath = "${libopus}/lib/libopus${stdenv.hostPlatform.extensions.sharedLibrary}";
|
||||
})
|
||||
];
|
||||
|
||||
checkInputs = [ nose ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Python bindings to the libopus, IETF low-delay audio codec";
|
||||
homepage = "https://github.com/orion-labs/opuslib";
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ thelegy ];
|
||||
};
|
||||
}
|
26
pkgs/development/python-modules/opuslib/opuslib-paths.patch
Normal file
26
pkgs/development/python-modules/opuslib/opuslib-paths.patch
Normal file
|
@ -0,0 +1,26 @@
|
|||
diff --git a/opuslib/api/__init__.py b/opuslib/api/__init__.py
|
||||
index 323a2a4..4c8a8fe 100644
|
||||
--- a/opuslib/api/__init__.py
|
||||
+++ b/opuslib/api/__init__.py
|
||||
@@ -7,20 +7,12 @@
|
||||
|
||||
import ctypes # type: ignore
|
||||
|
||||
-from ctypes.util import find_library # type: ignore
|
||||
-
|
||||
__author__ = 'Никита Кузнецов <self@svartalf.info>'
|
||||
__copyright__ = 'Copyright (c) 2012, SvartalF'
|
||||
__license__ = 'BSD 3-Clause License'
|
||||
|
||||
|
||||
-lib_location = find_library('opus')
|
||||
-
|
||||
-if lib_location is None:
|
||||
- raise Exception(
|
||||
- 'Could not find Opus library. Make sure it is installed.')
|
||||
-
|
||||
-libopus = ctypes.CDLL(lib_location)
|
||||
+libopus = ctypes.CDLL('@opusLibPath@')
|
||||
|
||||
c_int_pointer = ctypes.POINTER(ctypes.c_int)
|
||||
c_int16_pointer = ctypes.POINTER(ctypes.c_int16)
|
|
@ -6,11 +6,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pid";
|
||||
version = "2.2.5";
|
||||
version = "3.0.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "96eb7dba326b88f5164bc1afdc986c7793e0d32d7f62366256a3903c7b0614ef";
|
||||
sha256 = "0pdp8h1m4brxalcsmzzzmjj66vj98g6wigwmcdj5sf8p7insklgn";
|
||||
};
|
||||
|
||||
buildInputs = [ nose ];
|
||||
|
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Pidfile featuring stale detection and file-locking";
|
||||
homepage = https://github.com/trbs/pid/;
|
||||
homepage = "https://github.com/trbs/pid/";
|
||||
license = licenses.asl20;
|
||||
};
|
||||
|
||||
|
|
|
@ -10,14 +10,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyhcl";
|
||||
version = "0.4.0";
|
||||
version = "0.4.1";
|
||||
disabled = !isPy3k;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "virtuald";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "09kwm3digbwn3kmbk76jswxgwfcfchik6cfa2xbhjanh4xs893hs";
|
||||
sha256 = "13nszg2plfvza3syki1rxnx3k3h90qq4wkgv86l1xpz31k3pf6k4";
|
||||
};
|
||||
|
||||
# https://github.com/virtuald/pyhcl/blob/51a7524b68fe21e175e157b8af931016d7a357ad/setup.py#L64
|
||||
|
|
|
@ -10,14 +10,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pylint-django";
|
||||
version = "2.0.13";
|
||||
version = "2.0.14";
|
||||
disabled = !isPy3k;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "PyCQA";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "16xfn8zs5khdfh5pdsv3wjjhywzc1qhx7mxi5kpbcvmd6an9qi7s";
|
||||
sha256 = "07fkwb4phfr71dpajnq6l64phjxvljx2nf8ibs12n9gwjdvm9i52";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pymavlink";
|
||||
version = "2.4.3";
|
||||
version = "2.4.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "332d3d0291b4482641a5b3cd97e879817f50eb9c2b2ddcc30d51d619bad01b51";
|
||||
sha256 = "1c8bxbm18h4idfdxqgklcz4n5bgsyl9y14gl9314fpflwa2c7ds8";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ future lxml ];
|
||||
|
|
|
@ -21,13 +21,13 @@ in
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-language-server";
|
||||
version = "0.31.8";
|
||||
version = "0.31.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "palantir";
|
||||
repo = "python-language-server";
|
||||
rev = version;
|
||||
sha256 = "sha256:1h0w7x7d9g3z7vmxn5w7qxdkjya3sl0xfnklfaaaj8dkb5mjldpi";
|
||||
sha256 = "06hd6a1hhd57hrq4vbwfs0saplkhsrz2krv8kq9kw4fz4hx7zj74";
|
||||
};
|
||||
|
||||
# The tests require all the providers, disable otherwise.
|
||||
|
@ -53,8 +53,7 @@ buildPythonPackage rec {
|
|||
"test_pandas_completions"
|
||||
"test_matplotlib_completions"
|
||||
"test_snippet_parsing"
|
||||
|
||||
];
|
||||
] ++ stdenv.lib.optional isPy27 "test_flake8_lint";
|
||||
# checkPhase = ''
|
||||
# HOME=$TEMPDIR pytest -k "not test_pyqt_completion and not
|
||||
# '';
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
{ stdenv, buildPythonPackage, fetchPypi, nose }:
|
||||
{ stdenv, buildPythonPackage, fetchPypi, pythonAtLeast, nose }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "rope";
|
||||
version = "0.14.0";
|
||||
|
||||
disabled = pythonAtLeast "3.8"; # 0.17 should support Python 3.8
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1bwayj0hh459s3yh0sdrxksr9wfilgi3a49izfaj06kvgyladif5";
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "spyder-kernels";
|
||||
version = "1.8.1";
|
||||
version = "1.9.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "a782fc5961a9dd48d520ddc1c868b960d54b8edb1116c21fc2e3c347fe5a4474";
|
||||
sha256 = "1sqjagabqccrc73a423smfjmiph7lfjzj26r6hn3j3vf3drm3rpj";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
{ stdenv, buildPythonPackage, fetchPypi, makeDesktopItem, intervaltree, jedi, pycodestyle,
|
||||
{ stdenv, buildPythonPackage, fetchPypi, isPy27, makeDesktopItem, intervaltree, jedi, pycodestyle,
|
||||
psutil, pyflakes, rope, numpy, scipy, matplotlib, pylint, keyring, numpydoc,
|
||||
qtconsole, qtawesome, nbconvert, mccabe, pyopengl, cloudpickle, pygments,
|
||||
spyder-kernels, qtpy, pyzmq, chardet, qdarkstyle, watchdog, python-language-server
|
||||
, pyqtwebengine
|
||||
, pyqtwebengine, atomicwrites, pyxdg, diff-match-patch
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "spyder";
|
||||
version = "4.0.1";
|
||||
version = "4.1.1";
|
||||
|
||||
disabled = isPy27;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "4b279c16487d224368dd2213e1517185fa59fc528f539601fffb34ea97accb7b";
|
||||
sha256 = "13ajjifyf7w895vpl0h9r59m73zisby81xjw2c5pk49fh5l6ycs9";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ];
|
||||
|
@ -20,6 +22,7 @@ buildPythonPackage rec {
|
|||
intervaltree jedi pycodestyle psutil pyflakes rope numpy scipy matplotlib pylint keyring
|
||||
numpydoc qtconsole qtawesome nbconvert mccabe pyopengl cloudpickle spyder-kernels
|
||||
pygments qtpy pyzmq chardet pyqtwebengine qdarkstyle watchdog python-language-server
|
||||
atomicwrites pyxdg diff-match-patch
|
||||
];
|
||||
|
||||
# There is no test for spyder
|
||||
|
@ -42,8 +45,12 @@ buildPythonPackage rec {
|
|||
substituteInPlace setup.py --replace "pyqt5<5.13" "pyqt5"
|
||||
'';
|
||||
|
||||
# Create desktop item
|
||||
postInstall = ''
|
||||
# add Python libs to env so Spyder subprocesses
|
||||
# created to run compute kernels don't fail with ImportErrors
|
||||
wrapProgram $out/bin/spyder3 --prefix PYTHONPATH : "$PYTHONPATH"
|
||||
|
||||
# Create desktop item
|
||||
mkdir -p $out/share/icons
|
||||
cp spyder/images/spyder.svg $out/share/icons
|
||||
cp -r $desktopItem/share/applications/ $out/share
|
||||
|
@ -66,6 +73,5 @@ buildPythonPackage rec {
|
|||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ gebner ];
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -16,12 +16,12 @@
|
|||
}:
|
||||
buildPythonPackage rec {
|
||||
pname = "Twisted";
|
||||
version = "19.10.0";
|
||||
version = "20.3.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
extension = "tar.bz2";
|
||||
sha256 = "7394ba7f272ae722a74f3d969dcf599bc4ef093bc392038748a490f1724a515d";
|
||||
sha256 = "040yzha6cyshnn6ljgk2birgh6mh2cnra48xp5ina5vfsnsmab6p";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ zope_interface incremental automat constantly hyperlink pyhamcrest attrs setuptools ];
|
||||
|
|
|
@ -1,22 +1,22 @@
|
|||
{ stdenv
|
||||
, buildPythonPackage
|
||||
, fetchurl
|
||||
, fetchPypi
|
||||
, twisted
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "txamqp";
|
||||
version = "0.3";
|
||||
pname = "txAMQP";
|
||||
version = "0.8.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://launchpad.net/txamqp/trunk/${version}/+download/python-txamqp_${version}.orig.tar.gz";
|
||||
sha256 = "1r2ha0r7g14i4b5figv2spizjrmgfpspdbl1m031lw9px2hhm463";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0jd9864k3csc06kipiwzjlk9mq4054s8kzk5q1cfnxj8572s4iv4";
|
||||
};
|
||||
|
||||
buildInputs = [ twisted ];
|
||||
propagatedBuildInputs = [ twisted ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://launchpad.net/txamqp;
|
||||
homepage = "https://github.com/txamqp/txamqp";
|
||||
description = "Library for communicating with AMQP peers and brokers using Twisted";
|
||||
license = licenses.asl20;
|
||||
maintainers = [];
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ buildPythonPackage, django_1_8, waitress }:
|
||||
{ buildPythonPackage, django, waitress }:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "waitress-django";
|
||||
version = "0.0.0";
|
||||
|
||||
src = ./.;
|
||||
pythonPath = [ django_1_8 waitress ];
|
||||
pythonPath = [ django waitress ];
|
||||
doCheck = false;
|
||||
meta.description = "A waitress WSGI server serving django";
|
||||
}
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "tflint";
|
||||
version = "0.15.2";
|
||||
version = "0.15.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "terraform-linters";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1wwdnqb34l0ad6hlvs74acfh0744ir3ssm8wjwpxbsy0sxkrpxcf";
|
||||
sha256 = "1j56dadkyg483i2p4i76d4kdkm229yjiyariga96zxp3s4rl0fni";
|
||||
};
|
||||
|
||||
modSha256 = "1jbnsqa0ga372lhbgfnqvx8pdzrm0b2phzzwll4sgd0k1hzv2aqv";
|
||||
modSha256 = "14vgy5lavyp4w16g7wpi9xbni3js541rc3w9qn5ab3khqw5rdhgn";
|
||||
|
||||
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
|
||||
|
||||
|
|
|
@ -19,7 +19,8 @@ buildGoPackage rec {
|
|||
|
||||
outputs = [ "bin" "out" "man" ];
|
||||
|
||||
buildInputs = [ go-bindata gotools makeWrapper ];
|
||||
nativeBuildInputs = [ go-bindata gotools makeWrapper ];
|
||||
|
||||
preBuild = ''go generate ./...'';
|
||||
|
||||
postInstall = ''
|
||||
|
|
|
@ -104,7 +104,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "cargo-make"
|
||||
version = "0.29.0"
|
||||
version = "0.30.0"
|
||||
dependencies = [
|
||||
"ci_info 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-make";
|
||||
version = "0.29.0";
|
||||
version = "0.30.0";
|
||||
|
||||
src =
|
||||
let
|
||||
|
@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
|
|||
owner = "sagiegurari";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0sxwc61iaqln37m45a3sy1c92ri4zad8g5h5fgk5plj0qlps80np";
|
||||
sha256 = "0zlj2jys97nphymxrzdjmnh9vv7rsq3fgidap96mh26q9af7ffbz";
|
||||
};
|
||||
in
|
||||
runCommand "source" {} ''
|
||||
|
@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildInputs = [ openssl ]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
|
||||
|
||||
cargoSha256 = "1w7nw3amb5by60a8aqvwka4aify8k3csjqys7arzksy98jyn6b4j";
|
||||
cargoSha256 = "1pjdpnilbxn7vzxl15j5d3k07a80y1mr5cdmj96miyq89j5mmjq0";
|
||||
|
||||
# Some tests fail because they need network access.
|
||||
# However, Travis ensures a proper build.
|
||||
|
|
|
@ -17,11 +17,11 @@ appimageTools.wrapType2 rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://public-cdn.cloud.unity3d.com/hub/prod/UnityHub.AppImage";
|
||||
sha256 = "1rx7ih94ig3pd1yx1d3fpx7zpixq3j5birkpnzkh778qqsdrg0nf";
|
||||
sha256 = "05p5kqbwgqyk2aw2lix5dk1ql16aj6iczxrc63a1l0vj8wrha7z4";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://unity3d.com/;
|
||||
homepage = "https://unity3d.com/";
|
||||
description = "Game development tool";
|
||||
longDescription = ''
|
||||
Popular development platform for creating 2D and 3D multiplatform games
|
||||
|
|
|
@ -7,10 +7,9 @@ buildGoPackage rec {
|
|||
goPackagePath = "github.com/zsa/wally";
|
||||
subPackages = [ "cli" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
libusb1
|
||||
];
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
buildInputs = [ libusb1 ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zsa";
|
||||
|
|
75
pkgs/games/keeperrl/default.nix
Normal file
75
pkgs/games/keeperrl/default.nix
Normal file
|
@ -0,0 +1,75 @@
|
|||
{ stdenv, fetchFromGitHub, requireFile
|
||||
, openal, curl, libogg, libvorbis
|
||||
, SDL2, SDL2_image, zlib
|
||||
, unfree_assets ? false }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "keeperrl";
|
||||
version = "alpha28";
|
||||
|
||||
free-src = fetchFromGitHub {
|
||||
owner = "miki151";
|
||||
repo = "keeperrl";
|
||||
rev = version;
|
||||
sha256 = "0isj8ijn5a89m2r5cxk4lcsq0cydx7c0h87vgr8v5cndm3rd27cy";
|
||||
};
|
||||
|
||||
assets = if unfree_assets then requireFile rec {
|
||||
name = "keeperrl_data_${version}.tar.gz";
|
||||
message = ''
|
||||
This nix expression requires that the KeeperRL art assets are already
|
||||
part of the store. These can be obtained from a purchased copy of the game
|
||||
and found in the "data" directory. Make a tar archive of this directory
|
||||
with
|
||||
|
||||
"tar czf ${name} data"
|
||||
|
||||
Then add this archive to the nix store with
|
||||
|
||||
"nix-prefetch-url file://\$PWD/${name}".
|
||||
'';
|
||||
sha256 = "0115pxdzdyma2vicxgr0j21pp82gxdyrlj090s8ihp0b50f0nk53";
|
||||
} else null;
|
||||
|
||||
sourceRoot = "source";
|
||||
|
||||
srcs = [ free-src ] ++ stdenv.lib.optional unfree_assets assets;
|
||||
|
||||
postUnpack = stdenv.lib.optionalString unfree_assets ''
|
||||
mv data $sourceRoot
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
openal curl libogg libvorbis SDL2 SDL2_image zlib
|
||||
];
|
||||
|
||||
NIX_CFLAGS_COMPILE = [
|
||||
"-I${SDL2.dev}/include/SDL2"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
makeFlags = [ "OPT=true"
|
||||
"RELEASE=true"
|
||||
"DATA_DIR=$(out)/share"
|
||||
"ENABLE_LOCAL_USER_DIR=true"
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
install -Dm755 keeper $out/bin/keeper
|
||||
install -Dm755 appconfig.txt $out/share/appconfig.txt
|
||||
|
||||
cp -r data_free $out/share
|
||||
cp -r data_contrib $out/share
|
||||
${stdenv.lib.optionalString unfree_assets "cp -r data $out/share"}
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A dungeon management rogue-like";
|
||||
homepage = "https://keeperrl.com/";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ chattered ];
|
||||
# TODO: Add OS X
|
||||
platforms = with platforms; [ "i686-linux" "x86_64-linux" ];
|
||||
};
|
||||
}
|
41
pkgs/games/xmage/default.nix
Normal file
41
pkgs/games/xmage/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{ stdenv
|
||||
, fetchurl
|
||||
, jdk8
|
||||
, unzip
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xmage";
|
||||
version = "1.4.42V6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/magefree/mage/releases/download/xmage_1.4.42V6/xmage_${version}.zip";
|
||||
sha256 = "14s4885ldi0rplqmab5m775plsqmmm0m89j402caiqm2q9mzvkhd";
|
||||
};
|
||||
|
||||
preferLocalBuild = true;
|
||||
|
||||
unpackPhase = ''
|
||||
${unzip}/bin/unzip $src
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp -rv ./* $out
|
||||
|
||||
cat << EOS > $out/bin/xmage
|
||||
exec ${jdk8}/bin/java -Xms256m -Xmx512m -XX:MaxPermSize=384m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar $out/mage-client/lib/mage-client-1.4.42.jar
|
||||
EOS
|
||||
|
||||
chmod +x $out/bin/xmage
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Magic Another Game Engine";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ matthiasbeyer ];
|
||||
homepage = "http://xmage.de/";
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -5,11 +5,11 @@ with stdenv.lib;
|
|||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "fs-uae";
|
||||
version = "3.0.2";
|
||||
version = "3.0.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://fs-uae.net/stable/${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1awakxs3rlbm0bxpi37cbavi5fpb89wszksyw62as4nz3qsdrpjf";
|
||||
sha256 = "0v5c8ns00bam4myj7454hpkrnm9i81jwdzrp5nl7gaa18qb60hjq";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
|||
create customized Amigas.
|
||||
'';
|
||||
license = licenses.gpl2Plus;
|
||||
homepage = https://fs-uae.net;
|
||||
homepage = "https://fs-uae.net";
|
||||
maintainers = with stdenv.lib; [ maintainers.AndersonTorres ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
};
|
||||
|
|
|
@ -786,7 +786,7 @@ in with stdenv.lib.licenses;
|
|||
SDL_CONFIG = "${SDL.dev}/bin/sdl-config";
|
||||
dontAddPrefix = true;
|
||||
configurePlatforms = [];
|
||||
meta.badPlatforms = [ "aarch64-linux" ];
|
||||
makeFlags = stdenv.lib.optional stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
|
||||
};
|
||||
|
||||
play = mkLibRetroCore {
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
{ lib, stdenv, fetchurl, vscode-utils, extractNuGet
|
||||
, icu, curl, openssl, lttng-ust, autoPatchelfHook
|
||||
, pythonUseFixed ? false, python # When `true`, the python default setting will be fixed to specified.
|
||||
# Use version from `PATH` for default setting otherwise.
|
||||
# Defaults to `false` as we expect it to be project specific most of the time.
|
||||
, ctagsUseFixed ? true, ctags # When `true`, the ctags default setting will be fixed to specified.
|
||||
# Use version from `PATH` for default setting otherwise.
|
||||
# Defaults to `true` as usually not defined on a per projet basis.
|
||||
, python3
|
||||
, pythonUseFixed ? false # When `true`, the python default setting will be fixed to specified.
|
||||
# Use version from `PATH` for default setting otherwise.
|
||||
# Defaults to `false` as we expect it to be project specific most of the time.
|
||||
, ctagsUseFixed ? true, ctags # When `true`, the ctags default setting will be fixed to specified.
|
||||
# Use version from `PATH` for default setting otherwise.
|
||||
# Defaults to `true` as usually not defined on a per projet basis.
|
||||
}:
|
||||
|
||||
assert pythonUseFixed -> null != python;
|
||||
assert ctagsUseFixed -> null != ctags;
|
||||
|
||||
let
|
||||
pythonDefaultsTo = if pythonUseFixed then "${python}/bin/python" else "python";
|
||||
pythonDefaultsTo = if pythonUseFixed then "${python3}/bin/python" else "python";
|
||||
ctagsDefaultsTo = if ctagsUseFixed then "${ctags}/bin/ctags" else "ctags";
|
||||
|
||||
# The arch tag comes from 'PlatformName' defined here:
|
||||
|
@ -23,14 +23,14 @@ let
|
|||
else throw "Only x86_64 Linux and Darwin are supported.";
|
||||
|
||||
languageServerSha256 = {
|
||||
linux-x64 = "10qwi8lih5i6216d1vqsmviab73ha0d3zdvircrgrydkf0d4ancd";
|
||||
osx-x64 = "08gjxs0bjhz5a9l35vvgwnvzshsyyqiqvb5hxv6w0k2ajgv5z7av";
|
||||
linux-x64 = "1pmj5pb4xylx4gdx4zgmisn0si59qx51n2m1bh7clv29q6biw05n";
|
||||
osx-x64 = "0ishiy1z9dghj4ryh95vy8rw0v7q4birdga2zdb4a8am31wmp94b";
|
||||
}.${arch};
|
||||
|
||||
# version is languageServerVersion in the package.json
|
||||
languageServer = extractNuGet rec {
|
||||
name = "Python-Language-Server";
|
||||
version = "0.4.127";
|
||||
version = "0.5.30";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pvsc.azureedge.net/python-language-server-stable/${name}-${arch}.${version}.nupkg";
|
||||
|
@ -41,8 +41,8 @@ in vscode-utils.buildVscodeMarketplaceExtension {
|
|||
mktplcRef = {
|
||||
name = "python";
|
||||
publisher = "ms-python";
|
||||
version = "2020.2.64397";
|
||||
sha256 = "1kwyc5ycz1276i2zbw93mpq59y2py6kj71gvhzya8xvm184jk07a";
|
||||
version = "2020.3.69010";
|
||||
sha256 = "1dg8wfc3yl0msg6c9ccbvwc78f559109slsagi0lgnbc40v6v24b";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -54,6 +54,11 @@ in vscode-utils.buildVscodeMarketplaceExtension {
|
|||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
python3.pkgs.wrapPython
|
||||
];
|
||||
|
||||
pythonPath = with python3.pkgs; [
|
||||
setuptools
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -70,6 +75,8 @@ in vscode-utils.buildVscodeMarketplaceExtension {
|
|||
mkdir -p "$out/$installPrefix/languageServer.${languageServer.version}"
|
||||
cp -R --no-preserve=ownership ${languageServer}/* "$out/$installPrefix/languageServer.${languageServer.version}"
|
||||
chmod -R +wx "$out/$installPrefix/languageServer.${languageServer.version}"
|
||||
|
||||
patchPythonScript "$out/$installPrefix/pythonFiles/lib/python/isort/main.py"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue