Merge staging into staging-next

This commit is contained in:
Frederik Rietdijk 2019-04-07 08:33:26 +02:00
commit f5d4adc0d1
429 changed files with 5311 additions and 3852 deletions

View File

@ -1,3 +1,4 @@
<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#sec-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->
###### Motivation for this change

View File

@ -54,7 +54,7 @@
<para>
To manually configure the network on the graphical installer, first disable
network-manager with <command>systemctl stop network-manager</command>.
network-manager with <command>systemctl stop NetworkManager</command>.
</para>
<para>

View File

@ -72,6 +72,13 @@
accordingly.
</para>
</listitem>
<listitem>
<para>
The NetworkManager systemd unit was renamed back from network-manager.service to
NetworkManager.service for better compatibility with other applications expecting this name.
The same applies to ModemManager where modem-manager.service is now called ModemManager.service again.
</para>
</listitem>
</itemizedlist>
</section>

View File

@ -7,7 +7,7 @@ with lib;
let
requiredPackages = map lib.lowPrio
requiredPackages = map (pkg: setPrio ((pkg.meta.priority or 5) + 3) pkg)
[ config.nix.package
pkgs.acl
pkgs.attr

View File

@ -38,6 +38,12 @@ in {
firmwareLinuxNonfree
intel2200BGFirmware
rtl8192su-firmware
rt5677-firmware
rtl8723bs-firmware
rtlwifi_new-firmware
zd1211fw
alsa-firmware
openelec-dvb-firmware
] ++ optional (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) raspberrypiWirelessFirmware
++ optionals (versionOlder config.boot.kernelPackages.kernel.version "4.13") [
rtl8723bs-firmware
@ -54,6 +60,10 @@ in {
}];
hardware.firmware = with pkgs; [
broadcom-bt-firmware
b43Firmware_5_1_138
b43Firmware_6_30_163_46
b43FirmwareCutter
facetimehd-firmware
];
})
];

View File

@ -0,0 +1,28 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.hardware.logitech;
in {
options.hardware.logitech = {
enable = mkEnableOption "Logitech Devices";
enableGraphical = mkOption {
type = types.bool;
default = false;
description = "Enable graphical support applications.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [
pkgs.ltunify
] ++ lib.optional cfg.enableGraphical pkgs.solaar;
# ltunifi and solaar both provide udev rules but the most up-to-date have been split
# out into a dedicated derivation
services.udev.packages = with pkgs; [ logitech-udev-rules ];
};
}

View File

@ -46,6 +46,7 @@
./hardware/sensor/iio.nix
./hardware/ksm.nix
./hardware/ledger.nix
./hardware/logitech.nix
./hardware/mcelog.nix
./hardware/network/b43.nix
./hardware/nitrokey.nix
@ -264,6 +265,7 @@
./services/desktops/pipewire.nix
./services/desktops/gnome3/at-spi2-core.nix
./services/desktops/gnome3/chrome-gnome-shell.nix
./services/desktops/gnome3/evince.nix
./services/desktops/gnome3/evolution-data-server.nix
./services/desktops/gnome3/file-roller.nix
./services/desktops/gnome3/gnome-disks.nix

View File

@ -0,0 +1,35 @@
# Evince.
{ config, pkgs, lib, ... }:
with lib;
{
###### interface
options = {
services.gnome3.evince = {
enable = mkEnableOption
"systemd and dbus services for Evince, the GNOME document viewer";
};
};
###### implementation
config = mkIf config.services.gnome3.evince.enable {
environment.systemPackages = [ pkgs.evince ];
services.dbus.packages = [ pkgs.evince ];
systemd.packages = [ pkgs.evince ];
};
}

View File

