diff --git a/doc/meta.xml b/doc/meta.xml index e91f94d15c2..fc0ff977792 100644 --- a/doc/meta.xml +++ b/doc/meta.xml @@ -84,8 +84,7 @@ hello-2.3 A program that produces a familiar, friendly greeting
Standard meta-attributes -The following meta-attributes have a standard -interpretation: +It is expected that each meta-attribute is one of the following: @@ -112,12 +111,23 @@ interpretation: package. + + version + Package version. + + homepage The package’s homepage. Example: http://www.gnu.org/software/hello/manual/ + + downloadPage + The page where a link to the current version can be found. Example: + http://ftp.gnu.org/gnu/hello/ + + license The license for the package. One from the @@ -195,6 +205,16 @@ meta.hydraPlatforms = []; they are fixed. + + updateWalker + If set to true, the package is + tested to be updated correctly by the update-walker.sh + script without additional settings. Such packages have + meta.version set and their homepage (or + the page specified by meta.downloadPage) contains + a direct link to the package tarball. + + @@ -256,9 +276,9 @@ to indicate the specific license: - +
- + diff --git a/nixos/doc/manual/man-nixos-option.xml b/nixos/doc/manual/man-nixos-option.xml index 7952847d4db..554b2969180 100644 --- a/nixos/doc/manual/man-nixos-option.xml +++ b/nixos/doc/manual/man-nixos-option.xml @@ -17,11 +17,6 @@ nixos-option - - - - - option.name @@ -31,50 +26,13 @@ This command evaluates the configuration specified in /etc/nixos/configuration.nix and returns the properties -of the option name given as argument. By default, it returns the value of -the option. +of the option name given as argument. When the option name is not an option, the command prints the list of attributes contained in the attribute set. -Options - -This command accepts the following options: - - - - - , - - Returns the value of the option. This is the default operation - if no other options are defined. - - - - - , - - Return the default value, the example and the description of the - option when available. - - - - - , - - Return the locations where the option is declared and where it - is defined. This is extremely useful to find sources of errors in - your configuration. - - - - - - - - Environment @@ -103,27 +61,21 @@ grub initScript $ nixos-option boot.loader.grub.enable -true +Value: +true -Prints option information: +Default: +true -$ nixos-option -d networking.hostName -Default: "nixos" Description: -The name of the machine. Leave it empty if you want to obtain -it from a DHCP server (if using DHCP). +Whether to enable the GNU GRUB boot loader. -Find the locations which are declaring and defining an option: - -$ nixos-option -l hardware.firmware Declared by: - /mnt/data/nix-sources/nixos/modules/services/hardware/udev.nix + "/path/to/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" Defined by: - /path/to/nixpkgs/nixos/modules/system/boot/kernel.nix - /path/to/nixpkgs/nixos/modules/hardware/network/rt73.nix - /path/to/nixpkgs/nixos/modules/hardware/network/intel-3945abg.nix - /path/to/nixpkgs/nixos/modules/hardware/network/intel-2200bg.nix + "/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/system/boot/loader/grub/grub.nix" + diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix index 1b84bbaf10c..fb5715022b7 100644 --- a/nixos/modules/config/pulseaudio.nix +++ b/nixos/modules/config/pulseaudio.nix @@ -10,10 +10,12 @@ let systemWide = cfg.enable && cfg.systemWide; nonSystemWide = cfg.enable && !cfg.systemWide; - uid = config.ids.uids.pulseaudio; - gid = config.ids.gids.pulseaudio; + ids = config.ids; - stateDir = "/run/pulse"; + uid = ids.uids.pulseaudio; + gid = ids.gids.pulseaudio; + + stateDir = "/var/run/pulse"; # Create pulse/client.conf even if PulseAudio is disabled so # that we can disable the autospawn feature in programs that @@ -138,6 +140,8 @@ in { group = "pulse"; extraGroups = [ "audio" ]; description = "PulseAudio system service user"; + home = stateDir; + createHome = true; }; users.extraGroups.pulse.gid = gid; @@ -147,10 +151,6 @@ in { wantedBy = [ "sound.target" ]; before = [ "sound.target" ]; environment.PULSE_RUNTIME_PATH = stateDir; - preStart = '' - mkdir -p --mode 755 ${stateDir} - chown -R pulse:pulse ${stateDir} - ''; serviceConfig = { ExecStart = "${cfg.package}/bin/pulseaudio -D --log-level=${cfg.daemon.logLevel} --system --use-pid-file -n --file=${cfg.configFile}"; PIDFile = "${stateDir}/pid"; diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix index 623cfdedd26..22f31c46080 100644 --- a/nixos/modules/installer/cd-dvd/iso-image.nix +++ b/nixos/modules/installer/cd-dvd/iso-image.nix @@ -11,7 +11,7 @@ let # The Grub image. grubImage = pkgs.runCommand "grub_eltorito" {} '' - ${pkgs.grub2}/bin/grub-mkimage -O i386-pc -o tmp biosdisk iso9660 help linux linux16 chain png jpeg echo gfxmenu reboot + ${pkgs.grub2}/bin/grub-mkimage -p /boot/grub -O i386-pc -o tmp biosdisk iso9660 help linux linux16 chain png jpeg echo gfxmenu reboot cat ${pkgs.grub2}/lib/grub/*/cdboot.img tmp > $out ''; # */ diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index c507f7f979f..e8f100d6498 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -20,6 +20,13 @@ sub uniq { return @res; } +sub runCommand { + my ($cmd) = @_; + open FILE, "$cmd 2>&1 |" or die "Failed to execute: $cmd\n"; + my @ret = ; + close FILE; + return ($?, @ret); +} # Process the command line. my $outDir = "/etc/nixos"; @@ -304,10 +311,13 @@ foreach my $fs (read_file("/proc/self/mountinfo")) { # Maybe this is a bind-mount of a filesystem we saw earlier? if (defined $fsByDev{$fields[2]}) { - my $path = $fields[3]; $path = "" if $path eq "/"; - my $base = $fsByDev{$fields[2]}; - $base = "" if $base eq "/"; - $fileSystems .= < 0) { + die "Btrfs subvol name for $mountPoint listed multiple times in mount\n" + } elsif ($#ids == 0) { + my ($status, @path_info) = runCommand("btrfs subvol list $rootDir$mountPoint"); + if ($status != 0) { + die "Failed to find $mountPoint subvolume id from btrfs\n"; + } + my @paths = join("", @path_info) =~ m/ID $ids[0] [^\n]* path ([^\n]*)/; + if ($#paths > 0) { + die "Btrfs returned multiple paths for a single subvolume id, mountpoint $mountPoint\n"; + } elsif ($#paths != 0) { + die "Btrfs did not return a path for the subvolume at $mountPoint\n"; + } + push @extraOptions, "subvol=$paths[0]"; + } + } + # Emit the filesystem. $fileSystems .= < # * install the boot loader +# Ensure a consistent umask. +umask 0022 + # Re-exec ourselves in a private mount namespace so that our bind # mounts get cleaned up automatically. if [ "$(id -u)" = 0 ]; then @@ -243,7 +246,7 @@ chroot $mountPoint /nix/var/nix/profiles/system/activate # Ask the user to set a root password. if [ -t 0 ] ; then echo "setting root password..." - chroot $mountPoint passwd + chroot $mountPoint /var/setuid-wrappers/passwd fi diff --git a/nixos/modules/installer/tools/nixos-option.sh b/nixos/modules/installer/tools/nixos-option.sh index edc94d73208..d995787c76f 100644 --- a/nixos/modules/installer/tools/nixos-option.sh +++ b/nixos/modules/installer/tools/nixos-option.sh @@ -11,9 +11,6 @@ usage () { # Process Arguments # ##################### -desc=false -defs=false -value=false xml=false verbose=false @@ -24,14 +21,11 @@ for arg; do if test -z "$argfun"; then case $arg in -*) - longarg="" sarg="$arg" + longarg="" while test "$sarg" != "-"; do case $sarg in --*) longarg=$arg; sarg="--";; - -d*) longarg="$longarg --description";; - -v*) longarg="$longarg --value";; - -l*) longarg="$longarg --lookup";; -*) usage;; esac # remove the first letter option @@ -42,9 +36,6 @@ for arg; do esac for larg in $longarg; do case $larg in - --description) desc=true;; - --value) value=true;; - --lookup) defs=true;; --xml) xml=true;; --verbose) verbose=true;; --help) usage;; @@ -67,16 +58,6 @@ for arg; do fi done -if $xml; then - value=true - desc=true - defs=true -fi - -if ! $defs && ! $desc; then - value=true -fi - if $verbose; then set -x else @@ -95,8 +76,7 @@ evalAttr(){ local prefix="$1" local strict="$2" local suffix="$3" - echo "(import {}).$prefix${option:+.$option}${suffix:+.$suffix}" | - evalNix ${strict:+--strict} + echo "(import {}).$prefix${option:+.$option}${suffix:+.$suffix}" | evalNix ${strict:+--strict} } evalOpt(){ @@ -189,35 +169,35 @@ EOF fi if test "$(evalOpt "_type" 2> /dev/null)" = '"option"'; then - $value && evalCfg 1 + echo "Value:" + evalCfg 1 - if $desc; then - $value && echo; + echo - if default=$(evalOpt "default" - 2> /dev/null); then - echo "Default: $default" - else - echo "Default: " - fi - if example=$(evalOpt "example" - 2> /dev/null); then - echo "Example: $example" - fi - echo "Description:" - eval printf $(evalOpt "description") + echo "Default:" + if default=$(evalOpt "default" - 2> /dev/null); then + echo "$default" + else + echo "" fi - - if $defs; then - $desc || $value && echo; - - printPath () { echo " $1"; } - - echo "Declared by:" - nixMap printPath "$(findSources "declarations")" - echo "" - echo "Defined by:" - nixMap printPath "$(findSources "files")" - echo "" + echo + if example=$(evalOpt "example" - 2> /dev/null); then + echo "Example: $example" fi + echo "Description:" + echo + eval printf $(evalOpt "description") + + echo $desc; + + printPath () { echo " $1"; } + + echo "Declared by:" + nixMap printPath "$(findSources "declarations")" + echo + echo "Defined by:" + nixMap printPath "$(findSources "files")" + echo else # echo 1>&2 "Warning: This value is not an option." diff --git a/nixos/modules/installer/tools/tools.nix b/nixos/modules/installer/tools/tools.nix index 39da2f1f0be..91a30695a7a 100644 --- a/nixos/modules/installer/tools/tools.nix +++ b/nixos/modules/installer/tools/tools.nix @@ -38,6 +38,7 @@ let nixos-generate-config = makeProg { name = "nixos-generate-config"; src = ./nixos-generate-config.pl; + path = [ pkgs.btrfsProgs ]; perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl"; }; diff --git a/nixos/modules/installer/virtualbox-demo.nix b/nixos/modules/installer/virtualbox-demo.nix index f68f8dc40aa..49ec0899610 100644 --- a/nixos/modules/installer/virtualbox-demo.nix +++ b/nixos/modules/installer/virtualbox-demo.nix @@ -10,6 +10,9 @@ with lib; ../profiles/clone-config.nix ]; + # FIXME: UUID detection is currently broken + boot.loader.grub.fsIdentifier = "provided"; + # Allow mounting of shared folders. users.extraUsers.demo.extraGroups = [ "vboxsf" ]; diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index efd8b253cd4..37531ad1cdf 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -150,6 +150,7 @@ zookeeper = 140; dnsmasq = 141; uhub = 142; + yandexdisk=143; # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399! diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix old mode 100644 new mode 100755 index 76d1ed8a9d4..61a98ca12ff --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -161,10 +161,13 @@ ./services/misc/folding-at-home.nix ./services/misc/gitolite.nix ./services/misc/gpsd.nix + ./services/misc/mesos-master.nix + ./services/misc/mesos-slave.nix ./services/misc/nix-daemon.nix ./services/misc/nix-gc.nix ./services/misc/nixos-manual.nix ./services/misc/nix-ssh-serve.nix + ./services/misc/phd.nix ./services/misc/rippled.nix ./services/misc/rogue.nix ./services/misc/siproxd.nix @@ -192,6 +195,8 @@ ./services/network-filesystems/openafs-client/default.nix ./services/network-filesystems/rsyncd.nix ./services/network-filesystems/samba.nix + ./services/network-filesystems/diod.nix + ./services/network-filesystems/yandex-disk.nix ./services/networking/amuled.nix ./services/networking/atftpd.nix ./services/networking/avahi-daemon.nix diff --git a/nixos/modules/services/misc/mesos-master.nix b/nixos/modules/services/misc/mesos-master.nix new file mode 100644 index 00000000000..bdf88d427c5 --- /dev/null +++ b/nixos/modules/services/misc/mesos-master.nix @@ -0,0 +1,103 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.mesos.master; + +in { + + options.services.mesos = { + + master = { + enable = mkOption { + description = "Whether to enable the Mesos Master."; + default = false; + type = types.uniq types.bool; + }; + + port = mkOption { + description = "Mesos Master port"; + default = 5050; + type = types.int; + }; + + zk = mkOption { + description = '' + ZooKeeper URL (used for leader election amongst masters). + May be one of: + zk://host1:port1,host2:port2,.../mesos + zk://username:password@host1:port1,host2:port2,.../mesos + ''; + type = types.str; + }; + + workDir = mkOption { + description = "The Mesos work directory."; + default = "/var/lib/mesos/master"; + type = types.str; + }; + + extraCmdLineOptions = mkOption { + description = '' + Extra command line options for Mesos Master. + + See https://mesos.apache.org/documentation/latest/configuration/ + ''; + default = [ "" ]; + type = types.listOf types.string; + example = [ "--credentials=VALUE" ]; + }; + + quorum = mkOption { + description = '' + The size of the quorum of replicas when using 'replicated_log' based + registry. It is imperative to set this value to be a majority of + masters i.e., quorum > (number of masters)/2. + + If 0 will fall back to --registry=in_memory. + ''; + default = 0; + type = types.int; + }; + + logLevel = mkOption { + description = '' + The logging level used. Possible values: + 'INFO', 'WARNING', 'ERROR' + ''; + default = "INFO"; + type = types.str; + }; + + }; + + + }; + + + config = mkIf cfg.enable { + systemd.services.mesos-master = { + description = "Mesos Master"; + wantedBy = [ "multi-user.target" ]; + after = [ "network-interfaces.target" ]; + serviceConfig = { + ExecStart = '' + ${pkgs.mesos}/bin/mesos-master \ + --port=${toString cfg.port} \ + --zk=${cfg.zk} \ + ${if cfg.quorum == 0 then "--registry=in_memory" else "--registry=replicated_log --quorum=${cfg.quorum}"} \ + --work_dir=${cfg.workDir} \ + --logging_level=${cfg.logLevel} \ + ${toString cfg.extraCmdLineOptions} + ''; + PermissionsStartOnly = true; + }; + preStart = '' + mkdir -m 0700 -p ${cfg.workDir} + ''; + }; + }; + +} + diff --git a/nixos/modules/services/misc/mesos-slave.nix b/nixos/modules/services/misc/mesos-slave.nix new file mode 100644 index 00000000000..e9a89816716 --- /dev/null +++ b/nixos/modules/services/misc/mesos-slave.nix @@ -0,0 +1,93 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.mesos.slave; + +in { + + options.services.mesos = { + slave = { + enable = mkOption { + description = "Whether to enable the Mesos Slave."; + default = false; + type = types.uniq types.bool; + }; + + port = mkOption { + description = "Mesos Slave port"; + default = 5051; + type = types.int; + }; + + master = mkOption { + description = '' + May be one of: + zk://host1:port1,host2:port2,.../path + zk://username:password@host1:port1,host2:port2,.../path + ''; + type = types.str; + }; + + withHadoop = mkOption { + description = "Add the HADOOP_HOME to the slave."; + default = false; + type = types.bool; + }; + + workDir = mkOption { + description = "The Mesos work directory."; + default = "/var/lib/mesos/slave"; + type = types.str; + }; + + extraCmdLineOptions = mkOption { + description = '' + Extra command line options for Mesos Slave. + + See https://mesos.apache.org/documentation/latest/configuration/ + ''; + default = [ "" ]; + type = types.listOf types.string; + example = [ "--gc_delay=3days" ]; + }; + + logLevel = mkOption { + description = '' + The logging level used. Possible values: + 'INFO', 'WARNING', 'ERROR' + ''; + default = "INFO"; + type = types.str; + }; + + }; + + }; + + + config = mkIf cfg.enable { + systemd.services.mesos-slave = { + description = "Mesos Slave"; + wantedBy = [ "multi-user.target" ]; + after = [ "network-interfaces.target" ]; + serviceConfig = { + ExecStart = '' + ${pkgs.mesos}/bin/mesos-slave \ + --port=${toString cfg.port} \ + --master=${cfg.master} \ + ${optionalString cfg.withHadoop "--hadoop-home=${pkgs.hadoop}"} \ + --work_dir=${cfg.workDir} \ + --logging_level=${cfg.logLevel} \ + ${toString cfg.extraCmdLineOptions} + ''; + PermissionsStartOnly = true; + }; + preStart = '' + mkdir -m 0700 -p ${cfg.workDir} + ''; + }; + }; + +} \ No newline at end of file diff --git a/nixos/modules/services/misc/phd.nix b/nixos/modules/services/misc/phd.nix new file mode 100644 index 00000000000..e605ce5de16 --- /dev/null +++ b/nixos/modules/services/misc/phd.nix @@ -0,0 +1,52 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.services.phd; + +in + +{ + + ###### interface + + options = { + + services.phd = { + + enable = mkOption { + default = false; + description = " + Enable daemons for phabricator. + "; + }; + + }; + + }; + + ###### implementation + + config = mkIf cfg.enable { + + systemd.services.phd = { + path = [ pkgs.phabricator pkgs.php pkgs.mercurial pkgs.git pkgs.subversion ]; + + after = [ "httpd.service" ]; + wantedBy = [ "multi-user.target" ]; + + serviceConfig = { + ExecStart = "${pkgs.phabricator}/phabricator/bin/phd start"; + ExecStop = "${pkgs.phabricator}/phabricator/bin/phd stop"; + User = "wwwrun"; + RestartSec = "30s"; + Restart = "always"; + StartLimitInterval = "1m"; + }; + }; + + }; + +} diff --git a/nixos/modules/services/network-filesystems/diod.nix b/nixos/modules/services/network-filesystems/diod.nix new file mode 100644 index 00000000000..1ab5f52d438 --- /dev/null +++ b/nixos/modules/services/network-filesystems/diod.nix @@ -0,0 +1,159 @@ +{ config, lib, pkgs, ... }: +with lib; +let + cfg = config.services.diod; + + diodBool = b: if b then "1" else "0"; + + diodConfig = pkgs.writeText "diod.conf" '' + allsquash = ${diodBool cfg.allsquash} + auth_required = ${diodBool cfg.authRequired} + exportall = ${diodBool cfg.exportall} + exportopts = "${concatStringsSep "," cfg.exportopts}" + exports = { ${concatStringsSep ", " (map (s: ''"${s}"'' ) cfg.exports)} } + listen = { ${concatStringsSep ", " (map (s: ''"${s}"'' ) cfg.listen)} } + logdest = "${cfg.logdest}" + nwthreads = ${toString cfg.nwthreads} + squashuser = "${cfg.squashuser}" + statfs_passthru = ${diodBool cfg.statfsPassthru} + userdb = ${diodBool cfg.userdb} + ${cfg.extraConfig} + ''; +in +{ + options = { + services.diod = { + enable = mkOption { + type = types.bool; + default = false; + description = "Whether to enable the diod 9P file server."; + }; + + listen = mkOption { + type = types.listOf types.str; + default = [ ]; + description = '' + [ "IP:PORT" [,"IP:PORT",...] ] + List the interfaces and ports that diod should listen on. + ''; + }; + + exports = mkOption { + type = types.listOf types.path; + default = []; + description = '' + List the file systems that clients will be allowed to mount. All paths should + be fully qualified. The exports table can include two types of element: + a string element (as above), + or an alternate table element form { path="/path", opts="ro" }. + In the alternate form, the (optional) opts attribute is a comma-separated list + of export options. The two table element forms can be mixed in the exports + table. Note that although diod will not traverse file system boundaries for a + given mount due to inode uniqueness constraints, subdirectories of a file + system can be separately exported. + ''; + }; + + exportall = mkOption { + type = types.bool; + default = true; + description = '' + Export all file systems listed in /proc/mounts. If new file systems are mounted + after diod has started, they will become immediately mountable. If there is a + duplicate entry for a file system in the exports list, any options listed in + the exports entry will apply. + ''; + }; + + exportopts = mkOption { + type = types.listOf types.str; + default = []; + description = '' + Establish a default set of export options. These are overridden, not appended + to, by opts attributes in an "exports" entry. + ''; + }; + + nwthreads = mkOption { + type = types.int; + default = 16; + description = '' + Sets the (fixed) number of worker threads created to handle 9P + requests for a unique aname. + ''; + }; + + authRequired = mkOption { + type = types.bool; + default = false; + description = '' + Allow clients to connect without authentication, i.e. without a valid MUNGE credential. + ''; + }; + + userdb = mkOption { + type = types.bool; + default = false; + description = '' + This option disables password/group lookups. It allows any uid to attach and + assumes gid=uid, and supplementary groups contain only the primary gid. + ''; + }; + + allsquash = mkOption { + type = types.bool; + default = true; + description = '' + Remap all users to "nobody". The attaching user need not be present in the + password file. + ''; + }; + + squashuser = mkOption { + type = types.str; + default = "nobody"; + description = '' + Change the squash user. The squash user must be present in the password file. + ''; + }; + + logdest = mkOption { + type = types.str; + default = "syslog:daemon:err"; + description = '' + Set the destination for logging. + The value has the form of "syslog:facility:level" or "filename". + ''; + }; + + + statfsPassthru = mkOption { + type = types.bool; + default = false; + description = '' + This option configures statfs to return the host file system's type + rather than V9FS_MAGIC. + ''; + }; + + extraConfig = mkOption { + type = types.lines; + default = ""; + description = "Extra configuration options for diod.conf."; + }; + }; + }; + + config = mkIf config.services.diod.enable { + environment.systemPackages = [ pkgs.diod ]; + + systemd.services.diod = { + description = "diod 9P file server"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + serviceConfig = { + ExecStart = "${pkgs.diod}/sbin/diod -c ${diodConfig}"; + }; + }; + }; +} diff --git a/nixos/modules/services/network-filesystems/yandex-disk.nix b/nixos/modules/services/network-filesystems/yandex-disk.nix new file mode 100644 index 00000000000..df9626d17c9 --- /dev/null +++ b/nixos/modules/services/network-filesystems/yandex-disk.nix @@ -0,0 +1,104 @@ +{ config, pkgs, ... }: + +with pkgs.lib; + +let + + cfg = config.services.yandex-disk; + + dir = "/var/lib/yandex-disk"; + + u = if cfg.user != null then cfg.user else "yandexdisk"; + +in + +{ + + ###### interface + + options = { + + services.yandex-disk = { + + enable = mkOption { + default = false; + description = " + Whether to enable Yandex-disk client. See https://disk.yandex.ru/ + "; + }; + + username = mkOption { + default = ""; + type = types.string; + description = '' + Your yandex.com login name. + ''; + }; + + password = mkOption { + default = ""; + type = types.string; + description = '' + Your yandex.com password. Warning: it will be world-readable in /nix/store. + ''; + }; + + user = mkOption { + default = null; + description = '' + The user the yandex-disk daemon should run as. + ''; + }; + + directory = mkOption { + default = "/home/Yandex.Disk"; + description = "The directory to use for Yandex.Disk storage"; + }; + + }; + + }; + + + ###### implementation + + config = mkIf cfg.enable { + + users.extraUsers = mkIf (cfg.user == null) [ { + name = u; + uid = config.ids.uids.yandexdisk; + group = "nogroup"; + home = dir; + } ]; + + systemd.services.yandex-disk = { + description = "Yandex-disk server"; + + after = [ "network.target" ]; + + wantedBy = [ "multi-user.target" ]; + + # FIXME: have to specify ${directory} here as well + unitConfig.RequiresMountsFor = dir; + + script = '' + mkdir -p -m 700 ${dir} + chown ${u} ${dir} + + if ! test -d "${cfg.directory}" ; then + mkdir -p -m 755 ${cfg.directory} || + exit 1 + fi + + ${pkgs.su}/bin/su -s ${pkgs.stdenv.shell} ${u} \ + -c '${pkgs.yandex-disk}/bin/yandex-disk token -p ${cfg.password} ${cfg.username} ${dir}/token' + + ${pkgs.su}/bin/su -s ${pkgs.stdenv.shell} ${u} \ + -c '${pkgs.yandex-disk}/bin/yandex-disk start --no-daemon -a ${dir}/token -d ${cfg.directory}' + ''; + + }; + }; + +} + diff --git a/nixos/modules/services/networking/copy-com.nix b/nixos/modules/services/networking/copy-com.nix new file mode 100644 index 00000000000..36bd29109b8 --- /dev/null +++ b/nixos/modules/services/networking/copy-com.nix @@ -0,0 +1,53 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.services.copy-com; + +in + +{ + options = { + + services.copy-com = { + + enable = mkOption { + default = false; + description = " + Enable the copy.com client. + + The first time copy.com is run, it needs to be configured. Before enabling run + copy_console manually. + "; + }; + + user = mkOption { + description = "The user for which copy should run."; + }; + + debug = mkOption { + default = false; + description = "Output more."; + }; + }; + }; + + config = mkIf cfg.enable { + environment.systemPackages = [ pkgs.postfix ]; + + systemd.services."copy-com-${cfg.user}" = { + description = "Copy.com Client"; + after = [ "network.target" "local-fs.target" ]; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${pkgs.copy-com}/bin/copy_console ${if cfg.debug then "-consoleOutput -debugToConsole=dirwatch,path-watch,csm_path,csm -debug -console" else ""}"; + User = "${cfg.user}"; + }; + + }; + }; + +} + diff --git a/nixos/modules/services/networking/dnsmasq.nix b/nixos/modules/services/networking/dnsmasq.nix index d2a8af6ac8b..5c68dd89fb1 100644 --- a/nixos/modules/services/networking/dnsmasq.nix +++ b/nixos/modules/services/networking/dnsmasq.nix @@ -11,7 +11,10 @@ let conf-file=/etc/dnsmasq-conf.conf resolv-file=/etc/dnsmasq-resolv.conf ''} - ${cfg.extraConfig} + ${flip concatMapStrings cfg.servers (server: '' + server=${server} + '')} + ${cfg.extraConfig} ''; in @@ -43,12 +46,10 @@ in default = []; example = [ "8.8.8.8" "8.8.4.4" ]; description = '' - The parameter to dnsmasq -S. + The DNS servers which dnsmasq should query. ''; }; - - extraConfig = mkOption { type = types.string; default = ""; @@ -67,8 +68,8 @@ in config = mkIf config.services.dnsmasq.enable { - environment.systemPackages = [ dnsmasq ] - ++ (if cfg.resolveLocalQueries then [ pkgs.openresolv ] else []); + networking.nameservers = + optional cfg.resolveLocalQueries "127.0.0.1"; services.dbus.packages = [ dnsmasq ]; @@ -83,10 +84,14 @@ in description = "dnsmasq daemon"; after = [ "network.target" ]; wantedBy = [ "multi-user.target" ]; + path = [ dnsmasq ]; + preStart = '' + touch /etc/dnsmasq-{conf,resolv}.conf + dnsmasq --test + ''; serviceConfig = { Type = "dbus"; BusName = "uk.org.thekelleys.dnsmasq"; - ExecStartPre = "${dnsmasq}/bin/dnsmasq --test"; ExecStart = "${dnsmasq}/bin/dnsmasq -k --enable-dbus --user=dnsmasq -C ${dnsmasqConf}"; ExecReload = "${dnsmasq}/bin/kill -HUP $MAINPID"; }; diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix index e8d9d00cc0a..b6fa3b79eb2 100644 --- a/nixos/modules/services/networking/nat.nix +++ b/nixos/modules/services/networking/nat.nix @@ -75,6 +75,17 @@ in ''; }; + networking.nat.forwardPorts = mkOption { + type = types.listOf types.attrs; + default = []; + example = [ { sourcePort = 8080; destination = "10.0.0.1:80"; } ]; + description = + '' + List of forwarded ports from the external interface to + internal destinations by using DNAT. + ''; + }; + }; @@ -118,6 +129,14 @@ in -s '${range}' -o ${cfg.externalInterface} ${dest} '') cfg.internalIPs} + # NAT from external ports to internal ports. + ${concatMapStrings (fwd: '' + iptables -w -t nat -A PREROUTING \ + -i ${cfg.externalInterface} -p tcp \ + --dport ${builtins.toString fwd.sourcePort} \ + -j DNAT --to-destination ${fwd.destination} + '') cfg.forwardPorts} + echo 1 > /proc/sys/net/ipv4/ip_forward ''; diff --git a/nixos/modules/services/networking/unbound.nix b/nixos/modules/services/networking/unbound.nix index 415ff13bdda..73b10c1d561 100644 --- a/nixos/modules/services/networking/unbound.nix +++ b/nixos/modules/services/networking/unbound.nix @@ -6,8 +6,6 @@ let cfg = config.services.unbound; - username = "unbound"; - stateDir = "/var/lib/unbound"; access = concatMapStrings (x: " access-control: ${x} allow\n") cfg.allowedAccess; @@ -21,21 +19,13 @@ let confFile = pkgs.writeText "unbound.conf" '' server: directory: "${stateDir}" - username: ${username} - # make sure unbound can access entropy from inside the chroot. - # e.g. on linux the use these commands (on BSD, devfs(8) is used): - # mount --bind -n /dev/random /etc/unbound/dev/random - # and mount --bind -n /dev/log /etc/unbound/dev/log + username: unbound chroot: "${stateDir}" - # logfile: "${stateDir}/unbound.log" #uncomment to use logfile. - pidfile: "${stateDir}/unbound.pid" - verbosity: 1 # uncomment and increase to get more logging. + pidfile: "" ${interfaces} ${access} - - ${forward} - ${cfg.extraConfig} + ${forward} ''; in @@ -82,7 +72,7 @@ in environment.systemPackages = [ pkgs.unbound ]; users.extraUsers = singleton { - name = username; + name = "unbound"; uid = config.ids.uids.unbound; description = "unbound daemon user"; home = stateDir; @@ -96,8 +86,18 @@ in wants = [" nss-lookup.target" ]; wantedBy = [ "multi-user.target" ]; - path = [ pkgs.unbound ]; - serviceConfig.ExecStart = "${pkgs.unbound}/sbin/unbound -d -c ${confFile}"; + preStart = '' + mkdir -m 0755 -p ${stateDir}/dev/ + cp ${confFile} ${stateDir}/unbound.conf + chown unbound ${stateDir} + touch ${stateDir}/dev/random + ${pkgs.utillinux}/bin/mount --bind -n /dev/random ${stateDir}/dev/random + ''; + + serviceConfig = { + ExecStart = "${pkgs.unbound}/sbin/unbound -d -c ${stateDir}/unbound.conf"; + ExecStopPost="${pkgs.utillinux}/bin/umount ${stateDir}/dev/random"; + }; }; }; diff --git a/nixos/modules/services/printing/cupsd.nix b/nixos/modules/services/printing/cupsd.nix index d229c610669..8a8085cad28 100644 --- a/nixos/modules/services/printing/cupsd.nix +++ b/nixos/modules/services/printing/cupsd.nix @@ -35,7 +35,7 @@ let bindir = pkgs.buildEnv { name = "cups-progs"; paths = cfg.drivers; - pathsToLink = [ "/lib/cups" "/share/cups" "/bin" ]; + pathsToLink = [ "/lib/cups" "/share/cups" "/bin" "/etc/cups" ]; postBuild = cfg.bindirCmds; }; @@ -89,6 +89,20 @@ in ''; }; + clientConf = mkOption { + type = types.lines; + default = ""; + example = + '' + ServerName server.example.com + Encryption Never + ''; + description = '' + The contents of the client configuration. + (client.conf) + ''; + }; + drivers = mkOption { type = types.listOf types.path; example = literalExample "[ pkgs.splix ]"; @@ -124,6 +138,14 @@ in environment.systemPackages = [ cups ]; + environment.variables.CUPS_SERVERROOT = "/etc/cups"; + + environment.etc = [ + { source = pkgs.writeText "client.conf" cfg.clientConf; + target = "cups/client.conf"; + } + ]; + services.dbus.packages = [ cups ]; # Cups uses libusb to talk to printers, and does not use the diff --git a/nixos/modules/services/web-servers/apache-httpd/phabricator.nix b/nixos/modules/services/web-servers/apache-httpd/phabricator.nix index c7a9bdf68c5..e4e3aac8d41 100644 --- a/nixos/modules/services/web-servers/apache-httpd/phabricator.nix +++ b/nixos/modules/services/web-servers/apache-httpd/phabricator.nix @@ -1,35 +1,30 @@ { config, lib, pkgs, ... }: + +with lib; + let - phabricatorRoot = pkgs.stdenv.mkDerivation rec { - version = "2014-05-12"; - name = "phabricator-${version}"; - srcLibphutil = pkgs.fetchgit { - url = git://github.com/facebook/libphutil.git; - rev = "2f3b5a1cf6ea464a0250d4b1c653a795a90d2716"; - sha256 = "9598cec400984dc149162f1e648814a54ea0cd34fcd529973dc83f5486fdd9fd"; - }; - srcArcanist = pkgs.fetchgit { - url = git://github.com/facebook/arcanist.git; - rev = "54c377448db8dbc40f0ca86d43c837d30e493485"; - sha256 = "086db3c0d1154fbad23e7c6def31fd913384ee20247b329515838b669c3028e0"; - }; - srcPhabricator = pkgs.fetchgit { - url = git://github.com/facebook/phabricator.git; - rev = "1644ef185ecf1e9fca3eb6b16351ef46b19d110f"; - sha256 = "e1135e4ba76d53f48aad4161563035414ed7e878f39a8a34a875a01b41b2a084"; - }; - - buildCommand = '' - mkdir -p $out - cp -R ${srcLibphutil} $out/libphutil - cp -R ${srcArcanist} $out/arcanist - cp -R ${srcPhabricator} $out/phabricator - ''; - }; + phabricatorRoot = pkgs.phabricator; in { + enablePHP = true; extraApacheModules = [ "mod_rewrite" ]; DocumentRoot = "${phabricatorRoot}/phabricator/webroot"; + + options = { + git = mkOption { + default = true; + description = "Enable git repositories."; + }; + mercurial = mkOption { + default = true; + description = "Enable mercurial repositories."; + }; + subversion = mkOption { + default = true; + description = "Enable subversion repositories."; + }; + }; + extraConfig = '' DocumentRoot ${phabricatorRoot}/phabricator/webroot @@ -38,4 +33,18 @@ in { RewriteRule ^/favicon.ico - [L,QSA] RewriteRule ^(.*)$ /index.php?__path__=$1 [B,L,QSA] ''; + + extraServerPath = [ + "${pkgs.which}" + "${pkgs.diffutils}" + ] ++ + (if config.mercurial then ["${pkgs.mercurial}"] else []) ++ + (if config.subversion then ["${pkgs.subversion}"] else []) ++ + (if config.git then ["${pkgs.git}"] else []); + + startupScript = pkgs.writeScript "activatePhabricator" '' + mkdir -p /var/repo + chown wwwrun /var/repo + ''; + } diff --git a/nixos/modules/system/boot/loader/grub/grub.nix b/nixos/modules/system/boot/loader/grub/grub.nix index 0cc060db8f9..bc9a155ac95 100644 --- a/nixos/modules/system/boot/loader/grub/grub.nix +++ b/nixos/modules/system/boot/loader/grub/grub.nix @@ -6,7 +6,8 @@ let cfg = config.boot.loader.grub; - realGrub = if cfg.version == 1 then pkgs.grub else pkgs.grub2; + realGrub = if cfg.version == 1 then pkgs.grub + else pkgs.grub2.override { zfsSupport = cfg.zfsSupport; }; grub = # Don't include GRUB if we're only generating a GRUB menu (e.g., @@ -25,11 +26,12 @@ let inherit (cfg) version extraConfig extraPerEntryConfig extraEntries extraEntriesBeforeNixOS extraPrepareConfig configurationLimit copyKernels timeout - default devices explicitBootRoot; + default devices fsIdentifier; path = (makeSearchPath "bin" [ - pkgs.coreutils pkgs.gnused pkgs.gnugrep pkgs.findutils pkgs.diffutils + pkgs.coreutils pkgs.gnused pkgs.gnugrep pkgs.findutils pkgs.diffutils pkgs.btrfsProgs + pkgs.utillinux ]) + ":" + (makeSearchPath "sbin" [ - pkgs.mdadm + pkgs.mdadm pkgs.utillinux ]); }); @@ -209,12 +211,26 @@ in ''; }; - explicitBootRoot = mkOption { - default = ""; - type = types.str; + fsIdentifier = mkOption { + default = "uuid"; + type = types.addCheck types.str + (type: type == "uuid" || type == "label" || type == "provided"); description = '' - The relative path of /boot within the parent volume. Leave empty - if /boot is not a btrfs subvolume. + Determines how grub will identify devices when generating the + configuration file. A value of uuid / label signifies that grub + will always resolve the uuid or label of the device before using + it in the configuration. A value of provided means that grub will + use the device name as show in df or + mount. Note, zfs zpools / datasets are ignored + and will always be mounted using their labels. + ''; + }; + + zfsSupport = mkOption { + default = false; + type = types.bool; + description = '' + Whether grub should be build against libzfs. ''; }; @@ -260,6 +276,9 @@ in ${pkgs.coreutils}/bin/cp -pf "${v}" "/boot/${n}" '') config.boot.loader.grub.extraFiles); + assertions = [{ assertion = !cfg.zfsSupport || cfg.version == 2; + message = "Only grub version 2 provides zfs support";}]; + }) ]; diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index b4900358a5d..2dad8b36db3 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -1,5 +1,6 @@ use strict; use warnings; +use Class::Struct; use XML::LibXML; use File::Basename; use File::Path; @@ -27,6 +28,14 @@ sub writeFile { close FILE or die; } +sub runCommand { + my ($cmd) = @_; + open FILE, "$cmd 2>/dev/null |" or die "Failed to execute: $cmd\n"; + my @ret = ; + close FILE; + return ($?, @ret); +} + my $grub = get("grub"); my $grubVersion = int(get("version")); my $extraConfig = get("extraConfig"); @@ -39,7 +48,7 @@ my $configurationLimit = int(get("configurationLimit")); my $copyKernels = get("copyKernels") eq "true"; my $timeout = int(get("timeout")); my $defaultEntry = int(get("default")); -my $explicitBootRoot = get("explicitBootRoot"); +my $fsIdentifier = get("fsIdentifier"); $ENV{'PATH'} = get("path"); die "unsupported GRUB version\n" if $grubVersion != 1 && $grubVersion != 2; @@ -48,23 +57,114 @@ print STDERR "updating GRUB $grubVersion menu...\n"; mkpath("/boot/grub", 0, 0700); - # Discover whether /boot is on the same filesystem as / and # /nix/store. If not, then all kernels and initrds must be copied to -# /boot, and all paths in the GRUB config file must be relative to the -# root of the /boot filesystem. `$bootRoot' is the path to be -# prepended to paths under /boot. -my $bootRoot = "/boot"; -if (stat("/")->dev != stat("/boot")->dev) { - $bootRoot = ""; - $copyKernels = 1; -} elsif (stat("/boot")->dev != stat("/nix/store")->dev) { +# /boot. +if (stat("/boot")->dev != stat("/nix/store")->dev) { $copyKernels = 1; } -if ($explicitBootRoot ne "") { - $bootRoot = $explicitBootRoot; +# Discover information about the location of /boot +struct(Fs => { + device => '$', + type => '$', + mount => '$', +}); +sub GetFs { + my ($dir) = @_; + my ($status, @dfOut) = runCommand("df -T $dir"); + if ($status != 0 || $#dfOut != 1) { + die "Failed to retrieve output about $dir from `df`"; + } + my @boot = split(/[ \n\t]+/, $dfOut[1]); + return Fs->new(device => $boot[0], type => $boot[1], mount => $boot[6]); } +struct (Grub => { + path => '$', + search => '$', +}); +my $driveid = 1; +sub GrubFs { + my ($dir) = @_; + my $fs = GetFs($dir); + my $path = "/" . substr($dir, length($fs->mount)); + my $search = ""; + + if ($grubVersion > 1) { + # ZFS is completely separate logic as zpools are always identified by a label + # or custom UUID + if ($fs->type eq 'zfs') { + my $sid = index($fs->device, '/'); + + if ($sid < 0) { + $search = '--label ' . $fs->device; + $path = '/@' . $path; + } else { + $search = '--label ' . substr($fs->device, 0, $sid); + $path = '/' . substr($fs->device, $sid) . '/@' . $path; + } + } else { + my %types = ('uuid' => '--fs-uuid', 'label' => '--label'); + + if ($fsIdentifier eq 'provided') { + # If the provided dev is identifying the partition using a label or uuid, + # we should get the label / uuid and do a proper search + my @matches = $fs->device =~ m/\/dev\/disk\/by-(label|uuid)\/(.*)/; + if ($#matches > 1) { + die "Too many matched devices" + } elsif ($#matches == 1) { + $search = "$types{$matches[0]} $matches[1]" + } + } else { + # Determine the identifying type + $search = $types{$fsIdentifier} . ' '; + + # Based on the type pull in the identifier from the system + my ($status, @devInfo) = runCommand("blkid -o export @{[$fs->device]}"); + if ($status != 0) { + die "Failed to get blkid info for @{[$fs->mount]} on @{[$fs->device]}"; + } + my @matches = join("", @devInfo) =~ m/@{[uc $fsIdentifier]}=([^\n]*)/; + if ($#matches != 0) { + die "Couldn't find a $types{$fsIdentifier} for @{[$fs->device]}\n" + } + $search .= $matches[0]; + } + + # BTRFS is a special case in that we need to fix the referrenced path based on subvolumes + if ($fs->type eq 'btrfs') { + my ($status, @id_info) = runCommand("btrfs subvol show @{[$fs->mount]}"); + if ($status != 0) { + die "Failed to retrieve subvolume info for @{[$fs->mount]}\n"; + } + my @ids = join("", @id_info) =~ m/Object ID:[ \t\n]*([^ \t\n]*)/; + if ($#ids > 0) { + die "Btrfs subvol name for @{[$fs->device]} listed multiple times in mount\n" + } elsif ($#ids == 0) { + my ($status, @path_info) = runCommand("btrfs subvol list @{[$fs->mount]}"); + if ($status != 0) { + die "Failed to find @{[$fs->mount]} subvolume id from btrfs\n"; + } + my @paths = join("", @path_info) =~ m/ID $ids[0] [^\n]* path ([^\n]*)/; + if ($#paths > 0) { + die "Btrfs returned multiple paths for a single subvolume id, mountpoint @{[$fs->mount]}\n"; + } elsif ($#paths != 0) { + die "Btrfs did not return a path for the subvolume at @{[$fs->mount]}\n"; + } + $path = "/$paths[0]$path"; + } + } + } + if (not $search eq "") { + $search = "search --set=drive$driveid " . $search; + $path = "(\$drive$driveid)$path"; + $driveid += 1; + } + } + return Grub->new(path => $path, search => $search); +} +my $grubBoot = GrubFs("/boot"); +my $grubStore = GrubFs("/nix/store"); # Generate the header. my $conf .= "# Automatically generated. DO NOT EDIT THIS FILE!\n"; @@ -76,12 +176,17 @@ if ($grubVersion == 1) { "; if ($splashImage) { copy $splashImage, "/boot/background.xpm.gz" or die "cannot copy $splashImage to /boot\n"; - $conf .= "splashimage $bootRoot/background.xpm.gz\n"; + $conf .= "splashimage " . $grubBoot->path . "/background.xpm.gz\n"; } } else { + if ($copyKernels == 0) { + $conf .= " + " . $grubStore->search; + } $conf .= " + " . $grubBoot->search . " if [ -s \$prefix/grubenv ]; then load_env fi @@ -102,7 +207,7 @@ else { set timeout=$timeout fi - if loadfont $bootRoot/grub/fonts/unicode.pf2; then + if loadfont " . $grubBoot->path . "/grub/fonts/unicode.pf2; then set gfxmode=640x480 insmod gfxterm insmod vbe @@ -116,7 +221,7 @@ else { copy $splashImage, "/boot/background.png" or die "cannot copy $splashImage to /boot\n"; $conf .= " insmod png - if background_image $bootRoot/background.png; then + if background_image " . $grubBoot->path . "/background.png; then set color_normal=white/black set color_highlight=black/white else @@ -138,7 +243,7 @@ mkpath("/boot/kernels", 0, 0755) if $copyKernels; sub copyToKernelsDir { my ($path) = @_; - return $path unless $copyKernels; + return $grubStore->path . substr($path, length("/nix/store")) unless $copyKernels; $path =~ /\/nix\/store\/(.*)/ or die; my $name = $1; $name =~ s/\//-/g; my $dst = "/boot/kernels/$name"; @@ -151,7 +256,7 @@ sub copyToKernelsDir { rename $tmp, $dst or die "cannot rename $tmp to $dst\n"; } $copied{$dst} = 1; - return "$bootRoot/kernels/$name"; + return $grubBoot->path . "/kernels/$name"; } sub addEntry { @@ -178,6 +283,10 @@ sub addEntry { $conf .= " " . ($xen ? "module" : "initrd") . " $initrd\n\n"; } else { $conf .= "menuentry \"$name\" {\n"; + $conf .= $grubBoot->search . "\n"; + if ($copyKernels == 0) { + $conf .= $grubStore->search . "\n"; + } $conf .= " $extraPerEntryConfig\n" if $extraPerEntryConfig; $conf .= " multiboot $xen $xenParams\n" if $xen; $conf .= " " . ($xen ? "module" : "linux") . " $kernel $kernelParams\n"; @@ -195,7 +304,7 @@ addEntry("NixOS - Default", $defaultConfig); $conf .= "$extraEntries\n" unless $extraEntriesBeforeNixOS; # extraEntries could refer to @bootRoot@, which we have to substitute -$conf =~ s/\@bootRoot\@/$bootRoot/g; +$conf =~ s/\@bootRoot\@/$grubBoot->path/g; # Emit submenus for all system profiles. sub addProfile { diff --git a/nixos/modules/tasks/cpu-freq.nix b/nixos/modules/tasks/cpu-freq.nix index a8c63c13428..70bbee8474e 100644 --- a/nixos/modules/tasks/cpu-freq.nix +++ b/nixos/modules/tasks/cpu-freq.nix @@ -30,9 +30,7 @@ in config = mkIf (!config.boot.isContainer && config.powerManagement.cpuFreqGovernor != null) { - boot.kernelModules = [ "acpi-cpufreq" "speedstep-lib" "pcc-cpufreq" - "cpufreq_${cfg.cpuFreqGovernor}" - ]; + boot.kernelModules = [ "cpufreq_${cfg.cpuFreqGovernor}" ]; environment.systemPackages = [ cpupower ]; diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index d7deb44c407..1c4bbc16b49 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -133,7 +133,7 @@ in }; boot.initrd = mkIf inInitrd { - kernelModules = [ "spl" "zfs" ] ; + kernelModules = [ "spl" "zfs" ]; extraUtilsCommands = '' cp -v ${zfsPkg}/sbin/zfs $out/bin @@ -148,6 +148,10 @@ in ''; }; + boot.loader.grub = mkIf inInitrd { + zfsSupport = true; + }; + systemd.services."zpool-import" = { description = "Import zpools"; after = [ "systemd-udev-settle.service" ]; diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index 2adb4bcfaba..868039177d8 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -1,6 +1,7 @@ -{ config, lib, pkgs, ... }: +{ config, lib, pkgs, utils, ... }: with lib; +with utils; let @@ -10,6 +11,10 @@ let hasSits = cfg.sits != { }; hasBonds = cfg.bonds != { }; + # We must escape interfaces due to the systemd interpretation + subsystemDevice = interface: + "sys-subsystem-net-devices-${escapeSystemdPath interface}.device"; + addrOpts = v: assert v == 4 || v == 6; { @@ -138,8 +143,6 @@ let Whether this interface is virtual and should be created by tunctl. This is mainly useful for creating bridges between a host a virtual network such as VPN or a virtual machine. - - Defaults to tap device, unless interface contains "tun" in its name. ''; }; @@ -151,6 +154,15 @@ let ''; }; + virtualType = mkOption { + default = null; + type = types.nullOr (types.addCheck types.str (v: v == "tun" || v == "tap")); + description = '' + The explicit type of interface to create. Accepts tun or tap strings. + Also accepts null to implicitly detect the type of device. + ''; + }; + proxyARP = mkOption { default = false; type = types.bool; @@ -596,8 +608,8 @@ in nameValuePair "${i.name}-cfg" { description = "Configuration of ${i.name}"; wantedBy = [ "network-interfaces.target" ]; - bindsTo = [ "sys-subsystem-net-devices-${i.name}.device" ]; - after = [ "sys-subsystem-net-devices-${i.name}.device" ]; + bindsTo = [ (subsystemDevice i.name) ]; + after = [ (subsystemDevice i.name) ]; serviceConfig.Type = "oneshot"; serviceConfig.RemainAfterExit = true; path = [ pkgs.iproute pkgs.gawk ]; @@ -673,26 +685,32 @@ in ''); }; - createTunDevice = i: nameValuePair "${i.name}" + createTunDevice = i: nameValuePair "${i.name}-netdev" { description = "Virtual Network Interface ${i.name}"; requires = [ "dev-net-tun.device" ]; after = [ "dev-net-tun.device" ]; - wantedBy = [ "network.target" ]; - requiredBy = [ "sys-subsystem-net-devices-${i.name}.device" ]; - serviceConfig = - { Type = "oneshot"; - RemainAfterExit = true; - ExecStart = "${pkgs.tunctl}/bin/tunctl -t '${i.name}' -u '${i.virtualOwner}'"; - ExecStop = "${pkgs.tunctl}/bin/tunctl -d '${i.name}'"; - }; + wantedBy = [ "network.target" (subsystemDevice i.name) ]; + path = [ pkgs.iproute ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + }; + script = '' + ip tuntap add dev "${i.name}" \ + ${optionalString (i.virtualType != null) "mode ${i.virtualType}"} \ + user "${i.virtualOwner}" + ''; + postStop = '' + ip link del ${i.name} + ''; }; - createBridgeDevice = n: v: - let - deps = map (i: "sys-subsystem-net-devices-${i}.device") v.interfaces; + createBridgeDevice = n: v: nameValuePair "${n}-netdev" + (let + deps = map subsystemDevice v.interfaces; in { description = "Bridge Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -725,14 +743,14 @@ in ip link set "${n}" down brctl delbr "${n}" ''; - }; + }); - createBondDevice = n: v: - let - deps = map (i: "sys-subsystem-net-devices-${i}.device") v.interfaces; + createBondDevice = n: v: nameValuePair "${n}-netdev" + (let + deps = map subsystemDevice v.interfaces; in { description = "Bond Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -764,14 +782,14 @@ in ifenslave -d "${n}" ip link delete "${n}" ''; - }; + }); - createSitDevice = n: v: - let - deps = optional (v.dev != null) "sys-subsystem-net-devices-${v.dev}.device"; + createSitDevice = n: v: nameValuePair "${n}-netdev" + (let + deps = optional (v.dev != null) (subsystemDevice v.dev); in { description = "6-to-4 Tunnel Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -790,14 +808,14 @@ in postStop = '' ip link delete "${n}" ''; - }; + }); - createVlanDevice = n: v: - let - deps = [ "sys-subsystem-net-devices-${v.interface}.device" ]; + createVlanDevice = n: v: nameValuePair "${n}-netdev" + (let + deps = [ (subsystemDevice v.interface) ]; in { description = "Vlan Interface ${n}"; - wantedBy = [ "network.target" "sys-subsystem-net-devices-${n}.device" ]; + wantedBy = [ "network.target" (subsystemDevice n) ]; bindsTo = deps; after = deps; serviceConfig.Type = "oneshot"; @@ -812,15 +830,15 @@ in postStop = '' ip link delete "${n}" ''; - }; + }); in listToAttrs ( map configureInterface interfaces ++ map createTunDevice (filter (i: i.virtual) interfaces)) - // mapAttrs createBridgeDevice cfg.bridges - // mapAttrs createBondDevice cfg.bonds - // mapAttrs createSitDevice cfg.sits - // mapAttrs createVlanDevice cfg.vlans + // mapAttrs' createBridgeDevice cfg.bridges + // mapAttrs' createBondDevice cfg.bonds + // mapAttrs' createSitDevice cfg.sits + // mapAttrs' createVlanDevice cfg.vlans // { "network-setup" = networkSetup; }; # Set the host and domain names in the activation script. Don't diff --git a/nixos/modules/virtualisation/docker.nix b/nixos/modules/virtualisation/docker.nix index a0aa6135326..1ce066cdc73 100644 --- a/nixos/modules/virtualisation/docker.nix +++ b/nixos/modules/virtualisation/docker.nix @@ -59,6 +59,7 @@ in config = mkIf cfg.enable (mkMerge [ { environment.systemPackages = [ pkgs.docker ]; + users.extraGroups.docker.gid = config.ids.gids.docker; } (mkIf cfg.socketActivation { diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index dae3b9210a8..0c72bae35bb 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -52,6 +52,11 @@ in rec { (all nixos.tests.installer.lvm) (all nixos.tests.installer.separateBoot) (all nixos.tests.installer.simple) + (all nixos.tests.installer.simpleLabels) + (all nixos.tests.installer.simpleProvided) + (all nixos.tests.installer.btrfsSimple) + (all nixos.tests.installer.btrfsSubvols) + (all nixos.tests.installer.btrfsSubvolDefault) (all nixos.tests.ipv6) (all nixos.tests.kde4) (all nixos.tests.login) diff --git a/nixos/release.nix b/nixos/release.nix index e2b93640f91..d4e1a3737e3 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -231,7 +231,8 @@ in rec { tests.installer.simpleLabels = forAllSystems (system: (import tests/installer.nix { inherit system; }).simpleLabels.test); tests.installer.simpleProvided = forAllSystems (system: (import tests/installer.nix { inherit system; }).simpleProvided.test); tests.installer.btrfsSimple = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSimple.test); - #tests.installer.btrfsSubvols = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvols.test); + tests.installer.btrfsSubvols = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvols.test); + tests.installer.btrfsSubvolDefault = forAllSystems (system: (import tests/installer.nix { inherit system; }).btrfsSubvolDefault.test); tests.influxdb = callTest tests/influxdb.nix {}; tests.ipv6 = callTest tests/ipv6.nix {}; tests.jenkins = callTest tests/jenkins.nix {}; diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 6ee52fd63d8..66ab2567e19 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -35,8 +35,8 @@ let # The configuration to install. - makeConfig = { testChannel, useEFI, grubVersion, grubDevice }: pkgs.writeText "configuration.nix" - '' + makeConfig = { testChannel, useEFI, grubVersion, grubDevice, grubIdentifier }: + pkgs.writeText "configuration.nix" '' { config, pkgs, modulesPath, ... }: { imports = @@ -54,6 +54,7 @@ let ''} boot.loader.grub.device = "${grubDevice}"; boot.loader.grub.extraConfig = "serial; terminal_output.serial"; + boot.loader.grub.fsIdentifier = "${grubIdentifier}"; ''} environment.systemPackages = [ ${optionalString testChannel "pkgs.rlwrap"} ]; @@ -93,7 +94,7 @@ let # disk, and then reboot from the hard disk. It's parameterized with # a test script fragment `createPartitions', which must create # partitions and filesystems. - testScriptFun = { createPartitions, testChannel, useEFI, grubVersion, grubDevice }: + testScriptFun = { createPartitions, testChannel, useEFI, grubVersion, grubDevice, grubIdentifier }: let # FIXME: OVMF doesn't boot from virtio http://www.mail-archive.com/edk2-devel@lists.sourceforge.net/msg01501.html iface = if useEFI || grubVersion == 1 then "scsi" else "virtio"; @@ -161,7 +162,7 @@ let $machine->succeed("cat /mnt/etc/nixos/hardware-configuration.nix >&2"); $machine->copyFileFromHost( - "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice; } }", + "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; } }", "/mnt/etc/nixos/configuration.nix"); # Perform the installation. @@ -216,13 +217,13 @@ let makeInstallerTest = name: - { createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda" }: + { createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda", grubIdentifier ? "uuid" }: makeTest { inherit iso; name = "installer-" + name; nodes = if testChannel then { inherit webserver; } else { }; testScript = testScriptFun { - inherit createPartitions testChannel useEFI grubVersion grubDevice; + inherit createPartitions testChannel useEFI grubVersion grubDevice grubIdentifier; }; }; @@ -461,11 +462,36 @@ in { "mount LABEL=root /mnt", "btrfs subvol create /mnt/boot", "btrfs subvol create /mnt/nixos", + "btrfs subvol create /mnt/nixos/default", "umount /mnt", - "mount -o defaults,subvol=nixos LABEL=root /mnt", + "mount -o defaults,subvol=nixos/default LABEL=root /mnt", "mkdir /mnt/boot", "mount -o defaults,subvol=boot LABEL=root /mnt/boot", ); ''; }; + + # Test to see if we can detect default and aux subvolumes correctly + btrfsSubvolDefault = makeInstallerTest "btrfsSubvolDefault" { + createPartitions = '' + $machine->succeed( + "sgdisk -Z /dev/vda", + "sgdisk -n 1:0:+1M -n 2:0:+1G -N 3 -t 1:ef02 -t 2:8200 -t 3:8300 -c 3:root /dev/vda", + "mkswap /dev/vda2 -L swap", + "swapon -L swap", + "mkfs.btrfs -L root /dev/vda3", + "btrfs device scan", + "mount LABEL=root /mnt", + "btrfs subvol create /mnt/badpath", + "btrfs subvol create /mnt/badpath/boot", + "btrfs subvol create /mnt/nixos", + "btrfs subvol set-default \$(btrfs subvol list /mnt | grep 'nixos' | awk '{print \$2}') /mnt", + "umount /mnt", + "mount -o defaults LABEL=root /mnt", + "mkdir -p /mnt/badpath/boot", # Help ensure the detection mechanism is actually looking up subvolumes + "mkdir /mnt/boot", + "mount -o defaults,subvol=badpath/boot LABEL=root /mnt/boot", + ); + ''; + }; } diff --git a/nixos/tests/phabricator.nix b/nixos/tests/phabricator.nix index 53038474c91..0fe31f66502 100644 --- a/nixos/tests/phabricator.nix +++ b/nixos/tests/phabricator.nix @@ -32,9 +32,16 @@ import ./make-test.nix ({ pkgs, ... }: { }]; }; + phd = { + enable = true; + }; + mysql = { enable = true; package = pkgs.mysql; + extraOptions = '' + sql_mode=STRICT_ALL_TABLES + ''; }; }; diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix index 19b61ebc76d..de5ef055125 100644 --- a/pkgs/applications/audio/gpodder/default.nix +++ b/pkgs/applications/audio/gpodder/default.nix @@ -1,5 +1,6 @@ { pkgs, stdenv, fetchurl, python, buildPythonPackage, pythonPackages, mygpoclient, intltool, - ipodSupport ? true, libgpod, gpodderHome ? "", gpodderDownloadDir ? "" }: + ipodSupport ? true, libgpod, gpodderHome ? "", gpodderDownloadDir ? "", + gnome3, hicolor_icon_theme }: with pkgs.lib; @@ -7,14 +8,18 @@ let inherit (pythonPackages) coverage feedparser minimock sqlite3 dbus pygtk eyeD3; in buildPythonPackage rec { - name = "gpodder-3.7.0"; + name = "gpodder-3.8.0"; src = fetchurl { url = "http://gpodder.org/src/${name}.tar.gz"; - sha256 = "fa90ef4bdd3fd9eef95404f7f43f70912ae3ab4f8d24078484a2f3e11b14dc47"; + sha256 = "0731f08f4270c81872b841b55200ae80feb4502706397d0085079471fb9a8fe4"; }; - buildInputs = [ coverage feedparser minimock sqlite3 mygpoclient intltool ]; + buildInputs = [ + coverage feedparser minimock sqlite3 mygpoclient intltool + gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic + hicolor_icon_theme + ]; propagatedBuildInputs = [ feedparser dbus mygpoclient sqlite3 pygtk eyeD3 ] ++ stdenv.lib.optional ipodSupport libgpod; @@ -26,7 +31,30 @@ in buildPythonPackage rec { preFixup = '' wrapProgram $out/bin/gpodder \ ${optionalString (gpodderHome != "") "--set GPODDER_HOME ${gpodderHome}"} \ - ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} + ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} \ + --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" + ''; + + # The `wrapPythonPrograms` script in the postFixup phase breaks gpodder. The + # easiest way to fix this is to call wrapPythonPrograms and then to clean up + # the wrapped file. + postFixup = '' + wrapPythonPrograms + + if test -e $out/nix-support/propagated-build-inputs; then + ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages + fi + + createBuildInputsPth build-inputs "$buildInputStrings" + for inputsfile in propagated-build-inputs propagated-native-build-inputs; do + if test -e $out/nix-support/$inputsfile; then + createBuildInputsPth $inputsfile "$(cat $out/nix-support/$inputsfile)" + fi + done + + sed -i "$out/bin/..gpodder-wrapped-wrapped" -e '{ + /import sys; sys.argv/d + }' ''; installPhase = "DESTDIR=/ PREFIX=$out make install"; diff --git a/pkgs/applications/editors/zile/default.nix b/pkgs/applications/editors/zile/default.nix index 32d30cd4745..48839246600 100644 --- a/pkgs/applications/editors/zile/default.nix +++ b/pkgs/applications/editors/zile/default.nix @@ -1,14 +1,14 @@ -{ fetchurl, stdenv, ncurses, boehmgc, perl, help2man }: +{ fetchurl, stdenv, pkgconfig, ncurses, boehmgc, perl, help2man }: stdenv.mkDerivation rec { - name = "zile-2.4.9"; + name = "zile-2.4.11"; src = fetchurl { url = "mirror://gnu/zile/${name}.tar.gz"; - sha256 = "0j801c28ypm924rw3lqyb6khxyslg6ycrv16wmmwcam0mk3mj6f7"; + sha256 = "1k593y1xzvlj52q0gyhcx2lllws4sg84b8r9pcginjb1vjypplhz"; }; - buildInputs = [ ncurses boehmgc ]; + buildInputs = [ pkgconfig ncurses boehmgc ]; nativeBuildInputs = [ help2man perl ]; # `help2man' wants to run Zile, which fails when cross-compiling. @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { # XXX: Work around cross-compilation-unfriendly `gl_FUNC_FSTATAT' macro. preConfigure = "export gl_cv_func_fstatat_zero_flag=yes"; - meta = { + meta = with stdenv.lib; { description = "Lightweight Emacs clone"; longDescription = '' @@ -45,8 +45,10 @@ stdenv.mkDerivation rec { homepage = http://www.gnu.org/software/zile/; - license = stdenv.lib.licenses.gpl3Plus; + license = licenses.gpl3Plus; - maintainers = [ ]; + maintainers = with maintainers; [ pSub ]; + + platforms = platforms.linux; }; } diff --git a/pkgs/applications/graphics/kgraphviewer/default.nix b/pkgs/applications/graphics/kgraphviewer/default.nix new file mode 100644 index 00000000000..21caf8f8002 --- /dev/null +++ b/pkgs/applications/graphics/kgraphviewer/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchurl, kdelibs, automoc4, boost, pkgconfig, graphviz, gettext }: + +stdenv.mkDerivation rec { + name = "kgraphviewer-${version}"; + version = "2.1.90"; + + src = fetchurl { + url = "mirror://kde/unstable/kgraphviewer/${version}/src/${name}.tar.xz"; + sha256 = "13zhjs57xavzrj4nrlqs35n35ihvzij7hgbszf5fhlp2a4d4rrqs"; + }; + + buildInputs = [ kdelibs automoc4 boost pkgconfig graphviz gettext ]; + + meta = with stdenv.lib; { + description = "A Graphviz dot graph viewer for KDE"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; + }; +} + diff --git a/pkgs/applications/misc/bitcoin/altcoins.nix b/pkgs/applications/misc/bitcoin/altcoins.nix index 796cedc1ee2..2643094e2f1 100644 --- a/pkgs/applications/misc/bitcoin/altcoins.nix +++ b/pkgs/applications/misc/bitcoin/altcoins.nix @@ -80,51 +80,4 @@ in rec { }; }; - dogecoin = (buildAltcoin rec { - walletName = "dogecoin"; - version = "1.8.0"; - - src = fetchurl { - url = "https://github.com/dogecoin/dogecoin/archive/v${version}.tar.gz"; - sha256 = "8a33958c04213cd621aa3c86910477813af22512f03b47c98995d20d31f3f935"; - }; - - extraBuildInputs = [ autogen autoconf automake pkgconfig db utillinux protobuf ]; - - meta = { - description = "Wow, such coin, much shiba, very rich"; - longDescription = "wow"; - homepage = http://www.dogecoin.com/; - maintainers = [ maintainers.offline maintainers.edwtjo ]; - }; - }).override rec { - patchPhase = '' - sed -i \ - -e 's,BDB_CPPFLAGS=$,BDB_CPPFLAGS="-I${db}/include",g' \ - -e 's,BDB_LIBS=$,BDB_LIBS="-L${db}/lib",g' \ - -e 's,bdbdirlist=$,bdbdirlist="${db}/include",g' \ - src/m4/dogecoin_find_bdb51.m4 - ''; - dogeConfigure = '' - ./autogen.sh \ - && ./configure --prefix=$out \ - --with-incompatible-bdb \ - --with-boost-libdir=${boost}/lib \ - ''; - dogeInstall = '' - install -D "src/dogecoin-cli" "$out/bin/dogecoin-cli" - install -D "src/dogecoind" "$out/bin/dogecoind" - ''; - configurePhase = dogeConfigure + "--with-gui"; - installPhase = dogeInstall + "install -D src/qt/dogecoin-qt $out/bin/dogecoin-qt"; - }; - - dogecoind = dogecoin.override rec { - gui = false; - makefile = "Makefile"; - preBuild = ""; - configurePhase = dogecoin.dogeConfigure + "--without-gui"; - installPhase = dogecoin.dogeInstall; - }; - } diff --git a/pkgs/applications/misc/bitcoin/dogecoin.nix b/pkgs/applications/misc/bitcoin/dogecoin.nix new file mode 100644 index 00000000000..7ace3c161c7 --- /dev/null +++ b/pkgs/applications/misc/bitcoin/dogecoin.nix @@ -0,0 +1,71 @@ +{ fetchurl, stdenv, pkgconfig +, openssl, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf +, utillinux, autogen, autoconf, autobuild, automake, db }: + +with stdenv.lib; + +let + + mkAutotoolCoin = + { name, version, withGui, src, meta }: + + stdenv.mkDerivation { + inherit src meta; + + name = name + (toString (optional (!withGui) "d")) + "-" + version; + + buildInputs = [ autogen autoconf automake pkgconfig openssl + boost zlib miniupnpc db utillinux protobuf ] + ++ optionals withGui [ qt4 qrencode ]; + + patchPhase = '' + sed -i \ + -e 's,BDB_CPPFLAGS=$,BDB_CPPFLAGS="-I${db}/include",g' \ + -e 's,BDB_LIBS=$,BDB_LIBS="-L${db}/lib",g' \ + -e 's,bdbdirlist=$,bdbdirlist="${db}/include",g' \ + src/m4/dogecoin_find_bdb51.m4 + ''; + + configurePhase = '' + ./autogen.sh \ + && ./configure --prefix=$out \ + --with-incompatible-bdb \ + --with-boost-libdir=${boost}/lib \ + ${ if withGui then "--with-gui" else "" } + ''; + + installPhase = '' + install -D "src/dogecoin-cli" "$out/bin/dogecoin-cli" + install -D "src/dogecoind" "$out/bin/dogecoind" + ${ if withGui then "install -D src/qt/dogecoin-qt $out/bin/dogecoin-qt" else "" } + ''; + + }; + + mkDogeCoin = { withGui }: + + mkAutotoolCoin rec { + name = "dogecoin"; + version = "1.8.0"; + inherit withGui; + + src = fetchurl { + url = "https://github.com/dogecoin/dogecoin/archive/v${version}.tar.gz"; + sha256 = "8a33958c04213cd621aa3c86910477813af22512f03b47c98995d20d31f3f935"; + }; + + meta = { + description = "Wow, such coin, much shiba, very rich"; + longDescription = "wow"; + homepage = http://www.dogecoin.com/; + license = licenses.mit; + maintainers = with maintainers; [ edwtjo offline ]; + }; + }; + +in { + + dogecoin = mkDogeCoin { withGui = true; }; + dogecoind = mkDogeCoin { withGui = false; }; + +} diff --git a/pkgs/applications/misc/fme/default.nix b/pkgs/applications/misc/fme/default.nix new file mode 100644 index 00000000000..93abd13da0c --- /dev/null +++ b/pkgs/applications/misc/fme/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, pkgconfig, autoconf, automake, gettext +, fluxbox, bc, gtkmm, glibmm, libglademm, libsigcxx +}: + +stdenv.mkDerivation rec{ + + name = "fme-${version}"; + version = "1.1.3"; + + src = fetchurl { + url = "https://github.com/rdehouss/fme/archive/v${version}.tar.gz"; + sha256 = "d1c81a6a38c0faad02943ad65d6d0314bd205c6de841669a2efe43e4c503e63d"; + }; + + buildInputs = [ pkgconfig autoconf automake gettext fluxbox bc gtkmm glibmm libglademm libsigcxx ]; + + preConfigure = '' + ./autogen.sh + ''; + + meta = { + description = "Editor for Fluxbox menus"; + longDescription = '' + Fluxbox Menu Editor is a menu editor for the Window Manager Fluxbox written in C++ + with the libraries Gtkmm, Glibmm, libglademm and gettext for internationalization. + Its user-friendly interface will help you to edit, delete, move (Drag and Drop) + a row, a submenu, etc very easily. + ''; + homepage = https://github.com/rdehouss/fme/; + license = stdenv.lib.licenses.gpl2; + maintainers = [ stdenv.lib.maintainers.AndersonTorres ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/applications/misc/k3b/default.nix b/pkgs/applications/misc/k3b/default.nix index 06565065ce5..b220c9127de 100644 --- a/pkgs/applications/misc/k3b/default.nix +++ b/pkgs/applications/misc/k3b/default.nix @@ -1,5 +1,6 @@ { stdenv, fetchurl, cmake, qt4, perl, shared_mime_info, libvorbis, taglib , flac, libsamplerate, libdvdread, lame, libsndfile, libmad, gettext +, transcode, cdrdao, dvdplusrwtools, vcdimager , kdelibs, kdemultimedia, automoc4, phonon, libkcddb ? null }: @@ -20,6 +21,11 @@ stdenv.mkDerivation rec { ]; enableParallelBuilding = true; + + # at runtime, k3b needs the executables cdrdao, cdrecord, dvd+rw-format, + # eMovix, growisofs, mkisofs, normalize, readcd, transcode, vcdxbuild, + # vcdxminfo, and vcdxrip + propagatedUserEnvPkgs = [ transcode dvdplusrwtools cdrdao vcdimager ]; meta = with stdenv.lib; { description = "CD/DVD Burning Application for KDE"; diff --git a/pkgs/applications/misc/keepassx/2.0.nix b/pkgs/applications/misc/keepassx/2.0.nix index 1a79af7cb57..c39c72398f7 100644 --- a/pkgs/applications/misc/keepassx/2.0.nix +++ b/pkgs/applications/misc/keepassx/2.0.nix @@ -1,10 +1,10 @@ { stdenv, fetchurl, cmake, libgcrypt, qt4, xlibs, ... }: stdenv.mkDerivation { - name = "keepassx2-2.0alpha5"; + name = "keepassx2-2.0alpha6"; src = fetchurl { - url = "https://github.com/keepassx/keepassx/archive/2.0-alpha5.tar.gz"; - sha256 = "1vxj306zhrr38mvsy3vpjlg6d0xwlcvsi3l69nhhwzkccsc4smfm"; + url = "https://github.com/keepassx/keepassx/archive/2.0-alpha6.tar.gz"; + sha256 = "592f9995b13c4f84724fb24a0078162246397eedccd467daaf0fd3608151f2b0"; }; buildInputs = [ cmake libgcrypt qt4 xlibs.libXtst ]; diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix index 8d914c26221..df4c0ea97eb 100644 --- a/pkgs/applications/misc/synergy/default.nix +++ b/pkgs/applications/misc/synergy/default.nix @@ -6,11 +6,11 @@ assert stdenv.isLinux -> cryptopp != null; with stdenv.lib; stdenv.mkDerivation rec { - name = "synergy-1.5.0"; + name = "synergy-1.5.1"; src = fetchurl { - url = "http://synergy-project.org/files/packages/synergy-1.5.0-r2278-Source.tar.gz"; - sha256 = "097hk9v01lwzs7ly6ynadxmjh7ad68l5si7w4qmjn6z7l8b61gv6"; + url = "http://synergy-project.org/files/packages/${name}-r2398-Source.tar.gz"; + sha256 = "19q8ck15f0jgpbzlm34dzp046wf3iiwa21s1qfyj5sj7xjxwa367"; }; patches = optional stdenv.isLinux ./cryptopp.patch; diff --git a/pkgs/applications/misc/vym/default.nix b/pkgs/applications/misc/vym/default.nix index c23be51c3e8..c2dc9aed44a 100644 --- a/pkgs/applications/misc/vym/default.nix +++ b/pkgs/applications/misc/vym/default.nix @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { ''; homepage = http://www.insilmaril.de/vym/; license = stdenv.lib.licenses.gpl2; - maintainer = stdenv.lib.maintainers.AndersonTorres; + maintainer = [ stdenv.lib.maintainers.AndersonTorres ]; platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/applications/misc/xiphos/default.nix b/pkgs/applications/misc/xiphos/default.nix new file mode 100644 index 00000000000..b8cd2ff2584 --- /dev/null +++ b/pkgs/applications/misc/xiphos/default.nix @@ -0,0 +1,57 @@ +{stdenv, fetchurl, pkgconfig +, python +, intltool +, docbook2x, docbook_xml_dtd_412, libxslt +, sword, clucene_core +, gnome_doc_utils +, libgsf, gconf +, gtkhtml, libgtkhtml, libglade, scrollkeeper +, webkitgtk +, dbus_glib, enchant, isocodes, libuuid +}: + +stdenv.mkDerivation rec { + name = "xiphos-${version}"; + version = "3.2.1"; + + src = fetchurl { + url = "http://downloads.sourceforge.net/project/gnomesword/Xiphos/${version}/${name}.tar.gz"; + sha256 = "0xff31f89as1p7fn3vq8ishjhbmx6qhc25msh5ypa0zg8hm5dxbb"; + }; + + buildInputs = [ pkgconfig python intltool docbook2x docbook_xml_dtd_412 libxslt sword clucene_core gnome_doc_utils libgsf gconf gtkhtml libgtkhtml libglade scrollkeeper webkitgtk dbus_glib enchant isocodes libuuid ]; + + prePatch = '' + patchShebangs .; + ''; + + preConfigure = '' + export CLUCENE_HOME=${clucene_core}; + export SWORD_HOME=${sword}; + ''; + + configurePhase = '' + python waf configure --prefix=$out + ''; + + buildPhase = '' + python waf build + ''; + + installPhase = '' + python waf install + ''; + + meta = { + description = "A GTK Bible study tool"; + longDescription = '' + Xiphos (formerly known as GnomeSword) is a Bible study tool written for Linux, UNIX, + and Windows using GTK, offering a rich and featureful environment for reading, study, + and research using modules from The SWORD Project and elsewhere. + ''; + homepage = http://www.xiphos.org/; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = [ stdenv.lib.maintainers.AndersonTorres ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix index e23a6d94ec1..4f4a88f01c8 100644 --- a/pkgs/applications/networking/browsers/firefox/default.nix +++ b/pkgs/applications/networking/browsers/firefox/default.nix @@ -15,14 +15,14 @@ assert stdenv.gcc ? libc && stdenv.gcc.libc != null; -let version = "31.0"; in +let version = "32.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 = "a6c3e25ee3aeb7da42db2aaeb50a385d63532beb"; + sha1 = "5cb7644af9741ebcdb3a21b777362913908c8f41"; }; buildInputs = diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix index afe0600d6f7..029df7e46de 100644 --- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix +++ b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix @@ -13,6 +13,7 @@ let [ mesa xorg.libXt xorg.libX11 + xorg.libXrender cairo libpng gtk @@ -47,20 +48,20 @@ stdenv.mkDerivation rec { name = "google-talk-plugin-${version}"; # You can get the upstream version and SHA-1 hash from the following URLs: - # http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages - # http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages - version = "5.1.5.0"; + # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages | grep -E 'Version|SHA1' + # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages | grep -E 'Version|SHA1' + version = "5.4.2.0"; src = if stdenv.system == "x86_64-linux" then fetchurl { url = "${baseURL}/google-talkplugin_${version}-1_amd64.deb"; - sha1 = "fc830f4c7f5816f4578ec73e6d4aef059ad4a0b1"; + sha1 = "d75fad757750b4830c4e401ade92b4993e2a4ab2"; } else if stdenv.system == "i686-linux" then fetchurl { url = "${baseURL}/google-talkplugin_${version}-1_i386.deb"; - sha1 = "9b7043c3585b3479ba11aabb7b8af755a61df963"; + sha1 = "410872377b0bdac06b580c5e1755a3a3c712144b"; } else throw "Google Talk does not support your platform."; @@ -72,22 +73,18 @@ stdenv.mkDerivation rec { '' plugins=$out/lib/mozilla/plugins mkdir -p $plugins - cp opt/google/talkplugin/libnp*.so $plugins + cp opt/google/talkplugin/*.so $plugins - patchelf --set-rpath "${makeLibraryPath [ stdenv.gcc.gcc xorg.libX11 ]}:${stdenv.gcc.gcc}/lib64" \ - $plugins/libnpgoogletalk.so + for i in libnpgoogletalk.so libppgoogletalk.so libppo1d.so; do + patchelf --set-rpath "${makeLibraryPath [ stdenv.gcc.gcc xorg.libX11 ]}:${stdenv.gcc.gcc}/lib64" $plugins/$i + done - patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.gcc.gcc}/lib64" \ - $plugins/libnpgtpo3dautoplugin.so + for i in libgoogletalkremoting.so libnpo1d.so; do + patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.gcc.gcc}/lib64" $plugins/$i + done mkdir -p $out/libexec/google/talkplugin - cp -prd opt/google/talkplugin/{GoogleTalkPlugin,locale,windowpicker.glade} $out/libexec/google/talkplugin/ - - mkdir -p $out/libexec/google/talkplugin/lib - cp opt/google/talkplugin/lib/libCg* $out/libexec/google/talkplugin/lib/ - - patchelf --set-rpath "$out/libexec/google/talkplugin/lib" \ - $out/libexec/google/talkplugin/lib/libCgGL.so + cp -prd opt/google/talkplugin/{data,GoogleTalkPlugin,locale,remoting24x24.png,windowpicker.glade} $out/libexec/google/talkplugin/ patchelf \ --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ diff --git a/pkgs/applications/networking/copy-com/default.nix b/pkgs/applications/networking/copy-com/default.nix new file mode 100644 index 00000000000..98679e9609e --- /dev/null +++ b/pkgs/applications/networking/copy-com/default.nix @@ -0,0 +1,58 @@ +{ stdenv, coreutils, fetchurl, patchelf, gcc }: + +let + arch = if stdenv.system == "x86_64-linux" then "x86_64" + else if stdenv.system == "i686-linux" then "x86" + else if stdenv.system == "armv6-linux" then "armv6h" + else throw "Copy.com client for: ${stdenv.system} not supported!"; + + interpreter = if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2" + else if stdenv.system == "i686-linux" then "ld-linux.so.2" + else if stdenv.system == "armv6-linux" then "ld-linux.so.2" + else throw "Copy.com client for: ${stdenv.system} not supported!"; + + appdir = "opt/copy"; + +in stdenv.mkDerivation { + + name = "copy-com-1.4"; + + src = fetchurl { + # Note: copy.com doesn't version this file. Annoying. + url = "https://copy.com/install/linux/Copy.tgz"; + sha256 = "f8da6dbfdaac71c4c4e9102671cf8fbe4ac5cb1dac63464783b8b62a7939b6fa"; + }; + + buildInputs = [ coreutils patchelf ]; + + phases = "unpackPhase installPhase"; + + installPhase = '' + mkdir -p $out/opt + cp -r ${arch} "$out/${appdir}" + ensureDir "$out/bin" + ln -s "$out/${appdir}/CopyConsole" "$out/bin/copy_console" + ln -s "$out/${appdir}/CopyAgent" "$out/bin/copy_agent" + ln -s "$out/${appdir}/CopyCmd" "$out/bin/copy_cmd" + patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \ + "$out/${appdir}/CopyConsole" + + RPATH=${gcc.gcc}/lib:$out/${appdir} + echo "updating rpaths to: $RPATH" + find "$out/${appdir}" -type f -a -perm +0100 \ + -print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \; + + + + ''; + + meta = { + homepage = http://copy.com; + description = "Copy.com Client"; + # Closed Source unfortunately. + license = stdenv.lib.licenses.unfree; + maintainers = with stdenv.lib.maintainers; [ nathan-gs ]; + # NOTE: Copy.com itself only works on linux, so this is ok. + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/applications/ike/default.nix b/pkgs/applications/networking/ike/default.nix similarity index 100% rename from pkgs/applications/ike/default.nix rename to pkgs/applications/networking/ike/default.nix diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index f4d329221ff..dafc093bf05 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, makeWrapper, go, lxc, sqlite, iproute, bridge_utils, devicemapper, -btrfsProgs, iptables, bash, e2fsprogs}: +btrfsProgs, iptables, bash, e2fsprogs, xz}: stdenv.mkDerivation rec { name = "docker-${version}"; @@ -22,9 +22,9 @@ stdenv.mkDerivation rec { ''; installPhase = '' - install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/bin/docker - install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/bin/dockerinit - wrapProgram $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin" + install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/libexec/docker/docker + install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/libexec/docker/dockerinit + makeWrapper $out/libexec/docker/docker $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin:${xz}/bin" # systemd install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service diff --git a/pkgs/build-support/fetchgit/default.nix b/pkgs/build-support/fetchgit/default.nix index a17daf9a2c5..c52a26b7165 100644 --- a/pkgs/build-support/fetchgit/default.nix +++ b/pkgs/build-support/fetchgit/default.nix @@ -1,5 +1,7 @@ {stdenv, git, cacert}: -{url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false, fetchSubmodules ? true}: +{url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false, fetchSubmodules ? true +, name ? "git-export" +}: /* NOTE: fetchgit has one problem: git fetch only works for refs. @@ -26,7 +28,7 @@ assert md5 != "" || sha256 != ""; stdenv.mkDerivation { - name = "git-export"; + inherit name; builder = ./builder.sh; fetcher = ./nix-prefetch-git; buildInputs = [git]; diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index dd43068be27..41f2a59246d 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -96,10 +96,7 @@ filterExisting() { # Syntax: wrapProgram wrapProgram() { local prog="$1" - local progBasename=$(basename $prog) - local hiddenDir="$(dirname $prog)/../wrapped-bin/.$progBasename-wrapped-bin" - mkdir -p $hiddenDir - local hidden="$(cd "$hiddenDir"; pwd)/$progBasename" + local hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped mv $prog $hidden makeWrapper $hidden $prog "$@" } diff --git a/pkgs/data/fonts/baekmuk-ttf/default.nix b/pkgs/data/fonts/baekmuk-ttf/default.nix new file mode 100644 index 00000000000..acd16478fcf --- /dev/null +++ b/pkgs/data/fonts/baekmuk-ttf/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "baekmuk-ttf-2.2"; + + src = fetchurl { + url = "http://kldp.net/frs/download.php/1429/${name}.tar.gz"; + sha256 = "08ab7dffb55d5887cc942ce370f5e33b756a55fbb4eaf0b90f244070e8d51882"; + }; + + dontBuild = true; + + installPhase = let + fonts_dir = "$out/share/fonts"; + doc_dir = "$out/share/doc/${name}"; + in '' + mkdir -pv ${fonts_dir} + mkdir -pv ${doc_dir} + cp ttf/*.ttf ${fonts_dir} + cp COPYRIGHT* ${doc_dir} + ''; + + meta = { + description = "Korean font"; + homepage = "http://kldp.net/projects/baekmuk/"; + license = "BSD-like"; + }; +} + diff --git a/pkgs/data/fonts/proggyfonts/default.nix b/pkgs/data/fonts/proggyfonts/default.nix new file mode 100644 index 00000000000..1c41a92bf96 --- /dev/null +++ b/pkgs/data/fonts/proggyfonts/default.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, mkfontdir, mkfontscale }: + +# adapted from https://aur.archlinux.org/packages/proggyfonts/ + +stdenv.mkDerivation rec { + name = "proggyfonts-0.1"; + + src = fetchurl { + url = "http://kaictl.net/software/${name}.tar.gz"; + sha256 = "1plcm1sjpa3hdqhhin48fq6zmz3ndm4md72916hd8ff0w6596q0n"; + }; + + buildInputs = [ mkfontdir mkfontscale ]; + + installPhase = + '' + mkdir -p $out/share/doc/$name $out/share/fonts/misc $out/share/fonts/truetype + + cp Licence.txt $out/share/doc/$name/LICENSE + + for f in *.pcf; do + gzip -c "$f" > $out/share/fonts/misc/"$f".gz + done + cp *.bdf $out/share/fonts/misc + cp *.ttf $out/share/fonts/truetype + + for f in misc truetype; do + cd $out/share/fonts/$f + mkfontscale + mkfontdir + done + ''; + + meta = with stdenv.lib; { + homepage = http://upperbounds.net; + description = "A set of fixed-width screen fonts that are designed for code listings"; + license = licenses.mit; + platforms = platforms.all; + }; +} diff --git a/pkgs/data/fonts/symbola/default.nix b/pkgs/data/fonts/symbola/default.nix index b324e52d021..70375a22bae 100644 --- a/pkgs/data/fonts/symbola/default.nix +++ b/pkgs/data/fonts/symbola/default.nix @@ -1,7 +1,7 @@ {stdenv, fetchurl, unzip }: stdenv.mkDerivation rec { - name = "symbola-7.12"; + name = "symbola-7.17"; src = fetchurl { url = "http://users.teilar.gr/~g1951d/Symbola.zip"; diff --git a/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix b/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix index f9fbbbe56c6..8cba366faae 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/evolution/default.nix @@ -5,11 +5,11 @@ , libcanberra_gtk3, bogofilter, gst_all_1, procps, p11_kit }: stdenv.mkDerivation rec { - name = "evolution-3.12.2"; + name = "evolution-3.12.5"; src = fetchurl { url = "mirror://gnome/sources/evolution/3.12/${name}.tar.xz"; - sha256 = "60742334aaf1e3b9f044c2003c44a37be5905b166e24580e9e6e6c5ae1b9f948"; + sha256 = "08y1qiydbbk4fq8rrql9sgbwsny8bwz6f7m5kbbj5zjqvf1baksj"; }; doCheck = true; diff --git a/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix b/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix index 0909a4239db..c65a28c3446 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix @@ -4,11 +4,11 @@ , gnome3, librsvg, gdk_pixbuf, file }: stdenv.mkDerivation rec { - name = "gedit-3.12.1"; + name = "gedit-3.12.2"; src = fetchurl { url = "mirror://gnome/sources/gedit/3.12/${name}.tar.xz"; - sha256 = "8e3edc62102934a8be708b0fdf27b86368fa9ede885628283bf8e91b26bbb67f"; + sha256 = "0lxnswqa0ysr57cqh062wp41sd76p6q7y3mnkl7rligd5c8hnikm"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; diff --git a/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix b/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix index d784544a183..c5f9bdb2774 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/gnome-music/default.nix @@ -4,11 +4,11 @@ , makeWrapper, itstool, gnome3, librsvg, gst_all_1 }: stdenv.mkDerivation rec { - name = "gnome-music-3.12.2"; + name = "gnome-music-3.12.2.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-music/3.12/${name}.tar.xz"; - sha256 = "ec4807018166aabed0263cb3ffce672e1fc1a3e959f48a5ad48b8eb08ddb451a"; + sha256 = "1vwzjv5001pg37qc0sh4ph3srqwg3vgibbdlqpim9w2k70l9j34z"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; diff --git a/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix b/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix index 7fb341948be..c6ac93b1074 100644 --- a/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/empathy/default.nix @@ -11,11 +11,11 @@ # TODO: enable more features stdenv.mkDerivation rec { - name = "empathy-3.12.2"; + name = "empathy-3.12.5"; src = fetchurl { url = "mirror://gnome/sources/empathy/3.12/${name}.tar.xz"; - sha256 = "414d0c6b1a30b1afbf35ad04b0b9ff3ada3e06fab797a50a7147cdfe0905e7cd"; + sha256 = "0rhgpiv75aafmdh6r7d4ci59lnxqmmwg9hvsa5b3mk7j2d2pma86"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard diff --git a/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix index b8711f7e563..2cb1fbe90d4 100644 --- a/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/evolution-data-server/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { - name = "evolution-data-server-3.12.2"; + name = "evolution-data-server-3.12.5"; src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/3.12/${name}.tar.xz"; - sha256 = "91c95e17a8c1cd1086dafcd99a40bdf8f5993770f251f8b0a10e5395e3f5a3b6"; + sha256 = "d3a2f832f823cb2a41467926dcaec984a15b2cb51ef89cf41267e337ca750811"; }; buildInputs = with gnome3; @@ -28,6 +28,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; }; } diff --git a/pkgs/desktops/gnome-3/3.12/core/folks/default.nix b/pkgs/desktops/gnome-3/3.12/core/folks/default.nix index 47b958002a3..7e3af8405a4 100644 --- a/pkgs/desktops/gnome-3/3.12/core/folks/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/folks/default.nix @@ -5,11 +5,11 @@ # TODO: enable more folks backends stdenv.mkDerivation rec { - name = "folks-0.9.6"; + name = "folks-0.9.8"; src = fetchurl { url = "mirror://gnome/sources/folks/0.9/${name}.tar.xz"; - sha256 = "a67e055b5a2724a34a80946e2940c4c0ad708cb1f4e0a09407c6b69a5e40267f"; + sha256 = "09cbs3ihcswpi1wg8xbjmkqjbhnxa1idy1fbzmz0gah7l5mxmlfj"; }; propagatedBuildInputs = [ glib gnome3.libgee sqlite ]; diff --git a/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix b/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix index 666032f56a7..19d0c9c10e8 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gnome-calculator/default.nix @@ -3,11 +3,11 @@ , itstool, gnome3, librsvg, gdk_pixbuf }: stdenv.mkDerivation rec { - name = "gnome-calculator-3.12.1"; + name = "gnome-calculator-3.12.3"; src = fetchurl { url = "mirror://gnome/sources/gnome-calculator/3.12/${name}.tar.xz"; - sha256 = "15a75bbe19f6d2280d864f0504f6fc5b1f148fea9738b5548b64b7b8c0c64740"; + sha256 = "0bn3agh3g22iradfpzkc19a2b33b1mbf0ciy1hf2sijrczi24410"; }; NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0"; diff --git a/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix b/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix index 7377c839d1c..2a237b15c21 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gnome-user-docs/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, file, gnome3, itstool, libxml2, intltool }: stdenv.mkDerivation rec { - name = "gnome-user-docs-3.12.1"; + name = "gnome-user-docs-3.12.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-user-docs/3.12/${name}.tar.xz"; - sha256 = "bfd084d72c688d6efb0c34bb572a704cc2ce093c97a33390eaffb5e42158d418"; + sha256 = "1cj45lpa74vkbxyila3d6pn5m1gh51nljp9fjirxmzwi1h6wg7jd"; }; buildInputs = [ pkgconfig gnome3.yelp itstool libxml2 intltool ]; diff --git a/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix b/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix index a8a1c244767..9076d5c5839 100644 --- a/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/grilo-plugins/default.nix @@ -3,11 +3,11 @@ , gmime, json_glib, avahi, tracker, itstool }: stdenv.mkDerivation rec { - name = "grilo-plugins-0.2.12"; + name = "grilo-plugins-0.2.13"; src = fetchurl { url = "mirror://gnome/sources/grilo-plugins/0.2/${name}.tar.xz"; - sha256 = "15bed8a633c81b251920ab677d455433e641388f605277ca88e549cc89012b48"; + sha256 = "008jwm5ydl0k25p3d2fkcail40fj9y3qknihxb5fg941p8qlhm55"; }; installFlags = [ "GRL_PLUGINS_DIR=$(out)/lib/grilo-0.2" ]; diff --git a/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix b/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix index 6f1bfbbcfe9..9c0e3f9a0bc 100644 --- a/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/grilo/default.nix @@ -2,11 +2,11 @@ , libxml2, gnome3, gobjectIntrospection, libsoup }: stdenv.mkDerivation rec { - name = "grilo-0.2.10"; + name = "grilo-0.2.11"; src = fetchurl { url = "mirror://gnome/sources/grilo/0.2/${name}.tar.xz"; - sha256 = "559a2470fe541b0090bcfdfac7a33e92dba967727bbab6d0eca70e5636a77b25"; + sha256 = "8a52c37521de80d6caf08a519a708489b9e2b097c2758a0acaab6fbd26d30ea6"; }; configureFlags = [ "--enable-grl-pls" "--enable-grl-net" ]; diff --git a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix index 4564b0d21e1..8a89425a696 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "gtksourceview-${version}"; - version = "3.12.2"; + version = "3.12.3"; src = fetchurl { url = "mirror://gnome/sources/gtksourceview/3.12/gtksourceview-${version}.tar.xz"; - sha256 = "62a31eee00f633d7959efb7eec44049ebd0345d670265853dcd21c057f3f30ad"; + sha256 = "1xzmw9n9zbkaasl8xi7s5h49wiv5dq4qf8hr2pzjkack3ai5j6gk"; }; buildInputs = [ pkgconfig atk cairo glib gtk3 pango diff --git a/pkgs/desktops/gnome-3/3.12/core/totem/default.nix b/pkgs/desktops/gnome-3/3.12/core/totem/default.nix index 3589299df3e..49094751983 100644 --- a/pkgs/desktops/gnome-3/3.12/core/totem/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/totem/default.nix @@ -5,11 +5,11 @@ , gnome3, librsvg, gdk_pixbuf, file }: stdenv.mkDerivation rec { - name = "totem-3.12.1"; + name = "totem-3.12.2"; src = fetchurl { url = "mirror://gnome/sources/totem/3.12/${name}.tar.xz"; - sha256 = "dd168cdd4051d01131d47c24fa45bfd08b6ccf45900ac4b64bae47f6f47a35e3"; + sha256 = "1law033wxbs8v3l2fk0p1v8lf9m45dm997yhq0cmqgw10jxxiybn"; }; doCheck = true; @@ -39,8 +39,6 @@ stdenv.mkDerivation rec { rm $out/share/icons/hicolor/icon-theme.cache ''; - patches = [ ./fix_files_loss.patch ]; - meta = with stdenv.lib; { homepage = https://wiki.gnome.org/Apps/Videos; description = "Movie player for the GNOME desktop based on GStreamer"; diff --git a/pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch b/pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch deleted file mode 100644 index b85ad1efd00..00000000000 --- a/pkgs/desktops/gnome-3/3.12/core/totem/fix_files_loss.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 524c9e39a0ca6f2d1699e6e6d9ba3db1ea80d9f9 Mon Sep 17 00:00:00 2001 -From: Bastien Nocera -Date: Thu, 15 May 2014 19:28:35 +0200 -Subject: main: Fix potential data loss when removing multiple files - -We were using a list of GtkTreePaths and deleting the items one-by-one -when the user clicked the "Delete" button. But after the first deletion, -the tree model would have changed, and instead of pointing to the 2nd -item we wanted to delete, the GtkTreePath would have pointed to another -item, usually not one that we wanted to delete. - -We now use GtkTreeRowReferences, which will always point to the same -row, as long as it exists. - -https://bugzilla.gnome.org/show_bug.cgi?id=729778 - -diff --git a/src/totem-grilo.c b/src/totem-grilo.c -index 2133d77..0cff0d6 100644 ---- a/src/totem-grilo.c -+++ b/src/totem-grilo.c -@@ -2074,7 +2074,8 @@ static void - delete_foreach (gpointer data, - gpointer user_data) - { -- GtkTreePath *path = data; -+ GtkTreeRowReference *ref = data; -+ GtkTreePath *path; - GtkTreeModel *view_model = user_data; - GtkTreeIter iter; - GrlSource *source; -@@ -2085,8 +2086,11 @@ delete_foreach (gpointer data, - GtkTreeModel *model; - GtkTreeIter real_model_iter; - -- if (!gtk_tree_model_get_iter (view_model, &iter, path)) -+ path = gtk_tree_row_reference_get_path (ref); -+ if (!path || !gtk_tree_model_get_iter (view_model, &iter, path)) { -+ g_warning ("An item that was scheduled for removal isn't available any more"); - return; -+ } - - gtk_tree_model_get (view_model, &iter, - MODEL_RESULTS_CONTENT, &media, -@@ -2151,14 +2155,23 @@ delete_cb (TotemSelectionToolbar *bar, - TotemGrilo *self) - { - GtkTreeModel *model; -- GList *list; -+ GList *list, *l; - - g_signal_handlers_block_by_func (self->priv->browser, "view-selection-changed", self); - - model = gd_main_view_get_model (GD_MAIN_VIEW (self->priv->browser)); - list = gd_main_view_get_selection (GD_MAIN_VIEW (self->priv->browser)); -+ -+ /* GList of GtkTreePaths to a GList of GtkTreeRowReferences */ -+ for (l = list; l != NULL; l = l->next) { -+ GtkTreeRowReference *ref; -+ -+ ref = gtk_tree_row_reference_new (model, l->data); -+ gtk_tree_path_free (l->data); -+ l->data = ref; -+ } - g_list_foreach (list, delete_foreach, model); -- g_list_free_full (list, (GDestroyNotify) gtk_tree_path_free); -+ g_list_free_full (list, (GDestroyNotify) gtk_tree_row_reference_free); - - g_signal_handlers_unblock_by_func (self->priv->browser, "view-selection-changed", self); - --- -cgit v0.10.1 - diff --git a/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix b/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix index 79155fe9b56..cf84f511416 100644 --- a/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/tracker/default.nix @@ -8,11 +8,11 @@ , libpng, libexif, libgsf, libuuid, bzip2 }: stdenv.mkDerivation rec { - name = "tracker-1.0.1"; + name = "tracker-1.0.3"; src = fetchurl { url = "mirror://gnome/sources/tracker/1.0/${name}.tar.xz"; - sha256 = "76e7918e62526a8209f9c9226f82abe592a6332826ac7c12e6e405063181e889"; + sha256 = "11pqcldgh07mjn38dlbj6ry5qkfbpf79ln5sqx7q86hhqzh3712h"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; diff --git a/pkgs/desktops/gnome-3/3.12/core/vte/default.nix b/pkgs/desktops/gnome-3/3.12/core/vte/default.nix index 41597e47fa5..011424820e8 100644 --- a/pkgs/desktops/gnome-3/3.12/core/vte/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/vte/default.nix @@ -3,14 +3,14 @@ stdenv.mkDerivation rec { versionMajor = "0.36"; - versionMinor = "2"; + versionMinor = "3"; moduleName = "vte"; name = "${moduleName}-${versionMajor}.${versionMinor}"; src = fetchurl { url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; - sha256 = "f45eed3aed823068c7563345ea947be0e6ddb3dacd74646e6d7d26a921e04345"; + sha256 = "54e5b07be3c0f7b158302f54ee79d4de1cb002f4259b6642b79b1e0e314a959c"; }; buildInputs = [ gobjectIntrospection intltool pkgconfig gnome3.glib gnome3.gtk3 ncurses ]; diff --git a/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix b/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix index 1eb6c0e3ed2..768e8bdb36e 100644 --- a/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix +++ b/pkgs/desktops/gnome-3/3.12/misc/geary/default.nix @@ -5,11 +5,11 @@ , gnome3, librsvg, gnome_doc_utils, webkitgtk }: stdenv.mkDerivation rec { - name = "geary-0.6.0"; + name = "geary-0.6.2"; src = fetchurl { url = "mirror://gnome/sources/geary/0.6/${name}.tar.xz"; - sha256 = "44ad1dc2c81c50006c751f8e72aa817f07002188da4c29e158060524a1962715"; + sha256 = "0ap40mpj89sx82kcxlhl9gipq34ks2b70yhiv9s8zc5wg0nm7rpg"; }; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index f56ee003f50..7166d325b31 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -82,8 +82,8 @@ let version = "4.8.3"; # Antlr (optional) allows the Java `gjdoc' tool to be built. We want a # binary distribution here to allow the whole chain to be bootstrapped. javaAntlr = fetchurl { - url = http://www.antlr.org/download/antlr-3.1.3.jar; - sha256 = "1f41j0y4kjydl71lqlvr73yagrs2jsg1fjymzjz66mjy7al5lh09"; + url = http://www.antlr.org/download/antlr-4.4-complete.jar; + sha256 = "02lda2imivsvsis8rnzmbrbp8rh1kb8vmq4i67pqhkwz7lf8y6dz"; }; xlibs = [ diff --git a/pkgs/development/interpreters/elixir/default.nix b/pkgs/development/interpreters/elixir/default.nix index 59629eb2f59..0e4b5a6d9b6 100644 --- a/pkgs/development/interpreters/elixir/default.nix +++ b/pkgs/development/interpreters/elixir/default.nix @@ -46,7 +46,7 @@ stdenv.mkDerivation { ''; license = licenses.epl10; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = [ maintainers.the-kenny ]; }; } diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index eac067da282..d302a2a6e18 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, gfortran, readline, ncurses, perl, flex, texinfo, qhull , libX11, graphicsmagick, pcre, liblapack, pkgconfig, mesa, fltk , fftw, fftwSinglePrec, zlib, curl, qrupdate -, qt ? null, ghostscript ? null, llvm ? null, hdf5 ? null,glpk ? null +, qt ? null, qscintilla ? null, ghostscript ? null, llvm ? null, hdf5 ? null,glpk ? null , suitesparse ? null, gnuplot ? null, openjdk ? null, python ? null }: @@ -17,6 +17,7 @@ stdenv.mkDerivation rec { graphicsmagick pcre liblapack pkgconfig mesa fltk zlib curl fftw fftwSinglePrec qrupdate ] ++ (stdenv.lib.optional (qt != null) qt) + ++ (stdenv.lib.optional (qscintilla != null) qscintilla) ++ (stdenv.lib.optional (ghostscript != null) ghostscript) ++ (stdenv.lib.optional (llvm != null) llvm) ++ (stdenv.lib.optional (hdf5 != null) hdf5) diff --git a/pkgs/development/libraries/clutter-gst/default.nix b/pkgs/development/libraries/clutter-gst/default.nix index c73aac074e7..7cef673dbc6 100644 --- a/pkgs/development/libraries/clutter-gst/default.nix +++ b/pkgs/development/libraries/clutter-gst/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, pkgconfig, clutter, gtk3, glib, cogl }: stdenv.mkDerivation rec { - name = "clutter-gst-2.0.10"; + name = "clutter-gst-2.0.12"; src = fetchurl { url = "mirror://gnome/sources/clutter-gst/2.0/${name}.tar.xz"; - sha256 = "f00cf492a6d4f1036c70d8a0ebd2f0f47586ea9a9b49b1ffda79c9dc7eadca00"; + sha256 = "1dgzpd5l5ld622b8185c3khvvllm5hfvq4q1a1mgzhxhj8v4bwf2"; }; propagatedBuildInputs = [ clutter gtk3 glib cogl ]; diff --git a/pkgs/development/libraries/haskell/haste-compiler/default.nix b/pkgs/development/libraries/haskell/haste-compiler/default.nix index 962bf758a1e..dfedd812a20 100644 --- a/pkgs/development/libraries/haskell/haste-compiler/default.nix +++ b/pkgs/development/libraries/haskell/haste-compiler/default.nix @@ -8,8 +8,8 @@ cabal.mkDerivation (self: { pname = "haste-compiler"; - version = "0.4.1"; - sha256 = "15v4c6rxz4n0wmiys6mam8xprcdq8kxnhpwcqnljshr8wlyihn8b"; + version = "0.4.2"; + sha256 = "0agbd21c7mgzxyg6lwjl3n8w2r7xcrv3811y0x86rg7q1m7z730m"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/haskell/hindent/default.nix b/pkgs/development/libraries/haskell/hindent/default.nix new file mode 100644 index 00000000000..cef49d0b2fa --- /dev/null +++ b/pkgs/development/libraries/haskell/hindent/default.nix @@ -0,0 +1,17 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, dataDefault, haskellSrcExts, mtl, text }: + +cabal.mkDerivation (self: { + pname = "hindent"; + version = "2.1"; + sha256 = "0gvrh26d1d6d1fy4qfpwrghdrlvk82mkya8vaz0xnrs89p9gr9rz"; + isLibrary = true; + isExecutable = true; + buildDepends = [ dataDefault haskellSrcExts mtl text ]; + meta = { + description = "Extensible Haskell pretty printer"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/json-glib/default.nix b/pkgs/development/libraries/json-glib/default.nix index 7a45ca0f227..a50163c601d 100644 --- a/pkgs/development/libraries/json-glib/default.nix +++ b/pkgs/development/libraries/json-glib/default.nix @@ -7,9 +7,9 @@ stdenv.mkDerivation rec { project = "json-glib"; major = "1"; minor = "0"; - patchlevel = "0"; + patchlevel = "2"; extension = "xz"; - sha256 = "dbf558d2da989ab84a27e4e13daa51ceaa97eb959c2c2f80976c9322a8f4cdde"; + sha256 = "887bd192da8f5edc53b490ec51bf3ffebd958a671f5963e4f3af32c22e35660a"; }; configureflags= "--with-introspection" ; diff --git a/pkgs/development/libraries/liquidfun/default.nix b/pkgs/development/libraries/liquidfun/default.nix index 994c013c631..a4dc7b5e93d 100644 --- a/pkgs/development/libraries/liquidfun/default.nix +++ b/pkgs/development/libraries/liquidfun/default.nix @@ -39,8 +39,8 @@ stdenv.mkDerivation rec { [ qknight ]; - platforms = with stdenv.lib.platforms; - linux; + platforms = stdenv.lib.platforms.linux; + hydraPlatforms = []; license = stdenv.lib.licenses.bsd2; homepage = https://google.github.io/liquidfun/; }; diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix index 0355ce25c62..01967718c40 100644 --- a/pkgs/development/libraries/nspr/default.nix +++ b/pkgs/development/libraries/nspr/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl }: -let version = "4.10.6"; in +let version = "4.10.7"; in stdenv.mkDerivation { name = "nspr-${version}"; src = fetchurl { url = "http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${version}/src/nspr-${version}.tar.gz"; - sha1 = "3hzcslcfql1rg7drvcn4nmrigy7jfgwz"; + sha256 = "389af5cfa863ea9bc6de7b30c15f8a4f9bddd8002f8c6fdc8b33caef43893938"; }; preConfigure = "cd nspr"; diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix index 447030f5fcc..38eb4a93f24 100644 --- a/pkgs/development/libraries/nss/default.nix +++ b/pkgs/development/libraries/nss/default.nix @@ -11,11 +11,11 @@ let in stdenv.mkDerivation rec { name = "nss-${version}"; - version = "3.16.3"; + version = "3.16.4"; src = fetchurl { - url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_3_RTM/src/${name}.tar.gz"; - sha256 = "657711ff7a4058043b69019a66f44101d0234eae2b6b80ab900439dbf02add60"; + url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_4_RTM/src/${name}.tar.gz"; + sha256 = "adcd1e655fd9508e7f13847452fd5887a835eff882e3f0d3c42dfcd651650b77"; }; buildInputs = [ nspr perl zlib sqlite ]; diff --git a/pkgs/development/libraries/qscintilla/default.nix b/pkgs/development/libraries/qscintilla/default.nix new file mode 100644 index 00000000000..c98496e336c --- /dev/null +++ b/pkgs/development/libraries/qscintilla/default.nix @@ -0,0 +1,47 @@ +{ stdenv, fetchurl, qt }: + +stdenv.mkDerivation rec { + pname = "qscintilla"; + version = "2.8.3"; + + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/pyqt/QScintilla2/QScintilla-2.8.3/${name}.tar.gz"; + sha256 = "fb94e6d61c3ccd4bf167d5f092629e619f7069d42207469458998b761a7cf505"; + }; + + buildInputs = [ qt ]; + + preConfigure = '' + cd Qt4Qt5 + sed -i -e "s,\$\$\\[QT_INSTALL_LIBS\\],$out/libs," \ + -e "s,\$\$\\[QT_INSTALL_HEADERS\\],$out/include/," \ + -e "s,\$\$\\[QT_INSTALL_TRANSLATIONS\\],$out/share/qt/translations," \ + -e "s,\$\$\\[QT_INSTALL_DATA\\],$out/share/qt," \ + qscintilla.pro + qmake qscintilla.pro + ''; + + # TODO PyQt Support. + + meta = { + description = "A Qt port of the Scintilla text editing library"; + longDescription = '' + QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ editor + control. + + As well as features found in standard text editing components, + QScintilla includes features especially useful when editing and + debugging source code. These include support for syntax styling, + error indicators, code completion and call tips. The selection + margin can contain markers like those used in debuggers to + indicate breakpoints and the current line. Styling choices are + more open than with many editors, allowing the use of + proportional fonts, bold and italics, multiple foreground and + background colours and multiple fonts. + ''; + homepage = http://www.riverbankcomputing.com/software/qscintilla/intro; + license = stdenv.lib.licenses.gpl2; # and gpl3 and commercial + }; +} diff --git a/pkgs/development/libraries/sword/default.nix b/pkgs/development/libraries/sword/default.nix index 28afdf85dfb..5c276ead23a 100644 --- a/pkgs/development/libraries/sword/default.nix +++ b/pkgs/development/libraries/sword/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { - version = "1.7.2"; + version = "1.7.3"; name = "sword-${version}"; src = fetchurl { url = "http://www.crosswire.org/ftpmirror/pub/sword/source/v1.7/${name}.tar.gz"; - sha256 = "ac7aace0ecb7a405d4b4b211ee1ae5b2250bb5c57c9197179747c9e830787871"; + sha256 = "1sm9ivypsx3mraqnziic7qkxjx1b7crvlln0zq6cnpjx2pzqfgas"; }; buildInputs = [ pkgconfig icu clucene_core curl ]; diff --git a/pkgs/development/mobile/androidenv/addon.xml b/pkgs/development/mobile/androidenv/addon.xml index aee3c847e93..274ae734b6e 100644 --- a/pkgs/development/mobile/androidenv/addon.xml +++ b/pkgs/development/mobile/androidenv/addon.xml @@ -14,167 +14,274 @@ * See the License for the specific language governing permissions and * limitations under the License. --> - + - Terms and Conditions - -This is the Android Software Development Kit License Agreement. + To get started with the Android SDK, you must agree to the following terms and conditions. +This is the Android SDK License Agreement (the "License Agreement"). 1. Introduction - -1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. +1.1 The Android SDK (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and SDK library files and tools , if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. 1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. 1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. +2. Accepting the License Agreement -2. Accepting this License Agreement +2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement. - -2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement. - -2.2 By clicking to accept, you hereby agree to the terms of this License Agreement. +2.2 By clicking to accept and/or using the SDK, you hereby agree to the terms of the License Agreement. 2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. -2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. - +2.4 If you will use the SDK internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. 3. SDK License from Google - -3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform. +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the SDK, personally or internally within your company or organization, solely to develop and distribute applications to run on the Android platform. 3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. -3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. +3.3 You may not use the SDK for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. 3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. -3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement. +3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. 3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. -3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. 3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. - 4. Use of the SDK by You +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. -4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. +4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). -4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). +4.3 You agree that if you use the SDK to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. -4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so. - -4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier. +4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. 4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. -4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. - +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. 5. Your Developer Credentials - 5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. - 6. Privacy and Information - 6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. -6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy. - +6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. 7. Third Party Applications - 7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. 7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. -7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties. +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. +8. Using Google APIs -8. Using Android APIs - - -8.1 Google Data APIs +8.1 Google APIs 8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. 8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. +9. Terminating the License Agreement -9. Terminating this License Agreement +9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below. +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. -9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below. +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. -9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. +9.4 The License Agreement will automatically terminate without notice or other action when Google ceases to provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service. -9.3 Google may at any time, terminate this License Agreement with you if: -(A) you have breached any provision of this License Agreement; or -(B) Google is required to do so by law; or -(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or -(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable. - -9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely. - - -10. DISCLAIMER OF WARRANTIES +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the SDK, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. +10. DISCLAIMERS 10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. -10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. +10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE SDK MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. 10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - 11. LIMITATION OF LIABILITY - 11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. - 12. Indemnification - -12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement. - +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. 13. Changes to the License Agreement - 13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. - 14. General Legal Terms +14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. -14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. -14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. -14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable. - -14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement. +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. 14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. -14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party. +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. -14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. -November 13, 2012 +June 2014. + + + + To get started with the Android SDK Preview, you must agree to the following terms and conditions. +As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data. + +This is the Android SDK Preview License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview. + +2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity. + +3. Preview License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform. + +3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview. + +3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview. + +4. Use of the Preview by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of: +(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and +(B) Google issues a final release version of the Android SDK. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available. + +14. General Legal Terms + +14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. Terms and Conditions @@ -321,151 +428,6 @@ This is the Google TV Add-on for the Android Software Development Kit License Ag August 15, 2011 - This is an early Sneak Peek of the GDK that is subject to change. Please stay tuned for the full Developer Preview coming soon. - -Terms and Conditions - -This is the Glass Development Kit License Agreement. - -1. Introduction - -1.1 The Glass Development Kit (referred to in this License Agreement as the "GDK" and specifically including the Android system files, packaged APIs, and GDK library files, if and when they are made available) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the GDK. - -1.2 "Glass" means Glass devices and the Glass software stack for use on Glass devices. - - -1.3 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. - -1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. - -2. Accepting this License Agreement - -2.1 In order to use the GDK, you must first agree to this License Agreement. You may not use the GDK if you do not accept this License Agreement. - -2.2 By clicking to accept, you hereby agree to the terms of this License Agreement. - -2.3 You may not use the GDK and may not accept the License Agreement if you are a person barred from receiving the GDK under the laws of the United States or other countries including the country in which you are resident or from which you use the GDK. - -2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the GDK on behalf of your employer or other entity. - -3. GDK License from Google - -3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the GDK solely to develop applications to run on the Glass platform for Glass devices. - -3.2 You agree that Google or third parties own all legal right, title and interest in and to the GDK, including any Intellectual Property Rights that subsist in the GDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. - -3.3 You may not use the GDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the GDK or any part of the GDK; or (b) load any part of the GDK onto a mobile handset or wearable computing device or any other hardware device except a Glass device personal computer, combine any part of the GDK with other software, or distribute any software or device incorporating a part of the GDK. - -3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Glass, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the GDK. - -3.5 Use, reproduction and distribution of components of the GDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement. - -3.6 You agree that the form and nature of the GDK that Google provides may change without prior notice to you and that future versions of the GDK may be incompatible with applications developed on previous versions of the GDK. You agree that Google may stop (permanently or temporarily) providing the GDK (or any features within the GDK) to you or to users generally at Google's sole discretion, without prior notice to you. - -3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. - -3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the GDK. - - -3.9 Your use of any Android system files, packaged APIs, or other components of the GDK which are part of the Android Software Development Kit is subject to the terms of the Android Software Development Kit License Agreement located at http://developer.android.com/sdk/terms.html. These terms are hereby incorporated by reference into this License Agreement. - -4. Use of the GDK by You - -4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the GDK, including any intellectual property rights that subsist in those applications. - -4.2 You agree to use the GDK and write applications only for purposes that are permitted by (a) this License Agreement, (b) the Glass Platform Developer Policies (located at https://developers.google.com/glass/policies, and hereby incorporated into this License Agreement by reference), and (c) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). - -4.3 You agree that if you use the GDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so. - -4.4 You agree that you will not engage in any activity with the GDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google. - -4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Glass and/or applications for Glass, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. - -4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. - - -4.7 The GDK is in development, and your testing and feedback are an important part of the development process. By using the GDK, you acknowledge that implementation of some features are still under development and that you should not rely on the GDK, Glass devices, Glass system software, Google Mirror API, or Glass services having the full functionality of a stable release. - -5. Your Developer Credentials - -5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. - -6. Privacy and Information - - -6.1 In order to continually innovate and improve the GDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the GDK are being used and how they are being used. Before any of this information is collected, the GDK will notify you and seek your consent. If you withhold consent, the information will not be collected. - -6.2 The data collected is examined in the aggregate to improve the GDK and is maintained in accordance with Google's Privacy Policy. - -7. Third Party Applications - -7.1 If you use the GDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. - -7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. - -7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties. - -8. Using Google APIs - -8.1 Google APIs - -8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. - -8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. - -9. Terminating this License Agreement - -9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below. - -9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the GDK and any relevant developer credentials. - -9.3 Google may at any time, terminate this License Agreement with you if: -(A) you have breached any provision of this License Agreement; or -(B) Google is required to do so by law; or -(C) the partner with whom Google offered certain parts of GDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the GDK to you; or -(D) Google decides to no longer provide the GDK or certain parts of the GDK to users in the country in which you are resident or from which you use the service, or the provision of the GDK or certain GDK services to you by Google is, in Google's sole discretion, no longer commercially viable. - -9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely. - -10. DISCLAIMER OF WARRANTIES - -10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE GDK IS AT YOUR SOLE RISK AND THAT THE GDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. - -10.2 YOUR USE OF THE GDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE GDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. - -10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - -11. LIMITATION OF LIABILITY - -11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. - -12. Indemnification - -12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the GDK, (b) any application you develop on the GDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement. - -13. Changes to the License Agreement - -13.1 Google may make changes to the License Agreement as it distributes new versions of the GDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the GDK is made available. - -14. General Legal Terms - -14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the GDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the GDK. - -14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. - -14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable. - -14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement. - -14.5 EXPORT RESTRICTIONS. THE GDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE GDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. - -14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party. - -14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. - -November 19, 2013 - - @@ -479,7 +441,7 @@ November 19, 2013 http://developer.android.com/ - + 34908058 1f92abf3a76be66ae8032257fc7620acbd2b2e3a google_apis-3-r03.zip @@ -506,7 +468,7 @@ November 19, 2013 http://developer.android.com/ - + 42435735 9b6e86d8568558de4d606a7debc4f6049608dbd0 google_apis-4_r02.zip @@ -534,7 +496,7 @@ November 19, 2013 - + 49123776 46eaeb56b645ee7ffa24ede8fa17f3df70db0503 google_apis-5_r01.zip @@ -562,7 +524,7 @@ November 19, 2013 - + 53382941 5ff545d96e031e09580a6cf55713015c7d4936b2 google_apis-6_r01.zip @@ -589,7 +551,7 @@ November 19, 2013 http://developer.android.com/ - + 53691339 2e7f91e0fe34fef7f58aeced973c6ae52361b5ac google_apis-7_r01.zip @@ -616,7 +578,7 @@ November 19, 2013 http://developer.android.com/ - + 59505020 3079958e7ec87222cac1e6b27bc471b27bf2c352 google_apis-8_r02.zip @@ -643,7 +605,7 @@ November 19, 2013 http://developer.android.com/ - + 63401546 78664645a1e9accea4430814f8694291a7f1ea5d google_apis-9_r02.zip @@ -671,7 +633,7 @@ November 19, 2013 http://developer.android.com/ - + 65781578 cc0711857c881fa7534f90cf8cc09b8fe985484d google_apis-10_r02.zip @@ -698,7 +660,7 @@ November 19, 2013 http://developer.android.com/ - + 83477179 5eab5e81addee9f3576d456d205208314b5146a5 google_apis-11_r01.zip @@ -725,7 +687,7 @@ November 19, 2013 http://developer.android.com/ - + 86099835 e9999f4fa978812174dfeceec0721c793a636e5d google_apis-12_r01.zip @@ -752,7 +714,7 @@ November 19, 2013 http://developer.android.com/ - + 88615525 3b153edd211c27dc736c893c658418a4f9041417 google_apis-13_r01.zip @@ -785,7 +747,7 @@ November 19, 2013 - + 106533714 f8eb4d96ad0492b4c0db2d7e4f1a1a3836664d39 google_apis-14_r02.zip @@ -814,7 +776,7 @@ November 19, 2013 - + 106612472 6757c12788da0ea00c2ab58e54cb438b9f2bcf66 google_apis-15_r02.zip @@ -844,7 +806,7 @@ November 19, 2013 - + 127278413 63467dd32f471e3e81e33e9772c22f33235aa3b3 google_apis-16_r03.zip @@ -874,7 +836,7 @@ November 19, 2013 - + 137156978 8246f61d24f0408c8e7bc352a1e522b7e2b619ba google_apis-17_r03.zip @@ -904,7 +866,7 @@ November 19, 2013 - + 143149689 147bce09c1163edc17194f3db496ec1086fcf965 google_apis-18_r03.zip @@ -914,14 +876,14 @@ November 19, 2013 - + google Google Inc. google_apis - Google APIs + Google APIs (ARM System Image) Android + Google APIs 19 - 1 + 7 com.google.android.maps @@ -934,16 +896,15 @@ November 19, 2013 - - 150689239 - 6c530a8318446e4da1e3ab7d2abd154bc493bc5a - google_apis-19_r01.zip + + 160661775 + 150f5a3fec4f03313ca770b90126605619bd713c + google_apis-19_r07.zip - @@ -957,10 +918,11 @@ November 19, 2013 http://developer.android.com/ - + 78266751 92128a12e7e8b0fb5bac59153d7779b717e7b840 google_tv-12_r02.zip + linux @@ -977,7 +939,7 @@ November 19, 2013 http://developer.android.com/ - + 87721879 b73f7c66011ac8180b44aa4e83b8d78c66ea9a09 google_tv-13_r01.zip @@ -986,71 +948,48 @@ November 19, 2013 - - - - - google - Google Inc. - google_gdk - Glass Development Kit Sneak Peek - 15 - 01 - Sneak peek of the Glass Development Kit - https://developers.google.com/glass/gdk/ - - - - 281839 - a3c7317fb2fe8a0dfc06828a5aabc457372b82a7 - https://dl-ssl.google.com/glass/xe11/google-gdk.zip - - - - - com.google.android.glass - APIs for Google Glass Development Kit Sneak Peek. - - - - - - - 19 + + + 20 + 0 + 0 + Android android Android Support Library support compatibility - - 4905998 - 54b8661595856a08f032d41bb139f375a7609308 - support_r19.zip + + 5508097 + 719c260dc3eb950712988f987daaf91afa9e36af + support_r20.zip - - 3 + + + 6 + Android android Android Support Repository Local Maven repository for Support Libraries m2repository - - 6282146 - db4650f817f1507211ec6186d2d9e72074e6df12 - android_m2repository_r03.zip + + 22271942 + d4874fd330f41a7c16de392ce917c2a3562dd620 + android_m2repository_r06.zip - + @@ -1060,14 +999,16 @@ November 19, 2013 Google Inc. Google Repository m2repository - 4 + + 11 + Local Maven repository for Google Libraries - - 3891592 - c418daafd203a8cb4899d49bd321da83b927586e - google_m2repository_r04.zip + + 18832133 + 08b5114037d187cf3d4b44a25570149ef4f8ab3d + google_m2repository_r11.zip @@ -1078,11 +1019,13 @@ November 19, 2013 Google Play Licensing Library play_licensing market_licensing - 2 + + 2 + Google Play Licensing client library http://developer.android.com/guide/publishing/licensing.html - + 75109 355e8dc304a92a5616db235af8ee7bd554356254 market_licensing-r02.zip @@ -1097,11 +1040,13 @@ November 19, 2013 Google Play APK Expansion Library play_apk_expansion market_apk_expansion - 3 + + 3 + Google Play APK Expansion library http://developer.android.com/guide/market/expansion-files.html - + 110201 5305399dc1a56814e86b8459ce24871916f78b8c market_apk_expansion-r03.zip @@ -1115,12 +1060,14 @@ November 19, 2013 Google Inc. Google Play services for Froyo google_play_services_froyo - 12 + + 12 + Google Play services client library and sample code https://developers.google.com/android/google-play-services/index - + 5265389 92558dbc380bba3d55d0ec181167fb05ce7c79d9 google_play_services_3265130_r12.zip @@ -1133,34 +1080,59 @@ November 19, 2013 Google Inc. Google Play services google_play_services - 13 + + 19 + Google Play services client library and sample code https://developers.google.com/android/google-play-services/index - - 7958511 - 1be94e8f767616e862f0088ab673e1980a6022c4 - google_play_services_4030530_r13.zip + + 13982276 + 847a8806dd3c43effc2afdd7b49fc6ba27f72d5d + google_play_services_5089000_r19.zip - google Google Inc. - Google USB Driver - usb_driver - 8 - USB Driver for Windows, revision 8 - http://developer.android.com/ - + Google Play services for Fit Preview + google_play_services_fit_preview + + 1 + + Google Play services client library and sample code + https://developers.google.com/android/google-play-services/index + - - 8682230 - 2b2f91098a984a865a70f0bd841a843fb54462fc - usb_driver_r08-windows.zip + + 15224769 + 34369ca796268ec7274bc49d659d9e8f042b55ae + google_play_services_fit_preview_5208000_r01.zip + + + + + + + google + + http://developer.android.com/ + usb_driver + USB Driver for Windows, revision 10 + Google USB Driver + Google Inc. + + 10 + + + + usb_driver_r10-windows.zip + a5f8280829f07bb3144a8d657ec7aa0128443a2c + 8682752 + windows @@ -1171,11 +1143,13 @@ November 19, 2013 Google Play Billing Library play_billing market_billing - 5 + + 5 + Google Play Billing files and sample code http://developer.android.com/google/play/billing/index.html - + 436654 bd2ac5ce7127070ac3229003eb69cfb806628ac9 play_billing_r05.zip @@ -1189,29 +1163,35 @@ November 19, 2013 Google Inc. Google AdMob Ads SDK admob_ads_sdk - 11 + + 11 + AdMob Ads SDK https://developers.google.com/mobile-ads-sdk/docs/ - + 704512 0102859d9575baa0bf4fd5eb422af2ad0fe6cb82 https://dl-ssl.google.com/googleadmobadssdk/googleadmobadssdkandroid-6.4.1.zip + + google Google Inc. Google Analytics App Tracking SDK analytics_sdk_v2 - 3 + + 3 + Analytics App Tracking SDK http://developers.google.com/analytics/devguides/collection/ - + 211432 dc14026bf0ce78315cb5dd00552607de0894de83 https://dl.google.com/gaformobileapps/GoogleAnalyticsAndroid_2.0beta5.zip @@ -1225,11 +1205,13 @@ November 19, 2013 Google Inc. Google Web Driver webdriver - 2 + + 2 + WebDriver http://selenium.googlecode.com - + 4055193 13f3a3b2670a5fc04a7342861644be9a01b07e38 webdriver_r02.zip @@ -1241,18 +1223,21 @@ November 19, 2013 google Google Inc. - [Deprecated] Google Cloud Messaging for Android Library + Google Cloud Messaging for Android Library gcm - 3 + + 3 + GCM library has been moved to Google Play Services (com.google.android.gms.gcm) and this standalone version is no longer supported https://developers.google.com/android/gcm/index - + 5901400 ad066fd0dc7fc99d8aadac09c65a3c2519fbc7bf gcm_r03.zip + diff --git a/pkgs/development/mobile/androidenv/addons.nix b/pkgs/development/mobile/androidenv/addons.nix index 8aacde4eee7..4f7ed6e9e8e 100644 --- a/pkgs/development/mobile/androidenv/addons.nix +++ b/pkgs/development/mobile/androidenv/addons.nix @@ -209,8 +209,8 @@ in google_apis_19 = buildGoogleApis { name = "google_apis-19"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/google_apis-19_r01.zip; - sha1 = "6c530a8318446e4da1e3ab7d2abd154bc493bc5a"; + url = https://dl-ssl.google.com/android/repository/google_apis-19_r07.zip; + sha1 = "150f5a3fec4f03313ca770b90126605619bd713c"; }; meta = { description = "Android + Google APIs"; diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index 3c9327f1c59..560753eecfc 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -1,5 +1,5 @@ { stdenv, stdenv_32bit, fetchurl, unzip, makeWrapper -, platformTools, buildTools, support, platforms, sysimages, addons +, platformTools, buildTools, support, supportRepository, platforms, sysimages, addons , zlib_32bit , libX11_32bit, libxcb_32bit, libXau_32bit, libXdmcp_32bit, libXext_32bit, mesa_32bit, alsaLib_32bit , libX11, libXext, libXrender, libxcb, libXau, libXdmcp, libXtst, mesa, alsaLib @@ -9,36 +9,35 @@ stdenv.mkDerivation rec { name = "android-sdk-${version}"; - version = "22.6.2"; + version = "23.0.2"; src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl { url = "http://dl.google.com/android/android-sdk_r${version}-linux.tgz"; - md5 = "ff1541418a44d894bedc5cef10622220"; + md5 = "94a8c62086a7398cc0e73e1c8e65f71e"; } else if stdenv.system == "x86_64-darwin" then fetchurl { url = "http://dl.google.com/android/android-sdk_r${version}-macosx.zip"; - md5 = "2a319c862dd1dcf450bfe2a6b3d9c608"; + md5 = "322787b0e6c629d926c28690c79ac0d8"; } else throw "platform not ${stdenv.system} supported!"; buildCommand = '' mkdir -p $out/libexec cd $out/libexec - unpackFile $src; - + unpackFile $src cd android-sdk-*/tools ${stdenv.lib.optionalString (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") '' # There are a number of native binaries. We must patch them to let them find the interpreter and libstdc++ - - for i in dmtracedump emulator emulator-arm emulator-mips emulator-x86 hprof-conv mksdcard sqlite3 + + for i in emulator emulator-arm emulator-mips emulator-x86 mksdcard do patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib $i done - + ${stdenv.lib.optionalString (stdenv.system == "x86_64-linux") '' # We must also patch the 64-bit emulator instances, if needed @@ -49,17 +48,6 @@ stdenv.mkDerivation rec { done ''} - # These tools also need zlib in addition to libstdc++ - - for i in etc1tool zipalign - do - patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i - patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib:${zlib_32bit}/lib $i - done - - # The android script has a hardcoded reference to /bin/ls that must be patched - sed -i -e "s|/bin/ls|ls|" android - # The android script used SWT and wants to dynamically load some GTK+ stuff. # The following wrapper ensures that they can be found: wrapProgram `pwd`/android \ @@ -139,6 +127,15 @@ stdenv.mkDerivation rec { cd .. + # Symlink required extras + + mkdir -p extras/android + cd extras/android + + ln -s ${supportRepository}/m2repository + + cd ../.. + # Symlink required platforms mkdir -p platforms diff --git a/pkgs/development/mobile/androidenv/build-tools.nix b/pkgs/development/mobile/androidenv/build-tools.nix index 58bf3549361..11beb29f3ce 100644 --- a/pkgs/development/mobile/androidenv/build-tools.nix +++ b/pkgs/development/mobile/androidenv/build-tools.nix @@ -1,15 +1,15 @@ {stdenv, stdenv_32bit, fetchurl, unzip, zlib_32bit}: stdenv.mkDerivation { - name = "android-build-tools-r18.1.0"; + name = "android-build-tools-r20"; src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl { - url = https://dl-ssl.google.com/android/repository/build-tools_r18.1-linux.zip; - sha1 = "f314a0599e51397f0886fe888b50dd98f2f050d8"; + url = https://dl-ssl.google.com/android/repository/build-tools_r20-linux.zip; + sha1 = "b688905526a5584d1327a662d871a635ff502758"; } else if stdenv.system == "x86_64-darwin" then fetchurl { - url = https://dl-ssl.google.com/android/repository/build-tools_r18.1-macosx.zip; - sha1 = "16ddb299b8b43063e5bb3387ec17147c5053dfd8"; + url = https://dl-ssl.google.com/android/repository/build-tools_r20-macosx.zip; + sha1 = "1240f629411c108a714c4ddd756937c7fab93f83"; } else throw "System ${stdenv.system} not supported!"; @@ -39,6 +39,13 @@ stdenv.mkDerivation { do patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib:`pwd` $i done + + # These binaries also need zlib in addition to libstdc++ + for i in zipalign + do + patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i + patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib:${zlib_32bit}/lib $i + done # These binaries need to find libstdc++, libgcc_s, and zlib for i in aapt dexdump diff --git a/pkgs/development/mobile/androidenv/default.nix b/pkgs/development/mobile/androidenv/default.nix index 422c1516f2d..796f0f862bd 100644 --- a/pkgs/development/mobile/androidenv/default.nix +++ b/pkgs/development/mobile/androidenv/default.nix @@ -16,6 +16,10 @@ rec { inherit (pkgs) stdenv fetchurl unzip; }; + supportRepository = import ./support-repository.nix { + inherit (pkgs) stdenv fetchurl unzip; + }; + platforms = if (pkgs.stdenv.system == "i686-linux" || pkgs.stdenv.system == "x86_64-linux") then import ./platforms-linux.nix { inherit (pkgs) stdenv fetchurl unzip; @@ -39,7 +43,7 @@ rec { inherit (pkgs) freetype fontconfig glib gtk atk mesa file alsaLib jdk; inherit (pkgs.xorg) libX11 libXext libXrender libxcb libXau libXdmcp libXtst; - inherit platformTools buildTools support platforms sysimages addons; + inherit platformTools buildTools support supportRepository platforms sysimages addons; stdenv_32bit = pkgs_i686.stdenv; zlib_32bit = pkgs_i686.zlib; @@ -63,8 +67,38 @@ rec { abiVersions = [ "armeabi-v7a" ]; useGoogleAPIs = true; }; + + androidsdk_2_3_3 = androidsdk { + platformVersions = [ "10" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_3_0 = androidsdk { + platformVersions = [ "11" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_3_1 = androidsdk { + platformVersions = [ "12" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_3_2 = androidsdk { + platformVersions = [ "13" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; androidsdk_4_0 = androidsdk { + platformVersions = [ "14" ]; + abiVersions = [ "armeabi-v7a" ]; + useGoogleAPIs = true; + }; + + androidsdk_4_0_3 = androidsdk { platformVersions = [ "15" ]; abiVersions = [ "armeabi-v7a" ]; useGoogleAPIs = true; diff --git a/pkgs/development/mobile/androidenv/fetch b/pkgs/development/mobile/androidenv/fetch.sh similarity index 58% rename from pkgs/development/mobile/androidenv/fetch rename to pkgs/development/mobile/androidenv/fetch.sh index 30aabc9e086..92abb18f25f 100755 --- a/pkgs/development/mobile/androidenv/fetch +++ b/pkgs/development/mobile/androidenv/fetch.sh @@ -5,10 +5,9 @@ android list sdk | grep 'Parse XML:' | cut -f8- -d\ # | xargs -n 1 curl -O # we skip the intel addons, as they are Windows+osX only # we skip the default sys-img (arm?) because it is empty -curl -o repository-8.xml https://dl-ssl.google.com/android/repository/repository-8.xml +curl -o repository-10.xml https://dl-ssl.google.com/android/repository/repository-10.xml curl -o addon.xml https://dl-ssl.google.com/android/repository/addon.xml -curl -o sys-img-mips.xml https://dl-ssl.google.com/android/repository/sys-img/mips/sys-img.xml -curl -o sys-img-x86.xml https://dl-ssl.google.com/android/repository/sys-img/x86/sys-img.xml +curl -o sys-img.xml https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml ./generate-addons.sh ./generate-platforms.sh diff --git a/pkgs/development/mobile/androidenv/generate-addons.xsl b/pkgs/development/mobile/androidenv/generate-addons.xsl index 0100b980a4e..51d0c07c934 100644 --- a/pkgs/development/mobile/androidenv/generate-addons.xsl +++ b/pkgs/development/mobile/androidenv/generate-addons.xsl @@ -1,7 +1,7 @@ + xmlns:sdk="http://schemas.android.com/sdk/android/addon/7"> @@ -23,8 +23,8 @@ in google_apis_ = buildGoogleApis { name = "-"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/; - sha1 = ""; + url = https://dl-ssl.google.com/android/repository/; + sha1 = ""; }; meta = { description = ""; diff --git a/pkgs/development/mobile/androidenv/generate-platforms.sh b/pkgs/development/mobile/androidenv/generate-platforms.sh index 8ac4ad328f4..58d3ba58d37 100755 --- a/pkgs/development/mobile/androidenv/generate-platforms.sh +++ b/pkgs/development/mobile/androidenv/generate-platforms.sh @@ -1,4 +1,4 @@ #!/bin/sh -e -xsltproc --stringparam os linux generate-platforms.xsl repository-8.xml > platforms-linux.nix -xsltproc --stringparam os macosx generate-platforms.xsl repository-8.xml > platforms-macosx.nix +xsltproc --stringparam os linux generate-platforms.xsl repository-10.xml > platforms-linux.nix +xsltproc --stringparam os macosx generate-platforms.xsl repository-10.xml > platforms-macosx.nix diff --git a/pkgs/development/mobile/androidenv/generate-platforms.xsl b/pkgs/development/mobile/androidenv/generate-platforms.xsl index 249f044550b..ba556f2baac 100644 --- a/pkgs/development/mobile/androidenv/generate-platforms.xsl +++ b/pkgs/development/mobile/androidenv/generate-platforms.xsl @@ -1,7 +1,7 @@ + xmlns:sdk="http://schemas.android.com/sdk/android/repository/10"> @@ -10,7 +10,7 @@ let buildPlatform = args: - stdenv.mkDerivation (args // { + stdenv.mkDerivation (args // { buildInputs = [ unzip ]; buildCommand = '' mkdir -p $out @@ -20,12 +20,12 @@ let }); in { - + platform_ = buildPlatform { name = "android-platform-"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/; - sha1 = ""; + url = ; + sha1 = ""; }; meta = { description = ""; diff --git a/pkgs/development/mobile/androidenv/generate-sysimages-others.xsl b/pkgs/development/mobile/androidenv/generate-sysimages-others.xsl deleted file mode 100644 index 31ab72add36..00000000000 --- a/pkgs/development/mobile/androidenv/generate-sysimages-others.xsl +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - sysimg__ = buildSystemImage { - name = "-"; - src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img//; - sha1 = ""; - }; - }; - - - diff --git a/pkgs/development/mobile/androidenv/generate-sysimages.sh b/pkgs/development/mobile/androidenv/generate-sysimages.sh index 90b1e04c229..ef2f825642b 100755 --- a/pkgs/development/mobile/androidenv/generate-sysimages.sh +++ b/pkgs/development/mobile/androidenv/generate-sysimages.sh @@ -17,9 +17,7 @@ in { EOF -xsltproc generate-sysimages.xsl repository-8.xml >> sysimages.nix -xsltproc --stringparam abi x86 generate-sysimages-others.xsl sys-img-x86.xml >> sysimages.nix -xsltproc --stringparam abi mips generate-sysimages-others.xsl sys-img-mips.xml >> sysimages.nix +xsltproc generate-sysimages.xsl sys-img.xml >> sysimages.nix cat >> sysimages.nix << "EOF" } diff --git a/pkgs/development/mobile/androidenv/generate-sysimages.xsl b/pkgs/development/mobile/androidenv/generate-sysimages.xsl index be9947d536a..6de690622b5 100644 --- a/pkgs/development/mobile/androidenv/generate-sysimages.xsl +++ b/pkgs/development/mobile/androidenv/generate-sysimages.xsl @@ -2,17 +2,17 @@ + xmlns:sdk="http://schemas.android.com/sdk/android/sys-img/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> - + sysimg__ = buildSystemImage { - name = "-"; + name = "sysimg--"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/; - sha1 = ""; + url = https://dl-ssl.google.com/android/repository/sys-img/android/; + sha1 = ""; }; }; diff --git a/pkgs/development/mobile/androidenv/platforms-linux.nix b/pkgs/development/mobile/androidenv/platforms-linux.nix index f9f5a2d50f4..feb967d0108 100644 --- a/pkgs/development/mobile/androidenv/platforms-linux.nix +++ b/pkgs/development/mobile/androidenv/platforms-linux.nix @@ -3,7 +3,7 @@ let buildPlatform = args: - stdenv.mkDerivation (args // { + stdenv.mkDerivation (args // { buildInputs = [ unzip ]; buildCommand = '' mkdir -p $out @@ -219,13 +219,13 @@ in }; platform_19 = buildPlatform { - name = "android-platform-4.4"; + name = "android-platform-4.4.2"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/android-19_r01.zip; - sha1 = "96281811998272dce46e8285d15fce444a3d5a96"; + url = https://dl-ssl.google.com/android/repository/android-19_r03.zip; + sha1 = "5f33d8fd36a384fe2b170035e04a29c274a9ef95"; }; meta = { - description = "Android SDK Platform 4.4"; + description = "Android SDK Platform 4.4.2"; }; }; diff --git a/pkgs/development/mobile/androidenv/platforms-macosx.nix b/pkgs/development/mobile/androidenv/platforms-macosx.nix index a95561d3e85..0e93ed9412b 100644 --- a/pkgs/development/mobile/androidenv/platforms-macosx.nix +++ b/pkgs/development/mobile/androidenv/platforms-macosx.nix @@ -3,7 +3,7 @@ let buildPlatform = args: - stdenv.mkDerivation (args // { + stdenv.mkDerivation (args // { buildInputs = [ unzip ]; buildCommand = '' mkdir -p $out @@ -219,13 +219,13 @@ in }; platform_19 = buildPlatform { - name = "android-platform-4.4"; + name = "android-platform-4.4.2"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/android-19_r01.zip; - sha1 = "96281811998272dce46e8285d15fce444a3d5a96"; + url = https://dl-ssl.google.com/android/repository/android-19_r03.zip; + sha1 = "5f33d8fd36a384fe2b170035e04a29c274a9ef95"; }; meta = { - description = "Android SDK Platform 4.4"; + description = "Android SDK Platform 4.4.2"; }; }; diff --git a/pkgs/development/mobile/androidenv/repository-10.xml b/pkgs/development/mobile/androidenv/repository-10.xml new file mode 100644 index 00000000000..81023cae2ee --- /dev/null +++ b/pkgs/development/mobile/androidenv/repository-10.xml @@ -0,0 +1,1562 @@ + + + + + To get started with the Android SDK, you must agree to the following terms and conditions. + +This is the Android SDK License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and SDK library files and tools , if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the SDK, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. + +2.4 If you will use the SDK internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. + +3. SDK License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the SDK, personally or internally within your company or organization, solely to develop and distribute applications to run on the Android platform. + +3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the SDK for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. + +3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. + +4. Use of the SDK by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the SDK to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action when Google ceases to provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the SDK, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE SDK MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. + +14. General Legal Terms + +14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + To get started with the Android SDK Preview, you must agree to the following terms and conditions. +As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data. + +This is the Android SDK Preview License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview. + +2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity. + +3. Preview License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform. + +3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview. + +3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview. + +4. Use of the Preview by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of: +(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and +(B) Google issues a final release version of the Android SDK. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available. + +14. General Legal Terms + +14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + + + + 1.1 + 2 + 1 + Android SDK Platform 1.1_r1 + http://developer.android.com/sdk/android-1.1.html + + + + 46828615 + a4060f29ed39fc929c302836d488998c53c3002e + https://dl-ssl.google.com/android/repository/android-1.1_r1-windows.zip + windows + + + 45584305 + e21dbcff45b7356657449ebb3c7e941be2bb5ebe + https://dl-ssl.google.com/android/repository/android-1.1_r1-macosx.zip + macosx + + + 45476658 + c054d25c9b4c6251fa49c2f9c54336998679d3fe + https://dl-ssl.google.com/android/repository/android-1.1_r1-linux.zip + linux + + + + 4 + + + + + + + + 1.5 + 3 + 04 + + 6 + + Android SDK Platform 1.5_r3 + http://developer.android.com/sdk/android-1.5.html + + + 54624370 + 5bb106d2e40d481edd337b0833093843e15fe49a + https://dl-ssl.google.com/android/repository/android-1.5_r04-windows.zip + windows + + + 52440607 + d3a67c2369afa48b6c3c7624de5031c262018d1e + https://dl-ssl.google.com/android/repository/android-1.5_r04-macosx.zip + macosx + + + 53348669 + 5c134b7df5f4b8bd5b61ba93bdaebada8fa3468c + https://dl-ssl.google.com/android/repository/android-1.5_r04-linux.zip + linux + + + + 4 + + + + + + 1.6 + 4 + + 03 + + 6 + + Android SDK Platform 1.6_r2 + http://developer.android.com/sdk/android-1.6.html + + + 63454485 + 483ed088e45bbdf3444baaf9250c8b02e5383cb0 + https://dl-ssl.google.com/android/repository/android-1.6_r03-linux.zip + linux + + + 62418496 + bdafad44f5df9f127979bdb21a1fdd87ee3cd625 + https://dl-ssl.google.com/android/repository/android-1.6_r03-macosx.zip + macosx + + + 64654625 + ce0b5e4ffaf12ca4fd07c2da71a8a1ab4a03dc22 + https://dl-ssl.google.com/android/repository/android-1.6_r03-windows.zip + windows + + + + 4 + + + + + + + + 2.0 + 5 + + 01 + + 3 + + Android SDK Platform 2.0, revision 1 + http://developer.android.com/sdk/android-2.0.html + + + + 75095268 + be9be6a99ca32875c96ec7f91160ca9fce7e3c7d + https://dl-ssl.google.com/android/repository/android-2.0_r01-linux.zip + linux + + + 74956356 + 2a866d0870dbba18e0503cd41e5fae988a21b314 + https://dl-ssl.google.com/android/repository/android-2.0_r01-macosx.zip + macosx + + + 76288040 + aeb623217ff88b87216d6eb7dbc846ed53f68f57 + https://dl-ssl.google.com/android/repository/android-2.0_r01-windows.zip + windows + + + + 4 + + + + + + + + 2.0.1 + 6 + + 01 + + 4 + + Android SDK Platform 2.0.1_r1 + http://developer.android.com/sdk/android-2.0.1.html + + + + 79192618 + ce2c971dce352aa28af06bda92a070116aa5ae1a + https://dl-ssl.google.com/android/repository/android-2.0.1_r01-linux.zip + linux + + + 79035527 + c3096f80d75a6fc8cb38ef8a18aec920e53d42c0 + https://dl-ssl.google.com/android/repository/android-2.0.1_r01-macosx.zip + macosx + + + 80385601 + 255781ebe4509d9707d0e77edda2815e2bc216e6 + https://dl-ssl.google.com/android/repository/android-2.0.1_r01-windows.zip + windows + + + + 4 + + + + + + + + 2.1 + 7 + + 03 + + 8 + + Android SDK Platform 2.1_r3 + http://developer.android.com/sdk/ + + + 70142829 + 5ce51b023ac19f8738500b1007a1da5de2349a1e + https://dl-ssl.google.com/android/repository/android-2.1_r03-linux.zip + + + + 4 + + + + + + + + 2.2 + 8 + + 03 + + 8 + + Android SDK Platform 2.2_r3 + http://developer.android.com/sdk/ + + + 74652366 + 231262c63eefdff8fd0386e9ccfefeb27a8f9202 + https://dl-ssl.google.com/android/repository/android-2.2_r03-linux.zip + + + + 4 + + + + + + + + 2.3.1 + 9 + + 02 + + 8 + + Android SDK Platform 2.3.1_r2 + http://developer.android.com/sdk/ + + + + 78732563 + 209f8a7a8b2cb093fce858b8b55fed3ba5206773 + https://dl-ssl.google.com/android/repository/android-2.3.1_r02-linux.zip + + + + 4 + + + + + + + + 2.3.3 + 10 + + 02 + + 8 + + Android SDK Platform 2.3.3._r2 + http://developer.android.com/sdk/ + + + 85470907 + 887e37783ec32f541ea33c2c649dda648e8e6fb3 + https://dl-ssl.google.com/android/repository/android-2.3.3_r02-linux.zip + + + + 4 + + + + + + + + 3.0 + 11 + + 02 + + 10 + + Android SDK Platform 3.0, revision 2 + http://developer.android.com/sdk/ + + + 104513908 + 2c7d4bd13f276e76f6bbd87315fe27aba351dd37 + https://dl-ssl.google.com/android/repository/android-3.0_r02-linux.zip + + + + 4 + + + + + + + + 3.1 + 12 + + 03 + + 11 + + Android SDK Platform 3.1, revision 3 + http://developer.android.com/sdk/ + + + 106472351 + 4a50a6679cd95bb68bb5fc032e754cd7c5e2b1bf + https://dl-ssl.google.com/android/repository/android-3.1_r03-linux.zip + + + + 4 + + + + + + + + 3.2 + 13 + + 01 + + 12 + + Android SDK Platform 3.2, revision 1 + http://developer.android.com/sdk/ + + + 108426536 + 6189a500a8c44ae73a439604363de93591163cd9 + https://dl-ssl.google.com/android/repository/android-3.2_r01-linux.zip + + + + 4 + + + + + + + 3 + Android SDK Platform 4.0 + 4.0 + 14 + + 7 + 1 + + + + 45919570 + 41ba83b51e886461628c41b1b4d47762e0688ed5 + https://dl-ssl.google.com/android/repository/android-14_r03.zip + + + + + + + + 3 + Android SDK Platform 4.0.3 + 4.0.3 + 15 + + 15 + + + 7 + 1 + + + + 44414679 + 23da24610a8da51054c5391001c51ce43a778b97 + https://dl-ssl.google.com/android/repository/android-15_r03.zip + + + + + + + + 4 + Android SDK Platform 4.1.2 + 4.1.2 + 16 + + 21 + + + 9 + 1 + + + + 48005140 + 90b9157b8b45f966be97e11a22fba4591b96c2ee + https://dl-ssl.google.com/android/repository/android-16_r04.zip + + + + + + + + 2 + Android SDK Platform 4.2.2 + 4.2.2 + 17 + + 21 + + + 9 + 1 + + + + 48057484 + c442c32c1b702173ab0929a74486e4f86fe528ec + https://dl-ssl.google.com/android/repository/android-17_r02.zip + + + + + + + + 2 + Android SDK Platform 4.3 + 4.3 + 18 + + 21 + + + 10 + 1 + + + + 57319855 + 62a9438d4cf6692f4d6510c27a380be195db9534 + https://dl-ssl.google.com/android/repository/android-18_r02.zip + + + + + + + + 3 + Android SDK Platform 4.4.2 + 4.4.2 + 19 + + 22 + + + 10 + 1 + + + + 63798840 + 5f33d8fd36a384fe2b170035e04a29c274a9ef95 + https://dl-ssl.google.com/android/repository/android-19_r03.zip + + + + + + + + 1 + Android SDK Platform 4.4W + 4.4W + 20 + + 22 + + + 10 + 1 + + + + 63548914 + 928b1d181101a5bc06f739eb40501e1249dd4895 + android-20_r01.zip + + + + + + + + 3 + Android SDK Platform L + L + 20 + L + + 22 + + + 11 + 1 + + + + 69421660 + 76b6da426db06b2e2901dbc5e02d210ba83753c4 + android-L_r03.zip + + + + + + + + + + + 7 + + 01 + Android SDK Samples for Android API 7, revision 1 + http://developer.android.com/sdk/ + + + 7677831 + 51e4907f60f248ede5c58b54ce7b6ae0b473e0ca + https://dl-ssl.google.com/android/repository/samples-2.1_r01-linux.zip + + + + + + + + + 8 + + 01 + Android SDK Samples for Android API 8, revision 1 + http://developer.android.com/sdk/ + + + 7969716 + d16d8bf2dd84cedf73b98b948d66461c8f19d6fb + https://dl-ssl.google.com/android/repository/samples-2.2_r01-linux.zip + + + + + + + + + 9 + + 01 + Android SDK Samples for Android API 9, revision 1 + http://developer.android.com/sdk/ + + + + 8516326 + 36f7dd6c8b5dbb50b3cf3e3ac5209f3fe55db2aa + https://dl-ssl.google.com/android/repository/samples-2.3_r01-linux.zip + + + + + + + + + 10 + + 01 + Android SDK Samples for Android API 10, revision 1 + http://developer.android.com/sdk/ + + + 8539583 + 93b0c3f3bdf5b07f1f115100b4954f0665297a0d + https://dl-ssl.google.com/android/repository/samples-2.3.3_r01-linux.zip + + + + + + + + + 11 + + 01 + Android SDK Samples for Android API 11, revision 1 + http://developer.android.com/sdk/ + + + 11976920 + 3749ace584631270268d65bb1d0ad61b0d691682 + https://dl-ssl.google.com/android/repository/samples-3.0_r01-linux.zip + + + + + + + + + 12 + + 01 + Android SDK Samples for Android API 12, revision 1 + http://developer.android.com/sdk/ + + + 12150514 + df0ace37cbca73373fe94080f94c71557cac73a7 + https://dl-ssl.google.com/android/repository/samples-3.1_r01-linux.zip + + + + + + + + + 13 + + 01 + Android SDK Samples for Android API 13, revision 1 + http://developer.android.com/sdk/ + + + 12193502 + 078bcf1abc1cb8921f3fa482c252963a782bed60 + https://dl-ssl.google.com/android/repository/samples-3.2_r01-linux.zip + + + + + + + + 2 + 14 + + + 16253619 + 1312c22ab0b650e26835cc3945d4ff8cea183416 + https://dl-ssl.google.com/android/repository/samples-14_r02.zip + + + + + + + + 2 + 15 + + + 16366656 + 042f368c5b09eca4d278264e6dbf9c12c5f73d1f + https://dl-ssl.google.com/android/repository/samples-15_r02.zip + + + + + + + + 1 + 16 + + + 14729945 + dce3a2d41db50a381ef47ee8bddbe928520e685e + https://dl-ssl.google.com/android/repository/samples-16_r01.zip + + + + + + + + 1 + 17 + + + 14840030 + 12d58cb26503610fc05bd7618c434cc6f983bc41 + https://dl-ssl.google.com/android/repository/samples-17_r01.zip + + + + + + + + 1 + 18 + + + 19897793 + 73e879ce46c04a6e63ad1a9107018b4782945007 + https://dl-ssl.google.com/android/repository/samples-18_r01.zip + + + + + + + + 6 + 19 + + + 31900752 + 19593662771934b0b1e3be56ed18d13e6489bcd4 + samples-19_r06.zip + + + + + + + + 2 + 20 + + + 49718791 + 4b906c46057ee8f502b4f27c23670fd87a49d6ff + samples-20_r02.zip + + + + + + + + 2 + 20 + L + + + 41182182 + 4afc36cf3f53051881729f733fe9bb571104c48f + samples-L_r02.zip + + + + + + + + + + + 20 + 0 + 0 + + + + 1741113 + 72c34cc6a991f53e2588f9d5487559f013bc30f9 + platform-tools_r20-windows.zip + windows + + + 1753061 + fb120ce85b6698b801cb4788b204693c1d682b87 + platform-tools_r20-linux.zip + linux + + + 1666257 + f2c65c58caf76169d9bebf25eef5c69ff99670b5 + platform-tools_r20-macosx.zip + macosx + + + + + + + + + + + 17 + 0 + 0 + + + + 11004914 + 899897d327b0bad492d3a40d3db4d96119c15bc0 + https://dl-ssl.google.com/android/repository/build-tools_r17-windows.zip + windows + + + 11696007 + 2c2872bc3806aabf16a12e3959c2183ddc866e6d + https://dl-ssl.google.com/android/repository/build-tools_r17-linux.zip + linux + + + 12208114 + 602ee709be9dbb8f179b1e4075148a57f9419930 + https://dl-ssl.google.com/android/repository/build-tools_r17-macosx.zip + macosx + + + + + + + + + + + 18 + 0 + 1 + + + + 15413527 + a6c2afd0b6289d589351956d2f5212b37014ca7d + https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-windows.zip + windows + + + 16627330 + f11618492b0d2270c332325d45d752d3656a9640 + https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-linux.zip + linux + + + 16633121 + d84f5692fb44d60fc53e5b2507cebf9f24626902 + https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-macosx.zip + macosx + + + + + + + + + 18 + 1 + 0 + + + + 19659547 + 3a9810fc8559ab03c09378f07531e8cae2f1db30 + https://dl-ssl.google.com/android/repository/build-tools_r18.1-windows.zip + windows + + + 20229298 + f314a0599e51397f0886fe888b50dd98f2f050d8 + https://dl-ssl.google.com/android/repository/build-tools_r18.1-linux.zip + linux + + + 20451524 + 16ddb299b8b43063e5bb3387ec17147c5053dfd8 + https://dl-ssl.google.com/android/repository/build-tools_r18.1-macosx.zip + macosx + + + + + + + + + 18 + 1 + 1 + + + + 19660000 + c4605066e2f851387ea70bc1442b1968bd7b4a15 + https://dl-ssl.google.com/android/repository/build-tools_r18.1.1-windows.zip + windows + + + 20229760 + 68c9acbfc0cec2d51b19efaed39831a17055d998 + https://dl-ssl.google.com/android/repository/build-tools_r18.1.1-linux.zip + linux + + + 20452157 + a9d9d37f6ddf859e57abc78802a77aaa166e48d4 + https://dl-ssl.google.com/android/repository/build-tools_r18.1.1-macosx.zip + macosx + + + + + + + + + 19 + 0 + 0 + + + + 20611447 + 6edf505c20f5ece9c48fa0aff9a90488f9654d52 + https://dl-ssl.google.com/android/repository/build-tools_r19-windows.zip + windows + + + 21339943 + 55c1a6cf632e7d346f0002b275ec41fd3137fd83 + https://dl-ssl.google.com/android/repository/build-tools_r19-linux.zip + linux + + + 21441270 + 86ec1c12db1bc446b7bcaefc5cc14eb361044e90 + https://dl-ssl.google.com/android/repository/build-tools_r19-macosx.zip + macosx + + + + + + + + + 19 + 0 + 1 + + + + 20500648 + 5ef422bac5b28f4ced108319ed4a6bc7050a6234 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.1-windows.zip + windows + + + 21229048 + 18d2312dc4368858914213087f4e61445aca4517 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.1-linux.zip + linux + + + 21450597 + efaf50fb19a3edb8d03efbff76f89a249ad2920b + https://dl-ssl.google.com/android/repository/build-tools_r19.0.1-macosx.zip + macosx + + + + + + + + + 19 + 0 + 2 + + + + 20621117 + af664672d0d709c9ae30937b1062317d3ade7f95 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.2-windows.zip + windows + + + 21352552 + a03a6bdea0091aea32e1b35b90a7294c9f04e3dd + https://dl-ssl.google.com/android/repository/build-tools_r19.0.2-linux.zip + linux + + + 21453726 + 145bc43065d45f756d99d87329d899052b9a9288 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.2-macosx.zip + macosx + + + + + + + + + 19 + 0 + 3 + + + + 20730715 + cb46b433b67a0a6910ff00db84be8b527ea3102f + https://dl-ssl.google.com/android/repository/build-tools_r19.0.3-windows.zip + windows + + + 21462150 + c2d6055478e9d2d4fba476ee85f99181ddd1160c + https://dl-ssl.google.com/android/repository/build-tools_r19.0.3-linux.zip + linux + + + 21563992 + 651cf8754373b2d52e7f6aab2c52eabffe4e9ea4 + https://dl-ssl.google.com/android/repository/build-tools_r19.0.3-macosx.zip + macosx + + + + + + + + + 19 + 1 + 0 + + + + 20812533 + 13b367fbdbff8132cb4356f716e8dc8a8df745c5 + https://dl-ssl.google.com/android/repository/build-tools_r19.1-windows.zip + windows + + + 21490972 + 1ff20ac15fa47a75d00346ec12f180d531b3ca89 + https://dl-ssl.google.com/android/repository/build-tools_r19.1-linux.zip + linux + + + 21590160 + 0d11aae3417de1efb4b9a0e0a7855904a61bcec1 + https://dl-ssl.google.com/android/repository/build-tools_r19.1-macosx.zip + macosx + + + + + + + + + 20 + 0 + 0 + + + + 20828006 + cf20720e452b642d5eb59dabe05c0c729b36ec75 + build-tools_r20-windows.zip + windows + + + 21445463 + b688905526a5584d1327a662d871a635ff502758 + build-tools_r20-linux.zip + linux + + + 21650508 + 1240f629411c108a714c4ddd756937c7fab93f83 + build-tools_r20-macosx.zip + macosx + + + + + + + + + + + 23 + 0 + 2 + + + 20 + + + + 141154615 + 0a64ec9b7777bb00ff299c94c359163ef5e443ae + tools_r23.0.2-windows.zip + windows + + + 141930870 + e8a2d55d750adeaded60a3daad48e62b09aa472a + tools_r23.0.2-linux.zip + linux + + + 90920343 + c46b1e173188ba82a56d6b9e349fdae4e8922bab + tools_r23.0.2-macosx.zip + macosx + + + + + + + + + + 1 + 20 + L + + + 207889084 + 58a94248c7c960829db3d779c84534e5e783210f + docs-L_r01.zip + + + + + + + + + + 1 + 14 + + + 16152383 + eaf4ed7dcac46e68516a1b4aa5b0d9e5a39a7555 + https://dl-ssl.google.com/android/repository/sources-14_r01.zip + + + + + + + + 2 + 15 + + + 16468746 + e5992a5747c9590783fbbdd700337bf0c9f6b1fa + https://dl-ssl.google.com/android/repository/sources-15_r02.zip + + + + + + + + 2 + 16 + + + 17876720 + 0f83c14ed333c45d962279ab5d6bc98a0269ef84 + https://dl-ssl.google.com/android/repository/sources-16_r02.zip + + + + + + + + 1 + 17 + + + 18976816 + 6f1f18cd2d2b1852d7f6892df9cee3823349d43a + https://dl-ssl.google.com/android/repository/sources-17_r01.zip + + + + + + + + 1 + 18 + + + 20226735 + 8b49fdf7433f4881a2bfb559b5dd05d8ec65fb78 + https://dl-ssl.google.com/android/repository/sources-18_r01.zip + + + + + + + + 2 + 19 + + + 21819439 + 433a1d043ef77561571250e94cb7a0ef24a202e7 + https://dl-ssl.google.com/android/repository/sources-19_r02.zip + + + + + + + + 1 + 20 + + + 23367603 + 8da3e40f2625f9f7ef38b7e403f49f67226c0d76 + sources-20_r01.zip + + + + + + diff --git a/pkgs/development/mobile/androidenv/repository-8.xml b/pkgs/development/mobile/androidenv/repository-8.xml deleted file mode 100644 index 46ae8aa9a7c..00000000000 --- a/pkgs/development/mobile/androidenv/repository-8.xml +++ /dev/null @@ -1,1277 +0,0 @@ - - - - - Terms and Conditions - -This is the Android Software Development Kit License Agreement. - - -1. Introduction - - -1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. - -1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. - -1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. - - -2. Accepting this License Agreement - - -2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement. - -2.2 By clicking to accept, you hereby agree to the terms of this License Agreement. - -2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. - -2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. - - -3. SDK License from Google - - -3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform. - -3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. - -3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. - -3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. - -3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement. - -3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. - -3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. - -3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. - - -4. Use of the SDK by You - - -4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. - -4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). - -4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so. - -4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier. - -4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. - -4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. - - -5. Your Developer Credentials - - -5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. - - -6. Privacy and Information - - -6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. - -6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy. - - -7. Third Party Applications - - -7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. - -7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. - -7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties. - - -8. Using Android APIs - - -8.1 Google Data APIs - -8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. - -8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. - - -9. Terminating this License Agreement - - -9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below. - -9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. - -9.3 Google may at any time, terminate this License Agreement with you if: -(A) you have breached any provision of this License Agreement; or -(B) Google is required to do so by law; or -(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or -(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable. - -9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely. - - -10. DISCLAIMER OF WARRANTIES - - -10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. - -10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. - -10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - - -11. LIMITATION OF LIABILITY - - -11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. - - -12. Indemnification - - -12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement. - - -13. Changes to the License Agreement - - -13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. - - -14. General Legal Terms - - -14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. - -14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. - -14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable. - -14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement. - -14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. - -14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party. - -14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. - -November 13, 2012 - - - - - - 1.1 - 2 - 1 - Android SDK Platform 1.1_r1 - http://developer.android.com/sdk/android-1.1.html - - - - 46828615 - a4060f29ed39fc929c302836d488998c53c3002e - android-1.1_r1-windows.zip - - - 45584305 - e21dbcff45b7356657449ebb3c7e941be2bb5ebe - android-1.1_r1-macosx.zip - - - 45476658 - c054d25c9b4c6251fa49c2f9c54336998679d3fe - android-1.1_r1-linux.zip - - - - 4 - - - - - - - - 1.5 - 3 - 04 - - 6 - - Android SDK Platform 1.5_r3 - http://developer.android.com/sdk/android-1.5.html - - - 54624370 - 5bb106d2e40d481edd337b0833093843e15fe49a - android-1.5_r04-windows.zip - - - 52440607 - d3a67c2369afa48b6c3c7624de5031c262018d1e - android-1.5_r04-macosx.zip - - - 53348669 - 5c134b7df5f4b8bd5b61ba93bdaebada8fa3468c - android-1.5_r04-linux.zip - - - - 4 - - - - - - 1.6 - 4 - - 03 - - 6 - - Android SDK Platform 1.6_r2 - http://developer.android.com/sdk/android-1.6.html - - - 63454485 - 483ed088e45bbdf3444baaf9250c8b02e5383cb0 - android-1.6_r03-linux.zip - - - 62418496 - bdafad44f5df9f127979bdb21a1fdd87ee3cd625 - android-1.6_r03-macosx.zip - - - 64654625 - ce0b5e4ffaf12ca4fd07c2da71a8a1ab4a03dc22 - android-1.6_r03-windows.zip - - - - 4 - - - - - - - - 2.0 - 5 - - 01 - - 3 - - Android SDK Platform 2.0, revision 1 - http://developer.android.com/sdk/android-2.0.html - - - - 75095268 - be9be6a99ca32875c96ec7f91160ca9fce7e3c7d - android-2.0_r01-linux.zip - - - 74956356 - 2a866d0870dbba18e0503cd41e5fae988a21b314 - android-2.0_r01-macosx.zip - - - 76288040 - aeb623217ff88b87216d6eb7dbc846ed53f68f57 - android-2.0_r01-windows.zip - - - - 4 - - - - - - - - 2.0.1 - 6 - - 01 - - 4 - - Android SDK Platform 2.0.1_r1 - http://developer.android.com/sdk/android-2.0.1.html - - - - 79192618 - ce2c971dce352aa28af06bda92a070116aa5ae1a - android-2.0.1_r01-linux.zip - - - 79035527 - c3096f80d75a6fc8cb38ef8a18aec920e53d42c0 - android-2.0.1_r01-macosx.zip - - - 80385601 - 255781ebe4509d9707d0e77edda2815e2bc216e6 - android-2.0.1_r01-windows.zip - - - - 4 - - - - - - - - 2.1 - 7 - - 03 - - 8 - - Android SDK Platform 2.1_r3 - http://developer.android.com/sdk/ - - - 70142829 - 5ce51b023ac19f8738500b1007a1da5de2349a1e - android-2.1_r03-linux.zip - - - - 4 - - - - - - - - 2.2 - 8 - - 03 - - 8 - - Android SDK Platform 2.2_r3 - http://developer.android.com/sdk/ - - - 74652366 - 231262c63eefdff8fd0386e9ccfefeb27a8f9202 - android-2.2_r03-linux.zip - - - - 4 - - - - - - - - 2.3.1 - 9 - - 02 - - 8 - - Android SDK Platform 2.3.1_r2 - http://developer.android.com/sdk/ - - - - 78732563 - 209f8a7a8b2cb093fce858b8b55fed3ba5206773 - android-2.3.1_r02-linux.zip - - - - 4 - - - - - - - - 2.3.3 - 10 - - 02 - - 8 - - Android SDK Platform 2.3.3._r2 - http://developer.android.com/sdk/ - - - 85470907 - 887e37783ec32f541ea33c2c649dda648e8e6fb3 - android-2.3.3_r02-linux.zip - - - - 4 - - - - - - - - 3.0 - 11 - - 02 - - 10 - - Android SDK Platform 3.0, revision 2 - http://developer.android.com/sdk/ - - - 104513908 - 2c7d4bd13f276e76f6bbd87315fe27aba351dd37 - android-3.0_r02-linux.zip - - - - 4 - - - - - - - - 3.1 - 12 - - 03 - - 11 - - Android SDK Platform 3.1, revision 3 - http://developer.android.com/sdk/ - - - 106472351 - 4a50a6679cd95bb68bb5fc032e754cd7c5e2b1bf - android-3.1_r03-linux.zip - - - - 4 - - - - - - - - 3.2 - 13 - - 01 - - 12 - - Android SDK Platform 3.2, revision 1 - http://developer.android.com/sdk/ - - - 108426536 - 6189a500a8c44ae73a439604363de93591163cd9 - android-3.2_r01-linux.zip - - - - 4 - - - - - - - 3 - Android SDK Platform 4.0 - 4.0 - 14 - - 7 - 1 - - - - 45919570 - 41ba83b51e886461628c41b1b4d47762e0688ed5 - android-14_r03.zip - - - - - - - - 3 - Android SDK Platform 4.0.3 - 4.0.3 - 15 - - 15 - - - 7 - 1 - - - - 44414679 - 23da24610a8da51054c5391001c51ce43a778b97 - android-15_r03.zip - - - - - - - - 4 - Android SDK Platform 4.1.2 - 4.1.2 - 16 - - 21 - - - 9 - 1 - - - - 48005140 - 90b9157b8b45f966be97e11a22fba4591b96c2ee - android-16_r04.zip - - - - - - - - 2 - Android SDK Platform 4.2.2 - 4.2.2 - 17 - - 21 - - - 9 - 1 - - - - 48057484 - c442c32c1b702173ab0929a74486e4f86fe528ec - android-17_r02.zip - - - - - - - - 2 - Android SDK Platform 4.3 - 4.3 - 18 - - 21 - - - 10 - 1 - - - - 57319855 - 62a9438d4cf6692f4d6510c27a380be195db9534 - android-18_r02.zip - - - - - - - - 1 - Android SDK Platform 4.4 - 4.4 - 19 - - 22 - - - 10 - 1 - - - - 59279956 - 96281811998272dce46e8285d15fce444a3d5a96 - android-19_r01.zip - - - - - - - - - - - 2 - Android SDK Platform 4.0 - 14 - armeabi-v7a - - - 99621822 - d8991b0c06b18d7d6ed4169d67460ee1add6661b - sysimg_armv7a-14_r02.zip - - - - - - - - 2 - Android SDK Platform 4.0.3 - 15 - armeabi-v7a - - - 96227377 - 1bf977d6cb4e0ad38dceac0c4863d1caa21f326e - sysimg_armv7a-15_r02.zip - - - - - - - - 3 - Android SDK Platform 4.1 - 16 - armeabi-v7a - - - 112528368 - d1cddb23f17aad5821a089c403d4cddad2cf9ef7 - sysimg_armv7a-16_r03.zip - - - - - - - - 2 - Android SDK Platform 4.2.2 - 17 - armeabi-v7a - - - 116553808 - 1c321cda1af793b84d47d1a8d15f85444d265e3c - sysimg_armv7a-17_r02.zip - - - - - - - - 2 - Android SDK Platform 4.3 - 18 - armeabi-v7a - - - 125457135 - 4a1a93200210d8c42793324362868846f67401ab - sysimg_armv7a-18_r02.zip - - - - - - - - 1 - Android SDK Platform 4.4 - 19 - armeabi-v7a - - - 155838103 - 12dd1187dfd953b1ffcef5067d94578590f9e600 - sysimg_armv7a-19_r01.zip - - - - - - - - - - - - 7 - - 01 - Android SDK Samples for Android API 7, revision 1 - http://developer.android.com/sdk/ - - - 7677831 - 51e4907f60f248ede5c58b54ce7b6ae0b473e0ca - samples-2.1_r01-linux.zip - - - - - - - - - 8 - - 01 - Android SDK Samples for Android API 8, revision 1 - http://developer.android.com/sdk/ - - - 7969716 - d16d8bf2dd84cedf73b98b948d66461c8f19d6fb - samples-2.2_r01-linux.zip - - - - - - - - - 9 - - 01 - Android SDK Samples for Android API 9, revision 1 - http://developer.android.com/sdk/ - - - - 8516326 - 36f7dd6c8b5dbb50b3cf3e3ac5209f3fe55db2aa - samples-2.3_r01-linux.zip - - - - - - - - - 10 - - 01 - Android SDK Samples for Android API 10, revision 1 - http://developer.android.com/sdk/ - - - 8539583 - 93b0c3f3bdf5b07f1f115100b4954f0665297a0d - samples-2.3.3_r01-linux.zip - - - - - - - - - 11 - - 01 - Android SDK Samples for Android API 11, revision 1 - http://developer.android.com/sdk/ - - - 11976920 - 3749ace584631270268d65bb1d0ad61b0d691682 - samples-3.0_r01-linux.zip - - - - - - - - - 12 - - 01 - Android SDK Samples for Android API 12, revision 1 - http://developer.android.com/sdk/ - - - 12150514 - df0ace37cbca73373fe94080f94c71557cac73a7 - samples-3.1_r01-linux.zip - - - - - - - - - 13 - - 01 - Android SDK Samples for Android API 13, revision 1 - http://developer.android.com/sdk/ - - - 12193502 - 078bcf1abc1cb8921f3fa482c252963a782bed60 - samples-3.2_r01-linux.zip - - - - - - - - 2 - 14 - - - 16253619 - 1312c22ab0b650e26835cc3945d4ff8cea183416 - samples-14_r02.zip - - - - - - - - 2 - 15 - - - 16366656 - 042f368c5b09eca4d278264e6dbf9c12c5f73d1f - samples-15_r02.zip - - - - - - - - 1 - 16 - - - 14729945 - dce3a2d41db50a381ef47ee8bddbe928520e685e - samples-16_r01.zip - - - - - - - - 1 - 17 - - - 14840030 - 12d58cb26503610fc05bd7618c434cc6f983bc41 - samples-17_r01.zip - - - - - - - - 1 - 18 - - - 19897793 - 73e879ce46c04a6e63ad1a9107018b4782945007 - samples-18_r01.zip - - - - - - - - 1 - 19 - - - 20697510 - c2007694b5e5ad6737f647db8160155d5258cb7f - samples-19_r01.zip - - - - - - - - - - - 19 - 0 - 0 - - - - 1116358 - 755dcb5b5b72bbca90dd055eec4c8d0b1fce7cfd - platform-tools_r19-windows.zip - - - 1172749 - 66ee37daf8a2a8f1aa8939ccd4093658e30aa49b - platform-tools_r19-linux.zip - - - 1120849 - 69af30f488163dfc3da8cef1bb6cc7e8a6df5681 - platform-tools_r19-macosx.zip - - - - - - - - - - - 17 - 0 - 0 - - - - 11004914 - 899897d327b0bad492d3a40d3db4d96119c15bc0 - build-tools_r17-windows.zip - - - 11696007 - 2c2872bc3806aabf16a12e3959c2183ddc866e6d - build-tools_r17-linux.zip - - - 12208114 - 602ee709be9dbb8f179b1e4075148a57f9419930 - build-tools_r17-macosx.zip - - - - - - - - - - - 18 - 0 - 1 - - - - 15413527 - a6c2afd0b6289d589351956d2f5212b37014ca7d - build-tools_r18.0.1-windows.zip - - - 16627330 - f11618492b0d2270c332325d45d752d3656a9640 - build-tools_r18.0.1-linux.zip - - - 16633121 - d84f5692fb44d60fc53e5b2507cebf9f24626902 - build-tools_r18.0.1-macosx.zip - - - - - - - - - 18 - 1 - 0 - - - - 19659547 - 3a9810fc8559ab03c09378f07531e8cae2f1db30 - build-tools_r18.1-windows.zip - - - 20229298 - f314a0599e51397f0886fe888b50dd98f2f050d8 - build-tools_r18.1-linux.zip - - - 20451524 - 16ddb299b8b43063e5bb3387ec17147c5053dfd8 - build-tools_r18.1-macosx.zip - - - - - - - - - 18 - 1 - 1 - - - - 19660000 - c4605066e2f851387ea70bc1442b1968bd7b4a15 - build-tools_r18.1.1-windows.zip - - - 20229760 - 68c9acbfc0cec2d51b19efaed39831a17055d998 - build-tools_r18.1.1-linux.zip - - - 20452157 - a9d9d37f6ddf859e57abc78802a77aaa166e48d4 - build-tools_r18.1.1-macosx.zip - - - - - - - - - 19 - 0 - 0 - - - - 20611447 - 6edf505c20f5ece9c48fa0aff9a90488f9654d52 - build-tools_r19-windows.zip - - - 21339943 - 55c1a6cf632e7d346f0002b275ec41fd3137fd83 - build-tools_r19-linux.zip - - - 21441270 - 86ec1c12db1bc446b7bcaefc5cc14eb361044e90 - build-tools_r19-macosx.zip - - - - - - - - - - - 22 - 3 - - - 18 - - - - 108726734 - 1cdc825c9a84ccf69b4a6386076a881d962dd7a9 - tools_r22.3-windows.zip - - - 101224750 - f76251916a23cb3d85e579f01cc6711a334f9064 - tools_r22.3-linux.zip - - - 74859563 - 697d7f6fa44f02e6894d0eeb948ea97e3cdc8c3c - tools_r22.3-macosx.zip - - - - - - - - - - 1 - 19 - - - 181765706 - 6c92bb045f75a2eabfbdc3e26ff64ce0a7a2b3fc - docs-19_r01.zip - - - - - - - - - - 1 - 14 - - - 16152383 - eaf4ed7dcac46e68516a1b4aa5b0d9e5a39a7555 - sources-14_r01.zip - - - - - - - - 2 - 15 - - - 16468746 - e5992a5747c9590783fbbdd700337bf0c9f6b1fa - sources-15_r02.zip - - - - - - - - 2 - 16 - - - 17876720 - 0f83c14ed333c45d962279ab5d6bc98a0269ef84 - sources-16_r02.zip - - - - - - - - 1 - 17 - - - 18976816 - 6f1f18cd2d2b1852d7f6892df9cee3823349d43a - sources-17_r01.zip - - - - - - - - 1 - 18 - - - 20226735 - 8b49fdf7433f4881a2bfb559b5dd05d8ec65fb78 - sources-18_r01.zip - - - - - - - - 1 - 19 - - - 21656670 - 91d9f5f4117723eecc4434b7de0e7f6295ea0508 - sources-19_r01.zip - - - - - diff --git a/pkgs/development/mobile/androidenv/support-repository.nix b/pkgs/development/mobile/androidenv/support-repository.nix new file mode 100644 index 00000000000..66a532328b1 --- /dev/null +++ b/pkgs/development/mobile/androidenv/support-repository.nix @@ -0,0 +1,17 @@ +{stdenv, fetchurl, unzip}: + +stdenv.mkDerivation { + name = "android-support-repository-r5"; + src = fetchurl { + url = http://dl-ssl.google.com/android/repository/android_m2repository_r05.zip; + sha1 = "2ee9723da079ba0d4fe2a185e00ded842de96f13"; + }; + + buildCommand = '' + mkdir -p $out + cd $out + unzip $src + ''; + + buildInputs = [ unzip ]; +} diff --git a/pkgs/development/mobile/androidenv/sys-img-mips.xml b/pkgs/development/mobile/androidenv/sys-img-mips.xml deleted file mode 100644 index c839d283f4e..00000000000 --- a/pkgs/development/mobile/androidenv/sys-img-mips.xml +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - - - 1 - Android 4.0.4 - 15 - mips - - - - 117503178 - a753bb4a6783124dad726c500ce9aec9d2c1b2d9 - sysimg_mips-15_r01.zip - - - - - - 4 - - Android 4.1.2 - 16 - mips - - - - 122482530 - 67943c54fb3943943ffeb05fdd39c0b753681f6e - sysimg_mips-16_r04.zip - - - - - - 1 - - Android 4.2.1 - 17 - mips - - - - 131781761 - f0c6e153bd584c29e51b5c9723cfbf30f996a05d - sysimg_mips-17_r01.zip - - - - - diff --git a/pkgs/development/mobile/androidenv/sys-img-x86.xml b/pkgs/development/mobile/androidenv/sys-img-x86.xml deleted file mode 100644 index 75ddf73eb1d..00000000000 --- a/pkgs/development/mobile/androidenv/sys-img-x86.xml +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - - Android SDK Platform 2.3.7 - 2 - 10 - x86 - - - - 55463895 - 34e2436f69606cdfe35d3ef9112f0c64e3ff021d - sysimg_x86-10_r02.zip - - - - - - Android SDK Platform 4.0.4 - 1 - 15 - x86 - - - - 112619605 - d540325952e0f097509622b9e685737584b83e40 - sysimg_x86-15_r01.zip - - - - - - Android SDK Platform 4.1.1 - 1 - 16 - x86 - - - - 131840348 - 9d35bcaa4f9b40443941f32b8a50337f413c021a - sysimg_x86-16_r01.zip - - - - - - Android SDK Platform 4.2 - 1 - 17 - x86 - - - - 138799122 - ddb3313e8dcd07926003f7b828eafea1115ea35b - sysimg_x86-17_r01.zip - - - - - - Android SDK Platform 4.3 - 1 - 18 - x86 - - - - 155656419 - f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1 - sysimg_x86-18_r01.zip - - - - - diff --git a/pkgs/development/mobile/androidenv/sys-img.xml b/pkgs/development/mobile/androidenv/sys-img.xml new file mode 100644 index 00000000000..5d2b0f7a883 --- /dev/null +++ b/pkgs/development/mobile/androidenv/sys-img.xml @@ -0,0 +1,712 @@ + + + + + To get started with the Android SDK, you must agree to the following terms and conditions. + +This is the Android SDK License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and SDK library files and tools , if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the SDK, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK. + +2.4 If you will use the SDK internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity. + +3. SDK License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the SDK, personally or internally within your company or organization, solely to develop and distribute applications to run on the Android platform. + +3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the SDK for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK. + +3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK. + +4. Use of the SDK by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the SDK to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action when Google ceases to provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the SDK, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE SDK MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available. + +14. General Legal Terms + +14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + To get started with the Android SDK Preview, you must agree to the following terms and conditions. +As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data. + +This is the Android SDK Preview License Agreement (the "License Agreement"). + +1. Introduction + +1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview. + +1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time. + +1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States. + +2. Accepting the License Agreement + +2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement. + +2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement. + +2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview. + +2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity. + +3. Preview License from Google + +3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform. + +3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you. + +3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview. + +3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview. + +3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights. + +3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you. + +3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features. + +3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview. + +4. Use of the Preview by You + +4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications. + +4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). + +4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so. + +4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party. + +4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so. + +4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach. + +4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released. + +5. Your Developer Credentials + +5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials. + +6. Privacy and Information + +6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected. + +6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/. + +7. Third Party Applications + +7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources. + +7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners. + +7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. + +8. Using Google APIs + +8.1 Google APIs + +8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service. + +8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so. + +9. Terminating the License Agreement + +9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below. + +9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials. + +9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you. + +9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of: +(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and +(B) Google issues a final release version of the Android SDK. + +9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely. + +10. DISCLAIMERS + +10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE. + +10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE. + +10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + +11. LIMITATION OF LIABILITY + +11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING. + +12. Indemnification + +12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement. + +13. Changes to the License Agreement + +13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available. + +14. General Legal Terms + +14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview. + +14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google. + +14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable. + +14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement. + +14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE. + +14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google. + +14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. + +June 2014. + + + + + + + + + + + + + + 2 + Android SDK Platform 4.0 + 14 + armeabi-v7a + + + 99621822 + d8991b0c06b18d7d6ed4169d67460ee1add6661b + sysimg_armv7a-14_r02.zip + + + + default + + + + + 2 + Android SDK Platform 4.0.3 + 15 + armeabi-v7a + + + 96227377 + 1bf977d6cb4e0ad38dceac0c4863d1caa21f326e + sysimg_armv7a-15_r02.zip + + + + default + + + + + 3 + Android SDK Platform 4.1 + 16 + armeabi-v7a + + + 112528368 + d1cddb23f17aad5821a089c403d4cddad2cf9ef7 + sysimg_armv7a-16_r03.zip + + + + default + + + + + 2 + Android SDK Platform 4.2.2 + 17 + armeabi-v7a + + + 116553808 + 1c321cda1af793b84d47d1a8d15f85444d265e3c + sysimg_armv7a-17_r02.zip + + + + default + + + + + 2 + Android SDK Platform 4.3 + 18 + armeabi-v7a + + + 125457135 + 4a1a93200210d8c42793324362868846f67401ab + sysimg_armv7a-18_r02.zip + + + + default + + + + + 2 + Android SDK Platform 4.4.2 + 19 + armeabi-v7a + + + 158478012 + e0d375397e28e3d5d9577a00132463a4696248e5 + sysimg_armv7a-19_r02.zip + + + + default + + + + + 1 + Android SDK Platform L + 20 + L + armeabi-v7a + default + + + 227716008 + 1d5d81a7078b5b2a685620d93e1e04a51d2e786a + sysimg_armv7a-L_r01.zip + + + + + + + + 1 + Android SDK Platform L + 20 + L + x86 + default + + + 245850484 + c2d32d6244821ff59f370469778525f6a5345010 + sysimg_x86-L_r01.zip + + + + + + + + Android SDK Platform 2.3.7 + 2 + 10 + x86 + + + + 55463895 + 34e2436f69606cdfe35d3ef9112f0c64e3ff021d + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-10_r02.zip + + + default + + + + Android SDK Platform 4.0.4 + 1 + 15 + x86 + + + + 112619605 + d540325952e0f097509622b9e685737584b83e40 + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-15_r01.zip + + + default + + + + Android SDK Platform 4.1.1 + 1 + 16 + x86 + + + + 131840348 + 9d35bcaa4f9b40443941f32b8a50337f413c021a + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-16_r01.zip + + + default + + + + Android SDK Platform 4.2 + 1 + 17 + x86 + + + + 138799122 + ddb3313e8dcd07926003f7b828eafea1115ea35b + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-17_r01.zip + + + default + + + + Android SDK Platform 4.3 + 1 + 18 + x86 + + + + 155656419 + f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1 + https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-18_r01.zip + + + default + + + + + 2 + Android SDK Platform 4.4.2 + 19 + x86 + + + 178922720 + 8889cb418984a2a7916a359da7c429d2431ed060 + sysimg_x86-19_r02.zip + + + + default + + + + + + 1 + Android 4.0.4 + 15 + mips + + + + 117503178 + a753bb4a6783124dad726c500ce9aec9d2c1b2d9 + sysimg_mips-15_r01.zip + + + default + + + + 4 + + Android 4.1.2 + 16 + mips + + + + 122482530 + 67943c54fb3943943ffeb05fdd39c0b753681f6e + sysimg_mips-16_r04.zip + + + default + + + + 1 + + Android 4.2.1 + 17 + mips + + + + 131781761 + f0c6e153bd584c29e51b5c9723cfbf30f996a05d + sysimg_mips-17_r01.zip + + + default + + + diff --git a/pkgs/development/mobile/androidenv/sysimages.nix b/pkgs/development/mobile/androidenv/sysimages.nix index bbbf3a4fc68..ddc6dd99d39 100644 --- a/pkgs/development/mobile/androidenv/sysimages.nix +++ b/pkgs/development/mobile/androidenv/sysimages.nix @@ -14,113 +14,137 @@ in { sysimg_armeabi-v7a_14 = buildSystemImage { - name = "armeabi-v7a-14"; + name = "sysimg-armeabi-v7a-14"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-14_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-14_r02.zip; sha1 = "d8991b0c06b18d7d6ed4169d67460ee1add6661b"; }; }; sysimg_armeabi-v7a_15 = buildSystemImage { - name = "armeabi-v7a-15"; + name = "sysimg-armeabi-v7a-15"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-15_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-15_r02.zip; sha1 = "1bf977d6cb4e0ad38dceac0c4863d1caa21f326e"; }; }; sysimg_armeabi-v7a_16 = buildSystemImage { - name = "armeabi-v7a-16"; + name = "sysimg-armeabi-v7a-16"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-16_r03.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-16_r03.zip; sha1 = "d1cddb23f17aad5821a089c403d4cddad2cf9ef7"; }; }; sysimg_armeabi-v7a_17 = buildSystemImage { - name = "armeabi-v7a-17"; + name = "sysimg-armeabi-v7a-17"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-17_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-17_r02.zip; sha1 = "1c321cda1af793b84d47d1a8d15f85444d265e3c"; }; }; sysimg_armeabi-v7a_18 = buildSystemImage { - name = "armeabi-v7a-18"; + name = "sysimg-armeabi-v7a-18"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-18_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-18_r02.zip; sha1 = "4a1a93200210d8c42793324362868846f67401ab"; }; }; sysimg_armeabi-v7a_19 = buildSystemImage { - name = "armeabi-v7a-19"; + name = "sysimg-armeabi-v7a-19"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-19_r01.zip; - sha1 = "12dd1187dfd953b1ffcef5067d94578590f9e600"; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-19_r02.zip; + sha1 = "e0d375397e28e3d5d9577a00132463a4696248e5"; + }; + }; + + sysimg_armeabi-v7a_20 = buildSystemImage { + name = "sysimg-armeabi-v7a-20"; + src = fetchurl { + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_armv7a-L_r01.zip; + sha1 = "1d5d81a7078b5b2a685620d93e1e04a51d2e786a"; + }; + }; + + sysimg_x86_20 = buildSystemImage { + name = "sysimg-x86-20"; + src = fetchurl { + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-L_r01.zip; + sha1 = "c2d32d6244821ff59f370469778525f6a5345010"; }; }; sysimg_x86_10 = buildSystemImage { - name = "x86-10"; + name = "sysimg-x86-10"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-10_r02.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-10_r02.zip; sha1 = "34e2436f69606cdfe35d3ef9112f0c64e3ff021d"; }; }; sysimg_x86_15 = buildSystemImage { - name = "x86-15"; + name = "sysimg-x86-15"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-15_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-15_r01.zip; sha1 = "d540325952e0f097509622b9e685737584b83e40"; }; }; sysimg_x86_16 = buildSystemImage { - name = "x86-16"; + name = "sysimg-x86-16"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-16_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-16_r01.zip; sha1 = "9d35bcaa4f9b40443941f32b8a50337f413c021a"; }; }; sysimg_x86_17 = buildSystemImage { - name = "x86-17"; + name = "sysimg-x86-17"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-17_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-17_r01.zip; sha1 = "ddb3313e8dcd07926003f7b828eafea1115ea35b"; }; }; sysimg_x86_18 = buildSystemImage { - name = "x86-18"; + name = "sysimg-x86-18"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-18_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-18_r01.zip; sha1 = "f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1"; }; }; - sysimg_mips_15 = buildSystemImage { - name = "mips-15"; + sysimg_x86_19 = buildSystemImage { + name = "sysimg-x86-19"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-15_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_x86-19_r02.zip; + sha1 = "8889cb418984a2a7916a359da7c429d2431ed060"; + }; + }; + + sysimg_mips_15 = buildSystemImage { + name = "sysimg-mips-15"; + src = fetchurl { + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_mips-15_r01.zip; sha1 = "a753bb4a6783124dad726c500ce9aec9d2c1b2d9"; }; }; sysimg_mips_16 = buildSystemImage { - name = "mips-16"; + name = "sysimg-mips-16"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-16_r04.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_mips-16_r04.zip; sha1 = "67943c54fb3943943ffeb05fdd39c0b753681f6e"; }; }; sysimg_mips_17 = buildSystemImage { - name = "mips-17"; + name = "sysimg-mips-17"; src = fetchurl { - url = https://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-17_r01.zip; + url = https://dl-ssl.google.com/android/repository/sys-img/android/sysimg_mips-17_r01.zip; sha1 = "f0c6e153bd584c29e51b5c9723cfbf30f996a05d"; }; }; diff --git a/pkgs/development/ocaml-modules/sqlite3EZ/default.nix b/pkgs/development/ocaml-modules/sqlite3EZ/default.nix new file mode 100644 index 00000000000..e8ec8e6f5da --- /dev/null +++ b/pkgs/development/ocaml-modules/sqlite3EZ/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, ocaml, findlib, twt, ocaml_sqlite3 }: + +stdenv.mkDerivation { + name = "ocaml-sqlite3EZ-0.1.0"; + + src = fetchurl { + url = https://github.com/mlin/ocaml-sqlite3EZ/archive/v0.1.0.tar.gz; + sha256 = "8ed2c5d5914a65cbd95589ef11bfb8b38a020eb850cdd49b8adce7ee3a563748"; + }; + + buildInputs = [ ocaml findlib twt ]; + + propagatedBuildInputs = [ ocaml_sqlite3 ]; + + createFindlibDestdir = true; + + meta = { + homepage = http://github.com/mlin/ocaml-sqlite3EZ; + description = "A thin wrapper for sqlite3-ocaml with a simplified interface"; + license = stdenv.lib.licenses.mit; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/development/ocaml-modules/twt/default.nix b/pkgs/development/ocaml-modules/twt/default.nix new file mode 100644 index 00000000000..c06449f68b4 --- /dev/null +++ b/pkgs/development/ocaml-modules/twt/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, ocaml, findlib }: + +stdenv.mkDerivation { + name = "ocaml-twt-0.93.2"; + + src = fetchurl { + url = https://github.com/mlin/twt/archive/v0.93.2.tar.gz; + sha256 = "aec091fbd1e6c4d252cf9664237418b4bc8c7d6b7a17475589be78365397e768"; + }; + + buildInputs = [ ocaml findlib ]; + + createFindlibDestdir = true; + + configurePhase = '' + mkdir $out/bin + ''; + + dontBuild = true; + + installFlags = "PREFIX=$(out)"; + + meta = { + homepage = http://people.csail.mit.edu/mikelin/ocaml+twt/; + description = "“The Whitespace Thing” for OCaml"; + license = stdenv.lib.licenses.mit; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/development/python-modules/generic/wrap.sh b/pkgs/development/python-modules/generic/wrap.sh index 282aeca9ed1..857f002cace 100644 --- a/pkgs/development/python-modules/generic/wrap.sh +++ b/pkgs/development/python-modules/generic/wrap.sh @@ -26,6 +26,12 @@ wrapPythonProgramsIn() { # dont wrap EGG-INFO scripts since they are called from python if echo "$i" | grep -v EGG-INFO/scripts; then echo "wrapping \`$i'..." + sed -i "$i" -re '1 { + /^#!/!b; :r + /\\$/{N;b r} + /__future__|^ *(#.*)?$/{n;b r} + /^ *[^# ]/i import sys; sys.argv[0] = '"'$(basename "$i")'"' + }' wrapProgram "$i" \ --prefix PYTHONPATH ":" $program_PYTHONPATH \ --prefix PATH ":" $program_PATH diff --git a/pkgs/development/r-modules/cran-packages.nix b/pkgs/development/r-modules/cran-packages.nix index dcffbccb510..e986944d45d 100644 --- a/pkgs/development/r-modules/cran-packages.nix +++ b/pkgs/development/r-modules/cran-packages.nix @@ -38,7 +38,7 @@ let - inherit (pkgs) R fetchurl stdenv; + inherit (pkgs) R fetchurl stdenv curl; buildRPackage = import ./generic-builder.nix R; @@ -4252,7 +4252,7 @@ let self = _self // overrides; _self = with self; { rcqp = derive { name="rcqp"; version="0.3"; sha256="0vxcgchnxdsdamclcshjbkn00ysmfmqp586a36wsyv3zqrd6rg7p"; depends=[plyr]; }; Rcsdp = derive { name="Rcsdp"; version="0.1.53"; sha256="0x91hyx6z9f4zd7djxlq7dnznmr9skyzwbbcbjyid9hxbcfyvhcp"; depends=[]; }; rCUR = derive { name="rCUR"; version="1.3"; sha256="1f38xbc5n91k2y88cg0sv1z2p4g5vl7v2k1024f42f7526g2p2lx"; depends=[MASS Matrix lattice]; }; - RCurl = derive { name="RCurl"; version="1.95-4.3"; sha256="1gyjarnxwz3ldpm1vwq9ls6al66rvs7yshzhrl1fv9lbm1qi8yfg"; depends=[bitops]; }; + RCurl = derive { name="RCurl"; version="1.95-4.3"; sha256="1gyjarnxwz3ldpm1vwq9ls6al66rvs7yshzhrl1fv9lbm1qi8yfg"; depends=[bitops curl]; }; Rd2roxygen = derive { name="Rd2roxygen"; version="1.4"; sha256="09dxgp65zac5b9mxbjrvy3ihdwski98xva5afq659b8yfvkviq4g"; depends=[roxygen2 formatR]; }; rda = derive { name="rda"; version="1.0.2-2"; sha256="1g2q7c0y138i9r7jgjrlpqznvwpqsj6f7vljqqfzh2l6kcj43vjj"; depends=[]; }; rdatamarket = derive { name="rdatamarket"; version="0.6.4"; sha256="16a1yxvf841505a8gh7jf09fx6ipysymrpvsd4b07xdg5hvbzx25"; depends=[zoo RCurl RJSONIO]; }; diff --git a/pkgs/development/tools/analysis/massif-visualizer/default.nix b/pkgs/development/tools/analysis/massif-visualizer/default.nix new file mode 100644 index 00000000000..e21f5ed15e9 --- /dev/null +++ b/pkgs/development/tools/analysis/massif-visualizer/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, kdelibs, kgraphviewer, gettext }: + +stdenv.mkDerivation rec { + name = "massif-visualizer-${version}"; + version = "0.3.90"; + + src = fetchurl { + url = "mirror://kde/unstable/massif-visualizer/${version}/src/${name}.tar.xz"; + sha256 = "9940fa90137ca5eef08b9ec220825fadbf03db423a670a2c7fe3edab271d9922"; + }; + + buildInputs = [ kdelibs kgraphviewer gettext ]; + + meta = with stdenv.lib; { + description = "Tool that visualizes massif data generated by valgrind"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; + }; +} diff --git a/pkgs/development/tools/analysis/radare/default.nix b/pkgs/development/tools/analysis/radare/default.nix index 2ab8c05ebf8..3c83f0e9d49 100644 --- a/pkgs/development/tools/analysis/radare/default.nix +++ b/pkgs/development/tools/analysis/radare/default.nix @@ -12,15 +12,15 @@ let optional = stdenv.lib.optional; in stdenv.mkDerivation rec { - name = "radare-1.5"; + name = "radare-1.5.2"; src = fetchurl { url = "http://radare.org/get/${name}.tar.gz"; - sha256 = "1r0c9cc7z9likma8zicp2pbv2y85vjjmnk0k45wdhbvhgqh6il1h"; + sha256 = "1qdrmcnzfvfvqb27c7pknwm8jl2hqa6c4l66wzyddwlb8yjm46hd"; }; - buildInputs = [pkgconfig readline libusb libewf perl] + buildInputs = [pkgconfig readline libusb perl] ++ optional useX11 [gtkdialog vte gtk] ++ optional rubyBindings [ruby] ++ optional pythonBindings [python] diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix new file mode 100644 index 00000000000..7e199c29aed --- /dev/null +++ b/pkgs/development/tools/analysis/radare2/default.nix @@ -0,0 +1,39 @@ +{stdenv, fetchurl, pkgconfig, libusb, readline, libewf, perl, zlib, openssl, +gtk ? null, vte ? null, gtkdialog ? null, +python ? null, +ruby ? null, +lua ? null, +useX11, rubyBindings, pythonBindings, luaBindings}: + +assert useX11 -> (gtk != null && vte != null && gtkdialog != null); +assert rubyBindings -> ruby != null; +assert pythonBindings -> python != null; + +let + optional = stdenv.lib.optional; +in +stdenv.mkDerivation rec { + version = "0.9.7"; + name = "radare2-${version}"; + + src = fetchurl { + url = "http://radare.org/get/${name}.tar.xz"; + sha256 = "01sdsnbvx1qzyradj03sg24rk2bi9x58m40r0aqj8skv92c87s7l"; + }; + + + buildInputs = [pkgconfig readline libusb libewf perl zlib openssl] + ++ optional useX11 [gtkdialog vte gtk] + ++ optional rubyBindings [ruby] + ++ optional pythonBindings [python] + ++ optional luaBindings [lua]; + + meta = { + description = "Free advanced command line hexadecimal editor"; + homepage = http://radare.org/; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = with stdenv.lib.maintainers; [raskin]; + platforms = with stdenv.lib.platforms; linux; + inherit version; + }; +} diff --git a/pkgs/development/tools/build-managers/rebar/default.nix b/pkgs/development/tools/build-managers/rebar/default.nix index d10d9d6d1a3..d62ae35b854 100644 --- a/pkgs/development/tools/build-managers/rebar/default.nix +++ b/pkgs/development/tools/build-managers/rebar/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation { variety of locations (git, hg, etc). ''; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; maintainers = [ stdenv.lib.maintainers.the-kenny ]; }; } diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index fc48a4aabad..adff07ac35a 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -2,6 +2,8 @@ , cross ? null, gold ? true, bison ? null }: +assert !stdenv.isDarwin; + let basename = "binutils-2.23.1"; in with { inherit (stdenv.lib) optional optionals optionalString; }; diff --git a/pkgs/games/bsdgames/default.nix b/pkgs/games/bsdgames/default.nix index 59423d7a5a6..882f5f3cde6 100644 --- a/pkgs/games/bsdgames/default.nix +++ b/pkgs/games/bsdgames/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation { bsd_games_cfg_varlibdir=. bsd_games_cfg_non_interactive=y bsd_games_cfg_no_build_dirs="dab hack phantasia sail" - bsd_games_cfg_dictionary_src=${miscfiles}/share/dict/words + bsd_games_cfg_dictionary_src=${miscfiles}/share/web2 bsd_games_cfg_pager=${less} EOF diff --git a/pkgs/games/dwarf-fortress/df2014.nix b/pkgs/games/dwarf-fortress/df2014.nix index 6a0d30ea89f..300d7557e02 100644 --- a/pkgs/games/dwarf-fortress/df2014.nix +++ b/pkgs/games/dwarf-fortress/df2014.nix @@ -1,17 +1,41 @@ -{ stdenv, fetchurl, SDL, SDL_image, SDL_ttf, gtk, glib, mesa, openal, glibc, libsndfile -, copyDataDirectory ? false }: +{ stdenv, fetchgit, fetchurl, cmake, glew, ncurses, SDL, SDL_image, SDL_ttf, gtk2, glib, mesa, openal, pango, atk, gdk_pixbuf, glibc, libsndfile + , copyDataDirectory ? true }: + +/* set copyDataDirectory as true by default since df 40 does not seem to run without it */ + +let + + srcs = { + df_unfuck = fetchgit { + url = "https://github.com/svenstaro/dwarf_fortress_unfuck"; + rev = "4681508dd799aaf20b47c2ac0e9da18fa4876993"; + sha256 = "16495214a19742cb97351109b124ad9d691ee52bbb1b86c9c1907978734b5ca0"; + }; + + df = fetchurl { + url = "http://www.bay12games.com/dwarves/df_40_10_linux.tar.bz2"; + sha256 = "0hfm4395y0lacgsl7wqr6vwcw42pqm03xp7giqfk3mfsn32wqnm7"; + }; + }; + +in assert stdenv.system == "i686-linux"; stdenv.mkDerivation rec { - name = "dwarf-fortress-0.40.05"; + name = "dwarf-fortress-0.40.10"; - src = fetchurl { - url = "http://www.bay12games.com/dwarves/df_40_05_linux.tar.bz2"; - sha256 = "1b9nd33yz5a945v9jyqii1k4s71i701m2d0h7fw6f5g9p6nvx43s"; - }; - phases = "unpackPhase patchPhase installPhase"; + buildInputs = [ SDL SDL_image SDL_ttf gtk2 glib glew mesa ncurses openal glibc libsndfile pango atk cmake gdk_pixbuf]; + src = "${srcs.df_unfuck} ${srcs.df}"; + phases = "unpackPhase patchPhase configurePhase buildPhase installPhase"; + + sourceRoot = "git-export"; + + cmakeFlags = [ + "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib}/lib/glib-2.0/include" + "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2}/lib/gtk-2.0/include" + ]; /* :TODO: Game options should be configurable by patching the default configuration files */ @@ -21,11 +45,15 @@ stdenv.mkDerivation rec { set -x mkdir -p $out/bin mkdir -p $out/share/df_linux - cp -r * $out/share/df_linux + cd ../../ + cp -r ./df_linux/* $out/share/df_linux + rm $out/share/df_linux/libs/lib* + patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ stdenv.gcc.gcc stdenv.glibc ]}:$out/share/df_linux/libs" $out/share/df_linux/libs/Dwarf_Fortress + cp -f ./git-export/build/libgraphics.so $out/share/df_linux/libs/libgraphics.so + cp $permission $out/share/df_linux/nix_permission patchelf --set-interpreter ${glibc}/lib/ld-linux.so.2 $out/share/df_linux/libs/Dwarf_Fortress - ln -s ${libsndfile}/lib/libsndfile.so $out/share/df_linux/libs/ cat > $out/bin/dwarf-fortress << EOF #!${stdenv.shell} @@ -66,7 +94,7 @@ stdenv.mkDerivation rec { ''} # now run Dwarf Fortress! - export LD_LIBRARY_PATH=\$DF_DIR/df_linux/libs/:${SDL}/lib:${SDL_image}/lib/:${SDL_ttf}/lib/:${gtk}/lib/:${glib}/lib/:${mesa}/lib/:${openal}/lib/ + export LD_LIBRARY_PATH=\${stdenv.gcc}/lib:${SDL}/lib:${SDL_image}/lib/:${SDL_ttf}/lib/:${gtk2}/lib/:${glib}/lib/:${mesa}/lib/:${openal}/lib/:${libsndfile}/lib:$DF_DIR/df_linux/libs/ \$DF_DIR/df "\$@" EOF diff --git a/pkgs/misc/emulators/emulationstation/default.nix b/pkgs/misc/emulators/emulationstation/default.nix index 5767786e814..6ff0a21135a 100644 --- a/pkgs/misc/emulators/emulationstation/default.nix +++ b/pkgs/misc/emulators/emulationstation/default.nix @@ -1,25 +1,22 @@ -{ stdenv, fetchurl, pkgconfig, cmake, boost, eigen, freeimage, freetype -, mesa, SDL, dejavu_fonts }: +{ stdenv, fetchFromGitHub, pkgconfig, cmake, curl, boost, eigen +, freeimage, freetype, mesa, SDL2, alsaLib, libarchive }: stdenv.mkDerivation rec { name = "emulationstation-${version}"; - version = "1.0.2"; - src = fetchurl { - url = "https://github.com/Aloshi/EmulationStation/archive/v${version}.tar.gz"; - sha256 = "809d67aaa727809c1426fb543e36bb788ca6a3404f8c46dd1917088b57ab5f50"; + version = "2.0.0-rc1"; + + src = fetchFromGitHub { + owner = "Aloshi"; + repo = "EmulationStation"; + rev = "8739519e1591819cab85e1d2056804d20c197dac"; + sha256 = "1psq5cqyq2yy1lqxrcj7pfp8szfmzhamxf3111l97w2h2zzcgvq9"; }; - buildInputs = [ pkgconfig cmake boost eigen freeimage freetype mesa SDL ]; - - prePatch = '' - sed -i \ - -e 's,/usr\(.*\)/ttf-dejavu\(.*\),${dejavu_fonts}\1\2,' src/Font.cpp - ''; + buildInputs = [ pkgconfig cmake alsaLib boost curl eigen freeimage freetype libarchive mesa SDL2 ]; buildPhase = "cmake . && make"; installPhase = '' - mkdir -p $out/bin - mv ../emulationstation $out/bin/. + install -D ../emulationstation $out/bin/emulationstation ''; meta = { diff --git a/pkgs/misc/emulators/higan/builder.sh b/pkgs/misc/emulators/higan/builder.sh index 144c23d39de..0d01f7dc971 100644 --- a/pkgs/misc/emulators/higan/builder.sh +++ b/pkgs/misc/emulators/higan/builder.sh @@ -18,3 +18,18 @@ install -m 644 ananke/libananke.so $out/lib/libananke.so.1 (cd $out/lib && ln -s libananke.so.1 libananke.so) oldRPath=$(patchelf --print-rpath $out/bin/higan) patchelf --set-rpath $oldRPath:$out/lib $out/bin/higan + +# A dirty workaround, suggested by @cpages: +# we create a first-run script to populate +# the local $HOME with all the auxiliary +# stuff needed by higan at runtime + +cat < $out/bin/higan-config.sh +#!${shell} + +cp --update --recursive $out/share/higan \$HOME/.config +chmod --recursive u+w \$HOME/.config/higan + +EOF + +chmod +x $out/bin/higan-config.sh diff --git a/pkgs/misc/emulators/higan/default.nix b/pkgs/misc/emulators/higan/default.nix index aceb55b1396..532eeef2280 100644 --- a/pkgs/misc/emulators/higan/default.nix +++ b/pkgs/misc/emulators/higan/default.nix @@ -44,5 +44,6 @@ stdenv.mkDerivation rec { # TODO: # - options to choose profiles (accuracy, balanced, performance) # and different GUIs (gtk2, qt4) -# - fix the BML and BIOS paths - maybe a custom patch to Higan project? +# - fix the BML and BIOS paths - maybe submitting +# a custom patch to Higan project would not be a bad idea... # diff --git a/pkgs/misc/emulators/retroarch/master.nix b/pkgs/misc/emulators/retroarch/master.nix new file mode 100644 index 00000000000..44bd6649045 --- /dev/null +++ b/pkgs/misc/emulators/retroarch/master.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit, freetype, libxml2, libv4l +, coreutils, python34, which, udev, alsaLib, libX11, libXext, libXxf86vm, libXdmcp, SDL +, pulseaudio ? null }: +stdenv.mkDerivation rec { + name = "retroarch-20140902"; + src = fetchgit { + url = git://github.com/libretro/RetroArch.git; + rev = "0856091296c2e47409f36e13007805d71db69483"; + sha256 = "152dfp6jd7yzvasqrqw4ydjbdcwq4khisia2dax3gydvxkq87nl4"; + }; + + buildInputs = [ pkgconfig ffmpeg mesa nvidia_cg_toolkit freetype libxml2 libv4l coreutils + python34 which udev alsaLib libX11 libXext libXxf86vm libXdmcp SDL pulseaudio ]; + + patchPhase = '' + export GLOBAL_CONFIG_DIR=$out/etc + sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh + ''; + + enableParallelBuilding = true; + + meta = { + homepage = http://libretro.org/; + description = "Multi-platform emulator frontend for libretro cores"; + license = stdenv.lib.licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [ MP2E ]; + }; +} diff --git a/pkgs/misc/phabricator/default.nix b/pkgs/misc/phabricator/default.nix new file mode 100644 index 00000000000..3162dd0079d --- /dev/null +++ b/pkgs/misc/phabricator/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchgit, pkgs, ... }: + +stdenv.mkDerivation rec { + version = "2014-07-16"; + name = "phabricator-${version}"; + srcLibphutil = pkgs.fetchgit { + url = git://github.com/facebook/libphutil.git; + rev = "48a04395363d6c1dd9f66057bd11fd70d4665ba9"; + sha256 = "d570d2c1e68471c2eda35b8722d8083bcc13163fbd5c944529464f2c7b55a2e5"; + }; + srcArcanist = pkgs.fetchgit { + url = git://github.com/facebook/arcanist.git; + rev = "97501da16416fbfdc6e84bd60abcbf5ad9506225"; + sha256 = "9031c4ae228bdc986131e0c93c98fb73290bb0e297be1ec32f22ab09cdacafa3"; + }; + srcPhabricator = pkgs.fetchgit { + url = git://github.com/phacility/phabricator.git; + rev = "7ac5abb97934f7399b67762aa98f59f667711bf3"; + sha256 = "6a1d449597ae4432e40a3e6cdb14e3a5a8a40e019f3930493064c35911f2adcc"; + }; + + buildCommand = '' + mkdir -p $out + cp -R ${srcLibphutil} $out/libphutil + cp -R ${srcArcanist} $out/arcanist + cp -R ${srcPhabricator} $out/phabricator + ''; +} diff --git a/pkgs/servers/http/nginx/default.nix b/pkgs/servers/http/nginx/default.nix index 903cf038d6e..700317bc799 100644 --- a/pkgs/servers/http/nginx/default.nix +++ b/pkgs/servers/http/nginx/default.nix @@ -1,10 +1,11 @@ { stdenv, fetchurl, fetchgit, openssl, zlib, pcre, libxml2, libxslt, expat -, gd, geoip +, gd, geoip, luajit , rtmp ? false , fullWebDAV ? false , syslog ? false , moreheaders ? false -, echo ? false }: +, echo ? false +, ngx_lua ? false }: with stdenv.lib; @@ -44,6 +45,19 @@ let rev = "refs/tags/v0.53"; sha256 = "90d4e3a49c678019f4f335bc18529aa108fcc9cfe0747ea4e2f6084a70da2868"; }; + + develkit-ext = fetchgit { + url = https://github.com/simpl/ngx_devel_kit.git; + rev = "refs/tags/v0.2.19"; + sha256 = "169m6gsa5b6zh1ws8qx2k7dbswld1zmhm4dh57qka0h07gs5dqjg"; + }; + + lua-ext = fetchgit { + url = https://github.com/openresty/lua-nginx-module.git; + rev = "refs/tags/v0.9.11"; + sha256 = "0y7238bvb907n7fsz5sivxbhfz2xnf4f0lzwk3k3h9j20fsyvwqq"; + }; + in stdenv.mkDerivation rec { @@ -52,7 +66,11 @@ stdenv.mkDerivation rec { buildInputs = [ openssl zlib pcre libxml2 libxslt gd geoip - ] ++ optional fullWebDAV expat; + ] ++ optional fullWebDAV expat + ++ optional ngx_lua luajit; + + LUAJIT_LIB = if ngx_lua then "${luajit}/lib" else ""; + LUAJIT_INC = if ngx_lua then "${luajit}/include/luajit-2.0" else ""; patches = if syslog then [ "${syslog-ext}/syslog-1.5.6.patch" ] else []; @@ -83,6 +101,7 @@ stdenv.mkDerivation rec { ++ optional syslog "--add-module=${syslog-ext}" ++ optional moreheaders "--add-module=${moreheaders-ext}" ++ optional echo "--add-module=${echo-ext}" + ++ optional ngx_lua "--add-module=${develkit-ext} --add-module=${lua-ext}" ++ optional (elem stdenv.system (with platforms; linux ++ freebsd)) "--with-file-aio"; diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix index a918007b47c..de262af095c 100644 --- a/pkgs/servers/pulseaudio/default.nix +++ b/pkgs/servers/pulseaudio/default.nix @@ -45,10 +45,15 @@ stdenv.mkDerivation rec { -e "s|chmod r+s |true |" ''; - configureFlags = - [ "--disable-solaris" "--disable-jack" "--disable-oss-output" - "--disable-oss-wrapper" "--localstatedir=/var" "--sysconfdir=/etc" ] - ++ stdenv.lib.optional jackaudioSupport "--enable-jack" + configureFlags = [ + "--disable-solaris" + "--disable-jack" + "--disable-oss-output" + "--disable-oss-wrapper" + "--localstatedir=/var" + "--sysconfdir=/etc" + "--with-access-group=audio" + ] ++ stdenv.lib.optional jackaudioSupport "--enable-jack" ++ stdenv.lib.optional stdenv.isDarwin "--with-mac-sysroot=/"; enableParallelBuilding = true; diff --git a/pkgs/servers/search/sphinxsearch/default.nix b/pkgs/servers/search/sphinxsearch/default.nix new file mode 100644 index 00000000000..1979da5b2c0 --- /dev/null +++ b/pkgs/servers/search/sphinxsearch/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, pkgconfig, mysql, + version ? "2.1.9", + mainSrc ? fetchurl { + url = "http://sphinxsearch.com/files/sphinx-${version}-release.tar.gz"; + sha256 = "00vwxf3zr0g1fq9mls1z2rd8nxw74b76pkl1j466lig1qc5am2b2"; + } +}: + +stdenv.mkDerivation rec { + name = "sphinxsearch-${version}"; + src = mainSrc; + + configureFlags = [ + "--program-prefix=sphinxsearch-" + ]; + + buildInputs = [ + pkgconfig + mysql + ]; + + meta = { + description = "An open source full text search server"; + homepage = http://sphinxsearch.com; + license = stdenv.lib.licenses.gpl2; + platforms = stdenv.lib.platforms.all; + maintainers = with stdenv.lib.maintainers; [ ederoyd46 ]; + }; +} diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix index 02f214ad430..79566d15bb9 100644 --- a/pkgs/tools/filesystems/btrfsprogs/default.nix +++ b/pkgs/tools/filesystems/btrfsprogs/default.nix @@ -16,6 +16,8 @@ stdenv.mkDerivation rec { asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt ]; + patches = [ ./multiple_mounts.patch ]; + # for btrfs to get the rpath to libgcc_s, needed for pthread_cancel to work NIX_CFLAGS_LINK = "-lgcc_s"; diff --git a/pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch b/pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch new file mode 100644 index 00000000000..0ba6550a2d3 --- /dev/null +++ b/pkgs/tools/filesystems/btrfsprogs/multiple_mounts.patch @@ -0,0 +1,13 @@ +Only in btrfs-progs-v3.16-orig: btrfs-progs-v3.16 +diff -U3 -r btrfs-progs-v3.16-orig/utils.c btrfs-progs-v3.16/utils.c +--- btrfs-progs-v3.16-orig/utils.c 2014-09-03 09:57:45.644858545 +0400 ++++ btrfs-progs-v3.16/utils.c 2014-09-03 09:59:26.968855663 +0400 +@@ -2360,7 +2360,7 @@ + len = strlen(ent->mnt_dir); + if (strncmp(ent->mnt_dir, path, len) == 0) { + /* match found */ +- if (longest_matchlen < len) { ++ if ((longest_matchlen < len) || (longest_matchlen==len && not_btrfs)) { + free(longest_match); + longest_matchlen = len; + longest_match = strdup(ent->mnt_dir); diff --git a/pkgs/tools/filesystems/yandex-disk/default.nix b/pkgs/tools/filesystems/yandex-disk/default.nix index c9078a0cb8b..e33f46ea9cc 100644 --- a/pkgs/tools/filesystems/yandex-disk/default.nix +++ b/pkgs/tools/filesystems/yandex-disk/default.nix @@ -6,17 +6,17 @@ let p = if stdenv.is64bit then { arch = "x86_64"; gcclib = "${stdenv.gcc.gcc}/lib64"; - sha256 = "1fmmlvvh97d60n9k08bn4k6ghwr3yhs8sib82025nwpw1sq08vim"; + sha256 = "09kw7f0qsvx3vx1c1zb117yf3yk7kkz66agspz5xx9b0zh6i82jw"; } else { arch = "i386"; gcclib = "${stdenv.gcc.gcc}/lib"; - sha256 = "3940420bd9d1fe1ecec1a117bfd9d21d545bca59f5e0a4364304ab808c976f7f"; + sha256 = "0f2230c91120f05159281b39c620ab6bad6559ce8a17a0874d0a82350ebba426"; }; in stdenv.mkDerivation rec { - name = "yandex-disk-0.1.2.481"; + name = "yandex-disk-0.1.4.504"; src = fetchurl { url = "http://repo.yandex.ru/yandex-disk/rpm/stable/${p.arch}/${name}-1.fedora.${p.arch}.rpm"; diff --git a/pkgs/tools/graphics/wkhtmltopdf/default.nix b/pkgs/tools/graphics/wkhtmltopdf/default.nix index 84b271acf2b..2f3929b82b8 100644 --- a/pkgs/tools/graphics/wkhtmltopdf/default.nix +++ b/pkgs/tools/graphics/wkhtmltopdf/default.nix @@ -1,22 +1,88 @@ -{ stdenv, fetchurl, qt4 }: +{ stdenv, fetchgit, qt4, fontconfig, freetype, libpng, zlib, libjpeg +, openssl, libX11, libXext, libXrender, overrideDerivation }: stdenv.mkDerivation rec { - name = "wkhtmltopdf-0.11.0_rc1"; + version = "0.12.1"; + name = "wkhtmltopdf-${version}"; - src = fetchurl { - url = "http://wkhtmltopdf.googlecode.com/files/${name}.tar.bz2"; - sha1 = "db03922d281856e503b3d562614e3936285728c7"; + src = fetchgit { + url = "https://github.com/wkhtmltopdf/wkhtmltopdf.git"; + rev = "refs/tags/${version}"; + sha256 = "0wjzaaviy1k3z8r2kzb2rmyx6xdj23a338b86sxcb15ws3kzwgwh"; }; - buildInputs = [ qt4 ]; + wkQt = overrideDerivation qt4 (deriv: { + name = "qt-mod-4.8.6"; + src = fetchgit { + url = "https://github.com/wkhtmltopdf/qt.git"; + rev = "82b568b"; # From git submodule spec in wkhtml repo. + sha256 = "0whppwxnymh5bdayqsqx54n074m99yk6v78z7f0k5prja55yvwyx"; + }; + configureFlags = + '' + -v -no-separate-debug-info -release -confirm-license -opensource + -qdbus -glib -dbus-linked -openssl-linked + '' + + # This is taken from the wkhtml build script that we don't run + '' + -fast + -static + -exceptions + -xmlpatterns + -webkit + -system-zlib + -system-libpng + -system-libjpeg + -no-libmng + -no-libtiff + -no-accessibility + -no-stl + -no-qt3support + -no-phonon + -no-phonon-backend + -no-opengl + -no-declarative + -no-sql-ibase + -no-sql-mysql + -no-sql-odbc + -no-sql-psql + -no-sql-sqlite + -no-sql-sqlite2 + -no-mmx + -no-3dnow + -no-sse + -no-sse2 + -no-multimedia + -nomake demos + -nomake docs + -nomake examples + -nomake tools + -nomake tests + -nomake translations + ''; + }); + + buildInputs = [ wkQt fontconfig freetype libpng zlib libjpeg openssl + libX11 libXext libXrender + ]; configurePhase = "qmake wkhtmltopdf.pro INSTALLBASE=$out"; + patches = [ ./makefix.patch ]; + enableParallelBuilding = true; meta = { - homepage = http://code.google.com/p/wkhtmltopdf/; + homepage = http://wkhtmltopdf.org/; description = "Tools for rendering web pages to PDF or images"; + longDescription = '' + wkhtmltopdf and wkhtmltoimage are open source (LGPL) command line tools + to render HTML into PDF and various image formats using the QT Webkit + rendering engine. These run entirely "headless" and do not require a + display or display service. + + There is also a C library, if you're into that kind of thing. + ''; license = stdenv.lib.licenses.gpl3Plus; }; } diff --git a/pkgs/tools/graphics/wkhtmltopdf/makefix.patch b/pkgs/tools/graphics/wkhtmltopdf/makefix.patch new file mode 100644 index 00000000000..0642a23afa9 --- /dev/null +++ b/pkgs/tools/graphics/wkhtmltopdf/makefix.patch @@ -0,0 +1,24 @@ +diff -Naur a/src/image/image.pro b/src/image/image.pro +--- a/src/image/image.pro 2014-08-28 14:07:51.024561967 +0200 ++++ b/src/image/image.pro 2014-08-28 14:08:22.383623390 +0200 +@@ -25,7 +25,7 @@ + + unix { + man.path=$$INSTALLBASE/share/man/man1 +- man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltoimage --manpage | gzip > $(INSTALL_ROOT)/share/man/man1/wkhtmltoimage.1.gz ++ man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltoimage --manpage | gzip > $$INSTALLBASE/share/man/man1/wkhtmltoimage.1.gz + + QMAKE_EXTRA_TARGETS += man + INSTALLS += man +diff -Naur a/src/pdf/pdf.pro b/src/pdf/pdf.pro +--- a/src/pdf/pdf.pro 2014-08-28 14:10:02.305818775 +0200 ++++ b/src/pdf/pdf.pro 2014-08-28 14:09:47.360789555 +0200 +@@ -25,7 +25,7 @@ + + unix { + man.path=$$INSTALLBASE/share/man/man1 +- man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltopdf --manpage | gzip > $(INSTALL_ROOT)/share/man/man1/wkhtmltopdf.1.gz ++ man.extra=LD_LIBRARY_PATH=../../bin/ ../../bin/wkhtmltopdf --manpage | gzip > $$INSTALLBASE/share/man/man1/wkhtmltopdf.1.gz + + QMAKE_EXTRA_TARGETS += man + INSTALLS += man diff --git a/pkgs/tools/inputmethods/fcitx/default.nix b/pkgs/tools/inputmethods/fcitx/default.nix index 2795b0d4d87..2db5d36a10d 100644 --- a/pkgs/tools/inputmethods/fcitx/default.nix +++ b/pkgs/tools/inputmethods/fcitx/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "fcitx-4.2.8.3"; + name = "fcitx-4.2.8.4"; src = fetchurl { url = "http://download.fcitx-im.org/fcitx/${name}_dict.tar.xz"; - sha256 = "05dw6cbjh2jyjrkr4qx2bcq6nyhhrs0akf6fcjk5a72bgphhwqnb"; + sha256 = "1yhvqg4q0knywdrh8sljqjn1i72rd8ya0fr70pc0w7fq25013x37"; }; patchPhase = '' diff --git a/pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix b/pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix new file mode 100644 index 00000000000..2099220f2a1 --- /dev/null +++ b/pkgs/tools/inputmethods/fcitx/fcitx-anthy.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, cmake, fcitx, anthy }: + +stdenv.mkDerivation rec { + name = "fcitx-anthy-0.2.1"; + + meta = with stdenv.lib; { + description = "Fcitx Wrapper for anthy"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ iyzsong ]; + }; + + src = fetchurl { + url = "http://download.fcitx-im.org/fcitx-anthy/${name}.tar.xz"; + sha256 = "13fpfhhxkzbq53h10i3hifa37nngm47jq361i70z22bgcrs8887x"; + }; + + buildInputs = [ cmake fcitx anthy ]; + + preInstall = '' + substituteInPlace src/cmake_install.cmake \ + --replace ${fcitx} $out + ''; +} diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix index b1877bdcf98..e5471a6c404 100644 --- a/pkgs/tools/misc/grub/2.0x.nix +++ b/pkgs/tools/misc/grub/2.0x.nix @@ -1,30 +1,52 @@ -{ fetchurl, stdenv, flex, bison, gettext, ncurses, libusb, freetype, qemu -, devicemapper, EFIsupport ? false }: +{ stdenv, fetchurl, fetchgit, autogen, flex, bison, python, autoconf, automake +, gettext, ncurses, libusb, freetype, qemu, devicemapper +, linuxPackages ? null +, efiSupport ? false +, zfsSupport ? false +}: +with stdenv.lib; let + efiSystems = { + "i686-linux".target = "i386"; + "x86_64-linux".target = "x86_64"; + }; - prefix = "grub${if EFIsupport then "-efi" else ""}"; + canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems); - version = "2.00"; + prefix = "grub${if efiSupport then "-efi" else ""}${optionalString zfsSupport "-zfs"}"; + + version = "2.02-git-1de3a4"; unifont_bdf = fetchurl { url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz"; sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx"; }; -in + po_src = fetchurl { + name = "grub-2.02-beta2.tar.gz"; + url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.gz"; + sha256 = "1lr9h3xcx0wwrnkxdnkfjwy08j7g7mdlmmbdip2db4zfgi69h0rm"; + }; + +in ( + +assert efiSupport -> canEfi; +assert zfsSupport -> linuxPackages != null && linuxPackages.zfs != null; stdenv.mkDerivation rec { name = "${prefix}-${version}"; - src = fetchurl { - url = "mirror://gnu/grub/grub-${version}.tar.xz"; - sha256 = "0n64hpmsccvicagvr0c6v0kgp2yw0kgnd3jvsyd26cnwgs7c6kkq"; + src = fetchgit { + url = "git://git.savannah.gnu.org/grub.git"; + rev = "1de3a48098053aaebd35232bd73e3ce3f3fdf51c"; + sha256 = "0d1953nmi251czkm1dmd7vnm3iz2rkqbznlp6ph33va0d7kw1kfc"; }; - nativeBuildInputs = [ flex bison ]; + nativeBuildInputs = [ autogen flex bison python autoconf automake ]; buildInputs = [ ncurses libusb freetype gettext devicemapper ] - ++ stdenv.lib.optional doCheck qemu; + ++ optional doCheck qemu + ++ optional zfsSupport linuxPackages.zfs; preConfigure = '' for i in "tests/util/"*.in @@ -43,27 +65,22 @@ stdenv.mkDerivation rec { # See . sed -i "tests/util/grub-shell.in" \ -e's/qemu-system-i386/qemu-system-x86_64 -nodefaults/g' - - # Fix for building on Glibc 2.16. Won't be needed once the - # gnulib in grub is updated. - sed -i '/gets is a security hole/d' grub-core/gnulib/stdio.in.h ''; prePatch = - '' gunzip < "${unifont_bdf}" > "unifont.bdf" + '' tar zxf ${po_src} grub-2.02~beta2/po + rm -rf po + mv grub-2.02~beta2/po po + sh autogen.sh + gunzip < "${unifont_bdf}" > "unifont.bdf" sed -i "configure" \ -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g" ''; patches = [ ./fix-bash-completion.patch ]; - configureFlags = - let arch = if stdenv.system == "i686-linux" then "i386" - else if stdenv.system == "x86_64-linux" then "x86_64" - else throw "unsupported EFI firmware architecture"; - in - stdenv.lib.optionals EFIsupport - [ "--with-platform=efi" "--target=${arch}" "--program-prefix=" ]; + configureFlags = optional zfsSupport "--enable-libzfs" + ++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystems.${stdenv.system}.target}" "--program-prefix=" ]; doCheck = false; enableParallelBuilding = true; @@ -72,7 +89,7 @@ stdenv.mkDerivation rec { paxmark pms $out/sbin/grub-{probe,bios-setup} ''; - meta = { + meta = with stdenv.lib; { description = "GNU GRUB, the Grand Unified Boot Loader (2.x beta)"; longDescription = @@ -89,11 +106,8 @@ stdenv.mkDerivation rec { homepage = http://www.gnu.org/software/grub/; - license = stdenv.lib.licenses.gpl3Plus; + license = licenses.gpl3Plus; - platforms = if EFIsupport then - [ "i686-linux" "x86_64-linux" ] - else - stdenv.lib.platforms.gnu; + platforms = platforms.gnu; }; -} +}) diff --git a/pkgs/tools/misc/mdbtools/git.nix b/pkgs/tools/misc/mdbtools/git.nix index 2805514965e..b97af331093 100644 --- a/pkgs/tools/misc/mdbtools/git.nix +++ b/pkgs/tools/misc/mdbtools/git.nix @@ -3,12 +3,13 @@ scrollkeeper}: stdenv.mkDerivation { - name = "mdbtools-git"; + name = "mdbtools-git-2014-07-25"; src = fetchgit { url = "http://github.com/brianb/mdbtools.git"; - rev = "dfd752ec022097ee1e0999173aa604d8a0c0ca8b"; - sha256 = "0ibj36yxlhwjgi7cj170lwpbzdbgidkq5p8raa59v76bdrxwmb0n"; + rev = "9ab40e83e6789015c965c92bdb62f92f8cdd0dbd"; + sha256 = "18j1a9y9xhl7hhx30zvmx2n4w7dc8c7sdr6722sf3mh5230mvv59"; + name = "mdbtools-git-export"; }; buildInputs = [glib readline bison flex pkgconfig libiconv autoconf automake diff --git a/pkgs/tools/misc/screenfetch/default.nix b/pkgs/tools/misc/screenfetch/default.nix index 0ebc712fcf0..826f4e4d869 100644 --- a/pkgs/tools/misc/screenfetch/default.nix +++ b/pkgs/tools/misc/screenfetch/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchgit, xdpyinfo, xprop }: let - version = "2014-05-27"; + version = "3.6.2"; in stdenv.mkDerivation { name = "screenFetch-${version}"; @@ -9,8 +9,8 @@ stdenv.mkDerivation { src = fetchgit { url = git://github.com/KittyKatt/screenFetch.git; - rev = "69c46cb94b5765dbcb36905c5a35c42eb8e6e470"; - sha256 = "0479na831120bpyrg5nb3nb1jr8p8ahkixk1znwg730q3vdcjd6j"; + rev = "dec1cd6c2471defe4459967fbc8ae15b55714338"; + sha256 = "138a7g0za5dq27jx7x8gqg7gjkgyq0017v0nbcg68ys7dqlxsdl3"; }; installPhase = '' diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix new file mode 100644 index 00000000000..030cb30a150 --- /dev/null +++ b/pkgs/tools/networking/tinc/pre.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }: + +stdenv.mkDerivation rec { + name = "tinc-1.1pre38d7e73"; + + src = fetchgit { + url = "git://tinc-vpn.org/tinc"; + rev = "38d7e730e619a8b86dfbf68d77773564595f12a1"; + sha256 = "0xac1jm6x9lkybd6sz8lfcdrb8h69kh1ckg35ag1rssr45hxikbz"; + }; + + buildInputs = [ autoreconfHook texinfo ncurses readline zlib lzo openssl ]; + + configureFlags = [ + "--sysconfdir=/etc" + "--localstatedir=/var" + ]; + + meta = with stdenv.lib; { + description = "VPN daemon with full mesh routing"; + longDescription = '' + tinc is a Virtual Private Network (VPN) daemon that uses tunnelling and + encryption to create a secure private network between hosts on the + Internet. It features full mesh routing, as well as encryption, + authentication, compression and ethernet bridging. + ''; + homepage="http://www.tinc-vpn.org/"; + license = licenses.gpl2Plus; + platforms = platforms.unix; + maintainers = with maintainers; [ wkennington ]; + }; +} diff --git a/pkgs/tools/networking/urlwatch/default.nix b/pkgs/tools/networking/urlwatch/default.nix index 4843f07c8f2..1be71942e70 100644 --- a/pkgs/tools/networking/urlwatch/default.nix +++ b/pkgs/tools/networking/urlwatch/default.nix @@ -12,6 +12,10 @@ python3Packages.buildPythonPackage rec { ./convert-to-python3.sh ''; + postFixup = '' + wrapProgram "$out/bin/urlwatch" --prefix "PYTHONPATH" : "$PYTHONPATH" + ''; + meta = { description = "A tool for monitoring webpages for updates"; homepage = https://thp.io/2008/urlwatch/; diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix index 61e998fd545..b6b88aef022 100644 --- a/pkgs/tools/package-management/disnix/default.nix +++ b/pkgs/tools/package-management/disnix/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconvOrEmpty }: stdenv.mkDerivation { - name = "disnix-0.3pre174e883b7b09da822494876d2f297736f33707a7"; + name = "disnix-0.3pre24d959b3b37ce285971810245643a7f18cb85fcc"; src = fetchurl { - url = http://hydra.nixos.org/build/11773951/download/4/disnix-0.3pre174e883b7b09da822494876d2f297736f33707a7.tar.gz; - sha256 = "19hdh2mrlyiq1g3z6lnnqqvripmfcdnm18jpm4anp5iarhnwh3y4"; + url = http://hydra.nixos.org/build/13612993/download/4/disnix-0.3pre24d959b3b37ce285971810245643a7f18cb85fcc.tar.gz; + sha256 = "0ml8g6h7x79mvv84il9vb9b88kqak9m3yzavmar66i3dvyqr1dwb"; }; buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconvOrEmpty dysnomia ]; diff --git a/pkgs/tools/package-management/disnix/disnixos/default.nix b/pkgs/tools/package-management/disnix/disnixos/default.nix index 65ae91f6e18..0190a5fd679 100644 --- a/pkgs/tools/package-management/disnix/disnixos/default.nix +++ b/pkgs/tools/package-management/disnix/disnixos/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, disnix, socat, pkgconfig, getopt }: stdenv.mkDerivation { - name = "disnixos-0.2prebb320d396f93d7062c28d6a54105d8e8196b9d99"; + name = "disnixos-0.2prec3310e2d8975c45e4ffacec940049fb781739b8d"; src = fetchurl { - url = http://hydra.nixos.org/build/9877039/download/3/disnixos-0.2preb10c56eeb1be3046645eea90c779e2d64045581f.tar.gz; - sha256 = "1pkpf6vp9q3jjp212lghbs1km8iqh4rm9xa5jm0dqb5ya25f0jf2"; + url = http://hydra.nixos.org/build/13617499/download/3/disnixos-0.2prec3310e2d8975c45e4ffacec940049fb781739b8d.tar.gz; + sha256 = "1kcpzzwy9jc1zz700whnp6sc77yp3wxzr935f07jy55ddkl8mdi5"; }; buildInputs = [ socat pkgconfig disnix getopt ]; diff --git a/pkgs/tools/package-management/disnix/dysnomia/default.nix b/pkgs/tools/package-management/disnix/dysnomia/default.nix index a1914224dbd..574bf8f9ab3 100644 --- a/pkgs/tools/package-management/disnix/dysnomia/default.nix +++ b/pkgs/tools/package-management/disnix/dysnomia/default.nix @@ -19,10 +19,10 @@ assert enableEjabberdDump -> ejabberd != null; assert enableMongoDatabase -> mongodb != null; stdenv.mkDerivation { - name = "dysnomia-0.3pre09cc08f5ffc737d988923bb7329a7ec711badd82"; + name = "dysnomia-0.3precf347cbd508f488f115f8961371a3cecf03fd530"; src = fetchurl { - url = http://hydra.nixos.org/build/11407191/download/1/dysnomia-0.3pre09cc08f5ffc737d988923bb7329a7ec711badd82.tar.gz; - sha256 = "1i7yb299bq1z7cy4sk83m5faahj8inh73xn5bi6jcv492zv3kgwz"; + url = http://hydra.nixos.org/build/13281061/download/1/dysnomia-0.3precf347cbd508f488f115f8961371a3cecf03fd530.tar.gz; + sha256 = "0xiqpz2c3dh4pbdprvrd7plvq3ipngqbjkwpmbhw1nw90x5rpa2d"; }; preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else ""; diff --git a/pkgs/tools/security/john/default.nix b/pkgs/tools/security/john/default.nix new file mode 100644 index 00000000000..97f67dfbd71 --- /dev/null +++ b/pkgs/tools/security/john/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchgit, openssl, nss, nspr, krb5, gmp, zlib, libpcap, re2 }: + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "JohnTheRipper-${version}"; + version = "8a3e3c1d"; + buildInputs = [ openssl nss nspr krb5 gmp zlib libpcap re2 ]; + preConfigure = ''cd src''; + installPhase = '' + ensureDir $out/share/john/ + ensureDir $out/bin + cp -R ../run/* $out/share/john + ln -s $out/share/john/john $out/bin/john + ''; + src = fetchgit { + url = https://github.com/magnumripper/JohnTheRipper.git; + rev = "93f061bc41652c94ae049b52572aac709d18aa4c"; + sha256 = "1rnfi09830n34jcqaxmsam54p4zsq9a49ic2ljh44lahcipympvy"; + }; + meta = { + description = "John the Ripper password cracker"; + license = licenses.gpl2; + homepage = https://github.com/magnumripper/JohnTheRipper/; + maintainers = with maintainers; [offline]; + platforms = with platforms; unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a96ede812cf..2a504e1b3b2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -528,7 +528,7 @@ let pkgs_i686 = pkgsi686Linux; }; - inherit (androidenv) androidsdk_4_1; + inherit (androidenv) androidsdk_4_4 androidndk; aria2 = callPackage ../tools/networking/aria2 { }; aria = aria2; @@ -1032,6 +1032,8 @@ let fcitx = callPackage ../tools/inputmethods/fcitx { }; + fcitx-anthy = callPackage ../tools/inputmethods/fcitx/fcitx-anthy.nix { }; + fcron = callPackage ../tools/system/fcron { }; fdm = callPackage ../tools/networking/fdm {}; @@ -1235,9 +1237,11 @@ let buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true; }; - grub2 = callPackage ../tools/misc/grub/2.0x.nix { libusb = libusb1; flex = flex_2_5_35; }; + grub2 = callPackage ../tools/misc/grub/2.0x.nix { }; - grub2_efi = grub2.override { EFIsupport = true; }; + grub2_efi = grub2.override { efiSupport = true; }; + + grub2_zfs = grub2.override { zfsSupport = true; }; gssdp = callPackage ../development/libraries/gssdp { inherit (gnome) libsoup; @@ -1390,6 +1394,8 @@ let jnettop = callPackage ../tools/networking/jnettop { }; + john = callPackage ../tools/security/john { }; + jq = callPackage ../development/tools/jq {}; jscoverage = callPackage ../development/tools/misc/jscoverage { }; @@ -1975,6 +1981,10 @@ let qjoypad = callPackage ../tools/misc/qjoypad { }; + qscintilla = callPackage ../development/libraries/qscintilla { + qt = qt4; + }; + qshowdiff = callPackage ../tools/text/qshowdiff { }; quilt = callPackage ../development/tools/quilt { }; @@ -2260,6 +2270,8 @@ let tinc = callPackage ../tools/networking/tinc { }; + tinc_pre = callPackage ../tools/networking/tinc/pre.nix { }; + tiny8086 = callPackage ../applications/virtualization/8086tiny { }; tmpwatch = callPackage ../tools/misc/tmpwatch { }; @@ -2492,7 +2504,10 @@ let wicd = callPackage ../tools/networking/wicd { }; - wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { }; + wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { + overrideDerivation = lib.overrideDerivation; + inherit (xlibs) libX11 libXext libXrender; + }; wv = callPackage ../tools/misc/wv { }; @@ -3392,6 +3407,10 @@ let opam_1_1 = callPackage ../development/tools/ocaml/opam/1.1.nix { }; opam = opam_1_1; + sqlite3EZ = callPackage ../development/ocaml-modules/sqlite3EZ { }; + + twt = callPackage ../development/ocaml-modules/twt { }; + utop = callPackage ../development/tools/ocaml/utop { }; sawja = callPackage ../development/ocaml-modules/sawja { }; @@ -3901,9 +3920,11 @@ let bam = callPackage ../development/tools/build-managers/bam {}; - binutils = callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - }; + binutils = if stdenv.isDarwin + then stdenv.gcc.binutils + else callPackage ../development/tools/misc/binutils { + inherit noSysDirs; + }; binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { inherit noSysDirs; @@ -4224,6 +4245,15 @@ let rubyBindings = config.radare.rubyBindings or false; luaBindings = config.radare.luaBindings or false; }; + radare2 = callPackage ../development/tools/analysis/radare2 { + inherit (gnome) vte; + lua = lua5; + useX11 = config.radare.useX11 or false; + pythonBindings = config.radare.pythonBindings or false; + rubyBindings = config.radare.rubyBindings or false; + luaBindings = config.radare.luaBindings or false; + }; + ragel = callPackage ../development/tools/parsing/ragel { }; @@ -6080,24 +6110,24 @@ let else stdenv; }; - qt48Full = qt48.override { + qt48Full = appendToName "full" (qt48.override { docs = true; demos = true; examples = true; developerBuild = true; - }; + }); qt4SDK = qtcreator.override { sdkBuild = true; qtLib = qt48Full; }; - qt53Full = qt53.override { + qt53Full = appendToName "full" (qt53.override { buildDocs = true; buildExamples = true; buildTests = true; developerBuild = true; - }; + }); qt53 = callPackage ../development/libraries/qt-5/qt-5.3.nix { mesa = mesa_noglu; @@ -6115,12 +6145,12 @@ let bison = bison2; # error: too few arguments to function 'int yylex(... }; - qt5Full = qt5.override { + qt5Full = appendToName "full" (qt5.override { buildDocs = true; buildExamples = true; buildTests = true; developerBuild = true; - }; + }); qt5SDK = qtcreator.override { sdkBuild = true; @@ -6285,6 +6315,8 @@ let sphinxbase = callPackage ../development/libraries/sphinxbase { }; + sphinxsearch = callPackage ../servers/search/sphinxsearch { }; + spice = callPackage ../development/libraries/spice { celt = celt_0_5_1; inherit (xlibs) libXrandr libXfixes libXext libXrender libXinerama; @@ -8035,6 +8067,8 @@ let aurulent-sans = callPackage ../data/fonts/aurulent-sans { }; + baekmuk-ttf = callPackage ../data/fonts/baekmuk-ttf { }; + bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; cacert = callPackage ../data/misc/cacert { }; @@ -8140,6 +8174,8 @@ let posix_man_pages = callPackage ../data/documentation/man-pages-posix { }; + proggyfonts = callPackage ../data/fonts/proggyfonts { }; + pthreadmanpages = callPackage ../data/documentation/pthread-man-pages { }; shared_mime_info = callPackage ../data/misc/shared-mime-info { }; @@ -8332,7 +8368,8 @@ let bitcoind = callPackage ../applications/misc/bitcoin { gui = false; }; altcoins = recurseIntoAttrs ( - callPackage ../applications/misc/bitcoin/altcoins.nix {} + (callPackage ../applications/misc/bitcoin/altcoins.nix {}) // + (callPackage ../applications/misc/bitcoin/dogecoin.nix {}) ); bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { @@ -8834,6 +8871,11 @@ let fluxbox = callPackage ../applications/window-managers/fluxbox { }; + fme = callPackage ../applications/misc/fme { + inherit (gnome) libglademm; + inherit pkgconfig autoconf automake gettext; + }; + freecad = callPackage ../applications/graphics/freecad { opencascade = opencascade_6_5; inherit (pythonPackages) matplotlib pycollada; @@ -9073,7 +9115,7 @@ let ii = callPackage ../applications/networking/irc/ii { }; - ike = callPackage ../applications/ike { }; + ike = callPackage ../applications/networking/ike { }; ikiwiki = callPackage ../applications/misc/ikiwiki { inherit (perlPackages) TextMarkdown URI HTMLParser HTMLScrubber @@ -9770,6 +9812,8 @@ let bittorrentSync = callPackage ../applications/networking/bittorrentsync { }; + copy-com = callPackage ../applications/networking/copy-com { }; + dropbox = callPackage ../applications/networking/dropbox { }; dropbox-cli = callPackage ../applications/networking/dropbox-cli { }; @@ -10219,6 +10263,13 @@ let inherit (gnome) libglade GConf; }; + xiphos = callPackage ../applications/misc/xiphos { + gconf = gnome2.GConf; + inherit (gnome2) gtkhtml libgtkhtml libglade scrollkeeper; + python = python27; + webkitgtk = webkitgtk2; + }; + xournal = callPackage ../applications/graphics/xournal { inherit (gnome) libgnomeprint libgnomeprintui libgnomecanvas; }; @@ -10785,6 +10836,8 @@ let kdiff3 = callPackage ../tools/text/kdiff3 { }; + kgraphviewer = callPackage ../applications/graphics/kgraphviewer { }; + kile = callPackage ../applications/editors/kile { }; kmplayer = callPackage ../applications/video/kmplayer { }; @@ -10819,6 +10872,8 @@ let libnm-qt = callPackage ../development/libraries/libnm-qt { }; + massif-visualizer = callPackage ../development/tools/analysis/massif-visualizer { }; + networkmanagement = callPackage ../tools/networking/networkmanagement { }; partitionManager = callPackage ../tools/misc/partition-manager { }; @@ -11385,6 +11440,8 @@ let pgfplots = callPackage ../tools/typesetting/tex/pgfplots { }; + phabricator = callPackage ../misc/phabricator { }; + pjsip = callPackage ../applications/networking/pjsip { }; polytable = callPackage ../tools/typesetting/tex/polytable { }; @@ -11396,6 +11453,7 @@ let putty = callPackage ../applications/networking/remote/putty { }; retroarch = callPackage ../misc/emulators/retroarch { }; + retroarchMaster = callPackage ../misc/emulators/retroarch/master.nix { }; rssglx = callPackage ../misc/screensavers/rss-glx { }; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 15f6ed71007..cb235361783 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1188,6 +1188,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in hi = callPackage ../development/libraries/haskell/hi {}; + hindent = callPackage ../development/libraries/haskell/hindent {}; + hint = callPackage ../development/libraries/haskell/hint {}; hit = callPackage ../development/libraries/haskell/hit {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3af1950f9b1..ed334d27e0e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1843,7 +1843,7 @@ rec { md5 = "21ab8fd729105487e6423b654d6c0860"; }; - propagatedBuildInputs = [ six requests ]; + propagatedBuildInputs = [ six requests websocket_client ]; # Version conflict doCheck = false; @@ -2263,6 +2263,34 @@ rec { }; }; + jsonwatch = buildPythonPackage rec { + name = "jsonwatch-0.2.0"; + + disabled = isPyPy; # doesn't find setuptools + + src = fetchurl { + url = "https://github.com/dbohdan/jsonwatch/archive/v0.2.0.tar.gz"; + sha256 = "04b616ef97b9d8c3887004995420e52b72a4e0480a92dbf60aa6c50317261e06"; + }; + + propagatedBuildInputs = [ six ]; + + meta = { + description = "Like watch -d but for JSON"; + longDescription = '' + jsonwatch is a command line utility with which you can track changes in + JSON data delivered by a shell command or a web (HTTP/HTTPS) API. + jsonwatch requests data from the designated source repeatedly at a set + interval and displays the differences when the data changes. It is + similar in its behavior to how watch(1) with the -d switch works + for plain-text data. + ''; + homepage = "https://github.com/dbohdan/jsonwatch"; + license = stdenv.lib.licenses.mit; + platforms = stdenv.lib.platforms.all; + }; + }; + logilab_astng = buildPythonPackage rec { name = "logilab-astng-0.24.3"; @@ -2752,7 +2780,7 @@ rec { random2 = pythonPackages.buildPythonPackage rec { name = "random2-1.0.1"; - + doCheck = !isPyPy; src = fetchurl { @@ -9948,6 +9976,24 @@ rec { }; + websocket_client = buildPythonPackage rec { + name = "websocket-client-0.17.0"; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/w/websocket-client/${name}.tar.gz"; + md5 = "c86591719085eaf4a01c2275e0c834fc"; + }; + + propagatedBuildInputs = [ six backports_ssl_match_hostname_3_4_0_2 unittest2 argparse ]; + + meta = { + homepage = https://github.com/liris/websocket-client; + description = "Websocket client for python"; + license = licenses.lgpl2; + }; + }; + + webhelpers = buildPythonPackage rec { name = "WebHelpers-1.3";