Merge remote-tracking branch 'origin/master' into staging
This commit is contained in:
commit
7a4209c356
@ -296,12 +296,17 @@ rec {
|
|||||||
|
|
||||||
/* Converts a store path to a fake derivation. */
|
/* Converts a store path to a fake derivation. */
|
||||||
toDerivation = path:
|
toDerivation = path:
|
||||||
let path' = builtins.storePath path; in
|
let
|
||||||
|
path' = builtins.storePath path;
|
||||||
|
res =
|
||||||
{ type = "derivation";
|
{ type = "derivation";
|
||||||
name = builtins.unsafeDiscardStringContext (builtins.substring 33 (-1) (baseNameOf path'));
|
name = builtins.unsafeDiscardStringContext (builtins.substring 33 (-1) (baseNameOf path'));
|
||||||
outPath = path';
|
outPath = path';
|
||||||
outputs = [ "out" ];
|
outputs = [ "out" ];
|
||||||
|
out = res;
|
||||||
|
outputName = "out";
|
||||||
};
|
};
|
||||||
|
in res;
|
||||||
|
|
||||||
|
|
||||||
/* If `cond' is true, return the attribute set `as',
|
/* If `cond' is true, return the attribute set `as',
|
||||||
|
@ -1,27 +1,46 @@
|
|||||||
let
|
let
|
||||||
|
|
||||||
|
# trivial, often used functions
|
||||||
trivial = import ./trivial.nix;
|
trivial = import ./trivial.nix;
|
||||||
|
|
||||||
|
# datatypes
|
||||||
|
attrsets = import ./attrsets.nix;
|
||||||
lists = import ./lists.nix;
|
lists = import ./lists.nix;
|
||||||
strings = import ./strings.nix;
|
strings = import ./strings.nix;
|
||||||
stringsWithDeps = import ./strings-with-deps.nix;
|
stringsWithDeps = import ./strings-with-deps.nix;
|
||||||
attrsets = import ./attrsets.nix;
|
|
||||||
|
# packaging
|
||||||
|
customisation = import ./customisation.nix;
|
||||||
|
maintainers = import ./maintainers.nix;
|
||||||
|
meta = import ./meta.nix;
|
||||||
sources = import ./sources.nix;
|
sources = import ./sources.nix;
|
||||||
|
|
||||||
|
# module system
|
||||||
modules = import ./modules.nix;
|
modules = import ./modules.nix;
|
||||||
options = import ./options.nix;
|
options = import ./options.nix;
|
||||||
types = import ./types.nix;
|
types = import ./types.nix;
|
||||||
meta = import ./meta.nix;
|
|
||||||
debug = import ./debug.nix;
|
# constants
|
||||||
misc = import ./deprecated.nix;
|
licenses = import ./licenses.nix;
|
||||||
maintainers = import ./maintainers.nix;
|
|
||||||
platforms = import ./platforms.nix;
|
platforms = import ./platforms.nix;
|
||||||
systems = import ./systems.nix;
|
systems = import ./systems.nix;
|
||||||
customisation = import ./customisation.nix;
|
|
||||||
licenses = import ./licenses.nix;
|
# misc
|
||||||
|
debug = import ./debug.nix;
|
||||||
|
misc = import ./deprecated.nix;
|
||||||
|
|
||||||
|
# domain-specific
|
||||||
sandbox = import ./sandbox.nix;
|
sandbox = import ./sandbox.nix;
|
||||||
|
fetchers = import ./fetchers.nix;
|
||||||
|
|
||||||
in
|
in
|
||||||
{ inherit trivial lists strings stringsWithDeps attrsets sources options
|
{ inherit trivial
|
||||||
modules types meta debug maintainers licenses platforms systems sandbox;
|
attrsets lists strings stringsWithDeps
|
||||||
|
customisation maintainers meta sources
|
||||||
|
modules options types
|
||||||
|
licenses platforms systems
|
||||||
|
debug misc
|
||||||
|
sandbox fetchers;
|
||||||
}
|
}
|
||||||
# !!! don't include everything at top-level; perhaps only the most
|
# !!! don't include everything at top-level; perhaps only the most
|
||||||
# commonly used functions.
|
# commonly used functions.
|
||||||
|
12
lib/fetchers.nix
Normal file
12
lib/fetchers.nix
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# snippets that can be shared by mutliple fetchers (pkgs/build-support)
|
||||||
|
{
|
||||||
|
|
||||||
|
proxyImpureEnvVars = [
|
||||||
|
# We borrow these environment variables from the caller to allow
|
||||||
|
# easy proxy configuration. This is impure, but a fixed-output
|
||||||
|
# derivation like fetchurl is allowed to do so since its result is
|
||||||
|
# by definition pure.
|
||||||
|
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
||||||
|
];
|
||||||
|
|
||||||
|
}
|
@ -197,6 +197,7 @@
|
|||||||
joelmo = "Joel Moberg <joel.moberg@gmail.com>";
|
joelmo = "Joel Moberg <joel.moberg@gmail.com>";
|
||||||
joelteon = "Joel Taylor <me@joelt.io>";
|
joelteon = "Joel Taylor <me@joelt.io>";
|
||||||
joko = "Ioannis Koutras <ioannis.koutras@gmail.com>";
|
joko = "Ioannis Koutras <ioannis.koutras@gmail.com>";
|
||||||
|
jonafato = "Jon Banafato <jon@jonafato.com>";
|
||||||
jpbernardy = "Jean-Philippe Bernardy <jeanphilippe.bernardy@gmail.com>";
|
jpbernardy = "Jean-Philippe Bernardy <jeanphilippe.bernardy@gmail.com>";
|
||||||
jraygauthier = "Raymond Gauthier <jraygauthier@gmail.com>";
|
jraygauthier = "Raymond Gauthier <jraygauthier@gmail.com>";
|
||||||
juliendehos = "Julien Dehos <dehos@lisic.univ-littoral.fr>";
|
juliendehos = "Julien Dehos <dehos@lisic.univ-littoral.fr>";
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
#! /usr/bin/env nix-shell
|
#! /usr/bin/env nix-shell
|
||||||
#! nix-shell -i bash -p coreutils findutils gnused nix wget
|
#! nix-shell -i bash -p coreutils findutils gnused nix wget
|
||||||
|
|
||||||
|
set -efuo pipefail
|
||||||
|
|
||||||
SRCS=
|
SRCS=
|
||||||
if [ -d "$1" ]; then
|
if [ -d "$1" ]; then
|
||||||
SRCS="$(pwd)/$1/srcs.nix"
|
SRCS="$(pwd)/$1/srcs.nix"
|
||||||
|
@ -121,6 +121,27 @@ following incompatible changes:</para>
|
|||||||
functionality. See <xref linkend="sec-grsecurity" /> for documentation
|
functionality. See <xref linkend="sec-grsecurity" /> for documentation
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
<listitem><para>Special filesystems, like <literal>/proc</literal>,
|
||||||
|
<literal>/run</literal> and others, now have the same mount options as
|
||||||
|
recommended by systemd. They are now unified across different places in NixOS.
|
||||||
|
Options are also updated on the system switch if possible. One benefit from
|
||||||
|
this is improved security -- most such filesystems are now mounted with
|
||||||
|
<literal>noexec</literal>, <literal>nodev</literal> and/or
|
||||||
|
<literal>nosuid</literal> options.</para></listitem>
|
||||||
|
|
||||||
|
<listitem><para>The reverse path filter was interfering with DHCPv4 server
|
||||||
|
operation in the past. An exception for DHCPv4 and a new option to log
|
||||||
|
packets that were dropped due to the reverse path filter was added
|
||||||
|
(<literal>networking.firewall.logReversePathDrops</literal>) for easier
|
||||||
|
debugging.</para></listitem>
|
||||||
|
|
||||||
|
<listitem><para>Containers configuration within
|
||||||
|
<literal>containers.<name>.config</literal> is now properly
|
||||||
|
typed and checked. In particular, partial configurations are merged
|
||||||
|
correctly.
|
||||||
|
(<link xlink:href="https://github.com/NixOS/nixpkgs/pull/17365">#17365</link>)
|
||||||
|
</para></listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ in
|
|||||||
pkgs.cryptsetup # needed for dm-crypt volumes
|
pkgs.cryptsetup # needed for dm-crypt volumes
|
||||||
|
|
||||||
# Some networking tools.
|
# Some networking tools.
|
||||||
pkgs.sshfsFuse
|
pkgs.sshfs-fuse
|
||||||
pkgs.socat
|
pkgs.socat
|
||||||
pkgs.screen
|
pkgs.screen
|
||||||
pkgs.wpa_supplicant # !!! should use the wpa module
|
pkgs.wpa_supplicant # !!! should use the wpa module
|
||||||
|
@ -55,7 +55,7 @@ in
|
|||||||
pkgs.cryptsetup # needed for dm-crypt volumes
|
pkgs.cryptsetup # needed for dm-crypt volumes
|
||||||
|
|
||||||
# Some networking tools.
|
# Some networking tools.
|
||||||
pkgs.sshfsFuse
|
pkgs.sshfs-fuse
|
||||||
pkgs.socat
|
pkgs.socat
|
||||||
pkgs.screen
|
pkgs.screen
|
||||||
pkgs.wpa_supplicant # !!! should use the wpa module
|
pkgs.wpa_supplicant # !!! should use the wpa module
|
||||||
|
@ -74,7 +74,6 @@
|
|||||||
rtkit = 45;
|
rtkit = 45;
|
||||||
dovecot2 = 46;
|
dovecot2 = 46;
|
||||||
dovenull2 = 47;
|
dovenull2 = 47;
|
||||||
unbound = 48;
|
|
||||||
prayer = 49;
|
prayer = 49;
|
||||||
mpd = 50;
|
mpd = 50;
|
||||||
clamav = 51;
|
clamav = 51;
|
||||||
@ -141,7 +140,7 @@
|
|||||||
ngircd = 112;
|
ngircd = 112;
|
||||||
btsync = 113;
|
btsync = 113;
|
||||||
minecraft = 114;
|
minecraft = 114;
|
||||||
monetdb = 115;
|
#monetdb = 115; # unused (not packaged), removed 2016-09-19
|
||||||
rippled = 116;
|
rippled = 116;
|
||||||
murmur = 117;
|
murmur = 117;
|
||||||
foundationdb = 118;
|
foundationdb = 118;
|
||||||
@ -332,7 +331,6 @@
|
|||||||
#rtkit = 45; # unused
|
#rtkit = 45; # unused
|
||||||
dovecot2 = 46;
|
dovecot2 = 46;
|
||||||
#dovenull = 47; # unused
|
#dovenull = 47; # unused
|
||||||
#unbound = 48; # unused
|
|
||||||
prayer = 49;
|
prayer = 49;
|
||||||
mpd = 50;
|
mpd = 50;
|
||||||
clamav = 51;
|
clamav = 51;
|
||||||
@ -397,7 +395,7 @@
|
|||||||
#ngircd = 112; # unused
|
#ngircd = 112; # unused
|
||||||
btsync = 113;
|
btsync = 113;
|
||||||
#minecraft = 114; # unused
|
#minecraft = 114; # unused
|
||||||
monetdb = 115;
|
#monetdb = 115; # unused (not packaged), removed 2016-09-19
|
||||||
#ripped = 116; # unused
|
#ripped = 116; # unused
|
||||||
#murmur = 117; # unused
|
#murmur = 117; # unused
|
||||||
foundationdb = 118;
|
foundationdb = 118;
|
||||||
|
@ -145,7 +145,6 @@
|
|||||||
./services/databases/hbase.nix
|
./services/databases/hbase.nix
|
||||||
./services/databases/influxdb.nix
|
./services/databases/influxdb.nix
|
||||||
./services/databases/memcached.nix
|
./services/databases/memcached.nix
|
||||||
./services/databases/monetdb.nix
|
|
||||||
./services/databases/mongodb.nix
|
./services/databases/mongodb.nix
|
||||||
./services/databases/mysql.nix
|
./services/databases/mysql.nix
|
||||||
./services/databases/neo4j.nix
|
./services/databases/neo4j.nix
|
||||||
@ -388,6 +387,7 @@
|
|||||||
./services/networking/ostinato.nix
|
./services/networking/ostinato.nix
|
||||||
./services/networking/pdnsd.nix
|
./services/networking/pdnsd.nix
|
||||||
./services/networking/polipo.nix
|
./services/networking/polipo.nix
|
||||||
|
./services/networking/powerdns.nix
|
||||||
./services/networking/pptpd.nix
|
./services/networking/pptpd.nix
|
||||||
./services/networking/prayer.nix
|
./services/networking/prayer.nix
|
||||||
./services/networking/privoxy.nix
|
./services/networking/privoxy.nix
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
# Some networking tools.
|
# Some networking tools.
|
||||||
pkgs.fuse
|
pkgs.fuse
|
||||||
pkgs.sshfsFuse
|
pkgs.sshfs-fuse
|
||||||
pkgs.socat
|
pkgs.socat
|
||||||
pkgs.screen
|
pkgs.screen
|
||||||
|
|
||||||
|
@ -231,104 +231,101 @@ let
|
|||||||
(''
|
(''
|
||||||
# Account management.
|
# Account management.
|
||||||
account sufficient pam_unix.so
|
account sufficient pam_unix.so
|
||||||
'' + optionalString use_ldap ''
|
${optionalString use_ldap
|
||||||
account sufficient ${pam_ldap}/lib/security/pam_ldap.so
|
"account sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
|
||||||
'' + optionalString config.krb5.enable ''
|
${optionalString config.krb5.enable
|
||||||
account sufficient ${pam_krb5}/lib/security/pam_krb5.so
|
"account sufficient ${pam_krb5}/lib/security/pam_krb5.so"}
|
||||||
'' + ''
|
|
||||||
|
|
||||||
# Authentication management.
|
# Authentication management.
|
||||||
'' + optionalString cfg.rootOK ''
|
${optionalString cfg.rootOK
|
||||||
auth sufficient pam_rootok.so
|
"auth sufficient pam_rootok.so"}
|
||||||
'' + optionalString cfg.requireWheel ''
|
${optionalString cfg.requireWheel
|
||||||
auth required pam_wheel.so use_uid
|
"auth required pam_wheel.so use_uid"}
|
||||||
'' + optionalString cfg.logFailures ''
|
${optionalString cfg.logFailures
|
||||||
auth required pam_tally.so
|
"auth required pam_tally.so"}
|
||||||
'' + optionalString (config.security.pam.enableSSHAgentAuth && cfg.sshAgentAuth) ''
|
${optionalString (config.security.pam.enableSSHAgentAuth && cfg.sshAgentAuth)
|
||||||
auth sufficient ${pkgs.pam_ssh_agent_auth}/libexec/pam_ssh_agent_auth.so file=~/.ssh/authorized_keys:~/.ssh/authorized_keys2:/etc/ssh/authorized_keys.d/%u
|
"auth sufficient ${pkgs.pam_ssh_agent_auth}/libexec/pam_ssh_agent_auth.so file=~/.ssh/authorized_keys:~/.ssh/authorized_keys2:/etc/ssh/authorized_keys.d/%u"}
|
||||||
'' + optionalString cfg.fprintAuth ''
|
${optionalString cfg.fprintAuth
|
||||||
auth sufficient ${pkgs.fprintd}/lib/security/pam_fprintd.so
|
"auth sufficient ${pkgs.fprintd}/lib/security/pam_fprintd.so"}
|
||||||
'' + optionalString cfg.u2fAuth ''
|
${optionalString cfg.u2fAuth
|
||||||
auth sufficient ${pkgs.pam_u2f}/lib/security/pam_u2f.so
|
"auth sufficient ${pkgs.pam_u2f}/lib/security/pam_u2f.so"}
|
||||||
'' + optionalString cfg.usbAuth ''
|
${optionalString cfg.usbAuth
|
||||||
auth sufficient ${pkgs.pam_usb}/lib/security/pam_usb.so
|
"auth sufficient ${pkgs.pam_usb}/lib/security/pam_usb.so"}
|
||||||
''
|
'' +
|
||||||
|
|
||||||
# Modules in this block require having the password set in PAM_AUTHTOK.
|
# Modules in this block require having the password set in PAM_AUTHTOK.
|
||||||
# pam_unix is marked as 'sufficient' on NixOS which means nothing will run
|
# pam_unix is marked as 'sufficient' on NixOS which means nothing will run
|
||||||
# after it succeeds. Certain modules need to run after pam_unix
|
# after it succeeds. Certain modules need to run after pam_unix
|
||||||
# prompts the user for password so we run it once with 'required' at an
|
# prompts the user for password so we run it once with 'required' at an
|
||||||
# earlier point and it will run again with 'sufficient' further down.
|
# earlier point and it will run again with 'sufficient' further down.
|
||||||
# We use try_first_pass the second time to avoid prompting password twice
|
# We use try_first_pass the second time to avoid prompting password twice
|
||||||
+ optionalString (cfg.unixAuth && (config.security.pam.enableEcryptfs || cfg.pamMount)) (''
|
(optionalString (cfg.unixAuth && (config.security.pam.enableEcryptfs || cfg.pamMount)) ''
|
||||||
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth
|
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth
|
||||||
'' + optionalString config.security.pam.enableEcryptfs ''
|
${optionalString config.security.pam.enableEcryptfs
|
||||||
auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap
|
"auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
|
||||||
'' + optionalString cfg.pamMount ''
|
${optionalString cfg.pamMount
|
||||||
auth optional ${pkgs.pam_mount}/lib/security/pam_mount.so
|
"auth optional ${pkgs.pam_mount}/lib/security/pam_mount.so"}
|
||||||
'')
|
'') + ''
|
||||||
+ optionalString cfg.unixAuth ''
|
${optionalString cfg.unixAuth
|
||||||
auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok "}likeauth try_first_pass
|
"auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth try_first_pass"}
|
||||||
'' + optionalString cfg.otpwAuth ''
|
${optionalString cfg.otpwAuth
|
||||||
auth sufficient ${pkgs.otpw}/lib/security/pam_otpw.so
|
"auth sufficient ${pkgs.otpw}/lib/security/pam_otpw.so"}
|
||||||
'' + (let oath = config.security.pam.oath; in optionalString cfg.oathAuth ''
|
${let oath = config.security.pam.oath; in optionalString cfg.oathAuth
|
||||||
auth sufficient ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}
|
"auth sufficient ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}"}
|
||||||
'') + optionalString use_ldap ''
|
${optionalString use_ldap
|
||||||
auth sufficient ${pam_ldap}/lib/security/pam_ldap.so use_first_pass
|
"auth sufficient ${pam_ldap}/lib/security/pam_ldap.so use_first_pass"}
|
||||||
'' + optionalString config.krb5.enable ''
|
${optionalString config.krb5.enable ''
|
||||||
auth [default=ignore success=1 service_err=reset] ${pam_krb5}/lib/security/pam_krb5.so use_first_pass
|
auth [default=ignore success=1 service_err=reset] ${pam_krb5}/lib/security/pam_krb5.so use_first_pass
|
||||||
auth [default=die success=done] ${pam_ccreds}/lib/security/pam_ccreds.so action=validate use_first_pass
|
auth [default=die success=done] ${pam_ccreds}/lib/security/pam_ccreds.so action=validate use_first_pass
|
||||||
auth sufficient ${pam_ccreds}/lib/security/pam_ccreds.so action=store use_first_pass
|
auth sufficient ${pam_ccreds}/lib/security/pam_ccreds.so action=store use_first_pass
|
||||||
'' + ''
|
''}
|
||||||
auth required pam_deny.so
|
auth required pam_deny.so
|
||||||
|
|
||||||
# Password management.
|
# Password management.
|
||||||
password requisite pam_unix.so nullok sha512
|
password requisite pam_unix.so nullok sha512
|
||||||
'' + optionalString config.security.pam.enableEcryptfs ''
|
${optionalString config.security.pam.enableEcryptfs
|
||||||
password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so
|
"password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
|
||||||
'' + optionalString cfg.pamMount ''
|
${optionalString cfg.pamMount
|
||||||
password optional ${pkgs.pam_mount}/lib/security/pam_mount.so
|
"password optional ${pkgs.pam_mount}/lib/security/pam_mount.so"}
|
||||||
'' + optionalString use_ldap ''
|
${optionalString use_ldap
|
||||||
password sufficient ${pam_ldap}/lib/security/pam_ldap.so
|
"password sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
|
||||||
'' + optionalString config.krb5.enable ''
|
${optionalString config.krb5.enable
|
||||||
password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass
|
"password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"}
|
||||||
'' + optionalString config.services.samba.syncPasswordsByPam ''
|
${optionalString config.services.samba.syncPasswordsByPam
|
||||||
password optional ${pkgs.samba}/lib/security/pam_smbpass.so nullok use_authtok try_first_pass
|
"password optional ${pkgs.samba}/lib/security/pam_smbpass.so nullok use_authtok try_first_pass"}
|
||||||
'' + ''
|
|
||||||
|
|
||||||
# Session management.
|
# Session management.
|
||||||
'' + optionalString cfg.setEnvironment ''
|
${optionalString cfg.setEnvironment ''
|
||||||
session required pam_env.so envfile=${config.system.build.pamEnvironment}
|
session required pam_env.so envfile=${config.system.build.pamEnvironment}
|
||||||
'' + ''
|
''}
|
||||||
session required pam_unix.so
|
session required pam_unix.so
|
||||||
'' + optionalString cfg.setLoginUid ''
|
${optionalString cfg.setLoginUid
|
||||||
session ${
|
"session ${
|
||||||
if config.boot.isContainer then "optional" else "required"
|
if config.boot.isContainer then "optional" else "required"
|
||||||
} pam_loginuid.so
|
} pam_loginuid.so"}
|
||||||
'' + optionalString cfg.makeHomeDir ''
|
${optionalString cfg.makeHomeDir
|
||||||
session required ${pkgs.pam}/lib/security/pam_mkhomedir.so silent skel=/etc/skel umask=0022
|
"session required ${pkgs.pam}/lib/security/pam_mkhomedir.so silent skel=/etc/skel umask=0022"}
|
||||||
'' + optionalString cfg.updateWtmp ''
|
${optionalString cfg.updateWtmp
|
||||||
session required ${pkgs.pam}/lib/security/pam_lastlog.so silent
|
"session required ${pkgs.pam}/lib/security/pam_lastlog.so silent"}
|
||||||
'' + optionalString config.security.pam.enableEcryptfs ''
|
${optionalString config.security.pam.enableEcryptfs
|
||||||
session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so
|
"session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
|
||||||
'' + optionalString use_ldap ''
|
${optionalString use_ldap
|
||||||
session optional ${pam_ldap}/lib/security/pam_ldap.so
|
"session optional ${pam_ldap}/lib/security/pam_ldap.so"}
|
||||||
'' + optionalString config.krb5.enable ''
|
${optionalString config.krb5.enable
|
||||||
session optional ${pam_krb5}/lib/security/pam_krb5.so
|
"session optional ${pam_krb5}/lib/security/pam_krb5.so"}
|
||||||
'' + optionalString cfg.otpwAuth ''
|
${optionalString cfg.otpwAuth
|
||||||
session optional ${pkgs.otpw}/lib/security/pam_otpw.so
|
"session optional ${pkgs.otpw}/lib/security/pam_otpw.so"}
|
||||||
'' + optionalString cfg.startSession ''
|
${optionalString cfg.startSession
|
||||||
session optional ${pkgs.systemd}/lib/security/pam_systemd.so
|
"session optional ${pkgs.systemd}/lib/security/pam_systemd.so"}
|
||||||
'' + optionalString cfg.forwardXAuth ''
|
${optionalString cfg.forwardXAuth
|
||||||
session optional pam_xauth.so xauthpath=${pkgs.xorg.xauth}/bin/xauth systemuser=99
|
"session optional pam_xauth.so xauthpath=${pkgs.xorg.xauth}/bin/xauth systemuser=99"}
|
||||||
'' + optionalString (cfg.limits != []) ''
|
${optionalString (cfg.limits != [])
|
||||||
session required ${pkgs.pam}/lib/security/pam_limits.so conf=${makeLimitsConf cfg.limits}
|
"session required ${pkgs.pam}/lib/security/pam_limits.so conf=${makeLimitsConf cfg.limits}"}
|
||||||
'' + optionalString (cfg.showMotd && config.users.motd != null) ''
|
${optionalString (cfg.showMotd && config.users.motd != null)
|
||||||
session optional ${pkgs.pam}/lib/security/pam_motd.so motd=${motd}
|
"session optional ${pkgs.pam}/lib/security/pam_motd.so motd=${motd}"}
|
||||||
'' + optionalString cfg.pamMount ''
|
${optionalString cfg.pamMount
|
||||||
session optional ${pkgs.pam_mount}/lib/security/pam_mount.so
|
"session optional ${pkgs.pam_mount}/lib/security/pam_mount.so"}
|
||||||
'' + optionalString (cfg.enableAppArmor && config.security.apparmor.enable) ''
|
${optionalString (cfg.enableAppArmor && config.security.apparmor.enable)
|
||||||
session optional ${pkgs.apparmor-pam}/lib/security/pam_apparmor.so order=user,group,default debug
|
"session optional ${pkgs.apparmor-pam}/lib/security/pam_apparmor.so order=user,group,default debug"}
|
||||||
'');
|
'');
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ with lib;
|
|||||||
config = mkIf config.security.rngd.enable {
|
config = mkIf config.security.rngd.enable {
|
||||||
services.udev.extraRules = ''
|
services.udev.extraRules = ''
|
||||||
KERNEL=="random", TAG+="systemd"
|
KERNEL=="random", TAG+="systemd"
|
||||||
SUBSYSTEM=="cpu", ENV{MODALIAS}=="x86cpu:*feature:*009E*", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
|
SUBSYSTEM=="cpu", ENV{MODALIAS}=="cpu:type:x86,*feature:*009E*", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
|
||||||
KERNEL=="hw_random", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
|
KERNEL=="hw_random", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
|
||||||
${if config.services.tcsd.enable then "" else ''KERNEL=="tpm0", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"''}
|
${if config.services.tcsd.enable then "" else ''KERNEL=="tpm0", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"''}
|
||||||
'';
|
'';
|
||||||
|
@ -1,88 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
let
|
|
||||||
cfg = config.services.monetdb;
|
|
||||||
monetdbUser = "monetdb";
|
|
||||||
in
|
|
||||||
with lib;
|
|
||||||
{
|
|
||||||
|
|
||||||
###### interface
|
|
||||||
|
|
||||||
options = {
|
|
||||||
|
|
||||||
services.monetdb = {
|
|
||||||
|
|
||||||
enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Whether to enable MonetDB database server.";
|
|
||||||
};
|
|
||||||
|
|
||||||
package = mkOption {
|
|
||||||
type = types.path;
|
|
||||||
description = "MonetDB package to use.";
|
|
||||||
};
|
|
||||||
|
|
||||||
dbfarmDir = mkOption {
|
|
||||||
type = types.path;
|
|
||||||
default = "/var/lib/monetdb";
|
|
||||||
description = ''
|
|
||||||
Specifies location of Monetdb dbfarm (keeps database and auxiliary files).
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
port = mkOption {
|
|
||||||
default = "50000";
|
|
||||||
example = "50000";
|
|
||||||
description = "Port to listen on.";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
###### implementation
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
|
|
||||||
users.extraUsers.monetdb =
|
|
||||||
{ name = monetdbUser;
|
|
||||||
uid = config.ids.uids.monetdb;
|
|
||||||
description = "monetdb user";
|
|
||||||
home = cfg.dbfarmDir;
|
|
||||||
};
|
|
||||||
|
|
||||||
users.extraGroups.monetdb.gid = config.ids.gids.monetdb;
|
|
||||||
|
|
||||||
environment.systemPackages = [ cfg.package ];
|
|
||||||
|
|
||||||
systemd.services.monetdb =
|
|
||||||
{ description = "MonetDB Server";
|
|
||||||
|
|
||||||
wantedBy = [ "multi-user.target" ];
|
|
||||||
|
|
||||||
after = [ "network.target" ];
|
|
||||||
|
|
||||||
path = [ cfg.package ];
|
|
||||||
|
|
||||||
preStart =
|
|
||||||
''
|
|
||||||
# Initialise the database.
|
|
||||||
if ! test -e ${cfg.dbfarmDir}/.merovingian_properties; then
|
|
||||||
mkdir -m 0700 -p ${cfg.dbfarmDir}
|
|
||||||
chown -R ${monetdbUser} ${cfg.dbfarmDir}
|
|
||||||
${cfg.package}/bin/monetdbd create ${cfg.dbfarmDir}
|
|
||||||
${cfg.package}/bin/monetdbd set port=${cfg.port} ${cfg.dbfarmDir}
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
|
|
||||||
serviceConfig.ExecStart = "${cfg.package}/bin/monetdbd start -n ${cfg.dbfarmDir}";
|
|
||||||
|
|
||||||
serviceConfig.ExecStop = "${cfg.package}/bin/monetdbd stop ${cfg.dbfarmDir}";
|
|
||||||
|
|
||||||
unitConfig.RequiresMountsFor = "${cfg.dbfarmDir}";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
@ -59,17 +59,17 @@
|
|||||||
<variablelist>
|
<variablelist>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><varname>emacs</varname></term>
|
<term><varname>emacs</varname></term>
|
||||||
<term><varname>emacs24</varname></term>
|
<term><varname>emacs25</varname></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
The latest stable version of Emacs 24 using the <link
|
The latest stable version of Emacs 25 using the <link
|
||||||
xlink:href="http://www.gtk.org">GTK+ 2</link> widget
|
xlink:href="http://www.gtk.org">GTK+ 2</link> widget
|
||||||
toolkit.
|
toolkit.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><varname>emacs24-nox</varname></term>
|
<term><varname>emacs25-nox</varname></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Emacs 24 built without any dependency on X11
|
Emacs 24 built without any dependency on X11
|
||||||
@ -86,15 +86,6 @@
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
|
||||||
<term><varname>emacs25pre</varname></term>
|
|
||||||
<listitem>
|
|
||||||
<para>
|
|
||||||
A pretest version of what will become the first
|
|
||||||
version of Emacs 25.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
</varlistentry>
|
|
||||||
</variablelist>
|
</variablelist>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ in
|
|||||||
default = false;
|
default = false;
|
||||||
description = "
|
description = "
|
||||||
Mount filesystems on demand. Unmount them automatically.
|
Mount filesystems on demand. Unmount them automatically.
|
||||||
You may also be interested in afuese.
|
You may also be interested in afuse.
|
||||||
";
|
";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
50
nixos/modules/services/networking/powerdns.nix
Normal file
50
nixos/modules/services/networking/powerdns.nix
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.powerdns;
|
||||||
|
configDir = pkgs.writeTextDir "pdns.conf" "${cfg.extraConfig}";
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
services.powerdns = {
|
||||||
|
enable = mkEnableOption "Powerdns domain name server";
|
||||||
|
|
||||||
|
extraConfig = mkOption {
|
||||||
|
type = types.lines;
|
||||||
|
default = "launch=bind";
|
||||||
|
description = ''
|
||||||
|
Extra lines to be added verbatim to pdns.conf.
|
||||||
|
Powerdns will chroot to /var/lib/powerdns.
|
||||||
|
So any file, powerdns is supposed to be read,
|
||||||
|
should be in /var/lib/powerdns and needs to specified
|
||||||
|
relative to the chroot.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf config.services.powerdns.enable {
|
||||||
|
systemd.services.pdns = {
|
||||||
|
unitConfig.Documentation = "man:pdns_server(1) man:pdns_control(1)";
|
||||||
|
description = "Powerdns name server";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = ["network.target" "mysql.service" "postgresql.service" "openldap.service"];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Restart="on-failure";
|
||||||
|
RestartSec="1";
|
||||||
|
StartLimitInterval="0";
|
||||||
|
PrivateTmp=true;
|
||||||
|
PrivateDevices=true;
|
||||||
|
CapabilityBoundingSet="CAP_CHOWN CAP_NET_BIND_SERVICE CAP_SETGID CAP_SETUID CAP_SYS_CHROOT";
|
||||||
|
NoNewPrivileges=true;
|
||||||
|
ExecStartPre = "${pkgs.coreutils}/bin/mkdir -p /var/lib/powerdns";
|
||||||
|
ExecStart = "${pkgs.powerdns}/bin/pdns_server --setuid=nobody --setgid=nogroup --chroot=/var/lib/powerdns --socket-dir=/ --daemon=no --guardian=no --disable-syslog --write-pid=no --config-dir=${configDir}";
|
||||||
|
ProtectSystem="full";
|
||||||
|
ProtectHome=true;
|
||||||
|
RestrictAddressFamilies="AF_UNIX AF_INET AF_INET6";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@ -12,9 +12,17 @@ let
|
|||||||
|
|
||||||
interfaces = concatMapStrings (x: " interface: ${x}\n") cfg.interfaces;
|
interfaces = concatMapStrings (x: " interface: ${x}\n") cfg.interfaces;
|
||||||
|
|
||||||
forward = optionalString (length cfg.forwardAddresses != 0)
|
isLocalAddress = x: substring 0 3 x == "::1" || substring 0 9 x == "127.0.0.1";
|
||||||
"forward-zone:\n name: .\n" +
|
|
||||||
concatMapStrings (x: " forward-addr: ${x}\n") cfg.forwardAddresses;
|
forward =
|
||||||
|
optionalString (any isLocalAddress cfg.forwardAddresses) ''
|
||||||
|
do-not-query-localhost: no
|
||||||
|
'' +
|
||||||
|
optionalString (cfg.forwardAddresses != []) ''
|
||||||
|
forward-zone:
|
||||||
|
name: .
|
||||||
|
'' +
|
||||||
|
concatMapStringsSep "\n" (x: " forward-addr: ${x}") cfg.forwardAddresses;
|
||||||
|
|
||||||
rootTrustAnchorFile = "${stateDir}/root.key";
|
rootTrustAnchorFile = "${stateDir}/root.key";
|
||||||
|
|
||||||
@ -72,7 +80,11 @@ in
|
|||||||
extraConfig = mkOption {
|
extraConfig = mkOption {
|
||||||
default = "";
|
default = "";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
description = "Extra lines of unbound config.";
|
description = ''
|
||||||
|
Extra unbound config. See
|
||||||
|
<citerefentry><refentrytitle>unbound.conf</refentrytitle><manvolnum>8
|
||||||
|
</manvolnum></citerefentry>.
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
@ -84,12 +96,9 @@ in
|
|||||||
|
|
||||||
environment.systemPackages = [ pkgs.unbound ];
|
environment.systemPackages = [ pkgs.unbound ];
|
||||||
|
|
||||||
users.extraUsers = singleton {
|
users.users.unbound = {
|
||||||
name = "unbound";
|
|
||||||
uid = config.ids.uids.unbound;
|
|
||||||
description = "unbound daemon user";
|
description = "unbound daemon user";
|
||||||
home = stateDir;
|
isSystemUser = true;
|
||||||
createHome = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.unbound = {
|
systemd.services.unbound = {
|
||||||
@ -107,12 +116,16 @@ in
|
|||||||
chown unbound ${stateDir} ${rootTrustAnchorFile}
|
chown unbound ${stateDir} ${rootTrustAnchorFile}
|
||||||
''}
|
''}
|
||||||
touch ${stateDir}/dev/random
|
touch ${stateDir}/dev/random
|
||||||
${pkgs.utillinux}/bin/mount --bind -n /dev/random ${stateDir}/dev/random
|
${pkgs.utillinux}/bin/mount --bind -n /dev/urandom ${stateDir}/dev/random
|
||||||
'';
|
'';
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = "${pkgs.unbound}/bin/unbound -d -c ${stateDir}/unbound.conf";
|
ExecStart = "${pkgs.unbound}/bin/unbound -d -c ${stateDir}/unbound.conf";
|
||||||
ExecStopPost="${pkgs.utillinux}/bin/umount ${stateDir}/dev/random";
|
ExecStopPost="${pkgs.utillinux}/bin/umount ${stateDir}/dev/random";
|
||||||
|
|
||||||
|
ProtectSystem = true;
|
||||||
|
ProtectHome = true;
|
||||||
|
PrivateDevices = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -32,10 +32,10 @@ in
|
|||||||
e.efl e.enlightenment
|
e.efl e.enlightenment
|
||||||
e.terminology e.econnman
|
e.terminology e.econnman
|
||||||
pkgs.xorg.xauth # used by kdesu
|
pkgs.xorg.xauth # used by kdesu
|
||||||
pkgs.gtk # To get GTK+'s themes.
|
pkgs.gtk2 # To get GTK+'s themes.
|
||||||
pkgs.tango-icon-theme
|
pkgs.tango-icon-theme
|
||||||
pkgs.shared_mime_info
|
pkgs.shared_mime_info
|
||||||
pkgs.gnome.gnomeicontheme
|
pkgs.gnome2.gnomeicontheme
|
||||||
pkgs.xorg.xcursorthemes
|
pkgs.xorg.xcursorthemes
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ let
|
|||||||
HideUsers=${concatStringsSep "," dmcfg.hiddenUsers}
|
HideUsers=${concatStringsSep "," dmcfg.hiddenUsers}
|
||||||
HideShells=/run/current-system/sw/bin/nologin
|
HideShells=/run/current-system/sw/bin/nologin
|
||||||
|
|
||||||
[XDisplay]
|
[X11]
|
||||||
MinimumVT=${toString xcfg.tty}
|
MinimumVT=${toString xcfg.tty}
|
||||||
ServerPath=${xserverWrapper}
|
ServerPath=${xserverWrapper}
|
||||||
XephyrPath=${pkgs.xorg.xorgserver.out}/bin/Xephyr
|
XephyrPath=${pkgs.xorg.xorgserver.out}/bin/Xephyr
|
||||||
@ -100,7 +100,7 @@ in
|
|||||||
|
|
||||||
theme = mkOption {
|
theme = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "maui";
|
default = "";
|
||||||
description = ''
|
description = ''
|
||||||
Greeter theme to use.
|
Greeter theme to use.
|
||||||
'';
|
'';
|
||||||
|
@ -6,7 +6,7 @@ let
|
|||||||
|
|
||||||
cfg = config.services.xserver.windowManager.awesome;
|
cfg = config.services.xserver.windowManager.awesome;
|
||||||
awesome = cfg.package;
|
awesome = cfg.package;
|
||||||
|
inherit (pkgs.luaPackages) getLuaPath getLuaCPath;
|
||||||
in
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -46,10 +46,8 @@ in
|
|||||||
{ name = "awesome";
|
{ name = "awesome";
|
||||||
start =
|
start =
|
||||||
''
|
''
|
||||||
${concatMapStrings (pkg: ''
|
export LUA_CPATH="${lib.concatStringsSep ";" (map getLuaCPath cfg.luaModules)}"
|
||||||
export LUA_CPATH=$LUA_CPATH''${LUA_CPATH:+;}${pkg}/lib/lua/${awesome.lua.luaversion}/?.so
|
export LUA_PATH="${lib.concatStringsSep ";" (map getLuaPath cfg.luaModules)}"
|
||||||
export LUA_PATH=$LUA_PATH''${LUA_PATH:+;}${pkg}/lib/lua/${awesome.lua.luaversion}/?.lua
|
|
||||||
'') cfg.luaModules}
|
|
||||||
|
|
||||||
${awesome}/bin/awesome &
|
${awesome}/bin/awesome &
|
||||||
waitPID=$!
|
waitPID=$!
|
||||||
@ -59,5 +57,4 @@ in
|
|||||||
environment.systemPackages = [ awesome ];
|
environment.systemPackages = [ awesome ];
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -85,10 +85,14 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf (config.boot.initrd.network.enable && cfg.enable) {
|
config = mkIf (config.boot.initrd.network.enable && cfg.enable) {
|
||||||
assertions = [ {
|
assertions = [
|
||||||
assertion = cfg.hostRSAKey != null || cfg.hostDSSKey != null || cfg.hostECDSAKey != null;
|
{ assertion = cfg.hostRSAKey != null || cfg.hostDSSKey != null || cfg.hostECDSAKey != null;
|
||||||
message = "You should specify at least one host key for initrd SSH";
|
message = "You should specify at least one host key for initrd SSH";
|
||||||
} ];
|
}
|
||||||
|
{ assertion = cfg.authorizedKeys != [];
|
||||||
|
message = "You should specify at least one authorized key for initrd SSH";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
boot.initrd.extraUtilsCommands = ''
|
boot.initrd.extraUtilsCommands = ''
|
||||||
copy_bin_and_libs ${pkgs.dropbear}/bin/dropbear
|
copy_bin_and_libs ${pkgs.dropbear}/bin/dropbear
|
||||||
|
@ -391,7 +391,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
networking.localCommands = mkOption {
|
networking.localCommands = mkOption {
|
||||||
type = types.str;
|
type = types.lines;
|
||||||
default = "";
|
default = "";
|
||||||
example = "text=anything; echo You can put $text here.";
|
example = "text=anything; echo You can put $text here.";
|
||||||
description = ''
|
description = ''
|
||||||
|
@ -3,17 +3,19 @@
|
|||||||
, libSM, libsndfile, libogg
|
, libSM, libsndfile, libogg
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
name = "freewheeling-100";
|
name = "freewheeling-${version}";
|
||||||
|
version = "100";
|
||||||
|
|
||||||
src = fetchsvn {
|
src = fetchsvn {
|
||||||
url = svn://svn.code.sf.net/p/freewheeling/code;
|
url = svn://svn.code.sf.net/p/freewheeling/code;
|
||||||
rev = 100;
|
rev = version;
|
||||||
sha256 = "1m6z7p93xyha25qma9bazpzbp04pqdv5h3yrv6851775xsyvzksv";
|
sha256 = "1m6z7p93xyha25qma9bazpzbp04pqdv5h3yrv6851775xsyvzksv";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
pkgconfig autoreconfHook gnutls33 freetype SDL SDL_gfx SDL_ttf
|
gnutls33 freetype SDL SDL_gfx SDL_ttf
|
||||||
liblo libxml2 libjack2 alsaLib libvorbis libsndfile libogg libSM
|
liblo libxml2 libjack2 alsaLib libvorbis libsndfile libogg libSM
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -35,7 +37,6 @@ stdenv.mkDerivation {
|
|||||||
software, released under the GNU GPL license.
|
software, released under the GNU GPL license.
|
||||||
'' ;
|
'' ;
|
||||||
|
|
||||||
version = "r100";
|
|
||||||
homepage = "http://freewheeling.sourceforge.net";
|
homepage = "http://freewheeling.sourceforge.net";
|
||||||
license = stdenv.lib.licenses.gpl2;
|
license = stdenv.lib.licenses.gpl2;
|
||||||
maintainers = [ stdenv.lib.maintainers.sepi ];
|
maintainers = [ stdenv.lib.maintainers.sepi ];
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
From 7a18f4cb77c567dec9ad924fcc76c50092de6ee7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thomas Tuegel <ttuegel@gmail.com>
|
|
||||||
Date: Mon, 23 Nov 2015 06:57:51 -0600
|
|
||||||
Subject: [PATCH 2/2] fix ConfigReader QStringList corruption
|
|
||||||
|
|
||||||
---
|
|
||||||
src/common/ConfigReader.cpp | 3 ++-
|
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/common/ConfigReader.cpp b/src/common/ConfigReader.cpp
|
|
||||||
index 5bf5a6a..34182e6 100644
|
|
||||||
--- a/src/common/ConfigReader.cpp
|
|
||||||
+++ b/src/common/ConfigReader.cpp
|
|
||||||
@@ -30,7 +30,8 @@
|
|
||||||
|
|
||||||
QTextStream &operator>>(QTextStream &str, QStringList &list) {
|
|
||||||
list.clear();
|
|
||||||
- foreach(const QStringRef &s, str.readLine().splitRef(QLatin1Char(',')))
|
|
||||||
+ QString line = str.readLine();
|
|
||||||
+ foreach(const QStringRef &s, line.splitRef(QLatin1Char(',')))
|
|
||||||
{
|
|
||||||
QStringRef trimmed = s.trimmed();
|
|
||||||
if (!trimmed.isEmpty())
|
|
||||||
--
|
|
||||||
2.6.3
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
|||||||
{ stdenv, makeQtWrapper, fetchFromGitHub, fetchpatch
|
{ stdenv, makeQtWrapper, fetchFromGitHub, fetchpatch
|
||||||
, cmake, pkgconfig, libxcb, libpthreadstubs, lndir
|
, cmake, extra-cmake-modules, pkgconfig, libxcb, libpthreadstubs, lndir
|
||||||
, libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam, systemd
|
, libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam, systemd
|
||||||
, themes
|
, themes
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.13.0";
|
version = "0.14.0";
|
||||||
|
|
||||||
unwrapped = stdenv.mkDerivation rec {
|
unwrapped = stdenv.mkDerivation rec {
|
||||||
name = "sddm-unwrapped-${version}";
|
name = "sddm-unwrapped-${version}";
|
||||||
@ -14,19 +14,18 @@ let
|
|||||||
owner = "sddm";
|
owner = "sddm";
|
||||||
repo = "sddm";
|
repo = "sddm";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0c3q8lpb123m9k5x3i71mm8lmyzhknw77zxh89yfl8qmn6zd61i1";
|
sha256 = "0wwid23kw0725zpw67zchalg9mmharr7sn4yzhijq7wqpsczjfxj";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./0001-ignore-config-mtime.patch
|
./0001-ignore-config-mtime.patch
|
||||||
./0002-fix-ConfigReader-QStringList-corruption.patch
|
(fetchpatch { /* Fix display of user avatars. */
|
||||||
(fetchpatch {
|
url = https://github.com/sddm/sddm/commit/ecb903e48822bd90650bdd64fe80754e3e9664cb.patch;
|
||||||
url = https://github.com/benjarobin/sddm/commit/7d05362e3c7c5945ad85b0176771bc1c5a370598.patch;
|
sha256 = "0zm88944pwdad8grmv0xwnxl23xml85ryc71x2xac233jxdyx6ms";
|
||||||
sha256 = "17f174lsb8vm7k1vx00yiqcipyyr6hgg4rm1rclps7saapfah5sj";
|
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkgconfig qttools ];
|
nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig qttools ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
libxcb libpthreadstubs libXdmcp libXau qtbase pam systemd
|
libxcb libpthreadstubs libXdmcp libXau qtbase pam systemd
|
||||||
|
34
pkgs/applications/editors/deadpixi-sam/default.nix
Normal file
34
pkgs/applications/editors/deadpixi-sam/default.nix
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
{ stdenv, fetchFromGitHub, freetype, libX11, libXt, libXft
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "deadpixi-sam-unstable";
|
||||||
|
version = "2016-09-15";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "deadpixi";
|
||||||
|
repo = "sam";
|
||||||
|
rev = "a6a8872246e8634d884b0ce52bc3be9770ab1b0f";
|
||||||
|
sha256 = "1zr8dl0vp1xic3dq69h4bp2fcxsjhrzasfl6ayvkibjd6z5dn07p";
|
||||||
|
};
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace config.mk.def \
|
||||||
|
--replace "/usr/include/freetype2" "${freetype.dev}/include/freetype2"
|
||||||
|
'';
|
||||||
|
|
||||||
|
makeFlags = [ "DESTDIR=$(out)" ];
|
||||||
|
buildInputs = [ libX11 libXt libXft ];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/share/applications
|
||||||
|
mv deadpixi-sam.desktop $out/share/applications
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
inherit (src.meta) homepage;
|
||||||
|
description = "Updated version of the sam text editor";
|
||||||
|
license = with licenses; lpl-102;
|
||||||
|
maintainers = with maintainers; [ ramkromberg ];
|
||||||
|
platforms = with platforms; linux;
|
||||||
|
};
|
||||||
|
}
|
@ -1,38 +0,0 @@
|
|||||||
source $stdenv/setup
|
|
||||||
|
|
||||||
# This hook is supposed to be run on Linux. It patches the proper locations of
|
|
||||||
# the crt{1,i,n}.o files into the build to ensure that Emacs is linked with
|
|
||||||
# *our* versions, not the ones found in the system, as it would do by default.
|
|
||||||
# On other platforms, this appears to be unnecessary.
|
|
||||||
preConfigure() {
|
|
||||||
for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
|
|
||||||
substituteInPlace $i --replace /bin/pwd pwd
|
|
||||||
done
|
|
||||||
|
|
||||||
case "${system}" in
|
|
||||||
x86_64-linux) glibclibdir=lib64 ;;
|
|
||||||
i686-linux) glibclibdir=lib ;;
|
|
||||||
*) return;
|
|
||||||
esac
|
|
||||||
|
|
||||||
libc=$(cat ${NIX_CC}/nix-support/orig-libc)
|
|
||||||
echo "libc: $libc"
|
|
||||||
|
|
||||||
for i in src/s/*.h src/m/*.h; do
|
|
||||||
substituteInPlace $i \
|
|
||||||
--replace /usr/${glibclibdir}/crt1.o $libc/${glibclibdir}/crt1.o \
|
|
||||||
--replace /usr/${glibclibdir}/crti.o $libc/${glibclibdir}/crti.o \
|
|
||||||
--replace /usr/${glibclibdir}/crtn.o $libc/${glibclibdir}/crtn.o \
|
|
||||||
--replace /usr/lib/crt1.o $libc/${glibclibdir}/crt1.o \
|
|
||||||
--replace /usr/lib/crti.o $libc/${glibclibdir}/crti.o \
|
|
||||||
--replace /usr/lib/crtn.o $libc/${glibclibdir}/crtn.o
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
preInstall () {
|
|
||||||
for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
|
|
||||||
substituteInPlace $i --replace /bin/pwd pwd
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
genericBuild
|
|
@ -1,111 +0,0 @@
|
|||||||
{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
|
|
||||||
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
|
|
||||||
, libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
|
|
||||||
, alsaLib, cairo, acl, gpm, AppKit, CoreWLAN, Kerberos, GSS, ImageIO
|
|
||||||
, withX ? !stdenv.isDarwin
|
|
||||||
, withGTK3 ? false, gtk3 ? null
|
|
||||||
, withGTK2 ? true, gtk2
|
|
||||||
, enableTTYTrueColor ? false
|
|
||||||
}:
|
|
||||||
|
|
||||||
assert (libXft != null) -> libpng != null; # probably a bug
|
|
||||||
assert stdenv.isDarwin -> libXaw != null; # fails to link otherwise
|
|
||||||
assert withGTK2 -> withX || stdenv.isDarwin;
|
|
||||||
assert withGTK3 -> withX || stdenv.isDarwin;
|
|
||||||
assert withGTK2 -> !withGTK3 && gtk2 != null;
|
|
||||||
assert withGTK3 -> !withGTK2 && gtk3 != null;
|
|
||||||
|
|
||||||
let
|
|
||||||
toolkit =
|
|
||||||
if withGTK3 then "gtk3"
|
|
||||||
else if withGTK2 then "gtk2"
|
|
||||||
else "lucid";
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "emacs-24.5";
|
|
||||||
|
|
||||||
builder = ./builder.sh;
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "mirror://gnu/emacs/${name}.tar.xz";
|
|
||||||
sha256 = "0kn3rzm91qiswi0cql89kbv6mqn27rwsyjfb8xmwy9m5s8fxfiyx";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches = lib.optionals stdenv.isDarwin [
|
|
||||||
./at-fdcwd.patch
|
|
||||||
] ++ lib.optionals enableTTYTrueColor [
|
|
||||||
# Modified TTY True Color patch from: https://gist.github.com/choppsv1/36aacdd696d505566088
|
|
||||||
# To use, pass --color=true-color, which will default to using ';'
|
|
||||||
# as the separator.
|
|
||||||
# Alternatively, set $EMACS_TRUE_COLOR_SEPARATOR to ';' or ':'.
|
|
||||||
./tty-true-color.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
sed -i 's|/usr/share/locale|${gettext}/share/locale|g' lisp/international/mule-cmds.el
|
|
||||||
# emacs runs then dumps itself. In the process, it keeps a copy of the
|
|
||||||
# PATH env var, holding all the build inputs in it's closure.
|
|
||||||
# Prevent that by running the self-dumping emacs with an empty PATH.
|
|
||||||
sed -i 's|^RUN_TEMACS = |&PATH= |' src/Makefile.in
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs =
|
|
||||||
[ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo acl gpm gettext ]
|
|
||||||
++ stdenv.lib.optional stdenv.isLinux dbus
|
|
||||||
++ stdenv.lib.optionals withX
|
|
||||||
[ xlibsWrapper libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
|
|
||||||
imagemagick gconf ]
|
|
||||||
++ stdenv.lib.optional (withX && withGTK2) gtk2
|
|
||||||
++ stdenv.lib.optional (withX && withGTK3) gtk3
|
|
||||||
++ stdenv.lib.optional (stdenv.isDarwin && withX) cairo;
|
|
||||||
|
|
||||||
propagatedBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ AppKit GSS ImageIO ];
|
|
||||||
|
|
||||||
configureFlags =
|
|
||||||
if stdenv.isDarwin
|
|
||||||
then [ "--with-ns" "--disable-ns-self-contained" ]
|
|
||||||
else if withX
|
|
||||||
then [ "--with-x-toolkit=${toolkit}" "--with-xft" ]
|
|
||||||
else [ "--with-x=no" "--with-xpm=no" "--with-jpeg=no" "--with-png=no"
|
|
||||||
"--with-gif=no" "--with-tiff=no" ];
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE =
|
|
||||||
[ "-ffreestanding" ] # needed due to glibc 2.24 upgrade (see https://sourceware.org/glibc/wiki/Release/2.24#Known_Issues)
|
|
||||||
++ stdenv.lib.optional (stdenv.isDarwin && withX) "-I${cairo.dev}/include/cairo";
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
mkdir -p $out/share/emacs/site-lisp/
|
|
||||||
cp ${./site-start.el} $out/share/emacs/site-lisp/site-start.el
|
|
||||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
|
||||||
mkdir -p $out/Applications
|
|
||||||
mv nextstep/Emacs.app $out/Applications
|
|
||||||
'';
|
|
||||||
|
|
||||||
doCheck = true;
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
description = "GNU Emacs 24, the extensible, customizable text editor";
|
|
||||||
homepage = http://www.gnu.org/software/emacs/;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
maintainers = with maintainers; [ chaoflow lovek323 peti the-kenny jwiegley ];
|
|
||||||
platforms = platforms.all;
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
GNU Emacs is an extensible, customizable text editor—and more. At its
|
|
||||||
core is an interpreter for Emacs Lisp, a dialect of the Lisp
|
|
||||||
programming language with extensions to support text editing.
|
|
||||||
|
|
||||||
The features of GNU Emacs include: content-sensitive editing modes,
|
|
||||||
including syntax coloring, for a wide variety of file types including
|
|
||||||
plain text, source code, and HTML; complete built-in documentation,
|
|
||||||
including a tutorial for new users; full Unicode support for nearly all
|
|
||||||
human languages and their scripts; highly customizable, using Emacs
|
|
||||||
Lisp code or a graphical interface; a large number of extensions that
|
|
||||||
add other functionality, including a project planner, mail and news
|
|
||||||
reader, debugger interface, calendar, and more. Many of these
|
|
||||||
extensions are distributed with GNU Emacs; others are available
|
|
||||||
separately.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,428 +0,0 @@
|
|||||||
diff --git a/lisp/term/tty-colors.el b/lisp/term/tty-colors.el
|
|
||||||
index 98108ce..21814a9 100644
|
|
||||||
--- a/lisp/term/tty-colors.el
|
|
||||||
+++ b/lisp/term/tty-colors.el
|
|
||||||
@@ -764,7 +764,8 @@
|
|
||||||
(auto . 0)
|
|
||||||
(ansi8 . 8)
|
|
||||||
(always . 8)
|
|
||||||
- (yes . 8))
|
|
||||||
+ (yes . 8)
|
|
||||||
+ (true-color . 16777216))
|
|
||||||
"An alist of supported standard tty color modes and their aliases.")
|
|
||||||
|
|
||||||
(defun tty-color-alist (&optional _frame)
|
|
||||||
diff --git a/lisp/term/xterm.el b/lisp/term/xterm.el
|
|
||||||
index c673749..244cf7f 100644
|
|
||||||
--- a/lisp/term/xterm.el
|
|
||||||
+++ b/lisp/term/xterm.el
|
|
||||||
@@ -674,6 +674,15 @@ versions of xterm."
|
|
||||||
;; are more colors to support, compute them now.
|
|
||||||
(when (> ncolors 0)
|
|
||||||
(cond
|
|
||||||
+ ((= (display-color-cells (selected-frame)) 16777216) ; 24-bit xterm
|
|
||||||
+ (let ((idx (length xterm-standard-colors)))
|
|
||||||
+ ;; Insert standard X colors after the standard xterm ones
|
|
||||||
+ (mapc (lambda (color)
|
|
||||||
+ (if (not (assoc (car color) xterm-standard-colors))
|
|
||||||
+ (progn
|
|
||||||
+ (tty-color-define (car color) idx (cdr color))
|
|
||||||
+ (setq idx (1+ idx)))))
|
|
||||||
+ color-name-rgb-alist)))
|
|
||||||
((= ncolors 240) ; 256-color xterm
|
|
||||||
;; 216 non-gray colors first
|
|
||||||
(let ((r 0) (g 0) (b 0))
|
|
||||||
diff --git a/src/dispextern.h b/src/dispextern.h
|
|
||||||
index 239c442..5760b84 100644
|
|
||||||
--- a/src/dispextern.h
|
|
||||||
+++ b/src/dispextern.h
|
|
||||||
@@ -1739,9 +1739,15 @@ struct face
|
|
||||||
INLINE bool
|
|
||||||
face_tty_specified_color (unsigned long color)
|
|
||||||
{
|
|
||||||
- return color < FACE_TTY_DEFAULT_BG_COLOR;
|
|
||||||
+ return (color < FACE_TTY_DEFAULT_BG_COLOR);
|
|
||||||
}
|
|
||||||
|
|
||||||
+INLINE bool
|
|
||||||
+face_tty_specified_24_bit_color (unsigned long color)
|
|
||||||
+{
|
|
||||||
+ /* 24 bit colors have 24th but not 25th bit set */
|
|
||||||
+ return ((color & (0x03 << 24)) == (0x01 << 24));
|
|
||||||
+}
|
|
||||||
/* Non-zero if FACE was realized for unibyte use. */
|
|
||||||
|
|
||||||
#define FACE_UNIBYTE_P(FACE) ((FACE)->charset < 0)
|
|
||||||
diff --git a/src/term.c b/src/term.c
|
|
||||||
index 8312491..b14aded 100644
|
|
||||||
--- a/src/term.c
|
|
||||||
+++ b/src/term.c
|
|
||||||
@@ -1915,18 +1915,40 @@ turn_on_face (struct frame *f, int face_id)
|
|
||||||
const char *ts;
|
|
||||||
char *p;
|
|
||||||
|
|
||||||
- ts = tty->standout_mode ? tty->TS_set_background : tty->TS_set_foreground;
|
|
||||||
+ if (face_tty_specified_24_bit_color(fg))
|
|
||||||
+ ts = tty->standout_mode ? tty->TS_set_rgb_background : tty->TS_set_rgb_foreground;
|
|
||||||
+ else
|
|
||||||
+ ts = tty->standout_mode ? tty->TS_set_background : tty->TS_set_foreground;
|
|
||||||
if (face_tty_specified_color (fg) && ts)
|
|
||||||
{
|
|
||||||
- p = tparam (ts, NULL, 0, fg, 0, 0, 0);
|
|
||||||
+ if (!face_tty_specified_24_bit_color(fg))
|
|
||||||
+ p = tparam (ts, NULL, 0, fg, 0, 0, 0);
|
|
||||||
+ else
|
|
||||||
+ {
|
|
||||||
+ const unsigned char r = (fg >> 16) & 0xFF,
|
|
||||||
+ g = (fg >> 8) & 0xFF,
|
|
||||||
+ b = fg & 0xFF;
|
|
||||||
+ p = tparam (ts, NULL, 0, (int)r, (int)g, (int)b, 0);
|
|
||||||
+ }
|
|
||||||
OUTPUT (tty, p);
|
|
||||||
xfree (p);
|
|
||||||
}
|
|
||||||
|
|
||||||
- ts = tty->standout_mode ? tty->TS_set_foreground : tty->TS_set_background;
|
|
||||||
+ if (face_tty_specified_24_bit_color(bg))
|
|
||||||
+ ts = tty->standout_mode ? tty->TS_set_rgb_foreground : tty->TS_set_rgb_background;
|
|
||||||
+ else
|
|
||||||
+ ts = tty->standout_mode ? tty->TS_set_foreground : tty->TS_set_background;
|
|
||||||
if (face_tty_specified_color (bg) && ts)
|
|
||||||
{
|
|
||||||
- p = tparam (ts, NULL, 0, bg, 0, 0, 0);
|
|
||||||
+ if (!face_tty_specified_24_bit_color(bg))
|
|
||||||
+ p = tparam (ts, NULL, 0, bg, 0, 0, 0);
|
|
||||||
+ else
|
|
||||||
+ {
|
|
||||||
+ const unsigned char r = (bg >> 16) & 0xFF,
|
|
||||||
+ g = (bg >> 8) & 0xFF,
|
|
||||||
+ b = bg & 0xFF;
|
|
||||||
+ p = tparam (ts, NULL, 0, (int)r, (int)g, (int)b, 0);
|
|
||||||
+ }
|
|
||||||
OUTPUT (tty, p);
|
|
||||||
xfree (p);
|
|
||||||
}
|
|
||||||
@@ -2028,6 +2050,8 @@ TERMINAL does not refer to a text terminal. */)
|
|
||||||
struct terminal *t = get_tty_terminal (terminal, 0);
|
|
||||||
if (!t)
|
|
||||||
return make_number (0);
|
|
||||||
+ else if (t->display_info.tty->TS_set_rgb_foreground)
|
|
||||||
+ return make_number (16777216); /* 24 bit True Color */
|
|
||||||
else
|
|
||||||
return make_number (t->display_info.tty->TN_max_colors);
|
|
||||||
}
|
|
||||||
@@ -2043,6 +2067,8 @@ static int default_no_color_video;
|
|
||||||
static char *default_orig_pair;
|
|
||||||
static char *default_set_foreground;
|
|
||||||
static char *default_set_background;
|
|
||||||
+static char *default_set_rgb_foreground;
|
|
||||||
+static char *default_set_rgb_background;
|
|
||||||
|
|
||||||
/* Save or restore the default color-related capabilities of this
|
|
||||||
terminal. */
|
|
||||||
@@ -2055,6 +2081,8 @@ tty_default_color_capabilities (struct tty_display_info *tty, bool save)
|
|
||||||
dupstring (&default_orig_pair, tty->TS_orig_pair);
|
|
||||||
dupstring (&default_set_foreground, tty->TS_set_foreground);
|
|
||||||
dupstring (&default_set_background, tty->TS_set_background);
|
|
||||||
+ dupstring (&default_set_rgb_foreground, tty->TS_set_rgb_foreground);
|
|
||||||
+ dupstring (&default_set_rgb_background, tty->TS_set_rgb_background);
|
|
||||||
default_max_colors = tty->TN_max_colors;
|
|
||||||
default_max_pairs = tty->TN_max_pairs;
|
|
||||||
default_no_color_video = tty->TN_no_color_video;
|
|
||||||
@@ -2064,6 +2092,8 @@ tty_default_color_capabilities (struct tty_display_info *tty, bool save)
|
|
||||||
tty->TS_orig_pair = default_orig_pair;
|
|
||||||
tty->TS_set_foreground = default_set_foreground;
|
|
||||||
tty->TS_set_background = default_set_background;
|
|
||||||
+ tty->TS_set_rgb_foreground = default_set_rgb_foreground;
|
|
||||||
+ tty->TS_set_rgb_background = default_set_rgb_background;
|
|
||||||
tty->TN_max_colors = default_max_colors;
|
|
||||||
tty->TN_max_pairs = default_max_pairs;
|
|
||||||
tty->TN_no_color_video = default_no_color_video;
|
|
||||||
@@ -2088,6 +2118,7 @@ tty_setup_colors (struct tty_display_info *tty, int mode)
|
|
||||||
tty->TN_max_pairs = 0;
|
|
||||||
tty->TN_no_color_video = 0;
|
|
||||||
tty->TS_set_foreground = tty->TS_set_background = tty->TS_orig_pair = NULL;
|
|
||||||
+ tty->TS_set_rgb_foreground = tty->TS_set_rgb_background = NULL;
|
|
||||||
break;
|
|
||||||
case 0: /* default colors, if any */
|
|
||||||
default:
|
|
||||||
@@ -2102,10 +2133,45 @@ tty_setup_colors (struct tty_display_info *tty, int mode)
|
|
||||||
tty->TS_set_foreground = "\033[3%dm";
|
|
||||||
tty->TS_set_background = "\033[4%dm";
|
|
||||||
#endif
|
|
||||||
+ tty->TS_set_rgb_foreground = NULL;
|
|
||||||
+ tty->TS_set_rgb_background = NULL;
|
|
||||||
tty->TN_max_colors = 8;
|
|
||||||
tty->TN_max_pairs = 64;
|
|
||||||
tty->TN_no_color_video = 0;
|
|
||||||
break;
|
|
||||||
+ case 16777216: /* RGB colors */
|
|
||||||
+ tty->TS_orig_pair = "\033[0m";
|
|
||||||
+
|
|
||||||
+ /* if the user hasn't explicitly chosen the ":" separator, use ";". */
|
|
||||||
+ char * true_color_separator = getenv ("EMACS_TRUE_COLOR_SEPARATOR");
|
|
||||||
+ if (true_color_separator && strcmp (true_color_separator, ":") == 0)
|
|
||||||
+ {
|
|
||||||
+ /* XXX chopps use ITU T.421 ':' separator */
|
|
||||||
+ /* TODO This should be extracted from terminfo/termcap. */
|
|
||||||
+#ifdef TERMINFO
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38:2:%p1%d:%p2%d:%p3%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48:2:%p1%d:%p2%d:%p3%dm";
|
|
||||||
+#else
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38:2:%d:%d:%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48:2:%d:%d:%dm";
|
|
||||||
+#endif
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ {
|
|
||||||
+ /* TODO This should be extracted from terminfo/termcap. */
|
|
||||||
+#ifdef TERMINFO
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38;2;%p1%d;%p2%d;%p3%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48;2;%p1%d;%p2%d;%p3%dm";
|
|
||||||
+#else
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38;2;%d;%d;%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48;2;%d;%d;%dm";
|
|
||||||
+#endif
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ tty->TN_max_colors = 16777216;
|
|
||||||
+ /*tty->TN_max_pairs = 64; TODO */
|
|
||||||
+ tty->TN_no_color_video = 0;
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -4201,6 +4267,38 @@ use the Bourne shell command `TERM=... export TERM' (C-shell:\n\
|
|
||||||
tty->TN_no_color_video = tgetnum ("NC");
|
|
||||||
if (tty->TN_no_color_video == -1)
|
|
||||||
tty->TN_no_color_video = 0;
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+ /* Allow the user to opt-in to True Color support. */
|
|
||||||
+ char * true_color_separator = getenv ("EMACS_TRUE_COLOR_SEPARATOR");
|
|
||||||
+ if (true_color_separator && strcmp (true_color_separator, ";") == 0)
|
|
||||||
+ {
|
|
||||||
+ /* TODO This should be extracted from terminfo/termcap. */
|
|
||||||
+#ifdef TERMINFO
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38;2;%p1%d;%p2%d;%p3%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48;2;%p1%d;%p2%d;%p3%dm";
|
|
||||||
+#else
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38;2;%d;%d;%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48;2;%d;%d;%dm";
|
|
||||||
+#endif
|
|
||||||
+ }
|
|
||||||
+ else if (true_color_separator && strcmp (true_color_separator, ":") == 0)
|
|
||||||
+ {
|
|
||||||
+ /* XXX chopps use ITU T.421 ':' separator */
|
|
||||||
+ /* TODO This should be extracted from terminfo/termcap. */
|
|
||||||
+#ifdef TERMINFO
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38:2:%p1%d:%p2%d:%p3%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48:2:%p1%d:%p2%d:%p3%dm";
|
|
||||||
+#else
|
|
||||||
+ tty->TS_set_rgb_foreground = "\033[38:2:%d:%d:%dm";
|
|
||||||
+ tty->TS_set_rgb_background = "\033[48:2:%d:%d:%dm";
|
|
||||||
+#endif
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ {
|
|
||||||
+ tty->TS_set_rgb_foreground = NULL;
|
|
||||||
+ tty->TS_set_rgb_background = NULL;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
tty_default_color_capabilities (tty, 1);
|
|
||||||
diff --git a/src/termchar.h b/src/termchar.h
|
|
||||||
index d8066d7..e48d583 100644
|
|
||||||
--- a/src/termchar.h
|
|
||||||
+++ b/src/termchar.h
|
|
||||||
@@ -157,6 +157,10 @@ struct tty_display_info
|
|
||||||
const char *TS_set_foreground;
|
|
||||||
const char *TS_set_background;
|
|
||||||
|
|
||||||
+ /* Support for 24bit RGB color terminals. */
|
|
||||||
+ const char *TS_set_rgb_foreground;
|
|
||||||
+ const char *TS_set_rgb_background;
|
|
||||||
+
|
|
||||||
int TF_hazeltine; /* termcap hz flag. */
|
|
||||||
int TF_insmode_motion; /* termcap mi flag: can move while in insert mode. */
|
|
||||||
int TF_standout_motion; /* termcap mi flag: can move while in standout mode. */
|
|
||||||
diff --git a/src/xfaces.c b/src/xfaces.c
|
|
||||||
index 29c91f7..347ebf8 100644
|
|
||||||
--- a/src/xfaces.c
|
|
||||||
+++ b/src/xfaces.c
|
|
||||||
@@ -382,7 +382,7 @@ static ptrdiff_t lface_id_to_name_size;
|
|
||||||
|
|
||||||
/* TTY color-related functions (defined in tty-colors.el). */
|
|
||||||
|
|
||||||
-static Lisp_Object Qtty_color_desc, Qtty_color_by_index, Qtty_color_standard_values;
|
|
||||||
+static Lisp_Object Qtty_color_desc, Qtty_color_by_index, Qtty_color_standard_values, Qtty_color_canonicalize;
|
|
||||||
|
|
||||||
/* The name of the function used to compute colors on TTYs. */
|
|
||||||
|
|
||||||
@@ -943,54 +943,80 @@ tty_lookup_color (struct frame *f, Lisp_Object color, XColor *tty_color,
|
|
||||||
if (!STRINGP (color) || NILP (Ffboundp (Qtty_color_desc)))
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
- XSETFRAME (frame, f);
|
|
||||||
-
|
|
||||||
- color_desc = call2 (Qtty_color_desc, color, frame);
|
|
||||||
- if (CONSP (color_desc) && CONSP (XCDR (color_desc)))
|
|
||||||
+ if (f->output_method == output_termcap
|
|
||||||
+ && f->output_data.tty->display_info->TS_set_rgb_foreground
|
|
||||||
+ && !NILP (Ffboundp (Qtty_color_standard_values)))
|
|
||||||
{
|
|
||||||
- Lisp_Object rgb;
|
|
||||||
-
|
|
||||||
- if (! INTEGERP (XCAR (XCDR (color_desc))))
|
|
||||||
- return 0;
|
|
||||||
+ /* Terminal supports 3 byte RGB colors. */
|
|
||||||
+ if (!NILP (Ffboundp (Qtty_color_canonicalize)))
|
|
||||||
+ color = call1(Qtty_color_canonicalize, color);
|
|
||||||
|
|
||||||
- tty_color->pixel = XINT (XCAR (XCDR (color_desc)));
|
|
||||||
+ color_desc = call1 (Qtty_color_standard_values, color);
|
|
||||||
+ if (! parse_rgb_list (color_desc, tty_color))
|
|
||||||
+ return 0;
|
|
||||||
|
|
||||||
- rgb = XCDR (XCDR (color_desc));
|
|
||||||
- if (! parse_rgb_list (rgb, tty_color))
|
|
||||||
- return 0;
|
|
||||||
+ /* Map XColor to 3 byte values. */
|
|
||||||
+ tty_color->pixel = 1 << 24 /* Set bit 24 to mark RGB values. */
|
|
||||||
+ | (tty_color->red / 256) << 16
|
|
||||||
+ | (tty_color->green / 256) << 8
|
|
||||||
+ | (tty_color->blue / 256);
|
|
||||||
|
|
||||||
- /* Should we fill in STD_COLOR too? */
|
|
||||||
if (std_color)
|
|
||||||
- {
|
|
||||||
- /* Default STD_COLOR to the same as TTY_COLOR. */
|
|
||||||
- *std_color = *tty_color;
|
|
||||||
-
|
|
||||||
- /* Do a quick check to see if the returned descriptor is
|
|
||||||
- actually _exactly_ equal to COLOR, otherwise we have to
|
|
||||||
- lookup STD_COLOR separately. If it's impossible to lookup
|
|
||||||
- a standard color, we just give up and use TTY_COLOR. */
|
|
||||||
- if ((!STRINGP (XCAR (color_desc))
|
|
||||||
- || NILP (Fstring_equal (color, XCAR (color_desc))))
|
|
||||||
- && !NILP (Ffboundp (Qtty_color_standard_values)))
|
|
||||||
- {
|
|
||||||
- /* Look up STD_COLOR separately. */
|
|
||||||
- rgb = call1 (Qtty_color_standard_values, color);
|
|
||||||
- if (! parse_rgb_list (rgb, std_color))
|
|
||||||
- return 0;
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
+ *std_color = *tty_color;
|
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
- else if (NILP (Fsymbol_value (intern ("tty-defined-color-alist"))))
|
|
||||||
- /* We were called early during startup, and the colors are not
|
|
||||||
- yet set up in tty-defined-color-alist. Don't return a failure
|
|
||||||
- indication, since this produces the annoying "Unable to
|
|
||||||
- load color" messages in the *Messages* buffer. */
|
|
||||||
- return 1;
|
|
||||||
else
|
|
||||||
- /* tty-color-desc seems to have returned a bad value. */
|
|
||||||
- return 0;
|
|
||||||
+ {
|
|
||||||
+ XSETFRAME (frame, f);
|
|
||||||
+
|
|
||||||
+ color_desc = call2 (Qtty_color_desc, color, frame);
|
|
||||||
+ if (CONSP (color_desc) && CONSP (XCDR (color_desc)))
|
|
||||||
+ {
|
|
||||||
+ Lisp_Object rgb;
|
|
||||||
+
|
|
||||||
+ if (! INTEGERP (XCAR (XCDR (color_desc))))
|
|
||||||
+ return 0;
|
|
||||||
+
|
|
||||||
+ tty_color->pixel = XINT (XCAR (XCDR (color_desc)));
|
|
||||||
+
|
|
||||||
+ rgb = XCDR (XCDR (color_desc));
|
|
||||||
+ if (! parse_rgb_list (rgb, tty_color))
|
|
||||||
+ return 0;
|
|
||||||
+
|
|
||||||
+ /* Should we fill in STD_COLOR too? */
|
|
||||||
+ if (std_color)
|
|
||||||
+ {
|
|
||||||
+ /* Default STD_COLOR to the same as TTY_COLOR. */
|
|
||||||
+ *std_color = *tty_color;
|
|
||||||
+
|
|
||||||
+ /* Do a quick check to see if the returned descriptor is
|
|
||||||
+ actually _exactly_ equal to COLOR, otherwise we have to
|
|
||||||
+ lookup STD_COLOR separately. If it's impossible to lookup
|
|
||||||
+ a standard color, we just give up and use TTY_COLOR. */
|
|
||||||
+ if ((!STRINGP (XCAR (color_desc))
|
|
||||||
+ || NILP (Fstring_equal (color, XCAR (color_desc))))
|
|
||||||
+ && !NILP (Ffboundp (Qtty_color_standard_values)))
|
|
||||||
+ {
|
|
||||||
+ /* Look up STD_COLOR separately. */
|
|
||||||
+ rgb = call1 (Qtty_color_standard_values, color);
|
|
||||||
+ if (! parse_rgb_list (rgb, std_color))
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ return 1;
|
|
||||||
+ }
|
|
||||||
+ else if (NILP (Fsymbol_value (intern ("tty-defined-color-alist"))))
|
|
||||||
+ /* We were called early during startup, and the colors are not
|
|
||||||
+ yet set up in tty-defined-color-alist. Don't return a failure
|
|
||||||
+ indication, since this produces the annoying "Unable to
|
|
||||||
+ load color" messages in the *Messages* buffer. */
|
|
||||||
+ return 1;
|
|
||||||
+ else
|
|
||||||
+ /* tty-color-desc seems to have returned a bad value. */
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
/* A version of defined_color for non-X frames. */
|
|
||||||
@@ -1008,7 +1034,9 @@ tty_defined_color (struct frame *f, const char *color_name,
|
|
||||||
color_def->green = 0;
|
|
||||||
|
|
||||||
if (*color_name)
|
|
||||||
- status = tty_lookup_color (f, build_string (color_name), color_def, NULL);
|
|
||||||
+ {
|
|
||||||
+ status = tty_lookup_color (f, build_string (color_name), color_def, NULL);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if (color_def->pixel == FACE_TTY_DEFAULT_COLOR && *color_name)
|
|
||||||
{
|
|
||||||
@@ -5780,6 +5808,7 @@ map_tty_color (struct frame *f, struct face *face,
|
|
||||||
unsigned long default_pixel =
|
|
||||||
foreground_p ? FACE_TTY_DEFAULT_FG_COLOR : FACE_TTY_DEFAULT_BG_COLOR;
|
|
||||||
unsigned long pixel = default_pixel;
|
|
||||||
+ XColor true_color;
|
|
||||||
#ifdef MSDOS
|
|
||||||
unsigned long default_other_pixel =
|
|
||||||
foreground_p ? FACE_TTY_DEFAULT_BG_COLOR : FACE_TTY_DEFAULT_FG_COLOR;
|
|
||||||
@@ -5798,7 +5827,18 @@ map_tty_color (struct frame *f, struct face *face,
|
|
||||||
{
|
|
||||||
/* Associations in tty-defined-color-alist are of the form
|
|
||||||
(NAME INDEX R G B). We need the INDEX part. */
|
|
||||||
- pixel = XINT (XCAR (XCDR (def)));
|
|
||||||
+ if (f->output_method == output_termcap
|
|
||||||
+ && f->output_data.tty->display_info->TS_set_rgb_foreground
|
|
||||||
+ && parse_rgb_list (XCDR (XCDR(def)), &true_color))
|
|
||||||
+ {
|
|
||||||
+ /* Map XColor to 3 byte values. */
|
|
||||||
+ pixel = 1 << 24 /* Set bit 24 to mark RGB values. */
|
|
||||||
+ | (true_color.red / 256) << 16
|
|
||||||
+ | (true_color.green / 256) << 8
|
|
||||||
+ | (true_color.blue / 256);
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ pixel = XINT (XCAR (XCDR (def)));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pixel == default_pixel && STRINGP (color))
|
|
||||||
@@ -6460,6 +6500,7 @@ syms_of_xfaces (void)
|
|
||||||
DEFSYM (Qwindow_divider, "window-divider");
|
|
||||||
DEFSYM (Qwindow_divider_first_pixel, "window-divider-first-pixel");
|
|
||||||
DEFSYM (Qwindow_divider_last_pixel, "window-divider-last-pixel");
|
|
||||||
+ DEFSYM (Qtty_color_canonicalize, "tty-color-canonicalize");
|
|
||||||
DEFSYM (Qtty_color_desc, "tty-color-desc");
|
|
||||||
DEFSYM (Qtty_color_standard_values, "tty-color-standard-values");
|
|
||||||
DEFSYM (Qtty_color_by_index, "tty-color-by-index");
|
|
@ -1,15 +0,0 @@
|
|||||||
diff --git a/lib/careadlinkat.h b/lib/careadlinkat.h
|
|
||||||
index 84ede3e..8e8f42e 100644
|
|
||||||
--- a/lib/careadlinkat.h
|
|
||||||
+++ b/lib/careadlinkat.h
|
|
||||||
@@ -23,6 +23,10 @@
|
|
||||||
#include <fcntl.h>
|
|
||||||
#include <unistd.h>
|
|
||||||
|
|
||||||
+#ifndef AT_FDCWD
|
|
||||||
+#define AT_FDCWD -2
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
struct allocator;
|
|
||||||
|
|
||||||
/* Assuming the current directory is FD, get the symbolic link value
|
|
@ -1,17 +0,0 @@
|
|||||||
;; NixOS specific load-path
|
|
||||||
(setq load-path
|
|
||||||
(append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/"))
|
|
||||||
(split-string (or (getenv "NIX_PROFILES") ""))))
|
|
||||||
load-path))
|
|
||||||
|
|
||||||
;;; Make `woman' find the man pages
|
|
||||||
(eval-after-load 'woman
|
|
||||||
'(setq woman-manpath
|
|
||||||
(append (reverse (mapcar (lambda (x) (concat x "/share/man/"))
|
|
||||||
(split-string (or (getenv "NIX_PROFILES") ""))))
|
|
||||||
woman-manpath)))
|
|
||||||
|
|
||||||
;; Make tramp work for remote NixOS machines
|
|
||||||
;;; NOTE: You might want to add
|
|
||||||
(eval-after-load 'tramp
|
|
||||||
'(add-to-list 'tramp-remote-path "/run/current-system/sw/bin"))
|
|
@ -1336,10 +1336,10 @@
|
|||||||
}) {};
|
}) {};
|
||||||
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||||
pname = "org";
|
pname = "org";
|
||||||
version = "20160905";
|
version = "20160912";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/org-20160905.tar";
|
url = "https://elpa.gnu.org/packages/org-20160912.tar";
|
||||||
sha256 = "118xq8bsiwa6nfxm14ww5dmyf5r0cv69lf748cj39bcvg1qm94vn";
|
sha256 = "0g44hcyk9x0103mfkmkbrn4f36vlyrfxil1qd3fpwardcnaxr5w4";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
@ -1529,10 +1529,10 @@
|
|||||||
rudel = callPackage ({ cl-generic, cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
rudel = callPackage ({ cl-generic, cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "rudel";
|
pname = "rudel";
|
||||||
version = "0.3";
|
version = "0.3.1";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/rudel-0.3.tar";
|
url = "https://elpa.gnu.org/packages/rudel-0.3.1.tar";
|
||||||
sha256 = "041yac9a7hbz1fpmjlmc31ggcgg90fmw08z6bkzly2141yky8yh1";
|
sha256 = "0glqa68g509p0s2vcc0i8kzlddnc9brd9jqhnm5rzxz4i050cvnz";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-generic cl-lib emacs ];
|
packageRequires = [ cl-generic cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
@ -1687,10 +1687,10 @@
|
|||||||
}) {};
|
}) {};
|
||||||
stream = callPackage ({ elpaBuild, emacs, fetchurl, lib }: elpaBuild {
|
stream = callPackage ({ elpaBuild, emacs, fetchurl, lib }: elpaBuild {
|
||||||
pname = "stream";
|
pname = "stream";
|
||||||
version = "2.2.1";
|
version = "2.2.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/stream-2.2.1.el";
|
url = "https://elpa.gnu.org/packages/stream-2.2.2.el";
|
||||||
sha256 = "1d91ddak5whb7kln216vhcsl707h5kirc6aqbkw82skhpg4c3ap1";
|
sha256 = "00p24ipn8frlhhwzrz6za7dq4fkhs8i8cwp48yhsq9zpnj9y38xb";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs ];
|
packageRequires = [ emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1648,12 +1648,12 @@
|
|||||||
auth-password-store = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, password-store, seq }:
|
auth-password-store = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, password-store, seq }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "auth-password-store";
|
pname = "auth-password-store";
|
||||||
version = "1.0.4";
|
version = "1.1.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "DamienCassou";
|
owner = "DamienCassou";
|
||||||
repo = "auth-password-store";
|
repo = "auth-password-store";
|
||||||
rev = "209663c772105ae87d244cce9247695823914a00";
|
rev = "7b399fd7eb4a19f32d93ec6dc0eb3a344d2687aa";
|
||||||
sha256 = "1b6g7qvrxv6gkl4izq1y7k0x0l7izyfnpki10di5vdv3jp6xg9b2";
|
sha256 = "021iqwn4lwpsx02m3ns8l3bn5dvssii5sk9vg32mh56fjpbi2dkj";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/0f4d2a28373ba93da5b280ebf40c5a3fa758ea11/recipes/auth-password-store";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/0f4d2a28373ba93da5b280ebf40c5a3fa758ea11/recipes/auth-password-store";
|
||||||
@ -3565,12 +3565,12 @@
|
|||||||
cliphist = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, popup }:
|
cliphist = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, popup }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "cliphist";
|
pname = "cliphist";
|
||||||
version = "0.3.1";
|
version = "0.4.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "redguardtoo";
|
owner = "redguardtoo";
|
||||||
repo = "cliphist";
|
repo = "cliphist";
|
||||||
rev = "7a1a8a6dcc046c7ede4480315c539c06e1bbadc9";
|
rev = "5cddd9c0b3aacc9941214a749edd19ceb2cde7f4";
|
||||||
sha256 = "0h856l6rslawf3vg37xhsaw5w56r9qlwzbqapg751qg0v7wf0860";
|
sha256 = "0hifxb3r54yinlal6bwhycwaspbz1kwkybvrcppkpdfg9jd88nfd";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/82d86dae4ad8efc8ef342883c164c56e43079171/recipes/cliphist";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/82d86dae4ad8efc8ef342883c164c56e43079171/recipes/cliphist";
|
||||||
@ -3636,22 +3636,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
cljr-helm = callPackage ({ clj-refactor, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
|
cljr-helm = callPackage ({ cl-lib ? null, clj-refactor, fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "cljr-helm";
|
pname = "cljr-helm";
|
||||||
version = "0.7";
|
version = "0.11";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "philjackson";
|
owner = "philjackson";
|
||||||
repo = "cljr-helm";
|
repo = "cljr-helm";
|
||||||
rev = "916d070503d0f484f36626c7a42f156b737e3fab";
|
rev = "f2fc7b698a56e4a44d5dfbc6a55d77a93c0fa9a4";
|
||||||
sha256 = "18gv8vmmpiyq16cq4nr9nk2bmc5y2rsv21wjl4ji29rc7566shha";
|
sha256 = "0jy6hkz8sr1bplymwxnjg4q408cw2dgfrv70chlw3y5ddc4cingj";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/d99b67e295ef59916211bf22b57b4d093e3d53ab/recipes/cljr-helm";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/d99b67e295ef59916211bf22b57b4d093e3d53ab/recipes/cljr-helm";
|
||||||
sha256 = "108a1xgnc6qy088vs41j3npwk25a5vny0xx4r3yh76jsmpdpcgnc";
|
sha256 = "108a1xgnc6qy088vs41j3npwk25a5vny0xx4r3yh76jsmpdpcgnc";
|
||||||
name = "cljr-helm";
|
name = "cljr-helm";
|
||||||
};
|
};
|
||||||
packageRequires = [ clj-refactor helm ];
|
packageRequires = [ cl-lib clj-refactor helm-core ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/cljr-helm";
|
homepage = "https://melpa.org/#/cljr-helm";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@ -3807,12 +3807,12 @@
|
|||||||
cm-mode = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
cm-mode = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "cm-mode";
|
pname = "cm-mode";
|
||||||
version = "1.2";
|
version = "1.5";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "joostkremers";
|
owner = "joostkremers";
|
||||||
repo = "criticmarkup-emacs";
|
repo = "criticmarkup-emacs";
|
||||||
rev = "1ac0d64842eb303323f2ebea61b4b6ba9f72969c";
|
rev = "12b7460691dc502d27329d6ac11c51cc83cd098e";
|
||||||
sha256 = "1rwln3ms71fys3rdv3sx8w706aqn874im3kqcfrkxz86wiazm2d5";
|
sha256 = "018limfwcb396yr2kn6jixxdmpmiif3l7gp0p1pmwbg07fldllha";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/42dda804ec0c7338c39c57eec6ba479609a38555/recipes/cm-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/42dda804ec0c7338c39c57eec6ba479609a38555/recipes/cm-mode";
|
||||||
@ -4692,6 +4692,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
conda = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, pythonic, s }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "conda";
|
||||||
|
version = "0.0.2";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "necaris";
|
||||||
|
repo = "conda.el";
|
||||||
|
rev = "d5bfe6ef6c2adecd1791ed87e3efb55208c0c7c1";
|
||||||
|
sha256 = "1pvhm8j49ixlp9jd1zfjzw0rnhjyy1jyipacagsqcyssq6p6khyw";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/fcf762e34837975f5440a1d81a7f09699778123e/recipes/conda";
|
||||||
|
sha256 = "1hi292h6ccl7vkvyxcwwcdxw8q2brv3hy0mnlikzj2qy5pbnfg4y";
|
||||||
|
name = "conda";
|
||||||
|
};
|
||||||
|
packageRequires = [ dash emacs f pythonic s ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/conda";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
conkeror-minor-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
conkeror-minor-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "conkeror-minor-mode";
|
pname = "conkeror-minor-mode";
|
||||||
@ -5031,12 +5052,12 @@
|
|||||||
csharp-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
csharp-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "csharp-mode";
|
pname = "csharp-mode";
|
||||||
version = "0.8.12";
|
version = "0.9.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "josteink";
|
owner = "josteink";
|
||||||
repo = "csharp-mode";
|
repo = "csharp-mode";
|
||||||
rev = "b4fb58af022a60c1c8161475e9c3fa023a0f9816";
|
rev = "6c0a0d6cf602666d63a06c3652ce522b3a5a7661";
|
||||||
sha256 = "0dqih7cy57sciqn5vz5fiwynpld96qldyl7jcgn9qpwnzb401ayx";
|
sha256 = "1pw96s0675rf35hwaxdzids9s8ynkb0g66yximiiz6ryh4ama0wn";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/736716bbcfd9c9fb1d10ce290cb4f66fe1c68f44/recipes/csharp-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/736716bbcfd9c9fb1d10ce290cb4f66fe1c68f44/recipes/csharp-mode";
|
||||||
@ -5260,12 +5281,12 @@
|
|||||||
darktooth-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
darktooth-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "darktooth-theme";
|
pname = "darktooth-theme";
|
||||||
version = "0.1.44";
|
version = "0.1.48";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "emacsfodder";
|
owner = "emacsfodder";
|
||||||
repo = "emacs-theme-darktooth";
|
repo = "emacs-theme-darktooth";
|
||||||
rev = "839c94048e0a3e9ac6e286212c7626f3fb7ac2c9";
|
rev = "a9891537f5d49fae2deb631fea0752ab61d3852e";
|
||||||
sha256 = "1nagwhd8n69iysa4m5i7xxi06w6z4hsrvjsgmdg5msyi14ci5lip";
|
sha256 = "19gwhhspkyrnyf277g8kpk57f9l0fp16jaj8va0j1qh1n64fxazn";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
|
||||||
@ -6220,6 +6241,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
doom-themes = callPackage ({ all-the-icons, dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "doom-themes";
|
||||||
|
version = "1.0.8";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "hlissner";
|
||||||
|
repo = "emacs-doom-theme";
|
||||||
|
rev = "45022da883e7ba84a1f832c266e9f2c9a01b393c";
|
||||||
|
sha256 = "1mgd6pqqnq28714bvfn70nbfdypw7q57y9a3hgg9v4b60mhjhd7f";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/73fd9f3c2352ea1af49166c2fe586d0410614081/recipes/doom-themes";
|
||||||
|
sha256 = "1ckr8rv1i101kynnx666lm7qa73jf9i5lppgwmhlc76lisg07cik";
|
||||||
|
name = "doom-themes";
|
||||||
|
};
|
||||||
|
packageRequires = [ all-the-icons dash emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/doom-themes";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
downplay-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
downplay-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "downplay-mode";
|
pname = "downplay-mode";
|
||||||
@ -7039,12 +7081,12 @@
|
|||||||
ein = callPackage ({ cl-generic, fetchFromGitHub, fetchurl, lib, melpaBuild, request, websocket }:
|
ein = callPackage ({ cl-generic, fetchFromGitHub, fetchurl, lib, melpaBuild, request, websocket }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "ein";
|
pname = "ein";
|
||||||
version = "0.8.1";
|
version = "0.10.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "millejoh";
|
owner = "millejoh";
|
||||||
repo = "emacs-ipython-notebook";
|
repo = "emacs-ipython-notebook";
|
||||||
rev = "9fc8dd3be4a556d7abf6977c889887a38232929f";
|
rev = "0c47d8078d075c87bcc0bb2f072bef14fa57cd7e";
|
||||||
sha256 = "0w2j0bbqnba1wr12f0zk87zwnxf6xhchx224fwgwqd3kg0x5z0r3";
|
sha256 = "1dljb6pd35l5mv51fm0bjfw4g6d19fj5sc1yag7jir6nmx0k992m";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/3201516c0158c47d0226ef9c5d324d29ac7b088b/recipes/ein";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/3201516c0158c47d0226ef9c5d324d29ac7b088b/recipes/ein";
|
||||||
@ -7501,12 +7543,12 @@
|
|||||||
elpa-mirror = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
elpa-mirror = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "elpa-mirror";
|
pname = "elpa-mirror";
|
||||||
version = "1.2.2";
|
version = "2.1.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "redguardtoo";
|
owner = "redguardtoo";
|
||||||
repo = "elpa-mirror";
|
repo = "elpa-mirror";
|
||||||
rev = "940c17f757ddaf9c076503af2bb15d04f299692c";
|
rev = "9cf096448b69c795b20aab89557e9add6029b13c";
|
||||||
sha256 = "0h2xhys3cc9z61ax0ymg5fbsjg6192hwdvfhgmyq7vwibi402r1f";
|
sha256 = "05la1v1p7wyrjflh8lv3pwr7ywm2rvvzhh8phr24w31jfs2kp4gf";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/d64ce7042c45f29fb394be25ce415912182bac8b/recipes/elpa-mirror";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/d64ce7042c45f29fb394be25ce415912182bac8b/recipes/elpa-mirror";
|
||||||
@ -8303,8 +8345,8 @@
|
|||||||
version = "0.1";
|
version = "0.1";
|
||||||
src = fetchhg {
|
src = fetchhg {
|
||||||
url = "https://bitbucket.com/seanfarley/erc-hipchatify";
|
url = "https://bitbucket.com/seanfarley/erc-hipchatify";
|
||||||
rev = "b237cf8118fd";
|
rev = "dbb74dd91c5a";
|
||||||
sha256 = "11a64rvhd88val6vg9l1d5j3zdjd0bbbwcqilj0wp6rbn57xy0w8";
|
sha256 = "0m72jwgp9zqm1aphg7xm3pzj2xvavqfpdx66lny8pvfv8lph93lj";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/b60e01e7064ce486fdac3d1b39fd4a1296b0dac5/recipes/erc-hipchatify";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/b60e01e7064ce486fdac3d1b39fd4a1296b0dac5/recipes/erc-hipchatify";
|
||||||
@ -8446,12 +8488,12 @@
|
|||||||
erlang = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
erlang = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "erlang";
|
pname = "erlang";
|
||||||
version = "19.0.5";
|
version = "19.0.7";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "erlang";
|
owner = "erlang";
|
||||||
repo = "otp";
|
repo = "otp";
|
||||||
rev = "71894a879d6254693791585246ce340dd7414b82";
|
rev = "33b39b559a31c38465dfc038218f432c9c60a9ad";
|
||||||
sha256 = "0s0s94jsqqpny5z2qdbb62h45cz8lh2if65q26jlcgbyz2729j77";
|
sha256 = "1swcakbd3m8c7yzh8h1mdbxd1hyxpza1cb993ixqv4ydhz9bppn3";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/erlang";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/erlang";
|
||||||
@ -9830,12 +9872,12 @@
|
|||||||
fill-column-indicator = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
fill-column-indicator = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "fill-column-indicator";
|
pname = "fill-column-indicator";
|
||||||
version = "1.81";
|
version = "1.87";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "alpaker";
|
owner = "alpaker";
|
||||||
repo = "Fill-Column-Indicator";
|
repo = "Fill-Column-Indicator";
|
||||||
rev = "5cbc077083775d4719a294455a8a8a53bb3151f8";
|
rev = "0e755319451dd9c6c99c2a2ef82c890ba93343b6";
|
||||||
sha256 = "0fghhy5xqsdwal4fwlr6hxr5kpnfw71q79mxpp9db59ldnj9f5y9";
|
sha256 = "0gbqspqn4y7f2fwqq8210b6k5q22c0zr7b4ws8qgz9swav8g3vrq";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ea0c00a7784621fcca0391a9c8ea85e9dd43852/recipes/fill-column-indicator";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ea0c00a7784621fcca0391a9c8ea85e9dd43852/recipes/fill-column-indicator";
|
||||||
@ -11388,6 +11430,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
fsbot-data-browser = callPackage ({ dash, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "fsbot-data-browser";
|
||||||
|
version = "0.2";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "benaiah";
|
||||||
|
repo = "fsbot-data-browser";
|
||||||
|
rev = "d8d441fafe1c9a8402269841a4b2285f6625ca82";
|
||||||
|
sha256 = "0lljfn31lhp52n0dp6lpd0mx4jdrhpkivjjghk6yka1659vz0s32";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/37a0901b98e1c66be6906234e6d6520a6e940e97/recipes/fsbot-data-browser";
|
||||||
|
sha256 = "0jijvl07jk200fs01ln4dmw5nx9jg3f9b7gjaknyd18vyvbwr3s5";
|
||||||
|
name = "fsbot-data-browser";
|
||||||
|
};
|
||||||
|
packageRequires = [ dash ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/fsbot-data-browser";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
fsharp-mode = callPackage ({ company, company-quickhelp, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, pos-tip, s }:
|
fsharp-mode = callPackage ({ company, company-quickhelp, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, pos-tip, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "fsharp-mode";
|
pname = "fsharp-mode";
|
||||||
@ -12562,6 +12625,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
go-add-tags = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "go-add-tags";
|
||||||
|
version = "0.2";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "syohex";
|
||||||
|
repo = "emacs-go-add-tags";
|
||||||
|
rev = "a6a879889729d579297935598d26b985f900ef29";
|
||||||
|
sha256 = "1s4jwpwxlqxi9h5qqjcvxz3i8rgfrs874rpadp6lhizdhpjjp82y";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/55d3b893bd68d3d2d86ecdbb4ed442edd256516a/recipes/go-add-tags";
|
||||||
|
sha256 = "0nvas44rsvqzk2ay5bhzkbrnzql13vnxq9pk4lp4mvp86dda9qim";
|
||||||
|
name = "go-add-tags";
|
||||||
|
};
|
||||||
|
packageRequires = [ cl-lib emacs s ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/go-add-tags";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
go-autocomplete = callPackage ({ auto-complete, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
go-autocomplete = callPackage ({ auto-complete, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "go-autocomplete";
|
pname = "go-autocomplete";
|
||||||
@ -12775,12 +12859,12 @@
|
|||||||
google-translate = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
google-translate = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "google-translate";
|
pname = "google-translate";
|
||||||
version = "0.11.10";
|
version = "0.11.13";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "atykhonov";
|
owner = "atykhonov";
|
||||||
repo = "google-translate";
|
repo = "google-translate";
|
||||||
rev = "84d75daa644c0e73289fc428ff35acdc0943cbbb";
|
rev = "c859592c3fda01594b270e388414a79373b5587b";
|
||||||
sha256 = "0dzr1nb1s1sh8rv5wr9xfjd5xna54vp03y3h4q59vmnynsn64m9b";
|
sha256 = "1arwq4nld3capjj2b3ask1pwy89fz25f550fb7cnhiv5rhqr51iw";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/e3c275e59cbfe6e40f9cd4c470fc66544c9a6d21/recipes/google-translate";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/e3c275e59cbfe6e40f9cd4c470fc66544c9a6d21/recipes/google-translate";
|
||||||
@ -12880,12 +12964,12 @@
|
|||||||
govc = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, json-mode, lib, magit-popup, melpaBuild, s }:
|
govc = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, json-mode, lib, magit-popup, melpaBuild, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "govc";
|
pname = "govc";
|
||||||
version = "0.8.0";
|
version = "0.9.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "vmware";
|
owner = "vmware";
|
||||||
repo = "govmomi";
|
repo = "govmomi";
|
||||||
rev = "c0c7ce63df7edd78e713257b924c89d9a2dac119";
|
rev = "f9184c1d704efa615d419dd8d1dae1ade94701d1";
|
||||||
sha256 = "1yj4iimwfv3d4m24ifmncc2z09dlmxjr1dhryh4afkpgj48x4lcv";
|
sha256 = "1q86wklz73qmyif04fv5y42imly3yab5bjc8ymka8xkc5lh71mwm";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/92d6391318021c63b06fe39b0ca38f667bb45ae9/recipes/govc";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/92d6391318021c63b06fe39b0ca38f667bb45ae9/recipes/govc";
|
||||||
@ -13006,12 +13090,12 @@
|
|||||||
grandshell-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
grandshell-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "grandshell-theme";
|
pname = "grandshell-theme";
|
||||||
version = "1.0";
|
version = "1.1";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "steckerhalter";
|
owner = "steckerhalter";
|
||||||
repo = "grandshell-theme";
|
repo = "grandshell-theme";
|
||||||
rev = "6bf34fb1a3117244629a7fb23daf610f50854bed";
|
rev = "f9dbaa341fce72f9deaf69bfaa09282168ebaf9d";
|
||||||
sha256 = "1202fwwwdr74q6s5jv1n0mvmq4n9mra85l14hdhwh2kks513s6vs";
|
sha256 = "03lr4gim7yynwx0n06dd1vy6hbizxwc8hcwzz1gbvla2509njga7";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b04b0024f5a0367e2998d35ca88c2613a8e3470/recipes/grandshell-theme";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b04b0024f5a0367e2998d35ca88c2613a8e3470/recipes/grandshell-theme";
|
||||||
@ -13537,22 +13621,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
haskell-mode = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
haskell-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "haskell-mode";
|
pname = "haskell-mode";
|
||||||
version = "13.20.1";
|
version = "16.1";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "haskell";
|
owner = "haskell";
|
||||||
repo = "haskell-mode";
|
repo = "haskell-mode";
|
||||||
rev = "9eef80d1a16ac3b41b62b8d79ecbafa62e00c6c9";
|
rev = "d2ea5239bf02f3917a78a5c2dcbc5b6f6dd1b359";
|
||||||
sha256 = "1xckvi2s62hwrrrd6g446gszyqdk6bmd2hcrc6m0qfnyjkvg6jf0";
|
sha256 = "1qk36y0v9fzass6785il65c6wb5cfj4ihhwkvgnzmbafpa8p4dvq";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f18b4dcbad4192b0153a316cff6533272898f1a/recipes/haskell-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f18b4dcbad4192b0153a316cff6533272898f1a/recipes/haskell-mode";
|
||||||
sha256 = "0wijvcpfdbl17iwzy47vf8brkj2djarfr8y28rw0wqvbs381zzwp";
|
sha256 = "0wijvcpfdbl17iwzy47vf8brkj2djarfr8y28rw0wqvbs381zzwp";
|
||||||
name = "haskell-mode";
|
name = "haskell-mode";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs ];
|
packageRequires = [ emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/haskell-mode";
|
homepage = "https://melpa.org/#/haskell-mode";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@ -13767,6 +13851,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
helm-bibtex = callPackage ({ biblio, cl-lib ? null, dash, f, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, parsebib, s }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "helm-bibtex";
|
||||||
|
version = "2.0.0";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "tmalsburg";
|
||||||
|
repo = "helm-bibtex";
|
||||||
|
rev = "d6a98ac6f28d2a6a05e203115211c98333d40aca";
|
||||||
|
sha256 = "0arhy051945lxjqg77b275ny9nsv60cqj0qfpmvd8xkc07lqfn23";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/f4118a7721435240cf8489daa4dd39369208855b/recipes/helm-bibtex";
|
||||||
|
sha256 = "037pqgyyb2grg88yfxx1r8yp4lrgz2fyzz9fbbp34l8s6vk3cp4z";
|
||||||
|
name = "helm-bibtex";
|
||||||
|
};
|
||||||
|
packageRequires = [ biblio cl-lib dash f helm parsebib s ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/helm-bibtex";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
helm-bm = callPackage ({ bm, cl-lib ? null, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, s }:
|
helm-bm = callPackage ({ bm, cl-lib ? null, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "helm-bm";
|
pname = "helm-bm";
|
||||||
@ -14337,12 +14442,12 @@
|
|||||||
helm-mt = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, multi-term }:
|
helm-mt = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, multi-term }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "helm-mt";
|
pname = "helm-mt";
|
||||||
version = "0.8";
|
version = "0.9";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dfdeshom";
|
owner = "dfdeshom";
|
||||||
repo = "helm-mt";
|
repo = "helm-mt";
|
||||||
rev = "10790691f083c3806c9e85758b7ea73b5e24c5ed";
|
rev = "d2bff4100118483bc398c56d0ff095294209265b";
|
||||||
sha256 = "1k1jzzxygpmxnj07br7ah2582sdj67vqmipykz7yzrprd8r9c8fw";
|
sha256 = "1wci63y0vjvrvrylkhhrz8p9q0ml6la5cpj4rx5cwin9rkmislm6";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/e726bf0b9b3f371b21f1f0d75175e0dda62f6fb0/recipes/helm-mt";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/e726bf0b9b3f371b21f1f0d75175e0dda62f6fb0/recipes/helm-mt";
|
||||||
@ -16517,6 +16622,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
ivy-bibtex = callPackage ({ biblio, cl-lib ? null, dash, f, fetchFromGitHub, fetchurl, lib, melpaBuild, parsebib, s, swiper }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "ivy-bibtex";
|
||||||
|
version = "2.0.0";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "tmalsburg";
|
||||||
|
repo = "helm-bibtex";
|
||||||
|
rev = "d6a98ac6f28d2a6a05e203115211c98333d40aca";
|
||||||
|
sha256 = "0arhy051945lxjqg77b275ny9nsv60cqj0qfpmvd8xkc07lqfn23";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/c23c09225c57a9b9abe0a0a770a9184ae2e58f7c/recipes/ivy-bibtex";
|
||||||
|
sha256 = "0qni48s09lgzqr98r49dhrzpfqp9yfwga11h7vhqclscjvlalpc2";
|
||||||
|
name = "ivy-bibtex";
|
||||||
|
};
|
||||||
|
packageRequires = [ biblio cl-lib dash f parsebib s swiper ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/ivy-bibtex";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
ivy-gitlab = callPackage ({ dash, fetchFromGitHub, fetchurl, gitlab, ivy, lib, melpaBuild, s }:
|
ivy-gitlab = callPackage ({ dash, fetchFromGitHub, fetchurl, gitlab, ivy, lib, melpaBuild, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "ivy-gitlab";
|
pname = "ivy-gitlab";
|
||||||
@ -16686,12 +16812,12 @@
|
|||||||
jade = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, js2-mode, lib, melpaBuild, seq, websocket }:
|
jade = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, js2-mode, lib, melpaBuild, seq, websocket }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "jade";
|
pname = "jade";
|
||||||
version = "0.19";
|
version = "0.20";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "NicolasPetton";
|
owner = "NicolasPetton";
|
||||||
repo = "jade";
|
repo = "jade";
|
||||||
rev = "94f53bbd8aa8719b3d83ce038f68e74695b86ed4";
|
rev = "856846322ea8077ffe6215b54f2f3676db5ccf61";
|
||||||
sha256 = "0c40pg9f9w90fb1gwpl4z5wxhi0ng8j2fr6kf60yhbwg65x92w2k";
|
sha256 = "03ckvamv61hpk1lcw6z66wsyg471qy979vm3wf8brq9zwapfknia";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/b989c1bd83f20225314b6e903c5e1df972551c19/recipes/jade";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/b989c1bd83f20225314b6e903c5e1df972551c19/recipes/jade";
|
||||||
@ -18713,6 +18839,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
magithub = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, magit, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "magithub";
|
||||||
|
version = "0.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "vermiculus";
|
||||||
|
repo = "magithub";
|
||||||
|
rev = "c94ff69749dd14200956e0b59a3757618c594730";
|
||||||
|
sha256 = "12z9gl5lrvdfvhvk213phhgddvvr3y3hpigpzzcq0jla65db367b";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/4605012c9d43403e968609710375e34f1b010235/recipes/magithub";
|
||||||
|
sha256 = "1c3rbav13rw16ngjhjwnz80v653k8df63fkw0kayd80xrkxhrkxw";
|
||||||
|
name = "magithub";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs magit ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/magithub";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
make-color = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
make-color = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "make-color";
|
pname = "make-color";
|
||||||
@ -19052,12 +19199,12 @@
|
|||||||
material-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
material-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "material-theme";
|
pname = "material-theme";
|
||||||
version = "1.0";
|
version = "1.1";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cpaulik";
|
owner = "cpaulik";
|
||||||
repo = "emacs-material-theme";
|
repo = "emacs-material-theme";
|
||||||
rev = "b465a4f2112240df9e65f8326160d0c3e09a5a89";
|
rev = "0890ff69a0fa1f908e79d0f68b1bb3cf0d55af40";
|
||||||
sha256 = "05cjgjmawndmgw2dl71sx5msj8csn0jr72rfxnw7jx24p4c33nkk";
|
sha256 = "0fd868ph4kdzp889j18wl4j5lypd5ggf1s69hz5sg0sn761b06x0";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/d31ababaa50061e767605c979a3f327a654e564b/recipes/material-theme";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/d31ababaa50061e767605c979a3f327a654e564b/recipes/material-theme";
|
||||||
@ -19217,6 +19364,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
meghanada = callPackage ({ cl-lib ? null, company, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, yasnippet }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "meghanada";
|
||||||
|
version = "0.1.0";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "mopemope";
|
||||||
|
repo = "meghanada-emacs";
|
||||||
|
rev = "3c7ffe201735d4b6dbc1e449248194eaa40e6c07";
|
||||||
|
sha256 = "15yc312lixa2kv8fij6yp52dqgwi4pdf6w4b776flbqd14y23amd";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
|
||||||
|
sha256 = "10f1fxma3lqcyv78i0p9mjpi79jfjd5lq5q60ylpxqp18nrql1s4";
|
||||||
|
name = "meghanada";
|
||||||
|
};
|
||||||
|
packageRequires = [ cl-lib company emacs flycheck yasnippet ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/meghanada";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
melpa-upstream-visit = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
|
melpa-upstream-visit = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "melpa-upstream-visit";
|
pname = "melpa-upstream-visit";
|
||||||
@ -19532,6 +19700,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
mips-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "mips-mode";
|
||||||
|
version = "1.0.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "hlissner";
|
||||||
|
repo = "emacs-mips-mode";
|
||||||
|
rev = "dcde079176c1419ec24df08b62dd77a897892437";
|
||||||
|
sha256 = "0jvbcld3abm45qzsbcaf6f1zd71hgdg5y47v6c0ri4xgwgcwqrvc";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/024a76b83efce47271bcb0ce3bde01b88349f391/recipes/mips-mode";
|
||||||
|
sha256 = "0gg18v80lbndi2yyr5nl37mz0zpamwv9ha4clajkf0bc0vplxkj7";
|
||||||
|
name = "mips-mode";
|
||||||
|
};
|
||||||
|
packageRequires = [];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/mips-mode";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
mmm-mako = callPackage ({ fetchhg, fetchurl, lib, melpaBuild, mmm-mode }:
|
mmm-mako = callPackage ({ fetchhg, fetchurl, lib, melpaBuild, mmm-mode }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "mmm-mako";
|
pname = "mmm-mako";
|
||||||
@ -19930,22 +20119,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
mu4e-alert = callPackage ({ alert, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
|
mu4e-alert = callPackage ({ alert, emacs, fetchFromGitHub, fetchurl, ht, lib, melpaBuild, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "mu4e-alert";
|
pname = "mu4e-alert";
|
||||||
version = "0.3";
|
version = "0.4";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "iqbalansari";
|
owner = "iqbalansari";
|
||||||
repo = "mu4e-alert";
|
repo = "mu4e-alert";
|
||||||
rev = "83e6232b43902c7124fea16145de0da881bfe865";
|
rev = "75ee79ed663bde0bd52f09c5b444cbd9e13a738a";
|
||||||
sha256 = "0wrg6f7czn61f9wmrk27dzcdskznm5i1pwwjck5h768j0y9dfv6a";
|
sha256 = "09sywhf1g8yqadzp19djar2gm3fmilqi3pbdm0hvm9b7xpq1gg44";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/5a48e8cb571e91b582ff0dea18e8dc75601edc35/recipes/mu4e-alert";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/5a48e8cb571e91b582ff0dea18e8dc75601edc35/recipes/mu4e-alert";
|
||||||
sha256 = "15nwj09iyrvjsc9lrxla6qa0s8izcllxghw5gx3ffncfcrx2l8qm";
|
sha256 = "15nwj09iyrvjsc9lrxla6qa0s8izcllxghw5gx3ffncfcrx2l8qm";
|
||||||
name = "mu4e-alert";
|
name = "mu4e-alert";
|
||||||
};
|
};
|
||||||
packageRequires = [ alert emacs s ];
|
packageRequires = [ alert emacs ht s ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/mu4e-alert";
|
homepage = "https://melpa.org/#/mu4e-alert";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@ -20581,11 +20770,11 @@
|
|||||||
}) {};
|
}) {};
|
||||||
notmuch = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
|
notmuch = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
|
||||||
pname = "notmuch";
|
pname = "notmuch";
|
||||||
version = "0.22.1";
|
version = "0.22.2";
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://git.notmuchmail.org/git/notmuch";
|
url = "git://git.notmuchmail.org/git/notmuch";
|
||||||
rev = "b824ecc48f1e838ab19e346b0eec17ff02432493";
|
rev = "da5029e2ac8dfd8a839de1f6a4701237d0b34db1";
|
||||||
sha256 = "08jwa7fg2wnk5nhzd56lyvsgi6icgmzmb30mpvpvm4v2afwlhbvj";
|
sha256 = "0fryxrgz8l9397jcink5cybn4l57lzav6a4ar8p6rj5p9f7lr0d6";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/b19f21ed7485036e799ccd88edbf7896a379d759/recipes/notmuch";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/b19f21ed7485036e799ccd88edbf7896a379d759/recipes/notmuch";
|
||||||
@ -20832,12 +21021,12 @@
|
|||||||
ob-sagemath = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s, sage-shell-mode }:
|
ob-sagemath = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s, sage-shell-mode }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "ob-sagemath";
|
pname = "ob-sagemath";
|
||||||
version = "0.2.4";
|
version = "0.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stakemori";
|
owner = "stakemori";
|
||||||
repo = "ob-sagemath";
|
repo = "ob-sagemath";
|
||||||
rev = "98560075eb0a9dc5ad1e3102ac1154543692d74d";
|
rev = "02955d24bd204d330891ec57921edd56f854f721";
|
||||||
sha256 = "08p64ss3ia1gq6dsna5v3ajjwm5g9ma7yvd5y0jx91xssjqq5dja";
|
sha256 = "02bz2jgpvrhqwp6jrdb8msr272mz0g2q6857m06yg7vcxpj4xlkz";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc074af316a09906a26ad957a56e3dc272cd813b/recipes/ob-sagemath";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc074af316a09906a26ad957a56e3dc272cd813b/recipes/ob-sagemath";
|
||||||
@ -21000,12 +21189,12 @@
|
|||||||
olivetti = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
olivetti = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "olivetti";
|
pname = "olivetti";
|
||||||
version = "1.5.3";
|
version = "1.5.6";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rnkn";
|
owner = "rnkn";
|
||||||
repo = "olivetti";
|
repo = "olivetti";
|
||||||
rev = "1553934954ea47e4d2de676c42324ed4790cfd14";
|
rev = "de2716cfb1f4dc82a08093cdd00200e9bb1f07ef";
|
||||||
sha256 = "1n978yv19bsy5876lnp16xs1qg1frdbicf9c9h2rvil5myrljhyj";
|
sha256 = "0gfjrfhmjvq2zkyp0bgxymdv6r7p4x40aicvv1r61z29nz4dbyn2";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/697334ca3cdb9630572ae267811bd5c2a67d2a95/recipes/olivetti";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/697334ca3cdb9630572ae267811bd5c2a67d2a95/recipes/olivetti";
|
||||||
@ -23184,12 +23373,12 @@
|
|||||||
persp-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
persp-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "persp-mode";
|
pname = "persp-mode";
|
||||||
version = "2.7";
|
version = "2.8";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Bad-ptr";
|
owner = "Bad-ptr";
|
||||||
repo = "persp-mode.el";
|
repo = "persp-mode.el";
|
||||||
rev = "2c559083fa316b97b76e25c491a45aec5f2fe501";
|
rev = "dfa6c66a038d84d9b7f17e0bc1471f3efea7acb6";
|
||||||
sha256 = "091k1pnkw4a62di6lj7gkczzpgf2jsxpj3brpfjs8gkcgx07vxsh";
|
sha256 = "1nplmw0n8ap1sbshb7p1mrdw835f7a4ih1zxjg13wx0dls65zpa2";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/caad63d14f770f07d09b6174b7b40c5ab06a1083/recipes/persp-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/caad63d14f770f07d09b6174b7b40c5ab06a1083/recipes/persp-mode";
|
||||||
@ -24165,6 +24354,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
projectile-variable = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, projectile }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "projectile-variable";
|
||||||
|
version = "0.0.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "zonuexe";
|
||||||
|
repo = "projectile-variable";
|
||||||
|
rev = "810394eabf330325a86ec6f60c69e160eb837ac3";
|
||||||
|
sha256 = "183azck3bi4qwpprcc07kvwm3piwqgql7ryy1czvmw3kbdmk1rpj";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/ff603b43235f546cd47f72e675aee88d5f41e855/recipes/projectile-variable";
|
||||||
|
sha256 = "1cj8nwxf1jp5q5zzxp92fxla6jhwzd21gw649ar6mygi4hgymsji";
|
||||||
|
name = "projectile-variable";
|
||||||
|
};
|
||||||
|
packageRequires = [ cl-lib emacs projectile ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/projectile-variable";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
projekt = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
projekt = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "projekt";
|
pname = "projekt";
|
||||||
@ -24336,12 +24546,12 @@
|
|||||||
pug-mode = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
pug-mode = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "pug-mode";
|
pname = "pug-mode";
|
||||||
version = "1.0.3";
|
version = "1.0.4";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hlissner";
|
owner = "hlissner";
|
||||||
repo = "emacs-pug-mode";
|
repo = "emacs-pug-mode";
|
||||||
rev = "48d5977e5efcf3650a1628b5cbffffdd164cd773";
|
rev = "bff32a818ccc9e400210b942bd5e67fa21551148";
|
||||||
sha256 = "1wiiarxh0lcxvy56f1rxdbk1iwhdynl2xn6v8nr35bw1l82b1j9g";
|
sha256 = "1ad5n8v40acj17qficbzrnixbmg5wplmbd8h1z9hdxhbrkwy5323";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/b3710aac9f3df3a23238af1f969c462b3692f260/recipes/pug-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/b3710aac9f3df3a23238af1f969c462b3692f260/recipes/pug-mode";
|
||||||
@ -25008,12 +25218,12 @@
|
|||||||
rc-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
rc-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "rc-mode";
|
pname = "rc-mode";
|
||||||
version = "1.0.6";
|
version = "1.0.13";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mrhmouse";
|
owner = "mrhmouse";
|
||||||
repo = "rc-mode.el";
|
repo = "rc-mode.el";
|
||||||
rev = "b9b48e24a55083e4911f2b497ed4d9676a192e88";
|
rev = "fe2e0570bf9c19a292e16b18fd4b0a256df5d93f";
|
||||||
sha256 = "06ln916fim58q44g67zlnsipfxcramyrqbm9adh52mdbk44j4bf9";
|
sha256 = "0skjg3l3ss8nlrpnpjjflmf7wjib4jfarkmx4438nc6vm6553fmn";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/d8062b2e5b2744a6e614b389cca7e7f21b582f6f/recipes/rc-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/d8062b2e5b2744a6e614b389cca7e7f21b582f6f/recipes/rc-mode";
|
||||||
@ -25974,12 +26184,12 @@
|
|||||||
sage-shell-mode = callPackage ({ cl-lib ? null, deferred, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
sage-shell-mode = callPackage ({ cl-lib ? null, deferred, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "sage-shell-mode";
|
pname = "sage-shell-mode";
|
||||||
version = "0.1.1";
|
version = "0.2.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stakemori";
|
owner = "stakemori";
|
||||||
repo = "sage-shell-mode";
|
repo = "sage-shell-mode";
|
||||||
rev = "26303698cbd807b4cbaa241b0671f7e542a3bbe4";
|
rev = "00881a50b5c8a9994e318e107e7848c1c9f119df";
|
||||||
sha256 = "1124akipvrcmkd66slklgap2jdvb8iksldd8sjvg9n25kp0wd0vr";
|
sha256 = "0w1ba3rky07p7qsh2f59xfrhfip3k2db33pblyvs7z0fd0qwwsv0";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/ff7cefd5497aec9ed271fd783625fed445c4ac12/recipes/sage-shell-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/ff7cefd5497aec9ed271fd783625fed445c4ac12/recipes/sage-shell-mode";
|
||||||
@ -26307,6 +26517,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
sexy-monochrome-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "sexy-monochrome-theme";
|
||||||
|
version = "1.0";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "nuncostans";
|
||||||
|
repo = "sexy-monochrome-theme";
|
||||||
|
rev = "64570387a30ec5ac685cb11824ee24f8890572e1";
|
||||||
|
sha256 = "0fbm7gqg17blfpb5lybqvqw9qifsqjiprw65ih3asvrgynrxh2ra";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/9a09ffb7d271773f6cfa7c7eeaba45a717a5bdca/recipes/sexy-monochrome-theme";
|
||||||
|
sha256 = "1qmbb2aaa1lc18l9kk42iq466hy2mg7565b0gb7hdvfqsi05d8dg";
|
||||||
|
name = "sexy-monochrome-theme";
|
||||||
|
};
|
||||||
|
packageRequires = [];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/sexy-monochrome-theme";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
shackle = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
shackle = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "shackle";
|
pname = "shackle";
|
||||||
@ -27546,6 +27777,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
sphinx-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "sphinx-mode";
|
||||||
|
version = "0.1.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Fuco1";
|
||||||
|
repo = "sphinx-mode";
|
||||||
|
rev = "3d6e3059350593dc077f06f54c33869b9e28f7bc";
|
||||||
|
sha256 = "0l3a8swmf3sm54ayk2ahh1i5j1hf0hd822dfmx50kgwi4wpv48sp";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/269acf093c3aa508479bf532a4e07c9c6d568c72/recipes/sphinx-mode";
|
||||||
|
sha256 = "16p5xlj4q9fyhz70r73w48fivwzpz9mcq710qqxqaap1aajkh84b";
|
||||||
|
name = "sphinx-mode";
|
||||||
|
};
|
||||||
|
packageRequires = [];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/sphinx-mode";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
splitjoin = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
splitjoin = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "splitjoin";
|
pname = "splitjoin";
|
||||||
@ -28215,6 +28467,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
swift3-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "swift3-mode";
|
||||||
|
version = "2.1.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "taku0";
|
||||||
|
repo = "swift3-mode";
|
||||||
|
rev = "ea34d46bf9a4293e75ffdac9500d34989316d9e9";
|
||||||
|
sha256 = "1hwc3fxv87hmw0a0mgl8khfzf1p7yp2izkc02z8f1vbkaibmmawp";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/0ca9071199230d3c4c1b2e3a501736df87095fd3/recipes/swift3-mode";
|
||||||
|
sha256 = "14vm05p8ix09v73dkmf03i56yib8yk6h2r1zc9m4ym80fki4f520";
|
||||||
|
name = "swift3-mode";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/swift3-mode";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
swiper = callPackage ({ emacs, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
|
swiper = callPackage ({ emacs, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "swiper";
|
pname = "swiper";
|
||||||
@ -30950,12 +31223,12 @@
|
|||||||
ws-butler = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
ws-butler = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "ws-butler";
|
pname = "ws-butler";
|
||||||
version = "0.3";
|
version = "0.5";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lewang";
|
owner = "lewang";
|
||||||
repo = "ws-butler";
|
repo = "ws-butler";
|
||||||
rev = "106d313c0dad532c2da3cc78770a8a2f0396aa85";
|
rev = "b59e36b2451193bf96176f5a006bf506770a40f3";
|
||||||
sha256 = "1lv0l27lrp6xyl0c5yhlnyjwx872izq02z8x34da9jv3walxpk8f";
|
sha256 = "0ij88qr7gk07dchhjsn3nlk8fqgbkp4qhvn14dqxndn3zr64ix7v";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1645a51d487c8902eb6e59fb1884f85f48cec6f/recipes/ws-butler";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1645a51d487c8902eb6e59fb1884f85f48cec6f/recipes/ws-butler";
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{ callPackage }: {
|
{ callPackage }: {
|
||||||
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||||
pname = "org";
|
pname = "org";
|
||||||
version = "20160905";
|
version = "20160912";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://orgmode.org/elpa/org-20160905.tar";
|
url = "http://orgmode.org/elpa/org-20160912.tar";
|
||||||
sha256 = "01zm7s5qbh1xvxddd93i6cmz3m7x2s67zwzah5q5l3hgnvbx750q";
|
sha256 = "1xawj0pdvqrgzlixxgbfa01gzajfaz47anr5m4aw035rhc6s02r7";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
@ -14,10 +14,10 @@
|
|||||||
}) {};
|
}) {};
|
||||||
org-plus-contrib = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
org-plus-contrib = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||||
pname = "org-plus-contrib";
|
pname = "org-plus-contrib";
|
||||||
version = "20160905";
|
version = "20160912";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://orgmode.org/elpa/org-plus-contrib-20160905.tar";
|
url = "http://orgmode.org/elpa/org-plus-contrib-20160912.tar";
|
||||||
sha256 = "1wx51iqg1cfrf220yslp2lq9s7klbv6bbxq0d2ygj47yjikkf39r";
|
sha256 = "15id0gz60hqbhr183vnz4winpisa2kwrh47zqz37a5yx5b8fc84r";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
|
{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
|
||||||
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
|
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
|
||||||
, libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
|
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls
|
||||||
, alsaLib, cairo, acl, gpm, AppKit, CoreWLAN, Kerberos, GSS, ImageIO
|
, alsaLib, cairo, acl, gpm, AppKit, CoreWLAN, Kerberos, GSS, ImageIO
|
||||||
, autoconf, automake
|
|
||||||
, withX ? !stdenv.isDarwin
|
, withX ? !stdenv.isDarwin
|
||||||
|
, withGTK2 ? true, gtk2 ? null
|
||||||
, withGTK3 ? false, gtk3 ? null
|
, withGTK3 ? false, gtk3 ? null
|
||||||
, withXwidgets ? false, webkitgtk24x ? null, wrapGAppsHook ? null, glib_networking ? null
|
, withXwidgets ? false, webkitgtk24x ? null, wrapGAppsHook ? null, glib_networking ? null
|
||||||
, withGTK2 ? true, gtk2
|
, srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert (libXft != null) -> libpng != null; # probably a bug
|
assert (libXft != null) -> libpng != null; # probably a bug
|
||||||
@ -19,71 +19,68 @@ assert withXwidgets -> withGTK3 && webkitgtk24x != null;
|
|||||||
|
|
||||||
let
|
let
|
||||||
toolkit =
|
toolkit =
|
||||||
if withGTK3 then "gtk3"
|
if withGTK2 then "gtk2"
|
||||||
else if withGTK2 then "gtk2"
|
else if withGTK3 then "gtk3"
|
||||||
else "lucid";
|
else "lucid";
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "emacs-25.1-rc2";
|
name = "emacs-25.1";
|
||||||
|
|
||||||
builder = ./builder.sh;
|
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "ftp://alpha.gnu.org/gnu/emacs/pretest/${name}.tar.xz";
|
url = "mirror://gnu//emacs/${name}.tar.xz";
|
||||||
sha256 = "1hffvyvl50mrivdv6lp92sbxi3l2zhblj8npmpbzk47zpl1mzm2v";
|
sha256 = "0cwgyiyymnx4xdg99dm2drfxcyhy2jmyf0rkr9fwj9mwwf77kwhr";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = lib.optionals stdenv.isDarwin [
|
patches = lib.optional stdenv.isDarwin ./at-fdcwd.patch;
|
||||||
./at-fdcwd.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
nativeBuildInputs = [ pkgconfig ]
|
||||||
sed -i 's|/usr/share/locale|${gettext}/share/locale|g' lisp/international/mule-cmds.el
|
++ lib.optionals srcRepo [ autoconf automake texinfo ];
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo acl gpm gettext
|
[ ncurses gconf libxml2 gnutls alsaLib acl gpm gettext ]
|
||||||
autoconf automake ]
|
++ lib.optional stdenv.isLinux dbus
|
||||||
++ stdenv.lib.optional stdenv.isLinux dbus
|
++ lib.optionals withX
|
||||||
++ stdenv.lib.optionals withX
|
|
||||||
[ xlibsWrapper libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
|
[ xlibsWrapper libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
|
||||||
imagemagick gconf ]
|
imagemagick gconf ]
|
||||||
++ stdenv.lib.optional (withX && withGTK2) gtk2
|
++ lib.optional (withX && withGTK2) gtk2
|
||||||
++ stdenv.lib.optional (withX && withGTK3) gtk3
|
++ lib.optional (withX && withGTK3) gtk3
|
||||||
++ stdenv.lib.optional (stdenv.isDarwin && withX) cairo
|
++ lib.optional (stdenv.isDarwin && withX) cairo
|
||||||
++ stdenv.lib.optionals withXwidgets [webkitgtk24x wrapGAppsHook glib_networking];
|
++ lib.optionals withXwidgets [ webkitgtk24x wrapGAppsHook glib_networking ];
|
||||||
|
|
||||||
propagatedBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ AppKit GSS ImageIO ];
|
propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AppKit GSS ImageIO ];
|
||||||
|
|
||||||
hardeningDisable = [ "format" ];
|
hardeningDisable = [ "format" ];
|
||||||
|
|
||||||
configureFlags =
|
configureFlags = [ "--with-modules" ] ++
|
||||||
(if stdenv.isDarwin
|
(if stdenv.isDarwin
|
||||||
then [ "--with-ns" "--disable-ns-self-contained" ]
|
then [ "--with-ns" "--disable-ns-self-contained" ]
|
||||||
else if withX
|
else if withX
|
||||||
then [ "--with-x-toolkit=${toolkit}" "--with-xft" ]
|
then [ "--with-x-toolkit=${toolkit}" "--with-xft" ]
|
||||||
else [ "--with-x=no" "--with-xpm=no" "--with-jpeg=no" "--with-png=no"
|
else [ "--with-x=no" "--with-xpm=no" "--with-jpeg=no" "--with-png=no"
|
||||||
"--with-gif=no" "--with-tiff=no" ])
|
"--with-gif=no" "--with-tiff=no" ])
|
||||||
++ stdenv.lib.optional withXwidgets "--with-xwidgets";
|
++ lib.optional withXwidgets "--with-xwidgets";
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (stdenv.isDarwin && withX)
|
preConfigure = lib.optionalString srcRepo ''
|
||||||
"-I${cairo.dev}/include/cairo";
|
./autogen.sh
|
||||||
|
'' + ''
|
||||||
|
substituteInPlace lisp/international/mule-cmds.el \
|
||||||
|
--replace /usr/share/locale ${gettext}/share/locale
|
||||||
|
|
||||||
preBuild = ''
|
for makefile_in in $(find . -name Makefile.in -print); do
|
||||||
find . -name '*.elc' -delete
|
substituteInPlace $makefile_in --replace /bin/pwd pwd
|
||||||
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
mkdir -p $out/share/emacs/site-lisp/
|
mkdir -p $out/share/emacs/site-lisp/
|
||||||
cp ${./site-start.el} $out/share/emacs/site-lisp/site-start.el
|
cp ${./site-start.el} $out/share/emacs/site-lisp/site-start.el
|
||||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
'' + lib.optionalString stdenv.isDarwin ''
|
||||||
mkdir -p $out/Applications
|
mkdir -p $out/Applications
|
||||||
mv nextstep/Emacs.app $out/Applications
|
mv nextstep/Emacs.app $out/Applications
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "GNU Emacs 25 (pre), the extensible, customizable text editor";
|
description = "The extensible, customizable GNU text editor";
|
||||||
homepage = http://www.gnu.org/software/emacs/;
|
homepage = http://www.gnu.org/software/emacs/;
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
maintainers = with maintainers; [ chaoflow lovek323 peti the-kenny jwiegley ];
|
maintainers = with maintainers; [ chaoflow lovek323 peti the-kenny jwiegley ];
|
@ -1,13 +1,13 @@
|
|||||||
{ stdenv, fetchFromGitHub, unzip, pkgconfig, makeWrapper
|
{ stdenv, fetchFromGitHub, pkgconfig, makeWrapper, makeDesktopItem
|
||||||
, ncurses, libtermkey, lpeg, lua
|
, ncurses, libtermkey, lpeg, lua
|
||||||
, acl ? null, libselinux ? null
|
, acl ? null, libselinux ? null
|
||||||
, version ? "2016-07-15"
|
, version ? "2016-08-24"
|
||||||
, rev ? "5c2cee9461ef1199f2e80ddcda699595b11fdf08"
|
, rev ? "010dcd60ffda37027908f2a0b20c751b83ca975e"
|
||||||
, sha256 ? "1jmsv72hq0c2f2rnpllvd70cmxbjwfhynzwaxx24f882zlggwsnd"
|
, sha256 ? "0bpbyi5yq50zw0hkh326pmdcnm91paf1yz4853dcq63y0ddv89jp"
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "vis-nightly-${version}";
|
name = "vis-unstable-${version}";
|
||||||
inherit version;
|
inherit version;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
@ -17,10 +17,9 @@ stdenv.mkDerivation rec {
|
|||||||
owner = "martanne";
|
owner = "martanne";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ pkgconfig makeWrapper ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
unzip pkgconfig
|
|
||||||
ncurses
|
ncurses
|
||||||
libtermkey
|
libtermkey
|
||||||
lua
|
lua
|
||||||
@ -34,18 +33,38 @@ stdenv.mkDerivation rec {
|
|||||||
LUA_PATH="${lpeg}/share/lua/${lua.luaversion}/?.lua";
|
LUA_PATH="${lpeg}/share/lua/${lua.luaversion}/?.lua";
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
mkdir -p "$out/share/applications"
|
||||||
|
cp $desktopItem/share/applications/* $out/share/applications
|
||||||
echo wrapping $out/bin/vis with runtime environment
|
echo wrapping $out/bin/vis with runtime environment
|
||||||
wrapProgram $out/bin/vis \
|
wrapProgram $out/bin/vis \
|
||||||
--prefix LUA_CPATH : "${lpeg}/lib/lua/${lua.luaversion}/?.so" \
|
--prefix LUA_CPATH : "${lpeg}/lib/lua/${lua.luaversion}/?.so" \
|
||||||
--prefix LUA_PATH : "${lpeg}/share/lua/${lua.luaversion}/?.lua" \
|
--prefix LUA_PATH : "${lpeg}/share/lua/${lua.luaversion}/?.lua" \
|
||||||
--prefix VIS_PATH : "$out/share/vis"
|
--prefix VIS_PATH : "\$HOME/.config:$out/share/vis"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
desktopItem = makeDesktopItem rec {
|
||||||
|
name = "vis";
|
||||||
|
exec = "vis %U";
|
||||||
|
type = "Application";
|
||||||
|
icon = "accessories-text-editor";
|
||||||
|
comment = meta.description;
|
||||||
|
desktopName = "vis";
|
||||||
|
genericName = "Text editor";
|
||||||
|
categories = stdenv.lib.concatStringsSep ";" [
|
||||||
|
"Application" "Development" "IDE"
|
||||||
|
];
|
||||||
|
mimeType = stdenv.lib.concatStringsSep ";" [
|
||||||
|
"text/plain" "application/octet-stream"
|
||||||
|
];
|
||||||
|
startupNotify = "false";
|
||||||
|
terminal = "true";
|
||||||
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "A vim like editor";
|
description = "A vim like editor";
|
||||||
homepage = http://github.com/martanne/vis;
|
homepage = http://github.com/martanne/vis;
|
||||||
license = licenses.isc;
|
license = licenses.isc;
|
||||||
maintainers = [ maintainers.vrthra ];
|
maintainers = with maintainers; [ vrthra ramkromberg ];
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
120
pkgs/applications/graphics/digikam/5.1.nix
Normal file
120
pkgs/applications/graphics/digikam/5.1.nix
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
{ stdenv, fetchurl, cmake, ecm, makeQtWrapper
|
||||||
|
|
||||||
|
# For `digitaglinktree`
|
||||||
|
, perl, sqlite
|
||||||
|
|
||||||
|
, qtbase
|
||||||
|
, qtxmlpatterns
|
||||||
|
, qtsvg
|
||||||
|
, qtwebkit
|
||||||
|
|
||||||
|
, kconfigwidgets
|
||||||
|
, kcoreaddons
|
||||||
|
, kdoctools
|
||||||
|
, kfilemetadata
|
||||||
|
, knotifications
|
||||||
|
, knotifyconfig
|
||||||
|
, ktextwidgets
|
||||||
|
, kwidgetsaddons
|
||||||
|
, kxmlgui
|
||||||
|
|
||||||
|
, bison
|
||||||
|
, boost
|
||||||
|
, eigen
|
||||||
|
, exiv2
|
||||||
|
, flex
|
||||||
|
, jasper
|
||||||
|
, lcms2
|
||||||
|
, lensfun
|
||||||
|
, libgphoto2
|
||||||
|
, libkipi
|
||||||
|
, liblqr1
|
||||||
|
, libusb1
|
||||||
|
, marble
|
||||||
|
, mysql
|
||||||
|
, opencv
|
||||||
|
, threadweaver
|
||||||
|
|
||||||
|
# For panorama and focus stacking
|
||||||
|
, enblend-enfuse
|
||||||
|
, hugin
|
||||||
|
, gnumake
|
||||||
|
|
||||||
|
, oxygen
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "digikam-${version}";
|
||||||
|
version = "5.1.0";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.kde.org/stable/digikam/${name}.tar.xz";
|
||||||
|
sha256 = "1w97a5cmg39dgmjgmjwa936gcrmxjms3h2ww61qi1lny84p5x4a7";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ecm makeQtWrapper ];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
qtbase
|
||||||
|
qtxmlpatterns
|
||||||
|
qtsvg
|
||||||
|
qtwebkit
|
||||||
|
|
||||||
|
kconfigwidgets
|
||||||
|
kcoreaddons
|
||||||
|
kdoctools
|
||||||
|
kfilemetadata
|
||||||
|
knotifications
|
||||||
|
knotifyconfig
|
||||||
|
ktextwidgets
|
||||||
|
kwidgetsaddons
|
||||||
|
kxmlgui
|
||||||
|
|
||||||
|
bison
|
||||||
|
boost
|
||||||
|
eigen
|
||||||
|
exiv2
|
||||||
|
flex
|
||||||
|
jasper
|
||||||
|
lcms2
|
||||||
|
lensfun
|
||||||
|
libgphoto2
|
||||||
|
libkipi
|
||||||
|
liblqr1
|
||||||
|
libusb1
|
||||||
|
marble.unwrapped
|
||||||
|
mysql
|
||||||
|
opencv
|
||||||
|
threadweaver
|
||||||
|
|
||||||
|
oxygen
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DLIBUSB_LIBRARIES=${libusb1.out}/lib"
|
||||||
|
"-DLIBUSB_INCLUDE_DIR=${libusb1.dev}/include/libusb-1.0"
|
||||||
|
"-DENABLE_MYSQLSUPPORT=1"
|
||||||
|
"-DENABLE_INTERNALMYSQL=1"
|
||||||
|
];
|
||||||
|
|
||||||
|
fixupPhase = ''
|
||||||
|
substituteInPlace $out/bin/digitaglinktree \
|
||||||
|
--replace "/usr/bin/perl" "${perl}/bin/perl" \
|
||||||
|
--replace "/usr/bin/sqlite3" "${sqlite}/bin/sqlite3"
|
||||||
|
|
||||||
|
wrapQtProgram $out/bin/digikam \
|
||||||
|
--prefix PATH : "${gnumake}/bin:${hugin}/bin:${enblend-enfuse}/bin"
|
||||||
|
|
||||||
|
wrapQtProgram $out/bin/showfoto
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Photo Management Program";
|
||||||
|
license = stdenv.lib.licenses.gpl2;
|
||||||
|
homepage = http://www.digikam.org;
|
||||||
|
maintainers = with stdenv.lib.maintainers; [ the-kenny ];
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -1,32 +1,72 @@
|
|||||||
{ stdenv, fetchurl, makeWrapper, autoreconfHook, boost, file
|
{ stdenv, fetchurl, makeWrapper, cmake, pkgconfig
|
||||||
, glib, glibc, libgnome_keyring, gnome_keyring, gtk, gtkmm, intltool
|
, glibc, gnome_keyring, gtk, gtkmm, pcre, swig, sudo
|
||||||
, libctemplate, libglade
|
, mysql, libxml2, libctemplate, libmysqlconnectorcpp
|
||||||
, libiodbc
|
, vsqlite, tinyxml, gdal, libiodbc, libpthreadstubs
|
||||||
, libgnome, libsigcxx, libuuid, libxml2, libzip, lua, mesa, mysql
|
, libXdmcp, libuuid, libzip, libgnome_keyring, file
|
||||||
, pango, pcre, pkgconfig, sqlite, sudo
|
, pythonPackages, jre, autoconf, automake, libtool
|
||||||
, pythonPackages
|
, boost, glibmm, libsigcxx, pangomm, libX11, openssl
|
||||||
|
, proj, cairo, libglade
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (pythonPackages) pexpect pycrypto python paramiko;
|
inherit (pythonPackages) pexpect pycrypto python paramiko;
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "mysql-workbench";
|
pname = "mysql-workbench";
|
||||||
version = "5.2.47";
|
version = "6.3.7";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://mirror.cogentco.com/pub/mysql/MySQLGUITools/mysql-workbench-gpl-${version}-src.tar.gz";
|
url = "http://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-${version}-src.tar.gz";
|
||||||
sha256 = "1343fn3msdxqfpxw0kgm0mdx5r7g9ra1cpc8p2xhl7kz2pmqp4p6";
|
sha256 = "1v4k04facdn2qzflf0clf3ir5hghqlabq89ssm2s4x1nqdniz544";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ autoreconfHook boost file glib glibc libgnome_keyring gtk gtkmm intltool
|
buildInputs = [ cmake pkgconfig glibc gnome_keyring gtk gtk.dev gtkmm pcre swig python sudo
|
||||||
libctemplate libglade libgnome libiodbc libsigcxx libuuid libxml2 libzip lua makeWrapper mesa
|
paramiko mysql libxml2 libctemplate libmysqlconnectorcpp vsqlite tinyxml gdal libiodbc file
|
||||||
mysql.lib paramiko pcre pexpect pkgconfig pycrypto python sqlite ];
|
libpthreadstubs libXdmcp libuuid libzip libgnome_keyring libgnome_keyring.dev jre autoconf
|
||||||
|
automake libtool boost glibmm glibmm.dev libsigcxx pangomm libX11 pexpect pycrypto openssl
|
||||||
|
proj cairo cairo.dev makeWrapper libglade ] ;
|
||||||
|
|
||||||
|
prePatch = ''
|
||||||
|
for f in backend/wbpublic/{grt/spatial_handler.h,grtui/geom_draw_box.h,objimpl/db.query/db_query_Resultset.cpp} ;
|
||||||
|
do
|
||||||
|
sed -i 's@#include <gdal/@#include <@' $f ;
|
||||||
|
done
|
||||||
|
|
||||||
|
sed -i '32s@mysqlparser@mysqlparser sqlparser@' library/mysql.parser/CMakeLists.txt
|
||||||
|
|
||||||
|
cat <<EOF > ext/antlr-runtime/fix-configure
|
||||||
|
#!${stdenv.shell}
|
||||||
|
echo "fixing bundled antlr3c configure" ;
|
||||||
|
sed -i 's@/usr/bin/file@${file}/bin/file@' configure
|
||||||
|
sed -i '12121d' configure
|
||||||
|
EOF
|
||||||
|
chmod +x ext/antlr-runtime/fix-configure
|
||||||
|
sed -i '236s@&&@& ''${PROJECT_SOURCE_DIR}/ext/antlr-runtime/fix-configure &@' CMakeLists.txt
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in --replace "catchsegv" "${glibc.bin}/bin/catchsegv"
|
substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in --replace "catchsegv" "${glibc.bin}/bin/catchsegv"
|
||||||
|
substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in --replace "/usr/lib/x86_64-linux-gnu" "${proj}/lib"
|
||||||
|
patchShebangs $(pwd)/library/mysql.parser/grammar/build-parser
|
||||||
|
patchShebangs $(pwd)/tools/get_wb_version.sh
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
NIX_CFLAGS_COMPILE = [
|
||||||
|
"-I${libsigcxx}/lib/sigc++-2.0/include"
|
||||||
|
"-I${pangomm}/lib/pangomm-1.4/include"
|
||||||
|
"-I${glibmm}/lib/giomm-2.4/include"
|
||||||
|
];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DCMAKE_CXX_FLAGS=-std=c++11"
|
||||||
|
"-DMySQL_CONFIG_PATH=${mysql}/bin/mysql_config"
|
||||||
|
"-DCTemplate_INCLUDE_DIR=${libctemplate}/include"
|
||||||
|
"-DCAIRO_INCLUDE_DIRS=${cairo.dev}/include"
|
||||||
|
"-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk}/lib/gtk-2.0/include"
|
||||||
|
"-DGTK2_GLIBCONFIG_INCLUDE_DIR=${gtk.dev}/include"
|
||||||
|
"-DGTK2_GTKMMCONFIG_INCLUDE_DIR=${gtkmm}/lib/gtkmm-2.4/include"
|
||||||
|
"-DGTK2_GDKMMCONFIG_INCLUDE_DIR=${gtkmm}/lib/gdkmm-2.4/include"
|
||||||
|
"-DGTK2_GLIBMMCONFIG_INCLUDE_DIR=${glibmm}/lib/glibmm-2.4/include"
|
||||||
|
];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
patchShebangs $out/share/mysql-workbench/extras/build_freetds.sh
|
patchShebangs $out/share/mysql-workbench/extras/build_freetds.sh
|
||||||
|
|
||||||
@ -52,7 +92,7 @@ in stdenv.mkDerivation rec {
|
|||||||
# used because we cannot clean up after ourselves due to the exec call.
|
# used because we cannot clean up after ourselves due to the exec call.
|
||||||
|
|
||||||
# Start gnome-keyring-daemon, export the environment variables it asks us to set.
|
# Start gnome-keyring-daemon, export the environment variables it asks us to set.
|
||||||
for expr in $( gnome-keyring-daemon --components=ssh,pkcs11 --start ) ; do eval "export "$expr ; done
|
for expr in $( gnome-keyring-daemon --start ) ; do eval "export "$expr ; done
|
||||||
|
|
||||||
# Prepare fifo pipe.
|
# Prepare fifo pipe.
|
||||||
FIFOCTL="/tmp/gnome-keyring-daemon-ctl.$$.fifo"
|
FIFOCTL="/tmp/gnome-keyring-daemon-ctl.$$.fifo"
|
||||||
|
@ -157,9 +157,7 @@ in rec {
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = lib.fetchers.proxyImpureEnvVars;
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
@ -113,6 +113,14 @@ common = { pname, version, sha512 }: stdenv.mkDerivation rec {
|
|||||||
"$out/bin/firefox" --version
|
"$out/bin/firefox" --version
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
postFixup =
|
||||||
|
# Fix notifications. LibXUL uses dlopen for this, unfortunately; see #18712.
|
||||||
|
''
|
||||||
|
patchelf --set-rpath "${lib.getLib libnotify
|
||||||
|
}/lib:$(patchelf --print-rpath "$out"/lib/firefox-*/libxul.so)" \
|
||||||
|
"$out"/lib/firefox-*/libxul.so
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A web browser" + lib.optionalString (pname == "firefox-esr") " (Extended Support Release)";
|
description = "A web browser" + lib.optionalString (pname == "firefox-esr") " (Extended Support Release)";
|
||||||
homepage = http://www.mozilla.com/en-US/firefox/;
|
homepage = http://www.mozilla.com/en-US/firefox/;
|
||||||
|
@ -98,6 +98,10 @@ stdenv.mkDerivation rec {
|
|||||||
mkdir -p $(dirname $preload)
|
mkdir -p $(dirname $preload)
|
||||||
gcc -shared ${./preload.c} -o $preload -ldl -DOUT=\"$out\" -fPIC
|
gcc -shared ${./preload.c} -o $preload -ldl -DOUT=\"$out\" -fPIC
|
||||||
echo $preload > $plugins/extra-ld-preload
|
echo $preload > $plugins/extra-ld-preload
|
||||||
|
|
||||||
|
# Prevent a dependency on gcc.
|
||||||
|
strip -S $preload
|
||||||
|
patchELF $preload
|
||||||
'';
|
'';
|
||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
@ -10,9 +10,5 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
buildInputs = [ curl ];
|
buildInputs = [ curl ];
|
||||||
|
|
||||||
# We borrow these environment variables from the caller to allow
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
impureEnvVars = ["http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"];
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,28 @@
|
|||||||
|
# This file was generated by go2nix.
|
||||||
|
{ stdenv, buildGoPackage, fetchFromGitHub }:
|
||||||
|
|
||||||
|
buildGoPackage rec {
|
||||||
|
name = "machine-${version}";
|
||||||
|
version = "0.8.1";
|
||||||
|
|
||||||
|
goPackagePath = "github.com/docker/machine";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
rev = "v${version}";
|
||||||
|
owner = "docker";
|
||||||
|
repo = "machine";
|
||||||
|
sha256 = "0l4a5bqfw8i8wrl5yzkqy848r7vdx6hw8p5m3z3vzabvsmsjjwy7";
|
||||||
|
};
|
||||||
|
|
||||||
|
postFixup = ''
|
||||||
|
mv $bin/bin/cmd $bin/bin/docker-machine
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = https://docs.docker.com/machine/;
|
||||||
|
description = "Docker Machine is a tool that lets you install Docker Engine on virtual hosts, and manage Docker Engine on the hosts.";
|
||||||
|
license = licenses.asl20;
|
||||||
|
maintainers = with maintainers; [ offline tailhook ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -10,9 +10,5 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
buildInputs = [ curl ];
|
buildInputs = [ curl ];
|
||||||
|
|
||||||
# We borrow these environment variables from the caller to allow
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
impureEnvVars = ["http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"];
|
|
||||||
}
|
}
|
||||||
|
33
pkgs/applications/networking/corebird/default.nix
Normal file
33
pkgs/applications/networking/corebird/default.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenv, fetchFromGitHub, gtk3, json_glib, sqlite, libsoup, gettext, vala_0_32
|
||||||
|
, automake, autoconf, libtool, pkgconfig, gnome3, gst_all_1, wrapGAppsHook }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
version = "1.3.1";
|
||||||
|
name = "corebird-${version}";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "baedert";
|
||||||
|
repo = "corebird";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "1a7b6hinl5p7yanf75a0khki2fvd04km1xlkwnspgx75cmnbnn5z";
|
||||||
|
};
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
./autogen.sh
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [ automake autoconf libtool pkgconfig wrapGAppsHook ];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
gtk3 json_glib sqlite libsoup gettext vala_0_32 gnome3.rest
|
||||||
|
] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-libav ]);
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Native Gtk+ Twitter client for the Linux desktop";
|
||||||
|
longDescription = "Corebird is a modern, easy and fun Twitter client.";
|
||||||
|
homepage = http://corebird.baedert.org;
|
||||||
|
license = stdenv.lib.licenses.gpl3;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.jonafato ];
|
||||||
|
};
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{ stdenv, fetchurl, pythonPackages }:
|
{ stdenv, fetchurl, pythonPackages }:
|
||||||
|
|
||||||
pythonPackages.buildPythonPackage rec {
|
pythonPackages.buildPythonApplication rec {
|
||||||
name = "errbot-${version}";
|
name = "errbot-${version}";
|
||||||
version = "4.2.2";
|
version = "4.2.2";
|
||||||
|
|
||||||
@ -23,7 +23,7 @@ pythonPackages.buildPythonPackage rec {
|
|||||||
webtest bottle threadpool rocket-errbot requests2 jinja2
|
webtest bottle threadpool rocket-errbot requests2 jinja2
|
||||||
pyopenssl colorlog Yapsy markdown ansi pygments dns pep8
|
pyopenssl colorlog Yapsy markdown ansi pygments dns pep8
|
||||||
daemonize pygments-markdown-lexer telegram irc slackclient
|
daemonize pygments-markdown-lexer telegram irc slackclient
|
||||||
pyside sleekxmpp hypchat
|
pyside sleekxmpp hypchat pytest
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
@ -15,8 +15,7 @@ pythonPackages.buildPythonApplication rec {
|
|||||||
sed -i 's|@out@|'"''${out}"'|g' blink/resources.py
|
sed -i 's|@out@|'"''${out}"'|g' blink/resources.py
|
||||||
'';
|
'';
|
||||||
|
|
||||||
propagatedBuildInputs = with pythonPackages;[ pyqt4 cjson sipsimple twisted
|
propagatedBuildInputs = with pythonPackages; [ pyqt4 cjson sipsimple twisted ];
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [ pythonPackages.cython zlib libvncserver libvpx ];
|
buildInputs = [ pythonPackages.cython zlib libvncserver libvpx ];
|
||||||
|
|
||||||
|
@ -1,16 +1,17 @@
|
|||||||
{ stdenv, lib, buildGoPackage, fetchgit, fetchhg, fetchbzr, fetchsvn }:
|
{ stdenv, buildGoPackage, fetchFromGitHub }:
|
||||||
|
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
name = "xmpp-client-${version}";
|
name = "xmpp-client-${version}";
|
||||||
version = "20160110-${stdenv.lib.strings.substring 0 7 rev}";
|
version = "20160916-${stdenv.lib.strings.substring 0 7 rev}";
|
||||||
rev = "525bd26cf5f56ec5aee99464714fd1d019c119ff";
|
rev = "abbf9020393e8caae3e8996a16ce48446e31cf0e";
|
||||||
|
|
||||||
goPackagePath = "github.com/agl/xmpp-client";
|
goPackagePath = "github.com/agl/xmpp-client";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchFromGitHub {
|
||||||
|
owner = "agl";
|
||||||
|
repo = "xmpp-client";
|
||||||
inherit rev;
|
inherit rev;
|
||||||
url = "https://github.com/agl/xmpp-client";
|
sha256 = "0j9mfr208cachzm39i8b94v5qk9hws278vv2ms9ma4wn16wns81s";
|
||||||
sha256 = "0a1r08zs723ikcskmn6ylkdi3frcd0i0lkx30i9q39ilf734v253";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
goDeps = ./deps.nix;
|
goDeps = ./deps.nix;
|
||||||
|
@ -1,16 +1,14 @@
|
|||||||
{ stdenv, fetchurl, fetchpatch, ncurses, which, perl, autoreconfHook
|
{ stdenv, fetchurl, ncurses, which, perl
|
||||||
, gdbm ? null
|
, gdbm ? null
|
||||||
, openssl ? null
|
, openssl ? null
|
||||||
, cyrus_sasl ? null
|
, cyrus_sasl ? null
|
||||||
, gpgme ? null
|
, gpgme ? null
|
||||||
, aclocal ? null
|
|
||||||
, headerCache ? true
|
, headerCache ? true
|
||||||
, sslSupport ? true
|
, sslSupport ? true
|
||||||
, saslSupport ? true
|
, saslSupport ? true
|
||||||
, gpgmeSupport ? true
|
, gpgmeSupport ? true
|
||||||
, imapSupport ? true
|
, imapSupport ? true
|
||||||
, withSidebar ? false
|
, withSidebar ? true
|
||||||
, withTrash ? false
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert headerCache -> gdbm != null;
|
assert headerCache -> gdbm != null;
|
||||||
@ -22,11 +20,11 @@ with stdenv.lib;
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "mutt-${version}";
|
name = "mutt-${version}";
|
||||||
version = "1.6.2";
|
version = "1.7.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz";
|
url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz";
|
||||||
sha256 = "13hxmji7v9m2agmvzrs7gzx8s3c9jiwrv7pbkr7z1kc6ckq2xl65";
|
sha256 = "0idkamdiwj9fgqaz1vzkfg78cnmkzp74skv0ibw2xjfq6ds9hghx";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
@ -34,8 +32,7 @@ stdenv.mkDerivation rec {
|
|||||||
++ optional headerCache gdbm
|
++ optional headerCache gdbm
|
||||||
++ optional sslSupport openssl
|
++ optional sslSupport openssl
|
||||||
++ optional saslSupport cyrus_sasl
|
++ optional saslSupport cyrus_sasl
|
||||||
++ optional gpgmeSupport gpgme
|
++ optional gpgmeSupport gpgme;
|
||||||
++ optional withSidebar autoreconfHook;
|
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
(enableFeature headerCache "hcache")
|
(enableFeature headerCache "hcache")
|
||||||
@ -60,18 +57,6 @@ stdenv.mkDerivation rec {
|
|||||||
] ++ optional sslSupport "--with-ssl"
|
] ++ optional sslSupport "--with-ssl"
|
||||||
++ optional saslSupport "--with-sasl";
|
++ optional saslSupport "--with-sasl";
|
||||||
|
|
||||||
patches =
|
|
||||||
optional withTrash (fetchpatch {
|
|
||||||
name = "trash.patch";
|
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/trash.patch?h=mutt-sidebar";
|
|
||||||
sha256 = "1hrib9jk28mqd02nzv0sx01jfdabzvnwcc5qjc3810zfglzc1nql";
|
|
||||||
}) ++
|
|
||||||
optional withSidebar (fetchpatch {
|
|
||||||
name = "sidebar.patch";
|
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/sidebar.patch?h=mutt-sidebar";
|
|
||||||
sha256 = "1l63wj7kw41jrh00mcxdw4p4vrbc9wld42s99liw8kz2aclymq5m";
|
|
||||||
});
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A small but very powerful text-based mail client";
|
description = "A small but very powerful text-based mail client";
|
||||||
homepage = http://www.mutt.org;
|
homepage = http://www.mutt.org;
|
||||||
|
@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "1lydkh6by0sjy6dl57bzg7c11ccyp24s80pwxw9h5kmxkbw6mx5q";
|
sha256 = "1lydkh6by0sjy6dl57bzg7c11ccyp24s80pwxw9h5kmxkbw6mx5q";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
prePatch = ''
|
||||||
|
substituteInPlace "libfreerdp/freerdp.pc.in" --replace "Requires:" "Requires: @WINPR_PKG_CONFIG_FILENAME@"
|
||||||
|
'';
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
] ++ stdenv.lib.optional (pcsclite != null)
|
] ++ stdenv.lib.optional (pcsclite != null)
|
||||||
(substituteAll {
|
(substituteAll {
|
||||||
@ -38,7 +42,6 @@ stdenv.mkDerivation rec {
|
|||||||
++ stdenv.lib.optional buildServer "-DWITH_SERVER=ON"
|
++ stdenv.lib.optional buildServer "-DWITH_SERVER=ON"
|
||||||
++ stdenv.lib.optional optimize "-DWITH_SSE2=ON";
|
++ stdenv.lib.optional optimize "-DWITH_SSE2=ON";
|
||||||
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "A Remote Desktop Protocol Client";
|
description = "A Remote Desktop Protocol Client";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{stdenv, fetchFromGitHub, makeWrapper, gettext, python3Packages, rsync, cron, openssh, sshfsFuse, encfs }:
|
{stdenv, fetchFromGitHub, makeWrapper, gettext, python3Packages, rsync, cron, openssh, sshfs-fuse, encfs }:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (python3Packages) python dbus-python keyring;
|
inherit (python3Packages) python dbus-python keyring;
|
||||||
@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
|
|||||||
sha256 = "0n3x48wa8aa7i8fff85h3b5h3xpabk51ld0ymy3pkqh0krfgs59a";
|
sha256 = "0n3x48wa8aa7i8fff85h3b5h3xpabk51ld0ymy3pkqh0krfgs59a";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ makeWrapper gettext python dbus-python keyring openssh cron rsync sshfsFuse encfs ];
|
buildInputs = [ makeWrapper gettext python dbus-python keyring openssh cron rsync sshfs-fuse encfs ];
|
||||||
|
|
||||||
installFlags = [ "DEST=$(out)" ];
|
installFlags = [ "DEST=$(out)" ];
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ stdenv.mkDerivation {
|
|||||||
sha256 = "1b7mi1l20jhj09kyh0bq14qzz8vdhhyf35gzwsq43mn6rc7h0b4f";
|
sha256 = "1b7mi1l20jhj09kyh0bq14qzz8vdhhyf35gzwsq43mn6rc7h0b4f";
|
||||||
};
|
};
|
||||||
|
|
||||||
preInstall = ''
|
prePatch = ''
|
||||||
sed -i -e "s|/usr/local/bin|$out/bin|g" -e "s|/usr/share|$out/share|g" Makefile antiword.h
|
sed -i -e "s|/usr/local/bin|$out/bin|g" -e "s|/usr/share|$out/share|g" Makefile antiword.h
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
10
pkgs/applications/office/libreoffice/README.md
Normal file
10
pkgs/applications/office/libreoffice/README.md
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
LibreOffice
|
||||||
|
===========
|
||||||
|
|
||||||
|
To generate `libreoffice-srcs.nix`:
|
||||||
|
|
||||||
|
nix-shell default-gen-shell.nix --run generate
|
||||||
|
|
||||||
|
To generate `libreoffice-srcs-still.nix`:
|
||||||
|
|
||||||
|
nix-shell still-gen-shell.nix --run generate
|
29
pkgs/applications/office/libreoffice/default-gen-shell.nix
Normal file
29
pkgs/applications/office/libreoffice/default-gen-shell.nix
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{ pkgs ? (import <nixpkgs> {}) }:
|
||||||
|
|
||||||
|
with pkgs;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
primary-src = callPackage ./default-primary-src.nix {};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "generate-libreoffice-srcs-shell";
|
||||||
|
|
||||||
|
buildCommand = "exit 1";
|
||||||
|
|
||||||
|
downloadList = stdenv.mkDerivation {
|
||||||
|
name = "libreoffice-${primary-src.version}-download-list";
|
||||||
|
inherit (primary-src) src version;
|
||||||
|
builder = ./download-list-builder.sh;
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ python3 ];
|
||||||
|
|
||||||
|
shellHook = ''
|
||||||
|
function generate {
|
||||||
|
python3 generate-libreoffice-srcs.py > libreoffice-srcs.nix
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
}
|
17
pkgs/applications/office/libreoffice/default-primary-src.nix
Normal file
17
pkgs/applications/office/libreoffice/default-primary-src.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{ fetchurl }:
|
||||||
|
|
||||||
|
rec {
|
||||||
|
major = "5";
|
||||||
|
minor = "2";
|
||||||
|
patch = "1";
|
||||||
|
tweak = "2";
|
||||||
|
|
||||||
|
subdir = "${major}.${minor}.${patch}";
|
||||||
|
|
||||||
|
version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
|
||||||
|
sha256 = "14g2xwpid4vsgmc69rs7hz1wx96dfkq0cbm32vjgljsm7a19qfc1";
|
||||||
|
};
|
||||||
|
}
|
@ -18,15 +18,15 @@
|
|||||||
, kdeIntegration ? false
|
, kdeIntegration ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
primary-src = import ./default-primary-src.nix { inherit fetchurl; };
|
||||||
|
in
|
||||||
|
|
||||||
|
with { inherit (primary-src) major minor subdir version; };
|
||||||
|
|
||||||
let
|
let
|
||||||
lib = stdenv.lib;
|
lib = stdenv.lib;
|
||||||
langsSpaces = lib.concatStringsSep " " langs;
|
langsSpaces = lib.concatStringsSep " " langs;
|
||||||
major = "5";
|
|
||||||
minor = "2";
|
|
||||||
patch = "1";
|
|
||||||
tweak = "2";
|
|
||||||
subdir = "${major}.${minor}.${patch}";
|
|
||||||
version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
|
|
||||||
|
|
||||||
fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
|
fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
|
||||||
inherit name md5;
|
inherit name md5;
|
||||||
@ -64,10 +64,7 @@ let
|
|||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "libreoffice-${version}";
|
name = "libreoffice-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
inherit (primary-src) src;
|
||||||
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
|
|
||||||
sha256 = "14g2xwpid4vsgmc69rs7hz1wx96dfkq0cbm32vjgljsm7a19qfc1";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Openoffice will open libcups dynamically, so we link it directly
|
# Openoffice will open libcups dynamically, so we link it directly
|
||||||
# to make its dlopen work.
|
# to make its dlopen work.
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
source $stdenv/setup
|
||||||
|
|
||||||
|
tar --extract --file=$src libreoffice-$version/download.lst -O > $out
|
269
pkgs/applications/office/libreoffice/generate-libreoffice-srcs.py
Executable file
269
pkgs/applications/office/libreoffice/generate-libreoffice-srcs.py
Executable file
@ -0,0 +1,269 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
"""
|
||||||
|
Converts the LibreOffice `download.lst` file into a Nix expression.
|
||||||
|
|
||||||
|
Requires an environment variable named `downloadList` identifying the path
|
||||||
|
of the input file, and writes the result to stdout.
|
||||||
|
|
||||||
|
todo - Ideally we would move as much as possible into derivation dependencies.
|
||||||
|
"""
|
||||||
|
import collections, itertools, json, re, sys, os
|
||||||
|
|
||||||
|
def main():
|
||||||
|
|
||||||
|
print('[')
|
||||||
|
|
||||||
|
for x in get_packages():
|
||||||
|
|
||||||
|
print('{')
|
||||||
|
|
||||||
|
print(' name = "{}";'.format(x['tarball']))
|
||||||
|
print(' md5 = "{}";'.format(x['md5']))
|
||||||
|
print(' brief = {};'.format('true' if x['brief'] else 'false'))
|
||||||
|
|
||||||
|
if 'subdir' in x:
|
||||||
|
print(' subDir = "{}";'.format(x['subdir']))
|
||||||
|
|
||||||
|
print('}')
|
||||||
|
|
||||||
|
print(']')
|
||||||
|
|
||||||
|
|
||||||
|
def get_packages():
|
||||||
|
"""
|
||||||
|
All of the package data: What's parsed from download.lst,
|
||||||
|
plus our additions.
|
||||||
|
"""
|
||||||
|
return apply_additions(get_packages_from_download_list(),
|
||||||
|
get_additions())
|
||||||
|
|
||||||
|
|
||||||
|
def get_additions():
|
||||||
|
"""
|
||||||
|
A mapping from package name (the all-caps identifiers used in
|
||||||
|
`download.lst`) to a dict of additional attributes to set on the package.
|
||||||
|
"""
|
||||||
|
with open('./libreoffice-srcs-additions.json') as f:
|
||||||
|
return json.load(f)
|
||||||
|
|
||||||
|
|
||||||
|
def apply_additions(xs, additions):
|
||||||
|
for x in xs:
|
||||||
|
yield dict_merge([x,
|
||||||
|
additions.get(x['name'], {})])
|
||||||
|
|
||||||
|
|
||||||
|
def get_packages_from_download_list():
|
||||||
|
"""
|
||||||
|
The result of parsing `download.lst`: A list of dicts containing keys
|
||||||
|
'name', 'tarball', 'md5', 'brief'.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def lines():
|
||||||
|
for x in sub_symbols(parse_lines(get_lines())):
|
||||||
|
|
||||||
|
interpretation = interpret(x)
|
||||||
|
|
||||||
|
if interpretation == 'unrecognized':
|
||||||
|
print_skipped_line(x)
|
||||||
|
else:
|
||||||
|
yield dict_merge([x,
|
||||||
|
interpretation])
|
||||||
|
|
||||||
|
def cluster(xs):
|
||||||
|
"""
|
||||||
|
Groups lines according to their order within the file, to support
|
||||||
|
packages that are listed in `download.lst` more than once.
|
||||||
|
"""
|
||||||
|
keys = ['tarball', 'md5', 'brief']
|
||||||
|
a = {k: [x for x in xs if k in x['attrs']] for k in keys}
|
||||||
|
return zip(*[a[k] for k in keys])
|
||||||
|
|
||||||
|
def packages():
|
||||||
|
for (name, group) in groupby(lines(), lambda x: x['name']):
|
||||||
|
for xs in cluster(group):
|
||||||
|
yield {'name': name,
|
||||||
|
'attrs': dict_merge(x['attrs'] for x in xs),
|
||||||
|
'index': min(x['index'] for x in xs)}
|
||||||
|
|
||||||
|
for x in sorted(packages(), key=lambda x: x['index']):
|
||||||
|
yield dict_merge([{'name': x['name']},
|
||||||
|
x['attrs']])
|
||||||
|
|
||||||
|
|
||||||
|
def dict_merge(xs):
|
||||||
|
"""
|
||||||
|
>>> dict_merge([{1: 2}, {3: 4}, {3: 5}])
|
||||||
|
{1: 2, 3: 4}
|
||||||
|
"""
|
||||||
|
return dict(collections.ChainMap(*xs))
|
||||||
|
|
||||||
|
|
||||||
|
def groupby(xs, f):
|
||||||
|
"""
|
||||||
|
>>> groupby([1, 2, 3, 4], lambda x: x % 2)
|
||||||
|
[(0, [2, 4]), (1, [1, 3])]
|
||||||
|
"""
|
||||||
|
for (k, iter) in itertools.groupby(sorted(xs, key=f), f):
|
||||||
|
group = list(iter)
|
||||||
|
yield (f(group[0]), group)
|
||||||
|
|
||||||
|
|
||||||
|
def get_lines():
|
||||||
|
|
||||||
|
download_list = os.getenv('downloadList')
|
||||||
|
|
||||||
|
with open(download_list) as f:
|
||||||
|
return f.read().splitlines()
|
||||||
|
|
||||||
|
|
||||||
|
def print_skipped_line(x):
|
||||||
|
|
||||||
|
print('Skipped line {}: {}'.format(x['index'],
|
||||||
|
x['original']),
|
||||||
|
file=sys.stderr)
|
||||||
|
|
||||||
|
|
||||||
|
def parse_lines(lines):
|
||||||
|
"""
|
||||||
|
Input: List of strings (the lines from `download.lst`
|
||||||
|
Output: Iterator of dicts with keys 'key', 'value', and 'index'
|
||||||
|
"""
|
||||||
|
for (index, line) in enumerate(lines):
|
||||||
|
|
||||||
|
x = { 'index': index, 'original': line }
|
||||||
|
|
||||||
|
result = parse_line(line)
|
||||||
|
|
||||||
|
if result == 'nothing':
|
||||||
|
pass
|
||||||
|
elif result == 'unrecognized':
|
||||||
|
print_skipped_line(x)
|
||||||
|
else:
|
||||||
|
yield dict_merge([x,
|
||||||
|
result])
|
||||||
|
|
||||||
|
|
||||||
|
def parse_line(line):
|
||||||
|
"""
|
||||||
|
Input: A string
|
||||||
|
Output: One of 1. A dict with keys 'key', 'value'
|
||||||
|
2. 'nothing' (if the line contains no information)
|
||||||
|
2. 'unrecognized' (if parsing failed)
|
||||||
|
"""
|
||||||
|
|
||||||
|
if re.match('\s*(#.*)?$', line):
|
||||||
|
return 'nothing'
|
||||||
|
|
||||||
|
match = re.match('\s*export\s+([^:\s]+)\s*:=\s*(.*)$', line)
|
||||||
|
|
||||||
|
if match:
|
||||||
|
return {
|
||||||
|
'key': match.group(1),
|
||||||
|
'value': match.group(2).strip()
|
||||||
|
}
|
||||||
|
else:
|
||||||
|
return 'unrecognized'
|
||||||
|
|
||||||
|
|
||||||
|
def sub_symbols(xs):
|
||||||
|
"""
|
||||||
|
Do substitution of variables across all lines.
|
||||||
|
|
||||||
|
>>> sub_symbols([{'key': 'a', 'value': 'x'},
|
||||||
|
... {'key': 'c': 'value': '$(a)yz'}])
|
||||||
|
[{'key': 'a', 'value': 'x'}, {'key': 'c': 'value': 'xyz'}]
|
||||||
|
"""
|
||||||
|
|
||||||
|
xs = list(xs)
|
||||||
|
|
||||||
|
symbols = {x['key']: x for x in xs}
|
||||||
|
|
||||||
|
def get_value(k):
|
||||||
|
x = symbols.get(k)
|
||||||
|
return x['value'] if x is not None else None
|
||||||
|
|
||||||
|
for x in xs:
|
||||||
|
yield dict_merge([{'value': sub_str(x['value'], get_value)},
|
||||||
|
x])
|
||||||
|
|
||||||
|
|
||||||
|
def sub_str(string, func):
|
||||||
|
"""
|
||||||
|
Do substitution of variables in a single line.
|
||||||
|
|
||||||
|
>>> sub_str("x = $(x)", lambda k: {'x': 'a'}[k])
|
||||||
|
"x = a"
|
||||||
|
"""
|
||||||
|
|
||||||
|
def func2(m):
|
||||||
|
x = m.group(1)
|
||||||
|
result = func(x)
|
||||||
|
return result if result is not None else x
|
||||||
|
|
||||||
|
return re.sub(r'\$\(([^\$\(\)]+)\)', func2, string)
|
||||||
|
|
||||||
|
|
||||||
|
def interpret(x):
|
||||||
|
"""
|
||||||
|
Input: Dict with keys 'key' and 'value'
|
||||||
|
Output: One of 1. Dict with keys 'name' and 'attrs'
|
||||||
|
2. 'unrecognized' (if interpretation failed)
|
||||||
|
"""
|
||||||
|
for f in [interpret_md5, interpret_tarball_with_md5, interpret_tarball]:
|
||||||
|
result = f(x)
|
||||||
|
if result is not None:
|
||||||
|
return result
|
||||||
|
|
||||||
|
return 'unrecognized'
|
||||||
|
|
||||||
|
|
||||||
|
def interpret_md5(x):
|
||||||
|
"""
|
||||||
|
>>> interpret_md5("ODFGEN_MD5SUM", "32572ea48d9021bbd6fa317ddb697abc")
|
||||||
|
{'name': 'ODFGEN', 'attrs': {'md5': '32572ea48d9021bbd6fa317ddb697abc'}}
|
||||||
|
"""
|
||||||
|
|
||||||
|
match = re.match('^(.*)_MD5SUM$', x['key'])
|
||||||
|
|
||||||
|
if match:
|
||||||
|
return {'name': match.group(1),
|
||||||
|
'attrs': {'md5': x['value']}}
|
||||||
|
|
||||||
|
|
||||||
|
def interpret_tarball(x):
|
||||||
|
"""
|
||||||
|
>>> interpret_tarball("FREEHAND_TARBALL", "libfreehand-0.1.1.tar.bz2")
|
||||||
|
{'name': 'FREEHAND',
|
||||||
|
'attrs': {'tarball': 'libfreehand-0.1.1.tar.bz2', 'brief': True}}
|
||||||
|
"""
|
||||||
|
|
||||||
|
match = re.match('^(.*)_TARBALL$', x['key'])
|
||||||
|
|
||||||
|
if match:
|
||||||
|
return {'name': match.group(1),
|
||||||
|
'attrs': {'tarball': x['value'], 'brief': True}}
|
||||||
|
|
||||||
|
|
||||||
|
def interpret_tarball_with_md5(x):
|
||||||
|
"""
|
||||||
|
>>> interpret_tarball_with_md5("CLUCENE_TARBALL",\
|
||||||
|
"48d647fbd8ef8889e5a7f422c1bfda94-clucene-core-2.3.3.4.tar.gz")
|
||||||
|
{'name': 'CLUCENE',
|
||||||
|
'attrs': {'tarball': 'clucene-core-2.3.3.4.tar.gz',
|
||||||
|
'md5': '48d647fbd8ef8889e5a7f422c1bfda94', 'brief': False}}
|
||||||
|
"""
|
||||||
|
|
||||||
|
match = {'key': re.match('^(.*)_TARBALL$', x['key']),
|
||||||
|
'value': re.match('(?P<md5>[0-9a-fA-F]{32})-(?P<tarball>.+)$',
|
||||||
|
x['value'])}
|
||||||
|
|
||||||
|
if match['key'] and match['value']:
|
||||||
|
return {'name': match['key'].group(1),
|
||||||
|
'attrs': {'tarball': match['value'].group('tarball'),
|
||||||
|
'md5': match['value'].group('md5'),
|
||||||
|
'brief': False}}
|
||||||
|
|
||||||
|
|
||||||
|
main()
|
@ -1,81 +0,0 @@
|
|||||||
#!/run/current-system/sw/bin/bash
|
|
||||||
|
|
||||||
# Ideally we would move as much as possible into derivation dependencies
|
|
||||||
|
|
||||||
# Take the list of files from the main package, ooo.lst.in
|
|
||||||
|
|
||||||
# This script wants an argument: download list file
|
|
||||||
|
|
||||||
cat <<EOF
|
|
||||||
[
|
|
||||||
EOF
|
|
||||||
|
|
||||||
write_entry(){
|
|
||||||
echo '{'
|
|
||||||
echo " name = \"${name}\";"
|
|
||||||
echo " md5 = \"${md5}\";"
|
|
||||||
echo " brief = ${brief};"
|
|
||||||
eval "echo -n \"\$additions_${name%%[-_.]*}\""
|
|
||||||
eval "test -n \"\$additions_${name%%[-_.]*}\" && echo"
|
|
||||||
echo '}'
|
|
||||||
saved_line=
|
|
||||||
}
|
|
||||||
|
|
||||||
saved_line=
|
|
||||||
cat "$(dirname "$0")/libreoffice-srcs-additions.sh" "$@" |
|
|
||||||
while read line; do
|
|
||||||
case "$line" in
|
|
||||||
EVAL\ *)
|
|
||||||
echo "${line#* }" >&2;
|
|
||||||
eval "${line#* }";
|
|
||||||
saved_line=
|
|
||||||
;;
|
|
||||||
\#*)
|
|
||||||
echo Skipping comment: "$line" >&2;
|
|
||||||
;;
|
|
||||||
*_MD5SUM\ :=*)
|
|
||||||
if test -n "$saved_line"; then
|
|
||||||
tbline="$saved_line"
|
|
||||||
else
|
|
||||||
read tbline;
|
|
||||||
fi;
|
|
||||||
line=${line##* };
|
|
||||||
line=${line##*:=};
|
|
||||||
if [ "${tbline#*VERSION_MICRO}" != "$tbline" ]; then
|
|
||||||
verline=${tbline##* };
|
|
||||||
read tbline;
|
|
||||||
tbline=${tbline##* };
|
|
||||||
tbline=${tbline##*:=};
|
|
||||||
md5=$line
|
|
||||||
name=$tbline;
|
|
||||||
name="${name/\$([A-Z]*_VERSION_MICRO)/$verline}"
|
|
||||||
else
|
|
||||||
tbline=${tbline##* };
|
|
||||||
tbline=${tbline##*:=};
|
|
||||||
md5=$line
|
|
||||||
name=$tbline;
|
|
||||||
fi
|
|
||||||
brief=true;
|
|
||||||
write_entry;
|
|
||||||
;;
|
|
||||||
*_TARBALL\ :=*)
|
|
||||||
line=${line##* };
|
|
||||||
line=${line##*:=};
|
|
||||||
line="${line#,}"
|
|
||||||
md5=${line:0:32};
|
|
||||||
name=${line:33};
|
|
||||||
name="${name%)}"
|
|
||||||
brief=false;
|
|
||||||
if test -n "$name"; then
|
|
||||||
write_entry;
|
|
||||||
else
|
|
||||||
saved_line="$line";
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo Skipping: "$line" >&2;
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
echo ']'
|
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"LIBGLTF": {"subdir": "libgltf/"}
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
EVAL additions_libgltf=' subDir = "libgltf/";'
|
|
29
pkgs/applications/office/libreoffice/still-gen-shell.nix
Normal file
29
pkgs/applications/office/libreoffice/still-gen-shell.nix
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{ pkgs ? (import <nixpkgs> {}) }:
|
||||||
|
|
||||||
|
with pkgs;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
primary-src = callPackage ./still-primary-src.nix {};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "generate-libreoffice-srcs-shell";
|
||||||
|
|
||||||
|
buildCommand = "exit 1";
|
||||||
|
|
||||||
|
downloadList = stdenv.mkDerivation {
|
||||||
|
name = "libreoffice-${primary-src.version}-download-list";
|
||||||
|
inherit (primary-src) src version;
|
||||||
|
builder = ./download-list-builder.sh;
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ python3 ];
|
||||||
|
|
||||||
|
shellHook = ''
|
||||||
|
function generate {
|
||||||
|
python3 generate-libreoffice-srcs.py > libreoffice-srcs-still.nix
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
}
|
17
pkgs/applications/office/libreoffice/still-primary-src.nix
Normal file
17
pkgs/applications/office/libreoffice/still-primary-src.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{ fetchurl }:
|
||||||
|
|
||||||
|
rec {
|
||||||
|
major = "5";
|
||||||
|
minor = "1";
|
||||||
|
patch = "5";
|
||||||
|
tweak = "2";
|
||||||
|
|
||||||
|
subdir = "${major}.${minor}.${patch}";
|
||||||
|
|
||||||
|
version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
|
||||||
|
sha256 = "1qg0dj0zwh5ifhmvv4k771nmyqddz4ifn75s9mr1p0nyix8zks8x";
|
||||||
|
};
|
||||||
|
}
|
@ -18,15 +18,15 @@
|
|||||||
, kdeIntegration ? false
|
, kdeIntegration ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
primary-src = import ./still-primary-src.nix { inherit fetchurl; };
|
||||||
|
in
|
||||||
|
|
||||||
|
with { inherit (primary-src) major minor subdir version; };
|
||||||
|
|
||||||
let
|
let
|
||||||
lib = stdenv.lib;
|
lib = stdenv.lib;
|
||||||
langsSpaces = lib.concatStringsSep " " langs;
|
langsSpaces = lib.concatStringsSep " " langs;
|
||||||
major = "5";
|
|
||||||
minor = "1";
|
|
||||||
patch = "5";
|
|
||||||
tweak = "2";
|
|
||||||
subdir = "${major}.${minor}.${patch}";
|
|
||||||
version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
|
|
||||||
|
|
||||||
fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
|
fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
|
||||||
inherit name md5;
|
inherit name md5;
|
||||||
@ -64,10 +64,7 @@ let
|
|||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "libreoffice-${version}";
|
name = "libreoffice-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
inherit (primary-src) src;
|
||||||
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
|
|
||||||
sha256 = "1qg0dj0zwh5ifhmvv4k771nmyqddz4ifn75s9mr1p0nyix8zks8x";
|
|
||||||
};
|
|
||||||
|
|
||||||
# we only have this problem on i686 ATM
|
# we only have this problem on i686 ATM
|
||||||
patches = if stdenv.is64bit then null else [
|
patches = if stdenv.is64bit then null else [
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, makeWrapper, glibc, readline, ncurses, groff, utillinux }:
|
{ stdenv, fetchurl, makeWrapper, glibc, readline, ncurses, utillinux }:
|
||||||
|
|
||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
let
|
let
|
||||||
@ -7,7 +7,6 @@ let
|
|||||||
BINDIR=$out/bin LIBDIR=$out/lib CALC_INCDIR=$out/include/calc CALC_SHAREDIR=$out/share/calc MANDIR=$out/share/man/man1 \
|
BINDIR=$out/bin LIBDIR=$out/lib CALC_INCDIR=$out/include/calc CALC_SHAREDIR=$out/share/calc MANDIR=$out/share/man/man1 \
|
||||||
USE_READLINE=-DUSE_READLINE READLINE_LIB=-lreadline READLINE_EXTRAS='-lhistory -lncurses' \
|
USE_READLINE=-DUSE_READLINE READLINE_LIB=-lreadline READLINE_EXTRAS='-lhistory -lncurses' \
|
||||||
TERMCONTROL=-DUSE_TERMIOS \
|
TERMCONTROL=-DUSE_TERMIOS \
|
||||||
NROFF=groff
|
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@ -20,7 +19,7 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "14mnz6smhi3a0rgmwvddk9w3vdisi8khq67i8nqsl47vgs8n1kqg";
|
sha256 = "14mnz6smhi3a0rgmwvddk9w3vdisi8khq67i8nqsl47vgs8n1kqg";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ makeWrapper readline ncurses groff utillinux ];
|
buildInputs = [ makeWrapper readline ncurses utillinux ];
|
||||||
|
|
||||||
configurePhase = ''
|
configurePhase = ''
|
||||||
sed -i 's/all: check_include/all:/' Makefile
|
sed -i 's/all: check_include/all:/' Makefile
|
||||||
|
@ -63,6 +63,8 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
setupHook = ./setup-hook.sh;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://root.cern.ch/";
|
homepage = "https://root.cern.ch/";
|
||||||
description = "A data analysis framework";
|
description = "A data analysis framework";
|
||||||
|
9
pkgs/applications/science/misc/root/setup-hook.sh
Normal file
9
pkgs/applications/science/misc/root/setup-hook.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
thisroot () {
|
||||||
|
# Workaround thisroot.sh dependency on man
|
||||||
|
if [ -z "${MANPATH}" ]; then
|
||||||
|
MANPATH=:
|
||||||
|
fi
|
||||||
|
source @out@/bin/thisroot.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
envHooks+=(thisroot)
|
@ -1,16 +1,16 @@
|
|||||||
{ fetchurl, stdenv, libxml2, freetype, mesa, glew, qt4
|
{ fetchurl, stdenv, libxml2, freetype, mesa, glew, qt4
|
||||||
, cmake, makeWrapper, libjpeg }:
|
, cmake, makeWrapper, libjpeg, python }:
|
||||||
|
|
||||||
let version = "4.1.0"; in
|
let version = "4.9.0"; in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "tulip-${version}";
|
name = "tulip-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/auber/${name}_src.tar.gz";
|
url = "mirror://sourceforge/auber/${name}_src.tar.gz";
|
||||||
sha256 = "1js1f8xdm9g2m66xbhfxa8ixzw6h4gjynxsm83p54l3i0hs3biig";
|
sha256 = "0phc7972brvm0v6lfk4ghq9b2b4jsj6c15xlbgnvhhcxhc99wba3";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libxml2 freetype glew mesa qt4 libjpeg ];
|
buildInputs = [ libxml2 freetype glew mesa qt4 libjpeg python ];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake makeWrapper ];
|
nativeBuildInputs = [ cmake makeWrapper ];
|
||||||
|
|
||||||
|
@ -10,13 +10,13 @@ with stdenv.lib;
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "mkvtoolnix-${version}";
|
name = "mkvtoolnix-${version}";
|
||||||
version = "9.4.0";
|
version = "9.4.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mbunkus";
|
owner = "mbunkus";
|
||||||
repo = "mkvtoolnix";
|
repo = "mkvtoolnix";
|
||||||
rev = "release-${version}";
|
rev = "release-${version}";
|
||||||
sha256 = "0bmr0cnxp56flak6fjcn0ld5238h3ngrvy09yqp4790g8xwif35v";
|
sha256 = "1dyhlpik8d9z78dg47cha313r0dm9fcjg6hzkmzd2ng9yrq5pmdy";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig autoconf automake gettext ruby ];
|
nativeBuildInputs = [ pkgconfig autoconf automake gettext ruby ];
|
||||||
|
@ -26,13 +26,7 @@ let layer = stdenv.mkDerivation {
|
|||||||
outputHash = sha256;
|
outputHash = sha256;
|
||||||
outputHashMode = "recursive";
|
outputHashMode = "recursive";
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [
|
||||||
# We borrow these environment variables from the caller to allow
|
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
|
|
||||||
# This variable allows the user to pass additional options to curl
|
# This variable allows the user to pass additional options to curl
|
||||||
"NIX_CURL_FLAGS"
|
"NIX_CURL_FLAGS"
|
||||||
];
|
];
|
||||||
|
@ -1,15 +1,5 @@
|
|||||||
{ stdenv, curl, adc_user, adc_pass }:
|
{ stdenv, curl, adc_user, adc_pass }:
|
||||||
|
|
||||||
let
|
|
||||||
impureEnvVars = [
|
|
||||||
# We borrow these environment variables from the caller to allow
|
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
];
|
|
||||||
in
|
|
||||||
|
|
||||||
{ # Path to fetch.
|
{ # Path to fetch.
|
||||||
path
|
path
|
||||||
|
|
||||||
|
@ -17,12 +17,6 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
eggName = name;
|
eggName = name;
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
# We borrow these environment variables from the caller to allow
|
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,12 +56,8 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars ++ [
|
||||||
# We borrow these environment variables from the caller to allow
|
"GIT_PROXY_COMMAND" "SOCKS_SERVER"
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy" "GIT_PROXY_COMMAND" "SOCKS_SERVER"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
preferLocalBuild = true;
|
preferLocalBuild = true;
|
||||||
|
@ -6,9 +6,7 @@ stdenv.mkDerivation {
|
|||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
buildInputs = [mercurial];
|
buildInputs = [mercurial];
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Nix <= 0.7 compatibility.
|
# Nix <= 0.7 compatibility.
|
||||||
id = md5;
|
id = md5;
|
||||||
|
@ -19,12 +19,7 @@ stdenv.mkDerivation {
|
|||||||
dbs = defaultDBMirrors ++ dbs;
|
dbs = defaultDBMirrors ++ dbs;
|
||||||
inherit branch cacheDB name selector;
|
inherit branch cacheDB name selector;
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
# We borrow these environment variables from the caller to allow
|
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -33,13 +33,6 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
inherit url rev sshSupport openssh ignoreExternals;
|
inherit url rev sshSupport openssh ignoreExternals;
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
# We borrow these environment variables from the caller to allow
|
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
];
|
|
||||||
|
|
||||||
preferLocalBuild = true;
|
preferLocalBuild = true;
|
||||||
}
|
}
|
||||||
|
@ -20,13 +20,7 @@ let
|
|||||||
# "gnu", etc.).
|
# "gnu", etc.).
|
||||||
sites = builtins.attrNames mirrors;
|
sites = builtins.attrNames mirrors;
|
||||||
|
|
||||||
impureEnvVars = [
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars ++ [
|
||||||
# We borrow these environment variables from the caller to allow
|
|
||||||
# easy proxy configuration. This is impure, but a fixed-output
|
|
||||||
# derivation like fetchurl is allowed to do so since its result is
|
|
||||||
# by definition pure.
|
|
||||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
|
||||||
|
|
||||||
# This variable allows the user to pass additional options to curl
|
# This variable allows the user to pass additional options to curl
|
||||||
"NIX_CURL_FLAGS"
|
"NIX_CURL_FLAGS"
|
||||||
|
|
||||||
|
@ -20,6 +20,6 @@ stdenv.mkDerivation {
|
|||||||
outputHashMode = "recursive";
|
outputHashMode = "recursive";
|
||||||
outputHash = sha256;
|
outputHash = sha256;
|
||||||
|
|
||||||
impureEnvVars = [ "http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy" ];
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
||||||
preferLocalBuild = true;
|
preferLocalBuild = true;
|
||||||
}
|
}
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "fira-code-${version}";
|
name = "fira-code-${version}";
|
||||||
version = "1.201";
|
version = "1.203";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/tonsky/FiraCode/releases/download/${version}/FiraCode_${version}.zip";
|
url = "https://github.com/tonsky/FiraCode/releases/download/${version}/FiraCode_${version}.zip";
|
||||||
sha256 = "11hwpdqj41wvzc8l8zgfb132cxn8kxpxbgiqc2kinc25x2l1ikji";
|
sha256 = "0pjziaklmkpl67ybp45q9ndya5adf9x8svhdv9643dq9jsrxbkj1";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "otf";
|
sourceRoot = "otf";
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "efl-${version}";
|
name = "efl-${version}";
|
||||||
version = "1.18.0";
|
version = "1.18.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.enlightenment.org/rel/libs/efl/${name}.tar.xz";
|
url = "http://download.enlightenment.org/rel/libs/efl/${name}.tar.xz";
|
||||||
sha256 = "17mzbjmz8d2vs8p63r1sk3mppl3l2fhxy2jv24dp75lgqbsvp806";
|
sha256 = "08njx6wd505as1vn0yp4mnmf6mb2v28jsipxxx4zhf78v18d2sqc";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
{ callPackage, runCommand, stdenv, fetchurl, qt4, cmake-2_8, automoc4, perl, pkgconfig
|
{ callPackage, runCommand, stdenv, fetchurl, qt4, cmake_2_8, automoc4, perl, pkgconfig
|
||||||
, release, branch, ignoreList, extraSubpkgs
|
, release, branch, ignoreList, extraSubpkgs
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv.lib) filter fold;
|
inherit (stdenv.lib) filter fold;
|
||||||
inherit (builtins) getAttr hasAttr remoteAttrs listToAttrs tail head;
|
inherit (builtins) getAttr hasAttr remoteAttrs listToAttrs tail head;
|
||||||
cmake = cmake-2_8;
|
cmake = cmake_2_8;
|
||||||
in
|
in
|
||||||
rec {
|
rec {
|
||||||
manifest = import (./. + "/${release}.nix");
|
manifest = import (./. + "/${release}.nix");
|
||||||
|
@ -57,6 +57,7 @@ let
|
|||||||
libkexiv2 = callPackage ./libkexiv2.nix {};
|
libkexiv2 = callPackage ./libkexiv2.nix {};
|
||||||
libkipi = callPackage ./libkipi.nix {};
|
libkipi = callPackage ./libkipi.nix {};
|
||||||
libkomparediff2 = callPackage ./libkomparediff2.nix {};
|
libkomparediff2 = callPackage ./libkomparediff2.nix {};
|
||||||
|
marble = callPackage ./marble.nix {};
|
||||||
okular = callPackage ./okular.nix {};
|
okular = callPackage ./okular.nix {};
|
||||||
print-manager = callPackage ./print-manager.nix {};
|
print-manager = callPackage ./print-manager.nix {};
|
||||||
spectacle = callPackage ./spectacle.nix {};
|
spectacle = callPackage ./spectacle.nix {};
|
||||||
|
@ -1 +1 @@
|
|||||||
WGET_ARGS=( http://download.kde.org/stable/applications/16.08.0/ -A '*.tar.xz' )
|
WGET_ARGS=( http://download.kde.org/stable/applications/16.08.1/ -A '*.tar.xz' )
|
||||||
|
24
pkgs/desktops/kde-5/applications/marble.nix
Normal file
24
pkgs/desktops/kde-5/applications/marble.nix
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
{ kdeApp, lib, kdeWrapper
|
||||||
|
, ecm, qtscript, qtsvg, qtquickcontrols
|
||||||
|
, gpsd
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
unwrapped =
|
||||||
|
kdeApp {
|
||||||
|
name = "marble";
|
||||||
|
meta.license = with lib.licenses; [ lgpl21 gpl3 ];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ ecm ];
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
qtscript qtsvg qtquickcontrols
|
||||||
|
gpsd
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
kdeWrapper unwrapped {
|
||||||
|
targets = [ "bin/marble-qt" ];
|
||||||
|
paths = [ unwrapped ];
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
@ -1,17 +1,22 @@
|
|||||||
{ stdenv, fetchurl, intltool, pkgconfig, libX11, gtk2 }:
|
{ stdenv, fetchurl, intltool, pkgconfig, libX11, gtk2 }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "lxappearance-0.6.1";
|
name = "lxappearance-0.6.2";
|
||||||
|
|
||||||
src = fetchurl{
|
src = fetchurl{
|
||||||
url = "mirror://sourceforge/project/lxde/LXAppearance/${name}.tar.xz";
|
url = "mirror://sourceforge/project/lxde/LXAppearance/${name}.tar.xz";
|
||||||
sha256 = "1phnv1b2jdj2vlibjyc9z01izcf3k5zxj8glsaf0i3vh77zqmqq9";
|
sha256 = "07r0xbi6504zjnbpan7zrn7gi4j0kbsqqfpj8v2x94gr05p16qj4";
|
||||||
};
|
};
|
||||||
buildInputs = [ intltool libX11 pkgconfig gtk2 ];
|
|
||||||
|
nativeBuildInputs = [ pkgconfig intltool ];
|
||||||
|
|
||||||
|
buildInputs = [ libX11 gtk2 ];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A lightweight program for configuring the theme and fonts of gtk applications";
|
description = "A lightweight program for configuring the theme and fonts of gtk applications";
|
||||||
maintainers = [ stdenv.lib.maintainers.hinton ];
|
maintainers = [ stdenv.lib.maintainers.hinton ];
|
||||||
platforms = stdenv.lib.platforms.all;
|
platforms = stdenv.lib.platforms.all;
|
||||||
license = stdenv.lib.licenses.gpl2;
|
license = stdenv.lib.licenses.gpl2;
|
||||||
homepage = "http://lxappearance.sourceforce.net/";
|
homepage = "http://lxde.org/";
|
||||||
};
|
};
|
||||||
}
|
}
|
@ -3,21 +3,25 @@
|
|||||||
let
|
let
|
||||||
p_name = "xfce4-settings";
|
p_name = "xfce4-settings";
|
||||||
ver_maj = "4.12";
|
ver_maj = "4.12";
|
||||||
ver_min = "0";
|
ver_min = "1";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "${p_name}-${ver_maj}.${ver_min}";
|
name = "${p_name}-${ver_maj}.${ver_min}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2";
|
url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2";
|
||||||
sha256 = "108za1cmjslwzkdl76x9kwxkq8z734kg9nz8rxk057f10pqwxgh4";
|
sha256 = "0x35i1cvkqp0hib1knwa58mckdwrfbhaisz4bsx6bbbx385llj7n";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./xfce4-settings-default-icon-theme.patch ];
|
patches = [ ./xfce4-settings-default-icon-theme.patch ];
|
||||||
|
|
||||||
|
nativeBuildInputs =
|
||||||
|
[ pkgconfig intltool
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ pkgconfig intltool exo gtk libxfce4util libxfce4ui libglade upower
|
[ exo gtk libxfce4util libxfce4ui libglade upower xfconf
|
||||||
xfconf xorg.libXi xorg.libXcursor libwnck libnotify libxklavier garcon
|
xorg.libXi xorg.libXcursor libwnck libnotify libxklavier garcon
|
||||||
]; #TODO: optional packages
|
]; #TODO: optional packages
|
||||||
|
|
||||||
configureFlags = [ "--enable-pluggable-dialogs" "--enable-sound-settings" ];
|
configureFlags = [ "--enable-pluggable-dialogs" "--enable-sound-settings" ];
|
||||||
|
@ -85,8 +85,10 @@ xfce_self = rec { # the lines are very long but it seems better than the even-od
|
|||||||
xfce4_eyes_plugin = callPackage ./panel-plugins/xfce4-eyes-plugin.nix { };
|
xfce4_eyes_plugin = callPackage ./panel-plugins/xfce4-eyes-plugin.nix { };
|
||||||
xfce4_fsguard_plugin = callPackage ./panel-plugins/xfce4-fsguard-plugin.nix { };
|
xfce4_fsguard_plugin = callPackage ./panel-plugins/xfce4-fsguard-plugin.nix { };
|
||||||
xfce4_genmon_plugin = callPackage ./panel-plugins/xfce4-genmon-plugin.nix { };
|
xfce4_genmon_plugin = callPackage ./panel-plugins/xfce4-genmon-plugin.nix { };
|
||||||
|
xfce4-hardware-monitor-plugin = callPackage ./panel-plugins/xfce4-hardware-monitor-plugin.nix { };
|
||||||
xfce4_netload_plugin = callPackage ./panel-plugins/xfce4-netload-plugin.nix { };
|
xfce4_netload_plugin = callPackage ./panel-plugins/xfce4-netload-plugin.nix { };
|
||||||
xfce4_notes_plugin = callPackage ./panel-plugins/xfce4-notes-plugin.nix { };
|
xfce4_notes_plugin = callPackage ./panel-plugins/xfce4-notes-plugin.nix { };
|
||||||
|
xfce4-sensors-plugin = callPackage ./panel-plugins/xfce4-sensors-plugin.nix { };
|
||||||
xfce4_systemload_plugin = callPackage ./panel-plugins/xfce4-systemload-plugin.nix { };
|
xfce4_systemload_plugin = callPackage ./panel-plugins/xfce4-systemload-plugin.nix { };
|
||||||
xfce4_verve_plugin = callPackage ./panel-plugins/xfce4-verve-plugin.nix { };
|
xfce4_verve_plugin = callPackage ./panel-plugins/xfce4-verve-plugin.nix { };
|
||||||
xfce4_xkb_plugin = callPackage ./panel-plugins/xfce4-xkb-plugin.nix { };
|
xfce4_xkb_plugin = callPackage ./panel-plugins/xfce4-xkb-plugin.nix { };
|
||||||
|
@ -0,0 +1,41 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig, intltool, autoreconfHook, gnome2,
|
||||||
|
libgtop, libxfce4ui, libxfce4util, xfce4panel, lm_sensors
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "xfce4-hardware-monitor-plugin";
|
||||||
|
version = "1.5.0";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://git.xfce.org/panel-plugins/${pname}/snapshot/${name}.tar.bz2";
|
||||||
|
sha256 = "0sqvisr8gagpywq9sfyzqw37hxmj54ii89j5s2g8hx8bng5a98z1";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
autoreconfHook
|
||||||
|
pkgconfig
|
||||||
|
intltool
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
gnome2.gtkmm2
|
||||||
|
gnome2.libgnomecanvas
|
||||||
|
gnome2.libgnomecanvasmm
|
||||||
|
libgtop
|
||||||
|
libxfce4ui
|
||||||
|
libxfce4util
|
||||||
|
xfce4panel
|
||||||
|
lm_sensors
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "http://goodies.xfce.org/projects/panel-plugins/${pname}";
|
||||||
|
description = "Hardware monitor plugin for the XFCE4 panel";
|
||||||
|
license = stdenv.lib.licenses.gpl3;
|
||||||
|
platforms = stdenv.lib.platforms.unix;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.romildo ];
|
||||||
|
};
|
||||||
|
}
|
46
pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix
Normal file
46
pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig, intltool, gnome2, libxfce4ui,
|
||||||
|
libxfce4util, xfce4panel, libnotify, lm_sensors, hddtemp, netcat
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "${pname}-${ver_maj}.${ver_min}";
|
||||||
|
pname = "xfce4-sensors-plugin";
|
||||||
|
ver_maj = "1.2";
|
||||||
|
ver_min = "6";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://xfce/src/panel-plugins/${pname}/${ver_maj}/${name}.tar.bz2";
|
||||||
|
sha256 = "1h0vpqxcziml3gwrbvd8xvy1mwh9mf2a68dvxsy03rs5pm1ghpi3";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkgconfig
|
||||||
|
intltool
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
gnome2.gtk
|
||||||
|
libxfce4ui
|
||||||
|
libxfce4util
|
||||||
|
xfce4panel
|
||||||
|
libnotify
|
||||||
|
lm_sensors
|
||||||
|
hddtemp
|
||||||
|
netcat
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
configureFlags = [
|
||||||
|
"--with-pathhddtemp=${hddtemp}/bin/hddtemp"
|
||||||
|
"--with-pathnetcat=${netcat}/bin/netcat"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "http://goodies.xfce.org/projects/panel-plugins/${pname}";
|
||||||
|
description = "A panel plug-in for different sensors using acpi, lm_sensors and hddtemp";
|
||||||
|
license = stdenv.lib.licenses.gpl2;
|
||||||
|
platforms = stdenv.lib.platforms.unix;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.romildo ];
|
||||||
|
};
|
||||||
|
}
|
@ -68,6 +68,14 @@ let
|
|||||||
|
|
||||||
# Change the #error on GCC > 4.9 to a #warning.
|
# Change the #error on GCC > 4.9 to a #warning.
|
||||||
sed -i $out/include/host_config.h -e 's/#error\(.*unsupported GNU version\)/#warning\1/'
|
sed -i $out/include/host_config.h -e 's/#error\(.*unsupported GNU version\)/#warning\1/'
|
||||||
|
|
||||||
|
# Ensure that cmake can find CUDA.
|
||||||
|
mkdir -p $out/nix-support
|
||||||
|
echo "cmakeFlags+=' -DCUDA_TOOLKIT_ROOT_DIR=$out'" >> $out/nix-support/setup-hook
|
||||||
|
|
||||||
|
'' + lib.optionalString (lib.versionOlder version "8.0") ''
|
||||||
|
# Hack to fix building against recent Glibc/GCC.
|
||||||
|
echo "NIX_CFLAGS_COMPILE+=' -D_FORCE_INLINES'" >> $out/nix-support/setup-hook
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "dtc-${version}";
|
name = "dtc-${version}";
|
||||||
version = "1.4.1";
|
version = "1.4.2";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://git.kernel.org/pub/scm/utils/dtc/dtc.git";
|
url = "git://git.kernel.org/pub/scm/utils/dtc/dtc.git";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
sha256 = "0wcn9x2vynwlfxk5c6jrf8lz7qvm1sbb9gh27drk1mx8msdh5hd5";
|
sha256 = "0pwhbw930pnksrmkimqqwp4nqj9mmh06bs5b8p5l2cnhnh8lxn3j";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ flex bison ];
|
nativeBuildInputs = [ flex bison ];
|
||||||
|
@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
arpack fftw fftwSinglePrec gmp libgit2 libunwind llvmShared mpfr
|
arpack fftw fftwSinglePrec gmp libgit2 libunwind llvmShared mpfr
|
||||||
pcre2 openblas openlibm openspecfun readline suitesparse utf8proc
|
pcre2.dev openblas openlibm openspecfun readline suitesparse utf8proc
|
||||||
zlib
|
zlib
|
||||||
] ++
|
] ++
|
||||||
stdenv.lib.optionals stdenv.isDarwin [CoreServices ApplicationServices] ;
|
stdenv.lib.optionals stdenv.isDarwin [CoreServices ApplicationServices] ;
|
||||||
@ -121,6 +121,8 @@ stdenv.mkDerivation rec {
|
|||||||
"USE_SYSTEM_OPENSPECFUN=1"
|
"USE_SYSTEM_OPENSPECFUN=1"
|
||||||
"USE_SYSTEM_PATCHELF=1"
|
"USE_SYSTEM_PATCHELF=1"
|
||||||
"USE_SYSTEM_PCRE=1"
|
"USE_SYSTEM_PCRE=1"
|
||||||
|
"PCRE_CONFIG=${pcre2.dev}/bin/pcre2-config"
|
||||||
|
"PCRE_INCL_PATH=${pcre2.dev}/include/pcre2.h"
|
||||||
"USE_SYSTEM_READLINE=1"
|
"USE_SYSTEM_READLINE=1"
|
||||||
"USE_SYSTEM_UTF8PROC=1"
|
"USE_SYSTEM_UTF8PROC=1"
|
||||||
"USE_SYSTEM_ZLIB=1"
|
"USE_SYSTEM_ZLIB=1"
|
||||||
|
@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
arpack fftw fftwSinglePrec gmp libgit2 libunwind mpfr
|
arpack fftw fftwSinglePrec gmp libgit2 libunwind mpfr
|
||||||
pcre2 openblas openlibm openspecfun readline suitesparse utf8proc
|
pcre2.dev openblas openlibm openspecfun readline suitesparse utf8proc
|
||||||
zlib
|
zlib
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -131,6 +131,8 @@ stdenv.mkDerivation rec {
|
|||||||
"USE_SYSTEM_OPENSPECFUN=1"
|
"USE_SYSTEM_OPENSPECFUN=1"
|
||||||
"USE_SYSTEM_PATCHELF=1"
|
"USE_SYSTEM_PATCHELF=1"
|
||||||
"USE_SYSTEM_PCRE=1"
|
"USE_SYSTEM_PCRE=1"
|
||||||
|
"PCRE_CONFIG=${pcre2.dev}/bin/pcre2-config"
|
||||||
|
"PCRE_INCL_PATH=${pcre2.dev}/include/pcre2.h"
|
||||||
"USE_SYSTEM_READLINE=1"
|
"USE_SYSTEM_READLINE=1"
|
||||||
"USE_SYSTEM_UTF8PROC=1"
|
"USE_SYSTEM_UTF8PROC=1"
|
||||||
"USE_SYSTEM_ZLIB=1"
|
"USE_SYSTEM_ZLIB=1"
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user