@ -466,7 +466,7 @@ in {
systemd.packages = cfg.packages;
systemd.services."network-manager" = {
systemd.services."NetworkManager" = {
wantedBy = [ "network.target" ];
restartTriggers = [ configFile ];
@ -478,9 +478,9 @@ in {
};
systemd.services.nm-setup-hostsdirs = mkIf dynamicHostsEnabled {
wantedBy = [ "network-manager.service" ];
before = [ "network-manager.service" ];
partOf = [ "network-manager.service" ];
wantedBy = [ "NetworkManager.service" ];
before = [ "NetworkManager.service" ];
partOf = [ "NetworkManager.service" ];
script = concatStrings (mapAttrsToList (n: d: ''
mkdir -p "/run/NetworkManager/hostsdirs/${n}"
chown "${d.user}:${d.group}" "/run/NetworkManager/hostsdirs/${n}"

View File

@ -3,112 +3,18 @@
poolName = "icingaweb2";
phpfpmSocketName = "/var/run/phpfpm/${poolName}.sock";
formatBool = b: if b then "1" else "0";
configIni = let
config = cfg.generalConfig;
in ''
[global]
show_stacktraces = "${formatBool config.showStacktraces}"
show_application_state_messages = "${formatBool config.showApplicationStateMessages}"
module_path = "${pkgs.icingaweb2}/modules${optionalString (builtins.length config.modulePath > 0) ":${concatStringsSep ":" config.modulePath}"}"
config_backend = "${config.configBackend}"
${optionalString (config.configBackend == "db") ''config_resource = "${config.configResource}"''}
[logging]
log = "${config.log}"
${optionalString (config.log != "none") ''level = "${config.logLevel}"''}
${optionalString (config.log == "php" || config.log == "syslog") ''application = "${config.logApplication}"''}
${optionalString (config.log == "syslog") ''facility = "${config.logFacility}"''}
${optionalString (config.log == "file") ''file = "${config.logFile}"''}
[themes]
default = "${config.themeDefault}"
disabled = "${formatBool config.themeDisabled}"
[authentication]
${optionalString (config.authDefaultDomain != null) ''default_domain = "${config.authDefaultDomain}"''}
'';
resourcesIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
[${name}]
type = "${config.type}"
${optionalString (config.type == "db") ''
db = "${config.db}"
host = "${config.host}"
${optionalString (config.port != null) ''port = "${toString config.port}"''}
username = "${config.username}"
password = "${config.password}"
dbname = "${config.dbname}"
${optionalString (config.charset != null) ''charset = "${config.charset}"''}
use_ssl = "${formatBool config.useSSL}"
${optionalString (config.sslCert != null) ''ssl_cert = "${config.sslCert}"''}
${optionalString (config.sslKey != null) ''ssl_cert = "${config.sslKey}"''}
${optionalString (config.sslCA != null) ''ssl_cert = "${config.sslCA}"''}
${optionalString (config.sslCApath != null) ''ssl_cert = "${config.sslCApath}"''}
${optionalString (config.sslCipher != null) ''ssl_cert = "${config.sslCipher}"''}
''}
${optionalString (config.type == "ldap") ''
hostname = "${config.host}"
${optionalString (config.port != null) ''port = "${toString config.port}"''}
root_dn = "${config.rootDN}"
bind_dn = "${config.username}"
bind_pw = "${config.password}"
encryption = "${config.ldapEncryption}"
timeout = "${toString config.ldapTimeout}"
''}
${optionalString (config.type == "ssh") ''
user = "${config.username}"
private_key = "${config.sshPrivateKey}"
''}
'') cfg.resources);
authenticationIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
[${name}]
backend = "${config.backend}"
${optionalString (config.domain != null) ''domain = "${config.domain}"''}
${optionalString (config.backend == "external" && config.externalStripRegex != null) ''strip_username_regexp = "${config.externalStripRegex}"''}
${optionalString (config.backend != "external") ''resource = "${config.resource}"''}
${optionalString (config.backend == "ldap" || config.backend == "msldap") ''
${optionalString (config.ldapUserClass != null) ''user_class = "${config.ldapUserClass}"''}
${optionalString (config.ldapUserNameAttr != null) ''user_name_attribute = "${config.ldapUserNameAttr}"''}
${optionalString (config.ldapFilter != null) ''filter = "${config.ldapFilter}"''}
''}
'') cfg.authentications);
groupsIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
[${name}]
backend = "${config.backend}"
resource = "${config.resource}"
${optionalString (config.backend != "db") ''
${optionalString (config.ldapUserClass != null) ''user_class = "${config.ldapUserClass}"''}
${optionalString (config.ldapUserNameAttr != null) ''user_name_attribute = "${config.ldapUserNameAttr}"''}
${optionalString (config.ldapGroupClass != null) ''group_class = "${config.ldapGroupClass}"''}
${optionalString (config.ldapGroupNameAttr != null) ''group_name_attribute = "${config.ldapGroupNameAttr}"''}
${optionalString (config.ldapGroupFilter != null) ''group_filter = "${config.ldapGroupFilter}"''}
''}
${optionalString (config.backend == "msldap" && config.ldapNestedSearch) ''nested_group_search = "1"''}
'') cfg.groupBackends);
rolesIni = let
optionalList = var: attribute: optionalString (builtins.length var > 0) ''${attribute} = "${concatStringsSep "," var}"'';
in concatStringsSep "\n" (mapAttrsToList (name: config: ''
[${name}]
${optionalList config.users "users"}
${optionalList config.groups "groups"}
${optionalList config.permissions "permissions"}
${optionalList config.permissions "permissions"}
${concatStringsSep "\n" (mapAttrsToList (key: value: optionalList value key) config.extraAssignments)}
'') cfg.roles);
defaultConfig = {
global = {
module_path = "${pkgs.icingaweb2}/modules${optionalString (builtins.length config.modulePath > 0) ":${concatStringsSep ":" config.modulePath}"}";
};
};
in {
options.services.icingaweb2 = with types; {
enable = mkEnableOption "the icingaweb2 web interface";
pool = mkOption {
type = str;
default = "${poolName}";
default = poolName;
description = ''
Name of existing PHP-FPM pool that is used to run Icingaweb2.
If not specified, a pool will automatically created with default values.
@ -143,7 +49,7 @@ in {
default = {};
example = literalExample ''
{
"snow" = pkgs.icingaweb2Modules.theme-snow;
"snow" = icingaweb2Modules.theme-snow;
}
'';
description = ''
@ -153,419 +59,130 @@ in {
'';
};
generalConfig = {
mutable = mkOption {
type = bool;
default = false;
description = ''
Make config.ini mutable (e.g. via the web interface).
Not that you need to update module_path manually.
'';
generalConfig = mkOption {
type = nullOr attrs;
default = null;
example = {
general = {
showStacktraces = 1;
config_resource = "icingaweb_db";
};
logging = {
log = "syslog";
level = "CRITICAL";
};
};
description = ''
config.ini contents.
Will automatically be converted to a .ini file.
If you don't set global.module_path, the module will take care of it.
showStacktraces = mkOption {
type = bool;
default = true;
description = "Enable stack traces in the Web UI";
};
showApplicationStateMessages = mkOption {
type = bool;
default = true;
description = "Enable application state messages in the Web UI";
};
modulePath = mkOption {
type = listOf str;
default = [];
description = "List of additional module search paths";
};
configBackend = mkOption {
type = enum [ "ini" "db" "none" ];
default = "db";
description = "Where to store user preferences";
};
configResource = mkOption {
type = nullOr str;
default = null;
description = "Database resource where user preferences are stored (if they are stored in a database)";
};
log = mkOption {
type = enum [ "syslog" "php" "file" "none" ];
default = "syslog";
description = "Logging target";
};
logLevel = mkOption {
type = enum [ "ERROR" "WARNING" "INFO" "DEBUG" ];
default = "ERROR";
description = "Maximum logging level to emit";
};
logApplication = mkOption {
type = str;
default = "icingaweb2";
description = "Application name to log under (syslog and php log)";
};
logFacility = mkOption {
type = enum [ "user" "local0" "local1" "local2" "local3" "local4" "local5" "local6" "local7" ];
default = "user";
description = "Syslog facility to log to";
};
logFile = mkOption {
type = str;
default = "/var/log/icingaweb2/icingaweb2.log";
description = "File to log to";
};
themeDefault = mkOption {
type = str;
default = "Icinga";
description = "Name of the default theme";
};
themeDisabled = mkOption {
type = bool;
default = false;
description = "Disallow users to change the theme";
};
authDefaultDomain = mkOption {
type = nullOr str;
default = null;
description = "Domain for users logging in without a qualified domain";
};
};
mutableResources = mkOption {
type = bool;
default = false;
description = "Make resources.ini mutable (e.g. via the web interface)";
If the value is null, no config.ini is created and you can
modify it manually (e.g. via the web interface).
Note that you need to update module_path manually.
'';
};
resources = mkOption {
default = {};
description = "Icingaweb 2 resources to define";
type = attrsOf (submodule ({ name, ... }: {
options = {
name = mkOption {
visible = false;
default = name;
type = str;
description = "Name of this resource";
};
type = mkOption {
type = enum [ "db" "ldap" "ssh" ];
default = "db";
description = "Type of this resouce";
};
db = mkOption {
type = enum [ "mysql" "pgsql" ];
default = "mysql";
description = "Type of this database resource";
};
host = mkOption {
type = str;
description = "Host to connect to";
};
port = mkOption {
type = nullOr port;
default = null;
description = "Port to connect on";
};
username = mkOption {
type = str;
description = "Database or SSH user or LDAP bind DN to connect with";
};
password = mkOption {
type = str;
description = "Password for the database user or LDAP bind DN";
};
dbname = mkOption {
type = str;
description = "Name of the database to connect to";
};
charset = mkOption {
type = nullOr str;
default = null;
example = "utf8";
description = "Database character set to connect with";
};
useSSL = mkOption {
type = nullOr bool;
default = false;
description = "Whether to connect to the database using SSL";
};
sslCert = mkOption {
type = nullOr str;
default = null;
description = "The file path to the SSL certificate. Only available for the mysql database.";
};
sslKey = mkOption {
type = nullOr str;
default = null;
description = "The file path to the SSL key. Only available for the mysql database.";
};
sslCA = mkOption {
type = nullOr str;
default = null;
description = "The file path to the SSL certificate authority. Only available for the mysql database.";
};
sslCApath = mkOption {
type = nullOr str;
default = null;
description = "The file path to the directory that contains the trusted SSL CA certificates in PEM format. Only available for the mysql database.";
};
sslCipher = mkOption {
type = nullOr str;
default = null;
description = "A list of one or more permissible ciphers to use for SSL encryption, in a format understood by OpenSSL. Only available for the mysql database.";
};
rootDN = mkOption {
type = str;
description = "Root object of the LDAP tree";
};
ldapEncryption = mkOption {
type = enum [ "none" "starttls" "ldaps" ];
default = "none";
description = "LDAP encryption to use";
};
ldapTimeout = mkOption {
type = ints.positive;
default = 5;
description = "Connection timeout for every LDAP connection";
};
sshPrivateKey = mkOption {
type = str;
description = "The path to the private key of the user";
};
type = nullOr attrs;
default = null;
example = {
icingaweb_db = {
type = "db";
db = "mysql";
host = "localhost";
username = "icingaweb2";
password = "icingaweb2";
dbname = "icingaweb2";
};
}));
};
};
description = ''
resources.ini contents.
Will automatically be converted to a .ini file.
mutableAuthConfig = mkOption {
type = bool;
default = true;
description = "Make authentication.ini mutable (e.g. via the web interface)";
If the value is null, no resources.ini is created and you can
modify it manually (e.g. via the web interface).
Note that if you set passwords here, they will go into the nix store.
'';
};
authentications = mkOption {
default = {};
description = "Icingaweb 2 authentications to define";
type = attrsOf (submodule ({ name, ... }: {
options = {
name = mkOption {
visible = false;
default = name;
type = str;
description = "Name of this authentication";
};
backend = mkOption {
type = enum [ "external" "ldap" "msldap" "db" ];
default = "db";
description = "The type of this authentication backend";
};
domain = mkOption {
type = nullOr str;
default = null;
description = "Domain for domain-aware authentication";
};
externalStripRegex = mkOption {
type = nullOr str;
default = null;
description = "Regular expression to strip off specific user name parts";
};
resource = mkOption {
type = str;
description = "Name of the database/LDAP resource";
};
ldapUserClass = mkOption {
type = nullOr str;
default = null;
description = "LDAP user class";
};
ldapUserNameAttr = mkOption {
type = nullOr str;
default = null;
description = "LDAP attribute which contains the username";
};
ldapFilter = mkOption {
type = nullOr str;
default = null;
description = "LDAP search filter";
};
type = nullOr attrs;
default = null;
example = {
icingaweb = {
backend = "db";
resource = "icingaweb_db";
};
}));
};
};
description = ''
authentication.ini contents.
Will automatically be converted to a .ini file.
mutableGroupsConfig = mkOption {
type = bool;
default = true;
description = "Make groups.ini mutable (e.g. via the web interface)";
If the value is null, no authentication.ini is created and you can
modify it manually (e.g. via the web interface).
'';
};
groupBackends = mkOption {
default = {};
description = "Icingaweb 2 group backends to define";
type = attrsOf (submodule ({ name, ... }: {
options = {
name = mkOption {
visible = false;
default = name;
type = str;
description = "Name of this group backend";
};
backend = mkOption {
type = enum [ "ldap" "msldap" "db" ];
default = "db";
description = "The type of this group backend";
};
resource = mkOption {
type = str;
description = "Name of the database/LDAP resource";
};
ldapUserClass = mkOption {
type = nullOr str;
default = null;
description = "LDAP user class";
};
ldapUserNameAttr = mkOption {
type = nullOr str;
default = null;
description = "LDAP attribute which contains the username";
};
ldapGroupClass = mkOption {
type = nullOr str;
default = null;
description = "LDAP group class";
};
ldapGroupNameAttr = mkOption {
type = nullOr str;
default = null;
description = "LDAP attribute which contains the groupname";
};
ldapGroupFilter = mkOption {
type = nullOr str;
default = null;
description = "LDAP group search filter";
};
ldapNestedSearch = mkOption {
type = bool;
default = false;
description = "Enable nested group search in Active Directory based on the user";
};
type = nullOr attrs;
default = null;
example = {
icingaweb = {
backend = "db";
resource = "icingaweb_db";
};
}));
};
};
description = ''
groups.ini contents.
Will automatically be converted to a .ini file.
mutableRolesConfig = mkOption {
type = bool;
default = true;
description = "Make roles.ini mutable (e.g. via the web interface)";
If the value is null, no groups.ini is created and you can
modify it manually (e.g. via the web interface).
'';
};
roles = mkOption {
default = {};
description = "Icingaweb 2 roles to define";
type = attrsOf (submodule ({ name, ... }: {
options = {
name = mkOption {
visible = false;
default = name;
type = str;
description = "Name of this role";
};
users = mkOption {
type = listOf str;
default = [];
description = "List of users that are assigned to the role";
};
groups = mkOption {
type = listOf str;
default = [];
description = "List of groups that are assigned to the role";
};
permissions = mkOption {
type = listOf str;
default = [];
example = [ "application/share/navigation" "config/*" ];
description = "The permissions to grant";
};
extraAssignments = mkOption {
type = attrsOf (listOf str);
default = {};
example = { "monitoring/blacklist/properties" = [ "sla" "customer"]; };
description = "Additional assignments of this role";
};
type = nullOr attrs;
default = null;
example = {
Administrators = {
users = "admin";
permissions = "*";
};
}));
};
description = ''
roles.ini contents.
Will automatically be converted to a .ini file.
If the value is null, no roles.ini is created and you can
modify it manually (e.g. via the web interface).
'';
};
};
config = mkIf cfg.enable {
services.phpfpm.poolConfigs = mkIf (cfg.pool == "${poolName}") {
"${poolName}" = {
listen = phpfpmSocketName;
phpOptions = ''
extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
date.timezone = "${cfg.timezone}"
'';
extraConfig = ''
listen.owner = nginx
listen.group = nginx
listen.mode = 0600
user = icingaweb2
pm = dynamic
pm.max_children = 75
pm.start_servers = 2
pm.min_spare_servers = 2
pm.max_spare_servers = 10
'';
};
"${poolName}" = ''
listen = "${phpfpmSocketName}"
listen.owner = nginx
listen.group = nginx
listen.mode = 0600
user = icingaweb2
pm = dynamic
pm.max_children = 75
pm.start_servers = 2
pm.min_spare_servers = 2
pm.max_spare_servers = 10
'';
};
services.phpfpm.phpOptions = mkIf (cfg.pool == "${poolName}")
''
extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
date.timezone = "${cfg.timezone}"
'';
systemd.services."phpfpm-${poolName}".serviceConfig.ReadWritePaths = [ "/etc/icingaweb2" ];
services.nginx = {
@ -609,11 +226,11 @@ in {
// doModule "test"
// doModule "translation"
# Configs
// optionalAttrs (!cfg.generalConfig.mutable) { "icingaweb2/config.ini".text = configIni; }
// optionalAttrs (!cfg.mutableResources) { "icingaweb2/resources.ini".text = resourcesIni; }
// optionalAttrs (!cfg.mutableAuthConfig) { "icingaweb2/authentication.ini".text = authenticationIni; }
// optionalAttrs (!cfg.mutableGroupsConfig) { "icingaweb2/groups.ini".text = groupsIni; }
// optionalAttrs (!cfg.mutableRolesConfig) { "icingaweb2/roles.ini".text = rolesIni; };
// optionalAttrs (cfg.generalConfig != null) { "icingaweb2/config.ini".text = generators.toINI {} (defaultConfig // cfg.generalConfig); }
// optionalAttrs (cfg.resources != null) { "icingaweb2/resources.ini".text = generators.toINI {} cfg.resources; }
// optionalAttrs (cfg.authentications != null) { "icingaweb2/authentication.ini".text = generators.toINI {} cfg.authentications; }
// optionalAttrs (cfg.groupBackends != null) { "icingaweb2/groups.ini".text = generators.toINI {} cfg.groupBackends; }
// optionalAttrs (cfg.roles != null) { "icingaweb2/roles.ini".text = generators.toINI {} cfg.roles; };
# User and group
users.groups.icingaweb2 = {};

View File

@ -44,19 +44,7 @@ let
}
''));
awkFormat = builtins.toFile "awkFormat-nginx.awk" ''
awk -f
{sub(/^[ \t]+/,"");idx=0}
/\{/{ctx++;idx=1}
/\}/{ctx--}
{id="";for(i=idx;i<ctx;i++)id=sprintf("%s%s", id, "\t");printf "%s%s\n", id, $0}
'';
configFile = pkgs.runCommand "nginx.conf" {} (''
awk -f ${awkFormat} ${pre-configFile} | sed '/^\s*$/d' > $out
'');
pre-configFile = pkgs.writeText "pre-nginx.conf" ''
configFile = pkgs.writers.writeNginxConfig "nginx.conf" ''
user ${cfg.user} ${cfg.group};
error_log ${cfg.logError};
daemon off;

View File

@ -126,6 +126,7 @@ in {
services.dleyna-renderer.enable = mkDefault true;
services.dleyna-server.enable = mkDefault true;
services.gnome3.at-spi2-core.enable = true;
services.gnome3.evince.enable = mkDefault true;
services.gnome3.evolution-data-server.enable = true;
services.gnome3.file-roller.enable = mkDefault true;
services.gnome3.gnome-disks.enable = mkDefault true;
@ -160,7 +161,11 @@ in {
# If gnome3 is installed, build vim for gtk3 too.
nixpkgs.config.vim.gui = "gtk3";
fonts.fonts = [ pkgs.dejavu_fonts pkgs.cantarell-fonts ];
fonts.fonts = [
pkgs.dejavu_fonts pkgs.cantarell-fonts
pkgs.source-sans-pro
pkgs.source-code-pro # Default monospace font in 3.32
];
services.xserver.displayManager.extraSessionFilePackages = [ pkgs.gnome3.gnome-session ]
++ map

View File

@ -223,6 +223,7 @@ in
syncthing-relay = handleTest ./syncthing-relay.nix {};
systemd = handleTest ./systemd.nix {};
systemd-confinement = handleTest ./systemd-confinement.nix {};
pdns-recursor = handleTest ./pdns-recursor.nix {};
taskserver = handleTest ./taskserver.nix {};
telegraf = handleTest ./telegraf.nix {};
tomcat = handleTest ./tomcat.nix {};

View File

@ -0,0 +1,12 @@
import ./make-test.nix ({ pkgs, ... }: {
name = "powerdns";
nodes.server = { ... }: {
services.pdns-recursor.enable = true;
};
testScript = ''
$server->waitForUnit("pdns-recursor");
$server->waitForOpenPort("53");
'';
})

View File

@ -11,8 +11,8 @@ let
sha256 = "0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh";
};
"2" = {
fluidsynthVersion = "2.0.3";
sha256 = "00f6bhw4ddrinb5flvg5y53rcvnf4km23a6nbvnswmpq13568v78";
fluidsynthVersion = "2.0.4";
sha256 = "1v2vji02fbrjgypwb4fw2r90hnfwfbfh3d24j8vjwlbqxhxp16s0";
};
};
in

View File

@ -1,24 +1,24 @@
{ stdenv, fetchurl, pkgconfig
, lv2, libGLU_combined, gtk2, cairo, pango, fftw }:
, lv2, libGLU_combined, gtk2, cairo, pango, fftwFloat, libjack2 }:
let
version = "0.8.1";
version = "0.9.10";
name = "meters.lv2-${version}";
# robtk submodule is pegged to this version
robtkVersion = "0.3.0";
robtkVersion = "0.6.2";
robtkName = "robtk-${robtkVersion}";
src = fetchurl {
name = "${name}.tar.gz";
url = "https://github.com/x42/meters.lv2/archive/v${version}.tar.gz";
sha256 = "142dg0j34mv5b0agajj2x1n9kgsmkfh08n1cjzk0j8n4xk2wb6ri";
sha256 = "0yfyn7j8g50w671b1z7ph4ppjx8ddj5c6nx53syp5y5mfr1b94nx";
};
robtkSrc = fetchurl {
name = "${robtkName}.tar.gz";
url = "https://github.com/x42/robtk/archive/v${robtkVersion}.tar.gz";
sha256 = "1ny89i2sgga56k7fxskp9y8sb7pfhp6wgw5mni842p19z6q7h8rq";
sha256 = "1v79xys1k2923wpivdjd44vand6c4agwvnrqi4c8kdv9r07b559v";
};
in
@ -26,15 +26,13 @@ stdenv.mkDerivation {
inherit name;
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ lv2 libGLU_combined gtk2 cairo pango fftw ];
buildInputs = [ lv2 libGLU_combined gtk2 cairo pango fftwFloat libjack2 ];
srcs = [ src robtkSrc ];
sourceRoot = name;
postUnpack = "mv ${robtkName}/* ${name}/robtk"; # */
postPatch = "sed -i 's/fftw3f/fftw3/' Makefile";
preConfigure = "makeFlagsArray=( PREFIX=$out )";
meter_VERSION = version;

View File

@ -1,23 +1,17 @@
{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qtbase, qttools, qtx11extras, cmake, pkgconfig }:
{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qt5, autoconf, pkgconfig }:
stdenv.mkDerivation rec {
name = "qsynth-${version}";
version = "0.5.2";
version = "0.5.5";
src = fetchurl {
url = "mirror://sourceforge/qsynth/${name}.tar.gz";
sha256 = "1rfkaxq1pyc4hv3l0i6wicianbcbm1wp53kh9i5d4jsljgisd1dv";
sha256 = "08x7znvbwi9miavcarymi7dsv8njmxzwzma20dbmz8j2aswm53w5";
};
# cmake is looking for qsynth.desktop.in and fails if it doesn't find it
# seems like a bug and can presumable go in the next version after 0.5.2
postPatch = ''
mv src/qsynth.desktop src/qsynth.desktop.in
'';
nativeBuildInputs = [ autoconf pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ alsaLib fluidsynth libjack2 qtbase qttools qtx11extras ];
buildInputs = [ alsaLib fluidsynth libjack2 qt5.qtbase qt5.qttools qt5.qtx11extras ];
enableParallelBuilding = true;

View File

@ -17,24 +17,15 @@
}:
let
pname = "rhythmbox";
version = "3.4.2";
version = "3.4.3";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "0hzcns8gf5yb0rm4ss8jd8qzarcaplp5cylk6plwilsqfvxj4xn2";
sha256 = "1yx3n7p9vmv23jsv98fxwq95n78awdxqm8idhyhxx2d6vk4w1hgx";
};
patches = [
# build with GStreamer 1.14 https://bugzilla.gnome.org/show_bug.cgi?id=788706
(fetchurl {
name = "fmradio-Fix-build-with-GStreamer-master.patch";
url = https://bugzilla.gnome.org/attachment.cgi?id=361178;
sha256 = "1h09mimlglj9hcmc3pfp0d6c277mqh2khwv9fryk43pkv3904d2w";
})
];
nativeBuildInputs = [
pkgconfig
intltool perl perlPackages.XMLParser

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "zynaddsubfx-${version}";
version = "3.0.3";
version = "3.0.4";
src = fetchurl {
url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2";
sha256 = "1hfpiqdm337gl4ynkmmp2qss2m5z8mzqzjrbiyg6w1v4js7l9phi";
sha256 = "18m4ax0x06y1hx4g2g3gf02v0bldkrrb5m7fsr5jlfp1kvjd2j1x";
};
buildInputs = [ alsaLib cairo libjack2 fftw fltk13 lash libjpeg libXpm minixml ntk zlib liblo ];

View File

@ -142,6 +142,9 @@ in runCommand
'';
preferLocalBuild = true;
allowSubstitutes = false;
passthru = {
unwrapped = androidStudio;
};
meta = with stdenv.lib; {
description = "The Official IDE for Android (${channel} channel)";
longDescription = ''

View File

@ -1,11 +1,11 @@
{ stdenv
{ gcc8Stdenv
, ctags
, appstream-glib
, desktop-file-utils
, docbook_xsl
, docbook_xml_dtd_43
, fetchurl
, flatpak
, glibcLocales
, gnome3
, libgit2-glib
, gobject-introspection
@ -31,28 +31,33 @@
, vte
, webkitgtk
, wrapGAppsHook
, dbus
, xvfb_run
}:
let
version = "3.30.3";
# Does not build with GCC 7
# https://gitlab.gnome.org/GNOME/gnome-builder/issues/868
stdenv = gcc8Stdenv;
in
stdenv.mkDerivation rec {
pname = "gnome-builder";
in stdenv.mkDerivation {
name = "${pname}-${version}";
version = "3.32.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "11h6apjyah91djf77m8xkl5rvdz7mwpp3bjc4yzzs9lm3pag764r";
sha256 = "00l7sshpndk995aw98mjmsc3mxhxzynlp7il551iwwjjdbc70qp4";
};
nativeBuildInputs = [
#appstream-glib # tests fail if these tools are available
appstream-glib
desktop-file-utils
docbook_xsl
docbook_xml_dtd_43
glibcLocales # for Meson's gtkdochelper
gobject-introspection
gtk-doc
hicolor-icon-theme
meson
(meson.override ({ inherit stdenv; }))
ninja
pkgconfig
python3
@ -64,6 +69,7 @@ in stdenv.mkDerivation {
ctags
flatpak
gnome3.devhelp
gnome3.glade
libgit2-glib
libpeas
vte
@ -83,6 +89,11 @@ in stdenv.mkDerivation {
webkitgtk
];
checkInputs = [
dbus
xvfb_run
];
outputs = [ "out" "devdoc" ];
prePatch = ''
@ -91,19 +102,25 @@ in stdenv.mkDerivation {
mesonFlags = [
"-Dpython_libprefix=${python3.libPrefix}"
"-Dwith_docs=true"
"-Ddocs=true"
# Making the build system correctly detect clang header and library paths
# is difficult. Somebody should look into fixing this.
"-Dwith_clang=false"
"-Dplugin_clang=false"
# Do not try to check if appstream images exist
"-Dnetwork_tests=false"
];
# Some tests fail due to being unable to find the Vte typelib, and I don't
# understand why. Somebody should look into fixing this.
doCheck = false;
doCheck = true;
preInstall = ''
export LC_ALL="en_US.utf-8"
checkPhase = ''
export NO_AT_BRIDGE=1
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
--config-file=${dbus.daemon}/share/dbus-1/session.conf \
meson test --print-errorlogs
'';
pythonPath = with python3.pkgs; requiredPythonModules [ pygobject3 ];

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, wrapGAppsHook, gsettings-desktop-schemas, gspell, gtksourceview4, libgee
, tepl, amtk, gnome3, glib, pkgconfig, intltool, itstool, libxml2 }:
let
version = "3.30.2";
version = "3.32.0";
pname = "gnome-latex";
in stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0fn3vy6w714wy0bz3y11zpdprpwxbv5xfiyyxjwp2nix9mbvv2sm";
sha256 = "1jdca9yhm7mm1aijd1a5amphgn15142kngky3id2am379ixrq1hg";
};
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";

View File

@ -12,10 +12,6 @@ stdenv.mkDerivation rec {
sha256 = "0yjn7y7al2xs8g0mrjvcym8gbjy4wmiv7lsljcrasjd7ymag1wgs";
};
cmakeFlags = [
"-DBUILD_TESTING=OFF"
];
nativeBuildInputs = [ cmake extra-cmake-modules ];
buildInputs = [ kdevelop-pg-qt threadweaver ktexteditor kdevelop-unwrapped ];

View File

@ -13,7 +13,6 @@ stdenv.mkDerivation rec {
};
cmakeFlags = [
"-DBUILD_TESTING=OFF"
"-DPYTHON_EXECUTABLE=${python}/bin/python"
];

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "okteta-${version}";
version = "0.25.5";
version = "0.26.0";
src = fetchurl {
url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
sha256 = "1680hx4n36msz86gyjsdr5v7nf8rpybvzrvfw8y98l95hfq3l6g9";
sha256 = "0rxvbllisz4zl687zgpb9jj2nbxgfhhf2bj8bnsfaab5jb6jpi2y";
};
nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];

View File

@ -23,7 +23,6 @@ stdenv.mkDerivation {
"-DBUILD_BIOMESH3D=1"
"-DWITH_TETGEN=1"
"-DBUILD_TYPE=Release"
"-DBUILD_TESTING=0"
"-DWITH_WXWIDGETS=ON"
"-DITK_DIR=${itk}/lib/InsightToolkit"
"-DGDCM_LIBRARY=${itk}/lib/libitkgdcm.a"

View File

@ -1,31 +1,89 @@
{ fetchurl, stdenv, meson, ninja, gtk3, libexif, libgphoto2, libsoup, libxml2, vala, sqlite
, webkitgtk, pkgconfig, gnome3, gst_all_1, libgudev, libraw, glib, json-glib, gcr
, gettext, desktop-file-utils, gdk_pixbuf, librsvg, wrapGAppsHook
, gobject-introspection, itstool, libgdata, python3 }:
{ stdenv
, fetchurl
, fetchpatch
, meson
, ninja
, gtk3
, libexif
, libgphoto2
, libwebp
, libsoup
, libxml2
, vala
, sqlite
, webkitgtk
, pkgconfig
, gnome3
, gst_all_1
, libgudev
, libraw
, glib
, json-glib
, gcr
, libgee
, gexiv2
, librest
, gettext
, desktop-file-utils
, gdk_pixbuf
, librsvg
, wrapGAppsHook
, gobject-introspection
, itstool
, libgdata
, libchamplain
, python3
}:
# for dependencies see https://wiki.gnome.org/Apps/Shotwell/BuildingAndInstalling
let
stdenv.mkDerivation rec {
pname = "shotwell";
version = "0.30.2";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
version = "0.31.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "0pam0si110vkc65kh59lrmgkv91f9zxmf1gpfm99ixjgw25rfi8r";
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1pwq953wl7h9cvw7rvlr6pcbq9w28kkr7ddb8x2si81ngp0imwyx";
};
nativeBuildInputs = [
meson ninja vala pkgconfig itstool gettext desktop-file-utils python3 wrapGAppsHook gobject-introspection
meson
ninja
vala
pkgconfig
itstool
gettext
desktop-file-utils
python3
wrapGAppsHook
gobject-introspection
];
buildInputs = [
gtk3 libexif libgphoto2 libsoup libxml2 sqlite webkitgtk
gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.libgee
libgudev gnome3.gexiv2 gnome3.gsettings-desktop-schemas
libraw json-glib glib gdk_pixbuf librsvg gnome3.rest
gcr gnome3.adwaita-icon-theme libgdata
gtk3
libexif
libgphoto2
libwebp
libsoup
libxml2
sqlite
webkitgtk
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
libgee
libgudev
gexiv2
gnome3.gsettings-desktop-schemas
libraw
json-glib
glib
gdk_pixbuf
librsvg
librest
gcr
gnome3.adwaita-icon-theme
libgdata
libchamplain
];
postPatch = ''

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "yEd-${version}";
version = "3.18.2";
version = "3.19";
src = fetchzip {
url = "https://www.yworks.com/resources/yed/demo/${name}.zip";
sha256 = "1csj19j9mfx4jfc949sz672h8lnfj217nn32d54cxj8llks82ycy";
sha256 = "0l70pc7wl2ghfkjab9w2mbx7crwha7xwkrpmspsi5c6q56dw7s33";
};
nativeBuildInputs = [ makeWrapper unzip ];

View File

@ -1,21 +1,47 @@
{ stdenv, fetchurl, meson, ninja, pkgconfig, vala, gettext
, libxml2, desktop-file-utils, wrapGAppsHook
, glib, gtk3, libgtop, gnome3 }:
{ stdenv
, fetchurl
, meson
, ninja
, pkgconfig
, vala
, gettext
, libxml2
, desktop-file-utils
, wrapGAppsHook
, glib
, gtk3
, libgtop
, libdazzle
, gnome3
}:
let
stdenv.mkDerivation rec {
pname = "gnome-usage";
version = "3.30.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
version = "3.32.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "0f1vccw916az8hzsqmx6f57jvl68s3sbd3qk4rpwn42ks1v7nmsh";
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0bgszckddfpd3czyb9fddx4pgv5yv44sxc45dfk2kgqyy169gjih";
};
nativeBuildInputs = [ meson ninja pkgconfig vala gettext libxml2 desktop-file-utils wrapGAppsHook ];
nativeBuildInputs = [
desktop-file-utils
gettext
libxml2
meson
ninja
pkgconfig
vala
wrapGAppsHook
];
buildInputs = [ glib gtk3 libgtop gnome3.adwaita-icon-theme ];
buildInputs = [
glib
gnome3.adwaita-icon-theme
gtk3
libdazzle
libgtop
];
postPatch = ''
chmod +x build-aux/meson/postinstall.sh
@ -29,7 +55,7 @@ in stdenv.mkDerivation rec {
};
meta = with stdenv.lib; {
description = "";
description = "A nice way to view information about use of system resources, like memory and disk space";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = gnome3.maintainers;

View File

@ -9,13 +9,13 @@
buildPythonApplication rec {
pname = "orca";
version = "3.30.2";
version = "3.32.0";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "17asibc46i5gr2fw04jvvdi85zzmxwlnhyq7r6cr3m5prrdr8a53";
sha256 = "05jqzlg0f1x53hyl0l9282ynmw37159g6dsbrid12b7sjs12cc1i";
};
patches = [

View File

@ -6,12 +6,12 @@ let inherit (python3Packages) python buildPythonApplication fetchPypi;
in buildPythonApplication rec {
name = "${pname}-${version}";
pname = "safeeyes";
version = "2.0.8.1";
version = "2.0.9";
namePrefix = "";
src = fetchPypi {
inherit pname version;
sha256 = "1x52ym8n4r6h38n4mcydxkvz71hhrd9wbiq4gzvwrai0xzl6qqsq";
sha256 = "13q06jv8hm0dynmr3g5pf1m4j3w9iabrpz1nhpl02f7x0d90whg2";
};
buildInputs = [

View File

@ -1,5 +1,9 @@
{fetchFromGitHub, stdenv, gtk3, pythonPackages, gobject-introspection}:
pythonPackages.buildPythonApplication rec {
{ fetchFromGitHub, lib, gobject-introspection, gtk3, python3Packages }:
# Although we copy in the udev rules here, you probably just want to use logitech-udev-rules instead of
# adding this to services.udev.packages on NixOS
python3Packages.buildPythonApplication rec {
pname = "solaar-unstable";
version = "2019-01-30";
@ -10,7 +14,8 @@ pythonPackages.buildPythonApplication rec {
sha256 = "0xg181xcwzzs8pdqvjrkjyaaga7ir93hzjvd17j9g3ns8xfj2mvr";
};
propagatedBuildInputs = [pythonPackages.pygobject3 pythonPackages.pyudev gobject-introspection gtk3];
propagatedBuildInputs = with python3Packages; [ gobject-introspection gtk3 pygobject3 pyudev ];
postInstall = ''
wrapProgram "$out/bin/solaar" \
--prefix PYTHONPATH : "$PYTHONPATH" \
@ -19,12 +24,12 @@ pythonPackages.buildPythonApplication rec {
--prefix PYTHONPATH : "$PYTHONPATH" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH"
mkdir -p $out/lib/udev/rules.d
cp rules.d/*.rules $out/lib/udev/rules.d/
install -Dm644 -t $out/etc/udev/rules.d rules.d/*.rules
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
meta = with lib; {
description = "Linux devices manager for the Logitech Unifying Receiver";
longDescription = ''
Solaar is a Linux device manager for Logitechs Unifying Receiver
@ -40,6 +45,6 @@ pythonPackages.buildPythonApplication rec {
license = licenses.gpl2;
homepage = https://pwr.github.io/Solaar/;
platforms = platforms.linux;
maintainers = [maintainers.spinus maintainers.ysndr];
maintainers = with maintainers; [ spinus ysndr ];
};
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, gettext, pkgconfig, glib, libnotify, gtk3, libgee
, keybinder3, json-glib, zeitgeist, vala_0_38, hicolor-icon-theme, gobject-introspection
, keybinder3, json-glib, zeitgeist, vala, hicolor-icon-theme, gobject-introspection
}:
let
@ -13,7 +13,7 @@ in stdenv.mkDerivation rec {
};
nativeBuildInputs = [
pkgconfig gettext vala_0_38
pkgconfig gettext vala
# For setup hook
gobject-introspection
];

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "3.6";
version = "3.7";
name = "xtermcontrol-${version}";
src = fetchurl {
url = "https://thrysoee.dk/xtermcontrol/xtermcontrol-${version}.tar.gz";
sha256 = "01bwgxya6qh4br2lx3v98p7j1b99skgr6c1frw5kdkxy57qlpgkz";
sha256 = "04m12ddaps5sdbqvkwkp6lh81i8vh5ya5gzcxkrkilsga3m6qff2";
};
meta = {

View File

@ -25,13 +25,14 @@ let
'';
};
in stdenv.mkDerivation rec {
name = "w3m-0.5.3+git20180125";
pname = "w3m";
version = "0.5.3+git20190105";
src = fetchFromGitHub {
owner = "tats";
repo = "w3m";
rev = "v0.5.3+git20180125";
sha256 = "0dafdfx1yhrvhbqzslkcapj09dvf64m2jadz3wl2icni0k4msq90";
repo = pname;
rev = "v${version}";
sha256 = "1fbg2p8qh2gvi3g4iz4q6vc0k70pf248r4yndi5lcn2m3mzvjx0i";
};
NIX_LDFLAGS = optionalString stdenv.isSunOS "-lsocket -lnsl";

View File

@ -1,4 +1,4 @@
{ lib, python36 }:
{ lib, python3 }:
# Flexget have been a trouble maker in the past,
# if you see flexget breaking when updating packages, don't worry.
@ -6,7 +6,7 @@
# -- Mic92
let
python' = python36.override { inherit packageOverrides; };
python' = python3.override { inherit packageOverrides; };
packageOverrides = self: super: {
guessit = super.guessit.overridePythonAttrs (old: rec {
@ -24,16 +24,14 @@ with python'.pkgs;
buildPythonApplication rec {
pname = "FlexGet";
version = "2.17.20";
version = "2.20.17";
src = fetchPypi {
inherit pname version;
sha256 = "a09ef9482ed54f7e96eb8b4d08c59687c5c43a3341c9d2675383693e6c3681c3";
sha256 = "ed021d8d5c10555dad8dc1cb93c012e17b541fc25fc122b7ca76bb7e53fe82b3";
};
postPatch = ''
# build for the correct python version
substituteInPlace setup.cfg --replace $'[bdist_wheel]\npython-tag = py27' ""
# remove dependency constraints
sed 's/==\([0-9]\.\?\)\+//' -i requirements.txt
'';
@ -47,12 +45,13 @@ buildPythonApplication rec {
beautifulsoup4 html5lib
PyRSS2Gen pynzb rpyc jinja2
requests dateutil jsonschema
pathpy guessit APScheduler
pathpy guessit rebulk APScheduler
terminaltables colorclass
cherrypy flask flask-restful
flask-restplus flask-compress
flask_login flask-cors
pyparsing zxcvbn-python future
progressbar
# Optional requirements
deluge-client
# Plugins

View File

@ -3,15 +3,15 @@
buildGoPackage rec {
name = "coyim-${version}";
version = "0.3.7_1";
version = "0.3.11";
goPackagePath = "github.com/twstrike/coyim";
goPackagePath = "github.com/coyim/coyim";
src = fetchFromGitHub {
owner = "twstrike";
owner = "coyim";
repo = "coyim";
rev = "df2c52fe865d38fa27e8a7af1d87612e8c048805";
sha256 = "1sna1n9dz1crws6cb1yjhy2kznbngjlbiw2diycshvbfigf7y7xl";
rev = "v${version}";
sha256 = "1g8nf56j17rdhhj7pv3ha1rb2mfc0mdvyzl35pgcki08w7iw08j3";
};
nativeBuildInputs = [ pkgconfig wrapGAppsHook glib cairo gdk_pixbuf gtk3 gnome3.adwaita-icon-theme ];

View File

@ -54,6 +54,7 @@ stdenv.mkDerivation rec {
'';
meta = with stdenv.lib; {
broken = true;
description = "An extensible Twitter client";
homepage = https://mikutter.hachune.net;
platforms = ruby.meta.platforms;

View File

@ -1,16 +1,18 @@
{ stdenv, fetchurl, dpkg
, alsaLib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, gdk_pixbuf, glib, glibc, gnome2, gnome3
, gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg }:
, gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
, at-spi2-atk }:
let
# Please keep the version x.y.0.z and do not update to x.y.76.z because the
# source of the latter disappears much faster.
version = "8.34.0.78";
version = "8.42.76.54";
rpath = stdenv.lib.makeLibraryPath [
alsaLib
atk
at-spi2-atk
cairo
cups
curl
@ -56,7 +58,7 @@ let
if stdenv.hostPlatform.system == "x86_64-linux" then
fetchurl {
url = "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb";
sha256 = "1986nvdw1cpj06rq76hjsif0j4z5g2k01v73r4c4n43q7dgzl5z0";
sha256 = "1r2wkaa4ss6b8289db3p012nlhvljbx57hp7jc9n0mp19yphd07l";
}
else
throw "Skype for linux is not supported on ${stdenv.hostPlatform.system}";

View File

@ -13,7 +13,8 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "1sc8c0w2dbvcdv16idw02y35x0jx5ff6ddzij09pmqjx55zgsjf7";
buildInputs = [ pkgconfig openssl ] ++ stdenv.lib.optional stdenv.isDarwin Security;
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ openssl ] ++ stdenv.lib.optional stdenv.isDarwin Security;
cargoBuildFlags = [ "--all" ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "tixati-${version}";
version = "2.58";
version = "2.59";
src = fetchurl {
url = "https://download2.tixati.com/download/tixati-${version}-1.x86_64.manualinstall.tar.gz";
sha256 = "077z5i0grkxkgw2npylv4r897434k2pr03brqx5hjpjw3797r141";
sha256 = "0vf5y9kj2g7psgdzv2r46jdh5krdps838ca4wwwxi0dd1mwa65my";
};
installPhase = ''

View File

@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
version = "unstable-2018-10-18";
name = "ps2client-${version}";
src = fetchFromGitHub {
owner = "ps2dev";
repo = "ps2client";
rev = "92fcaf18aabf74daaed40bd50d428cce326a87c0";
sha256 = "1rlmns44pxm6dkh6d3cz9sw8v7pvi53r7r5r3kgwdzkhixjj0cdg";
};
patchPhase = ''
sed -i -e "s|-I/usr/include||g" -e "s|-I/usr/local/include||g" Makefile
'';
installPhase = ''
make PREFIX=$out install
'';
meta = with stdenv.lib; {
description = "Desktop clients to interact with ps2link and ps2netfs";
homepage = https://github.com/ps2dev/ps2client;
license = licenses.bsd3;
maintainers = [ maintainers.genesis ];
platforms = platforms.unix;
};
}

View File

@ -13,13 +13,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "remmina";
version = "1.3.3";
version = "1.3.4";
src = fetchFromGitLab {
owner = "Remmina";
repo = "Remmina";
rev = "v${version}";
sha256 = "09mizr9igf22kk26rdx5masai8ghd2nbqryvswkybvia2s6lccrs";
sha256 = "18p6v2lalpiba0r318grlc2bvqh2qlpjw811i0934g33faviyfj1";
};
nativeBuildInputs = [ cmake ninja pkgconfig wrapGAppsHook ];

View File

@ -2,13 +2,13 @@
python3Packages.buildPythonApplication rec {
name = "syncplay-${version}";
version = "1.6.2";
version = "1.6.3";
format = "other";
src = fetchurl {
url = https://github.com/Syncplay/syncplay/archive/v1.6.2.tar.gz;
sha256 = "1850icvifq4487gqh8awvmvrjdbbkx2kshmysr0fbi6vcf0f3wj2";
url = https://github.com/Syncplay/syncplay/archive/v1.6.3.tar.gz;
sha256 = "151p1njlp3dp3pfr3l3m6ia5829zvjyjh4p45j6rgnicbh8sqrgs";
};
propagatedBuildInputs = with python3Packages; [ pyside twisted ];

View File

@ -13,11 +13,11 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "znc-${version}";
version = "1.7.2";
version = "1.7.3";
src = fetchurl {
url = "https://znc.in/releases/archive/${name}.tar.gz";
sha256 = "1ac2csl5jr56vahnxdynlvrhwlvcc1gqxvyifckc6cn5aj7ygd30";
sha256 = "0g8i5hsl4kinpz1wp0a2zniidv3w2sd6awq8676fds516wcc6k0y";
};
nativeBuildInputs = [ pkgconfig ];

View File

@ -65,5 +65,7 @@ mkDerivation rec {
maintainers = with maintainers; [ phreedom ebzzry zraexy ];
platforms = platforms.linux;
license = with licenses; [ gpl2 lgpl2 ];
hydraPlatforms = [];
broken = true; # fails to start, kde home not found
};
}

View File

@ -1,17 +1,17 @@
{ fetchurl, stdenv, gtk, pkgconfig, libofx, intltool, wrapGAppsHook
{ fetchurl, stdenv, gtk, pkgconfig, libgsf, libofx, intltool, wrapGAppsHook
, hicolor-icon-theme, libsoup, gnome3 }:
stdenv.mkDerivation rec {
name = "grisbi-${version}";
version = "1.0.4";
version = "1.2.1";
src = fetchurl {
url = "mirror://sourceforge/grisbi/${name}.tar.bz2";
sha256 = "1rh2iqvi7lpz5l57vn7qk9azil3y1g65mfbi9hhbx956knh9bpf6";
sha1 = "1159c5491967fa7afd251783013579ffb45b891b";
};
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
buildInputs = [ gtk libofx intltool hicolor-icon-theme libsoup
buildInputs = [ gtk libgsf libofx intltool hicolor-icon-theme libsoup
gnome3.adwaita-icon-theme ];
meta = with stdenv.lib; {

View File

@ -5,7 +5,7 @@
assert pythonSupport -> python != null && swig != null;
let
version = "1.0.0-RC";
version = "2.0.0";
in stdenv.mkDerivation rec {
name = "gnuradio-limesdr-${version}";
@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
owner = "myriadrf";
repo = "gr-limesdr";
rev = "v${version}";
sha256 = "0b34mg9nfar2gcir98004ixrxmxi8p3p2hrvvi1razd869x2a0lf";
sha256 = "0ldqvfwl0gil89l9s31fjf9d7ki0dk572i8vna336igfaz348ypq";
};
nativeBuildInputs = [

View File

@ -15,9 +15,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ itk vtk ];
cmakeFlags = [ "-DANTS_SUPERBUILD=FALSE" "-DUSE_VTK=TRUE"
# as cmake otherwise tries to download test data:
"-DBUILD_TESTING=FALSE" ];
cmakeFlags = [ "-DANTS_SUPERBUILD=FALSE" "-DUSE_VTK=TRUE" ];
enableParallelBuilding = true;

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libminc ];
propagatedBuildInputs = with perlPackages; [ perl GetoptTabular MNI-Perllib ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/" "-DBUILD_TESTING=FALSE" ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/" ];
# testing broken: './minc_wrapper: Permission denied' from Testing/ellipse0.mnc
postFixup = ''
@ -33,4 +33,3 @@ stdenv.mkDerivation rec {
license = licenses.free;
};
}

View File

@ -0,0 +1,19 @@
{ stdenv, fetchurl, zlib }:
stdenv.mkDerivation rec {
pname = "stacks";
version = "2.3e";
src = fetchurl {
url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz";
sha256 = "046gmq8nzqy5v70ydqrhib2aiyrlja3cljvd37w4qbd4ryj3jr0w";
};
buildInputs = [ zlib ];
meta = {
description = "Software pipeline for building loci from short-read sequences";
homepage = http://catchenlab.life.illinois.edu/stacks/;
maintainers = [ stdenv.lib.maintainers.bzizou ];
license = stdenv.lib.licenses.gpl3;
};
}

View File

@ -4,12 +4,12 @@
}:
stdenv.mkDerivation rec {
version = "6.3";
version = "6.4";
name = "quantum-espresso-${version}";
src = fetchurl {
url = "https://gitlab.com/QEF/q-e/-/archive/qe-${version}/q-e-qe-${version}.tar.gz";
sha256 = "1738z3nhkzcrgnhnfg1r4lipbwvcrcprwhzjbjysnylmzbzwhrs0";
sha256 = "1zjblzf0xzwmhmpjm56xvv8wsv5jmp5a204irzyicmd77p86c4vq";
};
passthru = {
@ -20,12 +20,6 @@ stdenv.mkDerivation rec {
patchShebangs configure
'';
# remove after 6.3 version:
# makefile needs to ignore install directory easier than applying patch
preInstall = ''
printf "\n.PHONY: install\n" >> Makefile
'';
buildInputs = [ fftw openblas gfortran ]
++ (stdenv.lib.optionals (mpi != null) [ mpi ]);

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "verilator-${version}";
version = "4.010";
version = "4.012";
src = fetchurl {
url = "https://www.veripool.org/ftp/${name}.tgz";
sha256 = "0wfmazhxb6bf6qznh7v756fv7jayjgkzar33gazkwdwfwa7p8lan";
sha256 = "0xzndazp1g5qxzfirgiv219zmx7qyxfn7wsqbfq93cp1m6rp4pai";
};
enableParallelBuilding = true;

View File

@ -20,7 +20,7 @@ assert sendEmailSupport -> perlSupport;
assert svnSupport -> perlSupport;
let
version = "2.19.2";
version = "2.21.0";
svn = subversionClient.override { perlBindings = perlSupport; };
in
@ -29,7 +29,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
sha256 = "1scbggzghkzzfqg4ky3qh7h9w87c3zya4ls5disz7dbx56is7sgw";
sha256 = "0a0d0b07rmvs985zpndxxy0vzr0vq53kq5kyd68iv6gf8gkirjwc";
};
outputs = [ "out" ] ++ stdenv.lib.optional perlSupport "gitweb";

View File

@ -3,9 +3,10 @@ and (2) make sure `gitman.info' isn't produced since it's broken (duplicate
node names).
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 26a2342bea..ceccd67ebb 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -122,7 +122,7 @@
@@ -132,7 +132,7 @@ HTML_REPO = ../../git-htmldocs
MAKEINFO = makeinfo
INSTALL_INFO = install-info
@ -14,7 +15,7 @@ diff --git a/Documentation/Makefile b/Documentation/Makefile
DBLATEX = dblatex
ASCIIDOC_DBLATEX_DIR = /etc/asciidoc/dblatex
DBLATEX_COMMON = -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty
@@ -240,7 +240,7 @@
@@ -250,7 +250,7 @@ man1: $(DOC_MAN1)
man5: $(DOC_MAN5)
man7: $(DOC_MAN7)
@ -23,7 +24,7 @@ diff --git a/Documentation/Makefile b/Documentation/Makefile
pdf: user-manual.pdf
@@ -256,10 +256,9 @@
@@ -266,10 +266,9 @@ install-man: man
install-info: info
$(INSTALL) -d -m 755 $(DESTDIR)$(infodir)

View File

@ -1,7 +1,8 @@
diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
index 1afe9fc858..05dd7c3a90 100644
--- a/Documentation/git-send-email.txt
+++ b/Documentation/git-send-email.txt
@@ -208,8 +208,7 @@ a password is obtained using 'git-credential'.
@@ -215,8 +215,7 @@ a password is obtained using 'git-credential'.
specify a full pathname of a sendmail-like program instead;
the program must support the `-i` option. Default value can
be specified by the `sendemail.smtpServer` configuration
@ -9,14 +10,15 @@ diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
- `/usr/sbin`, `/usr/lib` and $PATH if such program is
+ option; the built-in default is to search in $PATH if such program is
available, falling back to `localhost` otherwise.
--smtp-server-port=<port>::
diff --git a/git-send-email.perl b/git-send-email.perl
index 8eb63b5a2f..74a61d8213 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -944,8 +944,7 @@ if (defined $reply_to) {
@@ -956,8 +956,7 @@ sub expand_one_alias {
}
if (!defined $smtp_server) {
- my @sendmail_paths = qw( /usr/sbin/sendmail /usr/lib/sendmail );
- push @sendmail_paths, map {"$_/sendmail"} split /:/, $ENV{PATH};

View File

@ -1,94 +1,23 @@
diff --git a/git-sh-i18n.sh b/git-sh-i18n.sh
index e1d917fd27..e90f8e1414 100644
--- a/git-sh-i18n.sh
+++ b/git-sh-i18n.sh
@@ -15,87 +15,11 @@
fi
export TEXTDOMAINDIR
-# First decide what scheme to use...
-GIT_INTERNAL_GETTEXT_SH_SCHEME=fallthrough
-if test -n "$GIT_GETTEXT_POISON"
-then
- GIT_INTERNAL_GETTEXT_SH_SCHEME=poison
-elif test -n "@@USE_GETTEXT_SCHEME@@"
-then
- GIT_INTERNAL_GETTEXT_SH_SCHEME="@@USE_GETTEXT_SCHEME@@"
-elif test -n "$GIT_INTERNAL_GETTEXT_TEST_FALLBACKS"
-then
- : no probing necessary
@@ -26,7 +26,7 @@ then
elif test -n "$GIT_INTERNAL_GETTEXT_TEST_FALLBACKS"
then
: no probing necessary
-elif type gettext.sh >/dev/null 2>&1
-then
- # GNU libintl's gettext.sh
- GIT_INTERNAL_GETTEXT_SH_SCHEME=gnu
-elif test "$(gettext -h 2>&1)" = "-h"
-then
- # gettext binary exists but no gettext.sh. likely to be a gettext
- # binary on a Solaris or something that is not GNU libintl and
- # lack eval_gettext.
- GIT_INTERNAL_GETTEXT_SH_SCHEME=gettext_without_eval_gettext
-fi
-export GIT_INTERNAL_GETTEXT_SH_SCHEME
-
-# ... and then follow that decision.
-case "$GIT_INTERNAL_GETTEXT_SH_SCHEME" in
-gnu)
- # Use libintl's gettext.sh, or fall back to English if we can't.
+elif type @gettext@/bin/gettext.sh >/dev/null 2>&1
then
# GNU libintl's gettext.sh
GIT_INTERNAL_GETTEXT_SH_SCHEME=gnu
@@ -43,7 +43,8 @@ export GIT_INTERNAL_GETTEXT_SH_SCHEME
case "$GIT_INTERNAL_GETTEXT_SH_SCHEME" in
gnu)
# Use libintl's gettext.sh, or fall back to English if we can't.
- . gettext.sh
- ;;
-gettext_without_eval_gettext)
- # Solaris has a gettext(1) but no eval_gettext(1)
- eval_gettext () {
- gettext "$1" | (
- export PATH $(git sh-i18n--envsubst --variables "$1");
- git sh-i18n--envsubst "$1"
- )
- }
-
- eval_ngettext () {
- ngettext "$1" "$2" "$3" | (
- export PATH $(git sh-i18n--envsubst --variables "$2");
- git sh-i18n--envsubst "$2"
- )
- }
- ;;
-poison)
- # Emit garbage so that tests that incorrectly rely on translatable
- # strings will fail.
- gettext () {
- printf "%s" "# GETTEXT POISON #"
- }
-
- eval_gettext () {
- printf "%s" "# GETTEXT POISON #"
- }
-
- eval_ngettext () {
- printf "%s" "# GETTEXT POISON #"
- }
- ;;
-*)
- gettext () {
- printf "%s" "$1"
- }
-
- eval_gettext () {
- printf "%s" "$1" | (
- export PATH $(git sh-i18n--envsubst --variables "$1");
- git sh-i18n--envsubst "$1"
- )
- }
+# GNU gettext
+export GIT_INTERNAL_GETTEXT_SH_SCHEME=gnu
+export PATH=@gettext@/bin:$PATH
- eval_ngettext () {
- (test "$3" = 1 && printf "%s" "$1" || printf "%s" "$2") | (
- export PATH $(git sh-i18n--envsubst --variables "$2");
- git sh-i18n--envsubst "$2"
- )
- }
- ;;
-esac
+. @gettext@/bin/gettext.sh
# Git-specific wrapper functions
gettextln () {
+ . @gettext@/bin/gettext.sh
+ export PATH=@gettext@/bin:$PATH
;;
gettext_without_eval_gettext)
# Solaris has a gettext(1) but no eval_gettext(1)

View File

@ -1,12 +1,13 @@
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 8665b0a9b6..8bb892b1af 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -923,7 +923,7 @@
@@ -1227,7 +1227,7 @@ elif test -n "$GIT_TEST_INSTALLED"
then
GIT_EXEC_PATH=$($GIT_TEST_INSTALLED/git --exec-path) ||
error "Cannot run git from $GIT_TEST_INSTALLED."
- PATH=$GIT_TEST_INSTALLED:$GIT_BUILD_DIR:$PATH
- PATH=$GIT_TEST_INSTALLED:$GIT_BUILD_DIR/t/helper:$PATH
+ PATH=$GIT_TEST_INSTALLED:$GIT_BUILD_DIR/t/helper:$GIT_BUILD_DIR:$PATH
GIT_EXEC_PATH=${GIT_TEST_EXEC_PATH:-$GIT_EXEC_PATH}
else # normal case, use ../bin-wrappers only unless $with_dashes:
git_bin_dir="$GIT_BUILD_DIR/bin-wrappers"
if test -n "$no_bin_wrappers"

View File

@ -1,18 +1,18 @@
diff --git a/connect.c b/connect.c
index c3a014c5b..fbca3262b 100644
index 4813f005ab..b3f12f3268 100644
--- a/connect.c
+++ b/connect.c
@@ -1010,7 +1010,7 @@ static void fill_ssh_args(struct child_process *conn, const char *ssh_host,
@@ -1183,7 +1183,7 @@ static void fill_ssh_args(struct child_process *conn, const char *ssh_host,
ssh = getenv("GIT_SSH");
if (!ssh)
- ssh = "ssh";
+ ssh = "@ssh@";
variant = determine_ssh_variant(ssh, 0);
}
diff --git a/git-gui/lib/remote_add.tcl b/git-gui/lib/remote_add.tcl
index 480a6b30d..781720424 100644
index 480a6b30d0..7817204241 100644
--- a/git-gui/lib/remote_add.tcl
+++ b/git-gui/lib/remote_add.tcl
@@ -139,7 +139,7 @@ method _add {} {

View File

@ -1,22 +1,22 @@
{ stdenv, fetchurl, itstool, python3, intltool, wrapGAppsHook
, libxml2, gobject-introspection, gtk3, gtksourceview, gnome3
, dbus, xvfb_run
, gsettings-desktop-schemas, dbus, xvfb_run
}:
python3.pkgs.buildPythonApplication rec {
pname = "meld";
version = "3.20.0";
version = "3.20.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "11khi1sg02k3b9qdag3r939cwi27cql4kjim7jhxf9ckfhpzwh6b";
sha256 = "0jdj7kd6vj1mdc16gvrj1kar88b2j5875ajq18fx7cbc9ny46j55";
};
nativeBuildInputs = [
intltool itstool libxml2 gobject-introspection wrapGAppsHook
];
buildInputs = [
gtk3 gtksourceview gnome3.gsettings-desktop-schemas gnome3.adwaita-icon-theme
gtk3 gtksourceview gsettings-desktop-schemas gnome3.adwaita-icon-theme
gobject-introspection # fixes https://github.com/NixOS/nixpkgs/issues/56943 for now
];
propagatedBuildInputs = with python3.pkgs; [ pygobject3 pycairo ];

View File

@ -11,7 +11,7 @@
# Codecs, audio
libopus, lame, libvorbis, a52dec, speex, libsamplerate,
# Text processing
libiconv, fribidi, fontconfig, freetype, libass, jansson, libxml2,
libiconv, fribidi, fontconfig, freetype, libass, jansson, libxml2, harfbuzz,
# Optical media
libdvdread, libdvdnav, libdvdcss, libbluray,
useGtk ? true, wrapGAppsHook ? null,
@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
buildInputs = [
ffmpeg-full libogg libtheora x264 x265 libvpx
libopus lame libvorbis a52dec speex libsamplerate
libiconv fribidi fontconfig freetype libass jansson libxml2
libiconv fribidi fontconfig freetype libass jansson libxml2 harfbuzz
libdvdread libdvdnav libdvdcss libbluray
] ++ lib.optionals useGtk [
glib gtk3 libappindicator-gtk3 libnotify

View File

@ -1,7 +1,7 @@
{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper
, docutils, perl, pkgconfig, python3, which, ffmpeg_4
, freefont_ttf, freetype, libass, libpthreadstubs, mujs
, lua, libuchardet, libiconv ? null, darwin
, nv-codec-headers, lua, libuchardet, libiconv ? null, darwin
, waylandSupport ? stdenv.isLinux
, wayland ? null
@ -141,7 +141,7 @@ in stdenv.mkDerivation rec {
buildInputs = [
ffmpeg_4 freetype libass libpthreadstubs
luaEnv libuchardet mujs
luaEnv libuchardet mujs nv-codec-headers
] ++ optional alsaSupport alsaLib
++ optional archiveSupport libarchive
++ optional bluraySupport libbluray

View File

@ -0,0 +1,48 @@
{ stdenv, fetchFromGitHub, python }:
stdenv.mkDerivation rec {
version = "0.9.8";
pname = "charliecloud";
src = fetchFromGitHub {
owner = "hpc";
repo = "charliecloud";
rev = "v${version}";
sha256 = "1w1wy4sj9zqfysrpf04shhppcf5ap4rp7i3ja81sv2fm27k4m9nl";
};
buildInputs = [ python ];
preConfigure = ''
substituteInPlace Makefile --replace '/bin/bash' '${stdenv.shell}'
patchShebangs test/
'';
makeFlags = [
"PREFIX=$(out)"
"LIBEXEC_DIR=lib/charliecloud"
];
postInstall = ''
mkdir -p $out/share/charliecloud
mv $out/lib/charliecloud/examples $out/share/charliecloud
mv $out/lib/charliecloud/test $out/share/charliecloud
'';
meta = {
description = "User-defined software stacks (UDSS) for high-performance computing (HPC) centers";
longDescription = ''
Charliecloud uses Linux user namespaces to run containers with no
privileged operations or daemons and minimal configuration changes on
center resources. This simple approach avoids most security risks
while maintaining access to the performance and functionality already
on offer.
'';
homepage = https://hpc.github.io/charliecloud;
license = stdenv.lib.licenses.asl20;
maintainers = [ stdenv.lib.maintainers.bzizou ];
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -329,6 +329,7 @@ stdenv.mkDerivation {
{ description =
stdenv.lib.attrByPath ["meta" "description"] "System binary utilities" bintools_
+ " (wrapper script)";
priority = 10;
} // optionalAttrs useMacosReexportHack {
platforms = stdenv.lib.platforms.darwin;
};

View File

@ -1,4 +1,4 @@
{ stdenv, cacert, git, cargo, rustc, cargo-vendor, fetchcargo, python3 }:
{ stdenv, cacert, git, cargo, rustc, cargo-vendor, fetchcargo, python3, buildPackages }:
{ name ? "${args.pname}-${args.version}"
, cargoSha256 ? "unset"
@ -9,14 +9,17 @@
, sourceRoot ? null
, logLevel ? ""
, buildInputs ? []
, nativeBuildInputs ? []
, cargoUpdateHook ? ""
, cargoDepsHook ? ""
, cargoBuildFlags ? []
, buildType ? "release"
, cargoVendorDir ? null
, ... } @ args:
assert cargoVendorDir == null -> cargoSha256 != "unset";
assert buildType == "release" || buildType == "debug";
let
cargoDeps = if cargoVendorDir == null
@ -37,20 +40,24 @@ let
cargoDepsCopy="$sourceRoot/${cargoVendorDir}"
'';
ccForBuild="${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc";
cxxForBuild="${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}c++";
ccForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc";
cxxForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++";
releaseDir = "target/${stdenv.hostPlatform.config}/${buildType}";
in stdenv.mkDerivation (args // {
inherit cargoDeps;
patchRegistryDeps = ./patch-registry-deps;
buildInputs = [ cacert git cargo rustc ] ++ buildInputs;
nativeBuildInputs = [ cargo rustc git cacert ] ++ nativeBuildInputs;
inherit buildInputs;
patches = cargoPatches ++ patches;
configurePhase = args.configurePhase or ''
runHook preConfigure
# noop
runHook postConfigure
'';
PKG_CONFIG_ALLOW_CROSS =
if stdenv.buildPlatform != stdenv.hostPlatform then 1 else 0;
postUnpack = ''
eval "$cargoDepsHook"
@ -63,17 +70,51 @@ in stdenv.mkDerivation (args // {
config=${./fetchcargo-default-config.toml};
fi;
substitute $config .cargo/config \
--subst-var-by vendor "$(pwd)/$cargoDepsCopy"
--subst-var-by vendor "$(pwd)/$cargoDepsCopy"
unset cargoDepsCopy
export RUST_LOG=${logLevel}
'' + (args.postUnpack or "");
configurePhase = args.configurePhase or ''
runHook preConfigure
mkdir -p .cargo
cat >> .cargo/config <<'EOF'
[target."${stdenv.buildPlatform.config}"]
"linker" = "${ccForBuild}"
${stdenv.lib.optionalString (stdenv.buildPlatform.config != stdenv.hostPlatform.config) ''
[target."${stdenv.hostPlatform.config}"]
"linker" = "${ccForHost}"
''}
EOF
cat .cargo/config
runHook postConfigure
'';
buildPhase = with builtins; args.buildPhase or ''
runHook preBuild
echo "Running cargo build --release ${concatStringsSep " " cargoBuildFlags}"
cargo build --release --frozen ${concatStringsSep " " cargoBuildFlags}
(
set -x
env \
"CC_${stdenv.buildPlatform.config}"="${ccForBuild}" \
"CXX_${stdenv.buildPlatform.config}"="${cxxForBuild}" \
"CC_${stdenv.hostPlatform.config}"="${ccForHost}" \
"CXX_${stdenv.hostPlatform.config}"="${cxxForHost}" \
cargo build \
--${buildType} \
--target ${stdenv.hostPlatform.config} \
--frozen ${concatStringsSep " " cargoBuildFlags}
)
# rename the output dir to a architecture independent one
mapfile -t targets < <(find "$NIX_BUILD_TOP" -type d | grep '${releaseDir}$')
for target in "''${targets[@]}"; do
rm -rf "$target/../../${buildType}"
ln -srf "$target" "$target/../../"
done
runHook postBuild
'';
@ -86,11 +127,21 @@ in stdenv.mkDerivation (args // {
doCheck = args.doCheck or true;
inherit releaseDir;
installPhase = args.installPhase or ''
runHook preInstall
mkdir -p $out/bin $out/lib
find target/release -maxdepth 1 -type f -executable ! \( -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \) -print0 | xargs -r -0 cp -t $out/bin
find target/release -maxdepth 1 -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" -print0 | xargs -r -0 cp -t $out/lib
find $releaseDir \
-maxdepth 1 \
-type f \
-executable ! \( -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \) \
-print0 | xargs -r -0 cp -t $out/bin
find $releaseDir \
-maxdepth 1 \
-regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \
-print0 | xargs -r -0 cp -t $out/lib
rmdir --ignore-fail-on-non-empty $out/lib $out/bin
runHook postInstall
'';

View File

@ -1,18 +0,0 @@
{ callPackage }:
{ rustc, cargo, ... }: {
rust = {
inherit rustc cargo;
};
buildRustPackage = callPackage ./default.nix {
inherit rustc cargo;
fetchcargo = callPackage ./fetchcargo.nix {
inherit cargo;
};
};
rustcSrc = callPackage ../../development/compilers/rust/rust-src.nix {
inherit rustc;
};
}

View File

@ -30,6 +30,10 @@ wrapGAppsHook() {
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "$prefix/share")
fi
if [ -d "$prefix/lib/gio/modules" ] && [ -n "$(ls -A $prefix/lib/gio/modules)" ] ; then
gappsWrapperArgs+=(--prefix GIO_EXTRA_MODULES : "$prefix/lib/gio/modules")
fi
for v in $wrapPrefixVariables GST_PLUGIN_SYSTEM_PATH_1_0 GI_TYPELIB_PATH GRL_PLUGIN_PATH; do
eval local dummy="\$$v"
gappsWrapperArgs+=(--prefix $v : "$dummy")

View File

@ -149,7 +149,7 @@ rec {
${text}
'';
checkPhase = ''
${runtimeShell} -n $out/bin/${name}
${stdenv.shell} -n $out/bin/${name}
'';
};

View File

@ -178,6 +178,16 @@ rec {
writeJSBin = name:
writeJS "/bin/${name}";
writeNginxConfig = name: text: pkgs.runCommand name {
inherit text;
passAsFile = [ "text" ];
} /* sh */ ''
cp "$textPath" $out
${pkgs.nginx-config-formatter}/bin/nginxfmt $out
${pkgs.gnused}/bin/sed -i '/^$/d' $out
${pkgs.gixy}/bin/gixy $out
'';
# writePerl takes a name an attributeset with libraries and some perl sourcecode and
# returns an executable
#

View File

@ -1,13 +1,13 @@
{stdenv, fetchurl, pkgconfig, gettext, perlPackages, intltool
, libxml2, glib}:
let version = "1.10"; in
let version = "1.12"; in
stdenv.mkDerivation rec {
name = "shared-mime-info-${version}";
src = fetchurl {
url = "http://freedesktop.org/~hadess/${name}.tar.xz";
sha256 = "1gxyvwym3xgpmp262gfn8jg5sla6k5hy6m6dmy6grgiq90xsh9f6";
url = "https://gitlab.freedesktop.org/xdg/shared-mime-info/uploads/80c7f1afbcad2769f38aeb9ba6317a51/shared-mime-info-1.12.tar.xz";
sha256 = "0gj0pp36qpsr9w6v4nywnjpcisadwkndapqsjn0ny3gd0zzg1chq";
};
nativeBuildInputs = [ pkgconfig gettext intltool ] ++ (with perlPackages; [ perl XMLParser ]);

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
go-dbus-generator
];
makeFlags = [ "GOPATH=$(out)/share/go" ];
makeFlags = [ "GOPATH=${placeholder ''out''}/share/go" ];
postPatch = ''
sed -i -e 's:/share/gocode:/share/go:' Makefile

View File

@ -1,12 +1,32 @@
{ stdenv, buildGoPackage, fetchFromGitHub, pkgconfig,
deepin-gettext-tools, go-dbus-factory, go-gir-generator, go-lib,
alsaLib, glib, gtk3, libcanberra, libgudev, librsvg, poppler,
pulseaudio, go, deepin }:
alsaLib,
bc,
blur-effect,
coreutils,
dbus-factory,
deepin,
deepin-gettext-tools,
fontconfig,
glib,
go,
go-dbus-factory,
go-gir-generator,
go-lib,
grub2,
gtk3,
libcanberra,
libgudev,
librsvg,
poppler,
pulseaudio,
rfkill,
xcur2png
}:
buildGoPackage rec {
name = "${pname}-${version}";
pname = "dde-api";
version = "3.5.0";
version = "3.18.1";
goPackagePath = "pkg.deepin.io/dde/api";
@ -14,33 +34,62 @@ buildGoPackage rec {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1g3s0i5wa6qyv00yksz4r4cy2vhiknq8v0yx7aribvwm3gxf7jw3";
sha256 = "0y8v18f6l3ycysdn4qi7c93z805q7alji8wix4j4qh9x9r35d728";
};
goDeps = ./deps.nix;
outputs = [ "out" ];
nativeBuildInputs = [
pkgconfig
deepin-gettext-tools
go-dbus-factory
go-gir-generator
go-lib
deepin-gettext-tools # build
dbus-factory # build
go-dbus-factory # needed
go-gir-generator # needed
go-lib # build
deepin.setupHook
];
buildInputs = [
alsaLib
glib
gtk3
libcanberra
libgudev
librsvg
poppler
pulseaudio
];
alsaLib # needed
bc # run (to adjust grub theme?)
blur-effect # run (is it really needed?)
coreutils # run (is it really needed?)
fontconfig # run (is it really needed?)
#glib # ? arch
grub2 # run (is it really needed?)
gtk3 # build run
libcanberra # build run
libgudev # needed
librsvg # build run
poppler # build run
pulseaudio # needed
rfkill # run
xcur2png # run
#locales # run (locale-helper needs locale-gen, which is unavailable on NixOS?)
];
postPatch = ''
patchShebangs .
sed -i -e "s|/var|$bin/var|" Makefile
searchHardCodedPaths # debugging
sed -i -e "s|/var|$out/var|" Makefile
# TODO: confirm where to install grub themes
sed -i -e "s|/boot/grub|$out/boot/grub|" Makefile
fixPath $out /usr/lib/deepin-api \
lunar-calendar/main.go \
misc/services/com.deepin.api.CursorHelper.service \
misc/services/com.deepin.api.Graphic.service \
misc/services/com.deepin.api.LunarCalendar.service \
misc/services/com.deepin.api.Pinyin.service \
misc/system-services/com.deepin.api.Device.service \
misc/system-services/com.deepin.api.LocaleHelper.service \
misc/system-services/com.deepin.api.SoundThemePlayer.service \
misc/systemd/system/deepin-shutdown-sound.service \
theme_thumb/gtk/gtk.go \
thumbnails/gtk/gtk.go
'';
buildPhase = ''
@ -49,10 +98,9 @@ buildGoPackage rec {
'';
installPhase = ''
make install PREFIX="$bin" SYSTEMD_LIB_DIR="$bin/lib" -C go/src/${goPackagePath}
mkdir -p $out/share
mv $bin/share/gocode $out/share/go
remove-references-to -t ${go} $bin/bin/* $bin/lib/deepin-api/*
make install PREFIX="$out" SYSTEMD_LIB_DIR="$out/lib" -C go/src/${goPackagePath}
mv $out/share/gocode $out/share/go
remove-references-to -t ${go} $out/bin/* $out/lib/deepin-api/*
'';
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -1,4 +1,4 @@
# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
[
{
goPackagePath = "github.com/alecthomas/template";
@ -32,8 +32,8 @@
fetch = {
type = "git";
url = "https://github.com/disintegration/imaging";
rev = "9458da53d1e65e098d48467a4317c403327e4424";
sha256 = "1b0ma9if8s892qfx5b1vjinxn00ah9vsyxijs8knkilrhf5vqcx4";
rev = "061e8a750a4db9667cdf9e2af7f4029ba506cb3b";
sha256 = "13fkknwz2iby5rdzv9sgam6p27zdgxis3sxgyls9sdir5lbhjhm7";
};
}
{
@ -41,8 +41,8 @@
fetch = {
type = "git";
url = "https://github.com/fogleman/gg";
rev = "0e0ff3ade7039063fe954cc1b45fad6cd4ac80db";
sha256 = "06gvsngfwizdxin90nldix5503fqgnwqmqvxzrz0xg5hfazwfra5";
rev = "0403632d5b905943a1c2a5b2763aaecd568467ec";
sha256 = "1nkldjghbqnzj2djfaxhiv35kk341xhcrj9m2dwq65v684iqkk8n";
};
}
{
@ -59,8 +59,8 @@
fetch = {
type = "git";
url = "https://github.com/linuxdeepin/go-x11-client";
rev = "03541136501cab4910ad8852fe749ef8e18907ca";
sha256 = "1iiw8qclpklim81hz1sdjp2ajw0ljvjz19n9jly86nbw6m8x4gkp";
rev = "48c75d615ef634d9b1c24f8e8a30f56201b4f561";
sha256 = "1x2i9wg6lyskls5qi3d2r84bdhyhgi8v1d8scxx9ysjaw9di9ldl";
};
}
{
@ -77,8 +77,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/image";
rev = "69cc3646b96e61de0b417f4815b86c36e65783ee";
sha256 = "0nkywb3r0qvwkmykpswnf0svxi463ycn293y5jjididzxv9qxdp9";
rev = "3fc05d484e9f77dd51816890e05f2602e4ca4d65";
sha256 = "0mcip8jpz2061j1z658rfskphc92wv6sapy81p95bnjdymi562k3";
};
}
{
@ -86,8 +86,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/net";
rev = "c44066c5c816ec500d459a2a324a753f78531ae0";
sha256 = "0mgww74bl15d0jvsh4f3qr1ckjzb8icb8hn0mgs5ppa0b2fgpc4f";
rev = "74de082e2cca95839e88aa0aeee5aadf6ce7710f";
sha256 = "0a4y3y0q5bkif7wvdkyjkvgnzlbh2n4zk7wsy5j95raf0i3zlw4s";
};
}
{

View File

@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
qmake
qttools
deepin-gettext-tools
deepin.setupHook
];
buildInputs = [
@ -27,11 +28,14 @@ stdenv.mkDerivation rec {
];
postPatch = ''
patchShebangs .
searchHardCodedPaths
patchShebangs translate_generation.sh
patchShebangs translate_desktop.sh
fixPath $out /usr com.deepin.Calendar.service
sed -i translate_desktop.sh \
-e "s,/usr/bin/deepin-desktop-ts-convert,deepin-desktop-ts-convert,"
sed -i com.deepin.Calendar.service \
-e "s,/usr,$out,"
'';
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -1,13 +1,15 @@
{ stdenv, buildGoPackage, fetchFromGitHub, fetchpatch, pkgconfig,
dbus-factory, go-dbus-factory, go-gir-generator, go-lib,
deepin-gettext-tools, dde-api, alsaLib, glib, gtk3, libinput, libnl,
librsvg, linux-pam, networkmanager, pulseaudio, xorg, gnome3,
python3Packages, hicolor-icon-theme, go, deepin }:
deepin-gettext-tools, dde-api, deepin-desktop-schemas,
deepin-wallpapers, deepin-desktop-base, alsaLib, glib, gtk3,
libgudev, libinput, libnl, librsvg, linux-pam, networkmanager,
pulseaudio, xorg, python3, hicolor-icon-theme, glibc, tzdata, go,
deepin, makeWrapper, wrapGAppsHook }:
buildGoPackage rec {
name = "${pname}-${version}";
pname = "dde-daemon";
version = "3.6.0";
version = "3.24.1";
goPackagePath = "pkg.deepin.io/dde/daemon";
@ -15,15 +17,14 @@ buildGoPackage rec {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0gn2zp34wg79lvzdfla6yb4gs3f9ll83kj765zvig1wpx51nq1aj";
sha256 = "1qxj0mqnl10qj8qidpc1sv8gm4gj5965i07d003yxlxcw9cqwx7y";
};
patches = [
# https://github.com/linuxdeepin/dde-daemon/issues/51
(fetchpatch {
name = "dde-daemon_3.2.3.patch";
url = https://github.com/jouyouyun/tap-gesture-patches/raw/master/patches/dde-daemon_3.2.3.patch;
sha256 = "0a3xb15czpfl2vajpf7ycw37vr7fbw2png1a67mvjjkgx7d1k7dg";
url = https://github.com/jouyouyun/tap-gesture-patches/raw/master/patches/dde-daemon_3.8.0.patch;
sha256 = "1ampdsp9zlg263flswdw9gj10n7gxh7zi6w6z9jgh29xlai05pvh";
})
];
@ -38,46 +39,70 @@ buildGoPackage rec {
go-gir-generator
go-lib
deepin-gettext-tools
dde-api
linux-pam
networkmanager
networkmanager.dev
python3Packages.python
python3
makeWrapper
wrapGAppsHook
deepin.setupHook
];
buildInputs = [
alsaLib
dde-api
deepin-desktop-base
deepin-desktop-schemas
deepin-wallpapers
glib
gnome3.libgudev
libgudev
gtk3
hicolor-icon-theme
libinput
libnl
librsvg
pulseaudio
tzdata
];
postPatch = ''
patchShebangs .
searchHardCodedPaths
patchShebangs network/nm_generator/gen_nm_consts.py
sed -i network/nm_generator/Makefile -e 's,/usr/share/gir-1.0/NM-1.0.gir,${networkmanager.dev}/share/gir-1.0/NM-1.0.gir,'
fixPath $out /usr/share/dde/data launcher/manager.go dock/dock_manager_init.go
fixPath ${networkmanager.dev} /usr/share/gir-1.0/NM-1.0.gir network/nm_generator/Makefile
fixPath ${glibc.bin} /usr/bin/getconf systeminfo/utils.go
fixPath ${deepin-desktop-base} /etc/deepin-version systeminfo/version.go accounts/deepinversion.go
fixPath ${tzdata} /usr/share/zoneinfo timedate/zoneinfo/zone.go
fixPath ${dde-api} /usr/lib/deepin-api grub2/modify_manger.go accounts/image_blur.go
fixPath ${deepin-wallpapers} /usr/share/wallpapers appearance/background/list.go accounts/user.go
sed -i -e "s|{DESTDIR}/etc|{DESTDIR}$out/etc|" Makefile
sed -i -e "s|{DESTDIR}/var|{DESTDIR}$out/var|" Makefile
sed -i -e "s|{DESTDIR}/lib|{DESTDIR}$out/lib|" Makefile
find -type f -exec sed -i -e "s,/usr/lib/deepin-daemon,$out/lib/deepin-daemon," {} +
searchHardCodedPaths
'';
buildPhase = ''
make -C go/src/${goPackagePath}
# compilation of the nm module is failing
#make -C go/src/${goPackagePath}/network/nm_generator gen-nm-code
make -C go/src/${goPackagePath}
'';
installPhase = ''
make install PREFIX="$out" -C go/src/${goPackagePath}
remove-references-to -t ${go} $out/lib/deepin-daemon/*
searchHardCodedPaths $out
'';
postFixup = ''
# wrapGAppsHook does not work with binaries outside of $out/bin or $out/libexec
for binary in $out/lib/deepin-daemon/*; do
wrapProgram $binary "''${gappsWrapperArgs[@]}"
done
'';
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -1,4 +1,4 @@
# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
[
{
goPackagePath = "github.com/alecthomas/template";
@ -41,8 +41,8 @@
fetch = {
type = "git";
url = "https://github.com/linuxdeepin/go-x11-client";
rev = "03541136501cab4910ad8852fe749ef8e18907ca";
sha256 = "1iiw8qclpklim81hz1sdjp2ajw0ljvjz19n9jly86nbw6m8x4gkp";
rev = "48c75d615ef634d9b1c24f8e8a30f56201b4f561";
sha256 = "1x2i9wg6lyskls5qi3d2r84bdhyhgi8v1d8scxx9ysjaw9di9ldl";
};
}
{
@ -50,8 +50,8 @@
fetch = {
type = "git";
url = "https://github.com/msteinert/pam";
rev = "f4cd9f5e29232537a12db1678f48c702ad6896b7";
sha256 = "1vjawxswy3f23v4d72kk95y3b557580670ai9ffvrwy6wy85qync";
rev = "f29b9f28d6f9a1f6c4e6fd5db731999eb946574b";
sha256 = "1v5z51mgyz2glm7v0mg60xs1as88wx6cqhys2khc5d3khkr8q0qp";
};
}
{
@ -68,8 +68,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/image";
rev = "69cc3646b96e61de0b417f4815b86c36e65783ee";
sha256 = "0nkywb3r0qvwkmykpswnf0svxi463ycn293y5jjididzxv9qxdp9";
rev = "3fc05d484e9f77dd51816890e05f2602e4ca4d65";
sha256 = "0mcip8jpz2061j1z658rfskphc92wv6sapy81p95bnjdymi562k3";
};
}
{
@ -77,8 +77,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/net";
rev = "c44066c5c816ec500d459a2a324a753f78531ae0";
sha256 = "0mgww74bl15d0jvsh4f3qr1ckjzb8icb8hn0mgs5ppa0b2fgpc4f";
rev = "74de082e2cca95839e88aa0aeee5aadf6ce7710f";
sha256 = "0a4y3y0q5bkif7wvdkyjkvgnzlbh2n4zk7wsy5j95raf0i3zlw4s";
};
}
{
@ -86,8 +86,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/text";
rev = "6f44c5a2ea40ee3593d98cdcc905cc1fdaa660e2";
sha256 = "00mwzxly5isgf0glz7k3k2dkyqkjfc4z55qxajx4lgcp3h8xn9xj";
rev = "e3703dcdd614d2d7488fff034c75c551ea25da95";
sha256 = "1xh106aslp04vbzb4hc7cc5fyg2ljwny8fwfwsp5mpbqr9ixkikv";
};
}
{
@ -104,8 +104,8 @@
fetch = {
type = "git";
url = "https://github.com/linuxdeepin/go-lib.git";
rev = "b199d0dc96e979398ea3985334ccf9c20236d1a7";
sha256 = "0g84v1adnnyqc1mv45n3wlvnivkm1fi8ywszzgwx8irl3iddfvxv";
rev = "3558b2348565e983c7d4a57a0a21bbe716a55b83";
sha256 = "0p9yrxa3x71n3jxffh03ahjgimdzvxzhny632k363lkha6glvbnc";
};
}
]

View File

@ -0,0 +1,51 @@
{ stdenv, fetchFromGitHub, pkgconfig, qmake, qttools, polkit-qt,
dtkcore, dtkwidget, dde-qt-dbus-factory, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dde-polkit-agent";
version = "0.2.4";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1x7mv63g8412w1bq7fijsdzi8832qjb6gnr1nykcv7imzlycq9m6";
};
nativeBuildInputs = [
pkgconfig
qmake
qttools
deepin.setupHook
];
buildInputs = [
dde-qt-dbus-factory
dtkcore
dtkwidget
polkit-qt
];
postPatch = ''
searchHardCodedPaths
patchShebangs translate_generation.sh
fixPath $out /usr dde-polkit-agent.pro polkit-dde-authentication-agent-1.desktop
fixPath /run/current-system/sw /usr/lib/polkit-1-dde/plugins pluginmanager.cpp
'';
postFixup = ''
searchHardCodedPaths $out
'';
passthru.updateScript = deepin.updateScript { inherit name; };
meta = with stdenv.lib; {
description = "PolicyKit agent for Deepin Desktop Environment";
homepage = https://github.com/linuxdeepin/dde-polkit-agent;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ romildo ];
};
}

View File

@ -1,25 +1,28 @@
{ stdenv, fetchFromGitHub, pkgconfig, qmake, python, deepin }:
{ stdenv, fetchFromGitHub, pkgconfig, qmake, python3, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dde-qt-dbus-factory";
version = "1.0.5";
version = "1.1.1";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0cz55hsbhy1ab1mndv0sp6xnqrhz2y66w7pcxy8v9k87ii32czf8";
sha256 = "1b2i5m6fzkga72hbl85v2rng3qq53di39p7jj2f119wmlfbyp2vg";
};
nativeBuildInputs = [
qmake
python
python3
deepin.setupHook
];
postPatch = ''
sed -i libdframeworkdbus/{DFrameworkdbusConfig.in,libdframeworkdbus.pro} \
-e "s,/usr,$out,"
searchHardCodedPaths
fixPath $out /usr \
libdframeworkdbus/DFrameworkdbusConfig.in \
libdframeworkdbus/libdframeworkdbus.pro
'';
enableParallelBuilding = true;

View File

@ -1,18 +1,18 @@
{ stdenv, fetchFromGitHub, pkgconfig, qmake, qtsvg, qttools,
qtx11extras, xkeyboard_config, xorg, lightdm_qt, gsettings-qt,
dde-qt-dbus-factory, deepin-gettext-tools, dtkcore, dtkwidget,
hicolor-icon-theme, deepin }:
deepin-desktop-schemas, deepin, hicolor-icon-theme, wrapGAppsHook }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dde-session-ui";
version = "4.6.2";
version = "4.9.0";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1fxlrj7vv7nqllwpwc8mxiv9bfqcj9b2qwkpjaq326pfmg5p5lhq";
sha256 = "1bh7wbkzikcnka94nzqzl87cs2m6bslrv9r2hdsvqqr3aaad5za3";
};
nativeBuildInputs = [
@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
qmake
qttools
deepin-gettext-tools
wrapGAppsHook
deepin.setupHook
];
buildInputs = [
@ -35,10 +37,13 @@ stdenv.mkDerivation rec {
xorg.libXtst
xkeyboard_config
hicolor-icon-theme
deepin-desktop-schemas
];
postPatch = ''
patchShebangs .
searchHardCodedPaths
patchShebangs translate_generation.sh
patchShebangs translate_desktop.sh
sed -i translate_desktop.sh -e "s,/usr/bin/deepin-desktop-ts-convert,deepin-desktop-ts-convert,"
find -type f -exec sed -i -e "s,path = /etc,path = $out/etc," {} +
find -type f -exec sed -i -e "s,path = /usr,path = $out," {} +

View File

@ -3,34 +3,40 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-desktop-base";
version = "2018.10.29";
version = "2019.03.29";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0l2zb7rpag2q36lqsgvirhjgmj7w243nsi1rywkypf2xm7g2v235";
sha256 = "1d016h95nsn5yay9f4c13hixfxj0q01hpxwj2x84i6qpx63dxdwq";
};
nativeBuildInputs = [ deepin.setupHook ];
buildInputs = [ deepin-wallpapers ];
# TODO: Fedora recommended dependencies:
# deepin-wallpapers
# plymouth-theme-deepin
postPatch = ''
sed -i Makefile -e "s:/usr:$out:" -e "s:/etc:$out/etc:"
searchHardCodedPaths
fixPath $out /etc Makefile
fixPath $out /usr Makefile
# Remove Deepin distro's lsb-release
# Don't override systemd timeouts
# Remove apt-specific templates
echo ----------------------------------------------------------------
echo grep --color=always -E 'lsb-release|systemd|python-apt|backgrounds' Makefile
grep --color=always -E 'lsb-release|systemd|python-apt|backgrounds' Makefile
echo ----------------------------------------------------------------
sed -i -E '/lsb-release|systemd|python-apt|backgrounds/d' Makefile
'';
postInstall = ''
# Remove Deepin distro's lsb-release
rm $out/etc/lsb-release
# Don't override systemd timeouts
rm -r $out/etc/systemd
# Remove apt-specific templates
rm -r $out/share/python-apt
# Remove empty backgrounds directory
rm -r $out/share/backgrounds
# Make a symlink for deepin-version
ln -s ../lib/deepin/desktop-version $out/etc/deepin-version
'';
@ -39,6 +45,14 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Base assets and definitions for Deepin Desktop Environment";
# TODO: revise
longDescription = ''
This package provides some components for Deepin desktop environment.
- deepin logo
- deepin desktop version
- login screen background image
- language information
'';
homepage = https://github.com/linuxdeepin/deepin-desktop-base;
license = licenses.gpl3;
platforms = platforms.linux;

View File

@ -1,21 +1,22 @@
{ stdenv, fetchFromGitHub, python, deepin-gtk-theme,
deepin-icon-theme, deepin-sound-theme, deepin-wallpapers, gnome3,
deepin }:
{ stdenv, fetchFromGitHub, python3, gnome3, glib, deepin-gtk-theme,
deepin-icon-theme, deepin-sound-theme, deepin-wallpapers, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-desktop-schemas";
version = "3.4.0";
version = "3.13.0";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "10x0rh9z925yzyp8h0vgmg4313smvran06lvr12c3931qkmkzwgq";
sha256 = "0bamjcpmsl8xhw3ksgl11wv5xwcdhrkl1namikfzc4an03sk1rdq";
};
nativeBuildInputs = [
python
python3
glib.dev
deepin.setupHook
];
buildInputs = [
@ -27,12 +28,34 @@ stdenv.mkDerivation rec {
];
postPatch = ''
searchHardCodedPaths
# fix default background url
sed -i '/picture-uri/s|/usr/share/backgrounds/default_background.jpg|$out/share/backgrounds/deepin/default.png|' \
sed -i -e 's,/usr/share/backgrounds/default_background.jpg,/usr/share/backgrounds/deepin/desktop.jpg,' \
overrides/common/com.deepin.wrap.gnome.desktop.override
fixPath ${deepin-wallpapers} /usr/share/backgrounds \
overrides/common/com.deepin.wrap.gnome.desktop.override
fixPath ${deepin-wallpapers} /usr/share/wallpapers/deepin \
schemas/com.deepin.dde.appearance.gschema.xml
# still hardcoded paths:
# /etc/gnome-settings-daemon/xrandr/monitors.xml ? gnome3.gnome-settings-daemon
# /usr/share/backgrounds/gnome/adwaita-lock.jpg ? gnome3.gnome-backgrounds
# /usr/share/backgrounds/gnome/adwaita-timed.xml gnome3.gnome-backgrounds
# /usr/share/desktop-directories
'';
makeFlags = [ "PREFIX=$(out)" ];
makeFlags = [ "PREFIX=${placeholder ''out''}" ];
doCheck = true;
checkTarget = "test";
postInstall = ''
glib-compile-schemas --strict $out/share/glib-2.0/schemas
searchHardCodedPaths $out
'';
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
python3Packages.python
];
makeFlags = [ "PREFIX=$(out)" ];
makeFlags = [ "PREFIX=${placeholder ''out''}" ];
postPatch = ''
sed -e 's/sudo cp/cp/' -i src/generate_mo.py

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
makeFlags = [ "PREFIX=$(out)" ];
makeFlags = [ "PREFIX=${placeholder ''out''}" ];
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -1,29 +1,39 @@
{ stdenv, fetchFromGitHub, gtk3, papirus-icon-theme, deepin }:
{ stdenv, fetchFromGitHub, gtk3, xcursorgen, papirus-icon-theme, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-icon-theme";
version = "15.12.64";
version = "15.12.68";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0z1yrp6yg2hb67azrbd9ac743jjh83vxdf2j0mmv2lfpd4fqw8qc";
sha256 = "12jgz81s5qggmnkfg9m5f799r10p43qmh4zqxl1kjvlrqgvsc9rf";
};
nativeBuildInputs = [ gtk3 papirus-icon-theme ];
nativeBuildInputs = [ gtk3 xcursorgen ];
buildInputs = [ papirus-icon-theme ];
postPatch = ''
patchShebangs .
# install in $out
sed -i -e "s|/usr|$out|g" Makefile tools/hicolor.links
patchShebangs tools/hicolor.links
patchShebangs tools/display_unused_links.sh
patchShebangs cursors-src/cursors/bitmaps/make.sh
patchShebangs cursors-src/render-cursors.sh
# keep icon-theme.cache
sed -i -e 's|\(-rm -f .*/icon-theme.cache\)|# \1|g' Makefile
'';
buildTargets = "all hicolor-links";
installTargets = "install-icons install-cursors";
installFlags = [ "PREFIX=${placeholder ''out''}" ];
postInstall = ''
cp -a ./Sea ./usr/share/icons/hicolor "$out"/share/icons/
'';
passthru.updateScript = deepin.updateScript { inherit name; };
meta = with stdenv.lib; {

View File

@ -6,19 +6,20 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-image-viewer";
version = "1.3.1";
version = "1.3.10";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0dxdvm6hzj6izfxka35za8y7vacd06nksfgzx6xsv7ywzagri4k5";
sha256 = "0paanw9sd67ic9yrbzqhrwi4bf4lpvsk16jynx99n76j3jgyijkk";
};
nativeBuildInputs = [
pkgconfig
qmake
qttools
deepin.setupHook
];
buildInputs = [
@ -33,12 +34,12 @@ stdenv.mkDerivation rec {
];
postPatch = ''
patchShebangs .
searchHardCodedPaths
patchShebangs viewer/generate_translations.sh
fixPath $out /usr viewer/com.deepin.ImageViewer.service
sed -i qimage-plugins/freeimage/freeimage.pro \
qimage-plugins/libraw/libraw.pro \
-e "s,\$\$\[QT_INSTALL_PLUGINS\],$out/$qtPluginPrefix,"
sed -i viewer/com.deepin.ImageViewer.service \
-e "s,/usr,$out,"
'';
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
pkgconfig
qmake
deepin.setupHook
];
buildInputs = [
@ -25,7 +26,11 @@ stdenv.mkDerivation rec {
];
postPatch = ''
sed -i deepin-menu.pro -e "s,/usr,$out,"
searchHardCodedPaths
fixPath $out /usr \
data/com.deepin.menu.service \
deepin-menu.desktop \
deepin-menu.pro
'';
enableParallelBuilding = true;

View File

@ -1,25 +1,26 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3, libgtop, bamf,
json-glib, libcanberra-gtk3, libxkbcommon, libstartup_notification,
deepin-wallpapers, deepin-desktop-schemas, deepin }:
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, glib,
gtk3, libgtop, bamf, json-glib, libcanberra-gtk3, libxkbcommon,
libstartup_notification, deepin-wallpapers, deepin-desktop-schemas,
deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-metacity";
version = "3.22.22";
version = "3.22.24";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0gr10dv8vphla6z7zqiyyg3n3ag4rrlz43c4kr7fd5xwx2bfvp3d";
sha256 = "1im0wz1zlxiag4kpp5d4hv0aa0ybr4bizarr3903hrqv0lp46hyx";
};
nativeBuildInputs = [
pkgconfig
intltool
libtool
glib.dev
gnome3.gnome-common
gnome3.glib.dev
];
buildInputs = [
@ -41,7 +42,7 @@ stdenv.mkDerivation rec {
-e 's;/usr/share/backgrounds/default_background.jpg;${deepin-wallpapers}/share/backgrounds/deepin/desktop.jpg;'
'';
NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
configureFlags = [ "--disable-themes-documentation" ];

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-movie-reborn";
version = "3.2.14";
version = "3.2.21";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1i9sdg2p6qp57rqzrnjbxnqj3mg1qggzyq3yykw271vs8h85a707";
sha256 = "09a4sirbdxnrwj9ww2v7b1s9ylsincqzpqm2zisny9zxy22fm8s9";
};
nativeBuildInputs = [

View File

@ -1,17 +1,19 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3, xorg,
libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon,
libstartup_notification, libinput, cogl, clutter, systemd, deepin }:
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3,
xorg, libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon,
libstartup_notification, libinput, libgudev, cogl, clutter, systemd,
gsettings-desktop-schemas, deepin-desktop-schemas, wrapGAppsHook,
deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-mutter";
version = "3.20.35";
version = "3.20.38";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0mwk06kgw8qp8rg1j6px1zlya4x5rr9llax0qks59j56b3m9yim7";
sha256 = "1aq7606sgn2c6n8wfgxdryw3lprc4va0zjc0r65798w5656fdi31";
};
nativeBuildInputs = [
@ -19,27 +21,32 @@ stdenv.mkDerivation rec {
intltool
libtool
gnome3.gnome-common
wrapGAppsHook
deepin.setupHook
];
buildInputs = [
gtk3
gnome3.gnome-desktop
gnome3.gsettings-desktop-schemas
gnome3.libgudev
gnome3.zenity
upower
xorg.libxkbfile
libxkbcommon
libcanberra-gtk3
libstartup_notification
libinput
xkeyboard_config
cogl
clutter
cogl
deepin-desktop-schemas
gnome3.gnome-desktop
gnome3.zenity
gsettings-desktop-schemas
gtk3
libcanberra-gtk3
libgudev
libinput
libstartup_notification
libxkbcommon
systemd
upower
xkeyboard_config
xorg.libxkbfile
];
enableParallelBuilding = true;
postPatch = ''
searchHardCodedPaths
'';
configureFlags = [
"--enable-native-backend"
@ -50,6 +57,8 @@ stdenv.mkDerivation rec {
NOCONFIGURE=1 ./autogen.sh
'';
enableParallelBuilding = true;
passthru.updateScript = deepin.updateScript { inherit name; };
meta = with stdenv.lib; {

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "1sw4nrn7q7wk1hpicm05apyc0mihaw42iqm52wb8ib8gm1qiylr9";
};
makeFlags = [ "PREFIX=$(out)" ];
makeFlags = [ "PREFIX=${placeholder ''out''}" ];
passthru.updateScript = deepin.updateScript { inherit name; };

View File

@ -1,19 +1,19 @@
{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, cmake, ninja, vala,
gettext, gobject-introspection, at-spi2-core, dbus, epoxy, expect,
gtk3, json-glib, libXdmcp, libgee, libpthreadstubs, librsvg,
libsecret, libtasn1, libxcb, libxkbcommon, p11-kit, pcre, vte, wnck,
deepin-menu, deepin-shortcut-viewer, deepin }:
gettext, at-spi2-core, dbus, epoxy, expect, gtk3, json-glib,
libXdmcp, libgee, libpthreadstubs, librsvg, libsecret, libtasn1,
libxcb, libxkbcommon, p11-kit, pcre, vte, wnck, libselinux,
libsepol, utillinux, deepin-menu, deepin-shortcut-viewer, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-terminal";
version = "3.0.10.2";
version = "3.2.1.2";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = "deepin-terminal";
rev = version;
sha256 = "0ylhp8q9kfdq9l69drawjaf0q8vcqyflb2a3zfnwbnf06dlpvkz6";
sha256 = "0dj386csbiw0yqz9nj6ij0s4d0ak9lpq2bmsfs17bjkgdp0ayp90";
};
nativeBuildInputs = [
@ -22,7 +22,8 @@ stdenv.mkDerivation rec {
ninja
vala
gettext
gobject-introspection # For setup hook
libselinux libsepol utillinux # required by gio
deepin.setupHook
];
buildInputs = [
@ -49,15 +50,19 @@ stdenv.mkDerivation rec {
];
postPatch = ''
patchShebangs .
searchHardCodedPaths
'';
enableParallelBuilding = true;
cmakeFlags = [
"-DTEST_BUILD=OFF"
"-DUSE_VENDOR_LIB=OFF"
"-DVERSION=${version}"
];
passthru.updateScript = deepin.updateScript { inherit name; };
meta = with stdenv.lib; {
description = "The default terminal emulation for Deepin";
description = "Default terminal emulator for Deepin";
longDescription = ''
Deepin terminal, it sharpens your focus in the world of command line!
It is an advanced terminal emulator with workspace, multiple

View File

@ -3,19 +3,21 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-wallpapers";
version = "1.7.5";
version = "1.7.7";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = "deepin-wallpapers";
rev = version;
sha256 = "0mfjkh81ci0gjwmgycrh32by7v9b73nyvyjbqd29ccpb8bpyyakn";
sha256 = "09cfnxbpms98ibqbi4xd51181q3az5n8rmndcdr9w12kyzniz7xv";
};
nativeBuildInputs = [ dde-api.bin ];
nativeBuildInputs = [ dde-api deepin.setupHook ];
postPatch = ''
sed -i -e "s:/usr/lib/deepin-api:${dde-api.bin}/lib/deepin-api:" Makefile
searchHardCodedPaths # debugging
sed -i -e "s:/usr/lib/deepin-api:${dde-api}/lib/deepin-api:" Makefile
sed -i -e "s:/usr/share/wallpapers:$out/share/wallpapers:" Makefile
'';

View File

@ -1,49 +1,55 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, vala, gnome3,
bamf, clutter-gtk, pantheon, libcanberra-gtk3, libwnck3,
deepin-mutter, deepin-wallpapers, deepin-desktop-schemas,
hicolor-icon-theme, deepin }:
bamf, clutter-gtk, pantheon, libgee, libcanberra-gtk3, libwnck3,
deepin-menu, deepin-mutter, deepin-wallpapers,
deepin-desktop-schemas, wrapGAppsHook, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "deepin-wm";
version = "1.9.34";
version = "1.9.37";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "13hydcalifdc6723k8l4pk905y9sxic5x1fqww0fyx7j6b3hm13f";
sha256 = "1xd2x0kyav2cxnk0bybl7lrmak1r2468slxz5a6anrdriw9l10gi";
};
nativeBuildInputs = [
pkgconfig
intltool
libtool
gnome3.gnome-common
vala
gnome3.gnome-common
wrapGAppsHook
deepin.setupHook
];
buildInputs = [
gnome3.gnome-desktop
gnome3.libgee
bamf
clutter-gtk
pantheon.granite
libcanberra-gtk3
libwnck3
deepin-desktop-schemas
deepin-menu
deepin-mutter
deepin-wallpapers
deepin-desktop-schemas
hicolor-icon-theme
gnome3.gnome-desktop
libcanberra-gtk3
libgee
libwnck3
pantheon.granite
];
postPatch = ''
sed -i src/Background/BackgroundSource.vala \
-e 's;/usr/share/backgrounds/default_background.jpg;${deepin-wallpapers}/share/backgrounds/deepin/desktop.jpg;'
searchHardCodedPaths
fixPath ${deepin-wallpapers} /usr/share/backgrounds src/Background/BackgroundSource.vala
# fix background path
sed -i 's|default_background.jpg|deepin/desktop.jpg|' src/Background/BackgroundSource.vala
'';
NIX_CFLAGS_COMPILE = "-DWNCK_I_KNOW_THIS_IS_UNSTABLE";
preConfigure = ''
./autogen.sh
NOCONFIGURE=1 ./autogen.sh
'';
enableParallelBuilding = true;

View File

@ -1,19 +1,16 @@
{ pkgs, makeScope, libsForQt5, go_1_11 }:
{ pkgs, makeScope, libsForQt5 }:
let
packages = self: with self; {
setupHook = ./setup-hook.sh;
updateScript = callPackage ./update.nix { };
dbus-factory = callPackage ./dbus-factory { };
dde-api = callPackage ./dde-api {
# XXX: the build is finding references to Go when compiled with go v1.12
go = go_1_11;
};
dde-api = callPackage ./dde-api { };
dde-calendar = callPackage ./dde-calendar { };
dde-daemon = callPackage ./dde-daemon {
# XXX: the build is finding references to Go when compiled with go v1.12
go = go_1_11;
};
dde-daemon = callPackage ./dde-daemon { };
dde-polkit-agent = callPackage ./dde-polkit-agent { };
dde-qt-dbus-factory = callPackage ./dde-qt-dbus-factory { };
dde-session-ui = callPackage ./dde-session-ui { };
deepin-desktop-base = callPackage ./deepin-desktop-base { };
@ -29,11 +26,11 @@ let
deepin-shortcut-viewer = callPackage ./deepin-shortcut-viewer { };
deepin-sound-theme = callPackage ./deepin-sound-theme { };
deepin-terminal = callPackage ./deepin-terminal {
inherit (pkgs.gnome3) libgee;
wnck = pkgs.libwnck3;
};
deepin-wallpapers = callPackage ./deepin-wallpapers { };
deepin-wm = callPackage ./deepin-wm { };
dpa-ext-gnomekeyring = callPackage ./dpa-ext-gnomekeyring { };
dtkcore = callPackage ./dtkcore { };
dtkwm = callPackage ./dtkwm { };
dtkwidget = callPackage ./dtkwidget { };

View File

@ -0,0 +1,43 @@
{ stdenv, fetchFromGitHub, pkgconfig, qmake, qttools, gnome3,
dde-polkit-agent, deepin }:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dpa-ext-gnomekeyring";
version = "0.1.0";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "168j42nwyw7vcgwc0fha2pjpwwlgir70fq1hns4ia1dkdqa1nhzw";
};
nativeBuildInputs = [
pkgconfig
qmake
qttools
deepin.setupHook
];
buildInputs = [
dde-polkit-agent
gnome3.libgnome-keyring
];
postPatch = ''
searchHardCodedPaths
patchShebangs translate_generation.sh
fixPath $out /usr dpa-ext-gnomekeyring.pro gnomekeyringextention.cpp
'';
passthru.updateScript = deepin.updateScript { inherit name; };
meta = with stdenv.lib; {
description = "GNOME keyring extension for dde-polkit-agent";
homepage = https://github.com/linuxdeepin/dpa-ext-gnomekeyring;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ romildo ];
};
}

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dtkcore";
version = "2.0.9.8";
version = "2.0.10";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "06jj5gpy2qbmc21nf0fnbvgw7nbjjgvzx7m2vg9byw5il8l4g22h";
sha256 = "0dwpq6c38gaa95mgjnwj3vjz57n0cz6jfk950xi6s9ww2f4g6kq7";
};
nativeBuildInputs = [

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dtkwidget";
version = "2.0.9.10";
version = "2.0.10";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0757dzy82bfv97b1gzkwa9zx3jzfbap20v3r1h7lkfcfw95410iw";
sha256 = "11a7yirfkcj3rq7va9av4m1pr22mq1yx1j9k18xrqv36n0rlbrr6";
};
nativeBuildInputs = [

View File

@ -3,16 +3,16 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "go-dbus-factory";
version = "0.0.7.1";
version = "0.4.0";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0gj2xxv45gh7wr5ry3mcsi46kdsyq9nbd7znssn34kapiv40ixcx";
sha256 = "1i1ymi2qpcbf4d6rnfzrbq5n2vwnn8dvbq9xlw7jls3jpr3d5r00";
};
makeFlags = [ "PREFIX=$(out)" ];
makeFlags = [ "PREFIX=${placeholder ''out''}" ];
postPatch = ''
sed -i -e 's:/share/gocode:/share/go:' Makefile

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
];
makeFlags = [
"PREFIX=$(out)"
"PREFIX=${placeholder ''out''}"
"GOCACHE=$(TMPDIR)/go-cache"
];

View File

@ -4,23 +4,15 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "go-gir-generator";
version = "1.1.0";
version = "2.0.0";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0grp4ffy3vmlknzmymnxq1spwshff2ylqsw82pj4y2v2fcvnqfvb";
sha256 = "0d93qzp3dlia5d1yxw0rwca76qk3jyamj9xzmk13vzig8zw0jx16";
};
patches = [
# fix: dde-api build error with gobject-introspection 1.58+
(fetchurl {
url = https://github.com/linuxdeepin/go-gir-generator/commit/a7ab229201e28d1be727f5021b3588fa4a1acf5f.patch;
sha256 = "13ywalwkjg8wwvd0pvmc2rv1h38airyvimdn9jfb5wis9xm48401";
})
];
nativeBuildInputs = [
pkgconfig
go
@ -36,7 +28,7 @@ stdenv.mkDerivation rec {
'';
makeFlags = [
"PREFIX=$(out)"
"PREFIX=${placeholder ''out''}"
"GOCACHE=$(TMPDIR)/go-cache"
];

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