mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-23 15:33:13 +00:00
Merge #5676: gcc-wrapper -> cc-wrapper and related
This commit is contained in:
commit
88089559b9
@ -82,6 +82,7 @@
|
||||
ianwookim = "Ian-Woo Kim <ianwookim@gmail.com>";
|
||||
iElectric = "Domen Kozar <domen@dev.si>";
|
||||
iyzsong = "Song Wenwu <iyzsong@gmail.com>";
|
||||
j-keck = "Jürgen Keck <jhyphenkeck@gmail.com>";
|
||||
jagajaga = "Arseniy Seroka <ars.seroka@gmail.com>";
|
||||
jcumming = "Jack Cummings <jack@mudshark.org>";
|
||||
jgeerds = "Jascha Geerds <jg@ekby.de>";
|
||||
|
@ -62,7 +62,7 @@ for bin in $(find $binaryDist -executable -type f) :; do
|
||||
)
|
||||
|
||||
if test "$names" = "glibc"; then names="stdenv.glibc"; fi
|
||||
if echo $names | grep -c "gcc" &> /dev/null; then names="stdenv.cc.gcc"; fi
|
||||
if echo $names | grep -c "gcc" &> /dev/null; then names="stdenv.cc.cc"; fi
|
||||
|
||||
if test $lib != $libPath; then
|
||||
interpreter="--interpreter \${$names}/lib/$lib"
|
||||
|
@ -175,6 +175,7 @@
|
||||
gitlab = 165;
|
||||
tox-bootstrapd = 166;
|
||||
cadvisor = 167;
|
||||
nylon = 168;
|
||||
|
||||
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
|
||||
|
||||
@ -313,6 +314,7 @@
|
||||
bosun = 161;
|
||||
kubernetes = 162;
|
||||
gitlab = 165;
|
||||
nylon = 166;
|
||||
|
||||
# When adding a gid, make sure it doesn't match an existing
|
||||
# uid. Users and groups with the same name should have equal
|
||||
|
@ -263,6 +263,7 @@
|
||||
./services/networking/nsd.nix
|
||||
./services/networking/ntopng.nix
|
||||
./services/networking/ntpd.nix
|
||||
./services/networking/nylon.nix
|
||||
./services/networking/oidentd.nix
|
||||
./services/networking/openfire.nix
|
||||
./services/networking/openntpd.nix
|
||||
|
@ -122,6 +122,14 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
requireWheel = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Whether to permit root access only to members of group wheel.
|
||||
'';
|
||||
};
|
||||
|
||||
limits = mkOption {
|
||||
description = ''
|
||||
Attribute set describing resource limits. Defaults to the
|
||||
@ -184,6 +192,8 @@ let
|
||||
# Authentication management.
|
||||
${optionalString cfg.rootOK
|
||||
"auth sufficient pam_rootok.so"}
|
||||
${optionalString cfg.requireWheel
|
||||
"auth required pam_wheel.so use_uid"}
|
||||
${optionalString cfg.logFailures
|
||||
"auth required pam_tally.so"}
|
||||
${optionalString (config.security.pam.enableSSHAgentAuth && cfg.sshAgentAuth)
|
||||
|
@ -103,7 +103,7 @@ in
|
||||
${pkgs.tzdata}/share/zoneinfo/** r,
|
||||
|
||||
${dnscrypt-proxy}/share/dnscrypt-proxy/** r,
|
||||
${pkgs.gcc.gcc}/lib/libssp.so.* mr,
|
||||
${pkgs.gcc.cc}/lib/libssp.so.* mr,
|
||||
${pkgs.libsodium}/lib/libsodium.so.* mr,
|
||||
}
|
||||
'')
|
||||
|
139
nixos/modules/services/networking/nylon.nix
Normal file
139
nixos/modules/services/networking/nylon.nix
Normal file
@ -0,0 +1,139 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.nylon;
|
||||
|
||||
homeDir = "/var/lib/nylon";
|
||||
|
||||
configFile = pkgs.writeText "nylon.conf" ''
|
||||
[General]
|
||||
No-Simultaneous-Conn=${toString cfg.nrConnections}
|
||||
Log=${if cfg.logging then "1" else "0"}
|
||||
Verbose=${if cfg.verbosity then "1" else "0"}
|
||||
|
||||
[Server]
|
||||
Binding-Interface=${cfg.acceptInterface}
|
||||
Connecting-Interface=${cfg.bindInterface}
|
||||
Port=${toString cfg.port}
|
||||
Allow-IP=${concatStringsSep " " cfg.allowedIPRanges}
|
||||
Deny-IP=${concatStringsSep " " cfg.deniedIPRanges}
|
||||
'';
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
services.nylon = {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enables nylon as a running service upon activation.
|
||||
'';
|
||||
};
|
||||
|
||||
nrConnections = mkOption {
|
||||
type = types.int;
|
||||
default = 10;
|
||||
description = ''
|
||||
The number of allowed simultaneous connections to the daemon, default 10.
|
||||
'';
|
||||
};
|
||||
|
||||
logging = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable logging, default is no logging.
|
||||
'';
|
||||
};
|
||||
|
||||
verbosity = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable verbose output, default is to not be verbose.
|
||||
'';
|
||||
};
|
||||
|
||||
acceptInterface = mkOption {
|
||||
type = types.string;
|
||||
default = "lo";
|
||||
description = ''
|
||||
Tell nylon which interface to listen for client requests on, default is "lo".
|
||||
'';
|
||||
};
|
||||
|
||||
bindInterface = mkOption {
|
||||
type = types.string;
|
||||
default = "enp3s0f0";
|
||||
description = ''
|
||||
Tell nylon which interface to use as an uplink, default is "enp3s0f0".
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.int;
|
||||
default = 1080;
|
||||
description = ''
|
||||
What port to listen for client requests, default is 1080.
|
||||
'';
|
||||
};
|
||||
|
||||
allowedIPRanges = mkOption {
|
||||
type = with types; listOf string;
|
||||
default = [ "192.168.0.0/16" "127.0.0.1/8" "172.16.0.1/12" "10.0.0.0/8" ];
|
||||
description = ''
|
||||
Allowed client IP ranges are evaluated first, defaults to ARIN IPv4 private ranges:
|
||||
[ "192.168.0.0/16" "127.0.0.0/8" "172.16.0.0/12" "10.0.0.0/8" ]
|
||||
'';
|
||||
};
|
||||
|
||||
deniedIPRanges = mkOption {
|
||||
type = with types; listOf string;
|
||||
default = [ "0.0.0.0/0" ];
|
||||
description = ''
|
||||
Denied client IP ranges, these gets evaluated after the allowed IP ranges, defaults to all IPv4 addresses:
|
||||
[ "0.0.0.0/0" ]
|
||||
To block all other access than the allowed.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
users.extraUsers.nylon= {
|
||||
group = "nylon";
|
||||
description = "Nylon SOCKS Proxy";
|
||||
home = homeDir;
|
||||
createHome = true;
|
||||
uid = config.ids.uids.nylon;
|
||||
};
|
||||
|
||||
users.extraGroups.nylon.gid = config.ids.gids.nylon;
|
||||
|
||||
systemd.services.nylon = {
|
||||
description = "Nylon, a lightweight SOCKS proxy server";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig =
|
||||
{
|
||||
User = "nylon";
|
||||
Group = "nylon";
|
||||
WorkingDirectory = homeDir;
|
||||
ExecStart = "${pkgs.nylon}/bin/nylon -f -c ${configFile}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -7,6 +7,11 @@ let
|
||||
xcfg = config.services.xserver;
|
||||
cfg = xcfg.desktopManager.e19;
|
||||
e19_enlightenment = pkgs.e19.enlightenment.override { set_freqset_setuid = true; };
|
||||
GST_PLUGIN_PATH = lib.makeSearchPath "lib/gstreamer-1.0" [
|
||||
pkgs.gst_all_1.gst-plugins-base
|
||||
pkgs.gst_all_1.gst-plugins-good
|
||||
pkgs.gst_all_1.gst-plugins-bad
|
||||
pkgs.gst_all_1.gst-libav ];
|
||||
|
||||
in
|
||||
|
||||
@ -45,6 +50,8 @@ in
|
||||
export GTK_PATH=${config.system.path}/lib/gtk-3.0:${config.system.path}/lib/gtk-2.0
|
||||
export XDG_MENU_PREFIX=enlightenment
|
||||
|
||||
export GST_PLUGIN_PATH="${GST_PLUGIN_PATH}"
|
||||
|
||||
# make available for D-BUS user services
|
||||
#export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}:${config.system.path}/share:${pkgs.e19.efl}/share
|
||||
|
||||
|
@ -323,7 +323,7 @@ system("@systemd@/bin/systemctl", "daemon-reload") == 0 or $res = 3;
|
||||
|
||||
# Signal dbus to reload its configuration before starting other units.
|
||||
# Other units may rely on newly installed policy files under /etc/dbus-1
|
||||
system("@systemd@/bin/systemctl", "reload", "dbus.service");
|
||||
system("@systemd@/bin/systemctl", "reload-or-restart", "dbus.service");
|
||||
|
||||
# Restart changed services (those that have to be restarted rather
|
||||
# than stopped and started).
|
||||
|
@ -46,7 +46,7 @@ let
|
||||
cp -pv ${pkgs.glibc}/lib/libpthread.so.* $out/lib
|
||||
cp -pv ${pkgs.glibc}/lib/librt.so.* $out/lib
|
||||
cp -pv ${pkgs.glibc}/lib/libdl.so.* $out/lib
|
||||
cp -pv ${pkgs.gcc.gcc}/lib*/libgcc_s.so.* $out/lib
|
||||
cp -pv ${pkgs.gcc.cc}/lib*/libgcc_s.so.* $out/lib
|
||||
|
||||
# Copy BusyBox.
|
||||
cp -pvd ${pkgs.busybox}/bin/* ${pkgs.busybox}/sbin/* $out/bin/
|
||||
|
@ -37,8 +37,6 @@ let
|
||||
ip link del "${i}" 2>/dev/null || true
|
||||
'';
|
||||
|
||||
needsMstpd = any ({ rstp, ... }: rstp) (attrValues cfg.bridges);
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@ -194,7 +192,7 @@ in
|
||||
before = [ "network-interfaces.target" (subsystemDevice n) ];
|
||||
serviceConfig.Type = "oneshot";
|
||||
serviceConfig.RemainAfterExit = true;
|
||||
path = [ pkgs.iproute ] ++ optional v.rstp pkgs.mstpd;
|
||||
path = [ pkgs.iproute ];
|
||||
script = ''
|
||||
# Remove Dead Interfaces
|
||||
echo "Removing old bridge ${n}..."
|
||||
@ -209,11 +207,9 @@ in
|
||||
ip link set "${i}" up
|
||||
'')}
|
||||
|
||||
# Enable rstp on the interface
|
||||
# Enable stp on the interface
|
||||
${optionalString v.rstp ''
|
||||
echo 1 >/sys/class/net/${n}/bridge/stp_state
|
||||
mstpctl addbridge "${n}"
|
||||
mstpctl setforcevers "${n}" rstp
|
||||
echo 2 >/sys/class/net/${n}/bridge/stp_state
|
||||
''}
|
||||
|
||||
ip link set "${n}" up
|
||||
@ -353,8 +349,6 @@ in
|
||||
KERNEL=="tun", TAG+="systemd"
|
||||
'';
|
||||
|
||||
services.mstpd = mkIf needsMstpd { enable = true; };
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -16,6 +16,35 @@ let
|
||||
|
||||
slaveIfs = map (i: cfg.interfaces.${i}) (filter (i: cfg.interfaces ? ${i}) slaves);
|
||||
|
||||
rstpBridges = flip filterAttrs cfg.bridges (_: { rstp, ... }: rstp);
|
||||
|
||||
needsMstpd = rstpBridges != { };
|
||||
|
||||
bridgeStp = optional needsMstpd (pkgs.writeTextFile {
|
||||
name = "bridge-stp";
|
||||
executable = true;
|
||||
destination = "/bin/bridge-stp";
|
||||
text = ''
|
||||
#!${pkgs.stdenv.shell} -e
|
||||
export PATH="${pkgs.mstpd}/bin"
|
||||
|
||||
BRIDGES=(${concatStringsSep " " (attrNames rstpBridges)})
|
||||
for BRIDGE in $BRIDGES; do
|
||||
if [ "$BRIDGE" = "$1" ]; then
|
||||
if [ "$2" = "start" ]; then
|
||||
mstpctl addbridge "$BRIDGE"
|
||||
exit 0
|
||||
elif [ "$2" = "stop" ]; then
|
||||
mstpctl delbridge "$BRIDGE"
|
||||
exit 0
|
||||
fi
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
exit 1
|
||||
'';
|
||||
});
|
||||
|
||||
# We must escape interfaces due to the systemd interpretation
|
||||
subsystemDevice = interface:
|
||||
"sys-subsystem-net-devices-${escapeSystemdPath interface}.device";
|
||||
@ -683,7 +712,7 @@ in
|
||||
pkgs.iw
|
||||
pkgs.rfkill
|
||||
pkgs.openresolv
|
||||
];
|
||||
] ++ bridgeStp;
|
||||
|
||||
systemd.targets."network-interfaces" =
|
||||
{ description = "All Network Interfaces";
|
||||
@ -731,6 +760,9 @@ in
|
||||
ip link set "${i.name}" mtu "${toString i.mtu}"
|
||||
'';
|
||||
})));
|
||||
|
||||
services.mstpd = mkIf needsMstpd { enable = true; };
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -120,6 +120,8 @@ in
|
||||
169.254.169.254 metadata.google.internal metadata
|
||||
'';
|
||||
|
||||
services.ntp.servers = [ "metadata.google.internal" ];
|
||||
|
||||
networking.usePredictableInterfaceNames = false;
|
||||
|
||||
systemd.services.fetch-ssh-keys =
|
||||
@ -130,15 +132,15 @@ in
|
||||
after = [ "network-online.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
|
||||
path = [ pkgs.wget ];
|
||||
script =
|
||||
script = let wget = "${pkgs.wget}/bin/wget --retry-connrefused -t 6 --waitretry=10"; in
|
||||
''
|
||||
wget="wget --retry-connrefused -t 6 --waitretry=10"
|
||||
# When dealing with cryptographic keys, we want to keep things private.
|
||||
umask 077
|
||||
# Don't download the SSH key if it has already been downloaded
|
||||
if ! [ -e /root/.ssh/authorized_keys ]; then
|
||||
echo "obtaining SSH key..."
|
||||
mkdir -p /root/.ssh
|
||||
$wget -O /root/authorized-keys-metadata http://metadata/0.1/meta-data/authorized-keys
|
||||
${wget} -O /root/authorized-keys-metadata http://metadata/0.1/meta-data/authorized-keys
|
||||
if [ $? -eq 0 -a -e /root/authorized-keys-metadata ]; then
|
||||
cat /root/authorized-keys-metadata | cut -d: -f2- > /root/key.pub
|
||||
if ! grep -q -f /root/key.pub /root/.ssh/authorized_keys; then
|
||||
@ -146,24 +148,30 @@ in
|
||||
echo "new key added to authorized_keys"
|
||||
fi
|
||||
chmod 600 /root/.ssh/authorized_keys
|
||||
rm -f /root/key.pub /root/authorized-keys-metadata
|
||||
fi
|
||||
rm -f /root/key.pub /root/authorized-keys-metadata
|
||||
fi
|
||||
|
||||
echo "obtaining SSH private host key..."
|
||||
$wget -O /root/ssh_host_ecdsa_key http://metadata/0.1/meta-data/attributes/ssh_host_ecdsa_key
|
||||
if [ $? -eq 0 -a -e /root/ssh_host_ecdsa_key ]; then
|
||||
mv -f /root/ssh_host_ecdsa_key /etc/ssh/ssh_host_ecdsa_key
|
||||
echo "downloaded ssh_host_ecdsa_key"
|
||||
chmod 600 /etc/ssh/ssh_host_ecdsa_key
|
||||
fi
|
||||
countKeys=0
|
||||
${flip concatMapStrings config.services.openssh.hostKeys (k :
|
||||
let kName = baseNameOf k.path; in ''
|
||||
echo "trying to obtain SSH private host key ${kName}"
|
||||
${wget} -O /root/${kName} http://metadata/0.1/meta-data/attributes/${kName} && :
|
||||
if [ $? -eq 0 -a -e /root/${kName} ]; then
|
||||
countKeys=$((countKeys+1))
|
||||
mv -f /root/${kName} ${k.path}
|
||||
echo "downloaded ${k.path}"
|
||||
chmod 600 ${k.path}
|
||||
${config.programs.ssh.package}/bin/ssh-keygen -y -f ${k.path} > ${k.path}.pub
|
||||
chmod 644 ${k.path}.pub
|
||||
fi
|
||||
rm -f /root/${kName}
|
||||
''
|
||||
)}
|
||||
|
||||
echo "obtaining SSH public host key..."
|
||||
$wget -O /root/ssh_host_ecdsa_key.pub http://metadata/0.1/meta-data/attributes/ssh_host_ecdsa_key_pub
|
||||
if [ $? -eq 0 -a -e /root/ssh_host_ecdsa_key.pub ]; then
|
||||
mv -f /root/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub
|
||||
echo "downloaded ssh_host_ecdsa_key.pub"
|
||||
chmod 644 /etc/ssh/ssh_host_ecdsa_key.pub
|
||||
if [[ $countKeys -le 0 ]]; then
|
||||
echo "failed to obtain any SSH private host keys."
|
||||
false
|
||||
fi
|
||||
'';
|
||||
serviceConfig.Type = "oneshot";
|
||||
|
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://www.jpj.net/~trevor/aumix.html;
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
buildPhase = ''
|
||||
patchelf \
|
||||
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath "$out/opt/google/musicmanager:${readline}/lib:${ncurses}/lib:${stdenv.cc.libc}/lib:${qt48}/lib:${stdenv.cc.gcc}/lib:${libidn}/lib:${expat}/lib:${flac}/lib:${libvorbis}/lib" opt/google/musicmanager/MusicManager
|
||||
--set-rpath "$out/opt/google/musicmanager:${readline}/lib:${ncurses}/lib:${stdenv.cc.libc}/lib:${qt48}/lib:${stdenv.cc.cc}/lib:${libidn}/lib:${expat}/lib:${flac}/lib:${libvorbis}/lib" opt/google/musicmanager/MusicManager
|
||||
'';
|
||||
|
||||
dontPatchELF = true;
|
||||
|
@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ let
|
||||
pango
|
||||
qt4
|
||||
sqlite
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
xlibs.libX11
|
||||
xlibs.libXcomposite
|
||||
xlibs.libXdamage
|
||||
@ -113,7 +113,7 @@ stdenv.mkDerivation {
|
||||
|
||||
mkdir -p $out/bin
|
||||
|
||||
rpath="$out/spotify-client/Data:$out/lib:$out/spotify-client:${stdenv.cc.gcc}/lib64"
|
||||
rpath="$out/spotify-client/Data:$out/lib:$out/spotify-client:${stdenv.cc.cc}/lib64"
|
||||
|
||||
ln -s $out/spotify-client/spotify $out/bin/spotify
|
||||
|
||||
|
@ -7,7 +7,7 @@ let
|
||||
atomEnv = buildEnv {
|
||||
name = "env-atom";
|
||||
paths = [
|
||||
stdenv.cc.gcc zlib glib dbus gtk atk pango freetype libgnome_keyring3
|
||||
stdenv.cc.cc zlib glib dbus gtk atk pango freetype libgnome_keyring3
|
||||
fontconfig gdk_pixbuf cairo cups expat libgpgerror alsaLib nspr gconf nss
|
||||
xlibs.libXrender xlibs.libX11 xlibs.libXext xlibs.libXdamage xlibs.libXtst
|
||||
xlibs.libXcomposite xlibs.libXi xlibs.libXfixes xlibs.libXrandr
|
||||
@ -16,11 +16,11 @@ let
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "atom-${version}";
|
||||
version = "0.150.0";
|
||||
version = "0.171.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
||||
sha256 = "1vvsxj1pwpcz0hn58k1hsrv994vm61lxkih58ix1rkj32wpvdjxn";
|
||||
sha256 = "0syl3rljk2k8j6fy8xq59qhf13b8a4awpi5cvn1kka56y0vmhxs5";
|
||||
name = "${name}.deb";
|
||||
};
|
||||
|
||||
|
@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
broken = true;
|
||||
};
|
||||
|
@ -56,9 +56,9 @@ let
|
||||
snappyPath="lib/snappy-java-1.0.5"
|
||||
7z x -o"$snappyPath" "$snappyPath.jar"
|
||||
if [ "${stdenv.system}" == "x86_64-linux" ]; then
|
||||
patchelf --set-rpath ${stdenv.cc.gcc}/lib64 "$snappyPath/org/xerial/snappy/native/Linux/amd64/libsnappyjava.so"
|
||||
patchelf --set-rpath ${stdenv.cc.cc}/lib64 "$snappyPath/org/xerial/snappy/native/Linux/amd64/libsnappyjava.so"
|
||||
else
|
||||
patchelf --set-rpath ${stdenv.cc.gcc}/lib "$snappyPath/org/xerial/snappy/native/Linux/i386/libsnappyjava.so"
|
||||
patchelf --set-rpath ${stdenv.cc.cc}/lib "$snappyPath/org/xerial/snappy/native/Linux/i386/libsnappyjava.so"
|
||||
fi
|
||||
7z a -tzip "$snappyPath.jar" ./"$snappyPath"/*
|
||||
rm -vr "$snappyPath"
|
||||
@ -74,7 +74,7 @@ let
|
||||
|
||||
makeWrapper "$out/$name/bin/${loName}.sh" "$out/bin/${loName}" \
|
||||
--prefix PATH : "${jdk}/bin:${coreutils}/bin:${gnugrep}/bin:${which}/bin:${git}/bin" \
|
||||
--prefix LD_RUN_PATH : "${stdenv.cc.gcc}/lib/" \
|
||||
--prefix LD_RUN_PATH : "${stdenv.cc.cc}/lib/" \
|
||||
--prefix JDK_HOME : "$jdk" \
|
||||
--prefix ${hiName}_JDK : "$jdk"
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
let
|
||||
libPath = stdenv.lib.makeLibraryPath [
|
||||
stdenv.cc.gcc zlib glib dbus gtk atk pango freetype libgnome_keyring3 nss
|
||||
stdenv.cc.cc zlib glib dbus gtk atk pango freetype libgnome_keyring3 nss
|
||||
fontconfig gdk_pixbuf cairo cups expat libgpgerror alsaLib nspr gnome3.gconf
|
||||
xlibs.libXrender xlibs.libX11 xlibs.libXext xlibs.libXdamage xlibs.libXtst
|
||||
xlibs.libXcomposite xlibs.libXi xlibs.libXfixes
|
||||
@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
patchelf \
|
||||
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath ${libPath}:${stdenv.cc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||
--set-rpath ${libPath}:${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||
$out/LightTable/ltbin
|
||||
|
||||
ln -s ${udev}/lib/libudev.so.1 $out/LightTable/libudev.so.0
|
||||
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
echo ${libPath}
|
||||
patchelf \
|
||||
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath ${libPath}:${stdenv.cc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||
--set-rpath ${libPath}:${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||
$out/sublime/sublime_text
|
||||
'';
|
||||
|
||||
|
@ -32,7 +32,7 @@ in let
|
||||
for i in sublime_text plugin_host crash_reporter; do
|
||||
patchelf \
|
||||
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath ${libPath}:${stdenv.cc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||
--set-rpath ${libPath}:${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||
$i
|
||||
done
|
||||
'';
|
||||
@ -41,7 +41,7 @@ in let
|
||||
mkdir -p $out
|
||||
cp -prvd * $out/
|
||||
# Without this, plugin_host crashes, even though it has the rpath
|
||||
wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.cc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl}/lib/libssl.so:${bzip2}/lib/libbz2.so
|
||||
wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl}/lib/libssl.so:${bzip2}/lib/libbz2.so
|
||||
'';
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
|
@ -33,7 +33,7 @@ in
|
||||
composableDerivation {
|
||||
# use gccApple to compile on darwin
|
||||
mkDerivation = ( if stdenv.isDarwin
|
||||
then stdenvAdapters.overrideGCC stdenv gccApple
|
||||
then stdenvAdapters.overrideCC stdenv gccApple
|
||||
else stdenv ).mkDerivation;
|
||||
} (fix: {
|
||||
|
||||
|
@ -8,7 +8,7 @@ let inherit (args.composableDerivation) composableDerivation edf; in
|
||||
composableDerivation {
|
||||
# use gccApple to compile on darwin
|
||||
mkDerivation = ( if stdenv.isDarwin
|
||||
then stdenvAdapters.overrideGCC stdenv gccApple
|
||||
then stdenvAdapters.overrideCC stdenv gccApple
|
||||
else stdenv ).mkDerivation;
|
||||
} (fix: {
|
||||
|
||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
# This should work on both x86_64, and i686 linux
|
||||
preBuild = ''
|
||||
export NIX_LDFLAGS="-L${gfortran.gcc}/lib64 -L${gfortran.gcc}/lib $NIX_LDFLAGS";
|
||||
export NIX_LDFLAGS="-L${gfortran.cc}/lib64 -L${gfortran.cc}/lib $NIX_LDFLAGS";
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
|
@ -1,21 +1,22 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk, libpng, exiv2
|
||||
, lcms, intltool, gettext, libchamplain, fbida
|
||||
{ stdenv, fetchurl, pkgconfig, autoconf, automake, gtk, libpng, exiv2
|
||||
, lcms, intltool, gettext, fbida
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "geeqie-${version}";
|
||||
version = "1.1";
|
||||
version = "1.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/geeqie/${name}.tar.gz";
|
||||
sha256 = "1kzy39z9505xkayyx7rjj2wda76xy3ch1s5z35zn8yli54ffhi2m";
|
||||
url = "mirror://debian/pool/main/g/geeqie/geeqie_${version}.orig.tar.gz";
|
||||
sha256 = "0wkcpyh3f6ig36x1q6h9iqgq225w37visip48m72j8rpghmv1rn3";
|
||||
};
|
||||
|
||||
preConfigure = "./autogen.sh";
|
||||
|
||||
configureFlags = [ "--enable-gps" ];
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig gtk libpng exiv2 lcms intltool gettext
|
||||
#libchamplain
|
||||
pkgconfig autoconf automake gtk libpng exiv2 lcms intltool gettext
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
|
@ -237,7 +237,7 @@ rec {
|
||||
homepage = http://lensfun.sebastiankraft.net/;
|
||||
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
};
|
||||
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -46,10 +46,10 @@ stdenv.mkDerivation rec {
|
||||
mk install
|
||||
mkdir -p $out/bin
|
||||
makeWrapper $out/share/inferno/Linux/386/bin/emu $out/bin/emu \
|
||||
--suffix LD_LIBRARY_PATH ':' "${gcc46.gcc}/lib" \
|
||||
--suffix LD_LIBRARY_PATH ':' "${gcc46.cc}/lib" \
|
||||
--suffix PATH ':' "$out/share/inferno/Linux/386/bin"
|
||||
makeWrapper $infernoWrapper $out/bin/inferno \
|
||||
--suffix LD_LIBRARY_PATH ':' "${gcc46.gcc}/lib" \
|
||||
--suffix LD_LIBRARY_PATH ':' "${gcc46.cc}/lib" \
|
||||
--suffix PATH ':' "$out/share/inferno/Linux/386/bin" \
|
||||
--set INFERNO_ROOT "$out/share/inferno"
|
||||
'';
|
||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation {
|
||||
# versions.
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ stdenv.cc.gcc libX11 zlib libxml2 cups pango atk gtk glib gdk_pixbuf ];
|
||||
[ stdenv.cc.cc libX11 zlib libxml2 cups pango atk gtk glib gdk_pixbuf ];
|
||||
|
||||
meta = {
|
||||
description = "Adobe Reader, a viewer for PDF documents";
|
||||
|
@ -17,12 +17,6 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "140fcxjb73gim430v08021ls3civ3yghld63ljkgxi5vaww1cq95";
|
||||
};
|
||||
|
||||
patches = [(fetchpatch {
|
||||
url = "https://raw.githubusercontent.com/Exherbo/media-unofficial/b5b09fa35ed/"
|
||||
+ "packages/media-gfx/blender/files/blender-2.71-Fix-build-with-freetype-2.5.4.patch";
|
||||
sha256 = "19kx9h030zy2f0ah5v69ank2ak8gfp1zv26pm4ixngfdbsiy5lvk";
|
||||
})];
|
||||
|
||||
buildInputs =
|
||||
[ SDL boost cmake ffmpeg gettext glew ilmbase libXi
|
||||
libjpeg libpng libsamplerate libsndfile libtiff mesa openal
|
||||
@ -41,6 +35,7 @@ stdenv.mkDerivation rec {
|
||||
[ "-DWITH_MOD_OCEANSIM=ON"
|
||||
"-DWITH_CODEC_FFMPEG=ON"
|
||||
"-DWITH_CODEC_SNDFILE=ON"
|
||||
"-DWITH_FFTW3=ON"
|
||||
"-DWITH_INSTALL_PORTABLE=OFF"
|
||||
"-DWITH_FFTW3=ON"
|
||||
"-DWITH_SDL=ON"
|
||||
|
@ -5,11 +5,11 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "calibre-2.15.0";
|
||||
name = "calibre-2.16.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/calibre/${name}.tar.xz";
|
||||
sha256 = "1gq2d9vkxs9i83zqhn45j33irj13yw873cmpw41ivyplx8kzdh5s";
|
||||
sha256 = "1a9s99r92wk09lsbx8kn2kyg1wr7j84j8vjf65zaf5siwxnwy291";
|
||||
};
|
||||
|
||||
inherit python;
|
||||
|
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://members.dslextreme.com/users/billw/gkrellm/gkrellm.html;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ stdenv.mkDerivation {
|
||||
nativeBuildInputs = [
|
||||
glibc
|
||||
glib
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
libSM
|
||||
libICE
|
||||
libXi
|
||||
|
@ -52,7 +52,7 @@ stdenv.mkDerivation {
|
||||
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = http://www.gnu.org/software/hello/manual/;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.eelco ];
|
||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -3,12 +3,13 @@
|
||||
|
||||
let ocamlVersion = (builtins.parseDrvName (ocaml.name)).version;
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "llpp-2014-11-29";
|
||||
name = "llpp-${version}";
|
||||
version = "21";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://repo.or.cz/llpp.git";
|
||||
rev = "481c8398b2c5dc4589738f5f80104ed75b9c73ff";
|
||||
sha256 = "13zi5mzpd9j4mmm68m3zkv49xgkhswhqvmp4bbyi0psmhxak8y5l";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0rxdq6j3bs4drnhlxgm0gcwkhxi98vmxm22lnkpic7h67lgsz51q";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig ninja makeWrapper ocaml findlib mupdf lablgl
|
||||
|
@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram "$out/bin/xca" \
|
||||
--prefix LD_LIBRARY_PATH : "${qt4}/lib:${gcc.gcc}/lib:${gcc.gcc}/lib64:${openssl}/lib:${libtool}/lib"
|
||||
--prefix LD_LIBRARY_PATH : "${qt4}/lib:${gcc.cc}/lib:${gcc.cc}/lib64:${openssl}/lib:${libtool}/lib"
|
||||
'';
|
||||
|
||||
buildInputs = [ openssl qt4 libtool gcc makeWrapper ];
|
||||
|
@ -35,7 +35,7 @@ let
|
||||
'';
|
||||
|
||||
patchPhase = let
|
||||
rpaths = [ stdenv.cc.gcc ];
|
||||
rpaths = [ stdenv.cc.cc ];
|
||||
mkrpath = p: "${makeSearchPath "lib64" p}:${makeSearchPath "lib" p}";
|
||||
in ''
|
||||
for sofile in PepperFlash/libpepflashplayer.so \
|
||||
|
@ -70,7 +70,7 @@ stdenv.mkDerivation {
|
||||
phases = "unpackPhase installPhase";
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ stdenv.cc.gcc
|
||||
[ stdenv.cc.cc
|
||||
alsaLib
|
||||
atk
|
||||
cairo
|
||||
@ -106,7 +106,7 @@ stdenv.mkDerivation {
|
||||
pulseaudio
|
||||
systemd
|
||||
] + ":" + stdenv.lib.makeSearchPath "lib64" [
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
];
|
||||
|
||||
# "strip" after "patchelf" may break binaries.
|
||||
|
@ -15,14 +15,14 @@
|
||||
|
||||
assert stdenv.cc ? libc && stdenv.cc.libc != null;
|
||||
|
||||
let version = "34.0.5"; in
|
||||
let version = "35.0"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "firefox-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2";
|
||||
sha1 = "33654d38268d1d1f71105f48bbe97cf720f47be2";
|
||||
sha1 = "52f310f08ab5a52cd9d9be00016f0872a5e81774";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -36,7 +36,7 @@
|
||||
|
||||
let
|
||||
# -> http://get.adobe.com/flashplayer/
|
||||
version = "11.2.202.425";
|
||||
version = "11.2.202.429";
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
@ -47,7 +47,7 @@ let
|
||||
else rec {
|
||||
inherit version;
|
||||
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
|
||||
sha256 = "1bk0xh213jbinq0y587m01vklsbxskhqfgi2a2x8w8a7qyw42alf";
|
||||
sha256 = "0nz2rqibgby1xm1c363j9ms9371lk000aaj337cplslx8s4ryrqb";
|
||||
}
|
||||
else if stdenv.system == "i686-linux" then
|
||||
if debug then
|
||||
@ -60,7 +60,7 @@ let
|
||||
else rec {
|
||||
inherit version;
|
||||
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
|
||||
sha256 = "0jcip60g0dwca304y4vmzyfw06zdagpyzvm66jxqy1sy6j78br0b";
|
||||
sha256 = "0r706sq6w3rv44hdaanappa3krq9z1mfxc96ifapqfg0wf2w2fb4";
|
||||
}
|
||||
else throw "Flash Player is not supported on this platform";
|
||||
|
||||
|
@ -32,7 +32,7 @@ let
|
||||
xorg.libXfixes
|
||||
xorg.libXrender
|
||||
xorg.libXrandr
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
alsaLib
|
||||
pulseaudio
|
||||
dbus_glib
|
||||
@ -76,11 +76,11 @@ stdenv.mkDerivation rec {
|
||||
cp opt/google/talkplugin/*.so $plugins
|
||||
|
||||
for i in libnpgoogletalk.so libppgoogletalk.so libppo1d.so; do
|
||||
patchelf --set-rpath "${makeLibraryPath [ stdenv.cc.gcc xorg.libX11 ]}:${stdenv.cc.gcc}/lib64" $plugins/$i
|
||||
patchelf --set-rpath "${makeLibraryPath [ stdenv.cc.cc xorg.libX11 ]}:${stdenv.cc.cc}/lib64" $plugins/$i
|
||||
done
|
||||
|
||||
for i in libgoogletalkremoting.so libnpo1d.so; do
|
||||
patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.cc.gcc}/lib64" $plugins/$i
|
||||
patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.cc.cc}/lib64" $plugins/$i
|
||||
done
|
||||
|
||||
mkdir -p $out/libexec/google/talkplugin
|
||||
@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
patchelf \
|
||||
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath "${rpathProgram}:${stdenv.cc.gcc}/lib64" \
|
||||
--set-rpath "${rpathProgram}:${stdenv.cc.cc}/lib64" \
|
||||
$out/libexec/google/talkplugin/GoogleTalkPlugin
|
||||
|
||||
# Generate an LD_PRELOAD wrapper to redirect execvp() calls to
|
||||
|
@ -6,7 +6,7 @@
|
||||
, kdeSupport ? false, qt4, kdelibs
|
||||
}:
|
||||
|
||||
assert stdenv.isLinux && stdenv.cc.gcc != null && stdenv.cc.libc != null;
|
||||
assert stdenv.isLinux && stdenv.cc.cc.isGNU or false && stdenv.cc.libc != null;
|
||||
|
||||
let
|
||||
mirror = http://get.geo.opera.com/pub/opera;
|
||||
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
buildInputs =
|
||||
[ stdenv.cc.gcc stdenv.cc.libc zlib libX11 libXt libXext libSM libICE
|
||||
[ stdenv.cc.cc stdenv.cc.libc zlib libX11 libXt libXext libSM libICE
|
||||
libXft freetype fontconfig libXrender libuuid expat
|
||||
gstreamer libxml2 gst_plugins_base
|
||||
]
|
||||
|
@ -37,7 +37,7 @@ in stdenv.mkDerivation {
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \
|
||||
"$out/${appdir}/CopyConsole"
|
||||
|
||||
RPATH=${gcc.gcc}/lib:$out/${appdir}
|
||||
RPATH=${gcc.cc}/lib:$out/${appdir}
|
||||
echo "updating rpaths to: $RPATH"
|
||||
find "$out/${appdir}" -type f -a -perm +0100 \
|
||||
-print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;
|
||||
|
@ -76,7 +76,7 @@ in stdenv.mkDerivation {
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \
|
||||
"$out/${appdir}/dropbox"
|
||||
|
||||
RPATH=${ldpath}:${gcc.gcc}/lib:$out/${appdir}
|
||||
RPATH=${ldpath}:${gcc.cc}/lib:$out/${appdir}
|
||||
echo "updating rpaths to: $RPATH"
|
||||
find "$out/${appdir}" -type f -a -perm +0100 \
|
||||
-print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;
|
||||
|
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
|
||||
installPhase = ''
|
||||
make install
|
||||
for file in "$out"/bin/* "$out"/sbin/*; do
|
||||
wrapProgram $file --prefix LD_LIBRARY_PATH ":" "$out/lib:${openssl}/lib:${gcc.gcc}/lib:${stdenv.glibc}/lib::${gcc.gcc}/lib64:${stdenv.glibc}/lib64:${libedit}/lib:${qt4}/lib"
|
||||
wrapProgram $file --prefix LD_LIBRARY_PATH ":" "$out/lib:${openssl}/lib:${gcc.cc}/lib:${stdenv.glibc}/lib::${gcc.cc}/lib64:${stdenv.glibc}/lib64:${libedit}/lib:${qt4}/lib"
|
||||
done
|
||||
'';
|
||||
|
||||
|
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
"USE_BV32=" "USE_COREAUDIO=" "USE_G711=" "USE_G722=" "USE_G722_1="
|
||||
"USE_ILBC=" "USE_OPUS=" "USE_SILK="
|
||||
]
|
||||
++ stdenv.lib.optional (stdenv.cc.gcc != null) "SYSROOT_ALT=${stdenv.cc.gcc}"
|
||||
++ stdenv.lib.optional (stdenv.cc.cc != null) "SYSROOT_ALT=${stdenv.cc.cc}"
|
||||
++ stdenv.lib.optional (stdenv.cc.libc != null) "SYSROOT=${stdenv.cc.libc}"
|
||||
;
|
||||
NIX_CFLAGS_COMPILE='' -I${librem}/include/rem -I${gsm}/include/gsm '';
|
||||
|
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://www.bitlbee.org/;
|
||||
license = licenses.gpl2Plus;
|
||||
|
||||
maintainers = with maintainers; [ ludo wkennington ];
|
||||
maintainers = with maintainers; [ wkennington ];
|
||||
platforms = platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ stdenv.mkDerivation {
|
||||
libPath =
|
||||
stdenv.lib.makeLibraryPath [
|
||||
openssl alsaLib libXext libXfixes libXrandr libjpeg curl_custom
|
||||
libX11 libXmu libXv qt4 libXtst mesa stdenv.cc.gcc zlib
|
||||
libX11 libXmu libXv qt4 libXtst mesa stdenv.cc.cc zlib
|
||||
gnome.GConf libidn rtmpdump c-ares openldap
|
||||
];
|
||||
buildCommand = ''
|
||||
|
@ -1,17 +1,15 @@
|
||||
{stdenv, fetchurl, ncurses, openssl, tcl, tk}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gtmess-0.96";
|
||||
name = "gtmess-0.97";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/gtmess/gtmess-0.96.tar.gz;
|
||||
sha256 = "0w29wyshx32485c7wazj51lvk2j9k1kn2jmwpf916r4513hwplvm";
|
||||
url = mirror://sourceforge/gtmess/gtmess-0.97.tar.gz;
|
||||
sha256 = "1ipmqsrj0r1ssbgs2fpr4x5vnzlxlqhx9jrnadp1jw7s0sxpjqv0";
|
||||
};
|
||||
|
||||
buildInputs = [ ncurses openssl tcl tk];
|
||||
|
||||
patches = [ ./va_list.patch ];
|
||||
|
||||
meta = {
|
||||
description = "Console MSN Messenger client for Linux and other unix systems";
|
||||
homepage = http://gtmess.sourceforge.net/;
|
||||
|
@ -1,22 +0,0 @@
|
||||
diff --git a/src/client/screen.c b/src/client/screen.c
|
||||
index e8fa75f..d3842ac 100644
|
||||
--- a/src/client/screen.c
|
||||
+++ b/src/client/screen.c
|
||||
@@ -255,7 +255,7 @@ void msg(int attr, const char *fmt, ...)
|
||||
va_start(ap, fmt);
|
||||
r = vmsg(attr, SML, fmt, ap);
|
||||
va_end(ap);
|
||||
- if (r) vmsg(C_ERR, SML, "msg(): output truncated\n", NULL);
|
||||
+ if (r) msgn(C_ERR, SML, "msg(): output truncated\n");
|
||||
}
|
||||
|
||||
void msgn(int attr, int size, const char *fmt, ...)
|
||||
@@ -266,7 +266,7 @@ void msgn(int attr, int size, const char *fmt, ...)
|
||||
va_start(ap, fmt);
|
||||
r = vmsg(attr, size, fmt, ap);
|
||||
va_end(ap);
|
||||
- if (r) vmsg(C_ERR, SML, "msgn(): output truncated\n", NULL);
|
||||
+ if (r) msgn(C_ERR, SML, "msgn(): output truncated\n");
|
||||
}
|
||||
|
||||
int screen_shut()
|
@ -41,7 +41,7 @@ let
|
||||
xz
|
||||
libcanberra
|
||||
xcbutilkeysyms
|
||||
] + ":${stdenv.cc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}";
|
||||
] + ":${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}";
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
stdenv.glibc
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
libXv
|
||||
libXext
|
||||
libX11
|
||||
|
@ -67,7 +67,7 @@ stdenv.mkDerivation {
|
||||
phases = "unpackPhase installPhase";
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ stdenv.cc.gcc
|
||||
[ stdenv.cc.cc
|
||||
gconf
|
||||
alsaLib
|
||||
at_spi2_atk
|
||||
@ -100,7 +100,7 @@ stdenv.mkDerivation {
|
||||
nss
|
||||
pango
|
||||
] + ":" + stdenv.lib.makeSearchPath "lib64" [
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
];
|
||||
|
||||
installPhase =
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, pkgconfig, m4, gtk, pango, perl, python, zip, libIDL
|
||||
{ stdenv, fetchurl, pkgconfig, which, m4, gtk, pango, perl, python, zip, libIDL
|
||||
, libjpeg, libpng, zlib, dbus, dbus_glib, bzip2, xlibs
|
||||
, freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
|
||||
, yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
|
||||
@ -13,7 +13,7 @@
|
||||
enableOfficialBranding ? false
|
||||
}:
|
||||
|
||||
let version = "31.2.0"; in
|
||||
let version = "31.4.0"; in
|
||||
let verName = "${version}"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -21,11 +21,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.bz2";
|
||||
sha1 = "87dff89388bd7ec51876e1bdbd82bc3fe60006b6";
|
||||
sha1 = "00b55e28f55b84e3cd257407d797e07a363aeef8";
|
||||
};
|
||||
|
||||
buildInputs = # from firefox30Pkgs.xulrunner, but without gstreamer and libvpx
|
||||
[ pkgconfig libpng gtk perl zip libIDL libjpeg zlib bzip2
|
||||
[ pkgconfig which libpng gtk perl zip libIDL libjpeg zlib bzip2
|
||||
python dbus dbus_glib pango freetype fontconfig xlibs.libXi
|
||||
xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
|
||||
alsaLib nspr nss libnotify xlibs.pixman yasm mesa
|
||||
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
hunspell libevent libstartup_notification cairo icu
|
||||
] ++ [ m4 ];
|
||||
|
||||
configureFlags = [ "--enable-application=mail" ]
|
||||
configurePhase = let configureFlags = [ "--enable-application=mail" ]
|
||||
# from firefox30Pkgs.commonConfigureFlags, but without gstreamer and libvpx
|
||||
++ [
|
||||
"--with-system-jpeg"
|
||||
@ -63,28 +63,33 @@ stdenv.mkDerivation rec {
|
||||
"--disable-pulseaudio"
|
||||
] ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"]
|
||||
else [ "--disable-debug" "--enable-release"
|
||||
"--disable-debug-symbols"
|
||||
"--enable-optimize" "--enable-strip" ])
|
||||
++ [
|
||||
"--disable-javaxpcom"
|
||||
"--enable-stdcxx-compat" # Avoid dependency on libstdc++ 4.7
|
||||
]
|
||||
++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";
|
||||
|
||||
configurePhase = ''
|
||||
patchShebangs .
|
||||
|
||||
in ''
|
||||
mkdir -p objdir/mozilla
|
||||
cd objdir
|
||||
echo '${stdenv.lib.concatMapStrings (s : "ac_add_options ${s}\n") configureFlags}' > .mozconfig
|
||||
echo "ac_add_options --prefix='$out'" >> .mozconfig
|
||||
echo "mk_add_options MOZ_MAKE_FLAGS='-j$NIX_BUILD_CORES'" >> .mozconfig
|
||||
echo 'ac_add_options --prefix="'"$out"'"' >> .mozconfig
|
||||
echo 'mk_add_options MOZ_MAKE_FLAGS="-j'"$NIX_BUILD_CORES"'"' >> .mozconfig
|
||||
echo 'mk_add_options MOZ_OBJDIR="'`pwd`'"' >> .mozconfig
|
||||
|
||||
make ${makeFlags} configure
|
||||
export MOZCONFIG=`realpath ./.mozconfig`
|
||||
|
||||
patchShebangs ../mozilla/mach
|
||||
../mozilla/mach configure
|
||||
'';
|
||||
|
||||
makeFlags = "-f client.mk";
|
||||
buildFlags = "build";
|
||||
buildPhase = "../mozilla/mach build";
|
||||
|
||||
postInstall =
|
||||
installPhase =
|
||||
''
|
||||
../mozilla/mach install
|
||||
|
||||
rm -rf $out/include $out/lib/thunderbird-devel-* $out/share/idl
|
||||
|
||||
# Create a desktop item.
|
||||
|
@ -6,14 +6,14 @@
|
||||
}:
|
||||
|
||||
let pname = "liferea";
|
||||
version = "1.10.12";
|
||||
version = "1.10.13";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${name}.tar.bz2";
|
||||
sha256 = "0c046r3cgf2adcjkgcny1gf2yj3hs0fhrc1zmcz2ja7grcbx46si";
|
||||
sha256 = "0yz5sj960w0w6fdx32fdm4rzrav9l8ajid1d8g7n398hjh4mm0q1";
|
||||
};
|
||||
|
||||
buildInputs = with gst_all_1; [
|
||||
|
@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo viric ];
|
||||
maintainers = with stdenv.lib.maintainers; [ viric ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -87,7 +87,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo viric ];
|
||||
maintainers = with stdenv.lib.maintainers; [ viric ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ let
|
||||
topath = "${wineUnstable}/bin";
|
||||
|
||||
toldpath = stdenv.lib.concatStringsSep ":" (map (x: "${x}/lib")
|
||||
[ stdenv.cc.gcc libX11 libXtst libXext libXdamage libXfixes wineUnstable ]);
|
||||
[ stdenv.cc.cc libX11 libXtst libXext libXdamage libXfixes wineUnstable ]);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "teamviewer-8.0.17147";
|
||||
@ -34,7 +34,7 @@ stdenv.mkDerivation {
|
||||
EOF
|
||||
chmod +x $out/bin/teamviewer
|
||||
|
||||
patchelf --set-rpath "${stdenv.cc.gcc}/lib64:${stdenv.cc.gcc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer8/tv_bin/teamviewerd
|
||||
patchelf --set-rpath "${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer8/tv_bin/teamviewerd
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/teamviewer8/tv_bin/teamviewerd
|
||||
ln -s $out/share/teamviewer8/tv_bin/teamviewerd $out/bin/
|
||||
'';
|
||||
|
@ -5,7 +5,7 @@ let
|
||||
topath = "${wineUnstable}/bin";
|
||||
|
||||
toldpath = stdenv.lib.concatStringsSep ":" (map (x: "${x}/lib")
|
||||
[ stdenv.cc.gcc libX11 libXtst libXext libXdamage libXfixes wineUnstable ]);
|
||||
[ stdenv.cc.cc libX11 libXtst libXext libXdamage libXfixes wineUnstable ]);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "teamviewer-9.0.32150";
|
||||
@ -34,7 +34,7 @@ stdenv.mkDerivation {
|
||||
EOF
|
||||
chmod +x $out/bin/teamviewer
|
||||
|
||||
patchelf --set-rpath "${stdenv.cc.gcc}/lib64:${stdenv.cc.gcc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer9/tv_bin/teamviewerd
|
||||
patchelf --set-rpath "${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer9/tv_bin/teamviewerd
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/teamviewer9/tv_bin/teamviewerd
|
||||
ln -s $out/share/teamviewer9/tv_bin/teamviewerd $out/bin/
|
||||
'';
|
||||
|
@ -6,7 +6,7 @@ let
|
||||
topath = "${wine}/bin";
|
||||
|
||||
toldpath = stdenv.lib.concatStringsSep ":" (map (x: "${x}/lib")
|
||||
[ stdenv.cc.gcc libX11 libXtst libXext libXdamage libXfixes wine ]);
|
||||
[ stdenv.cc.cc libX11 libXtst libXext libXdamage libXfixes wine ]);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "teamviewer-7.0.9377";
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "syncthing-${version}";
|
||||
version = "0.10.19";
|
||||
version = "0.10.20";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/syncthing/syncthing.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "e89d618ddbcbab2a4c6d0430b98e792a1780ebd40c19ee6f4644df2fdeea0601";
|
||||
sha256 = "2d61a5b1ca45e4ad0805413e8965a6f3d61256cccb7a6a08cc146bf7433f5d80";
|
||||
};
|
||||
|
||||
buildInputs = [ go ];
|
||||
|
@ -73,7 +73,7 @@ in
|
||||
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.mesaPlatforms;
|
||||
};
|
||||
}
|
||||
|
@ -70,7 +70,7 @@ stdenv.mkDerivation {
|
||||
phases = "unpackPhase installPhase";
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ stdenv.cc.gcc
|
||||
[ stdenv.cc.cc
|
||||
alsaLib
|
||||
atk
|
||||
cairo
|
||||
@ -106,7 +106,7 @@ stdenv.mkDerivation {
|
||||
pulseaudio
|
||||
systemd
|
||||
] + ":" + stdenv.lib.makeSearchPath "lib64" [
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
];
|
||||
|
||||
# "strip" after "patchelf" may break binaries.
|
||||
|
@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
|
||||
mkdir -p "$out"/bin
|
||||
cat > "$out"/bin/eagle << EOF
|
||||
#!${stdenv.shell}
|
||||
export LD_LIBRARY_PATH="${stdenv.cc.gcc}/lib:${libPath}"
|
||||
export LD_LIBRARY_PATH="${stdenv.cc.cc}/lib:${libPath}"
|
||||
export LD_PRELOAD="$out/lib/eagle_fixer.so"
|
||||
exec "$dynlinker" "$out/eagle-${version}/bin/eagle" "\$@"
|
||||
EOF
|
||||
|
@ -5,9 +5,9 @@ assert stdenv.isLinux;
|
||||
|
||||
let
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ stdenv.cc.libc stdenv.cc.gcc gtk gdk_pixbuf atk pango glib cairo
|
||||
[ stdenv.cc.libc stdenv.cc.cc gtk gdk_pixbuf atk pango glib cairo
|
||||
freetype fontconfig libxml2 gnome2.gtksourceview
|
||||
] + ":${stdenv.cc.gcc}/lib64";
|
||||
] + ":${stdenv.cc.cc}/lib64";
|
||||
|
||||
patchExe = x: ''
|
||||
patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
|
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
|
||||
CXX=$(type -p g++)
|
||||
FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran"
|
||||
JAVA_HOME="${jdk}"
|
||||
LDFLAGS="-L${gfortran.gcc}/lib"
|
||||
LDFLAGS="-L${gfortran.cc}/lib"
|
||||
RANLIB=$(type -p ranlib)
|
||||
R_SHELL="${stdenv.shell}"
|
||||
)
|
||||
|
@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
coreutils
|
||||
fontconfig
|
||||
freetype
|
||||
gcc.gcc
|
||||
gcc.cc
|
||||
gcc.libc
|
||||
glib
|
||||
ncurses
|
||||
|
@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
|
||||
coreutils
|
||||
fontconfig
|
||||
freetype
|
||||
gcc.gcc
|
||||
gcc.cc
|
||||
gcc.libc
|
||||
glib
|
||||
ncurses
|
||||
|
@ -38,7 +38,7 @@ stdenv.mkDerivation {
|
||||
|
||||
homepage = http://vite.gforge.inria.fr/;
|
||||
license = stdenv.lib.licenses.cecill20;
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo fuuzetsu ];
|
||||
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
|
||||
description = "TopGit manages large amount of interdependent topic branches";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber ludo simons ];
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber simons ];
|
||||
};
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
} // {mozillaPlugin = "/plugins";}
|
||||
|
@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [openssl qt4 mesa zlib pkgconfig libav];
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath [stdenv.cc.gcc openssl mesa qt4 zlib ]
|
||||
+ ":" + stdenv.cc.gcc + "/lib64";
|
||||
libPath = stdenv.lib.makeLibraryPath [stdenv.cc.cc openssl mesa qt4 zlib ]
|
||||
+ ":" + stdenv.cc.cc + "/lib64";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "convert blu-ray and dvd to mkv";
|
||||
|
@ -70,7 +70,7 @@ stdenv.mkDerivation {
|
||||
''
|
||||
else throw ("Architecture: "+stdenv.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
patchelf --set-rpath ${stdenv.cc.gcc}/lib:${dbus}/lib:${libX11}/lib:${libXt}/lib:${libXext}/lib:${libXmu}/lib:${libXfixes}/lib:${libXrandr}/lib:${libXcursor}/lib $i
|
||||
patchelf --set-rpath ${stdenv.cc.cc}/lib:${dbus}/lib:${libX11}/lib:${libXt}/lib:${libXext}/lib:${libXmu}/lib:${libXfixes}/lib:${libXrandr}/lib:${libXcursor}/lib $i
|
||||
done
|
||||
|
||||
for i in lib/VBoxOGL*.so
|
||||
|
@ -165,8 +165,8 @@ let
|
||||
cp -rsf ${staticUsrProfileTarget}/lib64/* lib64/
|
||||
|
||||
# copy gcc libs (and may overwrite exitsting wrongly placed libs)
|
||||
cp -rsf ${choosenGcc.gcc}/lib/* lib/
|
||||
cp -rsf ${choosenGcc.gcc}/lib64/* lib64/
|
||||
cp -rsf ${choosenGcc.cc}/lib/* lib/
|
||||
cp -rsf ${choosenGcc.cc}/lib64/* lib64/
|
||||
'';
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
|
@ -6,7 +6,7 @@ if [ -e @out@/nix-support/libc-cflags ]; then
|
||||
fi
|
||||
|
||||
if [ -e @out@/nix-support/gcc-cflags ]; then
|
||||
export NIX_CFLAGS_COMPILE="$(cat @out@/nix-support/gcc-cflags) $NIX_CFLAGS_COMPILE"
|
||||
export NIX_CFLAGS_COMPILE="$(cat @out@/nix-support/cc-cflags) $NIX_CFLAGS_COMPILE"
|
||||
fi
|
||||
|
||||
if [ -e @out@/nix-support/gnat-cflags ]; then
|
||||
@ -18,7 +18,7 @@ if [ -e @out@/nix-support/libc-ldflags ]; then
|
||||
fi
|
||||
|
||||
if [ -e @out@/nix-support/gcc-ldflags ]; then
|
||||
export NIX_LDFLAGS+=" $(cat @out@/nix-support/gcc-ldflags)"
|
||||
export NIX_LDFLAGS+=" $(cat @out@/nix-support/cc-ldflags)"
|
||||
fi
|
||||
|
||||
if [ -e @out@/nix-support/libc-ldflags-before ]; then
|
@ -79,7 +79,6 @@ if [ "$NIX_ENFORCE_PURITY" = 1 -a -n "$NIX_STORE" ]; then
|
||||
params=("${rest[@]}")
|
||||
fi
|
||||
|
||||
|
||||
# Add the flags for the C compiler proper.
|
||||
extraAfter=($NIX_CFLAGS_COMPILE)
|
||||
extraBefore=()
|
@ -1,4 +1,4 @@
|
||||
# The Nixpkgs GCC is not directly usable, since it doesn't know where
|
||||
# The Nixpkgs CC is not directly usable, since it doesn't know where
|
||||
# the C library and standard header files are. Therefore the compiler
|
||||
# produced by that package cannot be installed directly in a user
|
||||
# environment and used from the command line. So we use a wrapper
|
||||
@ -6,34 +6,35 @@
|
||||
# compiler and the linker just "work".
|
||||
|
||||
{ name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? ""
|
||||
, gcc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell
|
||||
, cc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell
|
||||
, zlib ? null, extraPackages ? []
|
||||
, libcxx ? null, libcxxabi ? null
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
assert nativeTools -> nativePrefix != "";
|
||||
assert !nativeTools -> gcc != null && binutils != null && coreutils != null;
|
||||
assert !nativeTools -> cc != null && binutils != null && coreutils != null;
|
||||
assert !nativeLibc -> libc != null;
|
||||
|
||||
# For ghdl (the vhdl language provider to gcc) we need zlib in the wrapper.
|
||||
assert gcc.langVhdl or false -> zlib != null;
|
||||
assert cc.langVhdl or false -> zlib != null;
|
||||
|
||||
let
|
||||
|
||||
gccVersion = (builtins.parseDrvName gcc.name).version;
|
||||
gccName = (builtins.parseDrvName gcc.name).name;
|
||||
ccVersion = (builtins.parseDrvName cc.name).version;
|
||||
ccName = (builtins.parseDrvName cc.name).name;
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name =
|
||||
(if name != "" then name else gccName + "-wrapper") +
|
||||
(if gcc != null && gccVersion != "" then "-" + gccVersion else "");
|
||||
(if name != "" then name else ccName + "-wrapper") +
|
||||
(if cc != null && ccVersion != "" then "-" + ccVersion else "");
|
||||
|
||||
preferLocalBuild = true;
|
||||
|
||||
inherit gcc shell;
|
||||
inherit cc shell libcxx libcxxabi;
|
||||
libc = if nativeLibc then null else libc;
|
||||
binutils = if nativeTools then null else binutils;
|
||||
# The wrapper scripts use 'cat', so we may need coreutils.
|
||||
@ -73,7 +74,7 @@ stdenv.mkDerivation {
|
||||
# compile, because it uses "#include_next <limits.h>" to find the
|
||||
# limits.h file in ../includes-fixed. To remedy the problem,
|
||||
# another -idirafter is necessary to add that directory again.
|
||||
echo "-B$libc/lib/ -idirafter $libc/include -idirafter $gcc/lib/gcc/*/*/include-fixed" > $out/nix-support/libc-cflags
|
||||
echo "-B$libc/lib/ -idirafter $libc/include -idirafter $cc/lib/gcc/*/*/include-fixed" > $out/nix-support/libc-cflags
|
||||
|
||||
echo "-L$libc/lib" > $out/nix-support/libc-ldflags
|
||||
|
||||
@ -86,43 +87,50 @@ stdenv.mkDerivation {
|
||||
''
|
||||
|
||||
+ (if nativeTools then ''
|
||||
gccPath="${nativePrefix}/bin"
|
||||
ccPath="${nativePrefix}/bin"
|
||||
ldPath="${nativePrefix}/bin"
|
||||
'' else ''
|
||||
echo $gcc > $out/nix-support/orig-gcc
|
||||
echo $cc > $out/nix-support/orig-cc
|
||||
|
||||
# GCC shows $gcc/lib in `gcc -print-search-dirs', but not
|
||||
# $gcc/lib64 (even though it does actually search there...)..
|
||||
# GCC shows $cc/lib in `gcc -print-search-dirs', but not
|
||||
# $cc/lib64 (even though it does actually search there...)..
|
||||
# This confuses libtool. So add it to the compiler tool search
|
||||
# path explicitly.
|
||||
if [ -e "$gcc/lib64" -a ! -L "$gcc/lib64" ]; then
|
||||
gccLDFlags+=" -L$gcc/lib64"
|
||||
gccCFlags+=" -B$gcc/lib64"
|
||||
if [ -e "$cc/lib64" -a ! -L "$cc/lib64" ]; then
|
||||
ccLDFlags+=" -L$cc/lib64"
|
||||
ccCFlags+=" -B$cc/lib64"
|
||||
fi
|
||||
gccLDFlags+=" -L$gcc/lib"
|
||||
ccLDFlags+=" -L$cc/lib"
|
||||
|
||||
${optionalString gcc.langVhdl or false ''
|
||||
gccLDFlags+=" -L${zlib}/lib"
|
||||
${optionalString cc.langVhdl or false ''
|
||||
ccLDFlags+=" -L${zlib}/lib"
|
||||
''}
|
||||
|
||||
# Find the gcc libraries path (may work only without multilib).
|
||||
${optionalString gcc.langAda or false ''
|
||||
basePath=`echo $gcc/lib/*/*/*`
|
||||
gccCFlags+=" -B$basePath -I$basePath/adainclude"
|
||||
${optionalString cc.langAda or false ''
|
||||
basePath=`echo $cc/lib/*/*/*`
|
||||
ccCFlags+=" -B$basePath -I$basePath/adainclude"
|
||||
gnatCFlags="-aI$basePath/adainclude -aO$basePath/adalib"
|
||||
echo "$gnatCFlags" > $out/nix-support/gnat-cflags
|
||||
''}
|
||||
|
||||
echo "$gccLDFlags" > $out/nix-support/gcc-ldflags
|
||||
echo "$gccCFlags" > $out/nix-support/gcc-cflags
|
||||
if [ -e $ccPath/clang ]; then
|
||||
# Need files like crtbegin.o from gcc
|
||||
# It's unclear if these will ever be provided by an LLVM project
|
||||
ccCFlags="$ccCFlags -B$basePath"
|
||||
ccCFlags="$ccCFlags -isystem$cc/lib/clang/$ccVersion/include"
|
||||
fi
|
||||
|
||||
gccPath="$gcc/bin"
|
||||
echo "$ccLDFlags" > $out/nix-support/cc-ldflags
|
||||
echo "$ccCFlags" > $out/nix-support/cc-cflags
|
||||
|
||||
ccPath="$cc/bin"
|
||||
ldPath="$binutils/bin"
|
||||
|
||||
# Propagate the wrapped gcc so that if you install the wrapper,
|
||||
# Propagate the wrapped cc so that if you install the wrapper,
|
||||
# you get tools like gcov, the manpages, etc. as well (including
|
||||
# for binutils and Glibc).
|
||||
echo $gcc $binutils $libc > $out/nix-support/propagated-user-env-packages
|
||||
echo $cc $binutils $libc > $out/nix-support/propagated-user-env-packages
|
||||
|
||||
echo ${toString extraPackages} > $out/nix-support/propagated-native-build-inputs
|
||||
''
|
||||
@ -136,7 +144,7 @@ stdenv.mkDerivation {
|
||||
|
||||
+ ''
|
||||
# Create a symlink to as (the assembler). This is useful when a
|
||||
# gcc-wrapper is installed in a user environment, as it ensures that
|
||||
# cc-wrapper is installed in a user environment, as it ensures that
|
||||
# the right assembler is called.
|
||||
if [ -e $ldPath/as ]; then
|
||||
ln -s $ldPath/as $out/bin/as
|
||||
@ -152,64 +160,62 @@ stdenv.mkDerivation {
|
||||
wrap ld.bfd ${./ld-wrapper.sh} $binutils/bin/ld.bfd
|
||||
fi
|
||||
|
||||
if [ -e $gccPath/gcc ]; then
|
||||
wrap gcc ${./gcc-wrapper.sh} $gccPath/gcc
|
||||
export real_cc=cc
|
||||
export real_cxx=c++
|
||||
if [ -e $ccPath/gcc ]; then
|
||||
wrap gcc ${./cc-wrapper.sh} $ccPath/gcc
|
||||
ln -s gcc $out/bin/cc
|
||||
elif [ -e $gccPath/clang ]; then
|
||||
wrap clang ${./gcc-wrapper.sh} $gccPath/clang
|
||||
export real_cc=gcc
|
||||
export real_cxx=g++
|
||||
elif [ -e $ccPath/clang ]; then
|
||||
wrap clang ${./cc-wrapper.sh} $ccPath/clang
|
||||
ln -s clang $out/bin/cc
|
||||
export real_cc=clang
|
||||
export real_cxx=clang++
|
||||
fi
|
||||
|
||||
if [ -e $gccPath/g++ ]; then
|
||||
wrap g++ ${./gcc-wrapper.sh} $gccPath/g++
|
||||
if [ -e $ccPath/g++ ]; then
|
||||
wrap g++ ${./cc-wrapper.sh} $ccPath/g++
|
||||
ln -s g++ $out/bin/c++
|
||||
elif [ -e $gccPath/clang++ ]; then
|
||||
wrap clang++ ${./gcc-wrapper.sh} $gccPath/clang++
|
||||
elif [ -e $ccPath/clang++ ]; then
|
||||
wrap clang++ ${./cc-wrapper.sh} $ccPath/clang++
|
||||
ln -s clang++ $out/bin/c++
|
||||
fi
|
||||
|
||||
if [ -e $gccPath/cpp ]; then
|
||||
wrap cpp ${./gcc-wrapper.sh} $gccPath/cpp
|
||||
if [ -e $ccPath/cpp ]; then
|
||||
wrap cpp ${./cc-wrapper.sh} $ccPath/cpp
|
||||
fi
|
||||
''
|
||||
|
||||
+ optionalString gcc.langFortran or false ''
|
||||
wrap gfortran ${./gcc-wrapper.sh} $gccPath/gfortran
|
||||
+ optionalString cc.langFortran or false ''
|
||||
wrap gfortran ${./cc-wrapper.sh} $ccPath/gfortran
|
||||
ln -sv gfortran $out/bin/g77
|
||||
ln -sv gfortran $out/bin/f77
|
||||
''
|
||||
|
||||
+ optionalString gcc.langJava or false ''
|
||||
wrap gcj ${./gcc-wrapper.sh} $gccPath/gcj
|
||||
+ optionalString cc.langJava or false ''
|
||||
wrap gcj ${./cc-wrapper.sh} $ccPath/gcj
|
||||
''
|
||||
|
||||
+ optionalString gcc.langGo or false ''
|
||||
wrap gccgo ${./gcc-wrapper.sh} $gccPath/gccgo
|
||||
+ optionalString cc.langGo or false ''
|
||||
wrap ccgo ${./cc-wrapper.sh} $ccPath/gccgo
|
||||
''
|
||||
|
||||
+ optionalString gcc.langAda or false ''
|
||||
wrap gnatgcc ${./gcc-wrapper.sh} $gccPath/gnatgcc
|
||||
wrap gnatmake ${./gnat-wrapper.sh} $gccPath/gnatmake
|
||||
wrap gnatbind ${./gnat-wrapper.sh} $gccPath/gnatbind
|
||||
wrap gnatlink ${./gnatlink-wrapper.sh} $gccPath/gnatlink
|
||||
+ optionalString cc.langAda or false ''
|
||||
wrap gnatgcc ${./cc-wrapper.sh} $ccPath/gnatgcc
|
||||
wrap gnatmake ${./gnat-wrapper.sh} $ccPath/gnatmake
|
||||
wrap gnatbind ${./gnat-wrapper.sh} $ccPath/gnatbind
|
||||
wrap gnatlink ${./gnatlink-wrapper.sh} $ccPath/gnatlink
|
||||
''
|
||||
|
||||
+ optionalString gcc.langVhdl or false ''
|
||||
ln -s $gccPath/ghdl $out/bin/ghdl
|
||||
+ optionalString cc.langVhdl or false ''
|
||||
ln -s $ccPath/ghdl $out/bin/ghdl
|
||||
''
|
||||
|
||||
+ ''
|
||||
substituteAll ${./setup-hook.sh} $out/nix-support/setup-hook
|
||||
substituteAll ${./add-flags} $out/nix-support/add-flags.sh
|
||||
cp -p ${./utils.sh} $out/nix-support/utils.sh
|
||||
|
||||
if [ -e $out/bin/clang ]; then
|
||||
echo 'export CC; : ''${CC:=clang}' >> $out/nix-support/setup-hook
|
||||
fi
|
||||
|
||||
if [ -e $out/bin/clang++ ]; then
|
||||
echo 'export CXX; : ''${CXX:=clang++}' >> $out/nix-support/setup-hook
|
||||
fi
|
||||
'';
|
||||
|
||||
# The dynamic linker has different names on different Linux platforms.
|
||||
@ -229,7 +235,7 @@ stdenv.mkDerivation {
|
||||
libc = stdenv.ccCross.libc;
|
||||
coreutils = coreutils.crossDrv;
|
||||
binutils = binutils.crossDrv;
|
||||
gcc = gcc.crossDrv;
|
||||
cc = cc.crossDrv;
|
||||
#
|
||||
# This is not the best way to do this. I think the reference should be
|
||||
# the style in the gcc-cross-wrapper, but to keep a stable stdenv now I
|
||||
@ -242,10 +248,10 @@ stdenv.mkDerivation {
|
||||
};
|
||||
|
||||
meta =
|
||||
let gcc_ = if gcc != null then gcc else {}; in
|
||||
(if gcc_ ? meta then removeAttrs gcc.meta ["priority"] else {}) //
|
||||
let cc_ = if cc != null then cc else {}; in
|
||||
(if cc_ ? meta then removeAttrs cc.meta ["priority"] else {}) //
|
||||
{ description =
|
||||
stdenv.lib.attrByPath ["meta" "description"] "System C compiler" gcc_
|
||||
stdenv.lib.attrByPath ["meta" "description"] "System C compiler" cc_
|
||||
+ " (wrapper script)";
|
||||
};
|
||||
}
|
@ -18,8 +18,8 @@ envHooks+=(addCVars)
|
||||
|
||||
# Note: these come *after* $out in the PATH (see setup.sh).
|
||||
|
||||
if [ -n "@gcc@" ]; then
|
||||
addToSearchPath PATH @gcc@/bin
|
||||
if [ -n "@cc@" ]; then
|
||||
addToSearchPath PATH @cc@/bin
|
||||
fi
|
||||
|
||||
if [ -n "@binutils@" ]; then
|
||||
@ -34,5 +34,5 @@ if [ -n "@coreutils@" ]; then
|
||||
addToSearchPath PATH @coreutils@/bin
|
||||
fi
|
||||
|
||||
export CC=cc
|
||||
export CXX=c++
|
||||
export CC=@real_cc@
|
||||
export CXX=@real_cxx@
|
@ -1,10 +1,8 @@
|
||||
{stdenv, git, cacert}: let
|
||||
urlToName = url: rev: let
|
||||
base = baseNameOf url;
|
||||
base = baseNameOf (stdenv.lib.removeSuffix "/" url);
|
||||
|
||||
matched = (builtins.match or (x: y:
|
||||
abort "This version of fetchgit requires Nix >= 1.8, please upgrade!"
|
||||
)) "(.*).git" base;
|
||||
matched = builtins.match "(.*).git" base;
|
||||
|
||||
short = builtins.substring 0 7 rev;
|
||||
|
||||
@ -12,7 +10,8 @@
|
||||
then "-${short}"
|
||||
else "";
|
||||
in "${if matched == null then base else builtins.head matched}${appendShort}";
|
||||
in {url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false
|
||||
in
|
||||
{ url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false
|
||||
, fetchSubmodules ? true
|
||||
, name ? urlToName url rev
|
||||
}:
|
||||
|
@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.raskin
|
||||
stdenv.lib.maintainers.ludo
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.raskin
|
||||
stdenv.lib.maintainers.ludo
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
kde {
|
||||
buildInputs = [ kdelibs libtool ];
|
||||
|
||||
preConfigure = "export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:${gcc}:${gcc.gcc}";
|
||||
preConfigure = "export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:${gcc}:${gcc.cc}";
|
||||
|
||||
meta = {
|
||||
description = "various KDE development utilities";
|
||||
|
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://www-sop.inria.fr/indes/fp/Bigloo/;
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo thoughtpolice ];
|
||||
maintainers = with stdenv.lib.maintainers; [ thoughtpolice ];
|
||||
|
||||
longDescription = ''
|
||||
Bigloo is a Scheme implementation devoted to one goal: enabling
|
||||
|
33
pkgs/development/compilers/clash-ghc/default.nix
Normal file
33
pkgs/development/compilers/clash-ghc/default.nix
Normal file
@ -0,0 +1,33 @@
|
||||
# This file was auto-generated by cabal2nix. Please do NOT edit manually!
|
||||
|
||||
{ cabal, bifunctors, clashLib, clashPrelude, filepath, ghcPaths
|
||||
, hashable, haskeline, lens, makeWrapper, mtl, text, transformers, unbound
|
||||
, unorderedContainers, thLift
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "clash-ghc";
|
||||
version = "0.4";
|
||||
sha256 = "0pyv8snrmy7x9gv6xna5rd5chacrdvczcjs7854b80pifhag5c2g";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
bifunctors clashLib clashPrelude filepath ghcPaths hashable
|
||||
haskeline lens mtl text transformers unbound unorderedContainers
|
||||
thLift
|
||||
];
|
||||
buildTools = [ makeWrapper ];
|
||||
postInstall = ''
|
||||
echo ${clashPrelude}
|
||||
wrapProgram $out/bin/clash \
|
||||
--add-flags "-package-db ${clashPrelude}/lib/ghc-${self.ghc.version}/package.conf.d/${clashPrelude.fname}.installedconf" \
|
||||
--add-flags "-package-db ${thLift}/lib/ghc-${self.ghc.version}/package.conf.d/${thLift.fname}.installedconf" \
|
||||
--add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"-package-db\")"
|
||||
'';
|
||||
meta = {
|
||||
homepage = "http://christiaanb.github.io/clash2";
|
||||
description = "CAES Language for Synchronous Hardware";
|
||||
license = "unknown";
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
@ -11,11 +11,11 @@ let
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ stdenv.cc.libc
|
||||
stdenv.cc.gcc
|
||||
stdenv.cc.cc
|
||||
gmp4
|
||||
ncurses
|
||||
zlib
|
||||
] + ":${stdenv.cc.gcc}/lib64";
|
||||
] + ":${stdenv.cc.cc}/lib64";
|
||||
|
||||
cryptol-bin =
|
||||
if stdenv.system == "i686-linux"
|
||||
|
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
gtk2 glib fontconfig freetype unixODBC alsaLib
|
||||
];
|
||||
|
||||
rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.gcc}/lib64";
|
||||
rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc}/lib64";
|
||||
|
||||
unpackPhase = ''
|
||||
sh $src --keep --noexec
|
||||
|
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
gtk2 glib fontconfig freetype unixODBC alsaLib
|
||||
];
|
||||
|
||||
rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.gcc}/lib64";
|
||||
rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc}/lib64";
|
||||
|
||||
unpackPhase = ''
|
||||
sh $src --keep --noexec
|
||||
|
@ -265,7 +265,6 @@ stdenv.mkDerivation ({
|
||||
|
||||
maintainers = [
|
||||
# Add your name here!
|
||||
stdenv.lib.maintainers.ludo
|
||||
stdenv.lib.maintainers.viric
|
||||
];
|
||||
|
||||
|
@ -378,7 +378,6 @@ stdenv.mkDerivation ({
|
||||
'';
|
||||
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.ludo
|
||||
stdenv.lib.maintainers.viric
|
||||
];
|
||||
|
||||
|
@ -449,7 +449,6 @@ stdenv.mkDerivation ({
|
||||
'';
|
||||
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.ludo
|
||||
stdenv.lib.maintainers.viric
|
||||
];
|
||||
|
||||
|
@ -487,7 +487,7 @@ stdenv.mkDerivation ({
|
||||
else null;
|
||||
|
||||
passthru =
|
||||
{ inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; };
|
||||
{ inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
|
||||
|
||||
inherit enableParallelBuilding enableMultilib;
|
||||
|
||||
@ -508,7 +508,7 @@ stdenv.mkDerivation ({
|
||||
compiler used in the GNU system including the GNU/Linux variant.
|
||||
'';
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ];
|
||||
maintainers = with stdenv.lib.maintainers; [ viric shlevy simons ];
|
||||
|
||||
# gnatboot is not available out of linux platforms, so we disable the darwin build
|
||||
# for the gnat (ada compiler).
|
||||
|
@ -494,7 +494,7 @@ stdenv.mkDerivation ({
|
||||
compiler used in the GNU system including the GNU/Linux variant.
|
||||
'';
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ];
|
||||
maintainers = with stdenv.lib.maintainers; [ viric shlevy simons ];
|
||||
|
||||
# gnatboot is not available out of linux platforms, so we disable the darwin build
|
||||
# for the gnat (ada compiler).
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user