commit
63c6875f26
@ -1,39 +1,115 @@ |
||||
Idris packages |
||||
============== |
||||
# Idris packages |
||||
|
||||
This directory contains build rules for idris packages. In addition, |
||||
it contains several functions to build and compose those packages. |
||||
Everything is exposed to the user via the `idrisPackages` attribute. |
||||
## Installing Idris |
||||
|
||||
callPackage |
||||
------------ |
||||
The easiest way to get a working idris version is to install the `idris` attribute: |
||||
|
||||
This is like the normal nixpkgs callPackage function, specialized to |
||||
idris packages. |
||||
``` |
||||
$ # On NixOS |
||||
$ nix-env -i nixos.idris |
||||
$ # On non-NixOS |
||||
$ nix-env -i nixpkgs.idris |
||||
``` |
||||
|
||||
builtins |
||||
--------- |
||||
This however only provides the `prelude` and `base` libraries. To install additional libraries: |
||||
|
||||
This is a list of all of the libraries that come packaged with Idris |
||||
itself. |
||||
``` |
||||
$ nix-env -iE 'pkgs: pkgs.idrisPackages.with-packages (with pkgs.idrisPackages; [ contrib pruviloj ])' |
||||
``` |
||||
|
||||
build-idris-package |
||||
-------------------- |
||||
To see all available Idris packages: |
||||
``` |
||||
$ # On NixOS |
||||
$ nix-env -qaPA nixos.idrisPackages |
||||
$ # On non-NixOS |
||||
$ nix-env -qaPA nixpkgs.idrisPackages |
||||
``` |
||||
|
||||
A function to build an idris package. Its sole argument is a set like |
||||
you might pass to `stdenv.mkDerivation`, except `build-idris-package` |
||||
sets several attributes for you. See `build-idris-package.nix` for |
||||
details. |
||||
Similarly, entering a `nix-shell`: |
||||
``` |
||||
$ nix-shell -p 'idrisPackages.with-packages (with idrisPackages; [ contrib pruviloj ])' |
||||
``` |
||||
|
||||
build-builtin-package |
||||
---------------------- |
||||
## Starting Idris with library support |
||||
|
||||
A version of `build-idris-package` specialized to builtin libraries. |
||||
Mostly for internal use. |
||||
To have access to these libraries in idris, call it with an argument `-p <library name>` for each library: |
||||
|
||||
with-packages |
||||
------------- |
||||
``` |
||||
$ nix-shell -p 'idrisPackages.with-packages (with idrisPackages; [ contrib pruviloj ])' |
||||
[nix-shell:~]$ idris -p contrib -p pruviloj |
||||
``` |
||||
|
||||
Bundle idris together with a list of packages. Because idris currently |
||||
only supports a single directory in its library path, you must include |
||||
all desired libraries here, including `prelude` and `base`. |
||||
A listing of all available packages the Idris binary has access to is available via `--listlibs`: |
||||
|
||||
``` |
||||
$ idris --listlibs |
||||
00prelude-idx.ibc |
||||
pruviloj |
||||
base |
||||
contrib |
||||
prelude |
||||
00pruviloj-idx.ibc |
||||
00base-idx.ibc |
||||
00contrib-idx.ibc |
||||
``` |
||||
|
||||
## Building an Idris project with Nix |
||||
|
||||
As an example of how a Nix expression for an Idris package can be created, here is the one for `idrisPackages.yaml`: |
||||
|
||||
```nix |
||||
{ build-idris-package |
||||
, fetchFromGitHub |
||||
, contrib |
||||
, lightyear |
||||
, lib |
||||
}: |
||||
build-idris-package { |
||||
name = "yaml"; |
||||
version = "2018-01-25"; |
||||
|
||||
# This is the .ipkg file that should be built, defaults to the package name |
||||
# In this case it should build `Yaml.ipkg` instead of `yaml.ipkg` |
||||
# This is only necessary because the yaml packages ipkg file is |
||||
# different from its package name here. |
||||
ipkgName = "Yaml"; |
||||
# Idris dependencies to provide for the build |
||||
idrisDeps = [ contrib lightyear ]; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "Heather"; |
||||
repo = "Idris.Yaml"; |
||||
rev = "5afa51ffc839844862b8316faba3bafa15656db4"; |
||||
sha256 = "1g4pi0swmg214kndj85hj50ccmckni7piprsxfdzdfhg87s0avw7"; |
||||
}; |
||||
|
||||
meta = { |
||||
description = "Idris YAML lib"; |
||||
homepage = https://github.com/Heather/Idris.Yaml; |
||||
license = lib.licenses.mit; |
||||
maintainers = [ lib.maintainers.brainrape ]; |
||||
}; |
||||
} |
||||
``` |
||||
|
||||
Assuming this file is saved as `yaml.nix`, it's buildable using |
||||
|
||||
``` |
||||
$ nix-build -E '(import <nixpkgs> {}).idrisPackages.callPackage ./yaml.nix {}' |
||||
``` |
||||
|
||||
Or it's possible to use |
||||
|
||||
```nix |
||||
with import <nixpkgs> {}; |
||||
|
||||
{ |
||||
yaml = idrisPackages.callPackage ./yaml.nix {}; |
||||
} |
||||
``` |
||||
|
||||
in another file (say `default.nix`) to be able to build it with |
||||
|
||||
``` |
||||
$ nix-build -A yaml |
||||
``` |
||||
|
@ -0,0 +1,39 @@ |
||||
<chapter xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="ch-profiles"> |
||||
<title>Profiles</title> |
||||
<para> |
||||
In some cases, it may be desirable to take advantage of commonly-used, |
||||
predefined configurations provided by nixpkgs, but different from those that |
||||
come as default. This is a role fulfilled by NixOS's Profiles, which come as |
||||
files living in <filename><nixpkgs/nixos/modules/profiles></filename>. |
||||
That is to say, expected usage is to add them to the imports list of your |
||||
<filename>/etc/configuration.nix</filename> as such: |
||||
</para> |
||||
<programlisting> |
||||
imports = [ |
||||
<nixpkgs/nixos/modules/profiles/profile-name.nix> |
||||
]; |
||||
</programlisting> |
||||
<para> |
||||
Even if some of these profiles seem only useful in the context of |
||||
install media, many are actually intended to be used in real installs. |
||||
</para> |
||||
<para> |
||||
What follows is a brief explanation on the purpose and use-case for each |
||||
profile. Detailing each option configured by each one is out of scope. |
||||
</para> |
||||
<xi:include href="profiles/all-hardware.xml" /> |
||||
<xi:include href="profiles/base.xml" /> |
||||
<xi:include href="profiles/clone-config.xml" /> |
||||
<xi:include href="profiles/demo.xml" /> |
||||
<xi:include href="profiles/docker-container.xml" /> |
||||
<xi:include href="profiles/graphical.xml" /> |
||||
<xi:include href="profiles/hardened.xml" /> |
||||
<xi:include href="profiles/headless.xml" /> |
||||
<xi:include href="profiles/installation-device.xml" /> |
||||
<xi:include href="profiles/minimal.xml" /> |
||||
<xi:include href="profiles/qemu-guest.xml" /> |
||||
</chapter> |
@ -0,0 +1,20 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-all-hardware"> |
||||
<title>All Hardware</title> |
||||
<para> |
||||
Enables all hardware supported by NixOS: i.e., all firmware is |
||||
included, and all devices from which one may boot are enabled in the initrd. |
||||
Its primary use is in the NixOS installation CDs. |
||||
</para> |
||||
<para> |
||||
The enabled kernel modules include support for SATA and PATA, SCSI |
||||
(partially), USB, Firewire (untested), Virtio (QEMU, KVM, etc.), VMware, and |
||||
Hyper-V. Additionally, <xref linkend="opt-hardware.enableAllFirmware"/> is |
||||
enabled, and the firmware for the ZyDAS ZD1211 chipset is specifically |
||||
installed. |
||||
</para> |
||||
</section> |
@ -0,0 +1,15 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-base"> |
||||
<title>Base</title> |
||||
<para> |
||||
Defines the software packages included in the "minimal" |
||||
installation CD. It installs several utilities useful in a simple recovery or |
||||
install media, such as a text-mode web browser, and tools for manipulating |
||||
block devices, networking, hardware diagnostics, and filesystems (with their |
||||
respective kernel modules). |
||||
</para> |
||||
</section> |
@ -0,0 +1,14 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-clone-config"> |
||||
<title>Clone Config</title> |
||||
<para> |
||||
This profile is used in installer images. |
||||
It provides an editable configuration.nix that imports all the modules that |
||||
were also used when creating the image in the first place. |
||||
As a result it allows users to edit and rebuild the live-system. |
||||
</para> |
||||
</section> |
@ -0,0 +1,13 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-demo"> |
||||
<title>Demo</title> |
||||
<para> |
||||
This profile just enables a <systemitem class="username">demo</systemitem> user, with password <literal>demo</literal>, uid <literal>1000</literal>, <systemitem class="groupname">wheel</systemitem> |
||||
group and <link linkend="opt-services.xserver.displayManager.sddm.autoLogin"> |
||||
autologin in the SDDM display manager</link>. |
||||
</para> |
||||
</section> |
@ -0,0 +1,15 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-docker-container"> |
||||
<title>Docker Container</title> |
||||
<para> |
||||
This is the profile from which the Docker images are generated. It prepares a |
||||
working system by importing the <link linkend="sec-profile-minimal">Minimal</link> and |
||||
<link linkend="sec-profile-clone-config">Clone Config</link> profiles, and setting appropriate |
||||
configuration options that are useful inside a container context, like |
||||
<xref linkend="opt-boot.isContainer"/>. |
||||
</para> |
||||
</section> |
@ -0,0 +1,21 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-graphical"> |
||||
<title>Graphical</title> |
||||
<para> |
||||
Defines a NixOS configuration with the Plasma 5 desktop. It's used by the |
||||
graphical installation CD. |
||||
</para> |
||||
<para> |
||||
It sets <xref linkend="opt-services.xserver.enable"/>, |
||||
<xref linkend="opt-services.xserver.displayManager.sddm.enable"/>, |
||||
<xref linkend="opt-services.xserver.desktopManager.plasma5.enable"/> ( |
||||
<link linkend="opt-services.xserver.desktopManager.plasma5.enableQt4Support"> |
||||
without Qt4 Support</link>), and |
||||
<xref linkend="opt-services.xserver.libinput.enable"/> to true. It also |
||||
includes glxinfo and firefox in the system packages list. |
||||
</para> |
||||
</section> |
@ -0,0 +1,22 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-hardened"> |
||||
<title>Hardened</title> |
||||
<para> |
||||
A profile with most (vanilla) hardening options enabled by default, |
||||
potentially at the cost of features and performance. |
||||
</para> |
||||
<para> |
||||
This includes a hardened kernel, and limiting the system information |
||||
available to processes through the <filename>/sys</filename> and |
||||
<filename>/proc</filename> filesystems. It also disables the User Namespaces |
||||
feature of the kernel, which stops Nix from being able to build anything |
||||
(this particular setting can be overriden via |
||||
<xref linkend="opt-security.allowUserNamespaces"/>). See the <literal |
||||
xlink:href="https://github.com/nixos/nixpkgs/tree/master/nixos/modules/profiles/hardened.nix"> |
||||
profile source</literal> for further detail on which settings are altered. |
||||
</para> |
||||
</section> |
@ -0,0 +1,18 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-headless"> |
||||
<title>Headless</title> |
||||
<para> |
||||
Common configuration for headless machines (e.g., Amazon EC2 instances). |
||||
</para> |
||||
<para> |
||||
Disables <link linkend="opt-sound.enable">sound</link>, |
||||
<link linkend="opt-boot.vesa">vesa</link>, serial consoles, |
||||
<link linkend="opt-systemd.enableEmergencyMode">emergency mode</link>, |
||||
<link linkend="opt-boot.loader.grub.splashImage">grub splash images</link> and |
||||
configures the kernel to reboot automatically on panic. |
||||
</para> |
||||
</section> |
@ -0,0 +1,35 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-installation-device"> |
||||
<title>Installation Device</title> |
||||
<para> |
||||
Provides a basic configuration for installation devices like CDs. This means |
||||
enabling hardware scans, using the <link linkend="sec-profile-clone-config"> |
||||
Clone Config profile</link> to guarantee |
||||
<filename>/etc/nixos/configuration.nix</filename> exists (for |
||||
<command>nixos-rebuild</command> to work), a copy of the Nixpkgs channel |
||||
snapshot used to create the install media. |
||||
</para> |
||||
<para> |
||||
Additionally, documentation for <link linkend="opt-documentation.enable"> |
||||
Nixpkgs</link> and <link linkend="opt-documentation.nixos.enable">NixOS |
||||
</link> are forcefully enabled (to override the |
||||
<link linkend="sec-profile-minimal">Minimal profile</link> preference); the |
||||
NixOS manual is shown automatically on TTY 8, sudo and udisks are disabled. |
||||
Autologin is enabled as root. |
||||
</para> |
||||
<para> |
||||
A message is shown to the user to start a display manager if needed, |
||||
ssh with <xref linkend="opt-services.openssh.permitRootLogin"/> are enabled (but |
||||
doesn't autostart). WPA Supplicant is also enabled without autostart. |
||||
</para> |
||||
<para> |
||||
Finally, vim is installed, root is set to not have a password, the kernel is |
||||
made more silent for remote public IP installs, and several settings are |
||||
tweaked so that the installer has a better chance of succeeding under |
||||
low-memory environments. |
||||
</para> |
||||
</section> |
@ -0,0 +1,17 @@ |
||||
|
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-minimal"> |
||||
<title>Minimal</title> |
||||
<para> |
||||
This profile defines a small NixOS configuration. It does not contain any |
||||
graphical stuff. It's a very short file that enables |
||||
<link linkend="opt-environment.noXlibs">noXlibs</link>, sets |
||||
<link linkend="opt-i18n.supportedLocales">i18n.supportedLocales</link> |
||||
to only support the user-selected locale, |
||||
<link linkend="opt-documentation.enable">disables packages' documentation |
||||
</link>, and <link linkend="opt-sound.enable">disables sound</link>. |
||||
</para> |
||||
</section> |
@ -0,0 +1,16 @@ |
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-profile-qemu-guest"> |
||||
<title>QEMU Guest</title> |
||||
<para> |
||||
This profile contains common configuration for virtual machines running under |
||||
QEMU (using virtio). |
||||
</para> |
||||
<para> |
||||
It makes virtio modules available on the initrd, sets the system time from |
||||
the hardware clock to work around a bug in qemu-kvm, and |
||||
<link linkend="opt-security.rngd.enable">enables rngd</link>. |
||||
</para> |
||||
</section> |
@ -0,0 +1,86 @@ |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
with lib; |
||||
{ |
||||
options = { |
||||
gtk.iconCache.enable = mkOption { |
||||
type = types.bool; |
||||
default = config.services.xserver.enable; |
||||
description = '' |
||||
Whether to build icon theme caches for GTK+ applications. |
||||
''; |
||||
}; |
||||
}; |
||||
|
||||
config = mkIf config.gtk.iconCache.enable { |
||||
|
||||
# (Re)build icon theme caches |
||||
# --------------------------- |
||||
# Each icon theme has its own cache. The difficult is that many |
||||
# packages may contribute with icons to the same theme by installing |
||||
# some icons. |
||||
# |
||||
# For instance, on my current NixOS system, the following packages |
||||
# (among many others) have icons installed into the hicolor icon |
||||
# theme: hicolor-icon-theme, psensor, wpa_gui, caja, etc. |
||||
# |
||||
# As another example, the mate icon theme has icons installed by the |
||||
# packages mate-icon-theme, mate-settings-daemon, and libmateweather. |
||||
# |
||||
# The HighContrast icon theme also has icons from different packages, |
||||
# like gnome-theme-extras and meld. |
||||
|
||||
# When the cache is built all of its icons has to be known. How to |
||||
# implement this? |
||||
# |
||||
# I think that most themes have all icons installed by only one |
||||
# package. On my system there are 71 themes installed. Only 3 of them |
||||
# have icons installed from more than one package. |
||||
# |
||||
# If the main package of the theme provides a cache, presumably most |
||||
# of its icons will be available to applications without running this |
||||
# module. But additional icons offered by other packages will not be |
||||
# available. Therefore I think that it is good that the main theme |
||||
# package installs a cache (although it does not completely fixes the |
||||
# situation for packages installed with nix-env). |
||||
# |
||||
# The module solution presented here keeps the cache when there is |
||||
# only one package contributing with icons to the theme. Otherwise it |
||||
# rebuilds the cache taking into account the icons provided all |
||||
# packages. |
||||
|
||||
environment.extraSetup = '' |
||||
# For each icon theme directory ... |
||||
|
||||
find $out/share/icons -mindepth 1 -maxdepth 1 -print0 | while read -d $'\0' themedir |
||||
do |
||||
|
||||
# In order to build the cache, the theme dir should be |
||||
# writable. When the theme dir is a symbolic link to somewhere |
||||
# in the nix store it is not writable and it means that only |
||||
# one package is contributing to the theme. If it already has |
||||
# a cache, no rebuild is needed. Otherwise a cache has to be |
||||
# built, and to be able to do that we first remove the |
||||
# symbolic link and make a directory, and then make symbolic |
||||
# links from the original directory into the new one. |
||||
|
||||
if [ ! -w "$themedir" -a -L "$themedir" -a ! -r "$themedir"/icon-theme.cache ]; then |
||||
name=$(basename "$themedir") |
||||
path=$(readlink -f "$themedir") |
||||
rm "$themedir" |
||||
mkdir -p "$themedir" |
||||
ln -s "$path"/* "$themedir"/ |
||||
fi |
||||
|
||||
# (Re)build the cache if the theme dir is writable, replacing any |
||||
# existing cache for the theme |
||||
|
||||
if [ -w "$themedir" ]; then |
||||
rm -f "$themedir"/icon-theme.cache |
||||
${pkgs.gtk3.out}/bin/gtk-update-icon-cache --ignore-theme-index "$themedir" |
||||
fi |
||||
done |
||||
''; |
||||
}; |
||||
|
||||
} |
@ -0,0 +1,25 @@ |
||||
import ./make-test.nix ({ pkgs, ... }: |
||||
let |
||||
# Download Big Buck Bunny example, licensed under CC Attribution 3.0. |
||||
testMkv = pkgs.fetchurl { |
||||
url = "https://github.com/Matroska-Org/matroska-test-files/blob/cf0792be144ac470c4b8052cfe19bb691993e3a2/test_files/test1.mkv?raw=true"; |
||||
sha256 = "1hfxbbgxwfkzv85pvpvx55a72qsd0hxjbm9hkl5r3590zw4s75h9"; |
||||
}; |
||||
in { |
||||
name = "handbrake"; |
||||
|
||||
meta = { |
||||
maintainers = with pkgs.stdenv.lib.maintainers; [ danieldk ]; |
||||
}; |
||||
|
||||
machine = { pkgs, ... }: { |
||||
environment.systemPackages = with pkgs; [ handbrake ]; |
||||
}; |
||||
|
||||
testScript = '' |
||||
# Test MP4 and MKV transcoding. Since this is a short clip, transcoding typically |
||||
# only takes a few seconds. |
||||
$machine->succeed("HandBrakeCLI -i ${testMkv} -o test.mp4 -e x264 -q 20 -B 160"); |
||||
$machine->succeed("HandBrakeCLI -i ${testMkv} -o test.mkv -e x264 -q 20 -B 160"); |
||||
''; |
||||
}) |
@ -1,51 +0,0 @@ |
||||
import ./make-test.nix ({ pkgs, lib, ... }: |
||||
|
||||
with lib; |
||||
|
||||
{ |
||||
name = "statsd"; |
||||
meta = with pkgs.stdenv.lib.maintainers; { |
||||
maintainers = [ ma27 ]; |
||||
}; |
||||
|
||||
machine = { |
||||
services.statsd.enable = true; |
||||
services.statsd.backends = [ "statsd-influxdb-backend" "console" ]; |
||||
services.statsd.extraConfig = '' |
||||
influxdb: { |
||||
username: "root", |
||||
password: "root", |
||||
database: "statsd" |
||||
} |
||||
''; |
||||
|
||||
services.influxdb.enable = true; |
||||
|
||||
systemd.services.influx-init = { |
||||
description = "Setup Influx Test Base"; |
||||
after = [ "influxdb.service" ]; |
||||
before = [ "statsd.service" ]; |
||||
|
||||
script = '' |
||||
echo "CREATE DATABASE statsd" | ${pkgs.influxdb}/bin/influx |
||||
''; |
||||
}; |
||||
}; |
||||
|
||||
testScript = '' |
||||
$machine->start(); |
||||
$machine->waitForUnit("statsd.service"); |
||||
$machine->waitForOpenPort(8126); |
||||
|
||||
# check state of the `statsd` server |
||||
$machine->succeed('[ "health: up" = "$(echo health | nc 127.0.0.1 8126 -w 120 -N)" ];'); |
||||
|
||||
# confirm basic examples for metrics derived from docs: |
||||
# https://github.com/etsy/statsd/blob/v0.8.0/README.md#usage and |
||||
# https://github.com/etsy/statsd/blob/v0.8.0/docs/admin_interface.md |
||||
$machine->succeed("echo 'foo:1|c' | nc -u -w 0 127.0.0.1 8125"); |
||||
$machine->succeed("echo counters | nc -w 120 127.0.0.1 8126 -N | grep foo"); |
||||
$machine->succeed("echo 'delcounters foo' | nc -w 120 127.0.0.1 8126 -N"); |
||||
$machine->fail("echo counters | nc -w 120 127.0.0.1 8126 -N | grep foo"); |
||||
''; |
||||
}) |
@ -1,40 +0,0 @@ |
||||
From: Michael Biebl <biebl@debian.org>
|
||||
Origin: vendor
|
||||
Bug-Debian: http://bugs.debian.org/665506
|
||||
Subject: Including individual glib headers no longer supported
|
||||
|
||||
--- a/src/ario-profiles.h
|
||||
+++ b/src/ario-profiles.h
|
||||
@@ -20,7 +20,7 @@
|
||||
#ifndef __ARIO_PROFILES_H
|
||||
#define __ARIO_PROFILES_H
|
||||
|
||||
-#include <glib/gslist.h>
|
||||
+#include <glib.h>
|
||||
#include "servers/ario-server.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
--- a/src/plugins/ario-plugin-info.c
|
||||
+++ b/src/plugins/ario-plugin-info.c
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
#include <string.h>
|
||||
#include <glib/gi18n.h>
|
||||
-#include <glib/gkeyfile.h>
|
||||
+#include <glib.h>
|
||||
|
||||
#include "plugins/ario-plugin-info-priv.h"
|
||||
#include "ario-debug.h"
|
||||
--- a/src/ario-util.h
|
||||
+++ b/src/ario-util.h
|
||||
@@ -18,8 +18,8 @@
|
||||
*/
|
||||
|
||||
#include "servers/ario-server.h"
|
||||
-#include "glib/gslist.h"
|
||||
-#include "gdk/gdkpixbuf.h"
|
||||
+#include <glib.h>
|
||||
+#include <gdk/gdkpixbuf.h>
|
||||
|
||||
/* Number of covers used to generate the drag & drop image */
|
||||
#define MAX_COVERS_IN_DRAG 3
|
@ -0,0 +1,25 @@ |
||||
{stdenv, fetchFromGitHub, pkgconfig, libltc, libsndfile, jack2}: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
name = "ltc-tools-${version}"; |
||||
version = "0.6.4"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "x42"; |
||||
repo = "ltc-tools"; |
||||
rev = "v${version}"; |
||||
sha256 = "1a7r99mwc7p5j5y453mrgph67wlznd674v4k2pfmlvc91s6lh44y"; |
||||
}; |
||||
|
||||
buildInputs = [ pkgconfig libltc libsndfile jack2 ]; |
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ]; |
||||
|
||||
meta = with stdenv.lib; { |
||||
homepage = "https://github.com/x42/ltc-tools"; |
||||
description = "Tools to deal with linear-timecode (LTC)"; |
||||
license = licenses.gpl2; |
||||
platforms = platforms.unix; |
||||
maintainers = with maintainers; [ tg-x ]; |
||||
}; |
||||
} |
@ -0,0 +1,29 @@ |
||||
{ pkgs, fetchzip, stdenv, makeWrapper, openjdk }: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
name = "gremlin-console-${version}"; |
||||
version = "3.3.4"; |
||||
src = fetchzip { |
||||
url = "http://www-eu.apache.org/dist/tinkerpop/${version}/apache-tinkerpop-gremlin-console-${version}-bin.zip"; |
||||
sha256 = "14xr0yqklmm4jvj1hnkj89lj83zzs2l1375ni0jbf12gy31jlb2w"; |
||||
}; |
||||
|
||||
buildInputs = [ makeWrapper ]; |
||||
|
||||
installPhase = '' |
||||
mkdir -p $out/opt |
||||
cp -r ext lib $out/opt/ |
||||
install -D bin/gremlin.sh $out/opt/bin/gremlin-console |
||||
makeWrapper $out/opt/bin/gremlin-console $out/bin/gremlin-console \ |
||||
--prefix PATH ":" "${openjdk}/bin/" \ |
||||
--set CLASSPATH "$out/opt/lib/" |
||||
''; |
||||
|
||||
meta = with stdenv.lib; { |
||||
homepage = https://tinkerpop.apache.org/; |
||||
description = "Console of the Apache TinkerPop graph computing framework"; |
||||
license = licenses.asl20; |
||||
maintainers = [ maintainers.lewo ]; |
||||
platforms = platforms.all; |
||||
}; |
||||
} |
@ -1,28 +0,0 @@ |
||||
{ stdenv, fetchFromGitHub, cmake, gtk3, vala, pkgconfig, gnome3, gobjectIntrospection }: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
version = "1.3.1"; |
||||
name = "valauncher-${version}"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "Mic92"; |
||||
repo = "valauncher"; |
||||
rev = "v${version}"; |
||||
sha256 = "18969v870737jg1q0l3d05pb9mxsrcpdi0mnyz94rwkspszvxxqi"; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ |
||||
cmake vala pkgconfig |
||||
# For setup hook |
||||
gobjectIntrospection |
||||
]; |
||||
buildInputs = [ gtk3 gnome3.libgee ]; |
||||
|
||||
meta = with stdenv.lib; { |
||||
description = "A fast dmenu-like gtk3 application launcher"; |
||||
homepage = https://github.com/Mic92/valauncher; |
||||
license = licenses.mit; |
||||
maintainers = with maintainers; [ mic92 ]; |
||||
platforms = platforms.all; |
||||
}; |
||||
} |
@ -1,18 +1,18 @@ |
||||
# This file is autogenerated from update.sh in the same directory. |
||||
{ |
||||
beta = { |
||||
sha256 = "0kkdfp5f3gmzngfj1nfw023bpyvm47h94k9rpwml2kxlijswd1gl"; |
||||
sha256bin64 = "13ghx5ysl8f2iphdvjh698q4jksh765ljjrd74m6x0ih6qm0ksaq"; |
||||
version = "71.0.3578.20"; |
||||
sha256 = "04y78dqm19cr5929l727fk0jqqsdfyrdv50gippg32dplvw0r4fw"; |
||||
sha256bin64 = "1rfclq9vwj61pv1sqpa4v26iby02j05lad673c79f0032v2v2r43"; |
||||
version = "71.0.3578.44"; |
||||
}; |
||||
dev = { |
||||
sha256 = "1d7q8hbqbxy2izdvv4d9126ljiglsfc3w7wns3zbbbiyqa2rj00y"; |
||||
sha256bin64 = "0v6yahsvsgxcqg6k84lgr589rnx9af1r2axn7cggyn1a2lk63jck"; |
||||
version = "72.0.3590.0"; |
||||
sha256 = "1d18957kwy3hp3dhgahip3pgjhvvadix5h3mk2d7w6zdj3l8c8kq"; |
||||
sha256bin64 = "1yny1hyis91ajn7b8v9b4fzgswzwng3rndf1jb807xd6jd461afz"; |
||||
version = "72.0.3608.4"; |
||||
}; |
||||
stable = { |
||||
sha256 = "0j84556r3m4igigqsx9zvw4kvbn4psfsi7m8xhcvfxc39ingh569"; |
||||
sha256bin64 = "082cf9d1wm36w4i09ai4xnprvxfqdar6cbgsxz5q5srd41mqdy6p"; |
||||
version = "70.0.3538.77"; |
||||
sha256 = "0amc3czac897mb80qcwwladmhg2yps8r2c359nzyj7i7bq1m992d"; |
||||
sha256bin64 = "1did6kp7dhlqp7rarvly7ywb9n9hnhhb3zgpkh3yp3f2skqrr5w8"; |
||||
version = "70.0.3538.102"; |
||||
}; |
||||
} |
||||
|
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue